-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathgulpfile.js
More file actions
72 lines (62 loc) · 2.07 KB
/
gulpfile.js
File metadata and controls
72 lines (62 loc) · 2.07 KB
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
var gulp = require('gulp');
var rename = require("gulp-rename");
var uglify = require('gulp-uglify');
var iife = require("gulp-iife");
var concat = require('gulp-concat');
var frontendSrc = ['assets/src/js/shared.js', 'assets/src/js/frontend.js'];
var frontendDest = 'assets/js';
var backendSrc = ['assets/src/js/shared.js', 'assets/src/js/backend.js'];
var backendDest = 'assets/js';
var pluginsSrc = ['assets/src/js/plugins/*.js'];
var pluginsDest = 'assets/js';
var minifySrc = ['assets/js/*.js', '!assets/js/*.min.js'];
var minifyDest = 'assets/js';
// Frontend area scripts
gulp.task('frontend-scripts', function () {
return gulp.src(frontendSrc)
.pipe(concat('woongkir-frontend.js'))
.pipe(iife({
useStrict: true,
trimCode: true,
prependSemicolon: true,
params: ["$"],
args: ["jQuery"]
}))
.pipe(gulp.dest(frontendDest));
});
// Backend area scripts
gulp.task('backend-scripts', function () {
return gulp.src(backendSrc)
.pipe(concat('woongkir-backend.js'))
.pipe(iife({
useStrict: true,
trimCode: true,
prependSemicolon: true,
params: ["$"],
args: ["jQuery"]
}))
.pipe(gulp.dest(backendDest));
});
// Plugins scripts
gulp.task('plugins-scripts', function () {
return gulp.src(pluginsSrc)
.pipe(gulp.dest(pluginsDest));
});
// Minify scripts
gulp.task('minify-scripts', function () {
return gulp.src(minifySrc)
.pipe(rename({
suffix: ".min"
}))
.pipe(uglify())
.pipe(gulp.dest(minifyDest));
});
// Default task
gulp.task('default', ['frontend-scripts', 'backend-scripts', 'plugins-scripts', 'minify-scripts']);
// Dev task with watch
gulp.task('watch', ['frontend-scripts', 'backend-scripts', 'plugins-scripts', 'minify-scripts'], function () {
gulp.watch([frontendSrc], ['frontend-scripts']);
gulp.watch([backendSrc], ['backend-scripts']);
gulp.watch([pluginsSrc], ['plugins-scripts']);
gulp.watch([minifySrc], ['minify-scripts']);
});