()
| 87 | if (addSignalHandler !== null) { |
| 88 | for (const signal of options.signals ?? DEFAULT_SIGNALS) { |
| 89 | const handler = () => { |
| 90 | if (settled) return; |
| 91 | settled = true; |
| 92 | detach(); |
| 93 | void Promise.resolve() |
| 94 | .then(() => options.onSignal()) |
| 95 | .catch(() => undefined) |
| 96 | .finally(() => { |
| 97 | resolvePromise(); |
| 98 | }); |
| 99 | }; |
| 100 | listeners.push(Object.freeze({ signal, handler })); |
| 101 | addSignalHandler(signal, handler); |
| 102 | } |
no test coverage detected