obsidian-dev-utils 50.0.0 → 51.1.6

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 (1696) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/README.md +14 -3
  3. package/Transformers/Transformer/package.json +3 -3
  4. package/Transformers/date-transformer/package.json +6 -0
  5. package/Transformers/duration-transformer/package.json +6 -0
  6. package/Transformers/group-transformer/package.json +6 -0
  7. package/Transformers/index/package.json +3 -3
  8. package/Transformers/map-transformer/package.json +6 -0
  9. package/Transformers/package.json +3 -3
  10. package/Transformers/set-transformer/package.json +6 -0
  11. package/Transformers/skip-private-property-transformer/package.json +6 -0
  12. package/Transformers/two-way-map-transformer/package.json +6 -0
  13. package/Transformers/typed-transformer/package.json +6 -0
  14. package/codemirror/state-field-spec/package.json +6 -0
  15. package/dist/.markdownlint-cli2.mts +2 -2
  16. package/dist/eslint.config.mts +1 -1
  17. package/dist/lib/cjs/abort-controller.cjs +212 -0
  18. package/dist/lib/cjs/array.cjs +169 -0
  19. package/dist/lib/cjs/async-events.cjs +319 -0
  20. package/dist/lib/cjs/async.cjs +469 -0
  21. package/dist/lib/cjs/async.d.cts +326 -0
  22. package/dist/lib/cjs/blob.cjs +204 -0
  23. package/dist/lib/cjs/blob.d.cts +41 -0
  24. package/dist/lib/cjs/codemirror/index.cjs +4 -4
  25. package/dist/lib/cjs/codemirror/index.d.cts +1 -1
  26. package/dist/lib/cjs/codemirror/state-field-spec.cjs +120 -0
  27. package/dist/lib/cjs/css-class.cjs +169 -0
  28. package/dist/lib/cjs/debug-controller.cjs +120 -0
  29. package/dist/lib/cjs/debug.cjs +269 -0
  30. package/dist/lib/cjs/debug.d.cts +47 -0
  31. package/dist/lib/cjs/enum.cjs +140 -0
  32. package/dist/lib/cjs/error.cjs +245 -0
  33. package/dist/lib/cjs/function.cjs +151 -0
  34. package/dist/lib/cjs/html-element.cjs +288 -0
  35. package/dist/lib/cjs/html-element.d.cts +122 -0
  36. package/dist/lib/cjs/index.cjs +69 -69
  37. package/dist/lib/cjs/index.d.cts +22 -22
  38. package/dist/lib/cjs/library.cjs +138 -0
  39. package/dist/lib/cjs/object-utils.cjs +554 -0
  40. package/dist/lib/cjs/object-utils.d.cts +255 -0
  41. package/dist/lib/cjs/obsidian/@types/i18next.d.cts +2 -2
  42. package/dist/lib/cjs/obsidian/app.cjs +171 -0
  43. package/dist/lib/cjs/obsidian/async-with-notice.cjs +200 -0
  44. package/dist/lib/cjs/obsidian/async-with-notice.d.cts +82 -0
  45. package/dist/lib/cjs/obsidian/attachment-path.cjs +234 -0
  46. package/dist/lib/cjs/obsidian/attachment-path.d.cts +181 -0
  47. package/dist/lib/cjs/obsidian/backlink.cjs +206 -0
  48. package/dist/lib/cjs/obsidian/backlink.d.cts +61 -0
  49. package/dist/lib/cjs/obsidian/callout.cjs +203 -0
  50. package/dist/lib/cjs/obsidian/callout.d.cts +61 -0
  51. package/dist/lib/cjs/obsidian/code-block-markdown-information.cjs +120 -0
  52. package/dist/lib/cjs/obsidian/commands/abstract-file-command-base.cjs +436 -0
  53. package/dist/lib/cjs/obsidian/commands/abstract-file-command-base.d.cts +264 -0
  54. package/dist/lib/cjs/obsidian/commands/command-base.cjs +252 -0
  55. package/dist/lib/cjs/obsidian/commands/editor-command-base.cjs +278 -0
  56. package/dist/lib/cjs/obsidian/commands/editor-command-base.d.cts +139 -0
  57. package/dist/lib/cjs/obsidian/commands/file-command-base.cjs +338 -0
  58. package/dist/lib/cjs/obsidian/commands/file-command-base.d.cts +191 -0
  59. package/dist/lib/cjs/obsidian/commands/folder-command-base.cjs +330 -0
  60. package/dist/lib/cjs/obsidian/commands/folder-command-base.d.cts +184 -0
  61. package/dist/lib/cjs/obsidian/commands/index.cjs +157 -0
  62. package/dist/lib/cjs/obsidian/commands/index.d.cts +6 -0
  63. package/dist/lib/cjs/obsidian/commands/non-editor-command-base.cjs +152 -0
  64. package/dist/lib/cjs/obsidian/commands/non-editor-command-base.d.cts +34 -0
  65. package/dist/lib/cjs/obsidian/components/async-events-component.cjs +149 -0
  66. package/dist/lib/cjs/obsidian/components/async-events-component.d.cts +25 -0
  67. package/dist/lib/cjs/obsidian/components/index.cjs +145 -0
  68. package/dist/lib/cjs/obsidian/components/index.d.cts +2 -0
  69. package/dist/lib/cjs/obsidian/components/setting-components/checkbox-component.cjs +205 -0
  70. package/dist/lib/cjs/obsidian/components/setting-components/checkbox-component.d.cts +69 -0
  71. package/dist/lib/cjs/obsidian/components/setting-components/code-highlighter-component.cjs +352 -0
  72. package/dist/lib/cjs/obsidian/components/setting-components/code-highlighter-component.d.cts +118 -0
  73. package/dist/lib/cjs/obsidian/components/setting-components/date-component.cjs +165 -0
  74. package/dist/lib/cjs/obsidian/components/setting-components/date-component.d.cts +37 -0
  75. package/dist/lib/cjs/obsidian/components/setting-components/date-time-component.cjs +165 -0
  76. package/dist/lib/cjs/obsidian/components/setting-components/date-time-component.d.cts +37 -0
  77. package/dist/lib/cjs/obsidian/components/setting-components/email-component.cjs +176 -0
  78. package/dist/lib/cjs/obsidian/components/setting-components/email-component.d.cts +48 -0
  79. package/dist/lib/cjs/obsidian/components/setting-components/file-component.cjs +168 -0
  80. package/dist/lib/cjs/obsidian/components/setting-components/file-component.d.cts +42 -0
  81. package/dist/lib/cjs/obsidian/components/setting-components/index.cjs +217 -0
  82. package/dist/lib/cjs/obsidian/components/setting-components/index.d.cts +26 -0
  83. package/dist/lib/cjs/obsidian/components/setting-components/month-component.cjs +173 -0
  84. package/dist/lib/cjs/obsidian/components/setting-components/month-component.d.cts +50 -0
  85. package/dist/lib/cjs/obsidian/components/setting-components/multiple-dropdown-component.cjs +237 -0
  86. package/dist/lib/cjs/obsidian/components/setting-components/multiple-dropdown-component.d.cts +87 -0
  87. package/dist/lib/cjs/obsidian/components/setting-components/multiple-email-component.cjs +162 -0
  88. package/dist/lib/cjs/obsidian/components/setting-components/multiple-email-component.d.cts +37 -0
  89. package/dist/lib/cjs/obsidian/components/setting-components/multiple-file-component.cjs +170 -0
  90. package/dist/lib/cjs/obsidian/components/setting-components/multiple-file-component.d.cts +42 -0
  91. package/dist/lib/cjs/obsidian/components/setting-components/multiple-text-component.cjs +250 -0
  92. package/dist/lib/cjs/obsidian/components/setting-components/multiple-text-component.d.cts +98 -0
  93. package/dist/lib/cjs/obsidian/components/setting-components/number-component.cjs +186 -0
  94. package/dist/lib/cjs/obsidian/components/setting-components/number-component.d.cts +55 -0
  95. package/dist/lib/cjs/obsidian/components/setting-components/password-component.cjs +162 -0
  96. package/dist/lib/cjs/obsidian/components/setting-components/password-component.d.cts +37 -0
  97. package/dist/lib/cjs/obsidian/components/setting-components/setting-component-wrapper.cjs +149 -0
  98. package/dist/lib/cjs/obsidian/components/setting-components/telephone-component.cjs +176 -0
  99. package/dist/lib/cjs/obsidian/components/setting-components/telephone-component.d.cts +50 -0
  100. package/dist/lib/cjs/obsidian/components/setting-components/text-based-component.cjs +161 -0
  101. package/dist/lib/cjs/obsidian/components/setting-components/time-component.cjs +170 -0
  102. package/dist/lib/cjs/obsidian/components/setting-components/time-component.d.cts +37 -0
  103. package/dist/lib/cjs/obsidian/components/setting-components/tri-state-checkbox-component.cjs +206 -0
  104. package/dist/lib/cjs/obsidian/components/setting-components/tri-state-checkbox-component.d.cts +69 -0
  105. package/dist/lib/cjs/obsidian/components/setting-components/typed-dropdown-component.cjs +243 -0
  106. package/dist/lib/cjs/obsidian/components/setting-components/typed-dropdown-component.d.cts +89 -0
  107. package/dist/lib/cjs/obsidian/components/setting-components/typed-multiple-dropdown-component.cjs +245 -0
  108. package/dist/lib/cjs/obsidian/components/setting-components/typed-multiple-dropdown-component.d.cts +90 -0
  109. package/dist/lib/cjs/obsidian/components/setting-components/typed-range-text-component.cjs +164 -0
  110. package/dist/lib/cjs/obsidian/components/setting-components/typed-range-text-component.d.cts +34 -0
  111. package/dist/lib/cjs/obsidian/components/setting-components/typed-text-component.cjs +220 -0
  112. package/dist/lib/cjs/obsidian/components/setting-components/typed-text-component.d.cts +85 -0
  113. package/dist/lib/cjs/obsidian/components/setting-components/url-component.cjs +176 -0
  114. package/dist/lib/cjs/obsidian/components/setting-components/url-component.d.cts +48 -0
  115. package/dist/lib/cjs/obsidian/components/setting-components/validator-component.cjs +220 -0
  116. package/dist/lib/cjs/obsidian/components/setting-components/validator-component.d.cts +22 -0
  117. package/dist/lib/cjs/obsidian/components/setting-components/value-component-with-change-tracking.cjs +120 -0
  118. package/dist/lib/cjs/obsidian/components/setting-components/week-component.cjs +173 -0
  119. package/dist/lib/cjs/obsidian/components/setting-components/week-component.d.cts +50 -0
  120. package/dist/lib/cjs/obsidian/constructors/getDomEventsHandlersConstructor.cjs +169 -0
  121. package/dist/lib/cjs/obsidian/constructors/getDomEventsHandlersConstructor.d.cts +21 -0
  122. package/dist/lib/cjs/obsidian/constructors/index.cjs +142 -0
  123. package/dist/lib/cjs/obsidian/constructors/index.d.cts +1 -0
  124. package/dist/lib/cjs/obsidian/dataview-link.cjs +144 -0
  125. package/dist/lib/cjs/obsidian/dataview-link.d.cts +24 -0
  126. package/dist/lib/cjs/obsidian/dataview.cjs +353 -0
  127. package/dist/lib/cjs/obsidian/dataview.d.cts +214 -0
  128. package/dist/lib/cjs/obsidian/editor.cjs +162 -0
  129. package/dist/lib/cjs/obsidian/file-change.cjs +473 -0
  130. package/dist/lib/cjs/obsidian/file-change.d.cts +119 -0
  131. package/dist/lib/cjs/obsidian/file-manager.cjs +193 -0
  132. package/dist/lib/cjs/obsidian/file-manager.d.cts +40 -0
  133. package/dist/lib/cjs/obsidian/file-system.cjs +406 -0
  134. package/dist/lib/cjs/obsidian/file-system.d.cts +279 -0
  135. package/dist/lib/cjs/obsidian/frontmatter-link-cache-with-offsets.cjs +151 -0
  136. package/dist/lib/cjs/obsidian/frontmatter.cjs +149 -0
  137. package/dist/lib/cjs/obsidian/frontmatter.d.cts +74 -0
  138. package/dist/lib/cjs/obsidian/i18n/custom-type-options-base.cjs +121 -0
  139. package/dist/lib/cjs/obsidian/i18n/custom-type-options-base.d.cts +37 -0
  140. package/dist/lib/cjs/obsidian/i18n/default-translations-base.cjs +121 -0
  141. package/dist/lib/cjs/obsidian/i18n/default-translations-base.d.cts +25 -0
  142. package/dist/lib/cjs/obsidian/i18n/i18n.cjs +3 -3
  143. package/dist/lib/cjs/obsidian/i18n/i18n.d.cts +1 -1
  144. package/dist/lib/cjs/obsidian/i18n/index.cjs +7 -7
  145. package/dist/lib/cjs/obsidian/i18n/index.d.cts +2 -2
  146. package/dist/lib/cjs/obsidian/i18n/locales/translationsMap.cjs +1 -1
  147. package/dist/lib/cjs/obsidian/i18n/locales/translationsMap.d.cts +1 -1
  148. package/dist/lib/cjs/obsidian/index.cjs +126 -120
  149. package/dist/lib/cjs/obsidian/index.d.cts +41 -39
  150. package/dist/lib/cjs/obsidian/is-in-obsidian.cjs +143 -0
  151. package/dist/lib/cjs/obsidian/is-in-obsidian.d.cts +11 -0
  152. package/dist/lib/cjs/obsidian/link.cjs +887 -0
  153. package/dist/lib/cjs/obsidian/link.d.cts +716 -0
  154. package/dist/lib/cjs/obsidian/logger.cjs +174 -0
  155. package/dist/lib/cjs/obsidian/loop.cjs +225 -0
  156. package/dist/lib/cjs/obsidian/markdown-code-block-processor.cjs +362 -0
  157. package/dist/lib/cjs/obsidian/markdown-code-block-processor.d.cts +107 -0
  158. package/dist/lib/cjs/obsidian/markdown-view.cjs +140 -0
  159. package/dist/lib/cjs/obsidian/markdown.cjs +251 -0
  160. package/dist/lib/cjs/obsidian/markdown.d.cts +79 -0
  161. package/dist/lib/cjs/obsidian/metadata-cache.cjs +367 -0
  162. package/dist/lib/cjs/obsidian/metadata-cache.d.cts +137 -0
  163. package/dist/lib/cjs/obsidian/modals/alert.cjs +166 -0
  164. package/dist/lib/cjs/obsidian/modals/confirm.cjs +175 -0
  165. package/dist/lib/cjs/obsidian/modals/index.cjs +154 -0
  166. package/dist/lib/cjs/obsidian/modals/index.d.cts +5 -0
  167. package/dist/lib/cjs/obsidian/modals/modal-base.cjs +158 -0
  168. package/dist/lib/cjs/obsidian/modals/modal-base.d.cts +42 -0
  169. package/dist/lib/cjs/obsidian/modals/prompt.cjs +210 -0
  170. package/dist/lib/cjs/obsidian/modals/prompt.d.cts +53 -0
  171. package/dist/lib/cjs/obsidian/modals/select-item.cjs +170 -0
  172. package/dist/lib/cjs/obsidian/modals/select-item.d.cts +43 -0
  173. package/dist/lib/cjs/obsidian/monkey-around.cjs +173 -0
  174. package/dist/lib/cjs/obsidian/obsidian-settings.cjs +139 -0
  175. package/dist/lib/cjs/obsidian/pdf.cjs +162 -0
  176. package/dist/lib/cjs/obsidian/plugin/index.cjs +169 -0
  177. package/dist/lib/cjs/obsidian/plugin/index.d.cts +10 -0
  178. package/dist/lib/cjs/obsidian/plugin/obsidian-plugin-repo-paths.cjs +179 -0
  179. package/dist/lib/cjs/obsidian/plugin/obsidian-plugin-repo-paths.d.cts +100 -0
  180. package/dist/lib/cjs/obsidian/plugin/path-settings.cjs +234 -0
  181. package/dist/lib/cjs/obsidian/plugin/path-settings.d.cts +43 -0
  182. package/dist/lib/cjs/obsidian/plugin/plugin-base.cjs +453 -0
  183. package/dist/lib/cjs/obsidian/plugin/plugin-base.d.cts +200 -0
  184. package/dist/lib/cjs/obsidian/plugin/plugin-context.cjs +165 -0
  185. package/dist/lib/cjs/obsidian/plugin/plugin-id.cjs +145 -0
  186. package/dist/lib/cjs/obsidian/plugin/plugin-settings-manager-base.cjs +483 -0
  187. package/dist/lib/cjs/obsidian/plugin/plugin-settings-manager-base.d.cts +186 -0
  188. package/dist/lib/cjs/obsidian/plugin/plugin-settings-tab-base.cjs +401 -0
  189. package/dist/lib/cjs/obsidian/plugin/plugin-settings-tab-base.d.cts +148 -0
  190. package/dist/lib/cjs/obsidian/plugin/plugin-settings-wrapper.cjs +120 -0
  191. package/dist/lib/cjs/obsidian/plugin/plugin-settings-wrapper.d.cts +25 -0
  192. package/dist/lib/cjs/obsidian/plugin/plugin-types-base.cjs +120 -0
  193. package/dist/lib/cjs/obsidian/plugin/plugin-types-base.d.cts +87 -0
  194. package/dist/lib/cjs/obsidian/plugin/plugin.cjs +146 -0
  195. package/dist/lib/cjs/obsidian/queue.cjs +201 -0
  196. package/dist/lib/cjs/obsidian/react/app-context.cjs +140 -0
  197. package/dist/lib/cjs/obsidian/react/index.cjs +142 -0
  198. package/dist/lib/cjs/obsidian/react/index.d.cts +1 -0
  199. package/dist/lib/cjs/obsidian/reference.cjs +177 -0
  200. package/dist/lib/cjs/obsidian/reference.d.cts +82 -0
  201. package/dist/lib/cjs/obsidian/rename-delete-handler.cjs +837 -0
  202. package/dist/lib/cjs/obsidian/resource-url.cjs +140 -0
  203. package/dist/lib/cjs/obsidian/setting-ex.cjs +361 -0
  204. package/dist/lib/cjs/obsidian/setting-ex.d.cts +182 -0
  205. package/dist/lib/cjs/obsidian/setting-group-ex.cjs +154 -0
  206. package/dist/lib/cjs/obsidian/setting-group-ex.d.cts +25 -0
  207. package/dist/lib/cjs/obsidian/validation.cjs +159 -0
  208. package/dist/lib/cjs/obsidian/vault-delete.cjs +171 -0
  209. package/dist/lib/cjs/obsidian/vault-delete.d.cts +18 -0
  210. package/dist/lib/cjs/obsidian/vault.cjs +540 -0
  211. package/dist/lib/cjs/obsidian/vault.d.cts +261 -0
  212. package/dist/lib/cjs/obsidian/workspace.cjs +143 -0
  213. package/dist/lib/cjs/path.cjs +221 -0
  214. package/dist/lib/cjs/reg-exp.cjs +254 -0
  215. package/dist/lib/cjs/script-utils/build.cjs +179 -0
  216. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/changeExtensionPlugin.cjs +164 -0
  217. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/copyToObsidianPluginsFolderPlugin.cjs +197 -0
  218. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/customEsbuildOptionsPlugin.cjs +139 -0
  219. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/dependency.cjs +220 -0
  220. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/fixEsmPlugin.cjs +145 -0
  221. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/fixSourceMapsPlugin.cjs +172 -0
  222. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/index.cjs +169 -0
  223. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/index.d.cts +10 -0
  224. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.cjs +289 -0
  225. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.d.cts +89 -0
  226. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/preprocessPlugin.cjs +298 -0
  227. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/renameCssPlugin.cjs +149 -0
  228. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/svelteWrapperPlugin.cjs +172 -0
  229. package/dist/lib/cjs/script-utils/bundlers/esbuild.cjs +142 -0
  230. package/dist/lib/cjs/script-utils/bundlers/esbuild.d.cts +10 -0
  231. package/dist/lib/cjs/script-utils/bundlers/index.cjs +145 -0
  232. package/dist/lib/cjs/script-utils/bundlers/index.d.cts +2 -0
  233. package/dist/lib/cjs/script-utils/cli-utils.cjs +274 -0
  234. package/dist/lib/cjs/script-utils/cli-utils.d.cts +76 -0
  235. package/dist/lib/cjs/script-utils/code-generator.cjs +139 -0
  236. package/dist/lib/cjs/script-utils/commitlint-config.cjs +134 -0
  237. package/dist/lib/cjs/script-utils/commitlint-config.d.cts +10 -0
  238. package/dist/lib/cjs/script-utils/exec.cjs +303 -0
  239. package/dist/lib/cjs/script-utils/exec.d.cts +113 -0
  240. package/dist/lib/cjs/script-utils/formatters/dprint.cjs +166 -0
  241. package/dist/lib/cjs/script-utils/formatters/dprint.d.cts +25 -0
  242. package/dist/lib/cjs/script-utils/formatters/index.cjs +142 -0
  243. package/dist/lib/cjs/script-utils/formatters/index.d.cts +1 -0
  244. package/dist/lib/cjs/script-utils/fs.cjs +178 -0
  245. package/dist/lib/cjs/script-utils/fs.d.cts +75 -0
  246. package/dist/lib/cjs/script-utils/index.cjs +196 -0
  247. package/dist/lib/cjs/script-utils/index.d.cts +19 -0
  248. package/dist/lib/cjs/script-utils/json.cjs +180 -0
  249. package/dist/lib/cjs/script-utils/json.d.cts +65 -0
  250. package/dist/lib/cjs/script-utils/linters/cspell.cjs +137 -0
  251. package/dist/lib/cjs/script-utils/linters/cspell.d.cts +28 -0
  252. package/dist/lib/cjs/script-utils/linters/eslint-config.cjs +611 -0
  253. package/dist/lib/cjs/script-utils/linters/eslint-rules/index.cjs +142 -0
  254. package/dist/lib/cjs/script-utils/linters/eslint-rules/index.d.cts +1 -0
  255. package/dist/lib/cjs/script-utils/linters/eslint-rules/no-used-underscore-params.cjs +174 -0
  256. package/dist/lib/cjs/script-utils/linters/eslint-rules/no-used-underscore-params.d.cts +12 -0
  257. package/dist/lib/cjs/script-utils/linters/eslint-types/@types/@eslint-community__eslint-plugin-eslint-comments__configs.d.cts +17 -0
  258. package/dist/lib/cjs/script-utils/linters/eslint.cjs +178 -0
  259. package/dist/lib/cjs/script-utils/linters/eslint.d.cts +27 -0
  260. package/dist/lib/cjs/script-utils/linters/index.cjs +157 -0
  261. package/dist/lib/cjs/script-utils/linters/index.d.cts +6 -0
  262. package/dist/lib/cjs/script-utils/linters/markdownlint-cli2-config.cjs +172 -0
  263. package/dist/lib/cjs/script-utils/linters/markdownlint-cli2-config.d.cts +10 -0
  264. package/dist/lib/cjs/script-utils/linters/markdownlint.cjs +209 -0
  265. package/dist/lib/cjs/script-utils/linters/markdownlint.d.cts +24 -0
  266. package/dist/lib/cjs/script-utils/nano-staged-config.cjs +143 -0
  267. package/dist/lib/cjs/script-utils/nano-staged-config.d.cts +14 -0
  268. package/dist/lib/cjs/script-utils/npm-publish.cjs +154 -0
  269. package/dist/lib/cjs/script-utils/npm-run.cjs +151 -0
  270. package/dist/lib/cjs/script-utils/npm.cjs +234 -0
  271. package/dist/lib/cjs/script-utils/npm.d.cts +149 -0
  272. package/dist/lib/cjs/script-utils/obsidian-cli.cjs +139 -0
  273. package/dist/lib/cjs/script-utils/obsidian-cli.d.cts +23 -0
  274. package/dist/lib/cjs/script-utils/obsidian-dev-utils-repo-paths.cjs +179 -0
  275. package/dist/lib/cjs/script-utils/obsidian-dev-utils-repo-paths.d.cts +102 -0
  276. package/dist/lib/cjs/script-utils/root.cjs +184 -0
  277. package/dist/lib/cjs/script-utils/root.d.cts +64 -0
  278. package/dist/lib/cjs/script-utils/test-runners/index.cjs +142 -0
  279. package/dist/lib/cjs/script-utils/test-runners/index.d.cts +1 -0
  280. package/dist/lib/cjs/script-utils/test-runners/vitest.cjs +148 -0
  281. package/dist/lib/cjs/script-utils/test-runners/vitest.d.cts +34 -0
  282. package/dist/lib/cjs/script-utils/version.cjs +468 -0
  283. package/dist/lib/cjs/script-utils/version.d.cts +176 -0
  284. package/dist/lib/cjs/string.cjs +324 -0
  285. package/dist/lib/cjs/string.d.cts +186 -0
  286. package/dist/lib/cjs/transformers/date-transformer.cjs +169 -0
  287. package/dist/lib/cjs/transformers/date-transformer.d.cts +38 -0
  288. package/dist/lib/cjs/transformers/duration-transformer.cjs +171 -0
  289. package/dist/lib/cjs/transformers/duration-transformer.d.cts +38 -0
  290. package/dist/lib/cjs/transformers/group-transformer.cjs +215 -0
  291. package/dist/lib/cjs/transformers/group-transformer.d.cts +69 -0
  292. package/dist/lib/cjs/transformers/index.cjs +166 -0
  293. package/dist/lib/cjs/transformers/index.d.cts +9 -0
  294. package/dist/lib/cjs/transformers/map-transformer.cjs +169 -0
  295. package/dist/lib/cjs/transformers/map-transformer.d.cts +40 -0
  296. package/dist/lib/cjs/transformers/set-transformer.cjs +169 -0
  297. package/dist/lib/cjs/transformers/set-transformer.d.cts +38 -0
  298. package/dist/lib/cjs/transformers/skip-private-property-transformer.cjs +167 -0
  299. package/dist/lib/cjs/transformers/skip-private-property-transformer.d.cts +35 -0
  300. package/dist/lib/cjs/transformers/transformer.cjs +210 -0
  301. package/dist/lib/cjs/transformers/transformer.d.cts +69 -0
  302. package/dist/lib/cjs/transformers/two-way-map-transformer.cjs +170 -0
  303. package/dist/lib/cjs/transformers/two-way-map-transformer.d.cts +41 -0
  304. package/dist/lib/cjs/transformers/typed-transformer.cjs +134 -0
  305. package/dist/lib/cjs/transformers/typed-transformer.d.cts +38 -0
  306. package/dist/lib/cjs/two-way-map.cjs +248 -0
  307. package/dist/lib/cjs/type-guards.cjs +163 -0
  308. package/dist/lib/cjs/type-guards.d.cts +57 -0
  309. package/dist/lib/cjs/type.cjs +142 -0
  310. package/dist/lib/cjs/value-provider.cjs +143 -0
  311. package/dist/lib/esm/abort-controller.mjs +101 -0
  312. package/dist/lib/esm/array.mjs +61 -0
  313. package/dist/lib/esm/async-events.mjs +213 -0
  314. package/dist/lib/esm/async.d.mts +326 -0
  315. package/dist/lib/esm/async.mjs +357 -0
  316. package/dist/lib/esm/blob.d.mts +41 -0
  317. package/dist/lib/esm/blob.mjs +94 -0
  318. package/dist/lib/esm/codemirror/index.d.mts +1 -1
  319. package/dist/lib/esm/codemirror/index.mjs +3 -3
  320. package/dist/lib/esm/css-class.mjs +63 -0
  321. package/dist/lib/esm/debug.d.mts +47 -0
  322. package/dist/lib/esm/debug.mjs +151 -0
  323. package/dist/lib/esm/enum.mjs +33 -0
  324. package/dist/lib/esm/error.mjs +131 -0
  325. package/dist/lib/esm/function.mjs +42 -0
  326. package/dist/lib/esm/html-element.d.mts +122 -0
  327. package/dist/lib/esm/html-element.mjs +171 -0
  328. package/dist/lib/esm/index.d.mts +22 -22
  329. package/dist/lib/esm/index.mjs +46 -46
  330. package/dist/lib/esm/library.mjs +30 -0
  331. package/dist/lib/esm/object-utils.d.mts +255 -0
  332. package/dist/lib/esm/object-utils.mjs +436 -0
  333. package/dist/lib/esm/obsidian/@types/i18next.d.mts +2 -2
  334. package/dist/lib/esm/obsidian/app.mjs +63 -0
  335. package/dist/lib/esm/obsidian/async-with-notice.d.mts +82 -0
  336. package/dist/lib/esm/obsidian/async-with-notice.mjs +96 -0
  337. package/dist/lib/esm/obsidian/attachment-path.d.mts +181 -0
  338. package/dist/lib/esm/obsidian/attachment-path.mjs +139 -0
  339. package/dist/lib/esm/obsidian/backlink.d.mts +61 -0
  340. package/dist/lib/esm/obsidian/backlink.mjs +103 -0
  341. package/dist/lib/esm/obsidian/callout.d.mts +61 -0
  342. package/dist/lib/esm/obsidian/callout.mjs +95 -0
  343. package/dist/lib/esm/obsidian/commands/abstract-file-command-base.d.mts +264 -0
  344. package/dist/lib/esm/obsidian/commands/abstract-file-command-base.mjs +326 -0
  345. package/dist/lib/esm/obsidian/commands/command-base.mjs +145 -0
  346. package/dist/lib/esm/obsidian/commands/editor-command-base.d.mts +139 -0
  347. package/dist/lib/esm/obsidian/commands/editor-command-base.mjs +174 -0
  348. package/dist/lib/esm/obsidian/commands/file-command-base.d.mts +191 -0
  349. package/dist/lib/esm/obsidian/commands/file-command-base.mjs +237 -0
  350. package/dist/lib/esm/obsidian/commands/folder-command-base.d.mts +184 -0
  351. package/dist/lib/esm/obsidian/commands/folder-command-base.mjs +229 -0
  352. package/dist/lib/esm/obsidian/commands/index.d.mts +6 -0
  353. package/dist/lib/esm/obsidian/commands/index.mjs +36 -0
  354. package/dist/lib/esm/obsidian/commands/non-editor-command-base.d.mts +34 -0
  355. package/dist/lib/esm/obsidian/commands/non-editor-command-base.mjs +46 -0
  356. package/dist/lib/esm/obsidian/components/async-events-component.d.mts +25 -0
  357. package/dist/lib/esm/obsidian/components/async-events-component.mjs +42 -0
  358. package/dist/lib/esm/obsidian/components/index.d.mts +2 -0
  359. package/dist/lib/esm/obsidian/components/index.mjs +28 -0
  360. package/dist/lib/esm/obsidian/components/setting-components/checkbox-component.d.mts +69 -0
  361. package/dist/lib/esm/obsidian/components/setting-components/checkbox-component.mjs +99 -0
  362. package/dist/lib/esm/obsidian/components/setting-components/code-highlighter-component.d.mts +118 -0
  363. package/dist/lib/esm/obsidian/components/setting-components/code-highlighter-component.mjs +252 -0
  364. package/dist/lib/esm/obsidian/components/setting-components/date-component.d.mts +37 -0
  365. package/dist/lib/esm/obsidian/components/setting-components/date-component.mjs +59 -0
  366. package/dist/lib/esm/obsidian/components/setting-components/date-time-component.d.mts +37 -0
  367. package/dist/lib/esm/obsidian/components/setting-components/date-time-component.mjs +59 -0
  368. package/dist/lib/esm/obsidian/components/setting-components/email-component.d.mts +48 -0
  369. package/dist/lib/esm/obsidian/components/setting-components/email-component.mjs +70 -0
  370. package/dist/lib/esm/obsidian/components/setting-components/file-component.d.mts +42 -0
  371. package/dist/lib/esm/obsidian/components/setting-components/file-component.mjs +62 -0
  372. package/dist/lib/esm/obsidian/components/setting-components/index.d.mts +26 -0
  373. package/dist/lib/esm/obsidian/components/setting-components/index.mjs +76 -0
  374. package/dist/lib/esm/obsidian/components/setting-components/month-component.d.mts +50 -0
  375. package/dist/lib/esm/obsidian/components/setting-components/month-component.mjs +67 -0
  376. package/dist/lib/esm/obsidian/components/setting-components/multiple-dropdown-component.d.mts +87 -0
  377. package/dist/lib/esm/obsidian/components/setting-components/multiple-dropdown-component.mjs +134 -0
  378. package/dist/lib/esm/obsidian/components/setting-components/multiple-email-component.d.mts +37 -0
  379. package/dist/lib/esm/obsidian/components/setting-components/multiple-email-component.mjs +56 -0
  380. package/dist/lib/esm/obsidian/components/setting-components/multiple-file-component.d.mts +42 -0
  381. package/dist/lib/esm/obsidian/components/setting-components/multiple-file-component.mjs +64 -0
  382. package/dist/lib/esm/obsidian/components/setting-components/multiple-text-component.d.mts +98 -0
  383. package/dist/lib/esm/obsidian/components/setting-components/multiple-text-component.mjs +147 -0
  384. package/dist/lib/esm/obsidian/components/setting-components/number-component.d.mts +55 -0
  385. package/dist/lib/esm/obsidian/components/setting-components/number-component.mjs +80 -0
  386. package/dist/lib/esm/obsidian/components/setting-components/password-component.d.mts +37 -0
  387. package/dist/lib/esm/obsidian/components/setting-components/password-component.mjs +56 -0
  388. package/dist/lib/esm/obsidian/components/setting-components/setting-component-wrapper.mjs +43 -0
  389. package/dist/lib/esm/obsidian/components/setting-components/telephone-component.d.mts +50 -0
  390. package/dist/lib/esm/obsidian/components/setting-components/telephone-component.mjs +70 -0
  391. package/dist/lib/esm/obsidian/components/setting-components/text-based-component.mjs +55 -0
  392. package/dist/lib/esm/obsidian/components/setting-components/time-component.d.mts +37 -0
  393. package/dist/lib/esm/obsidian/components/setting-components/time-component.mjs +64 -0
  394. package/dist/lib/esm/obsidian/components/setting-components/tri-state-checkbox-component.d.mts +69 -0
  395. package/dist/lib/esm/obsidian/components/setting-components/tri-state-checkbox-component.mjs +100 -0
  396. package/dist/lib/esm/obsidian/components/setting-components/typed-dropdown-component.d.mts +89 -0
  397. package/dist/lib/esm/obsidian/components/setting-components/typed-dropdown-component.mjs +140 -0
  398. package/dist/lib/esm/obsidian/components/setting-components/typed-multiple-dropdown-component.d.mts +90 -0
  399. package/dist/lib/esm/obsidian/components/setting-components/typed-multiple-dropdown-component.mjs +139 -0
  400. package/dist/lib/esm/obsidian/components/setting-components/typed-range-text-component.d.mts +34 -0
  401. package/dist/lib/esm/obsidian/components/setting-components/typed-range-text-component.mjs +58 -0
  402. package/dist/lib/esm/obsidian/components/setting-components/typed-text-component.d.mts +85 -0
  403. package/dist/lib/esm/obsidian/components/setting-components/typed-text-component.mjs +117 -0
  404. package/dist/lib/esm/obsidian/components/setting-components/url-component.d.mts +48 -0
  405. package/dist/lib/esm/obsidian/components/setting-components/url-component.mjs +70 -0
  406. package/dist/lib/esm/obsidian/components/setting-components/validator-component.d.mts +22 -0
  407. package/dist/lib/esm/obsidian/components/setting-components/validator-component.mjs +123 -0
  408. package/dist/lib/esm/obsidian/components/setting-components/week-component.d.mts +50 -0
  409. package/dist/lib/esm/obsidian/components/setting-components/week-component.mjs +67 -0
  410. package/dist/lib/esm/obsidian/constructors/getDomEventsHandlersConstructor.d.mts +21 -0
  411. package/dist/lib/esm/obsidian/constructors/getDomEventsHandlersConstructor.mjs +63 -0
  412. package/dist/lib/esm/obsidian/constructors/index.d.mts +1 -0
  413. package/dist/lib/esm/obsidian/constructors/index.mjs +26 -0
  414. package/dist/lib/esm/obsidian/dataview-link.d.mts +24 -0
  415. package/dist/lib/esm/obsidian/dataview-link.mjs +41 -0
  416. package/dist/lib/esm/obsidian/dataview.d.mts +214 -0
  417. package/dist/lib/esm/obsidian/dataview.mjs +245 -0
  418. package/dist/lib/esm/obsidian/editor.mjs +58 -0
  419. package/dist/lib/esm/obsidian/file-change.d.mts +119 -0
  420. package/dist/lib/esm/obsidian/file-change.mjs +378 -0
  421. package/dist/lib/esm/obsidian/file-manager.d.mts +40 -0
  422. package/dist/lib/esm/obsidian/file-manager.mjs +92 -0
  423. package/dist/lib/esm/obsidian/file-system.d.mts +279 -0
  424. package/dist/lib/esm/obsidian/file-system.mjs +284 -0
  425. package/dist/lib/esm/obsidian/frontmatter-link-cache-with-offsets.mjs +44 -0
  426. package/dist/lib/esm/obsidian/frontmatter.d.mts +74 -0
  427. package/dist/lib/esm/obsidian/frontmatter.mjs +46 -0
  428. package/dist/lib/esm/obsidian/i18n/custom-type-options-base.d.mts +37 -0
  429. package/dist/lib/esm/obsidian/i18n/custom-type-options-base.mjs +23 -0
  430. package/dist/lib/esm/obsidian/i18n/default-translations-base.d.mts +25 -0
  431. package/dist/lib/esm/obsidian/i18n/default-translations-base.mjs +23 -0
  432. package/dist/lib/esm/obsidian/i18n/i18n.d.mts +1 -1
  433. package/dist/lib/esm/obsidian/i18n/i18n.mjs +2 -2
  434. package/dist/lib/esm/obsidian/i18n/index.d.mts +2 -2
  435. package/dist/lib/esm/obsidian/i18n/index.mjs +5 -5
  436. package/dist/lib/esm/obsidian/i18n/locales/translationsMap.d.mts +1 -1
  437. package/dist/lib/esm/obsidian/i18n/locales/translationsMap.mjs +1 -1
  438. package/dist/lib/esm/obsidian/index.d.mts +41 -39
  439. package/dist/lib/esm/obsidian/index.mjs +84 -80
  440. package/dist/lib/esm/obsidian/is-in-obsidian.d.mts +11 -0
  441. package/dist/lib/esm/obsidian/is-in-obsidian.mjs +39 -0
  442. package/dist/lib/esm/obsidian/link.d.mts +716 -0
  443. package/dist/lib/esm/obsidian/link.mjs +786 -0
  444. package/dist/lib/esm/obsidian/logger.mjs +71 -0
  445. package/dist/lib/esm/obsidian/loop.mjs +127 -0
  446. package/dist/lib/esm/obsidian/markdown-code-block-processor.d.mts +107 -0
  447. package/dist/lib/esm/obsidian/markdown-code-block-processor.mjs +262 -0
  448. package/dist/lib/esm/obsidian/markdown-view.mjs +34 -0
  449. package/dist/lib/esm/obsidian/markdown.d.mts +79 -0
  450. package/dist/lib/esm/obsidian/markdown.mjs +150 -0
  451. package/dist/lib/esm/obsidian/metadata-cache.d.mts +137 -0
  452. package/dist/lib/esm/obsidian/metadata-cache.mjs +266 -0
  453. package/dist/lib/esm/obsidian/modals/alert.mjs +63 -0
  454. package/dist/lib/esm/obsidian/modals/confirm.mjs +72 -0
  455. package/dist/lib/esm/obsidian/modals/index.d.mts +5 -0
  456. package/dist/lib/esm/obsidian/modals/index.mjs +34 -0
  457. package/dist/lib/esm/obsidian/modals/modal-base.d.mts +42 -0
  458. package/dist/lib/esm/obsidian/modals/modal-base.mjs +51 -0
  459. package/dist/lib/esm/obsidian/modals/prompt.d.mts +53 -0
  460. package/dist/lib/esm/obsidian/modals/prompt.mjs +113 -0
  461. package/dist/lib/esm/obsidian/modals/select-item.d.mts +43 -0
  462. package/dist/lib/esm/obsidian/modals/select-item.mjs +64 -0
  463. package/dist/lib/esm/obsidian/monkey-around.mjs +64 -0
  464. package/dist/lib/esm/obsidian/obsidian-settings.mjs +32 -0
  465. package/dist/lib/esm/obsidian/pdf.mjs +56 -0
  466. package/dist/lib/esm/obsidian/plugin/index.d.mts +10 -0
  467. package/dist/lib/esm/obsidian/plugin/index.mjs +44 -0
  468. package/dist/lib/esm/obsidian/plugin/obsidian-plugin-repo-paths.d.mts +100 -0
  469. package/dist/lib/esm/obsidian/plugin/obsidian-plugin-repo-paths.mjs +73 -0
  470. package/dist/lib/esm/obsidian/plugin/path-settings.d.mts +43 -0
  471. package/dist/lib/esm/obsidian/plugin/path-settings.mjs +132 -0
  472. package/dist/lib/esm/obsidian/plugin/plugin-base.d.mts +200 -0
  473. package/dist/lib/esm/obsidian/plugin/plugin-base.mjs +363 -0
  474. package/dist/lib/esm/obsidian/plugin/plugin-context.mjs +67 -0
  475. package/dist/lib/esm/obsidian/plugin/plugin-id.mjs +37 -0
  476. package/dist/lib/esm/obsidian/plugin/plugin-settings-manager-base.d.mts +186 -0
  477. package/dist/lib/esm/obsidian/plugin/plugin-settings-manager-base.mjs +384 -0
  478. package/dist/lib/esm/obsidian/plugin/plugin-settings-tab-base.d.mts +148 -0
  479. package/dist/lib/esm/obsidian/plugin/plugin-settings-tab-base.mjs +304 -0
  480. package/dist/lib/esm/obsidian/plugin/plugin-settings-wrapper.d.mts +25 -0
  481. package/dist/lib/esm/obsidian/plugin/plugin-types-base.d.mts +87 -0
  482. package/dist/lib/esm/obsidian/plugin/plugin.mjs +39 -0
  483. package/dist/lib/esm/obsidian/queue.mjs +99 -0
  484. package/dist/lib/esm/obsidian/react/app-context.mjs +36 -0
  485. package/dist/lib/esm/obsidian/react/index.d.mts +1 -0
  486. package/dist/lib/esm/obsidian/react/index.mjs +26 -0
  487. package/dist/lib/esm/obsidian/reference.d.mts +82 -0
  488. package/dist/lib/esm/obsidian/reference.mjs +70 -0
  489. package/dist/lib/esm/obsidian/rename-delete-handler.mjs +777 -0
  490. package/dist/lib/esm/obsidian/resource-url.mjs +34 -0
  491. package/dist/lib/esm/obsidian/setting-ex.d.mts +182 -0
  492. package/dist/lib/esm/obsidian/setting-ex.mjs +258 -0
  493. package/dist/lib/esm/obsidian/setting-group-ex.d.mts +25 -0
  494. package/dist/lib/esm/obsidian/setting-group-ex.mjs +48 -0
  495. package/dist/lib/esm/obsidian/validation.mjs +48 -0
  496. package/dist/lib/esm/obsidian/vault-delete.d.mts +18 -0
  497. package/dist/lib/esm/obsidian/vault-delete.mjs +73 -0
  498. package/dist/lib/esm/obsidian/vault.d.mts +261 -0
  499. package/dist/lib/esm/obsidian/vault.mjs +441 -0
  500. package/dist/lib/esm/obsidian/workspace.mjs +36 -0
  501. package/dist/lib/esm/path.mjs +90 -0
  502. package/dist/lib/esm/reg-exp.mjs +143 -0
  503. package/dist/lib/esm/script-utils/build.mjs +76 -0
  504. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/changeExtensionPlugin.mjs +58 -0
  505. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/copyToObsidianPluginsFolderPlugin.mjs +99 -0
  506. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/customEsbuildOptionsPlugin.mjs +33 -0
  507. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/dependency.mjs +109 -0
  508. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/fixEsmPlugin.mjs +39 -0
  509. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/fixSourceMapsPlugin.mjs +69 -0
  510. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/index.d.mts +10 -0
  511. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/index.mjs +44 -0
  512. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.d.mts +89 -0
  513. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.mjs +173 -0
  514. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/preprocessPlugin.mjs +185 -0
  515. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/renameCssPlugin.mjs +43 -0
  516. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/svelteWrapperPlugin.mjs +56 -0
  517. package/dist/lib/esm/script-utils/bundlers/esbuild.d.mts +10 -0
  518. package/dist/lib/esm/script-utils/bundlers/esbuild.mjs +38 -0
  519. package/dist/lib/esm/script-utils/bundlers/index.d.mts +2 -0
  520. package/dist/lib/esm/script-utils/bundlers/index.mjs +28 -0
  521. package/dist/lib/esm/script-utils/cli-utils.d.mts +76 -0
  522. package/dist/lib/esm/script-utils/cli-utils.mjs +156 -0
  523. package/dist/lib/esm/script-utils/code-generator.mjs +33 -0
  524. package/dist/lib/esm/script-utils/commitlint-config.d.mts +10 -0
  525. package/dist/lib/esm/script-utils/commitlint-config.mjs +28 -0
  526. package/dist/lib/esm/script-utils/exec.d.mts +113 -0
  527. package/dist/lib/esm/script-utils/exec.mjs +187 -0
  528. package/dist/lib/esm/script-utils/formatters/dprint.d.mts +25 -0
  529. package/dist/lib/esm/script-utils/formatters/dprint.mjs +54 -0
  530. package/dist/lib/esm/script-utils/formatters/index.d.mts +1 -0
  531. package/dist/lib/esm/script-utils/formatters/index.mjs +26 -0
  532. package/dist/lib/esm/script-utils/fs.d.mts +75 -0
  533. package/dist/lib/esm/script-utils/fs.mjs +75 -0
  534. package/dist/lib/esm/script-utils/index.d.mts +19 -0
  535. package/dist/lib/esm/script-utils/index.mjs +62 -0
  536. package/dist/lib/esm/script-utils/json.d.mts +65 -0
  537. package/dist/lib/esm/script-utils/json.mjs +76 -0
  538. package/dist/lib/esm/script-utils/linters/cspell.d.mts +28 -0
  539. package/dist/lib/esm/script-utils/linters/cspell.mjs +31 -0
  540. package/dist/lib/esm/script-utils/linters/eslint-config.mjs +497 -0
  541. package/dist/lib/esm/script-utils/linters/eslint-rules/index.d.mts +1 -0
  542. package/dist/lib/esm/script-utils/linters/eslint-rules/index.mjs +26 -0
  543. package/dist/lib/esm/script-utils/linters/eslint-rules/no-used-underscore-params.d.mts +12 -0
  544. package/dist/lib/esm/script-utils/linters/eslint-rules/no-used-underscore-params.mjs +68 -0
  545. package/dist/lib/esm/script-utils/linters/eslint-types/@types/@eslint-community__eslint-plugin-eslint-comments__configs.d.mts +17 -0
  546. package/dist/lib/esm/script-utils/linters/eslint.d.mts +27 -0
  547. package/dist/lib/esm/script-utils/linters/eslint.mjs +66 -0
  548. package/dist/lib/esm/script-utils/linters/index.d.mts +6 -0
  549. package/dist/lib/esm/script-utils/linters/index.mjs +36 -0
  550. package/dist/lib/esm/script-utils/linters/markdownlint-cli2-config.d.mts +10 -0
  551. package/dist/lib/esm/script-utils/linters/markdownlint-cli2-config.mjs +56 -0
  552. package/dist/lib/esm/script-utils/linters/markdownlint.d.mts +24 -0
  553. package/dist/lib/esm/script-utils/linters/markdownlint.mjs +100 -0
  554. package/dist/lib/esm/script-utils/nano-staged-config.d.mts +14 -0
  555. package/dist/lib/esm/script-utils/nano-staged-config.mjs +37 -0
  556. package/dist/lib/esm/script-utils/npm-publish.mjs +41 -0
  557. package/dist/lib/esm/script-utils/npm-run.mjs +44 -0
  558. package/dist/lib/esm/script-utils/npm.d.mts +149 -0
  559. package/dist/lib/esm/script-utils/npm.mjs +120 -0
  560. package/dist/lib/esm/script-utils/obsidian-cli.d.mts +23 -0
  561. package/dist/lib/esm/script-utils/obsidian-cli.mjs +33 -0
  562. package/dist/lib/esm/script-utils/obsidian-dev-utils-repo-paths.d.mts +102 -0
  563. package/dist/lib/esm/script-utils/obsidian-dev-utils-repo-paths.mjs +73 -0
  564. package/dist/lib/esm/script-utils/root.d.mts +64 -0
  565. package/dist/lib/esm/script-utils/root.mjs +80 -0
  566. package/dist/lib/esm/script-utils/test-runners/index.d.mts +1 -0
  567. package/dist/lib/esm/script-utils/test-runners/index.mjs +26 -0
  568. package/dist/lib/esm/script-utils/test-runners/vitest.d.mts +34 -0
  569. package/dist/lib/esm/script-utils/test-runners/vitest.mjs +40 -0
  570. package/dist/lib/esm/script-utils/version.d.mts +176 -0
  571. package/dist/lib/esm/script-utils/version.mjs +369 -0
  572. package/dist/lib/esm/string.d.mts +186 -0
  573. package/dist/lib/esm/string.mjs +205 -0
  574. package/dist/lib/esm/transformers/date-transformer.d.mts +38 -0
  575. package/dist/lib/esm/transformers/date-transformer.mjs +63 -0
  576. package/dist/lib/esm/transformers/duration-transformer.d.mts +38 -0
  577. package/dist/lib/esm/transformers/duration-transformer.mjs +65 -0
  578. package/dist/lib/esm/transformers/group-transformer.d.mts +69 -0
  579. package/dist/lib/esm/transformers/group-transformer.mjs +112 -0
  580. package/dist/lib/esm/transformers/index.d.mts +9 -0
  581. package/dist/lib/esm/transformers/index.mjs +42 -0
  582. package/dist/lib/esm/transformers/map-transformer.d.mts +40 -0
  583. package/dist/lib/esm/transformers/map-transformer.mjs +63 -0
  584. package/dist/lib/esm/transformers/set-transformer.d.mts +38 -0
  585. package/dist/lib/esm/transformers/set-transformer.mjs +63 -0
  586. package/dist/lib/esm/transformers/skip-private-property-transformer.d.mts +35 -0
  587. package/dist/lib/esm/transformers/skip-private-property-transformer.mjs +61 -0
  588. package/dist/lib/esm/transformers/transformer.d.mts +69 -0
  589. package/dist/lib/esm/transformers/transformer.mjs +104 -0
  590. package/dist/lib/esm/transformers/two-way-map-transformer.d.mts +41 -0
  591. package/dist/lib/esm/transformers/two-way-map-transformer.mjs +64 -0
  592. package/dist/lib/esm/transformers/typed-transformer.d.mts +38 -0
  593. package/dist/lib/esm/transformers/typed-transformer.mjs +28 -0
  594. package/dist/lib/esm/two-way-map.mjs +142 -0
  595. package/dist/lib/esm/type-guards.d.mts +57 -0
  596. package/dist/lib/esm/type-guards.mjs +53 -0
  597. package/dist/lib/esm/type.mjs +36 -0
  598. package/dist/lib/esm/value-provider.mjs +37 -0
  599. package/dist/scripts/build/build-clean.ts +4 -0
  600. package/dist/scripts/build/build-compile-svelte.ts +4 -0
  601. package/dist/scripts/build/build-compile-typescript.ts +4 -0
  602. package/dist/scripts/build/build-compile.ts +4 -0
  603. package/dist/scripts/build/build-static.ts +4 -0
  604. package/dist/scripts/bundlers/esbuild/build.ts +4 -0
  605. package/dist/scripts/bundlers/esbuild/dev.ts +4 -0
  606. package/dist/scripts/formatters/dprint/format-check.ts +8 -0
  607. package/dist/scripts/formatters/dprint/format.ts +8 -0
  608. package/dist/scripts/linters/cspell/spellcheck.ts +8 -0
  609. package/dist/scripts/linters/eslint/lint-fix.ts +8 -0
  610. package/dist/scripts/linters/eslint/lint.ts +8 -0
  611. package/dist/scripts/linters/markdownlint/lint-md-fix.ts +8 -0
  612. package/dist/scripts/linters/markdownlint/lint-md.ts +8 -0
  613. package/dist/scripts/test-runners/vitest/test-coverage.ts +4 -0
  614. package/dist/scripts/test-runners/vitest/test-watch.ts +4 -0
  615. package/dist/scripts/test-runners/vitest/test.ts +4 -0
  616. package/dist/scripts/version/version.ts +7 -0
  617. package/obsidian/@types/Dataview/api/data-array/package.json +1 -1
  618. package/obsidian/@types/Dataview/api/extensions/package.json +1 -1
  619. package/obsidian/@types/Dataview/api/inline-api/package.json +1 -1
  620. package/obsidian/@types/Dataview/api/plugin-api/package.json +1 -1
  621. package/obsidian/@types/Dataview/api/result/package.json +1 -1
  622. package/obsidian/@types/Dataview/data-import/common/package.json +1 -1
  623. package/obsidian/@types/Dataview/data-import/csv/package.json +1 -1
  624. package/obsidian/@types/Dataview/data-import/inline-field/package.json +1 -1
  625. package/obsidian/@types/Dataview/data-import/markdown-file/package.json +1 -1
  626. package/obsidian/@types/Dataview/data-import/persister/package.json +1 -1
  627. package/obsidian/@types/Dataview/data-import/web-worker/import-entry/package.json +1 -1
  628. package/obsidian/@types/Dataview/data-import/web-worker/import-impl/package.json +1 -1
  629. package/obsidian/@types/Dataview/data-import/web-worker/import-manager/package.json +1 -1
  630. package/obsidian/@types/Dataview/data-index/index/package.json +1 -1
  631. package/obsidian/@types/Dataview/data-index/package.json +1 -1
  632. package/obsidian/@types/Dataview/data-index/resolver/package.json +1 -1
  633. package/obsidian/@types/Dataview/data-index/source/package.json +1 -1
  634. package/obsidian/@types/Dataview/data-model/markdown/package.json +1 -1
  635. package/obsidian/@types/Dataview/data-model/serialized/markdown/package.json +1 -1
  636. package/obsidian/@types/Dataview/data-model/transferable/package.json +1 -1
  637. package/obsidian/@types/Dataview/data-model/value/package.json +1 -1
  638. package/obsidian/@types/Dataview/expression/binaryop/package.json +1 -1
  639. package/obsidian/@types/Dataview/expression/context/package.json +1 -1
  640. package/obsidian/@types/Dataview/expression/field/package.json +1 -1
  641. package/obsidian/@types/Dataview/expression/functions/package.json +1 -1
  642. package/obsidian/@types/Dataview/expression/parse/package.json +1 -1
  643. package/obsidian/@types/Dataview/index/package.json +1 -1
  644. package/obsidian/@types/Dataview/main/package.json +1 -1
  645. package/obsidian/@types/Dataview/package.json +1 -1
  646. package/obsidian/@types/Dataview/query/engine/package.json +1 -1
  647. package/obsidian/@types/Dataview/query/parse/package.json +1 -1
  648. package/obsidian/@types/Dataview/query/query/package.json +1 -1
  649. package/obsidian/@types/Dataview/settings/package.json +1 -1
  650. package/obsidian/@types/Dataview/typings/obsidian-ex/package.json +1 -1
  651. package/obsidian/@types/Dataview/typings/workers/package.json +1 -1
  652. package/obsidian/@types/Dataview/ui/export/markdown/package.json +1 -1
  653. package/obsidian/@types/Dataview/ui/lp-render/package.json +1 -1
  654. package/obsidian/@types/Dataview/ui/markdown/package.json +1 -1
  655. package/obsidian/@types/Dataview/ui/refreshable-view/package.json +1 -1
  656. package/obsidian/@types/Dataview/ui/render/package.json +1 -1
  657. package/obsidian/@types/Dataview/ui/views/calendar-view/package.json +1 -1
  658. package/obsidian/@types/Dataview/ui/views/inline-field-live-preview/package.json +1 -1
  659. package/obsidian/@types/Dataview/ui/views/inline-view/package.json +1 -1
  660. package/obsidian/@types/Dataview/ui/views/js-view/package.json +1 -1
  661. package/obsidian/@types/Dataview/ui/views/list-view/package.json +1 -1
  662. package/obsidian/@types/Dataview/ui/views/table-view/package.json +1 -1
  663. package/obsidian/@types/Dataview/ui/views/task-view/package.json +1 -1
  664. package/obsidian/@types/Dataview/util/hash/package.json +1 -1
  665. package/obsidian/@types/Dataview/util/locale/package.json +1 -1
  666. package/obsidian/@types/Dataview/util/media/package.json +1 -1
  667. package/obsidian/@types/Dataview/util/normalize/package.json +1 -1
  668. package/obsidian/App/package.json +3 -3
  669. package/obsidian/Backlink/package.json +3 -3
  670. package/obsidian/Callout/package.json +3 -3
  671. package/obsidian/Commands/abstract-file-command-base/package.json +6 -0
  672. package/obsidian/Commands/command-base/package.json +6 -0
  673. package/obsidian/Commands/editor-command-base/package.json +6 -0
  674. package/obsidian/Commands/file-command-base/package.json +6 -0
  675. package/obsidian/Commands/folder-command-base/package.json +6 -0
  676. package/obsidian/Commands/index/package.json +3 -3
  677. package/obsidian/Commands/non-editor-command-base/package.json +6 -0
  678. package/obsidian/Commands/package.json +3 -3
  679. package/obsidian/Components/async-events-component/package.json +6 -0
  680. package/obsidian/Components/index/package.json +3 -3
  681. package/obsidian/Components/package.json +3 -3
  682. package/obsidian/Components/setting-components/checkbox-component/package.json +6 -0
  683. package/obsidian/Components/setting-components/code-highlighter-component/package.json +6 -0
  684. package/obsidian/Components/setting-components/date-component/package.json +6 -0
  685. package/obsidian/Components/setting-components/date-time-component/package.json +6 -0
  686. package/obsidian/Components/setting-components/email-component/package.json +6 -0
  687. package/obsidian/Components/setting-components/file-component/package.json +6 -0
  688. package/obsidian/Components/setting-components/index/package.json +6 -0
  689. package/obsidian/Components/setting-components/month-component/package.json +6 -0
  690. package/obsidian/Components/setting-components/multiple-dropdown-component/package.json +6 -0
  691. package/obsidian/Components/setting-components/multiple-email-component/package.json +6 -0
  692. package/obsidian/Components/setting-components/multiple-file-component/package.json +6 -0
  693. package/obsidian/Components/setting-components/multiple-text-component/package.json +6 -0
  694. package/obsidian/Components/setting-components/number-component/package.json +6 -0
  695. package/obsidian/Components/setting-components/package.json +6 -0
  696. package/obsidian/Components/setting-components/password-component/package.json +6 -0
  697. package/obsidian/Components/setting-components/setting-component-wrapper/package.json +6 -0
  698. package/obsidian/Components/setting-components/telephone-component/package.json +6 -0
  699. package/obsidian/Components/setting-components/text-based-component/package.json +6 -0
  700. package/obsidian/Components/setting-components/time-component/package.json +6 -0
  701. package/obsidian/Components/setting-components/tri-state-checkbox-component/package.json +6 -0
  702. package/obsidian/Components/setting-components/typed-dropdown-component/package.json +6 -0
  703. package/obsidian/Components/setting-components/typed-multiple-dropdown-component/package.json +6 -0
  704. package/obsidian/Components/setting-components/typed-range-text-component/package.json +6 -0
  705. package/obsidian/Components/setting-components/typed-text-component/package.json +6 -0
  706. package/obsidian/Components/setting-components/url-component/package.json +6 -0
  707. package/obsidian/Components/setting-components/validator-component/package.json +6 -0
  708. package/obsidian/Components/setting-components/value-component-with-change-tracking/package.json +6 -0
  709. package/obsidian/Components/setting-components/week-component/package.json +6 -0
  710. package/obsidian/Dataview/package.json +3 -3
  711. package/obsidian/Editor/package.json +3 -3
  712. package/obsidian/Frontmatter/package.json +3 -3
  713. package/obsidian/Link/package.json +3 -3
  714. package/obsidian/Logger/package.json +3 -3
  715. package/obsidian/Loop/package.json +3 -3
  716. package/obsidian/Markdown/package.json +3 -3
  717. package/obsidian/Modals/Alert/package.json +3 -3
  718. package/obsidian/Modals/Confirm/package.json +3 -3
  719. package/obsidian/Modals/Prompt/package.json +3 -3
  720. package/obsidian/Modals/index/package.json +3 -3
  721. package/obsidian/Modals/modal-base/package.json +6 -0
  722. package/obsidian/Modals/package.json +3 -3
  723. package/obsidian/Modals/select-item/package.json +6 -0
  724. package/obsidian/Pdf/package.json +3 -3
  725. package/obsidian/Plugin/Plugin/package.json +3 -3
  726. package/obsidian/Plugin/index/package.json +3 -3
  727. package/obsidian/Plugin/obsidian-plugin-repo-paths/package.json +6 -0
  728. package/obsidian/Plugin/package.json +3 -3
  729. package/obsidian/Plugin/path-settings/package.json +6 -0
  730. package/obsidian/Plugin/plugin-base/package.json +6 -0
  731. package/obsidian/Plugin/plugin-context/package.json +6 -0
  732. package/obsidian/Plugin/plugin-id/package.json +6 -0
  733. package/obsidian/Plugin/plugin-settings-manager-base/package.json +6 -0
  734. package/obsidian/Plugin/plugin-settings-tab-base/package.json +6 -0
  735. package/obsidian/Plugin/plugin-settings-wrapper/package.json +6 -0
  736. package/obsidian/Plugin/plugin-types-base/package.json +6 -0
  737. package/obsidian/Queue/package.json +3 -3
  738. package/obsidian/React/app-context/package.json +6 -0
  739. package/obsidian/React/index/package.json +3 -3
  740. package/obsidian/React/package.json +3 -3
  741. package/obsidian/Reference/package.json +3 -3
  742. package/obsidian/Validation/package.json +3 -3
  743. package/obsidian/Vault/package.json +3 -3
  744. package/obsidian/Workspace/package.json +3 -3
  745. package/obsidian/async-with-notice/package.json +6 -0
  746. package/obsidian/attachment-path/package.json +6 -0
  747. package/obsidian/code-block-markdown-information/package.json +6 -0
  748. package/obsidian/constructors/getDomEventsHandlersConstructor/package.json +6 -0
  749. package/obsidian/constructors/index/package.json +6 -0
  750. package/obsidian/constructors/package.json +6 -0
  751. package/obsidian/dataview-link/package.json +6 -0
  752. package/obsidian/file-change/package.json +6 -0
  753. package/obsidian/file-manager/package.json +6 -0
  754. package/obsidian/file-system/package.json +6 -0
  755. package/obsidian/frontmatter-link-cache-with-offsets/package.json +6 -0
  756. package/obsidian/i18n/custom-type-options-base/package.json +6 -0
  757. package/obsidian/i18n/default-translations-base/package.json +6 -0
  758. package/obsidian/is-in-obsidian/package.json +6 -0
  759. package/obsidian/markdown-code-block-processor/package.json +6 -0
  760. package/obsidian/markdown-view/package.json +6 -0
  761. package/obsidian/metadata-cache/package.json +6 -0
  762. package/obsidian/monkey-around/package.json +6 -0
  763. package/obsidian/obsidian-settings/package.json +6 -0
  764. package/obsidian/rename-delete-handler/package.json +6 -0
  765. package/obsidian/resource-url/package.json +6 -0
  766. package/obsidian/setting-ex/package.json +6 -0
  767. package/obsidian/setting-group-ex/package.json +6 -0
  768. package/obsidian/vault-delete/package.json +6 -0
  769. package/package.json +336 -231
  770. package/script-utils/build/package.json +6 -0
  771. package/script-utils/bundlers/esbuild/package.json +6 -0
  772. package/script-utils/bundlers/esbuild-impl/changeExtensionPlugin/package.json +6 -0
  773. package/script-utils/bundlers/esbuild-impl/copyToObsidianPluginsFolderPlugin/package.json +6 -0
  774. package/script-utils/bundlers/esbuild-impl/customEsbuildOptionsPlugin/package.json +6 -0
  775. package/script-utils/bundlers/esbuild-impl/dependency/package.json +6 -0
  776. package/script-utils/bundlers/esbuild-impl/fixEsmPlugin/package.json +6 -0
  777. package/script-utils/bundlers/esbuild-impl/fixSourceMapsPlugin/package.json +6 -0
  778. package/script-utils/bundlers/esbuild-impl/index/package.json +6 -0
  779. package/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder/package.json +6 -0
  780. package/script-utils/bundlers/esbuild-impl/package.json +6 -0
  781. package/script-utils/bundlers/esbuild-impl/preprocessPlugin/package.json +6 -0
  782. package/script-utils/bundlers/esbuild-impl/renameCssPlugin/package.json +6 -0
  783. package/script-utils/bundlers/esbuild-impl/svelteWrapperPlugin/package.json +6 -0
  784. package/script-utils/bundlers/index/package.json +6 -0
  785. package/script-utils/bundlers/package.json +6 -0
  786. package/script-utils/cli-utils/package.json +6 -0
  787. package/script-utils/code-generator/package.json +6 -0
  788. package/script-utils/commitlint-config/package.json +6 -0
  789. package/script-utils/exec/package.json +6 -0
  790. package/script-utils/formatters/dprint/package.json +6 -0
  791. package/script-utils/formatters/index/package.json +6 -0
  792. package/script-utils/formatters/package.json +6 -0
  793. package/script-utils/fs/package.json +6 -0
  794. package/script-utils/index/package.json +6 -0
  795. package/script-utils/json/package.json +6 -0
  796. package/script-utils/linters/cspell/package.json +6 -0
  797. package/script-utils/linters/eslint/package.json +6 -0
  798. package/script-utils/linters/eslint-config/package.json +6 -0
  799. package/script-utils/linters/eslint-rules/index/package.json +6 -0
  800. package/script-utils/linters/eslint-rules/no-used-underscore-params/package.json +6 -0
  801. package/script-utils/linters/eslint-rules/package.json +6 -0
  802. package/script-utils/linters/eslint-types/@types/@eslint-community__eslint-plugin-eslint-comments__configs/package.json +4 -0
  803. package/script-utils/linters/eslint-types/@types/eslint-plugin-modules-newlines/package.json +4 -0
  804. package/script-utils/linters/eslint-types/@types/eslint-plugin-verify-tsdoc/package.json +4 -0
  805. package/script-utils/linters/index/package.json +6 -0
  806. package/script-utils/linters/markdownlint/package.json +6 -0
  807. package/script-utils/linters/markdownlint-cli2-config/package.json +6 -0
  808. package/script-utils/linters/markdownlint-types/@types/markdownlint-cli2-config-schema/package.json +4 -0
  809. package/script-utils/linters/package.json +6 -0
  810. package/script-utils/nano-staged-config/package.json +6 -0
  811. package/script-utils/npm/package.json +6 -0
  812. package/script-utils/npm-publish/package.json +6 -0
  813. package/script-utils/npm-run/package.json +6 -0
  814. package/script-utils/obsidian-cli/package.json +6 -0
  815. package/script-utils/obsidian-dev-utils-repo-paths/package.json +6 -0
  816. package/script-utils/package.json +6 -0
  817. package/script-utils/root/package.json +6 -0
  818. package/script-utils/test-runners/index/package.json +6 -0
  819. package/script-utils/test-runners/package.json +6 -0
  820. package/script-utils/test-runners/vitest/package.json +6 -0
  821. package/script-utils/version/package.json +6 -0
  822. package/ScriptUtils/CliUtils/package.json +0 -6
  823. package/ScriptUtils/CodeGenerator/package.json +0 -6
  824. package/ScriptUtils/ESLint/@types/@eslint-community__eslint-plugin-eslint-comments__configs/package.json +0 -4
  825. package/ScriptUtils/ESLint/@types/@guardian__eslint-plugin-tsdoc-required/package.json +0 -4
  826. package/ScriptUtils/ESLint/@types/eslint-plugin-modules-newlines/package.json +0 -4
  827. package/ScriptUtils/ESLint/@types/eslint-plugin-verify-tsdoc/package.json +0 -4
  828. package/ScriptUtils/ESLint/ESLint/package.json +0 -6
  829. package/ScriptUtils/ESLint/eslint.config/package.json +0 -6
  830. package/ScriptUtils/ESLint/index/package.json +0 -6
  831. package/ScriptUtils/ESLint/package.json +0 -6
  832. package/ScriptUtils/Exec/package.json +0 -6
  833. package/ScriptUtils/Fs/package.json +0 -6
  834. package/ScriptUtils/JSON/package.json +0 -6
  835. package/ScriptUtils/NodeModules/package.json +0 -6
  836. package/ScriptUtils/Npm/package.json +0 -6
  837. package/ScriptUtils/NpmPublish/package.json +0 -6
  838. package/ScriptUtils/NpmRun/package.json +0 -6
  839. package/ScriptUtils/ObsidianDevUtilsRepoPaths/package.json +0 -6
  840. package/ScriptUtils/Root/package.json +0 -6
  841. package/ScriptUtils/build/package.json +0 -6
  842. package/ScriptUtils/cli/package.json +0 -6
  843. package/ScriptUtils/esbuild/Dependency/package.json +0 -6
  844. package/ScriptUtils/esbuild/ObsidianPluginBuilder/package.json +0 -6
  845. package/ScriptUtils/esbuild/changeExtensionPlugin/package.json +0 -6
  846. package/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin/package.json +0 -6
  847. package/ScriptUtils/esbuild/customEsbuildOptionsPlugin/package.json +0 -6
  848. package/ScriptUtils/esbuild/fixEsmPlugin/package.json +0 -6
  849. package/ScriptUtils/esbuild/fixSourceMapsPlugin/package.json +0 -6
  850. package/ScriptUtils/esbuild/index/package.json +0 -6
  851. package/ScriptUtils/esbuild/package.json +0 -6
  852. package/ScriptUtils/esbuild/preprocessPlugin/package.json +0 -6
  853. package/ScriptUtils/esbuild/renameCssPlugin/package.json +0 -6
  854. package/ScriptUtils/esbuild/svelteWrapperPlugin/package.json +0 -6
  855. package/ScriptUtils/format/package.json +0 -6
  856. package/ScriptUtils/index/package.json +0 -6
  857. package/ScriptUtils/markdownlint/@types/markdownlint-cli2-config-schema/package.json +0 -4
  858. package/ScriptUtils/markdownlint/index/package.json +0 -6
  859. package/ScriptUtils/markdownlint/markdownlint/package.json +0 -6
  860. package/ScriptUtils/markdownlint/markdownlint-cli2-config/package.json +0 -6
  861. package/ScriptUtils/markdownlint/package.json +0 -6
  862. package/ScriptUtils/package.json +0 -6
  863. package/ScriptUtils/spellcheck/package.json +0 -6
  864. package/ScriptUtils/version/package.json +0 -6
  865. package/Transformers/DateTransformer/package.json +0 -6
  866. package/Transformers/DurationTransformer/package.json +0 -6
  867. package/Transformers/GroupTransformer/package.json +0 -6
  868. package/Transformers/MapTransformer/package.json +0 -6
  869. package/Transformers/SetTransformer/package.json +0 -6
  870. package/Transformers/SkipPrivatePropertyTransformer/package.json +0 -6
  871. package/Transformers/TwoWayMapTransformer/package.json +0 -6
  872. package/Transformers/TypedTransformer/package.json +0 -6
  873. package/codemirror/StateFieldSpec/package.json +0 -6
  874. package/dist/bin/cli.cjs +0 -3
  875. package/dist/lib/cjs/AbortController.cjs +0 -212
  876. package/dist/lib/cjs/Array.cjs +0 -169
  877. package/dist/lib/cjs/Async.cjs +0 -469
  878. package/dist/lib/cjs/Async.d.cts +0 -326
  879. package/dist/lib/cjs/AsyncEvents.cjs +0 -319
  880. package/dist/lib/cjs/Blob.cjs +0 -204
  881. package/dist/lib/cjs/Blob.d.cts +0 -41
  882. package/dist/lib/cjs/CssClass.cjs +0 -169
  883. package/dist/lib/cjs/Debug.cjs +0 -270
  884. package/dist/lib/cjs/Debug.d.cts +0 -47
  885. package/dist/lib/cjs/DebugController.cjs +0 -120
  886. package/dist/lib/cjs/Enum.cjs +0 -140
  887. package/dist/lib/cjs/Error.cjs +0 -245
  888. package/dist/lib/cjs/Function.cjs +0 -151
  889. package/dist/lib/cjs/HTMLElement.cjs +0 -288
  890. package/dist/lib/cjs/HTMLElement.d.cts +0 -122
  891. package/dist/lib/cjs/Library.cjs +0 -138
  892. package/dist/lib/cjs/ObjectUtils.cjs +0 -554
  893. package/dist/lib/cjs/ObjectUtils.d.cts +0 -255
  894. package/dist/lib/cjs/Path.cjs +0 -221
  895. package/dist/lib/cjs/RegExp.cjs +0 -255
  896. package/dist/lib/cjs/ScriptUtils/CliUtils.cjs +0 -256
  897. package/dist/lib/cjs/ScriptUtils/CliUtils.d.cts +0 -72
  898. package/dist/lib/cjs/ScriptUtils/CodeGenerator.cjs +0 -139
  899. package/dist/lib/cjs/ScriptUtils/ESLint/@types/@eslint-community__eslint-plugin-eslint-comments__configs.d.cts +0 -15
  900. package/dist/lib/cjs/ScriptUtils/ESLint/@types/@guardian__eslint-plugin-tsdoc-required.d.cts +0 -14
  901. package/dist/lib/cjs/ScriptUtils/ESLint/ESLint.cjs +0 -175
  902. package/dist/lib/cjs/ScriptUtils/ESLint/ESLint.d.cts +0 -14
  903. package/dist/lib/cjs/ScriptUtils/ESLint/eslint.config.cjs +0 -599
  904. package/dist/lib/cjs/ScriptUtils/ESLint/index.cjs +0 -145
  905. package/dist/lib/cjs/ScriptUtils/ESLint/index.d.cts +0 -2
  906. package/dist/lib/cjs/ScriptUtils/Exec.cjs +0 -214
  907. package/dist/lib/cjs/ScriptUtils/Exec.d.cts +0 -84
  908. package/dist/lib/cjs/ScriptUtils/Fs.cjs +0 -181
  909. package/dist/lib/cjs/ScriptUtils/Fs.d.cts +0 -75
  910. package/dist/lib/cjs/ScriptUtils/JSON.cjs +0 -179
  911. package/dist/lib/cjs/ScriptUtils/JSON.d.cts +0 -65
  912. package/dist/lib/cjs/ScriptUtils/NodeModules.cjs +0 -207
  913. package/dist/lib/cjs/ScriptUtils/NodeModules.d.cts +0 -17
  914. package/dist/lib/cjs/ScriptUtils/Npm.cjs +0 -234
  915. package/dist/lib/cjs/ScriptUtils/Npm.d.cts +0 -149
  916. package/dist/lib/cjs/ScriptUtils/NpmPublish.cjs +0 -143
  917. package/dist/lib/cjs/ScriptUtils/NpmRun.cjs +0 -151
  918. package/dist/lib/cjs/ScriptUtils/ObsidianDevUtilsRepoPaths.cjs +0 -178
  919. package/dist/lib/cjs/ScriptUtils/ObsidianDevUtilsRepoPaths.d.cts +0 -100
  920. package/dist/lib/cjs/ScriptUtils/Root.cjs +0 -184
  921. package/dist/lib/cjs/ScriptUtils/Root.d.cts +0 -68
  922. package/dist/lib/cjs/ScriptUtils/build.cjs +0 -179
  923. package/dist/lib/cjs/ScriptUtils/cli.cjs +0 -207
  924. package/dist/lib/cjs/ScriptUtils/cli.d.cts +0 -15
  925. package/dist/lib/cjs/ScriptUtils/esbuild/Dependency.cjs +0 -220
  926. package/dist/lib/cjs/ScriptUtils/esbuild/ObsidianPluginBuilder.cjs +0 -275
  927. package/dist/lib/cjs/ScriptUtils/esbuild/ObsidianPluginBuilder.d.cts +0 -58
  928. package/dist/lib/cjs/ScriptUtils/esbuild/changeExtensionPlugin.cjs +0 -164
  929. package/dist/lib/cjs/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.cjs +0 -169
  930. package/dist/lib/cjs/ScriptUtils/esbuild/customEsbuildOptionsPlugin.cjs +0 -139
  931. package/dist/lib/cjs/ScriptUtils/esbuild/fixEsmPlugin.cjs +0 -145
  932. package/dist/lib/cjs/ScriptUtils/esbuild/fixSourceMapsPlugin.cjs +0 -171
  933. package/dist/lib/cjs/ScriptUtils/esbuild/index.cjs +0 -169
  934. package/dist/lib/cjs/ScriptUtils/esbuild/index.d.cts +0 -10
  935. package/dist/lib/cjs/ScriptUtils/esbuild/preprocessPlugin.cjs +0 -298
  936. package/dist/lib/cjs/ScriptUtils/esbuild/renameCssPlugin.cjs +0 -148
  937. package/dist/lib/cjs/ScriptUtils/esbuild/svelteWrapperPlugin.cjs +0 -172
  938. package/dist/lib/cjs/ScriptUtils/format.cjs +0 -164
  939. package/dist/lib/cjs/ScriptUtils/format.d.cts +0 -12
  940. package/dist/lib/cjs/ScriptUtils/index.cjs +0 -196
  941. package/dist/lib/cjs/ScriptUtils/index.d.cts +0 -19
  942. package/dist/lib/cjs/ScriptUtils/markdownlint/index.cjs +0 -145
  943. package/dist/lib/cjs/ScriptUtils/markdownlint/index.d.cts +0 -2
  944. package/dist/lib/cjs/ScriptUtils/markdownlint/markdownlint-cli2-config.cjs +0 -172
  945. package/dist/lib/cjs/ScriptUtils/markdownlint/markdownlint-cli2-config.d.cts +0 -10
  946. package/dist/lib/cjs/ScriptUtils/markdownlint/markdownlint.cjs +0 -206
  947. package/dist/lib/cjs/ScriptUtils/markdownlint/markdownlint.d.cts +0 -11
  948. package/dist/lib/cjs/ScriptUtils/spellcheck.cjs +0 -135
  949. package/dist/lib/cjs/ScriptUtils/spellcheck.d.cts +0 -15
  950. package/dist/lib/cjs/ScriptUtils/version.cjs +0 -484
  951. package/dist/lib/cjs/ScriptUtils/version.d.cts +0 -167
  952. package/dist/lib/cjs/String.cjs +0 -333
  953. package/dist/lib/cjs/String.d.cts +0 -186
  954. package/dist/lib/cjs/Transformers/DateTransformer.cjs +0 -169
  955. package/dist/lib/cjs/Transformers/DateTransformer.d.cts +0 -38
  956. package/dist/lib/cjs/Transformers/DurationTransformer.cjs +0 -171
  957. package/dist/lib/cjs/Transformers/DurationTransformer.d.cts +0 -38
  958. package/dist/lib/cjs/Transformers/GroupTransformer.cjs +0 -215
  959. package/dist/lib/cjs/Transformers/GroupTransformer.d.cts +0 -69
  960. package/dist/lib/cjs/Transformers/MapTransformer.cjs +0 -169
  961. package/dist/lib/cjs/Transformers/MapTransformer.d.cts +0 -40
  962. package/dist/lib/cjs/Transformers/SetTransformer.cjs +0 -169
  963. package/dist/lib/cjs/Transformers/SetTransformer.d.cts +0 -38
  964. package/dist/lib/cjs/Transformers/SkipPrivatePropertyTransformer.cjs +0 -167
  965. package/dist/lib/cjs/Transformers/SkipPrivatePropertyTransformer.d.cts +0 -35
  966. package/dist/lib/cjs/Transformers/Transformer.cjs +0 -210
  967. package/dist/lib/cjs/Transformers/Transformer.d.cts +0 -69
  968. package/dist/lib/cjs/Transformers/TwoWayMapTransformer.cjs +0 -170
  969. package/dist/lib/cjs/Transformers/TwoWayMapTransformer.d.cts +0 -41
  970. package/dist/lib/cjs/Transformers/TypedTransformer.cjs +0 -134
  971. package/dist/lib/cjs/Transformers/TypedTransformer.d.cts +0 -38
  972. package/dist/lib/cjs/Transformers/index.cjs +0 -166
  973. package/dist/lib/cjs/Transformers/index.d.cts +0 -9
  974. package/dist/lib/cjs/TwoWayMap.cjs +0 -248
  975. package/dist/lib/cjs/Type.cjs +0 -142
  976. package/dist/lib/cjs/TypeGuards.cjs +0 -156
  977. package/dist/lib/cjs/TypeGuards.d.cts +0 -47
  978. package/dist/lib/cjs/ValueProvider.cjs +0 -143
  979. package/dist/lib/cjs/codemirror/StateFieldSpec.cjs +0 -120
  980. package/dist/lib/cjs/obsidian/App.cjs +0 -170
  981. package/dist/lib/cjs/obsidian/AsyncWithNotice.cjs +0 -200
  982. package/dist/lib/cjs/obsidian/AsyncWithNotice.d.cts +0 -82
  983. package/dist/lib/cjs/obsidian/AttachmentPath.cjs +0 -234
  984. package/dist/lib/cjs/obsidian/AttachmentPath.d.cts +0 -181
  985. package/dist/lib/cjs/obsidian/Backlink.cjs +0 -206
  986. package/dist/lib/cjs/obsidian/Backlink.d.cts +0 -61
  987. package/dist/lib/cjs/obsidian/Callout.cjs +0 -203
  988. package/dist/lib/cjs/obsidian/Callout.d.cts +0 -61
  989. package/dist/lib/cjs/obsidian/CodeBlockMarkdownInformation.cjs +0 -120
  990. package/dist/lib/cjs/obsidian/Commands/AbstractFileCommandBase.cjs +0 -436
  991. package/dist/lib/cjs/obsidian/Commands/AbstractFileCommandBase.d.cts +0 -264
  992. package/dist/lib/cjs/obsidian/Commands/CommandBase.cjs +0 -252
  993. package/dist/lib/cjs/obsidian/Commands/EditorCommandBase.cjs +0 -278
  994. package/dist/lib/cjs/obsidian/Commands/EditorCommandBase.d.cts +0 -139
  995. package/dist/lib/cjs/obsidian/Commands/FileCommandBase.cjs +0 -338
  996. package/dist/lib/cjs/obsidian/Commands/FileCommandBase.d.cts +0 -191
  997. package/dist/lib/cjs/obsidian/Commands/FolderCommandBase.cjs +0 -330
  998. package/dist/lib/cjs/obsidian/Commands/FolderCommandBase.d.cts +0 -184
  999. package/dist/lib/cjs/obsidian/Commands/NonEditorCommandBase.cjs +0 -152
  1000. package/dist/lib/cjs/obsidian/Commands/NonEditorCommandBase.d.cts +0 -34
  1001. package/dist/lib/cjs/obsidian/Commands/index.cjs +0 -157
  1002. package/dist/lib/cjs/obsidian/Commands/index.d.cts +0 -6
  1003. package/dist/lib/cjs/obsidian/Components/AsyncEventsComponent.cjs +0 -149
  1004. package/dist/lib/cjs/obsidian/Components/AsyncEventsComponent.d.cts +0 -25
  1005. package/dist/lib/cjs/obsidian/Components/SettingComponents/CheckboxComponent.cjs +0 -205
  1006. package/dist/lib/cjs/obsidian/Components/SettingComponents/CheckboxComponent.d.cts +0 -69
  1007. package/dist/lib/cjs/obsidian/Components/SettingComponents/CodeHighlighterComponent.cjs +0 -352
  1008. package/dist/lib/cjs/obsidian/Components/SettingComponents/CodeHighlighterComponent.d.cts +0 -118
  1009. package/dist/lib/cjs/obsidian/Components/SettingComponents/DateComponent.cjs +0 -165
  1010. package/dist/lib/cjs/obsidian/Components/SettingComponents/DateComponent.d.cts +0 -37
  1011. package/dist/lib/cjs/obsidian/Components/SettingComponents/DateTimeComponent.cjs +0 -165
  1012. package/dist/lib/cjs/obsidian/Components/SettingComponents/DateTimeComponent.d.cts +0 -37
  1013. package/dist/lib/cjs/obsidian/Components/SettingComponents/EmailComponent.cjs +0 -176
  1014. package/dist/lib/cjs/obsidian/Components/SettingComponents/EmailComponent.d.cts +0 -48
  1015. package/dist/lib/cjs/obsidian/Components/SettingComponents/FileComponent.cjs +0 -168
  1016. package/dist/lib/cjs/obsidian/Components/SettingComponents/FileComponent.d.cts +0 -42
  1017. package/dist/lib/cjs/obsidian/Components/SettingComponents/MonthComponent.cjs +0 -173
  1018. package/dist/lib/cjs/obsidian/Components/SettingComponents/MonthComponent.d.cts +0 -50
  1019. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleDropdownComponent.cjs +0 -237
  1020. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleDropdownComponent.d.cts +0 -87
  1021. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleEmailComponent.cjs +0 -162
  1022. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleEmailComponent.d.cts +0 -37
  1023. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleFileComponent.cjs +0 -169
  1024. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleFileComponent.d.cts +0 -42
  1025. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleTextComponent.cjs +0 -250
  1026. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleTextComponent.d.cts +0 -98
  1027. package/dist/lib/cjs/obsidian/Components/SettingComponents/NumberComponent.cjs +0 -186
  1028. package/dist/lib/cjs/obsidian/Components/SettingComponents/NumberComponent.d.cts +0 -55
  1029. package/dist/lib/cjs/obsidian/Components/SettingComponents/PasswordComponent.cjs +0 -162
  1030. package/dist/lib/cjs/obsidian/Components/SettingComponents/PasswordComponent.d.cts +0 -37
  1031. package/dist/lib/cjs/obsidian/Components/SettingComponents/SettingComponentWrapper.cjs +0 -149
  1032. package/dist/lib/cjs/obsidian/Components/SettingComponents/TelephoneComponent.cjs +0 -176
  1033. package/dist/lib/cjs/obsidian/Components/SettingComponents/TelephoneComponent.d.cts +0 -50
  1034. package/dist/lib/cjs/obsidian/Components/SettingComponents/TextBasedComponent.cjs +0 -161
  1035. package/dist/lib/cjs/obsidian/Components/SettingComponents/TimeComponent.cjs +0 -170
  1036. package/dist/lib/cjs/obsidian/Components/SettingComponents/TimeComponent.d.cts +0 -37
  1037. package/dist/lib/cjs/obsidian/Components/SettingComponents/TriStateCheckboxComponent.cjs +0 -206
  1038. package/dist/lib/cjs/obsidian/Components/SettingComponents/TriStateCheckboxComponent.d.cts +0 -69
  1039. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedDropdownComponent.cjs +0 -243
  1040. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedDropdownComponent.d.cts +0 -89
  1041. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.cjs +0 -245
  1042. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.d.cts +0 -90
  1043. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedRangeTextComponent.cjs +0 -164
  1044. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedRangeTextComponent.d.cts +0 -34
  1045. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedTextComponent.cjs +0 -220
  1046. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedTextComponent.d.cts +0 -85
  1047. package/dist/lib/cjs/obsidian/Components/SettingComponents/UrlComponent.cjs +0 -176
  1048. package/dist/lib/cjs/obsidian/Components/SettingComponents/UrlComponent.d.cts +0 -48
  1049. package/dist/lib/cjs/obsidian/Components/SettingComponents/ValidatorComponent.cjs +0 -220
  1050. package/dist/lib/cjs/obsidian/Components/SettingComponents/ValidatorComponent.d.cts +0 -22
  1051. package/dist/lib/cjs/obsidian/Components/SettingComponents/ValueComponentWithChangeTracking.cjs +0 -120
  1052. package/dist/lib/cjs/obsidian/Components/SettingComponents/WeekComponent.cjs +0 -173
  1053. package/dist/lib/cjs/obsidian/Components/SettingComponents/WeekComponent.d.cts +0 -50
  1054. package/dist/lib/cjs/obsidian/Components/SettingComponents/index.cjs +0 -217
  1055. package/dist/lib/cjs/obsidian/Components/SettingComponents/index.d.cts +0 -26
  1056. package/dist/lib/cjs/obsidian/Components/index.cjs +0 -145
  1057. package/dist/lib/cjs/obsidian/Components/index.d.cts +0 -2
  1058. package/dist/lib/cjs/obsidian/Dataview.cjs +0 -353
  1059. package/dist/lib/cjs/obsidian/Dataview.d.cts +0 -214
  1060. package/dist/lib/cjs/obsidian/DataviewLink.cjs +0 -144
  1061. package/dist/lib/cjs/obsidian/DataviewLink.d.cts +0 -24
  1062. package/dist/lib/cjs/obsidian/Editor.cjs +0 -162
  1063. package/dist/lib/cjs/obsidian/FileChange.cjs +0 -473
  1064. package/dist/lib/cjs/obsidian/FileChange.d.cts +0 -119
  1065. package/dist/lib/cjs/obsidian/FileManager.cjs +0 -193
  1066. package/dist/lib/cjs/obsidian/FileManager.d.cts +0 -40
  1067. package/dist/lib/cjs/obsidian/FileSystem.cjs +0 -406
  1068. package/dist/lib/cjs/obsidian/FileSystem.d.cts +0 -279
  1069. package/dist/lib/cjs/obsidian/Frontmatter.cjs +0 -149
  1070. package/dist/lib/cjs/obsidian/Frontmatter.d.cts +0 -74
  1071. package/dist/lib/cjs/obsidian/FrontmatterLinkCacheWithOffsets.cjs +0 -151
  1072. package/dist/lib/cjs/obsidian/Link.cjs +0 -887
  1073. package/dist/lib/cjs/obsidian/Link.d.cts +0 -716
  1074. package/dist/lib/cjs/obsidian/Logger.cjs +0 -174
  1075. package/dist/lib/cjs/obsidian/Loop.cjs +0 -225
  1076. package/dist/lib/cjs/obsidian/Markdown.cjs +0 -286
  1077. package/dist/lib/cjs/obsidian/Markdown.d.cts +0 -79
  1078. package/dist/lib/cjs/obsidian/MarkdownCodeBlockProcessor.cjs +0 -362
  1079. package/dist/lib/cjs/obsidian/MarkdownCodeBlockProcessor.d.cts +0 -107
  1080. package/dist/lib/cjs/obsidian/MarkdownView.cjs +0 -140
  1081. package/dist/lib/cjs/obsidian/MetadataCache.cjs +0 -367
  1082. package/dist/lib/cjs/obsidian/MetadataCache.d.cts +0 -137
  1083. package/dist/lib/cjs/obsidian/Modals/Alert.cjs +0 -166
  1084. package/dist/lib/cjs/obsidian/Modals/Confirm.cjs +0 -175
  1085. package/dist/lib/cjs/obsidian/Modals/ModalBase.cjs +0 -158
  1086. package/dist/lib/cjs/obsidian/Modals/ModalBase.d.cts +0 -42
  1087. package/dist/lib/cjs/obsidian/Modals/Prompt.cjs +0 -210
  1088. package/dist/lib/cjs/obsidian/Modals/Prompt.d.cts +0 -53
  1089. package/dist/lib/cjs/obsidian/Modals/SelectItem.cjs +0 -170
  1090. package/dist/lib/cjs/obsidian/Modals/SelectItem.d.cts +0 -43
  1091. package/dist/lib/cjs/obsidian/Modals/index.cjs +0 -154
  1092. package/dist/lib/cjs/obsidian/Modals/index.d.cts +0 -5
  1093. package/dist/lib/cjs/obsidian/MonkeyAround.cjs +0 -173
  1094. package/dist/lib/cjs/obsidian/ObsidianSettings.cjs +0 -139
  1095. package/dist/lib/cjs/obsidian/Pdf.cjs +0 -162
  1096. package/dist/lib/cjs/obsidian/Plugin/ObsidianPluginRepoPaths.cjs +0 -179
  1097. package/dist/lib/cjs/obsidian/Plugin/ObsidianPluginRepoPaths.d.cts +0 -100
  1098. package/dist/lib/cjs/obsidian/Plugin/PathSettings.cjs +0 -235
  1099. package/dist/lib/cjs/obsidian/Plugin/PathSettings.d.cts +0 -43
  1100. package/dist/lib/cjs/obsidian/Plugin/Plugin.cjs +0 -146
  1101. package/dist/lib/cjs/obsidian/Plugin/PluginBase.cjs +0 -453
  1102. package/dist/lib/cjs/obsidian/Plugin/PluginBase.d.cts +0 -200
  1103. package/dist/lib/cjs/obsidian/Plugin/PluginContext.cjs +0 -165
  1104. package/dist/lib/cjs/obsidian/Plugin/PluginId.cjs +0 -145
  1105. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsManagerBase.cjs +0 -483
  1106. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsManagerBase.d.cts +0 -186
  1107. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsTabBase.cjs +0 -401
  1108. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsTabBase.d.cts +0 -148
  1109. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsWrapper.cjs +0 -120
  1110. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsWrapper.d.cts +0 -25
  1111. package/dist/lib/cjs/obsidian/Plugin/PluginTypesBase.cjs +0 -120
  1112. package/dist/lib/cjs/obsidian/Plugin/PluginTypesBase.d.cts +0 -87
  1113. package/dist/lib/cjs/obsidian/Plugin/index.cjs +0 -169
  1114. package/dist/lib/cjs/obsidian/Plugin/index.d.cts +0 -10
  1115. package/dist/lib/cjs/obsidian/Queue.cjs +0 -201
  1116. package/dist/lib/cjs/obsidian/React/AppContext.cjs +0 -140
  1117. package/dist/lib/cjs/obsidian/React/index.cjs +0 -142
  1118. package/dist/lib/cjs/obsidian/React/index.d.cts +0 -1
  1119. package/dist/lib/cjs/obsidian/Reference.cjs +0 -177
  1120. package/dist/lib/cjs/obsidian/Reference.d.cts +0 -82
  1121. package/dist/lib/cjs/obsidian/RenameDeleteHandler.cjs +0 -837
  1122. package/dist/lib/cjs/obsidian/ResourceUrl.cjs +0 -139
  1123. package/dist/lib/cjs/obsidian/SettingEx.cjs +0 -361
  1124. package/dist/lib/cjs/obsidian/SettingEx.d.cts +0 -182
  1125. package/dist/lib/cjs/obsidian/SettingGroupEx.cjs +0 -154
  1126. package/dist/lib/cjs/obsidian/SettingGroupEx.d.cts +0 -25
  1127. package/dist/lib/cjs/obsidian/Validation.cjs +0 -159
  1128. package/dist/lib/cjs/obsidian/Vault.cjs +0 -540
  1129. package/dist/lib/cjs/obsidian/Vault.d.cts +0 -261
  1130. package/dist/lib/cjs/obsidian/VaultDelete.cjs +0 -171
  1131. package/dist/lib/cjs/obsidian/VaultDelete.d.cts +0 -18
  1132. package/dist/lib/cjs/obsidian/Workspace.cjs +0 -143
  1133. package/dist/lib/cjs/obsidian/i18n/CustomTypeOptionsBase.cjs +0 -121
  1134. package/dist/lib/cjs/obsidian/i18n/CustomTypeOptionsBase.d.cts +0 -31
  1135. package/dist/lib/cjs/obsidian/i18n/DefaultTranslationsBase.cjs +0 -121
  1136. package/dist/lib/cjs/obsidian/i18n/DefaultTranslationsBase.d.cts +0 -25
  1137. package/dist/lib/esm/AbortController.mjs +0 -101
  1138. package/dist/lib/esm/Array.mjs +0 -61
  1139. package/dist/lib/esm/Async.d.mts +0 -326
  1140. package/dist/lib/esm/Async.mjs +0 -354
  1141. package/dist/lib/esm/AsyncEvents.mjs +0 -213
  1142. package/dist/lib/esm/Blob.d.mts +0 -41
  1143. package/dist/lib/esm/Blob.mjs +0 -94
  1144. package/dist/lib/esm/CssClass.mjs +0 -63
  1145. package/dist/lib/esm/Debug.d.mts +0 -47
  1146. package/dist/lib/esm/Debug.mjs +0 -152
  1147. package/dist/lib/esm/Enum.mjs +0 -33
  1148. package/dist/lib/esm/Error.mjs +0 -131
  1149. package/dist/lib/esm/Function.mjs +0 -42
  1150. package/dist/lib/esm/HTMLElement.d.mts +0 -122
  1151. package/dist/lib/esm/HTMLElement.mjs +0 -171
  1152. package/dist/lib/esm/Library.mjs +0 -30
  1153. package/dist/lib/esm/ObjectUtils.d.mts +0 -255
  1154. package/dist/lib/esm/ObjectUtils.mjs +0 -435
  1155. package/dist/lib/esm/Path.mjs +0 -90
  1156. package/dist/lib/esm/RegExp.mjs +0 -144
  1157. package/dist/lib/esm/ScriptUtils/CliUtils.d.mts +0 -72
  1158. package/dist/lib/esm/ScriptUtils/CliUtils.mjs +0 -148
  1159. package/dist/lib/esm/ScriptUtils/CodeGenerator.mjs +0 -33
  1160. package/dist/lib/esm/ScriptUtils/ESLint/@types/@eslint-community__eslint-plugin-eslint-comments__configs.d.mts +0 -15
  1161. package/dist/lib/esm/ScriptUtils/ESLint/@types/@guardian__eslint-plugin-tsdoc-required.d.mts +0 -14
  1162. package/dist/lib/esm/ScriptUtils/ESLint/ESLint.d.mts +0 -14
  1163. package/dist/lib/esm/ScriptUtils/ESLint/ESLint.mjs +0 -66
  1164. package/dist/lib/esm/ScriptUtils/ESLint/eslint.config.mjs +0 -485
  1165. package/dist/lib/esm/ScriptUtils/ESLint/index.d.mts +0 -2
  1166. package/dist/lib/esm/ScriptUtils/ESLint/index.mjs +0 -28
  1167. package/dist/lib/esm/ScriptUtils/Exec.d.mts +0 -84
  1168. package/dist/lib/esm/ScriptUtils/Exec.mjs +0 -111
  1169. package/dist/lib/esm/ScriptUtils/Fs.d.mts +0 -75
  1170. package/dist/lib/esm/ScriptUtils/Fs.mjs +0 -78
  1171. package/dist/lib/esm/ScriptUtils/JSON.d.mts +0 -65
  1172. package/dist/lib/esm/ScriptUtils/JSON.mjs +0 -74
  1173. package/dist/lib/esm/ScriptUtils/NodeModules.d.mts +0 -17
  1174. package/dist/lib/esm/ScriptUtils/NodeModules.mjs +0 -92
  1175. package/dist/lib/esm/ScriptUtils/Npm.d.mts +0 -149
  1176. package/dist/lib/esm/ScriptUtils/Npm.mjs +0 -120
  1177. package/dist/lib/esm/ScriptUtils/NpmPublish.mjs +0 -44
  1178. package/dist/lib/esm/ScriptUtils/NpmRun.mjs +0 -44
  1179. package/dist/lib/esm/ScriptUtils/ObsidianDevUtilsRepoPaths.d.mts +0 -100
  1180. package/dist/lib/esm/ScriptUtils/ObsidianDevUtilsRepoPaths.mjs +0 -72
  1181. package/dist/lib/esm/ScriptUtils/Root.d.mts +0 -68
  1182. package/dist/lib/esm/ScriptUtils/Root.mjs +0 -80
  1183. package/dist/lib/esm/ScriptUtils/build.mjs +0 -76
  1184. package/dist/lib/esm/ScriptUtils/cli.d.mts +0 -15
  1185. package/dist/lib/esm/ScriptUtils/cli.mjs +0 -107
  1186. package/dist/lib/esm/ScriptUtils/esbuild/Dependency.mjs +0 -109
  1187. package/dist/lib/esm/ScriptUtils/esbuild/ObsidianPluginBuilder.d.mts +0 -58
  1188. package/dist/lib/esm/ScriptUtils/esbuild/ObsidianPluginBuilder.mjs +0 -165
  1189. package/dist/lib/esm/ScriptUtils/esbuild/changeExtensionPlugin.mjs +0 -58
  1190. package/dist/lib/esm/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.mjs +0 -71
  1191. package/dist/lib/esm/ScriptUtils/esbuild/customEsbuildOptionsPlugin.mjs +0 -33
  1192. package/dist/lib/esm/ScriptUtils/esbuild/fixEsmPlugin.mjs +0 -39
  1193. package/dist/lib/esm/ScriptUtils/esbuild/fixSourceMapsPlugin.mjs +0 -69
  1194. package/dist/lib/esm/ScriptUtils/esbuild/index.d.mts +0 -10
  1195. package/dist/lib/esm/ScriptUtils/esbuild/index.mjs +0 -44
  1196. package/dist/lib/esm/ScriptUtils/esbuild/preprocessPlugin.mjs +0 -185
  1197. package/dist/lib/esm/ScriptUtils/esbuild/renameCssPlugin.mjs +0 -45
  1198. package/dist/lib/esm/ScriptUtils/esbuild/svelteWrapperPlugin.mjs +0 -56
  1199. package/dist/lib/esm/ScriptUtils/format.d.mts +0 -12
  1200. package/dist/lib/esm/ScriptUtils/format.mjs +0 -52
  1201. package/dist/lib/esm/ScriptUtils/index.d.mts +0 -19
  1202. package/dist/lib/esm/ScriptUtils/index.mjs +0 -62
  1203. package/dist/lib/esm/ScriptUtils/markdownlint/index.d.mts +0 -2
  1204. package/dist/lib/esm/ScriptUtils/markdownlint/index.mjs +0 -28
  1205. package/dist/lib/esm/ScriptUtils/markdownlint/markdownlint-cli2-config.d.mts +0 -10
  1206. package/dist/lib/esm/ScriptUtils/markdownlint/markdownlint-cli2-config.mjs +0 -56
  1207. package/dist/lib/esm/ScriptUtils/markdownlint/markdownlint.d.mts +0 -11
  1208. package/dist/lib/esm/ScriptUtils/markdownlint/markdownlint.mjs +0 -98
  1209. package/dist/lib/esm/ScriptUtils/spellcheck.d.mts +0 -15
  1210. package/dist/lib/esm/ScriptUtils/spellcheck.mjs +0 -29
  1211. package/dist/lib/esm/ScriptUtils/version.d.mts +0 -167
  1212. package/dist/lib/esm/ScriptUtils/version.mjs +0 -384
  1213. package/dist/lib/esm/String.d.mts +0 -186
  1214. package/dist/lib/esm/String.mjs +0 -211
  1215. package/dist/lib/esm/Transformers/DateTransformer.d.mts +0 -38
  1216. package/dist/lib/esm/Transformers/DateTransformer.mjs +0 -63
  1217. package/dist/lib/esm/Transformers/DurationTransformer.d.mts +0 -38
  1218. package/dist/lib/esm/Transformers/DurationTransformer.mjs +0 -65
  1219. package/dist/lib/esm/Transformers/GroupTransformer.d.mts +0 -69
  1220. package/dist/lib/esm/Transformers/GroupTransformer.mjs +0 -112
  1221. package/dist/lib/esm/Transformers/MapTransformer.d.mts +0 -40
  1222. package/dist/lib/esm/Transformers/MapTransformer.mjs +0 -63
  1223. package/dist/lib/esm/Transformers/SetTransformer.d.mts +0 -38
  1224. package/dist/lib/esm/Transformers/SetTransformer.mjs +0 -63
  1225. package/dist/lib/esm/Transformers/SkipPrivatePropertyTransformer.d.mts +0 -35
  1226. package/dist/lib/esm/Transformers/SkipPrivatePropertyTransformer.mjs +0 -61
  1227. package/dist/lib/esm/Transformers/Transformer.d.mts +0 -69
  1228. package/dist/lib/esm/Transformers/Transformer.mjs +0 -104
  1229. package/dist/lib/esm/Transformers/TwoWayMapTransformer.d.mts +0 -41
  1230. package/dist/lib/esm/Transformers/TwoWayMapTransformer.mjs +0 -64
  1231. package/dist/lib/esm/Transformers/TypedTransformer.d.mts +0 -38
  1232. package/dist/lib/esm/Transformers/TypedTransformer.mjs +0 -28
  1233. package/dist/lib/esm/Transformers/index.d.mts +0 -9
  1234. package/dist/lib/esm/Transformers/index.mjs +0 -42
  1235. package/dist/lib/esm/TwoWayMap.mjs +0 -142
  1236. package/dist/lib/esm/Type.mjs +0 -36
  1237. package/dist/lib/esm/TypeGuards.d.mts +0 -47
  1238. package/dist/lib/esm/TypeGuards.mjs +0 -47
  1239. package/dist/lib/esm/ValueProvider.mjs +0 -37
  1240. package/dist/lib/esm/obsidian/App.mjs +0 -62
  1241. package/dist/lib/esm/obsidian/AsyncWithNotice.d.mts +0 -82
  1242. package/dist/lib/esm/obsidian/AsyncWithNotice.mjs +0 -96
  1243. package/dist/lib/esm/obsidian/AttachmentPath.d.mts +0 -181
  1244. package/dist/lib/esm/obsidian/AttachmentPath.mjs +0 -139
  1245. package/dist/lib/esm/obsidian/Backlink.d.mts +0 -61
  1246. package/dist/lib/esm/obsidian/Backlink.mjs +0 -103
  1247. package/dist/lib/esm/obsidian/Callout.d.mts +0 -61
  1248. package/dist/lib/esm/obsidian/Callout.mjs +0 -95
  1249. package/dist/lib/esm/obsidian/Commands/AbstractFileCommandBase.d.mts +0 -264
  1250. package/dist/lib/esm/obsidian/Commands/AbstractFileCommandBase.mjs +0 -326
  1251. package/dist/lib/esm/obsidian/Commands/CommandBase.mjs +0 -145
  1252. package/dist/lib/esm/obsidian/Commands/EditorCommandBase.d.mts +0 -139
  1253. package/dist/lib/esm/obsidian/Commands/EditorCommandBase.mjs +0 -174
  1254. package/dist/lib/esm/obsidian/Commands/FileCommandBase.d.mts +0 -191
  1255. package/dist/lib/esm/obsidian/Commands/FileCommandBase.mjs +0 -237
  1256. package/dist/lib/esm/obsidian/Commands/FolderCommandBase.d.mts +0 -184
  1257. package/dist/lib/esm/obsidian/Commands/FolderCommandBase.mjs +0 -229
  1258. package/dist/lib/esm/obsidian/Commands/NonEditorCommandBase.d.mts +0 -34
  1259. package/dist/lib/esm/obsidian/Commands/NonEditorCommandBase.mjs +0 -46
  1260. package/dist/lib/esm/obsidian/Commands/index.d.mts +0 -6
  1261. package/dist/lib/esm/obsidian/Commands/index.mjs +0 -36
  1262. package/dist/lib/esm/obsidian/Components/AsyncEventsComponent.d.mts +0 -25
  1263. package/dist/lib/esm/obsidian/Components/AsyncEventsComponent.mjs +0 -42
  1264. package/dist/lib/esm/obsidian/Components/SettingComponents/CheckboxComponent.d.mts +0 -69
  1265. package/dist/lib/esm/obsidian/Components/SettingComponents/CheckboxComponent.mjs +0 -99
  1266. package/dist/lib/esm/obsidian/Components/SettingComponents/CodeHighlighterComponent.d.mts +0 -118
  1267. package/dist/lib/esm/obsidian/Components/SettingComponents/CodeHighlighterComponent.mjs +0 -252
  1268. package/dist/lib/esm/obsidian/Components/SettingComponents/DateComponent.d.mts +0 -37
  1269. package/dist/lib/esm/obsidian/Components/SettingComponents/DateComponent.mjs +0 -59
  1270. package/dist/lib/esm/obsidian/Components/SettingComponents/DateTimeComponent.d.mts +0 -37
  1271. package/dist/lib/esm/obsidian/Components/SettingComponents/DateTimeComponent.mjs +0 -59
  1272. package/dist/lib/esm/obsidian/Components/SettingComponents/EmailComponent.d.mts +0 -48
  1273. package/dist/lib/esm/obsidian/Components/SettingComponents/EmailComponent.mjs +0 -70
  1274. package/dist/lib/esm/obsidian/Components/SettingComponents/FileComponent.d.mts +0 -42
  1275. package/dist/lib/esm/obsidian/Components/SettingComponents/FileComponent.mjs +0 -62
  1276. package/dist/lib/esm/obsidian/Components/SettingComponents/MonthComponent.d.mts +0 -50
  1277. package/dist/lib/esm/obsidian/Components/SettingComponents/MonthComponent.mjs +0 -67
  1278. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleDropdownComponent.d.mts +0 -87
  1279. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleDropdownComponent.mjs +0 -134
  1280. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleEmailComponent.d.mts +0 -37
  1281. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleEmailComponent.mjs +0 -56
  1282. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleFileComponent.d.mts +0 -42
  1283. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleFileComponent.mjs +0 -63
  1284. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleTextComponent.d.mts +0 -98
  1285. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleTextComponent.mjs +0 -147
  1286. package/dist/lib/esm/obsidian/Components/SettingComponents/NumberComponent.d.mts +0 -55
  1287. package/dist/lib/esm/obsidian/Components/SettingComponents/NumberComponent.mjs +0 -80
  1288. package/dist/lib/esm/obsidian/Components/SettingComponents/PasswordComponent.d.mts +0 -37
  1289. package/dist/lib/esm/obsidian/Components/SettingComponents/PasswordComponent.mjs +0 -56
  1290. package/dist/lib/esm/obsidian/Components/SettingComponents/SettingComponentWrapper.mjs +0 -43
  1291. package/dist/lib/esm/obsidian/Components/SettingComponents/TelephoneComponent.d.mts +0 -50
  1292. package/dist/lib/esm/obsidian/Components/SettingComponents/TelephoneComponent.mjs +0 -70
  1293. package/dist/lib/esm/obsidian/Components/SettingComponents/TextBasedComponent.mjs +0 -55
  1294. package/dist/lib/esm/obsidian/Components/SettingComponents/TimeComponent.d.mts +0 -37
  1295. package/dist/lib/esm/obsidian/Components/SettingComponents/TimeComponent.mjs +0 -64
  1296. package/dist/lib/esm/obsidian/Components/SettingComponents/TriStateCheckboxComponent.d.mts +0 -69
  1297. package/dist/lib/esm/obsidian/Components/SettingComponents/TriStateCheckboxComponent.mjs +0 -100
  1298. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedDropdownComponent.d.mts +0 -89
  1299. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedDropdownComponent.mjs +0 -140
  1300. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.d.mts +0 -90
  1301. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.mjs +0 -139
  1302. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedRangeTextComponent.d.mts +0 -34
  1303. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedRangeTextComponent.mjs +0 -58
  1304. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedTextComponent.d.mts +0 -85
  1305. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedTextComponent.mjs +0 -117
  1306. package/dist/lib/esm/obsidian/Components/SettingComponents/UrlComponent.d.mts +0 -48
  1307. package/dist/lib/esm/obsidian/Components/SettingComponents/UrlComponent.mjs +0 -70
  1308. package/dist/lib/esm/obsidian/Components/SettingComponents/ValidatorComponent.d.mts +0 -22
  1309. package/dist/lib/esm/obsidian/Components/SettingComponents/ValidatorComponent.mjs +0 -123
  1310. package/dist/lib/esm/obsidian/Components/SettingComponents/WeekComponent.d.mts +0 -50
  1311. package/dist/lib/esm/obsidian/Components/SettingComponents/WeekComponent.mjs +0 -67
  1312. package/dist/lib/esm/obsidian/Components/SettingComponents/index.d.mts +0 -26
  1313. package/dist/lib/esm/obsidian/Components/SettingComponents/index.mjs +0 -76
  1314. package/dist/lib/esm/obsidian/Components/index.d.mts +0 -2
  1315. package/dist/lib/esm/obsidian/Components/index.mjs +0 -28
  1316. package/dist/lib/esm/obsidian/Dataview.d.mts +0 -214
  1317. package/dist/lib/esm/obsidian/Dataview.mjs +0 -245
  1318. package/dist/lib/esm/obsidian/DataviewLink.d.mts +0 -24
  1319. package/dist/lib/esm/obsidian/DataviewLink.mjs +0 -41
  1320. package/dist/lib/esm/obsidian/Editor.mjs +0 -58
  1321. package/dist/lib/esm/obsidian/FileChange.d.mts +0 -119
  1322. package/dist/lib/esm/obsidian/FileChange.mjs +0 -378
  1323. package/dist/lib/esm/obsidian/FileManager.d.mts +0 -40
  1324. package/dist/lib/esm/obsidian/FileManager.mjs +0 -92
  1325. package/dist/lib/esm/obsidian/FileSystem.d.mts +0 -279
  1326. package/dist/lib/esm/obsidian/FileSystem.mjs +0 -283
  1327. package/dist/lib/esm/obsidian/Frontmatter.d.mts +0 -74
  1328. package/dist/lib/esm/obsidian/Frontmatter.mjs +0 -46
  1329. package/dist/lib/esm/obsidian/FrontmatterLinkCacheWithOffsets.mjs +0 -44
  1330. package/dist/lib/esm/obsidian/Link.d.mts +0 -716
  1331. package/dist/lib/esm/obsidian/Link.mjs +0 -789
  1332. package/dist/lib/esm/obsidian/Logger.mjs +0 -71
  1333. package/dist/lib/esm/obsidian/Loop.mjs +0 -127
  1334. package/dist/lib/esm/obsidian/Markdown.d.mts +0 -79
  1335. package/dist/lib/esm/obsidian/Markdown.mjs +0 -185
  1336. package/dist/lib/esm/obsidian/MarkdownCodeBlockProcessor.d.mts +0 -107
  1337. package/dist/lib/esm/obsidian/MarkdownCodeBlockProcessor.mjs +0 -262
  1338. package/dist/lib/esm/obsidian/MarkdownView.mjs +0 -34
  1339. package/dist/lib/esm/obsidian/MetadataCache.d.mts +0 -137
  1340. package/dist/lib/esm/obsidian/MetadataCache.mjs +0 -266
  1341. package/dist/lib/esm/obsidian/Modals/Alert.mjs +0 -63
  1342. package/dist/lib/esm/obsidian/Modals/Confirm.mjs +0 -72
  1343. package/dist/lib/esm/obsidian/Modals/ModalBase.d.mts +0 -42
  1344. package/dist/lib/esm/obsidian/Modals/ModalBase.mjs +0 -51
  1345. package/dist/lib/esm/obsidian/Modals/Prompt.d.mts +0 -53
  1346. package/dist/lib/esm/obsidian/Modals/Prompt.mjs +0 -113
  1347. package/dist/lib/esm/obsidian/Modals/SelectItem.d.mts +0 -43
  1348. package/dist/lib/esm/obsidian/Modals/SelectItem.mjs +0 -64
  1349. package/dist/lib/esm/obsidian/Modals/index.d.mts +0 -5
  1350. package/dist/lib/esm/obsidian/Modals/index.mjs +0 -34
  1351. package/dist/lib/esm/obsidian/MonkeyAround.mjs +0 -64
  1352. package/dist/lib/esm/obsidian/ObsidianSettings.mjs +0 -32
  1353. package/dist/lib/esm/obsidian/Pdf.mjs +0 -56
  1354. package/dist/lib/esm/obsidian/Plugin/ObsidianPluginRepoPaths.d.mts +0 -100
  1355. package/dist/lib/esm/obsidian/Plugin/ObsidianPluginRepoPaths.mjs +0 -73
  1356. package/dist/lib/esm/obsidian/Plugin/PathSettings.d.mts +0 -43
  1357. package/dist/lib/esm/obsidian/Plugin/PathSettings.mjs +0 -133
  1358. package/dist/lib/esm/obsidian/Plugin/Plugin.mjs +0 -39
  1359. package/dist/lib/esm/obsidian/Plugin/PluginBase.d.mts +0 -200
  1360. package/dist/lib/esm/obsidian/Plugin/PluginBase.mjs +0 -363
  1361. package/dist/lib/esm/obsidian/Plugin/PluginContext.mjs +0 -67
  1362. package/dist/lib/esm/obsidian/Plugin/PluginId.mjs +0 -37
  1363. package/dist/lib/esm/obsidian/Plugin/PluginSettingsManagerBase.d.mts +0 -186
  1364. package/dist/lib/esm/obsidian/Plugin/PluginSettingsManagerBase.mjs +0 -383
  1365. package/dist/lib/esm/obsidian/Plugin/PluginSettingsTabBase.d.mts +0 -148
  1366. package/dist/lib/esm/obsidian/Plugin/PluginSettingsTabBase.mjs +0 -304
  1367. package/dist/lib/esm/obsidian/Plugin/PluginSettingsWrapper.d.mts +0 -25
  1368. package/dist/lib/esm/obsidian/Plugin/PluginTypesBase.d.mts +0 -87
  1369. package/dist/lib/esm/obsidian/Plugin/index.d.mts +0 -10
  1370. package/dist/lib/esm/obsidian/Plugin/index.mjs +0 -44
  1371. package/dist/lib/esm/obsidian/Queue.mjs +0 -99
  1372. package/dist/lib/esm/obsidian/React/AppContext.mjs +0 -36
  1373. package/dist/lib/esm/obsidian/React/index.d.mts +0 -1
  1374. package/dist/lib/esm/obsidian/React/index.mjs +0 -26
  1375. package/dist/lib/esm/obsidian/Reference.d.mts +0 -82
  1376. package/dist/lib/esm/obsidian/Reference.mjs +0 -70
  1377. package/dist/lib/esm/obsidian/RenameDeleteHandler.mjs +0 -774
  1378. package/dist/lib/esm/obsidian/ResourceUrl.mjs +0 -33
  1379. package/dist/lib/esm/obsidian/SettingEx.d.mts +0 -182
  1380. package/dist/lib/esm/obsidian/SettingEx.mjs +0 -258
  1381. package/dist/lib/esm/obsidian/SettingGroupEx.d.mts +0 -25
  1382. package/dist/lib/esm/obsidian/SettingGroupEx.mjs +0 -48
  1383. package/dist/lib/esm/obsidian/Validation.mjs +0 -48
  1384. package/dist/lib/esm/obsidian/Vault.d.mts +0 -261
  1385. package/dist/lib/esm/obsidian/Vault.mjs +0 -440
  1386. package/dist/lib/esm/obsidian/VaultDelete.d.mts +0 -18
  1387. package/dist/lib/esm/obsidian/VaultDelete.mjs +0 -73
  1388. package/dist/lib/esm/obsidian/Workspace.mjs +0 -36
  1389. package/dist/lib/esm/obsidian/i18n/CustomTypeOptionsBase.d.mts +0 -31
  1390. package/dist/lib/esm/obsidian/i18n/CustomTypeOptionsBase.mjs +0 -23
  1391. package/dist/lib/esm/obsidian/i18n/DefaultTranslationsBase.d.mts +0 -25
  1392. package/dist/lib/esm/obsidian/i18n/DefaultTranslationsBase.mjs +0 -23
  1393. package/dist/scripts/default/build-clean.ts +0 -5
  1394. package/dist/scripts/default/build-compile-svelte.ts +0 -5
  1395. package/dist/scripts/default/build-compile-typescript.ts +0 -5
  1396. package/dist/scripts/default/build-compile.ts +0 -5
  1397. package/dist/scripts/default/build-static.ts +0 -5
  1398. package/dist/scripts/default/build.ts +0 -9
  1399. package/dist/scripts/default/dev.ts +0 -10
  1400. package/dist/scripts/default/format-check.ts +0 -5
  1401. package/dist/scripts/default/format.ts +0 -5
  1402. package/dist/scripts/default/lint-fix.ts +0 -5
  1403. package/dist/scripts/default/lint.ts +0 -5
  1404. package/dist/scripts/default/publish.ts +0 -5
  1405. package/dist/scripts/default/spellcheck.ts +0 -5
  1406. package/dist/scripts/default/version.ts +0 -5
  1407. package/dist/scripts/examples/build.customPlugin.ts +0 -38
  1408. package/dist/scripts/examples/build.svelteConditions.ts +0 -18
  1409. package/dist/scripts/examples/eslint.config.extend.mts +0 -14
  1410. package/dist/scripts/examples/eslint.config.no-dev-utils.mts +0 -15
  1411. package/dist/scripts/examples/format.prettier.ts +0 -25
  1412. package/obsidian/AsyncWithNotice/package.json +0 -6
  1413. package/obsidian/AttachmentPath/package.json +0 -6
  1414. package/obsidian/CodeBlockMarkdownInformation/package.json +0 -6
  1415. package/obsidian/Commands/AbstractFileCommandBase/package.json +0 -6
  1416. package/obsidian/Commands/CommandBase/package.json +0 -6
  1417. package/obsidian/Commands/EditorCommandBase/package.json +0 -6
  1418. package/obsidian/Commands/FileCommandBase/package.json +0 -6
  1419. package/obsidian/Commands/FolderCommandBase/package.json +0 -6
  1420. package/obsidian/Commands/NonEditorCommandBase/package.json +0 -6
  1421. package/obsidian/Components/AsyncEventsComponent/package.json +0 -6
  1422. package/obsidian/Components/SettingComponents/CheckboxComponent/package.json +0 -6
  1423. package/obsidian/Components/SettingComponents/CodeHighlighterComponent/package.json +0 -6
  1424. package/obsidian/Components/SettingComponents/DateComponent/package.json +0 -6
  1425. package/obsidian/Components/SettingComponents/DateTimeComponent/package.json +0 -6
  1426. package/obsidian/Components/SettingComponents/EmailComponent/package.json +0 -6
  1427. package/obsidian/Components/SettingComponents/FileComponent/package.json +0 -6
  1428. package/obsidian/Components/SettingComponents/MonthComponent/package.json +0 -6
  1429. package/obsidian/Components/SettingComponents/MultipleDropdownComponent/package.json +0 -6
  1430. package/obsidian/Components/SettingComponents/MultipleEmailComponent/package.json +0 -6
  1431. package/obsidian/Components/SettingComponents/MultipleFileComponent/package.json +0 -6
  1432. package/obsidian/Components/SettingComponents/MultipleTextComponent/package.json +0 -6
  1433. package/obsidian/Components/SettingComponents/NumberComponent/package.json +0 -6
  1434. package/obsidian/Components/SettingComponents/PasswordComponent/package.json +0 -6
  1435. package/obsidian/Components/SettingComponents/SettingComponentWrapper/package.json +0 -6
  1436. package/obsidian/Components/SettingComponents/TelephoneComponent/package.json +0 -6
  1437. package/obsidian/Components/SettingComponents/TextBasedComponent/package.json +0 -6
  1438. package/obsidian/Components/SettingComponents/TimeComponent/package.json +0 -6
  1439. package/obsidian/Components/SettingComponents/TriStateCheckboxComponent/package.json +0 -6
  1440. package/obsidian/Components/SettingComponents/TypedDropdownComponent/package.json +0 -6
  1441. package/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent/package.json +0 -6
  1442. package/obsidian/Components/SettingComponents/TypedRangeTextComponent/package.json +0 -6
  1443. package/obsidian/Components/SettingComponents/TypedTextComponent/package.json +0 -6
  1444. package/obsidian/Components/SettingComponents/UrlComponent/package.json +0 -6
  1445. package/obsidian/Components/SettingComponents/ValidatorComponent/package.json +0 -6
  1446. package/obsidian/Components/SettingComponents/ValueComponentWithChangeTracking/package.json +0 -6
  1447. package/obsidian/Components/SettingComponents/WeekComponent/package.json +0 -6
  1448. package/obsidian/Components/SettingComponents/index/package.json +0 -6
  1449. package/obsidian/Components/SettingComponents/package.json +0 -6
  1450. package/obsidian/DataviewLink/package.json +0 -6
  1451. package/obsidian/FileChange/package.json +0 -6
  1452. package/obsidian/FileManager/package.json +0 -6
  1453. package/obsidian/FileSystem/package.json +0 -6
  1454. package/obsidian/FrontmatterLinkCacheWithOffsets/package.json +0 -6
  1455. package/obsidian/MarkdownCodeBlockProcessor/package.json +0 -6
  1456. package/obsidian/MarkdownView/package.json +0 -6
  1457. package/obsidian/MetadataCache/package.json +0 -6
  1458. package/obsidian/Modals/ModalBase/package.json +0 -6
  1459. package/obsidian/Modals/SelectItem/package.json +0 -6
  1460. package/obsidian/MonkeyAround/package.json +0 -6
  1461. package/obsidian/ObsidianSettings/package.json +0 -6
  1462. package/obsidian/Plugin/ObsidianPluginRepoPaths/package.json +0 -6
  1463. package/obsidian/Plugin/PathSettings/package.json +0 -6
  1464. package/obsidian/Plugin/PluginBase/package.json +0 -6
  1465. package/obsidian/Plugin/PluginContext/package.json +0 -6
  1466. package/obsidian/Plugin/PluginId/package.json +0 -6
  1467. package/obsidian/Plugin/PluginSettingsManagerBase/package.json +0 -6
  1468. package/obsidian/Plugin/PluginSettingsTabBase/package.json +0 -6
  1469. package/obsidian/Plugin/PluginSettingsWrapper/package.json +0 -6
  1470. package/obsidian/Plugin/PluginTypesBase/package.json +0 -6
  1471. package/obsidian/React/AppContext/package.json +0 -6
  1472. package/obsidian/RenameDeleteHandler/package.json +0 -6
  1473. package/obsidian/ResourceUrl/package.json +0 -6
  1474. package/obsidian/SettingEx/package.json +0 -6
  1475. package/obsidian/SettingGroupEx/package.json +0 -6
  1476. package/obsidian/VaultDelete/package.json +0 -6
  1477. package/obsidian/i18n/CustomTypeOptionsBase/package.json +0 -6
  1478. package/obsidian/i18n/DefaultTranslationsBase/package.json +0 -6
  1479. /package/dist/lib/cjs/{AbortController.d.cts → abort-controller.d.cts} +0 -0
  1480. /package/dist/lib/cjs/{Array.d.cts → array.d.cts} +0 -0
  1481. /package/dist/lib/cjs/{AsyncEvents.d.cts → async-events.d.cts} +0 -0
  1482. /package/dist/lib/cjs/codemirror/{StateFieldSpec.d.cts → state-field-spec.d.cts} +0 -0
  1483. /package/dist/lib/cjs/{CssClass.d.cts → css-class.d.cts} +0 -0
  1484. /package/dist/lib/cjs/{DebugController.d.cts → debug-controller.d.cts} +0 -0
  1485. /package/dist/lib/cjs/{Enum.d.cts → enum.d.cts} +0 -0
  1486. /package/dist/lib/cjs/{Error.d.cts → error.d.cts} +0 -0
  1487. /package/dist/lib/cjs/{Function.d.cts → function.d.cts} +0 -0
  1488. /package/dist/lib/cjs/{Library.d.cts → library.d.cts} +0 -0
  1489. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/api/data-array.d.cts +0 -0
  1490. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/api/extensions.d.cts +0 -0
  1491. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/api/inline-api.d.cts +0 -0
  1492. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/api/plugin-api.d.cts +0 -0
  1493. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/api/result.d.cts +0 -0
  1494. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/data-import/common.d.cts +0 -0
  1495. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/data-import/csv.d.cts +0 -0
  1496. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/data-import/inline-field.d.cts +0 -0
  1497. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/data-import/markdown-file.d.cts +0 -0
  1498. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/data-import/persister.d.cts +0 -0
  1499. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/data-import/web-worker/import-entry.d.cts +0 -0
  1500. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/data-import/web-worker/import-impl.d.cts +0 -0
  1501. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/data-import/web-worker/import-manager.d.cts +0 -0
  1502. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/data-index/index.d.cts +0 -0
  1503. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/data-index/resolver.d.cts +0 -0
  1504. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/data-index/source.d.cts +0 -0
  1505. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/data-model/markdown.d.cts +0 -0
  1506. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/data-model/serialized/markdown.d.cts +0 -0
  1507. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/data-model/transferable.d.cts +0 -0
  1508. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/data-model/value.d.cts +0 -0
  1509. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/expression/binaryop.d.cts +0 -0
  1510. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/expression/context.d.cts +0 -0
  1511. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/expression/field.d.cts +0 -0
  1512. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/expression/functions.d.cts +0 -0
  1513. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/expression/parse.d.cts +0 -0
  1514. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/index.d.cts +0 -0
  1515. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/main.d.cts +0 -0
  1516. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/query/engine.d.cts +0 -0
  1517. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/query/parse.d.cts +0 -0
  1518. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/query/query.d.cts +0 -0
  1519. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/settings.d.cts +0 -0
  1520. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/typings/obsidian-ex.d.cts +0 -0
  1521. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/typings/workers.d.cts +0 -0
  1522. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/ui/export/markdown.d.cts +0 -0
  1523. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/ui/lp-render.d.cts +0 -0
  1524. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/ui/markdown.d.cts +0 -0
  1525. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/ui/refreshable-view.d.cts +0 -0
  1526. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/ui/render.d.cts +0 -0
  1527. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/ui/views/calendar-view.d.cts +0 -0
  1528. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/ui/views/inline-field-live-preview.d.cts +0 -0
  1529. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/ui/views/inline-view.d.cts +0 -0
  1530. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/ui/views/js-view.d.cts +0 -0
  1531. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/ui/views/list-view.d.cts +0 -0
  1532. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/ui/views/table-view.d.cts +0 -0
  1533. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/ui/views/task-view.d.cts +0 -0
  1534. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/util/hash.d.cts +0 -0
  1535. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/util/locale.d.cts +0 -0
  1536. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/util/media.d.cts +0 -0
  1537. /package/dist/lib/cjs/obsidian/@types/{Dataview → dataview}/util/normalize.d.cts +0 -0
  1538. /package/dist/lib/cjs/obsidian/{App.d.cts → app.d.cts} +0 -0
  1539. /package/dist/lib/cjs/obsidian/{CodeBlockMarkdownInformation.d.cts → code-block-markdown-information.d.cts} +0 -0
  1540. /package/dist/lib/cjs/obsidian/{Commands/CommandBase.d.cts → commands/command-base.d.cts} +0 -0
  1541. /package/dist/lib/cjs/obsidian/{Components/SettingComponents/SettingComponentWrapper.d.cts → components/setting-components/setting-component-wrapper.d.cts} +0 -0
  1542. /package/dist/lib/cjs/obsidian/{Components/SettingComponents/TextBasedComponent.d.cts → components/setting-components/text-based-component.d.cts} +0 -0
  1543. /package/dist/lib/cjs/obsidian/{Components/SettingComponents/ValueComponentWithChangeTracking.d.cts → components/setting-components/value-component-with-change-tracking.d.cts} +0 -0
  1544. /package/dist/lib/cjs/obsidian/{Editor.d.cts → editor.d.cts} +0 -0
  1545. /package/dist/lib/cjs/obsidian/{FrontmatterLinkCacheWithOffsets.d.cts → frontmatter-link-cache-with-offsets.d.cts} +0 -0
  1546. /package/dist/lib/cjs/obsidian/{Logger.d.cts → logger.d.cts} +0 -0
  1547. /package/dist/lib/cjs/obsidian/{Loop.d.cts → loop.d.cts} +0 -0
  1548. /package/dist/lib/cjs/obsidian/{MarkdownView.d.cts → markdown-view.d.cts} +0 -0
  1549. /package/dist/lib/cjs/obsidian/{Modals/Alert.d.cts → modals/alert.d.cts} +0 -0
  1550. /package/dist/lib/cjs/obsidian/{Modals/Confirm.d.cts → modals/confirm.d.cts} +0 -0
  1551. /package/dist/lib/cjs/obsidian/{MonkeyAround.d.cts → monkey-around.d.cts} +0 -0
  1552. /package/dist/lib/cjs/obsidian/{ObsidianSettings.d.cts → obsidian-settings.d.cts} +0 -0
  1553. /package/dist/lib/cjs/obsidian/{Pdf.d.cts → pdf.d.cts} +0 -0
  1554. /package/dist/lib/cjs/obsidian/{Plugin/PluginContext.d.cts → plugin/plugin-context.d.cts} +0 -0
  1555. /package/dist/lib/cjs/obsidian/{Plugin/PluginId.d.cts → plugin/plugin-id.d.cts} +0 -0
  1556. /package/dist/lib/cjs/obsidian/{Plugin/Plugin.d.cts → plugin/plugin.d.cts} +0 -0
  1557. /package/dist/lib/cjs/obsidian/{Queue.d.cts → queue.d.cts} +0 -0
  1558. /package/dist/lib/cjs/obsidian/{React/AppContext.d.cts → react/app-context.d.cts} +0 -0
  1559. /package/dist/lib/cjs/obsidian/{RenameDeleteHandler.d.cts → rename-delete-handler.d.cts} +0 -0
  1560. /package/dist/lib/cjs/obsidian/{ResourceUrl.d.cts → resource-url.d.cts} +0 -0
  1561. /package/dist/lib/cjs/obsidian/{Validation.d.cts → validation.d.cts} +0 -0
  1562. /package/dist/lib/cjs/obsidian/{Workspace.d.cts → workspace.d.cts} +0 -0
  1563. /package/dist/lib/cjs/{Path.d.cts → path.d.cts} +0 -0
  1564. /package/dist/lib/cjs/{RegExp.d.cts → reg-exp.d.cts} +0 -0
  1565. /package/dist/lib/cjs/{ScriptUtils → script-utils}/build.d.cts +0 -0
  1566. /package/dist/lib/cjs/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/changeExtensionPlugin.d.cts +0 -0
  1567. /package/dist/lib/cjs/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/copyToObsidianPluginsFolderPlugin.d.cts +0 -0
  1568. /package/dist/lib/cjs/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/customEsbuildOptionsPlugin.d.cts +0 -0
  1569. /package/dist/lib/cjs/{ScriptUtils/esbuild/Dependency.d.cts → script-utils/bundlers/esbuild-impl/dependency.d.cts} +0 -0
  1570. /package/dist/lib/cjs/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/fixEsmPlugin.d.cts +0 -0
  1571. /package/dist/lib/cjs/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/fixSourceMapsPlugin.d.cts +0 -0
  1572. /package/dist/lib/cjs/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/preprocessPlugin.d.cts +0 -0
  1573. /package/dist/lib/cjs/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/renameCssPlugin.d.cts +0 -0
  1574. /package/dist/lib/cjs/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/svelteWrapperPlugin.d.cts +0 -0
  1575. /package/dist/lib/cjs/{ScriptUtils/CodeGenerator.d.cts → script-utils/code-generator.d.cts} +0 -0
  1576. /package/dist/lib/cjs/{ScriptUtils/ESLint/eslint.config.d.cts → script-utils/linters/eslint-config.d.cts} +0 -0
  1577. /package/dist/lib/cjs/{ScriptUtils/ESLint → script-utils/linters/eslint-types}/@types/eslint-plugin-modules-newlines.d.cts +0 -0
  1578. /package/dist/lib/cjs/{ScriptUtils/ESLint → script-utils/linters/eslint-types}/@types/eslint-plugin-verify-tsdoc.d.cts +0 -0
  1579. /package/dist/lib/cjs/{ScriptUtils/markdownlint → script-utils/linters/markdownlint-types}/@types/markdownlint-cli2-config-schema.d.cts +0 -0
  1580. /package/dist/lib/cjs/{ScriptUtils/NpmPublish.d.cts → script-utils/npm-publish.d.cts} +0 -0
  1581. /package/dist/lib/cjs/{ScriptUtils/NpmRun.d.cts → script-utils/npm-run.d.cts} +0 -0
  1582. /package/dist/lib/cjs/{TwoWayMap.d.cts → two-way-map.d.cts} +0 -0
  1583. /package/dist/lib/cjs/{Type.d.cts → type.d.cts} +0 -0
  1584. /package/dist/lib/cjs/{ValueProvider.d.cts → value-provider.d.cts} +0 -0
  1585. /package/dist/lib/esm/{AbortController.d.mts → abort-controller.d.mts} +0 -0
  1586. /package/dist/lib/esm/{Array.d.mts → array.d.mts} +0 -0
  1587. /package/dist/lib/esm/{AsyncEvents.d.mts → async-events.d.mts} +0 -0
  1588. /package/dist/lib/esm/codemirror/{StateFieldSpec.d.mts → state-field-spec.d.mts} +0 -0
  1589. /package/dist/lib/esm/{DebugController.mjs → codemirror/state-field-spec.mjs} +0 -0
  1590. /package/dist/lib/esm/{CssClass.d.mts → css-class.d.mts} +0 -0
  1591. /package/dist/lib/esm/{DebugController.d.mts → debug-controller.d.mts} +0 -0
  1592. /package/dist/lib/esm/{codemirror/StateFieldSpec.mjs → debug-controller.mjs} +0 -0
  1593. /package/dist/lib/esm/{Enum.d.mts → enum.d.mts} +0 -0
  1594. /package/dist/lib/esm/{Error.d.mts → error.d.mts} +0 -0
  1595. /package/dist/lib/esm/{Function.d.mts → function.d.mts} +0 -0
  1596. /package/dist/lib/esm/{Library.d.mts → library.d.mts} +0 -0
  1597. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/api/data-array.d.mts +0 -0
  1598. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/api/extensions.d.mts +0 -0
  1599. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/api/inline-api.d.mts +0 -0
  1600. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/api/plugin-api.d.mts +0 -0
  1601. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/api/result.d.mts +0 -0
  1602. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/data-import/common.d.mts +0 -0
  1603. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/data-import/csv.d.mts +0 -0
  1604. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/data-import/inline-field.d.mts +0 -0
  1605. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/data-import/markdown-file.d.mts +0 -0
  1606. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/data-import/persister.d.mts +0 -0
  1607. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/data-import/web-worker/import-entry.d.mts +0 -0
  1608. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/data-import/web-worker/import-impl.d.mts +0 -0
  1609. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/data-import/web-worker/import-manager.d.mts +0 -0
  1610. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/data-index/index.d.mts +0 -0
  1611. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/data-index/resolver.d.mts +0 -0
  1612. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/data-index/source.d.mts +0 -0
  1613. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/data-model/markdown.d.mts +0 -0
  1614. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/data-model/serialized/markdown.d.mts +0 -0
  1615. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/data-model/transferable.d.mts +0 -0
  1616. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/data-model/value.d.mts +0 -0
  1617. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/expression/binaryop.d.mts +0 -0
  1618. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/expression/context.d.mts +0 -0
  1619. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/expression/field.d.mts +0 -0
  1620. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/expression/functions.d.mts +0 -0
  1621. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/expression/parse.d.mts +0 -0
  1622. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/index.d.mts +0 -0
  1623. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/main.d.mts +0 -0
  1624. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/query/engine.d.mts +0 -0
  1625. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/query/parse.d.mts +0 -0
  1626. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/query/query.d.mts +0 -0
  1627. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/settings.d.mts +0 -0
  1628. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/typings/obsidian-ex.d.mts +0 -0
  1629. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/typings/workers.d.mts +0 -0
  1630. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/ui/export/markdown.d.mts +0 -0
  1631. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/ui/lp-render.d.mts +0 -0
  1632. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/ui/markdown.d.mts +0 -0
  1633. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/ui/refreshable-view.d.mts +0 -0
  1634. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/ui/render.d.mts +0 -0
  1635. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/ui/views/calendar-view.d.mts +0 -0
  1636. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/ui/views/inline-field-live-preview.d.mts +0 -0
  1637. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/ui/views/inline-view.d.mts +0 -0
  1638. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/ui/views/js-view.d.mts +0 -0
  1639. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/ui/views/list-view.d.mts +0 -0
  1640. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/ui/views/table-view.d.mts +0 -0
  1641. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/ui/views/task-view.d.mts +0 -0
  1642. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/util/hash.d.mts +0 -0
  1643. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/util/locale.d.mts +0 -0
  1644. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/util/media.d.mts +0 -0
  1645. /package/dist/lib/esm/obsidian/@types/{Dataview → dataview}/util/normalize.d.mts +0 -0
  1646. /package/dist/lib/esm/obsidian/{App.d.mts → app.d.mts} +0 -0
  1647. /package/dist/lib/esm/obsidian/{CodeBlockMarkdownInformation.d.mts → code-block-markdown-information.d.mts} +0 -0
  1648. /package/dist/lib/esm/obsidian/{CodeBlockMarkdownInformation.mjs → code-block-markdown-information.mjs} +0 -0
  1649. /package/dist/lib/esm/obsidian/{Commands/CommandBase.d.mts → commands/command-base.d.mts} +0 -0
  1650. /package/dist/lib/esm/obsidian/{Components/SettingComponents/SettingComponentWrapper.d.mts → components/setting-components/setting-component-wrapper.d.mts} +0 -0
  1651. /package/dist/lib/esm/obsidian/{Components/SettingComponents/TextBasedComponent.d.mts → components/setting-components/text-based-component.d.mts} +0 -0
  1652. /package/dist/lib/esm/obsidian/{Components/SettingComponents/ValueComponentWithChangeTracking.d.mts → components/setting-components/value-component-with-change-tracking.d.mts} +0 -0
  1653. /package/dist/lib/esm/obsidian/{Components/SettingComponents/ValueComponentWithChangeTracking.mjs → components/setting-components/value-component-with-change-tracking.mjs} +0 -0
  1654. /package/dist/lib/esm/obsidian/{Editor.d.mts → editor.d.mts} +0 -0
  1655. /package/dist/lib/esm/obsidian/{FrontmatterLinkCacheWithOffsets.d.mts → frontmatter-link-cache-with-offsets.d.mts} +0 -0
  1656. /package/dist/lib/esm/obsidian/{Logger.d.mts → logger.d.mts} +0 -0
  1657. /package/dist/lib/esm/obsidian/{Loop.d.mts → loop.d.mts} +0 -0
  1658. /package/dist/lib/esm/obsidian/{MarkdownView.d.mts → markdown-view.d.mts} +0 -0
  1659. /package/dist/lib/esm/obsidian/{Modals/Alert.d.mts → modals/alert.d.mts} +0 -0
  1660. /package/dist/lib/esm/obsidian/{Modals/Confirm.d.mts → modals/confirm.d.mts} +0 -0
  1661. /package/dist/lib/esm/obsidian/{MonkeyAround.d.mts → monkey-around.d.mts} +0 -0
  1662. /package/dist/lib/esm/obsidian/{ObsidianSettings.d.mts → obsidian-settings.d.mts} +0 -0
  1663. /package/dist/lib/esm/obsidian/{Pdf.d.mts → pdf.d.mts} +0 -0
  1664. /package/dist/lib/esm/obsidian/{Plugin/PluginContext.d.mts → plugin/plugin-context.d.mts} +0 -0
  1665. /package/dist/lib/esm/obsidian/{Plugin/PluginId.d.mts → plugin/plugin-id.d.mts} +0 -0
  1666. /package/dist/lib/esm/obsidian/{Plugin/PluginSettingsWrapper.mjs → plugin/plugin-settings-wrapper.mjs} +0 -0
  1667. /package/dist/lib/esm/obsidian/{Plugin/PluginTypesBase.mjs → plugin/plugin-types-base.mjs} +0 -0
  1668. /package/dist/lib/esm/obsidian/{Plugin/Plugin.d.mts → plugin/plugin.d.mts} +0 -0
  1669. /package/dist/lib/esm/obsidian/{Queue.d.mts → queue.d.mts} +0 -0
  1670. /package/dist/lib/esm/obsidian/{React/AppContext.d.mts → react/app-context.d.mts} +0 -0
  1671. /package/dist/lib/esm/obsidian/{RenameDeleteHandler.d.mts → rename-delete-handler.d.mts} +0 -0
  1672. /package/dist/lib/esm/obsidian/{ResourceUrl.d.mts → resource-url.d.mts} +0 -0
  1673. /package/dist/lib/esm/obsidian/{Validation.d.mts → validation.d.mts} +0 -0
  1674. /package/dist/lib/esm/obsidian/{Workspace.d.mts → workspace.d.mts} +0 -0
  1675. /package/dist/lib/esm/{Path.d.mts → path.d.mts} +0 -0
  1676. /package/dist/lib/esm/{RegExp.d.mts → reg-exp.d.mts} +0 -0
  1677. /package/dist/lib/esm/{ScriptUtils → script-utils}/build.d.mts +0 -0
  1678. /package/dist/lib/esm/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/changeExtensionPlugin.d.mts +0 -0
  1679. /package/dist/lib/esm/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/copyToObsidianPluginsFolderPlugin.d.mts +0 -0
  1680. /package/dist/lib/esm/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/customEsbuildOptionsPlugin.d.mts +0 -0
  1681. /package/dist/lib/esm/{ScriptUtils/esbuild/Dependency.d.mts → script-utils/bundlers/esbuild-impl/dependency.d.mts} +0 -0
  1682. /package/dist/lib/esm/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/fixEsmPlugin.d.mts +0 -0
  1683. /package/dist/lib/esm/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/fixSourceMapsPlugin.d.mts +0 -0
  1684. /package/dist/lib/esm/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/preprocessPlugin.d.mts +0 -0
  1685. /package/dist/lib/esm/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/renameCssPlugin.d.mts +0 -0
  1686. /package/dist/lib/esm/{ScriptUtils/esbuild → script-utils/bundlers/esbuild-impl}/svelteWrapperPlugin.d.mts +0 -0
  1687. /package/dist/lib/esm/{ScriptUtils/CodeGenerator.d.mts → script-utils/code-generator.d.mts} +0 -0
  1688. /package/dist/lib/esm/{ScriptUtils/ESLint/eslint.config.d.mts → script-utils/linters/eslint-config.d.mts} +0 -0
  1689. /package/dist/lib/esm/{ScriptUtils/ESLint → script-utils/linters/eslint-types}/@types/eslint-plugin-modules-newlines.d.mts +0 -0
  1690. /package/dist/lib/esm/{ScriptUtils/ESLint → script-utils/linters/eslint-types}/@types/eslint-plugin-verify-tsdoc.d.mts +0 -0
  1691. /package/dist/lib/esm/{ScriptUtils/markdownlint → script-utils/linters/markdownlint-types}/@types/markdownlint-cli2-config-schema.d.mts +0 -0
  1692. /package/dist/lib/esm/{ScriptUtils/NpmPublish.d.mts → script-utils/npm-publish.d.mts} +0 -0
  1693. /package/dist/lib/esm/{ScriptUtils/NpmRun.d.mts → script-utils/npm-run.d.mts} +0 -0
  1694. /package/dist/lib/esm/{TwoWayMap.d.mts → two-way-map.d.mts} +0 -0
  1695. /package/dist/lib/esm/{Type.d.mts → type.d.mts} +0 -0
  1696. /package/dist/lib/esm/{ValueProvider.d.mts → value-provider.d.mts} +0 -0
@@ -0,0 +1,441 @@
1
+ /*
2
+ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
+ if you want to view the source, please visit the github repository of this plugin
4
+ */
5
+
6
+ (function initEsm() {
7
+ if (globalThis.process) {
8
+ return;
9
+ }
10
+
11
+ const browserProcess = {
12
+ browser: true,
13
+ cwd() {
14
+ return '/';
15
+ },
16
+ env: {},
17
+ platform: 'android'
18
+ };
19
+ globalThis.process = browserProcess;
20
+ })();
21
+
22
+ import {
23
+ MarkdownView,
24
+ TAbstractFile,
25
+ TFile,
26
+ TFolder
27
+ } from "obsidian";
28
+ import {
29
+ getDataAdapterEx,
30
+ parentFolderPath,
31
+ ViewType
32
+ } from "obsidian-typings/implementations";
33
+ import { abortSignalAny } from "../abort-controller.mjs";
34
+ import { getLibDebugger } from "../debug.mjs";
35
+ import { noopAsync } from "../function.mjs";
36
+ import {
37
+ basename,
38
+ dirname,
39
+ extname,
40
+ join
41
+ } from "../path.mjs";
42
+ import { resolveValue } from "../value-provider.mjs";
43
+ import { retryWithTimeoutNotice } from "./async-with-notice.mjs";
44
+ import {
45
+ lockEditor,
46
+ unlockEditor
47
+ } from "./editor.mjs";
48
+ import {
49
+ asFile,
50
+ asFolder,
51
+ FileSystemType,
52
+ getAbstractFile,
53
+ getAbstractFileOrNull,
54
+ getFile,
55
+ getFileOrNull,
56
+ getFileSystemType,
57
+ getFolder,
58
+ getFolderOrNull,
59
+ getPath,
60
+ isFile,
61
+ isMarkdownFile,
62
+ isNote
63
+ } from "./file-system.mjs";
64
+ import { t } from "./i18n/i18n.mjs";
65
+ async function copySafe(app, oldPathOrFile, newPath) {
66
+ const file = getFile(app, oldPathOrFile);
67
+ if (file.path === newPath) {
68
+ return newPath;
69
+ }
70
+ const newFolderPath = parentFolderPath(newPath);
71
+ await createFolderSafe(app, newFolderPath);
72
+ const newAvailablePath = getAvailablePath(app, newPath);
73
+ try {
74
+ await app.vault.copy(file, newAvailablePath);
75
+ } catch (e) {
76
+ if (!await app.vault.exists(newAvailablePath)) {
77
+ throw e;
78
+ }
79
+ }
80
+ return newAvailablePath;
81
+ }
82
+ async function createFolderSafe(app, path) {
83
+ if (await app.vault.adapter.exists(path)) {
84
+ return false;
85
+ }
86
+ try {
87
+ await app.vault.createFolder(path);
88
+ return true;
89
+ } catch (e) {
90
+ if (!await app.vault.exists(path)) {
91
+ throw e;
92
+ }
93
+ return true;
94
+ }
95
+ }
96
+ async function createTempFile(app, path) {
97
+ let file = getFileOrNull(app, path);
98
+ if (file) {
99
+ return noopAsync;
100
+ }
101
+ const folderCleanup = await createTempFolder(app, parentFolderPath(path));
102
+ try {
103
+ await app.vault.create(path, "");
104
+ } catch (e) {
105
+ if (!await app.vault.exists(path)) {
106
+ throw e;
107
+ }
108
+ }
109
+ return async () => {
110
+ file = getFile(app, path);
111
+ if (!file.deleted) {
112
+ await trashSafe(app, file);
113
+ }
114
+ await folderCleanup();
115
+ };
116
+ }
117
+ async function createTempFolder(app, path) {
118
+ let folder = getFolderOrNull(app, path);
119
+ if (folder) {
120
+ return noopAsync;
121
+ }
122
+ const folderPath = parentFolderPath(path);
123
+ await createTempFolder(app, folderPath);
124
+ const folderCleanup = await createTempFolder(app, parentFolderPath(path));
125
+ await createFolderSafe(app, path);
126
+ return async () => {
127
+ folder = getFolder(app, path);
128
+ if (!folder.deleted) {
129
+ await trashSafe(app, folder);
130
+ }
131
+ await folderCleanup();
132
+ };
133
+ }
134
+ async function deleteEmptyFolder(app, pathOrFolder) {
135
+ const folder = getFolderOrNull(app, pathOrFolder);
136
+ if (!folder) {
137
+ return;
138
+ }
139
+ if (!await isEmptyFolder(app, folder)) {
140
+ return;
141
+ }
142
+ await trashSafe(app, folder);
143
+ }
144
+ async function deleteEmptyFolderHierarchy(app, pathOrFolder) {
145
+ let folder = getFolderOrNull(app, pathOrFolder);
146
+ while (folder) {
147
+ if (!await isEmptyFolder(app, folder)) {
148
+ return;
149
+ }
150
+ const parent = folder.parent;
151
+ await deleteEmptyFolder(app, folder);
152
+ folder = parent;
153
+ }
154
+ }
155
+ function getAbstractFilePathSafe(app, path, type) {
156
+ const abstractFile = getAbstractFileOrNull(app, path);
157
+ if (abstractFile && getFileSystemType(abstractFile) === type) {
158
+ return path;
159
+ }
160
+ return getAvailablePath(app, path);
161
+ }
162
+ function getAvailablePath(app, path) {
163
+ const ext = extname(path);
164
+ return app.vault.getAvailablePath(join(dirname(path), basename(path, ext)), ext.slice(1));
165
+ }
166
+ function getFilePathSafe(app, path) {
167
+ return getAbstractFilePathSafe(app, path, FileSystemType.File);
168
+ }
169
+ function getFolderPathSafe(app, path) {
170
+ return getAbstractFilePathSafe(app, path, FileSystemType.Folder);
171
+ }
172
+ function getMarkdownFilesSorted(app) {
173
+ return app.vault.getMarkdownFiles().sort((a, b) => a.path.localeCompare(b.path));
174
+ }
175
+ function getNoteFilesSorted(app) {
176
+ return app.vault.getAllLoadedFiles().filter((file) => isFile(file) && isNote(app, file)).sort((a, b) => a.path.localeCompare(b.path));
177
+ }
178
+ async function getOrCreateAbstractFileSafe(app, path, type) {
179
+ path = getAbstractFilePathSafe(app, path, type);
180
+ const abstractFile = getAbstractFileOrNull(app, path);
181
+ if (abstractFile) {
182
+ return abstractFile;
183
+ }
184
+ switch (type) {
185
+ case FileSystemType.File:
186
+ return await app.vault.create(path, "");
187
+ case FileSystemType.Folder:
188
+ return await app.vault.createFolder(path);
189
+ default:
190
+ throw new Error(`Invalid file system type: ${type}`);
191
+ }
192
+ }
193
+ async function getOrCreateFileSafe(app, path) {
194
+ return asFile(await getOrCreateAbstractFileSafe(app, path, FileSystemType.File));
195
+ }
196
+ async function getOrCreateFolderSafe(app, path) {
197
+ return asFolder(await getOrCreateAbstractFileSafe(app, path, FileSystemType.Folder));
198
+ }
199
+ function getSafeRenamePath(app, oldPathOrAbstractFile, newPath) {
200
+ const oldPath = getPath(app, oldPathOrAbstractFile);
201
+ if (getDataAdapterEx(app).insensitive) {
202
+ let folderPath = dirname(newPath);
203
+ let nonExistingPath = basename(newPath);
204
+ let folder;
205
+ while (true) {
206
+ folder = getFolderOrNull(app, folderPath, true);
207
+ if (folder) {
208
+ break;
209
+ }
210
+ nonExistingPath = join(basename(folderPath), nonExistingPath);
211
+ folderPath = dirname(folderPath);
212
+ }
213
+ newPath = join(folder.getParentPrefix(), nonExistingPath);
214
+ }
215
+ if (oldPath.toLowerCase() === newPath.toLowerCase()) {
216
+ return newPath;
217
+ }
218
+ return getAvailablePath(app, newPath);
219
+ }
220
+ async function invokeWithFileSystemLock(app, pathOrFile, fn) {
221
+ const file = getFile(app, pathOrFile);
222
+ await app.vault.process(file, (content) => {
223
+ fn(content);
224
+ return content;
225
+ });
226
+ }
227
+ function isChild(app, a, b) {
228
+ const aPath = getPath(app, a);
229
+ const bPath = getPath(app, b);
230
+ if (aPath === bPath) {
231
+ return false;
232
+ }
233
+ if (bPath === "/") {
234
+ return true;
235
+ }
236
+ return aPath.startsWith(`${bPath}/`);
237
+ }
238
+ function isChildOrSelf(app, a, b) {
239
+ const aPath = getPath(app, a);
240
+ const bPath = getPath(app, b);
241
+ return aPath === bPath || isChild(app, a, b);
242
+ }
243
+ async function isEmptyFolder(app, pathOrFolder) {
244
+ const listedFiles = await listSafe(app, getPath(app, pathOrFolder));
245
+ return listedFiles.files.length === 0 && listedFiles.folders.length === 0;
246
+ }
247
+ async function listSafe(app, pathOrFolder) {
248
+ const path = getPath(app, pathOrFolder);
249
+ const EMPTY = { files: [], folders: [] };
250
+ if ((await app.vault.adapter.stat(path))?.type !== "folder") {
251
+ return EMPTY;
252
+ }
253
+ try {
254
+ return await app.vault.adapter.list(path);
255
+ } catch (e) {
256
+ if (await app.vault.exists(path)) {
257
+ throw e;
258
+ }
259
+ return EMPTY;
260
+ }
261
+ }
262
+ async function process(app, pathOrFile, newContentProvider, options = {}) {
263
+ const DEFAULT_RETRY_OPTIONS = {
264
+ shouldFailOnMissingFile: true,
265
+ shouldLockEditorWhileProcessing: true,
266
+ shouldShowTimeoutNotice: true,
267
+ // eslint-disable-next-line no-magic-numbers -- Default value.
268
+ timeoutInMilliseconds: 500
269
+ };
270
+ const fullOptions = { ...DEFAULT_RETRY_OPTIONS, ...options };
271
+ const abortController = new AbortController();
272
+ fullOptions.abortSignal = abortSignalAny(fullOptions.abortSignal, abortController.signal);
273
+ const path = getPath(app, pathOrFile);
274
+ let activeLeafChangeEventRef = null;
275
+ if (fullOptions.shouldLockEditorWhileProcessing) {
276
+ for (const leaf of app.workspace.getLeavesOfType(ViewType.Markdown)) {
277
+ if (leaf.view instanceof MarkdownView && leaf.view.file?.path === path) {
278
+ lockEditor(leaf.view.editor);
279
+ }
280
+ }
281
+ activeLeafChangeEventRef = app.workspace.on("active-leaf-change", (leaf) => {
282
+ if (leaf?.view instanceof MarkdownView && leaf.view.file?.path === path) {
283
+ lockEditor(leaf.view.editor);
284
+ }
285
+ });
286
+ }
287
+ try {
288
+ await retryWithTimeoutNotice({
289
+ async operationFn(abortSignal) {
290
+ abortSignal.throwIfAborted();
291
+ const oldContent = await readSafe(app, pathOrFile);
292
+ abortSignal.throwIfAborted();
293
+ if (oldContent === null) {
294
+ return handleMissingFile();
295
+ }
296
+ const newContent = await resolveValue(newContentProvider, abortSignal, oldContent);
297
+ abortSignal.throwIfAborted();
298
+ if (newContent === null) {
299
+ return false;
300
+ }
301
+ let isSuccess = true;
302
+ const doesFileExist = await invokeFileActionSafe(app, pathOrFile, async (file) => {
303
+ abortSignal.throwIfAborted();
304
+ await app.vault.process(file, (content) => {
305
+ abortSignal.throwIfAborted();
306
+ if (content !== oldContent) {
307
+ getLibDebugger("Vault:process")("Content has changed since it was read. Retrying...", {
308
+ actualContent: content,
309
+ expectedContent: oldContent,
310
+ path: file.path
311
+ });
312
+ isSuccess = false;
313
+ return content;
314
+ }
315
+ return newContent;
316
+ });
317
+ abortSignal.throwIfAborted();
318
+ });
319
+ if (!doesFileExist) {
320
+ return handleMissingFile();
321
+ }
322
+ return isSuccess;
323
+ function handleMissingFile() {
324
+ if (fullOptions.shouldFailOnMissingFile) {
325
+ throw new Error(`File '${path}' not found`);
326
+ }
327
+ return true;
328
+ }
329
+ },
330
+ operationName: t(($) => $.obsidianDevUtils.vault.processFile, { filePath: path }),
331
+ retryOptions: fullOptions,
332
+ shouldShowTimeoutNotice: fullOptions.shouldShowTimeoutNotice
333
+ });
334
+ } finally {
335
+ activeLeafChangeEventRef?.e.offref(activeLeafChangeEventRef);
336
+ for (const leaf of app.workspace.getLeavesOfType(ViewType.Markdown)) {
337
+ if (leaf.view instanceof MarkdownView && leaf.view.file?.path === path) {
338
+ unlockEditor(leaf.view.editor);
339
+ }
340
+ }
341
+ }
342
+ }
343
+ async function readSafe(app, pathOrFile) {
344
+ let content = null;
345
+ await invokeFileActionSafe(app, pathOrFile, async (file) => {
346
+ await saveNote(app, file);
347
+ content = await app.vault.read(file);
348
+ });
349
+ return content;
350
+ }
351
+ async function renameSafe(app, oldPathOrAbstractFile, newPath) {
352
+ const oldAbstractFile = getAbstractFile(app, oldPathOrAbstractFile);
353
+ const newAvailablePath = getSafeRenamePath(app, oldPathOrAbstractFile, newPath);
354
+ if (oldAbstractFile.path.toLowerCase() === newAvailablePath.toLowerCase()) {
355
+ if (oldAbstractFile.path !== newPath) {
356
+ await app.fileManager.renameFile(oldAbstractFile, newAvailablePath);
357
+ }
358
+ return newAvailablePath;
359
+ }
360
+ const newFolderPath = parentFolderPath(newAvailablePath);
361
+ await createFolderSafe(app, newFolderPath);
362
+ try {
363
+ await app.fileManager.renameFile(oldAbstractFile, newAvailablePath);
364
+ } catch (e) {
365
+ if (!await app.vault.exists(newAvailablePath) || await app.vault.exists(oldAbstractFile.path)) {
366
+ throw e;
367
+ }
368
+ }
369
+ return newAvailablePath;
370
+ }
371
+ async function saveNote(app, pathOrFile) {
372
+ if (!isMarkdownFile(app, pathOrFile)) {
373
+ return;
374
+ }
375
+ const path = getPath(app, pathOrFile);
376
+ for (const leaf of app.workspace.getLeavesOfType(ViewType.Markdown)) {
377
+ if (leaf.view instanceof MarkdownView && leaf.view.file?.path === path && leaf.view.dirty) {
378
+ await leaf.view.save();
379
+ }
380
+ }
381
+ }
382
+ async function trashSafe(app, pathOrFile) {
383
+ const file = getAbstractFileOrNull(app, pathOrFile);
384
+ if (!file) {
385
+ return;
386
+ }
387
+ try {
388
+ await app.fileManager.trashFile(file);
389
+ } catch (e) {
390
+ if (await app.vault.exists(file.path)) {
391
+ throw e;
392
+ }
393
+ getLibDebugger("Vault:trashSafe")(`An error occurred while trashing ${file.path}, but the file no longer exists.`, { error: e, path: file.path });
394
+ }
395
+ }
396
+ async function invokeFileActionSafe(app, pathOrFile, fileAction) {
397
+ const path = getPath(app, pathOrFile);
398
+ let file = getFileOrNull(app, path);
399
+ if (!file || file.deleted) {
400
+ return false;
401
+ }
402
+ try {
403
+ await fileAction(file);
404
+ return true;
405
+ } catch (e) {
406
+ file = getFileOrNull(app, path);
407
+ if (!file || file.deleted) {
408
+ return false;
409
+ }
410
+ throw e;
411
+ }
412
+ }
413
+ export {
414
+ copySafe,
415
+ createFolderSafe,
416
+ createTempFile,
417
+ createTempFolder,
418
+ deleteEmptyFolder,
419
+ deleteEmptyFolderHierarchy,
420
+ getAbstractFilePathSafe,
421
+ getAvailablePath,
422
+ getFilePathSafe,
423
+ getFolderPathSafe,
424
+ getMarkdownFilesSorted,
425
+ getNoteFilesSorted,
426
+ getOrCreateAbstractFileSafe,
427
+ getOrCreateFileSafe,
428
+ getOrCreateFolderSafe,
429
+ getSafeRenamePath,
430
+ invokeWithFileSystemLock,
431
+ isChild,
432
+ isChildOrSelf,
433
+ isEmptyFolder,
434
+ listSafe,
435
+ process,
436
+ readSafe,
437
+ renameSafe,
438
+ saveNote,
439
+ trashSafe
440
+ };
441
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3ZhdWx0LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIFRoaXMgbW9kdWxlIHByb3ZpZGVzIHV0aWxpdHkgZnVuY3Rpb25zIGZvciB3b3JraW5nIHdpdGggdGhlIE9ic2lkaWFuIFZhdWx0LlxuICovXG5cbmltcG9ydCB0eXBlIHtcbiAgQXBwLFxuICBFdmVudFJlZixcbiAgTGlzdGVkRmlsZXNcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQge1xuICBNYXJrZG93blZpZXcsXG4gIFRBYnN0cmFjdEZpbGUsXG4gIFRGaWxlLFxuICBURm9sZGVyXG59IGZyb20gJ29ic2lkaWFuJztcbmltcG9ydCB7XG4gIGdldERhdGFBZGFwdGVyRXgsXG4gIHBhcmVudEZvbGRlclBhdGgsXG4gIFZpZXdUeXBlXG59IGZyb20gJ29ic2lkaWFuLXR5cGluZ3MvaW1wbGVtZW50YXRpb25zJztcblxuaW1wb3J0IHR5cGUgeyBSZXRyeU9wdGlvbnMgfSBmcm9tICcuLi9hc3luYy50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbHVlUHJvdmlkZXIgfSBmcm9tICcuLi92YWx1ZS1wcm92aWRlci50cyc7XG5pbXBvcnQgdHlwZSB7XG4gIFBhdGhPckFic3RyYWN0RmlsZSxcbiAgUGF0aE9yRmlsZSxcbiAgUGF0aE9yRm9sZGVyXG59IGZyb20gJy4vZmlsZS1zeXN0ZW0udHMnO1xuXG5pbXBvcnQgeyBhYm9ydFNpZ25hbEFueSB9IGZyb20gJy4uL2Fib3J0LWNvbnRyb2xsZXIudHMnO1xuaW1wb3J0IHsgZ2V0TGliRGVidWdnZXIgfSBmcm9tICcuLi9kZWJ1Zy50cyc7XG5pbXBvcnQgeyBub29wQXN5bmMgfSBmcm9tICcuLi9mdW5jdGlvbi50cyc7XG5pbXBvcnQge1xuICBiYXNlbmFtZSxcbiAgZGlybmFtZSxcbiAgZXh0bmFtZSxcbiAgam9pblxufSBmcm9tICcuLi9wYXRoLnRzJztcbmltcG9ydCB7IHJlc29sdmVWYWx1ZSB9IGZyb20gJy4uL3ZhbHVlLXByb3ZpZGVyLnRzJztcbmltcG9ydCB7IHJldHJ5V2l0aFRpbWVvdXROb3RpY2UgfSBmcm9tICcuL2FzeW5jLXdpdGgtbm90aWNlLnRzJztcbmltcG9ydCB7XG4gIGxvY2tFZGl0b3IsXG4gIHVubG9ja0VkaXRvclxufSBmcm9tICcuL2VkaXRvci50cyc7XG5pbXBvcnQge1xuICBhc0ZpbGUsXG4gIGFzRm9sZGVyLFxuICBGaWxlU3lzdGVtVHlwZSxcbiAgZ2V0QWJzdHJhY3RGaWxlLFxuICBnZXRBYnN0cmFjdEZpbGVPck51bGwsXG4gIGdldEZpbGUsXG4gIGdldEZpbGVPck51bGwsXG4gIGdldEZpbGVTeXN0ZW1UeXBlLFxuICBnZXRGb2xkZXIsXG4gIGdldEZvbGRlck9yTnVsbCxcbiAgZ2V0UGF0aCxcbiAgaXNGaWxlLFxuICBpc01hcmtkb3duRmlsZSxcbiAgaXNOb3RlXG59IGZyb20gJy4vZmlsZS1zeXN0ZW0udHMnO1xuaW1wb3J0IHsgdCB9IGZyb20gJy4vaTE4bi9pMThuLnRzJztcblxuLyoqXG4gKiBPcHRpb25zIGZvciB7QGxpbmsgcHJvY2Vzc30uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHJvY2Vzc09wdGlvbnMgZXh0ZW5kcyBSZXRyeU9wdGlvbnMge1xuICAvKipcbiAgICogV2hldGhlciB0byBmYWlsIGlmIHRoZSBmaWxlIGlzIG1pc3Npbmcgb3IgZGVsZXRlZC4gRGVmYXVsdCBpcyBgdHJ1ZWAuXG4gICAqL1xuICByZWFkb25seSBzaG91bGRGYWlsT25NaXNzaW5nRmlsZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gbG9jayB0aGUgZWRpdG9yIHdoaWxlIHByb2Nlc3NpbmcgdGhlIGZpbGUuIEFwcGxpY2FibGUgb25seSBmb3IgbWFya2Rvd24gZmlsZXMuIERlZmF1bHQgaXMgYHRydWVgLlxuICAgKi9cbiAgcmVhZG9ubHkgc2hvdWxkTG9ja0VkaXRvcldoaWxlUHJvY2Vzc2luZz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gc2hvdyBhIHRpbWVvdXQgbm90aWNlLiBEZWZhdWx0IGlzIGB0cnVlYC5cbiAgICovXG4gIHJlYWRvbmx5IHNob3VsZFNob3dUaW1lb3V0Tm90aWNlPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBDb3BpZXMgYSBmaWxlIHNhZmVseSBpbiB0aGUgdmF1bHQuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBvbGRQYXRoT3JGaWxlIC0gVGhlIG9sZCBwYXRoIG9yIGZpbGUgdG8gY29weS5cbiAqIEBwYXJhbSBuZXdQYXRoIC0gVGhlIG5ldyBwYXRoIHRvIGNvcHkgdGhlIGZpbGUgdG8uXG4gKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHRvIHRoZSBuZXcgcGF0aCBvZiB0aGUgY29waWVkIGZpbGUuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjb3B5U2FmZShhcHA6IEFwcCwgb2xkUGF0aE9yRmlsZTogUGF0aE9yRmlsZSwgbmV3UGF0aDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3QgZmlsZSA9IGdldEZpbGUoYXBwLCBvbGRQYXRoT3JGaWxlKTtcblxuICBpZiAoZmlsZS5wYXRoID09PSBuZXdQYXRoKSB7XG4gICAgcmV0dXJuIG5ld1BhdGg7XG4gIH1cblxuICBjb25zdCBuZXdGb2xkZXJQYXRoID0gcGFyZW50Rm9sZGVyUGF0aChuZXdQYXRoKTtcbiAgYXdhaXQgY3JlYXRlRm9sZGVyU2FmZShhcHAsIG5ld0ZvbGRlclBhdGgpO1xuXG4gIGNvbnN0IG5ld0F2YWlsYWJsZVBhdGggPSBnZXRBdmFpbGFibGVQYXRoKGFwcCwgbmV3UGF0aCk7XG5cbiAgdHJ5IHtcbiAgICBhd2FpdCBhcHAudmF1bHQuY29weShmaWxlLCBuZXdBdmFpbGFibGVQYXRoKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGlmICghYXdhaXQgYXBwLnZhdWx0LmV4aXN0cyhuZXdBdmFpbGFibGVQYXRoKSkge1xuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbmV3QXZhaWxhYmxlUGF0aDtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgZm9sZGVyIHNhZmVseSBpbiB0aGUgc3BlY2lmaWVkIHBhdGguXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggb2YgdGhlIGZvbGRlciB0byBjcmVhdGUuXG4gKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHRvIGEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIGZvbGRlciB3YXMgY3JlYXRlZC5cbiAqIEB0aHJvd3MgSWYgYW4gZXJyb3Igb2NjdXJzIHdoaWxlIGNyZWF0aW5nIHRoZSBmb2xkZXIgYW5kIGl0IHN0aWxsIGRvZXNuJ3QgZXhpc3QuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjcmVhdGVGb2xkZXJTYWZlKGFwcDogQXBwLCBwYXRoOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgaWYgKGF3YWl0IGFwcC52YXVsdC5hZGFwdGVyLmV4aXN0cyhwYXRoKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHRyeSB7XG4gICAgYXdhaXQgYXBwLnZhdWx0LmNyZWF0ZUZvbGRlcihwYXRoKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGlmICghYXdhaXQgYXBwLnZhdWx0LmV4aXN0cyhwYXRoKSkge1xuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgdGVtcG9yYXJ5IGZpbGUgaW4gdGhlIHZhdWx0IHdpdGggcGFyZW50IGZvbGRlcnMgaWYgbmVlZGVkLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIG9mIHRoZSBmaWxlIHRvIGNyZWF0ZS5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgdG8gYSBmdW5jdGlvbiB0aGF0IGNhbiBiZSBjYWxsZWQgdG8gZGVsZXRlIHRoZSB0ZW1wb3JhcnkgZmlsZSBhbmQgYWxsIGl0cyBjcmVhdGVkIHBhcmVudHMuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjcmVhdGVUZW1wRmlsZShhcHA6IEFwcCwgcGF0aDogc3RyaW5nKTogUHJvbWlzZTwoKSA9PiBQcm9taXNlPHZvaWQ+PiB7XG4gIGxldCBmaWxlID0gZ2V0RmlsZU9yTnVsbChhcHAsIHBhdGgpO1xuICBpZiAoZmlsZSkge1xuICAgIHJldHVybiBub29wQXN5bmM7XG4gIH1cblxuICBjb25zdCBmb2xkZXJDbGVhbnVwID0gYXdhaXQgY3JlYXRlVGVtcEZvbGRlcihhcHAsIHBhcmVudEZvbGRlclBhdGgocGF0aCkpO1xuXG4gIHRyeSB7XG4gICAgYXdhaXQgYXBwLnZhdWx0LmNyZWF0ZShwYXRoLCAnJyk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBpZiAoIWF3YWl0IGFwcC52YXVsdC5leGlzdHMocGF0aCkpIHtcbiAgICAgIHRocm93IGU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGFzeW5jICgpID0+IHtcbiAgICBmaWxlID0gZ2V0RmlsZShhcHAsIHBhdGgpO1xuICAgIGlmICghZmlsZS5kZWxldGVkKSB7XG4gICAgICBhd2FpdCB0cmFzaFNhZmUoYXBwLCBmaWxlKTtcbiAgICB9XG4gICAgYXdhaXQgZm9sZGVyQ2xlYW51cCgpO1xuICB9O1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSB0ZW1wb3JhcnkgZm9sZGVyIGluIHRoZSB2YXVsdCB3aXRoIHBhcmVudCBmb2xkZXJzIGlmIG5lZWRlZC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIGFwcGxpY2F0aW9uIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGggLSBUaGUgcGF0aCBvZiB0aGUgZm9sZGVyIHRvIGNyZWF0ZS5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgdG8gYSBmdW5jdGlvbiB0aGF0IGNhbiBiZSBjYWxsZWQgdG8gZGVsZXRlIHRoZSB0ZW1wb3JhcnkgZm9sZGVyIGFuZCBhbGwgaXRzIGNyZWF0ZWQgcGFyZW50cy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNyZWF0ZVRlbXBGb2xkZXIoYXBwOiBBcHAsIHBhdGg6IHN0cmluZyk6IFByb21pc2U8KCkgPT4gUHJvbWlzZTx2b2lkPj4ge1xuICBsZXQgZm9sZGVyID0gZ2V0Rm9sZGVyT3JOdWxsKGFwcCwgcGF0aCk7XG4gIGlmIChmb2xkZXIpIHtcbiAgICByZXR1cm4gbm9vcEFzeW5jO1xuICB9XG5cbiAgY29uc3QgZm9sZGVyUGF0aCA9IHBhcmVudEZvbGRlclBhdGgocGF0aCk7XG4gIGF3YWl0IGNyZWF0ZVRlbXBGb2xkZXIoYXBwLCBmb2xkZXJQYXRoKTtcblxuICBjb25zdCBmb2xkZXJDbGVhbnVwID0gYXdhaXQgY3JlYXRlVGVtcEZvbGRlcihhcHAsIHBhcmVudEZvbGRlclBhdGgocGF0aCkpO1xuXG4gIGF3YWl0IGNyZWF0ZUZvbGRlclNhZmUoYXBwLCBwYXRoKTtcblxuICByZXR1cm4gYXN5bmMgKCkgPT4ge1xuICAgIGZvbGRlciA9IGdldEZvbGRlcihhcHAsIHBhdGgpO1xuICAgIGlmICghZm9sZGVyLmRlbGV0ZWQpIHtcbiAgICAgIGF3YWl0IHRyYXNoU2FmZShhcHAsIGZvbGRlcik7XG4gICAgfVxuICAgIGF3YWl0IGZvbGRlckNsZWFudXAoKTtcbiAgfTtcbn1cblxuLyoqXG4gKiBEZWxldGVzIGFuIGVtcHR5IGZvbGRlci5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIGFwcGxpY2F0aW9uIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZvbGRlciAtIFRoZSBmb2xkZXIgdG8gZGVsZXRlLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBmb2xkZXIgaXMgZGVsZXRlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlbGV0ZUVtcHR5Rm9sZGVyKGFwcDogQXBwLCBwYXRoT3JGb2xkZXI6IG51bGwgfCBQYXRoT3JGb2xkZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgZm9sZGVyID0gZ2V0Rm9sZGVyT3JOdWxsKGFwcCwgcGF0aE9yRm9sZGVyKTtcbiAgaWYgKCFmb2xkZXIpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgaWYgKCFhd2FpdCBpc0VtcHR5Rm9sZGVyKGFwcCwgZm9sZGVyKSkge1xuICAgIHJldHVybjtcbiAgfVxuICBhd2FpdCB0cmFzaFNhZmUoYXBwLCBmb2xkZXIpO1xufVxuXG4vKipcbiAqIFJlbW92ZXMgZW1wdHkgZm9sZGVyIGhpZXJhcmNoeSBzdGFydGluZyBmcm9tIHRoZSBnaXZlbiBmb2xkZXIuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoT3JGb2xkZXIgLSBUaGUgZm9sZGVyIHRvIHN0YXJ0IHJlbW92aW5nIGVtcHR5IGhpZXJhcmNoeSBmcm9tLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBlbXB0eSBoaWVyYXJjaHkgaXMgZGVsZXRlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlbGV0ZUVtcHR5Rm9sZGVySGllcmFyY2h5KGFwcDogQXBwLCBwYXRoT3JGb2xkZXI6IG51bGwgfCBQYXRoT3JGb2xkZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgbGV0IGZvbGRlciA9IGdldEZvbGRlck9yTnVsbChhcHAsIHBhdGhPckZvbGRlcik7XG5cbiAgd2hpbGUgKGZvbGRlcikge1xuICAgIGlmICghYXdhaXQgaXNFbXB0eUZvbGRlcihhcHAsIGZvbGRlcikpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc3QgcGFyZW50ID0gZm9sZGVyLnBhcmVudDtcbiAgICBhd2FpdCBkZWxldGVFbXB0eUZvbGRlcihhcHAsIGZvbGRlcik7XG4gICAgZm9sZGVyID0gcGFyZW50O1xuICB9XG59XG5cbi8qKlxuICogR2V0cyBhIHNhZmUgcGF0aCBmb3IgYSBmaWxlIG9yIGZvbGRlci5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIGFwcGxpY2F0aW9uIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGggLSBUaGUgcGF0aCBvZiB0aGUgZmlsZSBvciBmb2xkZXIgdG8gZ2V0IGEgc2FmZSBwYXRoIGZvci5cbiAqIEBwYXJhbSB0eXBlIC0gVGhlIHR5cGUgb2YgdGhlIGZpbGUgc3lzdGVtIG9iamVjdC5cbiAqIEByZXR1cm5zIFRoZSBzYWZlIHBhdGggZm9yIHRoZSBmaWxlIG9yIGZvbGRlci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEFic3RyYWN0RmlsZVBhdGhTYWZlKGFwcDogQXBwLCBwYXRoOiBzdHJpbmcsIHR5cGU6IEZpbGVTeXN0ZW1UeXBlKTogc3RyaW5nIHtcbiAgY29uc3QgYWJzdHJhY3RGaWxlID0gZ2V0QWJzdHJhY3RGaWxlT3JOdWxsKGFwcCwgcGF0aCk7XG5cbiAgaWYgKGFic3RyYWN0RmlsZSAmJiBnZXRGaWxlU3lzdGVtVHlwZShhYnN0cmFjdEZpbGUpID09PSB0eXBlKSB7XG4gICAgcmV0dXJuIHBhdGg7XG4gIH1cblxuICByZXR1cm4gZ2V0QXZhaWxhYmxlUGF0aChhcHAsIHBhdGgpO1xufVxuXG4vKipcbiAqIEdldHMgYW4gYXZhaWxhYmxlIHBhdGggZm9yIGEgZmlsZSBpbiB0aGUgdmF1bHQuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggb2YgdGhlIGZpbGUgdG8gZ2V0IGFuIGF2YWlsYWJsZSBwYXRoIGZvci5cbiAqIEByZXR1cm5zIFRoZSBhdmFpbGFibGUgcGF0aCBmb3IgdGhlIGZpbGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRBdmFpbGFibGVQYXRoKGFwcDogQXBwLCBwYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBleHQgPSBleHRuYW1lKHBhdGgpO1xuICByZXR1cm4gYXBwLnZhdWx0LmdldEF2YWlsYWJsZVBhdGgoam9pbihkaXJuYW1lKHBhdGgpLCBiYXNlbmFtZShwYXRoLCBleHQpKSwgZXh0LnNsaWNlKDEpKTtcbn1cblxuLyoqXG4gKiBHZXRzIGEgc2FmZSBmaWxlIHBhdGggZm9yIGEgZmlsZSBvciBmb2xkZXIuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggb2YgdGhlIGZpbGUgb3IgZm9sZGVyIHRvIGdldCBhIHNhZmUgcGF0aCBmb3IuXG4gKiBAcmV0dXJucyBUaGUgc2FmZSBwYXRoIGZvciB0aGUgZmlsZSBvciBmb2xkZXIuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRGaWxlUGF0aFNhZmUoYXBwOiBBcHAsIHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBnZXRBYnN0cmFjdEZpbGVQYXRoU2FmZShhcHAsIHBhdGgsIEZpbGVTeXN0ZW1UeXBlLkZpbGUpO1xufVxuXG4vKipcbiAqIEdldHMgYSBzYWZlIGZvbGRlciBwYXRoIGZvciBhIGZpbGUgb3IgZm9sZGVyLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIG9mIHRoZSBmaWxlIG9yIGZvbGRlciB0byBnZXQgYSBzYWZlIHBhdGggZm9yLlxuICogQHJldHVybnMgVGhlIHNhZmUgcGF0aCBmb3IgdGhlIGZpbGUgb3IgZm9sZGVyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0Rm9sZGVyUGF0aFNhZmUoYXBwOiBBcHAsIHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBnZXRBYnN0cmFjdEZpbGVQYXRoU2FmZShhcHAsIHBhdGgsIEZpbGVTeXN0ZW1UeXBlLkZvbGRlcik7XG59XG5cbi8qKlxuICogUmV0cmlldmVzIGFuIGFycmF5IG9mIE1hcmtkb3duIGZpbGVzIGZyb20gdGhlIGFwcCdzIHZhdWx0IGFuZCBzb3J0cyB0aGVtIGFscGhhYmV0aWNhbGx5IGJ5IHRoZWlyIGZpbGUgcGF0aC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEByZXR1cm5zIEFuIGFycmF5IG9mIE1hcmtkb3duIGZpbGVzIHNvcnRlZCBieSBmaWxlIHBhdGguXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRNYXJrZG93bkZpbGVzU29ydGVkKGFwcDogQXBwKTogVEZpbGVbXSB7XG4gIHJldHVybiBhcHAudmF1bHQuZ2V0TWFya2Rvd25GaWxlcygpLnNvcnQoKGEsIGIpID0+IGEucGF0aC5sb2NhbGVDb21wYXJlKGIucGF0aCkpO1xufVxuXG4vKipcbiAqIFJldHJpZXZlcyBhbiBhcnJheSBvZiBhbGwgbm90ZSBmaWxlcyBmcm9tIHRoZSBhcHAncyB2YXVsdCBhbmQgc29ydHMgdGhlbSBhbHBoYWJldGljYWxseSBieSB0aGVpciBmaWxlIHBhdGguXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcmV0dXJucyBBbiBhcnJheSBvZiBhbGwgbm90ZSBmaWxlcyBpbiB0aGUgdmF1bHQgc29ydGVkIGJ5IGZpbGUgcGF0aC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldE5vdGVGaWxlc1NvcnRlZChhcHA6IEFwcCk6IFRGaWxlW10ge1xuICByZXR1cm4gYXBwLnZhdWx0LmdldEFsbExvYWRlZEZpbGVzKCkuZmlsdGVyKChmaWxlKSA9PiBpc0ZpbGUoZmlsZSkgJiYgaXNOb3RlKGFwcCwgZmlsZSkpLnNvcnQoKGEsIGIpID0+IGEucGF0aC5sb2NhbGVDb21wYXJlKGIucGF0aCkpIGFzIFRGaWxlW107XG59XG5cbi8qKlxuICogR2V0cyBvciBjcmVhdGVzIGFuIGFic3RyYWN0IGZpbGUgc2FmZWx5IGluIHRoZSBzcGVjaWZpZWQgcGF0aC5cbiAqXG4gKiBJZiB0aGUgZmlsZSBhbHJlYWR5IGV4aXN0cywgaXQgd2lsbCBiZSByZXR1cm5lZC5cbiAqIElmIHRoZSBmaWxlIGRvZXMgbm90IGV4aXN0LCBpdCB3aWxsIGJlIGNyZWF0ZWQgYW5kIHJldHVybmVkLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIG9mIHRoZSBhYnN0cmFjdCBmaWxlIHRvIGdldCBvciBjcmVhdGUuXG4gKiBAcGFyYW0gdHlwZSAtIFRoZSB0eXBlIG9mIHRoZSBhYnN0cmFjdCBmaWxlIHRvIGdldCBvciBjcmVhdGUuXG4gKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHRvIHRoZSBhYnN0cmFjdCBmaWxlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0T3JDcmVhdGVBYnN0cmFjdEZpbGVTYWZlKGFwcDogQXBwLCBwYXRoOiBzdHJpbmcsIHR5cGU6IEZpbGVTeXN0ZW1UeXBlKTogUHJvbWlzZTxUQWJzdHJhY3RGaWxlPiB7XG4gIHBhdGggPSBnZXRBYnN0cmFjdEZpbGVQYXRoU2FmZShhcHAsIHBhdGgsIHR5cGUpO1xuICBjb25zdCBhYnN0cmFjdEZpbGUgPSBnZXRBYnN0cmFjdEZpbGVPck51bGwoYXBwLCBwYXRoKTtcbiAgaWYgKGFic3RyYWN0RmlsZSkge1xuICAgIHJldHVybiBhYnN0cmFjdEZpbGU7XG4gIH1cblxuICBzd2l0Y2ggKHR5cGUpIHtcbiAgICBjYXNlIEZpbGVTeXN0ZW1UeXBlLkZpbGU6XG4gICAgICByZXR1cm4gYXdhaXQgYXBwLnZhdWx0LmNyZWF0ZShwYXRoLCAnJyk7XG4gICAgY2FzZSBGaWxlU3lzdGVtVHlwZS5Gb2xkZXI6XG4gICAgICByZXR1cm4gYXdhaXQgYXBwLnZhdWx0LmNyZWF0ZUZvbGRlcihwYXRoKTtcbiAgICBkZWZhdWx0OlxuICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGZpbGUgc3lzdGVtIHR5cGU6ICR7dHlwZSBhcyBzdHJpbmd9YCk7XG4gIH1cbn1cblxuLyoqXG4gKiBHZXRzIG9yIGNyZWF0ZXMgYSBmaWxlIHNhZmVseSBpbiB0aGUgc3BlY2lmaWVkIHBhdGguXG4gKlxuICogSWYgdGhlIGZpbGUgYWxyZWFkeSBleGlzdHMsIGl0IHdpbGwgYmUgcmV0dXJuZWQuXG4gKiBJZiB0aGUgZmlsZSBkb2VzIG5vdCBleGlzdCwgaXQgd2lsbCBiZSBjcmVhdGVkIGFuZCByZXR1cm5lZC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIGFwcGxpY2F0aW9uIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGggLSBUaGUgcGF0aCBvZiB0aGUgZmlsZSB0byBnZXQgb3IgY3JlYXRlLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB0byB0aGUgZmlsZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldE9yQ3JlYXRlRmlsZVNhZmUoYXBwOiBBcHAsIHBhdGg6IHN0cmluZyk6IFByb21pc2U8VEZpbGU+IHtcbiAgcmV0dXJuIGFzRmlsZShhd2FpdCBnZXRPckNyZWF0ZUFic3RyYWN0RmlsZVNhZmUoYXBwLCBwYXRoLCBGaWxlU3lzdGVtVHlwZS5GaWxlKSk7XG59XG5cbi8qKlxuICogR2V0cyBvciBjcmVhdGVzIGEgZm9sZGVyIHNhZmVseSBpbiB0aGUgc3BlY2lmaWVkIHBhdGguXG4gKlxuICogSWYgdGhlIGZvbGRlciBhbHJlYWR5IGV4aXN0cywgaXQgd2lsbCBiZSByZXR1cm5lZC5cbiAqIElmIHRoZSBmb2xkZXIgZG9lcyBub3QgZXhpc3QsIGl0IHdpbGwgYmUgY3JlYXRlZCBhbmQgcmV0dXJuZWQuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggb2YgdGhlIGZvbGRlciB0byBnZXQgb3IgY3JlYXRlLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB0byB0aGUgZm9sZGVyLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0T3JDcmVhdGVGb2xkZXJTYWZlKGFwcDogQXBwLCBwYXRoOiBzdHJpbmcpOiBQcm9taXNlPFRGb2xkZXI+IHtcbiAgcmV0dXJuIGFzRm9sZGVyKGF3YWl0IGdldE9yQ3JlYXRlQWJzdHJhY3RGaWxlU2FmZShhcHAsIHBhdGgsIEZpbGVTeXN0ZW1UeXBlLkZvbGRlcikpO1xufVxuXG4vKipcbiAqIEdldHMgYSBzYWZlIHJlbmFtZSBwYXRoIGZvciBhIGZpbGUuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBvbGRQYXRoT3JBYnN0cmFjdEZpbGUgLSBUaGUgb2xkIHBhdGggb3IgYWJzdHJhY3QgZmlsZSB0byByZW5hbWUuXG4gKiBAcGFyYW0gbmV3UGF0aCAtIFRoZSBuZXcgcGF0aCB0byByZW5hbWUgdGhlIGFic3RyYWN0IGZpbGUgdG8uXG4gKiBAcmV0dXJucyBUaGUgc2FmZSByZW5hbWUgcGF0aCBmb3IgdGhlIGFic3RyYWN0IGZpbGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRTYWZlUmVuYW1lUGF0aChhcHA6IEFwcCwgb2xkUGF0aE9yQWJzdHJhY3RGaWxlOiBQYXRoT3JBYnN0cmFjdEZpbGUsIG5ld1BhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IG9sZFBhdGggPSBnZXRQYXRoKGFwcCwgb2xkUGF0aE9yQWJzdHJhY3RGaWxlKTtcblxuICBpZiAoZ2V0RGF0YUFkYXB0ZXJFeChhcHApLmluc2Vuc2l0aXZlKSB7XG4gICAgbGV0IGZvbGRlclBhdGggPSBkaXJuYW1lKG5ld1BhdGgpO1xuICAgIGxldCBub25FeGlzdGluZ1BhdGggPSBiYXNlbmFtZShuZXdQYXRoKTtcbiAgICBsZXQgZm9sZGVyOiBudWxsIHwgVEZvbGRlcjtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVubmVjZXNzYXJ5LWNvbmRpdGlvbiAtLSBUaGVyZSBpcyBubyBlbGVnYW50IHdheSB0byBwZXJmb3JtIGluZmluaXRlIGxvb3BzLlxuICAgIHdoaWxlICh0cnVlKSB7XG4gICAgICBmb2xkZXIgPSBnZXRGb2xkZXJPck51bGwoYXBwLCBmb2xkZXJQYXRoLCB0cnVlKTtcbiAgICAgIGlmIChmb2xkZXIpIHtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBub25FeGlzdGluZ1BhdGggPSBqb2luKGJhc2VuYW1lKGZvbGRlclBhdGgpLCBub25FeGlzdGluZ1BhdGgpO1xuICAgICAgZm9sZGVyUGF0aCA9IGRpcm5hbWUoZm9sZGVyUGF0aCk7XG4gICAgfVxuICAgIG5ld1BhdGggPSBqb2luKGZvbGRlci5nZXRQYXJlbnRQcmVmaXgoKSwgbm9uRXhpc3RpbmdQYXRoKTtcbiAgfVxuXG4gIGlmIChvbGRQYXRoLnRvTG93ZXJDYXNlKCkgPT09IG5ld1BhdGgudG9Mb3dlckNhc2UoKSkge1xuICAgIHJldHVybiBuZXdQYXRoO1xuICB9XG5cbiAgcmV0dXJuIGdldEF2YWlsYWJsZVBhdGgoYXBwLCBuZXdQYXRoKTtcbn1cblxuLyoqXG4gKiBJbnZva2VzIGEgZnVuY3Rpb24gd2l0aCB0aGUgZmlsZSBzeXN0ZW0gbG9jay5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIGFwcGxpY2F0aW9uIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZpbGUgLSBUaGUgcGF0aCBvciBmaWxlIHRvIGV4ZWN1dGUgdGhlIGZ1bmN0aW9uIHdpdGggdGhlIGZpbGUgc3lzdGVtIGxvY2sgb2YuXG4gKiBAcGFyYW0gZm4gLSBUaGUgZnVuY3Rpb24gdG8gZXhlY3V0ZS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGludm9rZVdpdGhGaWxlU3lzdGVtTG9jayhhcHA6IEFwcCwgcGF0aE9yRmlsZTogUGF0aE9yRmlsZSwgZm46IChjb250ZW50OiBzdHJpbmcpID0+IHZvaWQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgZmlsZSA9IGdldEZpbGUoYXBwLCBwYXRoT3JGaWxlKTtcbiAgYXdhaXQgYXBwLnZhdWx0LnByb2Nlc3MoZmlsZSwgKGNvbnRlbnQpID0+IHtcbiAgICBmbihjb250ZW50KTtcbiAgICByZXR1cm4gY29udGVudDtcbiAgfSk7XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIGEgcGF0aCBvciBmaWxlIGlzIGEgY2hpbGQgb2YgYW5vdGhlciBwYXRoIG9yIGZpbGUuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZS5cbiAqIEBwYXJhbSBhIC0gVGhlIGZpcnN0IHBhdGggb3IgZmlsZS5cbiAqIEBwYXJhbSBiIC0gVGhlIHNlY29uZCBwYXRoIG9yIGZpbGUuXG4gKiBAcmV0dXJucyBBIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBmaXJzdCBwYXRoIG9yIGZpbGUgaXMgYSBjaGlsZCBvZiB0aGUgc2Vjb25kIHBhdGggb3IgZmlsZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQ2hpbGQoYXBwOiBBcHAsIGE6IFBhdGhPckFic3RyYWN0RmlsZSwgYjogUGF0aE9yQWJzdHJhY3RGaWxlKTogYm9vbGVhbiB7XG4gIGNvbnN0IGFQYXRoID0gZ2V0UGF0aChhcHAsIGEpO1xuICBjb25zdCBiUGF0aCA9IGdldFBhdGgoYXBwLCBiKTtcblxuICBpZiAoYVBhdGggPT09IGJQYXRoKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaWYgKGJQYXRoID09PSAnLycpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHJldHVybiBhUGF0aC5zdGFydHNXaXRoKGAke2JQYXRofS9gKTtcbn1cblxuLyoqXG4gKiBDaGVja3MgaWYgYSBwYXRoIG9yIGZpbGUgaXMgYSBjaGlsZCBvciBzZWxmIG9mIGFub3RoZXIgcGF0aCBvciBmaWxlLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gYSAtIFRoZSBmaXJzdCBwYXRoIG9yIGZpbGUuXG4gKiBAcGFyYW0gYiAtIFRoZSBzZWNvbmQgcGF0aCBvciBmaWxlLlxuICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgd2hldGhlciB0aGUgZmlyc3QgcGF0aCBvciBmaWxlIGlzIGEgY2hpbGQgb3Igc2VsZiBvZiB0aGUgc2Vjb25kIHBhdGggb3IgZmlsZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQ2hpbGRPclNlbGYoYXBwOiBBcHAsIGE6IFBhdGhPckFic3RyYWN0RmlsZSwgYjogUGF0aE9yQWJzdHJhY3RGaWxlKTogYm9vbGVhbiB7XG4gIGNvbnN0IGFQYXRoID0gZ2V0UGF0aChhcHAsIGEpO1xuICBjb25zdCBiUGF0aCA9IGdldFBhdGgoYXBwLCBiKTtcbiAgcmV0dXJuIGFQYXRoID09PSBiUGF0aCB8fCBpc0NoaWxkKGFwcCwgYSwgYik7XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIGEgZm9sZGVyIGlzIGVtcHR5LlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRm9sZGVyIC0gVGhlIHBhdGggb3IgZm9sZGVyIHRvIGNoZWNrLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB0byBhIGJvb2xlYW4gaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBmb2xkZXIgaXMgZW1wdHkuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBpc0VtcHR5Rm9sZGVyKGFwcDogQXBwLCBwYXRoT3JGb2xkZXI6IFBhdGhPckZvbGRlcik6IFByb21pc2U8Ym9vbGVhbj4ge1xuICBjb25zdCBsaXN0ZWRGaWxlcyA9IGF3YWl0IGxpc3RTYWZlKGFwcCwgZ2V0UGF0aChhcHAsIHBhdGhPckZvbGRlcikpO1xuICByZXR1cm4gbGlzdGVkRmlsZXMuZmlsZXMubGVuZ3RoID09PSAwICYmIGxpc3RlZEZpbGVzLmZvbGRlcnMubGVuZ3RoID09PSAwO1xufVxuXG4vKipcbiAqIFNhZmVseSBsaXN0cyB0aGUgZmlsZXMgYW5kIGZvbGRlcnMgYXQgdGhlIHNwZWNpZmllZCBwYXRoIGluIHRoZSB2YXVsdC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcGxpY2F0aW9uIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZvbGRlciAtIFRoZSBwYXRoIG9yIGZvbGRlciB0byBsaXN0LlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB0byBhIHtAbGluayBMaXN0ZWRGaWxlc30gb2JqZWN0IGNvbnRhaW5pbmcgdGhlIGxpc3RlZCBmaWxlcyBhbmQgZm9sZGVycy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGxpc3RTYWZlKGFwcDogQXBwLCBwYXRoT3JGb2xkZXI6IFBhdGhPckZvbGRlcik6IFByb21pc2U8TGlzdGVkRmlsZXM+IHtcbiAgY29uc3QgcGF0aCA9IGdldFBhdGgoYXBwLCBwYXRoT3JGb2xkZXIpO1xuICBjb25zdCBFTVBUWSA9IHsgZmlsZXM6IFtdLCBmb2xkZXJzOiBbXSB9O1xuXG4gIGlmICgoYXdhaXQgYXBwLnZhdWx0LmFkYXB0ZXIuc3RhdChwYXRoKSk/LnR5cGUgIT09ICdmb2xkZXInKSB7XG4gICAgcmV0dXJuIEVNUFRZO1xuICB9XG5cbiAgdHJ5IHtcbiAgICByZXR1cm4gYXdhaXQgYXBwLnZhdWx0LmFkYXB0ZXIubGlzdChwYXRoKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGlmIChhd2FpdCBhcHAudmF1bHQuZXhpc3RzKHBhdGgpKSB7XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgICByZXR1cm4gRU1QVFk7XG4gIH1cbn1cblxuLyoqXG4gKiBQcm9jZXNzZXMgYSBmaWxlIHdpdGggcmV0cnkgbG9naWMsIHVwZGF0aW5nIGl0cyBjb250ZW50IGJhc2VkIG9uIGEgcHJvdmlkZWQgdmFsdWUgb3IgZnVuY3Rpb24uXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBhcHBsaWNhdGlvbiBpbnN0YW5jZSwgdHlwaWNhbGx5IHVzZWQgZm9yIGFjY2Vzc2luZyB0aGUgdmF1bHQuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgdG8gYmUgcHJvY2Vzc2VkLiBJdCBjYW4gYmUgYSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBwYXRoIG9yIGEgZmlsZSBvYmplY3QuXG4gKiBAcGFyYW0gbmV3Q29udGVudFByb3ZpZGVyIC0gQSB2YWx1ZSBwcm92aWRlciB0aGF0IHJldHVybnMgdGhlIG5ldyBjb250ZW50IGJhc2VkIG9uIHRoZSBvbGQgY29udGVudCBvZiB0aGUgZmlsZS5cbiAqIEl0IGNhbiBiZSBhIHN0cmluZyBvciBhIGZ1bmN0aW9uIHRoYXQgdGFrZXMgdGhlIG9sZCBjb250ZW50IGFzIGFuIGFyZ3VtZW50IGFuZCByZXR1cm5zIHRoZSBuZXcgY29udGVudC5cbiAqIElmIGZ1bmN0aW9uIGlzIHByb3ZpZGVkLCBpdCBzaG91bGQgcmV0dXJuIGBudWxsYCBpZiB0aGUgcHJvY2VzcyBzaG91bGQgYmUgcmV0cmllZC5cbiAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9uYWwgb3B0aW9ucyBmb3IgcHJvY2Vzc2luZy9yZXRyeWluZyB0aGUgb3BlcmF0aW9uLlxuICpcbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgb25jZSB0aGUgcHJvY2VzcyBpcyBjb21wbGV0ZS5cbiAqXG4gKiBAdGhyb3dzIFdpbGwgdGhyb3cgYW4gZXJyb3IgaWYgdGhlIHByb2Nlc3MgZmFpbHMgYWZ0ZXIgdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgcmV0cmllcyBvciB0aW1lb3V0LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcHJvY2VzcyhcbiAgYXBwOiBBcHAsXG4gIHBhdGhPckZpbGU6IFBhdGhPckZpbGUsXG4gIG5ld0NvbnRlbnRQcm92aWRlcjogVmFsdWVQcm92aWRlcjxudWxsIHwgc3RyaW5nLCBbc3RyaW5nXT4sXG4gIG9wdGlvbnM6IFByb2Nlc3NPcHRpb25zID0ge31cbik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCBERUZBVUxUX1JFVFJZX09QVElPTlMgPSB7XG4gICAgc2hvdWxkRmFpbE9uTWlzc2luZ0ZpbGU6IHRydWUsXG4gICAgc2hvdWxkTG9ja0VkaXRvcldoaWxlUHJvY2Vzc2luZzogdHJ1ZSxcbiAgICBzaG91bGRTaG93VGltZW91dE5vdGljZTogdHJ1ZSxcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbWFnaWMtbnVtYmVycyAtLSBEZWZhdWx0IHZhbHVlLlxuICAgIHRpbWVvdXRJbk1pbGxpc2Vjb25kczogNTAwXG4gIH07XG4gIGNvbnN0IGZ1bGxPcHRpb25zID0geyAuLi5ERUZBVUxUX1JFVFJZX09QVElPTlMsIC4uLm9wdGlvbnMgfTtcbiAgY29uc3QgYWJvcnRDb250cm9sbGVyID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICBmdWxsT3B0aW9ucy5hYm9ydFNpZ25hbCA9IGFib3J0U2lnbmFsQW55KGZ1bGxPcHRpb25zLmFib3J0U2lnbmFsLCBhYm9ydENvbnRyb2xsZXIuc2lnbmFsKTtcbiAgY29uc3QgcGF0aCA9IGdldFBhdGgoYXBwLCBwYXRoT3JGaWxlKTtcblxuICBsZXQgYWN0aXZlTGVhZkNoYW5nZUV2ZW50UmVmOiBFdmVudFJlZiB8IG51bGwgPSBudWxsO1xuXG4gIGlmIChmdWxsT3B0aW9ucy5zaG91bGRMb2NrRWRpdG9yV2hpbGVQcm9jZXNzaW5nKSB7XG4gICAgZm9yIChjb25zdCBsZWFmIG9mIGFwcC53b3Jrc3BhY2UuZ2V0TGVhdmVzT2ZUeXBlKFZpZXdUeXBlLk1hcmtkb3duKSkge1xuICAgICAgaWYgKGxlYWYudmlldyBpbnN0YW5jZW9mIE1hcmtkb3duVmlldyAmJiBsZWFmLnZpZXcuZmlsZT8ucGF0aCA9PT0gcGF0aCkge1xuICAgICAgICBsb2NrRWRpdG9yKGxlYWYudmlldy5lZGl0b3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGFjdGl2ZUxlYWZDaGFuZ2VFdmVudFJlZiA9IGFwcC53b3Jrc3BhY2Uub24oJ2FjdGl2ZS1sZWFmLWNoYW5nZScsIChsZWFmKSA9PiB7XG4gICAgICBpZiAobGVhZj8udmlldyBpbnN0YW5jZW9mIE1hcmtkb3duVmlldyAmJiBsZWFmLnZpZXcuZmlsZT8ucGF0aCA9PT0gcGF0aCkge1xuICAgICAgICBsb2NrRWRpdG9yKGxlYWYudmlldy5lZGl0b3IpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgdHJ5IHtcbiAgICBhd2FpdCByZXRyeVdpdGhUaW1lb3V0Tm90aWNlKHtcbiAgICAgIGFzeW5jIG9wZXJhdGlvbkZuKGFib3J0U2lnbmFsKSB7XG4gICAgICAgIGFib3J0U2lnbmFsLnRocm93SWZBYm9ydGVkKCk7XG5cbiAgICAgICAgY29uc3Qgb2xkQ29udGVudCA9IGF3YWl0IHJlYWRTYWZlKGFwcCwgcGF0aE9yRmlsZSk7XG4gICAgICAgIGFib3J0U2lnbmFsLnRocm93SWZBYm9ydGVkKCk7XG5cbiAgICAgICAgaWYgKG9sZENvbnRlbnQgPT09IG51bGwpIHtcbiAgICAgICAgICByZXR1cm4gaGFuZGxlTWlzc2luZ0ZpbGUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5ld0NvbnRlbnQgPSBhd2FpdCByZXNvbHZlVmFsdWUobmV3Q29udGVudFByb3ZpZGVyLCBhYm9ydFNpZ25hbCwgb2xkQ29udGVudCk7XG4gICAgICAgIGFib3J0U2lnbmFsLnRocm93SWZBYm9ydGVkKCk7XG5cbiAgICAgICAgaWYgKG5ld0NvbnRlbnQgPT09IG51bGwpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgaXNTdWNjZXNzID0gdHJ1ZTtcbiAgICAgICAgY29uc3QgZG9lc0ZpbGVFeGlzdCA9IGF3YWl0IGludm9rZUZpbGVBY3Rpb25TYWZlKGFwcCwgcGF0aE9yRmlsZSwgYXN5bmMgKGZpbGUpID0+IHtcbiAgICAgICAgICBhYm9ydFNpZ25hbC50aHJvd0lmQWJvcnRlZCgpO1xuICAgICAgICAgIGF3YWl0IGFwcC52YXVsdC5wcm9jZXNzKGZpbGUsIChjb250ZW50KSA9PiB7XG4gICAgICAgICAgICBhYm9ydFNpZ25hbC50aHJvd0lmQWJvcnRlZCgpO1xuICAgICAgICAgICAgaWYgKGNvbnRlbnQgIT09IG9sZENvbnRlbnQpIHtcbiAgICAgICAgICAgICAgZ2V0TGliRGVidWdnZXIoJ1ZhdWx0OnByb2Nlc3MnKSgnQ29udGVudCBoYXMgY2hhbmdlZCBzaW5jZSBpdCB3YXMgcmVhZC4gUmV0cnlpbmcuLi4nLCB7XG4gICAgICAgICAgICAgICAgYWN0dWFsQ29udGVudDogY29udGVudCxcbiAgICAgICAgICAgICAgICBleHBlY3RlZENvbnRlbnQ6IG9sZENvbnRlbnQsXG4gICAgICAgICAgICAgICAgcGF0aDogZmlsZS5wYXRoXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICBpc1N1Y2Nlc3MgPSBmYWxzZTtcbiAgICAgICAgICAgICAgcmV0dXJuIGNvbnRlbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBuZXdDb250ZW50O1xuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgYWJvcnRTaWduYWwudGhyb3dJZkFib3J0ZWQoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKCFkb2VzRmlsZUV4aXN0KSB7XG4gICAgICAgICAgcmV0dXJuIGhhbmRsZU1pc3NpbmdGaWxlKCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXNTdWNjZXNzO1xuXG4gICAgICAgIGZ1bmN0aW9uIGhhbmRsZU1pc3NpbmdGaWxlKCk6IGJvb2xlYW4ge1xuICAgICAgICAgIGlmIChmdWxsT3B0aW9ucy5zaG91bGRGYWlsT25NaXNzaW5nRmlsZSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGaWxlICcke3BhdGh9JyBub3QgZm91bmRgKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBvcGVyYXRpb25OYW1lOiB0KCgkKSA9PiAkLm9ic2lkaWFuRGV2VXRpbHMudmF1bHQucHJvY2Vzc0ZpbGUsIHsgZmlsZVBhdGg6IHBhdGggfSksXG4gICAgICByZXRyeU9wdGlvbnM6IGZ1bGxPcHRpb25zLFxuICAgICAgc2hvdWxkU2hvd1RpbWVvdXROb3RpY2U6IGZ1bGxPcHRpb25zLnNob3VsZFNob3dUaW1lb3V0Tm90aWNlXG4gICAgfSk7XG4gIH0gZmluYWxseSB7XG4gICAgYWN0aXZlTGVhZkNoYW5nZUV2ZW50UmVmPy5lLm9mZnJlZihhY3RpdmVMZWFmQ2hhbmdlRXZlbnRSZWYpO1xuICAgIGZvciAoY29uc3QgbGVhZiBvZiBhcHAud29ya3NwYWNlLmdldExlYXZlc09mVHlwZShWaWV3VHlwZS5NYXJrZG93bikpIHtcbiAgICAgIGlmIChsZWFmLnZpZXcgaW5zdGFuY2VvZiBNYXJrZG93blZpZXcgJiYgbGVhZi52aWV3LmZpbGU/LnBhdGggPT09IHBhdGgpIHtcbiAgICAgICAgdW5sb2NrRWRpdG9yKGxlYWYudmlldy5lZGl0b3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFJlYWRzIHRoZSBjb250ZW50IG9mIGEgZmlsZSBzYWZlbHkgZnJvbSB0aGUgdmF1bHQuXG4gKlxuICogSXQgY292ZXJzIHRoZSBjYXNlIHdoZW4gdGhlIGZpbGUgd2FzIHJlbW92ZWQgZHVyaW5nIHRoZSByZWFkaW5nLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBwYXRoIG9yIGZpbGUgdG8gcmVhZC5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHRoYXQgcmVzb2x2ZXMgdG8gdGhlIGNvbnRlbnQgb2YgdGhlIGZpbGUgb3IgYG51bGxgIGlmIHRoZSBmaWxlIGlzIG1pc3Npbmcgb3IgZGVsZXRlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJlYWRTYWZlKGFwcDogQXBwLCBwYXRoT3JGaWxlOiBQYXRoT3JGaWxlKTogUHJvbWlzZTxudWxsIHwgc3RyaW5nPiB7XG4gIGxldCBjb250ZW50OiBudWxsIHwgc3RyaW5nID0gbnVsbDtcbiAgYXdhaXQgaW52b2tlRmlsZUFjdGlvblNhZmUoYXBwLCBwYXRoT3JGaWxlLCBhc3luYyAoZmlsZSkgPT4ge1xuICAgIGF3YWl0IHNhdmVOb3RlKGFwcCwgZmlsZSk7XG4gICAgY29udGVudCA9IGF3YWl0IGFwcC52YXVsdC5yZWFkKGZpbGUpO1xuICB9KTtcbiAgcmV0dXJuIGNvbnRlbnQ7XG59XG5cbi8qKlxuICogUmVuYW1lcyBhIGZpbGUgc2FmZWx5IGluIHRoZSB2YXVsdC5cbiAqIElmIHRoZSBuZXcgcGF0aCBhbHJlYWR5IGV4aXN0cywgdGhlIGZpbGUgd2lsbCBiZSByZW5hbWVkIHRvIGFuIGF2YWlsYWJsZSBwYXRoLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgYXBwbGljYXRpb24gaW5zdGFuY2UuXG4gKiBAcGFyYW0gb2xkUGF0aE9yQWJzdHJhY3RGaWxlIC0gVGhlIG9sZCBwYXRoIG9yIGZpbGUgdG8gcmVuYW1lLlxuICogQHBhcmFtIG5ld1BhdGggLSBUaGUgbmV3IHBhdGggdG8gcmVuYW1lIHRoZSBmaWxlIHRvLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB0byB0aGUgbmV3IHBhdGggb2YgdGhlIGZpbGUuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZW5hbWVTYWZlKGFwcDogQXBwLCBvbGRQYXRoT3JBYnN0cmFjdEZpbGU6IFBhdGhPckFic3RyYWN0RmlsZSwgbmV3UGF0aDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgY29uc3Qgb2xkQWJzdHJhY3RGaWxlID0gZ2V0QWJzdHJhY3RGaWxlKGFwcCwgb2xkUGF0aE9yQWJzdHJhY3RGaWxlKTtcblxuICBjb25zdCBuZXdBdmFpbGFibGVQYXRoID0gZ2V0U2FmZVJlbmFtZVBhdGgoYXBwLCBvbGRQYXRoT3JBYnN0cmFjdEZpbGUsIG5ld1BhdGgpO1xuXG4gIGlmIChvbGRBYnN0cmFjdEZpbGUucGF0aC50b0xvd2VyQ2FzZSgpID09PSBuZXdBdmFpbGFibGVQYXRoLnRvTG93ZXJDYXNlKCkpIHtcbiAgICBpZiAob2xkQWJzdHJhY3RGaWxlLnBhdGggIT09IG5ld1BhdGgpIHtcbiAgICAgIGF3YWl0IGFwcC5maWxlTWFuYWdlci5yZW5hbWVGaWxlKG9sZEFic3RyYWN0RmlsZSwgbmV3QXZhaWxhYmxlUGF0aCk7XG4gICAgfVxuICAgIHJldHVybiBuZXdBdmFpbGFibGVQYXRoO1xuICB9XG5cbiAgY29uc3QgbmV3Rm9sZGVyUGF0aCA9IHBhcmVudEZvbGRlclBhdGgobmV3QXZhaWxhYmxlUGF0aCk7XG4gIGF3YWl0IGNyZWF0ZUZvbGRlclNhZmUoYXBwLCBuZXdGb2xkZXJQYXRoKTtcblxuICB0cnkge1xuICAgIGF3YWl0IGFwcC5maWxlTWFuYWdlci5yZW5hbWVGaWxlKG9sZEFic3RyYWN0RmlsZSwgbmV3QXZhaWxhYmxlUGF0aCk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBpZiAoIWF3YWl0IGFwcC52YXVsdC5leGlzdHMobmV3QXZhaWxhYmxlUGF0aCkgfHwgYXdhaXQgYXBwLnZhdWx0LmV4aXN0cyhvbGRBYnN0cmFjdEZpbGUucGF0aCkpIHtcbiAgICAgIHRocm93IGU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG5ld0F2YWlsYWJsZVBhdGg7XG59XG5cbi8qKlxuICogU2F2ZXMgdGhlIHNwZWNpZmllZCBub3RlIGluIHRoZSBPYnNpZGlhbiBhcHAuXG4gKlxuICogQHBhcmFtIGFwcCAtIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gKiBAcGFyYW0gcGF0aE9yRmlsZSAtIFRoZSBub3RlIHRvIGJlIHNhdmVkLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBub3RlIGlzIHNhdmVkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc2F2ZU5vdGUoYXBwOiBBcHAsIHBhdGhPckZpbGU6IFBhdGhPckZpbGUpOiBQcm9taXNlPHZvaWQ+IHtcbiAgaWYgKCFpc01hcmtkb3duRmlsZShhcHAsIHBhdGhPckZpbGUpKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgcGF0aCA9IGdldFBhdGgoYXBwLCBwYXRoT3JGaWxlKTtcblxuICBmb3IgKGNvbnN0IGxlYWYgb2YgYXBwLndvcmtzcGFjZS5nZXRMZWF2ZXNPZlR5cGUoVmlld1R5cGUuTWFya2Rvd24pKSB7XG4gICAgaWYgKGxlYWYudmlldyBpbnN0YW5jZW9mIE1hcmtkb3duVmlldyAmJiBsZWFmLnZpZXcuZmlsZT8ucGF0aCA9PT0gcGF0aCAmJiBsZWFmLnZpZXcuZGlydHkpIHtcbiAgICAgIGF3YWl0IGxlYWYudmlldy5zYXZlKCk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogVHJhc2hlcyBhbiBhYnN0cmFjdCBmaWxlIHNhZmVseSBmcm9tIHRoZSB2YXVsdC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcGxpY2F0aW9uIGluc3RhbmNlLlxuICogQHBhcmFtIHBhdGhPckZpbGUgLSBUaGUgcGF0aCBvciBhYnN0cmFjdCBmaWxlIHRvIHRyYXNoLlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gdGhhdCByZXNvbHZlcyB3aGVuIHRoZSBmaWxlIGlzIHRyYXNoZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB0cmFzaFNhZmUoYXBwOiBBcHAsIHBhdGhPckZpbGU6IFBhdGhPckFic3RyYWN0RmlsZSk6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCBmaWxlID0gZ2V0QWJzdHJhY3RGaWxlT3JOdWxsKGFwcCwgcGF0aE9yRmlsZSk7XG4gIGlmICghZmlsZSkge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIHRyeSB7XG4gICAgYXdhaXQgYXBwLmZpbGVNYW5hZ2VyLnRyYXNoRmlsZShmaWxlKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGlmIChhd2FpdCBhcHAudmF1bHQuZXhpc3RzKGZpbGUucGF0aCkpIHtcbiAgICAgIHRocm93IGU7XG4gICAgfVxuXG4gICAgZ2V0TGliRGVidWdnZXIoJ1ZhdWx0OnRyYXNoU2FmZScpKGBBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSB0cmFzaGluZyAke2ZpbGUucGF0aH0sIGJ1dCB0aGUgZmlsZSBubyBsb25nZXIgZXhpc3RzLmAsIHsgZXJyb3I6IGUsIHBhdGg6IGZpbGUucGF0aCB9KTtcbiAgfVxufVxuXG5hc3luYyBmdW5jdGlvbiBpbnZva2VGaWxlQWN0aW9uU2FmZShhcHA6IEFwcCwgcGF0aE9yRmlsZTogUGF0aE9yRmlsZSwgZmlsZUFjdGlvbjogKGZpbGU6IFRGaWxlKSA9PiBQcm9taXNlPHZvaWQ+KTogUHJvbWlzZTxib29sZWFuPiB7XG4gIGNvbnN0IHBhdGggPSBnZXRQYXRoKGFwcCwgcGF0aE9yRmlsZSk7XG4gIGxldCBmaWxlID0gZ2V0RmlsZU9yTnVsbChhcHAsIHBhdGgpO1xuICBpZiAoIWZpbGUgfHwgZmlsZS5kZWxldGVkKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHRyeSB7XG4gICAgYXdhaXQgZmlsZUFjdGlvbihmaWxlKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGZpbGUgPSBnZXRGaWxlT3JOdWxsKGFwcCwgcGF0aCk7XG4gICAgaWYgKCFmaWxlIHx8IGZpbGUuZGVsZXRlZCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICB0aHJvdyBlO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFZQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBQ1A7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBVVAsU0FBUyxzQkFBc0I7QUFDL0IsU0FBUyxzQkFBc0I7QUFDL0IsU0FBUyxpQkFBaUI7QUFDMUI7QUFBQSxF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
@@ -0,0 +1,36 @@
1
+ /*
2
+ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
+ if you want to view the source, please visit the github repository of this plugin
4
+ */
5
+
6
+ (function initEsm() {
7
+ if (globalThis.process) {
8
+ return;
9
+ }
10
+
11
+ const browserProcess = {
12
+ browser: true,
13
+ cwd() {
14
+ return '/';
15
+ },
16
+ env: {},
17
+ platform: 'android'
18
+ };
19
+ globalThis.process = browserProcess;
20
+ })();
21
+
22
+ function getAllContainers(app) {
23
+ const containers = /* @__PURE__ */ new Set();
24
+ app.workspace.iterateAllLeaves((leaf) => {
25
+ containers.add(leaf.getContainer());
26
+ });
27
+ return Array.from(containers);
28
+ }
29
+ function getAllDomWindows(app) {
30
+ return getAllContainers(app).map((container) => container.win);
31
+ }
32
+ export {
33
+ getAllContainers,
34
+ getAllDomWindows
35
+ };
36
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3dvcmtzcGFjZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBUaGlzIG1vZHVsZSBwcm92aWRlcyBhZGRpdGlvbmFsIHV0aWxpdGllcyBmb3Igd29ya2luZyB3aXRoIHRoZSBPYnNpZGlhbiB7QGxpbmsgV29ya3NwYWNlfS5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7XG4gIEFwcCxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycyAtLSBXZSBuZWVkIHRvIGltcG9ydCBgV29ya3NwYWNlYCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbiAgV29ya3NwYWNlLFxuICBXb3Jrc3BhY2VDb250YWluZXJcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG4vKipcbiAqIFJldHVybnMgYWxsIGNvbnRhaW5lcnMgaW4gdGhlIHdvcmtzcGFjZS5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcC5cbiAqIEByZXR1cm5zIEFsbCBjb250YWluZXJzIGluIHRoZSB3b3Jrc3BhY2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRBbGxDb250YWluZXJzKGFwcDogQXBwKTogV29ya3NwYWNlQ29udGFpbmVyW10ge1xuICBjb25zdCBjb250YWluZXJzID0gbmV3IFNldDxXb3Jrc3BhY2VDb250YWluZXI+KCk7XG4gIGFwcC53b3Jrc3BhY2UuaXRlcmF0ZUFsbExlYXZlcygobGVhZikgPT4ge1xuICAgIGNvbnRhaW5lcnMuYWRkKGxlYWYuZ2V0Q29udGFpbmVyKCkpO1xuICB9KTtcbiAgcmV0dXJuIEFycmF5LmZyb20oY29udGFpbmVycyk7XG59XG5cbi8qKlxuICogUmV0dXJucyBhbGwgRE9NIHdpbmRvd3MgaW4gdGhlIHdvcmtzcGFjZS5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcC5cbiAqIEByZXR1cm5zIEFsbCBET00gd2luZG93cyBpbiB0aGUgd29ya3NwYWNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0QWxsRG9tV2luZG93cyhhcHA6IEFwcCk6IFdpbmRvd1tdIHtcbiAgcmV0dXJuIGdldEFsbENvbnRhaW5lcnMoYXBwKS5tYXAoKGNvbnRhaW5lcikgPT4gY29udGFpbmVyLndpbik7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFtQk8sU0FBUyxpQkFBaUIsS0FBZ0M7QUFDL0QsUUFBTSxhQUFhLG9CQUFJLElBQXdCO0FBQy9DLE1BQUksVUFBVSxpQkFBaUIsQ0FBQyxTQUFTO0FBQ3ZDLGVBQVcsSUFBSSxLQUFLLGFBQWEsQ0FBQztBQUFBLEVBQ3BDLENBQUM7QUFDRCxTQUFPLE1BQU0sS0FBSyxVQUFVO0FBQzlCO0FBUU8sU0FBUyxpQkFBaUIsS0FBb0I7QUFDbkQsU0FBTyxpQkFBaUIsR0FBRyxFQUFFLElBQUksQ0FBQyxjQUFjLFVBQVUsR0FBRztBQUMvRDsiLAogICJuYW1lcyI6IFtdCn0K
@@ -0,0 +1,90 @@
1
+ /*
2
+ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
+ if you want to view the source, please visit the github repository of this plugin
4
+ */
5
+
6
+ (function initEsm() {
7
+ if (globalThis.process) {
8
+ return;
9
+ }
10
+
11
+ const browserProcess = {
12
+ browser: true,
13
+ cwd() {
14
+ return '/';
15
+ },
16
+ env: {},
17
+ platform: 'android'
18
+ };
19
+ globalThis.process = browserProcess;
20
+ })();
21
+
22
+ import pathBrowserify from "path-browserify";
23
+ import {
24
+ ensureStartsWith,
25
+ replaceAll
26
+ } from "./string.mjs";
27
+ const WINDOWS_POSIX_LIKE_PATH_REG_EXP = /[a-zA-Z]:\/[^:]*$/;
28
+ const posix = pathBrowserify.posix;
29
+ const delimiter = posix.delimiter;
30
+ const sep = pathBrowserify.posix.sep;
31
+ const basename = posix.basename;
32
+ const dirname = posix.dirname;
33
+ const extname = posix.extname;
34
+ const format = posix.format;
35
+ function isAbsolute(path) {
36
+ return posix.isAbsolute(path) || WINDOWS_POSIX_LIKE_PATH_REG_EXP.exec(path)?.[0] === path;
37
+ }
38
+ const join = posix.join;
39
+ const normalize = posix.normalize;
40
+ const parse = posix.parse;
41
+ const relative = posix.relative;
42
+ function getFileName(importMetaUrl) {
43
+ return resolve(decodeURI(new URL(importMetaUrl).pathname));
44
+ }
45
+ function getFolderName(importMetaUrl) {
46
+ return dirname(getFileName(importMetaUrl));
47
+ }
48
+ function makeFileName(fileBaseName, fileExtension) {
49
+ return fileExtension ? `${fileBaseName}.${fileExtension}` : fileBaseName;
50
+ }
51
+ function normalizeIfRelative(path) {
52
+ if (path.startsWith("/") || path.includes(":")) {
53
+ return path;
54
+ }
55
+ return ensureStartsWith(path, "./");
56
+ }
57
+ function resolve(...pathSegments) {
58
+ let path = posix.resolve(...pathSegments);
59
+ path = toPosixPath(path);
60
+ const match = WINDOWS_POSIX_LIKE_PATH_REG_EXP.exec(path);
61
+ return match?.[0] ?? path;
62
+ }
63
+ function toPosixBuffer(buffer) {
64
+ return Buffer.from(toPosixPath(String(buffer)));
65
+ }
66
+ function toPosixPath(path) {
67
+ return replaceAll(path, "\\", "/");
68
+ }
69
+ export {
70
+ basename,
71
+ delimiter,
72
+ dirname,
73
+ extname,
74
+ format,
75
+ getFileName,
76
+ getFolderName,
77
+ isAbsolute,
78
+ join,
79
+ makeFileName,
80
+ normalize,
81
+ normalizeIfRelative,
82
+ parse,
83
+ posix,
84
+ relative,
85
+ resolve,
86
+ sep,
87
+ toPosixBuffer,
88
+ toPosixPath
89
+ };
90
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3BhdGgudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKlxuICogQ29udGFpbnMgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIGhhbmRsaW5nIHBhdGhzLlxuICovXG5cbmltcG9ydCBwYXRoQnJvd3NlcmlmeSBmcm9tICdwYXRoLWJyb3dzZXJpZnknO1xuXG5pbXBvcnQge1xuICBlbnN1cmVTdGFydHNXaXRoLFxuICByZXBsYWNlQWxsXG59IGZyb20gJy4vc3RyaW5nLnRzJztcblxuY29uc3QgV0lORE9XU19QT1NJWF9MSUtFX1BBVEhfUkVHX0VYUCA9IC9bYS16QS1aXTpcXC9bXjpdKiQvO1xuXG4vKipcbiAqIFByb3ZpZGVzIG1ldGhvZHMgZm9yIGhhbmRsaW5nIFBPU0lYIHBhdGhzLlxuICovXG5leHBvcnQgY29uc3QgcG9zaXggPSBwYXRoQnJvd3NlcmlmeS5wb3NpeDtcblxuLyoqXG4gKiBBIFBPU0lYIHBhdGggZGVsaW1pdGVyLlxuICovXG5leHBvcnQgY29uc3QgZGVsaW1pdGVyID0gcG9zaXguZGVsaW1pdGVyO1xuXG4vKipcbiAqIEEgUE9TSVggc2VnbWVudCBzZXBhcmF0b3IuXG4gKi9cbmV4cG9ydCBjb25zdCBzZXAgPSBwYXRoQnJvd3NlcmlmeS5wb3NpeC5zZXA7XG5cbi8qKlxuICogUmV0dXJucyB0aGUgYmFzZSBuYW1lIG9mIGEgZmlsZSwgb3B0aW9uYWxseSByZW1vdmluZyB0aGUgZmlsZSBleHRlbnNpb24uXG4gKlxuICogQHBhcmFtIHBhdGggLSBUaGUgcGF0aCB0byBnZXQgdGhlIGJhc2UgbmFtZSBmcm9tLlxuICogQHBhcmFtIGV4dCAtIEFuIG9wdGlvbmFsIGV4dGVuc2lvbiB0byByZW1vdmUgZnJvbSB0aGUgYmFzZSBuYW1lLlxuICogQHJldHVybnMgVGhlIGJhc2UgbmFtZSBvZiB0aGUgZmlsZS5cbiAqL1xuZXhwb3J0IGNvbnN0IGJhc2VuYW1lID0gcG9zaXguYmFzZW5hbWU7XG5cbi8qKlxuICogUmV0dXJucyB0aGUgZGlyZWN0b3J5IG5hbWUgb2YgYSBwYXRoLlxuICpcbiAqIGBkaXJlY3RvcnlgIGlzIHVzZWQgaW5zdGVhZCBvZiBgZm9sZGVyYCB0byBwcmVzZXJ2ZSBjb21wYXRpYmlsaXR5IHdpdGggYG5vZGU6cGF0aGAgbW9kdWxlLlxuICpcbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggdG8gZ2V0IHRoZSBkaXJlY3RvcnkgbmFtZSBmcm9tLlxuICogQHJldHVybnMgVGhlIGRpcmVjdG9yeSBuYW1lIG9mIHRoZSBwYXRoLlxuICovXG5leHBvcnQgY29uc3QgZGlybmFtZSA9IHBvc2l4LmRpcm5hbWU7XG5cbi8qKlxuICogUmV0dXJucyB0aGUgZmlsZSBleHRlbnNpb24gb2YgYSBwYXRoLlxuICpcbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggdG8gZ2V0IHRoZSBleHRlbnNpb24gZnJvbS5cbiAqIEByZXR1cm5zIFRoZSBmaWxlIGV4dGVuc2lvbiBvZiB0aGUgcGF0aC5cbiAqL1xuZXhwb3J0IGNvbnN0IGV4dG5hbWUgPSBwb3NpeC5leHRuYW1lO1xuXG4vKipcbiAqIEZvcm1hdHMgYSBwYXRoIG9iamVjdCBpbnRvIGEgcGF0aCBzdHJpbmcuXG4gKlxuICogQHBhcmFtIHBhdGhPYmplY3QgLSBUaGUgcGF0aCBvYmplY3QgdG8gZm9ybWF0LlxuICogQHJldHVybnMgVGhlIGZvcm1hdHRlZCBwYXRoIHN0cmluZy5cbiAqL1xuZXhwb3J0IGNvbnN0IGZvcm1hdCA9IHBvc2l4LmZvcm1hdDtcblxuLyoqXG4gKiBEZXRlcm1pbmVzIGlmIGEgcGF0aCBpcyBhYnNvbHV0ZS5cbiAqXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIHRvIGNoZWNrLlxuICogQHJldHVybnMgYHRydWVgIGlmIHRoZSBwYXRoIGlzIGFic29sdXRlLCBgZmFsc2VgIG90aGVyd2lzZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQWJzb2x1dGUocGF0aDogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHJldHVybiBwb3NpeC5pc0Fic29sdXRlKHBhdGgpIHx8IFdJTkRPV1NfUE9TSVhfTElLRV9QQVRIX1JFR19FWFAuZXhlYyhwYXRoKT8uWzBdID09PSBwYXRoO1xufVxuXG4vKipcbiAqIEpvaW5zIG11bHRpcGxlIHBhdGggc2VnbWVudHMgaW50byBhIHNpbmdsZSBwYXRoLlxuICpcbiAqIEBwYXJhbSBwYXRocyAtIFRoZSBwYXRoIHNlZ21lbnRzIHRvIGpvaW4uXG4gKiBAcmV0dXJucyBUaGUgam9pbmVkIHBhdGguXG4gKi9cbmV4cG9ydCBjb25zdCBqb2luID0gcG9zaXguam9pbjtcblxuLyoqXG4gKiBOb3JtYWxpemVzIGEgcGF0aCwgcmVzb2x2aW5nICcuLicgYW5kICcuJyBzZWdtZW50cy5cbiAqXG4gKiBAcGFyYW0gcGF0aCAtIFRoZSBwYXRoIHRvIG5vcm1hbGl6ZS5cbiAqIEByZXR1cm5zIFRoZSBub3JtYWxpemVkIHBhdGguXG4gKi9cbmV4cG9ydCBjb25zdCBub3JtYWxpemUgPSBwb3NpeC5ub3JtYWxpemU7XG5cbi8qKlxuICogUGFyc2VzIGEgcGF0aCBzdHJpbmcgaW50byBhIHBhdGggb2JqZWN0LlxuICpcbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggc3RyaW5nIHRvIHBhcnNlLlxuICogQHJldHVybnMgVGhlIHBhcnNlZCBwYXRoIG9iamVjdC5cbiAqL1xuZXhwb3J0IGNvbnN0IHBhcnNlID0gcG9zaXgucGFyc2U7XG5cbi8qKlxuICogUmV0dXJucyB0aGUgcmVsYXRpdmUgcGF0aCBmcm9tIG9uZSBwYXRoIHRvIGFub3RoZXIuXG4gKlxuICogQHBhcmFtIGZyb20gLSBUaGUgc3RhcnRpbmcgcGF0aC5cbiAqIEBwYXJhbSB0byAtIFRoZSBkZXN0aW5hdGlvbiBwYXRoLlxuICogQHJldHVybnMgVGhlIHJlbGF0aXZlIHBhdGggZnJvbSBgZnJvbWAgdG8gYHRvYC5cbiAqL1xuZXhwb3J0IGNvbnN0IHJlbGF0aXZlID0gcG9zaXgucmVsYXRpdmU7XG5cbi8qKlxuICogR2V0cyB0aGUgZmlsZSBuYW1lIGZyb20gdGhlIGBpbXBvcnQoZG90KW1ldGEoZG90KXVybGAsIGNvbnZlcnRpbmcgaXQgdG8gYSBQT1NJWC1zdHlsZSBwYXRoLlxuICpcbiAqIEBwYXJhbSBpbXBvcnRNZXRhVXJsIC0gVGhlIGBpbXBvcnQoZG90KW1ldGEoZG90KXVybGAgZnJvbSB3aGljaCB0byBleHRyYWN0IHRoZSBmaWxlIG5hbWUuXG4gKiBAcmV0dXJucyBUaGUgUE9TSVgtc3R5bGUgZmlsZSBuYW1lLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmlsZU5hbWUoaW1wb3J0TWV0YVVybDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHJlc29sdmUoZGVjb2RlVVJJKG5ldyBVUkwoaW1wb3J0TWV0YVVybCkucGF0aG5hbWUpKTtcbn1cblxuLyoqXG4gKiBHZXRzIHRoZSBmb2xkZXIgbmFtZSBmcm9tIHRoZSBgaW1wb3J0KGRvdCltZXRhKGRvdCl1cmxgLCBjb252ZXJ0aW5nIGl0IHRvIGEgUE9TSVgtc3R5bGUgcGF0aC5cbiAqXG4gKiBAcGFyYW0gaW1wb3J0TWV0YVVybCAtIFRoZSBgaW1wb3J0KGRvdCltZXRhKGRvdCl1cmxgIGZyb20gd2hpY2ggdG8gZXh0cmFjdCB0aGUgZm9sZGVyIG5hbWUuXG4gKiBAcmV0dXJucyBUaGUgUE9TSVgtc3R5bGUgZm9sZGVyIG5hbWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRGb2xkZXJOYW1lKGltcG9ydE1ldGFVcmw6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBkaXJuYW1lKGdldEZpbGVOYW1lKGltcG9ydE1ldGFVcmwpKTtcbn1cblxuLyoqXG4gKiBNYWtlcyBhIGZpbGUgbmFtZSBieSBhcHBlbmRpbmcgYW4gZXh0ZW5zaW9uIHRvIGEgZ2l2ZW4gZmlsZSBuYW1lLlxuICogSWYgdGhlIGV4dGVuc2lvbiBpcyBlbXB0eSwgdGhlIGZpbGUgbmFtZSBpcyByZXR1cm5lZCBhcyBpcy5cbiAqXG4gKiBAcGFyYW0gZmlsZUJhc2VOYW1lIC0gVGhlIGZpbGUgbmFtZSB0byBhcHBlbmQgdGhlIGV4dGVuc2lvbiB0by5cbiAqIEBwYXJhbSBmaWxlRXh0ZW5zaW9uIC0gVGhlIGV4dGVuc2lvbiB0byBhcHBlbmQgdG8gdGhlIGZpbGUgbmFtZS5cbiAqIEByZXR1cm5zIFRoZSBmaWxlIG5hbWUgd2l0aCB0aGUgZXh0ZW5zaW9uIGFwcGVuZGVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFrZUZpbGVOYW1lKGZpbGVCYXNlTmFtZTogc3RyaW5nLCBmaWxlRXh0ZW5zaW9uOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gZmlsZUV4dGVuc2lvbiA/IGAke2ZpbGVCYXNlTmFtZX0uJHtmaWxlRXh0ZW5zaW9ufWAgOiBmaWxlQmFzZU5hbWU7XG59XG5cbi8qKlxuICogTm9ybWFsaXplcyBhIGdpdmVuIHBhdGggYnkgZW5zdXJpbmcgaXQgaXMgcmVsYXRpdmUsIGFkZGluZyBcIi4vXCIgaWYgbmVjZXNzYXJ5LlxuICpcbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggdG8gbm9ybWFsaXplLlxuICogQHJldHVybnMgVGhlIG5vcm1hbGl6ZWQgcGF0aCwgc3RhcnRpbmcgd2l0aCBcIi4vXCIgaWYgaXQgd2FzIHJlbGF0aXZlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbm9ybWFsaXplSWZSZWxhdGl2ZShwYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xuICBpZiAocGF0aC5zdGFydHNXaXRoKCcvJykgfHwgcGF0aC5pbmNsdWRlcygnOicpKSB7XG4gICAgcmV0dXJuIHBhdGg7XG4gIH1cblxuICByZXR1cm4gZW5zdXJlU3RhcnRzV2l0aChwYXRoLCAnLi8nKTtcbn1cblxuLyoqXG4gKiBSZXNvbHZlcyBhIHNlcXVlbmNlIG9mIHBhdGhzIG9yIHBhdGggc2VnbWVudHMgaW50byBhbiBhYnNvbHV0ZSBwYXRoLlxuICpcbiAqIEBwYXJhbSBwYXRoU2VnbWVudHMgLSBUaGUgc2VxdWVuY2Ugb2YgcGF0aCBzZWdtZW50cyB0byByZXNvbHZlLlxuICogQHJldHVybnMgVGhlIHJlc29sdmVkIGFic29sdXRlIHBhdGguXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlKC4uLnBhdGhTZWdtZW50czogc3RyaW5nW10pOiBzdHJpbmcge1xuICBsZXQgcGF0aCA9IHBvc2l4LnJlc29sdmUoLi4ucGF0aFNlZ21lbnRzKTtcbiAgcGF0aCA9IHRvUG9zaXhQYXRoKHBhdGgpO1xuICBjb25zdCBtYXRjaCA9IFdJTkRPV1NfUE9TSVhfTElLRV9QQVRIX1JFR19FWFAuZXhlYyhwYXRoKTtcbiAgcmV0dXJuIG1hdGNoPy5bMF0gPz8gcGF0aDtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhIGJ1ZmZlciBjb250YWluaW5nIGEgcGF0aCB0byBhIFBPU0lYLXN0eWxlIGJ1ZmZlciBieSByZXBsYWNpbmcgYmFja3NsYXNoZXMgd2l0aCBmb3J3YXJkIHNsYXNoZXMuXG4gKlxuICogQHBhcmFtIGJ1ZmZlciAtIFRoZSBidWZmZXIgdG8gY29udmVydC5cbiAqIEByZXR1cm5zIEEgbmV3IGJ1ZmZlciBjb250YWluaW5nIHRoZSBQT1NJWC1zdHlsZSBwYXRoLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9Qb3NpeEJ1ZmZlcihidWZmZXI6IEJ1ZmZlcik6IEJ1ZmZlciB7XG4gIHJldHVybiBCdWZmZXIuZnJvbSh0b1Bvc2l4UGF0aChTdHJpbmcoYnVmZmVyKSkpO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGEgZ2l2ZW4gcGF0aCB0byBhIFBPU0lYLXN0eWxlIHBhdGggYnkgcmVwbGFjaW5nIGJhY2tzbGFzaGVzIHdpdGggZm9yd2FyZCBzbGFzaGVzLlxuICpcbiAqIEBwYXJhbSBwYXRoIC0gVGhlIHBhdGggdG8gY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSBQT1NJWC1zdHlsZSBwYXRoLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdG9Qb3NpeFBhdGgocGF0aDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHJlcGxhY2VBbGwocGF0aCwgJ1xcXFwnLCAnLycpO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsT0FBTyxvQkFBb0I7QUFFM0I7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFFUCxNQUFNLGtDQUFrQztBQUtqQyxNQUFNLFFBQVEsZUFBZTtBQUs3QixNQUFNLFlBQVksTUFBTTtBQUt4QixNQUFNLE1BQU0sZUFBZSxNQUFNO0FBU2pDLE1BQU0sV0FBVyxNQUFNO0FBVXZCLE1BQU0sVUFBVSxNQUFNO0FBUXRCLE1BQU0sVUFBVSxNQUFNO0FBUXRCLE1BQU0sU0FBUyxNQUFNO0FBUXJCLFNBQVMsV0FBVyxNQUF1QjtBQUNoRCxTQUFPLE1BQU0sV0FBVyxJQUFJLEtBQUssZ0NBQWdDLEtBQUssSUFBSSxJQUFJLENBQUMsTUFBTTtBQUN2RjtBQVFPLE1BQU0sT0FBTyxNQUFNO0FBUW5CLE1BQU0sWUFBWSxNQUFNO0FBUXhCLE1BQU0sUUFBUSxNQUFNO0FBU3BCLE1BQU0sV0FBVyxNQUFNO0FBUXZCLFNBQVMsWUFBWSxlQUErQjtBQUN6RCxTQUFPLFFBQVEsVUFBVSxJQUFJLElBQUksYUFBYSxFQUFFLFFBQVEsQ0FBQztBQUMzRDtBQVFPLFNBQVMsY0FBYyxlQUErQjtBQUMzRCxTQUFPLFFBQVEsWUFBWSxhQUFhLENBQUM7QUFDM0M7QUFVTyxTQUFTLGFBQWEsY0FBc0IsZUFBK0I7QUFDaEYsU0FBTyxnQkFBZ0IsR0FBRyxZQUFZLElBQUksYUFBYSxLQUFLO0FBQzlEO0FBUU8sU0FBUyxvQkFBb0IsTUFBc0I7QUFDeEQsTUFBSSxLQUFLLFdBQVcsR0FBRyxLQUFLLEtBQUssU0FBUyxHQUFHLEdBQUc7QUFDOUMsV0FBTztBQUFBLEVBQ1Q7QUFFQSxTQUFPLGlCQUFpQixNQUFNLElBQUk7QUFDcEM7QUFRTyxTQUFTLFdBQVcsY0FBZ0M7QUFDekQsTUFBSSxPQUFPLE1BQU0sUUFBUSxHQUFHLFlBQVk7QUFDeEMsU0FBTyxZQUFZLElBQUk7QUFDdkIsUUFBTSxRQUFRLGdDQUFnQyxLQUFLLElBQUk7QUFDdkQsU0FBTyxRQUFRLENBQUMsS0FBSztBQUN2QjtBQVFPLFNBQVMsY0FBYyxRQUF3QjtBQUNwRCxTQUFPLE9BQU8sS0FBSyxZQUFZLE9BQU8sTUFBTSxDQUFDLENBQUM7QUFDaEQ7QUFRTyxTQUFTLFlBQVksTUFBc0I7QUFDaEQsU0FBTyxXQUFXLE1BQU0sTUFBTSxHQUFHO0FBQ25DOyIsCiAgIm5hbWVzIjogW10KfQo=