fix(core): update

This commit is contained in:
Philipp Kunz 2020-05-27 16:54:32 +00:00
parent 2d64c43b55
commit 80de670cad

View File

@ -36,7 +36,11 @@ export class Timeout<T> {
private _timeout: any;
private _cancelled: boolean = false;
private timeoutInMillis: number;
private started: number;
constructor(timeInMillisecondArg, passOn?: T) {
this.timeoutInMillis = timeInMillisecondArg;
this._deferred = smartpromise.defer<T>();
this.promise = this._deferred.promise;
this._timeout = setTimeout(() => {
@ -44,6 +48,7 @@ export class Timeout<T> {
this._deferred.resolve(passOn);
}
}, timeInMillisecondArg);
this.started = Date.now();
}
/**
@ -60,4 +65,9 @@ export class Timeout<T> {
this._cancelled = true;
this.makeUnrefed();
}
public getTimeLeft() {
const result = this.started + this.timeoutInMillis - Date.now();
return result > 0 ? result : 0;
}
}