obsidian-dev-utils 84.6.0 → 85.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 (215) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/dev/main.js +11010 -10381
  3. package/dist/lib/cjs/async-events.cjs +4 -1
  4. package/dist/lib/cjs/async-events.d.cts +4 -1
  5. package/dist/lib/cjs/generated-during-build.cjs +1 -1
  6. package/dist/lib/cjs/obsidian/active-file-provider.cjs +1 -1
  7. package/dist/lib/cjs/obsidian/active-file-provider.d.cts +1 -1
  8. package/dist/lib/cjs/obsidian/bases-view-registrar.cjs +1 -1
  9. package/dist/lib/cjs/obsidian/bases-view-registrar.d.cts +1 -1
  10. package/dist/lib/cjs/obsidian/case-insensitive-file-index.cjs +1 -1
  11. package/dist/lib/cjs/obsidian/case-insensitive-file-index.d.cts +1 -1
  12. package/dist/lib/cjs/obsidian/command-handlers/command-handler-component.cjs +16 -1
  13. package/dist/lib/cjs/obsidian/command-handlers/command-handler-component.d.cts +20 -5
  14. package/dist/lib/cjs/obsidian/command-handlers/index.cjs +6 -3
  15. package/dist/lib/cjs/obsidian/command-handlers/index.d.cts +1 -0
  16. package/dist/lib/cjs/obsidian/command-handlers/open-settings-command-handler.cjs +7 -1
  17. package/dist/lib/cjs/obsidian/command-handlers/open-settings-command-handler.d.cts +8 -2
  18. package/dist/lib/cjs/obsidian/command-handlers/unlock-active-note-command-handler.cjs +183 -0
  19. package/dist/lib/cjs/obsidian/command-handlers/unlock-active-note-command-handler.d.cts +54 -0
  20. package/dist/lib/cjs/obsidian/command-registrar.cjs +1 -1
  21. package/dist/lib/cjs/obsidian/command-registrar.d.cts +1 -1
  22. package/dist/lib/cjs/obsidian/components/abort-signal-component.cjs +1 -1
  23. package/dist/lib/cjs/obsidian/components/abort-signal-component.d.cts +1 -1
  24. package/dist/lib/cjs/obsidian/components/all-windows-event-component.cjs +1 -1
  25. package/dist/lib/cjs/obsidian/components/all-windows-event-component.d.cts +1 -1
  26. package/dist/lib/cjs/obsidian/components/async-error-handler-component.cjs +1 -1
  27. package/dist/lib/cjs/obsidian/components/async-error-handler-component.d.cts +1 -1
  28. package/dist/lib/cjs/obsidian/components/case-insensitive-file-index-component.cjs +7 -1
  29. package/dist/lib/cjs/obsidian/components/case-insensitive-file-index-component.d.cts +9 -2
  30. package/dist/lib/cjs/obsidian/components/console-debug-component.cjs +1 -1
  31. package/dist/lib/cjs/obsidian/components/console-debug-component.d.cts +1 -1
  32. package/dist/lib/cjs/obsidian/components/embed-extensions-component.cjs +1 -1
  33. package/dist/lib/cjs/obsidian/components/embed-extensions-component.d.cts +1 -1
  34. package/dist/lib/cjs/obsidian/components/generate-markdown-link-default-params-component.cjs +4 -1
  35. package/dist/lib/cjs/obsidian/components/generate-markdown-link-default-params-component.d.cts +4 -1
  36. package/dist/lib/cjs/obsidian/components/layout-ready-component.cjs +1 -1
  37. package/dist/lib/cjs/obsidian/components/layout-ready-component.d.cts +1 -1
  38. package/dist/lib/cjs/obsidian/components/menu-event-registrar-component.cjs +1 -1
  39. package/dist/lib/cjs/obsidian/components/menu-event-registrar-component.d.cts +1 -1
  40. package/dist/lib/cjs/obsidian/components/plugin-context-component.cjs +7 -1
  41. package/dist/lib/cjs/obsidian/components/plugin-context-component.d.cts +8 -2
  42. package/dist/lib/cjs/obsidian/components/plugin-notice-component.cjs +1 -1
  43. package/dist/lib/cjs/obsidian/components/plugin-notice-component.d.cts +1 -1
  44. package/dist/lib/cjs/obsidian/components/plugin-settings-component.cjs +13 -4
  45. package/dist/lib/cjs/obsidian/components/plugin-settings-component.d.cts +12 -3
  46. package/dist/lib/cjs/obsidian/components/plugin-settings-tab-component.cjs +7 -1
  47. package/dist/lib/cjs/obsidian/components/plugin-settings-tab-component.d.cts +8 -2
  48. package/dist/lib/cjs/obsidian/components/rename-delete-handler-component.cjs +29 -8
  49. package/dist/lib/cjs/obsidian/components/rename-delete-handler-component.d.cts +34 -7
  50. package/dist/lib/cjs/obsidian/data-handler.cjs +1 -1
  51. package/dist/lib/cjs/obsidian/data-handler.d.cts +1 -1
  52. package/dist/lib/cjs/obsidian/editor-extension-registrar.cjs +1 -1
  53. package/dist/lib/cjs/obsidian/editor-extension-registrar.d.cts +1 -1
  54. package/dist/lib/cjs/obsidian/editor-suggest-registrar.cjs +1 -1
  55. package/dist/lib/cjs/obsidian/editor-suggest-registrar.d.cts +1 -1
  56. package/dist/lib/cjs/obsidian/extensions-registrar.cjs +1 -1
  57. package/dist/lib/cjs/obsidian/extensions-registrar.d.cts +1 -1
  58. package/dist/lib/cjs/obsidian/hover-link-source-registrar.cjs +1 -1
  59. package/dist/lib/cjs/obsidian/hover-link-source-registrar.d.cts +1 -1
  60. package/dist/lib/cjs/obsidian/index.cjs +4 -1
  61. package/dist/lib/cjs/obsidian/index.d.cts +1 -0
  62. package/dist/lib/cjs/obsidian/link.cjs +79 -244
  63. package/dist/lib/cjs/obsidian/link.d.cts +82 -148
  64. package/dist/lib/cjs/obsidian/loop.cjs +2 -2
  65. package/dist/lib/cjs/obsidian/loop.d.cts +17 -3
  66. package/dist/lib/cjs/obsidian/markdown-code-block-processor-registrar.cjs +4 -1
  67. package/dist/lib/cjs/obsidian/markdown-code-block-processor-registrar.d.cts +4 -1
  68. package/dist/lib/cjs/obsidian/markdown-post-processor-registrar.cjs +1 -1
  69. package/dist/lib/cjs/obsidian/markdown-post-processor-registrar.d.cts +1 -1
  70. package/dist/lib/cjs/obsidian/metadata-cache.cjs +141 -43
  71. package/dist/lib/cjs/obsidian/metadata-cache.d.cts +171 -9
  72. package/dist/lib/cjs/obsidian/modals/minimizable-modal.cjs +80 -40
  73. package/dist/lib/cjs/obsidian/modals/minimizable-modal.d.cts +9 -0
  74. package/dist/lib/cjs/obsidian/obsidian-protocol-handler-registrar.cjs +4 -1
  75. package/dist/lib/cjs/obsidian/obsidian-protocol-handler-registrar.d.cts +4 -1
  76. package/dist/lib/cjs/obsidian/parse-link.cjs +476 -0
  77. package/dist/lib/cjs/obsidian/parse-link.d.cts +268 -0
  78. package/dist/lib/cjs/obsidian/plugin/plugin-event-source.cjs +1 -1
  79. package/dist/lib/cjs/obsidian/plugin/plugin-event-source.d.cts +1 -1
  80. package/dist/lib/cjs/obsidian/plugin-cli-handler-registrar.cjs +1 -1
  81. package/dist/lib/cjs/obsidian/plugin-cli-handler-registrar.d.cts +1 -1
  82. package/dist/lib/cjs/obsidian/resource-lock.cjs +155 -20
  83. package/dist/lib/cjs/obsidian/resource-lock.d.cts +93 -22
  84. package/dist/lib/cjs/obsidian/ribbon-icon-registrar.cjs +1 -1
  85. package/dist/lib/cjs/obsidian/ribbon-icon-registrar.d.cts +1 -1
  86. package/dist/lib/cjs/obsidian/setting-components/code-highlighter-component.cjs +28 -16
  87. package/dist/lib/cjs/obsidian/setting-components/code-highlighter-component.d.cts +17 -5
  88. package/dist/lib/cjs/obsidian/setting-components/multiple-dropdown-component.cjs +4 -1
  89. package/dist/lib/cjs/obsidian/setting-components/multiple-dropdown-component.d.cts +5 -2
  90. package/dist/lib/cjs/obsidian/setting-components/multiple-text-component.cjs +11 -2
  91. package/dist/lib/cjs/obsidian/setting-components/multiple-text-component.d.cts +12 -3
  92. package/dist/lib/cjs/obsidian/setting-components/typed-dropdown-component.cjs +8 -2
  93. package/dist/lib/cjs/obsidian/setting-components/typed-dropdown-component.d.cts +9 -3
  94. package/dist/lib/cjs/obsidian/setting-components/typed-multiple-dropdown-component.cjs +8 -2
  95. package/dist/lib/cjs/obsidian/setting-components/typed-multiple-dropdown-component.d.cts +9 -2
  96. package/dist/lib/cjs/obsidian/status-bar-item-registrar.cjs +1 -1
  97. package/dist/lib/cjs/obsidian/status-bar-item-registrar.d.cts +1 -1
  98. package/dist/lib/cjs/obsidian/vault-transaction.cjs +4 -1
  99. package/dist/lib/cjs/obsidian/vault-transaction.d.cts +4 -1
  100. package/dist/lib/cjs/obsidian/vault.cjs +2 -2
  101. package/dist/lib/cjs/obsidian/view-registrar.cjs +1 -1
  102. package/dist/lib/cjs/obsidian/view-registrar.d.cts +1 -1
  103. package/dist/lib/cjs/script-utils/linters/markdownlint-cli2-config.cjs +4 -2
  104. package/dist/lib/cjs/transformers/group-transformer.cjs +1 -1
  105. package/dist/lib/cjs/transformers/group-transformer.d.cts +1 -1
  106. package/dist/lib/cjs/url.cjs +14 -3
  107. package/dist/lib/cjs/url.d.cts +15 -0
  108. package/dist/lib/esm/async-events.d.mts +4 -1
  109. package/dist/lib/esm/async-events.mjs +4 -1
  110. package/dist/lib/esm/generated-during-build.mjs +1 -1
  111. package/dist/lib/esm/obsidian/active-file-provider.d.mts +1 -1
  112. package/dist/lib/esm/obsidian/active-file-provider.mjs +1 -1
  113. package/dist/lib/esm/obsidian/bases-view-registrar.d.mts +1 -1
  114. package/dist/lib/esm/obsidian/bases-view-registrar.mjs +1 -1
  115. package/dist/lib/esm/obsidian/case-insensitive-file-index.d.mts +1 -1
  116. package/dist/lib/esm/obsidian/case-insensitive-file-index.mjs +1 -1
  117. package/dist/lib/esm/obsidian/command-handlers/command-handler-component.d.mts +20 -5
  118. package/dist/lib/esm/obsidian/command-handlers/command-handler-component.mjs +16 -1
  119. package/dist/lib/esm/obsidian/command-handlers/index.d.mts +1 -0
  120. package/dist/lib/esm/obsidian/command-handlers/index.mjs +4 -2
  121. package/dist/lib/esm/obsidian/command-handlers/open-settings-command-handler.d.mts +8 -2
  122. package/dist/lib/esm/obsidian/command-handlers/open-settings-command-handler.mjs +7 -1
  123. package/dist/lib/esm/obsidian/command-handlers/unlock-active-note-command-handler.d.mts +54 -0
  124. package/dist/lib/esm/obsidian/command-handlers/unlock-active-note-command-handler.mjs +75 -0
  125. package/dist/lib/esm/obsidian/command-registrar.d.mts +1 -1
  126. package/dist/lib/esm/obsidian/command-registrar.mjs +1 -1
  127. package/dist/lib/esm/obsidian/components/abort-signal-component.d.mts +1 -1
  128. package/dist/lib/esm/obsidian/components/abort-signal-component.mjs +1 -1
  129. package/dist/lib/esm/obsidian/components/all-windows-event-component.d.mts +1 -1
  130. package/dist/lib/esm/obsidian/components/all-windows-event-component.mjs +1 -1
  131. package/dist/lib/esm/obsidian/components/async-error-handler-component.d.mts +1 -1
  132. package/dist/lib/esm/obsidian/components/async-error-handler-component.mjs +1 -1
  133. package/dist/lib/esm/obsidian/components/case-insensitive-file-index-component.d.mts +9 -2
  134. package/dist/lib/esm/obsidian/components/case-insensitive-file-index-component.mjs +7 -1
  135. package/dist/lib/esm/obsidian/components/console-debug-component.d.mts +1 -1
  136. package/dist/lib/esm/obsidian/components/console-debug-component.mjs +1 -1
  137. package/dist/lib/esm/obsidian/components/embed-extensions-component.d.mts +1 -1
  138. package/dist/lib/esm/obsidian/components/embed-extensions-component.mjs +1 -1
  139. package/dist/lib/esm/obsidian/components/generate-markdown-link-default-params-component.d.mts +4 -1
  140. package/dist/lib/esm/obsidian/components/generate-markdown-link-default-params-component.mjs +4 -1
  141. package/dist/lib/esm/obsidian/components/layout-ready-component.d.mts +1 -1
  142. package/dist/lib/esm/obsidian/components/layout-ready-component.mjs +1 -1
  143. package/dist/lib/esm/obsidian/components/menu-event-registrar-component.d.mts +1 -1
  144. package/dist/lib/esm/obsidian/components/menu-event-registrar-component.mjs +1 -1
  145. package/dist/lib/esm/obsidian/components/plugin-context-component.d.mts +8 -2
  146. package/dist/lib/esm/obsidian/components/plugin-context-component.mjs +7 -1
  147. package/dist/lib/esm/obsidian/components/plugin-notice-component.d.mts +1 -1
  148. package/dist/lib/esm/obsidian/components/plugin-notice-component.mjs +1 -1
  149. package/dist/lib/esm/obsidian/components/plugin-settings-component.d.mts +12 -3
  150. package/dist/lib/esm/obsidian/components/plugin-settings-component.mjs +13 -4
  151. package/dist/lib/esm/obsidian/components/plugin-settings-tab-component.d.mts +8 -2
  152. package/dist/lib/esm/obsidian/components/plugin-settings-tab-component.mjs +7 -1
  153. package/dist/lib/esm/obsidian/components/rename-delete-handler-component.d.mts +34 -7
  154. package/dist/lib/esm/obsidian/components/rename-delete-handler-component.mjs +30 -9
  155. package/dist/lib/esm/obsidian/data-handler.d.mts +1 -1
  156. package/dist/lib/esm/obsidian/data-handler.mjs +1 -1
  157. package/dist/lib/esm/obsidian/editor-extension-registrar.d.mts +1 -1
  158. package/dist/lib/esm/obsidian/editor-extension-registrar.mjs +1 -1
  159. package/dist/lib/esm/obsidian/editor-suggest-registrar.d.mts +1 -1
  160. package/dist/lib/esm/obsidian/editor-suggest-registrar.mjs +1 -1
  161. package/dist/lib/esm/obsidian/extensions-registrar.d.mts +1 -1
  162. package/dist/lib/esm/obsidian/extensions-registrar.mjs +1 -1
  163. package/dist/lib/esm/obsidian/hover-link-source-registrar.d.mts +1 -1
  164. package/dist/lib/esm/obsidian/hover-link-source-registrar.mjs +1 -1
  165. package/dist/lib/esm/obsidian/index.d.mts +1 -0
  166. package/dist/lib/esm/obsidian/index.mjs +3 -1
  167. package/dist/lib/esm/obsidian/link.d.mts +82 -148
  168. package/dist/lib/esm/obsidian/link.mjs +76 -222
  169. package/dist/lib/esm/obsidian/loop.d.mts +17 -3
  170. package/dist/lib/esm/obsidian/loop.mjs +2 -2
  171. package/dist/lib/esm/obsidian/markdown-code-block-processor-registrar.d.mts +4 -1
  172. package/dist/lib/esm/obsidian/markdown-code-block-processor-registrar.mjs +4 -1
  173. package/dist/lib/esm/obsidian/markdown-post-processor-registrar.d.mts +1 -1
  174. package/dist/lib/esm/obsidian/markdown-post-processor-registrar.mjs +1 -1
  175. package/dist/lib/esm/obsidian/metadata-cache.d.mts +171 -9
  176. package/dist/lib/esm/obsidian/metadata-cache.mjs +142 -42
  177. package/dist/lib/esm/obsidian/modals/minimizable-modal.d.mts +9 -0
  178. package/dist/lib/esm/obsidian/modals/minimizable-modal.mjs +80 -40
  179. package/dist/lib/esm/obsidian/obsidian-protocol-handler-registrar.d.mts +4 -1
  180. package/dist/lib/esm/obsidian/obsidian-protocol-handler-registrar.mjs +4 -1
  181. package/dist/lib/esm/obsidian/parse-link.d.mts +268 -0
  182. package/dist/lib/esm/obsidian/parse-link.mjs +353 -0
  183. package/dist/lib/esm/obsidian/plugin/plugin-event-source.d.mts +1 -1
  184. package/dist/lib/esm/obsidian/plugin/plugin-event-source.mjs +1 -1
  185. package/dist/lib/esm/obsidian/plugin-cli-handler-registrar.d.mts +1 -1
  186. package/dist/lib/esm/obsidian/plugin-cli-handler-registrar.mjs +1 -1
  187. package/dist/lib/esm/obsidian/resource-lock.d.mts +93 -22
  188. package/dist/lib/esm/obsidian/resource-lock.mjs +155 -20
  189. package/dist/lib/esm/obsidian/ribbon-icon-registrar.d.mts +1 -1
  190. package/dist/lib/esm/obsidian/ribbon-icon-registrar.mjs +1 -1
  191. package/dist/lib/esm/obsidian/setting-components/code-highlighter-component.d.mts +17 -5
  192. package/dist/lib/esm/obsidian/setting-components/code-highlighter-component.mjs +28 -16
  193. package/dist/lib/esm/obsidian/setting-components/multiple-dropdown-component.d.mts +5 -2
  194. package/dist/lib/esm/obsidian/setting-components/multiple-dropdown-component.mjs +4 -1
  195. package/dist/lib/esm/obsidian/setting-components/multiple-text-component.d.mts +12 -3
  196. package/dist/lib/esm/obsidian/setting-components/multiple-text-component.mjs +11 -2
  197. package/dist/lib/esm/obsidian/setting-components/typed-dropdown-component.d.mts +9 -3
  198. package/dist/lib/esm/obsidian/setting-components/typed-dropdown-component.mjs +8 -2
  199. package/dist/lib/esm/obsidian/setting-components/typed-multiple-dropdown-component.d.mts +9 -2
  200. package/dist/lib/esm/obsidian/setting-components/typed-multiple-dropdown-component.mjs +8 -2
  201. package/dist/lib/esm/obsidian/status-bar-item-registrar.d.mts +1 -1
  202. package/dist/lib/esm/obsidian/status-bar-item-registrar.mjs +1 -1
  203. package/dist/lib/esm/obsidian/vault-transaction.d.mts +4 -1
  204. package/dist/lib/esm/obsidian/vault-transaction.mjs +4 -1
  205. package/dist/lib/esm/obsidian/vault.mjs +2 -2
  206. package/dist/lib/esm/obsidian/view-registrar.d.mts +1 -1
  207. package/dist/lib/esm/obsidian/view-registrar.mjs +1 -1
  208. package/dist/lib/esm/script-utils/linters/markdownlint-cli2-config.mjs +4 -2
  209. package/dist/lib/esm/transformers/group-transformer.d.mts +1 -1
  210. package/dist/lib/esm/transformers/group-transformer.mjs +1 -1
  211. package/dist/lib/esm/url.d.mts +15 -0
  212. package/dist/lib/esm/url.mjs +11 -2
  213. package/obsidian/command-handlers/unlock-active-note-command-handler/package.json +6 -0
  214. package/obsidian/parse-link/package.json +6 -0
  215. package/package.json +3 -3
@@ -42,7 +42,7 @@ type PluginRibbonIconRegistrarAddRibbonIconParams = RibbonIconRegistrarAddRibbon
42
42
  * Ribbon icon registrar in an Obsidian plugin.
43
43
  */
44
44
  export declare class PluginRibbonIconRegistrar implements RibbonIconRegistrar {
45
- private readonly plugin;
45
+ protected readonly plugin: Plugin;
46
46
  /**
47
47
  * Creates a new instance of the {@link PluginRibbonIconRegistrar} class.
48
48
  *
@@ -45,4 +45,4 @@ class PluginRibbonIconRegistrar {
45
45
  export {
46
46
  PluginRibbonIconRegistrar
47
47
  };
48
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3JpYmJvbi1pY29uLXJlZ2lzdHJhci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFJpYmJvbiBpY29uIHJlZ2lzdHJhcnMuXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBJY29uTmFtZSB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgUGx1Z2luIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG4vKipcbiAqIFJpYmJvbiBpY29uIHJlZ2lzdHJhci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSaWJib25JY29uUmVnaXN0cmFyIHtcbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIHJpYmJvbiBpY29uLlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW1zIC0gVGhlIHBhcmFtZXRlcnMgZm9yIHRoZSByaWJib24gaWNvbiByZWdpc3RyYXRpb24uXG4gICAqIEByZXR1cm5zIFRoZSBIVE1MIGVsZW1lbnQgcmVwcmVzZW50aW5nIHRoZSByZWdpc3RlcmVkIHJpYmJvbiBpY29uLlxuICAgKi9cbiAgYWRkUmliYm9uSWNvbihwYXJhbXM6IFJpYmJvbkljb25SZWdpc3RyYXJBZGRSaWJib25JY29uUGFyYW1zKTogSFRNTEVsZW1lbnQ7XG59XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3IgcmVnaXN0ZXJpbmcgYSByaWJib24gaWNvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSaWJib25JY29uUmVnaXN0cmFyQWRkUmliYm9uSWNvblBhcmFtcyB7XG4gIC8qKlxuICAgKiBDYWxsYmFjayBmdW5jdGlvbiBmb3IgdGhlIHJpYmJvbiBpY29uIHRvIHJlZ2lzdGVyLlxuICAgKlxuICAgKiBAcGFyYW0gZXZ0IC0gVGhlIG1vdXNlIGV2ZW50IHRoYXQgdHJpZ2dlcmVkIHRoZSBjYWxsYmFjay5cbiAgICovXG4gIGNhbGxiYWNrKHRoaXM6IHZvaWQsIGV2dDogTW91c2VFdmVudCk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIFRoZSBpY29uIG5hbWUgZm9yIHRoZSByaWJib24gaWNvbiB0byByZWdpc3Rlci5cbiAgICovXG4gIHJlYWRvbmx5IGljb246IEljb25OYW1lO1xuXG4gIC8qKlxuICAgKiBUaGUgdGl0bGUgZm9yIHRoZSByaWJib24gaWNvbiB0byByZWdpc3Rlci5cbiAgICovXG4gIHJlYWRvbmx5IHRpdGxlOiBzdHJpbmc7XG59XG5cbnR5cGUgUGx1Z2luUmliYm9uSWNvblJlZ2lzdHJhckFkZFJpYmJvbkljb25QYXJhbXMgPSBSaWJib25JY29uUmVnaXN0cmFyQWRkUmliYm9uSWNvblBhcmFtcztcblxuLyoqXG4gKiBSaWJib24gaWNvbiByZWdpc3RyYXIgaW4gYW4gT2JzaWRpYW4gcGx1Z2luLlxuICovXG5leHBvcnQgY2xhc3MgUGx1Z2luUmliYm9uSWNvblJlZ2lzdHJhciBpbXBsZW1lbnRzIFJpYmJvbkljb25SZWdpc3RyYXIge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBpbnN0YW5jZSBvZiB0aGUge0BsaW5rIFBsdWdpblJpYmJvbkljb25SZWdpc3RyYXJ9IGNsYXNzLlxuICAgKlxuICAgKiBAcGFyYW0gcGx1Z2luIC0gVGhlIE9ic2lkaWFuIHBsdWdpbiBpbnN0YW5jZS5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHBsdWdpbjogUGx1Z2luKSB7fVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgYSByaWJib24gaWNvbi5cbiAgICpcbiAgICogQHBhcmFtIHBhcmFtcyAtIFRoZSBwYXJhbWV0ZXJzIGZvciB0aGUgcmliYm9uIGljb24gcmVnaXN0cmF0aW9uLlxuICAgKiBAcmV0dXJucyBUaGUgSFRNTCBlbGVtZW50IHJlcHJlc2VudGluZyB0aGUgcmVnaXN0ZXJlZCByaWJib24gaWNvbi5cbiAgICovXG4gIHB1YmxpYyBhZGRSaWJib25JY29uKHBhcmFtczogUGx1Z2luUmliYm9uSWNvblJlZ2lzdHJhckFkZFJpYmJvbkljb25QYXJhbXMpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMucGx1Z2luLmFkZFJpYmJvbkljb24ocGFyYW1zLmljb24sIHBhcmFtcy50aXRsZSwgcGFyYW1zLmNhbGxiYWNrKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRQSxTQUFTLGNBQWM7QUEwQ2hCLE1BQU0sMEJBQXlEO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTTdELFlBQTZCLFFBQWdCO0FBQWhCO0FBQUEsRUFBaUI7QUFBQSxFQUFqQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUTdCLGNBQWMsUUFBbUU7QUFDdEYsV0FBTyxLQUFLLE9BQU8sY0FBYyxPQUFPLE1BQU0sT0FBTyxPQUFPLE9BQU8sUUFBUTtBQUFBLEVBQzdFO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
48
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3JpYmJvbi1pY29uLXJlZ2lzdHJhci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFJpYmJvbiBpY29uIHJlZ2lzdHJhcnMuXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBJY29uTmFtZSB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgUGx1Z2luIH0gZnJvbSAnb2JzaWRpYW4nO1xuXG4vKipcbiAqIFJpYmJvbiBpY29uIHJlZ2lzdHJhci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSaWJib25JY29uUmVnaXN0cmFyIHtcbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIHJpYmJvbiBpY29uLlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW1zIC0gVGhlIHBhcmFtZXRlcnMgZm9yIHRoZSByaWJib24gaWNvbiByZWdpc3RyYXRpb24uXG4gICAqIEByZXR1cm5zIFRoZSBIVE1MIGVsZW1lbnQgcmVwcmVzZW50aW5nIHRoZSByZWdpc3RlcmVkIHJpYmJvbiBpY29uLlxuICAgKi9cbiAgYWRkUmliYm9uSWNvbihwYXJhbXM6IFJpYmJvbkljb25SZWdpc3RyYXJBZGRSaWJib25JY29uUGFyYW1zKTogSFRNTEVsZW1lbnQ7XG59XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3IgcmVnaXN0ZXJpbmcgYSByaWJib24gaWNvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSaWJib25JY29uUmVnaXN0cmFyQWRkUmliYm9uSWNvblBhcmFtcyB7XG4gIC8qKlxuICAgKiBDYWxsYmFjayBmdW5jdGlvbiBmb3IgdGhlIHJpYmJvbiBpY29uIHRvIHJlZ2lzdGVyLlxuICAgKlxuICAgKiBAcGFyYW0gZXZ0IC0gVGhlIG1vdXNlIGV2ZW50IHRoYXQgdHJpZ2dlcmVkIHRoZSBjYWxsYmFjay5cbiAgICovXG4gIGNhbGxiYWNrKHRoaXM6IHZvaWQsIGV2dDogTW91c2VFdmVudCk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIFRoZSBpY29uIG5hbWUgZm9yIHRoZSByaWJib24gaWNvbiB0byByZWdpc3Rlci5cbiAgICovXG4gIHJlYWRvbmx5IGljb246IEljb25OYW1lO1xuXG4gIC8qKlxuICAgKiBUaGUgdGl0bGUgZm9yIHRoZSByaWJib24gaWNvbiB0byByZWdpc3Rlci5cbiAgICovXG4gIHJlYWRvbmx5IHRpdGxlOiBzdHJpbmc7XG59XG5cbnR5cGUgUGx1Z2luUmliYm9uSWNvblJlZ2lzdHJhckFkZFJpYmJvbkljb25QYXJhbXMgPSBSaWJib25JY29uUmVnaXN0cmFyQWRkUmliYm9uSWNvblBhcmFtcztcblxuLyoqXG4gKiBSaWJib24gaWNvbiByZWdpc3RyYXIgaW4gYW4gT2JzaWRpYW4gcGx1Z2luLlxuICovXG5leHBvcnQgY2xhc3MgUGx1Z2luUmliYm9uSWNvblJlZ2lzdHJhciBpbXBsZW1lbnRzIFJpYmJvbkljb25SZWdpc3RyYXIge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBpbnN0YW5jZSBvZiB0aGUge0BsaW5rIFBsdWdpblJpYmJvbkljb25SZWdpc3RyYXJ9IGNsYXNzLlxuICAgKlxuICAgKiBAcGFyYW0gcGx1Z2luIC0gVGhlIE9ic2lkaWFuIHBsdWdpbiBpbnN0YW5jZS5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcmVhZG9ubHkgcGx1Z2luOiBQbHVnaW4pIHt9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIHJpYmJvbiBpY29uLlxuICAgKlxuICAgKiBAcGFyYW0gcGFyYW1zIC0gVGhlIHBhcmFtZXRlcnMgZm9yIHRoZSByaWJib24gaWNvbiByZWdpc3RyYXRpb24uXG4gICAqIEByZXR1cm5zIFRoZSBIVE1MIGVsZW1lbnQgcmVwcmVzZW50aW5nIHRoZSByZWdpc3RlcmVkIHJpYmJvbiBpY29uLlxuICAgKi9cbiAgcHVibGljIGFkZFJpYmJvbkljb24ocGFyYW1zOiBQbHVnaW5SaWJib25JY29uUmVnaXN0cmFyQWRkUmliYm9uSWNvblBhcmFtcyk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5wbHVnaW4uYWRkUmliYm9uSWNvbihwYXJhbXMuaWNvbiwgcGFyYW1zLnRpdGxlLCBwYXJhbXMuY2FsbGJhY2spO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVFBLFNBQVMsY0FBYztBQTBDaEIsTUFBTSwwQkFBeUQ7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNN0QsWUFBK0IsUUFBZ0I7QUFBaEI7QUFBQSxFQUFpQjtBQUFBLEVBQWpCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRL0IsY0FBYyxRQUFtRTtBQUN0RixXQUFPLEtBQUssT0FBTyxjQUFjLE9BQU8sTUFBTSxPQUFPLE9BQU8sT0FBTyxRQUFRO0FBQUEsRUFDN0U7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -4,7 +4,7 @@
4
4
  *
5
5
  * Contains a component that displays and edits multiple text values.
6
6
  */
7
- import { ValueComponent } from 'obsidian';
7
+ import { TextAreaComponent, ValueComponent } from 'obsidian';
8
8
  import type { ValidatorElement } from '../../html-element.mjs';
9
9
  import type { TextBasedComponent } from './text-based-component.mjs';
10
10
  import type { ValidatorComponent } from './validator-component.mjs';
@@ -31,12 +31,21 @@ export declare class CodeHighlighterComponent extends ValueComponent<string> imp
31
31
  * @returns The validator element of the component.
32
32
  */
33
33
  get validatorEl(): ValidatorElement;
34
- private readonly codeEl;
34
+ /**
35
+ * The `<code>` element that renders the syntax-highlighted overlay. Subclasses customizing the highlighting can target it.
36
+ */
37
+ protected readonly codeEl: HTMLElement;
38
+ /**
39
+ * The `<pre>` element that wraps the highlighted code overlay. Subclasses customizing the highlighting can target it.
40
+ */
41
+ protected readonly preEl: HTMLElement;
42
+ /**
43
+ * The inner text area component.
44
+ */
45
+ protected readonly textAreaComponent: TextAreaComponent;
35
46
  private placeholder;
36
- private readonly preEl;
37
47
  private simulateChangeCallback?;
38
48
  private tabSize;
39
- private readonly textAreaComponent;
40
49
  /**
41
50
  * Creates a new multiple text component.
42
51
  *
@@ -114,7 +123,10 @@ export declare class CodeHighlighterComponent extends ValueComponent<string> imp
114
123
  * @deprecated Use only from tests to simulate a change event.
115
124
  */
116
125
  simulateChange__(): void;
126
+ /**
127
+ * Re-renders the highlighted code overlay from the current text area value. Subclasses can override to customize the render.
128
+ */
129
+ protected updateHighlightedCode(): Promise<void>;
117
130
  private handleKeyDown;
118
131
  private handleScroll;
119
- private updateHighlightedCode;
120
132
  }
@@ -50,12 +50,21 @@ class CodeHighlighterComponent extends ValueComponent {
50
50
  get validatorEl() {
51
51
  return this.inputEl;
52
52
  }
53
+ /**
54
+ * The `<code>` element that renders the syntax-highlighted overlay. Subclasses customizing the highlighting can target it.
55
+ */
53
56
  codeEl;
54
- placeholder = "";
57
+ /**
58
+ * The `<pre>` element that wraps the highlighted code overlay. Subclasses customizing the highlighting can target it.
59
+ */
55
60
  preEl;
61
+ /**
62
+ * The inner text area component.
63
+ */
64
+ textAreaComponent;
65
+ placeholder = "";
56
66
  simulateChangeCallback;
57
67
  tabSize;
58
- textAreaComponent;
59
68
  /**
60
69
  * Creates a new multiple text component.
61
70
  *
@@ -198,6 +207,22 @@ class CodeHighlighterComponent extends ValueComponent {
198
207
  simulateChange__() {
199
208
  this.simulateChangeCallback?.();
200
209
  }
210
+ /**
211
+ * Re-renders the highlighted code overlay from the current text area value. Subclasses can override to customize the render.
212
+ */
213
+ async updateHighlightedCode() {
214
+ this.codeEl.textContent = this.inputEl.value || this.placeholder;
215
+ const prism = await loadPrism();
216
+ prism.highlightElement(this.codeEl);
217
+ this.preEl.toggleClass(CssClass.IsPlaceholder, this.isEmpty());
218
+ window.requestAnimationFrame(() => {
219
+ const gap = Math.max(0, this.inputEl.scrollHeight - this.preEl.scrollHeight);
220
+ this.preEl.setCssProps({
221
+ "--bottom-gap": toPx(gap)
222
+ });
223
+ this.handleScroll();
224
+ });
225
+ }
201
226
  handleKeyDown(evt) {
202
227
  if (evt.key !== "Tab") {
203
228
  return;
@@ -236,21 +261,8 @@ class CodeHighlighterComponent extends ValueComponent {
236
261
  this.preEl.scrollTop = this.inputEl.scrollTop;
237
262
  this.preEl.scrollLeft = this.inputEl.scrollLeft;
238
263
  }
239
- async updateHighlightedCode() {
240
- this.codeEl.textContent = this.inputEl.value || this.placeholder;
241
- const prism = await loadPrism();
242
- prism.highlightElement(this.codeEl);
243
- this.preEl.toggleClass(CssClass.IsPlaceholder, this.isEmpty());
244
- window.requestAnimationFrame(() => {
245
- const gap = Math.max(0, this.inputEl.scrollHeight - this.preEl.scrollHeight);
246
- this.preEl.setCssProps({
247
- "--bottom-gap": toPx(gap)
248
- });
249
- this.handleScroll();
250
- });
251
- }
252
264
  }
253
265
  export {
254
266
  CodeHighlighterComponent
255
267
  };
256
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9jb2RlLWhpZ2hsaWdodGVyLWNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENvbnRhaW5zIGEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIG11bHRpcGxlIHRleHQgdmFsdWVzLlxuICovXG5cbmltcG9ydCB7IGxvYWRQcmlzbSB9IGZyb20gJ0BvYnNpZGlhbi10eXBpbmdzL29ic2lkaWFuLXB1YmxpYy1sYXRlc3QvaW1wbGVtZW50YXRpb25zJztcbmltcG9ydCB7XG4gIFRleHRBcmVhQ29tcG9uZW50LFxuICBWYWx1ZUNvbXBvbmVudFxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yRWxlbWVudCB9IGZyb20gJy4uLy4uL2h0bWwtZWxlbWVudC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBpbml0UGx1Z2luQ29udGV4dGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IGluaXRQbHVnaW5Db250ZXh0IH0gZnJvbSAnLi4vcGx1Z2luL3BsdWdpbi1jb250ZXh0LnRzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYFNldHRpbmdFeGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IFNldHRpbmdFeCB9IGZyb20gJy4uL3NldHRpbmctZXgudHMnO1xuaW1wb3J0IHR5cGUgeyBUZXh0QmFzZWRDb21wb25lbnQgfSBmcm9tICcuL3RleHQtYmFzZWQtY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi92YWxpZGF0b3ItY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcgfSBmcm9tICcuL3ZhbHVlLWNvbXBvbmVudC13aXRoLWNoYW5nZS10cmFja2luZy50cyc7XG5cbmltcG9ydCB7XG4gIGNvbnZlcnRBc3luY1RvU3luYyxcbiAgaW52b2tlQXN5bmNTYWZlbHlcbn0gZnJvbSAnLi4vLi4vYXN5bmMudHMnO1xuaW1wb3J0IHsgdG9QeCB9IGZyb20gJy4uLy4uL2h0bWwtZWxlbWVudC50cyc7XG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uL2Nzcy1jbGFzcy50cyc7XG5pbXBvcnQgeyBhZGRQbHVnaW5Dc3NDbGFzc2VzIH0gZnJvbSAnLi4vcGx1Z2luL3BsdWdpbi1jb250ZXh0LnRzJztcblxuLyoqXG4gKiBBIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBjb2RlLlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkQ29kZUhpZ2hsaWdodGVyfS5cbiAqXG4gKiBJbiBvcmRlciB0byBhZGQgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbXBvbmVudCwgdXNlIHtAbGluayBpbml0UGx1Z2luQ29udGV4dH0gaW4geW91ciBwbHVnaW4ncyBgb25sb2FkKClgIGZ1bmN0aW9uLlxuICpcbiAqIEFsdGVybmF0aXZlbHksIHlvdSBjYW4gY29weSBzdHlsZXMgZnJvbSB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL21uYW91bW92L29ic2lkaWFuLWRldi11dGlscy9yZWxlYXNlcy9sYXRlc3QvZG93bmxvYWQvc3R5bGVzLmNzc30uXG4gKi9cbmV4cG9ydCBjbGFzcyBDb2RlSGlnaGxpZ2h0ZXJDb21wb25lbnQgZXh0ZW5kcyBWYWx1ZUNvbXBvbmVudDxzdHJpbmc+IGltcGxlbWVudHMgVGV4dEJhc2VkQ29tcG9uZW50PHN0cmluZz4sIFZhbGlkYXRvckNvbXBvbmVudCwgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmc8c3RyaW5nPiB7XG4gIC8qKlxuICAgKiBBbiBpbnB1dCBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBpbnB1dCBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGlucHV0RWwoKTogSFRNTFRleHRBcmVhRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMudGV4dEFyZWFDb21wb25lbnQuaW5wdXRFbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWxpZGF0b3IgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsaWRhdG9yIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBnZXQgdmFsaWRhdG9yRWwoKTogVmFsaWRhdG9yRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuaW5wdXRFbDtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgY29kZUVsOiBIVE1MRWxlbWVudDtcbiAgcHJpdmF0ZSBwbGFjZWhvbGRlciA9ICcnO1xuICBwcml2YXRlIHJlYWRvbmx5IHByZUVsOiBIVE1MRWxlbWVudDtcbiAgcHJpdmF0ZSBzaW11bGF0ZUNoYW5nZUNhbGxiYWNrPzogKCkgPT4gdm9pZDtcbiAgcHJpdmF0ZSB0YWJTaXplOiBudW1iZXI7XG4gIHByaXZhdGUgcmVhZG9ubHkgdGV4dEFyZWFDb21wb25lbnQ6IFRleHRBcmVhQ29tcG9uZW50O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IG11bHRpcGxlIHRleHQgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gY29udGFpbmVyRWwgLSBUaGUgY29udGFpbmVyIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb250YWluZXJFbDogSFRNTEVsZW1lbnQpIHtcbiAgICBzdXBlcigpO1xuICAgIGFkZFBsdWdpbkNzc0NsYXNzZXMoY29udGFpbmVyRWwsIENzc0NsYXNzLkNvZGVIaWdobGlnaHRlckNvbXBvbmVudCk7XG5cbiAgICBjb25zdCB3cmFwcGVyID0gY29udGFpbmVyRWwuY3JlYXRlRGl2KCk7XG4gICAgYWRkUGx1Z2luQ3NzQ2xhc3Nlcyh3cmFwcGVyLCBDc3NDbGFzcy5TZXR0aW5nQ29tcG9uZW50V3JhcHBlcik7XG5cbiAgICB0aGlzLnRleHRBcmVhQ29tcG9uZW50ID0gbmV3IFRleHRBcmVhQ29tcG9uZW50KHdyYXBwZXIpO1xuICAgIHRoaXMucHJlRWwgPSB3cmFwcGVyLmNyZWF0ZUVsKCdwcmUnLCB7XG4gICAgICBhdHRyOiB7XG4gICAgICAgIHRhYkluZGV4OiAnLTEnXG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy5jb2RlRWwgPSB0aGlzLnByZUVsLmNyZWF0ZUVsKCdjb2RlJywge1xuICAgICAgYXR0cjoge1xuICAgICAgICB0YWJJbmRleDogJy0xJ1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5pbnB1dEVsLmFkZEV2ZW50TGlzdGVuZXIoJ2lucHV0JywgY29udmVydEFzeW5jVG9TeW5jKHRoaXMudXBkYXRlSGlnaGxpZ2h0ZWRDb2RlLmJpbmQodGhpcykpKTtcbiAgICB0aGlzLmlucHV0RWwuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgdGhpcy5oYW5kbGVTY3JvbGwuYmluZCh0aGlzKSk7XG4gICAgdGhpcy5pbnB1dEVsLmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCB0aGlzLmhhbmRsZUtleURvd24uYmluZCh0aGlzKSk7XG4gICAgY29uc3QgREVGQVVMVF9UQUJfU0laRSA9IDI7XG4gICAgdGhpcy50YWJTaXplID0gREVGQVVMVF9UQUJfU0laRTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbXB0aWVzIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZW1wdHkoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRWYWx1ZSgnJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0VmFsdWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tcG9uZW50IGlzIGVtcHR5LlxuICAgKlxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGNvbXBvbmVudCBpcyBlbXB0eSwgYGZhbHNlYCBvdGhlcndpc2UuXG4gICAqL1xuICBwdWJsaWMgaXNFbXB0eSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5nZXRWYWx1ZSgpID09PSAnJztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgY2hhbmdlIGxpc3RlbmVyIHRvIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjYWxsYmFjayAtIFRoZSBjYWxsYmFjayB0byBjYWxsIHdoZW4gdGhlIHZhbHVlIGNoYW5nZXMuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb25DaGFuZ2UoY2FsbGJhY2s6IChuZXdWYWx1ZTogc3RyaW5nKSA9PiB2b2lkKTogdGhpcyB7XG4gICAgY29uc3QgY2hhbmdlSGFuZGxlciA9ICgpOiB2b2lkID0+IHtcbiAgICAgIGNhbGxiYWNrKHRoaXMuZ2V0VmFsdWUoKSk7XG4gICAgfTtcbiAgICB0aGlzLnNpbXVsYXRlQ2hhbmdlQ2FsbGJhY2sgPSBjaGFuZ2VIYW5kbGVyO1xuICAgIHRoaXMudGV4dEFyZWFDb21wb25lbnQub25DaGFuZ2UoY2hhbmdlSGFuZGxlcik7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgZGlzYWJsZWQgc3RhdGUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGRpc2FibGVkIC0gVGhlIGRpc2FibGVkIHN0YXRlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBzZXREaXNhYmxlZChkaXNhYmxlZDogYm9vbGVhbik6IHRoaXMge1xuICAgIHN1cGVyLnNldERpc2FibGVkKGRpc2FibGVkKTtcbiAgICB0aGlzLnRleHRBcmVhQ29tcG9uZW50LnNldERpc2FibGVkKGRpc2FibGVkKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBsYW5ndWFnZSBmb3IgY29kZSBoaWdobGlnaHRpbmcuXG4gICAqXG4gICAqIEBwYXJhbSBsYW5ndWFnZSAtIFRoZSBsYW5ndWFnZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgc2V0TGFuZ3VhZ2UobGFuZ3VhZ2U6IHN0cmluZyk6IHRoaXMge1xuICAgIGNvbnN0IExBTkdVQUdFX0NMQVNTX1BSRUZJWCA9ICdsYW5ndWFnZS0nO1xuICAgIGZvciAoY29uc3QgZWwgb2YgW3RoaXMucHJlRWwsIHRoaXMuY29kZUVsXSkge1xuICAgICAgZm9yIChjb25zdCBjbHMgb2YgQXJyYXkuZnJvbShlbC5jbGFzc0xpc3QpKSB7XG4gICAgICAgIGlmIChjbHMuc3RhcnRzV2l0aChMQU5HVUFHRV9DTEFTU19QUkVGSVgpKSB7XG4gICAgICAgICAgZWwuY2xhc3NMaXN0LnJlbW92ZShjbHMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBlbC5jbGFzc0xpc3QuYWRkKGAke0xBTkdVQUdFX0NMQVNTX1BSRUZJWH0ke2xhbmd1YWdlfWApO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBwbGFjZWhvbGRlciBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gcGxhY2Vob2xkZXIgLSBUaGUgcGxhY2Vob2xkZXIgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldFBsYWNlaG9sZGVyKHBsYWNlaG9sZGVyOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnBsYWNlaG9sZGVyID0gcGxhY2Vob2xkZXI7XG4gICAgaW52b2tlQXN5bmNTYWZlbHkodGhpcy51cGRhdGVIaWdobGlnaHRlZENvZGUuYmluZCh0aGlzKSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcGxhY2Vob2xkZXIgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHBsYWNlaG9sZGVyVmFsdWUgLSBUaGUgcGxhY2Vob2xkZXIgdmFsdWUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldFBsYWNlaG9sZGVyVmFsdWUocGxhY2Vob2xkZXJWYWx1ZTogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy5zZXRQbGFjZWhvbGRlcihwbGFjZWhvbGRlclZhbHVlKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB0YWIgc2l6ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gdGFiU2l6ZSAtIFRoZSB0YWIgc2l6ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgc2V0VGFiU2l6ZSh0YWJTaXplOiBudW1iZXIpOiB0aGlzIHtcbiAgICB0aGlzLnRhYlNpemUgPSB0YWJTaXplO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0VmFsdWUodmFsdWU6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMudGV4dEFyZWFDb21wb25lbnQuc2V0VmFsdWUodmFsdWUpO1xuICAgIGludm9rZUFzeW5jU2FmZWx5KHRoaXMudXBkYXRlSGlnaGxpZ2h0ZWRDb2RlLmJpbmQodGhpcykpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNpbXVsYXRlIGEgY2hhbmdlIGV2ZW50LlxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCBVc2Ugb25seSBmcm9tIHRlc3RzIHRvIHNpbXVsYXRlIGEgY2hhbmdlIGV2ZW50LlxuICAgKi9cbiAgcHVibGljIHNpbXVsYXRlQ2hhbmdlX18oKTogdm9pZCB7XG4gICAgdGhpcy5zaW11bGF0ZUNoYW5nZUNhbGxiYWNrPy4oKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlS2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZ0LmtleSAhPT0gJ1RhYicpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBldnQucHJldmVudERlZmF1bHQoKTtcblxuICAgIGlmIChldnQuY3RybEtleSB8fCBldnQubWV0YUtleSkge1xuICAgICAgY29uc3QgZm9jdXNhYmxlcyA9IEFycmF5LmZyb20oYWN0aXZlRG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbDxIVE1MRWxlbWVudD4oXG4gICAgICAgICc6aXMoYSwgYnV0dG9uLCBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSwgW3RhYmluZGV4XSk6bm90KFt0YWJpbmRleD1cIi0xXCJdKTpub3QoOmRpc2FibGVkKTpub3QoW3R5cGU9XCJoaWRkZW5cIl0pJ1xuICAgICAgKSk7XG4gICAgICBjb25zdCBpbmRleCA9IGZvY3VzYWJsZXMuaW5kZXhPZih0aGlzLmlucHV0RWwpO1xuICAgICAgY29uc3QgZGVsdGFJbmRleCA9IGV2dC5zaGlmdEtleSA/IC0xIDogMTtcbiAgICAgIGNvbnN0IG5leHRDb250cm9sID0gZm9jdXNhYmxlc1soaW5kZXggKyBkZWx0YUluZGV4ICsgZm9jdXNhYmxlcy5sZW5ndGgpICUgZm9jdXNhYmxlcy5sZW5ndGhdO1xuICAgICAgbmV4dENvbnRyb2w/LmZvY3VzKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgb2xkVmFsdWUgPSB0aGlzLmdldFZhbHVlKCk7XG4gICAgY29uc3Qgc2VsZWN0aW9uU3RhcnQgPSB0aGlzLmlucHV0RWwuc2VsZWN0aW9uU3RhcnQ7XG4gICAgY29uc3Qgc2VsZWN0aW9uRW5kID0gdGhpcy5pbnB1dEVsLnNlbGVjdGlvbkVuZDtcbiAgICBjb25zdCBiZWZvcmVTZWxlY3Rpb24gPSBvbGRWYWx1ZS5zbGljZSgwLCBzZWxlY3Rpb25TdGFydCk7XG4gICAgY29uc3QgYWZ0ZXJTZWxlY3Rpb24gPSBvbGRWYWx1ZS5zbGljZShzZWxlY3Rpb25FbmQpO1xuICAgIGNvbnN0IHRhYnMgPSAnICcucmVwZWF0KHRoaXMudGFiU2l6ZSk7XG4gICAgbGV0IG5ld0JlZm9yZVNlbGVjdGlvbiA9IGJlZm9yZVNlbGVjdGlvbjtcblxuICAgIGlmIChldnQuc2hpZnRLZXkpIHtcbiAgICAgIGlmIChiZWZvcmVTZWxlY3Rpb24uZW5kc1dpdGgodGFicykpIHtcbiAgICAgICAgbmV3QmVmb3JlU2VsZWN0aW9uID0gYmVmb3JlU2VsZWN0aW9uLnNsaWNlKDAsIC10aGlzLnRhYlNpemUpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBuZXdCZWZvcmVTZWxlY3Rpb24gPSBiZWZvcmVTZWxlY3Rpb24gKyB0YWJzO1xuICAgIH1cblxuICAgIGNvbnN0IG5ld1ZhbHVlID0gYCR7bmV3QmVmb3JlU2VsZWN0aW9ufSR7YWZ0ZXJTZWxlY3Rpb259YDtcbiAgICB0aGlzLnNldFZhbHVlKG5ld1ZhbHVlKTtcbiAgICB0aGlzLmlucHV0RWwuc2VsZWN0aW9uU3RhcnQgPSBuZXdCZWZvcmVTZWxlY3Rpb24ubGVuZ3RoO1xuICAgIHRoaXMuaW5wdXRFbC5zZWxlY3Rpb25FbmQgPSBuZXdCZWZvcmVTZWxlY3Rpb24ubGVuZ3RoO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVTY3JvbGwoKTogdm9pZCB7XG4gICAgdGhpcy5wcmVFbC5zY3JvbGxUb3AgPSB0aGlzLmlucHV0RWwuc2Nyb2xsVG9wO1xuICAgIHRoaXMucHJlRWwuc2Nyb2xsTGVmdCA9IHRoaXMuaW5wdXRFbC5zY3JvbGxMZWZ0O1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyB1cGRhdGVIaWdobGlnaHRlZENvZGUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5jb2RlRWwudGV4dENvbnRlbnQgPSB0aGlzLmlucHV0RWwudmFsdWUgfHwgdGhpcy5wbGFjZWhvbGRlcjtcbiAgICBjb25zdCBwcmlzbSA9IGF3YWl0IGxvYWRQcmlzbSgpO1xuICAgIHByaXNtLmhpZ2hsaWdodEVsZW1lbnQodGhpcy5jb2RlRWwpO1xuICAgIHRoaXMucHJlRWwudG9nZ2xlQ2xhc3MoQ3NzQ2xhc3MuSXNQbGFjZWhvbGRlciwgdGhpcy5pc0VtcHR5KCkpO1xuICAgIHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgY29uc3QgZ2FwID0gTWF0aC5tYXgoMCwgdGhpcy5pbnB1dEVsLnNjcm9sbEhlaWdodCAtIHRoaXMucHJlRWwuc2Nyb2xsSGVpZ2h0KTtcbiAgICAgIHRoaXMucHJlRWwuc2V0Q3NzUHJvcHMoe1xuICAgICAgICAnLS1ib3R0b20tZ2FwJzogdG9QeChnYXApXG4gICAgICB9KTtcbiAgICAgIHRoaXMuaGFuZGxlU2Nyb2xsKCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsU0FBUyxpQkFBaUI7QUFDMUI7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFXUDtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztB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
268
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9jb2RlLWhpZ2hsaWdodGVyLWNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENvbnRhaW5zIGEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIG11bHRpcGxlIHRleHQgdmFsdWVzLlxuICovXG5cbmltcG9ydCB7IGxvYWRQcmlzbSB9IGZyb20gJ0BvYnNpZGlhbi10eXBpbmdzL29ic2lkaWFuLXB1YmxpYy1sYXRlc3QvaW1wbGVtZW50YXRpb25zJztcbmltcG9ydCB7XG4gIFRleHRBcmVhQ29tcG9uZW50LFxuICBWYWx1ZUNvbXBvbmVudFxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yRWxlbWVudCB9IGZyb20gJy4uLy4uL2h0bWwtZWxlbWVudC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBpbml0UGx1Z2luQ29udGV4dGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IGluaXRQbHVnaW5Db250ZXh0IH0gZnJvbSAnLi4vcGx1Z2luL3BsdWdpbi1jb250ZXh0LnRzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYFNldHRpbmdFeGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IFNldHRpbmdFeCB9IGZyb20gJy4uL3NldHRpbmctZXgudHMnO1xuaW1wb3J0IHR5cGUgeyBUZXh0QmFzZWRDb21wb25lbnQgfSBmcm9tICcuL3RleHQtYmFzZWQtY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi92YWxpZGF0b3ItY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcgfSBmcm9tICcuL3ZhbHVlLWNvbXBvbmVudC13aXRoLWNoYW5nZS10cmFja2luZy50cyc7XG5cbmltcG9ydCB7XG4gIGNvbnZlcnRBc3luY1RvU3luYyxcbiAgaW52b2tlQXN5bmNTYWZlbHlcbn0gZnJvbSAnLi4vLi4vYXN5bmMudHMnO1xuaW1wb3J0IHsgdG9QeCB9IGZyb20gJy4uLy4uL2h0bWwtZWxlbWVudC50cyc7XG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uL2Nzcy1jbGFzcy50cyc7XG5pbXBvcnQgeyBhZGRQbHVnaW5Dc3NDbGFzc2VzIH0gZnJvbSAnLi4vcGx1Z2luL3BsdWdpbi1jb250ZXh0LnRzJztcblxuLyoqXG4gKiBBIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBjb2RlLlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkQ29kZUhpZ2hsaWdodGVyfS5cbiAqXG4gKiBJbiBvcmRlciB0byBhZGQgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbXBvbmVudCwgdXNlIHtAbGluayBpbml0UGx1Z2luQ29udGV4dH0gaW4geW91ciBwbHVnaW4ncyBgb25sb2FkKClgIGZ1bmN0aW9uLlxuICpcbiAqIEFsdGVybmF0aXZlbHksIHlvdSBjYW4gY29weSBzdHlsZXMgZnJvbSB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL21uYW91bW92L29ic2lkaWFuLWRldi11dGlscy9yZWxlYXNlcy9sYXRlc3QvZG93bmxvYWQvc3R5bGVzLmNzc30uXG4gKi9cbmV4cG9ydCBjbGFzcyBDb2RlSGlnaGxpZ2h0ZXJDb21wb25lbnQgZXh0ZW5kcyBWYWx1ZUNvbXBvbmVudDxzdHJpbmc+IGltcGxlbWVudHMgVGV4dEJhc2VkQ29tcG9uZW50PHN0cmluZz4sIFZhbGlkYXRvckNvbXBvbmVudCwgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmc8c3RyaW5nPiB7XG4gIC8qKlxuICAgKiBBbiBpbnB1dCBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBpbnB1dCBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGlucHV0RWwoKTogSFRNTFRleHRBcmVhRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMudGV4dEFyZWFDb21wb25lbnQuaW5wdXRFbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWxpZGF0b3IgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsaWRhdG9yIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBnZXQgdmFsaWRhdG9yRWwoKTogVmFsaWRhdG9yRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuaW5wdXRFbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgYDxjb2RlPmAgZWxlbWVudCB0aGF0IHJlbmRlcnMgdGhlIHN5bnRheC1oaWdobGlnaHRlZCBvdmVybGF5LiBTdWJjbGFzc2VzIGN1c3RvbWl6aW5nIHRoZSBoaWdobGlnaHRpbmcgY2FuIHRhcmdldCBpdC5cbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBjb2RlRWw6IEhUTUxFbGVtZW50O1xuXG4gIC8qKlxuICAgKiBUaGUgYDxwcmU+YCBlbGVtZW50IHRoYXQgd3JhcHMgdGhlIGhpZ2hsaWdodGVkIGNvZGUgb3ZlcmxheS4gU3ViY2xhc3NlcyBjdXN0b21pemluZyB0aGUgaGlnaGxpZ2h0aW5nIGNhbiB0YXJnZXQgaXQuXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcHJlRWw6IEhUTUxFbGVtZW50O1xuXG4gIC8qKlxuICAgKiBUaGUgaW5uZXIgdGV4dCBhcmVhIGNvbXBvbmVudC5cbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSB0ZXh0QXJlYUNvbXBvbmVudDogVGV4dEFyZWFDb21wb25lbnQ7XG5cbiAgcHJpdmF0ZSBwbGFjZWhvbGRlciA9ICcnO1xuICBwcml2YXRlIHNpbXVsYXRlQ2hhbmdlQ2FsbGJhY2s/OiAoKSA9PiB2b2lkO1xuICBwcml2YXRlIHRhYlNpemU6IG51bWJlcjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBtdWx0aXBsZSB0ZXh0IGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGNvbnRhaW5lckVsIC0gVGhlIGNvbnRhaW5lciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29udGFpbmVyRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgc3VwZXIoKTtcbiAgICBhZGRQbHVnaW5Dc3NDbGFzc2VzKGNvbnRhaW5lckVsLCBDc3NDbGFzcy5Db2RlSGlnaGxpZ2h0ZXJDb21wb25lbnQpO1xuXG4gICAgY29uc3Qgd3JhcHBlciA9IGNvbnRhaW5lckVsLmNyZWF0ZURpdigpO1xuICAgIGFkZFBsdWdpbkNzc0NsYXNzZXMod3JhcHBlciwgQ3NzQ2xhc3MuU2V0dGluZ0NvbXBvbmVudFdyYXBwZXIpO1xuXG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudCA9IG5ldyBUZXh0QXJlYUNvbXBvbmVudCh3cmFwcGVyKTtcbiAgICB0aGlzLnByZUVsID0gd3JhcHBlci5jcmVhdGVFbCgncHJlJywge1xuICAgICAgYXR0cjoge1xuICAgICAgICB0YWJJbmRleDogJy0xJ1xuICAgICAgfVxuICAgIH0pO1xuICAgIHRoaXMuY29kZUVsID0gdGhpcy5wcmVFbC5jcmVhdGVFbCgnY29kZScsIHtcbiAgICAgIGF0dHI6IHtcbiAgICAgICAgdGFiSW5kZXg6ICctMSdcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuaW5wdXRFbC5hZGRFdmVudExpc3RlbmVyKCdpbnB1dCcsIGNvbnZlcnRBc3luY1RvU3luYyh0aGlzLnVwZGF0ZUhpZ2hsaWdodGVkQ29kZS5iaW5kKHRoaXMpKSk7XG4gICAgdGhpcy5pbnB1dEVsLmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIHRoaXMuaGFuZGxlU2Nyb2xsLmJpbmQodGhpcykpO1xuICAgIHRoaXMuaW5wdXRFbC5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgdGhpcy5oYW5kbGVLZXlEb3duLmJpbmQodGhpcykpO1xuICAgIGNvbnN0IERFRkFVTFRfVEFCX1NJWkUgPSAyO1xuICAgIHRoaXMudGFiU2l6ZSA9IERFRkFVTFRfVEFCX1NJWkU7XG4gIH1cblxuICAvKipcbiAgICogRW1wdGllcyB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGVtcHR5KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0VmFsdWUoJycpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGdldFZhbHVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudGV4dEFyZWFDb21wb25lbnQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIGNvbXBvbmVudCBpcyBlbXB0eS5cbiAgICpcbiAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSBjb21wb25lbnQgaXMgZW1wdHksIGBmYWxzZWAgb3RoZXJ3aXNlLlxuICAgKi9cbiAgcHVibGljIGlzRW1wdHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudGV4dEFyZWFDb21wb25lbnQuZ2V0VmFsdWUoKSA9PT0gJyc7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhIGNoYW5nZSBsaXN0ZW5lciB0byB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gY2FsbGJhY2sgLSBUaGUgY2FsbGJhY2sgdG8gY2FsbCB3aGVuIHRoZSB2YWx1ZSBjaGFuZ2VzLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG9uQ2hhbmdlKGNhbGxiYWNrOiAobmV3VmFsdWU6IHN0cmluZykgPT4gdm9pZCk6IHRoaXMge1xuICAgIGNvbnN0IGNoYW5nZUhhbmRsZXIgPSAoKTogdm9pZCA9PiB7XG4gICAgICBjYWxsYmFjayh0aGlzLmdldFZhbHVlKCkpO1xuICAgIH07XG4gICAgdGhpcy5zaW11bGF0ZUNoYW5nZUNhbGxiYWNrID0gY2hhbmdlSGFuZGxlcjtcbiAgICB0aGlzLnRleHRBcmVhQ29tcG9uZW50Lm9uQ2hhbmdlKGNoYW5nZUhhbmRsZXIpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBkaXNhYmxlZCAtIFRoZSBkaXNhYmxlZCBzdGF0ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0RGlzYWJsZWQoZGlzYWJsZWQ6IGJvb2xlYW4pOiB0aGlzIHtcbiAgICBzdXBlci5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgbGFuZ3VhZ2UgZm9yIGNvZGUgaGlnaGxpZ2h0aW5nLlxuICAgKlxuICAgKiBAcGFyYW0gbGFuZ3VhZ2UgLSBUaGUgbGFuZ3VhZ2UgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldExhbmd1YWdlKGxhbmd1YWdlOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBjb25zdCBMQU5HVUFHRV9DTEFTU19QUkVGSVggPSAnbGFuZ3VhZ2UtJztcbiAgICBmb3IgKGNvbnN0IGVsIG9mIFt0aGlzLnByZUVsLCB0aGlzLmNvZGVFbF0pIHtcbiAgICAgIGZvciAoY29uc3QgY2xzIG9mIEFycmF5LmZyb20oZWwuY2xhc3NMaXN0KSkge1xuICAgICAgICBpZiAoY2xzLnN0YXJ0c1dpdGgoTEFOR1VBR0VfQ0xBU1NfUFJFRklYKSkge1xuICAgICAgICAgIGVsLmNsYXNzTGlzdC5yZW1vdmUoY2xzKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgZWwuY2xhc3NMaXN0LmFkZChgJHtMQU5HVUFHRV9DTEFTU19QUkVGSVh9JHtsYW5ndWFnZX1gKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcGxhY2Vob2xkZXIgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHBsYWNlaG9sZGVyIC0gVGhlIHBsYWNlaG9sZGVyIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRQbGFjZWhvbGRlcihwbGFjZWhvbGRlcjogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy5wbGFjZWhvbGRlciA9IHBsYWNlaG9sZGVyO1xuICAgIGludm9rZUFzeW5jU2FmZWx5KHRoaXMudXBkYXRlSGlnaGxpZ2h0ZWRDb2RlLmJpbmQodGhpcykpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHBsYWNlaG9sZGVyIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBwbGFjZWhvbGRlclZhbHVlIC0gVGhlIHBsYWNlaG9sZGVyIHZhbHVlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRQbGFjZWhvbGRlclZhbHVlKHBsYWNlaG9sZGVyVmFsdWU6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMuc2V0UGxhY2Vob2xkZXIocGxhY2Vob2xkZXJWYWx1ZSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdGFiIHNpemUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHRhYlNpemUgLSBUaGUgdGFiIHNpemUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldFRhYlNpemUodGFiU2l6ZTogbnVtYmVyKTogdGhpcyB7XG4gICAgdGhpcy50YWJTaXplID0gdGFiU2l6ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHNldFZhbHVlKHZhbHVlOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnRleHRBcmVhQ29tcG9uZW50LnNldFZhbHVlKHZhbHVlKTtcbiAgICBpbnZva2VBc3luY1NhZmVseSh0aGlzLnVwZGF0ZUhpZ2hsaWdodGVkQ29kZS5iaW5kKHRoaXMpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTaW11bGF0ZSBhIGNoYW5nZSBldmVudC5cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgVXNlIG9ubHkgZnJvbSB0ZXN0cyB0byBzaW11bGF0ZSBhIGNoYW5nZSBldmVudC5cbiAgICovXG4gIHB1YmxpYyBzaW11bGF0ZUNoYW5nZV9fKCk6IHZvaWQge1xuICAgIHRoaXMuc2ltdWxhdGVDaGFuZ2VDYWxsYmFjaz8uKCk7XG4gIH1cblxuICAvKipcbiAgICogUmUtcmVuZGVycyB0aGUgaGlnaGxpZ2h0ZWQgY29kZSBvdmVybGF5IGZyb20gdGhlIGN1cnJlbnQgdGV4dCBhcmVhIHZhbHVlLiBTdWJjbGFzc2VzIGNhbiBvdmVycmlkZSB0byBjdXN0b21pemUgdGhlIHJlbmRlci5cbiAgICovXG4gIHByb3RlY3RlZCBhc3luYyB1cGRhdGVIaWdobGlnaHRlZENvZGUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5jb2RlRWwudGV4dENvbnRlbnQgPSB0aGlzLmlucHV0RWwudmFsdWUgfHwgdGhpcy5wbGFjZWhvbGRlcjtcbiAgICBjb25zdCBwcmlzbSA9IGF3YWl0IGxvYWRQcmlzbSgpO1xuICAgIHByaXNtLmhpZ2hsaWdodEVsZW1lbnQodGhpcy5jb2RlRWwpO1xuICAgIHRoaXMucHJlRWwudG9nZ2xlQ2xhc3MoQ3NzQ2xhc3MuSXNQbGFjZWhvbGRlciwgdGhpcy5pc0VtcHR5KCkpO1xuICAgIHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgY29uc3QgZ2FwID0gTWF0aC5tYXgoMCwgdGhpcy5pbnB1dEVsLnNjcm9sbEhlaWdodCAtIHRoaXMucHJlRWwuc2Nyb2xsSGVpZ2h0KTtcbiAgICAgIHRoaXMucHJlRWwuc2V0Q3NzUHJvcHMoe1xuICAgICAgICAnLS1ib3R0b20tZ2FwJzogdG9QeChnYXApXG4gICAgICB9KTtcbiAgICAgIHRoaXMuaGFuZGxlU2Nyb2xsKCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUtleURvd24oZXZ0OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGV2dC5rZXkgIT09ICdUYWInKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgZXZ0LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICBpZiAoZXZ0LmN0cmxLZXkgfHwgZXZ0Lm1ldGFLZXkpIHtcbiAgICAgIGNvbnN0IGZvY3VzYWJsZXMgPSBBcnJheS5mcm9tKGFjdGl2ZURvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGw8SFRNTEVsZW1lbnQ+KFxuICAgICAgICAnOmlzKGEsIGJ1dHRvbiwgaW5wdXQsIHNlbGVjdCwgdGV4dGFyZWEsIFt0YWJpbmRleF0pOm5vdChbdGFiaW5kZXg9XCItMVwiXSk6bm90KDpkaXNhYmxlZCk6bm90KFt0eXBlPVwiaGlkZGVuXCJdKSdcbiAgICAgICkpO1xuICAgICAgY29uc3QgaW5kZXggPSBmb2N1c2FibGVzLmluZGV4T2YodGhpcy5pbnB1dEVsKTtcbiAgICAgIGNvbnN0IGRlbHRhSW5kZXggPSBldnQuc2hpZnRLZXkgPyAtMSA6IDE7XG4gICAgICBjb25zdCBuZXh0Q29udHJvbCA9IGZvY3VzYWJsZXNbKGluZGV4ICsgZGVsdGFJbmRleCArIGZvY3VzYWJsZXMubGVuZ3RoKSAlIGZvY3VzYWJsZXMubGVuZ3RoXTtcbiAgICAgIG5leHRDb250cm9sPy5mb2N1cygpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG9sZFZhbHVlID0gdGhpcy5nZXRWYWx1ZSgpO1xuICAgIGNvbnN0IHNlbGVjdGlvblN0YXJ0ID0gdGhpcy5pbnB1dEVsLnNlbGVjdGlvblN0YXJ0O1xuICAgIGNvbnN0IHNlbGVjdGlvbkVuZCA9IHRoaXMuaW5wdXRFbC5zZWxlY3Rpb25FbmQ7XG4gICAgY29uc3QgYmVmb3JlU2VsZWN0aW9uID0gb2xkVmFsdWUuc2xpY2UoMCwgc2VsZWN0aW9uU3RhcnQpO1xuICAgIGNvbnN0IGFmdGVyU2VsZWN0aW9uID0gb2xkVmFsdWUuc2xpY2Uoc2VsZWN0aW9uRW5kKTtcbiAgICBjb25zdCB0YWJzID0gJyAnLnJlcGVhdCh0aGlzLnRhYlNpemUpO1xuICAgIGxldCBuZXdCZWZvcmVTZWxlY3Rpb24gPSBiZWZvcmVTZWxlY3Rpb247XG5cbiAgICBpZiAoZXZ0LnNoaWZ0S2V5KSB7XG4gICAgICBpZiAoYmVmb3JlU2VsZWN0aW9uLmVuZHNXaXRoKHRhYnMpKSB7XG4gICAgICAgIG5ld0JlZm9yZVNlbGVjdGlvbiA9IGJlZm9yZVNlbGVjdGlvbi5zbGljZSgwLCAtdGhpcy50YWJTaXplKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgbmV3QmVmb3JlU2VsZWN0aW9uID0gYmVmb3JlU2VsZWN0aW9uICsgdGFicztcbiAgICB9XG5cbiAgICBjb25zdCBuZXdWYWx1ZSA9IGAke25ld0JlZm9yZVNlbGVjdGlvbn0ke2FmdGVyU2VsZWN0aW9ufWA7XG4gICAgdGhpcy5zZXRWYWx1ZShuZXdWYWx1ZSk7XG4gICAgdGhpcy5pbnB1dEVsLnNlbGVjdGlvblN0YXJ0ID0gbmV3QmVmb3JlU2VsZWN0aW9uLmxlbmd0aDtcbiAgICB0aGlzLmlucHV0RWwuc2VsZWN0aW9uRW5kID0gbmV3QmVmb3JlU2VsZWN0aW9uLmxlbmd0aDtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlU2Nyb2xsKCk6IHZvaWQge1xuICAgIHRoaXMucHJlRWwuc2Nyb2xsVG9wID0gdGhpcy5pbnB1dEVsLnNjcm9sbFRvcDtcbiAgICB0aGlzLnByZUVsLnNjcm9sbExlZnQgPSB0aGlzLmlucHV0RWwuc2Nyb2xsTGVmdDtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNQSxTQUFTLGlCQUFpQjtBQUMxQjtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQVdQO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBQ1AsU0FBUyxZQUFZO0FBQ3JCLFNBQVMsZ0JBQWdCO0FBQ3pCLFNBQVMsMkJBQTJCO0FBVzdCLE1BQU0saUNBQWlDLGVBQTJIO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTXZLLElBQVcsVUFBK0I7QUFDeEMsV0FBTyxLQUFLLGtCQUFrQjtBQUFBLEVBQ2hDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0EsSUFBVyxjQUFnQztBQUN6QyxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLbUI7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLQTtBQUFBLEVBRVgsY0FBYztBQUFBLEVBQ2Q7QUFBQSxFQUNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0QsWUFBWSxhQUEwQjtBQUMzQyxVQUFNO0FBQ04sd0JBQW9CLGFBQWEsU0FB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
@@ -4,7 +4,7 @@
4
4
  *
5
5
  * Contains a component that displays and edits a multi-select dropdown.
6
6
  */
7
- import { ValueComponent } from 'obsidian';
7
+ import { DropdownComponent, ValueComponent } from 'obsidian';
8
8
  import type { ValidatorElement } from '../../html-element.mjs';
9
9
  import type { ValidatorComponent } from './validator-component.mjs';
10
10
  import type { ValueComponentWithChangeTracking } from './value-component-with-change-tracking.mjs';
@@ -30,7 +30,10 @@ export declare class MultipleDropdownComponent extends ValueComponent<readonly s
30
30
  * @returns The validator element.
31
31
  */
32
32
  get validatorEl(): ValidatorElement;
33
- private readonly dropdownComponent;
33
+ /**
34
+ * The inner dropdown component.
35
+ */
36
+ protected readonly dropdownComponent: DropdownComponent;
34
37
  private simulateChangeCallback?;
35
38
  /**
36
39
  * Creates a new multiple dropdown component.
@@ -44,6 +44,9 @@ class MultipleDropdownComponent extends ValueComponent {
44
44
  get validatorEl() {
45
45
  return this.selectEl;
46
46
  }
47
+ /**
48
+ * The inner dropdown component.
49
+ */
47
50
  dropdownComponent;
48
51
  simulateChangeCallback;
49
52
  /**
@@ -135,4 +138,4 @@ class MultipleDropdownComponent extends ValueComponent {
135
138
  export {
136
139
  MultipleDropdownComponent
137
140
  };
138
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9tdWx0aXBsZS1kcm9wZG93bi1jb21wb25lbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBDb250YWlucyBhIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhIG11bHRpLXNlbGVjdCBkcm9wZG93bi5cbiAqL1xuXG5pbXBvcnQge1xuICBEcm9wZG93bkNvbXBvbmVudCxcbiAgVmFsdWVDb21wb25lbnRcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgdHlwZSB7IFZhbGlkYXRvckVsZW1lbnQgfSBmcm9tICcuLi8uLi9odG1sLWVsZW1lbnQudHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycyAtLSBXZSBuZWVkIHRvIGltcG9ydCBgaW5pdFBsdWdpbkNvbnRleHRgIHRvIHVzZSBpdCBpbiB0aGUgdHNkb2NzLlxuaW1wb3J0IHR5cGUgeyBpbml0UGx1Z2luQ29udGV4dCB9IGZyb20gJy4uL3BsdWdpbi9wbHVnaW4tY29udGV4dC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBTZXR0aW5nRXhgIHRvIHVzZSBpdCBpbiB0aGUgdHNkb2NzLlxuaW1wb3J0IHR5cGUgeyBTZXR0aW5nRXggfSBmcm9tICcuLi9zZXR0aW5nLWV4LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi92YWxpZGF0b3ItY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcgfSBmcm9tICcuL3ZhbHVlLWNvbXBvbmVudC13aXRoLWNoYW5nZS10cmFja2luZy50cyc7XG5cbmltcG9ydCB7IENzc0NsYXNzIH0gZnJvbSAnLi4vY3NzLWNsYXNzLnRzJztcbmltcG9ydCB7IGFkZFBsdWdpbkNzc0NsYXNzZXMgfSBmcm9tICcuLi9wbHVnaW4vcGx1Z2luLWNvbnRleHQudHMnO1xuXG4vKipcbiAqIEEgbXVsdGktc2VsZWN0IGRyb3Bkb3duIGNvbXBvbmVudC5cbiAqXG4gKiBZb3UgY2FuIGFkZCB0aGlzIGNvbXBvbmVudCB1c2luZyB7QGxpbmsgU2V0dGluZ0V4LmFkZE11bHRpcGxlRHJvcGRvd259LlxuICpcbiAqIEluIG9yZGVyIHRvIGFkZCB0aGUgc3R5bGVzIGZvciB0aGUgY29tcG9uZW50LCB1c2Uge0BsaW5rIGluaXRQbHVnaW5Db250ZXh0fSBpbiB5b3VyIHBsdWdpbidzIGBvbmxvYWQoKWAgZnVuY3Rpb24uXG4gKlxuICogQWx0ZXJuYXRpdmVseSwgeW91IGNhbiBjb3B5IHN0eWxlcyBmcm9tIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vbW5hb3Vtb3Yvb2JzaWRpYW4tZGV2LXV0aWxzL3JlbGVhc2VzL2xhdGVzdC9kb3dubG9hZC9zdHlsZXMuY3NzfS5cbiAqL1xuZXhwb3J0IGNsYXNzIE11bHRpcGxlRHJvcGRvd25Db21wb25lbnQgZXh0ZW5kcyBWYWx1ZUNvbXBvbmVudDxyZWFkb25seSBzdHJpbmdbXT4gaW1wbGVtZW50cyBWYWxpZGF0b3JDb21wb25lbnQsIFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPHJlYWRvbmx5IHN0cmluZ1tdPiB7XG4gIC8qKlxuICAgKiBBIHNlbGVjdCBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBzZWxlY3QgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBnZXQgc2VsZWN0RWwoKTogSFRNTFNlbGVjdEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmRyb3Bkb3duQ29tcG9uZW50LnNlbGVjdEVsO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgdmFsaWRhdG9yIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbGlkYXRvciBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGdldCB2YWxpZGF0b3JFbCgpOiBWYWxpZGF0b3JFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RFbDtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgZHJvcGRvd25Db21wb25lbnQ6IERyb3Bkb3duQ29tcG9uZW50O1xuXG4gIHByaXZhdGUgc2ltdWxhdGVDaGFuZ2VDYWxsYmFjaz86ICgpID0+IHZvaWQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgbXVsdGlwbGUgZHJvcGRvd24gY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gY29udGFpbmVyRWwgLSBUaGUgY29udGFpbmVyIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb250YWluZXJFbDogSFRNTEVsZW1lbnQpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQgPSBuZXcgRHJvcGRvd25Db21wb25lbnQoY29udGFpbmVyRWwpO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2VsZWN0RWwubXVsdGlwbGUgPSB0cnVlO1xuICAgIGFkZFBsdWdpbkNzc0NsYXNzZXMoY29udGFpbmVyRWwsIENzc0NsYXNzLk11bHRpcGxlRHJvcGRvd25Db21wb25lbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYW4gb3B0aW9uIHRvIHRoZSBkcm9wZG93bi5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIG9mIHRoZSBvcHRpb24uXG4gICAqIEBwYXJhbSBkaXNwbGF5IC0gVGhlIGRpc3BsYXkgdGV4dCBvZiB0aGUgb3B0aW9uLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGFkZE9wdGlvbih2YWx1ZTogc3RyaW5nLCBkaXNwbGF5OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLmRyb3Bkb3duQ29tcG9uZW50LmFkZE9wdGlvbih2YWx1ZSwgZGlzcGxheSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBtdWx0aXBsZSBvcHRpb25zIHRvIHRoZSBkcm9wZG93bi5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyB0byBhZGQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgYWRkT3B0aW9ucyhvcHRpb25zOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KTogdGhpcyB7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5hZGRPcHRpb25zKG9wdGlvbnMpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldFZhbHVlKCk6IHJlYWRvbmx5IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmRyb3Bkb3duQ29tcG9uZW50LnNlbGVjdEVsLnNlbGVjdGVkT3B0aW9ucykubWFwKChvKSA9PiBvLnZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNoYW5nZWQuXG4gICAqXG4gICAqIEBwYXJhbSBjYWxsYmFjayAtIFRoZSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNoYW5nZWQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb25DaGFuZ2UoY2FsbGJhY2s6ICh2YWx1ZTogcmVhZG9ubHkgc3RyaW5nW10pID0+IHZvaWQpOiB0aGlzIHtcbiAgICBjb25zdCBjaGFuZ2VIYW5kbGVyID0gKCk6IHZvaWQgPT4ge1xuICAgICAgY2FsbGJhY2sodGhpcy5nZXRWYWx1ZSgpKTtcbiAgICB9O1xuICAgIHRoaXMuc2ltdWxhdGVDaGFuZ2VDYWxsYmFjayA9IGNoYW5nZUhhbmRsZXI7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5vbkNoYW5nZShjaGFuZ2VIYW5kbGVyKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gZGlzYWJsZWQgLSBUaGUgZGlzYWJsZWQgc3RhdGUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHNldERpc2FibGVkKGRpc2FibGVkOiBib29sZWFuKTogdGhpcyB7XG4gICAgc3VwZXIuc2V0RGlzYWJsZWQoZGlzYWJsZWQpO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2V0RGlzYWJsZWQoZGlzYWJsZWQpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgc2V0VmFsdWUodmFsdWU6IHJlYWRvbmx5IHN0cmluZ1tdKTogdGhpcyB7XG4gICAgZm9yIChjb25zdCBvcHRpb24gb2YgQXJyYXkuZnJvbSh0aGlzLmRyb3Bkb3duQ29tcG9uZW50LnNlbGVjdEVsLm9wdGlvbnMpKSB7XG4gICAgICBvcHRpb24uc2VsZWN0ZWQgPSB2YWx1ZS5pbmNsdWRlcyhvcHRpb24udmFsdWUpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNpbXVsYXRlIGEgY2hhbmdlIGV2ZW50LlxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCBVc2Ugb25seSBmcm9tIHRlc3RzIHRvIHNpbXVsYXRlIGEgY2hhbmdlIGV2ZW50LlxuICAgKi9cbiAgcHVibGljIHNpbXVsYXRlQ2hhbmdlX18oKTogdm9pZCB7XG4gICAgdGhpcy5zaW11bGF0ZUNoYW5nZUNhbGxiYWNrPy4oKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQVVQLFNBQVMsZ0JBQWdCO0FBQ3pCLFNBQVMsMkJBQTJCO0FBVzdCLE1BQU0sa0NBQWtDLGVBQXFIO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTWxLLElBQVcsV0FBOEI7QUFDdkMsV0FBTyxLQUFLLGtCQUFrQjtBQUFBLEVBQ2hDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0EsSUFBVyxjQUFnQztBQUN6QyxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQUEsRUFFaUI7QUFBQSxFQUVUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0QsWUFBWSxhQUEwQjtBQUMzQyxVQUFNO0FBQ04sU0FBSyxvQkFBb0IsSUFBSSxrQkFBa0IsV0FBVztBQUMxRCxTQUFLLGtCQUFrQixTQUFTLFdBQVc7QUFDM0Msd0JBQW9CLGFBQWEsU0FBUyx5QkFBeUI7QUFBQSxFQUNyRTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTTyxVQUFVLE9BQWUsU0FBdUI7QUFDckQsU0FBSyxrQkFBa0IsVUFBVSxPQUFPLE9BQU87QUFDL0MsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFdBQVcsU0FBdUM7QUFDdkQsU0FBSyxrQkFBa0IsV0FBVyxPQUFPO0FBQ3pDLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT08sV0FBOEI7QUFDbkMsV0FBTyxNQUFNLEtBQUssS0FBSyxrQkFBa0IsU0FBUyxlQUFlLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLO0FBQUEsRUFDdkY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFNBQVMsVUFBb0Q7QUFDbEUsVUFBTSxnQkFBZ0IsTUFBWTtBQUNoQyxlQUFTLEtBQUssU0FBUyxDQUFDO0FBQUEsSUFDMUI7QUFDQSxTQUFLLHlCQUF5QjtBQUM5QixTQUFLLGtCQUFrQixTQUFTLGFBQWE7QUFDN0MsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixZQUFZLFVBQXlCO0FBQ25ELFVBQU0sWUFBWSxRQUFRO0FBQzFCLFNBQUssa0JBQWtCLFlBQVksUUFBUTtBQUMzQyxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sU0FBUyxPQUFnQztBQUM5QyxlQUFXLFVBQVUsTUFBTSxLQUFLLEtBQUssa0JBQWtCLFNBQVMsT0FBTyxHQUFHO0FBQ3hFLGFBQU8sV0FBVyxNQUFNLFNBQVMsT0FBTyxLQUFLO0FBQUEsSUFDL0M7QUFFQSxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLG1CQUF5QjtBQUM5QixTQUFLLHlCQUF5QjtBQUFBLEVBQ2hDO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
141
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9tdWx0aXBsZS1kcm9wZG93bi1jb21wb25lbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBDb250YWlucyBhIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhIG11bHRpLXNlbGVjdCBkcm9wZG93bi5cbiAqL1xuXG5pbXBvcnQge1xuICBEcm9wZG93bkNvbXBvbmVudCxcbiAgVmFsdWVDb21wb25lbnRcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgdHlwZSB7IFZhbGlkYXRvckVsZW1lbnQgfSBmcm9tICcuLi8uLi9odG1sLWVsZW1lbnQudHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycyAtLSBXZSBuZWVkIHRvIGltcG9ydCBgaW5pdFBsdWdpbkNvbnRleHRgIHRvIHVzZSBpdCBpbiB0aGUgdHNkb2NzLlxuaW1wb3J0IHR5cGUgeyBpbml0UGx1Z2luQ29udGV4dCB9IGZyb20gJy4uL3BsdWdpbi9wbHVnaW4tY29udGV4dC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBTZXR0aW5nRXhgIHRvIHVzZSBpdCBpbiB0aGUgdHNkb2NzLlxuaW1wb3J0IHR5cGUgeyBTZXR0aW5nRXggfSBmcm9tICcuLi9zZXR0aW5nLWV4LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi92YWxpZGF0b3ItY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcgfSBmcm9tICcuL3ZhbHVlLWNvbXBvbmVudC13aXRoLWNoYW5nZS10cmFja2luZy50cyc7XG5cbmltcG9ydCB7IENzc0NsYXNzIH0gZnJvbSAnLi4vY3NzLWNsYXNzLnRzJztcbmltcG9ydCB7IGFkZFBsdWdpbkNzc0NsYXNzZXMgfSBmcm9tICcuLi9wbHVnaW4vcGx1Z2luLWNvbnRleHQudHMnO1xuXG4vKipcbiAqIEEgbXVsdGktc2VsZWN0IGRyb3Bkb3duIGNvbXBvbmVudC5cbiAqXG4gKiBZb3UgY2FuIGFkZCB0aGlzIGNvbXBvbmVudCB1c2luZyB7QGxpbmsgU2V0dGluZ0V4LmFkZE11bHRpcGxlRHJvcGRvd259LlxuICpcbiAqIEluIG9yZGVyIHRvIGFkZCB0aGUgc3R5bGVzIGZvciB0aGUgY29tcG9uZW50LCB1c2Uge0BsaW5rIGluaXRQbHVnaW5Db250ZXh0fSBpbiB5b3VyIHBsdWdpbidzIGBvbmxvYWQoKWAgZnVuY3Rpb24uXG4gKlxuICogQWx0ZXJuYXRpdmVseSwgeW91IGNhbiBjb3B5IHN0eWxlcyBmcm9tIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vbW5hb3Vtb3Yvb2JzaWRpYW4tZGV2LXV0aWxzL3JlbGVhc2VzL2xhdGVzdC9kb3dubG9hZC9zdHlsZXMuY3NzfS5cbiAqL1xuZXhwb3J0IGNsYXNzIE11bHRpcGxlRHJvcGRvd25Db21wb25lbnQgZXh0ZW5kcyBWYWx1ZUNvbXBvbmVudDxyZWFkb25seSBzdHJpbmdbXT4gaW1wbGVtZW50cyBWYWxpZGF0b3JDb21wb25lbnQsIFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPHJlYWRvbmx5IHN0cmluZ1tdPiB7XG4gIC8qKlxuICAgKiBBIHNlbGVjdCBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBzZWxlY3QgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBnZXQgc2VsZWN0RWwoKTogSFRNTFNlbGVjdEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmRyb3Bkb3duQ29tcG9uZW50LnNlbGVjdEVsO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgdmFsaWRhdG9yIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbGlkYXRvciBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGdldCB2YWxpZGF0b3JFbCgpOiBWYWxpZGF0b3JFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RFbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgaW5uZXIgZHJvcGRvd24gY29tcG9uZW50LlxuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRyb3Bkb3duQ29tcG9uZW50OiBEcm9wZG93bkNvbXBvbmVudDtcblxuICBwcml2YXRlIHNpbXVsYXRlQ2hhbmdlQ2FsbGJhY2s/OiAoKSA9PiB2b2lkO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IG11bHRpcGxlIGRyb3Bkb3duIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGNvbnRhaW5lckVsIC0gVGhlIGNvbnRhaW5lciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29udGFpbmVyRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmRyb3Bkb3duQ29tcG9uZW50ID0gbmV3IERyb3Bkb3duQ29tcG9uZW50KGNvbnRhaW5lckVsKTtcbiAgICB0aGlzLmRyb3Bkb3duQ29tcG9uZW50LnNlbGVjdEVsLm11bHRpcGxlID0gdHJ1ZTtcbiAgICBhZGRQbHVnaW5Dc3NDbGFzc2VzKGNvbnRhaW5lckVsLCBDc3NDbGFzcy5NdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGFuIG9wdGlvbiB0byB0aGUgZHJvcGRvd24uXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSBvZiB0aGUgb3B0aW9uLlxuICAgKiBAcGFyYW0gZGlzcGxheSAtIFRoZSBkaXNwbGF5IHRleHQgb2YgdGhlIG9wdGlvbi5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBhZGRPcHRpb24odmFsdWU6IHN0cmluZywgZGlzcGxheTogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5hZGRPcHRpb24odmFsdWUsIGRpc3BsYXkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgbXVsdGlwbGUgb3B0aW9ucyB0byB0aGUgZHJvcGRvd24uXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgdG8gYWRkLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGFkZE9wdGlvbnMob3B0aW9uczogUmVjb3JkPHN0cmluZywgc3RyaW5nPik6IHRoaXMge1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuYWRkT3B0aW9ucyhvcHRpb25zKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBnZXRWYWx1ZSgpOiByZWFkb25seSBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5kcm9wZG93bkNvbXBvbmVudC5zZWxlY3RFbC5zZWxlY3RlZE9wdGlvbnMpLm1hcCgobykgPT4gby52YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgY2FsbGJhY2sgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBpcyBjaGFuZ2VkLlxuICAgKlxuICAgKiBAcGFyYW0gY2FsbGJhY2sgLSBUaGUgY2FsbGJhY2sgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBpcyBjaGFuZ2VkLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG9uQ2hhbmdlKGNhbGxiYWNrOiAodmFsdWU6IHJlYWRvbmx5IHN0cmluZ1tdKSA9PiB2b2lkKTogdGhpcyB7XG4gICAgY29uc3QgY2hhbmdlSGFuZGxlciA9ICgpOiB2b2lkID0+IHtcbiAgICAgIGNhbGxiYWNrKHRoaXMuZ2V0VmFsdWUoKSk7XG4gICAgfTtcbiAgICB0aGlzLnNpbXVsYXRlQ2hhbmdlQ2FsbGJhY2sgPSBjaGFuZ2VIYW5kbGVyO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQub25DaGFuZ2UoY2hhbmdlSGFuZGxlcik7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgZGlzYWJsZWQgc3RhdGUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGRpc2FibGVkIC0gVGhlIGRpc2FibGVkIHN0YXRlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBzZXREaXNhYmxlZChkaXNhYmxlZDogYm9vbGVhbik6IHRoaXMge1xuICAgIHN1cGVyLnNldERpc2FibGVkKGRpc2FibGVkKTtcbiAgICB0aGlzLmRyb3Bkb3duQ29tcG9uZW50LnNldERpc2FibGVkKGRpc2FibGVkKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldFZhbHVlKHZhbHVlOiByZWFkb25seSBzdHJpbmdbXSk6IHRoaXMge1xuICAgIGZvciAoY29uc3Qgb3B0aW9uIG9mIEFycmF5LmZyb20odGhpcy5kcm9wZG93bkNvbXBvbmVudC5zZWxlY3RFbC5vcHRpb25zKSkge1xuICAgICAgb3B0aW9uLnNlbGVjdGVkID0gdmFsdWUuaW5jbHVkZXMob3B0aW9uLnZhbHVlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTaW11bGF0ZSBhIGNoYW5nZSBldmVudC5cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgVXNlIG9ubHkgZnJvbSB0ZXN0cyB0byBzaW11bGF0ZSBhIGNoYW5nZSBldmVudC5cbiAgICovXG4gIHB1YmxpYyBzaW11bGF0ZUNoYW5nZV9fKCk6IHZvaWQge1xuICAgIHRoaXMuc2ltdWxhdGVDaGFuZ2VDYWxsYmFjaz8uKCk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUE7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFVUCxTQUFTLGdCQUFnQjtBQUN6QixTQUFTLDJCQUEyQjtBQVc3QixNQUFNLGtDQUFrQyxlQUFxSDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1sSyxJQUFXLFdBQThCO0FBQ3ZDLFdBQU8sS0FBSyxrQkFBa0I7QUFBQSxFQUNoQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9BLElBQVcsY0FBZ0M7QUFDekMsV0FBTyxLQUFLO0FBQUEsRUFDZDtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS21CO0FBQUEsRUFFWDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9ELFlBQVksYUFBMEI7QUFDM0MsVUFBTTtBQUNOLFNBQUssb0JBQW9CLElBQUksa0JBQWtCLFdBQVc7QUFDMUQsU0FBSyxrQkFBa0IsU0FBUyxXQUFXO0FBQzNDLHdCQUFvQixhQUFhLFNBQVMseUJBQXlCO0FBQUEsRUFDckU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU08sVUFBVSxPQUFlLFNBQXVCO0FBQ3JELFNBQUssa0JBQWtCLFVBQVUsT0FBTyxPQUFPO0FBQy9DLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxXQUFXLFNBQXVDO0FBQ3ZELFNBQUssa0JBQWtCLFdBQVcsT0FBTztBQUN6QyxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLFdBQThCO0FBQ25DLFdBQU8sTUFBTSxLQUFLLEtBQUssa0JBQWtCLFNBQVMsZUFBZSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSztBQUFBLEVBQ3ZGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxTQUFTLFVBQW9EO0FBQ2xFLFVBQU0sZ0JBQWdCLE1BQVk7QUFDaEMsZUFBUyxLQUFLLFNBQVMsQ0FBQztBQUFBLElBQzFCO0FBQ0EsU0FBSyx5QkFBeUI7QUFDOUIsU0FBSyxrQkFBa0IsU0FBUyxhQUFhO0FBQzdDLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsWUFBWSxVQUF5QjtBQUNuRCxVQUFNLFlBQVksUUFBUTtBQUMxQixTQUFLLGtCQUFrQixZQUFZLFFBQVE7QUFDM0MsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFNBQVMsT0FBZ0M7QUFDOUMsZUFBVyxVQUFVLE1BQU0sS0FBSyxLQUFLLGtCQUFrQixTQUFTLE9BQU8sR0FBRztBQUN4RSxhQUFPLFdBQVcsTUFBTSxTQUFTLE9BQU8sS0FBSztBQUFBLElBQy9DO0FBRUEsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPTyxtQkFBeUI7QUFDOUIsU0FBSyx5QkFBeUI7QUFBQSxFQUNoQztBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -4,7 +4,7 @@
4
4
  *
5
5
  * Contains a component that displays and edits multiple text values.
6
6
  */
7
- import { ValueComponent } from 'obsidian';
7
+ import { TextAreaComponent, ValueComponent } from 'obsidian';
8
8
  import type { ValidatorElement } from '../../html-element.mjs';
9
9
  import type { TextBasedComponent } from './text-based-component.mjs';
10
10
  import type { ValidatorComponent } from './validator-component.mjs';
@@ -31,8 +31,11 @@ export declare class MultipleTextComponent extends ValueComponent<readonly strin
31
31
  * @returns The validator element of the component.
32
32
  */
33
33
  get validatorEl(): ValidatorElement;
34
+ /**
35
+ * The inner text area component.
36
+ */
37
+ protected readonly textAreaComponent: TextAreaComponent;
34
38
  private simulateChangeCallback?;
35
- private readonly textAreaComponent;
36
39
  /**
37
40
  * Creates a new multiple text component.
38
41
  *
@@ -96,5 +99,11 @@ export declare class MultipleTextComponent extends ValueComponent<readonly strin
96
99
  * @deprecated Use only from tests to simulate a change event.
97
100
  */
98
101
  simulateChange__(): void;
99
- private valueToString;
102
+ /**
103
+ * Converts the value to the string shown in the text area. Subclasses can override to customize the serialization.
104
+ *
105
+ * @param value - The value to convert.
106
+ * @returns The string representation of the value.
107
+ */
108
+ protected valueToString(value: readonly string[]): string;
100
109
  }
@@ -44,8 +44,11 @@ class MultipleTextComponent extends ValueComponent {
44
44
  get validatorEl() {
45
45
  return this.inputEl;
46
46
  }
47
- simulateChangeCallback;
47
+ /**
48
+ * The inner text area component.
49
+ */
48
50
  textAreaComponent;
51
+ simulateChangeCallback;
49
52
  /**
50
53
  * Creates a new multiple text component.
51
54
  *
@@ -141,6 +144,12 @@ class MultipleTextComponent extends ValueComponent {
141
144
  simulateChange__() {
142
145
  this.simulateChangeCallback?.();
143
146
  }
147
+ /**
148
+ * Converts the value to the string shown in the text area. Subclasses can override to customize the serialization.
149
+ *
150
+ * @param value - The value to convert.
151
+ * @returns The string representation of the value.
152
+ */
144
153
  valueToString(value) {
145
154
  return value.join("\n");
146
155
  }
@@ -148,4 +157,4 @@ class MultipleTextComponent extends ValueComponent {
148
157
  export {
149
158
  MultipleTextComponent
150
159
  };
151
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9tdWx0aXBsZS10ZXh0LWNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENvbnRhaW5zIGEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIG11bHRpcGxlIHRleHQgdmFsdWVzLlxuICovXG5cbmltcG9ydCB7XG4gIFRleHRBcmVhQ29tcG9uZW50LFxuICBWYWx1ZUNvbXBvbmVudFxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yRWxlbWVudCB9IGZyb20gJy4uLy4uL2h0bWwtZWxlbWVudC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBpbml0UGx1Z2luQ29udGV4dGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IGluaXRQbHVnaW5Db250ZXh0IH0gZnJvbSAnLi4vcGx1Z2luL3BsdWdpbi1jb250ZXh0LnRzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYFNldHRpbmdFeGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IFNldHRpbmdFeCB9IGZyb20gJy4uL3NldHRpbmctZXgudHMnO1xuaW1wb3J0IHR5cGUgeyBUZXh0QmFzZWRDb21wb25lbnQgfSBmcm9tICcuL3RleHQtYmFzZWQtY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi92YWxpZGF0b3ItY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcgfSBmcm9tICcuL3ZhbHVlLWNvbXBvbmVudC13aXRoLWNoYW5nZS10cmFja2luZy50cyc7XG5cbmltcG9ydCB7IENzc0NsYXNzIH0gZnJvbSAnLi4vY3NzLWNsYXNzLnRzJztcbmltcG9ydCB7IGFkZFBsdWdpbkNzc0NsYXNzZXMgfSBmcm9tICcuLi9wbHVnaW4vcGx1Z2luLWNvbnRleHQudHMnO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIG11bHRpcGxlIHRleHQgdmFsdWVzLlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkTXVsdGlwbGVUZXh0fS5cbiAqXG4gKiBJbiBvcmRlciB0byBhZGQgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbXBvbmVudCwgdXNlIHtAbGluayBpbml0UGx1Z2luQ29udGV4dH0gaW4geW91ciBwbHVnaW4ncyBgb25sb2FkKClgIGZ1bmN0aW9uLlxuICpcbiAqIEFsdGVybmF0aXZlbHksIHlvdSBjYW4gY29weSBzdHlsZXMgZnJvbSB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL21uYW91bW92L29ic2lkaWFuLWRldi11dGlscy9yZWxlYXNlcy9sYXRlc3QvZG93bmxvYWQvc3R5bGVzLmNzc30uXG4gKi9cbmV4cG9ydCBjbGFzcyBNdWx0aXBsZVRleHRDb21wb25lbnQgZXh0ZW5kcyBWYWx1ZUNvbXBvbmVudDxyZWFkb25seSBzdHJpbmdbXT4gaW1wbGVtZW50cyBUZXh0QmFzZWRDb21wb25lbnQ8cmVhZG9ubHkgc3RyaW5nW10+LCBWYWxpZGF0b3JDb21wb25lbnQsIFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPHJlYWRvbmx5IHN0cmluZ1tdPiB7XG4gIC8qKlxuICAgKiBBbiBpbnB1dCBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBpbnB1dCBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGlucHV0RWwoKTogSFRNTFRleHRBcmVhRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMudGV4dEFyZWFDb21wb25lbnQuaW5wdXRFbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWxpZGF0b3IgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsaWRhdG9yIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBnZXQgdmFsaWRhdG9yRWwoKTogVmFsaWRhdG9yRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuaW5wdXRFbDtcbiAgfVxuXG4gIHByaXZhdGUgc2ltdWxhdGVDaGFuZ2VDYWxsYmFjaz86ICgpID0+IHZvaWQ7XG5cbiAgcHJpdmF0ZSByZWFkb25seSB0ZXh0QXJlYUNvbXBvbmVudDogVGV4dEFyZWFDb21wb25lbnQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgbXVsdGlwbGUgdGV4dCBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjb250YWluZXJFbCAtIFRoZSBjb250YWluZXIgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvbnRhaW5lckVsOiBIVE1MRWxlbWVudCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudCA9IG5ldyBUZXh0QXJlYUNvbXBvbmVudChjb250YWluZXJFbCk7XG4gICAgYWRkUGx1Z2luQ3NzQ2xhc3Nlcyhjb250YWluZXJFbCwgQ3NzQ2xhc3MuTXVsdGlwbGVUZXh0Q29tcG9uZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbXB0aWVzIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZW1wdHkoKTogdm9pZCB7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5zZXRWYWx1ZSgnJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0VmFsdWUoKTogcmVhZG9ubHkgc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLnRleHRBcmVhQ29tcG9uZW50LmdldFZhbHVlKCkuc3BsaXQoJ1xcbicpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tcG9uZW50IGlzIGVtcHR5LlxuICAgKlxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIGNvbXBvbmVudCBpcyBlbXB0eSwgYGZhbHNlYCBvdGhlcndpc2UuXG4gICAqL1xuICBwdWJsaWMgaXNFbXB0eSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5nZXRWYWx1ZSgpID09PSAnJztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgY2hhbmdlIGxpc3RlbmVyIHRvIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjYWxsYmFjayAtIFRoZSBjYWxsYmFjayB0byBjYWxsIHdoZW4gdGhlIHZhbHVlIGNoYW5nZXMuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb25DaGFuZ2UoY2FsbGJhY2s6IChuZXdWYWx1ZTogcmVhZG9ubHkgc3RyaW5nW10pID0+IHZvaWQpOiB0aGlzIHtcbiAgICBjb25zdCBjaGFuZ2VIYW5kbGVyID0gKCk6IHZvaWQgPT4ge1xuICAgICAgY2FsbGJhY2sodGhpcy5nZXRWYWx1ZSgpKTtcbiAgICB9O1xuICAgIHRoaXMuc2ltdWxhdGVDaGFuZ2VDYWxsYmFjayA9IGNoYW5nZUhhbmRsZXI7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5vbkNoYW5nZShjaGFuZ2VIYW5kbGVyKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gZGlzYWJsZWQgLSBUaGUgZGlzYWJsZWQgc3RhdGUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHNldERpc2FibGVkKGRpc2FibGVkOiBib29sZWFuKTogdGhpcyB7XG4gICAgc3VwZXIuc2V0RGlzYWJsZWQoZGlzYWJsZWQpO1xuICAgIHRoaXMudGV4dEFyZWFDb21wb25lbnQuc2V0RGlzYWJsZWQoZGlzYWJsZWQpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHBsYWNlaG9sZGVyIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBwbGFjZWhvbGRlciAtIFRoZSBwbGFjZWhvbGRlciB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgc2V0UGxhY2Vob2xkZXIocGxhY2Vob2xkZXI6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMudGV4dEFyZWFDb21wb25lbnQuc2V0UGxhY2Vob2xkZXIocGxhY2Vob2xkZXIpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHBsYWNlaG9sZGVyIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBwbGFjZWhvbGRlclZhbHVlIC0gVGhlIHBsYWNlaG9sZGVyIHZhbHVlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRQbGFjZWhvbGRlclZhbHVlKHBsYWNlaG9sZGVyVmFsdWU6IHJlYWRvbmx5IHN0cmluZ1tdKTogdGhpcyB7XG4gICAgdGhpcy5zZXRQbGFjZWhvbGRlcih0aGlzLnZhbHVlVG9TdHJpbmcocGxhY2Vob2xkZXJWYWx1ZSkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0VmFsdWUodmFsdWU6IHJlYWRvbmx5IHN0cmluZ1tdKTogdGhpcyB7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5zZXRWYWx1ZSh0aGlzLnZhbHVlVG9TdHJpbmcodmFsdWUpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTaW11bGF0ZSBhIGNoYW5nZSBldmVudC5cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgVXNlIG9ubHkgZnJvbSB0ZXN0cyB0byBzaW11bGF0ZSBhIGNoYW5nZSBldmVudC5cbiAgICovXG4gIHB1YmxpYyBzaW11bGF0ZUNoYW5nZV9fKCk6IHZvaWQge1xuICAgIHRoaXMuc2ltdWxhdGVDaGFuZ2VDYWxsYmFjaz8uKCk7XG4gIH1cblxuICBwcml2YXRlIHZhbHVlVG9TdHJpbmcodmFsdWU6IHJlYWRvbmx5IHN0cmluZ1tdKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdmFsdWUuam9pbignXFxuJyk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUE7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFXUCxTQUFTLGdCQUFnQjtBQUN6QixTQUFTLDJCQUEyQjtBQVc3QixNQUFNLDhCQUE4QixlQUE0SjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1yTSxJQUFXLFVBQStCO0FBQ3hDLFdBQU8sS0FBSyxrQkFBa0I7QUFBQSxFQUNoQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9BLElBQVcsY0FBZ0M7QUFDekMsV0FBTyxLQUFLO0FBQUEsRUFDZDtBQUFBLEVBRVE7QUFBQSxFQUVTO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT1YsWUFBWSxhQUEwQjtBQUMzQyxVQUFNO0FBQ04sU0FBSyxvQkFBb0IsSUFBSSxrQkFBa0IsV0FBVztBQUMxRCx3QkFBb0IsYUFBYSxTQUFTLHFCQUFxQjtBQUFBLEVBQ2pFO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLTyxRQUFjO0FBQ25CLFNBQUssa0JBQWtCLFNBQVMsRUFBRTtBQUFBLEVBQ3BDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT2dCLFdBQThCO0FBQzVDLFdBQU8sS0FBSyxrQkFBa0IsU0FBUyxFQUFFLE1BQU0sSUFBSTtBQUFBLEVBQ3JEO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT08sVUFBbUI7QUFDeEIsV0FBTyxLQUFLLGtCQUFrQixTQUFTLE1BQU07QUFBQSxFQUMvQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sU0FBUyxVQUF1RDtBQUNyRSxVQUFNLGdCQUFnQixNQUFZO0FBQ2hDLGVBQVMsS0FBSyxTQUFTLENBQUM7QUFBQSxJQUMxQjtBQUNBLFNBQUsseUJBQXlCO0FBQzlCLFNBQUssa0JBQWtCLFNBQVMsYUFBYTtBQUM3QyxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLFlBQVksVUFBeUI7QUFDbkQsVUFBTSxZQUFZLFFBQVE7QUFDMUIsU0FBSyxrQkFBa0IsWUFBWSxRQUFRO0FBQzNDLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxlQUFlLGFBQTJCO0FBQy9DLFNBQUssa0JBQWtCLGVBQWUsV0FBVztBQUNqRCxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sb0JBQW9CLGtCQUEyQztBQUNwRSxTQUFLLGVBQWUsS0FBSyxjQUFjLGdCQUFnQixDQUFDO0FBQ3hELFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsU0FBUyxPQUFnQztBQUN2RCxTQUFLLGtCQUFrQixTQUFTLEtBQUssY0FBYyxLQUFLLENBQUM7QUFDekQsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPTyxtQkFBeUI7QUFDOUIsU0FBSyx5QkFBeUI7QUFBQSxFQUNoQztBQUFBLEVBRVEsY0FBYyxPQUFrQztBQUN0RCxXQUFPLE1BQU0sS0FBSyxJQUFJO0FBQUEsRUFDeEI7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
160
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy9tdWx0aXBsZS10ZXh0LWNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENvbnRhaW5zIGEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIG11bHRpcGxlIHRleHQgdmFsdWVzLlxuICovXG5cbmltcG9ydCB7XG4gIFRleHRBcmVhQ29tcG9uZW50LFxuICBWYWx1ZUNvbXBvbmVudFxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yRWxlbWVudCB9IGZyb20gJy4uLy4uL2h0bWwtZWxlbWVudC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBpbml0UGx1Z2luQ29udGV4dGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IGluaXRQbHVnaW5Db250ZXh0IH0gZnJvbSAnLi4vcGx1Z2luL3BsdWdpbi1jb250ZXh0LnRzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYFNldHRpbmdFeGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IFNldHRpbmdFeCB9IGZyb20gJy4uL3NldHRpbmctZXgudHMnO1xuaW1wb3J0IHR5cGUgeyBUZXh0QmFzZWRDb21wb25lbnQgfSBmcm9tICcuL3RleHQtYmFzZWQtY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi92YWxpZGF0b3ItY29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcgfSBmcm9tICcuL3ZhbHVlLWNvbXBvbmVudC13aXRoLWNoYW5nZS10cmFja2luZy50cyc7XG5cbmltcG9ydCB7IENzc0NsYXNzIH0gZnJvbSAnLi4vY3NzLWNsYXNzLnRzJztcbmltcG9ydCB7IGFkZFBsdWdpbkNzc0NsYXNzZXMgfSBmcm9tICcuLi9wbHVnaW4vcGx1Z2luLWNvbnRleHQudHMnO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIG11bHRpcGxlIHRleHQgdmFsdWVzLlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkTXVsdGlwbGVUZXh0fS5cbiAqXG4gKiBJbiBvcmRlciB0byBhZGQgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbXBvbmVudCwgdXNlIHtAbGluayBpbml0UGx1Z2luQ29udGV4dH0gaW4geW91ciBwbHVnaW4ncyBgb25sb2FkKClgIGZ1bmN0aW9uLlxuICpcbiAqIEFsdGVybmF0aXZlbHksIHlvdSBjYW4gY29weSBzdHlsZXMgZnJvbSB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL21uYW91bW92L29ic2lkaWFuLWRldi11dGlscy9yZWxlYXNlcy9sYXRlc3QvZG93bmxvYWQvc3R5bGVzLmNzc30uXG4gKi9cbmV4cG9ydCBjbGFzcyBNdWx0aXBsZVRleHRDb21wb25lbnQgZXh0ZW5kcyBWYWx1ZUNvbXBvbmVudDxyZWFkb25seSBzdHJpbmdbXT4gaW1wbGVtZW50cyBUZXh0QmFzZWRDb21wb25lbnQ8cmVhZG9ubHkgc3RyaW5nW10+LCBWYWxpZGF0b3JDb21wb25lbnQsIFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPHJlYWRvbmx5IHN0cmluZ1tdPiB7XG4gIC8qKlxuICAgKiBBbiBpbnB1dCBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBpbnB1dCBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGlucHV0RWwoKTogSFRNTFRleHRBcmVhRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMudGV4dEFyZWFDb21wb25lbnQuaW5wdXRFbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWxpZGF0b3IgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsaWRhdG9yIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBnZXQgdmFsaWRhdG9yRWwoKTogVmFsaWRhdG9yRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuaW5wdXRFbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgaW5uZXIgdGV4dCBhcmVhIGNvbXBvbmVudC5cbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSB0ZXh0QXJlYUNvbXBvbmVudDogVGV4dEFyZWFDb21wb25lbnQ7XG5cbiAgcHJpdmF0ZSBzaW11bGF0ZUNoYW5nZUNhbGxiYWNrPzogKCkgPT4gdm9pZDtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBtdWx0aXBsZSB0ZXh0IGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGNvbnRhaW5lckVsIC0gVGhlIGNvbnRhaW5lciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29udGFpbmVyRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnRleHRBcmVhQ29tcG9uZW50ID0gbmV3IFRleHRBcmVhQ29tcG9uZW50KGNvbnRhaW5lckVsKTtcbiAgICBhZGRQbHVnaW5Dc3NDbGFzc2VzKGNvbnRhaW5lckVsLCBDc3NDbGFzcy5NdWx0aXBsZVRleHRDb21wb25lbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEVtcHRpZXMgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBlbXB0eSgpOiB2b2lkIHtcbiAgICB0aGlzLnRleHRBcmVhQ29tcG9uZW50LnNldFZhbHVlKCcnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBnZXRWYWx1ZSgpOiByZWFkb25seSBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMudGV4dEFyZWFDb21wb25lbnQuZ2V0VmFsdWUoKS5zcGxpdCgnXFxuJyk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21wb25lbnQgaXMgZW1wdHkuXG4gICAqXG4gICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgY29tcG9uZW50IGlzIGVtcHR5LCBgZmFsc2VgIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBpc0VtcHR5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRleHRBcmVhQ29tcG9uZW50LmdldFZhbHVlKCkgPT09ICcnO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBjaGFuZ2UgbGlzdGVuZXIgdG8gdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGNhbGxiYWNrIC0gVGhlIGNhbGxiYWNrIHRvIGNhbGwgd2hlbiB0aGUgdmFsdWUgY2hhbmdlcy5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvbkNoYW5nZShjYWxsYmFjazogKG5ld1ZhbHVlOiByZWFkb25seSBzdHJpbmdbXSkgPT4gdm9pZCk6IHRoaXMge1xuICAgIGNvbnN0IGNoYW5nZUhhbmRsZXIgPSAoKTogdm9pZCA9PiB7XG4gICAgICBjYWxsYmFjayh0aGlzLmdldFZhbHVlKCkpO1xuICAgIH07XG4gICAgdGhpcy5zaW11bGF0ZUNoYW5nZUNhbGxiYWNrID0gY2hhbmdlSGFuZGxlcjtcbiAgICB0aGlzLnRleHRBcmVhQ29tcG9uZW50Lm9uQ2hhbmdlKGNoYW5nZUhhbmRsZXIpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBkaXNhYmxlZCAtIFRoZSBkaXNhYmxlZCBzdGF0ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0RGlzYWJsZWQoZGlzYWJsZWQ6IGJvb2xlYW4pOiB0aGlzIHtcbiAgICBzdXBlci5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcGxhY2Vob2xkZXIgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHBsYWNlaG9sZGVyIC0gVGhlIHBsYWNlaG9sZGVyIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRQbGFjZWhvbGRlcihwbGFjZWhvbGRlcjogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5zZXRQbGFjZWhvbGRlcihwbGFjZWhvbGRlcik7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcGxhY2Vob2xkZXIgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHBsYWNlaG9sZGVyVmFsdWUgLSBUaGUgcGxhY2Vob2xkZXIgdmFsdWUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldFBsYWNlaG9sZGVyVmFsdWUocGxhY2Vob2xkZXJWYWx1ZTogcmVhZG9ubHkgc3RyaW5nW10pOiB0aGlzIHtcbiAgICB0aGlzLnNldFBsYWNlaG9sZGVyKHRoaXMudmFsdWVUb1N0cmluZyhwbGFjZWhvbGRlclZhbHVlKSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBzZXRWYWx1ZSh2YWx1ZTogcmVhZG9ubHkgc3RyaW5nW10pOiB0aGlzIHtcbiAgICB0aGlzLnRleHRBcmVhQ29tcG9uZW50LnNldFZhbHVlKHRoaXMudmFsdWVUb1N0cmluZyh2YWx1ZSkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNpbXVsYXRlIGEgY2hhbmdlIGV2ZW50LlxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCBVc2Ugb25seSBmcm9tIHRlc3RzIHRvIHNpbXVsYXRlIGEgY2hhbmdlIGV2ZW50LlxuICAgKi9cbiAgcHVibGljIHNpbXVsYXRlQ2hhbmdlX18oKTogdm9pZCB7XG4gICAgdGhpcy5zaW11bGF0ZUNoYW5nZUNhbGxiYWNrPy4oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyB0aGUgdmFsdWUgdG8gdGhlIHN0cmluZyBzaG93biBpbiB0aGUgdGV4dCBhcmVhLiBTdWJjbGFzc2VzIGNhbiBvdmVycmlkZSB0byBjdXN0b21pemUgdGhlIHNlcmlhbGl6YXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBjb252ZXJ0LlxuICAgKiBAcmV0dXJucyBUaGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB2YWx1ZS5cbiAgICovXG4gIHByb3RlY3RlZCB2YWx1ZVRvU3RyaW5nKHZhbHVlOiByZWFkb25seSBzdHJpbmdbXSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlLmpvaW4oJ1xcbicpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAi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
@@ -4,7 +4,7 @@
4
4
  *
5
5
  * Typed dropdown component.
6
6
  */
7
- import { ValueComponent } from 'obsidian';
7
+ import { DropdownComponent, ValueComponent } from 'obsidian';
8
8
  import type { ValidatorElement } from '../../html-element.mjs';
9
9
  import type { ValueComponentWithChangeTracking } from './value-component-with-change-tracking.mjs';
10
10
  /**
@@ -31,9 +31,15 @@ export declare class TypedDropdownComponent<T> extends ValueComponent<null | T>
31
31
  * @returns The validator element.
32
32
  */
33
33
  get validatorEl(): ValidatorElement;
34
- private readonly dropdownComponent;
34
+ /**
35
+ * The inner dropdown component.
36
+ */
37
+ protected readonly dropdownComponent: DropdownComponent;
38
+ /**
39
+ * The list of selectable option values, indexed by their position in the dropdown.
40
+ */
41
+ protected readonly values: T[];
35
42
  private simulateChangeCallback?;
36
- private readonly values;
37
43
  /**
38
44
  * Creates a new multiple dropdown component.
39
45
  *
@@ -44,9 +44,15 @@ class TypedDropdownComponent extends ValueComponent {
44
44
  get validatorEl() {
45
45
  return this.selectEl;
46
46
  }
47
+ /**
48
+ * The inner dropdown component.
49
+ */
47
50
  dropdownComponent;
48
- simulateChangeCallback;
51
+ /**
52
+ * The list of selectable option values, indexed by their position in the dropdown.
53
+ */
49
54
  values = [];
55
+ simulateChangeCallback;
50
56
  /**
51
57
  * Creates a new multiple dropdown component.
52
58
  *
@@ -141,4 +147,4 @@ class TypedDropdownComponent extends ValueComponent {
141
147
  export {
142
148
  TypedDropdownComponent
143
149
  };
144
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy90eXBlZC1kcm9wZG93bi1jb21wb25lbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBUeXBlZCBkcm9wZG93biBjb21wb25lbnQuXG4gKi9cblxuaW1wb3J0IHtcbiAgRHJvcGRvd25Db21wb25lbnQsXG4gIFZhbHVlQ29tcG9uZW50XG59IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBWYWxpZGF0b3JFbGVtZW50IH0gZnJvbSAnLi4vLi4vaHRtbC1lbGVtZW50LnRzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYGluaXRQbHVnaW5Db250ZXh0YCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbmltcG9ydCB0eXBlIHsgaW5pdFBsdWdpbkNvbnRleHQgfSBmcm9tICcuLi9wbHVnaW4vcGx1Z2luLWNvbnRleHQudHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycyAtLSBXZSBuZWVkIHRvIGltcG9ydCBgU2V0dGluZ0V4YCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbmltcG9ydCB0eXBlIHsgU2V0dGluZ0V4IH0gZnJvbSAnLi4vc2V0dGluZy1leC50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nIH0gZnJvbSAnLi92YWx1ZS1jb21wb25lbnQtd2l0aC1jaGFuZ2UtdHJhY2tpbmcudHMnO1xuXG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uL2Nzcy1jbGFzcy50cyc7XG5pbXBvcnQgeyBhZGRQbHVnaW5Dc3NDbGFzc2VzIH0gZnJvbSAnLi4vcGx1Z2luL3BsdWdpbi1jb250ZXh0LnRzJztcblxuLyoqXG4gKiBBIGRyb3Bkb3duIGNvbXBvbmVudCB0aGF0IGNhbiBiZSB1c2VkIHRvIHNlbGVjdCBhIHZhbHVlIGZyb20gYSBsaXN0LlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkVHlwZWREcm9wZG93bn0uXG4gKlxuICogSW4gb3JkZXIgdG8gYWRkIHRoZSBzdHlsZXMgZm9yIHRoZSBjb21wb25lbnQsIHVzZSB7QGxpbmsgaW5pdFBsdWdpbkNvbnRleHR9IGluIHlvdXIgcGx1Z2luJ3MgYG9ubG9hZCgpYCBmdW5jdGlvbi5cbiAqXG4gKiBBbHRlcm5hdGl2ZWx5LCB5b3UgY2FuIGNvcHkgc3R5bGVzIGZyb20ge0BsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9tbmFvdW1vdi9vYnNpZGlhbi1kZXYtdXRpbHMvcmVsZWFzZXMvbGF0ZXN0L2Rvd25sb2FkL3N0eWxlcy5jc3N9LlxuICpcbiAqIEB0eXBlUGFyYW0gVCAtIFRoZSB0eXBlIG9mIHRoZSB2YWx1ZSB0byBzZWxlY3QuXG4gKi9cbmV4cG9ydCBjbGFzcyBUeXBlZERyb3Bkb3duQ29tcG9uZW50PFQ+IGV4dGVuZHMgVmFsdWVDb21wb25lbnQ8bnVsbCB8IFQ+IGltcGxlbWVudHMgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmc8bnVsbCB8IFQ+IHtcbiAgLyoqXG4gICAqIEEgc2VsZWN0IGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHNlbGVjdCBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGdldCBzZWxlY3RFbCgpOiBIVE1MU2VsZWN0RWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2VsZWN0RWw7XG4gIH1cblxuICAvKipcbiAgICogQSB2YWxpZGF0b3IgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsaWRhdG9yIGVsZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHZhbGlkYXRvckVsKCk6IFZhbGlkYXRvckVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdEVsO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkcm9wZG93bkNvbXBvbmVudDogRHJvcGRvd25Db21wb25lbnQ7XG5cbiAgcHJpdmF0ZSBzaW11bGF0ZUNoYW5nZUNhbGxiYWNrPzogKCkgPT4gdm9pZDtcblxuICBwcml2YXRlIHJlYWRvbmx5IHZhbHVlczogVFtdID0gW107XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgbXVsdGlwbGUgZHJvcGRvd24gY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gY29udGFpbmVyRWwgLSBUaGUgY29udGFpbmVyIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb250YWluZXJFbDogSFRNTEVsZW1lbnQpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQgPSBuZXcgRHJvcGRvd25Db21wb25lbnQoY29udGFpbmVyRWwpO1xuICAgIGFkZFBsdWdpbkNzc0NsYXNzZXMoY29udGFpbmVyRWwsIENzc0NsYXNzLlR5cGVkRHJvcGRvd25Db21wb25lbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYW4gb3B0aW9uIHRvIHRoZSBkcm9wZG93bi5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIG9mIHRoZSBvcHRpb24uXG4gICAqIEBwYXJhbSBkaXNwbGF5IC0gVGhlIGRpc3BsYXkgdGV4dCBvZiB0aGUgb3B0aW9uLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGFkZE9wdGlvbih2YWx1ZTogVCwgZGlzcGxheTogc3RyaW5nKTogdGhpcyB7XG4gICAgbGV0IGluZGV4ID0gdGhpcy52YWx1ZXMuaW5kZXhPZih2YWx1ZSk7XG4gICAgaWYgKGluZGV4ID09PSAtMSkge1xuICAgICAgdGhpcy52YWx1ZXMucHVzaCh2YWx1ZSk7XG4gICAgICBpbmRleCA9IHRoaXMudmFsdWVzLmxlbmd0aCAtIDE7XG4gICAgfVxuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuYWRkT3B0aW9uKFN0cmluZyhpbmRleCksIGRpc3BsYXkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgbXVsdGlwbGUgb3B0aW9ucyB0byB0aGUgZHJvcGRvd24uXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgdG8gYWRkLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGFkZE9wdGlvbnMob3B0aW9uczogTWFwPFQsIHN0cmluZz4pOiB0aGlzIHtcbiAgICBmb3IgKGNvbnN0IFt2YWx1ZSwgZGlzcGxheV0gb2Ygb3B0aW9ucy5lbnRyaWVzKCkpIHtcbiAgICAgIHRoaXMuYWRkT3B0aW9uKHZhbHVlLCBkaXNwbGF5KTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0VmFsdWUoKTogbnVsbCB8IFQge1xuICAgIHJldHVybiB0aGlzLnZhbHVlc1t0aGlzLmRyb3Bkb3duQ29tcG9uZW50LnNlbGVjdEVsLnNlbGVjdGVkSW5kZXhdID8/IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgY2FsbGJhY2sgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBpcyBjaGFuZ2VkLlxuICAgKlxuICAgKiBAcGFyYW0gY2FsbGJhY2sgLSBUaGUgY2FsbGJhY2sgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBpcyBjaGFuZ2VkLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG9uQ2hhbmdlKGNhbGxiYWNrOiAodmFsdWU6IG51bGwgfCBUKSA9PiB2b2lkKTogdGhpcyB7XG4gICAgY29uc3QgY2hhbmdlSGFuZGxlciA9ICgpOiB2b2lkID0+IHtcbiAgICAgIGNhbGxiYWNrKHRoaXMuZ2V0VmFsdWUoKSk7XG4gICAgfTtcbiAgICB0aGlzLnNpbXVsYXRlQ2hhbmdlQ2FsbGJhY2sgPSBjaGFuZ2VIYW5kbGVyO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQub25DaGFuZ2UoY2hhbmdlSGFuZGxlcik7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgZGlzYWJsZWQgc3RhdGUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGRpc2FibGVkIC0gVGhlIGRpc2FibGVkIHN0YXRlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBzZXREaXNhYmxlZChkaXNhYmxlZDogYm9vbGVhbik6IHRoaXMge1xuICAgIHN1cGVyLnNldERpc2FibGVkKGRpc2FibGVkKTtcbiAgICB0aGlzLmRyb3Bkb3duQ29tcG9uZW50LnNldERpc2FibGVkKGRpc2FibGVkKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldFZhbHVlKHZhbHVlOiBudWxsIHwgVCk6IHRoaXMge1xuICAgIGNvbnN0IGluZGV4ID0gdmFsdWUgPT09IG51bGwgPyAtMSA6IHRoaXMudmFsdWVzLmluZGV4T2YodmFsdWUpO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2VsZWN0RWwuc2VsZWN0ZWRJbmRleCA9IGluZGV4O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNpbXVsYXRlIGEgY2hhbmdlIGV2ZW50LlxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCBVc2Ugb25seSBmcm9tIHRlc3RzIHRvIHNpbXVsYXRlIGEgY2hhbmdlIGV2ZW50LlxuICAgKi9cbiAgcHVibGljIHNpbXVsYXRlQ2hhbmdlX18oKTogdm9pZCB7XG4gICAgdGhpcy5zaW11bGF0ZUNoYW5nZUNhbGxiYWNrPy4oKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQVNQLFNBQVMsZ0JBQWdCO0FBQ3pCLFNBQVMsMkJBQTJCO0FBYTdCLE1BQU0sK0JBQWtDLGVBQStFO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTTVILElBQVcsV0FBOEI7QUFDdkMsV0FBTyxLQUFLLGtCQUFrQjtBQUFBLEVBQ2hDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0EsSUFBVyxjQUFnQztBQUN6QyxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQUEsRUFFaUI7QUFBQSxFQUVUO0FBQUEsRUFFUyxTQUFjLENBQUM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPekIsWUFBWSxhQUEwQjtBQUMzQyxVQUFNO0FBQ04sU0FBSyxvQkFBb0IsSUFBSSxrQkFBa0IsV0FBVztBQUMxRCx3QkFBb0IsYUFBYSxTQUFTLHNCQUFzQjtBQUFBLEVBQ2xFO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVNPLFVBQVUsT0FBVSxTQUF1QjtBQUNoRCxRQUFJLFFBQVEsS0FBSyxPQUFPLFFBQVEsS0FBSztBQUNyQyxRQUFJLFVBQVUsSUFBSTtBQUNoQixXQUFLLE9BQU8sS0FBSyxLQUFLO0FBQ3RCLGNBQVEsS0FBSyxPQUFPLFNBQVM7QUFBQSxJQUMvQjtBQUNBLFNBQUssa0JBQWtCLFVBQVUsT0FBTyxLQUFLLEdBQUcsT0FBTztBQUN2RCxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sV0FBVyxTQUErQjtBQUMvQyxlQUFXLENBQUMsT0FBTyxPQUFPLEtBQUssUUFBUSxRQUFRLEdBQUc7QUFDaEQsV0FBSyxVQUFVLE9BQU8sT0FBTztBQUFBLElBQy9CO0FBQ0EsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPTyxXQUFxQjtBQUMxQixXQUFPLEtBQUssT0FBTyxLQUFLLGtCQUFrQixTQUFTLGFBQWEsS0FBSztBQUFBLEVBQ3ZFO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxTQUFTLFVBQTJDO0FBQ3pELFVBQU0sZ0JBQWdCLE1BQVk7QUFDaEMsZUFBUyxLQUFLLFNBQVMsQ0FBQztBQUFBLElBQzFCO0FBQ0EsU0FBSyx5QkFBeUI7QUFDOUIsU0FBSyxrQkFBa0IsU0FBUyxhQUFhO0FBQzdDLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsWUFBWSxVQUF5QjtBQUNuRCxVQUFNLFlBQVksUUFBUTtBQUMxQixTQUFLLGtCQUFrQixZQUFZLFFBQVE7QUFDM0MsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFNBQVMsT0FBdUI7QUFDckMsVUFBTSxRQUFRLFVBQVUsT0FBTyxLQUFLLEtBQUssT0FBTyxRQUFRLEtBQUs7QUFDN0QsU0FBSyxrQkFBa0IsU0FBUyxnQkFBZ0I7QUFDaEQsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPTyxtQkFBeUI7QUFDOUIsU0FBSyx5QkFBeUI7QUFBQSxFQUNoQztBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
150
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy90eXBlZC1kcm9wZG93bi1jb21wb25lbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBUeXBlZCBkcm9wZG93biBjb21wb25lbnQuXG4gKi9cblxuaW1wb3J0IHtcbiAgRHJvcGRvd25Db21wb25lbnQsXG4gIFZhbHVlQ29tcG9uZW50XG59IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBWYWxpZGF0b3JFbGVtZW50IH0gZnJvbSAnLi4vLi4vaHRtbC1lbGVtZW50LnRzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYGluaXRQbHVnaW5Db250ZXh0YCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbmltcG9ydCB0eXBlIHsgaW5pdFBsdWdpbkNvbnRleHQgfSBmcm9tICcuLi9wbHVnaW4vcGx1Z2luLWNvbnRleHQudHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycyAtLSBXZSBuZWVkIHRvIGltcG9ydCBgU2V0dGluZ0V4YCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbmltcG9ydCB0eXBlIHsgU2V0dGluZ0V4IH0gZnJvbSAnLi4vc2V0dGluZy1leC50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nIH0gZnJvbSAnLi92YWx1ZS1jb21wb25lbnQtd2l0aC1jaGFuZ2UtdHJhY2tpbmcudHMnO1xuXG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uL2Nzcy1jbGFzcy50cyc7XG5pbXBvcnQgeyBhZGRQbHVnaW5Dc3NDbGFzc2VzIH0gZnJvbSAnLi4vcGx1Z2luL3BsdWdpbi1jb250ZXh0LnRzJztcblxuLyoqXG4gKiBBIGRyb3Bkb3duIGNvbXBvbmVudCB0aGF0IGNhbiBiZSB1c2VkIHRvIHNlbGVjdCBhIHZhbHVlIGZyb20gYSBsaXN0LlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkVHlwZWREcm9wZG93bn0uXG4gKlxuICogSW4gb3JkZXIgdG8gYWRkIHRoZSBzdHlsZXMgZm9yIHRoZSBjb21wb25lbnQsIHVzZSB7QGxpbmsgaW5pdFBsdWdpbkNvbnRleHR9IGluIHlvdXIgcGx1Z2luJ3MgYG9ubG9hZCgpYCBmdW5jdGlvbi5cbiAqXG4gKiBBbHRlcm5hdGl2ZWx5LCB5b3UgY2FuIGNvcHkgc3R5bGVzIGZyb20ge0BsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9tbmFvdW1vdi9vYnNpZGlhbi1kZXYtdXRpbHMvcmVsZWFzZXMvbGF0ZXN0L2Rvd25sb2FkL3N0eWxlcy5jc3N9LlxuICpcbiAqIEB0eXBlUGFyYW0gVCAtIFRoZSB0eXBlIG9mIHRoZSB2YWx1ZSB0byBzZWxlY3QuXG4gKi9cbmV4cG9ydCBjbGFzcyBUeXBlZERyb3Bkb3duQ29tcG9uZW50PFQ+IGV4dGVuZHMgVmFsdWVDb21wb25lbnQ8bnVsbCB8IFQ+IGltcGxlbWVudHMgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmc8bnVsbCB8IFQ+IHtcbiAgLyoqXG4gICAqIEEgc2VsZWN0IGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHNlbGVjdCBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGdldCBzZWxlY3RFbCgpOiBIVE1MU2VsZWN0RWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2VsZWN0RWw7XG4gIH1cblxuICAvKipcbiAgICogQSB2YWxpZGF0b3IgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsaWRhdG9yIGVsZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHZhbGlkYXRvckVsKCk6IFZhbGlkYXRvckVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdEVsO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBpbm5lciBkcm9wZG93biBjb21wb25lbnQuXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZHJvcGRvd25Db21wb25lbnQ6IERyb3Bkb3duQ29tcG9uZW50O1xuXG4gIC8qKlxuICAgKiBUaGUgbGlzdCBvZiBzZWxlY3RhYmxlIG9wdGlvbiB2YWx1ZXMsIGluZGV4ZWQgYnkgdGhlaXIgcG9zaXRpb24gaW4gdGhlIGRyb3Bkb3duLlxuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHZhbHVlczogVFtdID0gW107XG5cbiAgcHJpdmF0ZSBzaW11bGF0ZUNoYW5nZUNhbGxiYWNrPzogKCkgPT4gdm9pZDtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBtdWx0aXBsZSBkcm9wZG93biBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjb250YWluZXJFbCAtIFRoZSBjb250YWluZXIgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvbnRhaW5lckVsOiBIVE1MRWxlbWVudCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudCA9IG5ldyBEcm9wZG93bkNvbXBvbmVudChjb250YWluZXJFbCk7XG4gICAgYWRkUGx1Z2luQ3NzQ2xhc3Nlcyhjb250YWluZXJFbCwgQ3NzQ2xhc3MuVHlwZWREcm9wZG93bkNvbXBvbmVudCk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhbiBvcHRpb24gdG8gdGhlIGRyb3Bkb3duLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgb2YgdGhlIG9wdGlvbi5cbiAgICogQHBhcmFtIGRpc3BsYXkgLSBUaGUgZGlzcGxheSB0ZXh0IG9mIHRoZSBvcHRpb24uXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgYWRkT3B0aW9uKHZhbHVlOiBULCBkaXNwbGF5OiBzdHJpbmcpOiB0aGlzIHtcbiAgICBsZXQgaW5kZXggPSB0aGlzLnZhbHVlcy5pbmRleE9mKHZhbHVlKTtcbiAgICBpZiAoaW5kZXggPT09IC0xKSB7XG4gICAgICB0aGlzLnZhbHVlcy5wdXNoKHZhbHVlKTtcbiAgICAgIGluZGV4ID0gdGhpcy52YWx1ZXMubGVuZ3RoIC0gMTtcbiAgICB9XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5hZGRPcHRpb24oU3RyaW5nKGluZGV4KSwgZGlzcGxheSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBtdWx0aXBsZSBvcHRpb25zIHRvIHRoZSBkcm9wZG93bi5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyB0byBhZGQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgYWRkT3B0aW9ucyhvcHRpb25zOiBNYXA8VCwgc3RyaW5nPik6IHRoaXMge1xuICAgIGZvciAoY29uc3QgW3ZhbHVlLCBkaXNwbGF5XSBvZiBvcHRpb25zLmVudHJpZXMoKSkge1xuICAgICAgdGhpcy5hZGRPcHRpb24odmFsdWUsIGRpc3BsYXkpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBnZXRWYWx1ZSgpOiBudWxsIHwgVCB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVzW3RoaXMuZHJvcGRvd25Db21wb25lbnQuc2VsZWN0RWwuc2VsZWN0ZWRJbmRleF0gPz8gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNoYW5nZWQuXG4gICAqXG4gICAqIEBwYXJhbSBjYWxsYmFjayAtIFRoZSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNoYW5nZWQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb25DaGFuZ2UoY2FsbGJhY2s6ICh2YWx1ZTogbnVsbCB8IFQpID0+IHZvaWQpOiB0aGlzIHtcbiAgICBjb25zdCBjaGFuZ2VIYW5kbGVyID0gKCk6IHZvaWQgPT4ge1xuICAgICAgY2FsbGJhY2sodGhpcy5nZXRWYWx1ZSgpKTtcbiAgICB9O1xuICAgIHRoaXMuc2ltdWxhdGVDaGFuZ2VDYWxsYmFjayA9IGNoYW5nZUhhbmRsZXI7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5vbkNoYW5nZShjaGFuZ2VIYW5kbGVyKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gZGlzYWJsZWQgLSBUaGUgZGlzYWJsZWQgc3RhdGUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHNldERpc2FibGVkKGRpc2FibGVkOiBib29sZWFuKTogdGhpcyB7XG4gICAgc3VwZXIuc2V0RGlzYWJsZWQoZGlzYWJsZWQpO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2V0RGlzYWJsZWQoZGlzYWJsZWQpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgc2V0VmFsdWUodmFsdWU6IG51bGwgfCBUKTogdGhpcyB7XG4gICAgY29uc3QgaW5kZXggPSB2YWx1ZSA9PT0gbnVsbCA/IC0xIDogdGhpcy52YWx1ZXMuaW5kZXhPZih2YWx1ZSk7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5zZWxlY3RFbC5zZWxlY3RlZEluZGV4ID0gaW5kZXg7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2ltdWxhdGUgYSBjaGFuZ2UgZXZlbnQuXG4gICAqXG4gICAqIEBkZXByZWNhdGVkIFVzZSBvbmx5IGZyb20gdGVzdHMgdG8gc2ltdWxhdGUgYSBjaGFuZ2UgZXZlbnQuXG4gICAqL1xuICBwdWJsaWMgc2ltdWxhdGVDaGFuZ2VfXygpOiB2b2lkIHtcbiAgICB0aGlzLnNpbXVsYXRlQ2hhbmdlQ2FsbGJhY2s/LigpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU1BO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBU1AsU0FBUyxnQkFBZ0I7QUFDekIsU0FBUywyQkFBMkI7QUFhN0IsTUFBTSwrQkFBa0MsZUFBK0U7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNNUgsSUFBVyxXQUE4QjtBQUN2QyxXQUFPLEtBQUssa0JBQWtCO0FBQUEsRUFDaEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxJQUFXLGNBQWdDO0FBQ3pDLFdBQU8sS0FBSztBQUFBLEVBQ2Q7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUttQjtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS0EsU0FBYyxDQUFDO0FBQUEsRUFFMUI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPRCxZQUFZLGFBQTBCO0FBQzNDLFVBQU07QUFDTixTQUFLLG9CQUFvQixJQUFJLGtCQUFrQixXQUFXO0FBQzFELHdCQUFvQixhQUFhLFNBQVMsc0JBQXNCO0FBQUEsRUFDbEU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU08sVUFBVSxPQUFVLFNBQXVCO0FBQ2hELFFBQUksUUFBUSxLQUFLLE9BQU8sUUFBUSxLQUFLO0FBQ3JDLFFBQUksVUFBVSxJQUFJO0FBQ2hCLFdBQUssT0FBTyxLQUFLLEtBQUs7QUFDdEIsY0FBUSxLQUFLLE9BQU8sU0FBUztBQUFBLElBQy9CO0FBQ0EsU0FBSyxrQkFBa0IsVUFBVSxPQUFPLEtBQUssR0FBRyxPQUFPO0FBQ3ZELFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxXQUFXLFNBQStCO0FBQy9DLGVBQVcsQ0FBQyxPQUFPLE9BQU8sS0FBSyxRQUFRLFFBQVEsR0FBRztBQUNoRCxXQUFLLFVBQVUsT0FBTyxPQUFPO0FBQUEsSUFDL0I7QUFDQSxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLFdBQXFCO0FBQzFCLFdBQU8sS0FBSyxPQUFPLEtBQUssa0JBQWtCLFNBQVMsYUFBYSxLQUFLO0FBQUEsRUFDdkU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFNBQVMsVUFBMkM7QUFDekQsVUFBTSxnQkFBZ0IsTUFBWTtBQUNoQyxlQUFTLEtBQUssU0FBUyxDQUFDO0FBQUEsSUFDMUI7QUFDQSxTQUFLLHlCQUF5QjtBQUM5QixTQUFLLGtCQUFrQixTQUFTLGFBQWE7QUFDN0MsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixZQUFZLFVBQXlCO0FBQ25ELFVBQU0sWUFBWSxRQUFRO0FBQzFCLFNBQUssa0JBQWtCLFlBQVksUUFBUTtBQUMzQyxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sU0FBUyxPQUF1QjtBQUNyQyxVQUFNLFFBQVEsVUFBVSxPQUFPLEtBQUssS0FBSyxPQUFPLFFBQVEsS0FBSztBQUM3RCxTQUFLLGtCQUFrQixTQUFTLGdCQUFnQjtBQUNoRCxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLG1CQUF5QjtBQUM5QixTQUFLLHlCQUF5QjtBQUFBLEVBQ2hDO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -8,6 +8,7 @@ import { ValueComponent } from 'obsidian';
8
8
  import type { ValidatorElement } from '../../html-element.mjs';
9
9
  import type { ValidatorComponent } from './validator-component.mjs';
10
10
  import type { ValueComponentWithChangeTracking } from './value-component-with-change-tracking.mjs';
11
+ import { MultipleDropdownComponent } from './multiple-dropdown-component.mjs';
11
12
  /**
12
13
  * A multi-select dropdown component.
13
14
  *
@@ -32,9 +33,15 @@ export declare class TypedMultipleDropdownComponent<T> extends ValueComponent<re
32
33
  * @returns The validator element.
33
34
  */
34
35
  get validatorEl(): ValidatorElement;
35
- private readonly multipleDropdownComponent;
36
+ /**
37
+ * The inner multiple dropdown component.
38
+ */
39
+ protected readonly multipleDropdownComponent: MultipleDropdownComponent;
40
+ /**
41
+ * The list of selectable option values, indexed by their position in the dropdown.
42
+ */
43
+ protected readonly values: T[];
36
44
  private simulateChangeCallback?;
37
- private readonly values;
38
45
  /**
39
46
  * Creates a new multiple dropdown component.
40
47
  *
@@ -42,9 +42,15 @@ class TypedMultipleDropdownComponent extends ValueComponent {
42
42
  get validatorEl() {
43
43
  return this.selectEl;
44
44
  }
45
+ /**
46
+ * The inner multiple dropdown component.
47
+ */
45
48
  multipleDropdownComponent;
46
- simulateChangeCallback;
49
+ /**
50
+ * The list of selectable option values, indexed by their position in the dropdown.
51
+ */
47
52
  values = [];
53
+ simulateChangeCallback;
48
54
  /**
49
55
  * Creates a new multiple dropdown component.
50
56
  *
@@ -140,4 +146,4 @@ class TypedMultipleDropdownComponent extends ValueComponent {
140
146
  export {
141
147
  TypedMultipleDropdownComponent
142
148
  };
143
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy90eXBlZC1tdWx0aXBsZS1kcm9wZG93bi1jb21wb25lbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBDb250YWlucyBhIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhIG11bHRpLXNlbGVjdCBkcm9wZG93bi5cbiAqL1xuXG5pbXBvcnQgeyBWYWx1ZUNvbXBvbmVudCB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBWYWxpZGF0b3JFbGVtZW50IH0gZnJvbSAnLi4vLi4vaHRtbC1lbGVtZW50LnRzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYGluaXRQbHVnaW5Db250ZXh0YCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbmltcG9ydCB0eXBlIHsgaW5pdFBsdWdpbkNvbnRleHQgfSBmcm9tICcuLi9wbHVnaW4vcGx1Z2luLWNvbnRleHQudHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycyAtLSBXZSBuZWVkIHRvIGltcG9ydCBgU2V0dGluZ0V4YCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbmltcG9ydCB0eXBlIHsgU2V0dGluZ0V4IH0gZnJvbSAnLi4vc2V0dGluZy1leC50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbGlkYXRvckNvbXBvbmVudCB9IGZyb20gJy4vdmFsaWRhdG9yLWNvbXBvbmVudC50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nIH0gZnJvbSAnLi92YWx1ZS1jb21wb25lbnQtd2l0aC1jaGFuZ2UtdHJhY2tpbmcudHMnO1xuXG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uL2Nzcy1jbGFzcy50cyc7XG5pbXBvcnQgeyBhZGRQbHVnaW5Dc3NDbGFzc2VzIH0gZnJvbSAnLi4vcGx1Z2luL3BsdWdpbi1jb250ZXh0LnRzJztcbmltcG9ydCB7IE11bHRpcGxlRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL211bHRpcGxlLWRyb3Bkb3duLWNvbXBvbmVudC50cyc7XG5cbi8qKlxuICogQSBtdWx0aS1zZWxlY3QgZHJvcGRvd24gY29tcG9uZW50LlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkVHlwZWRNdWx0aXBsZURyb3Bkb3dufS5cbiAqXG4gKiBJbiBvcmRlciB0byBhZGQgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbXBvbmVudCwgdXNlIHtAbGluayBpbml0UGx1Z2luQ29udGV4dH0gaW4geW91ciBwbHVnaW4ncyBgb25sb2FkKClgIGZ1bmN0aW9uLlxuICpcbiAqIEFsdGVybmF0aXZlbHksIHlvdSBjYW4gY29weSBzdHlsZXMgZnJvbSB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL21uYW91bW92L29ic2lkaWFuLWRldi11dGlscy9yZWxlYXNlcy9sYXRlc3QvZG93bmxvYWQvc3R5bGVzLmNzc30uXG4gKlxuICogQHR5cGVQYXJhbSBUIC0gVGhlIHR5cGUgb2YgdGhlIHZhbHVlIHRvIHNlbGVjdC5cbiAqL1xuZXhwb3J0IGNsYXNzIFR5cGVkTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudDxUPiBleHRlbmRzIFZhbHVlQ29tcG9uZW50PHJlYWRvbmx5IFRbXT4gaW1wbGVtZW50cyBWYWxpZGF0b3JDb21wb25lbnQsIFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPHJlYWRvbmx5IFRbXT4ge1xuICAvKipcbiAgICogQSBzZWxlY3QgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgc2VsZWN0IGVsZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHNlbGVjdEVsKCk6IEhUTUxTZWxlY3RFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5tdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50LnNlbGVjdEVsO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgdmFsaWRhdG9yIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbGlkYXRvciBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGdldCB2YWxpZGF0b3JFbCgpOiBWYWxpZGF0b3JFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RFbDtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgbXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudDogTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudDtcbiAgcHJpdmF0ZSBzaW11bGF0ZUNoYW5nZUNhbGxiYWNrPzogKCkgPT4gdm9pZDtcbiAgcHJpdmF0ZSByZWFkb25seSB2YWx1ZXM6IFRbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IG11bHRpcGxlIGRyb3Bkb3duIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGNvbnRhaW5lckVsIC0gVGhlIGNvbnRhaW5lciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29udGFpbmVyRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLm11bHRpcGxlRHJvcGRvd25Db21wb25lbnQgPSBuZXcgTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudChjb250YWluZXJFbCk7XG4gICAgYWRkUGx1Z2luQ3NzQ2xhc3Nlcyhjb250YWluZXJFbCwgQ3NzQ2xhc3MuVHlwZWRNdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGFuIG9wdGlvbiB0byB0aGUgZHJvcGRvd24uXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSBvZiB0aGUgb3B0aW9uLlxuICAgKiBAcGFyYW0gZGlzcGxheSAtIFRoZSBkaXNwbGF5IHRleHQgb2YgdGhlIG9wdGlvbi5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBhZGRPcHRpb24odmFsdWU6IFQsIGRpc3BsYXk6IHN0cmluZyk6IHRoaXMge1xuICAgIGxldCBpbmRleCA9IHRoaXMudmFsdWVzLmluZGV4T2YodmFsdWUpO1xuICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgIHRoaXMudmFsdWVzLnB1c2godmFsdWUpO1xuICAgICAgaW5kZXggPSB0aGlzLnZhbHVlcy5sZW5ndGggLSAxO1xuICAgIH1cbiAgICB0aGlzLm11bHRpcGxlRHJvcGRvd25Db21wb25lbnQuYWRkT3B0aW9uKFN0cmluZyhpbmRleCksIGRpc3BsYXkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgbXVsdGlwbGUgb3B0aW9ucyB0byB0aGUgZHJvcGRvd24uXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgdG8gYWRkLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGFkZE9wdGlvbnMob3B0aW9uczogTWFwPFQsIHN0cmluZz4pOiB0aGlzIHtcbiAgICBmb3IgKGNvbnN0IFt2YWx1ZSwgZGlzcGxheV0gb2Ygb3B0aW9ucy5lbnRyaWVzKCkpIHtcbiAgICAgIHRoaXMuYWRkT3B0aW9uKHZhbHVlLCBkaXNwbGF5KTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0VmFsdWUoKTogcmVhZG9ubHkgVFtdIHtcbiAgICBjb25zdCBpbmRpY2VzID0gdGhpcy5tdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50LmdldFZhbHVlKCkubWFwKChzdHIpID0+IHBhcnNlSW50KHN0ciwgMTApKTtcbiAgICByZXR1cm4gaW5kaWNlcy5tYXAoKGluZGV4KSA9PiB0aGlzLnZhbHVlc1tpbmRleF0pLmZpbHRlcigodmFsdWUpOiB2YWx1ZSBpcyBUID0+IHZhbHVlICE9PSB1bmRlZmluZWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBjb21wb25lbnQgaXMgY2hhbmdlZC5cbiAgICpcbiAgICogQHBhcmFtIGNhbGxiYWNrIC0gVGhlIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBjb21wb25lbnQgaXMgY2hhbmdlZC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvbkNoYW5nZShjYWxsYmFjazogKHZhbHVlOiByZWFkb25seSBUW10pID0+IHZvaWQpOiB0aGlzIHtcbiAgICBjb25zdCBjaGFuZ2VIYW5kbGVyID0gKCk6IHZvaWQgPT4ge1xuICAgICAgY2FsbGJhY2sodGhpcy5nZXRWYWx1ZSgpKTtcbiAgICB9O1xuICAgIHRoaXMuc2ltdWxhdGVDaGFuZ2VDYWxsYmFjayA9IGNoYW5nZUhhbmRsZXI7XG4gICAgdGhpcy5tdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50Lm9uQ2hhbmdlKGNoYW5nZUhhbmRsZXIpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBkaXNhYmxlZCAtIFRoZSBkaXNhYmxlZCBzdGF0ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0RGlzYWJsZWQoZGlzYWJsZWQ6IGJvb2xlYW4pOiB0aGlzIHtcbiAgICBzdXBlci5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgdGhpcy5tdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50LnNldERpc2FibGVkKGRpc2FibGVkKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldFZhbHVlKHZhbHVlOiByZWFkb25seSBUW10pOiB0aGlzIHtcbiAgICBjb25zdCBpbmRpY2VzID0gdmFsdWUubWFwKCh2KSA9PiB0aGlzLnZhbHVlcy5pbmRleE9mKHYpKS5maWx0ZXIoKGluZGV4KSA9PiBpbmRleCAhPT0gLTEpO1xuICAgIHRoaXMubXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudC5zZXRWYWx1ZShpbmRpY2VzLm1hcCgoaW5kZXgpID0+IFN0cmluZyhpbmRleCkpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTaW11bGF0ZSBhIGNoYW5nZSBldmVudC5cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgVXNlIG9ubHkgZnJvbSB0ZXN0cyB0byBzaW11bGF0ZSBhIGNoYW5nZSBldmVudC5cbiAgICovXG4gIHB1YmxpYyBzaW11bGF0ZUNoYW5nZV9fKCk6IHZvaWQge1xuICAgIHRoaXMuc2ltdWxhdGVDaGFuZ2VDYWxsYmFjaz8uKCk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsU0FBUyxzQkFBc0I7QUFVL0IsU0FBUyxnQkFBZ0I7QUFDekIsU0FBUywyQkFBMkI7QUFDcEMsU0FBUyxpQ0FBaUM7QUFhbkMsTUFBTSx1Q0FBMEMsZUFBMkc7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNaEssSUFBVyxXQUE4QjtBQUN2QyxXQUFPLEtBQUssMEJBQTBCO0FBQUEsRUFDeEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxJQUFXLGNBQWdDO0FBQ3pDLFdBQU8sS0FBSztBQUFBLEVBQ2Q7QUFBQSxFQUVpQjtBQUFBLEVBQ1Q7QUFBQSxFQUNTLFNBQWMsQ0FBQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU96QixZQUFZLGFBQTBCO0FBQzNDLFVBQU07QUFDTixTQUFLLDRCQUE0QixJQUFJLDBCQUEwQixXQUFXO0FBQzFFLHdCQUFvQixhQUFhLFNBQVMsOEJBQThCO0FBQUEsRUFDMUU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU08sVUFBVSxPQUFVLFNBQXVCO0FBQ2hELFFBQUksUUFBUSxLQUFLLE9BQU8sUUFBUSxLQUFLO0FBQ3JDLFFBQUksVUFBVSxJQUFJO0FBQ2hCLFdBQUssT0FBTyxLQUFLLEtBQUs7QUFDdEIsY0FBUSxLQUFLLE9BQU8sU0FBUztBQUFBLElBQy9CO0FBQ0EsU0FBSywwQkFBMEIsVUFBVSxPQUFPLEtBQUssR0FBRyxPQUFPO0FBQy9ELFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxXQUFXLFNBQStCO0FBQy9DLGVBQVcsQ0FBQyxPQUFPLE9BQU8sS0FBSyxRQUFRLFFBQVEsR0FBRztBQUNoRCxXQUFLLFVBQVUsT0FBTyxPQUFPO0FBQUEsSUFDL0I7QUFDQSxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLFdBQXlCO0FBQzlCLFVBQU0sVUFBVSxLQUFLLDBCQUEwQixTQUFTLEVBQUUsSUFBSSxDQUFDLFFBQVEsU0FBUyxLQUFLLEVBQUUsQ0FBQztBQUN4RixXQUFPLFFBQVEsSUFBSSxDQUFDLFVBQVUsS0FBSyxPQUFPLEtBQUssQ0FBQyxFQUFFLE9BQU8sQ0FBQyxVQUFzQixVQUFVLE1BQVM7QUFBQSxFQUNyRztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sU0FBUyxVQUErQztBQUM3RCxVQUFNLGdCQUFnQixNQUFZO0FBQ2hDLGVBQVMsS0FBSyxTQUFTLENBQUM7QUFBQSxJQUMxQjtBQUNBLFNBQUsseUJBQXlCO0FBQzlCLFNBQUssMEJBQTBCLFNBQVMsYUFBYTtBQUNyRCxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLFlBQVksVUFBeUI7QUFDbkQsVUFBTSxZQUFZLFFBQVE7QUFDMUIsU0FBSywwQkFBMEIsWUFBWSxRQUFRO0FBQ25ELFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxTQUFTLE9BQTJCO0FBQ3pDLFVBQU0sVUFBVSxNQUFNLElBQUksQ0FBQyxNQUFNLEtBQUssT0FBTyxRQUFRLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxVQUFVLFVBQVUsRUFBRTtBQUN2RixTQUFLLDBCQUEwQixTQUFTLFFBQVEsSUFBSSxDQUFDLFVBQVUsT0FBTyxLQUFLLENBQUMsQ0FBQztBQUM3RSxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLG1CQUF5QjtBQUM5QixTQUFLLHlCQUF5QjtBQUFBLEVBQ2hDO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
149
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3NldHRpbmctY29tcG9uZW50cy90eXBlZC1tdWx0aXBsZS1kcm9wZG93bi1jb21wb25lbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBDb250YWlucyBhIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhIG11bHRpLXNlbGVjdCBkcm9wZG93bi5cbiAqL1xuXG5pbXBvcnQgeyBWYWx1ZUNvbXBvbmVudCB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBWYWxpZGF0b3JFbGVtZW50IH0gZnJvbSAnLi4vLi4vaHRtbC1lbGVtZW50LnRzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYGluaXRQbHVnaW5Db250ZXh0YCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbmltcG9ydCB0eXBlIHsgaW5pdFBsdWdpbkNvbnRleHQgfSBmcm9tICcuLi9wbHVnaW4vcGx1Z2luLWNvbnRleHQudHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycyAtLSBXZSBuZWVkIHRvIGltcG9ydCBgU2V0dGluZ0V4YCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbmltcG9ydCB0eXBlIHsgU2V0dGluZ0V4IH0gZnJvbSAnLi4vc2V0dGluZy1leC50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbGlkYXRvckNvbXBvbmVudCB9IGZyb20gJy4vdmFsaWRhdG9yLWNvbXBvbmVudC50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nIH0gZnJvbSAnLi92YWx1ZS1jb21wb25lbnQtd2l0aC1jaGFuZ2UtdHJhY2tpbmcudHMnO1xuXG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uL2Nzcy1jbGFzcy50cyc7XG5pbXBvcnQgeyBhZGRQbHVnaW5Dc3NDbGFzc2VzIH0gZnJvbSAnLi4vcGx1Z2luL3BsdWdpbi1jb250ZXh0LnRzJztcbmltcG9ydCB7IE11bHRpcGxlRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuL211bHRpcGxlLWRyb3Bkb3duLWNvbXBvbmVudC50cyc7XG5cbi8qKlxuICogQSBtdWx0aS1zZWxlY3QgZHJvcGRvd24gY29tcG9uZW50LlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkVHlwZWRNdWx0aXBsZURyb3Bkb3dufS5cbiAqXG4gKiBJbiBvcmRlciB0byBhZGQgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbXBvbmVudCwgdXNlIHtAbGluayBpbml0UGx1Z2luQ29udGV4dH0gaW4geW91ciBwbHVnaW4ncyBgb25sb2FkKClgIGZ1bmN0aW9uLlxuICpcbiAqIEFsdGVybmF0aXZlbHksIHlvdSBjYW4gY29weSBzdHlsZXMgZnJvbSB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL21uYW91bW92L29ic2lkaWFuLWRldi11dGlscy9yZWxlYXNlcy9sYXRlc3QvZG93bmxvYWQvc3R5bGVzLmNzc30uXG4gKlxuICogQHR5cGVQYXJhbSBUIC0gVGhlIHR5cGUgb2YgdGhlIHZhbHVlIHRvIHNlbGVjdC5cbiAqL1xuZXhwb3J0IGNsYXNzIFR5cGVkTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudDxUPiBleHRlbmRzIFZhbHVlQ29tcG9uZW50PHJlYWRvbmx5IFRbXT4gaW1wbGVtZW50cyBWYWxpZGF0b3JDb21wb25lbnQsIFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPHJlYWRvbmx5IFRbXT4ge1xuICAvKipcbiAgICogQSBzZWxlY3QgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgc2VsZWN0IGVsZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHNlbGVjdEVsKCk6IEhUTUxTZWxlY3RFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5tdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50LnNlbGVjdEVsO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgdmFsaWRhdG9yIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbGlkYXRvciBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGdldCB2YWxpZGF0b3JFbCgpOiBWYWxpZGF0b3JFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RFbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgaW5uZXIgbXVsdGlwbGUgZHJvcGRvd24gY29tcG9uZW50LlxuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG11bHRpcGxlRHJvcGRvd25Db21wb25lbnQ6IE11bHRpcGxlRHJvcGRvd25Db21wb25lbnQ7XG5cbiAgLyoqXG4gICAqIFRoZSBsaXN0IG9mIHNlbGVjdGFibGUgb3B0aW9uIHZhbHVlcywgaW5kZXhlZCBieSB0aGVpciBwb3NpdGlvbiBpbiB0aGUgZHJvcGRvd24uXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdmFsdWVzOiBUW10gPSBbXTtcblxuICBwcml2YXRlIHNpbXVsYXRlQ2hhbmdlQ2FsbGJhY2s/OiAoKSA9PiB2b2lkO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IG11bHRpcGxlIGRyb3Bkb3duIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGNvbnRhaW5lckVsIC0gVGhlIGNvbnRhaW5lciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29udGFpbmVyRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLm11bHRpcGxlRHJvcGRvd25Db21wb25lbnQgPSBuZXcgTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudChjb250YWluZXJFbCk7XG4gICAgYWRkUGx1Z2luQ3NzQ2xhc3Nlcyhjb250YWluZXJFbCwgQ3NzQ2xhc3MuVHlwZWRNdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGFuIG9wdGlvbiB0byB0aGUgZHJvcGRvd24uXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSBvZiB0aGUgb3B0aW9uLlxuICAgKiBAcGFyYW0gZGlzcGxheSAtIFRoZSBkaXNwbGF5IHRleHQgb2YgdGhlIG9wdGlvbi5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBhZGRPcHRpb24odmFsdWU6IFQsIGRpc3BsYXk6IHN0cmluZyk6IHRoaXMge1xuICAgIGxldCBpbmRleCA9IHRoaXMudmFsdWVzLmluZGV4T2YodmFsdWUpO1xuICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgIHRoaXMudmFsdWVzLnB1c2godmFsdWUpO1xuICAgICAgaW5kZXggPSB0aGlzLnZhbHVlcy5sZW5ndGggLSAxO1xuICAgIH1cbiAgICB0aGlzLm11bHRpcGxlRHJvcGRvd25Db21wb25lbnQuYWRkT3B0aW9uKFN0cmluZyhpbmRleCksIGRpc3BsYXkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgbXVsdGlwbGUgb3B0aW9ucyB0byB0aGUgZHJvcGRvd24uXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgdG8gYWRkLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGFkZE9wdGlvbnMob3B0aW9uczogTWFwPFQsIHN0cmluZz4pOiB0aGlzIHtcbiAgICBmb3IgKGNvbnN0IFt2YWx1ZSwgZGlzcGxheV0gb2Ygb3B0aW9ucy5lbnRyaWVzKCkpIHtcbiAgICAgIHRoaXMuYWRkT3B0aW9uKHZhbHVlLCBkaXNwbGF5KTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0VmFsdWUoKTogcmVhZG9ubHkgVFtdIHtcbiAgICBjb25zdCBpbmRpY2VzID0gdGhpcy5tdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50LmdldFZhbHVlKCkubWFwKChzdHIpID0+IHBhcnNlSW50KHN0ciwgMTApKTtcbiAgICByZXR1cm4gaW5kaWNlcy5tYXAoKGluZGV4KSA9PiB0aGlzLnZhbHVlc1tpbmRleF0pLmZpbHRlcigodmFsdWUpOiB2YWx1ZSBpcyBUID0+IHZhbHVlICE9PSB1bmRlZmluZWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBjb21wb25lbnQgaXMgY2hhbmdlZC5cbiAgICpcbiAgICogQHBhcmFtIGNhbGxiYWNrIC0gVGhlIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBjb21wb25lbnQgaXMgY2hhbmdlZC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvbkNoYW5nZShjYWxsYmFjazogKHZhbHVlOiByZWFkb25seSBUW10pID0+IHZvaWQpOiB0aGlzIHtcbiAgICBjb25zdCBjaGFuZ2VIYW5kbGVyID0gKCk6IHZvaWQgPT4ge1xuICAgICAgY2FsbGJhY2sodGhpcy5nZXRWYWx1ZSgpKTtcbiAgICB9O1xuICAgIHRoaXMuc2ltdWxhdGVDaGFuZ2VDYWxsYmFjayA9IGNoYW5nZUhhbmRsZXI7XG4gICAgdGhpcy5tdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50Lm9uQ2hhbmdlKGNoYW5nZUhhbmRsZXIpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBkaXNhYmxlZCAtIFRoZSBkaXNhYmxlZCBzdGF0ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0RGlzYWJsZWQoZGlzYWJsZWQ6IGJvb2xlYW4pOiB0aGlzIHtcbiAgICBzdXBlci5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgdGhpcy5tdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50LnNldERpc2FibGVkKGRpc2FibGVkKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldFZhbHVlKHZhbHVlOiByZWFkb25seSBUW10pOiB0aGlzIHtcbiAgICBjb25zdCBpbmRpY2VzID0gdmFsdWUubWFwKCh2KSA9PiB0aGlzLnZhbHVlcy5pbmRleE9mKHYpKS5maWx0ZXIoKGluZGV4KSA9PiBpbmRleCAhPT0gLTEpO1xuICAgIHRoaXMubXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudC5zZXRWYWx1ZShpbmRpY2VzLm1hcCgoaW5kZXgpID0+IFN0cmluZyhpbmRleCkpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTaW11bGF0ZSBhIGNoYW5nZSBldmVudC5cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgVXNlIG9ubHkgZnJvbSB0ZXN0cyB0byBzaW11bGF0ZSBhIGNoYW5nZSBldmVudC5cbiAgICovXG4gIHB1YmxpYyBzaW11bGF0ZUNoYW5nZV9fKCk6IHZvaWQge1xuICAgIHRoaXMuc2ltdWxhdGVDaGFuZ2VDYWxsYmFjaz8uKCk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7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
@@ -20,7 +20,7 @@ export interface StatusBarItemRegistrar {
20
20
  * Status bar item registrar in an Obsidian plugin.
21
21
  */
22
22
  export declare class PluginStatusBarItemRegistrar implements StatusBarItemRegistrar {
23
- private readonly plugin;
23
+ protected readonly plugin: Plugin;
24
24
  /**
25
25
  * Creates a new instance of the {@link PluginStatusBarItemRegistrar} class.
26
26
  *
@@ -44,4 +44,4 @@ class PluginStatusBarItemRegistrar {
44
44
  export {
45
45
  PluginStatusBarItemRegistrar
46
46
  };
47
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3N0YXR1cy1iYXItaXRlbS1yZWdpc3RyYXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBTdGF0dXMgYmFyIGl0ZW0gcmVnaXN0cmFycy5cbiAqL1xuXG5pbXBvcnQgeyBQbHVnaW4gfSBmcm9tICdvYnNpZGlhbic7XG5cbi8qKlxuICogU3RhdHVzIGJhciBpdGVtIHJlZ2lzdHJhci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdGF0dXNCYXJJdGVtUmVnaXN0cmFyIHtcbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIHN0YXR1cyBiYXIgaXRlbS5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHJlZ2lzdGVyZWQgc3RhdHVzIGJhciBpdGVtIGVsZW1lbnQuXG4gICAqL1xuICBhZGRTdGF0dXNCYXJJdGVtKCk6IEhUTUxFbGVtZW50O1xufVxuXG4vKipcbiAqIFN0YXR1cyBiYXIgaXRlbSByZWdpc3RyYXIgaW4gYW4gT2JzaWRpYW4gcGx1Z2luLlxuICovXG5leHBvcnQgY2xhc3MgUGx1Z2luU3RhdHVzQmFySXRlbVJlZ2lzdHJhciBpbXBsZW1lbnRzIFN0YXR1c0Jhckl0ZW1SZWdpc3RyYXIge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBpbnN0YW5jZSBvZiB0aGUge0BsaW5rIFBsdWdpblN0YXR1c0Jhckl0ZW1SZWdpc3RyYXJ9IGNsYXNzLlxuICAgKlxuICAgKiBAcGFyYW0gcGx1Z2luIC0gVGhlIE9ic2lkaWFuIHBsdWdpbiBpbnN0YW5jZS5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHBsdWdpbjogUGx1Z2luKSB7fVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgYSBzdGF0dXMgYmFyIGl0ZW0uXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSByZWdpc3RlcmVkIHN0YXR1cyBiYXIgaXRlbSBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGFkZFN0YXR1c0Jhckl0ZW0oKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLnBsdWdpbi5hZGRTdGF0dXNCYXJJdGVtKCk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsU0FBUyxjQUFjO0FBaUJoQixNQUFNLDZCQUErRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1uRSxZQUE2QixRQUFnQjtBQUFoQjtBQUFBLEVBQWlCO0FBQUEsRUFBakI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPN0IsbUJBQWdDO0FBQ3JDLFdBQU8sS0FBSyxPQUFPLGlCQUFpQjtBQUFBLEVBQ3RDO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
47
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL3N0YXR1cy1iYXItaXRlbS1yZWdpc3RyYXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBTdGF0dXMgYmFyIGl0ZW0gcmVnaXN0cmFycy5cbiAqL1xuXG5pbXBvcnQgeyBQbHVnaW4gfSBmcm9tICdvYnNpZGlhbic7XG5cbi8qKlxuICogU3RhdHVzIGJhciBpdGVtIHJlZ2lzdHJhci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdGF0dXNCYXJJdGVtUmVnaXN0cmFyIHtcbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIHN0YXR1cyBiYXIgaXRlbS5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHJlZ2lzdGVyZWQgc3RhdHVzIGJhciBpdGVtIGVsZW1lbnQuXG4gICAqL1xuICBhZGRTdGF0dXNCYXJJdGVtKCk6IEhUTUxFbGVtZW50O1xufVxuXG4vKipcbiAqIFN0YXR1cyBiYXIgaXRlbSByZWdpc3RyYXIgaW4gYW4gT2JzaWRpYW4gcGx1Z2luLlxuICovXG5leHBvcnQgY2xhc3MgUGx1Z2luU3RhdHVzQmFySXRlbVJlZ2lzdHJhciBpbXBsZW1lbnRzIFN0YXR1c0Jhckl0ZW1SZWdpc3RyYXIge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBpbnN0YW5jZSBvZiB0aGUge0BsaW5rIFBsdWdpblN0YXR1c0Jhckl0ZW1SZWdpc3RyYXJ9IGNsYXNzLlxuICAgKlxuICAgKiBAcGFyYW0gcGx1Z2luIC0gVGhlIE9ic2lkaWFuIHBsdWdpbiBpbnN0YW5jZS5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcmVhZG9ubHkgcGx1Z2luOiBQbHVnaW4pIHt9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIHN0YXR1cyBiYXIgaXRlbS5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHJlZ2lzdGVyZWQgc3RhdHVzIGJhciBpdGVtIGVsZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgYWRkU3RhdHVzQmFySXRlbSgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMucGx1Z2luLmFkZFN0YXR1c0Jhckl0ZW0oKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNQSxTQUFTLGNBQWM7QUFpQmhCLE1BQU0sNkJBQStEO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTW5FLFlBQStCLFFBQWdCO0FBQWhCO0FBQUEsRUFBaUI7QUFBQSxFQUFqQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU8vQixtQkFBZ0M7QUFDckMsV0FBTyxLQUFLLE9BQU8saUJBQWlCO0FBQUEsRUFDdEM7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -55,7 +55,10 @@ export interface VaultTransactionConstructorParams {
55
55
  * `await using`-friendly: if neither is called, disposal rolls back.
56
56
  */
57
57
  export declare class VaultTransaction {
58
- private readonly app;
58
+ /**
59
+ * The Obsidian application instance the transaction mutates.
60
+ */
61
+ protected readonly app: App;
59
62
  private hasStagingFolder;
60
63
  private mutationBypass;
61
64
  private readonly stagedTrashPaths;