1.0.4 • Published 7 months ago
linked-abort-controller v1.0.4
LinkedAbortController
Same as AbortController but with sugar for linking outer abort signals
export class LinkedAbortController extends AbortController {
constructor(...abortSignals: (AbortSignal | undefined)[]) {
super();
this.link(...abortSignals);
}
link(...abortSignals: (AbortSignal | undefined)[]) {
abortSignals.forEach((abortSignal) => {
abortSignal?.addEventListener('abort', () => {
this.abort(abortSignal.reason);
});
});
}
}