-
Notifications
You must be signed in to change notification settings - Fork 0
/
gulpfile.coffee
82 lines (71 loc) · 1.99 KB
/
gulpfile.coffee
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
gulp = require 'gulp'
# postcss = require('gulp-postcss')
# autoprefixer = require('autoprefixer')
# cssnano = require('cssnano')
imagemin = require 'gulp-imagemin'
pngquant = require 'imagemin-pngquant'
concat = require 'gulp-concat'
rimraf = require 'rimraf'
webpack = require 'webpack-stream'
path =
build:
img: 'build/img/'
src:
img: 'src/img/images/*.*'
watch:
js: 'src/js/**/*.js'
style: 'src/css/**/*.css'
scss: 'src/css/style.scss'
img: 'src/img/**/*.*'
clean: './build'
gulp.task 'clean', (cb) ->
rimraf path.clean, cb
# processorsCSS = [
# cssnano({
# discardComments: {
# removeAll: true
# },
# reduceIdents: false,
# mergeIdents: false
# })
# ];
# gulp.task('style:build', function () {
# gulp.src(path.src.style)
# .pipe(postcss(processorsCSS))
# .pipe(concat('library.css'))
# .pipe(gulp.dest(path.build.css));
# });
# processorsSass = [
# autoprefixer({ browsers: ['last 4 versions'] }),
# cssnano({discardComments: {removeAll: true}})
# ];
# gulp.task('style_scss:build', function () {
# gulp.src(path.src.scss)
# .pipe(sass())
# .pipe(postcss(processorsSass))
# .pipe(gulp.dest(path.build.css));
# });
gulp.task 'image:build', () ->
gulp.src path.src.img
.pipe imagemin
progressive: true
svgoPlugins: [{removeViewBox: false}]
use: [pngquant()]
interlaced: true
.pipe gulp.dest path.build.img
#запускаем все манипуляции с файлами и кидаем в build
gulp.task 'build', [
'image:build',
'webpack'
]
#наблюдаем за изменениями в файлах
gulp.task 'watch', () ->
gulp.watch [path.watch.style], ['build']
gulp.watch [path.watch.scss], ['build']
gulp.watch [path.watch.js], ['build']
gulp.watch [path.watch.img], ['build']
gulp.task 'default', ['build', 'watch']
gulp.task 'webpack', () ->
return gulp.src 'src/entry'
.pipe webpack require './webpack.config'
.pipe gulp.dest 'build/'