obsidian-dev-utils
Version:
This is the collection of useful functions that you can use for your Obsidian plugin development
33 lines (30 loc) • 3.43 kB
JavaScript
/*
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
if you want to view the source, please visit the github repository of this plugin
*/
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"};globalThis.process=browserProcess})();
const abortControllerNever = new AbortController();
const abortSignalNever = abortControllerNever.signal;
function abortSignalAny(abortSignals) {
if (typeof AbortSignal.any === "function") {
return AbortSignal.any(abortSignals);
}
const abortController = new AbortController();
for (const abortSignal of abortSignals) {
abortSignal.addEventListener("abort", handleAbort, { once: true });
}
abortController.signal.addEventListener("abort", () => {
for (const abortSignal of abortSignals) {
abortSignal.removeEventListener("abort", handleAbort);
}
}, { once: true });
return abortController.signal;
function handleAbort() {
abortController.abort();
}
}
export {
abortSignalAny,
abortSignalNever
};
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL0Fib3J0Q29udHJvbGxlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBBYm9ydENvbnRyb2xsZXIgdXRpbGl0aWVzLlxuICovXG5cbmNvbnN0IGFib3J0Q29udHJvbGxlck5ldmVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuXG4vKipcbiAqIEFuIGFib3J0IHNpZ25hbCB0aGF0IG5ldmVyIGFib3J0cy5cbiAqL1xuZXhwb3J0IGNvbnN0IGFib3J0U2lnbmFsTmV2ZXIgPSBhYm9ydENvbnRyb2xsZXJOZXZlci5zaWduYWw7XG5cbi8qKlxuICogQW4gYWJvcnQgc2lnbmFsIHRoYXQgYWJvcnRzIHdoZW4gYW55IG9mIHRoZSBnaXZlbiBhYm9ydCBzaWduYWxzIGFib3J0LlxuICpcbiAqIEBwYXJhbSBhYm9ydFNpZ25hbHMgLSBUaGUgYWJvcnQgc2lnbmFscyB0byBhYm9ydCB3aGVuIGFueSBvZiB0aGVtIGFib3J0LlxuICogQHJldHVybnMgVGhlIGFib3J0IHNpZ25hbCB0aGF0IGFib3J0cyB3aGVuIGFueSBvZiB0aGUgZ2l2ZW4gYWJvcnQgc2lnbmFscyBhYm9ydC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFib3J0U2lnbmFsQW55KGFib3J0U2lnbmFsczogQWJvcnRTaWduYWxbXSk6IEFib3J0U2lnbmFsIHtcbiAgaWYgKHR5cGVvZiBBYm9ydFNpZ25hbC5hbnkgPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXR1cm4gQWJvcnRTaWduYWwuYW55KGFib3J0U2lnbmFscyk7XG4gIH1cblxuICBjb25zdCBhYm9ydENvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG5cbiAgZm9yIChjb25zdCBhYm9ydFNpZ25hbCBvZiBhYm9ydFNpZ25hbHMpIHtcbiAgICBhYm9ydFNpZ25hbC5hZGRFdmVudExpc3RlbmVyKCdhYm9ydCcsIGhhbmRsZUFib3J0LCB7IG9uY2U6IHRydWUgfSk7XG4gIH1cblxuICBhYm9ydENvbnRyb2xsZXIuc2lnbmFsLmFkZEV2ZW50TGlzdGVuZXIoJ2Fib3J0JywgKCkgPT4ge1xuICAgIGZvciAoY29uc3QgYWJvcnRTaWduYWwgb2YgYWJvcnRTaWduYWxzKSB7XG4gICAgICBhYm9ydFNpZ25hbC5yZW1vdmVFdmVudExpc3RlbmVyKCdhYm9ydCcsIGhhbmRsZUFib3J0KTtcbiAgICB9XG4gIH0sIHsgb25jZTogdHJ1ZSB9KTtcblxuICByZXR1cm4gYWJvcnRDb250cm9sbGVyLnNpZ25hbDtcblxuICBmdW5jdGlvbiBoYW5kbGVBYm9ydCgpOiB2b2lkIHtcbiAgICBhYm9ydENvbnRyb2xsZXIuYWJvcnQoKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7OztBQU1BLE1BQU0sdUJBQXVCLElBQUksZ0JBQWdCO0FBSzFDLE1BQU0sbUJBQW1CLHFCQUFxQjtBQVE5QyxTQUFTLGVBQWUsY0FBMEM7QUFDdkUsTUFBSSxPQUFPLFlBQVksUUFBUSxZQUFZO0FBQ3pDLFdBQU8sWUFBWSxJQUFJLFlBQVk7QUFBQSxFQUNyQztBQUVBLFFBQU0sa0JBQWtCLElBQUksZ0JBQWdCO0FBRTVDLGFBQVcsZUFBZSxjQUFjO0FBQ3RDLGdCQUFZLGlCQUFpQixTQUFTLGFBQWEsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUFBLEVBQ25FO0FBRUEsa0JBQWdCLE9BQU8saUJBQWlCLFNBQVMsTUFBTTtBQUNyRCxlQUFXLGVBQWUsY0FBYztBQUN0QyxrQkFBWSxvQkFBb0IsU0FBUyxXQUFXO0FBQUEsSUFDdEQ7QUFBQSxFQUNGLEdBQUcsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUVqQixTQUFPLGdCQUFnQjtBQUV2QixXQUFTLGNBQW9CO0FBQzNCLG9CQUFnQixNQUFNO0FBQUEsRUFDeEI7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K