@mnaoumov/obsidian-lib 10.12.0 → 11.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (399) hide show
  1. package/components/worker-component/package.json +6 -0
  2. package/components/worker-pool-component/package.json +6 -0
  3. package/dist/lib/cjs/__merged.cjs +409 -292
  4. package/dist/lib/cjs/__merged.d.cts +17 -8
  5. package/dist/lib/cjs/anchored-suggest.cjs +1 -1
  6. package/dist/lib/cjs/app.cjs +2 -2
  7. package/dist/lib/cjs/async-with-notice.cjs +4 -4
  8. package/dist/lib/cjs/attachment-path.cjs +9 -9
  9. package/dist/lib/cjs/attachment-path.d.cts +3 -3
  10. package/dist/lib/cjs/attachment-unit-folder.cjs +2 -2
  11. package/dist/lib/cjs/backlink-index.cjs +5 -5
  12. package/dist/lib/cjs/backlink.cjs +7 -7
  13. package/dist/lib/cjs/bases-view-registrar.cjs +1 -1
  14. package/dist/lib/cjs/broken-link-candidates.cjs +1 -1
  15. package/dist/lib/cjs/bug-report.cjs +3 -3
  16. package/dist/lib/cjs/bulk-operation-progress.cjs +1 -1
  17. package/dist/lib/cjs/bulk-operation.cjs +2 -2
  18. package/dist/lib/cjs/callout.cjs +6 -6
  19. package/dist/lib/cjs/canvas.cjs +11 -9
  20. package/dist/lib/cjs/canvas.d.cts +13 -0
  21. package/dist/lib/cjs/case-insensitive-file-index.cjs +3 -3
  22. package/dist/lib/cjs/code-block-render-handoff.cjs +5 -5
  23. package/dist/lib/cjs/codemirror/editor-mode-extension.cjs +4 -4
  24. package/dist/lib/cjs/codemirror/incremental-parse-state-field.cjs +2 -2
  25. package/dist/lib/cjs/codemirror/index.cjs +7 -7
  26. package/dist/lib/cjs/codemirror/inline-token-widgets.cjs +5 -5
  27. package/dist/lib/cjs/codemirror/markdown-editor-views.cjs +2 -2
  28. package/dist/lib/cjs/codemirror/settings-facet.cjs +1 -1
  29. package/dist/lib/cjs/command-handlers/abstract-file-command-handler.cjs +17 -17
  30. package/dist/lib/cjs/command-handlers/abstract-file-command-handler.d.cts +13 -13
  31. package/dist/lib/cjs/command-handlers/command-handler-component.cjs +2 -2
  32. package/dist/lib/cjs/command-handlers/command-handler.cjs +2 -2
  33. package/dist/lib/cjs/command-handlers/editor-command-handler.cjs +10 -10
  34. package/dist/lib/cjs/command-handlers/editor-command-handler.d.cts +7 -7
  35. package/dist/lib/cjs/command-handlers/file-command-handler.cjs +3 -3
  36. package/dist/lib/cjs/command-handlers/folder-command-handler.cjs +3 -3
  37. package/dist/lib/cjs/command-handlers/global-command-handler.cjs +2 -2
  38. package/dist/lib/cjs/command-handlers/index.cjs +15 -15
  39. package/dist/lib/cjs/command-handlers/open-bug-report-command-handler.cjs +6 -6
  40. package/dist/lib/cjs/command-handlers/open-demo-vault-command-handler.cjs +2 -2
  41. package/dist/lib/cjs/command-handlers/open-discussion-command-handler.cjs +2 -2
  42. package/dist/lib/cjs/command-handlers/open-feature-request-command-handler.cjs +2 -2
  43. package/dist/lib/cjs/command-handlers/open-git-hub-command-handler.cjs +1 -1
  44. package/dist/lib/cjs/command-handlers/open-settings-command-handler.cjs +2 -2
  45. package/dist/lib/cjs/command-handlers/undo-bulk-operation-command-handler.cjs +2 -2
  46. package/dist/lib/cjs/command-handlers/unlock-active-note-command-handler.cjs +1 -1
  47. package/dist/lib/cjs/community-plugins.cjs +3 -3
  48. package/dist/lib/cjs/components/abort-signal-component.cjs +2 -2
  49. package/dist/lib/cjs/components/all-windows-event-component.cjs +5 -5
  50. package/dist/lib/cjs/components/all-windows-status-bar-item-component.cjs +3 -3
  51. package/dist/lib/cjs/components/async-error-handler-component.cjs +5 -5
  52. package/dist/lib/cjs/components/async-events-component.cjs +1 -1
  53. package/dist/lib/cjs/components/bulk-operation-commit-component.cjs +12 -12
  54. package/dist/lib/cjs/components/case-insensitive-file-index-component.cjs +2 -2
  55. package/dist/lib/cjs/components/component-ex.cjs +21 -11
  56. package/dist/lib/cjs/components/component-ex.d.cts +11 -0
  57. package/dist/lib/cjs/components/console-debug-component.cjs +2 -2
  58. package/dist/lib/cjs/components/core-plugin-toggle-component.cjs +2 -2
  59. package/dist/lib/cjs/components/disposable-component.cjs +2 -2
  60. package/dist/lib/cjs/components/embed-extensions-component.cjs +1 -1
  61. package/dist/lib/cjs/components/embeddable-markdown-editor-component.cjs +8 -8
  62. package/dist/lib/cjs/components/file-explorer-root-menu-component.cjs +7 -7
  63. package/dist/lib/cjs/components/generate-markdown-link-default-params-component.cjs +2 -2
  64. package/dist/lib/cjs/components/incremental-file-index-component.cjs +4 -4
  65. package/dist/lib/cjs/components/index.cjs +46 -40
  66. package/dist/lib/cjs/components/index.d.cts +2 -0
  67. package/dist/lib/cjs/components/layout-ready-component.cjs +3 -3
  68. package/dist/lib/cjs/components/menu-event-registrar-component.cjs +2 -2
  69. package/dist/lib/cjs/components/monkey-around-component.cjs +3 -3
  70. package/dist/lib/cjs/components/notebook-navigator-menu-event-registrar-component.cjs +5 -5
  71. package/dist/lib/cjs/components/plugin-context-component.cjs +5 -5
  72. package/dist/lib/cjs/components/plugin-gate-component.cjs +68 -28
  73. package/dist/lib/cjs/components/plugin-gate-component.d.cts +36 -13
  74. package/dist/lib/cjs/components/plugin-notice-component.cjs +39 -33
  75. package/dist/lib/cjs/components/plugin-notice-component.d.cts +4 -3
  76. package/dist/lib/cjs/components/plugin-settings-component.cjs +113 -17
  77. package/dist/lib/cjs/components/plugin-settings-component.d.cts +35 -5
  78. package/dist/lib/cjs/components/plugin-settings-tab-component.cjs +2 -2
  79. package/dist/lib/cjs/components/plugin-suggestion-component.cjs +8 -8
  80. package/dist/lib/cjs/components/pointer-position-component.cjs +2 -2
  81. package/dist/lib/cjs/components/reconfigurable-editor-extension-component.cjs +3 -3
  82. package/dist/lib/cjs/components/registry-component.cjs +2 -2
  83. package/dist/lib/cjs/components/release-notes-component.cjs +6 -6
  84. package/dist/lib/cjs/components/rename-delete-handler-component.cjs +25 -25
  85. package/dist/lib/cjs/components/rmdir-guard-component.cjs +2 -2
  86. package/dist/lib/cjs/components/settings-facet-component.cjs +1 -1
  87. package/dist/lib/cjs/components/settings-migration-component.cjs +5 -5
  88. package/dist/lib/cjs/components/shared-component-pool-component.cjs +6 -6
  89. package/dist/lib/cjs/components/style-sheet-component.cjs +3 -3
  90. package/dist/lib/cjs/components/syntax-highlighting-component.cjs +3 -3
  91. package/dist/lib/cjs/components/templates-language-component.cjs +1 -1
  92. package/dist/lib/cjs/components/worker-component.cjs +363 -0
  93. package/dist/lib/cjs/components/worker-component.d.cts +156 -0
  94. package/dist/lib/cjs/components/worker-pool-component.cjs +185 -0
  95. package/dist/lib/cjs/components/worker-pool-component.d.cts +102 -0
  96. package/dist/lib/cjs/components/workspace-layout-state-component.cjs +7 -7
  97. package/dist/lib/cjs/constructors/get-dom-events-handlers-constructor.cjs +5 -5
  98. package/dist/lib/cjs/constructors/index.cjs +1 -1
  99. package/dist/lib/cjs/data-handler.cjs +111 -4
  100. package/dist/lib/cjs/data-handler.d.cts +92 -1
  101. package/dist/lib/cjs/data-stores/data-store-locations.cjs +82 -24
  102. package/dist/lib/cjs/data-stores/data-store-locations.d.cts +15 -0
  103. package/dist/lib/cjs/data-stores/data-store-replica.cjs +33 -5
  104. package/dist/lib/cjs/data-stores/data-store-seeds.cjs +6 -6
  105. package/dist/lib/cjs/data-stores/data-store-seeds.d.cts +2 -2
  106. package/dist/lib/cjs/data-stores/data-store-transport.cjs +81 -8
  107. package/dist/lib/cjs/data-stores/data-store-transport.d.cts +30 -1
  108. package/dist/lib/cjs/data-stores/index.cjs +6 -6
  109. package/dist/lib/cjs/data-stores/local-data-store.cjs +74 -10
  110. package/dist/lib/cjs/data-stores/local-data-store.d.cts +58 -1
  111. package/dist/lib/cjs/data-stores/shared-data-store.cjs +76 -19
  112. package/dist/lib/cjs/data-stores/shared-data-store.d.cts +18 -1
  113. package/dist/lib/cjs/dataview-link.cjs +2 -2
  114. package/dist/lib/cjs/dataview.cjs +27 -7
  115. package/dist/lib/cjs/dataview.d.cts +14 -0
  116. package/dist/lib/cjs/debug.cjs +3 -3
  117. package/dist/lib/cjs/demo-vault-helper.cjs +34 -6
  118. package/dist/lib/cjs/demo-vault-helper.d.cts +6 -2
  119. package/dist/lib/cjs/desktop-bulk-operation-git.cjs +10 -10
  120. package/dist/lib/cjs/desktop-demo-vault-opener.cjs +13 -13
  121. package/dist/lib/cjs/desktop-git-runner.cjs +2 -2
  122. package/dist/lib/cjs/desktop-operating-system.cjs +1 -1
  123. package/dist/lib/cjs/desktop-request-url-stream.cjs +8 -14
  124. package/dist/lib/cjs/desktop-trusted-input.cjs +2 -2
  125. package/dist/lib/cjs/disposable.cjs +150 -0
  126. package/dist/lib/cjs/disposable.d.cts +39 -0
  127. package/dist/lib/cjs/editor-extension-registrar.cjs +1 -1
  128. package/dist/lib/cjs/editor-suggest-registrar.cjs +2 -2
  129. package/dist/lib/cjs/editor-suggest.cjs +1 -1
  130. package/dist/lib/cjs/editor.cjs +6 -6
  131. package/dist/lib/cjs/events.cjs +2 -2
  132. package/dist/lib/cjs/extensions-registrar.cjs +1 -1
  133. package/dist/lib/cjs/feature-request.cjs +1 -1
  134. package/dist/lib/cjs/file-change.cjs +10 -10
  135. package/dist/lib/cjs/file-explorer.cjs +2 -2
  136. package/dist/lib/cjs/file-manager.cjs +5 -5
  137. package/dist/lib/cjs/file-system.cjs +10 -10
  138. package/dist/lib/cjs/folder-note.cjs +4 -4
  139. package/dist/lib/cjs/frontmatter-formatting.cjs +7 -6
  140. package/dist/lib/cjs/frontmatter-link-cache-with-offsets.cjs +1 -1
  141. package/dist/lib/cjs/frontmatter.cjs +5 -5
  142. package/dist/lib/cjs/generated-during-build.cjs +1 -1
  143. package/dist/lib/cjs/hotkey.cjs +1 -1
  144. package/dist/lib/cjs/hover-link-source-registrar.cjs +1 -1
  145. package/dist/lib/cjs/html-element.cjs +2 -2
  146. package/dist/lib/cjs/i18n/custom-type-options.cjs +1 -1
  147. package/dist/lib/cjs/i18n/default-translations.cjs +1 -1
  148. package/dist/lib/cjs/i18n/i18n.cjs +7 -7
  149. package/dist/lib/cjs/i18n/index.cjs +4 -4
  150. package/dist/lib/cjs/i18n/locales/en.cjs +5 -1
  151. package/dist/lib/cjs/i18n/locales/en.d.cts +4 -0
  152. package/dist/lib/cjs/i18n/locales/index.cjs +2 -2
  153. package/dist/lib/cjs/i18n/locales/translations-map.cjs +1 -1
  154. package/dist/lib/cjs/i18n/locales/translations-map.d.cts +4 -0
  155. package/dist/lib/cjs/index.cjs +145 -127
  156. package/dist/lib/cjs/index.d.cts +6 -0
  157. package/dist/lib/cjs/inline-token-renderer.cjs +2 -2
  158. package/dist/lib/cjs/is-in-obsidian.cjs +1 -1
  159. package/dist/lib/cjs/library-styles.cjs +3 -3
  160. package/dist/lib/cjs/link-and-tag-input-suggest.cjs +2 -2
  161. package/dist/lib/cjs/link.cjs +76 -56
  162. package/dist/lib/cjs/link.d.cts +20 -14
  163. package/dist/lib/cjs/logger.cjs +4 -4
  164. package/dist/lib/cjs/loop.cjs +10 -16
  165. package/dist/lib/cjs/markdown-code-block-processor-registrar.cjs +17 -2
  166. package/dist/lib/cjs/markdown-code-block-processor-registrar.d.cts +7 -0
  167. package/dist/lib/cjs/markdown-code-block-processor.cjs +13 -13
  168. package/dist/lib/cjs/markdown-post-processor-registrar.cjs +2 -2
  169. package/dist/lib/cjs/markdown-view.cjs +3 -3
  170. package/dist/lib/cjs/markdown.cjs +12 -12
  171. package/dist/lib/cjs/metadata-cache.cjs +23 -23
  172. package/dist/lib/cjs/metadata-cache.d.cts +5 -4
  173. package/dist/lib/cjs/misplaced-attachment.cjs +297 -0
  174. package/dist/lib/cjs/misplaced-attachment.d.cts +228 -0
  175. package/dist/lib/cjs/mobile-app-info.cjs +1 -1
  176. package/dist/lib/cjs/modals/alert.cjs +4 -4
  177. package/dist/lib/cjs/modals/code-block-builder.cjs +7 -7
  178. package/dist/lib/cjs/modals/confirm.cjs +4 -4
  179. package/dist/lib/cjs/modals/copy-text-manually.cjs +4 -4
  180. package/dist/lib/cjs/modals/index.cjs +12 -12
  181. package/dist/lib/cjs/modals/minimizable-modal.cjs +6 -6
  182. package/dist/lib/cjs/modals/modal-command-builder.cjs +3 -3
  183. package/dist/lib/cjs/modals/modal.cjs +3 -3
  184. package/dist/lib/cjs/modals/prompt.cjs +10 -10
  185. package/dist/lib/cjs/modals/prompt.d.cts +1 -1
  186. package/dist/lib/cjs/modals/review-bug-report-diagnostics.cjs +5 -5
  187. package/dist/lib/cjs/modals/select-item.cjs +6 -6
  188. package/dist/lib/cjs/modals/select-option.cjs +3 -3
  189. package/dist/lib/cjs/modals/suggest-modal-command-builder.cjs +1 -1
  190. package/dist/lib/cjs/note-priority.cjs +2 -2
  191. package/dist/lib/cjs/notebook-navigator.cjs +12 -2
  192. package/dist/lib/cjs/notebook-navigator.d.cts +6 -0
  193. package/dist/lib/cjs/obsidian-lib-state.cjs +1 -1
  194. package/dist/lib/cjs/obsidian-protocol-handler-registrar.cjs +1 -1
  195. package/dist/lib/cjs/obsidian-settings.cjs +1 -1
  196. package/dist/lib/cjs/obsidian-word-characters.cjs +1 -1
  197. package/dist/lib/cjs/parse-link.cjs +14 -14
  198. package/dist/lib/cjs/path-compatibility.cjs +368 -0
  199. package/dist/lib/cjs/path-compatibility.d.cts +263 -0
  200. package/dist/lib/cjs/path-settings.cjs +3 -3
  201. package/dist/lib/cjs/pdf.cjs +2 -2
  202. package/dist/lib/cjs/plugin/index.cjs +16 -13
  203. package/dist/lib/cjs/plugin/index.d.cts +1 -0
  204. package/dist/lib/cjs/plugin/plugin-api.cjs +8 -8
  205. package/dist/lib/cjs/plugin/plugin-async-cleanup.cjs +6 -3
  206. package/dist/lib/cjs/plugin/plugin-async-cleanup.d.cts +5 -0
  207. package/dist/lib/cjs/plugin/plugin-context.cjs +10 -9
  208. package/dist/lib/cjs/plugin/plugin-event-source.cjs +1 -1
  209. package/dist/lib/cjs/plugin/plugin-event-source.d.cts +4 -4
  210. package/dist/lib/cjs/plugin/plugin-install-state.cjs +4 -4
  211. package/dist/lib/cjs/plugin/plugin-instance.cjs +14 -12
  212. package/dist/lib/cjs/plugin/plugin-instance.d.cts +7 -0
  213. package/dist/lib/cjs/plugin/plugin-lifecycle-events.cjs +1 -1
  214. package/dist/lib/cjs/plugin/plugin-lifecycle-events.d.cts +6 -4
  215. package/dist/lib/cjs/plugin/plugin-settings-tab.cjs +15 -15
  216. package/dist/lib/cjs/plugin/plugin.cjs +118 -34
  217. package/dist/lib/cjs/plugin/plugin.d.cts +28 -5
  218. package/dist/lib/cjs/plugin/settings-migration-api.cjs +1 -1
  219. package/dist/lib/cjs/plugin/third-party-plugin.cjs +231 -0
  220. package/dist/lib/cjs/plugin/third-party-plugin.d.cts +244 -0
  221. package/dist/lib/cjs/plugin-cli-handler-registrar.cjs +2 -2
  222. package/dist/lib/cjs/popovers/field-popover.cjs +4 -4
  223. package/dist/lib/cjs/popovers/index.cjs +3 -3
  224. package/dist/lib/cjs/popovers/popover-anchor.cjs +1 -1
  225. package/dist/lib/cjs/popovers/popover.cjs +5 -5
  226. package/dist/lib/cjs/queue.cjs +8 -8
  227. package/dist/lib/cjs/react/app-context.cjs +3 -3
  228. package/dist/lib/cjs/react/index.cjs +1 -1
  229. package/dist/lib/cjs/reference-definition.cjs +1 -1
  230. package/dist/lib/cjs/reference.cjs +3 -3
  231. package/dist/lib/cjs/release-asset.cjs +5 -5
  232. package/dist/lib/cjs/rendered-markdown.cjs +4 -4
  233. package/dist/lib/cjs/request-url.cjs +4 -4
  234. package/dist/lib/cjs/resource-lock.cjs +46 -42
  235. package/dist/lib/cjs/resource-lock.d.cts +8 -7
  236. package/dist/lib/cjs/resource-url.cjs +3 -3
  237. package/dist/lib/cjs/ribbon-icon-registrar.cjs +1 -1
  238. package/dist/lib/cjs/setting-components/checkbox-component.cjs +3 -3
  239. package/dist/lib/cjs/setting-components/code-highlighter-component.cjs +7 -7
  240. package/dist/lib/cjs/setting-components/date-component.cjs +4 -4
  241. package/dist/lib/cjs/setting-components/date-time-component.cjs +4 -4
  242. package/dist/lib/cjs/setting-components/email-component.cjs +2 -2
  243. package/dist/lib/cjs/setting-components/file-component.cjs +2 -2
  244. package/dist/lib/cjs/setting-components/folder-list-component.cjs +3 -3
  245. package/dist/lib/cjs/setting-components/hotkey-component.cjs +5 -5
  246. package/dist/lib/cjs/setting-components/index.cjs +30 -30
  247. package/dist/lib/cjs/setting-components/list-component.cjs +5 -5
  248. package/dist/lib/cjs/setting-components/month-component.cjs +4 -4
  249. package/dist/lib/cjs/setting-components/multiple-dropdown-component.cjs +3 -3
  250. package/dist/lib/cjs/setting-components/multiple-email-component.cjs +2 -2
  251. package/dist/lib/cjs/setting-components/multiple-file-component.cjs +3 -3
  252. package/dist/lib/cjs/setting-components/multiple-text-component.cjs +9 -6
  253. package/dist/lib/cjs/setting-components/multiple-text-component.d.cts +4 -1
  254. package/dist/lib/cjs/setting-components/number-component.cjs +2 -2
  255. package/dist/lib/cjs/setting-components/password-component.cjs +2 -2
  256. package/dist/lib/cjs/setting-components/setting-component-wrapper.cjs +3 -3
  257. package/dist/lib/cjs/setting-components/tag-list-component.cjs +4 -4
  258. package/dist/lib/cjs/setting-components/telephone-component.cjs +2 -2
  259. package/dist/lib/cjs/setting-components/text-based-component.cjs +1 -1
  260. package/dist/lib/cjs/setting-components/time-component.cjs +3 -3
  261. package/dist/lib/cjs/setting-components/tri-state-checkbox-component.cjs +3 -3
  262. package/dist/lib/cjs/setting-components/typed-dropdown-component.cjs +3 -3
  263. package/dist/lib/cjs/setting-components/typed-multiple-dropdown-component.cjs +4 -4
  264. package/dist/lib/cjs/setting-components/typed-range-text-component.cjs +1 -1
  265. package/dist/lib/cjs/setting-components/typed-text-component.cjs +3 -3
  266. package/dist/lib/cjs/setting-components/url-component.cjs +2 -2
  267. package/dist/lib/cjs/setting-components/validator-component.cjs +4 -4
  268. package/dist/lib/cjs/setting-components/week-component.cjs +4 -4
  269. package/dist/lib/cjs/setting-ex.cjs +26 -26
  270. package/dist/lib/cjs/setting-group-ex.cjs +2 -2
  271. package/dist/lib/cjs/settings-recovery.cjs +217 -0
  272. package/dist/lib/cjs/settings-recovery.d.cts +178 -0
  273. package/dist/lib/cjs/settings-tabs.cjs +5 -5
  274. package/dist/lib/cjs/status-bar-item-registrar.cjs +1 -1
  275. package/dist/lib/cjs/templater.cjs +14 -4
  276. package/dist/lib/cjs/templater.d.cts +6 -0
  277. package/dist/lib/cjs/transformers/duration-transformer.cjs +2 -2
  278. package/dist/lib/cjs/transformers/index.cjs +1 -1
  279. package/dist/lib/cjs/trusted-input.cjs +1 -1
  280. package/dist/lib/cjs/validation.cjs +4 -4
  281. package/dist/lib/cjs/vault-delete.cjs +6 -6
  282. package/dist/lib/cjs/vault-transaction.cjs +5 -5
  283. package/dist/lib/cjs/vault.cjs +12 -12
  284. package/dist/lib/cjs/view-registrar.cjs +1 -1
  285. package/dist/lib/cjs/virtual-file.cjs +16 -14
  286. package/dist/lib/cjs/virtual-file.d.cts +2 -1
  287. package/dist/lib/cjs/wasm.cjs +119 -0
  288. package/dist/lib/cjs/wasm.d.cts +54 -0
  289. package/dist/lib/cjs/worker-protocol.cjs +209 -0
  290. package/dist/lib/cjs/worker-protocol.d.cts +282 -0
  291. package/dist/lib/cjs/workspace.cjs +1 -1
  292. package/dist/lib/esm/__merged.d.mts +17 -8
  293. package/dist/lib/esm/__merged.mjs +133 -3
  294. package/dist/lib/esm/app.mjs +2 -2
  295. package/dist/lib/esm/attachment-path.d.mts +3 -3
  296. package/dist/lib/esm/attachment-path.mjs +2 -2
  297. package/dist/lib/esm/backlink-index.mjs +2 -2
  298. package/dist/lib/esm/canvas.d.mts +13 -0
  299. package/dist/lib/esm/canvas.mjs +6 -5
  300. package/dist/lib/esm/command-handlers/abstract-file-command-handler.d.mts +13 -13
  301. package/dist/lib/esm/command-handlers/abstract-file-command-handler.mjs +14 -14
  302. package/dist/lib/esm/command-handlers/editor-command-handler.d.mts +7 -7
  303. package/dist/lib/esm/command-handlers/editor-command-handler.mjs +8 -8
  304. package/dist/lib/esm/components/component-ex.d.mts +11 -0
  305. package/dist/lib/esm/components/component-ex.mjs +19 -6
  306. package/dist/lib/esm/components/disposable-component.mjs +1 -1
  307. package/dist/lib/esm/components/index.d.mts +2 -0
  308. package/dist/lib/esm/components/index.mjs +5 -1
  309. package/dist/lib/esm/components/plugin-gate-component.d.mts +36 -13
  310. package/dist/lib/esm/components/plugin-gate-component.mjs +57 -14
  311. package/dist/lib/esm/components/plugin-notice-component.d.mts +4 -3
  312. package/dist/lib/esm/components/plugin-notice-component.mjs +30 -21
  313. package/dist/lib/esm/components/plugin-settings-component.d.mts +35 -5
  314. package/dist/lib/esm/components/plugin-settings-component.mjs +99 -3
  315. package/dist/lib/esm/components/rename-delete-handler-component.mjs +2 -2
  316. package/dist/lib/esm/components/worker-component.d.mts +156 -0
  317. package/dist/lib/esm/components/worker-component.mjs +279 -0
  318. package/dist/lib/esm/components/worker-pool-component.d.mts +102 -0
  319. package/dist/lib/esm/components/worker-pool-component.mjs +95 -0
  320. package/dist/lib/esm/components/workspace-layout-state-component.mjs +1 -1
  321. package/dist/lib/esm/data-handler.d.mts +92 -1
  322. package/dist/lib/esm/data-handler.mjs +112 -3
  323. package/dist/lib/esm/data-stores/data-store-locations.d.mts +15 -0
  324. package/dist/lib/esm/data-stores/data-store-locations.mjs +80 -22
  325. package/dist/lib/esm/data-stores/data-store-replica.mjs +33 -5
  326. package/dist/lib/esm/data-stores/data-store-seeds.d.mts +2 -2
  327. package/dist/lib/esm/data-stores/data-store-seeds.mjs +4 -4
  328. package/dist/lib/esm/data-stores/data-store-transport.d.mts +30 -1
  329. package/dist/lib/esm/data-stores/data-store-transport.mjs +78 -5
  330. package/dist/lib/esm/data-stores/local-data-store.d.mts +58 -1
  331. package/dist/lib/esm/data-stores/local-data-store.mjs +71 -9
  332. package/dist/lib/esm/data-stores/shared-data-store.d.mts +18 -1
  333. package/dist/lib/esm/data-stores/shared-data-store.mjs +72 -15
  334. package/dist/lib/esm/dataview.d.mts +14 -0
  335. package/dist/lib/esm/dataview.mjs +19 -1
  336. package/dist/lib/esm/demo-vault-helper.d.mts +6 -2
  337. package/dist/lib/esm/demo-vault-helper.mjs +29 -1
  338. package/dist/lib/esm/desktop-demo-vault-opener.mjs +1 -1
  339. package/dist/lib/esm/desktop-request-url-stream.mjs +4 -10
  340. package/dist/lib/esm/disposable.d.mts +39 -0
  341. package/dist/lib/esm/disposable.mjs +64 -0
  342. package/dist/lib/esm/file-system.mjs +2 -2
  343. package/dist/lib/esm/frontmatter-formatting.mjs +2 -1
  344. package/dist/lib/esm/generated-during-build.mjs +1 -1
  345. package/dist/lib/esm/i18n/locales/en.d.mts +4 -0
  346. package/dist/lib/esm/i18n/locales/en.mjs +5 -1
  347. package/dist/lib/esm/i18n/locales/translations-map.d.mts +4 -0
  348. package/dist/lib/esm/index.d.mts +6 -0
  349. package/dist/lib/esm/index.mjs +13 -1
  350. package/dist/lib/esm/link.d.mts +20 -14
  351. package/dist/lib/esm/link.mjs +57 -38
  352. package/dist/lib/esm/loop.mjs +2 -8
  353. package/dist/lib/esm/markdown-code-block-processor-registrar.d.mts +7 -0
  354. package/dist/lib/esm/markdown-code-block-processor-registrar.mjs +16 -1
  355. package/dist/lib/esm/metadata-cache.d.mts +5 -4
  356. package/dist/lib/esm/metadata-cache.mjs +6 -6
  357. package/dist/lib/esm/misplaced-attachment.d.mts +228 -0
  358. package/dist/lib/esm/misplaced-attachment.mjs +212 -0
  359. package/dist/lib/esm/modals/prompt.d.mts +1 -1
  360. package/dist/lib/esm/modals/prompt.mjs +1 -1
  361. package/dist/lib/esm/notebook-navigator.d.mts +6 -0
  362. package/dist/lib/esm/notebook-navigator.mjs +11 -2
  363. package/dist/lib/esm/parse-link.mjs +4 -4
  364. package/dist/lib/esm/path-compatibility.d.mts +263 -0
  365. package/dist/lib/esm/path-compatibility.mjs +277 -0
  366. package/dist/lib/esm/plugin/index.d.mts +1 -0
  367. package/dist/lib/esm/plugin/index.mjs +4 -2
  368. package/dist/lib/esm/plugin/plugin-async-cleanup.d.mts +5 -0
  369. package/dist/lib/esm/plugin/plugin-async-cleanup.mjs +3 -1
  370. package/dist/lib/esm/plugin/plugin-context.mjs +2 -1
  371. package/dist/lib/esm/plugin/plugin-event-source.d.mts +4 -4
  372. package/dist/lib/esm/plugin/plugin-event-source.mjs +1 -1
  373. package/dist/lib/esm/plugin/plugin-instance.d.mts +7 -0
  374. package/dist/lib/esm/plugin/plugin-instance.mjs +2 -1
  375. package/dist/lib/esm/plugin/plugin-lifecycle-events.d.mts +6 -4
  376. package/dist/lib/esm/plugin/plugin-lifecycle-events.mjs +1 -1
  377. package/dist/lib/esm/plugin/plugin.d.mts +28 -5
  378. package/dist/lib/esm/plugin/plugin.mjs +103 -9
  379. package/dist/lib/esm/plugin/third-party-plugin.d.mts +244 -0
  380. package/dist/lib/esm/plugin/third-party-plugin.mjs +147 -0
  381. package/dist/lib/esm/release-asset.mjs +1 -1
  382. package/dist/lib/esm/resource-lock.d.mts +8 -7
  383. package/dist/lib/esm/resource-lock.mjs +31 -26
  384. package/dist/lib/esm/setting-components/multiple-text-component.d.mts +4 -1
  385. package/dist/lib/esm/setting-components/multiple-text-component.mjs +6 -3
  386. package/dist/lib/esm/settings-recovery.d.mts +178 -0
  387. package/dist/lib/esm/settings-recovery.mjs +125 -0
  388. package/dist/lib/esm/settings-tabs.mjs +2 -2
  389. package/dist/lib/esm/templater.d.mts +6 -0
  390. package/dist/lib/esm/templater.mjs +11 -2
  391. package/dist/lib/esm/vault.mjs +1 -1
  392. package/dist/lib/esm/virtual-file.d.mts +2 -1
  393. package/dist/lib/esm/virtual-file.mjs +7 -5
  394. package/dist/lib/esm/wasm.d.mts +54 -0
  395. package/dist/lib/esm/wasm.mjs +30 -0
  396. package/dist/lib/esm/worker-protocol.d.mts +282 -0
  397. package/dist/lib/esm/worker-protocol.mjs +113 -0
  398. package/package.json +9 -8
  399. package/plugin/third-party-plugin/package.json +6 -0
@@ -36,6 +36,7 @@
36
36
  *
37
37
  * The explicit {@link unlockResourceForPath} pair remains available for non-`using` call sites.
38
38
  */
39
+ import type { DisposableEx } from '@mnaoumov/typescript-lib/disposable' with { 'resolution-mode': 'import' };
39
40
  import type { App } from 'obsidian' with { 'resolution-mode': 'import' };
40
41
  import type { PathOrFile } from './file-system.cjs';
41
42
  import { ComponentEx } from './components/component-ex.cjs';
@@ -176,9 +177,9 @@ export declare class ResourceLockComponent extends ComponentEx {
176
177
  * ```
177
178
  *
178
179
  * @param pathsOrFiles - The paths (or files/folders) whose mutation by this operation is sanctioned.
179
- * @returns A {@link Disposable} that ends the bypass scope when disposed.
180
+ * @returns A {@link DisposableEx} that ends the bypass scope when disposed.
180
181
  */
181
- bypassBlockedMutations(pathsOrFiles: readonly PathOrFile[]): Disposable;
182
+ bypassBlockedMutations(pathsOrFiles: readonly PathOrFile[]): DisposableEx;
182
183
  /**
183
184
  * Checks whether the path is locked directly or lies under a `subtree`-locked ancestor folder.
184
185
  *
@@ -212,9 +213,9 @@ export declare class ResourceLockComponent extends ComponentEx {
212
213
  * in the unlock confirmation). Pass an {@link ResourceLockComponentLockForPathParams.abortController}
213
214
  * to make the lock cancelable via a lock indicator's "unlock" menu, the "Unlock active note" command,
214
215
  * or {@link requestResourceUnlockForPath}.
215
- * @returns A {@link Disposable} that releases this lock when disposed. Disposing more than once is a no-op.
216
+ * @returns A {@link DisposableEx} that releases this lock when disposed. Disposing more than once is a no-op.
216
217
  */
217
- lockForPath(params: ResourceLockComponentLockForPathParams): Disposable;
218
+ lockForPath(params: ResourceLockComponentLockForPathParams): DisposableEx;
218
219
  /**
219
220
  * Releases every lock still held by this plugin when the component (and thus the plugin) unloads,
220
221
  * so no note is left stuck read-only by an operation that never completed.
@@ -297,13 +298,13 @@ export declare function isResourceLockedForPathByAncestor(app: App, pathOrFile:
297
298
  * that currently hold a lock on the note.
298
299
  *
299
300
  * The lock is reference-counted per calling plugin: each call must be balanced by exactly one
300
- * release (either disposing the returned {@link Disposable} — ideally via a `using` declaration — or
301
+ * release (either disposing the returned {@link DisposableEx} — ideally via a `using` declaration — or
301
302
  * a matching {@link unlockResourceForPath} call).
302
303
  *
303
304
  * @param params - The parameters for locking the note.
304
- * @returns A {@link Disposable} that releases this lock when disposed. Disposing more than once is a no-op.
305
+ * @returns A {@link DisposableEx} that releases this lock when disposed. Disposing more than once is a no-op.
305
306
  */
306
- export declare function lockResourceForPath(params: LockResourceForPathParams): Disposable;
307
+ export declare function lockResourceForPath(params: LockResourceForPathParams): DisposableEx;
307
308
  /**
308
309
  * Requests an unlock of the note at the given path by aborting every {@link AbortController} that was
309
310
  * associated with a lock on it (via {@link ResourceLockComponent.lockForPath}'s
@@ -117,9 +117,9 @@ __export(resource_url_exports, {
117
117
  relativePathToResourceUrl: () => relativePathToResourceUrl
118
118
  });
119
119
  module.exports = __toCommonJS(resource_url_exports);
120
- var import_path = require('@mnaoumov/typescript-lib/path');
121
- var import_implementations = require('@obsidian-typings/obsidian-public-latest/implementations');
122
- var import_obsidian = require('obsidian');
120
+ var import_path = require("@mnaoumov/typescript-lib/path");
121
+ var import_implementations = require("@obsidian-typings/obsidian-public-latest/implementations");
122
+ var import_obsidian = require("obsidian");
123
123
  function relativePathToResourceUrl(params) {
124
124
  const {
125
125
  app,
@@ -117,7 +117,7 @@ __export(ribbon_icon_registrar_exports, {
117
117
  PluginRibbonIconRegistrar: () => PluginRibbonIconRegistrar
118
118
  });
119
119
  module.exports = __toCommonJS(ribbon_icon_registrar_exports);
120
- var import_obsidian = require('obsidian');
120
+ var import_obsidian = require("obsidian");
121
121
  class PluginRibbonIconRegistrar {
122
122
  /**
123
123
  * Creates a new instance of the {@link PluginRibbonIconRegistrar} class.
@@ -117,9 +117,9 @@ __export(checkbox_component_exports, {
117
117
  CheckboxComponent: () => CheckboxComponent
118
118
  });
119
119
  module.exports = __toCommonJS(checkbox_component_exports);
120
- var import_obsidian = require('obsidian');
121
- var import_css_class = require('../css-class.cjs');
122
- var import_plugin_context = require('../plugin/plugin-context.cjs');
120
+ var import_obsidian = require("obsidian");
121
+ var import_css_class = require("../css-class.cjs");
122
+ var import_plugin_context = require("../plugin/plugin-context.cjs");
123
123
  class CheckboxComponent extends import_obsidian.ValueComponent {
124
124
  /**
125
125
  * An input element of the checkbox.
@@ -117,13 +117,13 @@ __export(code_highlighter_component_exports, {
117
117
  CodeHighlighterComponent: () => CodeHighlighterComponent
118
118
  });
119
119
  module.exports = __toCommonJS(code_highlighter_component_exports);
120
- var import_array = require('@mnaoumov/typescript-lib/array');
121
- var import_async = require('@mnaoumov/typescript-lib/async');
122
- var import_html_element = require('@mnaoumov/typescript-lib/html-element');
123
- var import_implementations = require('@obsidian-typings/obsidian-public-latest/implementations');
124
- var import_obsidian = require('obsidian');
125
- var import_css_class = require('../css-class.cjs');
126
- var import_plugin_context = require('../plugin/plugin-context.cjs');
120
+ var import_array = require("@mnaoumov/typescript-lib/array");
121
+ var import_async = require("@mnaoumov/typescript-lib/async");
122
+ var import_html_element = require("@mnaoumov/typescript-lib/html-element");
123
+ var import_implementations = require("@obsidian-typings/obsidian-public-latest/implementations");
124
+ var import_obsidian = require("obsidian");
125
+ var import_css_class = require("../css-class.cjs");
126
+ var import_plugin_context = require("../plugin/plugin-context.cjs");
127
127
  class CodeHighlighterComponent extends import_obsidian.ValueComponent {
128
128
  /**
129
129
  * An input element of the component.
@@ -117,10 +117,10 @@ __export(date_component_exports, {
117
117
  DateComponent: () => DateComponent
118
118
  });
119
119
  module.exports = __toCommonJS(date_component_exports);
120
- var import_object_utils = require('@mnaoumov/typescript-lib/object-utils');
121
- var import_obsidian = require('obsidian');
122
- var import_css_class = require('../css-class.cjs');
123
- var import_typed_range_text_component = require('./typed-range-text-component.cjs');
120
+ var import_object_utils = require("@mnaoumov/typescript-lib/object-utils");
121
+ var import_obsidian = require("obsidian");
122
+ var import_css_class = require("../css-class.cjs");
123
+ var import_typed_range_text_component = require("./typed-range-text-component.cjs");
124
124
  const moment = (0, import_object_utils.extractDefaultExportInterop)(import_obsidian.moment);
125
125
  const DATE_FORMAT = "YYYY-MM-DD";
126
126
  class DateComponent extends import_typed_range_text_component.TypedRangeTextComponent {
@@ -117,10 +117,10 @@ __export(date_time_component_exports, {
117
117
  DateTimeComponent: () => DateTimeComponent
118
118
  });
119
119
  module.exports = __toCommonJS(date_time_component_exports);
120
- var import_object_utils = require('@mnaoumov/typescript-lib/object-utils');
121
- var import_obsidian = require('obsidian');
122
- var import_css_class = require('../css-class.cjs');
123
- var import_typed_range_text_component = require('./typed-range-text-component.cjs');
120
+ var import_object_utils = require("@mnaoumov/typescript-lib/object-utils");
121
+ var import_obsidian = require("obsidian");
122
+ var import_css_class = require("../css-class.cjs");
123
+ var import_typed_range_text_component = require("./typed-range-text-component.cjs");
124
124
  const moment = (0, import_object_utils.extractDefaultExportInterop)(import_obsidian.moment);
125
125
  const DATE_TIME_FORMAT = "YYYY-MM-DDTHH:mm";
126
126
  class DateTimeComponent extends import_typed_range_text_component.TypedRangeTextComponent {
@@ -90,8 +90,8 @@ __export(email_component_exports, {
90
90
  EmailComponent: () => EmailComponent
91
91
  });
92
92
  module.exports = __toCommonJS(email_component_exports);
93
- var import_css_class = require('../css-class.cjs');
94
- var import_typed_text_component = require('./typed-text-component.cjs');
93
+ var import_css_class = require("../css-class.cjs");
94
+ var import_typed_text_component = require("./typed-text-component.cjs");
95
95
  class EmailComponent extends import_typed_text_component.TypedTextComponent {
96
96
  /**
97
97
  * Creates a new email component.
@@ -90,8 +90,8 @@ __export(file_component_exports, {
90
90
  FileComponent: () => FileComponent
91
91
  });
92
92
  module.exports = __toCommonJS(file_component_exports);
93
- var import_css_class = require('../css-class.cjs');
94
- var import_typed_text_component = require('./typed-text-component.cjs');
93
+ var import_css_class = require("../css-class.cjs");
94
+ var import_typed_text_component = require("./typed-text-component.cjs");
95
95
  class FileComponent extends import_typed_text_component.TypedTextComponent {
96
96
  /**
97
97
  * Creates a new file component.
@@ -118,9 +118,9 @@ __export(folder_list_component_exports, {
118
118
  FolderListComponent: () => FolderListComponent
119
119
  });
120
120
  module.exports = __toCommonJS(folder_list_component_exports);
121
- var import_obsidian = require('obsidian');
122
- var import_css_class = require('../css-class.cjs');
123
- var import_list_component = require('./list-component.cjs');
121
+ var import_obsidian = require("obsidian");
122
+ var import_css_class = require("../css-class.cjs");
123
+ var import_list_component = require("./list-component.cjs");
124
124
  class FolderInputSuggest extends import_obsidian.AbstractInputSuggest {
125
125
  /**
126
126
  * The input the suggest completes.
@@ -117,11 +117,11 @@ __export(hotkey_component_exports, {
117
117
  HotkeyComponent: () => HotkeyComponent
118
118
  });
119
119
  module.exports = __toCommonJS(hotkey_component_exports);
120
- var import_obsidian = require('obsidian');
121
- var import_css_class = require('../css-class.cjs');
122
- var import_hotkey = require('../hotkey.cjs');
123
- var import_i18n = require('../i18n/i18n.cjs');
124
- var import_plugin_context = require('../plugin/plugin-context.cjs');
120
+ var import_obsidian = require("obsidian");
121
+ var import_css_class = require("../css-class.cjs");
122
+ var import_hotkey = require("../hotkey.cjs");
123
+ var import_i18n = require("../i18n/i18n.cjs");
124
+ var import_plugin_context = require("../plugin/plugin-context.cjs");
125
125
  class HotkeyComponent extends import_obsidian.ValueComponent {
126
126
  /**
127
127
  * The button that shows the hotkey and starts the recording.
@@ -129,36 +129,36 @@ __export(setting_components_exports, {
129
129
  "week-component": () => week_component
130
130
  });
131
131
  module.exports = __toCommonJS(setting_components_exports);
132
- var checkbox_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./checkbox-component.cjs')), 1);
133
- var code_highlighter_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./code-highlighter-component.cjs')), 1);
134
- var date_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./date-component.cjs')), 1);
135
- var date_time_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./date-time-component.cjs')), 1);
136
- var email_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./email-component.cjs')), 1);
137
- var file_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./file-component.cjs')), 1);
138
- var folder_list_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./folder-list-component.cjs')), 1);
139
- var hotkey_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./hotkey-component.cjs')), 1);
140
- var list_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./list-component.cjs')), 1);
141
- var month_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./month-component.cjs')), 1);
142
- var multiple_dropdown_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./multiple-dropdown-component.cjs')), 1);
143
- var multiple_email_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./multiple-email-component.cjs')), 1);
144
- var multiple_file_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./multiple-file-component.cjs')), 1);
145
- var multiple_text_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./multiple-text-component.cjs')), 1);
146
- var number_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./number-component.cjs')), 1);
147
- var password_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./password-component.cjs')), 1);
148
- var setting_component_wrapper = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./setting-component-wrapper.cjs')), 1);
149
- var tag_list_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./tag-list-component.cjs')), 1);
150
- var telephone_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./telephone-component.cjs')), 1);
151
- var text_based_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./text-based-component.cjs')), 1);
152
- var time_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./time-component.cjs')), 1);
153
- var tri_state_checkbox_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./tri-state-checkbox-component.cjs')), 1);
154
- var typed_dropdown_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./typed-dropdown-component.cjs')), 1);
155
- var typed_multiple_dropdown_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./typed-multiple-dropdown-component.cjs')), 1);
156
- var typed_range_text_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./typed-range-text-component.cjs')), 1);
157
- var typed_text_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./typed-text-component.cjs')), 1);
158
- var url_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./url-component.cjs')), 1);
159
- var validator_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./validator-component.cjs')), 1);
160
- var value_component_with_change_tracking = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./value-component-with-change-tracking.cjs')), 1);
161
- var week_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require('./week-component.cjs')), 1);
132
+ var checkbox_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./checkbox-component.cjs")), 1);
133
+ var code_highlighter_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./code-highlighter-component.cjs")), 1);
134
+ var date_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./date-component.cjs")), 1);
135
+ var date_time_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./date-time-component.cjs")), 1);
136
+ var email_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./email-component.cjs")), 1);
137
+ var file_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./file-component.cjs")), 1);
138
+ var folder_list_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./folder-list-component.cjs")), 1);
139
+ var hotkey_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./hotkey-component.cjs")), 1);
140
+ var list_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./list-component.cjs")), 1);
141
+ var month_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./month-component.cjs")), 1);
142
+ var multiple_dropdown_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./multiple-dropdown-component.cjs")), 1);
143
+ var multiple_email_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./multiple-email-component.cjs")), 1);
144
+ var multiple_file_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./multiple-file-component.cjs")), 1);
145
+ var multiple_text_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./multiple-text-component.cjs")), 1);
146
+ var number_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./number-component.cjs")), 1);
147
+ var password_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./password-component.cjs")), 1);
148
+ var setting_component_wrapper = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./setting-component-wrapper.cjs")), 1);
149
+ var tag_list_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./tag-list-component.cjs")), 1);
150
+ var telephone_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./telephone-component.cjs")), 1);
151
+ var text_based_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./text-based-component.cjs")), 1);
152
+ var time_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./time-component.cjs")), 1);
153
+ var tri_state_checkbox_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./tri-state-checkbox-component.cjs")), 1);
154
+ var typed_dropdown_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./typed-dropdown-component.cjs")), 1);
155
+ var typed_multiple_dropdown_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./typed-multiple-dropdown-component.cjs")), 1);
156
+ var typed_range_text_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./typed-range-text-component.cjs")), 1);
157
+ var typed_text_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./typed-text-component.cjs")), 1);
158
+ var url_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./url-component.cjs")), 1);
159
+ var validator_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./validator-component.cjs")), 1);
160
+ var value_component_with_change_tracking = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./value-component-with-change-tracking.cjs")), 1);
161
+ var week_component = __toESM(((module) => module && module.__esModule && 'default' in module ? module.default : module)(require("./week-component.cjs")), 1);
162
162
  // Annotate the CommonJS export names for ESM import in node:
163
163
  0 && (module.exports = {
164
164
  "checkbox-component": null,
@@ -117,11 +117,11 @@ __export(list_component_exports, {
117
117
  ListComponent: () => ListComponent
118
118
  });
119
119
  module.exports = __toCommonJS(list_component_exports);
120
- var import_type_guards = require('@mnaoumov/typescript-lib/type-guards');
121
- var import_obsidian = require('obsidian');
122
- var import_css_class = require('../css-class.cjs');
123
- var import_i18n = require('../i18n/i18n.cjs');
124
- var import_plugin_context = require('../plugin/plugin-context.cjs');
120
+ var import_type_guards = require("@mnaoumov/typescript-lib/type-guards");
121
+ var import_obsidian = require("obsidian");
122
+ var import_css_class = require("../css-class.cjs");
123
+ var import_i18n = require("../i18n/i18n.cjs");
124
+ var import_plugin_context = require("../plugin/plugin-context.cjs");
125
125
  class ListComponent extends import_obsidian.ValueComponent {
126
126
  /**
127
127
  * The element holding one row per item.
@@ -117,10 +117,10 @@ __export(month_component_exports, {
117
117
  MonthComponent: () => MonthComponent
118
118
  });
119
119
  module.exports = __toCommonJS(month_component_exports);
120
- var import_object_utils = require('@mnaoumov/typescript-lib/object-utils');
121
- var import_obsidian = require('obsidian');
122
- var import_css_class = require('../css-class.cjs');
123
- var import_typed_range_text_component = require('./typed-range-text-component.cjs');
120
+ var import_object_utils = require("@mnaoumov/typescript-lib/object-utils");
121
+ var import_obsidian = require("obsidian");
122
+ var import_css_class = require("../css-class.cjs");
123
+ var import_typed_range_text_component = require("./typed-range-text-component.cjs");
124
124
  const moment = (0, import_object_utils.extractDefaultExportInterop)(import_obsidian.moment);
125
125
  const DATE_FORMAT = "YYYY-MM";
126
126
  class MonthComponent extends import_typed_range_text_component.TypedRangeTextComponent {
@@ -117,9 +117,9 @@ __export(multiple_dropdown_component_exports, {
117
117
  MultipleDropdownComponent: () => MultipleDropdownComponent
118
118
  });
119
119
  module.exports = __toCommonJS(multiple_dropdown_component_exports);
120
- var import_obsidian = require('obsidian');
121
- var import_css_class = require('../css-class.cjs');
122
- var import_plugin_context = require('../plugin/plugin-context.cjs');
120
+ var import_obsidian = require("obsidian");
121
+ var import_css_class = require("../css-class.cjs");
122
+ var import_plugin_context = require("../plugin/plugin-context.cjs");
123
123
  class MultipleDropdownComponent extends import_obsidian.ValueComponent {
124
124
  /**
125
125
  * A select element of the component.
@@ -90,8 +90,8 @@ __export(multiple_email_component_exports, {
90
90
  MultipleEmailComponent: () => MultipleEmailComponent
91
91
  });
92
92
  module.exports = __toCommonJS(multiple_email_component_exports);
93
- var import_css_class = require('../css-class.cjs');
94
- var import_typed_text_component = require('./typed-text-component.cjs');
93
+ var import_css_class = require("../css-class.cjs");
94
+ var import_typed_text_component = require("./typed-text-component.cjs");
95
95
  class MultipleEmailComponent extends import_typed_text_component.TypedTextComponent {
96
96
  /**
97
97
  * Creates a new multiple emails component.
@@ -117,9 +117,9 @@ __export(multiple_file_component_exports, {
117
117
  MultipleFileComponent: () => MultipleFileComponent
118
118
  });
119
119
  module.exports = __toCommonJS(multiple_file_component_exports);
120
- var import_type_guards = require('@mnaoumov/typescript-lib/type-guards');
121
- var import_css_class = require('../css-class.cjs');
122
- var import_typed_text_component = require('./typed-text-component.cjs');
120
+ var import_type_guards = require("@mnaoumov/typescript-lib/type-guards");
121
+ var import_css_class = require("../css-class.cjs");
122
+ var import_typed_text_component = require("./typed-text-component.cjs");
123
123
  class MultipleFileComponent extends import_typed_text_component.TypedTextComponent {
124
124
  /**
125
125
  * Creates a new multiple file component.
@@ -117,9 +117,9 @@ __export(multiple_text_component_exports, {
117
117
  MultipleTextComponent: () => MultipleTextComponent
118
118
  });
119
119
  module.exports = __toCommonJS(multiple_text_component_exports);
120
- var import_obsidian = require('obsidian');
121
- var import_css_class = require('../css-class.cjs');
122
- var import_plugin_context = require('../plugin/plugin-context.cjs');
120
+ var import_obsidian = require("obsidian");
121
+ var import_css_class = require("../css-class.cjs");
122
+ var import_plugin_context = require("../plugin/plugin-context.cjs");
123
123
  class MultipleTextComponent extends import_obsidian.ValueComponent {
124
124
  /**
125
125
  * An input element of the component.
@@ -159,12 +159,15 @@ class MultipleTextComponent extends import_obsidian.ValueComponent {
159
159
  this.textAreaComponent.setValue("");
160
160
  }
161
161
  /**
162
- * Gets the value of the component.
162
+ * Gets the value of the component: one entry per line of the text area.
163
+ *
164
+ * Blank and whitespace-only lines are skipped, so an empty text area reads as `[]` rather than `['']`. Every other
165
+ * line is kept exactly as typed.
163
166
  *
164
167
  * @returns The value of the component.
165
168
  */
166
169
  getValue() {
167
- return this.textAreaComponent.getValue().split("\n");
170
+ return this.textAreaComponent.getValue().split("\n").filter((line) => line.trim() !== "");
168
171
  }
169
172
  /**
170
173
  * Checks if the component is empty.
@@ -251,4 +254,4 @@ class MultipleTextComponent extends import_obsidian.ValueComponent {
251
254
  0 && (module.exports = {
252
255
  MultipleTextComponent
253
256
  });
254
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXR0aW5nLWNvbXBvbmVudHMvbXVsdGlwbGUtdGV4dC1jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENvbnRhaW5zIGEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIG11bHRpcGxlIHRleHQgdmFsdWVzLlxuICovXG5cbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yRWxlbWVudCB9IGZyb20gJ0BtbmFvdW1vdi90eXBlc2NyaXB0LWxpYi9odG1sLWVsZW1lbnQnO1xuXG5pbXBvcnQge1xuICBUZXh0QXJlYUNvbXBvbmVudCxcbiAgVmFsdWVDb21wb25lbnRcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBpbml0UGx1Z2luQ29udGV4dGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IGluaXRQbHVnaW5Db250ZXh0IH0gZnJvbSAnLi4vcGx1Z2luL3BsdWdpbi1jb250ZXh0LnRzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYFNldHRpbmdFeGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IFNldHRpbmdFeCB9IGZyb20gJy4uL3NldHRpbmctZXgudHMnO1xuaW1wb3J0IHR5cGUgeyBUZXh0QmFzZWRDb21wb25lbnQgfSBmcm9tICcuL3RleHQtYmFzZWQtY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi92YWxpZGF0b3ItY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcgfSBmcm9tICcuL3ZhbHVlLWNvbXBvbmVudC13aXRoLWNoYW5nZS10cmFja2luZy50cyc7XG5cbmltcG9ydCB7IENzc0NsYXNzIH0gZnJvbSAnLi4vY3NzLWNsYXNzLnRzJztcbmltcG9ydCB7IGFkZFBsdWdpbkNzc0NsYXNzZXMgfSBmcm9tICcuLi9wbHVnaW4vcGx1Z2luLWNvbnRleHQudHMnO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIG11bHRpcGxlIHRleHQgdmFsdWVzLlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkTXVsdGlwbGVUZXh0fS5cbiAqXG4gKiBJbiBvcmRlciB0byBhZGQgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbXBvbmVudCwgdXNlIHtAbGluayBpbml0UGx1Z2luQ29udGV4dH0gaW4geW91ciBwbHVnaW4ncyBgb25sb2FkKClgIGZ1bmN0aW9uLlxuICpcbiAqIEFsdGVybmF0aXZlbHksIHlvdSBjYW4gY29weSBzdHlsZXMgZnJvbSB7QGxpbmsgaHR0cHM6Ly91bnBrZy5jb20vQG1uYW91bW92L29ic2lkaWFuLWxpYi9kaXN0L3N0eWxlcy5jc3N9LlxuICovXG5leHBvcnQgY2xhc3MgTXVsdGlwbGVUZXh0Q29tcG9uZW50IGV4dGVuZHMgVmFsdWVDb21wb25lbnQ8cmVhZG9ubHkgc3RyaW5nW10+IGltcGxlbWVudHMgVGV4dEJhc2VkQ29tcG9uZW50PHJlYWRvbmx5IHN0cmluZ1tdPiwgVmFsaWRhdG9yQ29tcG9uZW50LCBWYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZzxyZWFkb25seSBzdHJpbmdbXT4ge1xuICAvKipcbiAgICogQW4gaW5wdXQgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgaW5wdXQgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldCBpbnB1dEVsKCk6IEhUTUxUZXh0QXJlYUVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLnRleHRBcmVhQ29tcG9uZW50LmlucHV0RWw7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsaWRhdG9yIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbGlkYXRvciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHZhbGlkYXRvckVsKCk6IFZhbGlkYXRvckVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmlucHV0RWw7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGlubmVyIHRleHQgYXJlYSBjb21wb25lbnQuXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdGV4dEFyZWFDb21wb25lbnQ6IFRleHRBcmVhQ29tcG9uZW50O1xuXG4gIHByaXZhdGUgc2ltdWxhdGVDaGFuZ2VDYWxsYmFjaz86ICgpID0+IHZvaWQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgbXVsdGlwbGUgdGV4dCBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjb250YWluZXJFbCAtIFRoZSBjb250YWluZXIgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvbnRhaW5lckVsOiBIVE1MRWxlbWVudCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudCA9IG5ldyBUZXh0QXJlYUNvbXBvbmVudChjb250YWluZXJFbCk7XG4gICAgYWRkUGx1Z2luQ3NzQ2xhc3Nlcyhjb250YWluZXJFbCwgQ3NzQ2xhc3MuTXVsdGlwbGVUZXh0Q29tcG9uZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbXB0aWVzIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZW1wdHkoKTogdm9pZCB7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5zZXRWYWx1ZSgnJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0VmFsdWUoKTogcmVhZG9ubHkgc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLnRleHRBcmVhQ29tcG9uZW50LmdldFZhbHVlKCkuc3BsaXQoJ1xcbicpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tcG9uZW50IGlzIGVtcHR5LlxuICAgKlxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGNvbXBvbmVudCBpcyBlbXB0eSwgYGZhbHNlYCBvdGhlcndpc2UuXG4gICAqL1xuICBwdWJsaWMgaXNFbXB0eSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5nZXRWYWx1ZSgpID09PSAnJztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgY2hhbmdlIGxpc3RlbmVyIHRvIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjYWxsYmFjayAtIFRoZSBjYWxsYmFjayB0byBjYWxsIHdoZW4gdGhlIHZhbHVlIGNoYW5nZXMuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb25DaGFuZ2UoY2FsbGJhY2s6IChuZXdWYWx1ZTogcmVhZG9ubHkgc3RyaW5nW10pID0+IHZvaWQpOiB0aGlzIHtcbiAgICBjb25zdCBjaGFuZ2VIYW5kbGVyID0gKCk6IHZvaWQgPT4ge1xuICAgICAgY2FsbGJhY2sodGhpcy5nZXRWYWx1ZSgpKTtcbiAgICB9O1xuICAgIHRoaXMuc2ltdWxhdGVDaGFuZ2VDYWxsYmFjayA9IGNoYW5nZUhhbmRsZXI7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5vbkNoYW5nZShjaGFuZ2VIYW5kbGVyKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gaXNEaXNhYmxlZCAtIFRoZSBkaXNhYmxlZCBzdGF0ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0RGlzYWJsZWQoaXNEaXNhYmxlZDogYm9vbGVhbik6IHRoaXMge1xuICAgIHN1cGVyLnNldERpc2FibGVkKGlzRGlzYWJsZWQpO1xuICAgIHRoaXMudGV4dEFyZWFDb21wb25lbnQuc2V0RGlzYWJsZWQoaXNEaXNhYmxlZCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcGxhY2Vob2xkZXIgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHBsYWNlaG9sZGVyIC0gVGhlIHBsYWNlaG9sZGVyIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRQbGFjZWhvbGRlcihwbGFjZWhvbGRlcjogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5zZXRQbGFjZWhvbGRlcihwbGFjZWhvbGRlcik7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcGxhY2Vob2xkZXIgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHBsYWNlaG9sZGVyVmFsdWUgLSBUaGUgcGxhY2Vob2xkZXIgdmFsdWUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldFBsYWNlaG9sZGVyVmFsdWUocGxhY2Vob2xkZXJWYWx1ZTogcmVhZG9ubHkgc3RyaW5nW10pOiB0aGlzIHtcbiAgICB0aGlzLnNldFBsYWNlaG9sZGVyKHRoaXMudmFsdWVUb1N0cmluZyhwbGFjZWhvbGRlclZhbHVlKSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBzZXRWYWx1ZSh2YWx1ZTogcmVhZG9ubHkgc3RyaW5nW10pOiB0aGlzIHtcbiAgICB0aGlzLnRleHRBcmVhQ29tcG9uZW50LnNldFZhbHVlKHRoaXMudmFsdWVUb1N0cmluZyh2YWx1ZSkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNpbXVsYXRlIGEgY2hhbmdlIGV2ZW50LlxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCBVc2Ugb25seSBmcm9tIHRlc3RzIHRvIHNpbXVsYXRlIGEgY2hhbmdlIGV2ZW50LlxuICAgKi9cbiAgcHVibGljIHNpbXVsYXRlQ2hhbmdlX18oKTogdm9pZCB7XG4gICAgdGhpcy5zaW11bGF0ZUNoYW5nZUNhbGxiYWNrPy4oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyB0aGUgdmFsdWUgdG8gdGhlIHN0cmluZyBzaG93biBpbiB0aGUgdGV4dCBhcmVhLiBTdWJjbGFzc2VzIGNhbiBvdmVycmlkZSB0byBjdXN0b21pemUgdGhlIHNlcmlhbGl6YXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBjb252ZXJ0LlxuICAgKiBAcmV0dXJucyBUaGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB2YWx1ZS5cbiAgICovXG4gIHByb3RlY3RlZCB2YWx1ZVRvU3RyaW5nKHZhbHVlOiByZWFkb25seSBzdHJpbmdbXSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlLmpvaW4oJ1xcbicpO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRQSxzQkFHTztBQVVQLHVCQUF5QjtBQUN6Qiw0QkFBb0M7QUFXN0IsTUFBTSw4QkFBOEIsK0JBQTRKO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTXJNLElBQVcsVUFBK0I7QUFDeEMsV0FBTyxLQUFLLGtCQUFrQjtBQUFBLEVBQ2hDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0EsSUFBVyxjQUFnQztBQUN6QyxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLbUI7QUFBQSxFQUVYO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0QsWUFBWSxhQUEwQjtBQUMzQyxVQUFNO0FBQ04sU0FBSyxvQkFBb0IsSUFBSSxrQ0FBa0IsV0FBVztBQUMxRCxtREFBb0IsYUFBYSwwQkFBUyxxQkFBcUI7QUFBQSxFQUNqRTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS08sUUFBYztBQUNuQixTQUFLLGtCQUFrQixTQUFTLEVBQUU7QUFBQSxFQUNwQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9nQixXQUE4QjtBQUM1QyxXQUFPLEtBQUssa0JBQWtCLFNBQVMsRUFBRSxNQUFNLElBQUk7QUFBQSxFQUNyRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLFVBQW1CO0FBQ3hCLFdBQU8sS0FBSyxrQkFBa0IsU0FBUyxNQUFNO0FBQUEsRUFDL0M7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFNBQVMsVUFBdUQ7QUFDckUsVUFBTSxnQkFBZ0IsTUFBWTtBQUNoQyxlQUFTLEtBQUssU0FBUyxDQUFDO0FBQUEsSUFDMUI7QUFDQSxTQUFLLHlCQUF5QjtBQUM5QixTQUFLLGtCQUFrQixTQUFTLGFBQWE7QUFDN0MsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixZQUFZLFlBQTJCO0FBQ3JELFVBQU0sWUFBWSxVQUFVO0FBQzVCLFNBQUssa0JBQWtCLFlBQVksVUFBVTtBQUM3QyxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sZUFBZSxhQUEyQjtBQUMvQyxTQUFLLGtCQUFrQixlQUFlLFdBQVc7QUFDakQsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLG9CQUFvQixrQkFBMkM7QUFDcEUsU0FBSyxlQUFlLEtBQUssY0FBYyxnQkFBZ0IsQ0FBQztBQUN4RCxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLFNBQVMsT0FBZ0M7QUFDdkQsU0FBSyxrQkFBa0IsU0FBUyxLQUFLLGNBQWMsS0FBSyxDQUFDO0FBQ3pELFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT08sbUJBQXlCO0FBQzlCLFNBQUsseUJBQXlCO0FBQUEsRUFDaEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFVLGNBQWMsT0FBa0M7QUFDeEQsV0FBTyxNQUFNLEtBQUssSUFBSTtBQUFBLEVBQ3hCO0FBQ0Y7IiwibmFtZXMiOltdfQ==
257
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXR0aW5nLWNvbXBvbmVudHMvbXVsdGlwbGUtdGV4dC1jb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENvbnRhaW5zIGEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIG11bHRpcGxlIHRleHQgdmFsdWVzLlxuICovXG5cbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yRWxlbWVudCB9IGZyb20gJ0BtbmFvdW1vdi90eXBlc2NyaXB0LWxpYi9odG1sLWVsZW1lbnQnO1xuXG5pbXBvcnQge1xuICBUZXh0QXJlYUNvbXBvbmVudCxcbiAgVmFsdWVDb21wb25lbnRcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBpbml0UGx1Z2luQ29udGV4dGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IGluaXRQbHVnaW5Db250ZXh0IH0gZnJvbSAnLi4vcGx1Z2luL3BsdWdpbi1jb250ZXh0LnRzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYFNldHRpbmdFeGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IFNldHRpbmdFeCB9IGZyb20gJy4uL3NldHRpbmctZXgudHMnO1xuaW1wb3J0IHR5cGUgeyBUZXh0QmFzZWRDb21wb25lbnQgfSBmcm9tICcuL3RleHQtYmFzZWQtY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi92YWxpZGF0b3ItY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcgfSBmcm9tICcuL3ZhbHVlLWNvbXBvbmVudC13aXRoLWNoYW5nZS10cmFja2luZy50cyc7XG5cbmltcG9ydCB7IENzc0NsYXNzIH0gZnJvbSAnLi4vY3NzLWNsYXNzLnRzJztcbmltcG9ydCB7IGFkZFBsdWdpbkNzc0NsYXNzZXMgfSBmcm9tICcuLi9wbHVnaW4vcGx1Z2luLWNvbnRleHQudHMnO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIG11bHRpcGxlIHRleHQgdmFsdWVzLlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkTXVsdGlwbGVUZXh0fS5cbiAqXG4gKiBJbiBvcmRlciB0byBhZGQgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbXBvbmVudCwgdXNlIHtAbGluayBpbml0UGx1Z2luQ29udGV4dH0gaW4geW91ciBwbHVnaW4ncyBgb25sb2FkKClgIGZ1bmN0aW9uLlxuICpcbiAqIEFsdGVybmF0aXZlbHksIHlvdSBjYW4gY29weSBzdHlsZXMgZnJvbSB7QGxpbmsgaHR0cHM6Ly91bnBrZy5jb20vQG1uYW91bW92L29ic2lkaWFuLWxpYi9kaXN0L3N0eWxlcy5jc3N9LlxuICovXG5leHBvcnQgY2xhc3MgTXVsdGlwbGVUZXh0Q29tcG9uZW50IGV4dGVuZHMgVmFsdWVDb21wb25lbnQ8cmVhZG9ubHkgc3RyaW5nW10+IGltcGxlbWVudHMgVGV4dEJhc2VkQ29tcG9uZW50PHJlYWRvbmx5IHN0cmluZ1tdPiwgVmFsaWRhdG9yQ29tcG9uZW50LCBWYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZzxyZWFkb25seSBzdHJpbmdbXT4ge1xuICAvKipcbiAgICogQW4gaW5wdXQgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgaW5wdXQgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldCBpbnB1dEVsKCk6IEhUTUxUZXh0QXJlYUVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLnRleHRBcmVhQ29tcG9uZW50LmlucHV0RWw7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsaWRhdG9yIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbGlkYXRvciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHZhbGlkYXRvckVsKCk6IFZhbGlkYXRvckVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmlucHV0RWw7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGlubmVyIHRleHQgYXJlYSBjb21wb25lbnQuXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdGV4dEFyZWFDb21wb25lbnQ6IFRleHRBcmVhQ29tcG9uZW50O1xuXG4gIHByaXZhdGUgc2ltdWxhdGVDaGFuZ2VDYWxsYmFjaz86ICgpID0+IHZvaWQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgbXVsdGlwbGUgdGV4dCBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjb250YWluZXJFbCAtIFRoZSBjb250YWluZXIgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvbnRhaW5lckVsOiBIVE1MRWxlbWVudCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudCA9IG5ldyBUZXh0QXJlYUNvbXBvbmVudChjb250YWluZXJFbCk7XG4gICAgYWRkUGx1Z2luQ3NzQ2xhc3Nlcyhjb250YWluZXJFbCwgQ3NzQ2xhc3MuTXVsdGlwbGVUZXh0Q29tcG9uZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbXB0aWVzIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZW1wdHkoKTogdm9pZCB7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5zZXRWYWx1ZSgnJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudDogb25lIGVudHJ5IHBlciBsaW5lIG9mIHRoZSB0ZXh0IGFyZWEuXG4gICAqXG4gICAqIEJsYW5rIGFuZCB3aGl0ZXNwYWNlLW9ubHkgbGluZXMgYXJlIHNraXBwZWQsIHNvIGFuIGVtcHR5IHRleHQgYXJlYSByZWFkcyBhcyBgW11gIHJhdGhlciB0aGFuIGBbJyddYC4gRXZlcnkgb3RoZXJcbiAgICogbGluZSBpcyBrZXB0IGV4YWN0bHkgYXMgdHlwZWQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGdldFZhbHVlKCk6IHJlYWRvbmx5IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5nZXRWYWx1ZSgpLnNwbGl0KCdcXG4nKS5maWx0ZXIoKGxpbmUpID0+IGxpbmUudHJpbSgpICE9PSAnJyk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21wb25lbnQgaXMgZW1wdHkuXG4gICAqXG4gICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgY29tcG9uZW50IGlzIGVtcHR5LCBgZmFsc2VgIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBpc0VtcHR5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRleHRBcmVhQ29tcG9uZW50LmdldFZhbHVlKCkgPT09ICcnO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBjaGFuZ2UgbGlzdGVuZXIgdG8gdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGNhbGxiYWNrIC0gVGhlIGNhbGxiYWNrIHRvIGNhbGwgd2hlbiB0aGUgdmFsdWUgY2hhbmdlcy5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvbkNoYW5nZShjYWxsYmFjazogKG5ld1ZhbHVlOiByZWFkb25seSBzdHJpbmdbXSkgPT4gdm9pZCk6IHRoaXMge1xuICAgIGNvbnN0IGNoYW5nZUhhbmRsZXIgPSAoKTogdm9pZCA9PiB7XG4gICAgICBjYWxsYmFjayh0aGlzLmdldFZhbHVlKCkpO1xuICAgIH07XG4gICAgdGhpcy5zaW11bGF0ZUNoYW5nZUNhbGxiYWNrID0gY2hhbmdlSGFuZGxlcjtcbiAgICB0aGlzLnRleHRBcmVhQ29tcG9uZW50Lm9uQ2hhbmdlKGNoYW5nZUhhbmRsZXIpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBpc0Rpc2FibGVkIC0gVGhlIGRpc2FibGVkIHN0YXRlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBzZXREaXNhYmxlZChpc0Rpc2FibGVkOiBib29sZWFuKTogdGhpcyB7XG4gICAgc3VwZXIuc2V0RGlzYWJsZWQoaXNEaXNhYmxlZCk7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5zZXREaXNhYmxlZChpc0Rpc2FibGVkKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBwbGFjZWhvbGRlciBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gcGxhY2Vob2xkZXIgLSBUaGUgcGxhY2Vob2xkZXIgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldFBsYWNlaG9sZGVyKHBsYWNlaG9sZGVyOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnRleHRBcmVhQ29tcG9uZW50LnNldFBsYWNlaG9sZGVyKHBsYWNlaG9sZGVyKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBwbGFjZWhvbGRlciB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gcGxhY2Vob2xkZXJWYWx1ZSAtIFRoZSBwbGFjZWhvbGRlciB2YWx1ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgc2V0UGxhY2Vob2xkZXJWYWx1ZShwbGFjZWhvbGRlclZhbHVlOiByZWFkb25seSBzdHJpbmdbXSk6IHRoaXMge1xuICAgIHRoaXMuc2V0UGxhY2Vob2xkZXIodGhpcy52YWx1ZVRvU3RyaW5nKHBsYWNlaG9sZGVyVmFsdWUpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHNldFZhbHVlKHZhbHVlOiByZWFkb25seSBzdHJpbmdbXSk6IHRoaXMge1xuICAgIHRoaXMudGV4dEFyZWFDb21wb25lbnQuc2V0VmFsdWUodGhpcy52YWx1ZVRvU3RyaW5nKHZhbHVlKSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2ltdWxhdGUgYSBjaGFuZ2UgZXZlbnQuXG4gICAqXG4gICAqIEBkZXByZWNhdGVkIFVzZSBvbmx5IGZyb20gdGVzdHMgdG8gc2ltdWxhdGUgYSBjaGFuZ2UgZXZlbnQuXG4gICAqL1xuICBwdWJsaWMgc2ltdWxhdGVDaGFuZ2VfXygpOiB2b2lkIHtcbiAgICB0aGlzLnNpbXVsYXRlQ2hhbmdlQ2FsbGJhY2s/LigpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIHRoZSB2YWx1ZSB0byB0aGUgc3RyaW5nIHNob3duIGluIHRoZSB0ZXh0IGFyZWEuIFN1YmNsYXNzZXMgY2FuIG92ZXJyaWRlIHRvIGN1c3RvbWl6ZSB0aGUgc2VyaWFsaXphdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGNvbnZlcnQuXG4gICAqIEByZXR1cm5zIFRoZSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHZhbHVlLlxuICAgKi9cbiAgcHJvdGVjdGVkIHZhbHVlVG9TdHJpbmcodmFsdWU6IHJlYWRvbmx5IHN0cmluZ1tdKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdmFsdWUuam9pbignXFxuJyk7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFBLHNCQUdPO0FBVVAsdUJBQXlCO0FBQ3pCLDRCQUFvQztBQVc3QixNQUFNLDhCQUE4QiwrQkFBNEo7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNck0sSUFBVyxVQUErQjtBQUN4QyxXQUFPLEtBQUssa0JBQWtCO0FBQUEsRUFDaEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxJQUFXLGNBQWdDO0FBQ3pDLFdBQU8sS0FBSztBQUFBLEVBQ2Q7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUttQjtBQUFBLEVBRVg7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPRCxZQUFZLGFBQTBCO0FBQzNDLFVBQU07QUFDTixTQUFLLG9CQUFvQixJQUFJLGtDQUFrQixXQUFXO0FBQzFELG1EQUFvQixhQUFhLDBCQUFTLHFCQUFxQjtBQUFBLEVBQ2pFO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLTyxRQUFjO0FBQ25CLFNBQUssa0JBQWtCLFNBQVMsRUFBRTtBQUFBLEVBQ3BDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBVWdCLFdBQThCO0FBQzVDLFdBQU8sS0FBSyxrQkFBa0IsU0FBUyxFQUFFLE1BQU0sSUFBSSxFQUFFLE9BQU8sQ0FBQyxTQUFTLEtBQUssS0FBSyxNQUFNLEVBQUU7QUFBQSxFQUMxRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLFVBQW1CO0FBQ3hCLFdBQU8sS0FBSyxrQkFBa0IsU0FBUyxNQUFNO0FBQUEsRUFDL0M7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFNBQVMsVUFBdUQ7QUFDckUsVUFBTSxnQkFBZ0IsTUFBWTtBQUNoQyxlQUFTLEtBQUssU0FBUyxDQUFDO0FBQUEsSUFDMUI7QUFDQSxTQUFLLHlCQUF5QjtBQUM5QixTQUFLLGtCQUFrQixTQUFTLGFBQWE7QUFDN0MsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixZQUFZLFlBQTJCO0FBQ3JELFVBQU0sWUFBWSxVQUFVO0FBQzVCLFNBQUssa0JBQWtCLFlBQVksVUFBVTtBQUM3QyxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sZUFBZSxhQUEyQjtBQUMvQyxTQUFLLGtCQUFrQixlQUFlLFdBQVc7QUFDakQsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLG9CQUFvQixrQkFBMkM7QUFDcEUsU0FBSyxlQUFlLEtBQUssY0FBYyxnQkFBZ0IsQ0FBQztBQUN4RCxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLFNBQVMsT0FBZ0M7QUFDdkQsU0FBSyxrQkFBa0IsU0FBUyxLQUFLLGNBQWMsS0FBSyxDQUFDO0FBQ3pELFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT08sbUJBQXlCO0FBQzlCLFNBQUsseUJBQXlCO0FBQUEsRUFDaEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFVLGNBQWMsT0FBa0M7QUFDeEQsV0FBTyxNQUFNLEtBQUssSUFBSTtBQUFBLEVBQ3hCO0FBQ0Y7IiwibmFtZXMiOltdfQ==
@@ -48,7 +48,10 @@ export declare class MultipleTextComponent extends ValueComponent<readonly strin
48
48
  */
49
49
  empty(): void;
50
50
  /**
51
- * Gets the value of the component.
51
+ * Gets the value of the component: one entry per line of the text area.
52
+ *
53
+ * Blank and whitespace-only lines are skipped, so an empty text area reads as `[]` rather than `['']`. Every other
54
+ * line is kept exactly as typed.
52
55
  *
53
56
  * @returns The value of the component.
54
57
  */
@@ -90,8 +90,8 @@ __export(number_component_exports, {
90
90
  NumberComponent: () => NumberComponent
91
91
  });
92
92
  module.exports = __toCommonJS(number_component_exports);
93
- var import_css_class = require('../css-class.cjs');
94
- var import_typed_range_text_component = require('./typed-range-text-component.cjs');
93
+ var import_css_class = require("../css-class.cjs");
94
+ var import_typed_range_text_component = require("./typed-range-text-component.cjs");
95
95
  class NumberComponent extends import_typed_range_text_component.TypedRangeTextComponent {
96
96
  /**
97
97
  * Creates a new number component.
@@ -90,8 +90,8 @@ __export(password_component_exports, {
90
90
  PasswordComponent: () => PasswordComponent
91
91
  });
92
92
  module.exports = __toCommonJS(password_component_exports);
93
- var import_css_class = require('../css-class.cjs');
94
- var import_typed_text_component = require('./typed-text-component.cjs');
93
+ var import_css_class = require("../css-class.cjs");
94
+ var import_typed_text_component = require("./typed-text-component.cjs");
95
95
  class PasswordComponent extends import_typed_text_component.TypedTextComponent {
96
96
  /**
97
97
  * Creates a new password component.
@@ -117,9 +117,9 @@ __export(setting_component_wrapper_exports, {
117
117
  ensureWrapped: () => ensureWrapped
118
118
  });
119
119
  module.exports = __toCommonJS(setting_component_wrapper_exports);
120
- var import_type_guards = require('@mnaoumov/typescript-lib/type-guards');
121
- var import_css_class = require('../css-class.cjs');
122
- var import_plugin_context = require('../plugin/plugin-context.cjs');
120
+ var import_type_guards = require("@mnaoumov/typescript-lib/type-guards");
121
+ var import_css_class = require("../css-class.cjs");
122
+ var import_plugin_context = require("../plugin/plugin-context.cjs");
123
123
  function ensureWrapped(element) {
124
124
  const parent = element.parentElement;
125
125
  (0, import_type_guards.assertNonNullable)(parent, "Element must be attached to the DOM");
@@ -118,10 +118,10 @@ __export(tag_list_component_exports, {
118
118
  TagListComponent: () => TagListComponent
119
119
  });
120
120
  module.exports = __toCommonJS(tag_list_component_exports);
121
- var import_obsidian = require('obsidian');
122
- var import_css_class = require('../css-class.cjs');
123
- var import_link_and_tag_input_suggest = require('../link-and-tag-input-suggest.cjs');
124
- var import_list_component = require('./list-component.cjs');
121
+ var import_obsidian = require("obsidian");
122
+ var import_css_class = require("../css-class.cjs");
123
+ var import_link_and_tag_input_suggest = require("../link-and-tag-input-suggest.cjs");
124
+ var import_list_component = require("./list-component.cjs");
125
125
  const TAG_PREFIX = "#";
126
126
  const LEADING_TAG_PREFIXES_REG_EXP = /^#+/u;
127
127
  const TAG_REG_EXP = /^[\p{L}\p{N}_/-]+$/u;
@@ -90,8 +90,8 @@ __export(telephone_component_exports, {
90
90
  TelephoneComponent: () => TelephoneComponent
91
91
  });
92
92
  module.exports = __toCommonJS(telephone_component_exports);
93
- var import_css_class = require('../css-class.cjs');
94
- var import_typed_text_component = require('./typed-text-component.cjs');
93
+ var import_css_class = require("../css-class.cjs");
94
+ var import_typed_text_component = require("./typed-text-component.cjs");
95
95
  class TelephoneComponent extends import_typed_text_component.TypedTextComponent {
96
96
  /**
97
97
  * Creates a new telephone component.
@@ -117,7 +117,7 @@ __export(text_based_component_exports, {
117
117
  getTextBasedComponentValue: () => getTextBasedComponentValue
118
118
  });
119
119
  module.exports = __toCommonJS(text_based_component_exports);
120
- var import_obsidian = require('obsidian');
120
+ var import_obsidian = require("obsidian");
121
121
  class AbstractTextComponentWrapper {
122
122
  // eslint-disable-next-line @typescript-eslint/no-explicit-any -- `unknown` doesn't work, getting compiler errors.
123
123
  constructor(abstractTextComponent) {
@@ -117,9 +117,9 @@ __export(time_component_exports, {
117
117
  TimeComponent: () => TimeComponent
118
118
  });
119
119
  module.exports = __toCommonJS(time_component_exports);
120
- var import_obsidian = require('obsidian');
121
- var import_css_class = require('../css-class.cjs');
122
- var import_typed_range_text_component = require('./typed-range-text-component.cjs');
120
+ var import_obsidian = require("obsidian");
121
+ var import_css_class = require("../css-class.cjs");
122
+ var import_typed_range_text_component = require("./typed-range-text-component.cjs");
123
123
  class TimeComponent extends import_typed_range_text_component.TypedRangeTextComponent {
124
124
  /**
125
125
  * Creates a new time component.
@@ -117,9 +117,9 @@ __export(tri_state_checkbox_component_exports, {
117
117
  TriStateCheckboxComponent: () => TriStateCheckboxComponent
118
118
  });
119
119
  module.exports = __toCommonJS(tri_state_checkbox_component_exports);
120
- var import_obsidian = require('obsidian');
121
- var import_css_class = require('../css-class.cjs');
122
- var import_plugin_context = require('../plugin/plugin-context.cjs');
120
+ var import_obsidian = require("obsidian");
121
+ var import_css_class = require("../css-class.cjs");
122
+ var import_plugin_context = require("../plugin/plugin-context.cjs");
123
123
  class TriStateCheckboxComponent extends import_obsidian.ValueComponent {
124
124
  /**
125
125
  * An input element of the checkbox.
@@ -117,9 +117,9 @@ __export(typed_dropdown_component_exports, {
117
117
  TypedDropdownComponent: () => TypedDropdownComponent
118
118
  });
119
119
  module.exports = __toCommonJS(typed_dropdown_component_exports);
120
- var import_obsidian = require('obsidian');
121
- var import_css_class = require('../css-class.cjs');
122
- var import_plugin_context = require('../plugin/plugin-context.cjs');
120
+ var import_obsidian = require("obsidian");
121
+ var import_css_class = require("../css-class.cjs");
122
+ var import_plugin_context = require("../plugin/plugin-context.cjs");
123
123
  class TypedDropdownComponent extends import_obsidian.ValueComponent {
124
124
  /**
125
125
  * A select element of the component.
@@ -117,10 +117,10 @@ __export(typed_multiple_dropdown_component_exports, {
117
117
  TypedMultipleDropdownComponent: () => TypedMultipleDropdownComponent
118
118
  });
119
119
  module.exports = __toCommonJS(typed_multiple_dropdown_component_exports);
120
- var import_obsidian = require('obsidian');
121
- var import_css_class = require('../css-class.cjs');
122
- var import_plugin_context = require('../plugin/plugin-context.cjs');
123
- var import_multiple_dropdown_component = require('./multiple-dropdown-component.cjs');
120
+ var import_obsidian = require("obsidian");
121
+ var import_css_class = require("../css-class.cjs");
122
+ var import_plugin_context = require("../plugin/plugin-context.cjs");
123
+ var import_multiple_dropdown_component = require("./multiple-dropdown-component.cjs");
124
124
  class TypedMultipleDropdownComponent extends import_obsidian.ValueComponent {
125
125
  /**
126
126
  * A select element of the component.
@@ -90,7 +90,7 @@ __export(typed_range_text_component_exports, {
90
90
  TypedRangeTextComponent: () => TypedRangeTextComponent
91
91
  });
92
92
  module.exports = __toCommonJS(typed_range_text_component_exports);
93
- var import_typed_text_component = require('./typed-text-component.cjs');
93
+ var import_typed_text_component = require("./typed-text-component.cjs");
94
94
  class TypedRangeTextComponent extends import_typed_text_component.TypedTextComponent {
95
95
  /**
96
96
  * Sets the maximum value of the component.