obsidian-dev-utils 48.1.2 → 48.1.4

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 (257) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/lib/cjs/Async.cjs +4 -2
  3. package/dist/lib/cjs/Async.d.cts +28 -19
  4. package/dist/lib/cjs/Blob.cjs +3 -4
  5. package/dist/lib/cjs/Debug.cjs +1 -1
  6. package/dist/lib/cjs/DebugController.cjs +1 -1
  7. package/dist/lib/cjs/Enum.cjs +4 -11
  8. package/dist/lib/cjs/Error.cjs +5 -4
  9. package/dist/lib/cjs/Library.cjs +1 -1
  10. package/dist/lib/cjs/ObjectUtils.cjs +15 -7
  11. package/dist/lib/cjs/ObjectUtils.d.cts +17 -13
  12. package/dist/lib/cjs/RegExp.cjs +3 -1
  13. package/dist/lib/cjs/ScriptUtils/ESLint/ESLint.cjs +3 -4
  14. package/dist/lib/cjs/ScriptUtils/ESLint/eslint.config.cjs +4 -2
  15. package/dist/lib/cjs/ScriptUtils/Exec.cjs +1 -1
  16. package/dist/lib/cjs/ScriptUtils/Exec.d.cts +6 -6
  17. package/dist/lib/cjs/ScriptUtils/Fs.cjs +1 -1
  18. package/dist/lib/cjs/ScriptUtils/Fs.d.cts +7 -7
  19. package/dist/lib/cjs/ScriptUtils/JSON.cjs +1 -1
  20. package/dist/lib/cjs/ScriptUtils/JSON.d.cts +1 -1
  21. package/dist/lib/cjs/ScriptUtils/NodeModules.cjs +1 -1
  22. package/dist/lib/cjs/ScriptUtils/Npm.cjs +5 -5
  23. package/dist/lib/cjs/ScriptUtils/Npm.d.cts +2 -2
  24. package/dist/lib/cjs/ScriptUtils/NpmRun.cjs +12 -3
  25. package/dist/lib/cjs/ScriptUtils/NpmRun.d.cts +7 -0
  26. package/dist/lib/cjs/ScriptUtils/cli.cjs +1 -1
  27. package/dist/lib/cjs/ScriptUtils/esbuild/Dependency.cjs +3 -3
  28. package/dist/lib/cjs/ScriptUtils/esbuild/ObsidianPluginBuilder.cjs +11 -11
  29. package/dist/lib/cjs/ScriptUtils/esbuild/ObsidianPluginBuilder.d.cts +4 -4
  30. package/dist/lib/cjs/ScriptUtils/esbuild/changeExtensionPlugin.cjs +1 -1
  31. package/dist/lib/cjs/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.cjs +1 -1
  32. package/dist/lib/cjs/ScriptUtils/esbuild/customEsbuildOptionsPlugin.cjs +1 -1
  33. package/dist/lib/cjs/ScriptUtils/esbuild/fixEsmPlugin.cjs +1 -1
  34. package/dist/lib/cjs/ScriptUtils/esbuild/fixSourceMapsPlugin.cjs +1 -1
  35. package/dist/lib/cjs/ScriptUtils/esbuild/preprocessPlugin.cjs +14 -1
  36. package/dist/lib/cjs/ScriptUtils/esbuild/renameCssPlugin.cjs +1 -1
  37. package/dist/lib/cjs/ScriptUtils/esbuild/svelteWrapperPlugin.cjs +1 -1
  38. package/dist/lib/cjs/ScriptUtils/format.cjs +4 -7
  39. package/dist/lib/cjs/ScriptUtils/markdownlint/markdownlint-cli2-config.cjs +1 -1
  40. package/dist/lib/cjs/ScriptUtils/markdownlint/markdownlint.cjs +3 -4
  41. package/dist/lib/cjs/ScriptUtils/version.cjs +12 -10
  42. package/dist/lib/cjs/String.cjs +1 -1
  43. package/dist/lib/cjs/Transformers/GroupTransformer.cjs +4 -6
  44. package/dist/lib/cjs/Transformers/Transformer.cjs +1 -1
  45. package/dist/lib/cjs/Transformers/Transformer.d.cts +1 -1
  46. package/dist/lib/cjs/Type.cjs +13 -33
  47. package/dist/lib/cjs/Type.d.cts +52 -73
  48. package/dist/lib/cjs/TypeGuards.cjs +156 -0
  49. package/dist/lib/cjs/TypeGuards.d.cts +47 -0
  50. package/dist/lib/cjs/codemirror/StateFieldSpec.cjs +1 -1
  51. package/dist/lib/cjs/index.cjs +4 -1
  52. package/dist/lib/cjs/index.d.cts +1 -0
  53. package/dist/lib/cjs/obsidian/App.cjs +1 -1
  54. package/dist/lib/cjs/obsidian/AsyncWithNotice.cjs +1 -1
  55. package/dist/lib/cjs/obsidian/AsyncWithNotice.d.cts +11 -11
  56. package/dist/lib/cjs/obsidian/AttachmentPath.cjs +1 -1
  57. package/dist/lib/cjs/obsidian/AttachmentPath.d.cts +23 -23
  58. package/dist/lib/cjs/obsidian/Backlink.cjs +3 -3
  59. package/dist/lib/cjs/obsidian/Backlink.d.cts +6 -6
  60. package/dist/lib/cjs/obsidian/Callout.cjs +3 -3
  61. package/dist/lib/cjs/obsidian/Callout.d.cts +6 -6
  62. package/dist/lib/cjs/obsidian/CodeBlockMarkdownInformation.cjs +1 -1
  63. package/dist/lib/cjs/obsidian/Commands/AbstractFileCommandBase.cjs +1 -1
  64. package/dist/lib/cjs/obsidian/Commands/AbstractFileCommandBase.d.cts +7 -7
  65. package/dist/lib/cjs/obsidian/Commands/CommandBase.cjs +3 -4
  66. package/dist/lib/cjs/obsidian/Commands/CommandBase.d.cts +4 -4
  67. package/dist/lib/cjs/obsidian/Commands/EditorCommandBase.cjs +1 -1
  68. package/dist/lib/cjs/obsidian/Commands/EditorCommandBase.d.cts +4 -4
  69. package/dist/lib/cjs/obsidian/Commands/FileCommandBase.cjs +1 -1
  70. package/dist/lib/cjs/obsidian/Commands/FolderCommandBase.cjs +1 -1
  71. package/dist/lib/cjs/obsidian/Commands/NonEditorCommandBase.cjs +1 -1
  72. package/dist/lib/cjs/obsidian/Components/SettingComponents/CodeHighlighterComponent.cjs +13 -2
  73. package/dist/lib/cjs/obsidian/Components/SettingComponents/CodeHighlighterComponent.d.cts +5 -0
  74. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleDropdownComponent.cjs +13 -2
  75. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleDropdownComponent.d.cts +5 -0
  76. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleTextComponent.cjs +13 -2
  77. package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleTextComponent.d.cts +5 -0
  78. package/dist/lib/cjs/obsidian/Components/SettingComponents/SettingComponentWrapper.cjs +3 -4
  79. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedDropdownComponent.cjs +13 -2
  80. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedDropdownComponent.d.cts +5 -0
  81. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.cjs +13 -2
  82. package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.d.cts +5 -0
  83. package/dist/lib/cjs/obsidian/Components/SettingComponents/ValueComponentWithChangeTracking.cjs +1 -1
  84. package/dist/lib/cjs/obsidian/Dataview.cjs +3 -2
  85. package/dist/lib/cjs/obsidian/Dataview.d.cts +15 -15
  86. package/dist/lib/cjs/obsidian/FileChange.cjs +1 -1
  87. package/dist/lib/cjs/obsidian/FileSystem.cjs +12 -10
  88. package/dist/lib/cjs/obsidian/Frontmatter.cjs +1 -1
  89. package/dist/lib/cjs/obsidian/Frontmatter.d.cts +1 -1
  90. package/dist/lib/cjs/obsidian/Link.cjs +23 -14
  91. package/dist/lib/cjs/obsidian/Link.d.cts +58 -58
  92. package/dist/lib/cjs/obsidian/Loop.cjs +3 -1
  93. package/dist/lib/cjs/obsidian/Loop.d.cts +11 -11
  94. package/dist/lib/cjs/obsidian/Markdown.cjs +3 -4
  95. package/dist/lib/cjs/obsidian/Markdown.d.cts +6 -6
  96. package/dist/lib/cjs/obsidian/MarkdownCodeBlockProcessor.cjs +4 -7
  97. package/dist/lib/cjs/obsidian/MarkdownCodeBlockProcessor.d.cts +12 -12
  98. package/dist/lib/cjs/obsidian/MetadataCache.cjs +3 -5
  99. package/dist/lib/cjs/obsidian/MetadataCache.d.cts +1 -1
  100. package/dist/lib/cjs/obsidian/Modals/Alert.cjs +1 -1
  101. package/dist/lib/cjs/obsidian/Modals/Alert.d.cts +5 -5
  102. package/dist/lib/cjs/obsidian/Modals/Confirm.cjs +1 -1
  103. package/dist/lib/cjs/obsidian/Modals/Confirm.d.cts +6 -6
  104. package/dist/lib/cjs/obsidian/Modals/Prompt.cjs +1 -1
  105. package/dist/lib/cjs/obsidian/Modals/Prompt.d.cts +7 -7
  106. package/dist/lib/cjs/obsidian/Modals/SelectItem.cjs +1 -1
  107. package/dist/lib/cjs/obsidian/Modals/SelectItem.d.cts +5 -5
  108. package/dist/lib/cjs/obsidian/MonkeyAround.cjs +1 -1
  109. package/dist/lib/cjs/obsidian/Pdf.cjs +1 -1
  110. package/dist/lib/cjs/obsidian/Pdf.d.cts +8 -8
  111. package/dist/lib/cjs/obsidian/Plugin/ObsidianPluginRepoPaths.cjs +3 -1
  112. package/dist/lib/cjs/obsidian/Plugin/ObsidianPluginRepoPaths.d.cts +4 -0
  113. package/dist/lib/cjs/obsidian/Plugin/PathSettings.cjs +5 -1
  114. package/dist/lib/cjs/obsidian/Plugin/PluginBase.cjs +1 -1
  115. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsManagerBase.cjs +1 -1
  116. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsManagerBase.d.cts +1 -1
  117. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsTabBase.cjs +1 -1
  118. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsTabBase.d.cts +6 -6
  119. package/dist/lib/cjs/obsidian/Plugin/PluginSettingsWrapper.cjs +1 -1
  120. package/dist/lib/cjs/obsidian/Plugin/PluginTypesBase.cjs +1 -1
  121. package/dist/lib/cjs/obsidian/Queue.cjs +1 -1
  122. package/dist/lib/cjs/obsidian/Queue.d.cts +14 -14
  123. package/dist/lib/cjs/obsidian/React/AppContext.cjs +3 -6
  124. package/dist/lib/cjs/obsidian/Reference.cjs +1 -1
  125. package/dist/lib/cjs/obsidian/RenameDeleteHandler.cjs +1 -1
  126. package/dist/lib/cjs/obsidian/Vault.cjs +1 -1
  127. package/dist/lib/cjs/obsidian/Vault.d.cts +3 -3
  128. package/dist/lib/cjs/obsidian/VaultEx.cjs +1 -1
  129. package/dist/lib/cjs/obsidian/i18n/CustomTypeOptionsBase.cjs +1 -1
  130. package/dist/lib/cjs/obsidian/i18n/DefaultTranslationsBase.cjs +1 -1
  131. package/dist/lib/cjs/obsidian/i18n/i18n.cjs +13 -3
  132. package/dist/lib/esm/Async.d.mts +28 -19
  133. package/dist/lib/esm/Async.mjs +4 -2
  134. package/dist/lib/esm/Blob.mjs +3 -4
  135. package/dist/lib/esm/Debug.mjs +1 -1
  136. package/dist/lib/esm/Enum.mjs +4 -11
  137. package/dist/lib/esm/Error.mjs +5 -4
  138. package/dist/lib/esm/Library.mjs +1 -1
  139. package/dist/lib/esm/ObjectUtils.d.mts +17 -13
  140. package/dist/lib/esm/ObjectUtils.mjs +18 -11
  141. package/dist/lib/esm/RegExp.mjs +3 -1
  142. package/dist/lib/esm/ScriptUtils/ESLint/ESLint.mjs +3 -4
  143. package/dist/lib/esm/ScriptUtils/ESLint/eslint.config.mjs +4 -2
  144. package/dist/lib/esm/ScriptUtils/Exec.d.mts +6 -6
  145. package/dist/lib/esm/ScriptUtils/Exec.mjs +1 -1
  146. package/dist/lib/esm/ScriptUtils/Fs.d.mts +7 -7
  147. package/dist/lib/esm/ScriptUtils/Fs.mjs +1 -1
  148. package/dist/lib/esm/ScriptUtils/JSON.d.mts +1 -1
  149. package/dist/lib/esm/ScriptUtils/JSON.mjs +1 -1
  150. package/dist/lib/esm/ScriptUtils/NodeModules.mjs +1 -1
  151. package/dist/lib/esm/ScriptUtils/Npm.d.mts +2 -2
  152. package/dist/lib/esm/ScriptUtils/Npm.mjs +5 -5
  153. package/dist/lib/esm/ScriptUtils/NpmRun.d.mts +7 -0
  154. package/dist/lib/esm/ScriptUtils/NpmRun.mjs +10 -2
  155. package/dist/lib/esm/ScriptUtils/cli.mjs +1 -1
  156. package/dist/lib/esm/ScriptUtils/esbuild/Dependency.mjs +3 -3
  157. package/dist/lib/esm/ScriptUtils/esbuild/ObsidianPluginBuilder.d.mts +4 -4
  158. package/dist/lib/esm/ScriptUtils/esbuild/ObsidianPluginBuilder.mjs +11 -11
  159. package/dist/lib/esm/ScriptUtils/esbuild/changeExtensionPlugin.mjs +1 -1
  160. package/dist/lib/esm/ScriptUtils/esbuild/copyToObsidianPluginsFolderPlugin.mjs +1 -1
  161. package/dist/lib/esm/ScriptUtils/esbuild/customEsbuildOptionsPlugin.mjs +1 -1
  162. package/dist/lib/esm/ScriptUtils/esbuild/fixEsmPlugin.mjs +1 -1
  163. package/dist/lib/esm/ScriptUtils/esbuild/fixSourceMapsPlugin.mjs +1 -1
  164. package/dist/lib/esm/ScriptUtils/esbuild/preprocessPlugin.mjs +1 -1
  165. package/dist/lib/esm/ScriptUtils/esbuild/renameCssPlugin.mjs +1 -1
  166. package/dist/lib/esm/ScriptUtils/esbuild/svelteWrapperPlugin.mjs +1 -1
  167. package/dist/lib/esm/ScriptUtils/format.mjs +4 -7
  168. package/dist/lib/esm/ScriptUtils/markdownlint/markdownlint-cli2-config.mjs +1 -1
  169. package/dist/lib/esm/ScriptUtils/markdownlint/markdownlint.mjs +3 -4
  170. package/dist/lib/esm/ScriptUtils/version.mjs +19 -11
  171. package/dist/lib/esm/String.mjs +1 -1
  172. package/dist/lib/esm/Transformers/GroupTransformer.mjs +7 -6
  173. package/dist/lib/esm/Transformers/Transformer.d.mts +1 -1
  174. package/dist/lib/esm/Transformers/Transformer.mjs +1 -1
  175. package/dist/lib/esm/Type.d.mts +52 -73
  176. package/dist/lib/esm/Type.mjs +12 -30
  177. package/dist/lib/esm/TypeGuards.d.mts +47 -0
  178. package/dist/lib/esm/TypeGuards.mjs +47 -0
  179. package/dist/lib/esm/index.d.mts +1 -0
  180. package/dist/lib/esm/index.mjs +3 -1
  181. package/dist/lib/esm/obsidian/App.mjs +1 -1
  182. package/dist/lib/esm/obsidian/AsyncWithNotice.d.mts +11 -11
  183. package/dist/lib/esm/obsidian/AsyncWithNotice.mjs +1 -1
  184. package/dist/lib/esm/obsidian/AttachmentPath.d.mts +23 -23
  185. package/dist/lib/esm/obsidian/AttachmentPath.mjs +1 -1
  186. package/dist/lib/esm/obsidian/Backlink.d.mts +6 -6
  187. package/dist/lib/esm/obsidian/Backlink.mjs +3 -3
  188. package/dist/lib/esm/obsidian/Callout.d.mts +6 -6
  189. package/dist/lib/esm/obsidian/Callout.mjs +3 -3
  190. package/dist/lib/esm/obsidian/Commands/AbstractFileCommandBase.d.mts +7 -7
  191. package/dist/lib/esm/obsidian/Commands/AbstractFileCommandBase.mjs +1 -1
  192. package/dist/lib/esm/obsidian/Commands/CommandBase.d.mts +4 -4
  193. package/dist/lib/esm/obsidian/Commands/CommandBase.mjs +3 -4
  194. package/dist/lib/esm/obsidian/Commands/EditorCommandBase.d.mts +4 -4
  195. package/dist/lib/esm/obsidian/Commands/EditorCommandBase.mjs +1 -1
  196. package/dist/lib/esm/obsidian/Commands/FileCommandBase.mjs +1 -1
  197. package/dist/lib/esm/obsidian/Commands/FolderCommandBase.mjs +1 -1
  198. package/dist/lib/esm/obsidian/Commands/NonEditorCommandBase.mjs +1 -1
  199. package/dist/lib/esm/obsidian/Components/SettingComponents/CodeHighlighterComponent.d.mts +5 -0
  200. package/dist/lib/esm/obsidian/Components/SettingComponents/CodeHighlighterComponent.mjs +13 -2
  201. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleDropdownComponent.d.mts +5 -0
  202. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleDropdownComponent.mjs +13 -2
  203. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleTextComponent.d.mts +5 -0
  204. package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleTextComponent.mjs +13 -2
  205. package/dist/lib/esm/obsidian/Components/SettingComponents/SettingComponentWrapper.mjs +3 -4
  206. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedDropdownComponent.d.mts +5 -0
  207. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedDropdownComponent.mjs +13 -2
  208. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.d.mts +5 -0
  209. package/dist/lib/esm/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.mjs +13 -2
  210. package/dist/lib/esm/obsidian/Dataview.d.mts +15 -15
  211. package/dist/lib/esm/obsidian/Dataview.mjs +4 -6
  212. package/dist/lib/esm/obsidian/FileChange.mjs +1 -1
  213. package/dist/lib/esm/obsidian/FileSystem.mjs +12 -10
  214. package/dist/lib/esm/obsidian/Frontmatter.d.mts +1 -1
  215. package/dist/lib/esm/obsidian/Frontmatter.mjs +1 -1
  216. package/dist/lib/esm/obsidian/Link.d.mts +58 -58
  217. package/dist/lib/esm/obsidian/Link.mjs +26 -14
  218. package/dist/lib/esm/obsidian/Loop.d.mts +11 -11
  219. package/dist/lib/esm/obsidian/Loop.mjs +3 -1
  220. package/dist/lib/esm/obsidian/Markdown.d.mts +6 -6
  221. package/dist/lib/esm/obsidian/Markdown.mjs +3 -4
  222. package/dist/lib/esm/obsidian/MarkdownCodeBlockProcessor.d.mts +12 -12
  223. package/dist/lib/esm/obsidian/MarkdownCodeBlockProcessor.mjs +4 -7
  224. package/dist/lib/esm/obsidian/MetadataCache.d.mts +1 -1
  225. package/dist/lib/esm/obsidian/MetadataCache.mjs +3 -5
  226. package/dist/lib/esm/obsidian/Modals/Alert.d.mts +5 -5
  227. package/dist/lib/esm/obsidian/Modals/Alert.mjs +1 -1
  228. package/dist/lib/esm/obsidian/Modals/Confirm.d.mts +6 -6
  229. package/dist/lib/esm/obsidian/Modals/Confirm.mjs +1 -1
  230. package/dist/lib/esm/obsidian/Modals/Prompt.d.mts +7 -7
  231. package/dist/lib/esm/obsidian/Modals/Prompt.mjs +1 -1
  232. package/dist/lib/esm/obsidian/Modals/SelectItem.d.mts +5 -5
  233. package/dist/lib/esm/obsidian/Modals/SelectItem.mjs +1 -1
  234. package/dist/lib/esm/obsidian/MonkeyAround.mjs +1 -1
  235. package/dist/lib/esm/obsidian/Pdf.d.mts +8 -8
  236. package/dist/lib/esm/obsidian/Pdf.mjs +1 -1
  237. package/dist/lib/esm/obsidian/Plugin/ObsidianPluginRepoPaths.d.mts +4 -0
  238. package/dist/lib/esm/obsidian/Plugin/ObsidianPluginRepoPaths.mjs +3 -1
  239. package/dist/lib/esm/obsidian/Plugin/PathSettings.mjs +5 -1
  240. package/dist/lib/esm/obsidian/Plugin/PluginBase.mjs +1 -1
  241. package/dist/lib/esm/obsidian/Plugin/PluginSettingsManagerBase.d.mts +1 -1
  242. package/dist/lib/esm/obsidian/Plugin/PluginSettingsManagerBase.mjs +1 -1
  243. package/dist/lib/esm/obsidian/Plugin/PluginSettingsTabBase.d.mts +6 -6
  244. package/dist/lib/esm/obsidian/Plugin/PluginSettingsTabBase.mjs +1 -1
  245. package/dist/lib/esm/obsidian/Queue.d.mts +14 -14
  246. package/dist/lib/esm/obsidian/Queue.mjs +1 -1
  247. package/dist/lib/esm/obsidian/React/AppContext.mjs +3 -6
  248. package/dist/lib/esm/obsidian/Reference.mjs +1 -1
  249. package/dist/lib/esm/obsidian/RenameDeleteHandler.mjs +1 -1
  250. package/dist/lib/esm/obsidian/Vault.d.mts +3 -3
  251. package/dist/lib/esm/obsidian/Vault.mjs +1 -1
  252. package/dist/lib/esm/obsidian/VaultEx.mjs +1 -1
  253. package/dist/lib/esm/obsidian/i18n/CustomTypeOptionsBase.mjs +1 -1
  254. package/dist/lib/esm/obsidian/i18n/DefaultTranslationsBase.mjs +1 -1
  255. package/dist/lib/esm/obsidian/i18n/i18n.mjs +2 -3
  256. package/dist/scripts/examples/format.prettier.ts +2 -3
  257. package/package.json +10 -2
@@ -20,6 +20,7 @@ if you want to view the source, please visit the github repository of this plugi
20
20
  })();
21
21
 
22
22
  import { invokeAsyncSafely } from "../../Async.mjs";
23
+ import { assertNonNullable } from "../../TypeGuards.mjs";
23
24
  class CommandBase {
24
25
  /**
25
26
  * The icon of the command.
@@ -130,9 +131,7 @@ class CommandInvocationBase {
130
131
  * Executes the command.
131
132
  */
132
133
  async execute() {
133
- if (this.lastCanExecuteResult === void 0) {
134
- throw new Error("canExecute() must be called before execute()");
135
- }
134
+ assertNonNullable(this.lastCanExecuteResult, "canExecute() must be called before execute()");
136
135
  if (!this.lastCanExecuteResult) {
137
136
  throw new Error("canExecute() must return true before execute()");
138
137
  }
@@ -143,4 +142,4 @@ export {
143
142
  CommandBase,
144
143
  CommandInvocationBase
145
144
  };
146
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbW1hbmRzL0NvbW1hbmRCYXNlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIEJhc2UgY2xhc3NlcyBmb3IgY29tbWFuZHMuXG4gKi9cblxuaW1wb3J0IHR5cGUge1xuICBBcHAsXG4gIENvbW1hbmQsXG4gIEljb25OYW1lLFxuICBQbHVnaW5cbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgeyBpbnZva2VBc3luY1NhZmVseSB9IGZyb20gJy4uLy4uL0FzeW5jLnRzJztcblxuLyoqXG4gKiBPcHRpb25zIGZvciBjcmVhdGluZyBhIGNvbW1hbmQuXG4gKlxuICogQHR5cGVQYXJhbSBUUGx1Z2luIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGJlbG9uZ3MgdG8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29tbWFuZEJhc2VPcHRpb25zPFRQbHVnaW4gZXh0ZW5kcyBQbHVnaW4+IHtcbiAgLyoqXG4gICAqIFRoZSBpY29uIHRvIHVzZSBmb3IgdGhlIGNvbW1hbmQuXG4gICAqL1xuICBpY29uOiBJY29uTmFtZTtcblxuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBjb21tYW5kLlxuICAgKi9cbiAgaWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGNvbW1hbmQuXG4gICAqL1xuICBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICAgKi9cbiAgcGx1Z2luOiBUUGx1Z2luO1xufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIGNvbW1hbmRzLlxuICpcbiAqIEB0eXBlUGFyYW0gVFBsdWdpbiAtIFRoZSB0eXBlIG9mIHRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ29tbWFuZEJhc2U8VFBsdWdpbiBleHRlbmRzIFBsdWdpbj4gaW1wbGVtZW50cyBDb21tYW5kIHtcbiAgLyoqXG4gICAqIFRoZSBpY29uIG9mIHRoZSBjb21tYW5kLlxuICAgKi9cbiAgcHVibGljIGljb246IEljb25OYW1lO1xuXG4gIC8qKlxuICAgKiBUaGUgSUQgb2YgdGhlIGNvbW1hbmQuXG4gICAqXG4gICAqIE9ic2lkaWFuIGNoYW5nZXMgdGhlIHBhc3NlZCBJRCBieSBwcmVwZW5kaW5nIHRoZSBwbHVnaW4ncyBJRCB0byBpdC5cbiAgICpcbiAgICogQHNlZSB7QGxpbmsgb3JpZ2luYWxJZH0uXG4gICAqL1xuICBwdWJsaWMgaWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGNvbW1hbmQuXG4gICAqXG4gICAqIE9ic2lkaWFuIGNoYW5nZXMgdGhlIHBhc3NlZCBuYW1lIGJ5IHByZXBlbmRpbmcgdGhlIHBsdWdpbidzIG5hbWUgdG8gaXQuXG4gICAqXG4gICAqIEBzZWUge0BsaW5rIG9yaWdpbmFsTmFtZX0uXG4gICAqL1xuICBwdWJsaWMgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgb3JpZ2luYWwgSUQgb2YgdGhlIGNvbW1hbmQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgb3JpZ2luYWxJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgb3JpZ2luYWwgbmFtZSBvZiB0aGUgY29tbWFuZC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBvcmlnaW5hbE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGFwcCB0aGF0IHRoZSBjb21tYW5kIGJlbG9uZ3MgdG8uXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXBwOiBBcHA7XG5cbiAgLyoqXG4gICAqIFRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHBsdWdpbjogVFBsdWdpbjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBjb21tYW5kLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciB0aGUgY29tbWFuZC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihvcHRpb25zOiBDb21tYW5kQmFzZU9wdGlvbnM8VFBsdWdpbj4pIHtcbiAgICB0aGlzLmlkID0gb3B0aW9ucy5pZDtcbiAgICB0aGlzLm5hbWUgPSBvcHRpb25zLm5hbWU7XG4gICAgdGhpcy5pY29uID0gb3B0aW9ucy5pY29uO1xuICAgIHRoaXMucGx1Z2luID0gb3B0aW9ucy5wbHVnaW47XG4gICAgdGhpcy5hcHAgPSB0aGlzLnBsdWdpbi5hcHA7XG4gICAgdGhpcy5vcmlnaW5hbElkID0gdGhpcy5pZDtcbiAgICB0aGlzLm9yaWdpbmFsTmFtZSA9IHRoaXMubmFtZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgdGhlIGNvbW1hbmQuXG4gICAqL1xuICBwdWJsaWMgcmVnaXN0ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5wbHVnaW4uYWRkQ29tbWFuZCh0aGlzKTtcbiAgfVxufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIGNvbW1hbmQgaW52b2NhdGlvbnMuXG4gKlxuICogQHR5cGVQYXJhbSBUUGx1Z2luIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGJlbG9uZ3MgdG8uXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbiBleHRlbmRzIFBsdWdpbiA9IFBsdWdpbj4ge1xuICAvKipcbiAgICogVGhlIGFwcCB0aGF0IHRoZSBjb21tYW5kIGludm9jYXRpb24gYmVsb25ncyB0by5cbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBhcHA6IEFwcDtcblxuICBwcml2YXRlIGxhc3RDYW5FeGVjdXRlUmVzdWx0PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBjb21tYW5kIGludm9jYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBwbHVnaW4gLSBUaGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgaW52b2NhdGlvbiBiZWxvbmdzIHRvLlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKHByb3RlY3RlZCByZWFkb25seSBwbHVnaW46IFRQbHVnaW4pIHtcbiAgICB0aGlzLmFwcCA9IHBsdWdpbi5hcHA7XG4gIH1cblxuICAvKipcbiAgICogSW52b2tlcyB0aGUgY29tbWFuZC5cbiAgICpcbiAgICogQHBhcmFtIGNoZWNraW5nIC0gSXMgY2hlY2tpbmcgbW9kZSBvbmx5LiBJZiBgdHJ1ZWAsIG9ubHkgdGhlIGNoZWNrIGlmIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlIGlzIHBlcmZvcm1lZC4gSWYgYGZhbHNlYCwgdGhlIGNvbW1hbmQgaXMgZXhlY3V0ZWQuXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgd2FzIGV4ZWN1dGVkLlxuICAgKi9cbiAgcHVibGljIGludm9rZShjaGVja2luZzogYm9vbGVhbik6IGJvb2xlYW4ge1xuICAgIHRoaXMubGFzdENhbkV4ZWN1dGVSZXN1bHQgPSB0aGlzLmNhbkV4ZWN1dGUoKTtcbiAgICBpZiAoIWNoZWNraW5nICYmIHRoaXMubGFzdENhbkV4ZWN1dGVSZXN1bHQpIHtcbiAgICAgIGludm9rZUFzeW5jU2FmZWx5KCgpID0+IHRoaXMuZXhlY3V0ZSgpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5sYXN0Q2FuRXhlY3V0ZVJlc3VsdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbnZva2VzIHRoZSBjb21tYW5kIGFzeW5jaHJvbm91c2x5LlxuICAgKlxuICAgKiBAcGFyYW0gY2hlY2tpbmcgLSBJcyBjaGVja2luZyBtb2RlIG9ubHkuIElmIGB0cnVlYCwgb25seSB0aGUgY2hlY2sgaWYgdGhlIGNvbW1hbmQgY2FuIGV4ZWN1dGUgaXMgcGVyZm9ybWVkLiBJZiBgZmFsc2VgLCB0aGUgY29tbWFuZCBpcyBleGVjdXRlZC5cbiAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgY29tbWFuZCBoYXMgYmVlbiBleGVjdXRlZC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBpbnZva2VBc3luYyhjaGVja2luZzogYm9vbGVhbik6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMubGFzdENhbkV4ZWN1dGVSZXN1bHQgPSB0aGlzLmNhbkV4ZWN1dGUoKTtcbiAgICBpZiAoIWNoZWNraW5nICYmIHRoaXMubGFzdENhbkV4ZWN1dGVSZXN1bHQpIHtcbiAgICAgIGF3YWl0IHRoaXMuZXhlY3V0ZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIGNvbW1hbmQgY2FuIGV4ZWN1dGUuXG4gICAqXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgY2FuIGV4ZWN1dGUuXG4gICAqL1xuICBwcm90ZWN0ZWQgY2FuRXhlY3V0ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyB0aGUgY29tbWFuZC5cbiAgICovXG4gIHByb3RlY3RlZCBhc3luYyBleGVjdXRlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLmxhc3RDYW5FeGVjdXRlUmVzdWx0ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignY2FuRXhlY3V0ZSgpIG11c3QgYmUgY2FsbGVkIGJlZm9yZSBleGVjdXRlKCknKTtcbiAgICB9XG4gICAgaWYgKCF0aGlzLmxhc3RDYW5FeGVjdXRlUmVzdWx0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2NhbkV4ZWN1dGUoKSBtdXN0IHJldHVybiB0cnVlIGJlZm9yZSBleGVjdXRlKCknKTtcbiAgICB9XG4gICAgYXdhaXQgUHJvbWlzZS5yZXNvbHZlKCk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWFBLFNBQVMseUJBQXlCO0FBa0MzQixNQUFlLFlBQXVEO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFJcEU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU0E7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtTO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS0c7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT1osWUFBWSxTQUFzQztBQUN2RCxTQUFLLEtBQUssUUFBUTtBQUNsQixTQUFLLE9BQU8sUUFBUTtBQUNwQixTQUFLLE9BQU8sUUFBUTtBQUNwQixTQUFLLFNBQVMsUUFBUTtBQUN0QixTQUFLLE1BQU0sS0FBSyxPQUFPO0FBQ3ZCLFNBQUssYUFBYSxLQUFLO0FBQ3ZCLFNBQUssZUFBZSxLQUFLO0FBQUEsRUFDM0I7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtPLFdBQWlCO0FBQ3RCLFNBQUssT0FBTyxXQUFXLElBQUk7QUFBQSxFQUM3QjtBQUNGO0FBT08sTUFBZSxzQkFBdUQ7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFhcEUsWUFBK0IsUUFBaUI7QUFBakI7QUFDcEMsU0FBSyxNQUFNLE9BQU87QUFBQSxFQUNwQjtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBWG1CO0FBQUEsRUFFWDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBaUJELE9BQU8sVUFBNEI7QUFDeEMsU0FBSyx1QkFBdUIsS0FBSyxXQUFXO0FBQzVDLFFBQUksQ0FBQyxZQUFZLEtBQUssc0JBQXNCO0FBQzFDLHdCQUFrQixNQUFNLEtBQUssUUFBUSxDQUFDO0FBQUEsSUFDeEM7QUFFQSxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRQSxNQUFhLFlBQVksVUFBa0M7QUFDekQsU0FBSyx1QkFBdUIsS0FBSyxXQUFXO0FBQzVDLFFBQUksQ0FBQyxZQUFZLEtBQUssc0JBQXNCO0FBQzFDLFlBQU0sS0FBSyxRQUFRO0FBQUEsSUFDckI7QUFBQSxFQUNGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT1UsYUFBc0I7QUFDOUIsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtBLE1BQWdCLFVBQXlCO0FBQ3ZDLFFBQUksS0FBSyx5QkFBeUIsUUFBVztBQUMzQyxZQUFNLElBQUksTUFBTSw4Q0FBOEM7QUFBQSxJQUNoRTtBQUNBLFFBQUksQ0FBQyxLQUFLLHNCQUFzQjtBQUM5QixZQUFNLElBQUksTUFBTSxnREFBZ0Q7QUFBQSxJQUNsRTtBQUNBLFVBQU0sUUFBUSxRQUFRO0FBQUEsRUFDeEI7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
145
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbW1hbmRzL0NvbW1hbmRCYXNlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIEJhc2UgY2xhc3NlcyBmb3IgY29tbWFuZHMuXG4gKi9cblxuLyogdjggaWdub3JlIHN0YXJ0IC0tIERlZXBseSBjb3VwbGVkIHRvIE9ic2lkaWFuIHJ1bnRpbWU7IHJlcXVpcmVzIHJ1bm5pbmcgdmF1bHQgZm9yIG1lYW5pbmdmdWwgdGVzdGluZy4gKi9cblxuaW1wb3J0IHR5cGUge1xuICBBcHAsXG4gIENvbW1hbmQsXG4gIEljb25OYW1lLFxuICBQbHVnaW5cbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgeyBpbnZva2VBc3luY1NhZmVseSB9IGZyb20gJy4uLy4uL0FzeW5jLnRzJztcbmltcG9ydCB7IGFzc2VydE5vbk51bGxhYmxlIH0gZnJvbSAnLi4vLi4vVHlwZUd1YXJkcy50cyc7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgY3JlYXRpbmcgYSBjb21tYW5kLlxuICpcbiAqIEB0eXBlUGFyYW0gVFBsdWdpbiAtIFRoZSB0eXBlIG9mIHRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbW1hbmRCYXNlT3B0aW9uczxUUGx1Z2luIGV4dGVuZHMgUGx1Z2luPiB7XG4gIC8qKlxuICAgKiBUaGUgaWNvbiB0byB1c2UgZm9yIHRoZSBjb21tYW5kLlxuICAgKi9cbiAgcmVhZG9ubHkgaWNvbjogSWNvbk5hbWU7XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgY29tbWFuZC5cbiAgICovXG4gIHJlYWRvbmx5IGlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBjb21tYW5kLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgYmVsb25ncyB0by5cbiAgICovXG4gIHJlYWRvbmx5IHBsdWdpbjogVFBsdWdpbjtcbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBjb21tYW5kcy5cbiAqXG4gKiBAdHlwZVBhcmFtIFRQbHVnaW4gLSBUaGUgdHlwZSBvZiB0aGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgYmVsb25ncyB0by5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIENvbW1hbmRCYXNlPFRQbHVnaW4gZXh0ZW5kcyBQbHVnaW4+IGltcGxlbWVudHMgQ29tbWFuZCB7XG4gIC8qKlxuICAgKiBUaGUgaWNvbiBvZiB0aGUgY29tbWFuZC5cbiAgICovXG4gIHB1YmxpYyBpY29uOiBJY29uTmFtZTtcblxuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBjb21tYW5kLlxuICAgKlxuICAgKiBPYnNpZGlhbiBjaGFuZ2VzIHRoZSBwYXNzZWQgSUQgYnkgcHJlcGVuZGluZyB0aGUgcGx1Z2luJ3MgSUQgdG8gaXQuXG4gICAqXG4gICAqIEBzZWUge0BsaW5rIG9yaWdpbmFsSWR9LlxuICAgKi9cbiAgcHVibGljIGlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBjb21tYW5kLlxuICAgKlxuICAgKiBPYnNpZGlhbiBjaGFuZ2VzIHRoZSBwYXNzZWQgbmFtZSBieSBwcmVwZW5kaW5nIHRoZSBwbHVnaW4ncyBuYW1lIHRvIGl0LlxuICAgKlxuICAgKiBAc2VlIHtAbGluayBvcmlnaW5hbE5hbWV9LlxuICAgKi9cbiAgcHVibGljIG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG9yaWdpbmFsIElEIG9mIHRoZSBjb21tYW5kLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG9yaWdpbmFsSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG9yaWdpbmFsIG5hbWUgb2YgdGhlIGNvbW1hbmQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgb3JpZ2luYWxOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBhcHAgdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICAgKi9cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGFwcDogQXBwO1xuXG4gIC8qKlxuICAgKiBUaGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgYmVsb25ncyB0by5cbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBwbHVnaW46IFRQbHVnaW47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgY29tbWFuZC5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBmb3IgdGhlIGNvbW1hbmQuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3Iob3B0aW9uczogQ29tbWFuZEJhc2VPcHRpb25zPFRQbHVnaW4+KSB7XG4gICAgdGhpcy5pZCA9IG9wdGlvbnMuaWQ7XG4gICAgdGhpcy5uYW1lID0gb3B0aW9ucy5uYW1lO1xuICAgIHRoaXMuaWNvbiA9IG9wdGlvbnMuaWNvbjtcbiAgICB0aGlzLnBsdWdpbiA9IG9wdGlvbnMucGx1Z2luO1xuICAgIHRoaXMuYXBwID0gdGhpcy5wbHVnaW4uYXBwO1xuICAgIHRoaXMub3JpZ2luYWxJZCA9IHRoaXMuaWQ7XG4gICAgdGhpcy5vcmlnaW5hbE5hbWUgPSB0aGlzLm5hbWU7XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIHRoZSBjb21tYW5kLlxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyKCk6IHZvaWQge1xuICAgIHRoaXMucGx1Z2luLmFkZENvbW1hbmQodGhpcyk7XG4gIH1cbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBjb21tYW5kIGludm9jYXRpb25zLlxuICpcbiAqIEB0eXBlUGFyYW0gVFBsdWdpbiAtIFRoZSB0eXBlIG9mIHRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4gZXh0ZW5kcyBQbHVnaW4gPSBQbHVnaW4+IHtcbiAgLyoqXG4gICAqIFRoZSBhcHAgdGhhdCB0aGUgY29tbWFuZCBpbnZvY2F0aW9uIGJlbG9uZ3MgdG8uXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXBwOiBBcHA7XG5cbiAgcHJpdmF0ZSBsYXN0Q2FuRXhlY3V0ZVJlc3VsdD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gcGx1Z2luIC0gVGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGludm9jYXRpb24gYmVsb25ncyB0by5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcmVhZG9ubHkgcGx1Z2luOiBUUGx1Z2luKSB7XG4gICAgdGhpcy5hcHAgPSBwbHVnaW4uYXBwO1xuICB9XG5cbiAgLyoqXG4gICAqIEludm9rZXMgdGhlIGNvbW1hbmQuXG4gICAqXG4gICAqIEBwYXJhbSBjaGVja2luZyAtIElzIGNoZWNraW5nIG1vZGUgb25seS4gSWYgYHRydWVgLCBvbmx5IHRoZSBjaGVjayBpZiB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZSBpcyBwZXJmb3JtZWQuIElmIGBmYWxzZWAsIHRoZSBjb21tYW5kIGlzIGV4ZWN1dGVkLlxuICAgKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBjb21tYW5kIHdhcyBleGVjdXRlZC5cbiAgICovXG4gIHB1YmxpYyBpbnZva2UoY2hlY2tpbmc6IGJvb2xlYW4pOiBib29sZWFuIHtcbiAgICB0aGlzLmxhc3RDYW5FeGVjdXRlUmVzdWx0ID0gdGhpcy5jYW5FeGVjdXRlKCk7XG4gICAgaWYgKCFjaGVja2luZyAmJiB0aGlzLmxhc3RDYW5FeGVjdXRlUmVzdWx0KSB7XG4gICAgICBpbnZva2VBc3luY1NhZmVseSgoKSA9PiB0aGlzLmV4ZWN1dGUoKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMubGFzdENhbkV4ZWN1dGVSZXN1bHQ7XG4gIH1cblxuICAvKipcbiAgICogSW52b2tlcyB0aGUgY29tbWFuZCBhc3luY2hyb25vdXNseS5cbiAgICpcbiAgICogQHBhcmFtIGNoZWNraW5nIC0gSXMgY2hlY2tpbmcgbW9kZSBvbmx5LiBJZiBgdHJ1ZWAsIG9ubHkgdGhlIGNoZWNrIGlmIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlIGlzIHBlcmZvcm1lZC4gSWYgYGZhbHNlYCwgdGhlIGNvbW1hbmQgaXMgZXhlY3V0ZWQuXG4gICAqIEByZXR1cm5zIEEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gdGhlIGNvbW1hbmQgaGFzIGJlZW4gZXhlY3V0ZWQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaW52b2tlQXN5bmMoY2hlY2tpbmc6IGJvb2xlYW4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLmxhc3RDYW5FeGVjdXRlUmVzdWx0ID0gdGhpcy5jYW5FeGVjdXRlKCk7XG4gICAgaWYgKCFjaGVja2luZyAmJiB0aGlzLmxhc3RDYW5FeGVjdXRlUmVzdWx0KSB7XG4gICAgICBhd2FpdCB0aGlzLmV4ZWN1dGUoKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlLlxuICAgKlxuICAgKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlLlxuICAgKi9cbiAgcHJvdGVjdGVkIGNhbkV4ZWN1dGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogRXhlY3V0ZXMgdGhlIGNvbW1hbmQuXG4gICAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgZXhlY3V0ZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhc3NlcnROb25OdWxsYWJsZSh0aGlzLmxhc3RDYW5FeGVjdXRlUmVzdWx0LCAnY2FuRXhlY3V0ZSgpIG11c3QgYmUgY2FsbGVkIGJlZm9yZSBleGVjdXRlKCknKTtcbiAgICBpZiAoIXRoaXMubGFzdENhbkV4ZWN1dGVSZXN1bHQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignY2FuRXhlY3V0ZSgpIG11c3QgcmV0dXJuIHRydWUgYmVmb3JlIGV4ZWN1dGUoKScpO1xuICAgIH1cbiAgICBhd2FpdCBQcm9taXNlLnJlc29sdmUoKTtcbiAgfVxufVxuLyogdjggaWdub3JlIHN0b3AgKi9cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWVBLFNBQVMseUJBQXlCO0FBQ2xDLFNBQVMseUJBQXlCO0FBa0MzQixNQUFlLFlBQXVEO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFJcEU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU0E7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtTO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS0c7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT1osWUFBWSxTQUFzQztBQUN2RCxTQUFLLEtBQUssUUFBUTtBQUNsQixTQUFLLE9BQU8sUUFBUTtBQUNwQixTQUFLLE9BQU8sUUFBUTtBQUNwQixTQUFLLFNBQVMsUUFBUTtBQUN0QixTQUFLLE1BQU0sS0FBSyxPQUFPO0FBQ3ZCLFNBQUssYUFBYSxLQUFLO0FBQ3ZCLFNBQUssZUFBZSxLQUFLO0FBQUEsRUFDM0I7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtPLFdBQWlCO0FBQ3RCLFNBQUssT0FBTyxXQUFXLElBQUk7QUFBQSxFQUM3QjtBQUNGO0FBT08sTUFBZSxzQkFBdUQ7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFhcEUsWUFBK0IsUUFBaUI7QUFBakI7QUFDcEMsU0FBSyxNQUFNLE9BQU87QUFBQSxFQUNwQjtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBWG1CO0FBQUEsRUFFWDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBaUJELE9BQU8sVUFBNEI7QUFDeEMsU0FBSyx1QkFBdUIsS0FBSyxXQUFXO0FBQzVDLFFBQUksQ0FBQyxZQUFZLEtBQUssc0JBQXNCO0FBQzFDLHdCQUFrQixNQUFNLEtBQUssUUFBUSxDQUFDO0FBQUEsSUFDeEM7QUFFQSxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRQSxNQUFhLFlBQVksVUFBa0M7QUFDekQsU0FBSyx1QkFBdUIsS0FBSyxXQUFXO0FBQzVDLFFBQUksQ0FBQyxZQUFZLEtBQUssc0JBQXNCO0FBQzFDLFlBQU0sS0FBSyxRQUFRO0FBQUEsSUFDckI7QUFBQSxFQUNGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT1UsYUFBc0I7QUFDOUIsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtBLE1BQWdCLFVBQXlCO0FBQ3ZDLHNCQUFrQixLQUFLLHNCQUFzQiw4Q0FBOEM7QUFDM0YsUUFBSSxDQUFDLEtBQUssc0JBQXNCO0FBQzlCLFlBQU0sSUFBSSxNQUFNLGdEQUFnRDtBQUFBLElBQ2xFO0FBQ0EsVUFBTSxRQUFRLFFBQVE7QUFBQSxFQUN4QjtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -15,19 +15,19 @@ export interface EditorCommandBaseOptions<TPlugin extends Plugin> extends Comman
15
15
  /**
16
16
  * The item name to use in the editor menu.
17
17
  */
18
- editorMenuItemName?: string | undefined;
18
+ readonly editorMenuItemName?: string | undefined;
19
19
  /**
20
20
  * The section to use in the editor menu.
21
21
  */
22
- editorMenuSection?: string | undefined;
22
+ readonly editorMenuSection?: string | undefined;
23
23
  /**
24
24
  * The icon to use in the editor menu submenu.
25
25
  */
26
- editorMenuSubmenuIcon?: IconName | undefined;
26
+ readonly editorMenuSubmenuIcon?: IconName | undefined;
27
27
  /**
28
28
  * Whether to add the command to the submenu.
29
29
  */
30
- shouldAddCommandToSubmenu?: boolean | undefined;
30
+ readonly shouldAddCommandToSubmenu?: boolean | undefined;
31
31
  }
32
32
  /**
33
33
  * Base class for editor commands.
@@ -171,4 +171,4 @@ export {
171
171
  EditorCommandBase,
172
172
  EditorCommandInvocationBase
173
173
  };
174
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbW1hbmRzL0VkaXRvckNvbW1hbmRCYXNlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIEJhc2UgY2xhc3NlcyBmb3IgZWRpdG9yIGNvbW1hbmRzLlxuICovXG5cbmltcG9ydCB0eXBlIHtcbiAgRWRpdG9yLFxuICBJY29uTmFtZSxcbiAgTWFya2Rvd25GaWxlSW5mbyxcbiAgTWVudSxcbiAgUGx1Z2luLFxuICBURmlsZVxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHsgQ29tbWFuZEJhc2VPcHRpb25zIH0gZnJvbSAnLi9Db21tYW5kQmFzZS50cyc7XG5cbmltcG9ydCB7XG4gIENvbW1hbmRCYXNlLFxuICBDb21tYW5kSW52b2NhdGlvbkJhc2Vcbn0gZnJvbSAnLi9Db21tYW5kQmFzZS50cyc7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgY3JlYXRpbmcgYW4gZWRpdG9yIGNvbW1hbmQuXG4gKlxuICogQHR5cGVQYXJhbSBUUGx1Z2luIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGJlbG9uZ3MgdG8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdG9yQ29tbWFuZEJhc2VPcHRpb25zPFRQbHVnaW4gZXh0ZW5kcyBQbHVnaW4+IGV4dGVuZHMgQ29tbWFuZEJhc2VPcHRpb25zPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIFRoZSBpdGVtIG5hbWUgdG8gdXNlIGluIHRoZSBlZGl0b3IgbWVudS5cbiAgICovXG4gIGVkaXRvck1lbnVJdGVtTmFtZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIHNlY3Rpb24gdG8gdXNlIGluIHRoZSBlZGl0b3IgbWVudS5cbiAgICovXG4gIGVkaXRvck1lbnVTZWN0aW9uPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgaWNvbiB0byB1c2UgaW4gdGhlIGVkaXRvciBtZW51IHN1Ym1lbnUuXG4gICAqL1xuICBlZGl0b3JNZW51U3VibWVudUljb24/OiBJY29uTmFtZSB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogV2hldGhlciB0byBhZGQgdGhlIGNvbW1hbmQgdG8gdGhlIHN1Ym1lbnUuXG4gICAqL1xuICBzaG91bGRBZGRDb21tYW5kVG9TdWJtZW51PzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBlZGl0b3IgY29tbWFuZHMuXG4gKlxuICogQHR5cGVQYXJhbSBUUGx1Z2luIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGJlbG9uZ3MgdG8uXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBFZGl0b3JDb21tYW5kQmFzZTxUUGx1Z2luIGV4dGVuZHMgUGx1Z2luPiBleHRlbmRzIENvbW1hbmRCYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIEdldHMgdGhlIGl0ZW0gbmFtZSB0byB1c2UgaW4gdGhlIGVkaXRvciBtZW51LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgaXRlbSBuYW1lIHRvIHVzZSBpbiB0aGUgZWRpdG9yIG1lbnUuXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0IGVkaXRvck1lbnVJdGVtTmFtZSgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9lZGl0b3JNZW51SXRlbU5hbWU7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgc2VjdGlvbiB0byB1c2UgaW4gdGhlIGVkaXRvciBtZW51LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgc2VjdGlvbiB0byB1c2UgaW4gdGhlIGVkaXRvciBtZW51LlxuICAgKi9cbiAgcHJvdGVjdGVkIGdldCBlZGl0b3JNZW51U2VjdGlvbigpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9lZGl0b3JNZW51U2VjdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBpY29uIHRvIHVzZSBpbiB0aGUgZWRpdG9yIG1lbnUgc3VibWVudS5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIGljb24gdG8gdXNlIGluIHRoZSBlZGl0b3IgbWVudSBzdWJtZW51LlxuICAgKi9cbiAgcHJvdGVjdGVkIGdldCBlZGl0b3JNZW51U3VibWVudUljb24oKTogSWNvbk5hbWUgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9lZGl0b3JNZW51U3VibWVudUljb247XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB3aGV0aGVyIHRvIGFkZCB0aGUgY29tbWFuZCB0byB0aGUgc3VibWVudS5cbiAgICpcbiAgICogQHJldHVybnMgV2hldGhlciB0byBhZGQgdGhlIGNvbW1hbmQgdG8gdGhlIHN1Ym1lbnUuXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0IHNob3VsZEFkZENvbW1hbmRUb1N1Ym1lbnUoKTogYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX3Nob3VsZEFkZENvbW1hbmRUb1N1Ym1lbnU7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IF9lZGl0b3JNZW51SXRlbU5hbWU/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2VkaXRvck1lbnVTZWN0aW9uPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIHJlYWRvbmx5IF9lZGl0b3JNZW51U3VibWVudUljb24/OiBJY29uTmFtZSB8IHVuZGVmaW5lZDtcbiAgcHJpdmF0ZSByZWFkb25seSBfc2hvdWxkQWRkQ29tbWFuZFRvU3VibWVudT86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZWRpdG9yIGNvbW1hbmQuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHRoZSBlZGl0b3IgY29tbWFuZC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihvcHRpb25zOiBFZGl0b3JDb21tYW5kQmFzZU9wdGlvbnM8VFBsdWdpbj4pIHtcbiAgICBzdXBlcihvcHRpb25zKTtcbiAgICB0aGlzLl9lZGl0b3JNZW51SXRlbU5hbWUgPSBvcHRpb25zLmVkaXRvck1lbnVJdGVtTmFtZTtcbiAgICB0aGlzLl9lZGl0b3JNZW51U2VjdGlvbiA9IG9wdGlvbnMuZWRpdG9yTWVudVNlY3Rpb247XG4gICAgdGhpcy5fZWRpdG9yTWVudVN1Ym1lbnVJY29uID0gb3B0aW9ucy5lZGl0b3JNZW51U3VibWVudUljb247XG4gICAgdGhpcy5fc2hvdWxkQWRkQ29tbWFuZFRvU3VibWVudSA9IG9wdGlvbnMuc2hvdWxkQWRkQ29tbWFuZFRvU3VibWVudTtcblxuICAgIHRoaXMuZWRpdG9yQ2hlY2tDYWxsYmFjayA9IHRoaXMuZWRpdG9yQ2hlY2tDYWxsYmFjay5iaW5kKHRoaXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZSBvciBleGVjdXRlcyBpdC5cbiAgICpcbiAgICogQHBhcmFtIGNoZWNraW5nIC0gSXMgY2hlY2tpbmcgbW9kZSBvbmx5LiBJZiBgdHJ1ZWAsIG9ubHkgdGhlIGNoZWNrIGlmIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlIGlzIHBlcmZvcm1lZC4gSWYgYGZhbHNlYCwgdGhlIGNvbW1hbmQgaXMgZXhlY3V0ZWQuXG4gICAqIEBwYXJhbSBlZGl0b3IgLSBUaGUgZWRpdG9yIHRvIGNoZWNrLlxuICAgKiBAcGFyYW0gY3R4IC0gVGhlIGNvbnRleHQgb2YgdGhlIGNvbW1hbmQuXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgY2FuIGV4ZWN1dGUuXG4gICAqL1xuICBwdWJsaWMgZWRpdG9yQ2hlY2tDYWxsYmFjayhjaGVja2luZzogYm9vbGVhbiwgZWRpdG9yOiBFZGl0b3IsIGN0eDogTWFya2Rvd25GaWxlSW5mbyk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5zaG91bGRBZGRUb0NvbW1hbmRQYWxldHRlKCkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlRWRpdG9yQ29tbWFuZEludm9jYXRpb24oZWRpdG9yLCBjdHgpLmludm9rZShjaGVja2luZyk7XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIHRoZSBjb21tYW5kLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHJlZ2lzdGVyKCk6IHZvaWQge1xuICAgIHN1cGVyLnJlZ2lzdGVyKCk7XG4gICAgdGhpcy5wbHVnaW4ucmVnaXN0ZXJFdmVudCh0aGlzLmFwcC53b3Jrc3BhY2Uub24oJ2VkaXRvci1tZW51JywgdGhpcy5oYW5kbGVFZGl0b3JNZW51LmJpbmQodGhpcykpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGVkaXRvciBjb21tYW5kIGludm9jYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBlZGl0b3IgLSBUaGUgZWRpdG9yIHRvIGNyZWF0ZSB0aGUgY29tbWFuZCBpbnZvY2F0aW9uIGZvci5cbiAgICogQHBhcmFtIGN0eCAtIFRoZSBjb250ZXh0IG9mIHRoZSBjb21tYW5kLlxuICAgKiBAcmV0dXJucyBUaGUgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKi9cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGNyZWF0ZUVkaXRvckNvbW1hbmRJbnZvY2F0aW9uKGVkaXRvcjogRWRpdG9yLCBjdHg6IE1hcmtkb3duRmlsZUluZm8pOiBDb21tYW5kSW52b2NhdGlvbkJhc2U7XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBzaG91bGQgYmUgYWRkZWQgdG8gdGhlIGNvbW1hbmQgcGFsZXR0ZS5cbiAgICpcbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgY29tbWFuZCBzaG91bGQgYmUgYWRkZWQgdG8gdGhlIGNvbW1hbmQgcGFsZXR0ZS5cbiAgICovXG4gIHByb3RlY3RlZCBzaG91bGRBZGRUb0NvbW1hbmRQYWxldHRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBzaG91bGQgYmUgYWRkZWQgdG8gdGhlIGVkaXRvciBtZW51LlxuICAgKlxuICAgKiBAcGFyYW0gX2VkaXRvciAtIFRoZSBlZGl0b3IgdG8gY2hlY2suXG4gICAqIEBwYXJhbSBfY3R4IC0gVGhlIGNvbnRleHQgb2YgdGhlIGNvbW1hbmQuXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBlZGl0b3IgbWVudS5cbiAgICovXG4gIHByb3RlY3RlZCBzaG91bGRBZGRUb0VkaXRvck1lbnUoX2VkaXRvcjogRWRpdG9yLCBfY3R4OiBNYXJrZG93bkZpbGVJbmZvKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVFZGl0b3JNZW51KG1lbnU6IE1lbnUsIGVkaXRvcjogRWRpdG9yLCBjdHg6IE1hcmtkb3duRmlsZUluZm8pOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc2hvdWxkQWRkVG9FZGl0b3JNZW51KGVkaXRvciwgY3R4KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5jcmVhdGVFZGl0b3JDb21tYW5kSW52b2NhdGlvbihlZGl0b3IsIGN0eCkuaW52b2tlKHRydWUpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZWRpdG9yTWVudVNlY3Rpb24gPSB0aGlzLmVkaXRvck1lbnVTZWN0aW9uID8/IHRoaXMucGx1Z2luLm1hbmlmZXN0Lm5hbWU7XG4gICAgaWYgKHRoaXMuc2hvdWxkQWRkQ29tbWFuZFRvU3VibWVudSkge1xuICAgICAgbWVudS5zZXRTZWN0aW9uU3VibWVudShlZGl0b3JNZW51U2VjdGlvbiwge1xuICAgICAgICBpY29uOiB0aGlzLmVkaXRvck1lbnVTdWJtZW51SWNvbiA/PyAnJyxcbiAgICAgICAgdGl0bGU6IGVkaXRvck1lbnVTZWN0aW9uXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBtZW51LmFkZEl0ZW0oKGl0ZW0pID0+IHtcbiAgICAgIGl0ZW1cbiAgICAgICAgLnNldFRpdGxlKHRoaXMuZWRpdG9yTWVudUl0ZW1OYW1lID8/IHRoaXMub3JpZ2luYWxOYW1lKVxuICAgICAgICAuc2V0SWNvbih0aGlzLmljb24pXG4gICAgICAgIC5zZXRTZWN0aW9uKGVkaXRvck1lbnVTZWN0aW9uKVxuICAgICAgICAub25DbGljaygoKSA9PiB0aGlzLmNyZWF0ZUVkaXRvckNvbW1hbmRJbnZvY2F0aW9uKGVkaXRvciwgY3R4KS5pbnZva2UoZmFsc2UpKTtcbiAgICB9KTtcbiAgfVxufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIGVkaXRvciBjb21tYW5kIGludm9jYXRpb25zLlxuICpcbiAqIEB0eXBlUGFyYW0gVFBsdWdpbiAtIFRoZSB0eXBlIG9mIHRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICovXG5leHBvcnQgY2xhc3MgRWRpdG9yQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4gZXh0ZW5kcyBQbHVnaW4+IGV4dGVuZHMgQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIFRoZSBmaWxlIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBmaWxlIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqIEB0aHJvd3MgSWYgdGhlIGZpbGUgaXMgbm90IHNldC5cbiAgICovXG4gIHByb3RlY3RlZCBnZXQgZmlsZSgpOiBURmlsZSB7XG4gICAgaWYgKCF0aGlzLl9maWxlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZpbGUgbm90IHNldCcpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5fZmlsZTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2ZpbGU6IG51bGwgfCBURmlsZTtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBlZGl0b3IgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gcGx1Z2luIC0gVGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGludm9jYXRpb24gYmVsb25ncyB0by5cbiAgICogQHBhcmFtIGVkaXRvciAtIFRoZSBlZGl0b3IgdG8gY3JlYXRlIHRoZSBjb21tYW5kIGludm9jYXRpb24gZm9yLlxuICAgKiBAcGFyYW0gY3R4IC0gVGhlIGNvbnRleHQgb2YgdGhlIGNvbW1hbmQuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IocGx1Z2luOiBUUGx1Z2luLCBwcm90ZWN0ZWQgcmVhZG9ubHkgZWRpdG9yOiBFZGl0b3IsIHByb3RlY3RlZCByZWFkb25seSBjdHg6IE1hcmtkb3duRmlsZUluZm8pIHtcbiAgICBzdXBlcihwbHVnaW4pO1xuICAgIHRoaXMuX2ZpbGUgPSBjdHguZmlsZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIGNvbW1hbmQgY2FuIGV4ZWN1dGUuXG4gICAqXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgY2FuIGV4ZWN1dGUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgY2FuRXhlY3V0ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gc3VwZXIuY2FuRXhlY3V0ZSgpICYmICEhdGhpcy5fZmlsZTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBaUJBO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBa0NBLE1BQWUsMEJBQWtELFlBQXFCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTTNGLElBQWMscUJBQXlDO0FBQ3JELFdBQU8sS0FBSztBQUFBLEVBQ2Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxJQUFjLG9CQUF3QztBQUNwRCxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0EsSUFBYyx3QkFBOEM7QUFDMUQsV0FBTyxLQUFLO0FBQUEsRUFDZDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9BLElBQWMsNEJBQWlEO0FBQzdELFdBQU8sS0FBSztBQUFBLEVBQ2Q7QUFBQSxFQUVpQjtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9WLFlBQVksU0FBNEM7QUFDN0QsVUFBTSxPQUFPO0FBQ2IsU0FBSyxzQkFBc0IsUUFBUTtBQUNuQyxTQUFLLHFCQUFxQixRQUFRO0FBQ2xDLFNBQUsseUJBQXlCLFFBQVE7QUFDdEMsU0FBSyw2QkFBNkIsUUFBUTtBQUUxQyxTQUFLLHNCQUFzQixLQUFLLG9CQUFvQixLQUFLLElBQUk7QUFBQSxFQUMvRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVVPLG9CQUFvQixVQUFtQixRQUFnQixLQUFnQztBQUM1RixRQUFJLENBQUMsS0FBSywwQkFBMEIsR0FBRztBQUNyQyxhQUFPO0FBQUEsSUFDVDtBQUNBLFdBQU8sS0FBSyw4QkFBOEIsUUFBUSxHQUFHLEVBQUUsT0FBTyxRQUFRO0FBQUEsRUFDeEU7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtnQixXQUFpQjtBQUMvQixVQUFNLFNBQVM7QUFDZixTQUFLLE9BQU8sY0FBYyxLQUFLLElBQUksVUFBVSxHQUFHLGVBQWUsS0FBSyxpQkFBaUIsS0FBSyxJQUFJLENBQUMsQ0FBQztBQUFBLEVBQ2xHO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBZ0JVLDRCQUFxQztBQUM3QyxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTVSxzQkFBc0IsU0FBaUIsTUFBaUM7QUFDaEYsV0FBTztBQUFBLEVBQ1Q7QUFBQSxFQUVRLGlCQUFpQixNQUFZLFFBQWdCLEtBQTZCO0FBQ2hGLFFBQUksQ0FBQyxLQUFLLHNCQUFzQixRQUFRLEdBQUcsR0FBRztBQUM1QztBQUFBLElBQ0Y7QUFFQSxRQUFJLENBQUMsS0FBSyw4QkFBOEIsUUFBUSxHQUFHLEVBQUUsT0FBTyxJQUFJLEdBQUc7QUFDakU7QUFBQSxJQUNGO0FBRUEsVUFBTSxvQkFBb0IsS0FBSyxxQkFBcUIsS0FBSyxPQUFPLFNBQVM7QUFDekUsUUFBSSxLQUFLLDJCQUEyQjtBQUNsQyxXQUFLLGtCQUFrQixtQkFBbUI7QUFBQSxRQUN4QyxNQUFNLEtBQUsseUJBQXlCO0FBQUEsUUFDcEMsT0FBTztBQUFBLE1BQ1QsQ0FBQztBQUFBLElBQ0g7QUFFQSxTQUFLLFFBQVEsQ0FBQyxTQUFTO0FBQ3JCLFdBQ0csU0FBUyxLQUFLLHNCQUFzQixLQUFLLFlBQVksRUFDckQsUUFBUSxLQUFLLElBQUksRUFDakIsV0FBVyxpQkFBaUIsRUFDNUIsUUFBUSxNQUFNLEtBQUssOEJBQThCLFFBQVEsR0FBRyxFQUFFLE9BQU8sS0FBSyxDQUFDO0FBQUEsSUFDaEYsQ0FBQztBQUFBLEVBQ0g7QUFDRjtBQU9PLE1BQU0sb0NBQTRELHNCQUErQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUF1Qi9GLFlBQVksUUFBb0MsUUFBbUMsS0FBdUI7QUFDL0csVUFBTSxNQUFNO0FBRHlDO0FBQW1DO0FBRXhGLFNBQUssUUFBUSxJQUFJO0FBQUEsRUFDbkI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQW5CQSxJQUFjLE9BQWM7QUFDMUIsUUFBSSxDQUFDLEtBQUssT0FBTztBQUNmLFlBQU0sSUFBSSxNQUFNLGNBQWM7QUFBQSxJQUNoQztBQUNBLFdBQU8sS0FBSztBQUFBLEVBQ2Q7QUFBQSxFQUVpQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQW1CRCxhQUFzQjtBQUNwQyxXQUFPLE1BQU0sV0FBVyxLQUFLLENBQUMsQ0FBQyxLQUFLO0FBQUEsRUFDdEM7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
174
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbW1hbmRzL0VkaXRvckNvbW1hbmRCYXNlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIEJhc2UgY2xhc3NlcyBmb3IgZWRpdG9yIGNvbW1hbmRzLlxuICovXG5cbi8qIHY4IGlnbm9yZSBzdGFydCAtLSBEZWVwbHkgY291cGxlZCB0byBPYnNpZGlhbiBydW50aW1lOyByZXF1aXJlcyBydW5uaW5nIHZhdWx0IGZvciBtZWFuaW5nZnVsIHRlc3RpbmcuICovXG5cbmltcG9ydCB0eXBlIHtcbiAgRWRpdG9yLFxuICBJY29uTmFtZSxcbiAgTWFya2Rvd25GaWxlSW5mbyxcbiAgTWVudSxcbiAgUGx1Z2luLFxuICBURmlsZVxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHsgQ29tbWFuZEJhc2VPcHRpb25zIH0gZnJvbSAnLi9Db21tYW5kQmFzZS50cyc7XG5cbmltcG9ydCB7XG4gIENvbW1hbmRCYXNlLFxuICBDb21tYW5kSW52b2NhdGlvbkJhc2Vcbn0gZnJvbSAnLi9Db21tYW5kQmFzZS50cyc7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgY3JlYXRpbmcgYW4gZWRpdG9yIGNvbW1hbmQuXG4gKlxuICogQHR5cGVQYXJhbSBUUGx1Z2luIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGJlbG9uZ3MgdG8uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdG9yQ29tbWFuZEJhc2VPcHRpb25zPFRQbHVnaW4gZXh0ZW5kcyBQbHVnaW4+IGV4dGVuZHMgQ29tbWFuZEJhc2VPcHRpb25zPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIFRoZSBpdGVtIG5hbWUgdG8gdXNlIGluIHRoZSBlZGl0b3IgbWVudS5cbiAgICovXG4gIHJlYWRvbmx5IGVkaXRvck1lbnVJdGVtTmFtZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIHNlY3Rpb24gdG8gdXNlIGluIHRoZSBlZGl0b3IgbWVudS5cbiAgICovXG4gIHJlYWRvbmx5IGVkaXRvck1lbnVTZWN0aW9uPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgaWNvbiB0byB1c2UgaW4gdGhlIGVkaXRvciBtZW51IHN1Ym1lbnUuXG4gICAqL1xuICByZWFkb25seSBlZGl0b3JNZW51U3VibWVudUljb24/OiBJY29uTmFtZSB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogV2hldGhlciB0byBhZGQgdGhlIGNvbW1hbmQgdG8gdGhlIHN1Ym1lbnUuXG4gICAqL1xuICByZWFkb25seSBzaG91bGRBZGRDb21tYW5kVG9TdWJtZW51PzogYm9vbGVhbiB8IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBlZGl0b3IgY29tbWFuZHMuXG4gKlxuICogQHR5cGVQYXJhbSBUUGx1Z2luIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGJlbG9uZ3MgdG8uXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBFZGl0b3JDb21tYW5kQmFzZTxUUGx1Z2luIGV4dGVuZHMgUGx1Z2luPiBleHRlbmRzIENvbW1hbmRCYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIEdldHMgdGhlIGl0ZW0gbmFtZSB0byB1c2UgaW4gdGhlIGVkaXRvciBtZW51LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgaXRlbSBuYW1lIHRvIHVzZSBpbiB0aGUgZWRpdG9yIG1lbnUuXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0IGVkaXRvck1lbnVJdGVtTmFtZSgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9lZGl0b3JNZW51SXRlbU5hbWU7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgc2VjdGlvbiB0byB1c2UgaW4gdGhlIGVkaXRvciBtZW51LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgc2VjdGlvbiB0byB1c2UgaW4gdGhlIGVkaXRvciBtZW51LlxuICAgKi9cbiAgcHJvdGVjdGVkIGdldCBlZGl0b3JNZW51U2VjdGlvbigpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9lZGl0b3JNZW51U2VjdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBpY29uIHRvIHVzZSBpbiB0aGUgZWRpdG9yIG1lbnUgc3VibWVudS5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIGljb24gdG8gdXNlIGluIHRoZSBlZGl0b3IgbWVudSBzdWJtZW51LlxuICAgKi9cbiAgcHJvdGVjdGVkIGdldCBlZGl0b3JNZW51U3VibWVudUljb24oKTogSWNvbk5hbWUgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9lZGl0b3JNZW51U3VibWVudUljb247XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB3aGV0aGVyIHRvIGFkZCB0aGUgY29tbWFuZCB0byB0aGUgc3VibWVudS5cbiAgICpcbiAgICogQHJldHVybnMgV2hldGhlciB0byBhZGQgdGhlIGNvbW1hbmQgdG8gdGhlIHN1Ym1lbnUuXG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0IHNob3VsZEFkZENvbW1hbmRUb1N1Ym1lbnUoKTogYm9vbGVhbiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX3Nob3VsZEFkZENvbW1hbmRUb1N1Ym1lbnU7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IF9lZGl0b3JNZW51SXRlbU5hbWU/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2VkaXRvck1lbnVTZWN0aW9uPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIHJlYWRvbmx5IF9lZGl0b3JNZW51U3VibWVudUljb24/OiBJY29uTmFtZSB8IHVuZGVmaW5lZDtcbiAgcHJpdmF0ZSByZWFkb25seSBfc2hvdWxkQWRkQ29tbWFuZFRvU3VibWVudT86IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZWRpdG9yIGNvbW1hbmQuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHRoZSBlZGl0b3IgY29tbWFuZC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihvcHRpb25zOiBFZGl0b3JDb21tYW5kQmFzZU9wdGlvbnM8VFBsdWdpbj4pIHtcbiAgICBzdXBlcihvcHRpb25zKTtcbiAgICB0aGlzLl9lZGl0b3JNZW51SXRlbU5hbWUgPSBvcHRpb25zLmVkaXRvck1lbnVJdGVtTmFtZTtcbiAgICB0aGlzLl9lZGl0b3JNZW51U2VjdGlvbiA9IG9wdGlvbnMuZWRpdG9yTWVudVNlY3Rpb247XG4gICAgdGhpcy5fZWRpdG9yTWVudVN1Ym1lbnVJY29uID0gb3B0aW9ucy5lZGl0b3JNZW51U3VibWVudUljb247XG4gICAgdGhpcy5fc2hvdWxkQWRkQ29tbWFuZFRvU3VibWVudSA9IG9wdGlvbnMuc2hvdWxkQWRkQ29tbWFuZFRvU3VibWVudTtcblxuICAgIHRoaXMuZWRpdG9yQ2hlY2tDYWxsYmFjayA9IHRoaXMuZWRpdG9yQ2hlY2tDYWxsYmFjay5iaW5kKHRoaXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZSBvciBleGVjdXRlcyBpdC5cbiAgICpcbiAgICogQHBhcmFtIGNoZWNraW5nIC0gSXMgY2hlY2tpbmcgbW9kZSBvbmx5LiBJZiBgdHJ1ZWAsIG9ubHkgdGhlIGNoZWNrIGlmIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlIGlzIHBlcmZvcm1lZC4gSWYgYGZhbHNlYCwgdGhlIGNvbW1hbmQgaXMgZXhlY3V0ZWQuXG4gICAqIEBwYXJhbSBlZGl0b3IgLSBUaGUgZWRpdG9yIHRvIGNoZWNrLlxuICAgKiBAcGFyYW0gY3R4IC0gVGhlIGNvbnRleHQgb2YgdGhlIGNvbW1hbmQuXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgY2FuIGV4ZWN1dGUuXG4gICAqL1xuICBwdWJsaWMgZWRpdG9yQ2hlY2tDYWxsYmFjayhjaGVja2luZzogYm9vbGVhbiwgZWRpdG9yOiBFZGl0b3IsIGN0eDogTWFya2Rvd25GaWxlSW5mbyk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5zaG91bGRBZGRUb0NvbW1hbmRQYWxldHRlKCkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlRWRpdG9yQ29tbWFuZEludm9jYXRpb24oZWRpdG9yLCBjdHgpLmludm9rZShjaGVja2luZyk7XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIHRoZSBjb21tYW5kLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHJlZ2lzdGVyKCk6IHZvaWQge1xuICAgIHN1cGVyLnJlZ2lzdGVyKCk7XG4gICAgdGhpcy5wbHVnaW4ucmVnaXN0ZXJFdmVudCh0aGlzLmFwcC53b3Jrc3BhY2Uub24oJ2VkaXRvci1tZW51JywgdGhpcy5oYW5kbGVFZGl0b3JNZW51LmJpbmQodGhpcykpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGVkaXRvciBjb21tYW5kIGludm9jYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBlZGl0b3IgLSBUaGUgZWRpdG9yIHRvIGNyZWF0ZSB0aGUgY29tbWFuZCBpbnZvY2F0aW9uIGZvci5cbiAgICogQHBhcmFtIGN0eCAtIFRoZSBjb250ZXh0IG9mIHRoZSBjb21tYW5kLlxuICAgKiBAcmV0dXJucyBUaGUgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKi9cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGNyZWF0ZUVkaXRvckNvbW1hbmRJbnZvY2F0aW9uKGVkaXRvcjogRWRpdG9yLCBjdHg6IE1hcmtkb3duRmlsZUluZm8pOiBDb21tYW5kSW52b2NhdGlvbkJhc2U7XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBzaG91bGQgYmUgYWRkZWQgdG8gdGhlIGNvbW1hbmQgcGFsZXR0ZS5cbiAgICpcbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgY29tbWFuZCBzaG91bGQgYmUgYWRkZWQgdG8gdGhlIGNvbW1hbmQgcGFsZXR0ZS5cbiAgICovXG4gIHByb3RlY3RlZCBzaG91bGRBZGRUb0NvbW1hbmRQYWxldHRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBzaG91bGQgYmUgYWRkZWQgdG8gdGhlIGVkaXRvciBtZW51LlxuICAgKlxuICAgKiBAcGFyYW0gX2VkaXRvciAtIFRoZSBlZGl0b3IgdG8gY2hlY2suXG4gICAqIEBwYXJhbSBfY3R4IC0gVGhlIGNvbnRleHQgb2YgdGhlIGNvbW1hbmQuXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBlZGl0b3IgbWVudS5cbiAgICovXG4gIHByb3RlY3RlZCBzaG91bGRBZGRUb0VkaXRvck1lbnUoX2VkaXRvcjogRWRpdG9yLCBfY3R4OiBNYXJrZG93bkZpbGVJbmZvKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVFZGl0b3JNZW51KG1lbnU6IE1lbnUsIGVkaXRvcjogRWRpdG9yLCBjdHg6IE1hcmtkb3duRmlsZUluZm8pOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc2hvdWxkQWRkVG9FZGl0b3JNZW51KGVkaXRvciwgY3R4KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5jcmVhdGVFZGl0b3JDb21tYW5kSW52b2NhdGlvbihlZGl0b3IsIGN0eCkuaW52b2tlKHRydWUpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZWRpdG9yTWVudVNlY3Rpb24gPSB0aGlzLmVkaXRvck1lbnVTZWN0aW9uID8/IHRoaXMucGx1Z2luLm1hbmlmZXN0Lm5hbWU7XG4gICAgaWYgKHRoaXMuc2hvdWxkQWRkQ29tbWFuZFRvU3VibWVudSkge1xuICAgICAgbWVudS5zZXRTZWN0aW9uU3VibWVudShlZGl0b3JNZW51U2VjdGlvbiwge1xuICAgICAgICBpY29uOiB0aGlzLmVkaXRvck1lbnVTdWJtZW51SWNvbiA/PyAnJyxcbiAgICAgICAgdGl0bGU6IGVkaXRvck1lbnVTZWN0aW9uXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBtZW51LmFkZEl0ZW0oKGl0ZW0pID0+IHtcbiAgICAgIGl0ZW1cbiAgICAgICAgLnNldFRpdGxlKHRoaXMuZWRpdG9yTWVudUl0ZW1OYW1lID8/IHRoaXMub3JpZ2luYWxOYW1lKVxuICAgICAgICAuc2V0SWNvbih0aGlzLmljb24pXG4gICAgICAgIC5zZXRTZWN0aW9uKGVkaXRvck1lbnVTZWN0aW9uKVxuICAgICAgICAub25DbGljaygoKSA9PiB0aGlzLmNyZWF0ZUVkaXRvckNvbW1hbmRJbnZvY2F0aW9uKGVkaXRvciwgY3R4KS5pbnZva2UoZmFsc2UpKTtcbiAgICB9KTtcbiAgfVxufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIGVkaXRvciBjb21tYW5kIGludm9jYXRpb25zLlxuICpcbiAqIEB0eXBlUGFyYW0gVFBsdWdpbiAtIFRoZSB0eXBlIG9mIHRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICovXG5leHBvcnQgY2xhc3MgRWRpdG9yQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4gZXh0ZW5kcyBQbHVnaW4+IGV4dGVuZHMgQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIFRoZSBmaWxlIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBmaWxlIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqIEB0aHJvd3MgSWYgdGhlIGZpbGUgaXMgbm90IHNldC5cbiAgICovXG4gIHByb3RlY3RlZCBnZXQgZmlsZSgpOiBURmlsZSB7XG4gICAgaWYgKCF0aGlzLl9maWxlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZpbGUgbm90IHNldCcpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5fZmlsZTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2ZpbGU6IG51bGwgfCBURmlsZTtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBlZGl0b3IgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gcGx1Z2luIC0gVGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGludm9jYXRpb24gYmVsb25ncyB0by5cbiAgICogQHBhcmFtIGVkaXRvciAtIFRoZSBlZGl0b3IgdG8gY3JlYXRlIHRoZSBjb21tYW5kIGludm9jYXRpb24gZm9yLlxuICAgKiBAcGFyYW0gY3R4IC0gVGhlIGNvbnRleHQgb2YgdGhlIGNvbW1hbmQuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IocGx1Z2luOiBUUGx1Z2luLCBwcm90ZWN0ZWQgcmVhZG9ubHkgZWRpdG9yOiBFZGl0b3IsIHByb3RlY3RlZCByZWFkb25seSBjdHg6IE1hcmtkb3duRmlsZUluZm8pIHtcbiAgICBzdXBlcihwbHVnaW4pO1xuICAgIHRoaXMuX2ZpbGUgPSBjdHguZmlsZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIGNvbW1hbmQgY2FuIGV4ZWN1dGUuXG4gICAqXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgY2FuIGV4ZWN1dGUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgY2FuRXhlY3V0ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gc3VwZXIuY2FuRXhlY3V0ZSgpICYmICEhdGhpcy5fZmlsZTtcbiAgfVxufVxuLyogdjggaWdub3JlIHN0b3AgKi9cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW1CQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQWtDQSxNQUFlLDBCQUFrRCxZQUFxQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU0zRixJQUFjLHFCQUF5QztBQUNyRCxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0EsSUFBYyxvQkFBd0M7QUFDcEQsV0FBTyxLQUFLO0FBQUEsRUFDZDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9BLElBQWMsd0JBQThDO0FBQzFELFdBQU8sS0FBSztBQUFBLEVBQ2Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxJQUFjLDRCQUFpRDtBQUM3RCxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQUEsRUFFaUI7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPVixZQUFZLFNBQTRDO0FBQzdELFVBQU0sT0FBTztBQUNiLFNBQUssc0JBQXNCLFFBQVE7QUFDbkMsU0FBSyxxQkFBcUIsUUFBUTtBQUNsQyxTQUFLLHlCQUF5QixRQUFRO0FBQ3RDLFNBQUssNkJBQTZCLFFBQVE7QUFFMUMsU0FBSyxzQkFBc0IsS0FBSyxvQkFBb0IsS0FBSyxJQUFJO0FBQUEsRUFDL0Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFVTyxvQkFBb0IsVUFBbUIsUUFBZ0IsS0FBZ0M7QUFDNUYsUUFBSSxDQUFDLEtBQUssMEJBQTBCLEdBQUc7QUFDckMsYUFBTztBQUFBLElBQ1Q7QUFDQSxXQUFPLEtBQUssOEJBQThCLFFBQVEsR0FBRyxFQUFFLE9BQU8sUUFBUTtBQUFBLEVBQ3hFO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLZ0IsV0FBaUI7QUFDL0IsVUFBTSxTQUFTO0FBQ2YsU0FBSyxPQUFPLGNBQWMsS0FBSyxJQUFJLFVBQVUsR0FBRyxlQUFlLEtBQUssaUJBQWlCLEtBQUssSUFBSSxDQUFDLENBQUM7QUFBQSxFQUNsRztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQWdCVSw0QkFBcUM7QUFDN0MsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU1Usc0JBQXNCLFNBQWlCLE1BQWlDO0FBQ2hGLFdBQU87QUFBQSxFQUNUO0FBQUEsRUFFUSxpQkFBaUIsTUFBWSxRQUFnQixLQUE2QjtBQUNoRixRQUFJLENBQUMsS0FBSyxzQkFBc0IsUUFBUSxHQUFHLEdBQUc7QUFDNUM7QUFBQSxJQUNGO0FBRUEsUUFBSSxDQUFDLEtBQUssOEJBQThCLFFBQVEsR0FBRyxFQUFFLE9BQU8sSUFBSSxHQUFHO0FBQ2pFO0FBQUEsSUFDRjtBQUVBLFVBQU0sb0JBQW9CLEtBQUsscUJBQXFCLEtBQUssT0FBTyxTQUFTO0FBQ3pFLFFBQUksS0FBSywyQkFBMkI7QUFDbEMsV0FBSyxrQkFBa0IsbUJBQW1CO0FBQUEsUUFDeEMsTUFBTSxLQUFLLHlCQUF5QjtBQUFBLFFBQ3BDLE9BQU87QUFBQSxNQUNULENBQUM7QUFBQSxJQUNIO0FBRUEsU0FBSyxRQUFRLENBQUMsU0FBUztBQUNyQixXQUNHLFNBQVMsS0FBSyxzQkFBc0IsS0FBSyxZQUFZLEVBQ3JELFFBQVEsS0FBSyxJQUFJLEVBQ2pCLFdBQVcsaUJBQWlCLEVBQzVCLFFBQVEsTUFBTSxLQUFLLDhCQUE4QixRQUFRLEdBQUcsRUFBRSxPQUFPLEtBQUssQ0FBQztBQUFBLElBQ2hGLENBQUM7QUFBQSxFQUNIO0FBQ0Y7QUFPTyxNQUFNLG9DQUE0RCxzQkFBK0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBdUIvRixZQUFZLFFBQW9DLFFBQW1DLEtBQXVCO0FBQy9HLFVBQU0sTUFBTTtBQUR5QztBQUFtQztBQUV4RixTQUFLLFFBQVEsSUFBSTtBQUFBLEVBQ25CO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFuQkEsSUFBYyxPQUFjO0FBQzFCLFFBQUksQ0FBQyxLQUFLLE9BQU87QUFDZixZQUFNLElBQUksTUFBTSxjQUFjO0FBQUEsSUFDaEM7QUFDQSxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQUEsRUFFaUI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFtQkQsYUFBc0I7QUFDcEMsV0FBTyxNQUFNLFdBQVcsS0FBSyxDQUFDLENBQUMsS0FBSztBQUFBLEVBQ3RDO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -234,4 +234,4 @@ export {
234
234
  FilesCommandInvocationBase,
235
235
  SequentialFilesCommandInvocationBase
236
236
  };
237
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbW1hbmRzL0ZpbGVDb21tYW5kQmFzZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBCYXNlIGNsYXNzZXMgZm9yIGZpbGUgY29tbWFuZHMuXG4gKi9cblxuaW1wb3J0IHR5cGUge1xuICBQbHVnaW4sXG4gIFRBYnN0cmFjdEZpbGUsXG4gIFdvcmtzcGFjZUxlYWZcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgeyBURmlsZSB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBBYnN0cmFjdEZpbGVDb21tYW5kQmFzZU9wdGlvbnMgfSBmcm9tICcuL0Fic3RyYWN0RmlsZUNvbW1hbmRCYXNlLnRzJztcblxuaW1wb3J0IHtcbiAgYXNBcnJheU9mRmlsZXMsXG4gIGFzRmlsZSxcbiAgYXNGaWxlT3JOdWxsLFxuICBpc0ZpbGVcbn0gZnJvbSAnLi4vRmlsZVN5c3RlbS50cyc7XG5pbXBvcnQge1xuICBBYnN0cmFjdEZpbGVDb21tYW5kQmFzZSxcbiAgQWJzdHJhY3RGaWxlQ29tbWFuZEludm9jYXRpb25CYXNlLFxuICBBYnN0cmFjdEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlXG59IGZyb20gJy4vQWJzdHJhY3RGaWxlQ29tbWFuZEJhc2UudHMnO1xuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIGZpbGUgY29tbWFuZCBpbnZvY2F0aW9ucy5cbiAqXG4gKiBAdHlwZVBhcmFtIFRQbHVnaW4gLSBUaGUgdHlwZSBvZiB0aGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgYmVsb25ncyB0by5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbiBleHRlbmRzIFBsdWdpbj4gZXh0ZW5kcyBBYnN0cmFjdEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj4ge1xuICAvKipcbiAgICogR2V0cyB0aGUgZmlsZSB0aGF0IHRoZSBjb21tYW5kIGludm9jYXRpb24gYmVsb25ncyB0by5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIGZpbGUgdGhhdCB0aGUgY29tbWFuZCBpbnZvY2F0aW9uIGJlbG9uZ3MgdG8uXG4gICAqIEB0aHJvd3MgSWYgdGhlIGFic3RyYWN0IGZpbGUgaXMgbm90IGEgZmlsZS5cbiAgICovXG4gIHByb3RlY3RlZCBnZXQgZmlsZSgpOiBURmlsZSB7XG4gICAgcmV0dXJuIGFzRmlsZSh0aGlzLl9hYnN0cmFjdEZpbGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZmlsZSBjb21tYW5kIGludm9jYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBwbHVnaW4gLSBUaGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgaW52b2NhdGlvbiBiZWxvbmdzIHRvLlxuICAgKiBAcGFyYW0gZmlsZSAtIFRoZSBmaWxlIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IocGx1Z2luOiBUUGx1Z2luLCBmaWxlOiBudWxsIHwgVEZpbGUpIHtcbiAgICBzdXBlcihwbHVnaW4sIGZpbGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZS5cbiAgICpcbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZS5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBjYW5FeGVjdXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBzdXBlci5jYW5FeGVjdXRlKCkgJiYgISF0aGlzLl9hYnN0cmFjdEZpbGU7XG4gIH1cbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBhcnJheS1kZWxlZ2F0aW5nIGZpbGUgY29tbWFuZCBpbnZvY2F0aW9ucy5cbiAqXG4gKiBAdHlwZVBhcmFtIFRQbHVnaW4gLSBUaGUgdHlwZSBvZiB0aGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgYmVsb25ncyB0by5cbiAqL1xuZXhwb3J0IGNsYXNzIEFycmF5RGVsZWdhdGluZ0ZpbGVDb21tYW5kSW52b2NhdGlvbjxUUGx1Z2luIGV4dGVuZHMgUGx1Z2luPiBleHRlbmRzIEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj4ge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBhcnJheS1kZWxlZ2F0aW5nIGZpbGUgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gcGx1Z2luIC0gVGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGludm9jYXRpb24gYmVsb25ncyB0by5cbiAgICogQHBhcmFtIGZpbGUgLSBUaGUgZmlsZSB0byBpbnZva2UgdGhlIGNvbW1hbmQgZm9yLlxuICAgKiBAcGFyYW0gY3JlYXRlQ29tbWFuZEludm9jYXRpb25Gb3JGaWxlcyAtIFRoZSBmdW5jdGlvbiB0byBjcmVhdGUgYSBjb21tYW5kIGludm9jYXRpb24gZm9yIGZpbGVzLlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIHBsdWdpbjogVFBsdWdpbixcbiAgICBmaWxlOiBudWxsIHwgVEZpbGUsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZpbGVzOiAoZmlsZXM6IFRGaWxlW10pID0+IEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+XG4gICkge1xuICAgIHN1cGVyKHBsdWdpbiwgZmlsZSk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlLlxuICAgKlxuICAgKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGNhbkV4ZWN1dGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHN1cGVyLmNhbkV4ZWN1dGUoKSAmJiB0aGlzLmNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRmlsZXMoW3RoaXMuZmlsZV0pLmludm9rZSh0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyB0aGUgY29tbWFuZC5cbiAgICpcbiAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgY29tbWFuZCBoYXMgYmVlbiBleGVjdXRlZC5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBhc3luYyBleGVjdXRlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuY3JlYXRlQ29tbWFuZEludm9jYXRpb25Gb3JGaWxlcyhbdGhpcy5maWxlXSkuaW52b2tlQXN5bmMoZmFsc2UpO1xuICB9XG59XG5cbi8qKlxuICogQmFzZSBjbGFzcyBmb3IgZmlsZSBjb21tYW5kcy5cbiAqXG4gKiBAdHlwZVBhcmFtIFRQbHVnaW4gLSBUaGUgdHlwZSBvZiB0aGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgYmVsb25ncyB0by5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZpbGVDb21tYW5kQmFzZTxUUGx1Z2luIGV4dGVuZHMgUGx1Z2luID0gUGx1Z2luPiBleHRlbmRzIEFic3RyYWN0RmlsZUNvbW1hbmRCYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZmlsZSBjb21tYW5kLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciB0aGUgZmlsZSBjb21tYW5kLlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEFic3RyYWN0RmlsZUNvbW1hbmRCYXNlT3B0aW9uczxUUGx1Z2luPikge1xuICAgIHN1cGVyKG9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgYWJzdHJhY3QgZmlsZSBjb21tYW5kIGludm9jYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBhYnN0cmFjdEZpbGUgLSBUaGUgYWJzdHJhY3QgZmlsZSB0byBpbnZva2UgdGhlIGNvbW1hbmQgZm9yLlxuICAgKiBAcmV0dXJucyBUaGUgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uKGFic3RyYWN0RmlsZT86IFRBYnN0cmFjdEZpbGUpOiBBYnN0cmFjdEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj4ge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yQWJzdHJhY3RGaWxlKGFic3RyYWN0RmlsZSA/PyB0aGlzLmFwcC53b3Jrc3BhY2UuZ2V0QWN0aXZlRmlsZSgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGFic3RyYWN0IGZpbGUgY29tbWFuZCBpbnZvY2F0aW9uIGZvciBhbiBhYnN0cmFjdCBmaWxlLlxuICAgKlxuICAgKiBAcGFyYW0gYWJzdHJhY3RGaWxlIC0gVGhlIGFic3RyYWN0IGZpbGUgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci4gSWYgYG51bGxgLCB0aGUgYWN0aXZlIGZpbGUgaXMgdXNlZC5cbiAgICogQHJldHVybnMgVGhlIGNvbW1hbmQgaW52b2NhdGlvbi5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBjcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckFic3RyYWN0RmlsZShhYnN0cmFjdEZpbGU6IG51bGwgfCBUQWJzdHJhY3RGaWxlKTogQWJzdHJhY3RGaWxlQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZpbGUoYXNGaWxlT3JOdWxsKGFic3RyYWN0RmlsZSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgYWJzdHJhY3QgZmlsZXMgY29tbWFuZCBpbnZvY2F0aW9uIGZvciBhYnN0cmFjdCBmaWxlcy5cbiAgICpcbiAgICogQHBhcmFtIGFic3RyYWN0RmlsZXMgLSBUaGUgYWJzdHJhY3QgZmlsZXMgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci5cbiAgICogQHJldHVybnMgQSBuZXcgYWJzdHJhY3QgZmlsZXMgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yQWJzdHJhY3RGaWxlcyhhYnN0cmFjdEZpbGVzOiBUQWJzdHJhY3RGaWxlW10pOiBBYnN0cmFjdEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZpbGVzKGFzQXJyYXlPZkZpbGVzKGFic3RyYWN0RmlsZXMpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGZpbGUgY29tbWFuZCBpbnZvY2F0aW9uIGZvciBhIGZpbGUuXG4gICAqXG4gICAqIEBwYXJhbSBmaWxlIC0gVGhlIGZpbGUgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci5cbiAgICogQHJldHVybnMgQSBuZXcgZmlsZSBjb21tYW5kIGludm9jYXRpb24uXG4gICAqL1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgY3JlYXRlQ29tbWFuZEludm9jYXRpb25Gb3JGaWxlKGZpbGU6IG51bGwgfCBURmlsZSk6IEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZmlsZXMgY29tbWFuZCBpbnZvY2F0aW9uIGZvciBmaWxlcy5cbiAgICpcbiAgICogQHBhcmFtIGZpbGVzIC0gVGhlIGZpbGVzIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqIEByZXR1cm5zIEEgbmV3IGZpbGVzIGNvbW1hbmQgaW52b2NhdGlvbi5cbiAgICovXG4gIHByb3RlY3RlZCBjcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZpbGVzKGZpbGVzOiBURmlsZVtdKTogRmlsZXNDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj4ge1xuICAgIHJldHVybiBuZXcgU2VxdWVudGlhbEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlKHRoaXMucGx1Z2luLCBmaWxlcywgdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZpbGUuYmluZCh0aGlzKSk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgYWJzdHJhY3QgZmlsZSBtZW51LlxuICAgKlxuICAgKiBAcGFyYW0gYWJzdHJhY3RGaWxlIC0gVGhlIGFic3RyYWN0IGZpbGUgdG8gY2hlY2suXG4gICAqIEBwYXJhbSBzb3VyY2UgLSBUaGUgc291cmNlIG9mIHRoZSBhYnN0cmFjdCBmaWxlLlxuICAgKiBAcGFyYW0gbGVhZiAtIFRoZSBsZWFmIHRvIGNoZWNrLlxuICAgKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgYWJzdHJhY3QgZmlsZSBtZW51LlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHNob3VsZEFkZFRvQWJzdHJhY3RGaWxlTWVudShhYnN0cmFjdEZpbGU6IFRBYnN0cmFjdEZpbGUsIHNvdXJjZTogc3RyaW5nLCBsZWFmPzogV29ya3NwYWNlTGVhZik6IGJvb2xlYW4ge1xuICAgIGlmICghaXNGaWxlKGFic3RyYWN0RmlsZSkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuc2hvdWxkQWRkVG9GaWxlTWVudShhYnN0cmFjdEZpbGUsIHNvdXJjZSwgbGVhZik7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgYWJzdHJhY3QgZmlsZXMgbWVudS5cbiAgICpcbiAgICogQHBhcmFtIGFic3RyYWN0RmlsZXMgLSBUaGUgYWJzdHJhY3QgZmlsZXMgdG8gY2hlY2suXG4gICAqIEBwYXJhbSBzb3VyY2UgLSBUaGUgc291cmNlIG9mIHRoZSBhYnN0cmFjdCBmaWxlcy5cbiAgICogQHBhcmFtIGxlYWYgLSBUaGUgbGVhZiB0byBjaGVjay5cbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgY29tbWFuZCBzaG91bGQgYmUgYWRkZWQgdG8gdGhlIGFic3RyYWN0IGZpbGVzIG1lbnUuXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgc2hvdWxkQWRkVG9BYnN0cmFjdEZpbGVzTWVudShhYnN0cmFjdEZpbGVzOiBUQWJzdHJhY3RGaWxlW10sIHNvdXJjZTogc3RyaW5nLCBsZWFmPzogV29ya3NwYWNlTGVhZik6IGJvb2xlYW4ge1xuICAgIGlmICghYWJzdHJhY3RGaWxlcy5ldmVyeSgoYWJzdHJhY3RGaWxlKSA9PiBpc0ZpbGUoYWJzdHJhY3RGaWxlKSkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuc2hvdWxkQWRkVG9GaWxlc01lbnUoYXNBcnJheU9mRmlsZXMoYWJzdHJhY3RGaWxlcyksIHNvdXJjZSwgbGVhZik7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgZmlsZSBtZW51LlxuICAgKlxuICAgKiBAcGFyYW0gX2ZpbGUgLSBUaGUgZmlsZSB0byBjaGVjay5cbiAgICogQHBhcmFtIF9zb3VyY2UgLSBUaGUgc291cmNlIG9mIHRoZSBmaWxlLlxuICAgKiBAcGFyYW0gX2xlYWYgLSBUaGUgbGVhZiB0byBjaGVjay5cbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgY29tbWFuZCBzaG91bGQgYmUgYWRkZWQgdG8gdGhlIGZpbGUgbWVudS5cbiAgICovXG4gIHByb3RlY3RlZCBzaG91bGRBZGRUb0ZpbGVNZW51KF9maWxlOiBURmlsZSwgX3NvdXJjZTogc3RyaW5nLCBfbGVhZj86IFdvcmtzcGFjZUxlYWYpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgZmlsZXMgbWVudS5cbiAgICpcbiAgICogQHBhcmFtIF9maWxlcyAtIFRoZSBmaWxlcyB0byBjaGVjay5cbiAgICogQHBhcmFtIF9zb3VyY2UgLSBUaGUgc291cmNlIG9mIHRoZSBmaWxlcy5cbiAgICogQHBhcmFtIF9sZWFmIC0gVGhlIGxlYWYgdG8gY2hlY2suXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBmaWxlcyBtZW51LlxuICAgKi9cbiAgcHJvdGVjdGVkIHNob3VsZEFkZFRvRmlsZXNNZW51KF9maWxlczogVEZpbGVbXSwgX3NvdXJjZTogc3RyaW5nLCBfbGVhZj86IFdvcmtzcGFjZUxlYWYpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBmaWxlcyBjb21tYW5kIGludm9jYXRpb25zLlxuICpcbiAqIEB0eXBlUGFyYW0gVFBsdWdpbiAtIFRoZSB0eXBlIG9mIHRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRmlsZXNDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbiBleHRlbmRzIFBsdWdpbj4gZXh0ZW5kcyBBYnN0cmFjdEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZmlsZXMgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gcGx1Z2luIC0gVGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGludm9jYXRpb24gYmVsb25ncyB0by5cbiAgICogQHBhcmFtIGZpbGVzIC0gVGhlIGZpbGVzIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IocGx1Z2luOiBUUGx1Z2luLCBwdWJsaWMgcmVhZG9ubHkgZmlsZXM6IFRGaWxlW10pIHtcbiAgICBzdXBlcihwbHVnaW4sIGZpbGVzKTtcbiAgfVxufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIHNlcXVlbnRpYWwgZmlsZXMgY29tbWFuZCBpbnZvY2F0aW9ucy5cbiAqXG4gKiBAdHlwZVBhcmFtIFRQbHVnaW4gLSBUaGUgdHlwZSBvZiB0aGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgYmVsb25ncyB0by5cbiAqL1xuZXhwb3J0IGNsYXNzIFNlcXVlbnRpYWxGaWxlc0NvbW1hbmRJbnZvY2F0aW9uQmFzZTxUUGx1Z2luIGV4dGVuZHMgUGx1Z2luPiBleHRlbmRzIEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgc2VxdWVudGlhbCBmaWxlcyBjb21tYW5kIGludm9jYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBwbHVnaW4gLSBUaGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgaW52b2NhdGlvbiBiZWxvbmdzIHRvLlxuICAgKiBAcGFyYW0gZmlsZXMgLSBUaGUgZmlsZXMgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci5cbiAgICogQHBhcmFtIGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRmlsZSAtIFRoZSBmdW5jdGlvbiB0byBjcmVhdGUgYSBjb21tYW5kIGludm9jYXRpb24gZm9yIGEgZmlsZS5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihwbHVnaW46IFRQbHVnaW4sIGZpbGVzOiBURmlsZVtdLCBwcml2YXRlIHJlYWRvbmx5IGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRmlsZTogKGZpbGU6IFRGaWxlKSA9PiBGaWxlQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+KSB7XG4gICAgc3VwZXIocGx1Z2luLCBmaWxlcyk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlLlxuICAgKlxuICAgKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGNhbkV4ZWN1dGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHN1cGVyLmNhbkV4ZWN1dGUoKSAmJiB0aGlzLmZpbGVzLmxlbmd0aCA+IDAgJiYgdGhpcy5maWxlcy5ldmVyeSgoZmlsZSkgPT4gdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZpbGUoZmlsZSkuaW52b2tlKHRydWUpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyB0aGUgY29tbWFuZC5cbiAgICpcbiAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgY29tbWFuZCBoYXMgYmVlbiBleGVjdXRlZC5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBhc3luYyBleGVjdXRlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGZvciAoY29uc3QgZmlsZSBvZiB0aGlzLmZpbGVzKSB7XG4gICAgICBhd2FpdCB0aGlzLmNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRmlsZShmaWxlKS5pbnZva2VBc3luYyhmYWxzZSk7XG4gICAgfVxuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFZQSxTQUFTLGFBQWE7QUFJdEI7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsT0FDSztBQU9BLE1BQWUsa0NBQTBELGtDQUEyQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT3pILElBQWMsT0FBYztBQUMxQixXQUFPLE9BQU8sS0FBSyxhQUFhO0FBQUEsRUFDbEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFlBQVksUUFBaUIsTUFBb0I7QUFDdEQsVUFBTSxRQUFRLElBQUk7QUFBQSxFQUNwQjtBQUFBO0FBQUE7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
237
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbW1hbmRzL0ZpbGVDb21tYW5kQmFzZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBCYXNlIGNsYXNzZXMgZm9yIGZpbGUgY29tbWFuZHMuXG4gKi9cblxuLyogdjggaWdub3JlIHN0YXJ0IC0tIERlZXBseSBjb3VwbGVkIHRvIE9ic2lkaWFuIHJ1bnRpbWU7IHJlcXVpcmVzIHJ1bm5pbmcgdmF1bHQgZm9yIG1lYW5pbmdmdWwgdGVzdGluZy4gKi9cblxuaW1wb3J0IHR5cGUge1xuICBQbHVnaW4sXG4gIFRBYnN0cmFjdEZpbGUsXG4gIFdvcmtzcGFjZUxlYWZcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgeyBURmlsZSB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBBYnN0cmFjdEZpbGVDb21tYW5kQmFzZU9wdGlvbnMgfSBmcm9tICcuL0Fic3RyYWN0RmlsZUNvbW1hbmRCYXNlLnRzJztcblxuaW1wb3J0IHtcbiAgYXNBcnJheU9mRmlsZXMsXG4gIGFzRmlsZSxcbiAgYXNGaWxlT3JOdWxsLFxuICBpc0ZpbGVcbn0gZnJvbSAnLi4vRmlsZVN5c3RlbS50cyc7XG5pbXBvcnQge1xuICBBYnN0cmFjdEZpbGVDb21tYW5kQmFzZSxcbiAgQWJzdHJhY3RGaWxlQ29tbWFuZEludm9jYXRpb25CYXNlLFxuICBBYnN0cmFjdEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlXG59IGZyb20gJy4vQWJzdHJhY3RGaWxlQ29tbWFuZEJhc2UudHMnO1xuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIGZpbGUgY29tbWFuZCBpbnZvY2F0aW9ucy5cbiAqXG4gKiBAdHlwZVBhcmFtIFRQbHVnaW4gLSBUaGUgdHlwZSBvZiB0aGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgYmVsb25ncyB0by5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbiBleHRlbmRzIFBsdWdpbj4gZXh0ZW5kcyBBYnN0cmFjdEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj4ge1xuICAvKipcbiAgICogR2V0cyB0aGUgZmlsZSB0aGF0IHRoZSBjb21tYW5kIGludm9jYXRpb24gYmVsb25ncyB0by5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIGZpbGUgdGhhdCB0aGUgY29tbWFuZCBpbnZvY2F0aW9uIGJlbG9uZ3MgdG8uXG4gICAqIEB0aHJvd3MgSWYgdGhlIGFic3RyYWN0IGZpbGUgaXMgbm90IGEgZmlsZS5cbiAgICovXG4gIHByb3RlY3RlZCBnZXQgZmlsZSgpOiBURmlsZSB7XG4gICAgcmV0dXJuIGFzRmlsZSh0aGlzLl9hYnN0cmFjdEZpbGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZmlsZSBjb21tYW5kIGludm9jYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBwbHVnaW4gLSBUaGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgaW52b2NhdGlvbiBiZWxvbmdzIHRvLlxuICAgKiBAcGFyYW0gZmlsZSAtIFRoZSBmaWxlIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IocGx1Z2luOiBUUGx1Z2luLCBmaWxlOiBudWxsIHwgVEZpbGUpIHtcbiAgICBzdXBlcihwbHVnaW4sIGZpbGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZS5cbiAgICpcbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZS5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBjYW5FeGVjdXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBzdXBlci5jYW5FeGVjdXRlKCkgJiYgISF0aGlzLl9hYnN0cmFjdEZpbGU7XG4gIH1cbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBhcnJheS1kZWxlZ2F0aW5nIGZpbGUgY29tbWFuZCBpbnZvY2F0aW9ucy5cbiAqXG4gKiBAdHlwZVBhcmFtIFRQbHVnaW4gLSBUaGUgdHlwZSBvZiB0aGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgYmVsb25ncyB0by5cbiAqL1xuZXhwb3J0IGNsYXNzIEFycmF5RGVsZWdhdGluZ0ZpbGVDb21tYW5kSW52b2NhdGlvbjxUUGx1Z2luIGV4dGVuZHMgUGx1Z2luPiBleHRlbmRzIEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj4ge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBhcnJheS1kZWxlZ2F0aW5nIGZpbGUgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gcGx1Z2luIC0gVGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGludm9jYXRpb24gYmVsb25ncyB0by5cbiAgICogQHBhcmFtIGZpbGUgLSBUaGUgZmlsZSB0byBpbnZva2UgdGhlIGNvbW1hbmQgZm9yLlxuICAgKiBAcGFyYW0gY3JlYXRlQ29tbWFuZEludm9jYXRpb25Gb3JGaWxlcyAtIFRoZSBmdW5jdGlvbiB0byBjcmVhdGUgYSBjb21tYW5kIGludm9jYXRpb24gZm9yIGZpbGVzLlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIHBsdWdpbjogVFBsdWdpbixcbiAgICBmaWxlOiBudWxsIHwgVEZpbGUsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZpbGVzOiAoZmlsZXM6IFRGaWxlW10pID0+IEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+XG4gICkge1xuICAgIHN1cGVyKHBsdWdpbiwgZmlsZSk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlLlxuICAgKlxuICAgKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGNhbkV4ZWN1dGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHN1cGVyLmNhbkV4ZWN1dGUoKSAmJiB0aGlzLmNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRmlsZXMoW3RoaXMuZmlsZV0pLmludm9rZSh0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyB0aGUgY29tbWFuZC5cbiAgICpcbiAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgY29tbWFuZCBoYXMgYmVlbiBleGVjdXRlZC5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBhc3luYyBleGVjdXRlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuY3JlYXRlQ29tbWFuZEludm9jYXRpb25Gb3JGaWxlcyhbdGhpcy5maWxlXSkuaW52b2tlQXN5bmMoZmFsc2UpO1xuICB9XG59XG5cbi8qKlxuICogQmFzZSBjbGFzcyBmb3IgZmlsZSBjb21tYW5kcy5cbiAqXG4gKiBAdHlwZVBhcmFtIFRQbHVnaW4gLSBUaGUgdHlwZSBvZiB0aGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgYmVsb25ncyB0by5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZpbGVDb21tYW5kQmFzZTxUUGx1Z2luIGV4dGVuZHMgUGx1Z2luID0gUGx1Z2luPiBleHRlbmRzIEFic3RyYWN0RmlsZUNvbW1hbmRCYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZmlsZSBjb21tYW5kLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIGZvciB0aGUgZmlsZSBjb21tYW5kLlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEFic3RyYWN0RmlsZUNvbW1hbmRCYXNlT3B0aW9uczxUUGx1Z2luPikge1xuICAgIHN1cGVyKG9wdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgYWJzdHJhY3QgZmlsZSBjb21tYW5kIGludm9jYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBhYnN0cmFjdEZpbGUgLSBUaGUgYWJzdHJhY3QgZmlsZSB0byBpbnZva2UgdGhlIGNvbW1hbmQgZm9yLlxuICAgKiBAcmV0dXJucyBUaGUgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uKGFic3RyYWN0RmlsZT86IFRBYnN0cmFjdEZpbGUpOiBBYnN0cmFjdEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj4ge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yQWJzdHJhY3RGaWxlKGFic3RyYWN0RmlsZSA/PyB0aGlzLmFwcC53b3Jrc3BhY2UuZ2V0QWN0aXZlRmlsZSgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGFic3RyYWN0IGZpbGUgY29tbWFuZCBpbnZvY2F0aW9uIGZvciBhbiBhYnN0cmFjdCBmaWxlLlxuICAgKlxuICAgKiBAcGFyYW0gYWJzdHJhY3RGaWxlIC0gVGhlIGFic3RyYWN0IGZpbGUgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci4gSWYgYG51bGxgLCB0aGUgYWN0aXZlIGZpbGUgaXMgdXNlZC5cbiAgICogQHJldHVybnMgVGhlIGNvbW1hbmQgaW52b2NhdGlvbi5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBjcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckFic3RyYWN0RmlsZShhYnN0cmFjdEZpbGU6IG51bGwgfCBUQWJzdHJhY3RGaWxlKTogQWJzdHJhY3RGaWxlQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZpbGUoYXNGaWxlT3JOdWxsKGFic3RyYWN0RmlsZSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgYWJzdHJhY3QgZmlsZXMgY29tbWFuZCBpbnZvY2F0aW9uIGZvciBhYnN0cmFjdCBmaWxlcy5cbiAgICpcbiAgICogQHBhcmFtIGFic3RyYWN0RmlsZXMgLSBUaGUgYWJzdHJhY3QgZmlsZXMgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci5cbiAgICogQHJldHVybnMgQSBuZXcgYWJzdHJhY3QgZmlsZXMgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yQWJzdHJhY3RGaWxlcyhhYnN0cmFjdEZpbGVzOiBUQWJzdHJhY3RGaWxlW10pOiBBYnN0cmFjdEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZpbGVzKGFzQXJyYXlPZkZpbGVzKGFic3RyYWN0RmlsZXMpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGZpbGUgY29tbWFuZCBpbnZvY2F0aW9uIGZvciBhIGZpbGUuXG4gICAqXG4gICAqIEBwYXJhbSBmaWxlIC0gVGhlIGZpbGUgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci5cbiAgICogQHJldHVybnMgQSBuZXcgZmlsZSBjb21tYW5kIGludm9jYXRpb24uXG4gICAqL1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgY3JlYXRlQ29tbWFuZEludm9jYXRpb25Gb3JGaWxlKGZpbGU6IG51bGwgfCBURmlsZSk6IEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj47XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZmlsZXMgY29tbWFuZCBpbnZvY2F0aW9uIGZvciBmaWxlcy5cbiAgICpcbiAgICogQHBhcmFtIGZpbGVzIC0gVGhlIGZpbGVzIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqIEByZXR1cm5zIEEgbmV3IGZpbGVzIGNvbW1hbmQgaW52b2NhdGlvbi5cbiAgICovXG4gIHByb3RlY3RlZCBjcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZpbGVzKGZpbGVzOiBURmlsZVtdKTogRmlsZXNDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj4ge1xuICAgIHJldHVybiBuZXcgU2VxdWVudGlhbEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlKHRoaXMucGx1Z2luLCBmaWxlcywgdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZpbGUuYmluZCh0aGlzKSk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgYWJzdHJhY3QgZmlsZSBtZW51LlxuICAgKlxuICAgKiBAcGFyYW0gYWJzdHJhY3RGaWxlIC0gVGhlIGFic3RyYWN0IGZpbGUgdG8gY2hlY2suXG4gICAqIEBwYXJhbSBzb3VyY2UgLSBUaGUgc291cmNlIG9mIHRoZSBhYnN0cmFjdCBmaWxlLlxuICAgKiBAcGFyYW0gbGVhZiAtIFRoZSBsZWFmIHRvIGNoZWNrLlxuICAgKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgYWJzdHJhY3QgZmlsZSBtZW51LlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHNob3VsZEFkZFRvQWJzdHJhY3RGaWxlTWVudShhYnN0cmFjdEZpbGU6IFRBYnN0cmFjdEZpbGUsIHNvdXJjZTogc3RyaW5nLCBsZWFmPzogV29ya3NwYWNlTGVhZik6IGJvb2xlYW4ge1xuICAgIGlmICghaXNGaWxlKGFic3RyYWN0RmlsZSkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuc2hvdWxkQWRkVG9GaWxlTWVudShhYnN0cmFjdEZpbGUsIHNvdXJjZSwgbGVhZik7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgYWJzdHJhY3QgZmlsZXMgbWVudS5cbiAgICpcbiAgICogQHBhcmFtIGFic3RyYWN0RmlsZXMgLSBUaGUgYWJzdHJhY3QgZmlsZXMgdG8gY2hlY2suXG4gICAqIEBwYXJhbSBzb3VyY2UgLSBUaGUgc291cmNlIG9mIHRoZSBhYnN0cmFjdCBmaWxlcy5cbiAgICogQHBhcmFtIGxlYWYgLSBUaGUgbGVhZiB0byBjaGVjay5cbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgY29tbWFuZCBzaG91bGQgYmUgYWRkZWQgdG8gdGhlIGFic3RyYWN0IGZpbGVzIG1lbnUuXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgc2hvdWxkQWRkVG9BYnN0cmFjdEZpbGVzTWVudShhYnN0cmFjdEZpbGVzOiBUQWJzdHJhY3RGaWxlW10sIHNvdXJjZTogc3RyaW5nLCBsZWFmPzogV29ya3NwYWNlTGVhZik6IGJvb2xlYW4ge1xuICAgIGlmICghYWJzdHJhY3RGaWxlcy5ldmVyeSgoYWJzdHJhY3RGaWxlKSA9PiBpc0ZpbGUoYWJzdHJhY3RGaWxlKSkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuc2hvdWxkQWRkVG9GaWxlc01lbnUoYXNBcnJheU9mRmlsZXMoYWJzdHJhY3RGaWxlcyksIHNvdXJjZSwgbGVhZik7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgZmlsZSBtZW51LlxuICAgKlxuICAgKiBAcGFyYW0gX2ZpbGUgLSBUaGUgZmlsZSB0byBjaGVjay5cbiAgICogQHBhcmFtIF9zb3VyY2UgLSBUaGUgc291cmNlIG9mIHRoZSBmaWxlLlxuICAgKiBAcGFyYW0gX2xlYWYgLSBUaGUgbGVhZiB0byBjaGVjay5cbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgY29tbWFuZCBzaG91bGQgYmUgYWRkZWQgdG8gdGhlIGZpbGUgbWVudS5cbiAgICovXG4gIHByb3RlY3RlZCBzaG91bGRBZGRUb0ZpbGVNZW51KF9maWxlOiBURmlsZSwgX3NvdXJjZTogc3RyaW5nLCBfbGVhZj86IFdvcmtzcGFjZUxlYWYpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgZmlsZXMgbWVudS5cbiAgICpcbiAgICogQHBhcmFtIF9maWxlcyAtIFRoZSBmaWxlcyB0byBjaGVjay5cbiAgICogQHBhcmFtIF9zb3VyY2UgLSBUaGUgc291cmNlIG9mIHRoZSBmaWxlcy5cbiAgICogQHBhcmFtIF9sZWFmIC0gVGhlIGxlYWYgdG8gY2hlY2suXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBmaWxlcyBtZW51LlxuICAgKi9cbiAgcHJvdGVjdGVkIHNob3VsZEFkZFRvRmlsZXNNZW51KF9maWxlczogVEZpbGVbXSwgX3NvdXJjZTogc3RyaW5nLCBfbGVhZj86IFdvcmtzcGFjZUxlYWYpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBmaWxlcyBjb21tYW5kIGludm9jYXRpb25zLlxuICpcbiAqIEB0eXBlUGFyYW0gVFBsdWdpbiAtIFRoZSB0eXBlIG9mIHRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRmlsZXNDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbiBleHRlbmRzIFBsdWdpbj4gZXh0ZW5kcyBBYnN0cmFjdEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZmlsZXMgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gcGx1Z2luIC0gVGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGludm9jYXRpb24gYmVsb25ncyB0by5cbiAgICogQHBhcmFtIGZpbGVzIC0gVGhlIGZpbGVzIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IocGx1Z2luOiBUUGx1Z2luLCBwdWJsaWMgcmVhZG9ubHkgZmlsZXM6IFRGaWxlW10pIHtcbiAgICBzdXBlcihwbHVnaW4sIGZpbGVzKTtcbiAgfVxufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIHNlcXVlbnRpYWwgZmlsZXMgY29tbWFuZCBpbnZvY2F0aW9ucy5cbiAqXG4gKiBAdHlwZVBhcmFtIFRQbHVnaW4gLSBUaGUgdHlwZSBvZiB0aGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgYmVsb25ncyB0by5cbiAqL1xuZXhwb3J0IGNsYXNzIFNlcXVlbnRpYWxGaWxlc0NvbW1hbmRJbnZvY2F0aW9uQmFzZTxUUGx1Z2luIGV4dGVuZHMgUGx1Z2luPiBleHRlbmRzIEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgc2VxdWVudGlhbCBmaWxlcyBjb21tYW5kIGludm9jYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBwbHVnaW4gLSBUaGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgaW52b2NhdGlvbiBiZWxvbmdzIHRvLlxuICAgKiBAcGFyYW0gZmlsZXMgLSBUaGUgZmlsZXMgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci5cbiAgICogQHBhcmFtIGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRmlsZSAtIFRoZSBmdW5jdGlvbiB0byBjcmVhdGUgYSBjb21tYW5kIGludm9jYXRpb24gZm9yIGEgZmlsZS5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihwbHVnaW46IFRQbHVnaW4sIGZpbGVzOiBURmlsZVtdLCBwcml2YXRlIHJlYWRvbmx5IGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRmlsZTogKGZpbGU6IFRGaWxlKSA9PiBGaWxlQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+KSB7XG4gICAgc3VwZXIocGx1Z2luLCBmaWxlcyk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlLlxuICAgKlxuICAgKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGNhbkV4ZWN1dGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHN1cGVyLmNhbkV4ZWN1dGUoKSAmJiB0aGlzLmZpbGVzLmxlbmd0aCA+IDAgJiYgdGhpcy5maWxlcy5ldmVyeSgoZmlsZSkgPT4gdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZpbGUoZmlsZSkuaW52b2tlKHRydWUpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyB0aGUgY29tbWFuZC5cbiAgICpcbiAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgY29tbWFuZCBoYXMgYmVlbiBleGVjdXRlZC5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBhc3luYyBleGVjdXRlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGZvciAoY29uc3QgZmlsZSBvZiB0aGlzLmZpbGVzKSB7XG4gICAgICBhd2FpdCB0aGlzLmNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRmlsZShmaWxlKS5pbnZva2VBc3luYyhmYWxzZSk7XG4gICAgfVxuICB9XG59XG4vKiB2OCBpZ25vcmUgc3RvcCAqL1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBY0EsU0FBUyxhQUFhO0FBSXRCO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFDUDtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFPQSxNQUFlLGtDQUEwRCxrQ0FBMkM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU96SCxJQUFjLE9BQWM7QUFD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
@@ -226,4 +226,4 @@ export {
226
226
  FoldersCommandInvocationBase,
227
227
  SequentialFoldersCommandInvocationBase
228
228
  };
229
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbW1hbmRzL0ZvbGRlckNvbW1hbmRCYXNlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIEJhc2UgY2xhc3NlcyBmb3IgZm9sZGVyIGNvbW1hbmRzLlxuICovXG5cbmltcG9ydCB0eXBlIHtcbiAgUGx1Z2luLFxuICBUQWJzdHJhY3RGaWxlLFxuICBXb3Jrc3BhY2VMZWFmXG59IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgVEZvbGRlciB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBBYnN0cmFjdEZpbGVDb21tYW5kQmFzZU9wdGlvbnMgfSBmcm9tICcuL0Fic3RyYWN0RmlsZUNvbW1hbmRCYXNlLnRzJztcblxuaW1wb3J0IHtcbiAgYXNBcnJheU9mRm9sZGVycyxcbiAgYXNGb2xkZXIsXG4gIGFzRm9sZGVyT3JOdWxsLFxuICBpc0ZvbGRlclxufSBmcm9tICcuLi9GaWxlU3lzdGVtLnRzJztcbmltcG9ydCB7XG4gIEFic3RyYWN0RmlsZUNvbW1hbmRCYXNlLFxuICBBYnN0cmFjdEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2UsXG4gIEFic3RyYWN0RmlsZXNDb21tYW5kSW52b2NhdGlvbkJhc2Vcbn0gZnJvbSAnLi9BYnN0cmFjdEZpbGVDb21tYW5kQmFzZS50cyc7XG5cbi8qKlxuICogQmFzZSBjbGFzcyBmb3IgZm9sZGVyIGNvbW1hbmQgaW52b2NhdGlvbnMuXG4gKlxuICogQHR5cGVQYXJhbSBUUGx1Z2luIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGJlbG9uZ3MgdG8uXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGb2xkZXJDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbiBleHRlbmRzIFBsdWdpbj4gZXh0ZW5kcyBBYnN0cmFjdEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj4ge1xuICAvKipcbiAgICogR2V0cyB0aGUgZm9sZGVyIHRoYXQgdGhlIGNvbW1hbmQgaW52b2NhdGlvbiBiZWxvbmdzIHRvLlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgZm9sZGVyIHRoYXQgdGhlIGNvbW1hbmQgaW52b2NhdGlvbiBiZWxvbmdzIHRvLlxuICAgKiBAdGhyb3dzIElmIHRoZSBhYnN0cmFjdCBmaWxlIGlzIG5vdCBhIGZvbGRlci5cbiAgICovXG4gIHByb3RlY3RlZCBnZXQgZm9sZGVyKCk6IFRGb2xkZXIge1xuICAgIHJldHVybiBhc0ZvbGRlcih0aGlzLl9hYnN0cmFjdEZpbGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZS5cbiAgICpcbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZS5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBjYW5FeGVjdXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBzdXBlci5jYW5FeGVjdXRlKCkgJiYgISF0aGlzLmZvbGRlcjtcbiAgfVxufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIGFycmF5LWRlbGVnYXRpbmcgZmlsZSBjb21tYW5kIGludm9jYXRpb25zLlxuICpcbiAqIEB0eXBlUGFyYW0gVFBsdWdpbiAtIFRoZSB0eXBlIG9mIHRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICovXG5leHBvcnQgY2xhc3MgQXJyYXlEZWxlZ2F0aW5nRm9sZGVyQ29tbWFuZEludm9jYXRpb248VFBsdWdpbiBleHRlbmRzIFBsdWdpbj4gZXh0ZW5kcyBGb2xkZXJDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj4ge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBhcnJheS1kZWxlZ2F0aW5nIGZvbGRlciBjb21tYW5kIGludm9jYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBwbHVnaW4gLSBUaGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgaW52b2NhdGlvbiBiZWxvbmdzIHRvLlxuICAgKiBAcGFyYW0gZm9sZGVyIC0gVGhlIGZpbGUgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci5cbiAgICogQHBhcmFtIGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRmlsZXMgLSBUaGUgZnVuY3Rpb24gdG8gY3JlYXRlIGEgY29tbWFuZCBpbnZvY2F0aW9uIGZvciBmaWxlcy5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwbHVnaW46IFRQbHVnaW4sXG4gICAgZm9sZGVyOiBudWxsIHwgVEZvbGRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRmlsZXM6IChmb2xkZXJzOiBURm9sZGVyW10pID0+IEZvbGRlcnNDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj5cbiAgKSB7XG4gICAgc3VwZXIocGx1Z2luLCBmb2xkZXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZS5cbiAgICpcbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZS5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBjYW5FeGVjdXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBzdXBlci5jYW5FeGVjdXRlKCkgJiYgdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZpbGVzKFt0aGlzLmZvbGRlcl0pLmludm9rZSh0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyB0aGUgY29tbWFuZC5cbiAgICpcbiAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgY29tbWFuZCBoYXMgYmVlbiBleGVjdXRlZC5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBhc3luYyBleGVjdXRlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuY3JlYXRlQ29tbWFuZEludm9jYXRpb25Gb3JGaWxlcyhbdGhpcy5mb2xkZXJdKS5pbnZva2VBc3luYyhmYWxzZSk7XG4gIH1cbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBmb2xkZXIgY29tbWFuZHMuXG4gKlxuICogQHR5cGVQYXJhbSBUUGx1Z2luIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGJlbG9uZ3MgdG8uXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGb2xkZXJDb21tYW5kQmFzZTxUUGx1Z2luIGV4dGVuZHMgUGx1Z2luID0gUGx1Z2luPiBleHRlbmRzIEFic3RyYWN0RmlsZUNvbW1hbmRCYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZm9sZGVyIGNvbW1hbmQuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHRoZSBmb2xkZXIgY29tbWFuZC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihvcHRpb25zOiBBYnN0cmFjdEZpbGVDb21tYW5kQmFzZU9wdGlvbnM8VFBsdWdpbj4pIHtcbiAgICBzdXBlcihvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGFic3RyYWN0IGZpbGUgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gYWJzdHJhY3RGaWxlIC0gVGhlIGFic3RyYWN0IGZpbGUgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci5cbiAgICogQHJldHVybnMgQSBuZXcgYWJzdHJhY3QgZmlsZSBjb21tYW5kIGludm9jYXRpb24uXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgY3JlYXRlQ29tbWFuZEludm9jYXRpb24oYWJzdHJhY3RGaWxlPzogVEFic3RyYWN0RmlsZSk6IEFic3RyYWN0RmlsZUNvbW1hbmRJbnZvY2F0aW9uQmFzZTxUUGx1Z2luPiB7XG4gICAgY29uc3QgZm9sZGVyID0gYXNGb2xkZXJPck51bGwoYWJzdHJhY3RGaWxlID8/IG51bGwpID8/IHRoaXMuYXBwLndvcmtzcGFjZS5nZXRBY3RpdmVGaWxlKCk/LnBhcmVudCA/PyBudWxsO1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRm9sZGVyKGZvbGRlcik7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBhYnN0cmFjdCBmaWxlIGNvbW1hbmQgaW52b2NhdGlvbiBmb3IgYW4gYWJzdHJhY3QgZmlsZS5cbiAgICpcbiAgICogQHBhcmFtIGFic3RyYWN0RmlsZSAtIFRoZSBhYnN0cmFjdCBmaWxlIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqIEByZXR1cm5zIEEgbmV3IGFic3RyYWN0IGZpbGUgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yQWJzdHJhY3RGaWxlKGFic3RyYWN0RmlsZTogbnVsbCB8IFRBYnN0cmFjdEZpbGUpOiBBYnN0cmFjdEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj4ge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRm9sZGVyKGFzRm9sZGVyT3JOdWxsKGFic3RyYWN0RmlsZSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgYWJzdHJhY3QgZmlsZXMgY29tbWFuZCBpbnZvY2F0aW9uIGZvciBhYnN0cmFjdCBmaWxlcy5cbiAgICpcbiAgICogQHBhcmFtIGFic3RyYWN0RmlsZXMgLSBUaGUgYWJzdHJhY3QgZmlsZXMgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci5cbiAgICogQHJldHVybnMgQSBuZXcgYWJzdHJhY3QgZmlsZXMgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yQWJzdHJhY3RGaWxlcyhhYnN0cmFjdEZpbGVzOiBUQWJzdHJhY3RGaWxlW10pOiBBYnN0cmFjdEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZvbGRlcnMoYXNBcnJheU9mRm9sZGVycyhhYnN0cmFjdEZpbGVzKSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBhYnN0cmFjdCBmaWxlIGNvbW1hbmQgaW52b2NhdGlvbiBmb3IgYSBmb2xkZXIuXG4gICAqXG4gICAqIEBwYXJhbSBmb2xkZXIgLSBUaGUgZm9sZGVyIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqIEByZXR1cm5zIEEgbmV3IGZvbGRlciBjb21tYW5kIGludm9jYXRpb24uXG4gICAqL1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgY3JlYXRlQ29tbWFuZEludm9jYXRpb25Gb3JGb2xkZXIoZm9sZGVyOiBudWxsIHwgVEZvbGRlcik6IEZvbGRlckNvbW1hbmRJbnZvY2F0aW9uQmFzZTxUUGx1Z2luPjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBmb2xkZXJzIGNvbW1hbmQgaW52b2NhdGlvbiBmb3IgZm9sZGVycy5cbiAgICpcbiAgICogQHBhcmFtIGZvbGRlcnMgLSBUaGUgZm9sZGVycyB0byBpbnZva2UgdGhlIGNvbW1hbmQgZm9yLlxuICAgKiBAcmV0dXJucyBBIG5ldyBmb2xkZXJzIGNvbW1hbmQgaW52b2NhdGlvbi5cbiAgICovXG4gIHByb3RlY3RlZCBjcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZvbGRlcnMoZm9sZGVyczogVEZvbGRlcltdKTogRm9sZGVyc0NvbW1hbmRJbnZvY2F0aW9uQmFzZTxUUGx1Z2luPiB7XG4gICAgcmV0dXJuIG5ldyBTZXF1ZW50aWFsRm9sZGVyc0NvbW1hbmRJbnZvY2F0aW9uQmFzZSh0aGlzLnBsdWdpbiwgZm9sZGVycywgdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZvbGRlci5iaW5kKHRoaXMpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIGNvbW1hbmQgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBhYnN0cmFjdCBmaWxlIG1lbnUuXG4gICAqXG4gICAqIEBwYXJhbSBhYnN0cmFjdEZpbGUgLSBUaGUgYWJzdHJhY3QgZmlsZSB0byBjaGVjay5cbiAgICogQHBhcmFtIHNvdXJjZSAtIFRoZSBzb3VyY2Ugb2YgdGhlIGFic3RyYWN0IGZpbGUuXG4gICAqIEBwYXJhbSBsZWFmIC0gVGhlIGxlYWYgdG8gY2hlY2suXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBhYnN0cmFjdCBmaWxlIG1lbnUuXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgc2hvdWxkQWRkVG9BYnN0cmFjdEZpbGVNZW51KGFic3RyYWN0RmlsZTogVEFic3RyYWN0RmlsZSwgc291cmNlOiBzdHJpbmcsIGxlYWY/OiBXb3Jrc3BhY2VMZWFmKTogYm9vbGVhbiB7XG4gICAgaWYgKCFpc0ZvbGRlcihhYnN0cmFjdEZpbGUpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnNob3VsZEFkZFRvRm9sZGVyTWVudShhYnN0cmFjdEZpbGUsIHNvdXJjZSwgbGVhZik7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgYWJzdHJhY3QgZmlsZXMgbWVudS5cbiAgICpcbiAgICogQHBhcmFtIGFic3RyYWN0RmlsZXMgLSBUaGUgYWJzdHJhY3QgZmlsZXMgdG8gY2hlY2suXG4gICAqIEBwYXJhbSBzb3VyY2UgLSBUaGUgc291cmNlIG9mIHRoZSBhYnN0cmFjdCBmaWxlcy5cbiAgICogQHBhcmFtIGxlYWYgLSBUaGUgbGVhZiB0byBjaGVjay5cbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgY29tbWFuZCBzaG91bGQgYmUgYWRkZWQgdG8gdGhlIGFic3RyYWN0IGZpbGVzIG1lbnUuXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgc2hvdWxkQWRkVG9BYnN0cmFjdEZpbGVzTWVudShhYnN0cmFjdEZpbGVzOiBUQWJzdHJhY3RGaWxlW10sIHNvdXJjZTogc3RyaW5nLCBsZWFmPzogV29ya3NwYWNlTGVhZik6IGJvb2xlYW4ge1xuICAgIGlmICghYWJzdHJhY3RGaWxlcy5ldmVyeSgoYWJzdHJhY3RGaWxlKSA9PiBpc0ZvbGRlcihhYnN0cmFjdEZpbGUpKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zaG91bGRBZGRUb0ZvbGRlcnNNZW51KGFzQXJyYXlPZkZvbGRlcnMoYWJzdHJhY3RGaWxlcyksIHNvdXJjZSwgbGVhZik7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgZm9sZGVyIG1lbnUuXG4gICAqXG4gICAqIEBwYXJhbSBfZm9sZGVyIC0gVGhlIGZvbGRlciB0byBjaGVjay5cbiAgICogQHBhcmFtIF9zb3VyY2UgLSBUaGUgc291cmNlIG9mIHRoZSBmb2xkZXIuXG4gICAqIEBwYXJhbSBfbGVhZiAtIFRoZSBsZWFmIHRvIGNoZWNrLlxuICAgKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgZm9sZGVyIG1lbnUuXG4gICAqL1xuICBwcm90ZWN0ZWQgc2hvdWxkQWRkVG9Gb2xkZXJNZW51KF9mb2xkZXI6IFRGb2xkZXIsIF9zb3VyY2U6IHN0cmluZywgX2xlYWY/OiBXb3Jrc3BhY2VMZWFmKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBzaG91bGQgYmUgYWRkZWQgdG8gdGhlIGZvbGRlcnMgbWVudS5cbiAgICpcbiAgICogQHBhcmFtIF9mb2xkZXJzIC0gVGhlIGZvbGRlcnMgdG8gY2hlY2suXG4gICAqIEBwYXJhbSBfc291cmNlIC0gVGhlIHNvdXJjZSBvZiB0aGUgZm9sZGVycy5cbiAgICogQHBhcmFtIF9sZWFmIC0gVGhlIGxlYWYgdG8gY2hlY2suXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBmb2xkZXJzIG1lbnUuXG4gICAqL1xuICBwcm90ZWN0ZWQgc2hvdWxkQWRkVG9Gb2xkZXJzTWVudShfZm9sZGVyczogVEZvbGRlcltdLCBfc291cmNlOiBzdHJpbmcsIF9sZWFmPzogV29ya3NwYWNlTGVhZik6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIGZvbGRlcnMgY29tbWFuZCBpbnZvY2F0aW9ucy5cbiAqXG4gKiBAdHlwZVBhcmFtIFRQbHVnaW4gLSBUaGUgdHlwZSBvZiB0aGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgYmVsb25ncyB0by5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZvbGRlcnNDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbiBleHRlbmRzIFBsdWdpbj4gZXh0ZW5kcyBBYnN0cmFjdEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZm9sZGVycyBjb21tYW5kIGludm9jYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBwbHVnaW4gLSBUaGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgaW52b2NhdGlvbiBiZWxvbmdzIHRvLlxuICAgKiBAcGFyYW0gZm9sZGVycyAtIFRoZSBmb2xkZXJzIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IocGx1Z2luOiBUUGx1Z2luLCBwdWJsaWMgcmVhZG9ubHkgZm9sZGVyczogVEZvbGRlcltdKSB7XG4gICAgc3VwZXIocGx1Z2luLCBmb2xkZXJzKTtcbiAgfVxufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIHNlcXVlbnRpYWwgZm9sZGVycyBjb21tYW5kIGludm9jYXRpb25zLlxuICpcbiAqIEB0eXBlUGFyYW0gVFBsdWdpbiAtIFRoZSB0eXBlIG9mIHRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICovXG5leHBvcnQgY2xhc3MgU2VxdWVudGlhbEZvbGRlcnNDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbiBleHRlbmRzIFBsdWdpbj4gZXh0ZW5kcyBGb2xkZXJzQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgc2VxdWVudGlhbCBmb2xkZXJzIGNvbW1hbmQgaW52b2NhdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHBsdWdpbiAtIFRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBpbnZvY2F0aW9uIGJlbG9uZ3MgdG8uXG4gICAqIEBwYXJhbSBmb2xkZXJzIC0gVGhlIGZvbGRlcnMgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci5cbiAgICogQHBhcmFtIGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRm9sZGVyIC0gVGhlIGZ1bmN0aW9uIHRvIGNyZWF0ZSBhIGNvbW1hbmQgaW52b2NhdGlvbiBmb3IgYSBmb2xkZXIuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgcGx1Z2luOiBUUGx1Z2luLFxuICAgIGZvbGRlcnM6IFRGb2xkZXJbXSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRm9sZGVyOiAoZm9sZGVyOiBURm9sZGVyKSA9PiBGb2xkZXJDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj5cbiAgKSB7XG4gICAgc3VwZXIocGx1Z2luLCBmb2xkZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIGNvbW1hbmQgY2FuIGV4ZWN1dGUuXG4gICAqXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgY2FuIGV4ZWN1dGUuXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgY2FuRXhlY3V0ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gc3VwZXIuY2FuRXhlY3V0ZSgpICYmIHRoaXMuZm9sZGVycy5sZW5ndGggPiAwICYmIHRoaXMuZm9sZGVycy5ldmVyeSgoZm9sZGVyKSA9PiB0aGlzLmNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRm9sZGVyKGZvbGRlcikuaW52b2tlKHRydWUpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyB0aGUgY29tbWFuZC5cbiAgICpcbiAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgY29tbWFuZCBoYXMgYmVlbiBleGVjdXRlZC5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBhc3luYyBleGVjdXRlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGZvciAoY29uc3QgZm9sZGVyIG9mIHRoaXMuZm9sZGVycykge1xuICAgICAgYXdhaXQgdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZvbGRlcihmb2xkZXIpLmludm9rZUFzeW5jKGZhbHNlKTtcbiAgICB9XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVlBLFNBQVMsZUFBZTtBQUl4QjtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBQ1A7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBT0EsTUFBZSxvQ0FBNEQsa0NBQTJDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPM0gsSUFBYyxTQUFrQjtBQUM5QixXQUFPLFNBQVMsS0FBSyxhQUFhO0FBQUEsRUFDcEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPbUIsYUFBc0I7QUFDdkMsV0FBTyxNQUFNLFdBQVcsS0FBSyxDQUFDLENBQUMsS0FBSztBQUFBLEVB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
229
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbW1hbmRzL0ZvbGRlckNvbW1hbmRCYXNlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIEJhc2UgY2xhc3NlcyBmb3IgZm9sZGVyIGNvbW1hbmRzLlxuICovXG5cbi8qIHY4IGlnbm9yZSBzdGFydCAtLSBEZWVwbHkgY291cGxlZCB0byBPYnNpZGlhbiBydW50aW1lOyByZXF1aXJlcyBydW5uaW5nIHZhdWx0IGZvciBtZWFuaW5nZnVsIHRlc3RpbmcuICovXG5cbmltcG9ydCB0eXBlIHtcbiAgUGx1Z2luLFxuICBUQWJzdHJhY3RGaWxlLFxuICBXb3Jrc3BhY2VMZWFmXG59IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgVEZvbGRlciB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBBYnN0cmFjdEZpbGVDb21tYW5kQmFzZU9wdGlvbnMgfSBmcm9tICcuL0Fic3RyYWN0RmlsZUNvbW1hbmRCYXNlLnRzJztcblxuaW1wb3J0IHtcbiAgYXNBcnJheU9mRm9sZGVycyxcbiAgYXNGb2xkZXIsXG4gIGFzRm9sZGVyT3JOdWxsLFxuICBpc0ZvbGRlclxufSBmcm9tICcuLi9GaWxlU3lzdGVtLnRzJztcbmltcG9ydCB7XG4gIEFic3RyYWN0RmlsZUNvbW1hbmRCYXNlLFxuICBBYnN0cmFjdEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2UsXG4gIEFic3RyYWN0RmlsZXNDb21tYW5kSW52b2NhdGlvbkJhc2Vcbn0gZnJvbSAnLi9BYnN0cmFjdEZpbGVDb21tYW5kQmFzZS50cyc7XG5cbi8qKlxuICogQmFzZSBjbGFzcyBmb3IgZm9sZGVyIGNvbW1hbmQgaW52b2NhdGlvbnMuXG4gKlxuICogQHR5cGVQYXJhbSBUUGx1Z2luIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGJlbG9uZ3MgdG8uXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGb2xkZXJDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbiBleHRlbmRzIFBsdWdpbj4gZXh0ZW5kcyBBYnN0cmFjdEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj4ge1xuICAvKipcbiAgICogR2V0cyB0aGUgZm9sZGVyIHRoYXQgdGhlIGNvbW1hbmQgaW52b2NhdGlvbiBiZWxvbmdzIHRvLlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgZm9sZGVyIHRoYXQgdGhlIGNvbW1hbmQgaW52b2NhdGlvbiBiZWxvbmdzIHRvLlxuICAgKiBAdGhyb3dzIElmIHRoZSBhYnN0cmFjdCBmaWxlIGlzIG5vdCBhIGZvbGRlci5cbiAgICovXG4gIHByb3RlY3RlZCBnZXQgZm9sZGVyKCk6IFRGb2xkZXIge1xuICAgIHJldHVybiBhc0ZvbGRlcih0aGlzLl9hYnN0cmFjdEZpbGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZS5cbiAgICpcbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZS5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBjYW5FeGVjdXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBzdXBlci5jYW5FeGVjdXRlKCkgJiYgISF0aGlzLmZvbGRlcjtcbiAgfVxufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIGFycmF5LWRlbGVnYXRpbmcgZmlsZSBjb21tYW5kIGludm9jYXRpb25zLlxuICpcbiAqIEB0eXBlUGFyYW0gVFBsdWdpbiAtIFRoZSB0eXBlIG9mIHRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICovXG5leHBvcnQgY2xhc3MgQXJyYXlEZWxlZ2F0aW5nRm9sZGVyQ29tbWFuZEludm9jYXRpb248VFBsdWdpbiBleHRlbmRzIFBsdWdpbj4gZXh0ZW5kcyBGb2xkZXJDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj4ge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBhcnJheS1kZWxlZ2F0aW5nIGZvbGRlciBjb21tYW5kIGludm9jYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBwbHVnaW4gLSBUaGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgaW52b2NhdGlvbiBiZWxvbmdzIHRvLlxuICAgKiBAcGFyYW0gZm9sZGVyIC0gVGhlIGZpbGUgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci5cbiAgICogQHBhcmFtIGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRmlsZXMgLSBUaGUgZnVuY3Rpb24gdG8gY3JlYXRlIGEgY29tbWFuZCBpbnZvY2F0aW9uIGZvciBmaWxlcy5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwbHVnaW46IFRQbHVnaW4sXG4gICAgZm9sZGVyOiBudWxsIHwgVEZvbGRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRmlsZXM6IChmb2xkZXJzOiBURm9sZGVyW10pID0+IEZvbGRlcnNDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj5cbiAgKSB7XG4gICAgc3VwZXIocGx1Z2luLCBmb2xkZXIpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZS5cbiAgICpcbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZS5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBjYW5FeGVjdXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBzdXBlci5jYW5FeGVjdXRlKCkgJiYgdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZpbGVzKFt0aGlzLmZvbGRlcl0pLmludm9rZSh0cnVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyB0aGUgY29tbWFuZC5cbiAgICpcbiAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgY29tbWFuZCBoYXMgYmVlbiBleGVjdXRlZC5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBhc3luYyBleGVjdXRlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuY3JlYXRlQ29tbWFuZEludm9jYXRpb25Gb3JGaWxlcyhbdGhpcy5mb2xkZXJdKS5pbnZva2VBc3luYyhmYWxzZSk7XG4gIH1cbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBmb2xkZXIgY29tbWFuZHMuXG4gKlxuICogQHR5cGVQYXJhbSBUUGx1Z2luIC0gVGhlIHR5cGUgb2YgdGhlIHBsdWdpbiB0aGF0IHRoZSBjb21tYW5kIGJlbG9uZ3MgdG8uXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGb2xkZXJDb21tYW5kQmFzZTxUUGx1Z2luIGV4dGVuZHMgUGx1Z2luID0gUGx1Z2luPiBleHRlbmRzIEFic3RyYWN0RmlsZUNvbW1hbmRCYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZm9sZGVyIGNvbW1hbmQuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgZm9yIHRoZSBmb2xkZXIgY29tbWFuZC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihvcHRpb25zOiBBYnN0cmFjdEZpbGVDb21tYW5kQmFzZU9wdGlvbnM8VFBsdWdpbj4pIHtcbiAgICBzdXBlcihvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGFic3RyYWN0IGZpbGUgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gYWJzdHJhY3RGaWxlIC0gVGhlIGFic3RyYWN0IGZpbGUgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci5cbiAgICogQHJldHVybnMgQSBuZXcgYWJzdHJhY3QgZmlsZSBjb21tYW5kIGludm9jYXRpb24uXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgY3JlYXRlQ29tbWFuZEludm9jYXRpb24oYWJzdHJhY3RGaWxlPzogVEFic3RyYWN0RmlsZSk6IEFic3RyYWN0RmlsZUNvbW1hbmRJbnZvY2F0aW9uQmFzZTxUUGx1Z2luPiB7XG4gICAgY29uc3QgZm9sZGVyID0gYXNGb2xkZXJPck51bGwoYWJzdHJhY3RGaWxlID8/IG51bGwpID8/IHRoaXMuYXBwLndvcmtzcGFjZS5nZXRBY3RpdmVGaWxlKCk/LnBhcmVudCA/PyBudWxsO1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRm9sZGVyKGZvbGRlcik7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBhYnN0cmFjdCBmaWxlIGNvbW1hbmQgaW52b2NhdGlvbiBmb3IgYW4gYWJzdHJhY3QgZmlsZS5cbiAgICpcbiAgICogQHBhcmFtIGFic3RyYWN0RmlsZSAtIFRoZSBhYnN0cmFjdCBmaWxlIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqIEByZXR1cm5zIEEgbmV3IGFic3RyYWN0IGZpbGUgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yQWJzdHJhY3RGaWxlKGFic3RyYWN0RmlsZTogbnVsbCB8IFRBYnN0cmFjdEZpbGUpOiBBYnN0cmFjdEZpbGVDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj4ge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRm9sZGVyKGFzRm9sZGVyT3JOdWxsKGFic3RyYWN0RmlsZSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgYWJzdHJhY3QgZmlsZXMgY29tbWFuZCBpbnZvY2F0aW9uIGZvciBhYnN0cmFjdCBmaWxlcy5cbiAgICpcbiAgICogQHBhcmFtIGFic3RyYWN0RmlsZXMgLSBUaGUgYWJzdHJhY3QgZmlsZXMgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci5cbiAgICogQHJldHVybnMgQSBuZXcgYWJzdHJhY3QgZmlsZXMgY29tbWFuZCBpbnZvY2F0aW9uLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yQWJzdHJhY3RGaWxlcyhhYnN0cmFjdEZpbGVzOiBUQWJzdHJhY3RGaWxlW10pOiBBYnN0cmFjdEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZvbGRlcnMoYXNBcnJheU9mRm9sZGVycyhhYnN0cmFjdEZpbGVzKSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBhYnN0cmFjdCBmaWxlIGNvbW1hbmQgaW52b2NhdGlvbiBmb3IgYSBmb2xkZXIuXG4gICAqXG4gICAqIEBwYXJhbSBmb2xkZXIgLSBUaGUgZm9sZGVyIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqIEByZXR1cm5zIEEgbmV3IGZvbGRlciBjb21tYW5kIGludm9jYXRpb24uXG4gICAqL1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgY3JlYXRlQ29tbWFuZEludm9jYXRpb25Gb3JGb2xkZXIoZm9sZGVyOiBudWxsIHwgVEZvbGRlcik6IEZvbGRlckNvbW1hbmRJbnZvY2F0aW9uQmFzZTxUUGx1Z2luPjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBmb2xkZXJzIGNvbW1hbmQgaW52b2NhdGlvbiBmb3IgZm9sZGVycy5cbiAgICpcbiAgICogQHBhcmFtIGZvbGRlcnMgLSBUaGUgZm9sZGVycyB0byBpbnZva2UgdGhlIGNvbW1hbmQgZm9yLlxuICAgKiBAcmV0dXJucyBBIG5ldyBmb2xkZXJzIGNvbW1hbmQgaW52b2NhdGlvbi5cbiAgICovXG4gIHByb3RlY3RlZCBjcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZvbGRlcnMoZm9sZGVyczogVEZvbGRlcltdKTogRm9sZGVyc0NvbW1hbmRJbnZvY2F0aW9uQmFzZTxUUGx1Z2luPiB7XG4gICAgcmV0dXJuIG5ldyBTZXF1ZW50aWFsRm9sZGVyc0NvbW1hbmRJbnZvY2F0aW9uQmFzZSh0aGlzLnBsdWdpbiwgZm9sZGVycywgdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZvbGRlci5iaW5kKHRoaXMpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIGNvbW1hbmQgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBhYnN0cmFjdCBmaWxlIG1lbnUuXG4gICAqXG4gICAqIEBwYXJhbSBhYnN0cmFjdEZpbGUgLSBUaGUgYWJzdHJhY3QgZmlsZSB0byBjaGVjay5cbiAgICogQHBhcmFtIHNvdXJjZSAtIFRoZSBzb3VyY2Ugb2YgdGhlIGFic3RyYWN0IGZpbGUuXG4gICAqIEBwYXJhbSBsZWFmIC0gVGhlIGxlYWYgdG8gY2hlY2suXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBhYnN0cmFjdCBmaWxlIG1lbnUuXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgc2hvdWxkQWRkVG9BYnN0cmFjdEZpbGVNZW51KGFic3RyYWN0RmlsZTogVEFic3RyYWN0RmlsZSwgc291cmNlOiBzdHJpbmcsIGxlYWY/OiBXb3Jrc3BhY2VMZWFmKTogYm9vbGVhbiB7XG4gICAgaWYgKCFpc0ZvbGRlcihhYnN0cmFjdEZpbGUpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnNob3VsZEFkZFRvRm9sZGVyTWVudShhYnN0cmFjdEZpbGUsIHNvdXJjZSwgbGVhZik7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgYWJzdHJhY3QgZmlsZXMgbWVudS5cbiAgICpcbiAgICogQHBhcmFtIGFic3RyYWN0RmlsZXMgLSBUaGUgYWJzdHJhY3QgZmlsZXMgdG8gY2hlY2suXG4gICAqIEBwYXJhbSBzb3VyY2UgLSBUaGUgc291cmNlIG9mIHRoZSBhYnN0cmFjdCBmaWxlcy5cbiAgICogQHBhcmFtIGxlYWYgLSBUaGUgbGVhZiB0byBjaGVjay5cbiAgICogQHJldHVybnMgV2hldGhlciB0aGUgY29tbWFuZCBzaG91bGQgYmUgYWRkZWQgdG8gdGhlIGFic3RyYWN0IGZpbGVzIG1lbnUuXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgc2hvdWxkQWRkVG9BYnN0cmFjdEZpbGVzTWVudShhYnN0cmFjdEZpbGVzOiBUQWJzdHJhY3RGaWxlW10sIHNvdXJjZTogc3RyaW5nLCBsZWFmPzogV29ya3NwYWNlTGVhZik6IGJvb2xlYW4ge1xuICAgIGlmICghYWJzdHJhY3RGaWxlcy5ldmVyeSgoYWJzdHJhY3RGaWxlKSA9PiBpc0ZvbGRlcihhYnN0cmFjdEZpbGUpKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zaG91bGRBZGRUb0ZvbGRlcnNNZW51KGFzQXJyYXlPZkZvbGRlcnMoYWJzdHJhY3RGaWxlcyksIHNvdXJjZSwgbGVhZik7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgZm9sZGVyIG1lbnUuXG4gICAqXG4gICAqIEBwYXJhbSBfZm9sZGVyIC0gVGhlIGZvbGRlciB0byBjaGVjay5cbiAgICogQHBhcmFtIF9zb3VyY2UgLSBUaGUgc291cmNlIG9mIHRoZSBmb2xkZXIuXG4gICAqIEBwYXJhbSBfbGVhZiAtIFRoZSBsZWFmIHRvIGNoZWNrLlxuICAgKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBjb21tYW5kIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgZm9sZGVyIG1lbnUuXG4gICAqL1xuICBwcm90ZWN0ZWQgc2hvdWxkQWRkVG9Gb2xkZXJNZW51KF9mb2xkZXI6IFRGb2xkZXIsIF9zb3VyY2U6IHN0cmluZywgX2xlYWY/OiBXb3Jrc3BhY2VMZWFmKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBzaG91bGQgYmUgYWRkZWQgdG8gdGhlIGZvbGRlcnMgbWVudS5cbiAgICpcbiAgICogQHBhcmFtIF9mb2xkZXJzIC0gVGhlIGZvbGRlcnMgdG8gY2hlY2suXG4gICAqIEBwYXJhbSBfc291cmNlIC0gVGhlIHNvdXJjZSBvZiB0aGUgZm9sZGVycy5cbiAgICogQHBhcmFtIF9sZWFmIC0gVGhlIGxlYWYgdG8gY2hlY2suXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgc2hvdWxkIGJlIGFkZGVkIHRvIHRoZSBmb2xkZXJzIG1lbnUuXG4gICAqL1xuICBwcm90ZWN0ZWQgc2hvdWxkQWRkVG9Gb2xkZXJzTWVudShfZm9sZGVyczogVEZvbGRlcltdLCBfc291cmNlOiBzdHJpbmcsIF9sZWFmPzogV29ya3NwYWNlTGVhZik6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIGZvbGRlcnMgY29tbWFuZCBpbnZvY2F0aW9ucy5cbiAqXG4gKiBAdHlwZVBhcmFtIFRQbHVnaW4gLSBUaGUgdHlwZSBvZiB0aGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgYmVsb25ncyB0by5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZvbGRlcnNDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbiBleHRlbmRzIFBsdWdpbj4gZXh0ZW5kcyBBYnN0cmFjdEZpbGVzQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZm9sZGVycyBjb21tYW5kIGludm9jYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBwbHVnaW4gLSBUaGUgcGx1Z2luIHRoYXQgdGhlIGNvbW1hbmQgaW52b2NhdGlvbiBiZWxvbmdzIHRvLlxuICAgKiBAcGFyYW0gZm9sZGVycyAtIFRoZSBmb2xkZXJzIHRvIGludm9rZSB0aGUgY29tbWFuZCBmb3IuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IocGx1Z2luOiBUUGx1Z2luLCBwdWJsaWMgcmVhZG9ubHkgZm9sZGVyczogVEZvbGRlcltdKSB7XG4gICAgc3VwZXIocGx1Z2luLCBmb2xkZXJzKTtcbiAgfVxufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIHNlcXVlbnRpYWwgZm9sZGVycyBjb21tYW5kIGludm9jYXRpb25zLlxuICpcbiAqIEB0eXBlUGFyYW0gVFBsdWdpbiAtIFRoZSB0eXBlIG9mIHRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICovXG5leHBvcnQgY2xhc3MgU2VxdWVudGlhbEZvbGRlcnNDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbiBleHRlbmRzIFBsdWdpbj4gZXh0ZW5kcyBGb2xkZXJzQ29tbWFuZEludm9jYXRpb25CYXNlPFRQbHVnaW4+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgc2VxdWVudGlhbCBmb2xkZXJzIGNvbW1hbmQgaW52b2NhdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHBsdWdpbiAtIFRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBpbnZvY2F0aW9uIGJlbG9uZ3MgdG8uXG4gICAqIEBwYXJhbSBmb2xkZXJzIC0gVGhlIGZvbGRlcnMgdG8gaW52b2tlIHRoZSBjb21tYW5kIGZvci5cbiAgICogQHBhcmFtIGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRm9sZGVyIC0gVGhlIGZ1bmN0aW9uIHRvIGNyZWF0ZSBhIGNvbW1hbmQgaW52b2NhdGlvbiBmb3IgYSBmb2xkZXIuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgcGx1Z2luOiBUUGx1Z2luLFxuICAgIGZvbGRlcnM6IFRGb2xkZXJbXSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRm9sZGVyOiAoZm9sZGVyOiBURm9sZGVyKSA9PiBGb2xkZXJDb21tYW5kSW52b2NhdGlvbkJhc2U8VFBsdWdpbj5cbiAgKSB7XG4gICAgc3VwZXIocGx1Z2luLCBmb2xkZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIGNvbW1hbmQgY2FuIGV4ZWN1dGUuXG4gICAqXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgY2FuIGV4ZWN1dGUuXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgY2FuRXhlY3V0ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gc3VwZXIuY2FuRXhlY3V0ZSgpICYmIHRoaXMuZm9sZGVycy5sZW5ndGggPiAwICYmIHRoaXMuZm9sZGVycy5ldmVyeSgoZm9sZGVyKSA9PiB0aGlzLmNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uRm9yRm9sZGVyKGZvbGRlcikuaW52b2tlKHRydWUpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyB0aGUgY29tbWFuZC5cbiAgICpcbiAgICogQHJldHVybnMgQSBwcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiB0aGUgY29tbWFuZCBoYXMgYmVlbiBleGVjdXRlZC5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBhc3luYyBleGVjdXRlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGZvciAoY29uc3QgZm9sZGVyIG9mIHRoaXMuZm9sZGVycykge1xuICAgICAgYXdhaXQgdGhpcy5jcmVhdGVDb21tYW5kSW52b2NhdGlvbkZvckZvbGRlcihmb2xkZXIpLmludm9rZUFzeW5jKGZhbHNlKTtcbiAgICB9XG4gIH1cbn1cbi8qIHY4IGlnbm9yZSBzdG9wICovXG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFjQSxTQUFTLGVBQWU7QUFJeEI7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxFQUNBO0FBQUEsT0FDSztBQU9BLE1BQWUsb0NBQTRELGtDQUEyQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTzNILElBQWMs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
@@ -43,4 +43,4 @@ class NonEditorCommandBase extends CommandBase {
43
43
  export {
44
44
  NonEditorCommandBase
45
45
  };
46
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbW1hbmRzL05vbkVkaXRvckNvbW1hbmRCYXNlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIEJhc2UgY2xhc3NlcyBmb3Igbm9uLWVkaXRvciBjb21tYW5kcy5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IFBsdWdpbiB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUge1xuICBDb21tYW5kQmFzZU9wdGlvbnMsXG4gIENvbW1hbmRJbnZvY2F0aW9uQmFzZVxufSBmcm9tICcuL0NvbW1hbmRCYXNlLnRzJztcblxuaW1wb3J0IHsgQ29tbWFuZEJhc2UgfSBmcm9tICcuL0NvbW1hbmRCYXNlLnRzJztcblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBub24tZWRpdG9yIGNvbW1hbmRzLlxuICpcbiAqIEB0eXBlUGFyYW0gVFBsdWdpbiAtIFRoZSB0eXBlIG9mIHRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTm9uRWRpdG9yQ29tbWFuZEJhc2U8VFBsdWdpbiBleHRlbmRzIFBsdWdpbj4gZXh0ZW5kcyBDb21tYW5kQmFzZTxUUGx1Z2luPiB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IG5vbi1lZGl0b3IgY29tbWFuZC5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBmb3IgdGhlIG5vbi1lZGl0b3IgY29tbWFuZC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihvcHRpb25zOiBDb21tYW5kQmFzZU9wdGlvbnM8VFBsdWdpbj4pIHtcbiAgICBzdXBlcihvcHRpb25zKTtcblxuICAgIHRoaXMuY2hlY2tDYWxsYmFjayA9IHRoaXMuY2hlY2tDYWxsYmFjay5iaW5kKHRoaXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZSBvciBleGVjdXRlcyBpdC5cbiAgICpcbiAgICogQHBhcmFtIGNoZWNraW5nIC0gSXMgY2hlY2tpbmcgbW9kZSBvbmx5LiBJZiBgdHJ1ZWAsIG9ubHkgdGhlIGNoZWNrIGlmIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlIGlzIHBlcmZvcm1lZC4gSWYgYGZhbHNlYCwgdGhlIGNvbW1hbmQgaXMgZXhlY3V0ZWQuXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgY2FuIGV4ZWN1dGUuXG4gICAqL1xuICBwdWJsaWMgY2hlY2tDYWxsYmFjayhjaGVja2luZzogYm9vbGVhbik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uKCkuaW52b2tlKGNoZWNraW5nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGNvbW1hbmQgaW52b2NhdGlvbi5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIGNvbW1hbmQgaW52b2NhdGlvbi5cbiAgICovXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBjcmVhdGVDb21tYW5kSW52b2NhdGlvbigpOiBDb21tYW5kSW52b2NhdGlvbkJhc2U7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFhQSxTQUFTLG1CQUFtQjtBQU9yQixNQUFlLDZCQUFxRCxZQUFxQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU12RixZQUFZLFNBQXNDO0FBQ3ZELFVBQU0sT0FBTztBQUViLFNBQUssZ0JBQWdCLEtBQUssY0FBYyxLQUFLLElBQUk7QUFBQSxFQUNuRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sY0FBYyxVQUE0QjtBQUMvQyxXQUFPLEtBQUssd0JBQXdCLEVBQUUsT0FBTyxRQUFRO0FBQUEsRUFDdkQ7QUFRRjsiLAogICJuYW1lcyI6IFtdCn0K
46
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbW1hbmRzL05vbkVkaXRvckNvbW1hbmRCYXNlLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIEJhc2UgY2xhc3NlcyBmb3Igbm9uLWVkaXRvciBjb21tYW5kcy5cbiAqL1xuXG4vKiB2OCBpZ25vcmUgc3RhcnQgLS0gRGVlcGx5IGNvdXBsZWQgdG8gT2JzaWRpYW4gcnVudGltZTsgcmVxdWlyZXMgcnVubmluZyB2YXVsdCBmb3IgbWVhbmluZ2Z1bCB0ZXN0aW5nLiAqL1xuXG5pbXBvcnQgdHlwZSB7IFBsdWdpbiB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUge1xuICBDb21tYW5kQmFzZU9wdGlvbnMsXG4gIENvbW1hbmRJbnZvY2F0aW9uQmFzZVxufSBmcm9tICcuL0NvbW1hbmRCYXNlLnRzJztcblxuaW1wb3J0IHsgQ29tbWFuZEJhc2UgfSBmcm9tICcuL0NvbW1hbmRCYXNlLnRzJztcblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBub24tZWRpdG9yIGNvbW1hbmRzLlxuICpcbiAqIEB0eXBlUGFyYW0gVFBsdWdpbiAtIFRoZSB0eXBlIG9mIHRoZSBwbHVnaW4gdGhhdCB0aGUgY29tbWFuZCBiZWxvbmdzIHRvLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTm9uRWRpdG9yQ29tbWFuZEJhc2U8VFBsdWdpbiBleHRlbmRzIFBsdWdpbj4gZXh0ZW5kcyBDb21tYW5kQmFzZTxUUGx1Z2luPiB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IG5vbi1lZGl0b3IgY29tbWFuZC5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyBmb3IgdGhlIG5vbi1lZGl0b3IgY29tbWFuZC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihvcHRpb25zOiBDb21tYW5kQmFzZU9wdGlvbnM8VFBsdWdpbj4pIHtcbiAgICBzdXBlcihvcHRpb25zKTtcblxuICAgIHRoaXMuY2hlY2tDYWxsYmFjayA9IHRoaXMuY2hlY2tDYWxsYmFjay5iaW5kKHRoaXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgY29tbWFuZCBjYW4gZXhlY3V0ZSBvciBleGVjdXRlcyBpdC5cbiAgICpcbiAgICogQHBhcmFtIGNoZWNraW5nIC0gSXMgY2hlY2tpbmcgbW9kZSBvbmx5LiBJZiBgdHJ1ZWAsIG9ubHkgdGhlIGNoZWNrIGlmIHRoZSBjb21tYW5kIGNhbiBleGVjdXRlIGlzIHBlcmZvcm1lZC4gSWYgYGZhbHNlYCwgdGhlIGNvbW1hbmQgaXMgZXhlY3V0ZWQuXG4gICAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGNvbW1hbmQgY2FuIGV4ZWN1dGUuXG4gICAqL1xuICBwdWJsaWMgY2hlY2tDYWxsYmFjayhjaGVja2luZzogYm9vbGVhbik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZUNvbW1hbmRJbnZvY2F0aW9uKCkuaW52b2tlKGNoZWNraW5nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGNvbW1hbmQgaW52b2NhdGlvbi5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIGNvbW1hbmQgaW52b2NhdGlvbi5cbiAgICovXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBjcmVhdGVDb21tYW5kSW52b2NhdGlvbigpOiBDb21tYW5kSW52b2NhdGlvbkJhc2U7XG59XG4vKiB2OCBpZ25vcmUgc3RvcCAqL1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBZUEsU0FBUyxtQkFBbUI7QUFPckIsTUFBZSw2QkFBcUQsWUFBcUI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNdkYsWUFBWSxTQUFzQztBQUN2RCxVQUFNLE9BQU87QUFFYixTQUFLLGdCQUFnQixLQUFLLGNBQWMsS0FBSyxJQUFJO0FBQUEsRUFDbkQ7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLGNBQWMsVUFBNEI7QUFDL0MsV0FBTyxLQUFLLHdCQUF3QixFQUFFLE9BQU8sUUFBUTtBQUFBLEVBQ3ZEO0FBUUY7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -34,6 +34,7 @@ export declare class CodeHighlighterComponent extends ValueComponent<string> imp
34
34
  private readonly codeEl;
35
35
  private placeholder;
36
36
  private readonly preEl;
37
+ private simulateChangeCallback?;
37
38
  private tabSize;
38
39
  private readonly textAreaComponent;
39
40
  /**
@@ -107,6 +108,10 @@ export declare class CodeHighlighterComponent extends ValueComponent<string> imp
107
108
  * @returns The component.
108
109
  */
109
110
  setValue(value: string): this;
111
+ /**
112
+ * @deprecated Use only from tests to simulate a change event.
113
+ */
114
+ simulateChange(): void;
110
115
  private handleKeyDown;
111
116
  private handleScroll;
112
117
  private updateHighlightedCode;
@@ -51,6 +51,7 @@ class CodeHighlighterComponent extends ValueComponent {
51
51
  codeEl;
52
52
  placeholder = "";
53
53
  preEl;
54
+ simulateChangeCallback;
54
55
  tabSize;
55
56
  textAreaComponent;
56
57
  /**
@@ -109,7 +110,11 @@ class CodeHighlighterComponent extends ValueComponent {
109
110
  * @returns The component.
110
111
  */
111
112
  onChange(callback) {
112
- this.textAreaComponent.onChange(() => callback(this.getValue()));
113
+ const changeHandler = () => {
114
+ callback(this.getValue());
115
+ };
116
+ this.simulateChangeCallback = changeHandler;
117
+ this.textAreaComponent.onChange(changeHandler);
113
118
  return this;
114
119
  }
115
120
  /**
@@ -183,6 +188,12 @@ class CodeHighlighterComponent extends ValueComponent {
183
188
  invokeAsyncSafely(this.updateHighlightedCode.bind(this));
184
189
  return this;
185
190
  }
191
+ /**
192
+ * @deprecated Use only from tests to simulate a change event.
193
+ */
194
+ simulateChange() {
195
+ this.simulateChangeCallback?.();
196
+ }
186
197
  handleKeyDown(evt) {
187
198
  if (evt.key !== "Tab") {
188
199
  return;
@@ -238,4 +249,4 @@ class CodeHighlighterComponent extends ValueComponent {
238
249
  export {
239
250
  CodeHighlighterComponent
240
251
  };
241
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvU2V0dGluZ0NvbXBvbmVudHMvQ29kZUhpZ2hsaWdodGVyQ29tcG9uZW50LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIENvbnRhaW5zIGEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIG11bHRpcGxlIHRleHQgdmFsdWVzLlxuICovXG5cbmltcG9ydCB0eXBlIHsgUHJvbWlzYWJsZSB9IGZyb20gJ3R5cGUtZmVzdCc7XG5cbmltcG9ydCB7XG4gIFRleHRBcmVhQ29tcG9uZW50LFxuICBWYWx1ZUNvbXBvbmVudFxufSBmcm9tICdvYnNpZGlhbic7XG5pbXBvcnQgeyBsb2FkUHJpc20gfSBmcm9tICdvYnNpZGlhbi10eXBpbmdzL2ltcGxlbWVudGF0aW9ucyc7XG5cbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yRWxlbWVudCB9IGZyb20gJy4uLy4uLy4uL0hUTUxFbGVtZW50LnRzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYGluaXRQbHVnaW5Db250ZXh0YCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbmltcG9ydCB0eXBlIHsgaW5pdFBsdWdpbkNvbnRleHQgfSBmcm9tICcuLi8uLi9QbHVnaW4vUGx1Z2luQ29udGV4dC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBTZXR0aW5nRXhgIHRvIHVzZSBpdCBpbiB0aGUgdHNkb2NzLlxuaW1wb3J0IHR5cGUgeyBTZXR0aW5nRXggfSBmcm9tICcuLi8uLi9TZXR0aW5nRXgudHMnO1xuaW1wb3J0IHR5cGUgeyBUZXh0QmFzZWRDb21wb25lbnQgfSBmcm9tICcuL1RleHRCYXNlZENvbXBvbmVudC50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbGlkYXRvckNvbXBvbmVudCB9IGZyb20gJy4vVmFsaWRhdG9yQ29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcgfSBmcm9tICcuL1ZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nLnRzJztcblxuaW1wb3J0IHtcbiAgY29udmVydEFzeW5jVG9TeW5jLFxuICBpbnZva2VBc3luY1NhZmVseVxufSBmcm9tICcuLi8uLi8uLi9Bc3luYy50cyc7XG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uLy4uLy4uL0Nzc0NsYXNzLnRzJztcbmltcG9ydCB7IHRvUHggfSBmcm9tICcuLi8uLi8uLi9IVE1MRWxlbWVudC50cyc7XG5pbXBvcnQgeyBhZGRQbHVnaW5Dc3NDbGFzc2VzIH0gZnJvbSAnLi4vLi4vUGx1Z2luL1BsdWdpbkNvbnRleHQudHMnO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIGNvZGUuXG4gKlxuICogWW91IGNhbiBhZGQgdGhpcyBjb21wb25lbnQgdXNpbmcge0BsaW5rIFNldHRpbmdFeC5hZGRDb2RlSGlnaGxpZ2h0ZXJ9LlxuICpcbiAqIEluIG9yZGVyIHRvIGFkZCB0aGUgc3R5bGVzIGZvciB0aGUgY29tcG9uZW50LCB1c2Uge0BsaW5rIGluaXRQbHVnaW5Db250ZXh0fSBpbiB5b3VyIHBsdWdpbidzIGBvbmxvYWQoKWAgZnVuY3Rpb24uXG4gKlxuICogQWx0ZXJuYXRpdmVseSwgeW91IGNhbiBjb3B5IHN0eWxlcyBmcm9tIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vbW5hb3Vtb3Yvb2JzaWRpYW4tZGV2LXV0aWxzL3JlbGVhc2VzL2xhdGVzdC9kb3dubG9hZC9zdHlsZXMuY3NzfS5cbiAqL1xuZXhwb3J0IGNsYXNzIENvZGVIaWdobGlnaHRlckNvbXBvbmVudCBleHRlbmRzIFZhbHVlQ29tcG9uZW50PHN0cmluZz5cbiAgaW1wbGVtZW50cyBUZXh0QmFzZWRDb21wb25lbnQ8c3RyaW5nPiwgVmFsaWRhdG9yQ29tcG9uZW50LCBWYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZzxzdHJpbmc+IHtcbiAgLyoqXG4gICAqIEFuIGlucHV0IGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIGlucHV0IGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBnZXQgaW5wdXRFbCgpOiBIVE1MVGV4dEFyZWFFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5pbnB1dEVsO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHZhbGlkYXRvciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSB2YWxpZGF0b3IgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldCB2YWxpZGF0b3JFbCgpOiBWYWxpZGF0b3JFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5pbnB1dEVsO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBjb2RlRWw6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIHBsYWNlaG9sZGVyID0gJyc7XG4gIHByaXZhdGUgcmVhZG9ubHkgcHJlRWw6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIHRhYlNpemU6IG51bWJlcjtcbiAgcHJpdmF0ZSByZWFkb25seSB0ZXh0QXJlYUNvbXBvbmVudDogVGV4dEFyZWFDb21wb25lbnQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgbXVsdGlwbGUgdGV4dCBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjb250YWluZXJFbCAtIFRoZSBjb250YWluZXIgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvbnRhaW5lckVsOiBIVE1MRWxlbWVudCkge1xuICAgIHN1cGVyKCk7XG4gICAgYWRkUGx1Z2luQ3NzQ2xhc3Nlcyhjb250YWluZXJFbCwgQ3NzQ2xhc3MuQ29kZUhpZ2hsaWdodGVyQ29tcG9uZW50KTtcblxuICAgIGNvbnN0IHdyYXBwZXIgPSBjb250YWluZXJFbC5jcmVhdGVEaXYoKTtcbiAgICBhZGRQbHVnaW5Dc3NDbGFzc2VzKHdyYXBwZXIsIENzc0NsYXNzLlNldHRpbmdDb21wb25lbnRXcmFwcGVyKTtcblxuICAgIHRoaXMudGV4dEFyZWFDb21wb25lbnQgPSBuZXcgVGV4dEFyZWFDb21wb25lbnQod3JhcHBlcik7XG4gICAgdGhpcy5wcmVFbCA9IHdyYXBwZXIuY3JlYXRlRWwoJ3ByZScsIHtcbiAgICAgIGF0dHI6IHtcbiAgICAgICAgdGFiSW5kZXg6ICctMSdcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0aGlzLmNvZGVFbCA9IHRoaXMucHJlRWwuY3JlYXRlRWwoJ2NvZGUnLCB7XG4gICAgICBhdHRyOiB7XG4gICAgICAgIHRhYkluZGV4OiAnLTEnXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLmlucHV0RWwuYWRkRXZlbnRMaXN0ZW5lcignaW5wdXQnLCBjb252ZXJ0QXN5bmNUb1N5bmModGhpcy51cGRhdGVIaWdobGlnaHRlZENvZGUuYmluZCh0aGlzKSkpO1xuICAgIHRoaXMuaW5wdXRFbC5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLmhhbmRsZVNjcm9sbC5iaW5kKHRoaXMpKTtcbiAgICB0aGlzLmlucHV0RWwuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMuaGFuZGxlS2V5RG93bi5iaW5kKHRoaXMpKTtcbiAgICBjb25zdCBERUZBVUxUX1RBQl9TSVpFID0gMjtcbiAgICB0aGlzLnRhYlNpemUgPSBERUZBVUxUX1RBQl9TSVpFO1xuICB9XG5cbiAgLyoqXG4gICAqIEVtcHRpZXMgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBlbXB0eSgpOiB2b2lkIHtcbiAgICB0aGlzLnNldFZhbHVlKCcnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBnZXRWYWx1ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnRleHRBcmVhQ29tcG9uZW50LmdldFZhbHVlKCk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21wb25lbnQgaXMgZW1wdHkuXG4gICAqXG4gICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgY29tcG9uZW50IGlzIGVtcHR5LCBgZmFsc2VgIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBpc0VtcHR5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRleHRBcmVhQ29tcG9uZW50LmdldFZhbHVlKCkgPT09ICcnO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBjaGFuZ2UgbGlzdGVuZXIgdG8gdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGNhbGxiYWNrIC0gVGhlIGNhbGxiYWNrIHRvIGNhbGwgd2hlbiB0aGUgdmFsdWUgY2hhbmdlcy5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvbkNoYW5nZShjYWxsYmFjazogKG5ld1ZhbHVlOiBzdHJpbmcpID0+IFByb21pc2FibGU8dm9pZD4pOiB0aGlzIHtcbiAgICB0aGlzLnRleHRBcmVhQ29tcG9uZW50Lm9uQ2hhbmdlKCgpID0+IGNhbGxiYWNrKHRoaXMuZ2V0VmFsdWUoKSkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBkaXNhYmxlZCAtIFRoZSBkaXNhYmxlZCBzdGF0ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0RGlzYWJsZWQoZGlzYWJsZWQ6IGJvb2xlYW4pOiB0aGlzIHtcbiAgICBzdXBlci5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgbGFuZ3VhZ2UgZm9yIGNvZGUgaGlnaGxpZ2h0aW5nLlxuICAgKlxuICAgKiBAcGFyYW0gbGFuZ3VhZ2UgLSBUaGUgbGFuZ3VhZ2UgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldExhbmd1YWdlKGxhbmd1YWdlOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBjb25zdCBMQU5HVUFHRV9DTEFTU19QUkVGSVggPSAnbGFuZ3VhZ2UtJztcbiAgICBmb3IgKGNvbnN0IGVsIG9mIFt0aGlzLnByZUVsLCB0aGlzLmNvZGVFbF0pIHtcbiAgICAgIGZvciAoY29uc3QgY2xzIG9mIEFycmF5LmZyb20oZWwuY2xhc3NMaXN0KSkge1xuICAgICAgICBpZiAoY2xzLnN0YXJ0c1dpdGgoTEFOR1VBR0VfQ0xBU1NfUFJFRklYKSkge1xuICAgICAgICAgIGVsLmNsYXNzTGlzdC5yZW1vdmUoY2xzKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgZWwuY2xhc3NMaXN0LmFkZChgJHtMQU5HVUFHRV9DTEFTU19QUkVGSVh9JHtsYW5ndWFnZX1gKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgcGxhY2Vob2xkZXIgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHBsYWNlaG9sZGVyIC0gVGhlIHBsYWNlaG9sZGVyIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRQbGFjZWhvbGRlcihwbGFjZWhvbGRlcjogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy5wbGFjZWhvbGRlciA9IHBsYWNlaG9sZGVyO1xuICAgIGludm9rZUFzeW5jU2FmZWx5KHRoaXMudXBkYXRlSGlnaGxpZ2h0ZWRDb2RlLmJpbmQodGhpcykpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHBsYWNlaG9sZGVyIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBwbGFjZWhvbGRlclZhbHVlIC0gVGhlIHBsYWNlaG9sZGVyIHZhbHVlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRQbGFjZWhvbGRlclZhbHVlKHBsYWNlaG9sZGVyVmFsdWU6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMuc2V0UGxhY2Vob2xkZXIocGxhY2Vob2xkZXJWYWx1ZSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdGFiIHNpemUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHRhYlNpemUgLSBUaGUgdGFiIHNpemUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldFRhYlNpemUodGFiU2l6ZTogbnVtYmVyKTogdGhpcyB7XG4gICAgdGhpcy50YWJTaXplID0gdGFiU2l6ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHNldFZhbHVlKHZhbHVlOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnRleHRBcmVhQ29tcG9uZW50LnNldFZhbHVlKHZhbHVlKTtcbiAgICBpbnZva2VBc3luY1NhZmVseSh0aGlzLnVwZGF0ZUhpZ2hsaWdodGVkQ29kZS5iaW5kKHRoaXMpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlS2V5RG93bihldnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAoZXZ0LmtleSAhPT0gJ1RhYicpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBldnQucHJldmVudERlZmF1bHQoKTtcblxuICAgIGlmIChldnQuY3RybEtleSB8fCBldnQubWV0YUtleSkge1xuICAgICAgY29uc3QgZm9jdXNhYmxlcyA9IEFycmF5LmZyb20oYWN0aXZlRG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbDxIVE1MRWxlbWVudD4oXG4gICAgICAgICc6aXMoYSwgYnV0dG9uLCBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSwgW3RhYmluZGV4XSk6bm90KFt0YWJpbmRleD1cIi0xXCJdKTpub3QoOmRpc2FibGVkKTpub3QoW3R5cGU9XCJoaWRkZW5cIl0pJ1xuICAgICAgKSk7XG4gICAgICBjb25zdCBpbmRleCA9IGZvY3VzYWJsZXMuaW5kZXhPZih0aGlzLmlucHV0RWwpO1xuICAgICAgY29uc3QgZGVsdGFJbmRleCA9IGV2dC5zaGlmdEtleSA/IC0xIDogMTtcbiAgICAgIGNvbnN0IG5leHRDb250cm9sID0gZm9jdXNhYmxlc1soaW5kZXggKyBkZWx0YUluZGV4ICsgZm9jdXNhYmxlcy5sZW5ndGgpICUgZm9jdXNhYmxlcy5sZW5ndGhdO1xuICAgICAgbmV4dENvbnRyb2w/LmZvY3VzKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgb2xkVmFsdWUgPSB0aGlzLmdldFZhbHVlKCk7XG4gICAgY29uc3Qgc2VsZWN0aW9uU3RhcnQgPSB0aGlzLmlucHV0RWwuc2VsZWN0aW9uU3RhcnQ7XG4gICAgY29uc3Qgc2VsZWN0aW9uRW5kID0gdGhpcy5pbnB1dEVsLnNlbGVjdGlvbkVuZDtcbiAgICBjb25zdCBiZWZvcmVTZWxlY3Rpb24gPSBvbGRWYWx1ZS5zbGljZSgwLCBzZWxlY3Rpb25TdGFydCk7XG4gICAgY29uc3QgYWZ0ZXJTZWxlY3Rpb24gPSBvbGRWYWx1ZS5zbGljZShzZWxlY3Rpb25FbmQpO1xuICAgIGNvbnN0IHRhYnMgPSAnICcucmVwZWF0KHRoaXMudGFiU2l6ZSk7XG4gICAgbGV0IG5ld0JlZm9yZVNlbGVjdGlvbiA9IGJlZm9yZVNlbGVjdGlvbjtcblxuICAgIGlmIChldnQuc2hpZnRLZXkpIHtcbiAgICAgIGlmIChiZWZvcmVTZWxlY3Rpb24uZW5kc1dpdGgodGFicykpIHtcbiAgICAgICAgbmV3QmVmb3JlU2VsZWN0aW9uID0gYmVmb3JlU2VsZWN0aW9uLnNsaWNlKDAsIC10aGlzLnRhYlNpemUpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBuZXdCZWZvcmVTZWxlY3Rpb24gPSBiZWZvcmVTZWxlY3Rpb24gKyB0YWJzO1xuICAgIH1cblxuICAgIGNvbnN0IG5ld1ZhbHVlID0gYCR7bmV3QmVmb3JlU2VsZWN0aW9ufSR7YWZ0ZXJTZWxlY3Rpb259YDtcbiAgICB0aGlzLnNldFZhbHVlKG5ld1ZhbHVlKTtcbiAgICB0aGlzLmlucHV0RWwuc2VsZWN0aW9uU3RhcnQgPSBuZXdCZWZvcmVTZWxlY3Rpb24ubGVuZ3RoO1xuICAgIHRoaXMuaW5wdXRFbC5zZWxlY3Rpb25FbmQgPSBuZXdCZWZvcmVTZWxlY3Rpb24ubGVuZ3RoO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVTY3JvbGwoKTogdm9pZCB7XG4gICAgdGhpcy5wcmVFbC5zY3JvbGxUb3AgPSB0aGlzLmlucHV0RWwuc2Nyb2xsVG9wO1xuICAgIHRoaXMucHJlRWwuc2Nyb2xsTGVmdCA9IHRoaXMuaW5wdXRFbC5zY3JvbGxMZWZ0O1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyB1cGRhdGVIaWdobGlnaHRlZENvZGUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5jb2RlRWwudGV4dENvbnRlbnQgPSB0aGlzLmlucHV0RWwudmFsdWUgfHwgdGhpcy5wbGFjZWhvbGRlcjtcbiAgICBjb25zdCBwcmlzbSA9IGF3YWl0IGxvYWRQcmlzbSgpO1xuICAgIHByaXNtLmhpZ2hsaWdodEVsZW1lbnQodGhpcy5jb2RlRWwpO1xuICAgIHRoaXMucHJlRWwudG9nZ2xlQ2xhc3MoQ3NzQ2xhc3MuSXNQbGFjZWhvbGRlciwgdGhpcy5pc0VtcHR5KCkpO1xuICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICBjb25zdCBnYXAgPSBNYXRoLm1heCgwLCB0aGlzLmlucHV0RWwuc2Nyb2xsSGVpZ2h0IC0gdGhpcy5wcmVFbC5zY3JvbGxIZWlnaHQpO1xuICAgICAgdGhpcy5wcmVFbC5zZXRDc3NQcm9wcyh7XG4gICAgICAgICctLWJvdHRvbS1nYXAnOiB0b1B4KGdhcClcbiAgICAgIH0pO1xuICAgICAgdGhpcy5oYW5kbGVTY3JvbGwoKTtcbiAgICB9KTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBUUE7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFDUCxTQUFTLGlCQUFpQjtBQVcxQjtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQLFNBQVMsZ0JBQWdCO0FBQ3pCLFNBQVMsWUFBWTtBQUNyQixTQUFTLDJCQUEyQjtBQVc3QixNQUFNLGlDQUFpQyxlQUN3RDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1wRyxJQUFXLFVBQStCO0FBQ3hDLFdBQU8sS0FBSyxrQkFBa0I7QUFBQSxFQUNoQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9BLElBQVcsY0FBZ0M7QUFDekMsV0FBTyxLQUFLO0FBQUEsRUFDZDtBQUFBLEVBRWlCO0FBQUEsRUFDVCxjQUFjO0FBQUEsRUFDTDtBQUFBLEVBQ1Q7QUFBQSxFQUNTO0FBQUE7QUFBQTtB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
252
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvU2V0dGluZ0NvbXBvbmVudHMvQ29kZUhpZ2hsaWdodGVyQ29tcG9uZW50LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIENvbnRhaW5zIGEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIG11bHRpcGxlIHRleHQgdmFsdWVzLlxuICovXG5cbmltcG9ydCB0eXBlIHsgUHJvbWlzYWJsZSB9IGZyb20gJ3R5cGUtZmVzdCc7XG5cbmltcG9ydCB7XG4gIFRleHRBcmVhQ29tcG9uZW50LFxuICBWYWx1ZUNvbXBvbmVudFxufSBmcm9tICdvYnNpZGlhbic7XG5pbXBvcnQgeyBsb2FkUHJpc20gfSBmcm9tICdvYnNpZGlhbi10eXBpbmdzL2ltcGxlbWVudGF0aW9ucyc7XG5cbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yRWxlbWVudCB9IGZyb20gJy4uLy4uLy4uL0hUTUxFbGVtZW50LnRzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnMgLS0gV2UgbmVlZCB0byBpbXBvcnQgYGluaXRQbHVnaW5Db250ZXh0YCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbmltcG9ydCB0eXBlIHsgaW5pdFBsdWdpbkNvbnRleHQgfSBmcm9tICcuLi8uLi9QbHVnaW4vUGx1Z2luQ29udGV4dC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBTZXR0aW5nRXhgIHRvIHVzZSBpdCBpbiB0aGUgdHNkb2NzLlxuaW1wb3J0IHR5cGUgeyBTZXR0aW5nRXggfSBmcm9tICcuLi8uLi9TZXR0aW5nRXgudHMnO1xuaW1wb3J0IHR5cGUgeyBUZXh0QmFzZWRDb21wb25lbnQgfSBmcm9tICcuL1RleHRCYXNlZENvbXBvbmVudC50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbGlkYXRvckNvbXBvbmVudCB9IGZyb20gJy4vVmFsaWRhdG9yQ29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcgfSBmcm9tICcuL1ZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nLnRzJztcblxuaW1wb3J0IHtcbiAgY29udmVydEFzeW5jVG9TeW5jLFxuICBpbnZva2VBc3luY1NhZmVseVxufSBmcm9tICcuLi8uLi8uLi9Bc3luYy50cyc7XG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uLy4uLy4uL0Nzc0NsYXNzLnRzJztcbmltcG9ydCB7IHRvUHggfSBmcm9tICcuLi8uLi8uLi9IVE1MRWxlbWVudC50cyc7XG5pbXBvcnQgeyBhZGRQbHVnaW5Dc3NDbGFzc2VzIH0gZnJvbSAnLi4vLi4vUGx1Z2luL1BsdWdpbkNvbnRleHQudHMnO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIGNvZGUuXG4gKlxuICogWW91IGNhbiBhZGQgdGhpcyBjb21wb25lbnQgdXNpbmcge0BsaW5rIFNldHRpbmdFeC5hZGRDb2RlSGlnaGxpZ2h0ZXJ9LlxuICpcbiAqIEluIG9yZGVyIHRvIGFkZCB0aGUgc3R5bGVzIGZvciB0aGUgY29tcG9uZW50LCB1c2Uge0BsaW5rIGluaXRQbHVnaW5Db250ZXh0fSBpbiB5b3VyIHBsdWdpbidzIGBvbmxvYWQoKWAgZnVuY3Rpb24uXG4gKlxuICogQWx0ZXJuYXRpdmVseSwgeW91IGNhbiBjb3B5IHN0eWxlcyBmcm9tIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vbW5hb3Vtb3Yvb2JzaWRpYW4tZGV2LXV0aWxzL3JlbGVhc2VzL2xhdGVzdC9kb3dubG9hZC9zdHlsZXMuY3NzfS5cbiAqL1xuZXhwb3J0IGNsYXNzIENvZGVIaWdobGlnaHRlckNvbXBvbmVudCBleHRlbmRzIFZhbHVlQ29tcG9uZW50PHN0cmluZz5cbiAgaW1wbGVtZW50cyBUZXh0QmFzZWRDb21wb25lbnQ8c3RyaW5nPiwgVmFsaWRhdG9yQ29tcG9uZW50LCBWYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZzxzdHJpbmc+IHtcbiAgLyoqXG4gICAqIEFuIGlucHV0IGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIGlucHV0IGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBnZXQgaW5wdXRFbCgpOiBIVE1MVGV4dEFyZWFFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5pbnB1dEVsO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHZhbGlkYXRvciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSB2YWxpZGF0b3IgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldCB2YWxpZGF0b3JFbCgpOiBWYWxpZGF0b3JFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5pbnB1dEVsO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBjb2RlRWw6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIHBsYWNlaG9sZGVyID0gJyc7XG4gIHByaXZhdGUgcmVhZG9ubHkgcHJlRWw6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIHNpbXVsYXRlQ2hhbmdlQ2FsbGJhY2s/OiAoKSA9PiB2b2lkO1xuICBwcml2YXRlIHRhYlNpemU6IG51bWJlcjtcbiAgcHJpdmF0ZSByZWFkb25seSB0ZXh0QXJlYUNvbXBvbmVudDogVGV4dEFyZWFDb21wb25lbnQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgbXVsdGlwbGUgdGV4dCBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjb250YWluZXJFbCAtIFRoZSBjb250YWluZXIgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvbnRhaW5lckVsOiBIVE1MRWxlbWVudCkge1xuICAgIHN1cGVyKCk7XG4gICAgYWRkUGx1Z2luQ3NzQ2xhc3Nlcyhjb250YWluZXJFbCwgQ3NzQ2xhc3MuQ29kZUhpZ2hsaWdodGVyQ29tcG9uZW50KTtcblxuICAgIGNvbnN0IHdyYXBwZXIgPSBjb250YWluZXJFbC5jcmVhdGVEaXYoKTtcbiAgICBhZGRQbHVnaW5Dc3NDbGFzc2VzKHdyYXBwZXIsIENzc0NsYXNzLlNldHRpbmdDb21wb25lbnRXcmFwcGVyKTtcblxuICAgIHRoaXMudGV4dEFyZWFDb21wb25lbnQgPSBuZXcgVGV4dEFyZWFDb21wb25lbnQod3JhcHBlcik7XG4gICAgdGhpcy5wcmVFbCA9IHdyYXBwZXIuY3JlYXRlRWwoJ3ByZScsIHtcbiAgICAgIGF0dHI6IHtcbiAgICAgICAgdGFiSW5kZXg6ICctMSdcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0aGlzLmNvZGVFbCA9IHRoaXMucHJlRWwuY3JlYXRlRWwoJ2NvZGUnLCB7XG4gICAgICBhdHRyOiB7XG4gICAgICAgIHRhYkluZGV4OiAnLTEnXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLmlucHV0RWwuYWRkRXZlbnRMaXN0ZW5lcignaW5wdXQnLCBjb252ZXJ0QXN5bmNUb1N5bmModGhpcy51cGRhdGVIaWdobGlnaHRlZENvZGUuYmluZCh0aGlzKSkpO1xuICAgIHRoaXMuaW5wdXRFbC5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLmhhbmRsZVNjcm9sbC5iaW5kKHRoaXMpKTtcbiAgICB0aGlzLmlucHV0RWwuYWRkRXZlbnRMaXN0ZW5lcigna2V5ZG93bicsIHRoaXMuaGFuZGxlS2V5RG93bi5iaW5kKHRoaXMpKTtcbiAgICBjb25zdCBERUZBVUxUX1RBQl9TSVpFID0gMjtcbiAgICB0aGlzLnRhYlNpemUgPSBERUZBVUxUX1RBQl9TSVpFO1xuICB9XG5cbiAgLyoqXG4gICAqIEVtcHRpZXMgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBlbXB0eSgpOiB2b2lkIHtcbiAgICB0aGlzLnNldFZhbHVlKCcnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBnZXRWYWx1ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnRleHRBcmVhQ29tcG9uZW50LmdldFZhbHVlKCk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb21wb25lbnQgaXMgZW1wdHkuXG4gICAqXG4gICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgY29tcG9uZW50IGlzIGVtcHR5LCBgZmFsc2VgIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBpc0VtcHR5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRleHRBcmVhQ29tcG9uZW50LmdldFZhbHVlKCkgPT09ICcnO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBjaGFuZ2UgbGlzdGVuZXIgdG8gdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGNhbGxiYWNrIC0gVGhlIGNhbGxiYWNrIHRvIGNhbGwgd2hlbiB0aGUgdmFsdWUgY2hhbmdlcy5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvbkNoYW5nZShjYWxsYmFjazogKG5ld1ZhbHVlOiBzdHJpbmcpID0+IFByb21pc2FibGU8dm9pZD4pOiB0aGlzIHtcbiAgICBjb25zdCBjaGFuZ2VIYW5kbGVyID0gKCk6IHZvaWQgPT4ge1xuICAgICAgY2FsbGJhY2sodGhpcy5nZXRWYWx1ZSgpKTtcbiAgICB9O1xuICAgIHRoaXMuc2ltdWxhdGVDaGFuZ2VDYWxsYmFjayA9IGNoYW5nZUhhbmRsZXI7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5vbkNoYW5nZShjaGFuZ2VIYW5kbGVyKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gZGlzYWJsZWQgLSBUaGUgZGlzYWJsZWQgc3RhdGUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHNldERpc2FibGVkKGRpc2FibGVkOiBib29sZWFuKTogdGhpcyB7XG4gICAgc3VwZXIuc2V0RGlzYWJsZWQoZGlzYWJsZWQpO1xuICAgIHRoaXMudGV4dEFyZWFDb21wb25lbnQuc2V0RGlzYWJsZWQoZGlzYWJsZWQpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGxhbmd1YWdlIGZvciBjb2RlIGhpZ2hsaWdodGluZy5cbiAgICpcbiAgICogQHBhcmFtIGxhbmd1YWdlIC0gVGhlIGxhbmd1YWdlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRMYW5ndWFnZShsYW5ndWFnZTogc3RyaW5nKTogdGhpcyB7XG4gICAgY29uc3QgTEFOR1VBR0VfQ0xBU1NfUFJFRklYID0gJ2xhbmd1YWdlLSc7XG4gICAgZm9yIChjb25zdCBlbCBvZiBbdGhpcy5wcmVFbCwgdGhpcy5jb2RlRWxdKSB7XG4gICAgICBmb3IgKGNvbnN0IGNscyBvZiBBcnJheS5mcm9tKGVsLmNsYXNzTGlzdCkpIHtcbiAgICAgICAgaWYgKGNscy5zdGFydHNXaXRoKExBTkdVQUdFX0NMQVNTX1BSRUZJWCkpIHtcbiAgICAgICAgICBlbC5jbGFzc0xpc3QucmVtb3ZlKGNscyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGVsLmNsYXNzTGlzdC5hZGQoYCR7TEFOR1VBR0VfQ0xBU1NfUFJFRklYfSR7bGFuZ3VhZ2V9YCk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHBsYWNlaG9sZGVyIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBwbGFjZWhvbGRlciAtIFRoZSBwbGFjZWhvbGRlciB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgc2V0UGxhY2Vob2xkZXIocGxhY2Vob2xkZXI6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMucGxhY2Vob2xkZXIgPSBwbGFjZWhvbGRlcjtcbiAgICBpbnZva2VBc3luY1NhZmVseSh0aGlzLnVwZGF0ZUhpZ2hsaWdodGVkQ29kZS5iaW5kKHRoaXMpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBwbGFjZWhvbGRlciB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gcGxhY2Vob2xkZXJWYWx1ZSAtIFRoZSBwbGFjZWhvbGRlciB2YWx1ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgc2V0UGxhY2Vob2xkZXJWYWx1ZShwbGFjZWhvbGRlclZhbHVlOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnNldFBsYWNlaG9sZGVyKHBsYWNlaG9sZGVyVmFsdWUpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHRhYiBzaXplIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSB0YWJTaXplIC0gVGhlIHRhYiBzaXplIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRUYWJTaXplKHRhYlNpemU6IG51bWJlcik6IHRoaXMge1xuICAgIHRoaXMudGFiU2l6ZSA9IHRhYlNpemU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBzZXRWYWx1ZSh2YWx1ZTogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy50ZXh0QXJlYUNvbXBvbmVudC5zZXRWYWx1ZSh2YWx1ZSk7XG4gICAgaW52b2tlQXN5bmNTYWZlbHkodGhpcy51cGRhdGVIaWdobGlnaHRlZENvZGUuYmluZCh0aGlzKSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgVXNlIG9ubHkgZnJvbSB0ZXN0cyB0byBzaW11bGF0ZSBhIGNoYW5nZSBldmVudC5cbiAgICovXG4gIHB1YmxpYyBzaW11bGF0ZUNoYW5nZSgpOiB2b2lkIHtcbiAgICB0aGlzLnNpbXVsYXRlQ2hhbmdlQ2FsbGJhY2s/LigpO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVLZXlEb3duKGV2dDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGlmIChldnQua2V5ICE9PSAnVGFiJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgaWYgKGV2dC5jdHJsS2V5IHx8IGV2dC5tZXRhS2V5KSB7XG4gICAgICBjb25zdCBmb2N1c2FibGVzID0gQXJyYXkuZnJvbShhY3RpdmVEb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsPEhUTUxFbGVtZW50PihcbiAgICAgICAgJzppcyhhLCBidXR0b24sIGlucHV0LCBzZWxlY3QsIHRleHRhcmVhLCBbdGFiaW5kZXhdKTpub3QoW3RhYmluZGV4PVwiLTFcIl0pOm5vdCg6ZGlzYWJsZWQpOm5vdChbdHlwZT1cImhpZGRlblwiXSknXG4gICAgICApKTtcbiAgICAgIGNvbnN0IGluZGV4ID0gZm9jdXNhYmxlcy5pbmRleE9mKHRoaXMuaW5wdXRFbCk7XG4gICAgICBjb25zdCBkZWx0YUluZGV4ID0gZXZ0LnNoaWZ0S2V5ID8gLTEgOiAxO1xuICAgICAgY29uc3QgbmV4dENvbnRyb2wgPSBmb2N1c2FibGVzWyhpbmRleCArIGRlbHRhSW5kZXggKyBmb2N1c2FibGVzLmxlbmd0aCkgJSBmb2N1c2FibGVzLmxlbmd0aF07XG4gICAgICBuZXh0Q29udHJvbD8uZm9jdXMoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBvbGRWYWx1ZSA9IHRoaXMuZ2V0VmFsdWUoKTtcbiAgICBjb25zdCBzZWxlY3Rpb25TdGFydCA9IHRoaXMuaW5wdXRFbC5zZWxlY3Rpb25TdGFydDtcbiAgICBjb25zdCBzZWxlY3Rpb25FbmQgPSB0aGlzLmlucHV0RWwuc2VsZWN0aW9uRW5kO1xuICAgIGNvbnN0IGJlZm9yZVNlbGVjdGlvbiA9IG9sZFZhbHVlLnNsaWNlKDAsIHNlbGVjdGlvblN0YXJ0KTtcbiAgICBjb25zdCBhZnRlclNlbGVjdGlvbiA9IG9sZFZhbHVlLnNsaWNlKHNlbGVjdGlvbkVuZCk7XG4gICAgY29uc3QgdGFicyA9ICcgJy5yZXBlYXQodGhpcy50YWJTaXplKTtcbiAgICBsZXQgbmV3QmVmb3JlU2VsZWN0aW9uID0gYmVmb3JlU2VsZWN0aW9uO1xuXG4gICAgaWYgKGV2dC5zaGlmdEtleSkge1xuICAgICAgaWYgKGJlZm9yZVNlbGVjdGlvbi5lbmRzV2l0aCh0YWJzKSkge1xuICAgICAgICBuZXdCZWZvcmVTZWxlY3Rpb24gPSBiZWZvcmVTZWxlY3Rpb24uc2xpY2UoMCwgLXRoaXMudGFiU2l6ZSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIG5ld0JlZm9yZVNlbGVjdGlvbiA9IGJlZm9yZVNlbGVjdGlvbiArIHRhYnM7XG4gICAgfVxuXG4gICAgY29uc3QgbmV3VmFsdWUgPSBgJHtuZXdCZWZvcmVTZWxlY3Rpb259JHthZnRlclNlbGVjdGlvbn1gO1xuICAgIHRoaXMuc2V0VmFsdWUobmV3VmFsdWUpO1xuICAgIHRoaXMuaW5wdXRFbC5zZWxlY3Rpb25TdGFydCA9IG5ld0JlZm9yZVNlbGVjdGlvbi5sZW5ndGg7XG4gICAgdGhpcy5pbnB1dEVsLnNlbGVjdGlvbkVuZCA9IG5ld0JlZm9yZVNlbGVjdGlvbi5sZW5ndGg7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZVNjcm9sbCgpOiB2b2lkIHtcbiAgICB0aGlzLnByZUVsLnNjcm9sbFRvcCA9IHRoaXMuaW5wdXRFbC5zY3JvbGxUb3A7XG4gICAgdGhpcy5wcmVFbC5zY3JvbGxMZWZ0ID0gdGhpcy5pbnB1dEVsLnNjcm9sbExlZnQ7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHVwZGF0ZUhpZ2hsaWdodGVkQ29kZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLmNvZGVFbC50ZXh0Q29udGVudCA9IHRoaXMuaW5wdXRFbC52YWx1ZSB8fCB0aGlzLnBsYWNlaG9sZGVyO1xuICAgIGNvbnN0IHByaXNtID0gYXdhaXQgbG9hZFByaXNtKCk7XG4gICAgcHJpc20uaGlnaGxpZ2h0RWxlbWVudCh0aGlzLmNvZGVFbCk7XG4gICAgdGhpcy5wcmVFbC50b2dnbGVDbGFzcyhDc3NDbGFzcy5Jc1BsYWNlaG9sZGVyLCB0aGlzLmlzRW1wdHkoKSk7XG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgIGNvbnN0IGdhcCA9IE1hdGgubWF4KDAsIHRoaXMuaW5wdXRFbC5zY3JvbGxIZWlnaHQgLSB0aGlzLnByZUVsLnNjcm9sbEhlaWdodCk7XG4gICAgICB0aGlzLnByZUVsLnNldENzc1Byb3BzKHtcbiAgICAgICAgJy0tYm90dG9tLWdhcCc6IHRvUHgoZ2FwKVxuICAgICAgfSk7XG4gICAgICB0aGlzLmhhbmRsZVNjcm9sbCgpO1xuICAgIH0pO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQUNQLFNBQVMsaUJBQWlCO0FBVzFCO0FB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
@@ -31,6 +31,7 @@ export declare class MultipleDropdownComponent extends ValueComponent<readonly s
31
31
  */
32
32
  get validatorEl(): ValidatorElement;
33
33
  private readonly dropdownComponent;
34
+ private simulateChangeCallback?;
34
35
  /**
35
36
  * Creates a new multiple dropdown component.
36
37
  *
@@ -79,4 +80,8 @@ export declare class MultipleDropdownComponent extends ValueComponent<readonly s
79
80
  * @returns The component.
80
81
  */
81
82
  setValue(value: readonly string[]): this;
83
+ /**
84
+ * @deprecated Use only from tests to simulate a change event.
85
+ */
86
+ simulateChange(): void;
82
87
  }
@@ -43,6 +43,7 @@ class MultipleDropdownComponent extends ValueComponent {
43
43
  return this.selectEl;
44
44
  }
45
45
  dropdownComponent;
46
+ simulateChangeCallback;
46
47
  /**
47
48
  * Creates a new multiple dropdown component.
48
49
  *
@@ -90,7 +91,11 @@ class MultipleDropdownComponent extends ValueComponent {
90
91
  * @returns The component.
91
92
  */
92
93
  onChange(callback) {
93
- this.dropdownComponent.onChange(() => callback(this.getValue()));
94
+ const changeHandler = () => {
95
+ callback(this.getValue());
96
+ };
97
+ this.simulateChangeCallback = changeHandler;
98
+ this.dropdownComponent.onChange(changeHandler);
94
99
  return this;
95
100
  }
96
101
  /**
@@ -116,8 +121,14 @@ class MultipleDropdownComponent extends ValueComponent {
116
121
  }
117
122
  return this;
118
123
  }
124
+ /**
125
+ * @deprecated Use only from tests to simulate a change event.
126
+ */
127
+ simulateChange() {
128
+ this.simulateChangeCallback?.();
129
+ }
119
130
  }
120
131
  export {
121
132
  MultipleDropdownComponent
122
133
  };
123
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvU2V0dGluZ0NvbXBvbmVudHMvTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBDb250YWlucyBhIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhIG11bHRpLXNlbGVjdCBkcm9wZG93bi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IFByb21pc2FibGUgfSBmcm9tICd0eXBlLWZlc3QnO1xuXG5pbXBvcnQge1xuICBEcm9wZG93bkNvbXBvbmVudCxcbiAgVmFsdWVDb21wb25lbnRcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgdHlwZSB7IFZhbGlkYXRvckVsZW1lbnQgfSBmcm9tICcuLi8uLi8uLi9IVE1MRWxlbWVudC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBpbml0UGx1Z2luQ29udGV4dGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IGluaXRQbHVnaW5Db250ZXh0IH0gZnJvbSAnLi4vLi4vUGx1Z2luL1BsdWdpbkNvbnRleHQudHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycyAtLSBXZSBuZWVkIHRvIGltcG9ydCBgU2V0dGluZ0V4YCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbmltcG9ydCB0eXBlIHsgU2V0dGluZ0V4IH0gZnJvbSAnLi4vLi4vU2V0dGluZ0V4LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9WYWxpZGF0b3JDb21wb25lbnQudHMnO1xuaW1wb3J0IHR5cGUgeyBWYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZyB9IGZyb20gJy4vVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcudHMnO1xuXG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uLy4uLy4uL0Nzc0NsYXNzLnRzJztcbmltcG9ydCB7IGFkZFBsdWdpbkNzc0NsYXNzZXMgfSBmcm9tICcuLi8uLi9QbHVnaW4vUGx1Z2luQ29udGV4dC50cyc7XG5cbi8qKlxuICogQSBtdWx0aS1zZWxlY3QgZHJvcGRvd24gY29tcG9uZW50LlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkTXVsdGlwbGVEcm9wZG93bn0uXG4gKlxuICogSW4gb3JkZXIgdG8gYWRkIHRoZSBzdHlsZXMgZm9yIHRoZSBjb21wb25lbnQsIHVzZSB7QGxpbmsgaW5pdFBsdWdpbkNvbnRleHR9IGluIHlvdXIgcGx1Z2luJ3MgYG9ubG9hZCgpYCBmdW5jdGlvbi5cbiAqXG4gKiBBbHRlcm5hdGl2ZWx5LCB5b3UgY2FuIGNvcHkgc3R5bGVzIGZyb20ge0BsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9tbmFvdW1vdi9vYnNpZGlhbi1kZXYtdXRpbHMvcmVsZWFzZXMvbGF0ZXN0L2Rvd25sb2FkL3N0eWxlcy5jc3N9LlxuICovXG5leHBvcnQgY2xhc3MgTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudCBleHRlbmRzIFZhbHVlQ29tcG9uZW50PHJlYWRvbmx5IHN0cmluZ1tdPlxuICBpbXBsZW1lbnRzIFZhbGlkYXRvckNvbXBvbmVudCwgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmc8cmVhZG9ubHkgc3RyaW5nW10+IHtcbiAgLyoqXG4gICAqIEEgc2VsZWN0IGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHNlbGVjdCBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGdldCBzZWxlY3RFbCgpOiBIVE1MU2VsZWN0RWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2VsZWN0RWw7XG4gIH1cblxuICAvKipcbiAgICogQSB2YWxpZGF0b3IgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsaWRhdG9yIGVsZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHZhbGlkYXRvckVsKCk6IFZhbGlkYXRvckVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdEVsO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkcm9wZG93bkNvbXBvbmVudDogRHJvcGRvd25Db21wb25lbnQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgbXVsdGlwbGUgZHJvcGRvd24gY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gY29udGFpbmVyRWwgLSBUaGUgY29udGFpbmVyIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb250YWluZXJFbDogSFRNTEVsZW1lbnQpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQgPSBuZXcgRHJvcGRvd25Db21wb25lbnQoY29udGFpbmVyRWwpO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2VsZWN0RWwubXVsdGlwbGUgPSB0cnVlO1xuICAgIGFkZFBsdWdpbkNzc0NsYXNzZXMoY29udGFpbmVyRWwsIENzc0NsYXNzLk11bHRpcGxlRHJvcGRvd25Db21wb25lbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYW4gb3B0aW9uIHRvIHRoZSBkcm9wZG93bi5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIG9mIHRoZSBvcHRpb24uXG4gICAqIEBwYXJhbSBkaXNwbGF5IC0gVGhlIGRpc3BsYXkgdGV4dCBvZiB0aGUgb3B0aW9uLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGFkZE9wdGlvbih2YWx1ZTogc3RyaW5nLCBkaXNwbGF5OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLmRyb3Bkb3duQ29tcG9uZW50LmFkZE9wdGlvbih2YWx1ZSwgZGlzcGxheSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBtdWx0aXBsZSBvcHRpb25zIHRvIHRoZSBkcm9wZG93bi5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyB0byBhZGQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgYWRkT3B0aW9ucyhvcHRpb25zOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KTogdGhpcyB7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5hZGRPcHRpb25zKG9wdGlvbnMpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldFZhbHVlKCk6IHJlYWRvbmx5IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmRyb3Bkb3duQ29tcG9uZW50LnNlbGVjdEVsLnNlbGVjdGVkT3B0aW9ucykubWFwKChvKSA9PiBvLnZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNoYW5nZWQuXG4gICAqXG4gICAqIEBwYXJhbSBjYWxsYmFjayAtIFRoZSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNoYW5nZWQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb25DaGFuZ2UoY2FsbGJhY2s6ICh2YWx1ZTogcmVhZG9ubHkgc3RyaW5nW10pID0+IFByb21pc2FibGU8dm9pZD4pOiB0aGlzIHtcbiAgICB0aGlzLmRyb3Bkb3duQ29tcG9uZW50Lm9uQ2hhbmdlKCgpID0+IGNhbGxiYWNrKHRoaXMuZ2V0VmFsdWUoKSkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBkaXNhYmxlZCAtIFRoZSBkaXNhYmxlZCBzdGF0ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0RGlzYWJsZWQoZGlzYWJsZWQ6IGJvb2xlYW4pOiB0aGlzIHtcbiAgICBzdXBlci5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRWYWx1ZSh2YWx1ZTogcmVhZG9ubHkgc3RyaW5nW10pOiB0aGlzIHtcbiAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiBBcnJheS5mcm9tKHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2VsZWN0RWwub3B0aW9ucykpIHtcbiAgICAgIG9wdGlvbi5zZWxlY3RlZCA9IHZhbHVlLmluY2x1ZGVzKG9wdGlvbi52YWx1ZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVFBO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBVVAsU0FBUyxnQkFBZ0I7QUFDekIsU0FBUywyQkFBMkI7QUFXN0IsTUFBTSxrQ0FBa0MsZUFDc0M7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNbkYsSUFBVyxXQUE4QjtBQUN2QyxXQUFPLEtBQUssa0JBQWtCO0FBQUEsRUFDaEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPQSxJQUFXLGNBQWdDO0FBQ3pDLFdBQU8sS0FBSztBQUFBLEVBQ2Q7QUFBQSxFQUVpQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9WLFlBQVksYUFBMEI7QUFDM0MsVUFBTTtBQUNOLFNBQUssb0JBQW9CLElBQUksa0JBQWtCLFdBQVc7QUFDMUQsU0FBSyxrQkFBa0IsU0FBUyxXQUFXO0FBQzNDLHdCQUFvQixhQUFhLFNBQVMseUJBQXlCO0FBQUEsRUFDckU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU08sVUFBVSxPQUFlLFNBQXVCO0FBQ3JELFNBQUssa0JBQWtCLFVBQVUsT0FBTyxPQUFPO0FBQy9DLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxXQUFXLFNBQXVDO0FBQ3ZELFNBQUssa0JBQWtCLFdBQVcsT0FBTztBQUN6QyxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLFdBQThCO0FBQ25DLFdBQU8sTUFBTSxLQUFLLEtBQUssa0JBQWtCLFNBQVMsZUFBZSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsS0FBSztBQUFBLEVBQ3ZGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxTQUFTLFVBQWdFO0FBQzlFLFNBQUssa0JBQWtCLFNBQVMsTUFBTSxTQUFTLEtBQUssU0FBUyxDQUFDLENBQUM7QUFDL0QsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixZQUFZLFVBQXlCO0FBQ25ELFVBQU0sWUFBWSxRQUFRO0FBQzFCLFNBQUssa0JBQWtCLFlBQVksUUFBUTtBQUMzQyxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sU0FBUyxPQUFnQztBQUM5QyxlQUFXLFVBQVUsTUFBTSxLQUFLLEtBQUssa0JBQWtCLFNBQVMsT0FBTyxHQUFHO0FBQ3hFLGFBQU8sV0FBVyxNQUFNLFNBQVMsT0FBTyxLQUFLO0FBQUEsSUFDL0M7QUFFQSxXQUFPO0FBQUEsRUFDVDtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
134
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvU2V0dGluZ0NvbXBvbmVudHMvTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBDb250YWlucyBhIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhIG11bHRpLXNlbGVjdCBkcm9wZG93bi5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IFByb21pc2FibGUgfSBmcm9tICd0eXBlLWZlc3QnO1xuXG5pbXBvcnQge1xuICBEcm9wZG93bkNvbXBvbmVudCxcbiAgVmFsdWVDb21wb25lbnRcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgdHlwZSB7IFZhbGlkYXRvckVsZW1lbnQgfSBmcm9tICcuLi8uLi8uLi9IVE1MRWxlbWVudC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzIC0tIFdlIG5lZWQgdG8gaW1wb3J0IGBpbml0UGx1Z2luQ29udGV4dGAgdG8gdXNlIGl0IGluIHRoZSB0c2RvY3MuXG5pbXBvcnQgdHlwZSB7IGluaXRQbHVnaW5Db250ZXh0IH0gZnJvbSAnLi4vLi4vUGx1Z2luL1BsdWdpbkNvbnRleHQudHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycyAtLSBXZSBuZWVkIHRvIGltcG9ydCBgU2V0dGluZ0V4YCB0byB1c2UgaXQgaW4gdGhlIHRzZG9jcy5cbmltcG9ydCB0eXBlIHsgU2V0dGluZ0V4IH0gZnJvbSAnLi4vLi4vU2V0dGluZ0V4LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9WYWxpZGF0b3JDb21wb25lbnQudHMnO1xuaW1wb3J0IHR5cGUgeyBWYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZyB9IGZyb20gJy4vVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcudHMnO1xuXG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uLy4uLy4uL0Nzc0NsYXNzLnRzJztcbmltcG9ydCB7IGFkZFBsdWdpbkNzc0NsYXNzZXMgfSBmcm9tICcuLi8uLi9QbHVnaW4vUGx1Z2luQ29udGV4dC50cyc7XG5cbi8qKlxuICogQSBtdWx0aS1zZWxlY3QgZHJvcGRvd24gY29tcG9uZW50LlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkTXVsdGlwbGVEcm9wZG93bn0uXG4gKlxuICogSW4gb3JkZXIgdG8gYWRkIHRoZSBzdHlsZXMgZm9yIHRoZSBjb21wb25lbnQsIHVzZSB7QGxpbmsgaW5pdFBsdWdpbkNvbnRleHR9IGluIHlvdXIgcGx1Z2luJ3MgYG9ubG9hZCgpYCBmdW5jdGlvbi5cbiAqXG4gKiBBbHRlcm5hdGl2ZWx5LCB5b3UgY2FuIGNvcHkgc3R5bGVzIGZyb20ge0BsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9tbmFvdW1vdi9vYnNpZGlhbi1kZXYtdXRpbHMvcmVsZWFzZXMvbGF0ZXN0L2Rvd25sb2FkL3N0eWxlcy5jc3N9LlxuICovXG5leHBvcnQgY2xhc3MgTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudCBleHRlbmRzIFZhbHVlQ29tcG9uZW50PHJlYWRvbmx5IHN0cmluZ1tdPlxuICBpbXBsZW1lbnRzIFZhbGlkYXRvckNvbXBvbmVudCwgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmc8cmVhZG9ubHkgc3RyaW5nW10+IHtcbiAgLyoqXG4gICAqIEEgc2VsZWN0IGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHNlbGVjdCBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGdldCBzZWxlY3RFbCgpOiBIVE1MU2VsZWN0RWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2VsZWN0RWw7XG4gIH1cblxuICAvKipcbiAgICogQSB2YWxpZGF0b3IgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsaWRhdG9yIGVsZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHZhbGlkYXRvckVsKCk6IFZhbGlkYXRvckVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdEVsO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkcm9wZG93bkNvbXBvbmVudDogRHJvcGRvd25Db21wb25lbnQ7XG5cbiAgcHJpdmF0ZSBzaW11bGF0ZUNoYW5nZUNhbGxiYWNrPzogKCkgPT4gdm9pZDtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBtdWx0aXBsZSBkcm9wZG93biBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjb250YWluZXJFbCAtIFRoZSBjb250YWluZXIgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvbnRhaW5lckVsOiBIVE1MRWxlbWVudCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudCA9IG5ldyBEcm9wZG93bkNvbXBvbmVudChjb250YWluZXJFbCk7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5zZWxlY3RFbC5tdWx0aXBsZSA9IHRydWU7XG4gICAgYWRkUGx1Z2luQ3NzQ2xhc3Nlcyhjb250YWluZXJFbCwgQ3NzQ2xhc3MuTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudCk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhbiBvcHRpb24gdG8gdGhlIGRyb3Bkb3duLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgb2YgdGhlIG9wdGlvbi5cbiAgICogQHBhcmFtIGRpc3BsYXkgLSBUaGUgZGlzcGxheSB0ZXh0IG9mIHRoZSBvcHRpb24uXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgYWRkT3B0aW9uKHZhbHVlOiBzdHJpbmcsIGRpc3BsYXk6IHN0cmluZyk6IHRoaXMge1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuYWRkT3B0aW9uKHZhbHVlLCBkaXNwbGF5KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIG11bHRpcGxlIG9wdGlvbnMgdG8gdGhlIGRyb3Bkb3duLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIHRvIGFkZC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBhZGRPcHRpb25zKG9wdGlvbnM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4pOiB0aGlzIHtcbiAgICB0aGlzLmRyb3Bkb3duQ29tcG9uZW50LmFkZE9wdGlvbnMob3B0aW9ucyk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0VmFsdWUoKTogcmVhZG9ubHkgc3RyaW5nW10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2VsZWN0RWwuc2VsZWN0ZWRPcHRpb25zKS5tYXAoKG8pID0+IG8udmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBjb21wb25lbnQgaXMgY2hhbmdlZC5cbiAgICpcbiAgICogQHBhcmFtIGNhbGxiYWNrIC0gVGhlIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBjb21wb25lbnQgaXMgY2hhbmdlZC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvbkNoYW5nZShjYWxsYmFjazogKHZhbHVlOiByZWFkb25seSBzdHJpbmdbXSkgPT4gUHJvbWlzYWJsZTx2b2lkPik6IHRoaXMge1xuICAgIGNvbnN0IGNoYW5nZUhhbmRsZXIgPSAoKTogdm9pZCA9PiB7XG4gICAgICBjYWxsYmFjayh0aGlzLmdldFZhbHVlKCkpO1xuICAgIH07XG4gICAgdGhpcy5zaW11bGF0ZUNoYW5nZUNhbGxiYWNrID0gY2hhbmdlSGFuZGxlcjtcbiAgICB0aGlzLmRyb3Bkb3duQ29tcG9uZW50Lm9uQ2hhbmdlKGNoYW5nZUhhbmRsZXIpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBkaXNhYmxlZCAtIFRoZSBkaXNhYmxlZCBzdGF0ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0RGlzYWJsZWQoZGlzYWJsZWQ6IGJvb2xlYW4pOiB0aGlzIHtcbiAgICBzdXBlci5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRWYWx1ZSh2YWx1ZTogcmVhZG9ubHkgc3RyaW5nW10pOiB0aGlzIHtcbiAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiBBcnJheS5mcm9tKHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2VsZWN0RWwub3B0aW9ucykpIHtcbiAgICAgIG9wdGlvbi5zZWxlY3RlZCA9IHZhbHVlLmluY2x1ZGVzKG9wdGlvbi52YWx1ZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgVXNlIG9ubHkgZnJvbSB0ZXN0cyB0byBzaW11bGF0ZSBhIGNoYW5nZSBldmVudC5cbiAgICovXG4gIHB1YmxpYyBzaW11bGF0ZUNoYW5nZSgpOiB2b2lkIHtcbiAgICB0aGlzLnNpbXVsYXRlQ2hhbmdlQ2FsbGJhY2s/LigpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQVVQLFNBQVMsZ0JBQWdCO0FBQ3pCLFNBQVMsMkJBQTJCO0FBVzdCLE1BQU0sa0NBQWtDLGVBQ3NDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTW5GLElBQVcsV0FBOEI7QUFDdkMsV0FBTyxLQUFLLGtCQUFrQjtBQUFBLEVBQ2hDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0EsSUFBVyxjQUFnQztBQUN6QyxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQUEsRUFFaUI7QUFBQSxFQUVUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT0QsWUFBWSxhQUEwQjtBQUMzQyxVQUFNO0FBQ04sU0FBSyxvQkFBb0IsSUFBSSxrQkFBa0IsV0FBVztBQUMxRCxTQUFLLGtCQUFrQixTQUFTLFdBQVc7QUFDM0Msd0JBQW9CLGFBQWEsU0FBUyx5QkFBeUI7QUFBQSxFQUNyRTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTTyxVQUFVLE9BQWUsU0FBdUI7QUFDckQsU0FBSyxrQkFBa0IsVUFBVSxPQUFPLE9BQU87QUFDL0MsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFdBQVcsU0FBdUM7QUFDdkQsU0FBSyxrQkFBa0IsV0FBVyxPQUFPO0FBQ3pDLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT08sV0FBOEI7QUFDbkMsV0FBTyxNQUFNLEtBQUssS0FBSyxrQkFBa0IsU0FBUyxlQUFlLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLO0FBQUEsRUFDdkY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFNBQVMsVUFBZ0U7QUFDOUUsVUFBTSxnQkFBZ0IsTUFBWTtBQUNoQyxlQUFTLEtBQUssU0FBUyxDQUFDO0FBQUEsSUFDMUI7QUFDQSxTQUFLLHlCQUF5QjtBQUM5QixTQUFLLGtCQUFrQixTQUFTLGFBQWE7QUFDN0MsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixZQUFZLFVBQXlCO0FBQ25ELFVBQU0sWUFBWSxRQUFRO0FBQzFCLFNBQUssa0JBQWtCLFlBQVksUUFBUTtBQUMzQyxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sU0FBUyxPQUFnQztBQUM5QyxlQUFXLFVBQVUsTUFBTSxLQUFLLEtBQUssa0JBQWtCLFNBQVMsT0FBTyxHQUFHO0FBQ3hFLGFBQU8sV0FBVyxNQUFNLFNBQVMsT0FBTyxLQUFLO0FBQUEsSUFDL0M7QUFFQSxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS08saUJBQXVCO0FBQzVCLFNBQUsseUJBQXlCO0FBQUEsRUFDaEM7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -31,6 +31,7 @@ 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
+ private simulateChangeCallback?;
34
35
  private readonly textAreaComponent;
35
36
  /**
36
37
  * Creates a new multiple text component.
@@ -89,5 +90,9 @@ export declare class MultipleTextComponent extends ValueComponent<readonly strin
89
90
  * @returns The component.
90
91
  */
91
92
  setValue(value: readonly string[]): this;
93
+ /**
94
+ * @deprecated Use only from tests to simulate a change event.
95
+ */
96
+ simulateChange(): void;
92
97
  private valueToString;
93
98
  }