Compare commits
20 Commits
Author | SHA1 | Date | |
---|---|---|---|
394dd88a1d | |||
1d8fee1506 | |||
88d5409c40 | |||
b8c9508d21 | |||
59f97c3254 | |||
0491493b2e | |||
aca45165f8 | |||
569c597f8b | |||
5f17ea48ed | |||
6a9cdd297a | |||
0a363b441c | |||
3af6edd5e6 | |||
9a26f1367d | |||
15dd17e7a7 | |||
3b704dbde5 | |||
48aeb16dfd | |||
b40d8452ec | |||
d8281f098a | |||
3ffee9d0d6 | |||
03dfdda812 |
@ -4,6 +4,13 @@ stages:
|
|||||||
- test
|
- test
|
||||||
- release
|
- release
|
||||||
|
|
||||||
|
testLEGACY:
|
||||||
|
stage: test
|
||||||
|
script:
|
||||||
|
- npmci test legacy
|
||||||
|
tags:
|
||||||
|
- docker
|
||||||
|
|
||||||
testLTS:
|
testLTS:
|
||||||
stage: test
|
stage: test
|
||||||
script:
|
script:
|
||||||
|
49
dist/early.child.js
vendored
49
dist/early.child.js
vendored
@ -1,21 +1,16 @@
|
|||||||
"use strict";
|
"use strict";
|
||||||
require("typings-global");
|
require("typings-global");
|
||||||
var colors = require("colors");
|
const chalk = require("chalk");
|
||||||
var readline = require("readline");
|
const readline = require("readline");
|
||||||
var rl = readline.createInterface({
|
let rl = readline.createInterface({
|
||||||
input: process.stdin,
|
input: process.stdin,
|
||||||
output: process.stdout
|
output: process.stdout
|
||||||
});
|
});
|
||||||
var moduleName;
|
let moduleName;
|
||||||
var loaderLength;
|
let loaderLength;
|
||||||
var frameCounter = 0;
|
let frameCounter = 0;
|
||||||
var makeFrame = function () {
|
let makeFrame = () => {
|
||||||
var resultString = "["
|
let resultString = `[${chalk.green("/".repeat(frameCounter))}${" ".repeat(loaderLength - frameCounter)}] starting ${moduleName}`;
|
||||||
+ "/".green.repeat(frameCounter)
|
|
||||||
+ " ".repeat(loaderLength - frameCounter)
|
|
||||||
+ "]"
|
|
||||||
+ " starting "
|
|
||||||
+ moduleName.cyan;
|
|
||||||
if (frameCounter == loaderLength) {
|
if (frameCounter == loaderLength) {
|
||||||
frameCounter = 0;
|
frameCounter = 0;
|
||||||
}
|
}
|
||||||
@ -24,27 +19,29 @@ var makeFrame = function () {
|
|||||||
}
|
}
|
||||||
return resultString;
|
return resultString;
|
||||||
};
|
};
|
||||||
var logEarlyAbort = false;
|
let logEarlyAbort = false;
|
||||||
var logEarly = function () {
|
let logEarly = () => {
|
||||||
rl.write(null, { ctrl: true, name: 'u' });
|
if (!logEarlyAbort) {
|
||||||
rl.write(makeFrame());
|
rl.write(null, { ctrl: true, name: 'u' });
|
||||||
setTimeout(function () {
|
rl.write(makeFrame());
|
||||||
if (!logEarlyAbort)
|
setTimeout(function () {
|
||||||
logEarly();
|
logEarly();
|
||||||
}, 80);
|
}, 80);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
var start = function (moduleNameArg, loaderLengthArg) {
|
let start = function (moduleNameArg = "", loaderLengthArg = "10") {
|
||||||
if (moduleNameArg === void 0) { moduleNameArg = ""; }
|
|
||||||
if (loaderLengthArg === void 0) { loaderLengthArg = "10"; }
|
|
||||||
moduleName = moduleNameArg;
|
moduleName = moduleNameArg;
|
||||||
loaderLength = parseInt(loaderLengthArg);
|
loaderLength = parseInt(loaderLengthArg);
|
||||||
logEarly();
|
logEarly();
|
||||||
};
|
};
|
||||||
start(process.env.moduleNameArg, process.env.loaderLengthArg);
|
start(process.env.moduleNameArg, process.env.loaderLengthArg);
|
||||||
process.on('SIGINT', function () {
|
process.on('SIGHUP', () => {
|
||||||
logEarlyAbort = true;
|
logEarlyAbort = true;
|
||||||
rl.write(null, { ctrl: true, name: 'u' });
|
rl.write(null, { ctrl: true, name: 'u' });
|
||||||
|
rl.write(`loaded ${chalk.green(moduleName)}`);
|
||||||
rl.close();
|
rl.close();
|
||||||
|
rl.on("close", () => {
|
||||||
|
process.exit(0);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWFybHkuY2hpbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9lYXJseS5jaGlsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsUUFBTyxnQkFBZ0IsQ0FBQyxDQUFBO0FBQ3hCLE1BQU8sS0FBSyxXQUFXLE9BQU8sQ0FBQyxDQUFDO0FBQ2hDLE1BQU8sUUFBUSxXQUFXLFVBQVUsQ0FBQyxDQUFDO0FBQ3RDLElBQUksRUFBRSxHQUFHLFFBQVEsQ0FBQyxlQUFlLENBQUM7SUFDOUIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFLO0lBQ3BCLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtDQUN6QixDQUFDLENBQUM7QUFFSCxJQUFJLFVBQWtCLENBQUM7QUFDdkIsSUFBSSxZQUFvQixDQUFDO0FBQ3pCLElBQUksWUFBWSxHQUFXLENBQUMsQ0FBQztBQUU3QixJQUFJLFNBQVMsR0FBRztJQUNaLElBQUksWUFBWSxHQUFXLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDLGNBQWMsVUFBVSxFQUFFLENBQUM7SUFDekksRUFBRSxDQUFDLENBQUMsWUFBWSxJQUFJLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFDL0IsWUFBWSxHQUFHLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBQUMsSUFBSSxDQUFDLENBQUM7UUFDSixZQUFZLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBQ0QsTUFBTSxDQUFDLFlBQVksQ0FBQztBQUN4QixDQUFDLENBQUM7QUFFRixJQUFJLGFBQWEsR0FBRyxLQUFLLENBQUM7QUFDMUIsSUFBSSxRQUFRLEdBQUc7SUFDWCxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7UUFDakIsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQzFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUN0QixVQUFVLENBQUM7WUFDUCxRQUFRLEVBQUUsQ0FBQztRQUNmLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNYLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRixJQUFJLEtBQUssR0FBRyxVQUFVLGFBQWEsR0FBVyxFQUFFLEVBQUUsZUFBZSxHQUFXLElBQUk7SUFDNUUsVUFBVSxHQUFHLGFBQWEsQ0FBQztJQUMzQixZQUFZLEdBQUcsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3pDLFFBQVEsRUFBRSxDQUFDO0FBQ2YsQ0FBQyxDQUFDO0FBRUYsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7QUFFOUQsT0FBTyxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDakIsYUFBYSxHQUFHLElBQUksQ0FBQztJQUNyQixFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDMUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxVQUFVLEtBQUssQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzlDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNYLEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFDO1FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwQixDQUFDLENBQUMsQ0FBQTtBQUNOLENBQUMsQ0FBQyxDQUFDIn0=
|
||||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImVhcmx5LmNoaWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxRQUFPLGdCQUFnQixDQUFDLENBQUE7QUFDeEIsSUFBSSxNQUFNLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQy9CLElBQU8sUUFBUSxXQUFXLFVBQVUsQ0FBQyxDQUFDO0FBQ3RDLElBQUksRUFBRSxHQUFHLFFBQVEsQ0FBQyxlQUFlLENBQUM7SUFDOUIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFLO0lBQ3BCLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtDQUN6QixDQUFDLENBQUM7QUFFSCxJQUFJLFVBQWlCLENBQUM7QUFDdEIsSUFBSSxZQUFtQixDQUFDO0FBQ3hCLElBQUksWUFBWSxHQUFVLENBQUMsQ0FBQztBQUU1QixJQUFJLFNBQVMsR0FBRztJQUNaLElBQUksWUFBWSxHQUFVLEdBQUc7VUFDdkIsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDO1VBQzlCLEdBQUcsQ0FBQyxNQUFNLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQztVQUN2QyxHQUFHO1VBQ0gsWUFBWTtVQUNaLFVBQVUsQ0FBQyxJQUFJLENBQUM7SUFFdEIsRUFBRSxDQUFBLENBQUMsWUFBWSxJQUFJLFlBQVksQ0FBQyxDQUFBLENBQUM7UUFDN0IsWUFBWSxHQUFHLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBQUMsSUFBSSxDQUFDLENBQUM7UUFDSixZQUFZLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBQ0QsTUFBTSxDQUFDLFlBQVksQ0FBQztBQUN4QixDQUFDLENBQUM7QUFFRixJQUFJLGFBQWEsR0FBRyxLQUFLLENBQUM7QUFDMUIsSUFBSSxRQUFRLEdBQUc7SUFDWCxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBQyxDQUFDLENBQUM7SUFDeEMsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3RCLFVBQVUsQ0FBQztRQUNQLEVBQUUsQ0FBQSxDQUFDLENBQUMsYUFBYSxDQUFDO1lBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEMsQ0FBQyxFQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ1YsQ0FBQyxDQUFDO0FBRUYsSUFBSSxLQUFLLEdBQUcsVUFBUyxhQUF5QixFQUFDLGVBQTZCO0lBQXZELDZCQUF5QixHQUF6QixrQkFBeUI7SUFBQywrQkFBNkIsR0FBN0Isc0JBQTZCO0lBQ3hFLFVBQVUsR0FBRyxhQUFhLENBQUM7SUFDM0IsWUFBWSxHQUFHLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN6QyxRQUFRLEVBQUUsQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVGLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0FBRTdELE9BQU8sQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ2pCLGFBQWEsR0FBRyxJQUFJLENBQUM7SUFDckIsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUMsQ0FBQyxDQUFDO0lBQ3hDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztBQUNmLENBQUMsQ0FBQyxDQUFDIiwiZmlsZSI6ImVhcmx5LmNoaWxkLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFwidHlwaW5ncy1nbG9iYWxcIjtcbmxldCBjb2xvcnMgPSByZXF1aXJlKFwiY29sb3JzXCIpO1xuaW1wb3J0IHJlYWRsaW5lID0gcmVxdWlyZShcInJlYWRsaW5lXCIpO1xubGV0IHJsID0gcmVhZGxpbmUuY3JlYXRlSW50ZXJmYWNlKHtcbiAgICBpbnB1dDogcHJvY2Vzcy5zdGRpbixcbiAgICBvdXRwdXQ6IHByb2Nlc3Muc3Rkb3V0XG59KTtcblxubGV0IG1vZHVsZU5hbWU6c3RyaW5nO1xubGV0IGxvYWRlckxlbmd0aDpudW1iZXI7XG5sZXQgZnJhbWVDb3VudGVyOm51bWJlciA9IDA7XG5cbmxldCBtYWtlRnJhbWUgPSAoKTpzdHJpbmcgPT4ge1xuICAgIGxldCByZXN1bHRTdHJpbmc6c3RyaW5nID0gXCJbXCJcbiAgICAgICAgKyBcIi9cIi5ncmVlbi5yZXBlYXQoZnJhbWVDb3VudGVyKVxuICAgICAgICArIFwiIFwiLnJlcGVhdChsb2FkZXJMZW5ndGggLSBmcmFtZUNvdW50ZXIpXG4gICAgICAgICsgXCJdXCJcbiAgICAgICAgKyBcIiBzdGFydGluZyBcIlxuICAgICAgICArIG1vZHVsZU5hbWUuY3lhbjtcblxuICAgIGlmKGZyYW1lQ291bnRlciA9PSBsb2FkZXJMZW5ndGgpe1xuICAgICAgICBmcmFtZUNvdW50ZXIgPSAwO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIGZyYW1lQ291bnRlcisrO1xuICAgIH1cbiAgICByZXR1cm4gcmVzdWx0U3RyaW5nO1xufTtcblxubGV0IGxvZ0Vhcmx5QWJvcnQgPSBmYWxzZTtcbmxldCBsb2dFYXJseSA9ICgpID0+IHtcbiAgICBybC53cml0ZShudWxsLCB7Y3RybDogdHJ1ZSwgbmFtZTogJ3UnfSk7XG4gICAgcmwud3JpdGUobWFrZUZyYW1lKCkpO1xuICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKXtcbiAgICAgICAgaWYoIWxvZ0Vhcmx5QWJvcnQpIGxvZ0Vhcmx5KCk7XG4gICAgfSw4MCk7XG59O1xuXG5sZXQgc3RhcnQgPSBmdW5jdGlvbihtb2R1bGVOYW1lQXJnOnN0cmluZyA9IFwiXCIsbG9hZGVyTGVuZ3RoQXJnOnN0cmluZyA9IFwiMTBcIil7XG4gICAgbW9kdWxlTmFtZSA9IG1vZHVsZU5hbWVBcmc7XG4gICAgbG9hZGVyTGVuZ3RoID0gcGFyc2VJbnQobG9hZGVyTGVuZ3RoQXJnKTtcbiAgICBsb2dFYXJseSgpO1xufTtcblxuc3RhcnQocHJvY2Vzcy5lbnYubW9kdWxlTmFtZUFyZyxwcm9jZXNzLmVudi5sb2FkZXJMZW5ndGhBcmcpO1xuXG5wcm9jZXNzLm9uKCdTSUdJTlQnLCAoKSA9PiB7XG4gICAgbG9nRWFybHlBYm9ydCA9IHRydWU7XG4gICAgcmwud3JpdGUobnVsbCwge2N0cmw6IHRydWUsIG5hbWU6ICd1J30pO1xuICAgIHJsLmNsb3NlKCk7XG59KTsiXX0=
|
|
2
dist/index.d.ts
vendored
2
dist/index.d.ts
vendored
@ -1,3 +1,3 @@
|
|||||||
import "typings-global";
|
import "typings-global";
|
||||||
export declare let start: (moduleNameArg?: string, loaderLengthArg?: string) => void;
|
export declare let start: (moduleNameArg?: string, loaderLengthArg?: string) => void;
|
||||||
export declare let stop: () => void;
|
export declare let stop: () => any;
|
||||||
|
61
dist/index.js
vendored
61
dist/index.js
vendored
@ -1,11 +1,14 @@
|
|||||||
"use strict";
|
"use strict";
|
||||||
require("typings-global");
|
require("typings-global");
|
||||||
var path = require("path");
|
const path = require("path");
|
||||||
var readline = require("readline");
|
const chalk = require("chalk");
|
||||||
var childProcess = require("child_process");
|
let q = require("q");
|
||||||
var earlyChild;
|
const childProcess = require("child_process");
|
||||||
var doAnimation = true;
|
let earlyChild;
|
||||||
var doText = false;
|
let doAnimation = true;
|
||||||
|
let doText = false;
|
||||||
|
let moduleName = "undefined module name";
|
||||||
|
let startTime;
|
||||||
if (process.argv.indexOf("-v") != -1 || process.env.CI) {
|
if (process.argv.indexOf("-v") != -1 || process.env.CI) {
|
||||||
doAnimation = false;
|
doAnimation = false;
|
||||||
}
|
}
|
||||||
@ -13,9 +16,9 @@ else if (process.argv.indexOf("-v") == -1) {
|
|||||||
doText = true;
|
doText = true;
|
||||||
}
|
}
|
||||||
// exports
|
// exports
|
||||||
exports.start = function (moduleNameArg, loaderLengthArg) {
|
exports.start = function (moduleNameArg = "", loaderLengthArg = "10") {
|
||||||
if (moduleNameArg === void 0) { moduleNameArg = ""; }
|
startTime = process.hrtime();
|
||||||
if (loaderLengthArg === void 0) { loaderLengthArg = "10"; }
|
moduleName = moduleNameArg;
|
||||||
if (doAnimation) {
|
if (doAnimation) {
|
||||||
earlyChild = childProcess.fork(path.join(__dirname, "early.child.js"), [], {
|
earlyChild = childProcess.fork(path.join(__dirname, "early.child.js"), [], {
|
||||||
env: {
|
env: {
|
||||||
@ -26,19 +29,41 @@ exports.start = function (moduleNameArg, loaderLengthArg) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
else if (doText) {
|
else if (doText) {
|
||||||
console.log("**** starting " + moduleNameArg.cyan + " ****");
|
console.log(`**** starting ${chalk.green(moduleNameArg)} ****`);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
exports.stop = function () {
|
exports.stop = function () {
|
||||||
|
let done = q.defer();
|
||||||
if (doAnimation) {
|
if (doAnimation) {
|
||||||
earlyChild.kill();
|
earlyChild.kill("SIGHUP");
|
||||||
var rl = readline.createInterface({
|
earlyChild.on("close", function () {
|
||||||
input: process.stdin,
|
let endTime = process.hrtime(startTime);
|
||||||
output: process.stdout
|
let executionTime = function () {
|
||||||
|
try {
|
||||||
|
return (endTime[0] * 1e9 + endTime[1]);
|
||||||
|
}
|
||||||
|
catch (err) {
|
||||||
|
return undefined;
|
||||||
|
}
|
||||||
|
}() / 1000000000;
|
||||||
|
console.log(` in ${executionTime} seconds!`);
|
||||||
|
done.resolve();
|
||||||
});
|
});
|
||||||
rl.write(null, { ctrl: true, name: 'u' });
|
|
||||||
rl.close();
|
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
let endTime = process.hrtime(startTime);
|
||||||
|
let executionTime = function () {
|
||||||
|
try {
|
||||||
|
return (endTime[0] * 1e9 + endTime[1]);
|
||||||
|
}
|
||||||
|
catch (err) {
|
||||||
|
return undefined;
|
||||||
|
}
|
||||||
|
}() / 1000000000;
|
||||||
|
console.log(` in ${executionTime} seconds!`);
|
||||||
|
console.log(`... finished loading moduleName in ${executionTime}`);
|
||||||
|
done.resolve();
|
||||||
|
}
|
||||||
|
return done.promise;
|
||||||
};
|
};
|
||||||
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsUUFBTyxnQkFDUCxDQUFDLENBRHNCO0FBQ3ZCLE1BQU8sSUFBSSxXQUFXLE1BQU0sQ0FBQyxDQUFDO0FBQzlCLE1BQU8sS0FBSyxXQUFXLE9BQU8sQ0FBQyxDQUFDO0FBQ2hDLElBQUksQ0FBQyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUVyQixNQUFPLFlBQVksV0FBVyxlQUFlLENBQUMsQ0FBQztBQUMvQyxJQUFJLFVBQVUsQ0FBQztBQUVmLElBQUksV0FBVyxHQUFZLElBQUksQ0FBQztBQUNoQyxJQUFJLE1BQU0sR0FBWSxLQUFLLENBQUM7QUFDNUIsSUFBSSxVQUFVLEdBQVcsdUJBQXVCLENBQUM7QUFDakQsSUFBSSxTQUFTLENBQUM7QUFFZCxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDckQsV0FBVyxHQUFHLEtBQUssQ0FBQztBQUN4QixDQUFDO0FBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxQyxNQUFNLEdBQUcsSUFBSSxDQUFDO0FBQ2xCLENBQUM7QUFFRCxVQUFVO0FBQ0MsYUFBSyxHQUFHLFVBQVUsYUFBYSxHQUFXLEVBQUUsRUFBRSxlQUFlLEdBQVcsSUFBSTtJQUVuRixTQUFTLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBRTdCLFVBQVUsR0FBRyxhQUFhLENBQUM7SUFDM0IsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNkLFVBQVUsR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGdCQUFnQixDQUFDLEVBQUUsRUFBRSxFQUFFO1lBQ3ZFLEdBQUcsRUFBRTtnQkFDRCxhQUFhLEVBQUUsYUFBYTtnQkFDNUIsZUFBZSxFQUFFLGVBQWU7Z0JBQ2hDLEVBQUUsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7YUFDckI7U0FDSixDQUFDLENBQUM7SUFDUCxDQUFDO0lBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDaEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsS0FBSyxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDcEUsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVTLFlBQUksR0FBRztJQUNkLElBQUksSUFBSSxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNyQixFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ2QsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxQixVQUFVLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRTtZQUNuQixJQUFJLE9BQU8sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3hDLElBQUksYUFBYSxHQUFHO2dCQUNoQixJQUFJLENBQUM7b0JBQ0QsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDM0MsQ0FDQTtnQkFBQSxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUNULE1BQU0sQ0FBQyxTQUFTLENBQUM7Z0JBQ3JCLENBQUM7WUFDTCxDQUFDLEVBQUcsR0FBRyxVQUFVLENBQUM7WUFDbEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLGFBQWEsV0FBVyxDQUFDLENBQUM7WUFDN0MsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25CLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQztJQUFDLElBQUksQ0FBQyxDQUFDO1FBQ0osSUFBSSxPQUFPLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN4QyxJQUFJLGFBQWEsR0FBRztZQUNoQixJQUFJLENBQUM7Z0JBQ0QsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMzQyxDQUNBO1lBQUEsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDVCxNQUFNLENBQUMsU0FBUyxDQUFDO1lBQ3JCLENBQUM7UUFDTCxDQUFDLEVBQUcsR0FBRyxVQUFVLENBQUM7UUFDbEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLGFBQWEsV0FBVyxDQUFDLENBQUM7UUFDN0MsT0FBTyxDQUFDLEdBQUcsQ0FBQyxzQ0FBc0MsYUFBYSxFQUFFLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUNELE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0FBQ3hCLENBQUMsQ0FBQyJ9
|
||||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxRQUFPLGdCQUNQLENBQUMsQ0FEc0I7QUFFdkIsSUFBTyxJQUFJLFdBQVcsTUFBTSxDQUFDLENBQUM7QUFDOUIsSUFBTyxRQUFRLFdBQVcsVUFBVSxDQUFDLENBQUM7QUFDdEMsSUFBTyxZQUFZLFdBQVcsZUFBZSxDQUFDLENBQUM7QUFDL0MsSUFBSSxVQUFVLENBQUM7QUFFZixJQUFJLFdBQVcsR0FBVyxJQUFJLENBQUM7QUFDL0IsSUFBSSxNQUFNLEdBQVcsS0FBSyxDQUFDO0FBQzNCLEVBQUUsQ0FBQSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUEsQ0FBQztJQUNuRCxXQUFXLEdBQUcsS0FBSyxDQUFDO0FBQ3hCLENBQUM7QUFBQyxJQUFJLENBQUMsRUFBRSxDQUFBLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQSxDQUFDO0lBQ3hDLE1BQU0sR0FBRyxJQUFJLENBQUM7QUFDbEIsQ0FBQztBQUVELFVBQVU7QUFDQyxhQUFLLEdBQUcsVUFBUyxhQUF5QixFQUFDLGVBQTZCO0lBQXZELDZCQUF5QixHQUF6QixrQkFBeUI7SUFBQywrQkFBNkIsR0FBN0Isc0JBQTZCO0lBQy9FLEVBQUUsQ0FBQSxDQUFDLFdBQVcsQ0FBQyxDQUFBLENBQUM7UUFDWixVQUFVLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBQyxnQkFBZ0IsQ0FBQyxFQUFDLEVBQUUsRUFBQztZQUNwRSxHQUFHLEVBQUU7Z0JBQ0QsYUFBYSxFQUFDLGFBQWE7Z0JBQzNCLGVBQWUsRUFBQyxlQUFlO2dCQUMvQixFQUFFLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2FBQ3JCO1NBQ0osQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQ2hCLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEdBQUcsYUFBYSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsQ0FBQztJQUNqRSxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRVMsWUFBSSxHQUFHO0lBQ2QsRUFBRSxDQUFBLENBQUMsV0FBVyxDQUFDLENBQUEsQ0FBQztRQUNaLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNsQixJQUFJLEVBQUUsR0FBRyxRQUFRLENBQUMsZUFBZSxDQUFDO1lBQzlCLEtBQUssRUFBRSxPQUFPLENBQUMsS0FBSztZQUNwQixNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU07U0FDekIsQ0FBQyxDQUFDO1FBQ0gsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUMsQ0FBQyxDQUFDO1FBQ3hDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNmLENBQUM7QUFDTCxDQUFDLENBQUMiLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJ0eXBpbmdzLWdsb2JhbFwiXG5pbXBvcnQgY29sb3JzID0gcmVxdWlyZShcImNvbG9yc1wiKTtcbmltcG9ydCBwYXRoID0gcmVxdWlyZShcInBhdGhcIik7XG5pbXBvcnQgcmVhZGxpbmUgPSByZXF1aXJlKFwicmVhZGxpbmVcIik7XG5pbXBvcnQgY2hpbGRQcm9jZXNzID0gcmVxdWlyZShcImNoaWxkX3Byb2Nlc3NcIik7XG5sZXQgZWFybHlDaGlsZDtcblxubGV0IGRvQW5pbWF0aW9uOmJvb2xlYW4gPSB0cnVlO1xubGV0IGRvVGV4dDpib29sZWFuID0gZmFsc2U7XG5pZihwcm9jZXNzLmFyZ3YuaW5kZXhPZihcIi12XCIpICE9IC0xIHx8IHByb2Nlc3MuZW52LkNJKXtcbiAgICBkb0FuaW1hdGlvbiA9IGZhbHNlO1xufSBlbHNlIGlmKHByb2Nlc3MuYXJndi5pbmRleE9mKFwiLXZcIikgPT0gLTEpe1xuICAgIGRvVGV4dCA9IHRydWU7XG59XG5cbi8vIGV4cG9ydHNcbmV4cG9ydCBsZXQgc3RhcnQgPSBmdW5jdGlvbihtb2R1bGVOYW1lQXJnOnN0cmluZyA9IFwiXCIsbG9hZGVyTGVuZ3RoQXJnOnN0cmluZyA9IFwiMTBcIil7XG4gICAgaWYoZG9BbmltYXRpb24pe1xuICAgICAgICBlYXJseUNoaWxkID0gY2hpbGRQcm9jZXNzLmZvcmsocGF0aC5qb2luKF9fZGlybmFtZSxcImVhcmx5LmNoaWxkLmpzXCIpLFtdLHtcbiAgICAgICAgICAgIGVudjoge1xuICAgICAgICAgICAgICAgIG1vZHVsZU5hbWVBcmc6bW9kdWxlTmFtZUFyZyxcbiAgICAgICAgICAgICAgICBsb2FkZXJMZW5ndGhBcmc6bG9hZGVyTGVuZ3RoQXJnLFxuICAgICAgICAgICAgICAgIENJOiBwcm9jZXNzLmVudi5DSVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKGRvVGV4dCkge1xuICAgICAgICBjb25zb2xlLmxvZyhcIioqKiogc3RhcnRpbmcgXCIgKyBtb2R1bGVOYW1lQXJnLmN5YW4gKyBcIiAqKioqXCIpO1xuICAgIH1cbn07XG5cbmV4cG9ydCBsZXQgc3RvcCA9IGZ1bmN0aW9uKCl7XG4gICAgaWYoZG9BbmltYXRpb24pe1xuICAgICAgICBlYXJseUNoaWxkLmtpbGwoKTtcbiAgICAgICAgbGV0IHJsID0gcmVhZGxpbmUuY3JlYXRlSW50ZXJmYWNlKHtcbiAgICAgICAgICAgIGlucHV0OiBwcm9jZXNzLnN0ZGluLFxuICAgICAgICAgICAgb3V0cHV0OiBwcm9jZXNzLnN0ZG91dFxuICAgICAgICB9KTtcbiAgICAgICAgcmwud3JpdGUobnVsbCwge2N0cmw6IHRydWUsIG5hbWU6ICd1J30pO1xuICAgICAgICBybC5jbG9zZSgpO1xuICAgIH1cbn07XG5cbiJdfQ==
|
|
10
package.json
10
package.json
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "early",
|
"name": "early",
|
||||||
"version": "2.0.7",
|
"version": "2.0.17",
|
||||||
"description": "nice module loading animation for modules that need a little starting time.",
|
"description": "nice module loading animation for modules that need a little starting time.",
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
"typings": "dist/index.d.ts",
|
"typings": "dist/index.d.ts",
|
||||||
@ -21,11 +21,13 @@
|
|||||||
},
|
},
|
||||||
"homepage": "https://gitlab.com/pushrocks/early#readme",
|
"homepage": "https://gitlab.com/pushrocks/early#readme",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"npmts": "^5.2.5",
|
"npmts-g": "^5.2.8",
|
||||||
"typings-test": "^1.0.1"
|
"typings-test": "^1.0.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"colors": "^1.1.2",
|
"@types/chalk": "^0.4.28",
|
||||||
"typings-global": "^1.0.3"
|
"chalk": "^1.1.3",
|
||||||
|
"q": "^1.4.1",
|
||||||
|
"typings-global": "^1.0.6"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
10
test/test.js
10
test/test.js
@ -1,15 +1,15 @@
|
|||||||
"use strict";
|
"use strict";
|
||||||
require("typings-test");
|
require("typings-test");
|
||||||
var early = require("../dist/index");
|
const early = require("../dist/index");
|
||||||
describe("early", function () {
|
describe("early", function () {
|
||||||
it(".start()", function (done) {
|
it(".start()", function (done) {
|
||||||
this.timeout(10000);
|
this.timeout(10000);
|
||||||
early.start("early");
|
early.start("early");
|
||||||
setTimeout(done, 5000);
|
setTimeout(done, 5000);
|
||||||
});
|
});
|
||||||
it(".stop()", function () {
|
it(".stop()", function (done) {
|
||||||
early.stop();
|
early.stop()
|
||||||
|
.then(done);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sY0FBYyxDQUFDLENBQUE7QUFDdEIsTUFBTyxLQUFLLFdBQVcsZUFBZSxDQUFDLENBQUM7QUFFeEMsUUFBUSxDQUFDLE9BQU8sRUFBQztJQUNiLEVBQUUsQ0FBQyxVQUFVLEVBQUMsVUFBUyxJQUFJO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEIsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyQixVQUFVLENBQUMsSUFBSSxFQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ0gsRUFBRSxDQUFDLFNBQVMsRUFBQyxVQUFTLElBQUk7UUFDdEIsS0FBSyxDQUFDLElBQUksRUFBRTthQUNQLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQixDQUFDLENBQUMsQ0FBQTtBQUNOLENBQUMsQ0FBQyxDQUFBIn0=
|
||||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sY0FBYyxDQUFDLENBQUE7QUFDdEIsSUFBTyxLQUFLLFdBQVcsZUFBZSxDQUFDLENBQUM7QUFFeEMsUUFBUSxDQUFDLE9BQU8sRUFBQztJQUNiLEVBQUUsQ0FBQyxVQUFVLEVBQUMsVUFBUyxJQUFJO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEIsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyQixVQUFVLENBQUMsSUFBSSxFQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ0gsRUFBRSxDQUFDLFNBQVMsRUFBQztRQUNULEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQixDQUFDLENBQUMsQ0FBQTtBQUNOLENBQUMsQ0FBQyxDQUFBIiwiZmlsZSI6InRlc3QuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJ0eXBpbmdzLXRlc3RcIjtcbmltcG9ydCBlYXJseSA9IHJlcXVpcmUoXCIuLi9kaXN0L2luZGV4XCIpO1xuXG5kZXNjcmliZShcImVhcmx5XCIsZnVuY3Rpb24oKXtcbiAgICBpdChcIi5zdGFydCgpXCIsZnVuY3Rpb24oZG9uZSl7XG4gICAgICAgIHRoaXMudGltZW91dCgxMDAwMCk7XG4gICAgICAgIGVhcmx5LnN0YXJ0KFwiZWFybHlcIik7XG4gICAgICAgIHNldFRpbWVvdXQoZG9uZSw1MDAwKTtcbiAgICB9KTtcbiAgICBpdChcIi5zdG9wKClcIixmdW5jdGlvbigpe1xuICAgICAgICBlYXJseS5zdG9wKCk7XG4gICAgfSlcbn0pIl19
|
|
@ -7,7 +7,8 @@ describe("early",function(){
|
|||||||
early.start("early");
|
early.start("early");
|
||||||
setTimeout(done,5000);
|
setTimeout(done,5000);
|
||||||
});
|
});
|
||||||
it(".stop()",function(){
|
it(".stop()",function(done){
|
||||||
early.stop();
|
early.stop()
|
||||||
|
.then(done);
|
||||||
})
|
})
|
||||||
})
|
})
|
@ -1,24 +1,18 @@
|
|||||||
import "typings-global";
|
import "typings-global";
|
||||||
let colors = require("colors");
|
import chalk = require("chalk");
|
||||||
import readline = require("readline");
|
import readline = require("readline");
|
||||||
let rl = readline.createInterface({
|
let rl = readline.createInterface({
|
||||||
input: process.stdin,
|
input: process.stdin,
|
||||||
output: process.stdout
|
output: process.stdout
|
||||||
});
|
});
|
||||||
|
|
||||||
let moduleName:string;
|
let moduleName: string;
|
||||||
let loaderLength:number;
|
let loaderLength: number;
|
||||||
let frameCounter:number = 0;
|
let frameCounter: number = 0;
|
||||||
|
|
||||||
let makeFrame = ():string => {
|
let makeFrame = (): string => {
|
||||||
let resultString:string = "["
|
let resultString: string = `[${chalk.green("/".repeat(frameCounter))}${" ".repeat(loaderLength - frameCounter)}] starting ${moduleName}`;
|
||||||
+ "/".green.repeat(frameCounter)
|
if (frameCounter == loaderLength) {
|
||||||
+ " ".repeat(loaderLength - frameCounter)
|
|
||||||
+ "]"
|
|
||||||
+ " starting "
|
|
||||||
+ moduleName.cyan;
|
|
||||||
|
|
||||||
if(frameCounter == loaderLength){
|
|
||||||
frameCounter = 0;
|
frameCounter = 0;
|
||||||
} else {
|
} else {
|
||||||
frameCounter++;
|
frameCounter++;
|
||||||
@ -28,23 +22,29 @@ let makeFrame = ():string => {
|
|||||||
|
|
||||||
let logEarlyAbort = false;
|
let logEarlyAbort = false;
|
||||||
let logEarly = () => {
|
let logEarly = () => {
|
||||||
rl.write(null, {ctrl: true, name: 'u'});
|
if (!logEarlyAbort) {
|
||||||
rl.write(makeFrame());
|
rl.write(null, { ctrl: true, name: 'u' });
|
||||||
setTimeout(function(){
|
rl.write(makeFrame());
|
||||||
if(!logEarlyAbort) logEarly();
|
setTimeout(function () {
|
||||||
},80);
|
logEarly();
|
||||||
|
}, 80);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
let start = function(moduleNameArg:string = "",loaderLengthArg:string = "10"){
|
let start = function (moduleNameArg: string = "", loaderLengthArg: string = "10") {
|
||||||
moduleName = moduleNameArg;
|
moduleName = moduleNameArg;
|
||||||
loaderLength = parseInt(loaderLengthArg);
|
loaderLength = parseInt(loaderLengthArg);
|
||||||
logEarly();
|
logEarly();
|
||||||
};
|
};
|
||||||
|
|
||||||
start(process.env.moduleNameArg,process.env.loaderLengthArg);
|
start(process.env.moduleNameArg, process.env.loaderLengthArg);
|
||||||
|
|
||||||
process.on('SIGINT', () => {
|
process.on('SIGHUP', () => {
|
||||||
logEarlyAbort = true;
|
logEarlyAbort = true;
|
||||||
rl.write(null, {ctrl: true, name: 'u'});
|
rl.write(null, { ctrl: true, name: 'u' });
|
||||||
|
rl.write(`loaded ${chalk.green(moduleName)}`);
|
||||||
rl.close();
|
rl.close();
|
||||||
|
rl.on("close",() => {
|
||||||
|
process.exit(0);
|
||||||
|
})
|
||||||
});
|
});
|
70
ts/index.ts
70
ts/index.ts
@ -1,42 +1,72 @@
|
|||||||
import "typings-global"
|
import "typings-global"
|
||||||
import colors = require("colors");
|
|
||||||
import path = require("path");
|
import path = require("path");
|
||||||
|
import chalk = require("chalk");
|
||||||
|
let q = require("q");
|
||||||
import readline = require("readline");
|
import readline = require("readline");
|
||||||
import childProcess = require("child_process");
|
import childProcess = require("child_process");
|
||||||
let earlyChild;
|
let earlyChild;
|
||||||
|
|
||||||
let doAnimation:boolean = true;
|
let doAnimation: boolean = true;
|
||||||
let doText:boolean = false;
|
let doText: boolean = false;
|
||||||
if(process.argv.indexOf("-v") != -1 || process.env.CI){
|
let moduleName: string = "undefined module name";
|
||||||
|
let startTime;
|
||||||
|
|
||||||
|
if (process.argv.indexOf("-v") != -1 || process.env.CI) {
|
||||||
doAnimation = false;
|
doAnimation = false;
|
||||||
} else if(process.argv.indexOf("-v") == -1){
|
} else if (process.argv.indexOf("-v") == -1) {
|
||||||
doText = true;
|
doText = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// exports
|
// exports
|
||||||
export let start = function(moduleNameArg:string = "",loaderLengthArg:string = "10"){
|
export let start = function (moduleNameArg: string = "", loaderLengthArg: string = "10") {
|
||||||
if(doAnimation){
|
|
||||||
earlyChild = childProcess.fork(path.join(__dirname,"early.child.js"),[],{
|
startTime = process.hrtime();
|
||||||
|
|
||||||
|
moduleName = moduleNameArg;
|
||||||
|
if (doAnimation) {
|
||||||
|
earlyChild = childProcess.fork(path.join(__dirname, "early.child.js"), [], {
|
||||||
env: {
|
env: {
|
||||||
moduleNameArg:moduleNameArg,
|
moduleNameArg: moduleNameArg,
|
||||||
loaderLengthArg:loaderLengthArg,
|
loaderLengthArg: loaderLengthArg,
|
||||||
CI: process.env.CI
|
CI: process.env.CI
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
} else if (doText) {
|
} else if (doText) {
|
||||||
console.log("**** starting " + moduleNameArg.cyan + " ****");
|
console.log(`**** starting ${chalk.green(moduleNameArg)} ****`);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export let stop = function(){
|
export let stop = function () {
|
||||||
if(doAnimation){
|
let done = q.defer();
|
||||||
earlyChild.kill();
|
if (doAnimation) {
|
||||||
let rl = readline.createInterface({
|
earlyChild.kill("SIGHUP");
|
||||||
input: process.stdin,
|
earlyChild.on("close", function () {
|
||||||
output: process.stdout
|
let endTime = process.hrtime(startTime);
|
||||||
});
|
let executionTime = function () {
|
||||||
rl.write(null, {ctrl: true, name: 'u'});
|
try {
|
||||||
rl.close();
|
return (endTime[0] * 1e9 + endTime[1]);
|
||||||
|
}
|
||||||
|
catch (err) {
|
||||||
|
return undefined;
|
||||||
|
}
|
||||||
|
} () / 1000000000;
|
||||||
|
console.log(` in ${executionTime} seconds!`);
|
||||||
|
done.resolve();
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
let endTime = process.hrtime(startTime);
|
||||||
|
let executionTime = function () {
|
||||||
|
try {
|
||||||
|
return (endTime[0] * 1e9 + endTime[1]);
|
||||||
|
}
|
||||||
|
catch (err) {
|
||||||
|
return undefined;
|
||||||
|
}
|
||||||
|
} () / 1000000000;
|
||||||
|
console.log(` in ${executionTime} seconds!`);
|
||||||
|
console.log(`... finished loading moduleName in ${executionTime}`);
|
||||||
|
done.resolve();
|
||||||
}
|
}
|
||||||
|
return done.promise;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user