-
Notifications
You must be signed in to change notification settings - Fork 13
/
gulpfile.coffee
68 lines (60 loc) · 1.62 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
gulp = require 'gulp'
plumber = require 'gulp-plumber'
coffee = require 'gulp-coffee'
concat = require 'gulp-concat'
less = require 'gulp-less'
autoprefixer = require 'gulp-autoprefixer'
gutil = require 'gulp-util'
uglify = require 'gulp-uglify'
browserSync = require 'browser-sync'
config =
source:
coffee: "./src/app/angular-drag-and-drop.coffee"
less: "./src/less/**/*.less"
target: "./build"
demo: "./examples"
log =
info: (path, type) ->
console.log "\nFile #{path} was #{type}, running tasks...\n"
error: (err) ->
gutil.log err.toString()
this.emit 'end'
gulp.task "less", ->
gulp.src config.source.less
.pipe less()
.pipe autoprefixer "browsers": [
'last 2 version'
'> 1%'
'ie >= 8'
'opera 12.1'
'bb 10'
'android 4'
]
.pipe gulp.dest "#{config.target}/css"
gulp.task "coffee", ->
gulp.src config.source.coffee
.pipe coffee bare: true
.pipe concat "angular-drag-and-drop.js"
.pipe gulp.dest "#{config.target}/js"
.pipe uglify()
.pipe concat "angular-drag-and-drop.min.js"
.pipe gulp.dest "#{config.target}/js"
gulp.task "watch", ->
gulp.watch config.source.less, ["less"]
gulp.watch config.source.coffee, ["coffee"]
gulp.task "browser-sync", ->
browserSync.init [
config.target + '/**/*'
config.demo + '/**/*'
],
server:
baseDir: './'
directory: true
index: './examples/index.html'
notify: true
open: true
ui:
enabled: true
gulp.task "default", [
"less", "coffee", "watch", "browser-sync"
]