]>
git.agnieray.net Git - galette.git/blob - gulpfile.js
2 * Set the URL of your local instance of Galette here.
3 * Then run "gulp serve".
4 * This is for local development purpose only.
5 * Don't commit this change in the repository.
8 url
: 'http://galette.localhost/'
11 var gulp
= require('gulp'),
13 uglify
= require('gulp-uglify'),
14 cleanCSS
= require('gulp-clean-css'),
15 merge
= require('merge-stream'),
16 concat
= require('gulp-concat'),
17 replace
= require('gulp-replace'),
18 browserSync
= require('browser-sync').create(),
19 build
= require('./semantic/tasks/build'),
20 buildJS
= require('./semantic/tasks/build/javascript'),
21 buildCSS
= require('./semantic/tasks/build/css'),
22 buildAssets
= require('./semantic/tasks/build/assets')
25 gulp
.task('build ui', build
);
26 gulp
.task('build-css', buildCSS
);
27 gulp
.task('build-javascript', buildJS
);
28 gulp
.task('build-assets', buildAssets
);
31 webroot
: './galette/webroot/',
33 public: './galette/webroot/assets/',
34 css
: './galette/webroot/assets/css/',
35 js
: './galette/webroot/assets/js/',
36 webfonts
: './galette/webroot/assets/webfonts/',
38 public: './galette/webroot/themes/default/',
39 css
: './galette/webroot/themes/default/ui/semantic.min.css',
40 js
: './galette/webroot/themes/default/ui/semantic.min.js',
41 images
: './galette/webroot/themes/default/images/'
45 theme
: './ui/semantic/galette/**/*',
46 config
: './ui/semantic/theme*',
48 './ui/semantic/galette/*',
49 './ui/semantic/galette/**/*.*'
51 css
: './ui/css/**/*.css',
53 favicon
:'./ui/images/favicon.png',
54 logo
: './ui/images/galette.png',
55 photo
:'./ui/images/default.png'
58 src
: './semantic/src/',
59 theme
: './semantic/src/themes/galette/'
63 './ui/css/galette.css',
64 './node_modules/summernote/dist/summernote-lite.min.css'
69 './node_modules/jquery/dist/jquery.js',
70 './node_modules/js-cookie/dist/js.cookie.min.js',
71 './node_modules/summernote/dist/summernote-lite.min.js',
75 './node_modules/chart.js/dist/chart.min.js',
76 './node_modules/chartjs-plugin-autocolors/dist/chartjs-plugin-autocolors.min.js',
77 './node_modules/chartjs-plugin-datalabels/dist/chartjs-plugin-datalabels.min.js'
80 './node_modules/sortablejs/Sortable.min.js'
85 src
: './ui/css/galette_print.css',
88 src
: './ui/css/install.css',
91 src
: './ui/js/mass_changes.js',
94 src
: './node_modules/summernote/dist/font/*',
97 src
: './node_modules/summernote/dist/lang/*.min.js',
104 favicon
= gulp
.src(paths
.src
.favicon
)
105 .pipe(gulp
.dest(paths
.assets
.theme
.images
))
106 .pipe(browserSync
.stream());
108 logo
= gulp
.src(paths
.src
.logo
)
109 .pipe(gulp
.dest(paths
.assets
.theme
.images
))
110 .pipe(browserSync
.stream());
112 photo
= gulp
.src(paths
.src
.photo
)
113 .pipe(gulp
.dest(paths
.assets
.theme
.images
))
114 .pipe(browserSync
.stream());
116 return merge(favicon
, logo
, photo
);
120 config
= gulp
.src(paths
.src
.config
)
121 .pipe(gulp
.dest(paths
.semantic
.src
))
122 .pipe(browserSync
.stream());
124 theme
= gulp
.src(paths
.src
.files
)
125 .pipe(gulp
.dest(paths
.semantic
.theme
))
126 .pipe(browserSync
.stream());
128 return merge(config
, theme
);
134 paths
.assets
.theme
.public,
139 main
= gulp
.src(paths
.styles
.main
)
140 .pipe(replace('url(font/', 'url(../webfonts/'))
142 .pipe(concat('galette-main.bundle.min.css'))
143 .pipe(gulp
.dest(paths
.assets
.css
))
144 .pipe(browserSync
.stream());
150 main
= gulp
.src(paths
.scripts
.main
)
151 .pipe(concat('galette-main.bundle.min.js'))
153 .pipe(gulp
.dest(paths
.assets
.js
))
154 .pipe(browserSync
.stream());
156 chartjs
= gulp
.src(paths
.scripts
.chartjs
)
157 .pipe(concat('galette-chartjs.bundle.min.js'))
158 .pipe(gulp
.dest(paths
.assets
.js
))
159 .pipe(browserSync
.stream());
161 sortablejs
= gulp
.src(paths
.scripts
.sortablejs
)
162 .pipe(concat('galette-sortablejs.bundle.min.js'))
163 .pipe(gulp
.dest(paths
.assets
.js
))
164 .pipe(browserSync
.stream());
166 return merge(main
, chartjs
, sortablejs
);
170 main
= paths
.extras
.map(function (extra
) {
171 return gulp
.src(extra
.src
)
172 .pipe(gulp
.dest(paths
.assets
.public + extra
.dest
))
173 .pipe(browserSync
.stream());
182 proxy
: localServer
.url
185 gulp
.watch([paths
.src
.favicon
, paths
.src
.logo
, paths
.src
.photo
], gulp
.series(galette
)).on('change', browserSync
.reload
)
186 gulp
.watch([paths
.src
.theme
, paths
.src
.config
], gulp
.series(theme
, 'build-css')).on('change', browserSync
.reload
)
187 gulp
.watch([paths
.src
.css
], gulp
.series(styles
)).on('change', browserSync
.reload
)
188 gulp
.watch([paths
.src
.js
], gulp
.series(scripts
)).on('change', browserSync
.reload
)
189 gulp
.watch([paths
.assets
.theme
.css
, paths
.assets
.theme
.js
, paths
.assets
.theme
.images
]).on('change', browserSync
.reload
)
192 exports
.galette
= galette
;
193 exports
.theme
= theme
;
194 exports
.clean
= clean
;
195 exports
.styles
= styles
;
196 exports
.scripts
= scripts
;
197 exports
.extras
= extras
;
198 exports
.watch
= watch
;
200 var build
= gulp
.series(theme
, clean
, styles
, scripts
, extras
, 'build ui', galette
);
201 exports
.default = build
;