@mnaoumov/create-obsidian-plugin 1.0.1 → 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/README.md +38 -7
- package/dist/main.js +1068 -333
- package/package.json +15 -6
- package/src/main.ts +118 -11
- package/templates/default/.github/ISSUE_TEMPLATE/config.yml.ejs +4 -0
- package/templates/default/.github/workflows/attest-release-assets.yml.ejs +1 -11
- package/templates/default/.github/workflows/ci.yml_framework.ejs +19 -0
- package/templates/default/.github/workflows/ci.yml_framework@job-permissions_measured-coverage-badge.ejs +3 -0
- package/templates/default/.github/workflows/ci.yml_framework@with_measured-coverage-badge.ejs +1 -0
- package/templates/default/.github/workflows/{ci.yml.ejs → ci.yml_standalone.ejs} +1 -1
- package/templates/default/.github/workflows/release.yml_framework.ejs +19 -0
- package/templates/default/.github/workflows/{release.yml.ejs → release.yml_standalone.ejs} +1 -1
- package/templates/default/.gitignore_common.ejs +1 -0
- package/templates/default/.gitignore_wdio-obsidian.ejs +2 -0
- package/templates/default/.nvmrc.ejs +1 -0
- package/templates/default/.prettierignore.ejs +1 -0
- package/templates/default/.prettierignore@ignores_docs-showcase.ejs +3 -0
- package/templates/default/{CONTRIBUTING.md@demo-vault_dev-utils.ejs → CONTRIBUTING.md@demo-vault_framework.ejs} +1 -1
- package/templates/default/{README.md@demo-vault_dev-utils.ejs → README.md@demo-vault_framework.ejs} +1 -1
- package/templates/default/README.md@preset_docs-showcase.ejs +4 -0
- package/templates/default/{README.md@preset_dev-utils.ejs → README.md@preset_framework.ejs} +1 -1
- package/templates/default/biome.jsonc_framework.ejs +16 -0
- package/templates/default/biome.jsonc_framework@excludes_docs-showcase.ejs +1 -0
- package/templates/default/{biome.jsonc.ejs → biome.jsonc_standalone.ejs} +1 -1
- package/templates/default/cspell.json.ejs +10 -2
- package/templates/default/cspell.json@ignore-paths_docs-showcase.ejs +1 -0
- package/templates/default/demo-vault/.gitignore.ejs +4 -4
- package/templates/default/demo-vault/00 Start.md.ejs +1 -1
- package/templates/default/demo-vault/01 Sample commands.md.ejs +4 -4
- package/templates/default/demo-vault/02 Settings.md.ejs +2 -2
- package/templates/default/demo-vault/03 WebAssembly.md.ejs +2 -2
- package/templates/default/demo-vault/README.md.ejs +1 -1
- package/templates/default/demo-vault/_assets/CodeScriptToolkit/demoSetup.ts.ejs +1 -1
- package/templates/default/demo-vault/_assets/CodeScriptToolkit/startup.ts.ejs +4 -4
- package/templates/default/dprint.json_framework.ejs +10 -0
- package/templates/default/dprint.json_framework@excludes_docs-showcase.ejs +2 -0
- package/templates/default/dprint.json_standalone.ejs +1 -0
- package/templates/default/eslint.config.mts_standalone.ejs +9 -0
- package/templates/default/jest.config.ts_framework.ejs +31 -0
- package/templates/default/{scripts/rollup.config.ts@lint-out-dir_dev-utils.ejs → jest.config.ts_framework@lint-root-dir_framework.ejs} +1 -1
- package/templates/default/jest.config.ts_framework@ts-jest-tsconfig_solid.ejs +8 -0
- package/templates/default/{jest.config.ts.ejs → jest.config.ts_standalone.ejs} +0 -1
- package/templates/default/package.json@targets_parcel-targets.ejs +31 -0
- package/templates/default/package.json@targets_parcel.ejs +2 -33
- package/templates/default/parcel-transformer-inline-imports.cjs.ejs +1 -1
- package/templates/default/prettier.config.mjs_framework.ejs +3 -0
- package/templates/default/scripts/build-clean.ts.ejs +2 -2
- package/templates/default/scripts/build-compile-typescript.ts.ejs +14 -0
- package/templates/default/scripts/build-compile.ts.ejs +2 -2
- package/templates/default/scripts/build-options.ts.ejs +9 -0
- package/templates/default/scripts/build-styles.ts.ejs +4 -7
- package/templates/default/scripts/build.ts.ejs +2 -2
- package/templates/default/scripts/build.ts@bundler_adapter-cli.ejs +11 -0
- package/templates/default/scripts/build.ts@bundler_adapter-cli@run_rollup.ejs +1 -0
- package/templates/default/scripts/build.ts@bundler_adapter-cli@run_vite.ejs +1 -0
- package/templates/default/scripts/build.ts@bundler_adapter-cli@run_webpack.ejs +1 -0
- package/templates/default/scripts/build.ts@bundler_cli-bundler.ejs +1 -1
- package/templates/default/scripts/build.ts@bundler_cli-bundler@import_tailwind.ejs +0 -1
- package/templates/default/scripts/build.ts@bundler_esbuild.ejs +2 -2
- package/templates/default/scripts/build.ts@bundler_esbuild@preset_framework.ejs +5 -0
- package/templates/default/scripts/build.ts@bundler_parcel-adapter.ejs +5 -0
- package/templates/default/scripts/commit.ts_framework.ejs +3 -0
- package/templates/default/scripts/commitlint-config.ts_framework.ejs +1 -0
- package/templates/default/scripts/demo-vault-global-setup.ts.ejs +7 -4
- package/templates/default/scripts/dev.ts.ejs +1 -1
- package/templates/default/scripts/dev.ts@bundler_adapter-cli.ejs +6 -0
- package/templates/default/scripts/dev.ts@bundler_adapter-cli@run_rollup.ejs +3 -0
- package/templates/default/scripts/dev.ts@bundler_adapter-cli@run_vite.ejs +3 -0
- package/templates/default/scripts/dev.ts@bundler_adapter-cli@run_webpack.ejs +3 -0
- package/templates/default/scripts/dev.ts@bundler_esbuild.ejs +2 -2
- package/templates/default/scripts/dev.ts@bundler_esbuild@preset_framework.ejs +5 -0
- package/templates/default/scripts/dev.ts@bundler_parcel-adapter.ejs +5 -0
- package/templates/default/scripts/eslint-config.ts.ejs +3 -14
- package/templates/default/scripts/eslint-config.ts@ignores_docs-showcase.ejs +4 -0
- package/templates/default/scripts/find-overexposed-fix.ts.ejs +4 -4
- package/templates/default/scripts/find-overexposed.ts.ejs +3 -3
- package/templates/default/scripts/format-check.ts@tool_biome-formatter.ejs +3 -8
- package/templates/default/scripts/format-check.ts@tool_biome-formatter@preset_framework.ejs +7 -0
- package/templates/default/scripts/format-check.ts@tool_biome-formatter@preset_standalone.ejs +8 -0
- package/templates/default/scripts/format-check.ts@tool_dprint.ejs +2 -2
- package/templates/default/scripts/format-check.ts@tool_dprint@preset_framework.ejs +7 -0
- package/templates/default/scripts/format-check.ts@tool_prettier.ejs +3 -8
- package/templates/default/scripts/format-check.ts@tool_prettier@preset_framework.ejs +7 -0
- package/templates/default/scripts/format-check.ts@tool_prettier@preset_standalone.ejs +8 -0
- package/templates/default/scripts/format.ts@tool_biome-formatter.ejs +3 -8
- package/templates/default/scripts/format.ts@tool_biome-formatter@preset_framework.ejs +7 -0
- package/templates/default/scripts/format.ts@tool_biome-formatter@preset_standalone.ejs +8 -0
- package/templates/default/scripts/format.ts@tool_dprint.ejs +2 -2
- package/templates/default/scripts/format.ts@tool_dprint@preset_framework.ejs +7 -0
- package/templates/default/scripts/format.ts@tool_prettier.ejs +3 -8
- package/templates/default/scripts/format.ts@tool_prettier@preset_framework.ejs +7 -0
- package/templates/default/scripts/format.ts@tool_prettier@preset_standalone.ejs +8 -0
- package/templates/default/scripts/gate.ts.ejs +3 -3
- package/templates/default/scripts/lint-fix.ts.ejs +2 -2
- package/templates/default/scripts/lint-fix.ts@tool_biome-linter.ejs +3 -8
- package/templates/default/scripts/lint-fix.ts@tool_biome-linter@preset_framework.ejs +7 -0
- package/templates/default/scripts/lint-fix.ts@tool_biome-linter@preset_standalone.ejs +8 -0
- package/templates/default/scripts/lint-fix.ts@tool_eslint.ejs +2 -2
- package/templates/default/scripts/lint-fix.ts@tool_eslint@preset_framework.ejs +7 -0
- package/templates/default/scripts/lint-md-fix.ts_framework.ejs +7 -0
- package/templates/default/scripts/lint-md.ts_framework.ejs +7 -0
- package/templates/default/scripts/lint.ts.ejs +2 -2
- package/templates/default/scripts/lint.ts@tool_biome-linter.ejs +3 -8
- package/templates/default/scripts/lint.ts@tool_biome-linter@preset_framework.ejs +7 -0
- package/templates/default/scripts/lint.ts@tool_biome-linter@preset_standalone.ejs +8 -0
- package/templates/default/scripts/lint.ts@tool_eslint.ejs +2 -2
- package/templates/default/scripts/lint.ts@tool_eslint@preset_framework.ejs +7 -0
- package/templates/default/scripts/{markdownlint-cli2-config.ts_dev-utils.ejs → markdownlint-cli2-config.ts_framework.ejs} +4 -4
- package/templates/default/scripts/markdownlint-cli2-config.ts_standalone.ejs +0 -3
- package/templates/default/scripts/nano-staged-config.ts_toolkit-nano-staged.ejs +3 -0
- package/templates/default/scripts/prepare.ts_framework.ejs +3 -0
- package/templates/default/scripts/rollup.config.ts_framework.ejs +49 -0
- package/templates/default/scripts/rollup.config.ts_framework@plugin_rollup-json.ejs +2 -0
- package/templates/default/scripts/rollup.config.ts_framework@plugin_scss.ejs +3 -0
- package/templates/default/scripts/{rollup.config.ts.ejs → rollup.config.ts_standalone.ejs} +4 -4
- package/templates/default/scripts/rollup.config.ts_standalone@import_rollup-json.ejs +1 -0
- package/templates/default/scripts/rollup.config.ts_standalone@import_scss.ejs +1 -0
- package/templates/default/scripts/rollup.config.ts_standalone@unwrap_rollup-json.ejs +1 -0
- package/templates/default/scripts/rollup.config.ts_standalone@unwrap_scss.ejs +1 -0
- package/templates/default/scripts/spellcheck.ts_framework.ejs +7 -0
- package/templates/default/scripts/stylesheet-stub.ts.ejs +1 -1
- package/templates/default/scripts/test-coverage.ts.ejs +2 -8
- package/templates/default/scripts/test-coverage.ts@tool_jest.ejs +5 -0
- package/templates/default/scripts/test-coverage.ts@tool_vitest.ejs +8 -0
- package/templates/default/scripts/test-e2e.ts@tool_obsidian-test.ejs +2 -8
- package/templates/default/scripts/test-e2e.ts@tool_obsidian-test@preset_framework.ejs +4 -0
- package/templates/default/scripts/test-e2e.ts@tool_obsidian-test@preset_standalone.ejs +8 -0
- package/templates/default/scripts/test-e2e.ts@tool_wdio-obsidian.ejs +2 -8
- package/templates/default/scripts/test-e2e.ts@tool_wdio-obsidian@preset_framework.ejs +5 -0
- package/templates/default/scripts/test-e2e.ts@tool_wdio-obsidian@preset_standalone.ejs +8 -0
- package/templates/default/scripts/test-integration-android.ts.ejs +2 -2
- package/templates/default/scripts/test-integration-demo-vault.ts.ejs +2 -2
- package/templates/default/scripts/test-integration-desktop-performance.ts.ejs +2 -2
- package/templates/default/scripts/test-integration-desktop.ts.ejs +2 -2
- package/templates/default/scripts/test-integration-no-app.ts.ejs +2 -2
- package/templates/default/scripts/test-integration.ts.ejs +2 -2
- package/templates/default/scripts/test-watch.ts_framework@tool_jest.ejs +5 -0
- package/templates/default/scripts/test-watch.ts_framework@tool_vitest.ejs +8 -0
- package/templates/default/scripts/test.ts_framework@tool_jest.ejs +5 -0
- package/templates/default/scripts/test.ts_framework@tool_vitest.ejs +8 -0
- package/templates/default/scripts/{version.ts_dev-utils.ejs → version.ts_framework.ejs} +3 -3
- package/templates/default/scripts/vite.config.ts_framework.ejs +10 -0
- package/templates/default/scripts/{vite.config.ts.ejs → vite.config.ts_standalone.ejs} +5 -8
- package/templates/default/scripts/vitest-config.ts.ejs +3 -2
- package/templates/default/scripts/vitest-config.ts@edit-context_docs-showcase.ejs +3 -0
- package/templates/default/scripts/webpack.config.ts_framework.ejs +19 -0
- package/templates/default/scripts/webpack.config.ts_framework@import_scss.ejs +1 -0
- package/templates/default/scripts/webpack.config.ts_framework@plugin_scss.ejs +1 -0
- package/templates/default/scripts/webpack.config.ts_framework@rule_scss.ejs +4 -0
- package/templates/default/scripts/{webpack.config.ts.ejs → webpack.config.ts_standalone.ejs} +4 -4
- package/templates/default/src/demo-vault-buttons.demo-vault.integration.test.ts.ejs +2 -2
- package/templates/default/src/demo-vault.no-app.integration.test.ts.ejs +3 -3
- package/templates/default/src/docs-showcase.desktop.integration.test.ts.ejs +77 -0
- package/templates/default/src/editor-extensions/{sample-state-field.ts_dev-utils.ejs → sample-state-field.ts_framework.ejs} +1 -1
- package/templates/default/src/main.ts@import_tailwind.ejs +1 -1
- package/templates/default/src/main.ts@import_tailwind@preset_framework.ejs +1 -0
- package/templates/default/src/main.ts@import_tailwind@preset_standalone.ejs +1 -0
- package/templates/default/src/{plugin-settings-component.test.ts_enhanced.ejs → plugin-settings-component.test.ts_all-in-one.ejs} +4 -4
- package/templates/default/src/plugin-settings-component.test.ts_demo.ejs +5 -5
- package/templates/default/src/{plugin-settings-component.ts_enhanced.ejs → plugin-settings-component.ts_all-in-one.ejs} +3 -3
- package/templates/default/src/plugin-settings-component.ts_demo.ejs +7 -7
- package/templates/default/src/{plugin-settings-tab.ts_enhanced.ejs → plugin-settings-tab.ts_all-in-one.ejs} +1 -1
- package/templates/default/src/plugin-settings-tab.ts_demo.ejs +3 -3
- package/templates/default/src/plugin-settings.ts_demo.ejs +2 -2
- package/templates/default/src/{plugin.ts_enhanced.ejs → plugin.ts_all-in-one.ejs} +5 -5
- package/templates/default/src/plugin.ts_all-in-one@import2_css-modules.ejs +1 -0
- package/templates/default/src/plugin.ts_all-in-one@import2_docs-showcase.ejs +1 -0
- package/templates/default/src/plugin.ts_all-in-one@onload_css-modules.ejs +1 -0
- package/templates/default/src/plugin.ts_all-in-one@onload_docs-showcase.ejs +3 -0
- package/templates/default/src/plugin.ts_demo.ejs +16 -16
- package/templates/default/src/plugin.ts_demo@import_css-modules.ejs +1 -0
- package/templates/default/src/plugin.ts_demo@onload_css-modules.ejs +1 -0
- package/templates/default/src/plugin.ts_standalone.ejs +5 -3
- package/templates/default/src/plugin.ts_standalone@import_css-modules.ejs +1 -0
- package/templates/default/src/plugin.ts_standalone@onload_css-modules.ejs +1 -0
- package/templates/default/src/react-components/{sample-react-component.tsx_dev-utils.ejs → sample-react-component.tsx_framework.ejs} +1 -1
- package/templates/default/src/styles/css-modules.d.ts.ejs +9 -3
- package/templates/default/src/styles/{main.css_dev-utils.ejs → main.css_framework.ejs} +2 -2
- package/templates/default/src/styles/main.module.css.ejs +4 -2
- package/templates/default/src/styles/{main.scss_dev-utils.ejs → main.scss_framework.ejs} +2 -2
- package/templates/default/src/styles/sample-css-module-command.ts.ejs +30 -0
- package/templates/default/src/views/{sample-react-view.tsx_dev-utils.ejs → sample-react-view.tsx_framework.ejs} +1 -1
- package/templates/default/src/wasm/README.md.ejs +1 -1
- package/templates/default/src/wasm/answer.ts_wasm-adapter.ejs +18 -0
- package/templates/default/{tsconfig.json_dev-utils.ejs → tsconfig.json_framework.ejs} +2 -2
- package/templates/default/tsconfig.json_framework@exclude_docs-showcase.ejs +4 -0
- package/templates/default/tsconfig.json_framework@include_wdio-obsidian.ejs +1 -0
- package/templates/default/tsconfig.json_framework@types_toolkit-styles.ejs +2 -0
- package/templates/default/tsconfig.json_framework@types_wasm.ejs +2 -0
- package/templates/default/tsconfig.json_standalone.ejs +1 -1
- package/templates/default/vitest.config.ts_standalone.ejs +11 -2
- package/templates/default/wdio.conf.mts.ejs +5 -0
- package/templates/default/wdio.conf.ts.ejs +4 -4
- package/templates/docs-showcase/files/src/docs/README.md +511 -0
- package/templates/docs-showcase/files/src/docs/entry.d.ts +8 -0
- package/templates/docs-showcase/files/src/docs/entry.js +4 -0
- package/templates/docs-showcase/files/src/docs/host.ts +449 -0
- package/templates/docs-showcase/files/src/docs/index.ts +699 -0
- package/templates/docs-showcase/files/src/docs/plugins/editor/communicating-with-editor-extensions/01-intro.ts +21 -0
- package/templates/docs-showcase/files/src/docs/plugins/editor/communicating-with-editor-extensions/03-state-field.ts +32 -0
- package/templates/docs-showcase/files/src/docs/plugins/editor/decorations/01-widgets.ts +23 -0
- package/templates/docs-showcase/files/src/docs/plugins/editor/decorations/02-widgets.ts +20 -0
- package/templates/docs-showcase/files/src/docs/plugins/editor/decorations/04-state-fields.ts +57 -0
- package/templates/docs-showcase/files/src/docs/plugins/editor/decorations/05-view-plugins.ts +79 -0
- package/templates/docs-showcase/files/src/docs/plugins/editor/editor/01-intro.ts +26 -0
- package/templates/docs-showcase/files/src/docs/plugins/editor/editor/03-replace-current-selection.ts +26 -0
- package/templates/docs-showcase/files/src/docs/plugins/editor/markdown-post-processing/01-intro.ts +39 -0
- package/templates/docs-showcase/files/src/docs/plugins/editor/state-fields/01-defining-state-effects.ts +19 -0
- package/templates/docs-showcase/files/src/docs/plugins/editor/state-fields/02-defining-a-state-field.ts +35 -0
- package/templates/docs-showcase/files/src/docs/plugins/editor/state-fields/04-dispatching-state-effects.ts +34 -0
- package/templates/docs-showcase/files/src/docs/plugins/editor/state-management/01-state-changes.ts +21 -0
- package/templates/docs-showcase/files/src/docs/plugins/editor/state-management/02-state-changes.ts +23 -0
- package/templates/docs-showcase/files/src/docs/plugins/editor/view-plugins/01-creating-a-view-plugin.ts +36 -0
- package/templates/docs-showcase/files/src/docs/plugins/events/01-intro.ts +21 -0
- package/templates/docs-showcase/files/src/docs/plugins/getting-started/anatomy-of-a-plugin/01-intro.ts +22 -0
- package/templates/docs-showcase/files/src/docs/plugins/getting-started/anatomy-of-a-plugin/02-plugin-lifecycle.ts +22 -0
- package/templates/docs-showcase/files/src/docs/plugins/getting-started/build-a-plugin/06-step-5-update-the-source-code.ts +19 -0
- package/templates/docs-showcase/files/src/docs/plugins/getting-started/build-a-plugin/07-step-5-update-the-source-code.ts +21 -0
- package/templates/docs-showcase/files/src/docs/plugins/getting-started/mobile-development/03-platform-specific-features.ts +25 -0
- package/templates/docs-showcase/files/src/docs/plugins/getting-started/use-react-in-your-plugin/03-configure-your-plugin.ts +23 -0
- package/templates/docs-showcase/files/src/docs/plugins/guides/build-a-bases-view/01-step-1-sample-plugin-setup.ts +18 -0
- package/templates/docs-showcase/files/src/docs/plugins/guides/build-a-bases-view/02-step-2-create-and-register-the-bases-vie.ts +46 -0
- package/templates/docs-showcase/files/src/docs/plugins/guides/build-a-bases-view/03-step-3-add-configuration.ts +40 -0
- package/templates/docs-showcase/files/src/docs/plugins/guides/defer-views/04-accessing-your-customview-without-reveal.ts +26 -0
- package/templates/docs-showcase/files/src/docs/plugins/guides/manage-plugin-lifecycle/01-overview.ts +26 -0
- package/templates/docs-showcase/files/src/docs/plugins/guides/manage-plugin-lifecycle/02-overview.ts +30 -0
- package/templates/docs-showcase/files/src/docs/plugins/guides/manage-plugin-lifecycle/03-automatic-resource-management-with-compo.ts +26 -0
- package/templates/docs-showcase/files/src/docs/plugins/guides/manage-plugin-lifecycle/04-registerevent-eventref.ts +22 -0
- package/templates/docs-showcase/files/src/docs/plugins/guides/manage-plugin-lifecycle/05-registerinterval-id.ts +21 -0
- package/templates/docs-showcase/files/src/docs/plugins/guides/manage-plugin-lifecycle/06-registerdomevent-el-event-handler.ts +20 -0
- package/templates/docs-showcase/files/src/docs/plugins/guides/manage-plugin-lifecycle/08-understanding-the-lifecycle-of-objects.ts +29 -0
- package/templates/docs-showcase/files/src/docs/plugins/guides/manage-plugin-lifecycle/14-componentized-modal-example.ts +37 -0
- package/templates/docs-showcase/files/src/docs/plugins/guides/optimize-plugin-load-time/01-option-a-check-if-the-layout-is-ready.ts +29 -0
- package/templates/docs-showcase/files/src/docs/plugins/guides/optimize-plugin-load-time/02-option-b-register-the-handler-once-the-l.ts +27 -0
- package/templates/docs-showcase/files/src/docs/plugins/guides/store-secrets/03-step-3-retrieve-the-secret-value.ts +22 -0
- package/templates/docs-showcase/files/src/docs/plugins/releasing/plugin-guidelines/01-use-setheading-instead-of-a-h1-h2.ts +20 -0
- package/templates/docs-showcase/files/src/docs/plugins/releasing/plugin-guidelines/03-clean-up-resources-when-plugin-unloads.ts +23 -0
- package/templates/docs-showcase/files/src/docs/plugins/releasing/plugin-guidelines/04-avoid-accessing-workspace-activeleaf-dir.ts +24 -0
- package/templates/docs-showcase/files/src/docs/plugins/releasing/plugin-guidelines/05-avoid-accessing-workspace-activeleaf-dir.ts +22 -0
- package/templates/docs-showcase/files/src/docs/plugins/releasing/plugin-guidelines/10-avoid-iterating-all-files-to-find-a-file.ts +20 -0
- package/templates/docs-showcase/files/src/docs/plugins/releasing/plugin-guidelines/11-avoid-iterating-all-files-to-find-a-file.ts +20 -0
- package/templates/docs-showcase/files/src/docs/plugins/releasing/plugin-guidelines/13-use-normalizepath-to-clean-up-user-defin.ts +18 -0
- package/templates/docs-showcase/files/src/docs/plugins/releasing/plugin-guidelines/15-no-hardcoded-styling.ts +21 -0
- package/templates/docs-showcase/files/src/docs/plugins/releasing/plugin-guidelines/16-no-hardcoded-styling.ts +19 -0
- package/templates/docs-showcase/files/src/docs/plugins/releasing/plugin-guidelines/17-no-hardcoded-styling.ts +14 -0
- package/templates/docs-showcase/files/src/docs/plugins/releasing/plugin-guidelines/18-prefer-async-await-over-promise.ts +24 -0
- package/templates/docs-showcase/files/src/docs/plugins/releasing/plugin-guidelines/19-prefer-async-await-over-promise.ts +27 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/commands/01-intro.ts +25 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/commands/03-editor-commands.ts +27 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/commands/05-hot-keys.ts +25 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/context-menus/01-intro.ts +41 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/html-elements/02-create-html-elements-using-createel.ts +19 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/html-elements/03-create-html-elements-using-createel.ts +21 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/html-elements/04-style-your-elements.ts +14 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/html-elements/05-style-your-elements.ts +21 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/html-elements/06-conditional-styles.ts +19 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/icons/01-use-icons.ts +20 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/icons/02-use-icons.ts +14 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/icons/03-add-your-own-icon.ts +23 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/modals/01-intro.ts +20 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/modals/02-intro.ts +26 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/modals/03-accept-user-input.ts +38 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/modals/04-accept-user-input.ts +22 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/modals/05-select-from-list-of-suggestions.ts +56 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/modals/06-approximate-string-matching-results.ts +28 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/modals/07-custom-rendering-of-fuzzy-search-results.ts +41 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/ribbon-actions/01-intro.ts +21 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/right-to-left/01-use-fallback-values-when-necessary.ts +14 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/right-to-left/02-global-selectors.ts +14 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/right-to-left/03-icons-are-mirrored-automatically.ts +14 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/09-toggle.ts +20 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/10-text.ts +23 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/11-textarea.ts +23 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/12-number.ts +23 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/13-slider.ts +23 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/14-dropdown.ts +28 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/15-file.ts +27 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/16-folder.ts +23 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/17-color-picker.ts +20 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/18-validating-input.ts +28 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/23-groups.ts +27 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/32-cleanup.ts +30 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/33-no-top-level-heading.ts +27 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/34-headings-only-when-there-are-multiple-se.ts +26 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/36-headings.ts +20 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/38-moment-format.ts +42 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/39-buttons.ts +26 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/40-extra-button.ts +28 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/settings/41-progress-bar.ts +23 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/status-bar/01-intro.ts +20 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/status-bar/02-intro.ts +25 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/views/01-intro.ts +39 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/workspace/05-inspect-the-workspace.ts +23 -0
- package/templates/docs-showcase/files/src/docs/plugins/user-interface/workspace/06-leaf-groups.ts +19 -0
- package/templates/docs-showcase/files/src/docs/plugins/vault/02-read-files.ts +37 -0
- package/templates/docs-showcase/files/src/docs/plugins/vault/03-modify-files.ts +19 -0
- package/templates/docs-showcase/files/src/docs/plugins/vault/04-modify-files.ts +22 -0
- package/templates/docs-showcase/files/src/docs/plugins/vault/05-is-it-a-file-or-folder.ts +25 -0
- package/templates/docs-showcase/files/src/docs/reference/css-variables/about-styling/01-for-plugins.ts +14 -0
- package/templates/docs-showcase/files/src/docs/reference/css-variables/about-styling/02-for-themes-and-snippets.ts +14 -0
- package/templates/docs-showcase/files/src/docs/reference/css-variables/publish/site-fonts/01-intro.ts +14 -0
- package/templates/docs-showcase/files/src/docs/reference/typescript-api/command/callback/01-example.ts +24 -0
- package/templates/docs-showcase/files/src/docs/reference/typescript-api/debounce/01-example.ts +24 -0
- package/templates/docs-showcase/files/src/docs/reference/typescript-api/vault/process/01-example.ts +22 -0
- package/templates/docs-showcase/files/src/docs/themes/app-themes/build-a-theme/05-step-4-change-the-font.ts +14 -0
- package/templates/docs-showcase/files/src/docs/themes/app-themes/build-a-theme/06-step-5-change-the-background-color.ts +14 -0
- package/templates/docs-showcase/files/src/docs/themes/app-themes/build-a-theme/07-step-6-change-the-input-hover-border-col.ts +14 -0
- package/templates/docs-showcase/files/src/docs/themes/app-themes/build-a-theme/08-step-7-discover-css-variables-in-use.ts +14 -0
- package/templates/docs-showcase/files/src/docs/themes/app-themes/embed-fonts-and-images-in-your-theme/02-use-data-urls.ts +14 -0
- package/templates/docs-showcase/files/src/docs/themes/app-themes/theme-guidelines/01-use-css-variables.ts +14 -0
- package/templates/docs-showcase/files/src/docs/themes/obsidian-publish-themes/best-practices-for-publish-themes/01-small-screens-and-mobile-devices.ts +14 -0
- package/templates/docs-showcase/files/src/docs/themes/obsidian-publish-themes/build-a-publish-theme/01-intro.ts +14 -0
- package/templates/docs-showcase/files/src/docs/tsconfig.json +25 -0
- package/templates/docs-showcase/host/entry.d.ts +8 -0
- package/templates/docs-showcase/host/entry.js +4 -0
- package/templates/docs-showcase/host/host.ts +449 -0
- package/templates/docs-showcase/host/tsconfig.json +25 -0
- package/templates/docs-showcase/snippets.json +3566 -0
- package/templates/official-sample/README.md +9 -0
- package/templates/official-sample/files/.editorconfig.vendored +11 -0
- package/templates/official-sample/files/.github/workflows/lint.yml.vendored +27 -0
- package/templates/official-sample/files/.github/workflows/release.yml.vendored +50 -0
- package/templates/official-sample/files/.gitignore.vendored +22 -0
- package/templates/official-sample/files/.npmrc.vendored +1 -0
- package/templates/official-sample/files/AGENTS.md.vendored +269 -0
- package/templates/official-sample/files/LICENSE.vendored +5 -0
- package/templates/official-sample/files/README.md.vendored +92 -0
- package/templates/official-sample/files/esbuild.config.mjs.vendored +49 -0
- package/templates/official-sample/files/eslint.config.mts.vendored +32 -0
- package/templates/official-sample/files/manifest.json.vendored +11 -0
- package/templates/official-sample/files/package-lock.json.vendored +5053 -0
- package/templates/official-sample/files/package.json.vendored +27 -0
- package/templates/official-sample/files/src/main.ts.vendored +114 -0
- package/templates/official-sample/files/src/settings.ts.vendored +38 -0
- package/templates/official-sample/files/styles.css.vendored +8 -0
- package/templates/official-sample/files/tsconfig.json.vendored +19 -0
- package/templates/official-sample/files/version-bump.mjs.vendored +17 -0
- package/templates/official-sample/files/versions.json.vendored +3 -0
- package/upstreams.json +35 -0
- package/templates/default/dprint.json_dev-utils.ejs +0 -10
- package/templates/default/jest.config.ts@lint-root-dir_dev-utils.ejs +0 -1
- package/templates/default/scripts/build.ts@bundler_cli-bundler@lint-build-styles_dev-utils.ejs +0 -1
- package/templates/default/scripts/build.ts@bundler_esbuild@dev-utils-pre-build_tailwind.ejs +0 -2
- package/templates/default/scripts/build.ts@bundler_esbuild@lint-build-styles_dev-utils.ejs +0 -1
- package/templates/default/scripts/build.ts@bundler_esbuild@preset_dev-utils.ejs +0 -7
- package/templates/default/scripts/commit.ts_dev-utils.ejs +0 -3
- package/templates/default/scripts/dev.ts@bundler_esbuild@dev-utils-pre-build_tailwind.ejs +0 -2
- package/templates/default/scripts/dev.ts@bundler_esbuild@lint-build-styles_dev-utils.ejs +0 -1
- package/templates/default/scripts/dev.ts@bundler_esbuild@preset_dev-utils.ejs +0 -7
- package/templates/default/scripts/esbuild-plugins.ts.ejs +0 -20
- package/templates/default/scripts/esbuild-plugins.ts@dev-utils-import_vue.ejs +0 -2
- package/templates/default/scripts/esbuild-plugins.ts@dev-utils-plugin_vue.ejs +0 -1
- package/templates/default/scripts/esbuild-plugins.ts@dev-utils-plugin_wasm.ejs +0 -13
- package/templates/default/scripts/format-check.ts@tool_dprint@preset_dev-utils.ejs +0 -7
- package/templates/default/scripts/format.ts@tool_dprint@preset_dev-utils.ejs +0 -7
- package/templates/default/scripts/lint-fix.ts@tool_eslint@preset_dev-utils.ejs +0 -7
- package/templates/default/scripts/lint-md-fix.ts_dev-utils.ejs +0 -7
- package/templates/default/scripts/lint-md.ts_dev-utils.ejs +0 -7
- package/templates/default/scripts/lint.ts@tool_eslint@preset_dev-utils.ejs +0 -7
- package/templates/default/scripts/prepare.ts_dev-utils.ejs +0 -3
- package/templates/default/scripts/spellcheck.ts_dev-utils.ejs +0 -7
- package/templates/default/scripts/test-watch.ts_dev-utils@tool_jest.ejs +0 -13
- package/templates/default/scripts/test-watch.ts_dev-utils@tool_vitest.ejs +0 -8
- package/templates/default/scripts/test.ts_dev-utils@tool_jest.ejs +0 -13
- package/templates/default/scripts/test.ts_dev-utils@tool_vitest.ejs +0 -8
- package/templates/default/scripts/vite.config.ts@lint-empty-out-dir_dev-utils.ejs +0 -1
- package/templates/default/scripts/vite.config.ts@lint-out-dir_dev-utils.ejs +0 -1
- package/templates/default/scripts/webpack.config.ts@lint-webpack-default_dev-utils.ejs +0 -1
- package/templates/default/src/main.ts@import_css-modules.ejs +0 -1
- package/templates/default/src/views/sample-preact-view.tsx_dev-utils.ejs +0 -45
- package/templates/default/tsconfig.json_dev-utils@compiler-options_preact.ejs +0 -2
- package/templates/default/tsconfig.json_dev-utils@compiler-options_react.ejs +0 -1
- package/templates/default/tsconfig.json_dev-utils@compiler-options_solid.ejs +0 -2
- /package/templates/default/.github/workflows/{ci.yml@steps_biome-linter.ejs → ci.yml_standalone@steps_biome-linter.ejs} +0 -0
- /package/templates/default/.github/workflows/{ci.yml@steps_cspell.ejs → ci.yml_standalone@steps_cspell.ejs} +0 -0
- /package/templates/default/.github/workflows/{ci.yml@steps_dprint.ejs → ci.yml_standalone@steps_dprint.ejs} +0 -0
- /package/templates/default/.github/workflows/{ci.yml@steps_eslint.ejs → ci.yml_standalone@steps_eslint.ejs} +0 -0
- /package/templates/default/.github/workflows/{ci.yml@steps_jest.ejs → ci.yml_standalone@steps_jest.ejs} +0 -0
- /package/templates/default/.github/workflows/{ci.yml@steps_markdownlint.ejs → ci.yml_standalone@steps_markdownlint.ejs} +0 -0
- /package/templates/default/.github/workflows/{ci.yml@steps_prettier.ejs → ci.yml_standalone@steps_prettier.ejs} +0 -0
- /package/templates/default/.github/workflows/{ci.yml@steps_vitest.ejs → ci.yml_standalone@steps_vitest.ejs} +0 -0
- /package/templates/default/{.gitignore_tailwind.ejs → .gitignore_tailwind-cli.ejs} +0 -0
- /package/templates/default/{CONTRIBUTING.md@scripts_dev-utils.ejs → CONTRIBUTING.md@scripts_framework.ejs} +0 -0
- /package/templates/default/e2e/{sample.spec.ts_obsidian-test@lint-no-void-disable_dev-utils.ejs → sample.spec.ts_obsidian-test@lint-no-void-disable_framework.ejs} +0 -0
- /package/templates/default/e2e/{sample.spec.ts_obsidian-test@lint-no-void-enable_dev-utils.ejs → sample.spec.ts_obsidian-test@lint-no-void-enable_framework.ejs} +0 -0
- /package/templates/default/{eslint.config.mts_dev-utils.ejs → eslint.config.mts_framework.ejs} +0 -0
- /package/templates/default/{jest.config.ts@ts-jest-tsconfig_solid.ejs → jest.config.ts_standalone@ts-jest-tsconfig_solid.ejs} +0 -0
- /package/templates/default/{prettier.config.mjs.ejs → prettier.config.mjs_standalone.ejs} +0 -0
- /package/templates/default/scripts/{commitlint-config.ts.ejs → commitlint-config.ts_standalone.ejs} +0 -0
- /package/templates/default/scripts/{nano-staged-config.ts.ejs → nano-staged-config.ts_inline-nano-staged.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@import_rollup-json.ejs → rollup.config.ts_framework@import_rollup-json.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@import_scss.ejs → rollup.config.ts_framework@import_scss.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@unwrap_rollup-json.ejs → rollup.config.ts_framework@unwrap_rollup-json.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@unwrap_scss.ejs → rollup.config.ts_framework@unwrap_scss.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@import_rollup-babel.ejs → rollup.config.ts_standalone@import_rollup-babel.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@import_rollup-postcss.ejs → rollup.config.ts_standalone@import_rollup-postcss.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@import_svelte.ejs → rollup.config.ts_standalone@import_svelte.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@import_vue.ejs → rollup.config.ts_standalone@import_vue.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@import_wasm.ejs → rollup.config.ts_standalone@import_wasm.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@post-plugin_preact.ejs → rollup.config.ts_standalone@post-plugin_preact.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@post-plugin_react.ejs → rollup.config.ts_standalone@post-plugin_react.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@post-plugin_rollup-json.ejs → rollup.config.ts_standalone@post-plugin_rollup-json.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@post-plugin_rollup-postcss.ejs → rollup.config.ts_standalone@post-plugin_rollup-postcss.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@post-plugin_scss.ejs → rollup.config.ts_standalone@post-plugin_scss.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@post-plugin_solid.ejs → rollup.config.ts_standalone@post-plugin_solid.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@post-plugin_wasm.ejs → rollup.config.ts_standalone@post-plugin_wasm.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@pre-plugin_svelte.ejs → rollup.config.ts_standalone@pre-plugin_svelte.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@pre-plugin_vue.ejs → rollup.config.ts_standalone@pre-plugin_vue.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@unwrap_rollup-babel.ejs → rollup.config.ts_standalone@unwrap_rollup-babel.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@unwrap_rollup-postcss.ejs → rollup.config.ts_standalone@unwrap_rollup-postcss.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@unwrap_svelte.ejs → rollup.config.ts_standalone@unwrap_svelte.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@unwrap_vue.ejs → rollup.config.ts_standalone@unwrap_vue.ejs} +0 -0
- /package/templates/default/scripts/{rollup.config.ts@unwrap_wasm.ejs → rollup.config.ts_standalone@unwrap_wasm.ejs} +0 -0
- /package/templates/default/scripts/{test-watch.ts_dev-utils.ejs → test-watch.ts_framework.ejs} +0 -0
- /package/templates/default/scripts/{test.ts_dev-utils.ejs → test.ts_framework.ejs} +0 -0
- /package/templates/default/scripts/{vite.config.ts@import_preact.ejs → vite.config.ts_standalone@import_preact.ejs} +0 -0
- /package/templates/default/scripts/{vite.config.ts@import_react.ejs → vite.config.ts_standalone@import_react.ejs} +0 -0
- /package/templates/default/scripts/{vite.config.ts@import_solid.ejs → vite.config.ts_standalone@import_solid.ejs} +0 -0
- /package/templates/default/scripts/{vite.config.ts@import_svelte.ejs → vite.config.ts_standalone@import_svelte.ejs} +0 -0
- /package/templates/default/scripts/{vite.config.ts@import_vue.ejs → vite.config.ts_standalone@import_vue.ejs} +0 -0
- /package/templates/default/scripts/{vite.config.ts@plugin_preact.ejs → vite.config.ts_standalone@plugin_preact.ejs} +0 -0
- /package/templates/default/scripts/{vite.config.ts@plugin_react.ejs → vite.config.ts_standalone@plugin_react.ejs} +0 -0
- /package/templates/default/scripts/{vite.config.ts@plugin_solid.ejs → vite.config.ts_standalone@plugin_solid.ejs} +0 -0
- /package/templates/default/scripts/{vite.config.ts@plugin_svelte.ejs → vite.config.ts_standalone@plugin_svelte.ejs} +0 -0
- /package/templates/default/scripts/{vite.config.ts@plugin_vue.ejs → vite.config.ts_standalone@plugin_vue.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@import_svelte.ejs → webpack.config.ts_standalone@import_svelte.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@import_vue.ejs → webpack.config.ts_standalone@import_vue.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@import_webpack-css-extract.ejs → webpack.config.ts_standalone@import_webpack-css-extract.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@plugin_vue.ejs → webpack.config.ts_standalone@plugin_vue.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@plugin_webpack-css-extract.ejs → webpack.config.ts_standalone@plugin_webpack-css-extract.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@rule_css-modules.ejs → webpack.config.ts_standalone@rule_css-modules.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@rule_css.ejs → webpack.config.ts_standalone@rule_css.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@rule_postcss.ejs → webpack.config.ts_standalone@rule_postcss.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@rule_scss.ejs → webpack.config.ts_standalone@rule_scss.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@rule_solid.ejs → webpack.config.ts_standalone@rule_solid.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@rule_svelte.ejs → webpack.config.ts_standalone@rule_svelte.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@rule_tailwind.ejs → webpack.config.ts_standalone@rule_tailwind.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@rule_vue.ejs → webpack.config.ts_standalone@rule_vue.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@rule_wasm.ejs → webpack.config.ts_standalone@rule_wasm.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@ts-loader-compiler-options_vue.ejs → webpack.config.ts_standalone@ts-loader-compiler-options_vue.ejs} +0 -0
- /package/templates/default/scripts/{webpack.config.ts@ts-loader-options_vue.ejs → webpack.config.ts_standalone@ts-loader-options_vue.ejs} +0 -0
- /package/templates/default/src/{plugin-settings-component.test.ts_enhanced@test-imports_vitest.ejs → plugin-settings-component.test.ts_all-in-one@test-imports_vitest.ejs} +0 -0
- /package/templates/default/src/{plugin-settings.ts_enhanced.ejs → plugin-settings.ts_all-in-one.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@import2_codemirror.ejs → plugin.ts_all-in-one@import2_codemirror.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@import2_i18next.ejs → plugin.ts_all-in-one@import2_i18next.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@import2_lit.ejs → plugin.ts_all-in-one@import2_lit.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@import2_preact.ejs → plugin.ts_all-in-one@import2_preact.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@import2_react.ejs → plugin.ts_all-in-one@import2_react.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@import2_solid.ejs → plugin.ts_all-in-one@import2_solid.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@import2_svelte.ejs → plugin.ts_all-in-one@import2_svelte.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@import2_typesafe-i18n.ejs → plugin.ts_all-in-one@import2_typesafe-i18n.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@import2_vue.ejs → plugin.ts_all-in-one@import2_vue.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@import2_wasm.ejs → plugin.ts_all-in-one@import2_wasm.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@method_ui-view.ejs → plugin.ts_all-in-one@method_ui-view.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@onload_codemirror.ejs → plugin.ts_all-in-one@onload_codemirror.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@onload_i18next.ejs → plugin.ts_all-in-one@onload_i18next.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@onload_lit.ejs → plugin.ts_all-in-one@onload_lit.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@onload_preact.ejs → plugin.ts_all-in-one@onload_preact.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@onload_react.ejs → plugin.ts_all-in-one@onload_react.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@onload_solid.ejs → plugin.ts_all-in-one@onload_solid.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@onload_svelte.ejs → plugin.ts_all-in-one@onload_svelte.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@onload_typesafe-i18n.ejs → plugin.ts_all-in-one@onload_typesafe-i18n.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@onload_vue.ejs → plugin.ts_all-in-one@onload_vue.ejs} +0 -0
- /package/templates/default/src/{plugin.ts_enhanced@onload_wasm.ejs → plugin.ts_all-in-one@onload_wasm.ejs} +0 -0
- /package/templates/default/src/preact-components/{sample-preact-component.tsx_dev-utils.ejs → sample-preact-component.tsx_framework.ejs} +0 -0
- /package/templates/default/src/solid-components/{sample-solid-component.tsx_dev-utils.ejs → sample-solid-component.tsx_framework.ejs} +0 -0
- /package/templates/default/src/styles/{main.css_dev-utils@content_tailwind.ejs → main.css_framework@content_tailwind.ejs} +0 -0
- /package/templates/default/src/views/{sample-lit-view.ts@lint-register-element_dev-utils.ejs → sample-lit-view.ts@lint-register-element_framework.ejs} +0 -0
- /package/templates/default/src/views/{sample-preact-view.tsx_standalone.ejs → sample-preact-view.tsx.ejs} +0 -0
- /package/templates/default/src/views/{sample-solid-view.tsx_dev-utils.ejs → sample-solid-view.tsx_framework.ejs} +0 -0
- /package/templates/default/src/wasm/{answer.ts_esbuild.ejs → answer.ts_wasm-esbuild.ejs} +0 -0
- /package/templates/default/src/wasm/{answer.ts_parcel.ejs → answer.ts_wasm-parcel.ejs} +0 -0
- /package/templates/default/src/wasm/{answer.ts_rollup.ejs → answer.ts_wasm-rollup.ejs} +0 -0
- /package/templates/default/src/wasm/{answer.ts_vite.ejs → answer.ts_wasm-vite.ejs} +0 -0
- /package/templates/default/src/wasm/{answer.ts_webpack.ejs → answer.ts_wasm-webpack.ejs} +0 -0
- /package/templates/default/src/{wasm.d.ts_esbuild.ejs → wasm.d.ts_wasm-esbuild.ejs} +0 -0
- /package/templates/default/src/{wasm.d.ts_parcel.ejs → wasm.d.ts_wasm-parcel.ejs} +0 -0
- /package/templates/default/src/{wasm.d.ts_rollup.ejs → wasm.d.ts_wasm-rollup.ejs} +0 -0
- /package/templates/default/src/{wasm.d.ts_vite.ejs → wasm.d.ts_wasm-vite.ejs} +0 -0
- /package/templates/default/src/{wasm.d.ts_webpack.ejs → wasm.d.ts_wasm-webpack.ejs} +0 -0
- /package/templates/default/{tsconfig.json_dev-utils@compiler-options_i18next.ejs → tsconfig.json_framework@compiler-options_i18next.ejs} +0 -0
- /package/templates/default/{tsconfig.json_dev-utils@compiler-options_lit.ejs → tsconfig.json_framework@compiler-options_lit.ejs} +0 -0
- /package/templates/default/{tsconfig.json_dev-utils@include_has-e2e.ejs → tsconfig.json_framework@include_has-e2e.ejs} +0 -0
- /package/templates/default/{tsconfig.json_dev-utils@include_svelte.ejs → tsconfig.json_framework@include_svelte.ejs} +0 -0
- /package/templates/default/{tsconfig.json_dev-utils@include_vue.ejs → tsconfig.json_framework@include_vue.ejs} +0 -0
- /package/templates/default/{tsconfig.json_dev-utils@types_jest.ejs → tsconfig.json_framework@types_jest.ejs} +0 -0
- /package/templates/default/{tsconfig.json_dev-utils@types_svelte.ejs → tsconfig.json_framework@types_svelte.ejs} +0 -0
- /package/templates/default/{tsconfig.json_dev-utils@types_wdio-obsidian.ejs → tsconfig.json_framework@types_wdio-obsidian.ejs} +0 -0
- /package/templates/default/{tsconfig.json_dev-utils@types_with-unofficial.ejs → tsconfig.json_framework@types_with-unofficial.ejs} +0 -0
- /package/templates/default/{vitest.config.ts_dev-utils.ejs → vitest.config.ts_framework.ejs} +0 -0
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
try {
|
|
5
|
-
execSync('biome format --write .', { stdio: 'inherit' });
|
|
6
|
-
} catch {
|
|
7
|
-
process.exit(1);
|
|
8
|
-
}
|
|
1
|
+
<%# The framework presets go through the toolkit runner, which takes the staged paths; standalone has no -%>
|
|
2
|
+
<%# framework and shells out directly. -%>
|
|
3
|
+
<%- render('preset') -%>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
2
|
+
import { format } from '@mnaoumov/typescript-dev-toolkit/formatters/biome';
|
|
3
|
+
import process from 'node:process';
|
|
4
|
+
|
|
5
|
+
const [, , ...paths] = process.argv;
|
|
6
|
+
|
|
7
|
+
await wrapCliTask(() => format({ paths }));
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
<%# The
|
|
2
|
-
<%# and falls back to the bundled one; standalone has no
|
|
1
|
+
<%# The framework presets go through the framework runner, which resolves `dprint.json` from the repo root -%>
|
|
2
|
+
<%# and falls back to the bundled one; standalone has no framework and shells out directly. -%>
|
|
3
3
|
<%- render('preset') -%>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { format } from '@mnaoumov/obsidian-dev-toolkit/formatters/dprint';
|
|
2
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
3
|
+
import process from 'node:process';
|
|
4
|
+
|
|
5
|
+
const [, , ...paths] = process.argv;
|
|
6
|
+
|
|
7
|
+
await wrapCliTask(() => format({ paths }));
|
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
try {
|
|
5
|
-
execSync('prettier --write .', { stdio: 'inherit' });
|
|
6
|
-
} catch {
|
|
7
|
-
process.exit(1);
|
|
8
|
-
}
|
|
1
|
+
<%# The framework presets go through the toolkit runner, which takes the staged paths; standalone has no -%>
|
|
2
|
+
<%# framework and shells out directly. -%>
|
|
3
|
+
<%- render('preset') -%>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
2
|
+
import { format } from '@mnaoumov/typescript-dev-toolkit/formatters/prettier';
|
|
3
|
+
import process from 'node:process';
|
|
4
|
+
|
|
5
|
+
const [, , ...paths] = process.argv;
|
|
6
|
+
|
|
7
|
+
await wrapCliTask(() => format({ paths }));
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { wrapCliTask } from 'obsidian-dev-utils/script-utils/cli-utils';
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
3
2
|
import {
|
|
4
3
|
gate,
|
|
5
4
|
parseGateArguments
|
|
6
|
-
} from '
|
|
5
|
+
} from '@mnaoumov/typescript-dev-toolkit/gate';
|
|
6
|
+
import process from 'node:process';
|
|
7
7
|
|
|
8
8
|
const [, , ...$arguments] = process.argv;
|
|
9
9
|
const options = parseGateArguments($arguments);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<%# Keyed on the TOOL first, exactly as the format scripts are, and for the same reason. What -%>
|
|
2
2
|
<%# `npm run lint:fix` runs is decided by the linter answer; only eslint has a preset-specific runner, so -%>
|
|
3
|
-
<%# it splits again underneath. Splitting on the preset first is what made every
|
|
4
|
-
<%# preset emit the
|
|
3
|
+
<%# it splits again underneath. Splitting on the preset first is what made every toolkit -%>
|
|
4
|
+
<%# preset emit the framework ESLint runner whatever was chosen -- so `linter: biome` installed biome, -%>
|
|
5
5
|
<%# emitted `biome.json`, and then ran eslint, which died looking for a config that was never written. -%>
|
|
6
6
|
<%- render('tool') -%>
|
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
try {
|
|
5
|
-
execSync('biome lint --write .', { stdio: 'inherit' });
|
|
6
|
-
} catch {
|
|
7
|
-
process.exit(1);
|
|
8
|
-
}
|
|
1
|
+
<%# The framework presets go through the toolkit runner, which takes the staged paths; standalone has no -%>
|
|
2
|
+
<%# framework and shells out directly. -%>
|
|
3
|
+
<%- render('preset') -%>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
2
|
+
import { lint } from '@mnaoumov/typescript-dev-toolkit/linters/biome';
|
|
3
|
+
import process from 'node:process';
|
|
4
|
+
|
|
5
|
+
const [, , ...paths] = process.argv;
|
|
6
|
+
|
|
7
|
+
await wrapCliTask(() => lint({ paths, shouldFix: true }));
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
<%# The
|
|
2
|
-
<%# paths for them; standalone has no
|
|
1
|
+
<%# The toolkit presets go through the toolkit runner, which finds the config and the -%>
|
|
2
|
+
<%# paths for them; standalone has no framework and shells out directly. -%>
|
|
3
3
|
<%- render('preset') -%>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { lint } from '@mnaoumov/obsidian-dev-toolkit/linters/eslint';
|
|
2
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
3
|
+
import process from 'node:process';
|
|
4
|
+
|
|
5
|
+
const [, , ...paths] = process.argv;
|
|
6
|
+
|
|
7
|
+
await wrapCliTask(() => lint({ paths, shouldFix: true }));
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { lint } from '@mnaoumov/obsidian-dev-toolkit/linters/markdownlint';
|
|
2
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
3
|
+
import process from 'node:process';
|
|
4
|
+
|
|
5
|
+
const [, , ...paths] = process.argv;
|
|
6
|
+
|
|
7
|
+
await wrapCliTask(() => lint({ paths, shouldFix: true }));
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { lint } from '@mnaoumov/obsidian-dev-toolkit/linters/markdownlint';
|
|
2
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
3
|
+
import process from 'node:process';
|
|
4
|
+
|
|
5
|
+
const [, , ...paths] = process.argv;
|
|
6
|
+
|
|
7
|
+
await wrapCliTask(() => lint({ paths }));
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<%# Keyed on the TOOL first, exactly as the format scripts are, and for the same reason. What -%>
|
|
2
2
|
<%# `npm run lint` runs is decided by the linter answer; only eslint has a preset-specific runner, so -%>
|
|
3
|
-
<%# it splits again underneath. Splitting on the preset first is what made every
|
|
4
|
-
<%# preset emit the
|
|
3
|
+
<%# it splits again underneath. Splitting on the preset first is what made every toolkit -%>
|
|
4
|
+
<%# preset emit the framework ESLint runner whatever was chosen -- so `linter: biome` installed biome, -%>
|
|
5
5
|
<%# emitted `biome.json`, and then ran eslint, which died looking for a config that was never written. -%>
|
|
6
6
|
<%- render('tool') -%>
|
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
try {
|
|
5
|
-
execSync('biome lint .', { stdio: 'inherit' });
|
|
6
|
-
} catch {
|
|
7
|
-
process.exit(1);
|
|
8
|
-
}
|
|
1
|
+
<%# The framework presets go through the toolkit runner, which takes the staged paths; standalone has no -%>
|
|
2
|
+
<%# framework and shells out directly. -%>
|
|
3
|
+
<%- render('preset') -%>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
2
|
+
import { lint } from '@mnaoumov/typescript-dev-toolkit/linters/biome';
|
|
3
|
+
import process from 'node:process';
|
|
4
|
+
|
|
5
|
+
const [, , ...paths] = process.argv;
|
|
6
|
+
|
|
7
|
+
await wrapCliTask(() => lint({ paths }));
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
<%# The
|
|
2
|
-
<%# paths for them; standalone has no
|
|
1
|
+
<%# The toolkit presets go through the toolkit runner, which finds the config and the -%>
|
|
2
|
+
<%# paths for them; standalone has no framework and shells out directly. -%>
|
|
3
3
|
<%- render('preset') -%>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { lint } from '@mnaoumov/obsidian-dev-toolkit/linters/eslint';
|
|
2
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
3
|
+
import process from 'node:process';
|
|
4
|
+
|
|
5
|
+
const [, , ...paths] = process.argv;
|
|
6
|
+
|
|
7
|
+
await wrapCliTask(() => lint({ paths }));
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import type { MarkdownlintCli2ConfigurationSchema } from '
|
|
1
|
+
import type { MarkdownlintCli2ConfigurationSchema } from '@mnaoumov/typescript-dev-toolkit/linters/markdownlint-types/@types/markdownlint-cli2-config-schema';
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { obsidianMarkdownlintCli2Config } from '@mnaoumov/obsidian-dev-toolkit/linters/markdownlint-cli2-config';
|
|
4
4
|
|
|
5
5
|
export const config: MarkdownlintCli2ConfigurationSchema = {
|
|
6
|
-
...
|
|
6
|
+
...obsidianMarkdownlintCli2Config,
|
|
7
7
|
config: {
|
|
8
|
-
...
|
|
8
|
+
...obsidianMarkdownlintCli2Config.config,
|
|
9
9
|
// Turned on here, against the shared default of off: every paragraph in this repo's markdown is one
|
|
10
10
|
// physical line, and this is what stops hard wrapping from coming back. The key has to live inside
|
|
11
11
|
// `config` - the spread above replaces the whole object, so a key beside it would be silently ignored.
|
|
@@ -19,14 +19,11 @@ export const config: MarkdownlintCli2Extras & Options = {
|
|
|
19
19
|
'default': true,
|
|
20
20
|
'MD013': false,
|
|
21
21
|
'MD024': {
|
|
22
|
-
// eslint-disable-next-line camelcase -- `siblings_only` is markdownlint's own option name.
|
|
23
22
|
siblings_only: true
|
|
24
23
|
},
|
|
25
24
|
'MD052': {
|
|
26
|
-
/* eslint-disable camelcase -- `ignored_labels` and `shortcut_syntax` are markdownlint's own option names. */
|
|
27
25
|
ignored_labels: ['!note', '!warning'],
|
|
28
26
|
shortcut_syntax: true
|
|
29
|
-
/* eslint-enable camelcase -- `ignored_labels` and `shortcut_syntax` are markdownlint's own option names. */
|
|
30
27
|
},
|
|
31
28
|
'relative-links': true
|
|
32
29
|
},
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { RollupOptions } from 'rollup';
|
|
2
|
+
|
|
3
|
+
<%- sortImports(`import { obsidianPluginRollup } from '@mnaoumov/obsidian-dev-toolkit/bundlers/rollup';
|
|
4
|
+
import commonjsModule from '@rollup/plugin-commonjs';
|
|
5
|
+
import { nodeResolve } from '@rollup/plugin-node-resolve';
|
|
6
|
+
import process from 'node:process';
|
|
7
|
+
import esbuildModule from 'rollup-plugin-esbuild';
|
|
8
|
+
${render('import')}`) -%>
|
|
9
|
+
<%- _buildOptionsImport -%>
|
|
10
|
+
|
|
11
|
+
interface DefaultExported<TDefault> {
|
|
12
|
+
default: TDefault;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* A rollup plugin package's default export, as it arrives at runtime.
|
|
17
|
+
*
|
|
18
|
+
* These packages declare `export default` in CommonJS-format types, so under `module: node16` TypeScript models
|
|
19
|
+
* the default import as the module object, while at runtime it is the plugin factory. The cast follows the runtime.
|
|
20
|
+
*/
|
|
21
|
+
type PluginFactory<TImported> = TImported extends DefaultExported<infer TDefault> ? TDefault : TImported;
|
|
22
|
+
|
|
23
|
+
function asPluginFactory<TImported>(imported: TImported): PluginFactory<TImported> {
|
|
24
|
+
return imported as PluginFactory<TImported>;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
const commonjs = asPluginFactory(commonjsModule);
|
|
28
|
+
const esbuild = asPluginFactory(esbuildModule);
|
|
29
|
+
<%- render('unwrap') -%>
|
|
30
|
+
|
|
31
|
+
const isProduction = !process.env['ROLLUP_WATCH'];
|
|
32
|
+
|
|
33
|
+
// The rollup command line checks `input` and picks the output folder before any plugin runs, so both are named here.
|
|
34
|
+
// The obsidian-dev-toolkit plugin does the rest: Obsidian's modules external, one CommonJS `main.js` with every dynamic
|
|
35
|
+
// Import inlined, the stylesheet named `styles.css`, the banner and the manifest.
|
|
36
|
+
export const config: RollupOptions = {
|
|
37
|
+
input: 'src/main.ts',
|
|
38
|
+
// eslint-disable-next-line unicorn/name-replacements -- `dir` is rollup's own option name.
|
|
39
|
+
output: { dir: isProduction ? 'dist/build' : 'dist/dev' },
|
|
40
|
+
plugins: [
|
|
41
|
+
obsidianPluginRollup(<%- _buildOptionsArgument %>),
|
|
42
|
+
// Strips the types without checking them, which `build:compile` does. `@rollup/plugin-typescript` calls
|
|
43
|
+
// TypeScript's JavaScript API, which TypeScript 7 no longer has.
|
|
44
|
+
esbuild({ minify: isProduction }),
|
|
45
|
+
nodeResolve({ browser: true, extensions: ['.mjs', '.js', '.json', '.ts', '.tsx'] }),
|
|
46
|
+
<%- render('plugin') -%>
|
|
47
|
+
commonjs()
|
|
48
|
+
]
|
|
49
|
+
};
|
|
@@ -50,7 +50,7 @@ const typescript = asPluginFactory(typescriptModule);
|
|
|
50
50
|
* compiler options, and without them TypeScript answers `undefined`. So every import in `src/` resolves
|
|
51
51
|
* under the `require` condition, while a declaration file that pins `resolution-mode: import` gets the
|
|
52
52
|
* ESM types. A package that ships both, such as `@codemirror/state`, is then loaded twice, and its
|
|
53
|
-
* classes stop being assignable to themselves: TS2416 against obsidian-
|
|
53
|
+
* classes stop being assignable to themselves: TS2416 against obsidian-lib's `StateFieldSpec`.
|
|
54
54
|
* Handing over the `module` the emitted `tsconfig.json` declares restores the per-file mode tsc uses.
|
|
55
55
|
*/
|
|
56
56
|
const typescriptWithResolutionModes: typeof ts = {
|
|
@@ -95,7 +95,7 @@ const EXTERNAL = [
|
|
|
95
95
|
inlineSourceMap: !isProduction,
|
|
96
96
|
inlineSources: !isProduction,
|
|
97
97
|
noEmit: false,
|
|
98
|
-
|
|
98
|
+
outDir: distFolder,
|
|
99
99
|
rewriteRelativeImportExtensions: true,
|
|
100
100
|
sourceMap: !isProduction,
|
|
101
101
|
typescript: typescriptWithResolutionModes
|
|
@@ -118,10 +118,10 @@ if you want to view the source, please visit the github repository of this plugi
|
|
|
118
118
|
file: `${distFolder}/main.js`,
|
|
119
119
|
format: 'cjs',
|
|
120
120
|
// An Obsidian plugin is one file: the manifest names `main.js` and nothing loads a second chunk.
|
|
121
|
-
// Any dynamic import in the sources --
|
|
121
|
+
// Any dynamic import in the sources -- obsidian-lib, which the toolkit presets import, has several -- otherwise
|
|
122
122
|
// Makes rollup refuse `output.file` and demand `output.dir`.
|
|
123
123
|
inlineDynamicImports: true,
|
|
124
|
-
sourcemap: isProduction
|
|
124
|
+
sourcemap: !isProduction && 'inline'
|
|
125
125
|
},
|
|
126
126
|
plugins: [
|
|
127
127
|
<%- plugins.replace(/,(?<Trailing>\s*)$/, '$<Trailing>') -%>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import jsonModule from '@rollup/plugin-json';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import scssModule from 'rollup-plugin-scss';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const json = asPluginFactory(jsonModule);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const scss = asPluginFactory(scssModule);
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
2
|
+
import { spellcheck } from '@mnaoumov/typescript-dev-toolkit/linters/cspell';
|
|
3
|
+
import process from 'node:process';
|
|
4
|
+
|
|
5
|
+
const [, , ...paths] = process.argv;
|
|
6
|
+
|
|
7
|
+
await wrapCliTask(() => spellcheck({ paths }));
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* `src/main.ts` imports the plugin's stylesheet for its side effect, so that the bundler emits
|
|
5
5
|
* `styles.css` -- and `src/main.test.ts` imports `src/main.ts`. Neither runner should load the real
|
|
6
|
-
* file: jest has no transform for `.css` / `.scss` and parses one as JavaScript, and on
|
|
6
|
+
* file: jest has no transform for `.css` / `.scss` and parses one as JavaScript, and on `standalone`'s `tailwind`
|
|
7
7
|
* answer the file `src/main.ts` names does not exist until `npm run build:styles` has run. So both
|
|
8
8
|
* runners send every stylesheet import here, exactly as they send every `.svelte` / `.vue` import to
|
|
9
9
|
* `framework-component-stub.ts`.
|
|
@@ -1,8 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
await wrapCliTask(() =>
|
|
5
|
-
testCoverage({
|
|
6
|
-
projects: ['unit-tests']
|
|
7
|
-
})
|
|
8
|
-
);
|
|
1
|
+
<%# Only the framework presets register `test:coverage`, so this splits on the test runner alone. -%>
|
|
2
|
+
<%- render('tool') -%>
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
2
|
+
import { testCoverage } from '@mnaoumov/typescript-dev-toolkit/test-runners/jest';
|
|
3
|
+
|
|
4
|
+
// Writes `coverage/lcov.info`, which the CI workflow's coverage badge is rendered from.
|
|
5
|
+
await wrapCliTask(() => testCoverage());
|
|
@@ -1,8 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
try {
|
|
5
|
-
execSync('obsidian-test', { stdio: 'inherit' });
|
|
6
|
-
} catch {
|
|
7
|
-
process.exit(1);
|
|
8
|
-
}
|
|
1
|
+
<%# The framework presets go through the toolkit runner; standalone has no framework and shells out directly. -%>
|
|
2
|
+
<%- render('preset') -%>
|
|
@@ -1,8 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
try {
|
|
5
|
-
execSync('wdio run wdio.conf.ts', { stdio: 'inherit' });
|
|
6
|
-
} catch {
|
|
7
|
-
process.exit(1);
|
|
8
|
-
}
|
|
1
|
+
<%# The framework presets go through the toolkit runner; standalone has no framework and shells out directly. -%>
|
|
2
|
+
<%- render('preset') -%>
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { testEndToEndWithWdioObsidian } from '@mnaoumov/obsidian-dev-toolkit/test-runners/wdio-obsidian';
|
|
2
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
3
|
+
|
|
4
|
+
// Builds the plugin first, then runs `wdio.conf.mts`.
|
|
5
|
+
await wrapCliTask(() => testEndToEndWithWdioObsidian());
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { wrapCliTask } from '
|
|
2
|
-
import { test } from '
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
2
|
+
import { test } from '@mnaoumov/typescript-dev-toolkit/test-runners/vitest';
|
|
3
3
|
|
|
4
4
|
await wrapCliTask(() =>
|
|
5
5
|
test({
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { wrapCliTask } from '
|
|
2
|
-
import { test } from '
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
2
|
+
import { test } from '@mnaoumov/typescript-dev-toolkit/test-runners/vitest';
|
|
3
3
|
|
|
4
4
|
await wrapCliTask(() =>
|
|
5
5
|
test({
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { wrapCliTask } from '
|
|
2
|
-
import { test } from '
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
2
|
+
import { test } from '@mnaoumov/typescript-dev-toolkit/test-runners/vitest';
|
|
3
3
|
|
|
4
4
|
await wrapCliTask(() =>
|
|
5
5
|
test({
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { wrapCliTask } from '
|
|
2
|
-
import { test } from '
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
2
|
+
import { test } from '@mnaoumov/typescript-dev-toolkit/test-runners/vitest';
|
|
3
3
|
|
|
4
4
|
await wrapCliTask(() =>
|
|
5
5
|
test({
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { wrapCliTask } from '
|
|
2
|
-
import { test } from '
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
2
|
+
import { test } from '@mnaoumov/typescript-dev-toolkit/test-runners/vitest';
|
|
3
3
|
|
|
4
4
|
await wrapCliTask(() =>
|
|
5
5
|
test({
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { wrapCliTask } from '
|
|
2
|
-
import { test } from '
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
2
|
+
import { test } from '@mnaoumov/typescript-dev-toolkit/test-runners/vitest';
|
|
3
3
|
|
|
4
4
|
// `integration-tests:desktop` and `integration-tests:android` are declared by
|
|
5
5
|
// `defineObsidianPluginVitestConfig` too, but they are deliberately not run here: the first drives a real
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
2
|
+
import { testWatch } from '@mnaoumov/typescript-dev-toolkit/test-runners/jest';
|
|
3
|
+
|
|
4
|
+
// The runner adds `--experimental-vm-modules` to NODE_OPTIONS itself, which jest's ESM loader needs.
|
|
5
|
+
await wrapCliTask(() => testWatch());
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
2
|
+
import { test } from '@mnaoumov/typescript-dev-toolkit/test-runners/jest';
|
|
3
|
+
|
|
4
|
+
// The runner adds `--experimental-vm-modules` to NODE_OPTIONS itself, which jest's ESM loader needs.
|
|
5
|
+
await wrapCliTask(() => test());
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import process from 'node:process';
|
|
2
|
-
import { wrapCliTask } from 'obsidian-dev-utils/script-utils/cli-utils';
|
|
3
1
|
import {
|
|
4
2
|
parseVersionArguments,
|
|
5
3
|
updateVersion
|
|
6
|
-
} from 'obsidian-dev-
|
|
4
|
+
} from '@mnaoumov/obsidian-dev-toolkit/version';
|
|
5
|
+
import { wrapCliTask } from '@mnaoumov/typescript-dev-toolkit/cli-utils';
|
|
6
|
+
import process from 'node:process';
|
|
7
7
|
|
|
8
8
|
const [, , ...$arguments] = process.argv;
|
|
9
9
|
const { options, versionUpdateType } = parseVersionArguments($arguments);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { obsidianPluginVite } from '@mnaoumov/obsidian-dev-toolkit/bundlers/vite';
|
|
2
|
+
import { defineConfig } from 'vite';
|
|
3
|
+
<%- _buildOptionsImport -%>
|
|
4
|
+
|
|
5
|
+
// The obsidian-dev-toolkit plugin makes this a library build of `src/main.ts` into `dist/build`, or `dist/dev` under
|
|
6
|
+
// `--watch`, with Obsidian's modules external, every asset and dynamic import inlined and the stylesheet named
|
|
7
|
+
// `styles.css`.
|
|
8
|
+
export const config = defineConfig({
|
|
9
|
+
plugins: [obsidianPluginVite(<%- _buildOptionsArgument %>)]
|
|
10
|
+
});
|