@adyen/adyen-platform-experience-web
Version:

45 lines (44 loc) • 1.3 kB
JavaScript
import { isUndefined as f } from "../value/is.js";
import { ABORT_EVENT as c } from "./constants.js";
import { abortError as b, augmentSignalReason as s } from "./internals.js";
const A = (r = b()) => {
if ("abort" in AbortSignal)
return AbortSignal.abort(r);
const o = new AbortController(), n = f(r) ? b() : r, { signal: e } = o;
return o.abort(n), s(e, n), e;
}, m = (r) => {
if ("any" in AbortSignal)
return AbortSignal.any(r);
let o = /* @__PURE__ */ new Set(), n = new AbortController();
const { signal: e } = n;
let l = function() {
o.forEach((i) => i.removeEventListener(c, l)), o.clear();
const a = (this == null ? void 0 : this.reason) ?? b();
n.abort(a), s(e, a), n = o = l = void 0;
};
o: {
const a = Symbol("<NIL_EXCEPTION>");
let i = a;
r: {
try {
for (const t of r) {
if (!g(t)) throw new TypeError("Failed to convert value to 'AbortSignal'");
if (t.aborted) break r;
o.add(t);
}
} catch (t) {
i = t;
break r;
}
o.forEach((t) => t.addEventListener(c, l));
break o;
}
if (l.call(e), i !== a) throw i;
}
return e;
}, g = (r) => r instanceof AbortSignal;
export {
m as abortSignalForAny,
A as abortedSignal,
g as isAbortSignal
};