forked from deepstreamIO/deepstream.io-client-js
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathGruntfile.js
54 lines (50 loc) · 1.45 KB
/
Gruntfile.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
46
47
48
49
50
51
52
53
54
const derequire = require('derequire')
function dereqCallback(err, src, next) {
if(err) {
throw err
}
next(err, derequire(src))
}
module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
browserify: {
dist: {
files: {
'dist/deepstream.js': [ 'src/client.js' ]
},
options: {
transform: [['babelify', {presets: ['es2015']}]],
postBundleCB: dereqCallback,
ignore: [ 'ws' ],
browserifyOptions: {
standalone: 'deepstream',
//'builtins': []
}
}
}
},
uglify: {
options: {
banner: '/*! <%= pkg.name %> <%= pkg.version %> (c)<%= grunt.template.today("yyyy") %> deepstreamHub GmbH, with parts (c)<%= grunt.template.today("yyyy") %> Joyent and contributers @licence <%= pkg.license %>*/\n'
},
dist: {
files: {
'dist/deepstream.min.js': [ 'dist/deepstream.js' ]
}
}
}
})
grunt.loadNpmTasks('grunt-browserify')
grunt.loadNpmTasks('grunt-contrib-uglify')
grunt.registerTask('test-unit', [ 'exec:runUnitTests' ])
grunt.registerTask('just-build', 'Browserifies, tests and minifies the client file', [
'browserify:dist',
'uglify:dist'
])
grunt.registerTask('build', 'Browserifies, tests and minifies the client file', [
'browserify:dist',
'uglify:dist'
])
grunt.registerTask('default', [ 'build' ])
}