forked from ericabouaf/gh-issues-gantt
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgenerate.js
33 lines (28 loc) · 1.17 KB
/
generate.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
var config = require('./config.js'),
github = require('./github')(config.github);
const fs = require('fs');
function writeFile(filename, data) {
fs.writeFile(filename, data, function(err) {
if(err) {
return console.log(err);
}
console.log("Saved "+filename);
});
}
// Write config.js
var _config = config.gantt;
_config.repo = config.github.repo;
// Strings dates like "2017-08-13" are converted int JS code like: new Date(2017, 7, 13)
var _json_config = JSON.stringify(_config, null, 3).
replace(/"(\d{4})-(\d{2})-(\d{2})"/g, 'new Date($1, $2-1, $3)');
writeFile("./build/config.js", "var config = " + _json_config + ";")
// Write issues.js
github.fetchIssues(function(err, issues, status) {
writeFile("./build/issues.js", "var issues = " + JSON.stringify(issues, null, 3) + ";\n" +
"var status = " + JSON.stringify(status) + ";");
});
// Write milestones.js
github.fetchMilestones(function(err, milestones, status) {
writeFile("./build/milestones.js", "var milestones = " + JSON.stringify(milestones, null, 3) + ";\n" +
"var status = " + JSON.stringify(status) + ";");
});