1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 | var glue = require("gulp-glue");
|
7 | var gulp = require('gulp');
|
8 | var plumber = require('gulp-plumber');
|
9 | var debug = require('gulp-debug');
|
10 | var sourcemaps = require('gulp-sourcemaps');
|
11 | var gzip = require('gulp-gzip');
|
12 | var sass = require('gulp-sass');
|
13 | var less = require('gulp-less');
|
14 | var concat = require('gulp-concat');
|
15 | var replace = require('gulp-replace');
|
16 | var addsrc = require('gulp-add-src');
|
17 | var os = require('os');
|
18 | var utils = require('../utils');
|
19 | var del = require('del');
|
20 | var common = require('./common');
|
21 |
|
22 | var main = common.main;
|
23 |
|
24 | gulp.task('styles', ['less', 'sass', 'css']);
|
25 |
|
26 | gulp.task('sass', function ()
|
27 | {
|
28 | return gulp.src(['style/*.sass', 'style/*.scss'])
|
29 | .pipe(plumber())
|
30 | .pipe(sass.sync())
|
31 | .pipe(gulp.dest(common.dist.main))
|
32 | });
|
33 |
|
34 | gulp.task('less', function ()
|
35 | {
|
36 | return gulp.src('style/theme.less')
|
37 | .pipe(plumber())
|
38 | .pipe(debug())
|
39 | .pipe(sourcemaps.init())
|
40 | .pipe(less())
|
41 | .pipe(replace('/*# sourceMappingURL=../build/', '/*# sourceMappingURL='))
|
42 | .pipe(sourcemaps.write('.'))
|
43 | .pipe(gulp.dest('build'))
|
44 | .pipe(gzip())
|
45 | .pipe(gulp.dest('build'));
|
46 | });
|
47 |
|
48 | gulp.task('css', ['less', 'sass'], function ()
|
49 | {
|
50 | return gulp.src([common.dist.main + '/*.css', 'sprites/build/*.css', 'style/*.css'])
|
51 | .pipe(debug())
|
52 | .pipe(concat(main + ".css"))
|
53 | .pipe(debug())
|
54 | .pipe(addsrc('sprites/build/*.*'))
|
55 | .pipe(gulp.dest('build'))
|
56 | .pipe(gzip())
|
57 | .pipe(gulp.dest('build'))
|
58 | });
|
59 |
|
60 | gulp.task('sprites', function (cb) {
|
61 |
|
62 |
|
63 |
|
64 | if (os.platform().indexOf('win') === 0)
|
65 | {
|
66 | cb();
|
67 | }
|
68 |
|
69 | if (!utils.exists('sprites/')) {
|
70 | cb();
|
71 | return;
|
72 | }
|
73 | del.sync("sprites/build/*");
|
74 |
|
75 | return gulp.src(['sprites/**/*'])
|
76 | .pipe(glue({
|
77 | url: './',
|
78 | recursive: true,
|
79 | source: './sprites/',
|
80 | quiet: true,
|
81 | output: './sprites/build/',
|
82 | css: 'sprites/build/'
|
83 | }, function () {
|
84 | cb();
|
85 | }))
|
86 | });
|