Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
function canBeSignaled(signal: CancelSignal) {
return signal !== Cancelable.none && (!(signal instanceof CancelToken) || signal.canBeSignaled);
}
return new Promise((resolve, reject) => {
let msec: number;
if (typeof cancelable === "number") {
value = _msec as T | PromiseLike;
msec = cancelable;
cancelable = Cancelable.none;
}
else {
msec = _msec as number;
}
Cancelable.throwIfSignaled(cancelable);
const handle = setTimeout(() => {
subscription.unsubscribe();
resolve(value);
}, msec);
const subscription = Cancelable.subscribe(cancelable, () => {
clearTimeout(handle);
reject(new CancelError());
});
subscribe(onSignaled) {
if (state === "closed") {
return Cancelable.none.subscribe(onSignaled);
}
if (state === "signaled") {
return Cancelable.canceled.subscribe(onSignaled);
}
const list = subscriptions || (subscriptions = new LinkedList());
return createCancelSubscription(list.push(onSignaled));
}
}));