2016-05-20 17:06:25 +00:00
|
|
|
"use strict";
|
2016-06-10 03:18:03 +00:00
|
|
|
require("typings-global");
|
2016-08-20 05:03:49 +00:00
|
|
|
const path = require("path");
|
|
|
|
const chalk = require("chalk");
|
2016-08-21 15:29:38 +00:00
|
|
|
const q = require("q");
|
2016-08-20 05:03:49 +00:00
|
|
|
const childProcess = require("child_process");
|
|
|
|
let earlyChild;
|
|
|
|
let doAnimation = true;
|
|
|
|
let doText = false;
|
|
|
|
let moduleName = "undefined module name";
|
|
|
|
let startTime;
|
2016-06-10 03:36:06 +00:00
|
|
|
if (process.argv.indexOf("-v") != -1 || process.env.CI) {
|
2016-06-10 03:18:03 +00:00
|
|
|
doAnimation = false;
|
|
|
|
}
|
2016-08-20 05:51:04 +00:00
|
|
|
if (process.argv.indexOf("-v") == -1 && process.env.CI) {
|
2016-06-10 03:36:06 +00:00
|
|
|
doText = true;
|
|
|
|
}
|
2016-05-21 18:33:13 +00:00
|
|
|
// exports
|
2016-08-20 05:03:49 +00:00
|
|
|
exports.start = function (moduleNameArg = "", loaderLengthArg = "10") {
|
2016-08-20 06:42:39 +00:00
|
|
|
startTime = Date.now();
|
2016-08-20 05:03:49 +00:00
|
|
|
moduleName = moduleNameArg;
|
2016-06-10 03:18:03 +00:00
|
|
|
if (doAnimation) {
|
|
|
|
earlyChild = childProcess.fork(path.join(__dirname, "early.child.js"), [], {
|
|
|
|
env: {
|
|
|
|
moduleNameArg: moduleNameArg,
|
|
|
|
loaderLengthArg: loaderLengthArg,
|
|
|
|
CI: process.env.CI
|
|
|
|
}
|
|
|
|
});
|
|
|
|
}
|
2016-06-10 03:36:06 +00:00
|
|
|
else if (doText) {
|
2016-08-20 05:03:49 +00:00
|
|
|
console.log(`**** starting ${chalk.green(moduleNameArg)} ****`);
|
2016-06-10 03:36:06 +00:00
|
|
|
}
|
2016-05-20 17:06:25 +00:00
|
|
|
};
|
|
|
|
exports.stop = function () {
|
2016-08-20 05:03:49 +00:00
|
|
|
let done = q.defer();
|
2016-08-20 06:42:39 +00:00
|
|
|
let endTime = Date.now();
|
|
|
|
let executionTime = ((endTime - startTime) / 1000).toString();
|
2016-06-10 03:18:03 +00:00
|
|
|
if (doAnimation) {
|
2016-08-20 05:41:56 +00:00
|
|
|
earlyChild.kill("SIGINT");
|
2016-06-11 21:47:52 +00:00
|
|
|
earlyChild.on("close", function () {
|
2016-08-20 07:09:03 +00:00
|
|
|
console.log(`loaded ${chalk.green(moduleName)} in ${executionTime} seconds!`);
|
2016-06-11 21:53:48 +00:00
|
|
|
done.resolve();
|
2016-06-11 21:47:52 +00:00
|
|
|
});
|
2016-06-10 03:18:03 +00:00
|
|
|
}
|
2016-06-11 21:53:48 +00:00
|
|
|
else {
|
2016-08-20 05:51:04 +00:00
|
|
|
console.log(`... finished loading ${moduleName} in ${executionTime}`);
|
2016-06-11 21:53:48 +00:00
|
|
|
done.resolve();
|
|
|
|
}
|
|
|
|
return done.promise;
|
2016-05-20 17:06:25 +00:00
|
|
|
};
|
2016-08-21 15:29:38 +00:00
|
|
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsUUFBTyxnQkFDUCxDQUFDLENBRHNCO0FBQ3ZCLE1BQU8sSUFBSSxXQUFXLE1BQU0sQ0FBQyxDQUFDO0FBQzlCLE1BQU8sS0FBSyxXQUFXLE9BQU8sQ0FBQyxDQUFDO0FBQ2hDLE1BQU8sQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDO0FBRXhCLE1BQU8sWUFBWSxXQUFXLGVBQWUsQ0FBQyxDQUFDO0FBQy9DLElBQUksVUFBVSxDQUFDO0FBRWYsSUFBSSxXQUFXLEdBQVksSUFBSSxDQUFDO0FBQ2hDLElBQUksTUFBTSxHQUFZLEtBQUssQ0FBQztBQUM1QixJQUFJLFVBQVUsR0FBVyx1QkFBdUIsQ0FBQztBQUNqRCxJQUFJLFNBQVMsQ0FBQztBQUVkLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNyRCxXQUFXLEdBQUcsS0FBSyxDQUFDO0FBQ3hCLENBQUM7QUFDRCxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDckQsTUFBTSxHQUFHLElBQUksQ0FBQztBQUNsQixDQUFDO0FBRUQsVUFBVTtBQUNDLGFBQUssR0FBRyxVQUFVLGFBQWEsR0FBVyxFQUFFLEVBQUUsZUFBZSxHQUFXLElBQUk7SUFFbkYsU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUV2QixVQUFVLEdBQUcsYUFBYSxDQUFDO0lBQzNCLEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDZCxVQUFVLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUUsRUFBRTtZQUN2RSxHQUFHLEVBQUU7Z0JBQ0QsYUFBYSxFQUFFLGFBQWE7Z0JBQzVCLGVBQWUsRUFBRSxlQUFlO2dCQUNoQyxFQUFFLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2FBQ3JCO1NBQ0osQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ2hCLE9BQU8sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEtBQUssQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BFLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFUyxZQUFJLEdBQUc7SUFDZCxJQUFJLElBQUksR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDckIsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ3pCLElBQUksYUFBYSxHQUFVLENBQUMsQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDckUsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNkLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUIsVUFBVSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUU7WUFDbkIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLEtBQUssQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE9BQU8sYUFBYSxXQUFXLENBQUMsQ0FBQztZQUM5RSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDO0lBQUMsSUFBSSxDQUFDLENBQUM7UUFDSixPQUFPLENBQUMsR0FBRyxDQUFDLHdCQUF3QixVQUFVLE9BQU8sYUFBYSxFQUFFLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUNELE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0FBQ3hCLENBQUMsQ0FBQyJ9
|