UNPKG

@node-elion/utils

Version:

Super scalable enterprise Node.js server library

23 lines 812 B
/* eslint-disable max-classes-per-file */ export class AbortPromise { constructor(executor, abortController) { const abort = abortController || new AbortController(); // @ts-ignore // eslint-disable-next-line @typescript-eslint/no-shadow class AbortPromise extends Promise { constructor(func) { super((resolve, reject) => func(resolve, reject, abort.signal)); } // eslint-disable-next-line class-methods-use-this abort() { abort.abort(); } // eslint-disable-next-line class-methods-use-this get abortController() { return abort; } } return new AbortPromise(executor); } } //# sourceMappingURL=abortPromise.js.map