@mnaoumov/obsidian-dev-toolkit 0.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +15 -1
- package/bundlers/esbuild/package.json +6 -0
- package/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin/package.json +6 -0
- package/bundlers/esbuild-impl/dependency/package.json +6 -0
- package/bundlers/esbuild-impl/fix-source-maps-plugin/package.json +6 -0
- package/bundlers/esbuild-impl/index/package.json +6 -0
- package/bundlers/esbuild-impl/obsidian-plugin-builder/package.json +6 -0
- package/bundlers/esbuild-impl/package.json +6 -0
- package/bundlers/esbuild-impl/preprocess-plugin/package.json +6 -0
- package/bundlers/esbuild-impl/rename-css-plugin/package.json +6 -0
- package/bundlers/index/package.json +6 -0
- package/bundlers/package.json +6 -0
- package/dist/demo-vault-helper/main.js +1264 -0
- package/dist/demo-vault-helper/manifest.json +9 -0
- package/dist/integration-test-plugin/main.js +54167 -0
- package/dist/integration-test-plugin/manifest.json +8 -0
- package/dist/lib/cjs/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.cjs +322 -0
- package/dist/lib/cjs/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.d.cts +38 -0
- package/dist/lib/cjs/bundlers/esbuild-impl/dependency.cjs +240 -0
- package/dist/lib/cjs/bundlers/esbuild-impl/dependency.d.cts +20 -0
- package/dist/lib/cjs/bundlers/esbuild-impl/fix-source-maps-plugin.cjs +213 -0
- package/dist/lib/cjs/bundlers/esbuild-impl/fix-source-maps-plugin.d.cts +34 -0
- package/dist/lib/cjs/bundlers/esbuild-impl/index.cjs +179 -0
- package/dist/lib/cjs/bundlers/esbuild-impl/index.d.cts +7 -0
- package/dist/lib/cjs/bundlers/esbuild-impl/obsidian-plugin-builder.cjs +362 -0
- package/dist/lib/cjs/bundlers/esbuild-impl/obsidian-plugin-builder.d.cts +98 -0
- package/dist/lib/cjs/bundlers/esbuild-impl/preprocess-plugin.cjs +234 -0
- package/dist/lib/cjs/bundlers/esbuild-impl/preprocess-plugin.d.cts +30 -0
- package/dist/lib/cjs/bundlers/esbuild-impl/rename-css-plugin.cjs +171 -0
- package/dist/lib/cjs/bundlers/esbuild-impl/rename-css-plugin.d.cts +14 -0
- package/dist/lib/cjs/bundlers/esbuild.cjs +164 -0
- package/dist/lib/cjs/bundlers/esbuild.d.cts +11 -0
- package/dist/lib/cjs/bundlers/index.cjs +167 -0
- package/dist/lib/cjs/bundlers/index.d.cts +3 -0
- package/dist/lib/cjs/demo-vault-app-json.cjs +186 -0
- package/dist/lib/cjs/demo-vault-app-json.d.cts +93 -0
- package/dist/lib/cjs/demo-vault-buttons.cjs +567 -0
- package/dist/lib/cjs/demo-vault-buttons.d.cts +259 -0
- package/dist/lib/cjs/demo-vault-coverage.cjs +713 -0
- package/dist/lib/cjs/demo-vault-coverage.d.cts +533 -0
- package/dist/lib/cjs/demo-vault.cjs +296 -0
- package/dist/lib/cjs/demo-vault.d.cts +33 -0
- package/dist/lib/cjs/formatters/dprint.cjs +160 -0
- package/dist/lib/cjs/formatters/dprint.d.cts +15 -0
- package/dist/lib/cjs/formatters/index.cjs +164 -0
- package/dist/lib/cjs/formatters/index.d.cts +2 -0
- package/dist/lib/cjs/index.cjs +194 -0
- package/dist/lib/cjs/index.d.cts +16 -0
- package/dist/lib/cjs/integration-test-setup.cjs +129 -0
- package/dist/lib/cjs/integration-test-setup.d.cts +33 -0
- package/dist/lib/cjs/integration-test-vitest-global-setup.cjs +163 -0
- package/dist/lib/cjs/integration-test-vitest-global-setup.d.cts +39 -0
- package/dist/lib/cjs/jest-setup.cjs +134 -0
- package/dist/lib/cjs/jest-setup.d.cts +13 -0
- package/dist/lib/cjs/linters/eslint-config.cjs +403 -0
- package/dist/lib/cjs/linters/eslint-config.d.cts +25 -0
- package/dist/lib/cjs/linters/eslint-rules/index.cjs +200 -0
- package/dist/lib/cjs/linters/eslint-rules/index.d.cts +14 -0
- package/dist/lib/cjs/linters/eslint-rules/manifest-description.cjs +255 -0
- package/dist/lib/cjs/linters/eslint-rules/manifest-description.d.cts +54 -0
- package/dist/lib/cjs/linters/eslint-rules/manifest-helpers.cjs +218 -0
- package/dist/lib/cjs/linters/eslint-rules/manifest-helpers.d.cts +141 -0
- package/dist/lib/cjs/linters/eslint-rules/manifest-id.cjs +215 -0
- package/dist/lib/cjs/linters/eslint-rules/manifest-id.d.cts +32 -0
- package/dist/lib/cjs/linters/eslint-rules/manifest-name.cjs +216 -0
- package/dist/lib/cjs/linters/eslint-rules/manifest-name.d.cts +30 -0
- package/dist/lib/cjs/linters/eslint-rules/manifest-schema.cjs +316 -0
- package/dist/lib/cjs/linters/eslint-rules/manifest-schema.d.cts +45 -0
- package/dist/lib/cjs/linters/eslint-rules/no-local-obsidian-internals.cjs +259 -0
- package/dist/lib/cjs/linters/eslint-rules/no-local-obsidian-internals.d.cts +10 -0
- package/dist/lib/cjs/linters/eslint-rules/no-over-cap-wait-in-eval-in-obsidian.cjs +657 -0
- package/dist/lib/cjs/linters/eslint-rules/no-over-cap-wait-in-eval-in-obsidian.d.cts +10 -0
- package/dist/lib/cjs/linters/eslint-rules/no-untrusted-input-events.cjs +247 -0
- package/dist/lib/cjs/linters/eslint-rules/no-untrusted-input-events.d.cts +10 -0
- package/dist/lib/cjs/linters/eslint-rules/obsidian-dev-utils-plugin.cjs +181 -0
- package/dist/lib/cjs/linters/eslint-rules/obsidian-dev-utils-plugin.d.cts +13 -0
- package/dist/lib/cjs/linters/eslint-rules/plugin-name-as-code-in-ui.cjs +263 -0
- package/dist/lib/cjs/linters/eslint-rules/plugin-name-as-code-in-ui.d.cts +30 -0
- package/dist/lib/cjs/linters/eslint-rules/plugin-name-as-code.cjs +215 -0
- package/dist/lib/cjs/linters/eslint-rules/plugin-name-as-code.d.cts +29 -0
- package/dist/lib/cjs/linters/eslint-rules/require-component-suffix.cjs +278 -0
- package/dist/lib/cjs/linters/eslint-rules/require-component-suffix.d.cts +18 -0
- package/dist/lib/cjs/linters/eslint-rules/require-plugin-api-contract-schemas.cjs +306 -0
- package/dist/lib/cjs/linters/eslint-rules/require-plugin-api-contract-schemas.d.cts +10 -0
- package/dist/lib/cjs/linters/eslint.cjs +160 -0
- package/dist/lib/cjs/linters/eslint.d.cts +15 -0
- package/dist/lib/cjs/linters/index.cjs +185 -0
- package/dist/lib/cjs/linters/index.d.cts +9 -0
- package/dist/lib/cjs/linters/markdownlint-cli2-config.cjs +171 -0
- package/dist/lib/cjs/linters/markdownlint-cli2-config.d.cts +12 -0
- package/dist/lib/cjs/linters/markdownlint-rules/index.cjs +164 -0
- package/dist/lib/cjs/linters/markdownlint-rules/index.d.cts +2 -0
- package/dist/lib/cjs/linters/markdownlint-rules/plugin-name-as-code.cjs +246 -0
- package/dist/lib/cjs/linters/markdownlint-rules/plugin-name-as-code.d.cts +32 -0
- package/dist/lib/cjs/linters/markdownlint.cjs +160 -0
- package/dist/lib/cjs/linters/markdownlint.d.cts +15 -0
- package/dist/lib/cjs/linters/obsidianmd-rule-custom-message.cjs +176 -0
- package/dist/lib/cjs/linters/obsidianmd-rule-custom-message.d.cts +40 -0
- package/dist/lib/cjs/linters/plugin-names.cjs +249 -0
- package/dist/lib/cjs/linters/plugin-names.d.cts +81 -0
- package/dist/lib/cjs/obsidian-plugin-repo-paths.cjs +216 -0
- package/dist/lib/cjs/obsidian-plugin-repo-paths.d.cts +253 -0
- package/dist/lib/cjs/setup.cjs +163 -0
- package/dist/lib/cjs/setup.d.cts +21 -0
- package/dist/lib/cjs/templates.cjs +172 -0
- package/dist/lib/cjs/templates.d.cts +13 -0
- package/dist/lib/cjs/test-runners/index.cjs +170 -0
- package/dist/lib/cjs/test-runners/index.d.cts +4 -0
- package/dist/lib/cjs/test-runners/integration-test-plugin.cjs +211 -0
- package/dist/lib/cjs/test-runners/integration-test-plugin.d.cts +44 -0
- package/dist/lib/cjs/test-runners/performance-eval-cap.cjs +157 -0
- package/dist/lib/cjs/test-runners/performance-eval-cap.d.cts +27 -0
- package/dist/lib/cjs/test-runners/stale-build-global-setup.cjs +217 -0
- package/dist/lib/cjs/test-runners/stale-build-global-setup.d.cts +86 -0
- package/dist/lib/cjs/test-runners/vitest-config.cjs +484 -0
- package/dist/lib/cjs/test-runners/vitest-config.d.cts +200 -0
- package/dist/lib/cjs/version.cjs +262 -0
- package/dist/lib/cjs/version.d.cts +92 -0
- package/dist/lib/cjs/vitest-setup.cjs +134 -0
- package/dist/lib/cjs/vitest-setup.d.cts +11 -0
- package/dist/lib/esm/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.d.mts +38 -0
- package/dist/lib/esm/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.mjs +218 -0
- package/dist/lib/esm/bundlers/esbuild-impl/dependency.d.mts +20 -0
- package/dist/lib/esm/bundlers/esbuild-impl/dependency.mjs +130 -0
- package/dist/lib/esm/bundlers/esbuild-impl/fix-source-maps-plugin.d.mts +34 -0
- package/dist/lib/esm/bundlers/esbuild-impl/fix-source-maps-plugin.mjs +108 -0
- package/dist/lib/esm/bundlers/esbuild-impl/index.d.mts +7 -0
- package/dist/lib/esm/bundlers/esbuild-impl/index.mjs +56 -0
- package/dist/lib/esm/bundlers/esbuild-impl/obsidian-plugin-builder.d.mts +98 -0
- package/dist/lib/esm/bundlers/esbuild-impl/obsidian-plugin-builder.mjs +247 -0
- package/dist/lib/esm/bundlers/esbuild-impl/preprocess-plugin.d.mts +30 -0
- package/dist/lib/esm/bundlers/esbuild-impl/preprocess-plugin.mjs +126 -0
- package/dist/lib/esm/bundlers/esbuild-impl/rename-css-plugin.d.mts +14 -0
- package/dist/lib/esm/bundlers/esbuild-impl/rename-css-plugin.mjs +63 -0
- package/dist/lib/esm/bundlers/esbuild.d.mts +11 -0
- package/dist/lib/esm/bundlers/esbuild.mjs +58 -0
- package/dist/lib/esm/bundlers/index.d.mts +3 -0
- package/dist/lib/esm/bundlers/index.mjs +48 -0
- package/dist/lib/esm/demo-vault-app-json.d.mts +93 -0
- package/dist/lib/esm/demo-vault-app-json.mjs +75 -0
- package/dist/lib/esm/demo-vault-buttons.d.mts +259 -0
- package/dist/lib/esm/demo-vault-buttons.mjs +452 -0
- package/dist/lib/esm/demo-vault-coverage.d.mts +533 -0
- package/dist/lib/esm/demo-vault-coverage.mjs +619 -0
- package/dist/lib/esm/demo-vault.d.mts +33 -0
- package/dist/lib/esm/demo-vault.mjs +197 -0
- package/dist/lib/esm/formatters/dprint.d.mts +15 -0
- package/dist/lib/esm/formatters/dprint.mjs +52 -0
- package/dist/lib/esm/formatters/index.d.mts +2 -0
- package/dist/lib/esm/formatters/index.mjs +46 -0
- package/dist/lib/esm/index.d.mts +16 -0
- package/dist/lib/esm/index.mjs +66 -0
- package/dist/lib/esm/integration-test-setup.d.mts +33 -0
- package/dist/lib/esm/integration-test-setup.mjs +44 -0
- package/dist/lib/esm/integration-test-vitest-global-setup.d.mts +39 -0
- package/dist/lib/esm/integration-test-vitest-global-setup.mjs +57 -0
- package/dist/lib/esm/jest-setup.d.mts +13 -0
- package/dist/lib/esm/jest-setup.mjs +53 -0
- package/dist/lib/esm/linters/eslint-config.d.mts +25 -0
- package/dist/lib/esm/linters/eslint-config.mjs +290 -0
- package/dist/lib/esm/linters/eslint-rules/index.d.mts +14 -0
- package/dist/lib/esm/linters/eslint-rules/index.mjs +70 -0
- package/dist/lib/esm/linters/eslint-rules/manifest-description.d.mts +54 -0
- package/dist/lib/esm/linters/eslint-rules/manifest-description.mjs +146 -0
- package/dist/lib/esm/linters/eslint-rules/manifest-helpers.d.mts +141 -0
- package/dist/lib/esm/linters/eslint-rules/manifest-helpers.mjs +90 -0
- package/dist/lib/esm/linters/eslint-rules/manifest-id.d.mts +32 -0
- package/dist/lib/esm/linters/eslint-rules/manifest-id.mjs +109 -0
- package/dist/lib/esm/linters/eslint-rules/manifest-name.d.mts +30 -0
- package/dist/lib/esm/linters/eslint-rules/manifest-name.mjs +110 -0
- package/dist/lib/esm/linters/eslint-rules/manifest-schema.d.mts +45 -0
- package/dist/lib/esm/linters/eslint-rules/manifest-schema.mjs +212 -0
- package/dist/lib/esm/linters/eslint-rules/no-local-obsidian-internals.d.mts +10 -0
- package/dist/lib/esm/linters/eslint-rules/no-local-obsidian-internals.mjs +150 -0
- package/dist/lib/esm/linters/eslint-rules/no-over-cap-wait-in-eval-in-obsidian.d.mts +10 -0
- package/dist/lib/esm/linters/eslint-rules/no-over-cap-wait-in-eval-in-obsidian.mjs +551 -0
- package/dist/lib/esm/linters/eslint-rules/no-untrusted-input-events.d.mts +10 -0
- package/dist/lib/esm/linters/eslint-rules/no-untrusted-input-events.mjs +138 -0
- package/dist/lib/esm/linters/eslint-rules/obsidian-dev-utils-plugin.d.mts +13 -0
- package/dist/lib/esm/linters/eslint-rules/obsidian-dev-utils-plugin.mjs +73 -0
- package/dist/lib/esm/linters/eslint-rules/plugin-name-as-code-in-ui.d.mts +30 -0
- package/dist/lib/esm/linters/eslint-rules/plugin-name-as-code-in-ui.mjs +157 -0
- package/dist/lib/esm/linters/eslint-rules/plugin-name-as-code.d.mts +29 -0
- package/dist/lib/esm/linters/eslint-rules/plugin-name-as-code.mjs +108 -0
- package/dist/lib/esm/linters/eslint-rules/require-component-suffix.d.mts +18 -0
- package/dist/lib/esm/linters/eslint-rules/require-component-suffix.mjs +167 -0
- package/dist/lib/esm/linters/eslint-rules/require-plugin-api-contract-schemas.d.mts +10 -0
- package/dist/lib/esm/linters/eslint-rules/require-plugin-api-contract-schemas.mjs +197 -0
- package/dist/lib/esm/linters/eslint.d.mts +15 -0
- package/dist/lib/esm/linters/eslint.mjs +52 -0
- package/dist/lib/esm/linters/index.d.mts +9 -0
- package/dist/lib/esm/linters/index.mjs +60 -0
- package/dist/lib/esm/linters/markdownlint-cli2-config.d.mts +12 -0
- package/dist/lib/esm/linters/markdownlint-cli2-config.mjs +66 -0
- package/dist/lib/esm/linters/markdownlint-rules/index.d.mts +2 -0
- package/dist/lib/esm/linters/markdownlint-rules/index.mjs +46 -0
- package/dist/lib/esm/linters/markdownlint-rules/plugin-name-as-code.d.mts +32 -0
- package/dist/lib/esm/linters/markdownlint-rules/plugin-name-as-code.mjs +130 -0
- package/dist/lib/esm/linters/markdownlint.d.mts +15 -0
- package/dist/lib/esm/linters/markdownlint.mjs +52 -0
- package/dist/lib/esm/linters/obsidianmd-rule-custom-message.d.mts +40 -0
- package/dist/lib/esm/linters/obsidianmd-rule-custom-message.mjs +67 -0
- package/dist/lib/esm/linters/plugin-names.d.mts +81 -0
- package/dist/lib/esm/linters/plugin-names.mjs +141 -0
- package/dist/lib/esm/obsidian-plugin-repo-paths.d.mts +253 -0
- package/dist/lib/esm/obsidian-plugin-repo-paths.mjs +108 -0
- package/dist/lib/esm/setup.d.mts +21 -0
- package/dist/lib/esm/setup.mjs +55 -0
- package/dist/lib/esm/templates.d.mts +13 -0
- package/dist/lib/esm/templates.mjs +57 -0
- package/dist/lib/esm/test-runners/index.d.mts +4 -0
- package/dist/lib/esm/test-runners/index.mjs +50 -0
- package/dist/lib/esm/test-runners/integration-test-plugin.d.mts +44 -0
- package/dist/lib/esm/test-runners/integration-test-plugin.mjs +94 -0
- package/dist/lib/esm/test-runners/performance-eval-cap.d.mts +27 -0
- package/dist/lib/esm/test-runners/performance-eval-cap.mjs +48 -0
- package/dist/lib/esm/test-runners/stale-build-global-setup.d.mts +86 -0
- package/dist/lib/esm/test-runners/stale-build-global-setup.mjs +115 -0
- package/dist/lib/esm/test-runners/vitest-config.d.mts +200 -0
- package/dist/lib/esm/test-runners/vitest-config.mjs +369 -0
- package/dist/lib/esm/version.d.mts +92 -0
- package/dist/lib/esm/version.mjs +160 -0
- package/dist/lib/esm/vitest-setup.d.mts +11 -0
- package/dist/lib/esm/vitest-setup.mjs +53 -0
- package/dist/templates/.markdownlint-cli2.mjs +4 -0
- package/dist/templates/.nano-staged.mjs +4 -0
- package/dist/templates/commitlint.config.ts +3 -0
- package/dist/templates/dprint.json +26 -0
- package/dist/templates/eslint.config.mts +3 -0
- package/dist/templates/scripts/build/build-clean.ts +4 -0
- package/dist/templates/scripts/build/build-compile-svelte.ts +4 -0
- package/dist/templates/scripts/build/build-compile-typescript.ts +4 -0
- package/dist/templates/scripts/build/build-compile.ts +4 -0
- package/dist/templates/scripts/build/build-templates.ts +4 -0
- package/dist/templates/scripts/bundlers/esbuild/build.ts +4 -0
- package/dist/templates/scripts/bundlers/esbuild/dev.ts +4 -0
- package/dist/templates/scripts/commitlint-config.ts +3 -0
- package/dist/templates/scripts/eslint-config.ts +10 -0
- package/dist/templates/scripts/formatters/dprint/format-check.ts +8 -0
- package/dist/templates/scripts/formatters/dprint/format.ts +8 -0
- package/dist/templates/scripts/gate/gate.ts +10 -0
- package/dist/templates/scripts/linters/cspell/spellcheck.ts +8 -0
- package/dist/templates/scripts/linters/eslint/lint-fix.ts +8 -0
- package/dist/templates/scripts/linters/eslint/lint.ts +8 -0
- package/dist/templates/scripts/linters/markdownlint/lint-md-fix.ts +8 -0
- package/dist/templates/scripts/linters/markdownlint/lint-md.ts +8 -0
- package/dist/templates/scripts/linters/over-exposure/find-overexposed-fix.ts +25 -0
- package/dist/templates/scripts/linters/over-exposure/find-overexposed.ts +15 -0
- package/dist/templates/scripts/markdownlint-cli2-config.ts +3 -0
- package/dist/templates/scripts/nano-staged-config.ts +3 -0
- package/dist/templates/scripts/test-runners/vitest/test-coverage.ts +4 -0
- package/dist/templates/scripts/test-runners/vitest/test-watch.ts +4 -0
- package/dist/templates/scripts/test-runners/vitest/test.ts +4 -0
- package/dist/templates/scripts/version/version.ts +10 -0
- package/dist/templates/scripts/vitest-config.ts +3 -0
- package/dist/templates/vitest.config.ts +3 -0
- package/formatters/dprint/package.json +6 -0
- package/formatters/index/package.json +6 -0
- package/formatters/package.json +6 -0
- package/linters/eslint/package.json +6 -0
- package/linters/eslint-config/package.json +6 -0
- package/linters/eslint-rules/index/package.json +6 -0
- package/linters/eslint-rules/manifest-description/package.json +6 -0
- package/linters/eslint-rules/manifest-helpers/package.json +6 -0
- package/linters/eslint-rules/manifest-id/package.json +6 -0
- package/linters/eslint-rules/manifest-name/package.json +6 -0
- package/linters/eslint-rules/manifest-schema/package.json +6 -0
- package/linters/eslint-rules/no-local-obsidian-internals/package.json +6 -0
- package/linters/eslint-rules/no-over-cap-wait-in-eval-in-obsidian/package.json +6 -0
- package/linters/eslint-rules/no-untrusted-input-events/package.json +6 -0
- package/linters/eslint-rules/obsidian-dev-utils-plugin/package.json +6 -0
- package/linters/eslint-rules/package.json +6 -0
- package/linters/eslint-rules/plugin-name-as-code/package.json +6 -0
- package/linters/eslint-rules/plugin-name-as-code-in-ui/package.json +6 -0
- package/linters/eslint-rules/require-component-suffix/package.json +6 -0
- package/linters/eslint-rules/require-plugin-api-contract-schemas/package.json +6 -0
- package/linters/index/package.json +6 -0
- package/linters/markdownlint/package.json +6 -0
- package/linters/markdownlint-cli2-config/package.json +6 -0
- package/linters/markdownlint-rules/index/package.json +6 -0
- package/linters/markdownlint-rules/package.json +6 -0
- package/linters/markdownlint-rules/plugin-name-as-code/package.json +6 -0
- package/linters/obsidianmd-rule-custom-message/package.json +6 -0
- package/linters/package.json +6 -0
- package/linters/plugin-names/package.json +6 -0
- package/package.json +302 -13
- package/test-runners/index/package.json +6 -0
- package/test-runners/integration-test-plugin/package.json +6 -0
- package/test-runners/package.json +6 -0
- package/test-runners/performance-eval-cap/package.json +6 -0
- package/test-runners/stale-build-global-setup/package.json +6 -0
- package/test-runners/vitest-config/package.json +6 -0
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
/*
|
|
2
|
+
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
|
3
|
+
if you want to view the source, please visit the github repository of this plugin
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
(function () {
|
|
7
|
+
function ensureDisposeSymbols(symbolConstructor = Symbol) {
|
|
8
|
+
symbolConstructor.asyncDispose ??= symbolConstructor.for("Symbol.asyncDispose");
|
|
9
|
+
symbolConstructor.dispose ??= symbolConstructor.for("Symbol.dispose");
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
function ensureBrowserProcess() {
|
|
13
|
+
const browserProcess = {
|
|
14
|
+
browser: true,
|
|
15
|
+
cwd() {
|
|
16
|
+
return "/";
|
|
17
|
+
},
|
|
18
|
+
env: {},
|
|
19
|
+
platform: "android"
|
|
20
|
+
};
|
|
21
|
+
const existingProcess = globalThis.process;
|
|
22
|
+
if (!existingProcess) {
|
|
23
|
+
globalThis.process = browserProcess;
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
if (existingProcess.versions?.node) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
const existingProcessRecord = existingProcess;
|
|
30
|
+
for (const [key, value] of Object.entries(browserProcess)) {
|
|
31
|
+
existingProcessRecord[key] ??= value;
|
|
32
|
+
}
|
|
33
|
+
existingProcessRecord["browser"] = true;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
(function initEsm() {
|
|
37
|
+
ensureDisposeSymbols();
|
|
38
|
+
ensureBrowserProcess();
|
|
39
|
+
})();
|
|
40
|
+
})();
|
|
41
|
+
|
|
42
|
+
import { readdirPosix } from "@mnaoumov/typescript-dev-toolkit/fs";
|
|
43
|
+
import { editJson } from "@mnaoumov/typescript-dev-toolkit/json";
|
|
44
|
+
import { resolvePathFromRootSafe } from "@mnaoumov/typescript-dev-toolkit/root";
|
|
45
|
+
import {
|
|
46
|
+
isPreRelease,
|
|
47
|
+
toUpdateVersionOptions,
|
|
48
|
+
updateVersion as updateVersionGeneric,
|
|
49
|
+
VERSION_ARGUMENT_OPTIONS
|
|
50
|
+
} from "@mnaoumov/typescript-dev-toolkit/version";
|
|
51
|
+
import { join } from "@mnaoumov/typescript-lib/path";
|
|
52
|
+
import { ensureNonNullable } from "@mnaoumov/typescript-lib/type-guards";
|
|
53
|
+
import { existsSync } from "node:fs";
|
|
54
|
+
import {
|
|
55
|
+
cp,
|
|
56
|
+
rm
|
|
57
|
+
} from "node:fs/promises";
|
|
58
|
+
import { parseArgs } from "node:util";
|
|
59
|
+
import { archivePluginDemoVault } from "./demo-vault.mjs";
|
|
60
|
+
import { ObsidianPluginRepoPaths } from "./obsidian-plugin-repo-paths.mjs";
|
|
61
|
+
const DESKTOP_RELEASES_JSON_URL = "https://raw.githubusercontent.com/obsidianmd/obsidian-releases/master/desktop-releases.json";
|
|
62
|
+
async function copyUpdatedManifest() {
|
|
63
|
+
await cp(
|
|
64
|
+
resolvePathFromRootSafe({ path: ObsidianPluginRepoPaths.ManifestJson }),
|
|
65
|
+
resolvePathFromRootSafe({ path: join(ObsidianPluginRepoPaths.DistBuild, ObsidianPluginRepoPaths.ManifestJson) }),
|
|
66
|
+
{ force: true }
|
|
67
|
+
);
|
|
68
|
+
}
|
|
69
|
+
function parseVersionArguments($arguments) {
|
|
70
|
+
const { positionals, values } = parseArgs({
|
|
71
|
+
allowPositionals: true,
|
|
72
|
+
// eslint-disable-next-line unicorn/name-replacements -- `args` is the option name Node's `parseArgs` reads.
|
|
73
|
+
args: $arguments,
|
|
74
|
+
options: {
|
|
75
|
+
...VERSION_ARGUMENT_OPTIONS,
|
|
76
|
+
"min-app-version": { type: "string" },
|
|
77
|
+
"no-demo-vault": { type: "boolean" }
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
return {
|
|
81
|
+
options: {
|
|
82
|
+
...toUpdateVersionOptions(values),
|
|
83
|
+
minAppVersion: values["min-app-version"],
|
|
84
|
+
shouldArchiveDemoVault: !(values["no-demo-vault"] ?? false)
|
|
85
|
+
},
|
|
86
|
+
versionUpdateType: positionals[0]
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
async function updateVersion(versionUpdateType, options = {}) {
|
|
90
|
+
const {
|
|
91
|
+
minAppVersion,
|
|
92
|
+
prepareGitHubRelease,
|
|
93
|
+
shouldArchiveDemoVault = true,
|
|
94
|
+
...genericOptions
|
|
95
|
+
} = options;
|
|
96
|
+
await updateVersionGeneric(versionUpdateType, {
|
|
97
|
+
...genericOptions,
|
|
98
|
+
getReleaseAssetPaths: getPluginReleaseAssetPaths,
|
|
99
|
+
async prepareGitHubRelease(newVersion) {
|
|
100
|
+
await prepareGitHubRelease?.(newVersion);
|
|
101
|
+
if (shouldArchiveDemoVault) {
|
|
102
|
+
await archivePluginDemoVault();
|
|
103
|
+
}
|
|
104
|
+
},
|
|
105
|
+
async updateVersionInExtraFiles(newVersion) {
|
|
106
|
+
await updateVersionInFilesForPlugin(newVersion, minAppVersion);
|
|
107
|
+
}
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
async function getLatestObsidianVersion() {
|
|
111
|
+
const response = await fetch(DESKTOP_RELEASES_JSON_URL);
|
|
112
|
+
const desktopReleasesJson = await response.json();
|
|
113
|
+
return ensureNonNullable(desktopReleasesJson.latestVersion, "Could not find the latest desktop Obsidian version");
|
|
114
|
+
}
|
|
115
|
+
async function getPluginReleaseAssetPaths() {
|
|
116
|
+
const buildFolder = resolvePathFromRootSafe({ path: ObsidianPluginRepoPaths.DistBuild });
|
|
117
|
+
const fileNames = await readdirPosix(buildFolder);
|
|
118
|
+
return fileNames.map((fileName) => join(buildFolder, fileName));
|
|
119
|
+
}
|
|
120
|
+
async function updateVersionInFilesForPlugin(newVersion, minAppVersion) {
|
|
121
|
+
const manifestBetaJsonPath = resolvePathFromRootSafe({ path: ObsidianPluginRepoPaths.ManifestBetaJson });
|
|
122
|
+
if (isPreRelease(newVersion)) {
|
|
123
|
+
await cp(
|
|
124
|
+
resolvePathFromRootSafe({ path: ObsidianPluginRepoPaths.ManifestJson }),
|
|
125
|
+
manifestBetaJsonPath,
|
|
126
|
+
{ force: true }
|
|
127
|
+
);
|
|
128
|
+
await editJson({
|
|
129
|
+
editFunction: (manifest) => {
|
|
130
|
+
manifest.version = newVersion;
|
|
131
|
+
},
|
|
132
|
+
path: ObsidianPluginRepoPaths.ManifestBetaJson
|
|
133
|
+
});
|
|
134
|
+
} else {
|
|
135
|
+
const resolvedMinAppVersion = minAppVersion ?? await getLatestObsidianVersion();
|
|
136
|
+
await editJson({
|
|
137
|
+
editFunction: (manifest) => {
|
|
138
|
+
manifest.minAppVersion = resolvedMinAppVersion;
|
|
139
|
+
manifest.version = newVersion;
|
|
140
|
+
},
|
|
141
|
+
path: ObsidianPluginRepoPaths.ManifestJson
|
|
142
|
+
});
|
|
143
|
+
await editJson({
|
|
144
|
+
editFunction: (versions) => {
|
|
145
|
+
versions[newVersion] = resolvedMinAppVersion;
|
|
146
|
+
},
|
|
147
|
+
path: ObsidianPluginRepoPaths.VersionsJson
|
|
148
|
+
});
|
|
149
|
+
if (existsSync(manifestBetaJsonPath)) {
|
|
150
|
+
await rm(manifestBetaJsonPath);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
await copyUpdatedManifest();
|
|
154
|
+
}
|
|
155
|
+
export {
|
|
156
|
+
copyUpdatedManifest,
|
|
157
|
+
parseVersionArguments,
|
|
158
|
+
updateVersion
|
|
159
|
+
};
|
|
160
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3ZlcnNpb24udHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBSZWxlYXNlcyBhbiBPYnNpZGlhbiBwbHVnaW46IHRoZSBnZW5lcmljIHJlbGVhc2UgZnJvbSBgQG1uYW91bW92L3R5cGVzY3JpcHQtZGV2LXRvb2xraXQvdmVyc2lvbmAsIHBsdXMgd2hhdCBvbmx5IGFcbiAqIHBsdWdpbiBoYXMgXHUyMDE0IGBtYW5pZmVzdC5qc29uYCAoYW5kIGBtYW5pZmVzdC1iZXRhLmpzb25gIGZvciBhIHByZS1yZWxlYXNlKSBhbmQgYHZlcnNpb25zLmpzb25gIGJ1bXBlZCB3aXRoIHRoZVxuICogcGx1Z2luJ3MgYG1pbkFwcFZlcnNpb25gLCB0aGUgdXBkYXRlZCBtYW5pZmVzdCBjb3BpZWQgaW50byBgZGlzdC9idWlsZGAsIHRoZSBkZW1vIHZhdWx0IGFyY2hpdmVkIGFzIGEgcmVsZWFzZVxuICogYXNzZXQsIGFuZCB0aGUgZmlsZXMgaW4gYGRpc3QvYnVpbGRgIGF0dGFjaGVkIHRvIHRoZSBHaXRIdWIgcmVsZWFzZSBpbnN0ZWFkIG9mIGFuIGBucG0gcGFja2AgdGFyYmFsbC5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7XG4gIFBhcnNlZFZlcnNpb25Bcmd1bWVudHMgYXMgR2VuZXJpY1BhcnNlZFZlcnNpb25Bcmd1bWVudHMsXG4gIFVwZGF0ZVZlcnNpb25PcHRpb25zIGFzIEdlbmVyaWNVcGRhdGVWZXJzaW9uT3B0aW9uc1xufSBmcm9tICdAbW5hb3Vtb3YvdHlwZXNjcmlwdC1kZXYtdG9vbGtpdC92ZXJzaW9uJztcblxuaW1wb3J0IHsgcmVhZGRpclBvc2l4IH0gZnJvbSAnQG1uYW91bW92L3R5cGVzY3JpcHQtZGV2LXRvb2xraXQvZnMnO1xuaW1wb3J0IHsgZWRpdEpzb24gfSBmcm9tICdAbW5hb3Vtb3YvdHlwZXNjcmlwdC1kZXYtdG9vbGtpdC9qc29uJztcbmltcG9ydCB7IHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlIH0gZnJvbSAnQG1uYW91bW92L3R5cGVzY3JpcHQtZGV2LXRvb2xraXQvcm9vdCc7XG5pbXBvcnQge1xuICBpc1ByZVJlbGVhc2UsXG4gIHRvVXBkYXRlVmVyc2lvbk9wdGlvbnMsXG4gIHVwZGF0ZVZlcnNpb24gYXMgdXBkYXRlVmVyc2lvbkdlbmVyaWMsXG4gIFZFUlNJT05fQVJHVU1FTlRfT1BUSU9OU1xufSBmcm9tICdAbW5hb3Vtb3YvdHlwZXNjcmlwdC1kZXYtdG9vbGtpdC92ZXJzaW9uJztcbmltcG9ydCB7IGpvaW4gfSBmcm9tICdAbW5hb3Vtb3YvdHlwZXNjcmlwdC1saWIvcGF0aCc7XG5pbXBvcnQgeyBlbnN1cmVOb25OdWxsYWJsZSB9IGZyb20gJ0BtbmFvdW1vdi90eXBlc2NyaXB0LWxpYi90eXBlLWd1YXJkcyc7XG5pbXBvcnQgeyBleGlzdHNTeW5jIH0gZnJvbSAnbm9kZTpmcyc7XG5pbXBvcnQge1xuICBjcCxcbiAgcm1cbn0gZnJvbSAnbm9kZTpmcy9wcm9taXNlcyc7XG5pbXBvcnQgeyBwYXJzZUFyZ3MgfSBmcm9tICdub2RlOnV0aWwnO1xuXG5pbXBvcnQgeyBhcmNoaXZlUGx1Z2luRGVtb1ZhdWx0IH0gZnJvbSAnLi9kZW1vLXZhdWx0LnRzJztcbmltcG9ydCB7IE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzIH0gZnJvbSAnLi9vYnNpZGlhbi1wbHVnaW4tcmVwby1wYXRocy50cyc7XG5cbi8qKlxuICogVHlwZSByZXByZXNlbnRpbmcgdGhlIHN0cnVjdHVyZSBvZiBPYnNpZGlhbidzIGBkZXNrdG9wLXJlbGVhc2VzLmpzb25gIGZlZWQuXG4gKlxuICogVGhpcyBpcyB0aGUgZmVlZCB0aGUgZGVza3RvcCBhcHAgaXRzZWxmIHVwZGF0ZXMgZnJvbSwgc28gaXQgaXMgdGhlIG9ubHkgc291cmNlIHRoYXQgc3RhdGVzIGEgdmVyc2lvblxuICogZGVza3RvcCB1c2VycyBjYW4gYWN0dWFsbHkgcnVuLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERlc2t0b3BSZWxlYXNlc0pzb24ge1xuICAvKipcbiAgICogVGhlIGxhdGVzdCBPYnNpZGlhbiB2ZXJzaW9uIGF2YWlsYWJsZSBmb3IgZGVza3RvcC5cbiAgICovXG4gIGxhdGVzdFZlcnNpb246IHN0cmluZztcbn1cblxuLyoqXG4gKiBUeXBlIHJlcHJlc2VudGluZyB0aGUgbWFuaWZlc3QgZmlsZSBmb3JtYXQgZm9yIE9ic2lkaWFuIHBsdWdpbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWFuaWZlc3Qge1xuICAvKipcbiAgICogQSBtaW5pbXVtIE9ic2lkaWFuIHZlcnNpb24gcmVxdWlyZWQgZm9yIHRoZSBwbHVnaW4uXG4gICAqL1xuICBtaW5BcHBWZXJzaW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgdmVyc2lvbiBvZiB0aGUgcGx1Z2luLlxuICAgKi9cbiAgdmVyc2lvbjogc3RyaW5nO1xufVxuLyoqXG4gKiBUaGUgcmVzdWx0IG9mIHBhcnNpbmcgdGhlIGNvbW1hbmQtbGluZSBhcmd1bWVudHMgZm9yIGEgcGx1Z2luIHJlbGVhc2UuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGFyc2VkVmVyc2lvbkFyZ3VtZW50cyBleHRlbmRzIEdlbmVyaWNQYXJzZWRWZXJzaW9uQXJndW1lbnRzIHtcbiAgLyoqXG4gICAqIFRoZSB7QGxpbmsgVXBkYXRlVmVyc2lvbk9wdGlvbnN9IHBhcnNlZCBmcm9tIHRoZSBmbGFncy5cbiAgICovXG4gIHJlYWRvbmx5IG9wdGlvbnM6IFVwZGF0ZVZlcnNpb25PcHRpb25zO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHtAbGluayB1cGRhdGVWZXJzaW9ufTogdGhlIGdlbmVyaWMgcmVsZWFzZSBvcHRpb25zIHBsdXMgdGhlIHBsdWdpbidzIG93bi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVWZXJzaW9uT3B0aW9ucyBleHRlbmRzIEdlbmVyaWNVcGRhdGVWZXJzaW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBBbiBleHBsaWNpdCBgbWluQXBwVmVyc2lvbmAgdG8gd3JpdGUgaW50byB0aGUgcGx1Z2luJ3MgYG1hbmlmZXN0Lmpzb25gIGFuZCBpdHMgbmV3IGB2ZXJzaW9ucy5qc29uYFxuICAgKiBlbnRyeS4gV2hlbiBzZXQsIGl0IGlzIHVzZWQgdmVyYmF0aW0gYW5kIHRoZSBsYXRlc3QgT2JzaWRpYW4gZGVza3RvcCB2ZXJzaW9uIGlzIG5vdCBmZXRjaGVkIGF0IGFsbC5cbiAgICpcbiAgICogU2V0IHRoaXMgd2hlbiB0aGUgcGx1Z2luIGhhcyBhIGtub3duIG1pbmltdW0gaXQgYWN0dWFsbHkgcmVxdWlyZXMsIHJhdGhlciB0aGFuIHRyYWNraW5nIHdoYXRldmVyXG4gICAqIE9ic2lkaWFuIHJlbGVhc2VkIG1vc3QgcmVjZW50bHkuIE9ubHkgYXBwbGllcyB0byBub24tcHJlLXJlbGVhc2UgdmVyc2lvbnMgKGEgcHJlLXJlbGVhc2UgY29waWVzIHRoZVxuICAgKiBleGlzdGluZyBgbWFuaWZlc3QuanNvbmAgYW5kIG5ldmVyIHdyaXRlcyBgbWluQXBwVmVyc2lvbmApLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0aGUgbGF0ZXN0IE9ic2lkaWFuIGRlc2t0b3AgdmVyc2lvblxuICAgKi9cbiAgcmVhZG9ubHkgbWluQXBwVmVyc2lvbj86IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogV2hldGhlciB0byBhcmNoaXZlIHRoZSBwbHVnaW4ncyBkZW1vIHZhdWx0IChgZGVtby12YXVsdC9gIGluIHRoZSByZXBvIHJvb3QpIGFzIGEgcmVsZWFzZSBhcnRpZmFjdC4gSWdub3JlZFxuICAgKiB3aGVuIHRoZSByZXBvIGhhcyBubyBgZGVtby12YXVsdC9gIGZvbGRlci5cbiAgICpcbiAgICogQGRlZmF1bHQgYHRydWVgXG4gICAqL1xuICByZWFkb25seSBzaG91bGRBcmNoaXZlRGVtb1ZhdWx0PzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBUaGUgZmVlZCB0aGUgT2JzaWRpYW4gZGVza3RvcCBhcHAgdXBkYXRlcyBmcm9tLlxuICpcbiAqIERlbGliZXJhdGVseSBOT1QgdGhlIEdpdEh1YiBgcmVsZWFzZXMvbGF0ZXN0YCBBUEk6IHRoYXQgZW5kcG9pbnQgcmV0dXJucyB0aGUgbmV3ZXN0IHJlbGVhc2Ugb2YgYW55IGtpbmRcbiAqIGluIGBvYnNpZGlhbm1kL29ic2lkaWFuLXJlbGVhc2VzYCwgaW5jbHVkaW5nIG9uZSB3aG9zZSBvbmx5IGFzc2V0IGlzIHRoZSBBbmRyb2lkIEFQSywgd2hpY2ggbm8gZGVza3RvcFxuICogdXNlciBjYW4gaW5zdGFsbC4gU2VlIHtAbGluayBnZXRMYXRlc3RPYnNpZGlhblZlcnNpb259LlxuICovXG5jb25zdCBERVNLVE9QX1JFTEVBU0VTX0pTT05fVVJMID0gJ2h0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9vYnNpZGlhbm1kL29ic2lkaWFuLXJlbGVhc2VzL21hc3Rlci9kZXNrdG9wLXJlbGVhc2VzLmpzb24nO1xuXG4vKipcbiAqIENvcGllcyB0aGUgdXBkYXRlZCBtYW5pZmVzdCBmaWxlIHRvIHRoZSBkaXN0cmlidXRpb24gYnVpbGQgZm9sZGVyLlxuICpcbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgY29weSBvcGVyYXRpb24gaXMgY29tcGxldGUuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjb3B5VXBkYXRlZE1hbmlmZXN0KCk6IFByb21pc2U8dm9pZD4ge1xuICBhd2FpdCBjcChcbiAgICByZXNvbHZlUGF0aEZyb21Sb290U2FmZSh7IHBhdGg6IE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLk1hbmlmZXN0SnNvbiB9KSxcbiAgICByZXNvbHZlUGF0aEZyb21Sb290U2FmZSh7IHBhdGg6IGpvaW4oT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuRGlzdEJ1aWxkLCBPYnNpZGlhblBsdWdpblJlcG9QYXRocy5NYW5pZmVzdEpzb24pIH0pLFxuICAgIHsgZm9yY2U6IHRydWUgfVxuICApO1xufVxuXG4vKipcbiAqIFBhcnNlcyB0aGUgY29tbWFuZC1saW5lIGFyZ3VtZW50cyBmb3IgYSBwbHVnaW4gcmVsZWFzZTogZXZlcnkgZmxhZyB0aGUgZ2VuZXJpYyBgcGFyc2VWZXJzaW9uQXJndW1lbnRzYFxuICogcmVjb2duaXplcywgcGx1cyB0d28gb2YgdGhlIHBsdWdpbidzIG93bjpcbiAqIC0gYC0tbWluLWFwcC12ZXJzaW9uPTx4Lnkuej5gIFx1MjAxNCB3cml0ZSB0aGlzIGBtaW5BcHBWZXJzaW9uYCBpbnRvIHRoZSBwbHVnaW4ncyBgbWFuaWZlc3QuanNvbmAgYW5kIGl0cyBuZXdcbiAqICAgYHZlcnNpb25zLmpzb25gIGVudHJ5IGluc3RlYWQgb2YgdHJhY2tpbmcgdGhlIGxhdGVzdCBPYnNpZGlhbiBkZXNrdG9wIHZlcnNpb24uXG4gKiAtIGAtLW5vLWRlbW8tdmF1bHRgIFx1MjAxNCBza2lwIGFyY2hpdmluZyB0aGUgcGx1Z2luJ3MgZGVtbyB2YXVsdCAoYGRlbW8tdmF1bHQvYCkgYXMgYSByZWxlYXNlIGFydGlmYWN0LlxuICpcbiAqIEBwYXJhbSAkYXJndW1lbnRzIC0gVGhlIGNvbW1hbmQtbGluZSBhcmd1bWVudHMgdG8gcGFyc2UgKHR5cGljYWxseSBgcHJvY2Vzcy5hcmd2LnNsaWNlKDIpYCkuXG4gKiBAcmV0dXJucyBUaGUge0BsaW5rIFBhcnNlZFZlcnNpb25Bcmd1bWVudHN9IGNvbnRhaW5pbmcgdGhlIHZlcnNpb24gdXBkYXRlIHR5cGUgYW5kIHRoZSBvcHRpb25zLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VWZXJzaW9uQXJndW1lbnRzKCRhcmd1bWVudHM6IHN0cmluZ1tdKTogUGFyc2VkVmVyc2lvbkFyZ3VtZW50cyB7XG4gIGNvbnN0IHsgcG9zaXRpb25hbHMsIHZhbHVlcyB9ID0gcGFyc2VBcmdzKHtcbiAgICBhbGxvd1Bvc2l0aW9uYWxzOiB0cnVlLFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL25hbWUtcmVwbGFjZW1lbnRzIC0tIGBhcmdzYCBpcyB0aGUgb3B0aW9uIG5hbWUgTm9kZSdzIGBwYXJzZUFyZ3NgIHJlYWRzLlxuICAgIGFyZ3M6ICRhcmd1bWVudHMsXG4gICAgb3B0aW9uczoge1xuICAgICAgLi4uVkVSU0lPTl9BUkdVTUVOVF9PUFRJT05TLFxuICAgICAgJ21pbi1hcHAtdmVyc2lvbic6IHsgdHlwZTogJ3N0cmluZycgfSxcbiAgICAgICduby1kZW1vLXZhdWx0JzogeyB0eXBlOiAnYm9vbGVhbicgfVxuICAgIH1cbiAgfSk7XG5cbiAgcmV0dXJuIHtcbiAgICBvcHRpb25zOiB7XG4gICAgICAuLi50b1VwZGF0ZVZlcnNpb25PcHRpb25zKHZhbHVlcyksXG4gICAgICBtaW5BcHBWZXJzaW9uOiB2YWx1ZXNbJ21pbi1hcHAtdmVyc2lvbiddLFxuICAgICAgc2hvdWxkQXJjaGl2ZURlbW9WYXVsdDogISh2YWx1ZXNbJ25vLWRlbW8tdmF1bHQnXSA/PyBmYWxzZSlcbiAgICB9LFxuICAgIHZlcnNpb25VcGRhdGVUeXBlOiBwb3NpdGlvbmFsc1swXVxuICB9O1xufVxuXG4vKipcbiAqIFJlbGVhc2VzIHRoZSBwbHVnaW4uIFNlZSB0aGUgYEBmaWxlYCBvdmVydmlldyBmb3Igd2hhdCBpdCBhZGRzIHRvIHRoZSBnZW5lcmljIHJlbGVhc2UuXG4gKlxuICogQHBhcmFtIHZlcnNpb25VcGRhdGVUeXBlIC0gVGhlIHR5cGUgb2YgdmVyc2lvbiB1cGRhdGUgdG8gcGVyZm9ybSAobWFqb3IsIG1pbm9yLCBwYXRjaCwgcHJlbWFqb3IsIHByZW1pbm9yLCBwcmVwYXRjaCwgcHJlcmVsZWFzZSwgb3IgeC55LnpbLXN1ZmZpeF0pLlxuICogQHBhcmFtIG9wdGlvbnMgLSBUaGUge0BsaW5rIFVwZGF0ZVZlcnNpb25PcHRpb25zfSBjb250cm9sbGluZyB0aGUgcmVsZWFzZSBiZWhhdmlvci5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgcmVsZWFzZSBpcyBjb21wbGV0ZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHVwZGF0ZVZlcnNpb24odmVyc2lvblVwZGF0ZVR5cGU/OiBzdHJpbmcsIG9wdGlvbnM6IFVwZGF0ZVZlcnNpb25PcHRpb25zID0ge30pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3Qge1xuICAgIG1pbkFwcFZlcnNpb24sXG4gICAgcHJlcGFyZUdpdEh1YlJlbGVhc2UsXG4gICAgc2hvdWxkQXJjaGl2ZURlbW9WYXVsdCA9IHRydWUsXG4gICAgLi4uZ2VuZXJpY09wdGlvbnNcbiAgfSA9IG9wdGlvbnM7XG5cbiAgYXdhaXQgdXBkYXRlVmVyc2lvbkdlbmVyaWModmVyc2lvblVwZGF0ZVR5cGUsIHtcbiAgICAuLi5nZW5lcmljT3B0aW9ucyxcbiAgICBnZXRSZWxlYXNlQXNzZXRQYXRoczogZ2V0UGx1Z2luUmVsZWFzZUFzc2V0UGF0aHMsXG4gICAgYXN5bmMgcHJlcGFyZUdpdEh1YlJlbGVhc2UobmV3VmVyc2lvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICBhd2FpdCBwcmVwYXJlR2l0SHViUmVsZWFzZT8uKG5ld1ZlcnNpb24pO1xuICAgICAgaWYgKHNob3VsZEFyY2hpdmVEZW1vVmF1bHQpIHtcbiAgICAgICAgYXdhaXQgYXJjaGl2ZVBsdWdpbkRlbW9WYXVsdCgpO1xuICAgICAgfVxuICAgIH0sXG4gICAgYXN5bmMgdXBkYXRlVmVyc2lvbkluRXh0cmFGaWxlcyhuZXdWZXJzaW9uOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgIGF3YWl0IHVwZGF0ZVZlcnNpb25JbkZpbGVzRm9yUGx1Z2luKG5ld1ZlcnNpb24sIG1pbkFwcFZlcnNpb24pO1xuICAgIH1cbiAgfSk7XG59XG5cbi8qKlxuICogRmV0Y2hlcyB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgT2JzaWRpYW4gdGhhdCB0aGUgZGVza3RvcCBhcHAgY2FuIGFjdHVhbGx5IHJ1bi5cbiAqXG4gKiBSZWFkcyB7QGxpbmsgREVTS1RPUF9SRUxFQVNFU19KU09OX1VSTH0sIG5vdCB0aGUgR2l0SHViIGByZWxlYXNlcy9sYXRlc3RgIEFQSS4gVGhlIEFQSSByZXR1cm5zIHRoZSBuZXdlc3RcbiAqIHJlbGVhc2Ugb2YgQU5ZIGtpbmQsIHNvIHdoZW5ldmVyIGEgbW9iaWxlLW9ubHkgcmVsZWFzZSAoYW4gQVBLLW9ubHkgYXNzZXQpIGlzIG5ld2VyIHRoYW4gdGhlIGRlc2t0b3Agb25lLFxuICogaXQgcmVwb3J0cyBhIHZlcnNpb24gdGhhdCBkb2VzIG5vdCBleGlzdCBmb3IgZGVza3RvcC4gQSBwbHVnaW4gcmVsZWFzZWQgaW4gdGhhdCB3aW5kb3cgZ2V0cyBhXG4gKiBgbWluQXBwVmVyc2lvbmAgbm8gZGVza3RvcCB1c2VyIGNhbiBzYXRpc2Z5LCBhbmQgT2JzaWRpYW4gc2lsZW50bHkga2VlcHMgb2ZmZXJpbmcgdGhlbSB0aGUgcHJldmlvdXNcbiAqIHJlbGVhc2UgaW5zdGVhZCBcdTIwMTQgdGhlIHJlbGVhc2Ugc3VjY2VlZHMgYW5kIHJlYWNoZXMgbm9ib2R5LlxuICpcbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgdG8gdGhlIGxhdGVzdCBPYnNpZGlhbiB2ZXJzaW9uIGF2YWlsYWJsZSBmb3IgZGVza3RvcC5cbiAqL1xuYXN5bmMgZnVuY3Rpb24gZ2V0TGF0ZXN0T2JzaWRpYW5WZXJzaW9uKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1yZXN0cmljdGVkLWdsb2JhbHMgLS0gV2UgcnVuIHRoaXMgb3V0c2lkZSBvZiBPYnNpZGlhbiwgc28gd2UgZG9uJ3QgaGF2ZSBgcmVxdWVzdFVybCgpYC5cbiAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaChERVNLVE9QX1JFTEVBU0VTX0pTT05fVVJMKTtcbiAgY29uc3QgZGVza3RvcFJlbGVhc2VzSnNvbiA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKSBhcyBQYXJ0aWFsPERlc2t0b3BSZWxlYXNlc0pzb24+O1xuICByZXR1cm4gZW5zdXJlTm9uTnVsbGFibGUoZGVza3RvcFJlbGVhc2VzSnNvbi5sYXRlc3RWZXJzaW9uLCAnQ291bGQgbm90IGZpbmQgdGhlIGxhdGVzdCBkZXNrdG9wIE9ic2lkaWFuIHZlcnNpb24nKTtcbn1cbi8qKlxuICogVGhlIHBsdWdpbidzIHJlbGVhc2UgYXNzZXRzOiBldmVyeSBmaWxlIGluIGBkaXN0L2J1aWxkYC5cbiAqXG4gKiBAcmV0dXJucyBUaGUgYXNzZXQgcGF0aHMuXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIGdldFBsdWdpblJlbGVhc2VBc3NldFBhdGhzKCk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgY29uc3QgYnVpbGRGb2xkZXIgPSByZXNvbHZlUGF0aEZyb21Sb290U2FmZSh7IHBhdGg6IE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLkRpc3RCdWlsZCB9KTtcbiAgY29uc3QgZmlsZU5hbWVzID0gYXdhaXQgcmVhZGRpclBvc2l4KGJ1aWxkRm9sZGVyKTtcbiAgcmV0dXJuIGZpbGVOYW1lcy5tYXAoKGZpbGVOYW1lKSA9PiBqb2luKGJ1aWxkRm9sZGVyLCBmaWxlTmFtZSkpO1xufVxuXG5hc3luYyBmdW5jdGlvbiB1cGRhdGVWZXJzaW9uSW5GaWxlc0ZvclBsdWdpbihuZXdWZXJzaW9uOiBzdHJpbmcsIG1pbkFwcFZlcnNpb246IHN0cmluZyB8IHVuZGVmaW5lZCk6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCBtYW5pZmVzdEJldGFKc29uUGF0aCA9IHJlc29sdmVQYXRoRnJvbVJvb3RTYWZlKHsgcGF0aDogT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuTWFuaWZlc3RCZXRhSnNvbiB9KTtcbiAgaWYgKGlzUHJlUmVsZWFzZShuZXdWZXJzaW9uKSkge1xuICAgIGF3YWl0IGNwKFxuICAgICAgcmVzb2x2ZVBhdGhGcm9tUm9vdFNhZmUoeyBwYXRoOiBPYnNpZGlhblBsdWdpblJlcG9QYXRocy5NYW5pZmVzdEpzb24gfSksXG4gICAgICBtYW5pZmVzdEJldGFKc29uUGF0aCxcbiAgICAgIHsgZm9yY2U6IHRydWUgfVxuICAgICk7XG4gICAgYXdhaXQgZWRpdEpzb248TWFuaWZlc3Q+KHtcbiAgICAgIGVkaXRGdW5jdGlvbjogKG1hbmlmZXN0KSA9PiB7XG4gICAgICAgIG1hbmlmZXN0LnZlcnNpb24gPSBuZXdWZXJzaW9uO1xuICAgICAgfSxcbiAgICAgIHBhdGg6IE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLk1hbmlmZXN0QmV0YUpzb25cbiAgICB9KTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCByZXNvbHZlZE1pbkFwcFZlcnNpb24gPSBtaW5BcHBWZXJzaW9uID8/IGF3YWl0IGdldExhdGVzdE9ic2lkaWFuVmVyc2lvbigpO1xuXG4gICAgYXdhaXQgZWRpdEpzb248TWFuaWZlc3Q+KHtcbiAgICAgIGVkaXRGdW5jdGlvbjogKG1hbmlmZXN0KSA9PiB7XG4gICAgICAgIG1hbmlmZXN0Lm1pbkFwcFZlcnNpb24gPSByZXNvbHZlZE1pbkFwcFZlcnNpb247XG4gICAgICAgIG1hbmlmZXN0LnZlcnNpb24gPSBuZXdWZXJzaW9uO1xuICAgICAgfSxcbiAgICAgIHBhdGg6IE9ic2lkaWFuUGx1Z2luUmVwb1BhdGhzLk1hbmlmZXN0SnNvblxuICAgIH0pO1xuXG4gICAgYXdhaXQgZWRpdEpzb248UmVjb3JkPHN0cmluZywgc3RyaW5nPj4oe1xuICAgICAgZWRpdEZ1bmN0aW9uOiAodmVyc2lvbnMpID0+IHtcbiAgICAgICAgdmVyc2lvbnNbbmV3VmVyc2lvbl0gPSByZXNvbHZlZE1pbkFwcFZlcnNpb247XG4gICAgICB9LFxuICAgICAgcGF0aDogT2JzaWRpYW5QbHVnaW5SZXBvUGF0aHMuVmVyc2lvbnNKc29uXG4gICAgfSk7XG5cbiAgICBpZiAoZXhpc3RzU3luYyhtYW5pZmVzdEJldGFKc29uUGF0aCkpIHtcbiAgICAgIGF3YWl0IHJtKG1hbmlmZXN0QmV0YUpzb25QYXRoKTtcbiAgICB9XG4gIH1cblxuICBhd2FpdCBjb3B5VXBkYXRlZE1hbmlmZXN0KCk7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztB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
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/// <reference path="./index.d.mts" />
|
|
2
|
+
/**
|
|
3
|
+
* @file
|
|
4
|
+
*
|
|
5
|
+
* Vitest setup file for Obsidian plugins built on `@mnaoumov/obsidian-lib`.
|
|
6
|
+
*
|
|
7
|
+
* Add it to your Vitest config's `setupFiles` (or import it from another setup file). Before each
|
|
8
|
+
* test it resets the generic shared-state slot, the `__obsidianDevUtils` bag and the library contexts, and enables async-operation tracking; after each test it
|
|
9
|
+
* disables tracking, so tests can `await waitForAllAsyncOperations()` against isolated state.
|
|
10
|
+
*/
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/*
|
|
2
|
+
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
|
3
|
+
if you want to view the source, please visit the github repository of this plugin
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
(function () {
|
|
7
|
+
function ensureDisposeSymbols(symbolConstructor = Symbol) {
|
|
8
|
+
symbolConstructor.asyncDispose ??= symbolConstructor.for("Symbol.asyncDispose");
|
|
9
|
+
symbolConstructor.dispose ??= symbolConstructor.for("Symbol.dispose");
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
function ensureBrowserProcess() {
|
|
13
|
+
const browserProcess = {
|
|
14
|
+
browser: true,
|
|
15
|
+
cwd() {
|
|
16
|
+
return "/";
|
|
17
|
+
},
|
|
18
|
+
env: {},
|
|
19
|
+
platform: "android"
|
|
20
|
+
};
|
|
21
|
+
const existingProcess = globalThis.process;
|
|
22
|
+
if (!existingProcess) {
|
|
23
|
+
globalThis.process = browserProcess;
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
if (existingProcess.versions?.node) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
const existingProcessRecord = existingProcess;
|
|
30
|
+
for (const [key, value] of Object.entries(browserProcess)) {
|
|
31
|
+
existingProcessRecord[key] ??= value;
|
|
32
|
+
}
|
|
33
|
+
existingProcessRecord["browser"] = true;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
(function initEsm() {
|
|
37
|
+
ensureDisposeSymbols();
|
|
38
|
+
ensureBrowserProcess();
|
|
39
|
+
})();
|
|
40
|
+
})();
|
|
41
|
+
|
|
42
|
+
import {
|
|
43
|
+
afterAll,
|
|
44
|
+
afterEach,
|
|
45
|
+
beforeEach
|
|
46
|
+
} from "vitest";
|
|
47
|
+
import { setup } from "./setup.mjs";
|
|
48
|
+
setup({
|
|
49
|
+
afterAll,
|
|
50
|
+
afterEach,
|
|
51
|
+
beforeEach
|
|
52
|
+
});
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3ZpdGVzdC1zZXR1cC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFZpdGVzdCBzZXR1cCBmaWxlIGZvciBPYnNpZGlhbiBwbHVnaW5zIGJ1aWx0IG9uIGBAbW5hb3Vtb3Yvb2JzaWRpYW4tbGliYC5cbiAqXG4gKiBBZGQgaXQgdG8geW91ciBWaXRlc3QgY29uZmlnJ3MgYHNldHVwRmlsZXNgIChvciBpbXBvcnQgaXQgZnJvbSBhbm90aGVyIHNldHVwIGZpbGUpLiBCZWZvcmUgZWFjaFxuICogdGVzdCBpdCByZXNldHMgdGhlIGdlbmVyaWMgc2hhcmVkLXN0YXRlIHNsb3QsIHRoZSBgX19vYnNpZGlhbkRldlV0aWxzYCBiYWcgYW5kIHRoZSBsaWJyYXJ5IGNvbnRleHRzLCBhbmQgZW5hYmxlcyBhc3luYy1vcGVyYXRpb24gdHJhY2tpbmc7IGFmdGVyIGVhY2ggdGVzdCBpdFxuICogZGlzYWJsZXMgdHJhY2tpbmcsIHNvIHRlc3RzIGNhbiBgYXdhaXQgd2FpdEZvckFsbEFzeW5jT3BlcmF0aW9ucygpYCBhZ2FpbnN0IGlzb2xhdGVkIHN0YXRlLlxuICovXG5cbi8qIHY4IGlnbm9yZSBzdGFydCAtLSBUaGluIFZpdGVzdCBzZXR1cC1maWxlIGdsdWU7IHNldHVwIGlzIHVuaXQtdGVzdGVkIHNlcGFyYXRlbHkuICovXG5pbXBvcnQge1xuICBhZnRlckFsbCxcbiAgYWZ0ZXJFYWNoLFxuICBiZWZvcmVFYWNoXG59IGZyb20gJ3ZpdGVzdCc7XG5cbmltcG9ydCB7IHNldHVwIH0gZnJvbSAnLi9zZXR1cC50cyc7XG5cbnNldHVwKHtcbiAgYWZ0ZXJBbGwsXG4gIGFmdGVyRWFjaCxcbiAgYmVmb3JlRWFjaFxufSk7XG4vKiB2OCBpZ25vcmUgc3RvcCAqL1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFXQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFFUCxTQUFTLGFBQWE7QUFFdEIsTUFBTTtBQUFBLEVBQ0o7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUNGLENBQUM7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"typescript": {
|
|
3
|
+
"bracePosition": "sameLine",
|
|
4
|
+
"constructSignature.spaceAfterNewKeyword": true,
|
|
5
|
+
"constructorType.spaceAfterNewKeyword": true,
|
|
6
|
+
"exportDeclaration.forceMultiLine": "whenMultiple",
|
|
7
|
+
"functionExpression.spaceAfterFunctionKeyword": true,
|
|
8
|
+
"importDeclaration.forceMultiLine": "whenMultiple",
|
|
9
|
+
"lineWidth": 1000,
|
|
10
|
+
"quoteStyle": "alwaysSingle",
|
|
11
|
+
"trailingCommas": "never"
|
|
12
|
+
},
|
|
13
|
+
"json": {},
|
|
14
|
+
"markdown": {},
|
|
15
|
+
// dprint respects .gitignore by default (--no-gitignore opts out), so dist and node_modules need no
|
|
16
|
+
// Entry here. Only paths git does NOT ignore belong below.
|
|
17
|
+
"excludes": [
|
|
18
|
+
"**/*-lock.json",
|
|
19
|
+
"**/*.md"
|
|
20
|
+
],
|
|
21
|
+
"plugins": [
|
|
22
|
+
"https://plugins.dprint.dev/typescript-0.93.3.wasm",
|
|
23
|
+
"https://plugins.dprint.dev/json-0.19.4.wasm",
|
|
24
|
+
"https://plugins.dprint.dev/markdown-0.17.8.wasm"
|
|
25
|
+
]
|
|
26
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { Linter } from 'eslint';
|
|
2
|
+
|
|
3
|
+
import { defineEslintConfigs } from '@mnaoumov/obsidian-dev-toolkit/linters/eslint-config';
|
|
4
|
+
|
|
5
|
+
export const configs: Linter.Config[] = defineEslintConfigs({
|
|
6
|
+
// Pass `customConfigs()` to add plugin-specific rules, e.g. brand names for `obsidianmd/ui/sentence-case`:
|
|
7
|
+
// customConfigs() {
|
|
8
|
+
// return defineConfig({ rules: { 'obsidianmd/ui/sentence-case': ['error', { brands: ['My Plugin'] }] } });
|
|
9
|
+
// }
|
|
10
|
+
});
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import process from 'node:process';
|
|
2
|
+
|
|
3
|
+
import { format } from '@mnaoumov/obsidian-dev-toolkit/formatters/dprint';
|
|
4
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
5
|
+
|
|
6
|
+
const [, , ...paths] = process.argv;
|
|
7
|
+
|
|
8
|
+
await wrapCliTask(() => format({ paths, rewrite: false }));
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import process from 'node:process';
|
|
2
|
+
|
|
3
|
+
import { format } from '@mnaoumov/obsidian-dev-toolkit/formatters/dprint';
|
|
4
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
5
|
+
|
|
6
|
+
const [, , ...paths] = process.argv;
|
|
7
|
+
|
|
8
|
+
await wrapCliTask(() => format({ paths }));
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
2
|
+
import {
|
|
3
|
+
gate,
|
|
4
|
+
parseGateArguments
|
|
5
|
+
} from '@mnaoumov/typescript-dev-toolkit/gate';
|
|
6
|
+
import process from 'node:process';
|
|
7
|
+
|
|
8
|
+
const [, , ...$arguments] = process.argv;
|
|
9
|
+
const options = parseGateArguments($arguments);
|
|
10
|
+
await wrapCliTask(() => gate(options));
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import process from 'node:process';
|
|
2
|
+
|
|
3
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
4
|
+
import { spellcheck } from '@mnaoumov/typescript-dev-toolkit/linters/cspell';
|
|
5
|
+
|
|
6
|
+
const [, , ...paths] = process.argv;
|
|
7
|
+
|
|
8
|
+
await wrapCliTask(() => spellcheck({ paths }));
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import process from 'node:process';
|
|
2
|
+
|
|
3
|
+
import { lint } from '@mnaoumov/obsidian-dev-toolkit/linters/eslint';
|
|
4
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
5
|
+
|
|
6
|
+
const [, , ...paths] = process.argv;
|
|
7
|
+
|
|
8
|
+
await wrapCliTask(() => lint({ paths, shouldFix: true }));
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import process from 'node:process';
|
|
2
|
+
|
|
3
|
+
import { lint } from '@mnaoumov/obsidian-dev-toolkit/linters/eslint';
|
|
4
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
5
|
+
|
|
6
|
+
const [, , ...paths] = process.argv;
|
|
7
|
+
|
|
8
|
+
await wrapCliTask(() => lint({ paths }));
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import process from 'node:process';
|
|
2
|
+
|
|
3
|
+
import { lint } from '@mnaoumov/obsidian-dev-toolkit/linters/markdownlint';
|
|
4
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
5
|
+
|
|
6
|
+
const [, , ...paths] = process.argv;
|
|
7
|
+
|
|
8
|
+
await wrapCliTask(() => lint({ paths, shouldFix: true }));
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import process from 'node:process';
|
|
2
|
+
|
|
3
|
+
import { lint } from '@mnaoumov/obsidian-dev-toolkit/linters/markdownlint';
|
|
4
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
5
|
+
|
|
6
|
+
const [, , ...paths] = process.argv;
|
|
7
|
+
|
|
8
|
+
await wrapCliTask(() => lint({ paths }));
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import {
|
|
2
|
+
CliTaskResult,
|
|
3
|
+
wrapCliTask
|
|
4
|
+
} from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
5
|
+
import {
|
|
6
|
+
findOverExposure,
|
|
7
|
+
formatOverExposureFindings
|
|
8
|
+
} from '@mnaoumov/typescript-dev-toolkit/linters/over-exposure';
|
|
9
|
+
import process from 'node:process';
|
|
10
|
+
import { parseArgs } from 'node:util';
|
|
11
|
+
|
|
12
|
+
const [, , ...args] = process.argv;
|
|
13
|
+
|
|
14
|
+
const { values } = parseArgs({
|
|
15
|
+
args,
|
|
16
|
+
options: {
|
|
17
|
+
force: { type: 'boolean' }
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
await wrapCliTask(() => {
|
|
22
|
+
const findings = findOverExposure({ projectFolder: process.cwd(), shouldFix: true, shouldForce: values.force ?? false });
|
|
23
|
+
process.stdout.write(formatOverExposureFindings(findings, { baseFolder: process.cwd() }));
|
|
24
|
+
return CliTaskResult.Success(findings.every((finding) => finding.wasFixed));
|
|
25
|
+
});
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import {
|
|
2
|
+
CliTaskResult,
|
|
3
|
+
wrapCliTask
|
|
4
|
+
} from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
5
|
+
import {
|
|
6
|
+
findOverExposure,
|
|
7
|
+
formatOverExposureFindings
|
|
8
|
+
} from '@mnaoumov/typescript-dev-toolkit/linters/over-exposure';
|
|
9
|
+
import process from 'node:process';
|
|
10
|
+
|
|
11
|
+
await wrapCliTask(() => {
|
|
12
|
+
const findings = findOverExposure({ projectFolder: process.cwd() });
|
|
13
|
+
process.stdout.write(formatOverExposureFindings(findings, { baseFolder: process.cwd() }));
|
|
14
|
+
return CliTaskResult.Success(findings.length === 0);
|
|
15
|
+
});
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import {
|
|
2
|
+
parseVersionArguments,
|
|
3
|
+
updateVersion
|
|
4
|
+
} from '@mnaoumov/obsidian-dev-toolkit/version';
|
|
5
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
6
|
+
import process from 'node:process';
|
|
7
|
+
|
|
8
|
+
const [, , ...$arguments] = process.argv;
|
|
9
|
+
const { options, versionUpdateType } = parseVersionArguments($arguments);
|
|
10
|
+
await wrapCliTask(() => updateVersion(versionUpdateType, options));
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"main": "../../../dist/lib/cjs/linters/eslint-rules/manifest-description.cjs",
|
|
3
|
+
"module": "../../../dist/lib/esm/linters/eslint-rules/manifest-description.mjs",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"types": "../../../dist/lib/cjs/linters/eslint-rules/manifest-description.d.cts"
|
|
6
|
+
}
|