-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathgulpfile.js
More file actions
61 lines (51 loc) · 1.76 KB
/
gulpfile.js
File metadata and controls
61 lines (51 loc) · 1.76 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
var gulp = require('gulp');
var concat = require('gulp-concat');
var del = require('del');
var uglifyes = require('uglify-es');
var composer = require('gulp-uglify/composer');
var minify = composer(uglifyes, console);
// //是否开启高可用性检查(浏览器不支持时直接提示)
// let isHightAvailability = false;
let model = [
"./src/tool.js"
, "./src/vector2d.js"
, "./src/ShowObj.js"
, "./src/jGE.js"
, "./src/EventManager.js"
//, "./src/ObjectFactory.js"
, "./src/ResourceManager.js"
//, "./src/ResManager.js"
, "./src/SceneManager.js"
, "./src/Keyboard.js"
, "./src/jGE.config.js"
//,"./lib/jGE.Debug.js"
];
console.log(`准备生成 jGE,包含的模块有:\n${model.join('').replace(/\.\/src\//g, '').replace(/\.js/g, '\n')}`)
gulp.task('clean', function () {
console.log("....清理输出文件....")
return del(['release']);
});
gulp.task('jGE-Full', gulp.series('clean', function (cb) {
let rsl = gulp.src(model)
.pipe(concat('jGE.js'))
.pipe(gulp.dest('./release/'));
return rsl;
})
);
gulp.task('jGE-min', gulp.series('jGE-Full', function () {
return gulp.src("./release/jGE.js")
.pipe(concat('jGE.min.js'))
.pipe(minify({}))
.pipe(gulp.dest('./release/'));
}));
gulp.task('AvailabilityCheck', gulp.series('jGE-min', function () {
if (isHightAvailability) {
gulp.src(["./src/Availability.js", "./release/jGE.js"])
.pipe(concat('jGE.js'))
.pipe(gulp.dest('./release/'));
return gulp.src(["./src/Availability.js", "./release/jGE.min.js"])
.pipe(concat('jGE.min.js'))
.pipe(gulp.dest('./release/'));
}
}));
gulp.task('default', gulp.parallel('jGE-Full', 'jGE-min'/*,'AvailabilityCheck'*/));