UNPKG

@adyen/adyen-platform-experience-web

Version:

![Platform Experience header](https://github.com/Adyen/adyen-platform-experience-web/assets/7926613/18094965-9e01-450e-8dc9-ea84e6b22c2b)

33 lines (32 loc) 944 B
import { createAbortable as c } from "../abortable/main.js"; import { createDeferred as f } from "../deferred/main.js"; import { tryResolve as l } from "../../../utils/async/main.js"; import { enumerable as a, getter as p } from "../../../utils/struct/property.js"; import { isUndefined as b } from "../../../utils/value/is.js"; const _ = (m) => { const s = c(), r = f(); let e; return Object.defineProperties(function(...n) { b(e) ? r.refresh() : s.abort(); const o = l.call(this, m, s.refresh().signal, ...n); return (async () => { let t = e === (e = o); try { const i = await o.finally(() => { t = e === o, t && (e = void 0); }); t && r.resolve(i); } catch (i) { t && r.reject(i); } })(), o; }, { abort: a(s.abort), promise: p(() => r.promise), refresh: a(() => void r.refresh()) }); }; export { _ as createPromisor, _ as default };