-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathGruntfile.js
34 lines (31 loc) · 1007 Bytes
/
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
module.exports = function(grunt) {
var fs = require('fs');
var async = require('async');
// Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json')
});
grunt.registerTask('json', 'Generate info.json', function() {
var done = this.async();
fs.readdir(__dirname + '/flags', function(err, files){
var result = {};
if(files[0] === ".DS_Store") files.splice(0, 1);
result.count = files.length;
result.files = files;
async.map(files, function(name, callback){
name = name.replace('.png', '');
name = name.replace(/-(\d)/, ' $1');
name = name.charAt(0).toUpperCase() + name.slice(1);
callback(null, name);
}, function(err, names){
result.names = names;
fs.writeFile('info.json', JSON.stringify(result, null, 4), function(err) {
grunt.log.ok();
done();
});
});
});
});
// Default task(s).
grunt.registerTask('default', ['json']);
};