fix(core): update

This commit is contained in:
Philipp Kunz 2021-06-04 13:54:21 +02:00
parent e49be654eb
commit 3784de03ce
3 changed files with 23293 additions and 1267 deletions

24573
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -28,7 +28,7 @@
"@gitzone/tsrun": "^1.2.8", "@gitzone/tsrun": "^1.2.8",
"@gitzone/tstest": "^1.0.28", "@gitzone/tstest": "^1.0.28",
"@pushrocks/tapbundle": "^3.2.1", "@pushrocks/tapbundle": "^3.2.1",
"@types/node": "^14.0.5", "@types/node": "^15.12.0",
"tslint": "^6.1.2", "tslint": "^6.1.2",
"tslint-config-prettier": "^1.18.0" "tslint-config-prettier": "^1.18.0"
}, },

View File

@ -2,32 +2,26 @@ import * as smartpromise from '@pushrocks/smartpromise';
/** /**
* delay something, works like setTimeout * delay something, works like setTimeout
* @param timeInMillisecond * @param timeInMillisecondArg
* @param passOn * @param passOnArg
*/ */
export let delayFor = async <T>(timeInMillisecond: number, passOn?: T) => { export let delayFor = async <T>(timeInMillisecondArg: number, passOnArg?: T, unrefedArg = false) => {
await new Promise((resolve, reject) => { const timeout = new Timeout(timeInMillisecondArg, null, unrefedArg);
setTimeout(() => { await timeout.promise;
resolve(); return passOnArg;
}, timeInMillisecond);
});
return passOn;
}; };
/** /**
* delay for a random time * delay for a random time
*/ */
export let delayForRandom = async <T>( export let delayForRandom = async <T>(
timeMinInMillisecond: number, timeMinInMillisecondArg: number,
timeMaxInMillisecond: number, timeMaxInMillisecondArg: number,
passOn?: T passOnArg?: T,
unrefedArg = false
) => { ) => {
await new Promise((resolve, reject) => { await delayFor(Math.random() * (timeMaxInMillisecondArg - timeMinInMillisecondArg) + timeMinInMillisecondArg, null, unrefedArg)
setTimeout(() => { return passOnArg;
resolve();
}, Math.random() * (timeMaxInMillisecond - timeMinInMillisecond) + timeMinInMillisecond);
});
return passOn;
}; };
export class Timeout<T> { export class Timeout<T> {
@ -39,7 +33,7 @@ export class Timeout<T> {
private timeoutInMillis: number; private timeoutInMillis: number;
private started: number; private started: number;
constructor(timeInMillisecondArg, passOn?: T) { constructor(timeInMillisecondArg, passOn?: T, unrefedArg = false) {
this.timeoutInMillis = timeInMillisecondArg; this.timeoutInMillis = timeInMillisecondArg;
this._deferred = smartpromise.defer<T>(); this._deferred = smartpromise.defer<T>();
this.promise = this._deferred.promise; this.promise = this._deferred.promise;
@ -49,6 +43,9 @@ export class Timeout<T> {
} }
}, timeInMillisecondArg); }, timeInMillisecondArg);
this.started = Date.now(); this.started = Date.now();
if (unrefedArg) {
this.makeUnrefed();
}
} }
/** /**