early/dist/index.js

52 lines
4.0 KiB
JavaScript
Raw Normal View History

2016-05-20 17:06:25 +00:00
"use strict";
2016-09-15 12:45:58 +00:00
require('typings-global');
const path = require('path');
const chalk = require('chalk');
const q = require('q');
const childProcess = require('child_process');
2016-08-20 05:03:49 +00:00
let earlyChild;
let doAnimation = true;
let doText = false;
2016-09-15 12:45:58 +00:00
let moduleName = 'undefined module name';
2016-08-20 05:03:49 +00:00
let startTime;
2016-09-15 12:45:58 +00:00
if (process.argv.indexOf('-v') !== -1 || process.env.CI) {
2016-06-10 03:18:03 +00:00
doAnimation = false;
}
2016-09-15 12:45:58 +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-09-15 12:45:58 +00:00
exports.start = function (moduleNameArg = '', loaderLengthArg = '10') {
startTime = Date.now();
2016-08-20 05:03:49 +00:00
moduleName = moduleNameArg;
2016-06-10 03:18:03 +00:00
if (doAnimation) {
2016-09-15 12:45:58 +00:00
earlyChild = childProcess.fork(path.join(__dirname, 'early.child.js'), [], {
2016-06-10 03:18:03 +00:00
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
};
2016-09-15 12:45:58 +00:00
exports.stop = () => {
2016-08-20 05:03:49 +00:00
let done = q.defer();
let endTime = Date.now();
let executionTime = ((endTime - startTime) / 1000).toString();
2016-06-10 03:18:03 +00:00
if (doAnimation) {
2016-09-15 12:45:58 +00:00
earlyChild.kill('SIGINT');
earlyChild.on('close', function () {
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-09-15 12:45:58 +00:00
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsUUFBTyxnQkFDUCxDQUFDLENBRHNCO0FBQ3ZCLE1BQU8sSUFBSSxXQUFXLE1BQU0sQ0FBQyxDQUFBO0FBQzdCLE1BQU8sS0FBSyxXQUFXLE9BQU8sQ0FBQyxDQUFBO0FBQy9CLE1BQU8sQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFBO0FBQ3ZCLE1BQU8sWUFBWSxXQUFXLGVBQWUsQ0FBQyxDQUFBO0FBQzlDLElBQUksVUFBVSxDQUFBO0FBRWQsSUFBSSxXQUFXLEdBQVksSUFBSSxDQUFBO0FBQy9CLElBQUksTUFBTSxHQUFZLEtBQUssQ0FBQTtBQUMzQixJQUFJLFVBQVUsR0FBVyx1QkFBdUIsQ0FBQTtBQUNoRCxJQUFJLFNBQVMsQ0FBQTtBQUViLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN0RCxXQUFXLEdBQUcsS0FBSyxDQUFBO0FBQ3ZCLENBQUM7QUFDRCxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDdEQsTUFBTSxHQUFHLElBQUksQ0FBQTtBQUNqQixDQUFDO0FBRUQsVUFBVTtBQUNDLGFBQUssR0FBRyxVQUFVLGFBQWEsR0FBVyxFQUFFLEVBQUUsZUFBZSxHQUFXLElBQUk7SUFFbkYsU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQTtJQUV0QixVQUFVLEdBQUcsYUFBYSxDQUFBO0lBQzFCLEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDZCxVQUFVLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUUsRUFBRTtZQUN2RSxHQUFHLEVBQUU7Z0JBQ0QsYUFBYSxFQUFFLGFBQWE7Z0JBQzVCLGVBQWUsRUFBRSxlQUFlO2dCQUNoQyxFQUFFLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2FBQ3JCO1NBQ0osQ0FBQyxDQUFBO0lBQ04sQ0FBQztJQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ2hCLE9BQU8sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEtBQUssQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQ25FLENBQUM7QUFDTCxDQUFDLENBQUE7QUFFVSxZQUFJLEdBQUc7SUFDZCxJQUFJLElBQUksR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFRLENBQUE7SUFDMUIsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFBO0lBQ3hCLElBQUksYUFBYSxHQUFXLENBQUMsQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDckUsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNkLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDekIsVUFBVSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUU7WUFDbkIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLEtBQUssQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE9BQU8sYUFBYSxXQUFXLENBQUMsQ0FBQTtZQUM3RSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUE7UUFDbEIsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDO0lBQUMsSUFBSSxDQUFDLENBQUM7UUFDSixPQUFPLENBQUMsR0FBRyxDQUFDLHdCQUF3QixVQUFVLE9BQU8sYUFBYSxFQUFFLENBQUMsQ0FBQTtRQUNyRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUE7SUFDbEIsQ0FBQztJQUNELE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFBO0FBQ3ZCLENBQUMsQ0FBQSJ9