@mnaoumov/create-obsidian-plugin 1.1.0 → 1.3.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.
Files changed (427) hide show
  1. package/README.md +16 -334
  2. package/dist/main.js +903 -803
  3. package/package.json +16 -5
  4. package/src/main.ts +17 -15
  5. package/templates/default/{CONTRIBUTING.md.ejs → (contributing)/CONTRIBUTING.md.ejs} +1 -0
  6. package/templates/default/(contributing)/CONTRIBUTING.md@filing_bug-and-feature.ejs +6 -0
  7. package/templates/default/{cspell.json.ejs → (lint)/cspell.json.ejs} +1 -0
  8. package/templates/default/(readme)/README.md.ejs +38 -0
  9. package/templates/default/(readme)/README.md@preset_framework.ejs +6 -0
  10. package/templates/default/(readme)/README.md@support_bug-and-feature.ejs +11 -0
  11. package/templates/default/(readme)/README.md@support_bug-and-feature@bug-report_has-bug-report-command.ejs +2 -0
  12. package/templates/default/.github/ISSUE_TEMPLATE/bug_report.yml.ejs +62 -24
  13. package/templates/default/scripts/{markdownlint-cli2-config.ts_standalone.ejs → (lint)/(markdown)/markdownlint-cli2-config.ts_standalone.ejs} +3 -3
  14. package/templates/default/scripts/{vitest-config.ts@post-config_solid.ejs → (test)/vitest-config.ts@post-config_solid.ejs} +6 -8
  15. package/templates/default/scripts/version.ts_standalone.ejs +4 -4
  16. package/templates/default/src/{plugin.ts_all-in-one.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one.ejs} +2 -0
  17. package/templates/default/src/(plugin)/(all-in-one)/plugin.ts_all-in-one@bug-report-handler_has-bug-report-command.ejs +7 -0
  18. package/templates/default/src/(plugin)/(all-in-one)/plugin.ts_all-in-one@bug-report-import_has-bug-report-command.ejs +1 -0
  19. package/templates/default/src/{plugin.ts_demo.ejs → (plugin)/(demo)/plugin.ts_demo.ejs} +2 -0
  20. package/templates/default/src/(plugin)/(demo)/plugin.ts_demo@bug-report-handler_has-bug-report-command.ejs +7 -0
  21. package/templates/default/src/(plugin)/(demo)/plugin.ts_demo@bug-report-import_has-bug-report-command.ejs +1 -0
  22. package/templates/default/src/{plugin-settings-component.ts_demo.ejs → (settings)/plugin-settings-component.ts_demo.ejs} +2 -0
  23. package/templates/default/src/{plugin-settings-tab.ts_demo.ejs → (settings)/plugin-settings-tab.ts_demo.ejs} +2 -2
  24. package/templates/default/src/lit-elements/sample-lit-element.ts.ejs +1 -1
  25. package/templates/default/src/modals/sample-suggest-modal.ts.ejs +2 -2
  26. package/templates/default/src/plugin.test.ts_jest.ejs +3 -0
  27. package/templates/default/src/plugin.test.ts_jest@bug-report-import_has-bug-report-command.ejs +4 -0
  28. package/templates/default/src/plugin.test.ts_jest@bug-report-test_has-bug-report-command.ejs +16 -0
  29. package/templates/default/src/plugin.test.ts_jest@bug-report-type-import_has-bug-report-command.ejs +2 -0
  30. package/templates/default/src/plugin.test.ts_vitest.ejs +3 -0
  31. package/templates/default/src/plugin.test.ts_vitest@bug-report-import_has-bug-report-command.ejs +4 -0
  32. package/templates/default/src/plugin.test.ts_vitest@bug-report-test_has-bug-report-command.ejs +16 -0
  33. package/templates/default/src/plugin.test.ts_vitest@bug-report-type-import_has-bug-report-command.ejs +2 -0
  34. package/templates/default/src/preact-components/sample-preact-component.tsx_framework.ejs +1 -1
  35. package/templates/default/src/preact-components/sample-preact-component.tsx_standalone.ejs +1 -1
  36. package/templates/default/src/react-components/sample-react-component.tsx_framework.ejs +1 -1
  37. package/templates/default/src/react-components/sample-react-component.tsx_standalone.ejs +1 -1
  38. package/templates/default/src/solid-components/sample-solid-component.tsx_framework.ejs +1 -1
  39. package/templates/default/src/solid-components/sample-solid-component.tsx_standalone.ejs +1 -1
  40. package/templates/default/src/styles/main.css_framework.ejs +1 -1
  41. package/templates/default/src/styles/main.scss_framework.ejs +1 -1
  42. package/templates/default/src/svelte-components/sample-svelte-component.d.ts.ejs +2 -2
  43. package/templates/default/src/views/sample-view.ts.ejs +2 -1
  44. package/templates/docs-showcase/files/src/docs/host.ts +2 -2
  45. package/templates/docs-showcase/host/host.ts +2 -2
  46. package/templates/default/README.md.ejs +0 -28
  47. package/templates/default/README.md@preset_framework.ejs +0 -12
  48. package/templates/default/demo-vault/Materials/01 Sample commands/Scratch note.md.ejs +0 -5
  49. /package/templates/default/{.parcelrc.ejs → (bundlers)/.parcelrc.ejs} +0 -0
  50. /package/templates/default/{.parcelrc@transformers_svelte.ejs → (bundlers)/.parcelrc@transformers_svelte.ejs} +0 -0
  51. /package/templates/default/{babel.config.json.ejs → (bundlers)/babel.config.json.ejs} +0 -0
  52. /package/templates/default/{babel.config.mjs.ejs → (bundlers)/babel.config.mjs.ejs} +0 -0
  53. /package/templates/default/{parcel-namer-obsidian.cjs.ejs → (bundlers)/parcel-namer-obsidian.cjs.ejs} +0 -0
  54. /package/templates/default/{parcel-resolver-obsidian.cjs.ejs → (bundlers)/parcel-resolver-obsidian.cjs.ejs} +0 -0
  55. /package/templates/default/{parcel-transformer-inline-imports.cjs.ejs → (bundlers)/parcel-transformer-inline-imports.cjs.ejs} +0 -0
  56. /package/templates/default/{parcel-transformer-svelte.cjs.ejs → (bundlers)/parcel-transformer-svelte.cjs.ejs} +0 -0
  57. /package/templates/default/{postcss.config.cjs.ejs → (bundlers)/postcss.config.cjs.ejs} +0 -0
  58. /package/templates/default/{rollup.config.mjs.ejs → (bundlers)/rollup.config.mjs.ejs} +0 -0
  59. /package/templates/default/{vite.config.ts.ejs → (bundlers)/vite.config.ts.ejs} +0 -0
  60. /package/templates/default/{webpack.config.ts.ejs → (bundlers)/webpack.config.ts.ejs} +0 -0
  61. /package/templates/default/{CONTRIBUTING.md@demo-vault_framework.ejs → (contributing)/CONTRIBUTING.md@demo-vault_framework.ejs} +0 -0
  62. /package/templates/default/{CONTRIBUTING.md@scripts_biome-formatter.ejs → (contributing)/CONTRIBUTING.md@scripts_biome-formatter.ejs} +0 -0
  63. /package/templates/default/{CONTRIBUTING.md@scripts_biome-linter.ejs → (contributing)/CONTRIBUTING.md@scripts_biome-linter.ejs} +0 -0
  64. /package/templates/default/{CONTRIBUTING.md@scripts_conventional-commits.ejs → (contributing)/CONTRIBUTING.md@scripts_conventional-commits.ejs} +0 -0
  65. /package/templates/default/{CONTRIBUTING.md@scripts_cspell.ejs → (contributing)/CONTRIBUTING.md@scripts_cspell.ejs} +0 -0
  66. /package/templates/default/{CONTRIBUTING.md@scripts_dprint.ejs → (contributing)/CONTRIBUTING.md@scripts_dprint.ejs} +0 -0
  67. /package/templates/default/{CONTRIBUTING.md@scripts_eslint.ejs → (contributing)/CONTRIBUTING.md@scripts_eslint.ejs} +0 -0
  68. /package/templates/default/{CONTRIBUTING.md@scripts_framework.ejs → (contributing)/CONTRIBUTING.md@scripts_framework.ejs} +0 -0
  69. /package/templates/default/{CONTRIBUTING.md@scripts_jest.ejs → (contributing)/CONTRIBUTING.md@scripts_jest.ejs} +0 -0
  70. /package/templates/default/{CONTRIBUTING.md@scripts_markdownlint.ejs → (contributing)/CONTRIBUTING.md@scripts_markdownlint.ejs} +0 -0
  71. /package/templates/default/{CONTRIBUTING.md@scripts_prettier.ejs → (contributing)/CONTRIBUTING.md@scripts_prettier.ejs} +0 -0
  72. /package/templates/default/{CONTRIBUTING.md@scripts_vitest.ejs → (contributing)/CONTRIBUTING.md@scripts_vitest.ejs} +0 -0
  73. /package/templates/default/{.prettierignore.ejs → (format)/.prettierignore.ejs} +0 -0
  74. /package/templates/default/{.prettierignore@ignores_docs-showcase.ejs → (format)/.prettierignore@ignores_docs-showcase.ejs} +0 -0
  75. /package/templates/default/{biome.jsonc_framework.ejs → (format)/biome.jsonc_framework.ejs} +0 -0
  76. /package/templates/default/{biome.jsonc_framework@excludes_docs-showcase.ejs → (format)/biome.jsonc_framework@excludes_docs-showcase.ejs} +0 -0
  77. /package/templates/default/{biome.jsonc_standalone.ejs → (format)/biome.jsonc_standalone.ejs} +0 -0
  78. /package/templates/default/{dprint.json_framework.ejs → (format)/dprint.json_framework.ejs} +0 -0
  79. /package/templates/default/{dprint.json_framework@excludes_docs-showcase.ejs → (format)/dprint.json_framework@excludes_docs-showcase.ejs} +0 -0
  80. /package/templates/default/{dprint.json_standalone.ejs → (format)/dprint.json_standalone.ejs} +0 -0
  81. /package/templates/default/{prettier.config.mjs_framework.ejs → (format)/prettier.config.mjs_framework.ejs} +0 -0
  82. /package/templates/default/{prettier.config.mjs_standalone.ejs → (format)/prettier.config.mjs_standalone.ejs} +0 -0
  83. /package/templates/default/{.depcheckrc.json.ejs → (lint)/.depcheckrc.json.ejs} +0 -0
  84. /package/templates/default/{.markdownlint-cli2.mjs.ejs → (lint)/.markdownlint-cli2.mjs.ejs} +0 -0
  85. /package/templates/default/{cspell.json@ignore-paths_docs-showcase.ejs → (lint)/cspell.json@ignore-paths_docs-showcase.ejs} +0 -0
  86. /package/templates/default/{eslint.config.mts_framework.ejs → (lint)/eslint.config.mts_framework.ejs} +0 -0
  87. /package/templates/default/{eslint.config.mts_standalone.ejs → (lint)/eslint.config.mts_standalone.ejs} +0 -0
  88. /package/templates/default/{eslint.config.mts_standalone@extra-files_has-e2e.ejs → (lint)/eslint.config.mts_standalone@extra-files_has-e2e.ejs} +0 -0
  89. /package/templates/default/{linkinator.config.json.ejs → (lint)/linkinator.config.json.ejs} +0 -0
  90. /package/templates/default/{.npmrc.ejs → (package)/.npmrc.ejs} +0 -0
  91. /package/templates/default/{package.json.ejs → (package)/package.json.ejs} +0 -0
  92. /package/templates/default/{package.json@targets_parcel-targets.ejs → (package)/package.json@targets_parcel-targets.ejs} +0 -0
  93. /package/templates/default/{package.json@targets_parcel.ejs → (package)/package.json@targets_parcel.ejs} +0 -0
  94. /package/templates/default/{pinned-versions.json.ejs → (package)/pinned-versions.json.ejs} +0 -0
  95. /package/templates/default/{pnpm-workspace.yaml.ejs → (package)/pnpm-workspace.yaml.ejs} +0 -0
  96. /package/templates/default/{README.md@demo-vault_framework.ejs → (readme)/README.md@demo-vault_framework.ejs} +0 -0
  97. /package/templates/default/{README.md@preset_docs-showcase.ejs → (readme)/README.md@preset_docs-showcase.ejs} +0 -0
  98. /package/templates/default/{README.md@support_has-funding.ejs → (readme)/README.md@support_has-funding.ejs} +0 -0
  99. /package/templates/default/{jest.config.ts_framework.ejs → (test)/jest.config.ts_framework.ejs} +0 -0
  100. /package/templates/default/{jest.config.ts_framework@lint-root-dir_framework.ejs → (test)/jest.config.ts_framework@lint-root-dir_framework.ejs} +0 -0
  101. /package/templates/default/{jest.config.ts_framework@ts-jest-tsconfig_solid.ejs → (test)/jest.config.ts_framework@ts-jest-tsconfig_solid.ejs} +0 -0
  102. /package/templates/default/{jest.config.ts_standalone.ejs → (test)/jest.config.ts_standalone.ejs} +0 -0
  103. /package/templates/default/{jest.config.ts_standalone@ts-jest-tsconfig_solid.ejs → (test)/jest.config.ts_standalone@ts-jest-tsconfig_solid.ejs} +0 -0
  104. /package/templates/default/{vitest.config.ts_framework.ejs → (test)/vitest.config.ts_framework.ejs} +0 -0
  105. /package/templates/default/{vitest.config.ts_standalone.ejs → (test)/vitest.config.ts_standalone.ejs} +0 -0
  106. /package/templates/default/{vitest.config.ts_standalone@jsx_solid.ejs → (test)/vitest.config.ts_standalone@jsx_solid.ejs} +0 -0
  107. /package/templates/default/{wdio.conf.mts.ejs → (test)/wdio.conf.mts.ejs} +0 -0
  108. /package/templates/default/{wdio.conf.ts.ejs → (test)/wdio.conf.ts.ejs} +0 -0
  109. /package/templates/default/{tsconfig.json_framework.ejs → (tsconfig)/(framework)/tsconfig.json_framework.ejs} +0 -0
  110. /package/templates/default/{tsconfig.json_framework@compiler-options_i18next.ejs → (tsconfig)/(framework)/tsconfig.json_framework@compiler-options_i18next.ejs} +0 -0
  111. /package/templates/default/{tsconfig.json_framework@compiler-options_lit.ejs → (tsconfig)/(framework)/tsconfig.json_framework@compiler-options_lit.ejs} +0 -0
  112. /package/templates/default/{tsconfig.json_framework@exclude_docs-showcase.ejs → (tsconfig)/(framework)/tsconfig.json_framework@exclude_docs-showcase.ejs} +0 -0
  113. /package/templates/default/{tsconfig.json_framework@include_has-e2e.ejs → (tsconfig)/(framework)/tsconfig.json_framework@include_has-e2e.ejs} +0 -0
  114. /package/templates/default/{tsconfig.json_framework@include_svelte.ejs → (tsconfig)/(framework)/tsconfig.json_framework@include_svelte.ejs} +0 -0
  115. /package/templates/default/{tsconfig.json_framework@include_vue.ejs → (tsconfig)/(framework)/tsconfig.json_framework@include_vue.ejs} +0 -0
  116. /package/templates/default/{tsconfig.json_framework@include_wdio-obsidian.ejs → (tsconfig)/(framework)/tsconfig.json_framework@include_wdio-obsidian.ejs} +0 -0
  117. /package/templates/default/{tsconfig.json_framework@types_jest.ejs → (tsconfig)/(framework)/tsconfig.json_framework@types_jest.ejs} +0 -0
  118. /package/templates/default/{tsconfig.json_framework@types_svelte.ejs → (tsconfig)/(framework)/tsconfig.json_framework@types_svelte.ejs} +0 -0
  119. /package/templates/default/{tsconfig.json_framework@types_toolkit-styles.ejs → (tsconfig)/(framework)/tsconfig.json_framework@types_toolkit-styles.ejs} +0 -0
  120. /package/templates/default/{tsconfig.json_framework@types_wasm.ejs → (tsconfig)/(framework)/tsconfig.json_framework@types_wasm.ejs} +0 -0
  121. /package/templates/default/{tsconfig.json_framework@types_wdio-obsidian.ejs → (tsconfig)/(framework)/tsconfig.json_framework@types_wdio-obsidian.ejs} +0 -0
  122. /package/templates/default/{tsconfig.json_framework@types_with-unofficial.ejs → (tsconfig)/(framework)/tsconfig.json_framework@types_with-unofficial.ejs} +0 -0
  123. /package/templates/default/{tsconfig.json_standalone.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone.ejs} +0 -0
  124. /package/templates/default/{tsconfig.json_standalone@compiler-options_i18next.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone@compiler-options_i18next.ejs} +0 -0
  125. /package/templates/default/{tsconfig.json_standalone@compiler-options_lit.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone@compiler-options_lit.ejs} +0 -0
  126. /package/templates/default/{tsconfig.json_standalone@compiler-options_preact.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone@compiler-options_preact.ejs} +0 -0
  127. /package/templates/default/{tsconfig.json_standalone@compiler-options_react.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone@compiler-options_react.ejs} +0 -0
  128. /package/templates/default/{tsconfig.json_standalone@compiler-options_solid.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone@compiler-options_solid.ejs} +0 -0
  129. /package/templates/default/{tsconfig.json_standalone@include-extra_preact.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone@include-extra_preact.ejs} +0 -0
  130. /package/templates/default/{tsconfig.json_standalone@include-extra_react.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone@include-extra_react.ejs} +0 -0
  131. /package/templates/default/{tsconfig.json_standalone@include-extra_solid.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone@include-extra_solid.ejs} +0 -0
  132. /package/templates/default/{tsconfig.json_standalone@include_has-e2e.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone@include_has-e2e.ejs} +0 -0
  133. /package/templates/default/{tsconfig.json_standalone@include_svelte.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone@include_svelte.ejs} +0 -0
  134. /package/templates/default/{tsconfig.json_standalone@include_vue.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone@include_vue.ejs} +0 -0
  135. /package/templates/default/{tsconfig.json_standalone@types_jest.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone@types_jest.ejs} +0 -0
  136. /package/templates/default/{tsconfig.json_standalone@types_svelte.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone@types_svelte.ejs} +0 -0
  137. /package/templates/default/{tsconfig.json_standalone@types_wdio-obsidian.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone@types_wdio-obsidian.ejs} +0 -0
  138. /package/templates/default/{tsconfig.json_standalone@types_with-unofficial.ejs → (tsconfig)/(standalone)/tsconfig.json_standalone@types_with-unofficial.ejs} +0 -0
  139. /package/templates/default/scripts/{build.ts@bundler_cli-bundler.ejs → (build)/(cli-bundler)/build.ts@bundler_cli-bundler.ejs} +0 -0
  140. /package/templates/default/scripts/{build.ts@bundler_cli-bundler@compile_svelte.ejs → (build)/(cli-bundler)/build.ts@bundler_cli-bundler@compile_svelte.ejs} +0 -0
  141. /package/templates/default/scripts/{build.ts@bundler_cli-bundler@fs-import_hot-reload-plugin.ejs → (build)/(cli-bundler)/build.ts@bundler_cli-bundler@fs-import_hot-reload-plugin.ejs} +0 -0
  142. /package/templates/default/scripts/{build.ts@bundler_cli-bundler@hot-reload_hot-reload-plugin.ejs → (build)/(cli-bundler)/build.ts@bundler_cli-bundler@hot-reload_hot-reload-plugin.ejs} +0 -0
  143. /package/templates/default/scripts/{build.ts@bundler_cli-bundler@import_tailwind.ejs → (build)/(cli-bundler)/build.ts@bundler_cli-bundler@import_tailwind.ejs} +0 -0
  144. /package/templates/default/scripts/{build.ts@bundler_cli-bundler@reload_obsidian-cli.ejs → (build)/(cli-bundler)/build.ts@bundler_cli-bundler@reload_obsidian-cli.ejs} +0 -0
  145. /package/templates/default/scripts/{build.ts@bundler_cli-bundler@run_parcel.ejs → (build)/(cli-bundler)/build.ts@bundler_cli-bundler@run_parcel.ejs} +0 -0
  146. /package/templates/default/scripts/{build.ts@bundler_cli-bundler@run_rollup.ejs → (build)/(cli-bundler)/build.ts@bundler_cli-bundler@run_rollup.ejs} +0 -0
  147. /package/templates/default/scripts/{build.ts@bundler_cli-bundler@run_vite.ejs → (build)/(cli-bundler)/build.ts@bundler_cli-bundler@run_vite.ejs} +0 -0
  148. /package/templates/default/scripts/{build.ts@bundler_cli-bundler@run_webpack.ejs → (build)/(cli-bundler)/build.ts@bundler_cli-bundler@run_webpack.ejs} +0 -0
  149. /package/templates/default/scripts/{dev.ts.ejs → (build)/(dev)/dev.ts.ejs} +0 -0
  150. /package/templates/default/scripts/{dev.ts@bundler_adapter-cli.ejs → (build)/(dev)/dev.ts@bundler_adapter-cli.ejs} +0 -0
  151. /package/templates/default/scripts/{dev.ts@bundler_adapter-cli@run_rollup.ejs → (build)/(dev)/dev.ts@bundler_adapter-cli@run_rollup.ejs} +0 -0
  152. /package/templates/default/scripts/{dev.ts@bundler_adapter-cli@run_vite.ejs → (build)/(dev)/dev.ts@bundler_adapter-cli@run_vite.ejs} +0 -0
  153. /package/templates/default/scripts/{dev.ts@bundler_adapter-cli@run_webpack.ejs → (build)/(dev)/dev.ts@bundler_adapter-cli@run_webpack.ejs} +0 -0
  154. /package/templates/default/scripts/{dev.ts@bundler_cli-bundler.ejs → (build)/(dev)/dev.ts@bundler_cli-bundler.ejs} +0 -0
  155. /package/templates/default/scripts/{dev.ts@bundler_esbuild.ejs → (build)/(dev)/dev.ts@bundler_esbuild.ejs} +0 -0
  156. /package/templates/default/scripts/{dev.ts@bundler_esbuild@preset_framework.ejs → (build)/(dev)/dev.ts@bundler_esbuild@preset_framework.ejs} +0 -0
  157. /package/templates/default/scripts/{dev.ts@bundler_esbuild@preset_standalone.ejs → (build)/(dev)/dev.ts@bundler_esbuild@preset_standalone.ejs} +0 -0
  158. /package/templates/default/scripts/{dev.ts@bundler_parcel-adapter.ejs → (build)/(dev)/dev.ts@bundler_parcel-adapter.ejs} +0 -0
  159. /package/templates/default/scripts/{build.ts@bundler_esbuild.ejs → (build)/(esbuild)/build.ts@bundler_esbuild.ejs} +0 -0
  160. /package/templates/default/scripts/{build.ts@bundler_esbuild@compile_svelte.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@compile_svelte.ejs} +0 -0
  161. /package/templates/default/scripts/{build.ts@bundler_esbuild@fs-import_hot-reload-plugin.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@fs-import_hot-reload-plugin.ejs} +0 -0
  162. /package/templates/default/scripts/{build.ts@bundler_esbuild@hot-reload_hot-reload-plugin.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@hot-reload_hot-reload-plugin.ejs} +0 -0
  163. /package/templates/default/scripts/{build.ts@bundler_esbuild@import_postcss.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@import_postcss.ejs} +0 -0
  164. /package/templates/default/scripts/{build.ts@bundler_esbuild@import_scss.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@import_scss.ejs} +0 -0
  165. /package/templates/default/scripts/{build.ts@bundler_esbuild@import_solid.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@import_solid.ejs} +0 -0
  166. /package/templates/default/scripts/{build.ts@bundler_esbuild@import_svelte.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@import_svelte.ejs} +0 -0
  167. /package/templates/default/scripts/{build.ts@bundler_esbuild@import_tailwind.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@import_tailwind.ejs} +0 -0
  168. /package/templates/default/scripts/{build.ts@bundler_esbuild@import_vue.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@import_vue.ejs} +0 -0
  169. /package/templates/default/scripts/{build.ts@bundler_esbuild@options_preact.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@options_preact.ejs} +0 -0
  170. /package/templates/default/scripts/{build.ts@bundler_esbuild@options_react.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@options_react.ejs} +0 -0
  171. /package/templates/default/scripts/{build.ts@bundler_esbuild@options_wasm.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@options_wasm.ejs} +0 -0
  172. /package/templates/default/scripts/{build.ts@bundler_esbuild@plugin_postcss.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@plugin_postcss.ejs} +0 -0
  173. /package/templates/default/scripts/{build.ts@bundler_esbuild@plugin_scss.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@plugin_scss.ejs} +0 -0
  174. /package/templates/default/scripts/{build.ts@bundler_esbuild@plugin_solid.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@plugin_solid.ejs} +0 -0
  175. /package/templates/default/scripts/{build.ts@bundler_esbuild@plugin_svelte.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@plugin_svelte.ejs} +0 -0
  176. /package/templates/default/scripts/{build.ts@bundler_esbuild@plugin_vue.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@plugin_vue.ejs} +0 -0
  177. /package/templates/default/scripts/{build.ts@bundler_esbuild@preset_framework.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@preset_framework.ejs} +0 -0
  178. /package/templates/default/scripts/{build.ts@bundler_esbuild@preset_standalone.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@preset_standalone.ejs} +0 -0
  179. /package/templates/default/scripts/{build.ts@bundler_esbuild@reload_obsidian-cli.ejs → (build)/(esbuild)/build.ts@bundler_esbuild@reload_obsidian-cli.ejs} +0 -0
  180. /package/templates/default/scripts/{build-clean.ts.ejs → (build)/build-clean.ts.ejs} +0 -0
  181. /package/templates/default/scripts/{build-compile-typescript.ts.ejs → (build)/build-compile-typescript.ts.ejs} +0 -0
  182. /package/templates/default/scripts/{build-compile.ts.ejs → (build)/build-compile.ts.ejs} +0 -0
  183. /package/templates/default/scripts/{build-options.ts.ejs → (build)/build-options.ts.ejs} +0 -0
  184. /package/templates/default/scripts/{build-styles.ts.ejs → (build)/build-styles.ts.ejs} +0 -0
  185. /package/templates/default/scripts/{build.ts.ejs → (build)/build.ts.ejs} +0 -0
  186. /package/templates/default/scripts/{build.ts@bundler_adapter-cli.ejs → (build)/build.ts@bundler_adapter-cli.ejs} +0 -0
  187. /package/templates/default/scripts/{build.ts@bundler_adapter-cli@run_rollup.ejs → (build)/build.ts@bundler_adapter-cli@run_rollup.ejs} +0 -0
  188. /package/templates/default/scripts/{build.ts@bundler_adapter-cli@run_vite.ejs → (build)/build.ts@bundler_adapter-cli@run_vite.ejs} +0 -0
  189. /package/templates/default/scripts/{build.ts@bundler_adapter-cli@run_webpack.ejs → (build)/build.ts@bundler_adapter-cli@run_webpack.ejs} +0 -0
  190. /package/templates/default/scripts/{build.ts@bundler_parcel-adapter.ejs → (build)/build.ts@bundler_parcel-adapter.ejs} +0 -0
  191. /package/templates/default/scripts/{format-check.ts.ejs → (format)/format-check.ts.ejs} +0 -0
  192. /package/templates/default/scripts/{format-check.ts@tool_biome-formatter.ejs → (format)/format-check.ts@tool_biome-formatter.ejs} +0 -0
  193. /package/templates/default/scripts/{format-check.ts@tool_biome-formatter@preset_framework.ejs → (format)/format-check.ts@tool_biome-formatter@preset_framework.ejs} +0 -0
  194. /package/templates/default/scripts/{format-check.ts@tool_biome-formatter@preset_standalone.ejs → (format)/format-check.ts@tool_biome-formatter@preset_standalone.ejs} +0 -0
  195. /package/templates/default/scripts/{format-check.ts@tool_dprint.ejs → (format)/format-check.ts@tool_dprint.ejs} +0 -0
  196. /package/templates/default/scripts/{format-check.ts@tool_dprint@preset_framework.ejs → (format)/format-check.ts@tool_dprint@preset_framework.ejs} +0 -0
  197. /package/templates/default/scripts/{format-check.ts@tool_dprint@preset_standalone.ejs → (format)/format-check.ts@tool_dprint@preset_standalone.ejs} +0 -0
  198. /package/templates/default/scripts/{format-check.ts@tool_prettier.ejs → (format)/format-check.ts@tool_prettier.ejs} +0 -0
  199. /package/templates/default/scripts/{format-check.ts@tool_prettier@preset_framework.ejs → (format)/format-check.ts@tool_prettier@preset_framework.ejs} +0 -0
  200. /package/templates/default/scripts/{format-check.ts@tool_prettier@preset_standalone.ejs → (format)/format-check.ts@tool_prettier@preset_standalone.ejs} +0 -0
  201. /package/templates/default/scripts/{format.ts.ejs → (format)/format.ts.ejs} +0 -0
  202. /package/templates/default/scripts/{format.ts@tool_biome-formatter.ejs → (format)/format.ts@tool_biome-formatter.ejs} +0 -0
  203. /package/templates/default/scripts/{format.ts@tool_biome-formatter@preset_framework.ejs → (format)/format.ts@tool_biome-formatter@preset_framework.ejs} +0 -0
  204. /package/templates/default/scripts/{format.ts@tool_biome-formatter@preset_standalone.ejs → (format)/format.ts@tool_biome-formatter@preset_standalone.ejs} +0 -0
  205. /package/templates/default/scripts/{format.ts@tool_dprint.ejs → (format)/format.ts@tool_dprint.ejs} +0 -0
  206. /package/templates/default/scripts/{format.ts@tool_dprint@preset_framework.ejs → (format)/format.ts@tool_dprint@preset_framework.ejs} +0 -0
  207. /package/templates/default/scripts/{format.ts@tool_dprint@preset_standalone.ejs → (format)/format.ts@tool_dprint@preset_standalone.ejs} +0 -0
  208. /package/templates/default/scripts/{format.ts@tool_prettier.ejs → (format)/format.ts@tool_prettier.ejs} +0 -0
  209. /package/templates/default/scripts/{format.ts@tool_prettier@preset_framework.ejs → (format)/format.ts@tool_prettier@preset_framework.ejs} +0 -0
  210. /package/templates/default/scripts/{format.ts@tool_prettier@preset_standalone.ejs → (format)/format.ts@tool_prettier@preset_standalone.ejs} +0 -0
  211. /package/templates/default/scripts/{prettier.config.ts.ejs → (format)/prettier.config.ts.ejs} +0 -0
  212. /package/templates/default/scripts/{lint-md-fix.ts_framework.ejs → (lint)/(markdown)/lint-md-fix.ts_framework.ejs} +0 -0
  213. /package/templates/default/scripts/{lint-md-fix.ts_standalone.ejs → (lint)/(markdown)/lint-md-fix.ts_standalone.ejs} +0 -0
  214. /package/templates/default/scripts/{lint-md.ts_framework.ejs → (lint)/(markdown)/lint-md.ts_framework.ejs} +0 -0
  215. /package/templates/default/scripts/{lint-md.ts_standalone.ejs → (lint)/(markdown)/lint-md.ts_standalone.ejs} +0 -0
  216. /package/templates/default/scripts/{markdownlint-cli2-config.ts_framework.ejs → (lint)/(markdown)/markdownlint-cli2-config.ts_framework.ejs} +0 -0
  217. /package/templates/default/scripts/{eslint-config.ts.ejs → (lint)/eslint-config.ts.ejs} +0 -0
  218. /package/templates/default/scripts/{eslint-config.ts@extra-files_has-e2e.ejs → (lint)/eslint-config.ts@extra-files_has-e2e.ejs} +0 -0
  219. /package/templates/default/scripts/{eslint-config.ts@ignores_docs-showcase.ejs → (lint)/eslint-config.ts@ignores_docs-showcase.ejs} +0 -0
  220. /package/templates/default/scripts/{find-overexposed-fix.ts.ejs → (lint)/find-overexposed-fix.ts.ejs} +0 -0
  221. /package/templates/default/scripts/{find-overexposed.ts.ejs → (lint)/find-overexposed.ts.ejs} +0 -0
  222. /package/templates/default/scripts/{lint-fix.ts.ejs → (lint)/lint-fix.ts.ejs} +0 -0
  223. /package/templates/default/scripts/{lint-fix.ts@tool_biome-linter.ejs → (lint)/lint-fix.ts@tool_biome-linter.ejs} +0 -0
  224. /package/templates/default/scripts/{lint-fix.ts@tool_biome-linter@preset_framework.ejs → (lint)/lint-fix.ts@tool_biome-linter@preset_framework.ejs} +0 -0
  225. /package/templates/default/scripts/{lint-fix.ts@tool_biome-linter@preset_standalone.ejs → (lint)/lint-fix.ts@tool_biome-linter@preset_standalone.ejs} +0 -0
  226. /package/templates/default/scripts/{lint-fix.ts@tool_eslint.ejs → (lint)/lint-fix.ts@tool_eslint.ejs} +0 -0
  227. /package/templates/default/scripts/{lint-fix.ts@tool_eslint@preset_framework.ejs → (lint)/lint-fix.ts@tool_eslint@preset_framework.ejs} +0 -0
  228. /package/templates/default/scripts/{lint-fix.ts@tool_eslint@preset_standalone.ejs → (lint)/lint-fix.ts@tool_eslint@preset_standalone.ejs} +0 -0
  229. /package/templates/default/scripts/{lint.ts.ejs → (lint)/lint.ts.ejs} +0 -0
  230. /package/templates/default/scripts/{lint.ts@tool_biome-linter.ejs → (lint)/lint.ts@tool_biome-linter.ejs} +0 -0
  231. /package/templates/default/scripts/{lint.ts@tool_biome-linter@preset_framework.ejs → (lint)/lint.ts@tool_biome-linter@preset_framework.ejs} +0 -0
  232. /package/templates/default/scripts/{lint.ts@tool_biome-linter@preset_standalone.ejs → (lint)/lint.ts@tool_biome-linter@preset_standalone.ejs} +0 -0
  233. /package/templates/default/scripts/{lint.ts@tool_eslint.ejs → (lint)/lint.ts@tool_eslint.ejs} +0 -0
  234. /package/templates/default/scripts/{lint.ts@tool_eslint@preset_framework.ejs → (lint)/lint.ts@tool_eslint@preset_framework.ejs} +0 -0
  235. /package/templates/default/scripts/{lint.ts@tool_eslint@preset_standalone.ejs → (lint)/lint.ts@tool_eslint@preset_standalone.ejs} +0 -0
  236. /package/templates/default/scripts/{rollup.config.ts_standalone.ejs → (rollup)/(standalone)/rollup.config.ts_standalone.ejs} +0 -0
  237. /package/templates/default/scripts/{rollup.config.ts_standalone@import_rollup-babel.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@import_rollup-babel.ejs} +0 -0
  238. /package/templates/default/scripts/{rollup.config.ts_standalone@import_rollup-json.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@import_rollup-json.ejs} +0 -0
  239. /package/templates/default/scripts/{rollup.config.ts_standalone@import_rollup-postcss.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@import_rollup-postcss.ejs} +0 -0
  240. /package/templates/default/scripts/{rollup.config.ts_standalone@import_scss.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@import_scss.ejs} +0 -0
  241. /package/templates/default/scripts/{rollup.config.ts_standalone@import_svelte.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@import_svelte.ejs} +0 -0
  242. /package/templates/default/scripts/{rollup.config.ts_standalone@import_vue.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@import_vue.ejs} +0 -0
  243. /package/templates/default/scripts/{rollup.config.ts_standalone@import_wasm.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@import_wasm.ejs} +0 -0
  244. /package/templates/default/scripts/{rollup.config.ts_standalone@post-plugin_preact.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@post-plugin_preact.ejs} +0 -0
  245. /package/templates/default/scripts/{rollup.config.ts_standalone@post-plugin_react.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@post-plugin_react.ejs} +0 -0
  246. /package/templates/default/scripts/{rollup.config.ts_standalone@post-plugin_rollup-json.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@post-plugin_rollup-json.ejs} +0 -0
  247. /package/templates/default/scripts/{rollup.config.ts_standalone@post-plugin_rollup-postcss.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@post-plugin_rollup-postcss.ejs} +0 -0
  248. /package/templates/default/scripts/{rollup.config.ts_standalone@post-plugin_scss.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@post-plugin_scss.ejs} +0 -0
  249. /package/templates/default/scripts/{rollup.config.ts_standalone@post-plugin_solid.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@post-plugin_solid.ejs} +0 -0
  250. /package/templates/default/scripts/{rollup.config.ts_standalone@post-plugin_wasm.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@post-plugin_wasm.ejs} +0 -0
  251. /package/templates/default/scripts/{rollup.config.ts_standalone@pre-plugin_svelte.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@pre-plugin_svelte.ejs} +0 -0
  252. /package/templates/default/scripts/{rollup.config.ts_standalone@pre-plugin_vue.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@pre-plugin_vue.ejs} +0 -0
  253. /package/templates/default/scripts/{rollup.config.ts_standalone@unwrap_rollup-babel.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@unwrap_rollup-babel.ejs} +0 -0
  254. /package/templates/default/scripts/{rollup.config.ts_standalone@unwrap_rollup-json.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@unwrap_rollup-json.ejs} +0 -0
  255. /package/templates/default/scripts/{rollup.config.ts_standalone@unwrap_rollup-postcss.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@unwrap_rollup-postcss.ejs} +0 -0
  256. /package/templates/default/scripts/{rollup.config.ts_standalone@unwrap_scss.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@unwrap_scss.ejs} +0 -0
  257. /package/templates/default/scripts/{rollup.config.ts_standalone@unwrap_svelte.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@unwrap_svelte.ejs} +0 -0
  258. /package/templates/default/scripts/{rollup.config.ts_standalone@unwrap_vue.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@unwrap_vue.ejs} +0 -0
  259. /package/templates/default/scripts/{rollup.config.ts_standalone@unwrap_wasm.ejs → (rollup)/(standalone)/rollup.config.ts_standalone@unwrap_wasm.ejs} +0 -0
  260. /package/templates/default/scripts/{babel.config.ts_rollup.ejs → (rollup)/babel.config.ts_rollup.ejs} +0 -0
  261. /package/templates/default/scripts/{babel.config.ts_rollup@babel-plugin_preact.ejs → (rollup)/babel.config.ts_rollup@babel-plugin_preact.ejs} +0 -0
  262. /package/templates/default/scripts/{babel.config.ts_rollup@babel-preset_react.ejs → (rollup)/babel.config.ts_rollup@babel-preset_react.ejs} +0 -0
  263. /package/templates/default/scripts/{babel.config.ts_rollup@babel-preset_solid.ejs → (rollup)/babel.config.ts_rollup@babel-preset_solid.ejs} +0 -0
  264. /package/templates/default/scripts/{rollup.config.ts_framework.ejs → (rollup)/rollup.config.ts_framework.ejs} +0 -0
  265. /package/templates/default/scripts/{rollup.config.ts_framework@import_rollup-json.ejs → (rollup)/rollup.config.ts_framework@import_rollup-json.ejs} +0 -0
  266. /package/templates/default/scripts/{rollup.config.ts_framework@import_scss.ejs → (rollup)/rollup.config.ts_framework@import_scss.ejs} +0 -0
  267. /package/templates/default/scripts/{rollup.config.ts_framework@plugin_rollup-json.ejs → (rollup)/rollup.config.ts_framework@plugin_rollup-json.ejs} +0 -0
  268. /package/templates/default/scripts/{rollup.config.ts_framework@plugin_scss.ejs → (rollup)/rollup.config.ts_framework@plugin_scss.ejs} +0 -0
  269. /package/templates/default/scripts/{rollup.config.ts_framework@unwrap_rollup-json.ejs → (rollup)/rollup.config.ts_framework@unwrap_rollup-json.ejs} +0 -0
  270. /package/templates/default/scripts/{rollup.config.ts_framework@unwrap_scss.ejs → (rollup)/rollup.config.ts_framework@unwrap_scss.ejs} +0 -0
  271. /package/templates/default/scripts/{test-e2e.ts.ejs → (test)/(e2e)/test-e2e.ts.ejs} +0 -0
  272. /package/templates/default/scripts/{test-e2e.ts@tool_obsidian-test.ejs → (test)/(e2e)/test-e2e.ts@tool_obsidian-test.ejs} +0 -0
  273. /package/templates/default/scripts/{test-e2e.ts@tool_obsidian-test@preset_framework.ejs → (test)/(e2e)/test-e2e.ts@tool_obsidian-test@preset_framework.ejs} +0 -0
  274. /package/templates/default/scripts/{test-e2e.ts@tool_obsidian-test@preset_standalone.ejs → (test)/(e2e)/test-e2e.ts@tool_obsidian-test@preset_standalone.ejs} +0 -0
  275. /package/templates/default/scripts/{test-e2e.ts@tool_wdio-obsidian.ejs → (test)/(e2e)/test-e2e.ts@tool_wdio-obsidian.ejs} +0 -0
  276. /package/templates/default/scripts/{test-e2e.ts@tool_wdio-obsidian@preset_framework.ejs → (test)/(e2e)/test-e2e.ts@tool_wdio-obsidian@preset_framework.ejs} +0 -0
  277. /package/templates/default/scripts/{test-e2e.ts@tool_wdio-obsidian@preset_standalone.ejs → (test)/(e2e)/test-e2e.ts@tool_wdio-obsidian@preset_standalone.ejs} +0 -0
  278. /package/templates/default/scripts/{demo-vault-global-setup.ts.ejs → (test)/(integration)/demo-vault-global-setup.ts.ejs} +0 -0
  279. /package/templates/default/scripts/{test-integration-android.ts.ejs → (test)/(integration)/test-integration-android.ts.ejs} +0 -0
  280. /package/templates/default/scripts/{test-integration-demo-vault.ts.ejs → (test)/(integration)/test-integration-demo-vault.ts.ejs} +0 -0
  281. /package/templates/default/scripts/{test-integration-desktop-performance.ts.ejs → (test)/(integration)/test-integration-desktop-performance.ts.ejs} +0 -0
  282. /package/templates/default/scripts/{test-integration-desktop.ts.ejs → (test)/(integration)/test-integration-desktop.ts.ejs} +0 -0
  283. /package/templates/default/scripts/{test-integration-no-app.ts.ejs → (test)/(integration)/test-integration-no-app.ts.ejs} +0 -0
  284. /package/templates/default/scripts/{test-integration.ts.ejs → (test)/(integration)/test-integration.ts.ejs} +0 -0
  285. /package/templates/default/scripts/{framework-component-stub.ts.ejs → (test)/framework-component-stub.ts.ejs} +0 -0
  286. /package/templates/default/scripts/{stylesheet-stub.ts.ejs → (test)/stylesheet-stub.ts.ejs} +0 -0
  287. /package/templates/default/scripts/{test-coverage.ts.ejs → (test)/test-coverage.ts.ejs} +0 -0
  288. /package/templates/default/scripts/{test-coverage.ts@tool_jest.ejs → (test)/test-coverage.ts@tool_jest.ejs} +0 -0
  289. /package/templates/default/scripts/{test-coverage.ts@tool_vitest.ejs → (test)/test-coverage.ts@tool_vitest.ejs} +0 -0
  290. /package/templates/default/scripts/{test-watch.ts_framework.ejs → (test)/test-watch.ts_framework.ejs} +0 -0
  291. /package/templates/default/scripts/{test-watch.ts_framework@tool_jest.ejs → (test)/test-watch.ts_framework@tool_jest.ejs} +0 -0
  292. /package/templates/default/scripts/{test-watch.ts_framework@tool_vitest.ejs → (test)/test-watch.ts_framework@tool_vitest.ejs} +0 -0
  293. /package/templates/default/scripts/{test-watch.ts_standalone.ejs → (test)/test-watch.ts_standalone.ejs} +0 -0
  294. /package/templates/default/scripts/{test-watch.ts_standalone@tool_jest.ejs → (test)/test-watch.ts_standalone@tool_jest.ejs} +0 -0
  295. /package/templates/default/scripts/{test-watch.ts_standalone@tool_vitest.ejs → (test)/test-watch.ts_standalone@tool_vitest.ejs} +0 -0
  296. /package/templates/default/scripts/{test.ts_framework.ejs → (test)/test.ts_framework.ejs} +0 -0
  297. /package/templates/default/scripts/{test.ts_framework@tool_jest.ejs → (test)/test.ts_framework@tool_jest.ejs} +0 -0
  298. /package/templates/default/scripts/{test.ts_framework@tool_vitest.ejs → (test)/test.ts_framework@tool_vitest.ejs} +0 -0
  299. /package/templates/default/scripts/{test.ts_standalone.ejs → (test)/test.ts_standalone.ejs} +0 -0
  300. /package/templates/default/scripts/{test.ts_standalone@tool_jest.ejs → (test)/test.ts_standalone@tool_jest.ejs} +0 -0
  301. /package/templates/default/scripts/{test.ts_standalone@tool_vitest.ejs → (test)/test.ts_standalone@tool_vitest.ejs} +0 -0
  302. /package/templates/default/scripts/{vitest-config.ts.ejs → (test)/vitest-config.ts.ejs} +0 -0
  303. /package/templates/default/scripts/{vitest-config.ts@edit-context_docs-showcase.ejs → (test)/vitest-config.ts@edit-context_docs-showcase.ejs} +0 -0
  304. /package/templates/default/scripts/{wasm-module-stub.ts.ejs → (test)/wasm-module-stub.ts.ejs} +0 -0
  305. /package/templates/default/scripts/{vite.config.ts_framework.ejs → (vite)/vite.config.ts_framework.ejs} +0 -0
  306. /package/templates/default/scripts/{vite.config.ts_standalone.ejs → (vite)/vite.config.ts_standalone.ejs} +0 -0
  307. /package/templates/default/scripts/{vite.config.ts_standalone@import_preact.ejs → (vite)/vite.config.ts_standalone@import_preact.ejs} +0 -0
  308. /package/templates/default/scripts/{vite.config.ts_standalone@import_react.ejs → (vite)/vite.config.ts_standalone@import_react.ejs} +0 -0
  309. /package/templates/default/scripts/{vite.config.ts_standalone@import_solid.ejs → (vite)/vite.config.ts_standalone@import_solid.ejs} +0 -0
  310. /package/templates/default/scripts/{vite.config.ts_standalone@import_svelte.ejs → (vite)/vite.config.ts_standalone@import_svelte.ejs} +0 -0
  311. /package/templates/default/scripts/{vite.config.ts_standalone@import_vue.ejs → (vite)/vite.config.ts_standalone@import_vue.ejs} +0 -0
  312. /package/templates/default/scripts/{vite.config.ts_standalone@plugin_preact.ejs → (vite)/vite.config.ts_standalone@plugin_preact.ejs} +0 -0
  313. /package/templates/default/scripts/{vite.config.ts_standalone@plugin_react.ejs → (vite)/vite.config.ts_standalone@plugin_react.ejs} +0 -0
  314. /package/templates/default/scripts/{vite.config.ts_standalone@plugin_solid.ejs → (vite)/vite.config.ts_standalone@plugin_solid.ejs} +0 -0
  315. /package/templates/default/scripts/{vite.config.ts_standalone@plugin_svelte.ejs → (vite)/vite.config.ts_standalone@plugin_svelte.ejs} +0 -0
  316. /package/templates/default/scripts/{vite.config.ts_standalone@plugin_vue.ejs → (vite)/vite.config.ts_standalone@plugin_vue.ejs} +0 -0
  317. /package/templates/default/scripts/{webpack.config.ts_framework.ejs → (webpack)/webpack.config.ts_framework.ejs} +0 -0
  318. /package/templates/default/scripts/{webpack.config.ts_framework@import_scss.ejs → (webpack)/webpack.config.ts_framework@import_scss.ejs} +0 -0
  319. /package/templates/default/scripts/{webpack.config.ts_framework@plugin_scss.ejs → (webpack)/webpack.config.ts_framework@plugin_scss.ejs} +0 -0
  320. /package/templates/default/scripts/{webpack.config.ts_framework@rule_scss.ejs → (webpack)/webpack.config.ts_framework@rule_scss.ejs} +0 -0
  321. /package/templates/default/scripts/{webpack.config.ts_standalone.ejs → (webpack)/webpack.config.ts_standalone.ejs} +0 -0
  322. /package/templates/default/scripts/{webpack.config.ts_standalone@import_svelte.ejs → (webpack)/webpack.config.ts_standalone@import_svelte.ejs} +0 -0
  323. /package/templates/default/scripts/{webpack.config.ts_standalone@import_vue.ejs → (webpack)/webpack.config.ts_standalone@import_vue.ejs} +0 -0
  324. /package/templates/default/scripts/{webpack.config.ts_standalone@import_webpack-css-extract.ejs → (webpack)/webpack.config.ts_standalone@import_webpack-css-extract.ejs} +0 -0
  325. /package/templates/default/scripts/{webpack.config.ts_standalone@plugin_vue.ejs → (webpack)/webpack.config.ts_standalone@plugin_vue.ejs} +0 -0
  326. /package/templates/default/scripts/{webpack.config.ts_standalone@plugin_webpack-css-extract.ejs → (webpack)/webpack.config.ts_standalone@plugin_webpack-css-extract.ejs} +0 -0
  327. /package/templates/default/scripts/{webpack.config.ts_standalone@rule_css-modules.ejs → (webpack)/webpack.config.ts_standalone@rule_css-modules.ejs} +0 -0
  328. /package/templates/default/scripts/{webpack.config.ts_standalone@rule_css.ejs → (webpack)/webpack.config.ts_standalone@rule_css.ejs} +0 -0
  329. /package/templates/default/scripts/{webpack.config.ts_standalone@rule_postcss.ejs → (webpack)/webpack.config.ts_standalone@rule_postcss.ejs} +0 -0
  330. /package/templates/default/scripts/{webpack.config.ts_standalone@rule_scss.ejs → (webpack)/webpack.config.ts_standalone@rule_scss.ejs} +0 -0
  331. /package/templates/default/scripts/{webpack.config.ts_standalone@rule_solid.ejs → (webpack)/webpack.config.ts_standalone@rule_solid.ejs} +0 -0
  332. /package/templates/default/scripts/{webpack.config.ts_standalone@rule_svelte.ejs → (webpack)/webpack.config.ts_standalone@rule_svelte.ejs} +0 -0
  333. /package/templates/default/scripts/{webpack.config.ts_standalone@rule_tailwind.ejs → (webpack)/webpack.config.ts_standalone@rule_tailwind.ejs} +0 -0
  334. /package/templates/default/scripts/{webpack.config.ts_standalone@rule_vue.ejs → (webpack)/webpack.config.ts_standalone@rule_vue.ejs} +0 -0
  335. /package/templates/default/scripts/{webpack.config.ts_standalone@rule_wasm.ejs → (webpack)/webpack.config.ts_standalone@rule_wasm.ejs} +0 -0
  336. /package/templates/default/scripts/{webpack.config.ts_standalone@ts-loader-compiler-options_vue.ejs → (webpack)/webpack.config.ts_standalone@ts-loader-compiler-options_vue.ejs} +0 -0
  337. /package/templates/default/scripts/{webpack.config.ts_standalone@ts-loader-options_vue.ejs → (webpack)/webpack.config.ts_standalone@ts-loader-options_vue.ejs} +0 -0
  338. /package/templates/default/src/{main.test.ts.ejs → (main)/main.test.ts.ejs} +0 -0
  339. /package/templates/default/src/{main.test.ts@test-imports_vitest.ejs → (main)/main.test.ts@test-imports_vitest.ejs} +0 -0
  340. /package/templates/default/src/{main.ts.ejs → (main)/main.ts.ejs} +0 -0
  341. /package/templates/default/src/{main.ts@import_css.ejs → (main)/main.ts@import_css.ejs} +0 -0
  342. /package/templates/default/src/{main.ts@import_postcss.ejs → (main)/main.ts@import_postcss.ejs} +0 -0
  343. /package/templates/default/src/{main.ts@import_scss.ejs → (main)/main.ts@import_scss.ejs} +0 -0
  344. /package/templates/default/src/{main.ts@import_tailwind.ejs → (main)/main.ts@import_tailwind.ejs} +0 -0
  345. /package/templates/default/src/{main.ts@import_tailwind@preset_framework.ejs → (main)/main.ts@import_tailwind@preset_framework.ejs} +0 -0
  346. /package/templates/default/src/{main.ts@import_tailwind@preset_standalone.ejs → (main)/main.ts@import_tailwind@preset_standalone.ejs} +0 -0
  347. /package/templates/default/src/{plugin.ts_all-in-one@import2_codemirror.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@import2_codemirror.ejs} +0 -0
  348. /package/templates/default/src/{plugin.ts_all-in-one@import2_css-modules.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@import2_css-modules.ejs} +0 -0
  349. /package/templates/default/src/{plugin.ts_all-in-one@import2_docs-showcase.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@import2_docs-showcase.ejs} +0 -0
  350. /package/templates/default/src/{plugin.ts_all-in-one@import2_i18next.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@import2_i18next.ejs} +0 -0
  351. /package/templates/default/src/{plugin.ts_all-in-one@import2_lit.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@import2_lit.ejs} +0 -0
  352. /package/templates/default/src/{plugin.ts_all-in-one@import2_preact.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@import2_preact.ejs} +0 -0
  353. /package/templates/default/src/{plugin.ts_all-in-one@import2_react.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@import2_react.ejs} +0 -0
  354. /package/templates/default/src/{plugin.ts_all-in-one@import2_solid.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@import2_solid.ejs} +0 -0
  355. /package/templates/default/src/{plugin.ts_all-in-one@import2_svelte.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@import2_svelte.ejs} +0 -0
  356. /package/templates/default/src/{plugin.ts_all-in-one@import2_typesafe-i18n.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@import2_typesafe-i18n.ejs} +0 -0
  357. /package/templates/default/src/{plugin.ts_all-in-one@import2_vue.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@import2_vue.ejs} +0 -0
  358. /package/templates/default/src/{plugin.ts_all-in-one@import2_wasm.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@import2_wasm.ejs} +0 -0
  359. /package/templates/default/src/{plugin.ts_all-in-one@method_ui-view.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@method_ui-view.ejs} +0 -0
  360. /package/templates/default/src/{plugin.ts_all-in-one@onload_codemirror.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@onload_codemirror.ejs} +0 -0
  361. /package/templates/default/src/{plugin.ts_all-in-one@onload_css-modules.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@onload_css-modules.ejs} +0 -0
  362. /package/templates/default/src/{plugin.ts_all-in-one@onload_docs-showcase.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@onload_docs-showcase.ejs} +0 -0
  363. /package/templates/default/src/{plugin.ts_all-in-one@onload_i18next.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@onload_i18next.ejs} +0 -0
  364. /package/templates/default/src/{plugin.ts_all-in-one@onload_lit.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@onload_lit.ejs} +0 -0
  365. /package/templates/default/src/{plugin.ts_all-in-one@onload_preact.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@onload_preact.ejs} +0 -0
  366. /package/templates/default/src/{plugin.ts_all-in-one@onload_react.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@onload_react.ejs} +0 -0
  367. /package/templates/default/src/{plugin.ts_all-in-one@onload_solid.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@onload_solid.ejs} +0 -0
  368. /package/templates/default/src/{plugin.ts_all-in-one@onload_svelte.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@onload_svelte.ejs} +0 -0
  369. /package/templates/default/src/{plugin.ts_all-in-one@onload_typesafe-i18n.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@onload_typesafe-i18n.ejs} +0 -0
  370. /package/templates/default/src/{plugin.ts_all-in-one@onload_vue.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@onload_vue.ejs} +0 -0
  371. /package/templates/default/src/{plugin.ts_all-in-one@onload_wasm.ejs → (plugin)/(all-in-one)/plugin.ts_all-in-one@onload_wasm.ejs} +0 -0
  372. /package/templates/default/src/{plugin.ts_demo@import_css-modules.ejs → (plugin)/(demo)/plugin.ts_demo@import_css-modules.ejs} +0 -0
  373. /package/templates/default/src/{plugin.ts_demo@import_i18next.ejs → (plugin)/(demo)/plugin.ts_demo@import_i18next.ejs} +0 -0
  374. /package/templates/default/src/{plugin.ts_demo@import_lit.ejs → (plugin)/(demo)/plugin.ts_demo@import_lit.ejs} +0 -0
  375. /package/templates/default/src/{plugin.ts_demo@import_preact.ejs → (plugin)/(demo)/plugin.ts_demo@import_preact.ejs} +0 -0
  376. /package/templates/default/src/{plugin.ts_demo@import_react.ejs → (plugin)/(demo)/plugin.ts_demo@import_react.ejs} +0 -0
  377. /package/templates/default/src/{plugin.ts_demo@import_solid.ejs → (plugin)/(demo)/plugin.ts_demo@import_solid.ejs} +0 -0
  378. /package/templates/default/src/{plugin.ts_demo@import_svelte.ejs → (plugin)/(demo)/plugin.ts_demo@import_svelte.ejs} +0 -0
  379. /package/templates/default/src/{plugin.ts_demo@import_typesafe-i18n.ejs → (plugin)/(demo)/plugin.ts_demo@import_typesafe-i18n.ejs} +0 -0
  380. /package/templates/default/src/{plugin.ts_demo@import_vue.ejs → (plugin)/(demo)/plugin.ts_demo@import_vue.ejs} +0 -0
  381. /package/templates/default/src/{plugin.ts_demo@import_wasm.ejs → (plugin)/(demo)/plugin.ts_demo@import_wasm.ejs} +0 -0
  382. /package/templates/default/src/{plugin.ts_demo@method_ui-view.ejs → (plugin)/(demo)/plugin.ts_demo@method_ui-view.ejs} +0 -0
  383. /package/templates/default/src/{plugin.ts_demo@onload_css-modules.ejs → (plugin)/(demo)/plugin.ts_demo@onload_css-modules.ejs} +0 -0
  384. /package/templates/default/src/{plugin.ts_demo@onload_i18next.ejs → (plugin)/(demo)/plugin.ts_demo@onload_i18next.ejs} +0 -0
  385. /package/templates/default/src/{plugin.ts_demo@onload_lit.ejs → (plugin)/(demo)/plugin.ts_demo@onload_lit.ejs} +0 -0
  386. /package/templates/default/src/{plugin.ts_demo@onload_preact.ejs → (plugin)/(demo)/plugin.ts_demo@onload_preact.ejs} +0 -0
  387. /package/templates/default/src/{plugin.ts_demo@onload_react.ejs → (plugin)/(demo)/plugin.ts_demo@onload_react.ejs} +0 -0
  388. /package/templates/default/src/{plugin.ts_demo@onload_solid.ejs → (plugin)/(demo)/plugin.ts_demo@onload_solid.ejs} +0 -0
  389. /package/templates/default/src/{plugin.ts_demo@onload_svelte.ejs → (plugin)/(demo)/plugin.ts_demo@onload_svelte.ejs} +0 -0
  390. /package/templates/default/src/{plugin.ts_demo@onload_typesafe-i18n.ejs → (plugin)/(demo)/plugin.ts_demo@onload_typesafe-i18n.ejs} +0 -0
  391. /package/templates/default/src/{plugin.ts_demo@onload_vue.ejs → (plugin)/(demo)/plugin.ts_demo@onload_vue.ejs} +0 -0
  392. /package/templates/default/src/{plugin.ts_demo@onload_wasm.ejs → (plugin)/(demo)/plugin.ts_demo@onload_wasm.ejs} +0 -0
  393. /package/templates/default/src/{plugin.ts_standalone.ejs → (plugin)/(standalone)/plugin.ts_standalone.ejs} +0 -0
  394. /package/templates/default/src/{plugin.ts_standalone@import_codemirror.ejs → (plugin)/(standalone)/plugin.ts_standalone@import_codemirror.ejs} +0 -0
  395. /package/templates/default/src/{plugin.ts_standalone@import_css-modules.ejs → (plugin)/(standalone)/plugin.ts_standalone@import_css-modules.ejs} +0 -0
  396. /package/templates/default/src/{plugin.ts_standalone@import_i18next.ejs → (plugin)/(standalone)/plugin.ts_standalone@import_i18next.ejs} +0 -0
  397. /package/templates/default/src/{plugin.ts_standalone@import_lit.ejs → (plugin)/(standalone)/plugin.ts_standalone@import_lit.ejs} +0 -0
  398. /package/templates/default/src/{plugin.ts_standalone@import_preact.ejs → (plugin)/(standalone)/plugin.ts_standalone@import_preact.ejs} +0 -0
  399. /package/templates/default/src/{plugin.ts_standalone@import_react.ejs → (plugin)/(standalone)/plugin.ts_standalone@import_react.ejs} +0 -0
  400. /package/templates/default/src/{plugin.ts_standalone@import_solid.ejs → (plugin)/(standalone)/plugin.ts_standalone@import_solid.ejs} +0 -0
  401. /package/templates/default/src/{plugin.ts_standalone@import_svelte.ejs → (plugin)/(standalone)/plugin.ts_standalone@import_svelte.ejs} +0 -0
  402. /package/templates/default/src/{plugin.ts_standalone@import_typesafe-i18n.ejs → (plugin)/(standalone)/plugin.ts_standalone@import_typesafe-i18n.ejs} +0 -0
  403. /package/templates/default/src/{plugin.ts_standalone@import_vue.ejs → (plugin)/(standalone)/plugin.ts_standalone@import_vue.ejs} +0 -0
  404. /package/templates/default/src/{plugin.ts_standalone@import_wasm.ejs → (plugin)/(standalone)/plugin.ts_standalone@import_wasm.ejs} +0 -0
  405. /package/templates/default/src/{plugin.ts_standalone@method_ui-view.ejs → (plugin)/(standalone)/plugin.ts_standalone@method_ui-view.ejs} +0 -0
  406. /package/templates/default/src/{plugin.ts_standalone@onload_codemirror.ejs → (plugin)/(standalone)/plugin.ts_standalone@onload_codemirror.ejs} +0 -0
  407. /package/templates/default/src/{plugin.ts_standalone@onload_css-modules.ejs → (plugin)/(standalone)/plugin.ts_standalone@onload_css-modules.ejs} +0 -0
  408. /package/templates/default/src/{plugin.ts_standalone@onload_i18next.ejs → (plugin)/(standalone)/plugin.ts_standalone@onload_i18next.ejs} +0 -0
  409. /package/templates/default/src/{plugin.ts_standalone@onload_lit.ejs → (plugin)/(standalone)/plugin.ts_standalone@onload_lit.ejs} +0 -0
  410. /package/templates/default/src/{plugin.ts_standalone@onload_preact.ejs → (plugin)/(standalone)/plugin.ts_standalone@onload_preact.ejs} +0 -0
  411. /package/templates/default/src/{plugin.ts_standalone@onload_react.ejs → (plugin)/(standalone)/plugin.ts_standalone@onload_react.ejs} +0 -0
  412. /package/templates/default/src/{plugin.ts_standalone@onload_solid.ejs → (plugin)/(standalone)/plugin.ts_standalone@onload_solid.ejs} +0 -0
  413. /package/templates/default/src/{plugin.ts_standalone@onload_svelte.ejs → (plugin)/(standalone)/plugin.ts_standalone@onload_svelte.ejs} +0 -0
  414. /package/templates/default/src/{plugin.ts_standalone@onload_typesafe-i18n.ejs → (plugin)/(standalone)/plugin.ts_standalone@onload_typesafe-i18n.ejs} +0 -0
  415. /package/templates/default/src/{plugin.ts_standalone@onload_vue.ejs → (plugin)/(standalone)/plugin.ts_standalone@onload_vue.ejs} +0 -0
  416. /package/templates/default/src/{plugin.ts_standalone@onload_wasm.ejs → (plugin)/(standalone)/plugin.ts_standalone@onload_wasm.ejs} +0 -0
  417. /package/templates/default/src/{plugin-settings-component.test.ts_all-in-one.ejs → (settings)/plugin-settings-component.test.ts_all-in-one.ejs} +0 -0
  418. /package/templates/default/src/{plugin-settings-component.test.ts_all-in-one@test-imports_vitest.ejs → (settings)/plugin-settings-component.test.ts_all-in-one@test-imports_vitest.ejs} +0 -0
  419. /package/templates/default/src/{plugin-settings-component.test.ts_demo.ejs → (settings)/plugin-settings-component.test.ts_demo.ejs} +0 -0
  420. /package/templates/default/src/{plugin-settings-component.test.ts_demo@test-imports_vitest.ejs → (settings)/plugin-settings-component.test.ts_demo@test-imports_vitest.ejs} +0 -0
  421. /package/templates/default/src/{plugin-settings-component.ts_all-in-one.ejs → (settings)/plugin-settings-component.ts_all-in-one.ejs} +0 -0
  422. /package/templates/default/src/{plugin-settings-tab.ts_all-in-one.ejs → (settings)/plugin-settings-tab.ts_all-in-one.ejs} +0 -0
  423. /package/templates/default/src/{plugin-settings.test.ts_demo.ejs → (settings)/plugin-settings.test.ts_demo.ejs} +0 -0
  424. /package/templates/default/src/{plugin-settings.test.ts_demo@test-imports_vitest.ejs → (settings)/plugin-settings.test.ts_demo@test-imports_vitest.ejs} +0 -0
  425. /package/templates/default/src/{plugin-settings.ts_all-in-one.ejs → (settings)/plugin-settings.ts_all-in-one.ejs} +0 -0
  426. /package/templates/default/src/{plugin-settings.ts_demo.ejs → (settings)/plugin-settings.ts_demo.ejs} +0 -0
  427. /package/templates/default/src/{settings.ts.ejs → (settings)/settings.ts.ejs} +0 -0
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@mnaoumov/create-obsidian-plugin",
3
- "version": "1.1.0",
3
+ "version": "1.3.0",
4
4
  "description": "Create Obsidian plugin from modern templates.",
5
- "homepage": "https://github.com/mnaoumov/create-obsidian-plugin#readme",
5
+ "homepage": "https://mnaoumov.dev/create-obsidian-plugin/",
6
6
  "bugs": "https://github.com/mnaoumov/create-obsidian-plugin/issues",
7
7
  "repository": {
8
8
  "type": "git",
@@ -27,6 +27,9 @@
27
27
  "scripts": {
28
28
  "build": "jiti scripts/build.ts",
29
29
  "commit": "jiti scripts/commit.ts",
30
+ "docs:build": "jiti scripts/docs-build.ts",
31
+ "docs:dev": "jiti scripts/docs-dev.ts",
32
+ "docs:preview": "jiti scripts/docs-preview.ts",
30
33
  "format": "jiti scripts/format.ts",
31
34
  "format:check": "jiti scripts/format-check.ts",
32
35
  "gate:case": "jiti scripts/gate-one-case.ts",
@@ -52,27 +55,33 @@
52
55
  "overrides": {
53
56
  "eslint": "$eslint",
54
57
  "eslint-plugin-import": "npm:eslint-plugin-import-x@^4.17.1",
58
+ "katex": "^0.18.2",
59
+ "re2js": "^2.9.1",
55
60
  "typescript": "$typescript"
56
61
  },
57
62
  "dependencies": {
58
- "@clack/core": "^1.4.3",
59
- "@clack/prompts": "^1.7.0",
63
+ "@clack/core": "^1.5.1",
64
+ "@clack/prompts": "^1.8.1",
60
65
  "ejs": "^6.0.1",
61
66
  "semver": "^7.8.5"
62
67
  },
63
68
  "devDependencies": {
69
+ "@astrojs/markdown-satteri": "^0.4.6",
70
+ "@astrojs/starlight": "^0.42.8",
64
71
  "@commitlint/cli": "^21.2.2",
65
72
  "@commitlint/config-conventional": "^21.2.2",
66
73
  "@commitlint/types": "^21.2.0",
67
74
  "@eslint-community/eslint-plugin-eslint-comments": "^4.7.2",
68
75
  "@eslint/js": "^10.0.1",
69
- "@mnaoumov/typescript-dev-toolkit": "^3.3.0",
76
+ "@mnaoumov/typescript-dev-toolkit": "^5.2.0",
77
+ "@resvg/resvg-js": "^2.6.2",
70
78
  "@stylistic/eslint-plugin": "^5.10.0",
71
79
  "@total-typescript/ts-reset": "^0.6.1",
72
80
  "@tsconfig/strictest": "^2.0.8",
73
81
  "@types/ejs": "^3.1.5",
74
82
  "@types/semver": "^7.8.0",
75
83
  "@vitest/coverage-v8": "^5.0.5",
84
+ "astro": "^7.4.4",
76
85
  "better-typescript-lib": "^2.12.0",
77
86
  "cspell": "^10.1.1",
78
87
  "czg": "^1.14.0",
@@ -86,6 +95,8 @@
86
95
  "husky": "^9.1.7",
87
96
  "ignore": "^7.0.12",
88
97
  "jiti": "^2.7.0",
98
+ "satori": "^0.33.5",
99
+ "satteri": "^0.10.5",
89
100
  "typescript": "6.0.3",
90
101
  "typescript-eslint": "^8.68.0",
91
102
  "vitest": "^5.0.5",
package/src/main.ts CHANGED
@@ -26,8 +26,8 @@ import type {
26
26
  Answers,
27
27
  GeneratorConfig,
28
28
  PackageJson
29
- } from './answers.ts';
30
- import type { CliArgs } from './cli-args.ts';
29
+ } from './answers/answers.ts';
30
+ import type { CliArgs } from './answers/cli-args.ts';
31
31
  import type { Overlay } from './overlay.ts';
32
32
  import type { UpstreamSnapshot } from './upstream-snapshot.ts';
33
33
 
@@ -37,22 +37,21 @@ import {
37
37
  formatCreateScript,
38
38
  getScriptExtension,
39
39
  getShellForPlatform
40
- } from './answers-export.ts';
40
+ } from './answers/answers-export.ts';
41
41
  import {
42
42
  CONFIG_FILE_NAME,
43
43
  Mode
44
- } from './answers.ts';
45
- import { assertNotCancelled } from './clack-utils.ts';
44
+ } from './answers/answers.ts';
46
45
  import {
47
46
  getHelpText,
48
47
  parseCliArgs
49
- } from './cli-args.ts';
50
- import { findUnlistableManifestAnswers } from './directory-constraints.ts';
48
+ } from './answers/cli-args.ts';
49
+ import { findUnlistableManifestAnswers } from './directory/directory-constraints.ts';
51
50
  import {
52
51
  fetchCommunityPluginIds,
53
52
  makeUnlistedPluginIdValidator,
54
53
  validatePluginIdIsUnlisted
55
- } from './directory-registry.ts';
54
+ } from './directory/directory-registry.ts';
56
55
  import { needsInitialFormat } from './features/formatter/index.ts';
57
56
  import { INITIAL_COMMIT_MESSAGE } from './features/git-hooks.ts';
58
57
  import {
@@ -72,11 +71,12 @@ import {
72
71
  toRecordedOverlayPath
73
72
  } from './overlay.ts';
74
73
  import { createProjectFormatter } from './project-formatter.ts';
74
+ import { assertNotCancelled } from './prompts/clack-utils.ts';
75
75
  import {
76
76
  getDefaultAnswers,
77
77
  makePluginName,
78
78
  promptAnswers
79
- } from './prompts.ts';
79
+ } from './prompts/prompts.ts';
80
80
  import {
81
81
  buildTemplate,
82
82
  copyTemplates,
@@ -95,21 +95,22 @@ import {
95
95
  } from './versions.ts';
96
96
 
97
97
  interface ExecError extends Error {
98
+ // eslint-disable-next-line typescript-dev-toolkit/readonly-interface-members -- The command wrapper attaches captured stderr to the thrown error.
98
99
  stderr: string;
99
100
  }
100
101
 
101
102
  interface ExecResult {
102
- stderr: string;
103
- stdout: string;
103
+ readonly stderr: string;
104
+ readonly stdout: string;
104
105
  }
105
106
 
106
107
  interface ResolvedExternalVersions {
107
- minAppVersion: string;
108
- resolvedVersions: ReadonlyMap<string, string>;
108
+ readonly minAppVersion: string;
109
+ readonly resolvedVersions: ReadonlyMap<string, string>;
109
110
  }
110
111
 
111
112
  interface SavedConfig {
112
- answers?: Answers;
113
+ readonly answers?: Answers;
113
114
  }
114
115
 
115
116
  /** Where this process's own arguments start: `node` and the script path come first. */
@@ -416,7 +417,8 @@ async function offerAnswersExport(answers: Answers, customTemplate: string | und
416
417
  writeFileSync(join(process.cwd(), answersFileName), formatAnswersJson(answers));
417
418
  log.success(`Wrote ${answersFileName}`);
418
419
  const overlayFlag = customTemplate ? ` --customTemplate=${customTemplate}` : '';
419
- note(`npm create @mnaoumov/obsidian-plugin -- --yes --mode=create --answersFile=${answersFileName}${overlayFlag}`, 'Non-interactive command');
420
+ // `"--"` is quoted so the command works pasted into PowerShell, which swallows a bare `--`, as well as cmd and sh.
421
+ note(`npm create @mnaoumov/obsidian-plugin "--" --yes --mode=create --answersFile=${answersFileName}${overlayFlag}`, 'Non-interactive command');
420
422
  }
421
423
 
422
424
  choice = await ask();
@@ -1,6 +1,7 @@
1
1
  # Contributing
2
2
 
3
3
  Contributions are welcome! Here's how to get started.
4
+ <%- render('filing') -%>
4
5
 
5
6
  ## Prerequisites
6
7
 
@@ -0,0 +1,6 @@
1
+
2
+ ## Filing an issue (for AI agents and humans)
3
+
4
+ Open issues through the [issue forms](https://github.com/<%= authorGitHubName %>/obsidian-<%= pluginId %>/issues/new/choose), not as blank issues.
5
+
6
+ Filing from the CLI or the API (`gh issue create --body`, or an AI agent filing for you) skips the form, and `gh issue create --template` cannot load an issue form. In that case, open the matching form in [`.github/ISSUE_TEMPLATE/`](https://github.com/<%= authorGitHubName %>/obsidian-<%= pluginId %>/tree/HEAD/.github/ISSUE_TEMPLATE), copy every field as a `### <label>` heading in the form's order, and fill in each one. Always state the plugin version, the Obsidian version and your operating system.
@@ -53,6 +53,7 @@
53
53
  "svelte",
54
54
  "tailwindcss",
55
55
  "tidelift",
56
+ "toolkits",
56
57
  "tsbuildinfo",
57
58
  "tseslint",
58
59
  "tslib",
@@ -0,0 +1,38 @@
1
+ # <%= pluginName %>
2
+
3
+ <%- _badges.join(' ') %>
4
+
5
+ <%= pluginDescription %>
6
+ <%- render('demo-vault') -%>
7
+
8
+ ## See also
9
+
10
+ [My other Obsidian resources](https://github.com/mnaoumov/obsidian-resources)
11
+
12
+ <!-- Before publishing, search the community plugin directory (https://community.obsidian.md/plugins) and GitHub for similar plugins. Replace the null form below with a table when candidates exist. Sort rows alphabetically by plugin display name; link listed plugins to the store and unlisted ones to their repository. Add (my plugin) or (maintained by me) after the link where applicable. -->
13
+ <!-- Use these columns: Plugin | Features | How `<%= pluginName %>` differs. Keep cells short, with semicolon-separated fragments. Start each difference with the relationship to the other plugin, then what this one adds or omits. Use Supersedes for a retired or fully covered plugin, Extends for an active plugin it builds on, or a concrete relation such as Same goal as or Narrower than. -->
14
+ <!-- Close a populated table with "Last searched for similar plugins on YYYY-MM-DD." When the search finds nothing, keep the sentence below and replace its date. The resources link stays first in either case. -->
15
+
16
+ No similar plugin was found when this was last searched for, on YYYY-MM-DD.
17
+
18
+ ## Installation
19
+
20
+ The plugin is not available in [the official Community Plugins repository](https://community.obsidian.md) yet.
21
+
22
+ ### Beta versions
23
+
24
+ To install the latest beta release of this plugin (regardless if it is available in [the official Community Plugins repository](https://community.obsidian.md) or not), follow these steps:
25
+
26
+ 1. Ensure you have the [BRAT plugin](https://community.obsidian.md/plugins/obsidian42-brat) installed and enabled.
27
+ 2. Click [Install via BRAT](https://intradeus.github.io/http-protocol-redirector?r=obsidian://brat?plugin=https://github.com/<%= authorGitHubName %>/obsidian-<%= pluginId %>).
28
+ 3. An Obsidian pop-up window should appear. In the window, click the `Add plugin` button once and wait a few seconds for the plugin to install.
29
+ <%- render('preset') -%>
30
+
31
+ ## Contributing
32
+
33
+ Contributions are welcome — see [CONTRIBUTING](./CONTRIBUTING.md) to get set up.
34
+ <%- render('support') -%>
35
+
36
+ ## License
37
+
38
+ © [<%= authorName %>](https://github.com/<%= authorGitHubName %>/)
@@ -0,0 +1,6 @@
1
+
2
+ ## Debugging
3
+
4
+ By default, debug messages for this plugin (id: `<%= pluginId %>`) are hidden.
5
+
6
+ If you need to enable them refer to the [documentation](https://mnaoumov.dev/obsidian-lib/guides/debugging/).
@@ -0,0 +1,11 @@
1
+ <% if (!_hasFunding) { -%>
2
+
3
+ ## Support
4
+ <% } -%>
5
+
6
+ ### Filing an issue (for AI agents and humans)
7
+
8
+ Open issues through the [issue forms](https://github.com/<%= authorGitHubName %>/obsidian-<%= pluginId %>/issues/new/choose), not as blank issues.
9
+ <%- render('bug-report') -%>
10
+
11
+ Filing from the CLI or the API (`gh issue create --body`, or an AI agent filing for you) skips the form, and `gh issue create --template` cannot load an issue form. In that case, open the matching form in [`.github/ISSUE_TEMPLATE/`](https://github.com/<%= authorGitHubName %>/obsidian-<%= pluginId %>/tree/HEAD/.github/ISSUE_TEMPLATE), copy every field as a `### <label>` heading in the form's order, and fill in each one. Always state the plugin version, the Obsidian version and your operating system.
@@ -0,0 +1,2 @@
1
+
2
+ To report a bug from inside Obsidian, run the **`<%- pluginName %>`: Report a bug** command. It opens the bug form with the plugin version, the Obsidian version and your operating system already filled in.
@@ -1,6 +1,6 @@
1
1
  name: Bug report
2
2
  description: Report a bug and help improve the plugin
3
- title: "[BUG] Short description of the bug"
3
+ title: "[BUG] Don't forget to write a meaningful title"
4
4
  labels: bug
5
5
  assignees: <%= authorGitHubName %>
6
6
  body:
@@ -8,6 +8,12 @@ body:
8
8
  attributes:
9
9
  value: |
10
10
  ## Bug report
11
+
12
+ > [!WARNING]
13
+ >
14
+ > Both a video and a sample vault are required for bug reproduction. Incomplete, vague, or poorly described bug reports will be closed.
15
+ >
16
+ > The bug report and all attachments (screenshots, videos, sample vaults) must be in English. Exception: the bug is directly related to non-English language usage. Non-English bug reports will be closed.
11
17
  - type: textarea
12
18
  attributes:
13
19
  label: Description
@@ -16,44 +22,82 @@ body:
16
22
  required: true
17
23
  - type: textarea
18
24
  attributes:
19
- label: Steps to Reproduce
25
+ label: Steps to reproduce
20
26
  description: Provide a step-by-step description.
21
- value: |
27
+ placeholder: |
22
28
  1. Go to '...'
23
29
  2. Click on '...'
24
30
  3. Notice that '...'
25
- ...
26
31
  validations:
27
32
  required: true
28
33
  - type: textarea
29
34
  attributes:
30
- label: Expected Behavior
35
+ label: Expected behavior
31
36
  description: What did you expect to happen?
32
37
  validations:
33
38
  required: true
34
39
  - type: textarea
35
40
  attributes:
36
- label: Actual Behavior
41
+ label: Actual behavior
37
42
  description: What actually happened? Include error messages if available.
38
43
  validations:
39
44
  required: true
40
- - type: textarea
45
+ - type: input
46
+ id: plugin-version
41
47
  attributes:
42
- label: Environment Information
43
- description: Environment Information
44
- value: |
45
- - **Plugin Version**: [e.g., 1.0.0]
46
- - **Obsidian Version**: [e.g., v1.3.2]
47
- - **Operating System**: [e.g., Windows 10]
48
+ label: Plugin version
49
+ description: ⚠️ Must be the latest version. If not, explain why above.
50
+ placeholder: 1.0.0
48
51
  validations:
49
52
  required: true
53
+ - type: input
54
+ id: obsidian-version
55
+ attributes:
56
+ label: Obsidian version
57
+ description: ⚠️ Must be the latest version. If not, explain why above.
58
+ placeholder: 1.3.2
59
+ validations:
60
+ required: true
61
+ - type: input
62
+ id: operating-system
63
+ attributes:
64
+ label: Operating system
65
+ placeholder: Windows 10
66
+ validations:
67
+ required: true
68
+ - type: textarea
69
+ id: environment
70
+ attributes:
71
+ label: Environment
72
+ description: The plugin's Report a bug command fills this in. You can leave it empty.
50
73
  - type: textarea
51
74
  attributes:
52
75
  label: Attachments
53
- description: Required for bug reproduction
54
- value: |
55
- - Please attach a video showing the bug. It is not mandatory, but might be very helpful to speed up the bug fix
56
- - Please attach a sample vault where the bug can be reproduced. It is not mandatory, but might be very helpful to speed up the bug fix
76
+ description: Attach a video and a sample vault.
77
+ placeholder: Drag and drop files here.
78
+ - type: dropdown
79
+ attributes:
80
+ label: Video
81
+ options:
82
+ - "Not attached. ⚠️ The bug report will be closed if the maintainer is unable to reproduce it without the attachment."
83
+ - "Attached"
84
+ validations:
85
+ required: true
86
+ - type: dropdown
87
+ attributes:
88
+ label: Sample vault
89
+ options:
90
+ - "Not attached. ⚠️ The bug report will be closed if the maintainer is unable to reproduce it without the attachment."
91
+ - "Attached"
92
+ validations:
93
+ required: true
94
+ - type: dropdown
95
+ attributes:
96
+ label: Bug isolation
97
+ description: Did you verify the bug in isolation from other plugins?
98
+ options:
99
+ - "No, only with other plugins enabled (provide details in the description field). ⚠️ Sample vault required or the bug report will be closed."
100
+ - "Yes, I could reproduce the bug in the vault with only this plugin enabled."
57
101
  validations:
58
102
  required: true
59
103
  - type: checkboxes
@@ -61,11 +105,5 @@ body:
61
105
  label: Confirmations
62
106
  description: Ensure the following conditions are met
63
107
  options:
64
- - label: I attached a video showing the bug, or it is not necessary
65
- required: true
66
- - label: I attached a sample vault where the bug can be reproduced, or it is not necessary
67
- required: true
68
- - label: I have tested the bug with the latest version of the plugin
69
- required: true
70
- - label: I have checked GitHub for existing bugs
108
+ - label: I have checked the plugin's GitHub repository and haven't found any similar bugs
71
109
  required: true
@@ -8,9 +8,9 @@ import relativeLinksRule from 'markdownlint-rule-relative-links';
8
8
  * nothing else can refer to -- and an intersection is exactly where a reader wants to look one up.
9
9
  */
10
10
  interface MarkdownlintCli2Extras {
11
- customRules?: unknown[];
12
- globs?: string[];
13
- ignores?: string[];
11
+ readonly customRules?: unknown[];
12
+ readonly globs?: string[];
13
+ readonly ignores?: string[];
14
14
  }
15
15
 
16
16
  export const config: MarkdownlintCli2Extras & Options = {
@@ -3,39 +3,37 @@
3
3
  * The config above, narrowed to the one field this file writes through.
4
4
  */
5
5
  interface ConfigWithProjects {
6
- test: ProjectsSection;
6
+ readonly test: ProjectsSection;
7
7
  }
8
8
 
9
9
  /**
10
10
  * The shape of a project entry this file reaches into, which vitest's own union type does not narrow to.
11
11
  */
12
12
  interface JsxProject {
13
+ // eslint-disable-next-line typescript-dev-toolkit/readonly-interface-members -- The Solid test configuration assigns the JSX transform to each project.
13
14
  oxc?: OxcSection;
14
15
  }
15
16
 
16
17
  /**
17
18
  * The JSX transform a test project is given.
18
- *
19
- * Deliberately not named `…Options`: the shared lint config requires every member of a `Params` /
20
- * `Options` / `Result` interface to be `readonly`, and this one is assigned to.
21
19
  */
22
20
  interface JsxRuntimeSpec {
23
- importSource: string;
24
- runtime: string;
21
+ readonly importSource: string;
22
+ readonly runtime: string;
25
23
  }
26
24
 
27
25
  /**
28
26
  * The `oxc` section of a project entry.
29
27
  */
30
28
  interface OxcSection {
31
- jsx: JsxRuntimeSpec;
29
+ readonly jsx: JsxRuntimeSpec;
32
30
  }
33
31
 
34
32
  /**
35
33
  * The `test` section of the config above.
36
34
  */
37
35
  interface ProjectsSection {
38
- projects: JsxProject[];
36
+ readonly projects: JsxProject[];
39
37
  }
40
38
 
41
39
  /*
@@ -21,7 +21,7 @@ interface PackageJson {
21
21
  }
22
22
 
23
23
  interface PackageLockJson {
24
- packages?: Record<string, { version?: string }>;
24
+ readonly packages?: Record<string, { version?: string }>;
25
25
  version?: string;
26
26
  }
27
27
 
@@ -74,14 +74,14 @@ function checkRepoClean(): void {
74
74
  }
75
75
 
76
76
  function runScript(name: string): void {
77
- const pkg = JSON.parse(readFileSync('package.json', 'utf-8')) as { scripts?: Record<string, string> };
77
+ const pkg = JSON.parse(readFileSync('package.json', 'utf-8')) as { readonly scripts?: Record<string, string> };
78
78
  if (pkg.scripts?.[name]) {
79
79
  execSync(`npm run ${name}`, { stdio: 'inherit' });
80
80
  }
81
81
  }
82
82
 
83
83
  function runScriptOptional(name: string): void {
84
- const pkg = JSON.parse(readFileSync('package.json', 'utf-8')) as { scripts?: Record<string, string> };
84
+ const pkg = JSON.parse(readFileSync('package.json', 'utf-8')) as { readonly scripts?: Record<string, string> };
85
85
  if (pkg.scripts?.[name]) {
86
86
  execSync(`npm run ${name}`, { stdio: 'inherit' });
87
87
  }
@@ -162,7 +162,7 @@ function updateVersionInFilesForPlugin(version: string): void {
162
162
  });
163
163
  } else {
164
164
  const response = fetchSync('https://api.github.com/repos/obsidianmd/obsidian-releases/releases/latest');
165
- const latestObsidianVersion = (JSON.parse(response) as { name?: string }).name;
165
+ const latestObsidianVersion = (JSON.parse(response) as { readonly name?: string }).name;
166
166
 
167
167
  editJson<Manifest>('manifest.json', (m) => {
168
168
  if (latestObsidianVersion) {
@@ -1,5 +1,6 @@
1
1
  import type { Editor } from 'obsidian';
2
2
 
3
+ <%- render('bug-report-import') -%>
3
4
  import { OpenDemoVaultCommandHandler } from '@mnaoumov/obsidian-lib/command-handlers/open-demo-vault-command-handler';
4
5
  import { PluginSettingsTabComponent } from '@mnaoumov/obsidian-lib/components/plugin-settings-tab-component';
5
6
  import { PluginDataHandler } from '@mnaoumov/obsidian-lib/data-handler';
@@ -52,6 +53,7 @@ export class Plugin extends PluginBase {
52
53
  // A new window. It is not registered automatically -- a demo vault without this command can only be
53
54
  // Reached by downloading the asset by hand. It hides itself on mobile, so no platform guard is needed.
54
55
  await this.commandHandlerComponent.registerCommandHandlers(() => [
56
+ <%- render('bug-report-handler') -%>
55
57
  new OpenDemoVaultCommandHandler({
56
58
  app: this.app,
57
59
  pluginId: this.manifest.id,
@@ -0,0 +1,7 @@
1
+ // `OpenBugReportCommandHandler` opens the bug form in `.github/ISSUE_TEMPLATE/` with the plugin version, the
2
+ // Obsidian version and the operating system already filled in, which is why it is registered only with the forms.
3
+ new OpenBugReportCommandHandler({
4
+ app: this.app,
5
+ gitHubRepo: '<%- authorGitHubName %>/obsidian-<%- pluginId %>',
6
+ pluginId: this.manifest.id
7
+ }),
@@ -0,0 +1 @@
1
+ import { OpenBugReportCommandHandler } from '@mnaoumov/obsidian-lib/command-handlers/open-bug-report-command-handler';
@@ -8,6 +8,7 @@ import type {
8
8
  TAbstractFile
9
9
  } from 'obsidian';
10
10
 
11
+ <%- render('bug-report-import') -%>
11
12
  import { OpenDemoVaultCommandHandler } from '@mnaoumov/obsidian-lib/command-handlers/open-demo-vault-command-handler';
12
13
  import { PluginSettingsTabComponent } from '@mnaoumov/obsidian-lib/components/plugin-settings-tab-component';
13
14
  import { PluginDataHandler } from '@mnaoumov/obsidian-lib/data-handler';
@@ -132,6 +133,7 @@ export class Plugin extends PluginBase {
132
133
  // A new window. It is not registered automatically -- a demo vault without this command can only be
133
134
  // Reached by downloading the asset by hand. It hides itself on mobile, so no platform guard is needed.
134
135
  await this.commandHandlerComponent.registerCommandHandlers(() => [
136
+ <%- render('bug-report-handler') -%>
135
137
  new OpenDemoVaultCommandHandler({
136
138
  app: this.app,
137
139
  pluginId: this.manifest.id,
@@ -0,0 +1,7 @@
1
+ // `OpenBugReportCommandHandler` opens the bug form in `.github/ISSUE_TEMPLATE/` with the plugin version, the
2
+ // Obsidian version and the operating system already filled in, which is why it is registered only with the forms.
3
+ new OpenBugReportCommandHandler({
4
+ app: this.app,
5
+ gitHubRepo: '<%- authorGitHubName %>/obsidian-<%- pluginId %>',
6
+ pluginId: this.manifest.id
7
+ }),
@@ -0,0 +1 @@
1
+ import { OpenBugReportCommandHandler } from '@mnaoumov/obsidian-lib/command-handlers/open-bug-report-command-handler';
@@ -21,7 +21,9 @@ interface PluginSettingsComponentConstructorParams {
21
21
  }
22
22
 
23
23
  interface SerializedSettings {
24
+ // eslint-disable-next-line typescript-dev-toolkit/readonly-interface-members -- The save hook replaces the typed setting with its serialized value.
24
25
  typedDropdownSetting: string;
26
+ // eslint-disable-next-line typescript-dev-toolkit/readonly-interface-members -- The save hook replaces the typed setting with its serialized value.
25
27
  typedMultipleDropdownSetting: string[];
26
28
  }
27
29
 
@@ -155,8 +155,8 @@ export class PluginSettingsTab extends PluginSettingsTabBase<PluginSettings> {
155
155
  new SettingEx(this.containerEl)
156
156
  .setName('Number setting name')
157
157
  .setDesc('Number setting description.')
158
- .addNumber((number) => {
159
- this.bind({ propertyName: 'numberSetting', valueComponent: number });
158
+ .addNumber((numberComponent) => {
159
+ this.bind({ propertyName: 'numberSetting', valueComponent: numberComponent });
160
160
  });
161
161
 
162
162
  new SettingEx(this.containerEl)
@@ -49,6 +49,6 @@ declare global {
49
49
  // Lit's own pattern for a custom element: it is what lets `createEl('sample-lit-element')` type-check,
50
50
  // And return a `SampleLitElement` whose properties can be set directly.
51
51
  interface HTMLElementTagNameMap {
52
- 'sample-lit-element': SampleLitElement;
52
+ readonly 'sample-lit-element': SampleLitElement;
53
53
  }
54
54
  }
@@ -6,8 +6,8 @@ import {
6
6
  } from 'obsidian';
7
7
 
8
8
  interface SampleItem {
9
- icon: string;
10
- name: string;
9
+ readonly icon: string;
10
+ readonly name: string;
11
11
  }
12
12
 
13
13
  const SAMPLE_ITEMS: readonly SampleItem[] = [
@@ -1,4 +1,6 @@
1
+ <%- render('bug-report-type-import') -%>
1
2
  import { Plugin as ObsidianPlugin } from 'obsidian';
3
+ <%- render('bug-report-import') -%>
2
4
 
3
5
  import { Plugin } from './plugin.ts';
4
6
 
@@ -6,4 +8,5 @@ describe('<%= pluginShortName %>', () => {
6
8
  it('extends the Obsidian Plugin class', () => {
7
9
  expect(Plugin.prototype).toBeInstanceOf(ObsidianPlugin);
8
10
  });
11
+ <%- render('bug-report-test') -%>
9
12
  });
@@ -0,0 +1,4 @@
1
+ import {
2
+ App,
3
+ Plugin as PluginHost
4
+ } from 'obsidian-test-mocks/obsidian';
@@ -0,0 +1,16 @@
1
+
2
+ // The plugin's own `onload` runs here, so this proves the command is registered, not only imported.
3
+ it('registers the Report a bug command', async () => {
4
+ const manifest: PluginManifest = {
5
+ author: 'test',
6
+ description: 'test',
7
+ id: 'test-plugin',
8
+ minAppVersion: '0.0.0',
9
+ name: 'Test Plugin',
10
+ version: '0.0.0'
11
+ };
12
+ const plugin = new Plugin(App.createConfigured__().asOriginalType__(), manifest);
13
+ await plugin.onload();
14
+ expect(PluginHost.fromOriginalType2__(plugin).commands__.has('report-bug')).toBe(true);
15
+ plugin.unload();
16
+ });
@@ -0,0 +1,2 @@
1
+ import type { PluginManifest } from 'obsidian';
2
+
@@ -1,4 +1,6 @@
1
+ <%- render('bug-report-type-import') -%>
1
2
  import { Plugin as ObsidianPlugin } from 'obsidian';
3
+ <%- render('bug-report-import') -%>
2
4
  import {
3
5
  describe,
4
6
  expect,
@@ -11,4 +13,5 @@ describe('<%= pluginShortName %>', () => {
11
13
  it('extends the Obsidian Plugin class', () => {
12
14
  expect(Plugin.prototype).toBeInstanceOf(ObsidianPlugin);
13
15
  });
16
+ <%- render('bug-report-test') -%>
14
17
  });
@@ -0,0 +1,4 @@
1
+ import {
2
+ App,
3
+ Plugin as PluginHost
4
+ } from 'obsidian-test-mocks/obsidian';