UNPKG

obsidian-dev-utils

Version:

This is the collection of useful functions that you can use for your Obsidian plugin development

515 lines (514 loc) 16.7 kB
{ "name": "obsidian-dev-utils", "version": "30.5.1", "description": "This is the collection of useful functions that you can use for your Obsidian plugin development", "keywords": [ "obsidian" ], "homepage": "https://github.com/mnaoumov/obsidian-dev-utils#readme", "bugs": { "url": "https://github.com/mnaoumov/obsidian-dev-utils/issues" }, "repository": { "type": "git", "url": "git+https://github.com/mnaoumov/obsidian-dev-utils.git" }, "license": "MIT", "author": "Michael Naumov", "type": "module", "exports": { ".": { "import": { "types": "./dist/lib/esm/index.d.mts", "default": "./dist/lib/esm/index.mjs" }, "require": { "types": "./dist/lib/cjs/index.d.cts", "default": "./dist/lib/cjs/index.cjs" } }, "./*": { "import": { "types": "./dist/lib/esm/*.d.mts", "default": "./dist/lib/esm/*.mjs" }, "require": { "types": "./dist/lib/cjs/*.d.cts", "default": "./dist/lib/cjs/*.cjs" } }, "./@types/*": { "import": { "types": "./dist/lib/esm/@types/*.d.mts" }, "require": { "types": "./dist/lib/cjs/@types/*.d.cts" } }, "./ScriptUtils": { "import": { "types": "./dist/lib/esm/ScriptUtils/index.d.mts", "default": "./dist/lib/esm/ScriptUtils/index.mjs" }, "require": { "types": "./dist/lib/cjs/ScriptUtils/index.d.cts", "default": "./dist/lib/cjs/ScriptUtils/index.cjs" } }, "./ScriptUtils/*": { "import": { "types": "./dist/lib/esm/ScriptUtils/*.d.mts", "default": "./dist/lib/esm/ScriptUtils/*.mjs" }, "require": { "types": "./dist/lib/cjs/ScriptUtils/*.d.cts", "default": "./dist/lib/cjs/ScriptUtils/*.cjs" } }, "./ScriptUtils/ESLint": { "import": { "types": "./dist/lib/esm/ScriptUtils/ESLint/index.d.mts", "default": "./dist/lib/esm/ScriptUtils/ESLint/index.mjs" }, "require": { "types": "./dist/lib/cjs/ScriptUtils/ESLint/index.d.cts", "default": "./dist/lib/cjs/ScriptUtils/ESLint/index.cjs" } }, "./ScriptUtils/ESLint/*": { "import": { "types": "./dist/lib/esm/ScriptUtils/ESLint/*.d.mts", "default": "./dist/lib/esm/ScriptUtils/ESLint/*.mjs" }, "require": { "types": "./dist/lib/cjs/ScriptUtils/ESLint/*.d.cts", "default": "./dist/lib/cjs/ScriptUtils/ESLint/*.cjs" } }, "./ScriptUtils/ESLint/@types/*": { "import": { "types": "./dist/lib/esm/ScriptUtils/ESLint/@types/*.d.mts" }, "require": { "types": "./dist/lib/cjs/ScriptUtils/ESLint/@types/*.d.cts" } }, "./ScriptUtils/esbuild": { "import": { "types": "./dist/lib/esm/ScriptUtils/esbuild/index.d.mts", "default": "./dist/lib/esm/ScriptUtils/esbuild/index.mjs" }, "require": { "types": "./dist/lib/cjs/ScriptUtils/esbuild/index.d.cts", "default": "./dist/lib/cjs/ScriptUtils/esbuild/index.cjs" } }, "./ScriptUtils/esbuild/*": { "import": { "types": "./dist/lib/esm/ScriptUtils/esbuild/*.d.mts", "default": "./dist/lib/esm/ScriptUtils/esbuild/*.mjs" }, "require": { "types": "./dist/lib/cjs/ScriptUtils/esbuild/*.d.cts", "default": "./dist/lib/cjs/ScriptUtils/esbuild/*.cjs" } }, "./Transformers": { "import": { "types": "./dist/lib/esm/Transformers/index.d.mts", "default": "./dist/lib/esm/Transformers/index.mjs" }, "require": { "types": "./dist/lib/cjs/Transformers/index.d.cts", "default": "./dist/lib/cjs/Transformers/index.cjs" } }, "./Transformers/*": { "import": { "types": "./dist/lib/esm/Transformers/*.d.mts", "default": "./dist/lib/esm/Transformers/*.mjs" }, "require": { "types": "./dist/lib/cjs/Transformers/*.d.cts", "default": "./dist/lib/cjs/Transformers/*.cjs" } }, "./codemirror": { "import": { "types": "./dist/lib/esm/codemirror/index.d.mts", "default": "./dist/lib/esm/codemirror/index.mjs" }, "require": { "types": "./dist/lib/cjs/codemirror/index.d.cts", "default": "./dist/lib/cjs/codemirror/index.cjs" } }, "./codemirror/*": { "import": { "types": "./dist/lib/esm/codemirror/*.d.mts", "default": "./dist/lib/esm/codemirror/*.mjs" }, "require": { "types": "./dist/lib/cjs/codemirror/*.d.cts", "default": "./dist/lib/cjs/codemirror/*.cjs" } }, "./obsidian": { "import": { "types": "./dist/lib/esm/obsidian/index.d.mts", "default": "./dist/lib/esm/obsidian/index.mjs" }, "require": { "types": "./dist/lib/cjs/obsidian/index.d.cts", "default": "./dist/lib/cjs/obsidian/index.cjs" } }, "./obsidian/*": { "import": { "types": "./dist/lib/esm/obsidian/*.d.mts", "default": "./dist/lib/esm/obsidian/*.mjs" }, "require": { "types": "./dist/lib/cjs/obsidian/*.d.cts", "default": "./dist/lib/cjs/obsidian/*.cjs" } }, "./obsidian/@types/*": { "import": { "types": "./dist/lib/esm/obsidian/@types/*.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/*.d.cts" } }, "./obsidian/@types/Dataview": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/index.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/index.d.cts" } }, "./obsidian/@types/Dataview/*": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/*.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/*.d.cts" } }, "./obsidian/@types/Dataview/api/*": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/api/*.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/api/*.d.cts" } }, "./obsidian/@types/Dataview/data-import/*": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/data-import/*.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/data-import/*.d.cts" } }, "./obsidian/@types/Dataview/data-import/web-worker/*": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/data-import/web-worker/*.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/data-import/web-worker/*.d.cts" } }, "./obsidian/@types/Dataview/data-index": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/data-index/index.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/data-index/index.d.cts" } }, "./obsidian/@types/Dataview/data-index/*": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/data-index/*.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/data-index/*.d.cts" } }, "./obsidian/@types/Dataview/data-model/*": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/data-model/*.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/data-model/*.d.cts" } }, "./obsidian/@types/Dataview/data-model/serialized/*": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/data-model/serialized/*.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/data-model/serialized/*.d.cts" } }, "./obsidian/@types/Dataview/expression/*": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/expression/*.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/expression/*.d.cts" } }, "./obsidian/@types/Dataview/query/*": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/query/*.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/query/*.d.cts" } }, "./obsidian/@types/Dataview/typings/*": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/typings/*.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/typings/*.d.cts" } }, "./obsidian/@types/Dataview/ui/*": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/ui/*.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/ui/*.d.cts" } }, "./obsidian/@types/Dataview/ui/export/*": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/ui/export/*.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/ui/export/*.d.cts" } }, "./obsidian/@types/Dataview/ui/views/*": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/ui/views/*.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/ui/views/*.d.cts" } }, "./obsidian/@types/Dataview/util/*": { "import": { "types": "./dist/lib/esm/obsidian/@types/Dataview/util/*.d.mts" }, "require": { "types": "./dist/lib/cjs/obsidian/@types/Dataview/util/*.d.cts" } }, "./obsidian/Components": { "import": { "types": "./dist/lib/esm/obsidian/Components/index.d.mts", "default": "./dist/lib/esm/obsidian/Components/index.mjs" }, "require": { "types": "./dist/lib/cjs/obsidian/Components/index.d.cts", "default": "./dist/lib/cjs/obsidian/Components/index.cjs" } }, "./obsidian/Components/*": { "import": { "types": "./dist/lib/esm/obsidian/Components/*.d.mts", "default": "./dist/lib/esm/obsidian/Components/*.mjs" }, "require": { "types": "./dist/lib/cjs/obsidian/Components/*.d.cts", "default": "./dist/lib/cjs/obsidian/Components/*.cjs" } }, "./obsidian/Components/SettingComponents": { "import": { "types": "./dist/lib/esm/obsidian/Components/SettingComponents/index.d.mts", "default": "./dist/lib/esm/obsidian/Components/SettingComponents/index.mjs" }, "require": { "types": "./dist/lib/cjs/obsidian/Components/SettingComponents/index.d.cts", "default": "./dist/lib/cjs/obsidian/Components/SettingComponents/index.cjs" } }, "./obsidian/Components/SettingComponents/*": { "import": { "types": "./dist/lib/esm/obsidian/Components/SettingComponents/*.d.mts", "default": "./dist/lib/esm/obsidian/Components/SettingComponents/*.mjs" }, "require": { "types": "./dist/lib/cjs/obsidian/Components/SettingComponents/*.d.cts", "default": "./dist/lib/cjs/obsidian/Components/SettingComponents/*.cjs" } }, "./obsidian/Modals": { "import": { "types": "./dist/lib/esm/obsidian/Modals/index.d.mts", "default": "./dist/lib/esm/obsidian/Modals/index.mjs" }, "require": { "types": "./dist/lib/cjs/obsidian/Modals/index.d.cts", "default": "./dist/lib/cjs/obsidian/Modals/index.cjs" } }, "./obsidian/Modals/*": { "import": { "types": "./dist/lib/esm/obsidian/Modals/*.d.mts", "default": "./dist/lib/esm/obsidian/Modals/*.mjs" }, "require": { "types": "./dist/lib/cjs/obsidian/Modals/*.d.cts", "default": "./dist/lib/cjs/obsidian/Modals/*.cjs" } }, "./obsidian/Plugin": { "import": { "types": "./dist/lib/esm/obsidian/Plugin/index.d.mts", "default": "./dist/lib/esm/obsidian/Plugin/index.mjs" }, "require": { "types": "./dist/lib/cjs/obsidian/Plugin/index.d.cts", "default": "./dist/lib/cjs/obsidian/Plugin/index.cjs" } }, "./obsidian/Plugin/*": { "import": { "types": "./dist/lib/esm/obsidian/Plugin/*.d.mts", "default": "./dist/lib/esm/obsidian/Plugin/*.mjs" }, "require": { "types": "./dist/lib/cjs/obsidian/Plugin/*.d.cts", "default": "./dist/lib/cjs/obsidian/Plugin/*.cjs" } }, "./obsidian/React": { "import": { "types": "./dist/lib/esm/obsidian/React/index.d.mts", "default": "./dist/lib/esm/obsidian/React/index.mjs" }, "require": { "types": "./dist/lib/cjs/obsidian/React/index.d.cts", "default": "./dist/lib/cjs/obsidian/React/index.cjs" } }, "./obsidian/React/*": { "import": { "types": "./dist/lib/esm/obsidian/React/*.d.mts", "default": "./dist/lib/esm/obsidian/React/*.mjs" }, "require": { "types": "./dist/lib/cjs/obsidian/React/*.d.cts", "default": "./dist/lib/cjs/obsidian/React/*.cjs" } } }, "main": "./dist/lib/cjs/index.cjs", "module": "./dist/lib/esm/index.mjs", "types": "./dist/lib/cjs/index.d.cts", "bin": { "obsidian-dev-utils": "dist/bin/cli.cjs" }, "files": [ "dist/", "!dist/*.tgz", "CHANGELOG.md", "LICENSE", "README.md", "**/package.json" ], "scripts": { "build": "npm-run-all build:clean build:compile:typescript build:generate-index build:types build:lib build:generate-exports build:static build:styles", "build:clean": "tsx scripts/cli.ts build:clean", "build:compile:typescript": "tsx scripts/cli.ts build:compile:typescript", "build:generate-exports": "tsx scripts/build-generate-exports.ts", "build:generate-index": "tsx scripts/build-generate-index.ts", "build:lib": "tsx scripts/build-lib.ts", "build:styles": "sass src/styles/main.scss dist/styles.css --embed-sources --embed-source-map", "build:static": "tsx scripts/cli.ts build:static", "build:types": "tsx scripts/build-types.ts", "format": "tsx scripts/cli.ts format", "format:check": "tsx scripts/cli.ts format:check", "lint": "tsx scripts/cli.ts lint", "lint:fix": "tsx scripts/cli.ts lint:fix", "spellcheck": "tsx scripts/cli.ts spellcheck", "version": "tsx scripts/version.ts" }, "dependencies": { "@eslint/js": "^9.33.0", "@guardian/eslint-plugin-tsdoc-required": "^0.1.3", "@lezer/common": "^1.2.3", "@stylistic/eslint-plugin": "^5.2.3", "@total-typescript/ts-reset": "^0.6.1", "@tsconfig/strictest": "^2.0.5", "@types/babel__core": "^7.20.5", "@types/doctrine": "^0.0.9", "@types/eslint": "^9.6.1", "@types/luxon": "^3.7.1", "@types/node": "^24.2.1", "@types/parsimmon": "^1.10.9", "@types/path-browserify": "^1.0.3", "@types/picomatch": "^4.0.2", "@types/pug": "^2.0.10", "@types/react": "^19.1.9", "@types/shell-quote": "^1.7.5", "@typescript-eslint/eslint-plugin": "^8.39.0", "@typescript-eslint/parser": "^8.39.0", "better-typescript-lib": "^2.11.0", "commander": "^14.0.0", "compare-versions": "^6.1.1", "cspell": "^9.2.0", "debug": "^4.4.1", "dotenv": "^17.2.1", "dprint": "^0.50.1", "enhanced-resolve": "^5.18.3", "esbuild": "^0.25.8", "esbuild-sass-plugin": "^3.3.1", "esbuild-svelte": "^0.9.3", "eslint": "^9.33.0", "eslint-import-resolver-typescript": "^4.4.4", "eslint-plugin-import-x": "^4.16.1", "eslint-plugin-jsdoc": "^52.0.4", "eslint-plugin-modules-newlines": "^0.0.7", "eslint-plugin-perfectionist": "^4.15.0", "eslint-plugin-tsdoc": "^0.4.0", "glob": "^11.0.3", "jiti": "^2.5.1", "localforage": "^1.10.0", "lru-cache": "^11.1.0", "moment": "^2.30.1", "monkey-around": "^3.0.0", "npm-run-all": "^4.1.5", "obsidian": "^1.8.7", "obsidian-typings": "^3.16.0", "path-browserify": "^1.0.1", "postcss": "^8.5.6", "postcss-modules": "^6.0.1", "preact": "^10.27.0", "react": "^19.1.1", "remark": "^15.0.1", "remark-parse": "^11.0.0", "remark-wiki-link": "^2.0.1", "sass": "^1.90.0", "shell-quote": "^1.8.3", "svelte-check": "^4.3.1", "svelte-preprocess": "^6.0.3", "tsx": "^4.20.3", "type-fest": "^4.41.0", "typescript": "^5.9.2", "typescript-eslint": "^8.39.0", "unist-util-visit": "^5.0.0" }, "overrides": { "@antfu/utils": "9.2.0", "dompurify": "3.0.1", "esbuild": "$esbuild" } }