-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathbuild.js
46 lines (40 loc) · 1.07 KB
/
build.js
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
//==============================================
// CONFIG
//----------------------------------------------
var input = './src/red-locomotive.js'
var output = './red-locomotive.js'
var opts = {
debug: true
}
//===============================================
var browserify = require('browserify')
var watch = require('node-watch')
var fs = require('fs')
var throwErrors = true
var handleErr = function(err) {
if(!err) return
if(!throwErrors) throw err
console.log(err)
}
var writeFileCallback = function(err) {
if(err) handleErr(err)
console.log('red-locomotive sucessfully built')
}
var bundleCallback = function(err, src) {
if(err) handleErr(err)
fs.writeFile(output, src, writeFileCallback)
}
var build = function() {
var parser = browserify(input)
parser.ignore('./node_modules/canvas');
parser.bundle(opts, bundleCallback)
}
module.exports = function(flags) {
flags = flags || {}
if(flags.watch) {
throwErrors = false
console.log('watching src directory for changes...')
watch('./src', build)
}
build()
}