Compare commits
25 Commits
Author | SHA1 | Date | |
---|---|---|---|
3ffee9d0d6 | |||
03dfdda812 | |||
24cce5d9b2 | |||
295e568097 | |||
846bcf66db | |||
fc7d7fd27f | |||
9829c7bb1e | |||
6827999cf8 | |||
b318fa2076 | |||
0c751e1bca | |||
cb489552f2 | |||
addd66091f | |||
c2f8199f0b | |||
5e5696cce1 | |||
44d9782487 | |||
41592a4d2f | |||
23367249ec | |||
b415bf4ee7 | |||
86b6a6c3c4 | |||
ffbfc29628 | |||
9c6e452801 | |||
96c421e96e | |||
84af99ba80 | |||
6bb20dbc7b | |||
66a7fc2afe |
35
.gitlab-ci.yml
Normal file
35
.gitlab-ci.yml
Normal file
@ -0,0 +1,35 @@
|
||||
image: hosttoday/ht-docker-node:npmts
|
||||
|
||||
stages:
|
||||
- test
|
||||
- release
|
||||
|
||||
testLEGACY:
|
||||
stage: test
|
||||
script:
|
||||
- npmci test legacy
|
||||
tags:
|
||||
- docker
|
||||
|
||||
testLTS:
|
||||
stage: test
|
||||
script:
|
||||
- npmci test lts
|
||||
tags:
|
||||
- docker
|
||||
|
||||
testSTABLE:
|
||||
stage: test
|
||||
script:
|
||||
- npmci test stable
|
||||
tags:
|
||||
- docker
|
||||
|
||||
release:
|
||||
stage: release
|
||||
script:
|
||||
- npmci publish
|
||||
only:
|
||||
- tags
|
||||
tags:
|
||||
- docker
|
@ -13,3 +13,4 @@ do your loading stuff
|
||||
early.stop(); // stop "early" when your module is ready
|
||||
```
|
||||
|
||||
early runs in its own process: The loader animation runs smoothly even when your event queue of your currently loading module is working heavily.
|
||||
|
1
dist/early.child.d.ts
vendored
1
dist/early.child.d.ts
vendored
@ -0,0 +1 @@
|
||||
import "typings-global";
|
||||
|
27
dist/early.child.js
vendored
27
dist/early.child.js
vendored
@ -1,14 +1,11 @@
|
||||
"use strict";
|
||||
/// <reference path="./typings/index.d.ts" />
|
||||
require("typings-global");
|
||||
var colors = require("colors");
|
||||
var readline = require("readline");
|
||||
var rl;
|
||||
var initReadline = function () {
|
||||
rl = readline.createInterface({
|
||||
var rl = readline.createInterface({
|
||||
input: process.stdin,
|
||||
output: process.stdout
|
||||
});
|
||||
};
|
||||
var moduleName;
|
||||
var loaderLength;
|
||||
var frameCounter = 0;
|
||||
@ -27,28 +24,28 @@ var makeFrame = function () {
|
||||
}
|
||||
return resultString;
|
||||
};
|
||||
var logEarlyAbort = false;
|
||||
var logEarly = function () {
|
||||
rl.write(null, { ctrl: true, name: 'u' });
|
||||
rl.write(makeFrame());
|
||||
setTimeout(function () {
|
||||
if (!logEarlyAbort)
|
||||
logEarly();
|
||||
}, 200);
|
||||
}, 80);
|
||||
};
|
||||
var start = function (moduleNameArg, loaderLengthArg) {
|
||||
if (moduleNameArg === void 0) { moduleNameArg = ""; }
|
||||
if (loaderLengthArg === void 0) { loaderLengthArg = "10"; }
|
||||
console.log(moduleNameArg);
|
||||
moduleName = moduleNameArg;
|
||||
loaderLength = parseInt(loaderLengthArg);
|
||||
if (!process.env.CI) {
|
||||
initReadline();
|
||||
logEarly();
|
||||
}
|
||||
else {
|
||||
console.log("**** starting " + moduleName.cyan + " ****");
|
||||
}
|
||||
;
|
||||
};
|
||||
start(process.env.moduleNameArg, process.env.loaderLengthArg);
|
||||
process.on('SIGINT', function () {
|
||||
logEarlyAbort = true;
|
||||
rl.write(null, { ctrl: true, name: 'u' });
|
||||
rl.close();
|
||||
process.exit(0);
|
||||
});
|
||||
|
||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImVhcmx5LmNoaWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw2Q0FBNkM7QUFDN0MsSUFBSSxNQUFNLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQy9CLElBQU8sUUFBUSxXQUFXLFVBQVUsQ0FBQyxDQUFDO0FBQ3RDLElBQUksRUFBRSxDQUFDO0FBQ1AsSUFBSSxZQUFZLEdBQUc7SUFDZixFQUFFLEdBQUcsUUFBUSxDQUFDLGVBQWUsQ0FBQztRQUM5QixLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUs7UUFDcEIsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO0tBQ3JCLENBQUMsQ0FBQztBQUNQLENBQUMsQ0FBQztBQUVGLElBQUksVUFBaUIsQ0FBQztBQUN0QixJQUFJLFlBQW1CLENBQUM7QUFDeEIsSUFBSSxZQUFZLEdBQVUsQ0FBQyxDQUFDO0FBRTVCLElBQUksU0FBUyxHQUFHO0lBQ1osSUFBSSxZQUFZLEdBQVUsR0FBRztVQUN2QixHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUM7VUFDOUIsR0FBRyxDQUFDLE1BQU0sQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO1VBQ3ZDLEdBQUc7VUFDSCxZQUFZO1VBQ1osVUFBVSxDQUFDLElBQUksQ0FBQztJQUV0QixFQUFFLENBQUEsQ0FBQyxZQUFZLElBQUksWUFBWSxDQUFDLENBQUEsQ0FBQztRQUM3QixZQUFZLEdBQUcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFBQyxJQUFJLENBQUMsQ0FBQztRQUNKLFlBQVksRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFDRCxNQUFNLENBQUMsWUFBWSxDQUFDO0FBQ3hCLENBQUMsQ0FBQztBQUVGLElBQUksUUFBUSxHQUFHO0lBQ1gsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUMsQ0FBQyxDQUFDO0lBQ3hDLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUN0QixVQUFVLENBQUM7UUFDUCxRQUFRLEVBQUUsQ0FBQztJQUNmLENBQUMsRUFBQyxHQUFHLENBQUMsQ0FBQztBQUNYLENBQUMsQ0FBQztBQUVGLElBQUksS0FBSyxHQUFHLFVBQVMsYUFBeUIsRUFBQyxlQUE2QjtJQUF2RCw2QkFBeUIsR0FBekIsa0JBQXlCO0lBQUMsK0JBQTZCLEdBQTdCLHNCQUE2QjtJQUN4RSxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzNCLFVBQVUsR0FBRyxhQUFhLENBQUM7SUFDM0IsWUFBWSxHQUFHLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN6QyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUEsQ0FBQztRQUNqQixZQUFZLEVBQUUsQ0FBQztRQUNmLFFBQVEsRUFBRSxDQUFDO0lBQ2YsQ0FBQztJQUFDLElBQUksQ0FBQyxDQUFDO1FBQ0osT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsR0FBRyxVQUFVLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFBQSxDQUFDO0FBQ04sQ0FBQyxDQUFDO0FBRUYsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMiLCJmaWxlIjoiZWFybHkuY2hpbGQuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHJlZmVyZW5jZSBwYXRoPVwiLi90eXBpbmdzL2luZGV4LmQudHNcIiAvPlxyXG5sZXQgY29sb3JzID0gcmVxdWlyZShcImNvbG9yc1wiKTtcclxuaW1wb3J0IHJlYWRsaW5lID0gcmVxdWlyZShcInJlYWRsaW5lXCIpO1xyXG5sZXQgcmw7IFxyXG5sZXQgaW5pdFJlYWRsaW5lID0gKCkgPT4ge1xyXG4gICAgcmwgPSByZWFkbGluZS5jcmVhdGVJbnRlcmZhY2Uoe1xyXG4gICAgaW5wdXQ6IHByb2Nlc3Muc3RkaW4sXHJcbiAgICBvdXRwdXQ6IHByb2Nlc3Muc3Rkb3V0XHJcbiAgICB9KTtcclxufTtcclxuXHJcbmxldCBtb2R1bGVOYW1lOnN0cmluZztcclxubGV0IGxvYWRlckxlbmd0aDpudW1iZXI7XHJcbmxldCBmcmFtZUNvdW50ZXI6bnVtYmVyID0gMDtcclxuXHJcbmxldCBtYWtlRnJhbWUgPSAoKTpzdHJpbmcgPT4ge1xyXG4gICAgbGV0IHJlc3VsdFN0cmluZzpzdHJpbmcgPSBcIltcIlxyXG4gICAgICAgICsgXCIvXCIuZ3JlZW4ucmVwZWF0KGZyYW1lQ291bnRlcilcclxuICAgICAgICArIFwiIFwiLnJlcGVhdChsb2FkZXJMZW5ndGggLSBmcmFtZUNvdW50ZXIpXHJcbiAgICAgICAgKyBcIl1cIlxyXG4gICAgICAgICsgXCIgc3RhcnRpbmcgXCJcclxuICAgICAgICArIG1vZHVsZU5hbWUuY3lhbjtcclxuXHJcbiAgICBpZihmcmFtZUNvdW50ZXIgPT0gbG9hZGVyTGVuZ3RoKXtcclxuICAgICAgICBmcmFtZUNvdW50ZXIgPSAwO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICBmcmFtZUNvdW50ZXIrKztcclxuICAgIH1cclxuICAgIHJldHVybiByZXN1bHRTdHJpbmc7XHJcbn07XHJcblxyXG5sZXQgbG9nRWFybHkgPSAoKSA9PiB7XHJcbiAgICBybC53cml0ZShudWxsLCB7Y3RybDogdHJ1ZSwgbmFtZTogJ3UnfSk7XHJcbiAgICBybC53cml0ZShtYWtlRnJhbWUoKSk7XHJcbiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7XHJcbiAgICAgICAgbG9nRWFybHkoKTtcclxuICAgIH0sMjAwKTtcclxufTtcclxuXHJcbmxldCBzdGFydCA9IGZ1bmN0aW9uKG1vZHVsZU5hbWVBcmc6c3RyaW5nID0gXCJcIixsb2FkZXJMZW5ndGhBcmc6c3RyaW5nID0gXCIxMFwiKXtcclxuICAgIGNvbnNvbGUubG9nKG1vZHVsZU5hbWVBcmcpO1xyXG4gICAgbW9kdWxlTmFtZSA9IG1vZHVsZU5hbWVBcmc7XHJcbiAgICBsb2FkZXJMZW5ndGggPSBwYXJzZUludChsb2FkZXJMZW5ndGhBcmcpO1xyXG4gICAgaWYgKCFwcm9jZXNzLmVudi5DSSl7XHJcbiAgICAgICAgaW5pdFJlYWRsaW5lKCk7XHJcbiAgICAgICAgbG9nRWFybHkoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCIqKioqIHN0YXJ0aW5nIFwiICsgbW9kdWxlTmFtZS5jeWFuICsgXCIgKioqKlwiKTtcclxuICAgIH07XHJcbn07XHJcblxyXG5zdGFydChwcm9jZXNzLmVudi5tb2R1bGVOYW1lQXJnLHByb2Nlc3MuZW52LmxvYWRlckxlbmd0aEFyZyk7Il19
|
||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImVhcmx5LmNoaWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxRQUFPLGdCQUFnQixDQUFDLENBQUE7QUFDeEIsSUFBSSxNQUFNLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQy9CLElBQU8sUUFBUSxXQUFXLFVBQVUsQ0FBQyxDQUFDO0FBQ3RDLElBQUksRUFBRSxHQUFHLFFBQVEsQ0FBQyxlQUFlLENBQUM7SUFDOUIsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFLO0lBQ3BCLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtDQUN6QixDQUFDLENBQUM7QUFFSCxJQUFJLFVBQWlCLENBQUM7QUFDdEIsSUFBSSxZQUFtQixDQUFDO0FBQ3hCLElBQUksWUFBWSxHQUFVLENBQUMsQ0FBQztBQUU1QixJQUFJLFNBQVMsR0FBRztJQUNaLElBQUksWUFBWSxHQUFVLEdBQUc7VUFDdkIsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDO1VBQzlCLEdBQUcsQ0FBQyxNQUFNLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQztVQUN2QyxHQUFHO1VBQ0gsWUFBWTtVQUNaLFVBQVUsQ0FBQyxJQUFJLENBQUM7SUFFdEIsRUFBRSxDQUFBLENBQUMsWUFBWSxJQUFJLFlBQVksQ0FBQyxDQUFBLENBQUM7UUFDN0IsWUFBWSxHQUFHLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBQUMsSUFBSSxDQUFDLENBQUM7UUFDSixZQUFZLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBQ0QsTUFBTSxDQUFDLFlBQVksQ0FBQztBQUN4QixDQUFDLENBQUM7QUFFRixJQUFJLGFBQWEsR0FBRyxLQUFLLENBQUM7QUFDMUIsSUFBSSxRQUFRLEdBQUc7SUFDWCxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxFQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBQyxDQUFDLENBQUM7SUFDeEMsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3RCLFVBQVUsQ0FBQztRQUNQLEVBQUUsQ0FBQSxDQUFDLENBQUMsYUFBYSxDQUFDO1lBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEMsQ0FBQyxFQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQ1YsQ0FBQyxDQUFDO0FBRUYsSUFBSSxLQUFLLEdBQUcsVUFBUyxhQUF5QixFQUFDLGVBQTZCO0lBQXZELDZCQUF5QixHQUF6QixrQkFBeUI7SUFBQywrQkFBNkIsR0FBN0Isc0JBQTZCO0lBQ3hFLFVBQVUsR0FBRyxhQUFhLENBQUM7SUFDM0IsWUFBWSxHQUFHLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN6QyxRQUFRLEVBQUUsQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVGLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0FBRTdELE9BQU8sQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ2pCLGFBQWEsR0FBRyxJQUFJLENBQUM7SUFDckIsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUMsQ0FBQyxDQUFDO0lBQ3hDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNYLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDcEIsQ0FBQyxDQUFDLENBQUMiLCJmaWxlIjoiZWFybHkuY2hpbGQuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJ0eXBpbmdzLWdsb2JhbFwiO1xubGV0IGNvbG9ycyA9IHJlcXVpcmUoXCJjb2xvcnNcIik7XG5pbXBvcnQgcmVhZGxpbmUgPSByZXF1aXJlKFwicmVhZGxpbmVcIik7XG5sZXQgcmwgPSByZWFkbGluZS5jcmVhdGVJbnRlcmZhY2Uoe1xuICAgIGlucHV0OiBwcm9jZXNzLnN0ZGluLFxuICAgIG91dHB1dDogcHJvY2Vzcy5zdGRvdXRcbn0pO1xuXG5sZXQgbW9kdWxlTmFtZTpzdHJpbmc7XG5sZXQgbG9hZGVyTGVuZ3RoOm51bWJlcjtcbmxldCBmcmFtZUNvdW50ZXI6bnVtYmVyID0gMDtcblxubGV0IG1ha2VGcmFtZSA9ICgpOnN0cmluZyA9PiB7XG4gICAgbGV0IHJlc3VsdFN0cmluZzpzdHJpbmcgPSBcIltcIlxuICAgICAgICArIFwiL1wiLmdyZWVuLnJlcGVhdChmcmFtZUNvdW50ZXIpXG4gICAgICAgICsgXCIgXCIucmVwZWF0KGxvYWRlckxlbmd0aCAtIGZyYW1lQ291bnRlcilcbiAgICAgICAgKyBcIl1cIlxuICAgICAgICArIFwiIHN0YXJ0aW5nIFwiXG4gICAgICAgICsgbW9kdWxlTmFtZS5jeWFuO1xuXG4gICAgaWYoZnJhbWVDb3VudGVyID09IGxvYWRlckxlbmd0aCl7XG4gICAgICAgIGZyYW1lQ291bnRlciA9IDA7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgZnJhbWVDb3VudGVyKys7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHRTdHJpbmc7XG59O1xuXG5sZXQgbG9nRWFybHlBYm9ydCA9IGZhbHNlO1xubGV0IGxvZ0Vhcmx5ID0gKCkgPT4ge1xuICAgIHJsLndyaXRlKG51bGwsIHtjdHJsOiB0cnVlLCBuYW1lOiAndSd9KTtcbiAgICBybC53cml0ZShtYWtlRnJhbWUoKSk7XG4gICAgc2V0VGltZW91dChmdW5jdGlvbigpe1xuICAgICAgICBpZighbG9nRWFybHlBYm9ydCkgbG9nRWFybHkoKTtcbiAgICB9LDgwKTtcbn07XG5cbmxldCBzdGFydCA9IGZ1bmN0aW9uKG1vZHVsZU5hbWVBcmc6c3RyaW5nID0gXCJcIixsb2FkZXJMZW5ndGhBcmc6c3RyaW5nID0gXCIxMFwiKXtcbiAgICBtb2R1bGVOYW1lID0gbW9kdWxlTmFtZUFyZztcbiAgICBsb2FkZXJMZW5ndGggPSBwYXJzZUludChsb2FkZXJMZW5ndGhBcmcpO1xuICAgIGxvZ0Vhcmx5KCk7XG59O1xuXG5zdGFydChwcm9jZXNzLmVudi5tb2R1bGVOYW1lQXJnLHByb2Nlc3MuZW52LmxvYWRlckxlbmd0aEFyZyk7XG5cbnByb2Nlc3Mub24oJ1NJR0lOVCcsICgpID0+IHtcbiAgICBsb2dFYXJseUFib3J0ID0gdHJ1ZTtcbiAgICBybC53cml0ZShudWxsLCB7Y3RybDogdHJ1ZSwgbmFtZTogJ3UnfSk7XG4gICAgcmwuY2xvc2UoKTtcbiAgICBwcm9jZXNzLmV4aXQoMCk7XG59KTsiXX0=
|
||||
|
3
dist/index.d.ts
vendored
3
dist/index.d.ts
vendored
@ -1,2 +1,3 @@
|
||||
import "typings-global";
|
||||
export declare let start: (moduleNameArg?: string, loaderLengthArg?: string) => void;
|
||||
export declare let stop: () => void;
|
||||
export declare let stop: () => any;
|
||||
|
40
dist/index.js
vendored
40
dist/index.js
vendored
@ -1,20 +1,56 @@
|
||||
"use strict";
|
||||
require("typings-global");
|
||||
var path = require("path");
|
||||
var q = require("q");
|
||||
var readline = require("readline");
|
||||
var childProcess = require("child_process");
|
||||
var earlyChild;
|
||||
var doAnimation = true;
|
||||
var doText = false;
|
||||
if (process.argv.indexOf("-v") != -1 || process.env.CI) {
|
||||
doAnimation = false;
|
||||
}
|
||||
else if (process.argv.indexOf("-v") == -1) {
|
||||
doText = true;
|
||||
}
|
||||
// exports
|
||||
exports.start = function (moduleNameArg, loaderLengthArg) {
|
||||
if (moduleNameArg === void 0) { moduleNameArg = ""; }
|
||||
if (loaderLengthArg === void 0) { loaderLengthArg = "10"; }
|
||||
if (doAnimation) {
|
||||
earlyChild = childProcess.fork(path.join(__dirname, "early.child.js"), [], {
|
||||
env: {
|
||||
moduleNameArg: moduleNameArg,
|
||||
loaderLengthArg: loaderLengthArg
|
||||
loaderLengthArg: loaderLengthArg,
|
||||
CI: process.env.CI
|
||||
}
|
||||
});
|
||||
}
|
||||
else if (doText) {
|
||||
console.log("**** starting " + moduleNameArg.cyan + " ****");
|
||||
}
|
||||
};
|
||||
exports.stop = function () {
|
||||
if (doAnimation) {
|
||||
var done_1 = q.defer();
|
||||
earlyChild.kill();
|
||||
var rl = readline.createInterface({
|
||||
input: process.stdin,
|
||||
output: process.stdout
|
||||
});
|
||||
rl.write(null, { ctrl: true, name: 'u' });
|
||||
rl.close();
|
||||
earlyChild.on("close", function () {
|
||||
var rl = readline.createInterface({
|
||||
input: process.stdin,
|
||||
output: process.stdout
|
||||
});
|
||||
rl.write(null, { ctrl: true, name: 'u' });
|
||||
rl.close();
|
||||
done_1.resolve();
|
||||
});
|
||||
return done_1.promise;
|
||||
}
|
||||
};
|
||||
|
||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFFQSxJQUFPLElBQUksV0FBVyxNQUFNLENBQUMsQ0FBQztBQUU5QixJQUFPLFlBQVksV0FBVyxlQUFlLENBQUMsQ0FBQztBQUMvQyxJQUFJLFVBQVUsQ0FBQztBQUNmLFVBQVU7QUFDQyxhQUFLLEdBQUcsVUFBUyxhQUF5QixFQUFDLGVBQTZCO0lBQXZELDZCQUF5QixHQUF6QixrQkFBeUI7SUFBQywrQkFBNkIsR0FBN0Isc0JBQTZCO0lBQy9FLFVBQVUsR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFDLGdCQUFnQixDQUFDLEVBQUMsRUFBRSxFQUFDO1FBQ3BFLEdBQUcsRUFBRTtZQUNELGFBQWEsRUFBQyxhQUFhO1lBQzNCLGVBQWUsRUFBQyxlQUFlO1NBQ2xDO0tBQ0osQ0FBQyxDQUFDO0FBQ1AsQ0FBQyxDQUFDO0FBRVMsWUFBSSxHQUFHO0lBQ2QsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0FBQ3RCLENBQUMsQ0FBQyIsImZpbGUiOiJpbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8cmVmZXJlbmNlIHBhdGg9XCIuL3R5cGluZ3MvaW5kZXguZC50c1wiIC8+XHJcbmltcG9ydCBjb2xvcnMgPSByZXF1aXJlKFwiY29sb3JzXCIpO1xyXG5pbXBvcnQgcGF0aCA9IHJlcXVpcmUoXCJwYXRoXCIpO1xyXG5cclxuaW1wb3J0IGNoaWxkUHJvY2VzcyA9IHJlcXVpcmUoXCJjaGlsZF9wcm9jZXNzXCIpO1xyXG5sZXQgZWFybHlDaGlsZDtcclxuLy8gZXhwb3J0c1xyXG5leHBvcnQgbGV0IHN0YXJ0ID0gZnVuY3Rpb24obW9kdWxlTmFtZUFyZzpzdHJpbmcgPSBcIlwiLGxvYWRlckxlbmd0aEFyZzpzdHJpbmcgPSBcIjEwXCIpe1xyXG4gICAgZWFybHlDaGlsZCA9IGNoaWxkUHJvY2Vzcy5mb3JrKHBhdGguam9pbihfX2Rpcm5hbWUsXCJlYXJseS5jaGlsZC5qc1wiKSxbXSx7XHJcbiAgICAgICAgZW52OiB7XHJcbiAgICAgICAgICAgIG1vZHVsZU5hbWVBcmc6bW9kdWxlTmFtZUFyZyxcclxuICAgICAgICAgICAgbG9hZGVyTGVuZ3RoQXJnOmxvYWRlckxlbmd0aEFyZ1xyXG4gICAgICAgIH1cclxuICAgIH0pO1xyXG59O1xyXG5cclxuZXhwb3J0IGxldCBzdG9wID0gZnVuY3Rpb24oKXtcclxuICAgIGVhcmx5Q2hpbGQua2lsbCgpO1xyXG59O1xyXG5cclxuIl19
|
||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,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QUUsQ0FBQztRQUNuQixDQUFDLENBQUMsQ0FBQTtRQUNGLE1BQU0sQ0FBQyxNQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hCLENBQUM7QUFDTCxDQUFDLENBQUMiLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJ0eXBpbmdzLWdsb2JhbFwiXG5pbXBvcnQgY29sb3JzID0gcmVxdWlyZShcImNvbG9yc1wiKTtcbmltcG9ydCBwYXRoID0gcmVxdWlyZShcInBhdGhcIik7XG5sZXQgcSA9IHJlcXVpcmUoXCJxXCIpO1xuaW1wb3J0IHJlYWRsaW5lID0gcmVxdWlyZShcInJlYWRsaW5lXCIpO1xuaW1wb3J0IGNoaWxkUHJvY2VzcyA9IHJlcXVpcmUoXCJjaGlsZF9wcm9jZXNzXCIpO1xubGV0IGVhcmx5Q2hpbGQ7XG5cbmxldCBkb0FuaW1hdGlvbjpib29sZWFuID0gdHJ1ZTtcbmxldCBkb1RleHQ6Ym9vbGVhbiA9IGZhbHNlO1xuaWYocHJvY2Vzcy5hcmd2LmluZGV4T2YoXCItdlwiKSAhPSAtMSB8fCBwcm9jZXNzLmVudi5DSSl7XG4gICAgZG9BbmltYXRpb24gPSBmYWxzZTtcbn0gZWxzZSBpZihwcm9jZXNzLmFyZ3YuaW5kZXhPZihcIi12XCIpID09IC0xKXtcbiAgICBkb1RleHQgPSB0cnVlO1xufVxuXG4vLyBleHBvcnRzXG5leHBvcnQgbGV0IHN0YXJ0ID0gZnVuY3Rpb24obW9kdWxlTmFtZUFyZzpzdHJpbmcgPSBcIlwiLGxvYWRlckxlbmd0aEFyZzpzdHJpbmcgPSBcIjEwXCIpe1xuICAgIGlmKGRvQW5pbWF0aW9uKXtcbiAgICAgICAgZWFybHlDaGlsZCA9IGNoaWxkUHJvY2Vzcy5mb3JrKHBhdGguam9pbihfX2Rpcm5hbWUsXCJlYXJseS5jaGlsZC5qc1wiKSxbXSx7XG4gICAgICAgICAgICBlbnY6IHtcbiAgICAgICAgICAgICAgICBtb2R1bGVOYW1lQXJnOm1vZHVsZU5hbWVBcmcsXG4gICAgICAgICAgICAgICAgbG9hZGVyTGVuZ3RoQXJnOmxvYWRlckxlbmd0aEFyZyxcbiAgICAgICAgICAgICAgICBDSTogcHJvY2Vzcy5lbnYuQ0lcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIGlmIChkb1RleHQpIHtcbiAgICAgICAgY29uc29sZS5sb2coXCIqKioqIHN0YXJ0aW5nIFwiICsgbW9kdWxlTmFtZUFyZy5jeWFuICsgXCIgKioqKlwiKTtcbiAgICB9XG59O1xuXG5leHBvcnQgbGV0IHN0b3AgPSBmdW5jdGlvbigpe1xuICAgIGlmKGRvQW5pbWF0aW9uKXtcbiAgICAgICAgbGV0IGRvbmUgPSBxLmRlZmVyKCk7XG4gICAgICAgIGVhcmx5Q2hpbGQua2lsbCgpO1xuICAgICAgICBsZXQgcmwgPSByZWFkbGluZS5jcmVhdGVJbnRlcmZhY2Uoe1xuICAgICAgICAgICAgaW5wdXQ6IHByb2Nlc3Muc3RkaW4sXG4gICAgICAgICAgICBvdXRwdXQ6IHByb2Nlc3Muc3Rkb3V0XG4gICAgICAgIH0pO1xuICAgICAgICBybC53cml0ZShudWxsLCB7Y3RybDogdHJ1ZSwgbmFtZTogJ3UnfSk7XG4gICAgICAgIHJsLmNsb3NlKCk7XG4gICAgICAgIGVhcmx5Q2hpbGQub24oXCJjbG9zZVwiLGZ1bmN0aW9uKCl7XG4gICAgICAgICAgICBsZXQgcmwgPSByZWFkbGluZS5jcmVhdGVJbnRlcmZhY2Uoe1xuICAgICAgICAgICAgICAgIGlucHV0OiBwcm9jZXNzLnN0ZGluLFxuICAgICAgICAgICAgICAgIG91dHB1dDogcHJvY2Vzcy5zdGRvdXRcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmwud3JpdGUobnVsbCwge2N0cmw6IHRydWUsIG5hbWU6ICd1J30pO1xuICAgICAgICAgICAgcmwuY2xvc2UoKTtcbiAgICAgICAgICAgIGRvbmUucmVzb2x2ZSgpO1xuICAgICAgICB9KVxuICAgICAgICByZXR1cm4gZG9uZS5wcm9taXNlO1xuICAgIH1cbn07XG5cbiJdfQ==
|
||||
|
15
package.json
15
package.json
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "early",
|
||||
"version": "1.0.9",
|
||||
"version": "2.0.8",
|
||||
"description": "nice module loading animation for modules that need a little starting time.",
|
||||
"main": "dist/index.js",
|
||||
"typings": "dist/index.d.ts",
|
||||
@ -9,7 +9,7 @@
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/pushrocks/early.git"
|
||||
"url": "git+https://gitlab.com/pushrocks/early.git"
|
||||
},
|
||||
"keywords": [
|
||||
"preloader"
|
||||
@ -17,13 +17,16 @@
|
||||
"author": "Lossless GmbH",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/pushrocks/early/issues"
|
||||
"url": "https://gitlab.com/pushrocks/early/issues"
|
||||
},
|
||||
"homepage": "https://github.com/pushrocks/early#readme",
|
||||
"homepage": "https://gitlab.com/pushrocks/early#readme",
|
||||
"devDependencies": {
|
||||
"npmts": "^5.1.9"
|
||||
"npmts-g": "^5.2.6",
|
||||
"typings-test": "^1.0.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"colors": "^1.1.2"
|
||||
"colors": "^1.1.2",
|
||||
"q": "^1.4.1",
|
||||
"typings-global": "^1.0.3"
|
||||
}
|
||||
}
|
||||
|
1
test/test.d.ts
vendored
1
test/test.d.ts
vendored
@ -0,0 +1 @@
|
||||
import "typings-test";
|
||||
|
11
test/test.js
11
test/test.js
@ -1,15 +1,16 @@
|
||||
"use strict";
|
||||
/// <reference path="../ts/typings/index.d.ts" />
|
||||
var early = require("../dist/index.js");
|
||||
require("typings-test");
|
||||
var early = require("../dist/index");
|
||||
describe("early", function () {
|
||||
it(".start()", function (done) {
|
||||
this.timeout(10000);
|
||||
early.start("early");
|
||||
setTimeout(done, 5000);
|
||||
});
|
||||
it(".stop()", function () {
|
||||
early.stop();
|
||||
it(".stop()", function (done) {
|
||||
early.stop()
|
||||
.then(done);
|
||||
});
|
||||
});
|
||||
|
||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLGlEQUFpRDtBQUNqRCxJQUFPLEtBQUssV0FBVyxrQkFBa0IsQ0FBQyxDQUFDO0FBRTNDLFFBQVEsQ0FBQyxPQUFPLEVBQUM7SUFDYixFQUFFLENBQUMsVUFBVSxFQUFDLFVBQVMsSUFBSTtRQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BCLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckIsVUFBVSxDQUFDLElBQUksRUFBQyxJQUFJLENBQUMsQ0FBQztJQUMxQixDQUFDLENBQUMsQ0FBQztJQUNILEVBQUUsQ0FBQyxTQUFTLEVBQUM7UUFDVCxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDakIsQ0FBQyxDQUFDLENBQUE7QUFDTixDQUFDLENBQUMsQ0FBQSIsImZpbGUiOiJ0ZXN0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxyZWZlcmVuY2UgcGF0aD1cIi4uL3RzL3R5cGluZ3MvaW5kZXguZC50c1wiIC8+XHJcbmltcG9ydCBlYXJseSA9IHJlcXVpcmUoXCIuLi9kaXN0L2luZGV4LmpzXCIpO1xyXG5cclxuZGVzY3JpYmUoXCJlYXJseVwiLGZ1bmN0aW9uKCl7XHJcbiAgICBpdChcIi5zdGFydCgpXCIsZnVuY3Rpb24oZG9uZSl7XHJcbiAgICAgICAgdGhpcy50aW1lb3V0KDEwMDAwKTtcclxuICAgICAgICBlYXJseS5zdGFydChcImVhcmx5XCIpO1xyXG4gICAgICAgIHNldFRpbWVvdXQoZG9uZSw1MDAwKTtcclxuICAgIH0pO1xyXG4gICAgaXQoXCIuc3RvcCgpXCIsZnVuY3Rpb24oKXtcclxuICAgICAgICBlYXJseS5zdG9wKCk7XHJcbiAgICB9KVxyXG59KSJdfQ==
|
||||
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLFFBQU8sY0FBYyxDQUFDLENBQUE7QUFDdEIsSUFBTyxLQUFLLFdBQVcsZUFBZSxDQUFDLENBQUM7QUFFeEMsUUFBUSxDQUFDLE9BQU8sRUFBQztJQUNiLEVBQUUsQ0FBQyxVQUFVLEVBQUMsVUFBUyxJQUFJO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEIsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyQixVQUFVLENBQUMsSUFBSSxFQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ0gsRUFBRSxDQUFDLFNBQVMsRUFBQyxVQUFTLElBQUk7UUFDdEIsS0FBSyxDQUFDLElBQUksRUFBRTthQUNQLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQixDQUFDLENBQUMsQ0FBQTtBQUNOLENBQUMsQ0FBQyxDQUFBIiwiZmlsZSI6InRlc3QuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXCJ0eXBpbmdzLXRlc3RcIjtcbmltcG9ydCBlYXJseSA9IHJlcXVpcmUoXCIuLi9kaXN0L2luZGV4XCIpO1xuXG5kZXNjcmliZShcImVhcmx5XCIsZnVuY3Rpb24oKXtcbiAgICBpdChcIi5zdGFydCgpXCIsZnVuY3Rpb24oZG9uZSl7XG4gICAgICAgIHRoaXMudGltZW91dCgxMDAwMCk7XG4gICAgICAgIGVhcmx5LnN0YXJ0KFwiZWFybHlcIik7XG4gICAgICAgIHNldFRpbWVvdXQoZG9uZSw1MDAwKTtcbiAgICB9KTtcbiAgICBpdChcIi5zdG9wKClcIixmdW5jdGlvbihkb25lKXtcbiAgICAgICAgZWFybHkuc3RvcCgpXG4gICAgICAgICAgICAudGhlbihkb25lKTtcbiAgICB9KVxufSkiXX0=
|
||||
|
@ -1,5 +1,5 @@
|
||||
/// <reference path="../ts/typings/index.d.ts" />
|
||||
import early = require("../dist/index.js");
|
||||
import "typings-test";
|
||||
import early = require("../dist/index");
|
||||
|
||||
describe("early",function(){
|
||||
it(".start()",function(done){
|
||||
@ -7,7 +7,8 @@ describe("early",function(){
|
||||
early.start("early");
|
||||
setTimeout(done,5000);
|
||||
});
|
||||
it(".stop()",function(){
|
||||
early.stop();
|
||||
it(".stop()",function(done){
|
||||
early.stop()
|
||||
.then(done);
|
||||
})
|
||||
})
|
@ -1,13 +1,10 @@
|
||||
/// <reference path="./typings/index.d.ts" />
|
||||
import "typings-global";
|
||||
let colors = require("colors");
|
||||
import readline = require("readline");
|
||||
let rl;
|
||||
let initReadline = () => {
|
||||
rl = readline.createInterface({
|
||||
let rl = readline.createInterface({
|
||||
input: process.stdin,
|
||||
output: process.stdout
|
||||
});
|
||||
};
|
||||
|
||||
let moduleName:string;
|
||||
let loaderLength:number;
|
||||
@ -29,24 +26,26 @@ let makeFrame = ():string => {
|
||||
return resultString;
|
||||
};
|
||||
|
||||
let logEarlyAbort = false;
|
||||
let logEarly = () => {
|
||||
rl.write(null, {ctrl: true, name: 'u'});
|
||||
rl.write(makeFrame());
|
||||
setTimeout(function(){
|
||||
logEarly();
|
||||
},200);
|
||||
if(!logEarlyAbort) logEarly();
|
||||
},80);
|
||||
};
|
||||
|
||||
let start = function(moduleNameArg:string = "",loaderLengthArg:string = "10"){
|
||||
console.log(moduleNameArg);
|
||||
moduleName = moduleNameArg;
|
||||
loaderLength = parseInt(loaderLengthArg);
|
||||
if (!process.env.CI){
|
||||
initReadline();
|
||||
logEarly();
|
||||
} else {
|
||||
console.log("**** starting " + moduleName.cyan + " ****");
|
||||
};
|
||||
};
|
||||
|
||||
start(process.env.moduleNameArg,process.env.loaderLengthArg);
|
||||
|
||||
process.on('SIGINT', () => {
|
||||
logEarlyAbort = true;
|
||||
rl.write(null, {ctrl: true, name: 'u'});
|
||||
rl.close();
|
||||
process.exit(0);
|
||||
});
|
40
ts/index.ts
40
ts/index.ts
@ -1,20 +1,54 @@
|
||||
/// <reference path="./typings/index.d.ts" />
|
||||
import "typings-global"
|
||||
import colors = require("colors");
|
||||
import path = require("path");
|
||||
|
||||
let q = require("q");
|
||||
import readline = require("readline");
|
||||
import childProcess = require("child_process");
|
||||
let earlyChild;
|
||||
|
||||
let doAnimation:boolean = true;
|
||||
let doText:boolean = false;
|
||||
if(process.argv.indexOf("-v") != -1 || process.env.CI){
|
||||
doAnimation = false;
|
||||
} else if(process.argv.indexOf("-v") == -1){
|
||||
doText = true;
|
||||
}
|
||||
|
||||
// exports
|
||||
export let start = function(moduleNameArg:string = "",loaderLengthArg:string = "10"){
|
||||
if(doAnimation){
|
||||
earlyChild = childProcess.fork(path.join(__dirname,"early.child.js"),[],{
|
||||
env: {
|
||||
moduleNameArg:moduleNameArg,
|
||||
loaderLengthArg:loaderLengthArg
|
||||
loaderLengthArg:loaderLengthArg,
|
||||
CI: process.env.CI
|
||||
}
|
||||
});
|
||||
} else if (doText) {
|
||||
console.log("**** starting " + moduleNameArg.cyan + " ****");
|
||||
}
|
||||
};
|
||||
|
||||
export let stop = function(){
|
||||
if(doAnimation){
|
||||
let done = q.defer();
|
||||
earlyChild.kill();
|
||||
let rl = readline.createInterface({
|
||||
input: process.stdin,
|
||||
output: process.stdout
|
||||
});
|
||||
rl.write(null, {ctrl: true, name: 'u'});
|
||||
rl.close();
|
||||
earlyChild.on("close",function(){
|
||||
let rl = readline.createInterface({
|
||||
input: process.stdin,
|
||||
output: process.stdout
|
||||
});
|
||||
rl.write(null, {ctrl: true, name: 'u'});
|
||||
rl.close();
|
||||
done.resolve();
|
||||
})
|
||||
return done.promise;
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -1,6 +0,0 @@
|
||||
{
|
||||
"globalDependencies": {
|
||||
"colors": "registry:dt/colors#0.6.0-1+20160501135139",
|
||||
"node": "registry:dt/node#6.0.0+20160514165920"
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user