mirror of
https://github.com/serghey-rodin/vesta.git
synced 2024-12-25 21:41:13 -08:00
76 lines
1.8 KiB
JavaScript
76 lines
1.8 KiB
JavaScript
module.exports = function(grunt) {
|
|
var fs = require('fs')
|
|
, version = fs.readFileSync('Changelog', 'utf-8')
|
|
.split('\n')
|
|
.shift()
|
|
.split(/\s+/)
|
|
.pop();
|
|
|
|
grunt.initConfig({
|
|
version: {
|
|
options: {
|
|
release: version,
|
|
pkg: 'package.json'
|
|
},
|
|
|
|
js: {
|
|
options: {
|
|
prefix: "Version:\\s+"
|
|
},
|
|
src: ['jquery.iviewer.js']
|
|
},
|
|
|
|
json: {
|
|
src: ['package.json', 'iviewer.jquery.json', 'bower.json']
|
|
}
|
|
},
|
|
|
|
uglify: {
|
|
options: {
|
|
report: "min",
|
|
mangle: false,
|
|
banner: 'set me later'
|
|
},
|
|
|
|
js: {
|
|
files: {
|
|
'jquery.iviewer.min.js': ['jquery.iviewer.js']
|
|
}
|
|
}
|
|
}
|
|
});
|
|
|
|
grunt.loadNpmTasks('grunt-version');
|
|
grunt.loadNpmTasks('grunt-contrib-uglify');
|
|
|
|
grunt.registerTask('banner', function() {
|
|
var banner = fs.readFileSync('jquery.iviewer.js', 'utf-8')
|
|
.match(RegExp("^/\\*[^]*?\\*/"))[0] + '\n\n'
|
|
|
|
grunt.config('uglify.options.banner', banner)
|
|
});
|
|
|
|
grunt.registerTask('changelog', function() {
|
|
var date = new Date()
|
|
, pad = function(len, symb) {
|
|
if (symb.toString().length < len) {
|
|
return '0' + symb;
|
|
} else {
|
|
return symb;
|
|
}
|
|
}
|
|
, stamp = '(' + [
|
|
date.getFullYear(),
|
|
date.getMonth() + 1,
|
|
date.getDate()
|
|
].map(pad.bind(null, 2))
|
|
.join('/') + ')\n'
|
|
, file = grunt.file.read('Changelog')
|
|
.replace(/(.*?)\n/, "$1 " + stamp);
|
|
|
|
grunt.file.write('Changelog', file)
|
|
})
|
|
|
|
grunt.registerTask('release', ['version', 'banner', 'changelog', 'uglify'])
|
|
};
|