obsidian-dev-utils
Version:
This is the collection of useful functions that you can use for your Obsidian plugin development
117 lines (114 loc) • 13.4 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 initCjs(){const globalThisRecord=globalThis;globalThisRecord["__name"]??=name;const originalRequire=require;if(originalRequire&&!originalRequire.__isPatched){require=Object.assign(id=>requirePatched(id),originalRequire,{__isPatched:true})}const newFuncs={__extractDefault(){return extractDefault},process(){const browserProcess={browser:true,cwd(){return"/"},env:{},platform:"android"};return browserProcess}};for(const key of Object.keys(newFuncs)){globalThisRecord[key]??=newFuncs[key]?.()}function name(obj){return obj}__name(name,"name");function extractDefault(module){return module&&module.__esModule&&"default"in module?module.default:module}__name(extractDefault,"extractDefault");function requirePatched(id){const module=originalRequire?.(id);if(module){return extractDefault(module)}if(id==="process"||id==="node:process"){console.error(`Module not found: ${id}. Fake process object is returned instead.`);return globalThis.process}console.error(`Module not found: ${id}. Empty object is returned instead.`);return{}}__name(requirePatched,"requirePatched")})();
;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var AbortController_exports = {};
__export(AbortController_exports, {
INFINITE_TIMEOUT: () => INFINITE_TIMEOUT,
abortSignalAny: () => abortSignalAny,
abortSignalNever: () => abortSignalNever,
abortSignalTimeout: () => abortSignalTimeout,
onAbort: () => onAbort,
waitForAbort: () => waitForAbort
});
module.exports = __toCommonJS(AbortController_exports);
var import_Function = require('./Function.cjs');
const INFINITE_TIMEOUT = Number.POSITIVE_INFINITY;
function abortSignalAny(...maybeAbortSignals) {
const abortSignals = maybeAbortSignals.filter((abortSignal) => !!abortSignal);
if (typeof AbortSignal.any === "function") {
return AbortSignal.any(abortSignals);
}
if (abortSignals.length === 0) {
return abortSignalNever();
}
if (abortSignals.length === 1 && abortSignals[0]) {
return abortSignals[0];
}
const abortController = new AbortController();
for (const abortSignal of abortSignals) {
if (abortSignal.aborted) {
return abortSignal;
}
}
const abortHandlerRemovers = [];
for (const abortSignal of abortSignals) {
abortHandlerRemovers.push(onAbort(abortSignal, handleAbort));
}
return abortController.signal;
function handleAbort(abortSignal) {
for (const abortHandlerRemover of abortHandlerRemovers) {
abortHandlerRemover();
}
abortController.abort(abortSignal.reason);
}
}
function abortSignalNever() {
return new AbortController().signal;
}
function abortSignalTimeout(timeoutInMilliseconds) {
if (timeoutInMilliseconds === INFINITE_TIMEOUT) {
return abortSignalNever();
}
if (typeof AbortSignal.timeout === "function") {
return AbortSignal.timeout(timeoutInMilliseconds);
}
const abortController = new AbortController();
window.setTimeout(() => {
abortController.abort(new Error(`Timed out in ${String(timeoutInMilliseconds)} milliseconds`));
}, timeoutInMilliseconds);
return abortController.signal;
}
function onAbort(abortSignal, callback) {
if (abortSignal.aborted) {
callback(abortSignal);
return import_Function.noop;
}
abortSignal.addEventListener("abort", wrappedCallback, { once: true });
return () => {
abortSignal.removeEventListener("abort", wrappedCallback);
};
function wrappedCallback(evt) {
callback(evt.target);
}
}
function waitForAbort(abortSignal, shouldRejectOnAbort) {
return new Promise((resolve, reject) => {
onAbort(abortSignal, () => {
if (shouldRejectOnAbort) {
reject(abortSignal.reason);
} else {
resolve(abortSignal.reason);
}
});
});
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
INFINITE_TIMEOUT,
abortSignalAny,
abortSignalNever,
abortSignalTimeout,
onAbort,
waitForAbort
});
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL0Fib3J0Q29udHJvbGxlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBBYm9ydENvbnRyb2xsZXIgdXRpbGl0aWVzLlxuICovXG5cbmltcG9ydCB7IG5vb3AgfSBmcm9tICcuL0Z1bmN0aW9uLnRzJztcblxuLyoqXG4gKiBBIGNvbnN0YW50IHJlcHJlc2VudGluZyBhbiBpbmZpbml0ZSB0aW1lb3V0LlxuICovXG5leHBvcnQgY29uc3QgSU5GSU5JVEVfVElNRU9VVCA9IE51bWJlci5QT1NJVElWRV9JTkZJTklUWTtcblxuLyoqXG4gKiBBbiBhYm9ydCBzaWduYWwgdGhhdCBhYm9ydHMgd2hlbiBhbnkgb2YgdGhlIGdpdmVuIGFib3J0IHNpZ25hbHMgYWJvcnQuXG4gKlxuICogQHBhcmFtIG1heWJlQWJvcnRTaWduYWxzIC0gVGhlIGFib3J0IHNpZ25hbHMgdG8gYWJvcnQgd2hlbiBhbnkgb2YgdGhlbSBhYm9ydC5cbiAqIEByZXR1cm5zIFRoZSBhYm9ydCBzaWduYWwgdGhhdCBhYm9ydHMgd2hlbiBhbnkgb2YgdGhlIGdpdmVuIGFib3J0IHNpZ25hbHMgYWJvcnQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhYm9ydFNpZ25hbEFueSguLi5tYXliZUFib3J0U2lnbmFsczogKEFib3J0U2lnbmFsIHwgdW5kZWZpbmVkKVtdKTogQWJvcnRTaWduYWwge1xuICBjb25zdCBhYm9ydFNpZ25hbHMgPSBtYXliZUFib3J0U2lnbmFscy5maWx0ZXIoKGFib3J0U2lnbmFsKSA9PiAhIWFib3J0U2lnbmFsKTtcblxuICBpZiAodHlwZW9mIEFib3J0U2lnbmFsLmFueSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgIHJldHVybiBBYm9ydFNpZ25hbC5hbnkoYWJvcnRTaWduYWxzKTtcbiAgfVxuXG4gIGlmIChhYm9ydFNpZ25hbHMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIGFib3J0U2lnbmFsTmV2ZXIoKTtcbiAgfVxuXG4gIGlmIChhYm9ydFNpZ25hbHMubGVuZ3RoID09PSAxICYmIGFib3J0U2lnbmFsc1swXSkge1xuICAgIHJldHVybiBhYm9ydFNpZ25hbHNbMF07XG4gIH1cblxuICBjb25zdCBhYm9ydENvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKCk7XG5cbiAgZm9yIChjb25zdCBhYm9ydFNpZ25hbCBvZiBhYm9ydFNpZ25hbHMpIHtcbiAgICBpZiAoYWJvcnRTaWduYWwuYWJvcnRlZCkge1xuICAgICAgcmV0dXJuIGFib3J0U2lnbmFsO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGFib3J0SGFuZGxlclJlbW92ZXJzOiAoKCkgPT4gdm9pZClbXSA9IFtdO1xuXG4gIGZvciAoY29uc3QgYWJvcnRTaWduYWwgb2YgYWJvcnRTaWduYWxzKSB7XG4gICAgYWJvcnRIYW5kbGVyUmVtb3ZlcnMucHVzaChvbkFib3J0KGFib3J0U2lnbmFsLCBoYW5kbGVBYm9ydCkpO1xuICB9XG5cbiAgcmV0dXJuIGFib3J0Q29udHJvbGxlci5zaWduYWw7XG5cbiAgZnVuY3Rpb24gaGFuZGxlQWJvcnQoYWJvcnRTaWduYWw6IEFib3J0U2lnbmFsKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBhYm9ydEhhbmRsZXJSZW1vdmVyIG9mIGFib3J0SGFuZGxlclJlbW92ZXJzKSB7XG4gICAgICBhYm9ydEhhbmRsZXJSZW1vdmVyKCk7XG4gICAgfVxuXG4gICAgYWJvcnRDb250cm9sbGVyLmFib3J0KGFib3J0U2lnbmFsLnJlYXNvbik7XG4gIH1cbn1cblxuLyoqXG4gKiBBbiBhYm9ydCBzaWduYWwgdGhhdCBuZXZlciBhYm9ydHMuXG4gKlxuICogQHJldHVybnMgVGhlIGFib3J0IHNpZ25hbCB0aGF0IG5ldmVyIGFib3J0cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFib3J0U2lnbmFsTmV2ZXIoKTogQWJvcnRTaWduYWwge1xuICByZXR1cm4gbmV3IEFib3J0Q29udHJvbGxlcigpLnNpZ25hbDtcbn1cblxuLyoqXG4gKiBBbiBhYm9ydCBzaWduYWwgdGhhdCBhYm9ydHMgYWZ0ZXIgYSB0aW1lb3V0LlxuICpcbiAqIEBwYXJhbSB0aW1lb3V0SW5NaWxsaXNlY29uZHMgLSBUaGUgdGltZW91dCBpbiBtaWxsaXNlY29uZHMuXG4gKiBAcmV0dXJucyBUaGUgYWJvcnQgc2lnbmFsIHRoYXQgYWJvcnRzIGFmdGVyIGEgdGltZW91dC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFib3J0U2lnbmFsVGltZW91dCh0aW1lb3V0SW5NaWxsaXNlY29uZHM6IG51bWJlcik6IEFib3J0U2lnbmFsIHtcbiAgaWYgKHRpbWVvdXRJbk1pbGxpc2Vjb25kcyA9PT0gSU5GSU5JVEVfVElNRU9VVCkge1xuICAgIHJldHVybiBhYm9ydFNpZ25hbE5ldmVyKCk7XG4gIH1cblxuICBpZiAodHlwZW9mIEFib3J0U2lnbmFsLnRpbWVvdXQgPT09ICdmdW5jdGlvbicpIHtcbiAgICByZXR1cm4gQWJvcnRTaWduYWwudGltZW91dCh0aW1lb3V0SW5NaWxsaXNlY29uZHMpO1xuICB9XG5cbiAgY29uc3QgYWJvcnRDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgYWJvcnRDb250cm9sbGVyLmFib3J0KG5ldyBFcnJvcihgVGltZWQgb3V0IGluICR7U3RyaW5nKHRpbWVvdXRJbk1pbGxpc2Vjb25kcyl9IG1pbGxpc2Vjb25kc2ApKTtcbiAgfSwgdGltZW91dEluTWlsbGlzZWNvbmRzKTtcbiAgcmV0dXJuIGFib3J0Q29udHJvbGxlci5zaWduYWw7XG59XG5cbi8qKlxuICogQWRkcyBhbiBhYm9ydCBsaXN0ZW5lciB0byBhbiBhYm9ydCBzaWduYWwgYW5kIGNhbGxzIHRoZSBjYWxsYmFjayBpZiB0aGUgYWJvcnQgc2lnbmFsIGlzIGFscmVhZHkgYWJvcnRlZC5cbiAqXG4gKiBAcGFyYW0gYWJvcnRTaWduYWwgLSBUaGUgYWJvcnQgc2lnbmFsIHRvIGFkZCB0aGUgbGlzdGVuZXIgdG8uXG4gKiBAcGFyYW0gY2FsbGJhY2sgLSBUaGUgY2FsbGJhY2sgdG8gY2FsbCB3aGVuIHRoZSBhYm9ydCBzaWduYWwgYWJvcnRzLlxuICogQHJldHVybnMgQSBmdW5jdGlvbiB0byByZW1vdmUgdGhlIGFib3J0IGxpc3RlbmVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gb25BYm9ydChhYm9ydFNpZ25hbDogQWJvcnRTaWduYWwsIGNhbGxiYWNrOiAoYWJvcnRTaWduYWw6IEFib3J0U2lnbmFsKSA9PiB2b2lkKTogKCkgPT4gdm9pZCB7XG4gIGlmIChhYm9ydFNpZ25hbC5hYm9ydGVkKSB7XG4gICAgY2FsbGJhY2soYWJvcnRTaWduYWwpO1xuICAgIHJldHVybiBub29wO1xuICB9XG5cbiAgYWJvcnRTaWduYWwuYWRkRXZlbnRMaXN0ZW5lcignYWJvcnQnLCB3cmFwcGVkQ2FsbGJhY2ssIHsgb25jZTogdHJ1ZSB9KTtcbiAgcmV0dXJuICgpID0+IHtcbiAgICBhYm9ydFNpZ25hbC5yZW1vdmVFdmVudExpc3RlbmVyKCdhYm9ydCcsIHdyYXBwZWRDYWxsYmFjayk7XG4gIH07XG5cbiAgZnVuY3Rpb24gd3JhcHBlZENhbGxiYWNrKGV2dDogRXZlbnQpOiB2b2lkIHtcbiAgICBjYWxsYmFjayhldnQudGFyZ2V0IGFzIEFib3J0U2lnbmFsKTtcbiAgfVxufVxuXG4vKipcbiAqIFdhaXRzIGZvciBhbiBhYm9ydCBzaWduYWwgdG8gYWJvcnQgYW5kIHJlc29sdmVzIHdpdGggaXRzIHJlYXNvbi5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBFeHBlY3RlZCB0eXBlIG9mIGBhYm9ydFNpZ25hbC5yZWFzb25gLlxuICogQHBhcmFtIGFib3J0U2lnbmFsIC0gVGhlIGFib3J0IHNpZ25hbCB0byB3YWl0IGZvci5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgd2l0aCB0aGUgcmVhc29uIG9mIHRoZSBhYm9ydCBzaWduYWwuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB3YWl0Rm9yQWJvcnQ8VCA9IHVua25vd24+KGFib3J0U2lnbmFsOiBBYm9ydFNpZ25hbCk6IFByb21pc2U8VD47XG5cbi8qKlxuICogV2FpdHMgZm9yIGFuIGFib3J0IHNpZ25hbCB0byBhYm9ydCBhbmQgcmVqZWN0cyB3aXRoIGl0cyByZWFzb24uXG4gKlxuICogQHBhcmFtIGFib3J0U2lnbmFsIC0gVGhlIGFib3J0IHNpZ25hbCB0byB3YWl0IGZvci5cbiAqIEBwYXJhbSBzaG91bGRSZWplY3RPbkFib3J0IC0gV2hldGhlciB0byByZWplY3QgdGhlIHByb21pc2UgaWYgdGhlIGFib3J0IHNpZ25hbCBpcyBhYm9ydGVkLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZWplY3RzIHdpdGggdGhlIHJlYXNvbiBvZiB0aGUgYWJvcnQgc2lnbmFsLlxuICovXG5leHBvcnQgZnVuY3Rpb24gd2FpdEZvckFib3J0KGFib3J0U2lnbmFsOiBBYm9ydFNpZ25hbCwgc2hvdWxkUmVqZWN0T25BYm9ydDogdHJ1ZSk6IFByb21pc2U8bmV2ZXI+O1xuXG4vKipcbiAqIFdhaXRzIGZvciBhbiBhYm9ydCBzaWduYWwgdG8gYWJvcnQgYW5kIHJlc29sdmVzIHdpdGggaXRzIHJlYXNvbi5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBFeHBlY3RlZCB0eXBlIG9mIGBhYm9ydFNpZ25hbC5yZWFzb25gLlxuICogQHBhcmFtIGFib3J0U2lnbmFsIC0gVGhlIGFib3J0IHNpZ25hbCB0byB3YWl0IGZvci5cbiAqIEBwYXJhbSBzaG91bGRSZWplY3RPbkFib3J0IC0gV2hldGhlciB0byByZWplY3QgdGhlIHByb21pc2UgaWYgdGhlIGFib3J0IHNpZ25hbCBpcyBhYm9ydGVkLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aXRoIHRoZSByZWFzb24gb2YgdGhlIGFib3J0IHNpZ25hbC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdhaXRGb3JBYm9ydDxUID0gdW5rbm93bj4oYWJvcnRTaWduYWw6IEFib3J0U2lnbmFsLCBzaG91bGRSZWplY3RPbkFib3J0PzogYm9vbGVhbik6IFByb21pc2U8VD4ge1xuICByZXR1cm4gbmV3IFByb21pc2U8VD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIG9uQWJvcnQoYWJvcnRTaWduYWwsICgpID0+IHtcbiAgICAgIGlmIChzaG91bGRSZWplY3RPbkFib3J0KSB7XG4gICAgICAgIHJlamVjdChhYm9ydFNpZ25hbC5yZWFzb24gYXMgRXJyb3IpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzb2x2ZShhYm9ydFNpZ25hbC5yZWFzb24gYXMgVCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUEsc0JBQXFCO0FBS2QsTUFBTSxtQkFBbUIsT0FBTztBQVFoQyxTQUFTLGtCQUFrQixtQkFBNkQ7QUFDN0YsUUFBTSxlQUFlLGtCQUFrQixPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxXQUFXO0FBRTVFLE1BQUksT0FBTyxZQUFZLFFBQVEsWUFBWTtBQUN6QyxXQUFPLFlBQVksSUFBSSxZQUFZO0FBQUEsRUFDckM7QUFFQSxNQUFJLGFBQWEsV0FBVyxHQUFHO0FBQzdCLFdBQU8saUJBQWlCO0FBQUEsRUFDMUI7QUFFQSxNQUFJLGFBQWEsV0FBVyxLQUFLLGFBQWEsQ0FBQyxHQUFHO0FBQ2hELFdBQU8sYUFBYSxDQUFDO0FBQUEsRUFDdkI7QUFFQSxRQUFNLGtCQUFrQixJQUFJLGdCQUFnQjtBQUU1QyxhQUFXLGVBQWUsY0FBYztBQUN0QyxRQUFJLFlBQVksU0FBUztBQUN2QixhQUFPO0FBQUEsSUFDVDtBQUFBLEVBQ0Y7QUFFQSxRQUFNLHVCQUF1QyxDQUFDO0FBRTlDLGFBQVcsZUFBZSxjQUFjO0FBQ3RDLHlCQUFxQixLQUFLLFFBQVEsYUFBYSxXQUFXLENBQUM7QUFBQSxFQUM3RDtBQUVBLFNBQU8sZ0JBQWdCO0FBRXZCLFdBQVMsWUFBWSxhQUFnQztBQUNuRCxlQUFXLHVCQUF1QixzQkFBc0I7QUFDdEQsMEJBQW9CO0FBQUEsSUFDdEI7QUFFQSxvQkFBZ0IsTUFBTSxZQUFZLE1BQU07QUFBQSxFQUMxQztBQUNGO0FBT08sU0FBUyxtQkFBZ0M7QUFDOUMsU0FBTyxJQUFJLGdCQUFnQixFQUFFO0FBQy9CO0FBUU8sU0FBUyxtQkFBbUIsdUJBQTRDO0FBQzdFLE1BQUksMEJBQTBCLGtCQUFrQjtBQUM5QyxXQUFPLGlCQUFpQjtBQUFBLEVBQzFCO0FBRUEsTUFBSSxPQUFPLFlBQVksWUFBWSxZQUFZO0FBQzdDLFdBQU8sWUFBWSxRQUFRLHFCQUFxQjtBQUFBLEVBQ2xEO0FBRUEsUUFBTSxrQkFBa0IsSUFBSSxnQkFBZ0I7QUFDNUMsU0FBTyxXQUFXLE1BQU07QUFDdEIsb0JBQWdCLE1BQU0sSUFBSSxNQUFNLGdCQUFnQixPQUFPLHFCQUFxQixDQUFDLGVBQWUsQ0FBQztBQUFBLEVBQy9GLEdBQUcscUJBQXFCO0FBQ3hCLFNBQU8sZ0JBQWdCO0FBQ3pCO0FBU08sU0FBUyxRQUFRLGFBQTBCLFVBQTBEO0FBQzFHLE1BQUksWUFBWSxTQUFTO0FBQ3ZCLGFBQVMsV0FBVztBQUNwQixXQUFPO0FBQUEsRUFDVDtBQUVBLGNBQVksaUJBQWlCLFNBQVMsaUJBQWlCLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFDckUsU0FBTyxNQUFNO0FBQ1gsZ0JBQVksb0JBQW9CLFNBQVMsZUFBZTtBQUFBLEVBQzFEO0FBRUEsV0FBUyxnQkFBZ0IsS0FBa0I7QUFDekMsYUFBUyxJQUFJLE1BQXFCO0FBQUEsRUFDcEM7QUFDRjtBQTRCTyxTQUFTLGFBQTBCLGFBQTBCLHFCQUEyQztBQUM3RyxTQUFPLElBQUksUUFBVyxDQUFDLFNBQVMsV0FBVztBQUN6QyxZQUFRLGFBQWEsTUFBTTtBQUN6QixVQUFJLHFCQUFxQjtBQUN2QixlQUFPLFlBQVksTUFBZTtBQUFBLE1BQ3BDLE9BQU87QUFDTCxnQkFBUSxZQUFZLE1BQVc7QUFBQSxNQUNqQztBQUFBLElBQ0YsQ0FBQztBQUFBLEVBQ0gsQ0FBQztBQUNIOyIsCiAgIm5hbWVzIjogW10KfQo=