obsidian-dev-utils
Version:
This is the collection of useful functions that you can use for your Obsidian plugin development
168 lines (154 loc) • 9.55 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 format_exports = {};
__export(format_exports, {
format: () => format
});
module.exports = __toCommonJS(format_exports);
var import_Path = require('../Path.cjs');
var import_NodeModules = require('./NodeModules.cjs');
var import_ObsidianDevUtilsRepoPaths = require('./ObsidianDevUtilsRepoPaths.cjs');
var import_Root = require('./Root.cjs');
var __import_meta_url = globalThis["import.meta.url"] ?? (() => {
if (typeof __filename === "string") {
const localRequire = require;
const url = localRequire("node:url");
if (typeof url.pathToFileURL === "function") {
return url.pathToFileURL(__filename).href;
}
}
if (typeof window !== "undefined") {
return window.location.href;
}
return "";
})();
async function format(rewrite = true) {
const rootFolder = (0, import_Root.getRootFolder)();
if (!rootFolder) {
throw new Error("Root folder not found");
}
let dprintJsonPath = (0, import_Root.resolvePathFromRootSafe)(import_ObsidianDevUtilsRepoPaths.ObsidianDevUtilsRepoPaths.DprintJson);
if (!(0, import_NodeModules.existsSync)(dprintJsonPath)) {
const packageFolder = (0, import_Root.getRootFolder)((0, import_Path.getFolderName)(__import_meta_url));
if (!packageFolder) {
throw new Error("Could not find package folder.");
}
dprintJsonPath = (0, import_Root.resolvePathFromRootSafe)((0, import_Path.join)(import_ObsidianDevUtilsRepoPaths.ObsidianDevUtilsRepoPaths.Dist, import_ObsidianDevUtilsRepoPaths.ObsidianDevUtilsRepoPaths.DprintJson), packageFolder);
}
if (!(0, import_NodeModules.existsSync)(dprintJsonPath)) {
throw new Error("dprint.json not found");
}
const command = rewrite ? "fmt" : "check";
await (0, import_Root.execFromRoot)(["npx", "dprint", command, "--config", dprintJsonPath, "**/*"]);
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
format
});
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL1NjcmlwdFV0aWxzL2Zvcm1hdC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsidmFyIF9faW1wb3J0X21ldGFfdXJsID0gZ2xvYmFsVGhpc1snaW1wb3J0Lm1ldGEudXJsJ10gPz8gKCgpID0+IHtcbiAgICAgIGlmICh0eXBlb2YgX19maWxlbmFtZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgY29uc3QgbG9jYWxSZXF1aXJlID0gcmVxdWlyZTtcbiAgICAgICAgY29uc3QgdXJsID0gbG9jYWxSZXF1aXJlKCdub2RlOnVybCcpO1xuICAgICAgICBpZiAodHlwZW9mIHVybC5wYXRoVG9GaWxlVVJMID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgICAgcmV0dXJuIHVybC5wYXRoVG9GaWxlVVJMKF9fZmlsZW5hbWUpLmhyZWY7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIHJldHVybiB3aW5kb3cubG9jYXRpb24uaHJlZjtcbiAgICAgIH1cblxuICAgICAgLy8gRmFsbGJhY2sgdG8gYW4gZW1wdHkgc3RyaW5nIGlmIHRoZSBlbnZpcm9ubWVudCBpcyB1bmtub3duXG4gICAgICByZXR1cm4gJyc7XG4gICAgfSkoKTtcbi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKlxuICogRm9ybWF0IHRoZSBzb3VyY2UgY29kZS5cbiAqL1xuXG5pbXBvcnQge1xuICBnZXRGb2xkZXJOYW1lLFxuICBqb2luXG59IGZyb20gJy4uL1BhdGgudHMnO1xuaW1wb3J0IHsgZXhpc3RzU3luYyB9IGZyb20gJy4vTm9kZU1vZHVsZXMudHMnO1xuaW1wb3J0IHsgT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocyB9IGZyb20gJy4vT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy50cyc7XG5pbXBvcnQge1xuICBleGVjRnJvbVJvb3QsXG4gIGdldFJvb3RGb2xkZXIsXG4gIHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlXG59IGZyb20gJy4vUm9vdC50cyc7XG5cbi8qKlxuICogRm9ybWF0IHRoZSBzb3VyY2UgY29kZS5cbiAqXG4gKiBAcGFyYW0gcmV3cml0ZSAtIFdoZXRoZXIgdG8gcmV3cml0ZSB0aGUgc291cmNlIGNvZGUuXG4gKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIHNvdXJjZSBjb2RlIGhhcyBiZWVuIGZvcm1hdHRlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZvcm1hdChyZXdyaXRlID0gdHJ1ZSk6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCByb290Rm9sZGVyID0gZ2V0Um9vdEZvbGRlcigpO1xuICBpZiAoIXJvb3RGb2xkZXIpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1Jvb3QgZm9sZGVyIG5vdCBmb3VuZCcpO1xuICB9XG4gIGxldCBkcHJpbnRKc29uUGF0aCA9IHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlKE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMuRHByaW50SnNvbik7XG4gIGlmICghZXhpc3RzU3luYyhkcHJpbnRKc29uUGF0aCkpIHtcbiAgICBjb25zdCBwYWNrYWdlRm9sZGVyID0gZ2V0Um9vdEZvbGRlcihnZXRGb2xkZXJOYW1lKGltcG9ydC5tZXRhLnVybCkpO1xuICAgIGlmICghcGFja2FnZUZvbGRlcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDb3VsZCBub3QgZmluZCBwYWNrYWdlIGZvbGRlci4nKTtcbiAgICB9XG4gICAgZHByaW50SnNvblBhdGggPSByZXNvbHZlUGF0aEZyb21Sb290U2FmZShqb2luKE9ic2lkaWFuRGV2VXRpbHNSZXBvUGF0aHMuRGlzdCwgT2JzaWRpYW5EZXZVdGlsc1JlcG9QYXRocy5EcHJpbnRKc29uKSwgcGFja2FnZUZvbGRlcik7XG4gIH1cblxuICBpZiAoIWV4aXN0c1N5bmMoZHByaW50SnNvblBhdGgpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdkcHJpbnQuanNvbiBub3QgZm91bmQnKTtcbiAgfVxuXG4gIGNvbnN0IGNvbW1hbmQgPSByZXdyaXRlID8gJ2ZtdCcgOiAnY2hlY2snO1xuICBhd2FpdCBleGVjRnJvbVJvb3QoWyducHgnLCAnZHByaW50JywgY29tbWFuZCwgJy0tY29uZmlnJywgZHByaW50SnNvblBhdGgsICcqKi8qJ10pO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFzQkEsa0JBR087QUFDUCx5QkFBMkI7QUFDM0IsdUNBQTBDO0FBQzFDLGtCQUlPO0FBaENQLElBQUksb0JBQW9CLFdBQVcsaUJBQWlCLE1BQU0sTUFBTTtBQUMxRCxNQUFJLE9BQU8sZUFBZSxVQUFVO0FBQ2xDLFVBQU0sZUFBZTtBQUNyQixVQUFNLE1BQU0sYUFBYSxVQUFVO0FBQ25DLFFBQUksT0FBTyxJQUFJLGtCQUFrQixZQUFZO0FBQzNDLGFBQU8sSUFBSSxjQUFjLFVBQVUsRUFBRTtBQUFBLElBQ3ZDO0FBQUEsRUFDRjtBQUVBLE1BQUksT0FBTyxXQUFXLGFBQWE7QUFDakMsV0FBTyxPQUFPLFNBQVM7QUFBQSxFQUN6QjtBQUdBLFNBQU87QUFDVCxHQUFHO0FBeUJQLGVBQXNCLE9BQU8sVUFBVSxNQUFxQjtBQUMxRCxRQUFNLGlCQUFhLDJCQUFjO0FBQ2pDLE1BQUksQ0FBQyxZQUFZO0FBQ2YsVUFBTSxJQUFJLE1BQU0sdUJBQXVCO0FBQUEsRUFDekM7QUFDQSxNQUFJLHFCQUFpQixxQ0FBd0IsMkRBQTBCLFVBQVU7QUFDakYsTUFBSSxLQUFDLCtCQUFXLGNBQWMsR0FBRztBQUMvQixVQUFNLG9CQUFnQiwrQkFBYywyQkFBYyxpQkFBZSxDQUFDO0FBQ2xFLFFBQUksQ0FBQyxlQUFlO0FBQ2xCLFlBQU0sSUFBSSxNQUFNLGdDQUFnQztBQUFBLElBQ2xEO0FBQ0EseUJBQWlCLHlDQUF3QixrQkFBSywyREFBMEIsTUFBTSwyREFBMEIsVUFBVSxHQUFHLGFBQWE7QUFBQSxFQUNwSTtBQUVBLE1BQUksS0FBQywrQkFBVyxjQUFjLEdBQUc7QUFDL0IsVUFBTSxJQUFJLE1BQU0sdUJBQXVCO0FBQUEsRUFDekM7QUFFQSxRQUFNLFVBQVUsVUFBVSxRQUFRO0FBQ2xDLFlBQU0sMEJBQWEsQ0FBQyxPQUFPLFVBQVUsU0FBUyxZQUFZLGdCQUFnQixNQUFNLENBQUM7QUFDbkY7IiwKICAibmFtZXMiOiBbXQp9Cg==