PluginProbe
Photonic Gallery & Lightbox for Flickr, SmugMug & Others / 3.37
Photonic Gallery & Lightbox for Flickr, SmugMug & Others v3.37
3.37 3.36 3.35 3.34 3.33 2.19 2.20 2.21 2.22 2.23 2.24 2.25 2.26 2.27 2.28 2.29 2.30 2.31 2.32 2.33 2.34 2.40 2.41 2.42 2.43 All 142 releases
← All changes | grunt/Gruntfile.js +100 -374 2.23 → 3.37 View file →
@@ -1,13 +1,19 @@
1 +const webpackConfig = require('./webpack.config.js');
2 +
1 3 module.exports = function(grunt) {
2 4 // Config
3 5 grunt.initConfig({
4 6 pkg: grunt.file.readJSON('package.json'),
5 7 dirs: {
6 - src: '../include/scripts/front-end/src',
7 - dest: '../include/scripts/front-end/build',
8 - no_jq_src: '../include/scripts/front-end/src-no-jq',
9 - no_jq_dest: '../include/scripts/front-end/build-no-jq',
8 + src_css: '../include/css/front-end/core',
9 + tp: '../include/ext',
10 +
11 + dest_js_base: '../include/js/front-end',
12 +
13 + dest_css_combo: '../include/css/front-end/combo',
14 + dest_css_combo_slider: '../include/css/front-end/combo-slider',
15 +
10 16 i18n_src: '..',
11 17 langs: 'languages'
12 18 },
13 19
@@ -12,349 +18,41 @@
12 18 },
13 19
14 20 vars: { },
15 21
16 - concat: {
17 - colorbox: {
22 + webpack: {
23 + myConfig: webpackConfig,
24 + },
25 +
26 + clean: {
27 + css: {
18 28 options: {
19 - process: true
29 + force: true
20 30 },
21 31 src: [
22 - '<%= dirs.src %>/core/external.js',
23 - '<%= dirs.src %>/core/jq-start.tmpl',
24 - '<%= dirs.src %>/core/core.js',
25 - '<%= dirs.src %>/lightboxes/Lightbox.js',
26 - '<%= dirs.src %>/lightboxes/Lightbox_Colorbox.js',
27 - '<%= dirs.src %>/core/layouts.js',
28 - '<%= dirs.src %>/core/jq-end.tmpl'
29 - ],
30 - dest: '<%= dirs.dest %>/photonic-colorbox.js'
32 + '<%= dirs.dest_css_combo %>',
33 + '<%= dirs.dest_css_combo_slider %>'
34 + ]
31 35 },
32 - fancybox: {
36 + js: {
33 37 options: {
34 - process: true
38 + force: true
35 39 },
36 40 src: [
37 - '<%= dirs.src %>/core/external.js',
38 - '<%= dirs.src %>/core/jq-start.tmpl',
39 - '<%= dirs.src %>/core/core.js',
40 - '<%= dirs.src %>/lightboxes/Lightbox.js',
41 - '<%= dirs.src %>/lightboxes/Lightbox_Fancybox.js',
42 - '<%= dirs.src %>/core/layouts.js',
43 - '<%= dirs.src %>/core/jq-end.tmpl'
44 - ],
45 - dest: '<%= dirs.dest %>/photonic-fancybox.js'
41 + '<%= dirs.dest_js_base %>/out/**/*.*',
42 + ]
46 43 },
47 - fancybox2: {
44 + jsLicenses: {
48 45 options: {
49 - process: true
46 + force: true
50 47 },
51 48 src: [
52 - '<%= dirs.src %>/core/external.js',
53 - '<%= dirs.src %>/core/jq-start.tmpl',
54 - '<%= dirs.src %>/core/core.js',
55 - '<%= dirs.src %>/lightboxes/Lightbox.js',
56 - '<%= dirs.src %>/lightboxes/Lightbox_Fancybox2.js',
57 - '<%= dirs.src %>/core/layouts.js',
58 - '<%= dirs.src %>/core/jq-end.tmpl'
59 - ],
60 - dest: '<%= dirs.dest %>/photonic-fancybox2.js'
49 + '<%= dirs.dest_js_base %>/module/**/*.txt',
50 + '<%= dirs.dest_js_base %>/nomodule/**/*.txt',
51 + ]
61 52 },
62 - fancybox3: {
63 - options: {
64 - process: true
65 - },
66 - src: [
67 - '<%= dirs.src %>/core/external.js',
68 - '<%= dirs.src %>/core/jq-start.tmpl',
69 - '<%= dirs.src %>/core/core.js',
70 - '<%= dirs.src %>/lightboxes/Lightbox.js',
71 - '<%= dirs.src %>/lightboxes/Lightbox_Fancybox3.js',
72 - '<%= dirs.src %>/core/layouts.js',
73 - '<%= dirs.src %>/core/jq-end.tmpl'
74 - ],
75 - dest: '<%= dirs.dest %>/photonic-fancybox3.js'
76 - },
77 - featherlight: {
78 - options: {
79 - process: true
80 - },
81 - src: [
82 - '<%= dirs.src %>/core/external.js',
83 - '<%= dirs.src %>/core/jq-start.tmpl',
84 - '<%= dirs.src %>/core/core.js',
85 - '<%= dirs.src %>/lightboxes/Lightbox.js',
86 - '<%= dirs.src %>/lightboxes/Lightbox_Featherlight.js',
87 - '<%= dirs.src %>/core/layouts.js',
88 - '<%= dirs.src %>/core/jq-end.tmpl'
89 - ],
90 - dest: '<%= dirs.dest %>/photonic-featherlight.js'
91 - },
92 - galleria: {
93 - options: {
94 - process: true
95 - },
96 - src: [
97 - '<%= dirs.src %>/core/external.js',
98 - '<%= dirs.src %>/core/jq-start.tmpl',
99 - '<%= dirs.src %>/core/core.js',
100 - '<%= dirs.src %>/lightboxes/Lightbox.js',
101 - '<%= dirs.src %>/lightboxes/Lightbox_Galleria.js',
102 - '<%= dirs.src %>/core/layouts.js',
103 - '<%= dirs.src %>/core/jq-end.tmpl'
104 - ],
105 - dest: '<%= dirs.dest %>/photonic-galleria.js'
106 - },
107 - imagelightbox: {
108 - options: {
109 - process: true
110 - },
111 - src: [
112 - '<%= dirs.src %>/core/external.js',
113 - '<%= dirs.src %>/core/jq-start.tmpl',
114 - '<%= dirs.src %>/core/core.js',
115 - '<%= dirs.src %>/lightboxes/Lightbox.js',
116 - '<%= dirs.src %>/lightboxes/Lightbox_ImageLightbox.js',
117 - '<%= dirs.src %>/core/layouts.js',
118 - '<%= dirs.src %>/core/jq-end.tmpl'
119 - ],
120 - dest: '<%= dirs.dest %>/photonic-imagelightbox.js'
121 - },
122 - lightcase: {
123 - options: {
124 - process: true
125 - },
126 - src: [
127 - '<%= dirs.src %>/core/external.js',
128 - '<%= dirs.src %>/core/jq-start.tmpl',
129 - '<%= dirs.src %>/core/core.js',
130 - '<%= dirs.src %>/lightboxes/Lightbox.js',
131 - '<%= dirs.src %>/lightboxes/Lightbox_Lightcase.js',
132 - '<%= dirs.src %>/core/layouts.js',
133 - '<%= dirs.src %>/core/jq-end.tmpl'
134 - ],
135 - dest: '<%= dirs.dest %>/photonic-lightcase.js'
136 - },
137 - lightgallery: {
138 - options: {
139 - process: true
140 - },
141 - src: [
142 - '<%= dirs.src %>/core/external.js',
143 - '<%= dirs.src %>/core/jq-start.tmpl',
144 - '<%= dirs.src %>/core/core.js',
145 - '<%= dirs.src %>/lightboxes/Lightbox.js',
146 - '<%= dirs.src %>/lightboxes/Lightbox_Lightgallery.js',
147 - '<%= dirs.src %>/core/layouts.js',
148 - '<%= dirs.src %>/core/jq-end.tmpl'
149 - ],
150 - dest: '<%= dirs.dest %>/photonic-lightgallery.js'
151 - },
152 - magnific: {
153 - options: {
154 - process: true
155 - },
156 - src: [
157 - '<%= dirs.src %>/core/external.js',
158 - '<%= dirs.src %>/core/jq-start.tmpl',
159 - '<%= dirs.src %>/core/core.js',
160 - '<%= dirs.src %>/lightboxes/Lightbox.js',
161 - '<%= dirs.src %>/lightboxes/Lightbox_Magnific.js',
162 - '<%= dirs.src %>/core/layouts.js',
163 - '<%= dirs.src %>/core/jq-end.tmpl'
164 - ],
165 - dest: '<%= dirs.dest %>/photonic-magnific.js'
166 - },
167 - none: {
168 - options: {
169 - process: true
170 - },
171 - src: [
172 - '<%= dirs.src %>/core/external.js',
173 - '<%= dirs.src %>/core/jq-start.tmpl',
174 - '<%= dirs.src %>/core/core.js',
175 - '<%= dirs.src %>/core/layouts.js',
176 - '<%= dirs.src %>/core/jq-end.tmpl'
177 - ],
178 - dest: '<%= dirs.dest %>/photonic-none.js'
179 - },
180 - photoswipe: {
181 - options: {
182 - process: true
183 - },
184 - src: [
185 - '<%= dirs.src %>/core/external.js',
186 - '<%= dirs.src %>/core/jq-start.tmpl',
187 - '<%= dirs.src %>/core/core.js',
188 - '<%= dirs.src %>/lightboxes/Lightbox.js',
189 - '<%= dirs.src %>/lightboxes/Lightbox_PhotoSwipe.js',
190 - '<%= dirs.src %>/core/layouts.js',
191 - '<%= dirs.src %>/core/jq-end.tmpl'
192 - ],
193 - dest: '<%= dirs.dest %>/photonic-photoswipe.js'
194 - },
195 - prettyphoto: {
196 - options: {
197 - process: true
198 - },
199 - src: [
200 - '<%= dirs.src %>/core/external.js',
201 - '<%= dirs.src %>/core/jq-start.tmpl',
202 - '<%= dirs.src %>/core/core.js',
203 - '<%= dirs.src %>/lightboxes/Lightbox.js',
204 - '<%= dirs.src %>/lightboxes/Lightbox_PrettyPhoto.js',
205 - '<%= dirs.src %>/core/layouts.js',
206 - '<%= dirs.src %>/core/jq-end.tmpl'
207 - ],
208 - dest: '<%= dirs.dest %>/photonic-prettyphoto.js'
209 - },
210 - strip: {
211 - options: {
212 - process: true
213 - },
214 - src: [
215 - '<%= dirs.src %>/core/external.js',
216 - '<%= dirs.src %>/core/jq-start.tmpl',
217 - '<%= dirs.src %>/core/core.js',
218 - '<%= dirs.src %>/lightboxes/Lightbox.js',
219 - '<%= dirs.src %>/lightboxes/Lightbox_Strip.js',
220 - '<%= dirs.src %>/core/layouts.js',
221 - '<%= dirs.src %>/core/jq-end.tmpl'
222 - ],
223 - dest: '<%= dirs.dest %>/photonic-strip.js'
224 - },
225 - swipebox: {
226 - options: {
227 - process: true
228 - },
229 - src: [
230 - '<%= dirs.src %>/core/external.js',
231 - '<%= dirs.src %>/core/jq-start.tmpl',
232 - '<%= dirs.src %>/core/core.js',
233 - '<%= dirs.src %>/lightboxes/Lightbox.js',
234 - '<%= dirs.src %>/lightboxes/Lightbox_Swipebox.js',
235 - '<%= dirs.src %>/core/layouts.js',
236 - '<%= dirs.src %>/core/jq-end.tmpl'
237 - ],
238 - dest: '<%= dirs.dest %>/photonic-swipebox.js'
239 - },
240 - thickbox: {
241 - options: {
242 - process: true
243 - },
244 - src: [
245 - '<%= dirs.src %>/core/external.js',
246 - '<%= dirs.src %>/core/jq-start.tmpl',
247 - '<%= dirs.src %>/core/core.js',
248 - '<%= dirs.src %>/lightboxes/Lightbox.js',
249 - '<%= dirs.src %>/lightboxes/Lightbox_Thickbox.js',
250 - '<%= dirs.src %>/core/layouts.js',
251 - '<%= dirs.src %>/core/jq-end.tmpl'
252 - ],
253 - dest: '<%= dirs.dest %>/photonic-thickbox.js'
254 - },
255 -
256 - no_jq_lightgallery: {
257 - options: {
258 - process: true
259 - },
260 - src: [
261 - '<%= dirs.no_jq_src %>/core/util.js',
262 - '<%= dirs.no_jq_src %>/core/external.js',
263 - '<%= dirs.no_jq_src %>/core/no-jq-start.tmpl',
264 - '<%= dirs.no_jq_src %>/core/core.js',
265 -// '<%= dirs.no_jq_src %>/lightboxes/Lightbox.js',
266 -// '<%= dirs.no_jq_src %>/lightboxes/Lightbox_Lightgallery.js',
267 -// '<%= dirs.no_jq_src %>/core/layouts.js',
268 - '<%= dirs.no_jq_src %>/core/no-jq-end.tmpl'
269 - ],
270 - dest: '<%= dirs.no_jq_dest %>/photonic-lightgallery.js'
271 - }
272 53 },
273 54
274 - uglify: {
275 - colorbox: {
276 - files: {
277 - '<%= dirs.dest %>/photonic-colorbox.min.js' : ['<%= dirs.dest %>/photonic-colorbox.js']
278 - }
279 - },
280 - fancybox: {
281 - files: {
282 - '<%= dirs.dest %>/photonic-fancybox.min.js' : ['<%= dirs.dest %>/photonic-fancybox.js']
283 - }
284 - },
285 - fancybox2: {
286 - files: {
287 - '<%= dirs.dest %>/photonic-fancybox2.min.js' : ['<%= dirs.dest %>/photonic-fancybox2.js']
288 - }
289 - },
290 - fancybox3: {
291 - files: {
292 - '<%= dirs.dest %>/photonic-fancybox3.min.js' : ['<%= dirs.dest %>/photonic-fancybox3.js']
293 - }
294 - },
295 - featherlight: {
296 - files: {
297 - '<%= dirs.dest %>/photonic-featherlight.min.js' : ['<%= dirs.dest %>/photonic-featherlight.js']
298 - }
299 - },
300 - galleria: {
301 - files: {
302 - '<%= dirs.dest %>/photonic-galleria.min.js' : ['<%= dirs.dest %>/photonic-galleria.js']
303 - }
304 - },
305 - imagelightbox: {
306 - files: {
307 - '<%= dirs.dest %>/photonic-imagelightbox.min.js' : ['<%= dirs.dest %>/photonic-imagelightbox.js']
308 - }
309 - },
310 - lightcase: {
311 - files: {
312 - '<%= dirs.dest %>/photonic-lightcase.min.js' : ['<%= dirs.dest %>/photonic-lightcase.js']
313 - }
314 - },
315 - lightgallery: {
316 - files: {
317 - '<%= dirs.dest %>/photonic-lightgallery.min.js' : ['<%= dirs.dest %>/photonic-lightgallery.js']
318 - }
319 - },
320 - magnific: {
321 - files: {
322 - '<%= dirs.dest %>/photonic-magnific.min.js' : ['<%= dirs.dest %>/photonic-magnific.js']
323 - }
324 - },
325 - none: {
326 - files: {
327 - '<%= dirs.dest %>/photonic-none.min.js' : ['<%= dirs.dest %>/photonic-none.js']
328 - }
329 - },
330 - photoswipe: {
331 - files: {
332 - '<%= dirs.dest %>/photonic-photoswipe.min.js' : ['<%= dirs.dest %>/photonic-photoswipe.js']
333 - }
334 - },
335 - prettyphoto: {
336 - files: {
337 - '<%= dirs.dest %>/photonic-prettyphoto.min.js' : ['<%= dirs.dest %>/photonic-prettyphoto.js']
338 - }
339 - },
340 - strip: {
341 - files: {
342 - '<%= dirs.dest %>/photonic-strip.min.js' : ['<%= dirs.dest %>/photonic-strip.js']
343 - }
344 - },
345 - swipebox: {
346 - files: {
347 - '<%= dirs.dest %>/photonic-swipebox.min.js' : ['<%= dirs.dest %>/photonic-swipebox.js']
348 - }
349 - },
350 - thickbox: {
351 - files: {
352 - '<%= dirs.dest %>/photonic-thickbox.min.js' : ['<%= dirs.dest %>/photonic-thickbox.js']
353 - }
354 - }
355 - },
356 -
357 55 makepot: {
358 56 target: {
359 57 options: {
360 58 type: 'wp-plugin',
@@ -366,55 +64,83 @@
366 64 }
367 65 });
368 66
369 67 // Load plugins
370 - var cwd = process.cwd();
68 + const cwd = process.cwd();
371 69 process.chdir('../../../../..');
70 + grunt.loadNpmTasks('grunt-webpack');
71 + grunt.loadNpmTasks('grunt-contrib-clean');
372 72 grunt.loadNpmTasks('grunt-contrib-concat');
373 -// grunt.loadNpmTasks('grunt-jquery-ready');
374 - grunt.loadNpmTasks('grunt-contrib-uglify');
73 + grunt.loadNpmTasks('grunt-contrib-copy');
74 + grunt.loadNpmTasks('grunt-contrib-cssmin');
375 75 grunt.loadNpmTasks('grunt-wp-i18n');
376 76 process.chdir(cwd);
377 77
378 - // Tasks
379 - grunt.registerTask('default', [
380 - 'concat:colorbox',
381 - 'concat:fancybox',
382 - 'concat:fancybox2',
383 - 'concat:fancybox3',
384 - 'concat:featherlight',
385 -// 'concat:fluidbox',
386 - 'concat:imagelightbox',
387 - 'concat:galleria',
388 - 'concat:lightcase',
389 - 'concat:lightgallery',
390 - 'concat:magnific',
391 - 'concat:none',
392 - 'concat:photoswipe',
393 - 'concat:prettyphoto',
394 - 'concat:strip',
395 - 'concat:swipebox',
396 - 'concat:thickbox',
78 + const lightboxes = [
79 + 'BaguetteBox',
80 + 'BigPicture',
81 + 'Colorbox',
82 + 'Fancybox',
83 + 'Fancybox2',
84 + 'Fancybox3',
85 + 'Featherlight',
86 + 'GLightbox',
87 + 'ImageLightbox',
88 + 'Lightcase',
89 + 'Lightgallery',
90 + 'Magnific',
91 + 'none',
92 + 'PhotoSwipe',
93 + 'PrettyPhoto',
94 + 'Spotlight',
95 + 'Strip',
96 + 'Swipebox',
97 + 'Thickbox',
98 + 'VenoBox',
99 + ];
397 100
398 - 'concat:no_jq_lightgallery',
101 + function buildCSS() {
102 + const tasks = [];
103 + grunt.task.run([
104 + 'clean:css'
105 + ]);
399 106
400 - 'uglify:colorbox',
401 - 'uglify:fancybox',
402 - 'uglify:fancybox2',
403 - 'uglify:fancybox3',
404 - 'uglify:featherlight',
405 -// 'uglify:fluidbox',
406 - 'uglify:imagelightbox',
407 - 'uglify:galleria',
408 - 'uglify:lightcase',
409 - 'uglify:lightgallery',
410 - 'uglify:magnific',
411 - 'uglify:none',
412 - 'uglify:photoswipe',
413 - 'uglify:prettyphoto',
414 - 'uglify:strip',
415 - 'uglify:swipebox',
416 - 'uglify:thickbox',
107 + grunt.config(['cssmin', 'core'], {
108 + files: [{
109 + expand: true,
110 + cwd: '<%= dirs.src_css %>',
111 + src: ['*.css', '!*.min.css'],
112 + dest: '<%= dirs.src_css %>/',
113 + ext: '.min.css'
114 + }]
115 + });
116 + tasks.push('cssmin:core');
417 117
418 - 'makepot:target'
419 - ]);
420 -};
118 + grunt.task.run(tasks);
119 + }
120 +
121 + function buildPOT() {
122 + grunt.task.run([
123 + 'makepot:target'
124 + ]);
125 + }
126 +
127 + function buildAll() {
128 + buildJS();
129 + buildCSS();
130 + buildPOT();
131 + }
132 +
133 + function buildJS() {
134 + // First run WebPack to generate the files. This generates 2 files per library - one minified and the other unminified.
135 + grunt.task.run([
136 + 'clean:js',
137 + 'webpack',
138 + 'clean:jsLicenses',
139 + ]);
140 + }
141 +
142 + grunt.registerTask('buildAll', buildAll);
143 + grunt.registerTask('buildCSS', buildCSS);
144 + grunt.registerTask('buildPOT', buildPOT);
145 + grunt.registerTask('buildJS', buildJS);
146 +};