obsidian-dev-utils
Version:
This is the collection of useful functions that you can use for your Obsidian plugin development
144 lines (130 loc) • 7.96 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) {
// eslint-disable-next-line no-global-assign, no-implicit-globals -- We need to patch the `require()` function.
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;
}
function extractDefault(module) {
return module && module.__esModule && 'default' in module ? module.default : module;
}
const OBSIDIAN_BUILT_IN_MODULE_NAMES = [
'obsidian',
'@codemirror/autocomplete',
'@codemirror/collab',
'@codemirror/commands',
'@codemirror/language',
'@codemirror/lint',
'@codemirror/search',
'@codemirror/state',
'@codemirror/text',
'@codemirror/view',
'@lezer/common',
'@lezer/lr',
'@lezer/highlight'];
const DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES = [
'@codemirror/closebrackets',
'@codemirror/comment',
'@codemirror/fold',
'@codemirror/gutter',
'@codemirror/highlight',
'@codemirror/history',
'@codemirror/matchbrackets',
'@codemirror/panel',
'@codemirror/rangeset',
'@codemirror/rectangular-selection',
'@codemirror/stream-parser',
'@codemirror/tooltip'];
function requirePatched(id) {
if (OBSIDIAN_BUILT_IN_MODULE_NAMES.includes(id) || DEPRECATED_OBSIDIAN_BUILT_IN_MODULE_NAMES.includes(id)) {
return originalRequire?.(id);
}
// eslint-disable-next-line @typescript-eslint/no-deprecated, @typescript-eslint/no-unnecessary-condition -- We need access to app here which might not be available yet.
if (globalThis?.app?.isMobile) {
if (id === 'process' || id === 'node:process') {
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Fake process object is returned instead.`);
return globalThis.process;
}
} else {
const module = originalRequire?.(id);
if (module) {
return extractDefault(module);
}
}
console.debug(`The most likely you can safely ignore this error. Module not found: ${id}. Empty object is returned instead.`);
return {};
}
})();
;
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 ValueProvider_exports = {};
__export(ValueProvider_exports, {
resolveValue: () => resolveValue
});
module.exports = __toCommonJS(ValueProvider_exports);
var import_AbortController = require('./AbortController.cjs');
async function resolveValue(provider, abortSignal, ...args) {
abortSignal ??= (0, import_AbortController.abortSignalNever)();
abortSignal.throwIfAborted();
if (isFunction(provider)) {
return await provider(abortSignal, ...args);
}
return provider;
}
function isFunction(value) {
return typeof value === "function";
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
resolveValue
});
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL1ZhbHVlUHJvdmlkZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKlxuICogQ29udGFpbnMgdXRpbGl0eSB0eXBlcyBhbmQgZnVuY3Rpb25zIGZvciBoYW5kbGluZyB2YWx1ZSBwcm92aWRlcnMsIHdoaWNoIGNhbiBiZSBlaXRoZXIgZGlyZWN0IHZhbHVlcyBvciBmdW5jdGlvbnMgdGhhdCByZXR1cm4gdmFsdWVzLlxuICovXG5cbmltcG9ydCB0eXBlIHsgUHJvbWlzYWJsZSB9IGZyb20gJ3R5cGUtZmVzdCc7XG5cbmltcG9ydCB7IGFib3J0U2lnbmFsTmV2ZXIgfSBmcm9tICcuL0Fib3J0Q29udHJvbGxlci50cyc7XG5cbi8qKlxuICogVmFsdWUgcHJvdmlkZXIgdGhhdCBjYW4gZWl0aGVyIGJlIGEgZGlyZWN0IHZhbHVlIG9mIHR5cGUge0BsaW5rIFZhbHVlfSBvciBhIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhIHZhbHVlIG9mIHR5cGUge0BsaW5rIFZhbHVlfS5cbiAqXG4gKiBAdHlwZVBhcmFtIFZhbHVlIC0gVGhlIHR5cGUgb2YgdGhlIHZhbHVlIHByb3ZpZGVkLlxuICogQHR5cGVQYXJhbSBBcmdzIC0gVGhlIHR5cGVzIG9mIGFyZ3VtZW50cyBwYXNzZWQgdG8gdGhlIGZ1bmN0aW9uIGlmIHRoZSBwcm92aWRlciBpcyBhIGZ1bmN0aW9uLlxuICovXG5leHBvcnQgdHlwZSBWYWx1ZVByb3ZpZGVyPFZhbHVlLCBBcmdzIGV4dGVuZHMgdW5rbm93bltdID0gW10+ID0gKChhYm9ydFNpZ25hbDogQWJvcnRTaWduYWwsIC4uLmFyZ3M6IEFyZ3MpID0+IFByb21pc2FibGU8VmFsdWU+KSB8IFZhbHVlO1xuXG4vKipcbiAqIFJlc29sdmVzIGEgdmFsdWUgZnJvbSBhIHZhbHVlIHByb3ZpZGVyLCB3aGljaCBjYW4gYmUgZWl0aGVyIGEgZGlyZWN0IHZhbHVlIG9yIGEgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGEgdmFsdWUuXG4gKlxuICogQHR5cGVQYXJhbSBBcmdzIC0gVGhlIHR5cGVzIG9mIGFyZ3VtZW50cyBwYXNzZWQgdG8gdGhlIGZ1bmN0aW9uIGlmIHRoZSBwcm92aWRlciBpcyBhIGZ1bmN0aW9uLlxuICogQHR5cGVQYXJhbSBWYWx1ZSAtIFRoZSB0eXBlIG9mIHRoZSB2YWx1ZSBwcm92aWRlZC5cbiAqIEBwYXJhbSBwcm92aWRlciAtIFRoZSB2YWx1ZSBwcm92aWRlciB0byByZXNvbHZlLlxuICogQHBhcmFtIGFib3J0U2lnbmFsIC0gVGhlIGFib3J0IHNpZ25hbCB0byBjb250cm9sIHRoZSBleGVjdXRpb24gb2YgdGhlIGZ1bmN0aW9uLlxuICogQHBhcmFtIGFyZ3MgLSBUaGUgYXJndW1lbnRzIHRvIHBhc3MgdG8gdGhlIGZ1bmN0aW9uIGlmIHRoZSBwcm92aWRlciBpcyBhIGZ1bmN0aW9uLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aXRoIHRoZSB2YWx1ZSBwcm92aWRlZCBieSB0aGUgdmFsdWUgcHJvdmlkZXIuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZXNvbHZlVmFsdWU8VmFsdWUsIEFyZ3MgZXh0ZW5kcyB1bmtub3duW10+KFxuICBwcm92aWRlcjogVmFsdWVQcm92aWRlcjxWYWx1ZSwgQXJncz4sXG4gIGFib3J0U2lnbmFsPzogQWJvcnRTaWduYWwsXG4gIC4uLmFyZ3M6IEFyZ3Ncbik6IFByb21pc2U8VmFsdWU+IHtcbiAgYWJvcnRTaWduYWwgPz89IGFib3J0U2lnbmFsTmV2ZXIoKTtcbiAgYWJvcnRTaWduYWwudGhyb3dJZkFib3J0ZWQoKTtcbiAgaWYgKGlzRnVuY3Rpb24ocHJvdmlkZXIpKSB7XG4gICAgcmV0dXJuIGF3YWl0IHByb3ZpZGVyKGFib3J0U2lnbmFsLCAuLi5hcmdzKTtcbiAgfVxuICByZXR1cm4gcHJvdmlkZXI7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIGEgZ2l2ZW4gdmFsdWUgcHJvdmlkZXIgaXMgYSBmdW5jdGlvbi5cbiAqXG4gKiBAdHlwZVBhcmFtIFZhbHVlIC0gVGhlIHR5cGUgb2YgdGhlIHZhbHVlIHByb3ZpZGVkLlxuICogQHR5cGVQYXJhbSBBcmdzIC0gVGhlIHR5cGVzIG9mIGFyZ3VtZW50cyBwYXNzZWQgdG8gdGhlIGZ1bmN0aW9uIGlmIHRoZSBwcm92aWRlciBpcyBhIGZ1bmN0aW9uLlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHByb3ZpZGVyIHRvIGNoZWNrLlxuICogQHJldHVybnMgYHRydWVgIGlmIHRoZSB2YWx1ZSBwcm92aWRlciBpcyBhIGZ1bmN0aW9uLCBvdGhlcndpc2UgYGZhbHNlYC5cbiAqL1xuZnVuY3Rpb24gaXNGdW5jdGlvbjxWYWx1ZSwgQXJncyBleHRlbmRzIHVua25vd25bXT4odmFsdWU6IFZhbHVlUHJvdmlkZXI8VmFsdWUsIEFyZ3M+KTogdmFsdWUgaXMgKGFib3J0U2lnbmFsOiBBYm9ydFNpZ25hbCwgLi4uYXJnczogQXJncykgPT4gUHJvbWlzYWJsZTxWYWx1ZT4ge1xuICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRQSw2QkFBaUM7QUFvQmpDLGVBQXNCLGFBQ3BCLFVBQ0EsZ0JBQ0csTUFDYTtBQUNoQixzQkFBZ0IseUNBQWlCO0FBQ2pDLGNBQVksZUFBZTtBQUMzQixNQUFJLFdBQVcsUUFBUSxHQUFHO0FBQ3hCLFdBQU8sTUFBTSxTQUFTLGFBQWEsR0FBRyxJQUFJO0FBQUEsRUFDNUM7QUFDQSxTQUFPO0FBQ1Q7QUFVQSxTQUFTLFdBQTBDLE9BQTRHO0FBQzdKLFNBQU8sT0FBTyxVQUFVO0FBQzFCOyIsCiAgIm5hbWVzIjogW10KfQo=