obsidian-dev-utils 80.1.0 → 82.0.0-beta.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 (398) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/lib/cjs/abort-controller.cjs +12 -9
  3. package/dist/lib/cjs/abort-controller.d.cts +2 -2
  4. package/dist/lib/cjs/async-events.cjs +9 -1
  5. package/dist/lib/cjs/async-events.d.cts +9 -1
  6. package/dist/lib/cjs/async.cjs +93 -34
  7. package/dist/lib/cjs/async.d.cts +87 -17
  8. package/dist/lib/cjs/codemirror/state-field-spec.d.cts +1 -1
  9. package/dist/lib/cjs/css-class.cjs +6 -1
  10. package/dist/lib/cjs/css-class.d.cts +20 -0
  11. package/dist/lib/cjs/debug.cjs +26 -9
  12. package/dist/lib/cjs/debug.d.cts +24 -6
  13. package/dist/lib/cjs/disposable.cjs +234 -0
  14. package/dist/lib/cjs/disposable.d.cts +124 -0
  15. package/dist/lib/cjs/error.cjs +29 -18
  16. package/dist/lib/cjs/error.d.cts +23 -7
  17. package/dist/lib/cjs/function.d.cts +1 -1
  18. package/dist/lib/cjs/html-element.cjs +9 -6
  19. package/dist/lib/cjs/html-element.d.cts +5 -3
  20. package/dist/lib/cjs/index.cjs +4 -1
  21. package/dist/lib/cjs/index.d.cts +1 -0
  22. package/dist/lib/cjs/library.cjs +2 -2
  23. package/dist/lib/cjs/object-utils.cjs +233 -128
  24. package/dist/lib/cjs/object-utils.d.cts +38 -13
  25. package/dist/lib/cjs/obsidian/@types/dataview/api/plugin-api.d.cts +1 -1
  26. package/dist/lib/cjs/obsidian/@types/dataview/data-index/index.d.cts +1 -1
  27. package/dist/lib/cjs/obsidian/@types/dataview/data-model/markdown.d.cts +2 -2
  28. package/dist/lib/cjs/obsidian/@types/dataview/data-model/serialized/markdown.d.cts +2 -2
  29. package/dist/lib/cjs/obsidian/@types/dataview/index.d.cts +1 -1
  30. package/dist/lib/cjs/obsidian/@types/dataview/query/engine.d.cts +1 -1
  31. package/dist/lib/cjs/obsidian/@types/dataview/typings/obsidian-ex.d.cts +1 -1
  32. package/dist/lib/cjs/obsidian/@types/dataview/ui/lp-render.d.cts +1 -1
  33. package/dist/lib/cjs/obsidian/@types/dataview/ui/markdown.d.cts +1 -1
  34. package/dist/lib/cjs/obsidian/@types/dataview/ui/views/calendar-view.d.cts +1 -1
  35. package/dist/lib/cjs/obsidian/@types/dataview/ui/views/inline-view.d.cts +1 -1
  36. package/dist/lib/cjs/obsidian/@types/dataview/ui/views/list-view.d.cts +2 -2
  37. package/dist/lib/cjs/obsidian/@types/dataview/ui/views/table-view.d.cts +2 -2
  38. package/dist/lib/cjs/obsidian/@types/dataview/ui/views/task-view.d.cts +1 -1
  39. package/dist/lib/cjs/obsidian/active-file-provider.d.cts +1 -1
  40. package/dist/lib/cjs/obsidian/app.d.cts +1 -1
  41. package/dist/lib/cjs/obsidian/async-with-notice.cjs +9 -6
  42. package/dist/lib/cjs/obsidian/async-with-notice.d.cts +16 -3
  43. package/dist/lib/cjs/obsidian/attachment-path.cjs +45 -13
  44. package/dist/lib/cjs/obsidian/attachment-path.d.cts +47 -9
  45. package/dist/lib/cjs/obsidian/backlink.cjs +6 -6
  46. package/dist/lib/cjs/obsidian/backlink.d.cts +6 -2
  47. package/dist/lib/cjs/obsidian/bases-view-registrar.d.cts +1 -1
  48. package/dist/lib/cjs/obsidian/callout.cjs +1 -1
  49. package/dist/lib/cjs/obsidian/callout.d.cts +8 -0
  50. package/dist/lib/cjs/obsidian/case-insensitive-file-index.d.cts +1 -1
  51. package/dist/lib/cjs/obsidian/code-block-markdown-information.d.cts +1 -1
  52. package/dist/lib/cjs/obsidian/command-handlers/abstract-file-command-handler.cjs +53 -16
  53. package/dist/lib/cjs/obsidian/command-handlers/abstract-file-command-handler.d.cts +84 -10
  54. package/dist/lib/cjs/obsidian/command-handlers/command-handler.d.cts +1 -1
  55. package/dist/lib/cjs/obsidian/command-handlers/editor-command-handler.cjs +25 -5
  56. package/dist/lib/cjs/obsidian/command-handlers/editor-command-handler.d.cts +38 -2
  57. package/dist/lib/cjs/obsidian/command-handlers/file-command-handler.cjs +33 -19
  58. package/dist/lib/cjs/obsidian/command-handlers/file-command-handler.d.cts +45 -19
  59. package/dist/lib/cjs/obsidian/command-handlers/folder-command-handler.cjs +33 -19
  60. package/dist/lib/cjs/obsidian/command-handlers/folder-command-handler.d.cts +45 -19
  61. package/dist/lib/cjs/obsidian/command-handlers/global-command-handler.d.cts +2 -2
  62. package/dist/lib/cjs/obsidian/command-handlers/open-settings-command-handler.d.cts +1 -1
  63. package/dist/lib/cjs/obsidian/command-registrar.d.cts +1 -1
  64. package/dist/lib/cjs/obsidian/components/all-windows-event-component.cjs +17 -9
  65. package/dist/lib/cjs/obsidian/components/all-windows-event-component.d.cts +49 -9
  66. package/dist/lib/cjs/obsidian/components/async-error-handler-component.cjs +5 -2
  67. package/dist/lib/cjs/obsidian/components/case-insensitive-file-index-component.d.cts +1 -1
  68. package/dist/lib/cjs/obsidian/components/disposable-component.cjs +5 -10
  69. package/dist/lib/cjs/obsidian/components/disposable-component.d.cts +0 -7
  70. package/dist/lib/cjs/obsidian/components/embed-extensions-component.d.cts +2 -2
  71. package/dist/lib/cjs/obsidian/components/layout-ready-component.d.cts +2 -2
  72. package/dist/lib/cjs/obsidian/components/menu-event-registrar-component.d.cts +1 -1
  73. package/dist/lib/cjs/obsidian/components/monkey-around-component.d.cts +1 -1
  74. package/dist/lib/cjs/obsidian/components/plugin-context-component.d.cts +1 -1
  75. package/dist/lib/cjs/obsidian/components/plugin-notice-component.cjs +1 -1
  76. package/dist/lib/cjs/obsidian/components/plugin-notice-component.d.cts +3 -2
  77. package/dist/lib/cjs/obsidian/components/plugin-settings-component.cjs +24 -8
  78. package/dist/lib/cjs/obsidian/components/plugin-settings-component.d.cts +26 -5
  79. package/dist/lib/cjs/obsidian/components/plugin-settings-tab-component.d.cts +1 -1
  80. package/dist/lib/cjs/obsidian/components/registry-component.d.cts +1 -1
  81. package/dist/lib/cjs/obsidian/components/rename-delete-handler-component.cjs +195 -72
  82. package/dist/lib/cjs/obsidian/components/rename-delete-handler-component.d.cts +4 -1
  83. package/dist/lib/cjs/obsidian/constructors/getDomEventsHandlersConstructor.d.cts +2 -2
  84. package/dist/lib/cjs/obsidian/data-handler.d.cts +1 -1
  85. package/dist/lib/cjs/obsidian/dataview-link.cjs +7 -2
  86. package/dist/lib/cjs/obsidian/dataview-link.d.cts +22 -5
  87. package/dist/lib/cjs/obsidian/dataview.cjs +27 -10
  88. package/dist/lib/cjs/obsidian/dataview.d.cts +32 -7
  89. package/dist/lib/cjs/obsidian/editor-extension-registrar.d.cts +1 -1
  90. package/dist/lib/cjs/obsidian/editor-lock.cjs +245 -0
  91. package/dist/lib/cjs/obsidian/editor-lock.d.cts +57 -0
  92. package/dist/lib/cjs/obsidian/editor.cjs +7 -1
  93. package/dist/lib/cjs/obsidian/editor.d.cts +3 -2
  94. package/dist/lib/cjs/obsidian/file-change.cjs +103 -27
  95. package/dist/lib/cjs/obsidian/file-change.d.cts +55 -14
  96. package/dist/lib/cjs/obsidian/file-manager.cjs +61 -32
  97. package/dist/lib/cjs/obsidian/file-manager.d.cts +65 -15
  98. package/dist/lib/cjs/obsidian/file-system.cjs +122 -23
  99. package/dist/lib/cjs/obsidian/file-system.d.cts +189 -40
  100. package/dist/lib/cjs/obsidian/frontmatter-link-cache-with-offsets.d.cts +1 -1
  101. package/dist/lib/cjs/obsidian/frontmatter.cjs +7 -2
  102. package/dist/lib/cjs/obsidian/hover-link-source-registrar.d.cts +1 -1
  103. package/dist/lib/cjs/obsidian/i18n/i18n.d.cts +1 -1
  104. package/dist/lib/cjs/obsidian/i18n/locales/en.cjs +4 -1
  105. package/dist/lib/cjs/obsidian/i18n/locales/en.d.cts +3 -0
  106. package/dist/lib/cjs/obsidian/i18n/locales/translations-map.d.cts +3 -0
  107. package/dist/lib/cjs/obsidian/index.cjs +4 -1
  108. package/dist/lib/cjs/obsidian/index.d.cts +1 -0
  109. package/dist/lib/cjs/obsidian/link.cjs +326 -129
  110. package/dist/lib/cjs/obsidian/link.d.cts +133 -36
  111. package/dist/lib/cjs/obsidian/logger.cjs +48 -22
  112. package/dist/lib/cjs/obsidian/logger.d.cts +27 -6
  113. package/dist/lib/cjs/obsidian/loop.cjs +14 -4
  114. package/dist/lib/cjs/obsidian/loop.d.cts +27 -8
  115. package/dist/lib/cjs/obsidian/markdown-code-block-processor-registrar.d.cts +2 -2
  116. package/dist/lib/cjs/obsidian/markdown-code-block-processor.cjs +155 -107
  117. package/dist/lib/cjs/obsidian/markdown-code-block-processor.d.cts +16 -6
  118. package/dist/lib/cjs/obsidian/markdown-post-processor-registrar.cjs +1 -1
  119. package/dist/lib/cjs/obsidian/markdown-post-processor-registrar.d.cts +5 -3
  120. package/dist/lib/cjs/obsidian/markdown-view.d.cts +1 -1
  121. package/dist/lib/cjs/obsidian/markdown.cjs +40 -11
  122. package/dist/lib/cjs/obsidian/markdown.d.cts +85 -17
  123. package/dist/lib/cjs/obsidian/menu-event-registrar.d.cts +1 -1
  124. package/dist/lib/cjs/obsidian/metadata-cache.cjs +88 -32
  125. package/dist/lib/cjs/obsidian/metadata-cache.d.cts +42 -32
  126. package/dist/lib/cjs/obsidian/modals/alert.cjs +1 -1
  127. package/dist/lib/cjs/obsidian/modals/alert.d.cts +2 -0
  128. package/dist/lib/cjs/obsidian/modals/confirm.cjs +1 -1
  129. package/dist/lib/cjs/obsidian/modals/confirm.d.cts +2 -0
  130. package/dist/lib/cjs/obsidian/modals/index.cjs +4 -1
  131. package/dist/lib/cjs/obsidian/modals/index.d.cts +1 -0
  132. package/dist/lib/cjs/obsidian/modals/minimizable-modal.cjs +234 -0
  133. package/dist/lib/cjs/obsidian/modals/minimizable-modal.d.cts +74 -0
  134. package/dist/lib/cjs/obsidian/modals/modal.d.cts +1 -1
  135. package/dist/lib/cjs/obsidian/modals/prompt.cjs +1 -1
  136. package/dist/lib/cjs/obsidian/modals/prompt.d.cts +7 -1
  137. package/dist/lib/cjs/obsidian/modals/select-item.cjs +1 -1
  138. package/dist/lib/cjs/obsidian/modals/select-item.d.cts +2 -0
  139. package/dist/lib/cjs/obsidian/obsidian-protocol-handler-registrar.d.cts +2 -2
  140. package/dist/lib/cjs/obsidian/obsidian-settings.d.cts +1 -1
  141. package/dist/lib/cjs/obsidian/path-settings.cjs +5 -2
  142. package/dist/lib/cjs/obsidian/plugin/plugin-context.d.cts +1 -1
  143. package/dist/lib/cjs/obsidian/plugin/plugin-event-source.cjs +5 -1
  144. package/dist/lib/cjs/obsidian/plugin/plugin-event-source.d.cts +5 -1
  145. package/dist/lib/cjs/obsidian/plugin/plugin-settings-tab.cjs +15 -7
  146. package/dist/lib/cjs/obsidian/plugin/plugin-settings-tab.d.cts +51 -14
  147. package/dist/lib/cjs/obsidian/plugin/plugin.cjs +22 -16
  148. package/dist/lib/cjs/obsidian/plugin/plugin.d.cts +6 -6
  149. package/dist/lib/cjs/obsidian/plugin-cli-handler-registrar.d.cts +2 -2
  150. package/dist/lib/cjs/obsidian/queue.cjs +9 -7
  151. package/dist/lib/cjs/obsidian/queue.d.cts +15 -3
  152. package/dist/lib/cjs/obsidian/react/app-context.d.cts +1 -1
  153. package/dist/lib/cjs/obsidian/reference.d.cts +1 -1
  154. package/dist/lib/cjs/obsidian/resource-url.cjs +7 -2
  155. package/dist/lib/cjs/obsidian/resource-url.d.cts +20 -5
  156. package/dist/lib/cjs/obsidian/ribbon-icon-registrar.d.cts +1 -1
  157. package/dist/lib/cjs/obsidian/setting-components/value-component-with-change-tracking.d.cts +1 -1
  158. package/dist/lib/cjs/obsidian/setting-ex.d.cts +1 -1
  159. package/dist/lib/cjs/obsidian/status-bar-item-registrar.cjs +4 -2
  160. package/dist/lib/cjs/obsidian/status-bar-item-registrar.d.cts +6 -2
  161. package/dist/lib/cjs/obsidian/vault-delete.cjs +19 -15
  162. package/dist/lib/cjs/obsidian/vault-delete.d.cts +12 -7
  163. package/dist/lib/cjs/obsidian/vault.cjs +116 -59
  164. package/dist/lib/cjs/obsidian/vault.d.cts +188 -45
  165. package/dist/lib/cjs/obsidian/view-registrar.d.cts +1 -1
  166. package/dist/lib/cjs/obsidian/workspace.d.cts +1 -1
  167. package/dist/lib/cjs/path.cjs +12 -5
  168. package/dist/lib/cjs/path.d.cts +15 -3
  169. package/dist/lib/cjs/reg-exp.cjs +101 -78
  170. package/dist/lib/cjs/script-utils/build.cjs +9 -5
  171. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/change-extension-plugin.cjs +34 -14
  172. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/change-extension-plugin.d.cts +1 -1
  173. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.cjs +20 -5
  174. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.d.cts +24 -6
  175. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/custom-esbuild-options-plugin.d.cts +1 -1
  176. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/dependency.cjs +11 -4
  177. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/fix-esm-plugin.cjs +6 -2
  178. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/fix-esm-plugin.d.cts +1 -1
  179. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/fix-source-maps-plugin.cjs +31 -12
  180. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/fix-source-maps-plugin.d.cts +20 -5
  181. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.cjs +7 -7
  182. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.d.cts +1 -1
  183. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/preprocess-plugin.cjs +12 -3
  184. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/preprocess-plugin.d.cts +1 -1
  185. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/rename-css-plugin.d.cts +1 -1
  186. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/svelte-wrapper-plugin.d.cts +1 -1
  187. package/dist/lib/cjs/script-utils/check-project-types.cjs +5 -1
  188. package/dist/lib/cjs/script-utils/check-project-types.d.cts +10 -2
  189. package/dist/lib/cjs/script-utils/cli-utils.cjs +6 -2
  190. package/dist/lib/cjs/script-utils/cli-utils.d.cts +1 -1
  191. package/dist/lib/cjs/script-utils/commitlint-config.d.cts +1 -1
  192. package/dist/lib/cjs/script-utils/exec.cjs +47 -12
  193. package/dist/lib/cjs/script-utils/exec.d.cts +12 -0
  194. package/dist/lib/cjs/script-utils/formatters/dprint.cjs +3 -3
  195. package/dist/lib/cjs/script-utils/formatters/dprint.d.cts +2 -0
  196. package/dist/lib/cjs/script-utils/fs.d.cts +1 -1
  197. package/dist/lib/cjs/script-utils/json.cjs +9 -5
  198. package/dist/lib/cjs/script-utils/json.d.cts +41 -9
  199. package/dist/lib/cjs/script-utils/linters/eslint-config.d.cts +1 -1
  200. package/dist/lib/cjs/script-utils/linters/eslint-rules/no-async-callback-to-unsafe-return.d.cts +1 -1
  201. package/dist/lib/cjs/script-utils/linters/eslint-rules/no-unused-params-members.cjs +8 -3
  202. package/dist/lib/cjs/script-utils/linters/eslint-rules/no-unused-params-members.d.cts +1 -1
  203. package/dist/lib/cjs/script-utils/linters/eslint-rules/no-used-underscore-variables.d.cts +1 -1
  204. package/dist/lib/cjs/script-utils/linters/eslint-rules/obsidian-dev-utils-plugin.d.cts +1 -1
  205. package/dist/lib/cjs/script-utils/linters/eslint-rules/params-options-name-match.d.cts +1 -1
  206. package/dist/lib/cjs/script-utils/linters/eslint-rules/prefer-noop-async.d.cts +1 -1
  207. package/dist/lib/cjs/script-utils/linters/eslint-rules/readonly-params-options-result-members.d.cts +1 -1
  208. package/dist/lib/cjs/script-utils/linters/eslint-rules/require-component-suffix.cjs +27 -7
  209. package/dist/lib/cjs/script-utils/linters/eslint-rules/require-component-suffix.d.cts +1 -1
  210. package/dist/lib/cjs/script-utils/linters/eslint-rules/require-method-template.cjs +7 -3
  211. package/dist/lib/cjs/script-utils/linters/eslint-rules/require-method-template.d.cts +1 -1
  212. package/dist/lib/cjs/script-utils/linters/eslint-rules/require-super-call.cjs +8 -3
  213. package/dist/lib/cjs/script-utils/linters/eslint-rules/require-super-call.d.cts +1 -1
  214. package/dist/lib/cjs/script-utils/linters/eslint-rules/rule-tester-helper.d.cts +2 -2
  215. package/dist/lib/cjs/script-utils/linters/eslint.cjs +3 -3
  216. package/dist/lib/cjs/script-utils/linters/eslint.d.cts +2 -0
  217. package/dist/lib/cjs/script-utils/linters/markdownlint-types/@types/markdownlint-cli2-config-schema.d.cts +1 -1
  218. package/dist/lib/cjs/script-utils/linters/markdownlint.cjs +3 -3
  219. package/dist/lib/cjs/script-utils/linters/markdownlint.d.cts +2 -0
  220. package/dist/lib/cjs/script-utils/linters/over-exposure.cjs +72 -30
  221. package/dist/lib/cjs/script-utils/linters/over-exposure.d.cts +9 -1
  222. package/dist/lib/cjs/script-utils/npm-publish.cjs +2 -2
  223. package/dist/lib/cjs/script-utils/npm.cjs +18 -9
  224. package/dist/lib/cjs/script-utils/npm.d.cts +3 -1
  225. package/dist/lib/cjs/script-utils/root.cjs +20 -5
  226. package/dist/lib/cjs/script-utils/root.d.cts +45 -9
  227. package/dist/lib/cjs/script-utils/test-runners/vitest.cjs +1 -1
  228. package/dist/lib/cjs/script-utils/test-runners/vitest.d.cts +2 -0
  229. package/dist/lib/cjs/script-utils/validate-declarations.cjs +8 -44
  230. package/dist/lib/cjs/script-utils/validate-declarations.d.cts +22 -9
  231. package/dist/lib/cjs/script-utils/version.cjs +36 -19
  232. package/dist/lib/cjs/script-utils/version.d.cts +20 -7
  233. package/dist/lib/cjs/strict-proxy.cjs +10 -1
  234. package/dist/lib/cjs/string.cjs +63 -22
  235. package/dist/lib/cjs/string.d.cts +194 -40
  236. package/dist/lib/cjs/value-provider.d.cts +1 -1
  237. package/dist/lib/esm/abort-controller.d.mts +2 -2
  238. package/dist/lib/esm/abort-controller.mjs +12 -9
  239. package/dist/lib/esm/async-events.d.mts +8 -0
  240. package/dist/lib/esm/async-events.mjs +9 -1
  241. package/dist/lib/esm/async.d.mts +86 -16
  242. package/dist/lib/esm/async.mjs +93 -34
  243. package/dist/lib/esm/css-class.d.mts +20 -0
  244. package/dist/lib/esm/css-class.mjs +6 -1
  245. package/dist/lib/esm/debug.d.mts +23 -5
  246. package/dist/lib/esm/debug.mjs +26 -9
  247. package/dist/lib/esm/disposable.d.mts +124 -0
  248. package/dist/lib/esm/disposable.mjs +122 -0
  249. package/dist/lib/esm/error.d.mts +23 -7
  250. package/dist/lib/esm/error.mjs +29 -18
  251. package/dist/lib/esm/html-element.d.mts +4 -2
  252. package/dist/lib/esm/html-element.mjs +9 -6
  253. package/dist/lib/esm/index.d.mts +1 -0
  254. package/dist/lib/esm/index.mjs +3 -1
  255. package/dist/lib/esm/library.mjs +2 -2
  256. package/dist/lib/esm/object-utils.d.mts +37 -12
  257. package/dist/lib/esm/object-utils.mjs +233 -128
  258. package/dist/lib/esm/obsidian/async-with-notice.d.mts +15 -2
  259. package/dist/lib/esm/obsidian/async-with-notice.mjs +9 -6
  260. package/dist/lib/esm/obsidian/attachment-path.d.mts +46 -8
  261. package/dist/lib/esm/obsidian/attachment-path.mjs +45 -13
  262. package/dist/lib/esm/obsidian/backlink.d.mts +6 -2
  263. package/dist/lib/esm/obsidian/backlink.mjs +6 -6
  264. package/dist/lib/esm/obsidian/callout.d.mts +8 -0
  265. package/dist/lib/esm/obsidian/callout.mjs +1 -1
  266. package/dist/lib/esm/obsidian/command-handlers/abstract-file-command-handler.d.mts +83 -9
  267. package/dist/lib/esm/obsidian/command-handlers/abstract-file-command-handler.mjs +53 -16
  268. package/dist/lib/esm/obsidian/command-handlers/editor-command-handler.d.mts +37 -1
  269. package/dist/lib/esm/obsidian/command-handlers/editor-command-handler.mjs +25 -5
  270. package/dist/lib/esm/obsidian/command-handlers/file-command-handler.d.mts +43 -17
  271. package/dist/lib/esm/obsidian/command-handlers/file-command-handler.mjs +33 -19
  272. package/dist/lib/esm/obsidian/command-handlers/folder-command-handler.d.mts +43 -17
  273. package/dist/lib/esm/obsidian/command-handlers/folder-command-handler.mjs +33 -19
  274. package/dist/lib/esm/obsidian/components/all-windows-event-component.d.mts +48 -8
  275. package/dist/lib/esm/obsidian/components/all-windows-event-component.mjs +17 -9
  276. package/dist/lib/esm/obsidian/components/async-error-handler-component.mjs +5 -2
  277. package/dist/lib/esm/obsidian/components/disposable-component.d.mts +0 -7
  278. package/dist/lib/esm/obsidian/components/disposable-component.mjs +3 -7
  279. package/dist/lib/esm/obsidian/components/plugin-notice-component.d.mts +3 -2
  280. package/dist/lib/esm/obsidian/components/plugin-notice-component.mjs +1 -1
  281. package/dist/lib/esm/obsidian/components/plugin-settings-component.d.mts +25 -4
  282. package/dist/lib/esm/obsidian/components/plugin-settings-component.mjs +24 -8
  283. package/dist/lib/esm/obsidian/components/rename-delete-handler-component.d.mts +3 -0
  284. package/dist/lib/esm/obsidian/components/rename-delete-handler-component.mjs +197 -79
  285. package/dist/lib/esm/obsidian/dataview-link.d.mts +22 -5
  286. package/dist/lib/esm/obsidian/dataview-link.mjs +7 -2
  287. package/dist/lib/esm/obsidian/dataview.d.mts +31 -6
  288. package/dist/lib/esm/obsidian/dataview.mjs +27 -10
  289. package/dist/lib/esm/obsidian/editor-lock.d.mts +57 -0
  290. package/dist/lib/esm/obsidian/editor-lock.mjs +141 -0
  291. package/dist/lib/esm/obsidian/editor.d.mts +2 -1
  292. package/dist/lib/esm/obsidian/editor.mjs +7 -1
  293. package/dist/lib/esm/obsidian/file-change.d.mts +54 -13
  294. package/dist/lib/esm/obsidian/file-change.mjs +104 -27
  295. package/dist/lib/esm/obsidian/file-manager.d.mts +63 -13
  296. package/dist/lib/esm/obsidian/file-manager.mjs +65 -33
  297. package/dist/lib/esm/obsidian/file-system.d.mts +188 -39
  298. package/dist/lib/esm/obsidian/file-system.mjs +122 -23
  299. package/dist/lib/esm/obsidian/frontmatter.mjs +7 -2
  300. package/dist/lib/esm/obsidian/i18n/locales/en.d.mts +3 -0
  301. package/dist/lib/esm/obsidian/i18n/locales/en.mjs +4 -1
  302. package/dist/lib/esm/obsidian/i18n/locales/translations-map.d.mts +3 -0
  303. package/dist/lib/esm/obsidian/index.d.mts +1 -0
  304. package/dist/lib/esm/obsidian/index.mjs +3 -1
  305. package/dist/lib/esm/obsidian/link.d.mts +131 -34
  306. package/dist/lib/esm/obsidian/link.mjs +327 -130
  307. package/dist/lib/esm/obsidian/logger.d.mts +26 -5
  308. package/dist/lib/esm/obsidian/logger.mjs +48 -22
  309. package/dist/lib/esm/obsidian/loop.d.mts +26 -7
  310. package/dist/lib/esm/obsidian/loop.mjs +14 -4
  311. package/dist/lib/esm/obsidian/markdown-code-block-processor.d.mts +15 -5
  312. package/dist/lib/esm/obsidian/markdown-code-block-processor.mjs +155 -107
  313. package/dist/lib/esm/obsidian/markdown-post-processor-registrar.d.mts +3 -1
  314. package/dist/lib/esm/obsidian/markdown-post-processor-registrar.mjs +1 -1
  315. package/dist/lib/esm/obsidian/markdown.d.mts +84 -16
  316. package/dist/lib/esm/obsidian/markdown.mjs +40 -11
  317. package/dist/lib/esm/obsidian/metadata-cache.d.mts +40 -30
  318. package/dist/lib/esm/obsidian/metadata-cache.mjs +88 -30
  319. package/dist/lib/esm/obsidian/modals/alert.d.mts +2 -0
  320. package/dist/lib/esm/obsidian/modals/alert.mjs +1 -1
  321. package/dist/lib/esm/obsidian/modals/confirm.d.mts +2 -0
  322. package/dist/lib/esm/obsidian/modals/confirm.mjs +1 -1
  323. package/dist/lib/esm/obsidian/modals/index.d.mts +1 -0
  324. package/dist/lib/esm/obsidian/modals/index.mjs +3 -1
  325. package/dist/lib/esm/obsidian/modals/minimizable-modal.d.mts +74 -0
  326. package/dist/lib/esm/obsidian/modals/minimizable-modal.mjs +126 -0
  327. package/dist/lib/esm/obsidian/modals/prompt.d.mts +6 -0
  328. package/dist/lib/esm/obsidian/modals/prompt.mjs +1 -1
  329. package/dist/lib/esm/obsidian/modals/select-item.d.mts +2 -0
  330. package/dist/lib/esm/obsidian/modals/select-item.mjs +1 -1
  331. package/dist/lib/esm/obsidian/path-settings.mjs +5 -2
  332. package/dist/lib/esm/obsidian/plugin/plugin-event-source.d.mts +4 -0
  333. package/dist/lib/esm/obsidian/plugin/plugin-event-source.mjs +5 -1
  334. package/dist/lib/esm/obsidian/plugin/plugin-settings-tab.d.mts +48 -11
  335. package/dist/lib/esm/obsidian/plugin/plugin-settings-tab.mjs +15 -7
  336. package/dist/lib/esm/obsidian/plugin/plugin.d.mts +4 -4
  337. package/dist/lib/esm/obsidian/plugin/plugin.mjs +24 -21
  338. package/dist/lib/esm/obsidian/queue.d.mts +14 -2
  339. package/dist/lib/esm/obsidian/queue.mjs +9 -7
  340. package/dist/lib/esm/obsidian/resource-url.d.mts +19 -4
  341. package/dist/lib/esm/obsidian/resource-url.mjs +7 -2
  342. package/dist/lib/esm/obsidian/status-bar-item-registrar.d.mts +6 -2
  343. package/dist/lib/esm/obsidian/status-bar-item-registrar.mjs +4 -2
  344. package/dist/lib/esm/obsidian/vault-delete.d.mts +11 -6
  345. package/dist/lib/esm/obsidian/vault-delete.mjs +19 -15
  346. package/dist/lib/esm/obsidian/vault.d.mts +187 -44
  347. package/dist/lib/esm/obsidian/vault.mjs +116 -59
  348. package/dist/lib/esm/path.d.mts +15 -3
  349. package/dist/lib/esm/path.mjs +12 -5
  350. package/dist/lib/esm/reg-exp.mjs +101 -78
  351. package/dist/lib/esm/script-utils/build.mjs +9 -5
  352. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/change-extension-plugin.mjs +34 -14
  353. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.d.mts +23 -5
  354. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.mjs +20 -5
  355. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/dependency.mjs +11 -4
  356. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/fix-esm-plugin.mjs +6 -2
  357. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/fix-source-maps-plugin.d.mts +19 -4
  358. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/fix-source-maps-plugin.mjs +31 -12
  359. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.mjs +7 -7
  360. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/preprocess-plugin.mjs +12 -3
  361. package/dist/lib/esm/script-utils/check-project-types.d.mts +9 -1
  362. package/dist/lib/esm/script-utils/check-project-types.mjs +5 -1
  363. package/dist/lib/esm/script-utils/cli-utils.mjs +6 -2
  364. package/dist/lib/esm/script-utils/exec.d.mts +12 -0
  365. package/dist/lib/esm/script-utils/exec.mjs +47 -12
  366. package/dist/lib/esm/script-utils/formatters/dprint.d.mts +2 -0
  367. package/dist/lib/esm/script-utils/formatters/dprint.mjs +3 -3
  368. package/dist/lib/esm/script-utils/json.d.mts +40 -8
  369. package/dist/lib/esm/script-utils/json.mjs +9 -5
  370. package/dist/lib/esm/script-utils/linters/eslint-rules/no-unused-params-members.mjs +8 -3
  371. package/dist/lib/esm/script-utils/linters/eslint-rules/require-component-suffix.mjs +27 -7
  372. package/dist/lib/esm/script-utils/linters/eslint-rules/require-method-template.mjs +7 -3
  373. package/dist/lib/esm/script-utils/linters/eslint-rules/require-super-call.mjs +8 -3
  374. package/dist/lib/esm/script-utils/linters/eslint.d.mts +2 -0
  375. package/dist/lib/esm/script-utils/linters/eslint.mjs +3 -3
  376. package/dist/lib/esm/script-utils/linters/markdownlint-types/@types/markdownlint-cli2-config-schema.d.mts +1 -1
  377. package/dist/lib/esm/script-utils/linters/markdownlint.d.mts +2 -0
  378. package/dist/lib/esm/script-utils/linters/markdownlint.mjs +3 -3
  379. package/dist/lib/esm/script-utils/linters/over-exposure.d.mts +8 -0
  380. package/dist/lib/esm/script-utils/linters/over-exposure.mjs +72 -30
  381. package/dist/lib/esm/script-utils/npm-publish.mjs +2 -2
  382. package/dist/lib/esm/script-utils/npm.d.mts +2 -0
  383. package/dist/lib/esm/script-utils/npm.mjs +18 -9
  384. package/dist/lib/esm/script-utils/root.d.mts +45 -9
  385. package/dist/lib/esm/script-utils/root.mjs +20 -5
  386. package/dist/lib/esm/script-utils/test-runners/vitest.d.mts +2 -0
  387. package/dist/lib/esm/script-utils/test-runners/vitest.mjs +1 -1
  388. package/dist/lib/esm/script-utils/validate-declarations.d.mts +22 -9
  389. package/dist/lib/esm/script-utils/validate-declarations.mjs +8 -51
  390. package/dist/lib/esm/script-utils/version.d.mts +20 -7
  391. package/dist/lib/esm/script-utils/version.mjs +36 -19
  392. package/dist/lib/esm/strict-proxy.mjs +10 -1
  393. package/dist/lib/esm/string.d.mts +194 -40
  394. package/dist/lib/esm/string.mjs +63 -22
  395. package/dist/styles.css +5 -1
  396. package/obsidian/Modals/minimizable-modal/package.json +6 -0
  397. package/obsidian/editor-lock/package.json +6 -0
  398. package/package.json +9 -9
@@ -4,7 +4,7 @@
4
4
  *
5
5
  * Contains utility functions for enqueuing and processing functions in Obsidian.
6
6
  */
7
- import type { Promisable } from 'type-fest';
7
+ import type { Promisable } from 'type-fest' with { 'resolution-mode': 'import' };
8
8
  /**
9
9
  * Options for the {@link addToQueueAndWait} function.
10
10
  */
@@ -19,10 +19,14 @@ export interface AddToQueueAndWaitParams {
19
19
  operationFn(this: void, abortSignal: AbortSignal): Promisable<void>;
20
20
  /**
21
21
  * Optional name of the operation.
22
+ *
23
+ * @default `''`
22
24
  */
23
25
  readonly operationName?: string;
24
26
  /**
25
- * Whether to show a timeout notice. Default is `true`.
27
+ * Whether to show a timeout notice.
28
+ *
29
+ * @default `true`
26
30
  */
27
31
  readonly shouldShowTimeoutNotice?: boolean;
28
32
  /**
@@ -31,6 +35,8 @@ export interface AddToQueueAndWaitParams {
31
35
  readonly stackTrace?: string;
32
36
  /**
33
37
  * The timeout in milliseconds.
38
+ *
39
+ * @default `60000`
34
40
  */
35
41
  readonly timeoutInMilliseconds?: number;
36
42
  }
@@ -48,10 +54,14 @@ export interface AddToQueueParams {
48
54
  operationFn(this: void, abortSignal: AbortSignal): Promisable<void>;
49
55
  /**
50
56
  * Optional name of the operation.
57
+ *
58
+ * @default `''`
51
59
  */
52
60
  readonly operationName?: string;
53
61
  /**
54
- * Whether to show a timeout notice. Default is `true`.
62
+ * Whether to show a timeout notice.
63
+ *
64
+ * @default `true`
55
65
  */
56
66
  readonly shouldShowTimeoutNotice?: boolean;
57
67
  /**
@@ -60,6 +70,8 @@ export interface AddToQueueParams {
60
70
  readonly stackTrace?: string;
61
71
  /**
62
72
  * The timeout in milliseconds.
73
+ *
74
+ * @default `60000`
63
75
  */
64
76
  readonly timeoutInMilliseconds?: number;
65
77
  }
@@ -15,7 +15,7 @@ import { App } from 'obsidian';
15
15
  * </AppContext.Provider>
16
16
  * ```
17
17
  */
18
- export declare const AppContext: import("react").Context<App | undefined>;
18
+ export declare const AppContext: import("react", { with: { 'resolution-mode': 'import' } }).Context<App | undefined>;
19
19
  /**
20
20
  * A hook to use the app context.
21
21
  *
@@ -4,7 +4,7 @@
4
4
  *
5
5
  * Contains utility functions for handling references in Obsidian.
6
6
  */
7
- import type { FrontmatterLinkCache, Reference } from 'obsidian';
7
+ import type { FrontmatterLinkCache, Reference } from 'obsidian' with { 'resolution-mode': 'import' };
8
8
  import type { FileChange } from './file-change.cjs';
9
9
  /**
10
10
  * A reference within a file node in a canvas.
@@ -131,7 +131,12 @@ module.exports = __toCommonJS(resource_url_exports);
131
131
  var import_implementations = require('@obsidian-typings/obsidian-public-latest/implementations');
132
132
  var import_obsidian = require('obsidian');
133
133
  var import_path = require('../path.cjs');
134
- function relativePathToResourceUrl(app, relativePath, notePath) {
134
+ function relativePathToResourceUrl(params) {
135
+ const {
136
+ app,
137
+ notePath,
138
+ relativePath
139
+ } = params;
135
140
  const noteFullPath = (0, import_path.toPosixPath)((0, import_implementations.getDataAdapterEx)(app).getFullRealPath(notePath));
136
141
  const noteUrl = `${import_obsidian.Platform.resourcePathPrefix}${noteFullPath}`;
137
142
  const relativeUrl = new URL(relativePath, noteUrl);
@@ -141,4 +146,4 @@ function relativePathToResourceUrl(app, relativePath, notePath) {
141
146
  0 && (module.exports = {
142
147
  relativePathToResourceUrl
143
148
  });
144
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3Jlc291cmNlLXVybC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIHV0aWxpdHkgZnVuY3Rpb25zIGZvciB3b3JraW5nIHdpdGggcmVzb3VyY2UgVVJMcyBpbiBPYnNpZGlhbi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IEFwcCB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgZ2V0RGF0YUFkYXB0ZXJFeCB9IGZyb20gJ0BvYnNpZGlhbi10eXBpbmdzL29ic2lkaWFuLXB1YmxpYy1sYXRlc3QvaW1wbGVtZW50YXRpb25zJztcbmltcG9ydCB7IFBsYXRmb3JtIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgeyB0b1Bvc2l4UGF0aCB9IGZyb20gJy4uL3BhdGgudHMnO1xuXG4vKipcbiAqIENvbnZlcnRzIGEgcmVsYXRpdmUgcGF0aCB0byBhIHJlc291cmNlIFVSTC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcGxpY2F0aW9uIGluc3RhbmNlLlxuICogQHBhcmFtIHJlbGF0aXZlUGF0aCAtIFRoZSByZWxhdGl2ZSBwYXRoIHRvIHRoZSByZXNvdXJjZS5cbiAqIEBwYXJhbSBub3RlUGF0aCAtIFRoZSBwYXRoIG9mIHRoZSBub3RlLlxuICogQHJldHVybnMgVGhlIHJlc291cmNlIFVSTC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlbGF0aXZlUGF0aFRvUmVzb3VyY2VVcmwoYXBwOiBBcHAsIHJlbGF0aXZlUGF0aDogc3RyaW5nLCBub3RlUGF0aDogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3Qgbm90ZUZ1bGxQYXRoID0gdG9Qb3NpeFBhdGgoZ2V0RGF0YUFkYXB0ZXJFeChhcHApLmdldEZ1bGxSZWFsUGF0aChub3RlUGF0aCkpO1xuICBjb25zdCBub3RlVXJsID0gYCR7UGxhdGZvcm0ucmVzb3VyY2VQYXRoUHJlZml4fSR7bm90ZUZ1bGxQYXRofWA7XG4gIGNvbnN0IHJlbGF0aXZlVXJsID0gbmV3IFVSTChyZWxhdGl2ZVBhdGgsIG5vdGVVcmwpO1xuICByZXR1cm4gU3RyaW5nKHJlbGF0aXZlVXJsKTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFBLDZCQUFpQztBQUNqQyxzQkFBeUI7QUFFekIsa0JBQTRCO0FBVXJCLFNBQVMsMEJBQTBCLEtBQVUsY0FBc0IsVUFBMEI7QUFDbEcsUUFBTSxtQkFBZSw2QkFBWSx5Q0FBaUIsR0FBRyxFQUFFLGdCQUFnQixRQUFRLENBQUM7QUFDaEYsUUFBTSxVQUFVLEdBQUcseUJBQVMsa0JBQWtCLEdBQUcsWUFBWTtBQUM3RCxRQUFNLGNBQWMsSUFBSSxJQUFJLGNBQWMsT0FBTztBQUNqRCxTQUFPLE9BQU8sV0FBVztBQUMzQjsiLAogICJuYW1lcyI6IFtdCn0K
149
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3Jlc291cmNlLXVybC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIHV0aWxpdHkgZnVuY3Rpb25zIGZvciB3b3JraW5nIHdpdGggcmVzb3VyY2UgVVJMcyBpbiBPYnNpZGlhbi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IEFwcCB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgZ2V0RGF0YUFkYXB0ZXJFeCB9IGZyb20gJ0BvYnNpZGlhbi10eXBpbmdzL29ic2lkaWFuLXB1YmxpYy1sYXRlc3QvaW1wbGVtZW50YXRpb25zJztcbmltcG9ydCB7IFBsYXRmb3JtIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgeyB0b1Bvc2l4UGF0aCB9IGZyb20gJy4uL3BhdGgudHMnO1xuXG4vKipcbiAqIFBhcmFtZXRlcnMgZm9yIHtAbGluayByZWxhdGl2ZVBhdGhUb1Jlc291cmNlVXJsfS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZWxhdGl2ZVBhdGhUb1Jlc291cmNlVXJsUGFyYW1zIHtcbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAgICovXG4gIHJlYWRvbmx5IGFwcDogQXBwO1xuXG4gIC8qKlxuICAgKiBUaGUgcGF0aCBvZiB0aGUgbm90ZS5cbiAgICovXG4gIHJlYWRvbmx5IG5vdGVQYXRoOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSByZWxhdGl2ZSBwYXRoIHRvIHRoZSByZXNvdXJjZS5cbiAgICovXG4gIHJlYWRvbmx5IHJlbGF0aXZlUGF0aDogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGEgcmVsYXRpdmUgcGF0aCB0byBhIHJlc291cmNlIFVSTC5cbiAqXG4gKiBAcGFyYW0gcGFyYW1zIC0gVGhlIHBhcmFtZXRlcnMgZm9yIHRoZSBjb252ZXJzaW9uLlxuICogQHJldHVybnMgVGhlIHJlc291cmNlIFVSTC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlbGF0aXZlUGF0aFRvUmVzb3VyY2VVcmwocGFyYW1zOiBSZWxhdGl2ZVBhdGhUb1Jlc291cmNlVXJsUGFyYW1zKTogc3RyaW5nIHtcbiAgY29uc3Qge1xuICAgIGFwcCxcbiAgICBub3RlUGF0aCxcbiAgICByZWxhdGl2ZVBhdGhcbiAgfSA9IHBhcmFtcztcbiAgY29uc3Qgbm90ZUZ1bGxQYXRoID0gdG9Qb3NpeFBhdGgoZ2V0RGF0YUFkYXB0ZXJFeChhcHApLmdldEZ1bGxSZWFsUGF0aChub3RlUGF0aCkpO1xuICBjb25zdCBub3RlVXJsID0gYCR7UGxhdGZvcm0ucmVzb3VyY2VQYXRoUHJlZml4fSR7bm90ZUZ1bGxQYXRofWA7XG4gIGNvbnN0IHJlbGF0aXZlVXJsID0gbmV3IFVSTChyZWxhdGl2ZVBhdGgsIG5vdGVVcmwpO1xuICByZXR1cm4gU3RyaW5nKHJlbGF0aXZlVXJsKTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFBLDZCQUFpQztBQUNqQyxzQkFBeUI7QUFFekIsa0JBQTRCO0FBNEJyQixTQUFTLDBCQUEwQixRQUFpRDtBQUN6RixRQUFNO0FBQUEsSUFDSjtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsRUFDRixJQUFJO0FBQ0osUUFBTSxtQkFBZSw2QkFBWSx5Q0FBaUIsR0FBRyxFQUFFLGdCQUFnQixRQUFRLENBQUM7QUFDaEYsUUFBTSxVQUFVLEdBQUcseUJBQVMsa0JBQWtCLEdBQUcsWUFBWTtBQUM3RCxRQUFNLGNBQWMsSUFBSSxJQUFJLGNBQWMsT0FBTztBQUNqRCxTQUFPLE9BQU8sV0FBVztBQUMzQjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -4,13 +4,28 @@
4
4
  *
5
5
  * This module provides utility functions for working with resource URLs in Obsidian.
6
6
  */
7
- import type { App } from 'obsidian';
7
+ import type { App } from 'obsidian' with { 'resolution-mode': 'import' };
8
+ /**
9
+ * Parameters for {@link relativePathToResourceUrl}.
10
+ */
11
+ export interface RelativePathToResourceUrlParams {
12
+ /**
13
+ * The Obsidian application instance.
14
+ */
15
+ readonly app: App;
16
+ /**
17
+ * The path of the note.
18
+ */
19
+ readonly notePath: string;
20
+ /**
21
+ * The relative path to the resource.
22
+ */
23
+ readonly relativePath: string;
24
+ }
8
25
  /**
9
26
  * Converts a relative path to a resource URL.
10
27
  *
11
- * @param app - The Obsidian application instance.
12
- * @param relativePath - The relative path to the resource.
13
- * @param notePath - The path of the note.
28
+ * @param params - The parameters for the conversion.
14
29
  * @returns The resource URL.
15
30
  */
16
- export declare function relativePathToResourceUrl(app: App, relativePath: string, notePath: string): string;
31
+ export declare function relativePathToResourceUrl(params: RelativePathToResourceUrlParams): string;
@@ -4,7 +4,7 @@
4
4
  *
5
5
  * Ribbon icon registrars.
6
6
  */
7
- import type { IconName } from 'obsidian';
7
+ import type { IconName } from 'obsidian' with { 'resolution-mode': 'import' };
8
8
  import { Plugin } from 'obsidian';
9
9
  /**
10
10
  * Ribbon icon registrar.
@@ -4,7 +4,7 @@
4
4
  *
5
5
  * Contains a type that extends ValueComponent to allow for change tracking.
6
6
  */
7
- import type { ValueComponent } from 'obsidian';
7
+ import type { ValueComponent } from 'obsidian' with { 'resolution-mode': 'import' };
8
8
  /**
9
9
  * A ValueComponent that can track changes.
10
10
  *
@@ -4,7 +4,7 @@
4
4
  *
5
5
  * Extends the Setting class with additional methods for adding components.
6
6
  */
7
- import type { BaseComponent } from 'obsidian';
7
+ import type { BaseComponent } from 'obsidian' with { 'resolution-mode': 'import' };
8
8
  import { Setting } from 'obsidian';
9
9
  import { CheckboxComponent } from './setting-components/checkbox-component.cjs';
10
10
  import { CodeHighlighterComponent } from './setting-components/code-highlighter-component.cjs';
@@ -141,13 +141,15 @@ class PluginStatusBarItemRegistrar {
141
141
  plugin;
142
142
  /**
143
143
  * Registers a status bar item.
144
+ *
145
+ * @returns The registered status bar item element.
144
146
  */
145
147
  addStatusBarItem() {
146
- this.plugin.addStatusBarItem();
148
+ return this.plugin.addStatusBarItem();
147
149
  }
148
150
  }
149
151
  // Annotate the CommonJS export names for ESM import in node:
150
152
  0 && (module.exports = {
151
153
  PluginStatusBarItemRegistrar
152
154
  });
153
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3N0YXR1cy1iYXItaXRlbS1yZWdpc3RyYXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBTdGF0dXMgYmFyIGl0ZW0gcmVnaXN0cmFycy5cbiAqL1xuXG5pbXBvcnQgeyBQbHVnaW4gfSBmcm9tICdvYnNpZGlhbic7XG5cbi8qKlxuICogU3RhdHVzIGJhciBpdGVtIHJlZ2lzdHJhci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdGF0dXNCYXJJdGVtUmVnaXN0cmFyIHtcbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIHN0YXR1cyBiYXIgaXRlbS5cbiAgICovXG4gIGFkZFN0YXR1c0Jhckl0ZW0oKTogdm9pZDtcbn1cblxuLyoqXG4gKiBTdGF0dXMgYmFyIGl0ZW0gcmVnaXN0cmFyIGluIGFuIE9ic2lkaWFuIHBsdWdpbi5cbiAqL1xuZXhwb3J0IGNsYXNzIFBsdWdpblN0YXR1c0Jhckl0ZW1SZWdpc3RyYXIgaW1wbGVtZW50cyBTdGF0dXNCYXJJdGVtUmVnaXN0cmFyIHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgaW5zdGFuY2Ugb2YgdGhlIHtAbGluayBQbHVnaW5TdGF0dXNCYXJJdGVtUmVnaXN0cmFyfSBjbGFzcy5cbiAgICpcbiAgICogQHBhcmFtIHBsdWdpbiAtIFRoZSBPYnNpZGlhbiBwbHVnaW4gaW5zdGFuY2UuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBwbHVnaW46IFBsdWdpbikge31cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIGEgc3RhdHVzIGJhciBpdGVtLlxuICAgKi9cbiAgcHVibGljIGFkZFN0YXR1c0Jhckl0ZW0oKTogdm9pZCB7XG4gICAgdGhpcy5wbHVnaW4uYWRkU3RhdHVzQmFySXRlbSgpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQSxzQkFBdUI7QUFlaEIsTUFBTSw2QkFBK0Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNbkUsWUFBNkIsUUFBZ0I7QUFBaEI7QUFBQSxFQUFpQjtBQUFBLEVBQWpCO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLN0IsbUJBQXlCO0FBQzlCLFNBQUssT0FBTyxpQkFBaUI7QUFBQSxFQUMvQjtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
155
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3N0YXR1cy1iYXItaXRlbS1yZWdpc3RyYXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBTdGF0dXMgYmFyIGl0ZW0gcmVnaXN0cmFycy5cbiAqL1xuXG5pbXBvcnQgeyBQbHVnaW4gfSBmcm9tICdvYnNpZGlhbic7XG5cbi8qKlxuICogU3RhdHVzIGJhciBpdGVtIHJlZ2lzdHJhci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdGF0dXNCYXJJdGVtUmVnaXN0cmFyIHtcbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIHN0YXR1cyBiYXIgaXRlbS5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHJlZ2lzdGVyZWQgc3RhdHVzIGJhciBpdGVtIGVsZW1lbnQuXG4gICAqL1xuICBhZGRTdGF0dXNCYXJJdGVtKCk6IEhUTUxFbGVtZW50O1xufVxuXG4vKipcbiAqIFN0YXR1cyBiYXIgaXRlbSByZWdpc3RyYXIgaW4gYW4gT2JzaWRpYW4gcGx1Z2luLlxuICovXG5leHBvcnQgY2xhc3MgUGx1Z2luU3RhdHVzQmFySXRlbVJlZ2lzdHJhciBpbXBsZW1lbnRzIFN0YXR1c0Jhckl0ZW1SZWdpc3RyYXIge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBpbnN0YW5jZSBvZiB0aGUge0BsaW5rIFBsdWdpblN0YXR1c0Jhckl0ZW1SZWdpc3RyYXJ9IGNsYXNzLlxuICAgKlxuICAgKiBAcGFyYW0gcGx1Z2luIC0gVGhlIE9ic2lkaWFuIHBsdWdpbiBpbnN0YW5jZS5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHBsdWdpbjogUGx1Z2luKSB7fVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgYSBzdGF0dXMgYmFyIGl0ZW0uXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSByZWdpc3RlcmVkIHN0YXR1cyBiYXIgaXRlbSBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGFkZFN0YXR1c0Jhckl0ZW0oKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLnBsdWdpbi5hZGRTdGF0dXNCYXJJdGVtKCk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BLHNCQUF1QjtBQWlCaEIsTUFBTSw2QkFBK0Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNbkUsWUFBNkIsUUFBZ0I7QUFBaEI7QUFBQSxFQUFpQjtBQUFBLEVBQWpCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTzdCLG1CQUFnQztBQUNyQyxXQUFPLEtBQUssT0FBTyxpQkFBaUI7QUFBQSxFQUN0QztBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -11,8 +11,10 @@ import { Plugin } from 'obsidian';
11
11
  export interface StatusBarItemRegistrar {
12
12
  /**
13
13
  * Registers a status bar item.
14
+ *
15
+ * @returns The registered status bar item element.
14
16
  */
15
- addStatusBarItem(): void;
17
+ addStatusBarItem(): HTMLElement;
16
18
  }
17
19
  /**
18
20
  * Status bar item registrar in an Obsidian plugin.
@@ -27,6 +29,8 @@ export declare class PluginStatusBarItemRegistrar implements StatusBarItemRegist
27
29
  constructor(plugin: Plugin);
28
30
  /**
29
31
  * Registers a status bar item.
32
+ *
33
+ * @returns The registered status bar item element.
30
34
  */
31
- addStatusBarItem(): void;
35
+ addStatusBarItem(): HTMLElement;
32
36
  }
@@ -128,39 +128,43 @@ __export(vault_delete_exports, {
128
128
  deleteIfNotUsed: () => deleteIfNotUsed
129
129
  });
130
130
  module.exports = __toCommonJS(vault_delete_exports);
131
- var import_obsidian = require('obsidian');
132
131
  var import_error = require('../error.cjs');
132
+ var import_object_utils = require('../object-utils.cjs');
133
133
  var import_file_system = require('./file-system.cjs');
134
134
  var import_i18n = require('./i18n/i18n.cjs');
135
135
  var import_metadata_cache = require('./metadata-cache.cjs');
136
136
  var import_vault = require('./vault.cjs');
137
- async function deleteIfNotUsed(app, pathOrFile, deletedNotePath, shouldReportUsedAttachments, shouldDeleteEmptyFolders) {
138
- const file = (0, import_file_system.getAbstractFileOrNull)(app, pathOrFile);
137
+ async function deleteIfNotUsed(params) {
138
+ const file = (0, import_file_system.getAbstractFileOrNull)({ app: params.app, pathOrFile: params.pathOrFile });
139
139
  if (!file) {
140
140
  return false;
141
141
  }
142
- let canDelete = (0, import_file_system.isFile)(file) || (shouldDeleteEmptyFolders ?? true);
142
+ let canDelete = (0, import_file_system.isFile)(file) || (params.shouldDeleteEmptyFolders ?? true);
143
143
  if ((0, import_file_system.isFile)(file)) {
144
- const backlinks = await (0, import_metadata_cache.getBacklinksForFileSafe)(app, file);
145
- if (deletedNotePath) {
146
- backlinks.clear(deletedNotePath);
144
+ const backlinks = await (0, import_metadata_cache.getBacklinksForFileSafe)({ app: params.app, pathOrFile: file });
145
+ if (params.deletedNotePath) {
146
+ backlinks.clear(params.deletedNotePath);
147
147
  }
148
148
  if (backlinks.count() !== 0) {
149
- if (shouldReportUsedAttachments) {
150
- new import_obsidian.Notice((0, import_i18n.t)(($) => $.obsidianDevUtils.notices.attachmentIsStillUsed, { attachmentPath: file.path }));
151
- }
149
+ params.pluginNoticeComponent?.showNotice((0, import_i18n.t)(($) => $.obsidianDevUtils.notices.attachmentIsStillUsed, { attachmentPath: file.path }));
152
150
  canDelete = false;
153
151
  }
154
152
  } else if ((0, import_file_system.isFolder)(file)) {
155
- const listedFiles = await (0, import_vault.listSafe)(app, file);
153
+ const listedFiles = await (0, import_vault.listSafe)(params.app, file);
156
154
  for (const child of [...listedFiles.files, ...listedFiles.folders]) {
157
- canDelete &&= await deleteIfNotUsed(app, child, deletedNotePath, shouldReportUsedAttachments);
155
+ canDelete &&= await deleteIfNotUsed((0, import_object_utils.normalizeOptionalProperties)({
156
+ app: params.app,
157
+ deletedNotePath: params.deletedNotePath,
158
+ pathOrFile: child,
159
+ pluginNoticeComponent: params.pluginNoticeComponent,
160
+ shouldDeleteEmptyFolders: params.shouldDeleteEmptyFolders
161
+ }));
158
162
  }
159
- canDelete &&= await (0, import_vault.isEmptyFolder)(app, file);
163
+ canDelete &&= await (0, import_vault.isEmptyFolder)(params.app, file);
160
164
  }
161
165
  if (canDelete) {
162
166
  try {
163
- await (0, import_vault.trashSafe)(app, file);
167
+ await (0, import_vault.trashSafe)(params.app, file);
164
168
  } catch (e) {
165
169
  (0, import_error.printError)(new Error(`Failed to delete ${file.path}`, { cause: e }));
166
170
  canDelete = false;
@@ -172,4 +176,4 @@ async function deleteIfNotUsed(app, pathOrFile, deletedNotePath, shouldReportUse
172
176
  0 && (module.exports = {
173
177
  deleteIfNotUsed
174
178
  });
175
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3ZhdWx0LWRlbGV0ZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIGRlbGV0aW9uIHV0aWxpdGllcyB0aGF0IHJlcXVpcmUgbWV0YWRhdGEgY2FjaGUgYWNjZXNzLlxuICovXG5cbmltcG9ydCB0eXBlIHsgQXBwIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgeyBOb3RpY2UgfSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHsgUGF0aE9yQWJzdHJhY3RGaWxlIH0gZnJvbSAnLi9maWxlLXN5c3RlbS50cyc7XG5cbmltcG9ydCB7IHByaW50RXJyb3IgfSBmcm9tICcuLi9lcnJvci50cyc7XG5pbXBvcnQge1xuICBnZXRBYnN0cmFjdEZpbGVPck51bGwsXG4gIGlzRmlsZSxcbiAgaXNGb2xkZXJcbn0gZnJvbSAnLi9maWxlLXN5c3RlbS50cyc7XG5pbXBvcnQgeyB0IH0gZnJvbSAnLi9pMThuL2kxOG4udHMnO1xuaW1wb3J0IHsgZ2V0QmFja2xpbmtzRm9yRmlsZVNhZmUgfSBmcm9tICcuL21ldGFkYXRhLWNhY2hlLnRzJztcbmltcG9ydCB7XG4gIGlzRW1wdHlGb2xkZXIsXG4gIGxpc3RTYWZlLFxuICB0cmFzaFNhZmVcbn0gZnJvbSAnLi92YXVsdC50cyc7XG5cbi8qKlxuICogRGVsZXRlcyBhbiBhYnN0cmFjdCBmaWxlIHNhZmVseSBmcm9tIHRoZSB2YXVsdCwgYnV0IG9ubHkgaWYgaXQgaXMgbm90IHJlZmVyZW5jZWQgYnkgb3RoZXIgbm90ZXMuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGaWxlIC0gVGhlIHBhdGggb3IgYWJzdHJhY3QgZmlsZSB0byBkZWxldGUuXG4gKiBAcGFyYW0gZGVsZXRlZE5vdGVQYXRoIC0gT3B0aW9uYWwuIFRoZSBwYXRoIG9mIHRoZSBub3RlIHRoYXQgdHJpZ2dlcmVkIHRoZSByZW1vdmFsLlxuICogQHBhcmFtIHNob3VsZFJlcG9ydFVzZWRBdHRhY2htZW50cyAtIE9wdGlvbmFsLiBJZiBgdHJ1ZWAsIGEgbm90aWNlIHdpbGwgYmUgc2hvd24gZm9yIGVhY2ggYXR0YWNobWVudCB0aGF0IGlzIHN0aWxsIHVzZWQgYnkgb3RoZXIgbm90ZXMuXG4gKiBAcGFyYW0gc2hvdWxkRGVsZXRlRW1wdHlGb2xkZXJzIC0gT3B0aW9uYWwuIElmIGB0cnVlYCwgZW1wdHkgZm9sZGVycyB3aWxsIGJlIGRlbGV0ZWQuXG4gKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHRvIGEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIHJlbW92YWwgd2FzIHN1Y2Nlc3NmdWwuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZWxldGVJZk5vdFVzZWQoXG4gIGFwcDogQXBwLFxuICBwYXRoT3JGaWxlOiBQYXRoT3JBYnN0cmFjdEZpbGUsXG4gIGRlbGV0ZWROb3RlUGF0aD86IHN0cmluZyxcbiAgc2hvdWxkUmVwb3J0VXNlZEF0dGFjaG1lbnRzPzogYm9vbGVhbixcbiAgc2hvdWxkRGVsZXRlRW1wdHlGb2xkZXJzPzogYm9vbGVhblxuKTogUHJvbWlzZTxib29sZWFuPiB7XG4gIGNvbnN0IGZpbGUgPSBnZXRBYnN0cmFjdEZpbGVPck51bGwoYXBwLCBwYXRoT3JGaWxlKTtcblxuICBpZiAoIWZpbGUpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBsZXQgY2FuRGVsZXRlID0gaXNGaWxlKGZpbGUpIHx8IChzaG91bGREZWxldGVFbXB0eUZvbGRlcnMgPz8gdHJ1ZSk7XG5cbiAgLyogdjggaWdub3JlIHN0YXJ0IC0tIFRBYnN0cmFjdEZpbGUgaXMgYWx3YXlzIFRGaWxlIG9yIFRGb2xkZXIgaW4gT2JzaWRpYW47IHRoZSBmYWxzZSBicmFuY2ggb2YgaXNGaWxlIGxlYWRzIHRvIGlzRm9sZGVyLiAqL1xuICBpZiAoaXNGaWxlKGZpbGUpKSB7XG4gICAgLyogdjggaWdub3JlIHN0b3AgKi9cbiAgICBjb25zdCBiYWNrbGlua3MgPSBhd2FpdCBnZXRCYWNrbGlua3NGb3JGaWxlU2FmZShhcHAsIGZpbGUpO1xuICAgIGlmIChkZWxldGVkTm90ZVBhdGgpIHtcbiAgICAgIGJhY2tsaW5rcy5jbGVhcihkZWxldGVkTm90ZVBhdGgpO1xuICAgIH1cbiAgICBpZiAoYmFja2xpbmtzLmNvdW50KCkgIT09IDApIHtcbiAgICAgIGlmIChzaG91bGRSZXBvcnRVc2VkQXR0YWNobWVudHMpIHtcbiAgICAgICAgbmV3IE5vdGljZSh0KCgkKSA9PiAkLm9ic2lkaWFuRGV2VXRpbHMubm90aWNlcy5hdHRhY2htZW50SXNTdGlsbFVzZWQsIHsgYXR0YWNobWVudFBhdGg6IGZpbGUucGF0aCB9KSk7XG4gICAgICB9XG4gICAgICBjYW5EZWxldGUgPSBmYWxzZTtcbiAgICB9XG4gICAgLyogdjggaWdub3JlIHN0YXJ0IC0tIFRBYnN0cmFjdEZpbGUgaXMgYWx3YXlzIFRGaWxlIG9yIFRGb2xkZXIgaW4gT2JzaWRpYW47IGRlZmVuc2l2ZSBmYWxsYmFjay4gKi9cbiAgfSBlbHNlIGlmIChpc0ZvbGRlcihmaWxlKSkge1xuICAgIC8qIHY4IGlnbm9yZSBzdG9wICovXG4gICAgY29uc3QgbGlzdGVkRmlsZXMgPSBhd2FpdCBsaXN0U2FmZShhcHAsIGZpbGUpO1xuICAgIGZvciAoY29uc3QgY2hpbGQgb2YgWy4uLmxpc3RlZEZpbGVzLmZpbGVzLCAuLi5saXN0ZWRGaWxlcy5mb2xkZXJzXSkge1xuICAgICAgY2FuRGVsZXRlICYmPSBhd2FpdCBkZWxldGVJZk5vdFVzZWQoYXBwLCBjaGlsZCwgZGVsZXRlZE5vdGVQYXRoLCBzaG91bGRSZXBvcnRVc2VkQXR0YWNobWVudHMpO1xuICAgIH1cblxuICAgIGNhbkRlbGV0ZSAmJj0gYXdhaXQgaXNFbXB0eUZvbGRlcihhcHAsIGZpbGUpO1xuICB9XG5cbiAgaWYgKGNhbkRlbGV0ZSkge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0cmFzaFNhZmUoYXBwLCBmaWxlKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBwcmludEVycm9yKG5ldyBFcnJvcihgRmFpbGVkIHRvIGRlbGV0ZSAke2ZpbGUucGF0aH1gLCB7IGNhdXNlOiBlIH0pKTtcbiAgICAgIGNhbkRlbGV0ZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBjYW5EZWxldGU7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRQSxzQkFBdUI7QUFJdkIsbUJBQTJCO0FBQzNCLHlCQUlPO0FBQ1Asa0JBQWtCO0FBQ2xCLDRCQUF3QztBQUN4QyxtQkFJTztBQVlQLGVBQXNCLGdCQUNwQixLQUNBLFlBQ0EsaUJBQ0EsNkJBQ0EsMEJBQ2tCO0FBQ2xCLFFBQU0sV0FBTywwQ0FBc0IsS0FBSyxVQUFVO0FBRWxELE1BQUksQ0FBQyxNQUFNO0FBQ1QsV0FBTztBQUFBLEVBQ1Q7QUFFQSxNQUFJLGdCQUFZLDJCQUFPLElBQUksTUFBTSw0QkFBNEI7QUFHN0QsVUFBSSwyQkFBTyxJQUFJLEdBQUc7QUFFaEIsVUFBTSxZQUFZLFVBQU0sK0NBQXdCLEtBQUssSUFBSTtBQUN6RCxRQUFJLGlCQUFpQjtBQUNuQixnQkFBVSxNQUFNLGVBQWU7QUFBQSxJQUNqQztBQUNBLFFBQUksVUFBVSxNQUFNLE1BQU0sR0FBRztBQUMzQixVQUFJLDZCQUE2QjtBQUMvQixZQUFJLDJCQUFPLGVBQUUsQ0FBQyxNQUFNLEVBQUUsaUJBQWlCLFFBQVEsdUJBQXVCLEVBQUUsZ0JBQWdCLEtBQUssS0FBSyxDQUFDLENBQUM7QUFBQSxNQUN0RztBQUNBLGtCQUFZO0FBQUEsSUFDZDtBQUFBLEVBRUYsZUFBVyw2QkFBUyxJQUFJLEdBQUc7QUFFekIsVUFBTSxjQUFjLFVBQU0sdUJBQVMsS0FBSyxJQUFJO0FBQzVDLGVBQVcsU0FBUyxDQUFDLEdBQUcsWUFBWSxPQUFPLEdBQUcsWUFBWSxPQUFPLEdBQUc7QUFDbEUsb0JBQWMsTUFBTSxnQkFBZ0IsS0FBSyxPQUFPLGlCQUFpQiwyQkFBMkI7QUFBQSxJQUM5RjtBQUVBLGtCQUFjLFVBQU0sNEJBQWMsS0FBSyxJQUFJO0FBQUEsRUFDN0M7QUFFQSxNQUFJLFdBQVc7QUFDYixRQUFJO0FBQ0YsZ0JBQU0sd0JBQVUsS0FBSyxJQUFJO0FBQUEsSUFDM0IsU0FBUyxHQUFHO0FBQ1YsbUNBQVcsSUFBSSxNQUFNLG9CQUFvQixLQUFLLElBQUksSUFBSSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7QUFDbkUsa0JBQVk7QUFBQSxJQUNkO0FBQUEsRUFDRjtBQUVBLFNBQU87QUFDVDsiLAogICJuYW1lcyI6IFtdCn0K
179
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3ZhdWx0LWRlbGV0ZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIGRlbGV0aW9uIHV0aWxpdGllcyB0aGF0IHJlcXVpcmUgbWV0YWRhdGEgY2FjaGUgYWNjZXNzLlxuICovXG5cbmltcG9ydCB0eXBlIHsgQXBwIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgdHlwZSB7IFBsdWdpbk5vdGljZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wbHVnaW4tbm90aWNlLWNvbXBvbmVudC50cyc7XG5pbXBvcnQgdHlwZSB7IFBhdGhPckFic3RyYWN0RmlsZSB9IGZyb20gJy4vZmlsZS1zeXN0ZW0udHMnO1xuXG5pbXBvcnQgeyBwcmludEVycm9yIH0gZnJvbSAnLi4vZXJyb3IudHMnO1xuaW1wb3J0IHsgbm9ybWFsaXplT3B0aW9uYWxQcm9wZXJ0aWVzIH0gZnJvbSAnLi4vb2JqZWN0LXV0aWxzLnRzJztcbmltcG9ydCB7XG4gIGdldEFic3RyYWN0RmlsZU9yTnVsbCxcbiAgaXNGaWxlLFxuICBpc0ZvbGRlclxufSBmcm9tICcuL2ZpbGUtc3lzdGVtLnRzJztcbmltcG9ydCB7IHQgfSBmcm9tICcuL2kxOG4vaTE4bi50cyc7XG5pbXBvcnQgeyBnZXRCYWNrbGlua3NGb3JGaWxlU2FmZSB9IGZyb20gJy4vbWV0YWRhdGEtY2FjaGUudHMnO1xuaW1wb3J0IHtcbiAgaXNFbXB0eUZvbGRlcixcbiAgbGlzdFNhZmUsXG4gIHRyYXNoU2FmZVxufSBmcm9tICcuL3ZhdWx0LnRzJztcblxuaW50ZXJmYWNlIERlbGV0ZUlmTm90VXNlZFBhcmFtcyB7XG4gIHJlYWRvbmx5IGFwcDogQXBwO1xuICByZWFkb25seSBkZWxldGVkTm90ZVBhdGg/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHBhdGhPckZpbGU6IFBhdGhPckFic3RyYWN0RmlsZTtcbiAgcmVhZG9ubHkgcGx1Z2luTm90aWNlQ29tcG9uZW50PzogUGx1Z2luTm90aWNlQ29tcG9uZW50O1xuICByZWFkb25seSBzaG91bGREZWxldGVFbXB0eUZvbGRlcnM/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIERlbGV0ZXMgYW4gYWJzdHJhY3QgZmlsZSBzYWZlbHkgZnJvbSB0aGUgdmF1bHQsIGJ1dCBvbmx5IGlmIGl0IGlzIG5vdCByZWZlcmVuY2VkIGJ5IG90aGVyIG5vdGVzLlxuICpcbiAqIEBwYXJhbSBwYXJhbXMgLSBUaGUgcGFyYW1ldGVycyBmb3IgdGhlIGZ1bmN0aW9uLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB0byBhIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSByZW1vdmFsIHdhcyBzdWNjZXNzZnVsLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVsZXRlSWZOb3RVc2VkKHBhcmFtczogRGVsZXRlSWZOb3RVc2VkUGFyYW1zKTogUHJvbWlzZTxib29sZWFuPiB7XG4gIGNvbnN0IGZpbGUgPSBnZXRBYnN0cmFjdEZpbGVPck51bGwoeyBhcHA6IHBhcmFtcy5hcHAsIHBhdGhPckZpbGU6IHBhcmFtcy5wYXRoT3JGaWxlIH0pO1xuXG4gIGlmICghZmlsZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGxldCBjYW5EZWxldGUgPSBpc0ZpbGUoZmlsZSkgfHwgKHBhcmFtcy5zaG91bGREZWxldGVFbXB0eUZvbGRlcnMgPz8gdHJ1ZSk7XG5cbiAgLyogdjggaWdub3JlIHN0YXJ0IC0tIFRBYnN0cmFjdEZpbGUgaXMgYWx3YXlzIFRGaWxlIG9yIFRGb2xkZXIgaW4gT2JzaWRpYW47IHRoZSBmYWxzZSBicmFuY2ggb2YgaXNGaWxlIGxlYWRzIHRvIGlzRm9sZGVyLiAqL1xuICBpZiAoaXNGaWxlKGZpbGUpKSB7XG4gICAgLyogdjggaWdub3JlIHN0b3AgKi9cbiAgICBjb25zdCBiYWNrbGlua3MgPSBhd2FpdCBnZXRCYWNrbGlua3NGb3JGaWxlU2FmZSh7IGFwcDogcGFyYW1zLmFwcCwgcGF0aE9yRmlsZTogZmlsZSB9KTtcbiAgICBpZiAocGFyYW1zLmRlbGV0ZWROb3RlUGF0aCkge1xuICAgICAgYmFja2xpbmtzLmNsZWFyKHBhcmFtcy5kZWxldGVkTm90ZVBhdGgpO1xuICAgIH1cbiAgICBpZiAoYmFja2xpbmtzLmNvdW50KCkgIT09IDApIHtcbiAgICAgIHBhcmFtcy5wbHVnaW5Ob3RpY2VDb21wb25lbnQ/LnNob3dOb3RpY2UodCgoJCkgPT4gJC5vYnNpZGlhbkRldlV0aWxzLm5vdGljZXMuYXR0YWNobWVudElzU3RpbGxVc2VkLCB7IGF0dGFjaG1lbnRQYXRoOiBmaWxlLnBhdGggfSkpO1xuICAgICAgY2FuRGVsZXRlID0gZmFsc2U7XG4gICAgfVxuICAgIC8qIHY4IGlnbm9yZSBzdGFydCAtLSBUQWJzdHJhY3RGaWxlIGlzIGFsd2F5cyBURmlsZSBvciBURm9sZGVyIGluIE9ic2lkaWFuOyBkZWZlbnNpdmUgZmFsbGJhY2suICovXG4gIH0gZWxzZSBpZiAoaXNGb2xkZXIoZmlsZSkpIHtcbiAgICAvKiB2OCBpZ25vcmUgc3RvcCAqL1xuICAgIGNvbnN0IGxpc3RlZEZpbGVzID0gYXdhaXQgbGlzdFNhZmUocGFyYW1zLmFwcCwgZmlsZSk7XG4gICAgZm9yIChjb25zdCBjaGlsZCBvZiBbLi4ubGlzdGVkRmlsZXMuZmlsZXMsIC4uLmxpc3RlZEZpbGVzLmZvbGRlcnNdKSB7XG4gICAgICBjYW5EZWxldGUgJiY9IGF3YWl0IGRlbGV0ZUlmTm90VXNlZChub3JtYWxpemVPcHRpb25hbFByb3BlcnRpZXM8RGVsZXRlSWZOb3RVc2VkUGFyYW1zPih7XG4gICAgICAgIGFwcDogcGFyYW1zLmFwcCxcbiAgICAgICAgZGVsZXRlZE5vdGVQYXRoOiBwYXJhbXMuZGVsZXRlZE5vdGVQYXRoLFxuICAgICAgICBwYXRoT3JGaWxlOiBjaGlsZCxcbiAgICAgICAgcGx1Z2luTm90aWNlQ29tcG9uZW50OiBwYXJhbXMucGx1Z2luTm90aWNlQ29tcG9uZW50LFxuICAgICAgICBzaG91bGREZWxldGVFbXB0eUZvbGRlcnM6IHBhcmFtcy5zaG91bGREZWxldGVFbXB0eUZvbGRlcnNcbiAgICAgIH0pKTtcbiAgICB9XG5cbiAgICBjYW5EZWxldGUgJiY9IGF3YWl0IGlzRW1wdHlGb2xkZXIocGFyYW1zLmFwcCwgZmlsZSk7XG4gIH1cblxuICBpZiAoY2FuRGVsZXRlKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRyYXNoU2FmZShwYXJhbXMuYXBwLCBmaWxlKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBwcmludEVycm9yKG5ldyBFcnJvcihgRmFpbGVkIHRvIGRlbGV0ZSAke2ZpbGUucGF0aH1gLCB7IGNhdXNlOiBlIH0pKTtcbiAgICAgIGNhbkRlbGV0ZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBjYW5EZWxldGU7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQSxtQkFBMkI7QUFDM0IsMEJBQTRDO0FBQzVDLHlCQUlPO0FBQ1Asa0JBQWtCO0FBQ2xCLDRCQUF3QztBQUN4QyxtQkFJTztBQWdCUCxlQUFzQixnQkFBZ0IsUUFBaUQ7QUFDckYsUUFBTSxXQUFPLDBDQUFzQixFQUFFLEtBQUssT0FBTyxLQUFLLFlBQVksT0FBTyxXQUFXLENBQUM7QUFFckYsTUFBSSxDQUFDLE1BQU07QUFDVCxXQUFPO0FBQUEsRUFDVDtBQUVBLE1BQUksZ0JBQVksMkJBQU8sSUFBSSxNQUFNLE9BQU8sNEJBQTRCO0FBR3BFLFVBQUksMkJBQU8sSUFBSSxHQUFHO0FBRWhCLFVBQU0sWUFBWSxVQUFNLCtDQUF3QixFQUFFLEtBQUssT0FBTyxLQUFLLFlBQVksS0FBSyxDQUFDO0FBQ3JGLFFBQUksT0FBTyxpQkFBaUI7QUFDMUIsZ0JBQVUsTUFBTSxPQUFPLGVBQWU7QUFBQSxJQUN4QztBQUNBLFFBQUksVUFBVSxNQUFNLE1BQU0sR0FBRztBQUMzQixhQUFPLHVCQUF1QixlQUFXLGVBQUUsQ0FBQyxNQUFNLEVBQUUsaUJBQWlCLFFBQVEsdUJBQXVCLEVBQUUsZ0JBQWdCLEtBQUssS0FBSyxDQUFDLENBQUM7QUFDbEksa0JBQVk7QUFBQSxJQUNkO0FBQUEsRUFFRixlQUFXLDZCQUFTLElBQUksR0FBRztBQUV6QixVQUFNLGNBQWMsVUFBTSx1QkFBUyxPQUFPLEtBQUssSUFBSTtBQUNuRCxlQUFXLFNBQVMsQ0FBQyxHQUFHLFlBQVksT0FBTyxHQUFHLFlBQVksT0FBTyxHQUFHO0FBQ2xFLG9CQUFjLE1BQU0sb0JBQWdCLGlEQUFtRDtBQUFBLFFBQ3JGLEtBQUssT0FBTztBQUFBLFFBQ1osaUJBQWlCLE9BQU87QUFBQSxRQUN4QixZQUFZO0FBQUEsUUFDWix1QkFBdUIsT0FBTztBQUFBLFFBQzlCLDBCQUEwQixPQUFPO0FBQUEsTUFDbkMsQ0FBQyxDQUFDO0FBQUEsSUFDSjtBQUVBLGtCQUFjLFVBQU0sNEJBQWMsT0FBTyxLQUFLLElBQUk7QUFBQSxFQUNwRDtBQUVBLE1BQUksV0FBVztBQUNiLFFBQUk7QUFDRixnQkFBTSx3QkFBVSxPQUFPLEtBQUssSUFBSTtBQUFBLElBQ2xDLFNBQVMsR0FBRztBQUNWLG1DQUFXLElBQUksTUFBTSxvQkFBb0IsS0FBSyxJQUFJLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0FBQ25FLGtCQUFZO0FBQUEsSUFDZDtBQUFBLEVBQ0Y7QUFFQSxTQUFPO0FBQ1Q7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -4,16 +4,21 @@
4
4
  *
5
5
  * This module provides deletion utilities that require metadata cache access.
6
6
  */
7
- import type { App } from 'obsidian';
7
+ import type { App } from 'obsidian' with { 'resolution-mode': 'import' };
8
+ import type { PluginNoticeComponent } from './components/plugin-notice-component.cjs';
8
9
  import type { PathOrAbstractFile } from './file-system.cjs';
10
+ interface DeleteIfNotUsedParams {
11
+ readonly app: App;
12
+ readonly deletedNotePath?: string;
13
+ readonly pathOrFile: PathOrAbstractFile;
14
+ readonly pluginNoticeComponent?: PluginNoticeComponent;
15
+ readonly shouldDeleteEmptyFolders?: boolean;
16
+ }
9
17
  /**
10
18
  * Deletes an abstract file safely from the vault, but only if it is not referenced by other notes.
11
19
  *
12
- * @param app - The Obsidian application instance.
13
- * @param pathOrFile - The path or abstract file to delete.
14
- * @param deletedNotePath - Optional. The path of the note that triggered the removal.
15
- * @param shouldReportUsedAttachments - Optional. If `true`, a notice will be shown for each attachment that is still used by other notes.
16
- * @param shouldDeleteEmptyFolders - Optional. If `true`, empty folders will be deleted.
20
+ * @param params - The parameters for the function.
17
21
  * @returns A {@link Promise} that resolves to a boolean indicating whether the removal was successful.
18
22
  */
19
- export declare function deleteIfNotUsed(app: App, pathOrFile: PathOrAbstractFile, deletedNotePath?: string, shouldReportUsedAttachments?: boolean, shouldDeleteEmptyFolders?: boolean): Promise<boolean>;
23
+ export declare function deleteIfNotUsed(params: DeleteIfNotUsedParams): Promise<boolean>;
24
+ export {};