]>
git.agnieray.net Git - galette.git/blob - gulpfile.js
1 var gulp
= require('gulp');
3 const { series
, parallel
} = require('gulp');
4 var del
= require('del');
5 var uglify
= require('gulp-uglify');
6 var cleanCSS
= require('gulp-clean-css');
7 var merge
= require('merge-stream');
8 var concat
= require('gulp-concat');
9 var replace
= require('gulp-replace');
12 'modules': './node_modules/',
13 'public': './galette/webroot/assets/'
17 './galette/webroot/themes/default/galette.css',
18 './node_modules/@fortawesome/fontawesome-free/css/all.css',
19 './node_modules/jquery-ui-dist/jquery-ui.css',
20 './galette/webroot/themes/default/jquery-ui/jquery-ui-1.12.1.custom.css',
21 './node_modules/selectize/dist/css/selectize.default.css',
22 './node_modules/summernote/dist/summernote-lite.min.css',
26 './node_modules/jquery/dist/jquery.js',
27 './node_modules/jquery-ui-dist/jquery-ui.js',
28 './node_modules/jquery-ui/ui/i18n/*',
29 './node_modules/js-cookie/dist/js.cookie.min.js',
30 './node_modules/microplugin/src/microplugin.js',
31 './node_modules/sifter/sifter.js',
32 './node_modules/selectize/dist/js/selectize.min.js',
33 './galette/webroot/js/jquery/jquery.bgFade.js',
34 './node_modules/summernote/dist/summernote-lite.min.js',
35 './galette/webroot/js/common.js',
40 'src': './node_modules/@fortawesome/fontawesome-free/webfonts/*',
43 'src': './node_modules/summernote/dist/font/*',
46 'src': './node_modules/summernote/dist/lang/*.min.js',
49 'src': './node_modules/jquery-ui-dist/images/*',
52 'src': './galette/webroot/themes/default/jquery-ui/images/*',
55 'src': './galette/webroot/themes/default/images/desktop/*',
56 'dest': '/images/desktop/'
58 'src': './node_modules/jstree/dist/themes/default/32px.png',
61 'src': './node_modules/jstree/dist/themes/default/40px.png',
64 'src': './node_modules/jstree/dist/themes/default/throbber.gif',
69 const clean = function(cb
) {
70 del([galette
.public]);
75 //wilcards are mandatory for task not to run only once...
76 gulp
.watch('./galette/webroot/themes/**/*.css', series(styles
));
77 gulp
.watch('./galette/webroot/js/*.js', series(scripts
));
81 var _dir
= galette
.public + '/css/';
83 main
= gulp
.src(main_styles
)
84 .pipe(replace('jquery-ui/images/', '../images/'))
85 .pipe(replace('("images/ui', '("../images/ui')) //
86 .pipe(replace('url(images/', 'url(../images/'))
87 .pipe(replace('url(font/', 'url(../webfonts/'))
89 .pipe(concat('galette-main.bundle.min.css'))
90 .pipe(gulp
.dest(_dir
));
92 jstree
= gulp
.src('./node_modules/jstree/dist/themes/default/style.css')
93 .pipe(replace('url("32px', 'url("../images/32px'))
94 .pipe(replace('url("40px', 'url("../images/40px'))
95 .pipe(replace('url("throbber', 'url("../images/throbber'))
96 .pipe(concat('galette-jstree.bundle.min.css'))
98 .pipe(gulp
.dest(_dir
));
100 jqplot
= gulp
.src('./galette/webroot/js/jquery/jqplot-1.0.8r1250/jquery.jqplot.css')
101 .pipe(concat('galette-jqplot.bundle.min.css'))
103 .pipe(gulp
.dest(_dir
));
105 return merge(main
, jstree
, jqplot
);
109 var _dir
= galette
.public + '/js/';
111 main
= gulp
.src(main_scripts
)
112 .pipe(concat('galette-main.bundle.min.js'))
114 .pipe(gulp
.dest(_dir
));
116 jstree
= gulp
.src('./node_modules/jstree/dist/jstree.min.js')
117 .pipe(concat('galette-jstree.bundle.min.js'))
119 .pipe(gulp
.dest(_dir
));
121 //use local lib, npm one is missing plugins :/
123 './galette/webroot/js/jquery/jqplot-1.0.8r1250/jquery.jqplot.min.js',
124 './galette/webroot/js/jquery/jqplot-1.0.8r1250/plugins/jqplot.barRenderer.min.js',
125 './galette/webroot/js/jquery/jqplot-1.0.8r1250/plugins/jqplot.categoryAxisRenderer.min.js',
126 './galette/webroot/js/jquery/jqplot-1.0.8r1250/plugins/jqplot.pieRenderer.min.js',
127 './galette/webroot/js/jquery/jqplot-1.0.8r1250/plugins/jqplot.pointLabels.min.js',
129 .pipe(concat('galette-jqplot.bundle.min.js'))
131 .pipe(gulp
.dest(_dir
));
133 return merge(main
, jstree
, jqplot
);
137 main
= main_assets
.map(function (asset
) {
138 return gulp
.src(asset
.src
)
139 .pipe(gulp
.dest(galette
.public + asset
.dest
));
146 exports
.clean
= clean
;
147 exports
.watch
= watch
;
149 exports
.styles
= styles
;
150 exports
.scripts
= scripts
;
151 exports
.assets
= assets
;
153 exports
.build
= series(styles
, scripts
, assets
);
154 exports
.default = exports
.build
;