now working with CI

This commit is contained in:
Philipp Kunz 2016-05-22 00:38:14 +02:00
parent 5908dc8b6f
commit 3f1a05d3e0
5 changed files with 53 additions and 23 deletions

4
.npmignore Normal file
View File

@ -0,0 +1,4 @@
docs/
coverage/
ts/typings/
.travis.yml

View File

@ -1,12 +1,15 @@
# early
nice module loading animation for modules that need a little starting time.
minimal and fast loading animation for modules that need a little starting time.
> **note: this package is NOT READY YET**
## Usage
```typscript
```typescript
// Put the following at the start of your module
import * as early from "early";
early.start();
// do your loading stuff
early.stop();
early.start("myModuleName");
/*
do your loading stuff
*/
early.stop(); // stop "early" when your module is ready
```

2
dist/index.d.ts vendored
View File

@ -1,2 +1,2 @@
export declare let start: (moduleNameArg: string, loaderLengthArg?: number) => void;
export declare let start: (moduleNameArg?: string, loaderLengthArg?: number) => void;
export declare let stop: () => void;

29
dist/index.js vendored
View File

@ -2,10 +2,13 @@
/// <reference path="./typings/index.d.ts" />
var colors = require("colors");
var readline = require("readline");
var rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
var rl;
var initReadline = function () {
rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
};
var moduleName;
var loaderLength;
var frameCounter = 0;
@ -36,16 +39,26 @@ var logEarly = function () {
};
// exports
exports.start = function (moduleNameArg, loaderLengthArg) {
if (moduleNameArg === void 0) { moduleNameArg = ""; }
if (loaderLengthArg === void 0) { loaderLengthArg = 10; }
abort = false;
moduleName = moduleNameArg;
loaderLength = loaderLengthArg;
logEarly();
if (!process.env.CI) {
initReadline();
logEarly();
}
else {
console.log("**** starting " + moduleName + " ****");
}
;
};
exports.stop = function () {
abort = true;
rl.write(null, { ctrl: true, name: 'u' });
rl.close();
if (!process.env.CI) {
rl.write(null, { ctrl: true, name: 'u' });
rl.close();
}
};
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw2Q0FBNkM7QUFDN0MsSUFBSSxNQUFNLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQy9CLElBQUksUUFBUSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUVuQyxJQUFNLEVBQUUsR0FBRyxRQUFRLENBQUMsZUFBZSxDQUFDO0lBQ2xDLEtBQUssRUFBRSxPQUFPLENBQUMsS0FBSztJQUNwQixNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU07Q0FDdkIsQ0FBQyxDQUFDO0FBRUgsSUFBSSxVQUFpQixDQUFDO0FBQ3RCLElBQUksWUFBbUIsQ0FBQztBQUN4QixJQUFJLFlBQVksR0FBVSxDQUFDLENBQUM7QUFFNUIsSUFBSSxTQUFTLEdBQUc7SUFDWixJQUFJLFlBQVksR0FBVSxHQUFHO1VBQ3ZCLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQztVQUM5QixHQUFHLENBQUMsTUFBTSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7VUFDdkMsR0FBRztVQUNILFlBQVk7VUFDWixVQUFVLENBQUMsSUFBSSxDQUFDO0lBRXRCLEVBQUUsQ0FBQSxDQUFDLFlBQVksSUFBSSxZQUFZLENBQUMsQ0FBQSxDQUFDO1FBQzdCLFlBQVksR0FBRyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUFDLElBQUksQ0FBQyxDQUFDO1FBQ0osWUFBWSxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUNELE1BQU0sQ0FBQyxZQUFZLENBQUM7QUFDeEIsQ0FBQyxDQUFDO0FBRUYsSUFBSSxLQUFLLEdBQVcsSUFBSSxDQUFDO0FBQ3pCLElBQUksUUFBUSxHQUFHO0lBQ1gsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUMsQ0FBQyxDQUFDO0lBQ3hDLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUN0QixVQUFVLENBQUM7UUFDUCxFQUFFLENBQUEsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFBLENBQUM7WUFDUCxRQUFRLEVBQUUsQ0FBQztRQUNmLENBQUM7SUFDTCxDQUFDLEVBQUMsR0FBRyxDQUFDLENBQUM7QUFDWCxDQUFDLENBQUM7QUFHRixVQUFVO0FBQ0MsYUFBSyxHQUFHLFVBQVMsYUFBb0IsRUFBQyxlQUEyQjtJQUEzQiwrQkFBMkIsR0FBM0Isb0JBQTJCO0lBQ3hFLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDZCxVQUFVLEdBQUcsYUFBYSxDQUFDO0lBQzNCLFlBQVksR0FBRyxlQUFlLENBQUM7SUFDL0IsUUFBUSxFQUFFLENBQUM7QUFDZixDQUFDLENBQUM7QUFFUyxZQUFJLEdBQUc7SUFDZCxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ2IsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsRUFBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUMsQ0FBQyxDQUFDO0lBQ3hDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztBQUNmLENBQUMsQ0FBQyIsImZpbGUiOiJpbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8cmVmZXJlbmNlIHBhdGg9XCIuL3R5cGluZ3MvaW5kZXguZC50c1wiIC8+XHJcbmxldCBjb2xvcnMgPSByZXF1aXJlKFwiY29sb3JzXCIpO1xyXG5sZXQgcmVhZGxpbmUgPSByZXF1aXJlKFwicmVhZGxpbmVcIik7XHJcblxyXG5jb25zdCBybCA9IHJlYWRsaW5lLmNyZWF0ZUludGVyZmFjZSh7XHJcbiAgaW5wdXQ6IHByb2Nlc3Muc3RkaW4sXHJcbiAgb3V0cHV0OiBwcm9jZXNzLnN0ZG91dFxyXG59KTtcclxuXHJcbmxldCBtb2R1bGVOYW1lOnN0cmluZztcclxubGV0IGxvYWRlckxlbmd0aDpudW1iZXI7XHJcbmxldCBmcmFtZUNvdW50ZXI6bnVtYmVyID0gMDtcclxuXHJcbmxldCBtYWtlRnJhbWUgPSAoKTpzdHJpbmcgPT4ge1xyXG4gICAgbGV0IHJlc3VsdFN0cmluZzpzdHJpbmcgPSBcIltcIlxyXG4gICAgICAgICsgXCIvXCIuZ3JlZW4ucmVwZWF0KGZyYW1lQ291bnRlcilcclxuICAgICAgICArIFwiIFwiLnJlcGVhdChsb2FkZXJMZW5ndGggLSBmcmFtZUNvdW50ZXIpXHJcbiAgICAgICAgKyBcIl1cIlxyXG4gICAgICAgICsgXCIgc3RhcnRpbmcgXCJcclxuICAgICAgICArIG1vZHVsZU5hbWUuY3lhbjtcclxuXHJcbiAgICBpZihmcmFtZUNvdW50ZXIgPT0gbG9hZGVyTGVuZ3RoKXtcclxuICAgICAgICBmcmFtZUNvdW50ZXIgPSAwO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICBmcmFtZUNvdW50ZXIrKztcclxuICAgIH1cclxuICAgIHJldHVybiByZXN1bHRTdHJpbmc7XHJcbn07XHJcblxyXG5sZXQgYWJvcnQ6Ym9vbGVhbiA9IHRydWU7XHJcbmxldCBsb2dFYXJseSA9ICgpID0+IHtcclxuICAgIHJsLndyaXRlKG51bGwsIHtjdHJsOiB0cnVlLCBuYW1lOiAndSd9KTtcclxuICAgIHJsLndyaXRlKG1ha2VGcmFtZSgpKTtcclxuICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKXtcclxuICAgICAgICBpZighYWJvcnQpe1xyXG4gICAgICAgICAgICBsb2dFYXJseSgpO1xyXG4gICAgICAgIH1cclxuICAgIH0sMjAwKTtcclxufTtcclxuXHJcblxyXG4vLyBleHBvcnRzXHJcbmV4cG9ydCBsZXQgc3RhcnQgPSBmdW5jdGlvbihtb2R1bGVOYW1lQXJnOnN0cmluZyxsb2FkZXJMZW5ndGhBcmc6bnVtYmVyID0gMTApe1xyXG4gICAgYWJvcnQgPSBmYWxzZTtcclxuICAgIG1vZHVsZU5hbWUgPSBtb2R1bGVOYW1lQXJnO1xyXG4gICAgbG9hZGVyTGVuZ3RoID0gbG9hZGVyTGVuZ3RoQXJnO1xyXG4gICAgbG9nRWFybHkoKTtcclxufTtcclxuXHJcbmV4cG9ydCBsZXQgc3RvcCA9IGZ1bmN0aW9uKCl7XHJcbiAgICBhYm9ydCA9IHRydWU7XHJcbiAgICBybC53cml0ZShudWxsLCB7Y3RybDogdHJ1ZSwgbmFtZTogJ3UnfSk7XHJcbiAgICBybC5jbG9zZSgpO1xyXG59O1xyXG5cclxuIl19
//# sourceMappingURL=data:application/json;charset=utf8;base64,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ZWZlcmVuY2UgcGF0aD1cIi4vdHlwaW5ncy9pbmRleC5kLnRzXCIgLz5cclxubGV0IGNvbG9ycyA9IHJlcXVpcmUoXCJjb2xvcnNcIik7XHJcbmxldCByZWFkbGluZSA9IHJlcXVpcmUoXCJyZWFkbGluZVwiKTtcclxuXHJcbmxldCBybDsgXHJcbmxldCBpbml0UmVhZGxpbmUgPSAoKSA9PiB7XHJcbiAgICBybCA9IHJlYWRsaW5lLmNyZWF0ZUludGVyZmFjZSh7XHJcbiAgICBpbnB1dDogcHJvY2Vzcy5zdGRpbixcclxuICAgIG91dHB1dDogcHJvY2Vzcy5zdGRvdXRcclxuICAgIH0pO1xyXG59O1xyXG5cclxubGV0IG1vZHVsZU5hbWU6c3RyaW5nO1xyXG5sZXQgbG9hZGVyTGVuZ3RoOm51bWJlcjtcclxubGV0IGZyYW1lQ291bnRlcjpudW1iZXIgPSAwO1xyXG5cclxubGV0IG1ha2VGcmFtZSA9ICgpOnN0cmluZyA9PiB7XHJcbiAgICBsZXQgcmVzdWx0U3RyaW5nOnN0cmluZyA9IFwiW1wiXHJcbiAgICAgICAgKyBcIi9cIi5ncmVlbi5yZXBlYXQoZnJhbWVDb3VudGVyKVxyXG4gICAgICAgICsgXCIgXCIucmVwZWF0KGxvYWRlckxlbmd0aCAtIGZyYW1lQ291bnRlcilcclxuICAgICAgICArIFwiXVwiXHJcbiAgICAgICAgKyBcIiBzdGFydGluZyBcIlxyXG4gICAgICAgICsgbW9kdWxlTmFtZS5jeWFuO1xyXG5cclxuICAgIGlmKGZyYW1lQ291bnRlciA9PSBsb2FkZXJMZW5ndGgpe1xyXG4gICAgICAgIGZyYW1lQ291bnRlciA9IDA7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIGZyYW1lQ291bnRlcisrO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdFN0cmluZztcclxufTtcclxuXHJcbmxldCBhYm9ydDpib29sZWFuID0gdHJ1ZTtcclxubGV0IGxvZ0Vhcmx5ID0gKCkgPT4ge1xyXG4gICAgcmwud3JpdGUobnVsbCwge2N0cmw6IHRydWUsIG5hbWU6ICd1J30pO1xyXG4gICAgcmwud3JpdGUobWFrZUZyYW1lKCkpO1xyXG4gICAgc2V0VGltZW91dChmdW5jdGlvbigpe1xyXG4gICAgICAgIGlmKCFhYm9ydCl7XHJcbiAgICAgICAgICAgIGxvZ0Vhcmx5KCk7XHJcbiAgICAgICAgfVxyXG4gICAgfSwyMDApO1xyXG59O1xyXG5cclxuXHJcbi8vIGV4cG9ydHNcclxuZXhwb3J0IGxldCBzdGFydCA9IGZ1bmN0aW9uKG1vZHVsZU5hbWVBcmc6c3RyaW5nID0gXCJcIixsb2FkZXJMZW5ndGhBcmc6bnVtYmVyID0gMTApe1xyXG4gICAgYWJvcnQgPSBmYWxzZTtcclxuICAgIG1vZHVsZU5hbWUgPSBtb2R1bGVOYW1lQXJnO1xyXG4gICAgbG9hZGVyTGVuZ3RoID0gbG9hZGVyTGVuZ3RoQXJnO1xyXG4gICAgaWYgKCFwcm9jZXNzLmVudi5DSSl7XHJcbiAgICAgICAgaW5pdFJlYWRsaW5lKCk7XHJcbiAgICAgICAgbG9nRWFybHkoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29uc29sZS5sb2coXCIqKioqIHN0YXJ0aW5nIFwiICsgbW9kdWxlTmFtZSArIFwiICoqKipcIik7XHJcbiAgICB9O1xyXG59O1xyXG5cclxuZXhwb3J0IGxldCBzdG9wID0gZnVuY3Rpb24oKXtcclxuICAgIGFib3J0ID0gdHJ1ZTtcclxuICAgIGlmICghcHJvY2Vzcy5lbnYuQ0kpe1xyXG4gICAgICAgIHJsLndyaXRlKG51bGwsIHtjdHJsOiB0cnVlLCBuYW1lOiAndSd9KTtcclxuICAgICAgICBybC5jbG9zZSgpO1xyXG4gICAgfVxyXG59O1xyXG5cclxuIl19

View File

@ -2,10 +2,13 @@
let colors = require("colors");
let readline = require("readline");
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
let rl;
let initReadline = () => {
rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
};
let moduleName:string;
let loaderLength:number;
@ -40,16 +43,23 @@ let logEarly = () => {
// exports
export let start = function(moduleNameArg:string,loaderLengthArg:number = 10){
export let start = function(moduleNameArg:string = "",loaderLengthArg:number = 10){
abort = false;
moduleName = moduleNameArg;
loaderLength = loaderLengthArg;
logEarly();
if (!process.env.CI){
initReadline();
logEarly();
} else {
console.log("**** starting " + moduleName + " ****");
};
};
export let stop = function(){
abort = true;
rl.write(null, {ctrl: true, name: 'u'});
rl.close();
if (!process.env.CI){
rl.write(null, {ctrl: true, name: 'u'});
rl.close();
}
};