-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathGruntfile.js
81 lines (72 loc) · 1.49 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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
module.exports = function (grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON("package.json"),
eslint: {
all: [
"Gruntfile.js",
"es6/*.js"
]
},
babel: {
options: {
presets: [
'@babel/preset-env',
]
},
dist: {
files: [{
"expand": true,
"cwd": "es6",
"src": ["**/*.js"],
"dest": "js/",
"ext": ".js",
}]
}
},
uglify: {
build: {
options: {
output: {
ascii_only: true,
},
banner: "// <%= pkg.description %>\n// <%= pkg.homepage %>\n"
},
files: [{
expand: true,
cwd: "js",
dest: "js",
src: [
"*.js",
"!*.min.js"
],
ext: '.min.js'
}]
}
},
shell: {
// @link https://github.com/sindresorhus/grunt-shell
dist: {
command: [
"rm -rf .dist",
"mkdir .dist",
"git archive HEAD --prefix=<%= pkg.name %>/ --format=zip -9 -o .dist/<%= pkg.name %>-<%= pkg.version %>.zip",
].join("&&")
},
wpsvn: {
command: [
"svn up .wordpress.org",
"rm -rf .wordpress.org/trunk",
"mkdir .wordpress.org/trunk",
"git archive HEAD --format=tar | tar x --directory=.wordpress.org/trunk",
].join("&&")
}
}
});
grunt.loadNpmTasks("grunt-babel");
grunt.loadNpmTasks("grunt-contrib-uglify-es");
grunt.loadNpmTasks("grunt-eslint");
grunt.loadNpmTasks("grunt-shell");
grunt.registerTask("release", ["shell:dist"]);
grunt.registerTask("es6", ["babel","uglify"]);
grunt.registerTask("wpsvn", ["shell:wpsvn"]);
};