-
Notifications
You must be signed in to change notification settings - Fork 0
/
gulpfile.coffee
64 lines (55 loc) · 1.32 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
gulp = require 'gulp'
gutil = require 'gulp-util'
parentDir = "app/"
#load all module
$ = require('gulp-load-plugins')({
pattern: ['gulp-*', 'gulp.*'],
replaceString: /\bgulp[\-.]/
})
browserSync = require 'browser-sync'
reload = browserSync.reload
runSequence = require('run-sequence');
gulp.task 'default', ->
console.log 'gulp!'
#coffee compile
gulp.task 'coffee', ->
gulp
.src ['src/coffee/*.coffee']
.pipe $.plumber()
.pipe $.coffee()
.pipe gulp.dest parentDir + 'js'
#typescript compile
gulp.task 'typescript', () ->
gulp
.src 'src/*.ts'
.pipe $.plumber()
.pipe $.typescript({
# module:"amd"
# target: 'ES6'
removeComments: true
sortOutput: false
sourcemap: false
out: 'app.js'
})
.pipe gulp.dest parentDir + 'js'
#run server / watch
gulp.task 'serve', ['default'], ->
browserSync
notify: false
server:
baseDir: [parentDir]
# gulp.watch ['src/coffee/*.coffee'], ['script']
gulp.watch ['src/*.ts'], ['script_type']
gulp.watch [parentDir + '*.html'], reload
#concat javascript
gulp.task 'concat', ->
gulp
.src ["app/temp/*.js"]
.pipe $.concat 'all.js'
.pipe gulp.dest 'app/dist/'
#coffee compile&reload
gulp.task 'script', ->
runSequence 'coffee', reload
#typescript compile&reload
gulp.task 'script_type', ->
runSequence 'typescript', 'concat', reload