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 +101 -371 2.20 → 3.37 View file →
@@ -1,11 +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 + 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 +
8 16 i18n_src: '..',
9 17 langs: 'languages'
10 18 },
11 19
@@ -10,349 +18,41 @@
10 18 },
11 19
12 20 vars: { },
13 21
14 - concat: {
15 - colorbox: {
22 + webpack: {
23 + myConfig: webpackConfig,
24 + },
25 +
26 + clean: {
27 + css: {
16 28 options: {
17 - process: true
29 + force: true
18 30 },
19 31 src: [
20 - '<%= dirs.src %>/core/external.js',
21 - '<%= dirs.src %>/core/jq-start.tmpl',
22 - '<%= dirs.src %>/core/core.js',
23 - '<%= dirs.src %>/lightboxes/Lightbox.js',
24 - '<%= dirs.src %>/lightboxes/Lightbox_Colorbox.js',
25 - '<%= dirs.src %>/core/layouts.js',
26 - '<%= dirs.src %>/core/jq-end.tmpl'
27 - ],
28 - dest: '<%= dirs.dest %>/photonic-colorbox.js'
32 + '<%= dirs.dest_css_combo %>',
33 + '<%= dirs.dest_css_combo_slider %>'
34 + ]
29 35 },
30 - fancybox: {
36 + js: {
31 37 options: {
32 - process: true
38 + force: true
33 39 },
34 40 src: [
35 - '<%= dirs.src %>/core/external.js',
36 - '<%= dirs.src %>/core/jq-start.tmpl',
37 - '<%= dirs.src %>/core/core.js',
38 - '<%= dirs.src %>/lightboxes/Lightbox.js',
39 - '<%= dirs.src %>/lightboxes/Lightbox_Fancybox.js',
40 - '<%= dirs.src %>/core/layouts.js',
41 - '<%= dirs.src %>/core/jq-end.tmpl'
42 - ],
43 - dest: '<%= dirs.dest %>/photonic-fancybox.js'
41 + '<%= dirs.dest_js_base %>/out/**/*.*',
42 + ]
44 43 },
45 - fancybox2: {
44 + jsLicenses: {
46 45 options: {
47 - process: true
46 + force: true
48 47 },
49 48 src: [
50 - '<%= dirs.src %>/core/external.js',
51 - '<%= dirs.src %>/core/jq-start.tmpl',
52 - '<%= dirs.src %>/core/core.js',
53 - '<%= dirs.src %>/lightboxes/Lightbox.js',
54 - '<%= dirs.src %>/lightboxes/Lightbox_Fancybox2.js',
55 - '<%= dirs.src %>/core/layouts.js',
56 - '<%= dirs.src %>/core/jq-end.tmpl'
57 - ],
58 - dest: '<%= dirs.dest %>/photonic-fancybox2.js'
49 + '<%= dirs.dest_js_base %>/module/**/*.txt',
50 + '<%= dirs.dest_js_base %>/nomodule/**/*.txt',
51 + ]
59 52 },
60 - fancybox3: {
61 - options: {
62 - process: true
63 - },
64 - src: [
65 - '<%= dirs.src %>/core/external.js',
66 - '<%= dirs.src %>/core/jq-start.tmpl',
67 - '<%= dirs.src %>/core/core.js',
68 - '<%= dirs.src %>/lightboxes/Lightbox.js',
69 - '<%= dirs.src %>/lightboxes/Lightbox_Fancybox3.js',
70 - '<%= dirs.src %>/core/layouts.js',
71 - '<%= dirs.src %>/core/jq-end.tmpl'
72 - ],
73 - dest: '<%= dirs.dest %>/photonic-fancybox3.js'
74 - },
75 - featherlight: {
76 - options: {
77 - process: true
78 - },
79 - src: [
80 - '<%= dirs.src %>/core/external.js',
81 - '<%= dirs.src %>/core/jq-start.tmpl',
82 - '<%= dirs.src %>/core/core.js',
83 - '<%= dirs.src %>/lightboxes/Lightbox.js',
84 - '<%= dirs.src %>/lightboxes/Lightbox_Featherlight.js',
85 - '<%= dirs.src %>/core/layouts.js',
86 - '<%= dirs.src %>/core/jq-end.tmpl'
87 - ],
88 - dest: '<%= dirs.dest %>/photonic-featherlight.js'
89 - },
90 -/*
91 - fluidbox: {
92 - options: {
93 - process: true
94 - },
95 - src: [
96 - '<%= dirs.src %>/core/external.js',
97 - '<%= dirs.src %>/core/jq-start.tmpl',
98 - '<%= dirs.src %>/core/core.js',
99 - '<%= dirs.src %>/lightboxes/Lightbox.js',
100 - '<%= dirs.src %>/lightboxes/Lightbox_Fluidbox.js',
101 - '<%= dirs.src %>/core/layouts.js',
102 - '<%= dirs.src %>/core/jq-end.tmpl'
103 - ],
104 - dest: '<%= dirs.dest %>/photonic-fluidbox.js'
105 - },
106 -*/
107 - galleria: {
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_Galleria.js',
117 - '<%= dirs.src %>/core/layouts.js',
118 - '<%= dirs.src %>/core/jq-end.tmpl'
119 - ],
120 - dest: '<%= dirs.dest %>/photonic-galleria.js'
121 - },
122 - imagelightbox: {
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_ImageLightbox.js',
132 - '<%= dirs.src %>/core/layouts.js',
133 - '<%= dirs.src %>/core/jq-end.tmpl'
134 - ],
135 - dest: '<%= dirs.dest %>/photonic-imagelightbox.js'
136 - },
137 - lightcase: {
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_Lightcase.js',
147 - '<%= dirs.src %>/core/layouts.js',
148 - '<%= dirs.src %>/core/jq-end.tmpl'
149 - ],
150 - dest: '<%= dirs.dest %>/photonic-lightcase.js'
151 - },
152 - lightgallery: {
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_Lightgallery.js',
162 - '<%= dirs.src %>/core/layouts.js',
163 - '<%= dirs.src %>/core/jq-end.tmpl'
164 - ],
165 - dest: '<%= dirs.dest %>/photonic-lightgallery.js'
166 - },
167 - magnific: {
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 %>/lightboxes/Lightbox.js',
176 - '<%= dirs.src %>/lightboxes/Lightbox_Magnific.js',
177 - '<%= dirs.src %>/core/layouts.js',
178 - '<%= dirs.src %>/core/jq-end.tmpl'
179 - ],
180 - dest: '<%= dirs.dest %>/photonic-magnific.js'
181 - },
182 - none: {
183 - options: {
184 - process: true
185 - },
186 - src: [
187 - '<%= dirs.src %>/core/external.js',
188 - '<%= dirs.src %>/core/jq-start.tmpl',
189 - '<%= dirs.src %>/core/core.js',
190 - '<%= dirs.src %>/core/layouts.js',
191 - '<%= dirs.src %>/core/jq-end.tmpl'
192 - ],
193 - dest: '<%= dirs.dest %>/photonic-none.js'
194 - },
195 - photoswipe: {
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_PhotoSwipe.js',
205 - '<%= dirs.src %>/core/layouts.js',
206 - '<%= dirs.src %>/core/jq-end.tmpl'
207 - ],
208 - dest: '<%= dirs.dest %>/photonic-photoswipe.js'
209 - },
210 - prettyphoto: {
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_PrettyPhoto.js',
220 - '<%= dirs.src %>/core/layouts.js',
221 - '<%= dirs.src %>/core/jq-end.tmpl'
222 - ],
223 - dest: '<%= dirs.dest %>/photonic-prettyphoto.js'
224 - },
225 - strip: {
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_Strip.js',
235 - '<%= dirs.src %>/core/layouts.js',
236 - '<%= dirs.src %>/core/jq-end.tmpl'
237 - ],
238 - dest: '<%= dirs.dest %>/photonic-strip.js'
239 - },
240 - swipebox: {
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_Swipebox.js',
250 - '<%= dirs.src %>/core/layouts.js',
251 - '<%= dirs.src %>/core/jq-end.tmpl'
252 - ],
253 - dest: '<%= dirs.dest %>/photonic-swipebox.js'
254 - },
255 - thickbox: {
256 - options: {
257 - process: true
258 - },
259 - src: [
260 - '<%= dirs.src %>/core/external.js',
261 - '<%= dirs.src %>/core/jq-start.tmpl',
262 - '<%= dirs.src %>/core/core.js',
263 - '<%= dirs.src %>/lightboxes/Lightbox.js',
264 - '<%= dirs.src %>/lightboxes/Lightbox_Thickbox.js',
265 - '<%= dirs.src %>/core/layouts.js',
266 - '<%= dirs.src %>/core/jq-end.tmpl'
267 - ],
268 - dest: '<%= dirs.dest %>/photonic-thickbox.js'
269 - }
270 53 },
271 54
272 - uglify: {
273 - colorbox: {
274 - files: {
275 - '<%= dirs.dest %>/photonic-colorbox.min.js' : ['<%= dirs.dest %>/photonic-colorbox.js']
276 - }
277 - },
278 - fancybox: {
279 - files: {
280 - '<%= dirs.dest %>/photonic-fancybox.min.js' : ['<%= dirs.dest %>/photonic-fancybox.js']
281 - }
282 - },
283 - fancybox2: {
284 - files: {
285 - '<%= dirs.dest %>/photonic-fancybox2.min.js' : ['<%= dirs.dest %>/photonic-fancybox2.js']
286 - }
287 - },
288 - fancybox3: {
289 - files: {
290 - '<%= dirs.dest %>/photonic-fancybox3.min.js' : ['<%= dirs.dest %>/photonic-fancybox3.js']
291 - }
292 - },
293 - featherlight: {
294 - files: {
295 - '<%= dirs.dest %>/photonic-featherlight.min.js' : ['<%= dirs.dest %>/photonic-featherlight.js']
296 - }
297 - },
298 - galleria: {
299 - files: {
300 - '<%= dirs.dest %>/photonic-galleria.min.js' : ['<%= dirs.dest %>/photonic-galleria.js']
301 - }
302 - },
303 - imagelightbox: {
304 - files: {
305 - '<%= dirs.dest %>/photonic-imagelightbox.min.js' : ['<%= dirs.dest %>/photonic-imagelightbox.js']
306 - }
307 - },
308 - lightcase: {
309 - files: {
310 - '<%= dirs.dest %>/photonic-lightcase.min.js' : ['<%= dirs.dest %>/photonic-lightcase.js']
311 - }
312 - },
313 - lightgallery: {
314 - files: {
315 - '<%= dirs.dest %>/photonic-lightgallery.min.js' : ['<%= dirs.dest %>/photonic-lightgallery.js']
316 - }
317 - },
318 - magnific: {
319 - files: {
320 - '<%= dirs.dest %>/photonic-magnific.min.js' : ['<%= dirs.dest %>/photonic-magnific.js']
321 - }
322 - },
323 - none: {
324 - files: {
325 - '<%= dirs.dest %>/photonic-none.min.js' : ['<%= dirs.dest %>/photonic-none.js']
326 - }
327 - },
328 - photoswipe: {
329 - files: {
330 - '<%= dirs.dest %>/photonic-photoswipe.min.js' : ['<%= dirs.dest %>/photonic-photoswipe.js']
331 - }
332 - },
333 - prettyphoto: {
334 - files: {
335 - '<%= dirs.dest %>/photonic-prettyphoto.min.js' : ['<%= dirs.dest %>/photonic-prettyphoto.js']
336 - }
337 - },
338 - strip: {
339 - files: {
340 - '<%= dirs.dest %>/photonic-strip.min.js' : ['<%= dirs.dest %>/photonic-strip.js']
341 - }
342 - },
343 - swipebox: {
344 - files: {
345 - '<%= dirs.dest %>/photonic-swipebox.min.js' : ['<%= dirs.dest %>/photonic-swipebox.js']
346 - }
347 - },
348 - thickbox: {
349 - files: {
350 - '<%= dirs.dest %>/photonic-thickbox.min.js' : ['<%= dirs.dest %>/photonic-thickbox.js']
351 - }
352 - }
353 - },
354 -
355 55 makepot: {
356 56 target: {
357 57 options: {
358 58 type: 'wp-plugin',
@@ -364,53 +64,83 @@
364 64 }
365 65 });
366 66
367 67 // Load plugins
368 - var cwd = process.cwd();
68 + const cwd = process.cwd();
369 69 process.chdir('../../../../..');
70 + grunt.loadNpmTasks('grunt-webpack');
71 + grunt.loadNpmTasks('grunt-contrib-clean');
370 72 grunt.loadNpmTasks('grunt-contrib-concat');
371 -// grunt.loadNpmTasks('grunt-jquery-ready');
372 - grunt.loadNpmTasks('grunt-contrib-uglify');
73 + grunt.loadNpmTasks('grunt-contrib-copy');
74 + grunt.loadNpmTasks('grunt-contrib-cssmin');
373 75 grunt.loadNpmTasks('grunt-wp-i18n');
374 76 process.chdir(cwd);
375 77
376 - // Tasks
377 - grunt.registerTask('default', [
378 - 'concat:colorbox',
379 - 'concat:fancybox',
380 - 'concat:fancybox2',
381 - 'concat:fancybox3',
382 - 'concat:featherlight',
383 -// 'concat:fluidbox',
384 - 'concat:imagelightbox',
385 - 'concat:galleria',
386 - 'concat:lightcase',
387 - 'concat:lightgallery',
388 - 'concat:magnific',
389 - 'concat:none',
390 - 'concat:photoswipe',
391 - 'concat:prettyphoto',
392 - 'concat:strip',
393 - 'concat:swipebox',
394 - '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 + ];
395 100
396 - 'uglify:colorbox',
397 - 'uglify:fancybox',
398 - 'uglify:fancybox2',
399 - 'uglify:fancybox3',
400 - 'uglify:featherlight',
401 -// 'uglify:fluidbox',
402 - 'uglify:imagelightbox',
403 - 'uglify:galleria',
404 - 'uglify:lightcase',
405 - 'uglify:lightgallery',
406 - 'uglify:magnific',
407 - 'uglify:none',
408 - 'uglify:photoswipe',
409 - 'uglify:prettyphoto',
410 - 'uglify:strip',
411 - 'uglify:swipebox',
412 - 'uglify:thickbox',
101 + function buildCSS() {
102 + const tasks = [];
103 + grunt.task.run([
104 + 'clean:css'
105 + ]);
413 106
414 - 'makepot:target'
415 - ]);
416 -};
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');
117 +
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 +};