obsidian-dev-utils 54.0.3 → 55.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (651) hide show
  1. package/CHANGELOG.md +19 -1
  2. package/dist/lib/cjs/@types/debug.d.cts +4 -1
  3. package/dist/lib/cjs/abort-controller.cjs +1 -1
  4. package/dist/lib/cjs/abort-controller.d.cts +1 -1
  5. package/dist/lib/cjs/array.cjs +1 -1
  6. package/dist/lib/cjs/array.d.cts +1 -1
  7. package/dist/lib/cjs/async-events.cjs +1 -1
  8. package/dist/lib/cjs/async-events.d.cts +1 -1
  9. package/dist/lib/cjs/async.cjs +1 -1
  10. package/dist/lib/cjs/async.d.cts +1 -1
  11. package/dist/lib/cjs/blob.cjs +1 -1
  12. package/dist/lib/cjs/blob.d.cts +1 -1
  13. package/dist/lib/cjs/codemirror/state-field-spec.cjs +1 -1
  14. package/dist/lib/cjs/codemirror/state-field-spec.d.cts +1 -1
  15. package/dist/lib/cjs/css-class.cjs +1 -1
  16. package/dist/lib/cjs/css-class.d.cts +1 -1
  17. package/dist/lib/cjs/debug-controller.cjs +1 -1
  18. package/dist/lib/cjs/debug-controller.d.cts +1 -1
  19. package/dist/lib/cjs/debug.cjs +1 -1
  20. package/dist/lib/cjs/debug.d.cts +1 -1
  21. package/dist/lib/cjs/enum.cjs +1 -1
  22. package/dist/lib/cjs/enum.d.cts +1 -1
  23. package/dist/lib/cjs/error.cjs +1 -1
  24. package/dist/lib/cjs/error.d.cts +1 -1
  25. package/dist/lib/cjs/function.cjs +1 -1
  26. package/dist/lib/cjs/function.d.cts +1 -1
  27. package/dist/lib/cjs/html-element.cjs +1 -1
  28. package/dist/lib/cjs/html-element.d.cts +1 -1
  29. package/dist/lib/cjs/index.cjs +4 -1
  30. package/dist/lib/cjs/index.d.cts +1 -0
  31. package/dist/lib/cjs/library.cjs +2 -2
  32. package/dist/lib/cjs/library.d.cts +1 -1
  33. package/dist/lib/cjs/object-utils.cjs +2 -2
  34. package/dist/lib/cjs/object-utils.d.cts +1 -1
  35. package/dist/lib/cjs/obsidian/@types/i18next.d.cts +1 -1
  36. package/dist/lib/cjs/obsidian/app.cjs +1 -1
  37. package/dist/lib/cjs/obsidian/app.d.cts +1 -1
  38. package/dist/lib/cjs/obsidian/async-with-notice.cjs +1 -1
  39. package/dist/lib/cjs/obsidian/async-with-notice.d.cts +1 -1
  40. package/dist/lib/cjs/obsidian/attachment-path.cjs +1 -1
  41. package/dist/lib/cjs/obsidian/attachment-path.d.cts +1 -1
  42. package/dist/lib/cjs/obsidian/backlink.cjs +1 -1
  43. package/dist/lib/cjs/obsidian/backlink.d.cts +1 -1
  44. package/dist/lib/cjs/obsidian/callout.cjs +1 -1
  45. package/dist/lib/cjs/obsidian/callout.d.cts +1 -1
  46. package/dist/lib/cjs/obsidian/code-block-markdown-information.cjs +1 -1
  47. package/dist/lib/cjs/obsidian/code-block-markdown-information.d.cts +1 -1
  48. package/dist/lib/cjs/obsidian/commands/abstract-file-command-base.cjs +1 -1
  49. package/dist/lib/cjs/obsidian/commands/abstract-file-command-base.d.cts +1 -1
  50. package/dist/lib/cjs/obsidian/commands/command-base.cjs +1 -1
  51. package/dist/lib/cjs/obsidian/commands/command-base.d.cts +1 -1
  52. package/dist/lib/cjs/obsidian/commands/editor-command-base.cjs +1 -1
  53. package/dist/lib/cjs/obsidian/commands/editor-command-base.d.cts +1 -1
  54. package/dist/lib/cjs/obsidian/commands/file-command-base.cjs +1 -1
  55. package/dist/lib/cjs/obsidian/commands/file-command-base.d.cts +1 -1
  56. package/dist/lib/cjs/obsidian/commands/folder-command-base.cjs +1 -1
  57. package/dist/lib/cjs/obsidian/commands/folder-command-base.d.cts +1 -1
  58. package/dist/lib/cjs/obsidian/commands/non-editor-command-base.cjs +1 -1
  59. package/dist/lib/cjs/obsidian/commands/non-editor-command-base.d.cts +1 -1
  60. package/dist/lib/cjs/obsidian/components/all-windows-event-handler.cjs +1 -1
  61. package/dist/lib/cjs/obsidian/components/all-windows-event-handler.d.cts +1 -1
  62. package/dist/lib/cjs/obsidian/components/async-events-component.cjs +1 -1
  63. package/dist/lib/cjs/obsidian/components/async-events-component.d.cts +1 -1
  64. package/dist/lib/cjs/obsidian/components/setting-components/checkbox-component.cjs +1 -1
  65. package/dist/lib/cjs/obsidian/components/setting-components/checkbox-component.d.cts +1 -1
  66. package/dist/lib/cjs/obsidian/components/setting-components/code-highlighter-component.cjs +1 -1
  67. package/dist/lib/cjs/obsidian/components/setting-components/code-highlighter-component.d.cts +1 -1
  68. package/dist/lib/cjs/obsidian/components/setting-components/date-component.cjs +1 -1
  69. package/dist/lib/cjs/obsidian/components/setting-components/date-component.d.cts +1 -1
  70. package/dist/lib/cjs/obsidian/components/setting-components/date-time-component.cjs +1 -1
  71. package/dist/lib/cjs/obsidian/components/setting-components/date-time-component.d.cts +1 -1
  72. package/dist/lib/cjs/obsidian/components/setting-components/email-component.cjs +1 -1
  73. package/dist/lib/cjs/obsidian/components/setting-components/email-component.d.cts +1 -1
  74. package/dist/lib/cjs/obsidian/components/setting-components/file-component.cjs +1 -1
  75. package/dist/lib/cjs/obsidian/components/setting-components/file-component.d.cts +1 -1
  76. package/dist/lib/cjs/obsidian/components/setting-components/month-component.cjs +1 -1
  77. package/dist/lib/cjs/obsidian/components/setting-components/month-component.d.cts +1 -1
  78. package/dist/lib/cjs/obsidian/components/setting-components/multiple-dropdown-component.cjs +1 -1
  79. package/dist/lib/cjs/obsidian/components/setting-components/multiple-dropdown-component.d.cts +1 -1
  80. package/dist/lib/cjs/obsidian/components/setting-components/multiple-email-component.cjs +1 -1
  81. package/dist/lib/cjs/obsidian/components/setting-components/multiple-email-component.d.cts +1 -1
  82. package/dist/lib/cjs/obsidian/components/setting-components/multiple-file-component.cjs +1 -1
  83. package/dist/lib/cjs/obsidian/components/setting-components/multiple-file-component.d.cts +1 -1
  84. package/dist/lib/cjs/obsidian/components/setting-components/multiple-text-component.cjs +1 -1
  85. package/dist/lib/cjs/obsidian/components/setting-components/multiple-text-component.d.cts +1 -1
  86. package/dist/lib/cjs/obsidian/components/setting-components/number-component.cjs +1 -1
  87. package/dist/lib/cjs/obsidian/components/setting-components/number-component.d.cts +1 -1
  88. package/dist/lib/cjs/obsidian/components/setting-components/password-component.cjs +1 -1
  89. package/dist/lib/cjs/obsidian/components/setting-components/password-component.d.cts +1 -1
  90. package/dist/lib/cjs/obsidian/components/setting-components/setting-component-wrapper.cjs +1 -1
  91. package/dist/lib/cjs/obsidian/components/setting-components/setting-component-wrapper.d.cts +1 -1
  92. package/dist/lib/cjs/obsidian/components/setting-components/telephone-component.cjs +1 -1
  93. package/dist/lib/cjs/obsidian/components/setting-components/telephone-component.d.cts +1 -1
  94. package/dist/lib/cjs/obsidian/components/setting-components/text-based-component.cjs +1 -1
  95. package/dist/lib/cjs/obsidian/components/setting-components/text-based-component.d.cts +1 -1
  96. package/dist/lib/cjs/obsidian/components/setting-components/time-component.cjs +1 -1
  97. package/dist/lib/cjs/obsidian/components/setting-components/time-component.d.cts +1 -1
  98. package/dist/lib/cjs/obsidian/components/setting-components/tri-state-checkbox-component.cjs +1 -1
  99. package/dist/lib/cjs/obsidian/components/setting-components/tri-state-checkbox-component.d.cts +1 -1
  100. package/dist/lib/cjs/obsidian/components/setting-components/typed-dropdown-component.cjs +1 -1
  101. package/dist/lib/cjs/obsidian/components/setting-components/typed-dropdown-component.d.cts +1 -1
  102. package/dist/lib/cjs/obsidian/components/setting-components/typed-multiple-dropdown-component.cjs +1 -1
  103. package/dist/lib/cjs/obsidian/components/setting-components/typed-multiple-dropdown-component.d.cts +1 -1
  104. package/dist/lib/cjs/obsidian/components/setting-components/typed-range-text-component.cjs +1 -1
  105. package/dist/lib/cjs/obsidian/components/setting-components/typed-range-text-component.d.cts +1 -1
  106. package/dist/lib/cjs/obsidian/components/setting-components/typed-text-component.cjs +1 -1
  107. package/dist/lib/cjs/obsidian/components/setting-components/typed-text-component.d.cts +1 -1
  108. package/dist/lib/cjs/obsidian/components/setting-components/url-component.cjs +1 -1
  109. package/dist/lib/cjs/obsidian/components/setting-components/url-component.d.cts +1 -1
  110. package/dist/lib/cjs/obsidian/components/setting-components/validator-component.cjs +1 -1
  111. package/dist/lib/cjs/obsidian/components/setting-components/validator-component.d.cts +1 -1
  112. package/dist/lib/cjs/obsidian/components/setting-components/value-component-with-change-tracking.cjs +1 -1
  113. package/dist/lib/cjs/obsidian/components/setting-components/value-component-with-change-tracking.d.cts +1 -1
  114. package/dist/lib/cjs/obsidian/components/setting-components/week-component.cjs +1 -1
  115. package/dist/lib/cjs/obsidian/components/setting-components/week-component.d.cts +1 -1
  116. package/dist/lib/cjs/obsidian/constructors/getDomEventsHandlersConstructor.cjs +1 -1
  117. package/dist/lib/cjs/obsidian/constructors/getDomEventsHandlersConstructor.d.cts +1 -1
  118. package/dist/lib/cjs/obsidian/dataview-link.cjs +1 -1
  119. package/dist/lib/cjs/obsidian/dataview-link.d.cts +1 -1
  120. package/dist/lib/cjs/obsidian/dataview.cjs +1 -1
  121. package/dist/lib/cjs/obsidian/dataview.d.cts +1 -1
  122. package/dist/lib/cjs/obsidian/editor.cjs +1 -1
  123. package/dist/lib/cjs/obsidian/editor.d.cts +1 -1
  124. package/dist/lib/cjs/obsidian/file-change.cjs +4 -4
  125. package/dist/lib/cjs/obsidian/file-change.d.cts +4 -4
  126. package/dist/lib/cjs/obsidian/file-manager.cjs +2 -2
  127. package/dist/lib/cjs/obsidian/file-manager.d.cts +1 -1
  128. package/dist/lib/cjs/obsidian/file-system.cjs +1 -1
  129. package/dist/lib/cjs/obsidian/file-system.d.cts +1 -1
  130. package/dist/lib/cjs/obsidian/frontmatter-link-cache-with-offsets.cjs +1 -1
  131. package/dist/lib/cjs/obsidian/frontmatter-link-cache-with-offsets.d.cts +1 -1
  132. package/dist/lib/cjs/obsidian/frontmatter.cjs +1 -1
  133. package/dist/lib/cjs/obsidian/frontmatter.d.cts +2 -2
  134. package/dist/lib/cjs/obsidian/i18n/custom-type-options-base.cjs +1 -1
  135. package/dist/lib/cjs/obsidian/i18n/custom-type-options-base.d.cts +1 -1
  136. package/dist/lib/cjs/obsidian/i18n/default-translations-base.cjs +1 -1
  137. package/dist/lib/cjs/obsidian/i18n/default-translations-base.d.cts +1 -1
  138. package/dist/lib/cjs/obsidian/i18n/i18n.cjs +1 -1
  139. package/dist/lib/cjs/obsidian/i18n/i18n.d.cts +1 -1
  140. package/dist/lib/cjs/obsidian/i18n/locales/en.cjs +1 -1
  141. package/dist/lib/cjs/obsidian/i18n/locales/en.d.cts +1 -1
  142. package/dist/lib/cjs/obsidian/i18n/locales/translations-map.cjs +1 -1
  143. package/dist/lib/cjs/obsidian/i18n/locales/translations-map.d.cts +1 -1
  144. package/dist/lib/cjs/obsidian/is-in-obsidian.cjs +1 -1
  145. package/dist/lib/cjs/obsidian/is-in-obsidian.d.cts +1 -1
  146. package/dist/lib/cjs/obsidian/link.cjs +16 -12
  147. package/dist/lib/cjs/obsidian/link.d.cts +1 -1
  148. package/dist/lib/cjs/obsidian/logger.cjs +1 -1
  149. package/dist/lib/cjs/obsidian/logger.d.cts +1 -1
  150. package/dist/lib/cjs/obsidian/loop.cjs +1 -1
  151. package/dist/lib/cjs/obsidian/loop.d.cts +1 -1
  152. package/dist/lib/cjs/obsidian/markdown-code-block-processor.cjs +5 -5
  153. package/dist/lib/cjs/obsidian/markdown-code-block-processor.d.cts +3 -2
  154. package/dist/lib/cjs/obsidian/markdown-view.cjs +1 -1
  155. package/dist/lib/cjs/obsidian/markdown-view.d.cts +1 -1
  156. package/dist/lib/cjs/obsidian/markdown.cjs +1 -1
  157. package/dist/lib/cjs/obsidian/markdown.d.cts +1 -1
  158. package/dist/lib/cjs/obsidian/metadata-cache.cjs +1 -1
  159. package/dist/lib/cjs/obsidian/metadata-cache.d.cts +1 -1
  160. package/dist/lib/cjs/obsidian/modals/alert.cjs +1 -1
  161. package/dist/lib/cjs/obsidian/modals/alert.d.cts +1 -1
  162. package/dist/lib/cjs/obsidian/modals/confirm.cjs +1 -1
  163. package/dist/lib/cjs/obsidian/modals/confirm.d.cts +1 -1
  164. package/dist/lib/cjs/obsidian/modals/modal-base.cjs +1 -1
  165. package/dist/lib/cjs/obsidian/modals/modal-base.d.cts +1 -1
  166. package/dist/lib/cjs/obsidian/modals/prompt.cjs +1 -1
  167. package/dist/lib/cjs/obsidian/modals/prompt.d.cts +1 -1
  168. package/dist/lib/cjs/obsidian/modals/select-item.cjs +1 -1
  169. package/dist/lib/cjs/obsidian/modals/select-item.d.cts +1 -1
  170. package/dist/lib/cjs/obsidian/monkey-around.cjs +1 -1
  171. package/dist/lib/cjs/obsidian/monkey-around.d.cts +1 -1
  172. package/dist/lib/cjs/obsidian/obsidian-settings.cjs +1 -1
  173. package/dist/lib/cjs/obsidian/obsidian-settings.d.cts +1 -1
  174. package/dist/lib/cjs/obsidian/pdf.cjs +1 -1
  175. package/dist/lib/cjs/obsidian/pdf.d.cts +1 -1
  176. package/dist/lib/cjs/obsidian/plugin/obsidian-plugin-repo-paths.cjs +1 -1
  177. package/dist/lib/cjs/obsidian/plugin/obsidian-plugin-repo-paths.d.cts +1 -1
  178. package/dist/lib/cjs/obsidian/plugin/path-settings.cjs +1 -1
  179. package/dist/lib/cjs/obsidian/plugin/path-settings.d.cts +1 -1
  180. package/dist/lib/cjs/obsidian/plugin/plugin-base.cjs +1 -1
  181. package/dist/lib/cjs/obsidian/plugin/plugin-base.d.cts +1 -1
  182. package/dist/lib/cjs/obsidian/plugin/plugin-context.cjs +1 -1
  183. package/dist/lib/cjs/obsidian/plugin/plugin-context.d.cts +1 -1
  184. package/dist/lib/cjs/obsidian/plugin/plugin-id.cjs +1 -1
  185. package/dist/lib/cjs/obsidian/plugin/plugin-id.d.cts +1 -1
  186. package/dist/lib/cjs/obsidian/plugin/plugin-settings-manager-base.cjs +1 -1
  187. package/dist/lib/cjs/obsidian/plugin/plugin-settings-manager-base.d.cts +1 -1
  188. package/dist/lib/cjs/obsidian/plugin/plugin-settings-tab-base.cjs +1 -1
  189. package/dist/lib/cjs/obsidian/plugin/plugin-settings-tab-base.d.cts +1 -1
  190. package/dist/lib/cjs/obsidian/plugin/plugin-settings-wrapper.cjs +1 -1
  191. package/dist/lib/cjs/obsidian/plugin/plugin-settings-wrapper.d.cts +1 -1
  192. package/dist/lib/cjs/obsidian/plugin/plugin-types-base.cjs +1 -1
  193. package/dist/lib/cjs/obsidian/plugin/plugin-types-base.d.cts +1 -1
  194. package/dist/lib/cjs/obsidian/plugin/plugin.cjs +1 -1
  195. package/dist/lib/cjs/obsidian/plugin/plugin.d.cts +1 -1
  196. package/dist/lib/cjs/obsidian/queue.cjs +1 -1
  197. package/dist/lib/cjs/obsidian/queue.d.cts +1 -1
  198. package/dist/lib/cjs/obsidian/react/app-context.cjs +1 -1
  199. package/dist/lib/cjs/obsidian/react/app-context.d.cts +1 -1
  200. package/dist/lib/cjs/obsidian/reference.cjs +1 -1
  201. package/dist/lib/cjs/obsidian/reference.d.cts +1 -1
  202. package/dist/lib/cjs/obsidian/rename-delete-handler.cjs +1 -1
  203. package/dist/lib/cjs/obsidian/rename-delete-handler.d.cts +1 -1
  204. package/dist/lib/cjs/obsidian/resource-url.cjs +1 -1
  205. package/dist/lib/cjs/obsidian/resource-url.d.cts +1 -1
  206. package/dist/lib/cjs/obsidian/setting-ex.cjs +1 -1
  207. package/dist/lib/cjs/obsidian/setting-ex.d.cts +1 -1
  208. package/dist/lib/cjs/obsidian/setting-group-ex.cjs +1 -1
  209. package/dist/lib/cjs/obsidian/setting-group-ex.d.cts +1 -1
  210. package/dist/lib/cjs/obsidian/validation.cjs +1 -1
  211. package/dist/lib/cjs/obsidian/validation.d.cts +1 -1
  212. package/dist/lib/cjs/obsidian/vault-delete.cjs +1 -1
  213. package/dist/lib/cjs/obsidian/vault-delete.d.cts +1 -1
  214. package/dist/lib/cjs/obsidian/vault.cjs +2 -2
  215. package/dist/lib/cjs/obsidian/vault.d.cts +8 -2
  216. package/dist/lib/cjs/obsidian/workspace.cjs +1 -1
  217. package/dist/lib/cjs/obsidian/workspace.d.cts +1 -1
  218. package/dist/lib/cjs/path.cjs +1 -1
  219. package/dist/lib/cjs/path.d.cts +1 -1
  220. package/dist/lib/cjs/reg-exp.cjs +1 -1
  221. package/dist/lib/cjs/reg-exp.d.cts +1 -1
  222. package/dist/lib/cjs/script-utils/build.cjs +1 -1
  223. package/dist/lib/cjs/script-utils/build.d.cts +1 -1
  224. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/change-extension-plugin.cjs +3 -3
  225. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/change-extension-plugin.d.cts +1 -1
  226. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.cjs +1 -1
  227. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.d.cts +1 -1
  228. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/custom-esbuild-options-plugin.cjs +1 -1
  229. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/custom-esbuild-options-plugin.d.cts +1 -1
  230. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/dependency.cjs +1 -1
  231. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/dependency.d.cts +1 -1
  232. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/fix-esm-plugin.cjs +1 -1
  233. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/fix-esm-plugin.d.cts +1 -1
  234. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/fix-source-maps-plugin.cjs +2 -2
  235. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/fix-source-maps-plugin.d.cts +1 -1
  236. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.cjs +1 -1
  237. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.d.cts +1 -1
  238. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/preprocess-plugin.cjs +1 -1
  239. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/preprocess-plugin.d.cts +1 -1
  240. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/rename-css-plugin.cjs +1 -1
  241. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/rename-css-plugin.d.cts +1 -1
  242. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/svelte-wrapper-plugin.cjs +1 -1
  243. package/dist/lib/cjs/script-utils/bundlers/esbuild-impl/svelte-wrapper-plugin.d.cts +1 -1
  244. package/dist/lib/cjs/script-utils/bundlers/esbuild.cjs +1 -1
  245. package/dist/lib/cjs/script-utils/bundlers/esbuild.d.cts +1 -1
  246. package/dist/lib/cjs/script-utils/cli-utils.cjs +1 -1
  247. package/dist/lib/cjs/script-utils/cli-utils.d.cts +1 -1
  248. package/dist/lib/cjs/script-utils/code-generator.cjs +1 -1
  249. package/dist/lib/cjs/script-utils/code-generator.d.cts +1 -1
  250. package/dist/lib/cjs/script-utils/commitlint-config.cjs +1 -1
  251. package/dist/lib/cjs/script-utils/commitlint-config.d.cts +1 -1
  252. package/dist/lib/cjs/script-utils/exec.cjs +1 -1
  253. package/dist/lib/cjs/script-utils/exec.d.cts +1 -1
  254. package/dist/lib/cjs/script-utils/formatters/dprint.cjs +1 -1
  255. package/dist/lib/cjs/script-utils/formatters/dprint.d.cts +1 -1
  256. package/dist/lib/cjs/script-utils/fs.cjs +1 -1
  257. package/dist/lib/cjs/script-utils/fs.d.cts +1 -1
  258. package/dist/lib/cjs/script-utils/json.cjs +1 -1
  259. package/dist/lib/cjs/script-utils/json.d.cts +1 -1
  260. package/dist/lib/cjs/script-utils/linters/cspell.cjs +1 -1
  261. package/dist/lib/cjs/script-utils/linters/cspell.d.cts +1 -1
  262. package/dist/lib/cjs/script-utils/linters/eslint-config.cjs +16 -12
  263. package/dist/lib/cjs/script-utils/linters/eslint-config.d.cts +1 -1
  264. package/dist/lib/cjs/script-utils/linters/eslint-rules/no-async-callback-to-unsafe-return.cjs +1 -1
  265. package/dist/lib/cjs/script-utils/linters/eslint-rules/no-used-underscore-variables.cjs +1 -1
  266. package/dist/lib/cjs/script-utils/linters/eslint-rules/no-used-underscore-variables.d.cts +1 -1
  267. package/dist/lib/cjs/script-utils/linters/eslint-rules/obsidian-dev-utils-plugin.cjs +1 -1
  268. package/dist/lib/cjs/script-utils/linters/eslint-rules/obsidian-dev-utils-plugin.d.cts +1 -1
  269. package/dist/lib/cjs/script-utils/linters/eslint-rules/rule-tester-helper.cjs +1 -1
  270. package/dist/lib/cjs/script-utils/linters/eslint-rules/rule-tester-helper.d.cts +1 -1
  271. package/dist/lib/cjs/script-utils/linters/eslint-types/@types/@eslint-community__eslint-plugin-eslint-comments__configs.d.cts +3 -1
  272. package/dist/lib/cjs/script-utils/linters/eslint-types/@types/eslint-plugin-verify-tsdoc.d.cts +3 -1
  273. package/dist/lib/cjs/script-utils/linters/eslint.cjs +1 -1
  274. package/dist/lib/cjs/script-utils/linters/eslint.d.cts +1 -1
  275. package/dist/lib/cjs/script-utils/linters/markdownlint-cli2-config.cjs +1 -1
  276. package/dist/lib/cjs/script-utils/linters/markdownlint-cli2-config.d.cts +1 -1
  277. package/dist/lib/cjs/script-utils/linters/markdownlint-types/@types/markdownlint-cli2-config-schema.d.cts +1 -1
  278. package/dist/lib/cjs/script-utils/linters/markdownlint.cjs +1 -1
  279. package/dist/lib/cjs/script-utils/linters/markdownlint.d.cts +1 -1
  280. package/dist/lib/cjs/script-utils/nano-staged-config.cjs +1 -1
  281. package/dist/lib/cjs/script-utils/nano-staged-config.d.cts +1 -1
  282. package/dist/lib/cjs/script-utils/npm-publish.cjs +1 -1
  283. package/dist/lib/cjs/script-utils/npm-publish.d.cts +1 -1
  284. package/dist/lib/cjs/script-utils/npm-run.cjs +1 -1
  285. package/dist/lib/cjs/script-utils/npm-run.d.cts +1 -1
  286. package/dist/lib/cjs/script-utils/npm.cjs +1 -1
  287. package/dist/lib/cjs/script-utils/npm.d.cts +1 -1
  288. package/dist/lib/cjs/script-utils/obsidian-dev-utils-repo-paths.cjs +1 -1
  289. package/dist/lib/cjs/script-utils/obsidian-dev-utils-repo-paths.d.cts +1 -1
  290. package/dist/lib/cjs/script-utils/root.cjs +1 -1
  291. package/dist/lib/cjs/script-utils/root.d.cts +1 -1
  292. package/dist/lib/cjs/script-utils/test-runners/vitest.cjs +1 -1
  293. package/dist/lib/cjs/script-utils/test-runners/vitest.d.cts +1 -1
  294. package/dist/lib/cjs/script-utils/version.cjs +1 -1
  295. package/dist/lib/cjs/script-utils/version.d.cts +1 -1
  296. package/dist/lib/cjs/strict-proxy.cjs +178 -0
  297. package/dist/lib/cjs/strict-proxy.d.cts +23 -0
  298. package/dist/lib/cjs/string.cjs +14 -14
  299. package/dist/lib/cjs/string.d.cts +9 -5
  300. package/dist/lib/cjs/transformers/date-transformer.cjs +1 -1
  301. package/dist/lib/cjs/transformers/date-transformer.d.cts +1 -1
  302. package/dist/lib/cjs/transformers/duration-transformer.cjs +1 -1
  303. package/dist/lib/cjs/transformers/duration-transformer.d.cts +1 -1
  304. package/dist/lib/cjs/transformers/group-transformer.cjs +1 -1
  305. package/dist/lib/cjs/transformers/group-transformer.d.cts +1 -1
  306. package/dist/lib/cjs/transformers/map-transformer.cjs +1 -1
  307. package/dist/lib/cjs/transformers/map-transformer.d.cts +1 -1
  308. package/dist/lib/cjs/transformers/set-transformer.cjs +1 -1
  309. package/dist/lib/cjs/transformers/set-transformer.d.cts +1 -1
  310. package/dist/lib/cjs/transformers/skip-private-property-transformer.cjs +1 -1
  311. package/dist/lib/cjs/transformers/skip-private-property-transformer.d.cts +1 -1
  312. package/dist/lib/cjs/transformers/transformer.cjs +1 -1
  313. package/dist/lib/cjs/transformers/transformer.d.cts +1 -1
  314. package/dist/lib/cjs/transformers/two-way-map-transformer.cjs +1 -1
  315. package/dist/lib/cjs/transformers/two-way-map-transformer.d.cts +1 -1
  316. package/dist/lib/cjs/transformers/typed-transformer.cjs +1 -1
  317. package/dist/lib/cjs/transformers/typed-transformer.d.cts +1 -1
  318. package/dist/lib/cjs/two-way-map.cjs +1 -1
  319. package/dist/lib/cjs/two-way-map.d.cts +1 -1
  320. package/dist/lib/cjs/type-guards.cjs +1 -1
  321. package/dist/lib/cjs/type-guards.d.cts +4 -4
  322. package/dist/lib/cjs/type.cjs +1 -1
  323. package/dist/lib/cjs/type.d.cts +1 -1
  324. package/dist/lib/cjs/url.cjs +1 -1
  325. package/dist/lib/cjs/url.d.cts +1 -1
  326. package/dist/lib/cjs/value-provider.cjs +5 -5
  327. package/dist/lib/cjs/value-provider.d.cts +7 -4
  328. package/dist/lib/esm/@types/debug.d.mts +4 -1
  329. package/dist/lib/esm/abort-controller.d.mts +1 -1
  330. package/dist/lib/esm/abort-controller.mjs +1 -1
  331. package/dist/lib/esm/array.d.mts +1 -1
  332. package/dist/lib/esm/array.mjs +1 -1
  333. package/dist/lib/esm/async-events.d.mts +1 -1
  334. package/dist/lib/esm/async-events.mjs +1 -1
  335. package/dist/lib/esm/async.d.mts +1 -1
  336. package/dist/lib/esm/async.mjs +1 -1
  337. package/dist/lib/esm/blob.d.mts +1 -1
  338. package/dist/lib/esm/blob.mjs +1 -1
  339. package/dist/lib/esm/codemirror/state-field-spec.d.mts +1 -1
  340. package/dist/lib/esm/css-class.d.mts +1 -1
  341. package/dist/lib/esm/css-class.mjs +1 -1
  342. package/dist/lib/esm/debug-controller.d.mts +1 -1
  343. package/dist/lib/esm/debug.d.mts +1 -1
  344. package/dist/lib/esm/debug.mjs +1 -1
  345. package/dist/lib/esm/enum.d.mts +1 -1
  346. package/dist/lib/esm/enum.mjs +1 -1
  347. package/dist/lib/esm/error.d.mts +1 -1
  348. package/dist/lib/esm/error.mjs +1 -1
  349. package/dist/lib/esm/function.d.mts +1 -1
  350. package/dist/lib/esm/function.mjs +1 -1
  351. package/dist/lib/esm/html-element.d.mts +1 -1
  352. package/dist/lib/esm/html-element.mjs +1 -1
  353. package/dist/lib/esm/index.d.mts +1 -0
  354. package/dist/lib/esm/index.mjs +3 -1
  355. package/dist/lib/esm/library.d.mts +1 -1
  356. package/dist/lib/esm/library.mjs +2 -2
  357. package/dist/lib/esm/object-utils.d.mts +1 -1
  358. package/dist/lib/esm/object-utils.mjs +2 -2
  359. package/dist/lib/esm/obsidian/@types/i18next.d.mts +1 -1
  360. package/dist/lib/esm/obsidian/app.d.mts +1 -1
  361. package/dist/lib/esm/obsidian/app.mjs +1 -1
  362. package/dist/lib/esm/obsidian/async-with-notice.d.mts +1 -1
  363. package/dist/lib/esm/obsidian/async-with-notice.mjs +1 -1
  364. package/dist/lib/esm/obsidian/attachment-path.d.mts +1 -1
  365. package/dist/lib/esm/obsidian/attachment-path.mjs +1 -1
  366. package/dist/lib/esm/obsidian/backlink.d.mts +1 -1
  367. package/dist/lib/esm/obsidian/backlink.mjs +1 -1
  368. package/dist/lib/esm/obsidian/callout.d.mts +1 -1
  369. package/dist/lib/esm/obsidian/callout.mjs +1 -1
  370. package/dist/lib/esm/obsidian/code-block-markdown-information.d.mts +1 -1
  371. package/dist/lib/esm/obsidian/commands/abstract-file-command-base.d.mts +1 -1
  372. package/dist/lib/esm/obsidian/commands/abstract-file-command-base.mjs +1 -1
  373. package/dist/lib/esm/obsidian/commands/command-base.d.mts +1 -1
  374. package/dist/lib/esm/obsidian/commands/command-base.mjs +1 -1
  375. package/dist/lib/esm/obsidian/commands/editor-command-base.d.mts +1 -1
  376. package/dist/lib/esm/obsidian/commands/editor-command-base.mjs +1 -1
  377. package/dist/lib/esm/obsidian/commands/file-command-base.d.mts +1 -1
  378. package/dist/lib/esm/obsidian/commands/file-command-base.mjs +1 -1
  379. package/dist/lib/esm/obsidian/commands/folder-command-base.d.mts +1 -1
  380. package/dist/lib/esm/obsidian/commands/folder-command-base.mjs +1 -1
  381. package/dist/lib/esm/obsidian/commands/non-editor-command-base.d.mts +1 -1
  382. package/dist/lib/esm/obsidian/commands/non-editor-command-base.mjs +1 -1
  383. package/dist/lib/esm/obsidian/components/all-windows-event-handler.d.mts +1 -1
  384. package/dist/lib/esm/obsidian/components/all-windows-event-handler.mjs +1 -1
  385. package/dist/lib/esm/obsidian/components/async-events-component.d.mts +1 -1
  386. package/dist/lib/esm/obsidian/components/async-events-component.mjs +1 -1
  387. package/dist/lib/esm/obsidian/components/setting-components/checkbox-component.d.mts +1 -1
  388. package/dist/lib/esm/obsidian/components/setting-components/checkbox-component.mjs +1 -1
  389. package/dist/lib/esm/obsidian/components/setting-components/code-highlighter-component.d.mts +1 -1
  390. package/dist/lib/esm/obsidian/components/setting-components/code-highlighter-component.mjs +1 -1
  391. package/dist/lib/esm/obsidian/components/setting-components/date-component.d.mts +1 -1
  392. package/dist/lib/esm/obsidian/components/setting-components/date-component.mjs +1 -1
  393. package/dist/lib/esm/obsidian/components/setting-components/date-time-component.d.mts +1 -1
  394. package/dist/lib/esm/obsidian/components/setting-components/date-time-component.mjs +1 -1
  395. package/dist/lib/esm/obsidian/components/setting-components/email-component.d.mts +1 -1
  396. package/dist/lib/esm/obsidian/components/setting-components/email-component.mjs +1 -1
  397. package/dist/lib/esm/obsidian/components/setting-components/file-component.d.mts +1 -1
  398. package/dist/lib/esm/obsidian/components/setting-components/file-component.mjs +1 -1
  399. package/dist/lib/esm/obsidian/components/setting-components/month-component.d.mts +1 -1
  400. package/dist/lib/esm/obsidian/components/setting-components/month-component.mjs +1 -1
  401. package/dist/lib/esm/obsidian/components/setting-components/multiple-dropdown-component.d.mts +1 -1
  402. package/dist/lib/esm/obsidian/components/setting-components/multiple-dropdown-component.mjs +1 -1
  403. package/dist/lib/esm/obsidian/components/setting-components/multiple-email-component.d.mts +1 -1
  404. package/dist/lib/esm/obsidian/components/setting-components/multiple-email-component.mjs +1 -1
  405. package/dist/lib/esm/obsidian/components/setting-components/multiple-file-component.d.mts +1 -1
  406. package/dist/lib/esm/obsidian/components/setting-components/multiple-file-component.mjs +1 -1
  407. package/dist/lib/esm/obsidian/components/setting-components/multiple-text-component.d.mts +1 -1
  408. package/dist/lib/esm/obsidian/components/setting-components/multiple-text-component.mjs +1 -1
  409. package/dist/lib/esm/obsidian/components/setting-components/number-component.d.mts +1 -1
  410. package/dist/lib/esm/obsidian/components/setting-components/number-component.mjs +1 -1
  411. package/dist/lib/esm/obsidian/components/setting-components/password-component.d.mts +1 -1
  412. package/dist/lib/esm/obsidian/components/setting-components/password-component.mjs +1 -1
  413. package/dist/lib/esm/obsidian/components/setting-components/setting-component-wrapper.d.mts +1 -1
  414. package/dist/lib/esm/obsidian/components/setting-components/setting-component-wrapper.mjs +1 -1
  415. package/dist/lib/esm/obsidian/components/setting-components/telephone-component.d.mts +1 -1
  416. package/dist/lib/esm/obsidian/components/setting-components/telephone-component.mjs +1 -1
  417. package/dist/lib/esm/obsidian/components/setting-components/text-based-component.d.mts +1 -1
  418. package/dist/lib/esm/obsidian/components/setting-components/text-based-component.mjs +1 -1
  419. package/dist/lib/esm/obsidian/components/setting-components/time-component.d.mts +1 -1
  420. package/dist/lib/esm/obsidian/components/setting-components/time-component.mjs +1 -1
  421. package/dist/lib/esm/obsidian/components/setting-components/tri-state-checkbox-component.d.mts +1 -1
  422. package/dist/lib/esm/obsidian/components/setting-components/tri-state-checkbox-component.mjs +1 -1
  423. package/dist/lib/esm/obsidian/components/setting-components/typed-dropdown-component.d.mts +1 -1
  424. package/dist/lib/esm/obsidian/components/setting-components/typed-dropdown-component.mjs +1 -1
  425. package/dist/lib/esm/obsidian/components/setting-components/typed-multiple-dropdown-component.d.mts +1 -1
  426. package/dist/lib/esm/obsidian/components/setting-components/typed-multiple-dropdown-component.mjs +1 -1
  427. package/dist/lib/esm/obsidian/components/setting-components/typed-range-text-component.d.mts +1 -1
  428. package/dist/lib/esm/obsidian/components/setting-components/typed-range-text-component.mjs +1 -1
  429. package/dist/lib/esm/obsidian/components/setting-components/typed-text-component.d.mts +1 -1
  430. package/dist/lib/esm/obsidian/components/setting-components/typed-text-component.mjs +1 -1
  431. package/dist/lib/esm/obsidian/components/setting-components/url-component.d.mts +1 -1
  432. package/dist/lib/esm/obsidian/components/setting-components/url-component.mjs +1 -1
  433. package/dist/lib/esm/obsidian/components/setting-components/validator-component.d.mts +1 -1
  434. package/dist/lib/esm/obsidian/components/setting-components/validator-component.mjs +1 -1
  435. package/dist/lib/esm/obsidian/components/setting-components/value-component-with-change-tracking.d.mts +1 -1
  436. package/dist/lib/esm/obsidian/components/setting-components/week-component.d.mts +1 -1
  437. package/dist/lib/esm/obsidian/components/setting-components/week-component.mjs +1 -1
  438. package/dist/lib/esm/obsidian/constructors/getDomEventsHandlersConstructor.d.mts +1 -1
  439. package/dist/lib/esm/obsidian/constructors/getDomEventsHandlersConstructor.mjs +1 -1
  440. package/dist/lib/esm/obsidian/dataview-link.d.mts +1 -1
  441. package/dist/lib/esm/obsidian/dataview-link.mjs +1 -1
  442. package/dist/lib/esm/obsidian/dataview.d.mts +1 -1
  443. package/dist/lib/esm/obsidian/dataview.mjs +1 -1
  444. package/dist/lib/esm/obsidian/editor.d.mts +1 -1
  445. package/dist/lib/esm/obsidian/editor.mjs +1 -1
  446. package/dist/lib/esm/obsidian/file-change.d.mts +4 -4
  447. package/dist/lib/esm/obsidian/file-change.mjs +4 -4
  448. package/dist/lib/esm/obsidian/file-manager.d.mts +1 -1
  449. package/dist/lib/esm/obsidian/file-manager.mjs +2 -2
  450. package/dist/lib/esm/obsidian/file-system.d.mts +1 -1
  451. package/dist/lib/esm/obsidian/file-system.mjs +1 -1
  452. package/dist/lib/esm/obsidian/frontmatter-link-cache-with-offsets.d.mts +1 -1
  453. package/dist/lib/esm/obsidian/frontmatter-link-cache-with-offsets.mjs +1 -1
  454. package/dist/lib/esm/obsidian/frontmatter.d.mts +2 -2
  455. package/dist/lib/esm/obsidian/frontmatter.mjs +1 -1
  456. package/dist/lib/esm/obsidian/i18n/custom-type-options-base.d.mts +1 -1
  457. package/dist/lib/esm/obsidian/i18n/custom-type-options-base.mjs +1 -1
  458. package/dist/lib/esm/obsidian/i18n/default-translations-base.d.mts +1 -1
  459. package/dist/lib/esm/obsidian/i18n/default-translations-base.mjs +1 -1
  460. package/dist/lib/esm/obsidian/i18n/i18n.d.mts +1 -1
  461. package/dist/lib/esm/obsidian/i18n/i18n.mjs +1 -1
  462. package/dist/lib/esm/obsidian/i18n/locales/en.d.mts +1 -1
  463. package/dist/lib/esm/obsidian/i18n/locales/en.mjs +1 -1
  464. package/dist/lib/esm/obsidian/i18n/locales/translations-map.d.mts +1 -1
  465. package/dist/lib/esm/obsidian/i18n/locales/translations-map.mjs +1 -1
  466. package/dist/lib/esm/obsidian/is-in-obsidian.d.mts +1 -1
  467. package/dist/lib/esm/obsidian/is-in-obsidian.mjs +1 -1
  468. package/dist/lib/esm/obsidian/link.d.mts +1 -1
  469. package/dist/lib/esm/obsidian/link.mjs +16 -12
  470. package/dist/lib/esm/obsidian/logger.d.mts +1 -1
  471. package/dist/lib/esm/obsidian/logger.mjs +1 -1
  472. package/dist/lib/esm/obsidian/loop.d.mts +1 -1
  473. package/dist/lib/esm/obsidian/loop.mjs +1 -1
  474. package/dist/lib/esm/obsidian/markdown-code-block-processor.d.mts +3 -2
  475. package/dist/lib/esm/obsidian/markdown-code-block-processor.mjs +5 -5
  476. package/dist/lib/esm/obsidian/markdown-view.d.mts +1 -1
  477. package/dist/lib/esm/obsidian/markdown-view.mjs +1 -1
  478. package/dist/lib/esm/obsidian/markdown.d.mts +1 -1
  479. package/dist/lib/esm/obsidian/markdown.mjs +1 -1
  480. package/dist/lib/esm/obsidian/metadata-cache.d.mts +1 -1
  481. package/dist/lib/esm/obsidian/metadata-cache.mjs +1 -1
  482. package/dist/lib/esm/obsidian/modals/alert.d.mts +1 -1
  483. package/dist/lib/esm/obsidian/modals/alert.mjs +1 -1
  484. package/dist/lib/esm/obsidian/modals/confirm.d.mts +1 -1
  485. package/dist/lib/esm/obsidian/modals/confirm.mjs +1 -1
  486. package/dist/lib/esm/obsidian/modals/modal-base.d.mts +1 -1
  487. package/dist/lib/esm/obsidian/modals/modal-base.mjs +1 -1
  488. package/dist/lib/esm/obsidian/modals/prompt.d.mts +1 -1
  489. package/dist/lib/esm/obsidian/modals/prompt.mjs +1 -1
  490. package/dist/lib/esm/obsidian/modals/select-item.d.mts +1 -1
  491. package/dist/lib/esm/obsidian/modals/select-item.mjs +1 -1
  492. package/dist/lib/esm/obsidian/monkey-around.d.mts +1 -1
  493. package/dist/lib/esm/obsidian/monkey-around.mjs +1 -1
  494. package/dist/lib/esm/obsidian/obsidian-settings.d.mts +1 -1
  495. package/dist/lib/esm/obsidian/obsidian-settings.mjs +1 -1
  496. package/dist/lib/esm/obsidian/pdf.d.mts +1 -1
  497. package/dist/lib/esm/obsidian/pdf.mjs +1 -1
  498. package/dist/lib/esm/obsidian/plugin/obsidian-plugin-repo-paths.d.mts +1 -1
  499. package/dist/lib/esm/obsidian/plugin/obsidian-plugin-repo-paths.mjs +1 -1
  500. package/dist/lib/esm/obsidian/plugin/path-settings.d.mts +1 -1
  501. package/dist/lib/esm/obsidian/plugin/path-settings.mjs +1 -1
  502. package/dist/lib/esm/obsidian/plugin/plugin-base.d.mts +1 -1
  503. package/dist/lib/esm/obsidian/plugin/plugin-base.mjs +1 -1
  504. package/dist/lib/esm/obsidian/plugin/plugin-context.d.mts +1 -1
  505. package/dist/lib/esm/obsidian/plugin/plugin-context.mjs +1 -1
  506. package/dist/lib/esm/obsidian/plugin/plugin-id.d.mts +1 -1
  507. package/dist/lib/esm/obsidian/plugin/plugin-id.mjs +1 -1
  508. package/dist/lib/esm/obsidian/plugin/plugin-settings-manager-base.d.mts +1 -1
  509. package/dist/lib/esm/obsidian/plugin/plugin-settings-manager-base.mjs +1 -1
  510. package/dist/lib/esm/obsidian/plugin/plugin-settings-tab-base.d.mts +1 -1
  511. package/dist/lib/esm/obsidian/plugin/plugin-settings-tab-base.mjs +1 -1
  512. package/dist/lib/esm/obsidian/plugin/plugin-settings-wrapper.d.mts +1 -1
  513. package/dist/lib/esm/obsidian/plugin/plugin-types-base.d.mts +1 -1
  514. package/dist/lib/esm/obsidian/plugin/plugin.d.mts +1 -1
  515. package/dist/lib/esm/obsidian/plugin/plugin.mjs +1 -1
  516. package/dist/lib/esm/obsidian/queue.d.mts +1 -1
  517. package/dist/lib/esm/obsidian/queue.mjs +1 -1
  518. package/dist/lib/esm/obsidian/react/app-context.d.mts +1 -1
  519. package/dist/lib/esm/obsidian/react/app-context.mjs +1 -1
  520. package/dist/lib/esm/obsidian/reference.d.mts +1 -1
  521. package/dist/lib/esm/obsidian/reference.mjs +1 -1
  522. package/dist/lib/esm/obsidian/rename-delete-handler.d.mts +1 -1
  523. package/dist/lib/esm/obsidian/rename-delete-handler.mjs +1 -1
  524. package/dist/lib/esm/obsidian/resource-url.d.mts +1 -1
  525. package/dist/lib/esm/obsidian/resource-url.mjs +1 -1
  526. package/dist/lib/esm/obsidian/setting-ex.d.mts +1 -1
  527. package/dist/lib/esm/obsidian/setting-ex.mjs +1 -1
  528. package/dist/lib/esm/obsidian/setting-group-ex.d.mts +1 -1
  529. package/dist/lib/esm/obsidian/setting-group-ex.mjs +1 -1
  530. package/dist/lib/esm/obsidian/validation.d.mts +1 -1
  531. package/dist/lib/esm/obsidian/validation.mjs +1 -1
  532. package/dist/lib/esm/obsidian/vault-delete.d.mts +1 -1
  533. package/dist/lib/esm/obsidian/vault-delete.mjs +1 -1
  534. package/dist/lib/esm/obsidian/vault.d.mts +8 -2
  535. package/dist/lib/esm/obsidian/vault.mjs +2 -2
  536. package/dist/lib/esm/obsidian/workspace.d.mts +1 -1
  537. package/dist/lib/esm/obsidian/workspace.mjs +1 -1
  538. package/dist/lib/esm/path.d.mts +1 -1
  539. package/dist/lib/esm/path.mjs +1 -1
  540. package/dist/lib/esm/reg-exp.d.mts +1 -1
  541. package/dist/lib/esm/reg-exp.mjs +1 -1
  542. package/dist/lib/esm/script-utils/build.d.mts +1 -1
  543. package/dist/lib/esm/script-utils/build.mjs +1 -1
  544. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/change-extension-plugin.d.mts +1 -1
  545. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/change-extension-plugin.mjs +3 -3
  546. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.d.mts +1 -1
  547. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/copy-to-obsidian-plugins-folder-plugin.mjs +1 -1
  548. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/custom-esbuild-options-plugin.d.mts +1 -1
  549. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/custom-esbuild-options-plugin.mjs +1 -1
  550. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/dependency.d.mts +1 -1
  551. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/dependency.mjs +1 -1
  552. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/fix-esm-plugin.d.mts +1 -1
  553. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/fix-esm-plugin.mjs +1 -1
  554. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/fix-source-maps-plugin.d.mts +1 -1
  555. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/fix-source-maps-plugin.mjs +2 -2
  556. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.d.mts +1 -1
  557. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/obsidian-plugin-builder.mjs +1 -1
  558. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/preprocess-plugin.d.mts +1 -1
  559. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/preprocess-plugin.mjs +1 -1
  560. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/rename-css-plugin.d.mts +1 -1
  561. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/rename-css-plugin.mjs +1 -1
  562. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/svelte-wrapper-plugin.d.mts +1 -1
  563. package/dist/lib/esm/script-utils/bundlers/esbuild-impl/svelte-wrapper-plugin.mjs +1 -1
  564. package/dist/lib/esm/script-utils/bundlers/esbuild.d.mts +1 -1
  565. package/dist/lib/esm/script-utils/bundlers/esbuild.mjs +1 -1
  566. package/dist/lib/esm/script-utils/cli-utils.d.mts +1 -1
  567. package/dist/lib/esm/script-utils/cli-utils.mjs +1 -1
  568. package/dist/lib/esm/script-utils/code-generator.d.mts +1 -1
  569. package/dist/lib/esm/script-utils/code-generator.mjs +1 -1
  570. package/dist/lib/esm/script-utils/commitlint-config.d.mts +1 -1
  571. package/dist/lib/esm/script-utils/commitlint-config.mjs +1 -1
  572. package/dist/lib/esm/script-utils/exec.d.mts +1 -1
  573. package/dist/lib/esm/script-utils/exec.mjs +1 -1
  574. package/dist/lib/esm/script-utils/formatters/dprint.d.mts +1 -1
  575. package/dist/lib/esm/script-utils/formatters/dprint.mjs +1 -1
  576. package/dist/lib/esm/script-utils/fs.d.mts +1 -1
  577. package/dist/lib/esm/script-utils/fs.mjs +1 -1
  578. package/dist/lib/esm/script-utils/json.d.mts +1 -1
  579. package/dist/lib/esm/script-utils/json.mjs +1 -1
  580. package/dist/lib/esm/script-utils/linters/cspell.d.mts +1 -1
  581. package/dist/lib/esm/script-utils/linters/cspell.mjs +1 -1
  582. package/dist/lib/esm/script-utils/linters/eslint-config.d.mts +1 -1
  583. package/dist/lib/esm/script-utils/linters/eslint-config.mjs +6 -2
  584. package/dist/lib/esm/script-utils/linters/eslint-rules/no-async-callback-to-unsafe-return.mjs +1 -1
  585. package/dist/lib/esm/script-utils/linters/eslint-rules/no-used-underscore-variables.d.mts +1 -1
  586. package/dist/lib/esm/script-utils/linters/eslint-rules/no-used-underscore-variables.mjs +1 -1
  587. package/dist/lib/esm/script-utils/linters/eslint-rules/obsidian-dev-utils-plugin.d.mts +1 -1
  588. package/dist/lib/esm/script-utils/linters/eslint-rules/obsidian-dev-utils-plugin.mjs +1 -1
  589. package/dist/lib/esm/script-utils/linters/eslint-rules/rule-tester-helper.d.mts +1 -1
  590. package/dist/lib/esm/script-utils/linters/eslint-rules/rule-tester-helper.mjs +1 -1
  591. package/dist/lib/esm/script-utils/linters/eslint-types/@types/@eslint-community__eslint-plugin-eslint-comments__configs.d.mts +3 -1
  592. package/dist/lib/esm/script-utils/linters/eslint-types/@types/eslint-plugin-verify-tsdoc.d.mts +3 -1
  593. package/dist/lib/esm/script-utils/linters/eslint.d.mts +1 -1
  594. package/dist/lib/esm/script-utils/linters/eslint.mjs +1 -1
  595. package/dist/lib/esm/script-utils/linters/markdownlint-cli2-config.d.mts +1 -1
  596. package/dist/lib/esm/script-utils/linters/markdownlint-cli2-config.mjs +1 -1
  597. package/dist/lib/esm/script-utils/linters/markdownlint-types/@types/markdownlint-cli2-config-schema.d.mts +1 -1
  598. package/dist/lib/esm/script-utils/linters/markdownlint.d.mts +1 -1
  599. package/dist/lib/esm/script-utils/linters/markdownlint.mjs +1 -1
  600. package/dist/lib/esm/script-utils/nano-staged-config.d.mts +1 -1
  601. package/dist/lib/esm/script-utils/nano-staged-config.mjs +1 -1
  602. package/dist/lib/esm/script-utils/npm-publish.d.mts +1 -1
  603. package/dist/lib/esm/script-utils/npm-publish.mjs +1 -1
  604. package/dist/lib/esm/script-utils/npm-run.d.mts +1 -1
  605. package/dist/lib/esm/script-utils/npm-run.mjs +1 -1
  606. package/dist/lib/esm/script-utils/npm.d.mts +1 -1
  607. package/dist/lib/esm/script-utils/npm.mjs +1 -1
  608. package/dist/lib/esm/script-utils/obsidian-dev-utils-repo-paths.d.mts +1 -1
  609. package/dist/lib/esm/script-utils/obsidian-dev-utils-repo-paths.mjs +1 -1
  610. package/dist/lib/esm/script-utils/root.d.mts +1 -1
  611. package/dist/lib/esm/script-utils/root.mjs +1 -1
  612. package/dist/lib/esm/script-utils/test-runners/vitest.d.mts +1 -1
  613. package/dist/lib/esm/script-utils/test-runners/vitest.mjs +1 -1
  614. package/dist/lib/esm/script-utils/version.d.mts +1 -1
  615. package/dist/lib/esm/script-utils/version.mjs +1 -1
  616. package/dist/lib/esm/strict-proxy.d.mts +23 -0
  617. package/dist/lib/esm/strict-proxy.mjs +72 -0
  618. package/dist/lib/esm/string.d.mts +9 -5
  619. package/dist/lib/esm/string.mjs +14 -14
  620. package/dist/lib/esm/transformers/date-transformer.d.mts +1 -1
  621. package/dist/lib/esm/transformers/date-transformer.mjs +1 -1
  622. package/dist/lib/esm/transformers/duration-transformer.d.mts +1 -1
  623. package/dist/lib/esm/transformers/duration-transformer.mjs +1 -1
  624. package/dist/lib/esm/transformers/group-transformer.d.mts +1 -1
  625. package/dist/lib/esm/transformers/group-transformer.mjs +1 -1
  626. package/dist/lib/esm/transformers/map-transformer.d.mts +1 -1
  627. package/dist/lib/esm/transformers/map-transformer.mjs +1 -1
  628. package/dist/lib/esm/transformers/set-transformer.d.mts +1 -1
  629. package/dist/lib/esm/transformers/set-transformer.mjs +1 -1
  630. package/dist/lib/esm/transformers/skip-private-property-transformer.d.mts +1 -1
  631. package/dist/lib/esm/transformers/skip-private-property-transformer.mjs +1 -1
  632. package/dist/lib/esm/transformers/transformer.d.mts +1 -1
  633. package/dist/lib/esm/transformers/transformer.mjs +1 -1
  634. package/dist/lib/esm/transformers/two-way-map-transformer.d.mts +1 -1
  635. package/dist/lib/esm/transformers/two-way-map-transformer.mjs +1 -1
  636. package/dist/lib/esm/transformers/typed-transformer.d.mts +1 -1
  637. package/dist/lib/esm/transformers/typed-transformer.mjs +1 -1
  638. package/dist/lib/esm/two-way-map.d.mts +1 -1
  639. package/dist/lib/esm/two-way-map.mjs +1 -1
  640. package/dist/lib/esm/type-guards.d.mts +4 -4
  641. package/dist/lib/esm/type-guards.mjs +1 -1
  642. package/dist/lib/esm/type.d.mts +1 -1
  643. package/dist/lib/esm/type.mjs +1 -1
  644. package/dist/lib/esm/url.d.mts +1 -1
  645. package/dist/lib/esm/url.mjs +1 -1
  646. package/dist/lib/esm/value-provider.d.mts +7 -4
  647. package/dist/lib/esm/value-provider.mjs +5 -5
  648. package/package.json +1 -2
  649. package/dist/lib/cjs/script-utils/linters/eslint-types/@types/eslint-plugin-modules-newlines.d.cts +0 -14
  650. package/dist/lib/esm/script-utils/linters/eslint-types/@types/eslint-plugin-modules-newlines.d.mts +0 -14
  651. package/script-utils/linters/eslint-types/@types/eslint-plugin-modules-newlines/package.json +0 -4
@@ -0,0 +1,72 @@
1
+ /*
2
+ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3
+ if you want to view the source, please visit the github repository of this plugin
4
+ */
5
+
6
+ (function initEsm() {
7
+ if (globalThis.process) {
8
+ return;
9
+ }
10
+
11
+ const browserProcess = {
12
+ browser: true,
13
+ cwd() {
14
+ return '/';
15
+ },
16
+ env: {},
17
+ platform: 'android'
18
+ };
19
+ globalThis.process = browserProcess;
20
+ })();
21
+
22
+ const STRICT_PROXY_MARKER = /* @__PURE__ */ Symbol("strictProxy");
23
+ const PASSTHROUGH_PROPS = /* @__PURE__ */ new Set([
24
+ Symbol.iterator,
25
+ Symbol.toPrimitive,
26
+ Symbol.toStringTag,
27
+ "then",
28
+ "toJSON"
29
+ ]);
30
+ function strictProxy(partial) {
31
+ return wrapProxy(partial);
32
+ }
33
+ function isObjectLike(value) {
34
+ return value !== null && typeof value === "object";
35
+ }
36
+ function isPlainObject(value) {
37
+ return isObjectLike(value) && Object.getPrototypeOf(value) === Object.prototype;
38
+ }
39
+ function wrapProxy(value) {
40
+ if (!isObjectLike(value)) {
41
+ return value;
42
+ }
43
+ if (STRICT_PROXY_MARKER in value) {
44
+ return value;
45
+ }
46
+ Object.defineProperty(value, STRICT_PROXY_MARKER, { value: true });
47
+ const proxiedChildren = /* @__PURE__ */ new Map();
48
+ return new Proxy(value, {
49
+ get(target, prop, receiver) {
50
+ if (prop in target) {
51
+ if (proxiedChildren.has(prop)) {
52
+ return proxiedChildren.get(prop);
53
+ }
54
+ const val = Reflect.get(target, prop, receiver);
55
+ if (isPlainObject(val)) {
56
+ const result = wrapProxy(val);
57
+ proxiedChildren.set(prop, result);
58
+ return result;
59
+ }
60
+ return val;
61
+ }
62
+ if (typeof prop === "symbol" || PASSTHROUGH_PROPS.has(prop)) {
63
+ return Reflect.get(target, prop, receiver);
64
+ }
65
+ throw new Error(`Unmocked property "${prop}" was accessed on mock object`);
66
+ }
67
+ });
68
+ }
69
+ export {
70
+ strictProxy
71
+ };
72
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3N0cmljdC1wcm94eS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFN0cmljdGx5LXR5cGVkIG1vY2sgb2JqZWN0IGZhY3RvcnkgdmlhIGBQcm94eWAuIFRocm93cyBhIGRlc2NyaXB0aXZlIGVycm9yXG4gKiB3aGVuIGFueSB1bm1vY2tlZCBwcm9wZXJ0eSBpcyBhY2Nlc3NlZCwgcHJldmVudGluZyBzaWxlbnQgYHVuZGVmaW5lZGAgcmV0dXJucy5cbiAqXG4gKiBUaGUgcHJveHkgaW1wbGVtZW50YXRpb24gbWlycm9ycyB0aGUgZGVzaWduIG9mXG4gKiBgb2JzaWRpYW4tdGVzdC1tb2Nrcy9zcmMvaW50ZXJuYWwvc3RyaWN0LXByb3h5LnRzYC5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IFBhcnRpYWxEZWVwIH0gZnJvbSAndHlwZS1mZXN0JztcblxuY29uc3QgU1RSSUNUX1BST1hZX01BUktFUiA9IFN5bWJvbCgnc3RyaWN0UHJveHknKTtcblxuY29uc3QgUEFTU1RIUk9VR0hfUFJPUFMgPSBuZXcgU2V0PHN0cmluZyB8IHN5bWJvbD4oW1xuICBTeW1ib2wuaXRlcmF0b3IsXG4gIFN5bWJvbC50b1ByaW1pdGl2ZSxcbiAgU3ltYm9sLnRvU3RyaW5nVGFnLFxuICAndGhlbicsXG4gICd0b0pTT04nXG5dKTtcblxuLyoqXG4gKiBDcmVhdGVzIGEgc3RyaWN0bHktdHlwZWQgbW9jayBvYmplY3QgZnJvbSBhIHBhcnRpYWwgaW1wbGVtZW50YXRpb24uXG4gKiBVc2VzIGEgYFByb3h5YCB0aGF0IHRocm93cyBhIGRlc2NyaXB0aXZlIGVycm9yIHdoZW4gYW55IHVubW9ja2VkXG4gKiBwcm9wZXJ0eSBpcyBhY2Nlc3NlZCwgcHJldmVudGluZyBzaWxlbnQgYHVuZGVmaW5lZGAgcmV0dXJucy5cbiAqXG4gKiAtIElkZW1wb3RlbnQ6IGRvdWJsZS13cmFwcGluZyBpcyBhIG5vLW9wLlxuICogLSBQYXNzdGhyb3VnaCBmb3Igd2VsbC1rbm93biBwcm9wcyAoYHRoZW5gLCBgdG9KU09OYCwgYFN5bWJvbC5pdGVyYXRvcmAsIGV0Yy4pLlxuICogLSBSZWN1cnNpdmUgcHJveHlpbmcgb2YgbmVzdGVkIHBsYWluIG9iamVjdHMuXG4gKlxuICogQHBhcmFtIHBhcnRpYWwgLSBBIHBhcnRpYWwgb2JqZWN0IGNvbnRhaW5pbmcgb25seSB0aGUgbW9ja2VkIG1lbWJlcnMuXG4gKiBAcmV0dXJucyBBIHByb3h5IHR5cGVkIGFzIGBUYCB0aGF0IHRocm93cyBvbiB1bm1vY2tlZCBwcm9wZXJ0eSBhY2Nlc3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzdHJpY3RQcm94eTxUPihwYXJ0aWFsOiBQYXJ0aWFsRGVlcDxUPik6IFQge1xuICByZXR1cm4gd3JhcFByb3h5PFQ+KHBhcnRpYWwpO1xufVxuXG4vKipcbiAqIENoZWNrcyBpZiBhIHZhbHVlIGlzIGFuIG9iamVjdC1saWtlIHZhbHVlIChub3QgbnVsbCkuXG4gKlxuICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGNoZWNrLlxuICogQHJldHVybnMgV2hldGhlciB0aGUgdmFsdWUgaXMgb2JqZWN0LWxpa2UuXG4gKi9cbmZ1bmN0aW9uIGlzT2JqZWN0TGlrZSh2YWx1ZTogdW5rbm93bik6IHZhbHVlIGlzIG9iamVjdCB7XG4gIHJldHVybiB2YWx1ZSAhPT0gbnVsbCAmJiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnO1xufVxuXG4vKipcbiAqIENoZWNrcyBpZiBhIHZhbHVlIGlzIGEgcGxhaW4gb2JqZWN0IChub3QgYSBjbGFzcyBpbnN0YW5jZSwgYXJyYXksIG51bGwsIGV0Yy4pLlxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIHZhbHVlIGlzIGEgcGxhaW4gb2JqZWN0LlxuICovXG5mdW5jdGlvbiBpc1BsYWluT2JqZWN0KHZhbHVlOiB1bmtub3duKTogdmFsdWUgaXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4ge1xuICByZXR1cm4gaXNPYmplY3RMaWtlKHZhbHVlKSAmJiBPYmplY3QuZ2V0UHJvdG90eXBlT2YodmFsdWUpID09PSBPYmplY3QucHJvdG90eXBlO1xufVxuXG4vKipcbiAqIFdyYXBzIGEgdmFsdWUgaW4gYSBzdHJpY3QgcHJveHkuIElkZW1wb3RlbnQgXHUyMDE0IGRvdWJsZS13cmFwcGluZyBpcyBhIG5vLW9wLlxuICpcbiAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byB3cmFwLlxuICogQHJldHVybnMgVGhlIHByb3hpZWQgdmFsdWUgdHlwZWQgYXMgYFRgLlxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVubmVjZXNzYXJ5LXR5cGUtcGFyYW1ldGVycyAtLSBUIHByb3ZpZGVzIHJldHVybiB0eXBlIGluZmVyZW5jZSBhdCBjYWxsIHNpdGVzLlxuZnVuY3Rpb24gd3JhcFByb3h5PFQ+KHZhbHVlOiB1bmtub3duKTogVCB7XG4gIGlmICghaXNPYmplY3RMaWtlKHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZSBhcyBUO1xuICB9XG5cbiAgaWYgKFNUUklDVF9QUk9YWV9NQVJLRVIgaW4gdmFsdWUpIHtcbiAgICByZXR1cm4gdmFsdWUgYXMgVDtcbiAgfVxuICBPYmplY3QuZGVmaW5lUHJvcGVydHkodmFsdWUsIFNUUklDVF9QUk9YWV9NQVJLRVIsIHsgdmFsdWU6IHRydWUgfSk7XG5cbiAgY29uc3QgcHJveGllZENoaWxkcmVuID0gbmV3IE1hcDxzdHJpbmcgfCBzeW1ib2w+KCk7XG5cbiAgcmV0dXJuIG5ldyBQcm94eSh2YWx1ZSwge1xuICAgIGdldCh0YXJnZXQsIHByb3AsIHJlY2VpdmVyKTogdW5rbm93biB7XG4gICAgICBpZiAocHJvcCBpbiB0YXJnZXQpIHtcbiAgICAgICAgaWYgKHByb3hpZWRDaGlsZHJlbi5oYXMocHJvcCkpIHtcbiAgICAgICAgICByZXR1cm4gcHJveGllZENoaWxkcmVuLmdldChwcm9wKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHZhbDogdW5rbm93biA9IFJlZmxlY3QuZ2V0KHRhcmdldCwgcHJvcCwgcmVjZWl2ZXIpO1xuICAgICAgICBpZiAoaXNQbGFpbk9iamVjdCh2YWwpKSB7XG4gICAgICAgICAgY29uc3QgcmVzdWx0ID0gd3JhcFByb3h5PHVua25vd24+KHZhbCk7XG4gICAgICAgICAgcHJveGllZENoaWxkcmVuLnNldChwcm9wLCByZXN1bHQpO1xuICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhbDtcbiAgICAgIH1cblxuICAgICAgaWYgKHR5cGVvZiBwcm9wID09PSAnc3ltYm9sJyB8fCBQQVNTVEhST1VHSF9QUk9QUy5oYXMocHJvcCkpIHtcbiAgICAgICAgcmV0dXJuIFJlZmxlY3QuZ2V0KHRhcmdldCwgcHJvcCwgcmVjZWl2ZXIpO1xuICAgICAgfVxuXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFVubW9ja2VkIHByb3BlcnR5IFwiJHtwcm9wfVwiIHdhcyBhY2Nlc3NlZCBvbiBtb2NrIG9iamVjdGApO1xuICAgIH1cbiAgfSkgYXMgVDtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVlBLE1BQU0sc0JBQXNCLHVCQUFPLGFBQWE7QUFFaEQsTUFBTSxvQkFBb0Isb0JBQUksSUFBcUI7QUFBQSxFQUNqRCxPQUFPO0FBQUEsRUFDUCxPQUFPO0FBQUEsRUFDUCxPQUFPO0FBQUEsRUFDUDtBQUFBLEVBQ0E7QUFDRixDQUFDO0FBY00sU0FBUyxZQUFlLFNBQTRCO0FBQ3pELFNBQU8sVUFBYSxPQUFPO0FBQzdCO0FBUUEsU0FBUyxhQUFhLE9BQWlDO0FBQ3JELFNBQU8sVUFBVSxRQUFRLE9BQU8sVUFBVTtBQUM1QztBQVFBLFNBQVMsY0FBYyxPQUFrRDtBQUN2RSxTQUFPLGFBQWEsS0FBSyxLQUFLLE9BQU8sZUFBZSxLQUFLLE1BQU0sT0FBTztBQUN4RTtBQVNBLFNBQVMsVUFBYSxPQUFtQjtBQUN2QyxNQUFJLENBQUMsYUFBYSxLQUFLLEdBQUc7QUFDeEIsV0FBTztBQUFBLEVBQ1Q7QUFFQSxNQUFJLHVCQUF1QixPQUFPO0FBQ2hDLFdBQU87QUFBQSxFQUNUO0FBQ0EsU0FBTyxlQUFlLE9BQU8scUJBQXFCLEVBQUUsT0FBTyxLQUFLLENBQUM7QUFFakUsUUFBTSxrQkFBa0Isb0JBQUksSUFBcUI7QUFFakQsU0FBTyxJQUFJLE1BQU0sT0FBTztBQUFBLElBQ3RCLElBQUksUUFBUSxNQUFNLFVBQW1CO0FBQ25DLFVBQUksUUFBUSxRQUFRO0FBQ2xCLFlBQUksZ0JBQWdCLElBQUksSUFBSSxHQUFHO0FBQzdCLGlCQUFPLGdCQUFnQixJQUFJLElBQUk7QUFBQSxRQUNqQztBQUVBLGNBQU0sTUFBZSxRQUFRLElBQUksUUFBUSxNQUFNLFFBQVE7QUFDdkQsWUFBSSxjQUFjLEdBQUcsR0FBRztBQUN0QixnQkFBTSxTQUFTLFVBQW1CLEdBQUc7QUFDckMsMEJBQWdCLElBQUksTUFBTSxNQUFNO0FBQ2hDLGlCQUFPO0FBQUEsUUFDVDtBQUNBLGVBQU87QUFBQSxNQUNUO0FBRUEsVUFBSSxPQUFPLFNBQVMsWUFBWSxrQkFBa0IsSUFBSSxJQUFJLEdBQUc7QUFDM0QsZUFBTyxRQUFRLElBQUksUUFBUSxNQUFNLFFBQVE7QUFBQSxNQUMzQztBQUVBLFlBQU0sSUFBSSxNQUFNLHNCQUFzQixJQUFJLCtCQUErQjtBQUFBLElBQzNFO0FBQUEsRUFDRixDQUFDO0FBQ0g7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @packageDocumentation
2
+ * @file
3
3
  *
4
4
  * Contains utility functions for string operations.
5
5
  */
@@ -8,11 +8,15 @@ import type { ValueProvider } from './value-provider.mjs';
8
8
  /**
9
9
  * A synchronous/asynchronous function that generates replacement strings, or a string to replace with.
10
10
  */
11
- export type AsyncReplacer<ReplaceGroupArgs extends string[]> = ValueProvider<StringReplacement, [ReplaceCommonArgs, ...ReplaceGroupArgs]>;
11
+ export type AsyncReplacer<CapturedGroupArgs extends string[]> = ValueProvider<StringReplacement, ReplaceArgs<CapturedGroupArgs>>;
12
12
  /**
13
13
  * Common arguments for the `replaceAll`/`replaceAllAsync` functions.
14
14
  */
15
- export interface ReplaceCommonArgs {
15
+ export interface ReplaceArgs<CapturedGroupArgs extends string[]> {
16
+ /**
17
+ * Captured group arguments.
18
+ */
19
+ capturedGroupArgs: CapturedGroupArgs;
16
20
  /**
17
21
  * Groups of the match.
18
22
  */
@@ -37,7 +41,7 @@ export interface ReplaceCommonArgs {
37
41
  /**
38
42
  * A synchronous function that generates replacement strings, or a string to replace with.
39
43
  */
40
- export type Replacer<ReplaceGroupArgs extends string[]> = ((...args: [ReplaceCommonArgs, ...ReplaceGroupArgs]) => StringReplacement) | StringReplacement;
44
+ export type Replacer<CapturedGroupArgs extends string[]> = ((args: ReplaceArgs<CapturedGroupArgs>) => StringReplacement) | StringReplacement;
41
45
  type StringReplacement = MaybeReturn<string>;
42
46
  /**
43
47
  * Ensures that a string ends with the specified suffix, adding it if necessary.
@@ -135,7 +139,7 @@ export declare function replace(str: string, replacementsMap: Record<string, str
135
139
  * @param replacer - A replacer function that generates replacement strings, or a string to replace with.
136
140
  * @returns The string with all replacements made.
137
141
  */
138
- export declare function replaceAll<ReplaceGroupArgs extends string[]>(str: string, searchValue: RegExp | string, replacer: Replacer<ReplaceGroupArgs>): string;
142
+ export declare function replaceAll<CapturedGroupArgs extends string[]>(str: string, searchValue: RegExp | string, replacer: Replacer<CapturedGroupArgs>): string;
139
143
  /**
140
144
  * Asynchronously replaces all occurrences of a search string or pattern with the results of an asynchronous replacer function.
141
145
  *
@@ -112,24 +112,24 @@ function replaceAll(str, searchValue, replacer) {
112
112
  const SOURCE_INDEX_OFFSET_FOR_GROUP_ARG = 2;
113
113
  const hasGroupsArg = typeof args.at(-1) === "object";
114
114
  const sourceIndex = hasGroupsArg ? args.length - SOURCE_INDEX_OFFSET_FOR_GROUP_ARG : args.length - 1;
115
- const commonArgs = {
115
+ const replaceArgs = {
116
+ // eslint-disable-next-line no-restricted-syntax -- Can't avoid.
117
+ capturedGroupArgs: [],
116
118
  groups: hasGroupsArg ? args.at(-1) : void 0,
117
119
  missingGroupIndices: [],
118
120
  offset: args.at(sourceIndex - 1),
119
121
  source: args.at(sourceIndex),
120
122
  substring
121
123
  };
122
- const groupArgs = args.slice(0, sourceIndex - 1).map((arg, index) => {
123
- if (typeof arg === "string") {
124
- return arg;
124
+ for (let i = 0; i < sourceIndex - 1; i++) {
125
+ const item = args[i];
126
+ if (typeof item === "string") {
127
+ replaceArgs.capturedGroupArgs.push(item);
128
+ } else if (typeof item === "undefined") {
129
+ replaceArgs.missingGroupIndices.push(i);
125
130
  }
126
- if (typeof arg === "undefined") {
127
- commonArgs.missingGroupIndices.push(index);
128
- return "";
129
- }
130
- throw new Error(`Unexpected argument type: ${typeof arg}`);
131
- });
132
- return replacer(commonArgs, ...groupArgs) ?? commonArgs.substring;
131
+ }
132
+ return replacer(replaceArgs) ?? replaceArgs.substring;
133
133
  });
134
134
  }
135
135
  async function replaceAllAsync(str, searchValue, replacer, abortSignal) {
@@ -139,8 +139,8 @@ async function replaceAllAsync(str, searchValue, replacer, abortSignal) {
139
139
  return replaceAll(str, searchValue, replacer);
140
140
  }
141
141
  const replacementAsyncFns = [];
142
- replaceAll(str, searchValue, (commonArgs, ...groupArgs) => {
143
- replacementAsyncFns.push(() => resolveValue(replacer, abortSignal, commonArgs, ...groupArgs));
142
+ replaceAll(str, searchValue, (args) => {
143
+ replacementAsyncFns.push(() => resolveValue(replacer, { abortSignal, ...args }));
144
144
  return "";
145
145
  });
146
146
  const replacements = [];
@@ -202,4 +202,4 @@ export {
202
202
  unescape,
203
203
  unindent
204
204
  };
205
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3N0cmluZy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBDb250YWlucyB1dGlsaXR5IGZ1bmN0aW9ucyBmb3Igc3RyaW5nIG9wZXJhdGlvbnMuXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBNYXliZVJldHVybiB9IGZyb20gJy4vdHlwZS50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbHVlUHJvdmlkZXIgfSBmcm9tICcuL3ZhbHVlLXByb3ZpZGVyLnRzJztcblxuaW1wb3J0IHsgYWJvcnRTaWduYWxOZXZlciB9IGZyb20gJy4vYWJvcnQtY29udHJvbGxlci50cyc7XG5pbXBvcnQgeyBlc2NhcGVSZWdFeHAgfSBmcm9tICcuL3JlZy1leHAudHMnO1xuaW1wb3J0IHtcbiAgYXNzZXJ0LFxuICBlbnN1cmVOb25OdWxsYWJsZVxufSBmcm9tICcuL3R5cGUtZ3VhcmRzLnRzJztcbmltcG9ydCB7IHJlc29sdmVWYWx1ZSB9IGZyb20gJy4vdmFsdWUtcHJvdmlkZXIudHMnO1xuXG4vKipcbiAqIEEgc3luY2hyb25vdXMvYXN5bmNocm9ub3VzIGZ1bmN0aW9uIHRoYXQgZ2VuZXJhdGVzIHJlcGxhY2VtZW50IHN0cmluZ3MsIG9yIGEgc3RyaW5nIHRvIHJlcGxhY2Ugd2l0aC5cbiAqL1xuZXhwb3J0IHR5cGUgQXN5bmNSZXBsYWNlcjxSZXBsYWNlR3JvdXBBcmdzIGV4dGVuZHMgc3RyaW5nW10+ID0gVmFsdWVQcm92aWRlcjxTdHJpbmdSZXBsYWNlbWVudCwgW1JlcGxhY2VDb21tb25BcmdzLCAuLi5SZXBsYWNlR3JvdXBBcmdzXT47XG5cbi8qKlxuICogQ29tbW9uIGFyZ3VtZW50cyBmb3IgdGhlIGByZXBsYWNlQWxsYC9gcmVwbGFjZUFsbEFzeW5jYCBmdW5jdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVwbGFjZUNvbW1vbkFyZ3Mge1xuICAvKipcbiAgICogR3JvdXBzIG9mIHRoZSBtYXRjaC5cbiAgICovXG4gIGdyb3VwczogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgdW5kZWZpbmVkPiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogSW5kaWNlcyBvZiB0aGUgZ3JvdXBzIHRoYXQgd2VyZSBub3QgZm91bmQgaW4gdGhlIG1hdGNoLlxuICAgKi9cbiAgbWlzc2luZ0dyb3VwSW5kaWNlczogbnVtYmVyW107XG5cbiAgLyoqXG4gICAqIEFuIG9mZnNldCBvZiB0aGUgbWF0Y2guXG4gICAqL1xuICBvZmZzZXQ6IG51bWJlcjtcblxuICAvKipcbiAgICogQSBzb3VyY2Ugb2YgdGhlIG1hdGNoLlxuICAgKi9cbiAgc291cmNlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgc3Vic3RyaW5nIG9mIHRoZSBtYXRjaC5cbiAgICovXG4gIHN1YnN0cmluZzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEEgc3luY2hyb25vdXMgZnVuY3Rpb24gdGhhdCBnZW5lcmF0ZXMgcmVwbGFjZW1lbnQgc3RyaW5ncywgb3IgYSBzdHJpbmcgdG8gcmVwbGFjZSB3aXRoLlxuICovXG5leHBvcnQgdHlwZSBSZXBsYWNlcjxSZXBsYWNlR3JvdXBBcmdzIGV4dGVuZHMgc3RyaW5nW10+ID0gKCguLi5hcmdzOiBbUmVwbGFjZUNvbW1vbkFyZ3MsIC4uLlJlcGxhY2VHcm91cEFyZ3NdKSA9PiBTdHJpbmdSZXBsYWNlbWVudCkgfCBTdHJpbmdSZXBsYWNlbWVudDtcblxudHlwZSBTdHJpbmdSZXBsYWNlbWVudCA9IE1heWJlUmV0dXJuPHN0cmluZz47XG5cbi8qKlxuICogTWFwcGluZyBvZiBzcGVjaWFsIGNoYXJhY3RlcnMgdG8gdGhlaXIgZXNjYXBlZCBjb3VudGVycGFydHMuXG4gKi9cbmNvbnN0IEVTQ0FQRV9NQVA6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7XG4gICdcXG4nOiAnXFxcXG4nLFxuICAnXFxyJzogJ1xcXFxyJyxcbiAgJ1xcdCc6ICdcXFxcdCcsXG4gICdcXGInOiAnXFxcXGInLFxuICAnXFxmJzogJ1xcXFxmJyxcbiAgJ1xcJyc6ICdcXFxcXFwnJyxcbiAgJ1wiJzogJ1xcXFxcIicsXG4gICdcXFxcJzogJ1xcXFxcXFxcJ1xufSBhcyBjb25zdDtcblxuY29uc3QgQ1IgPSAnXFxyJztcbmNvbnN0IExGID0gJ1xcbic7XG5jb25zdCBOT1RfRk9VTkRfSU5ERVggPSAtMTtcblxuLyoqXG4gKiBNYXBwaW5nIG9mIGVzY2FwZWQgc3BlY2lhbCBjaGFyYWN0ZXJzIHRvIHRoZWlyIHVuZXNjYXBlZCBjb3VudGVycGFydHMuXG4gKi9cbmNvbnN0IFVORVNDQVBFX01BUDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoRVNDQVBFX01BUCkpIHtcbiAgVU5FU0NBUEVfTUFQW3ZhbHVlXSA9IGtleTtcbn1cblxuLyoqXG4gKiBFbnN1cmVzIHRoYXQgYSBzdHJpbmcgZW5kcyB3aXRoIHRoZSBzcGVjaWZpZWQgc3VmZml4LCBhZGRpbmcgaXQgaWYgbmVjZXNzYXJ5LlxuICpcbiAqIEBwYXJhbSBzdHIgLSBUaGUgc3RyaW5nIHRvIGNoZWNrLlxuICogQHBhcmFtIHN1ZmZpeCAtIFRoZSBzdWZmaXggdG8gZW5zdXJlLlxuICogQHJldHVybnMgVGhlIHN0cmluZyB0aGF0IGVuZHMgd2l0aCB0aGUgc3VmZml4LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZW5zdXJlRW5kc1dpdGgoc3RyOiBzdHJpbmcsIHN1ZmZpeDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHN0ci5lbmRzV2l0aChzdWZmaXgpID8gc3RyIDogc3RyICsgc3VmZml4O1xufVxuXG4vKipcbiAqIEVuc3VyZXMgdGhhdCBhIHN0cmluZyBoYXMgYExGYCBsaW5lIGVuZGluZ3MuXG4gKlxuICogSXQgcmVwbGFjZXMgYENSTEZgIGxpbmUgZW5kaW5ncyB3aXRoIGBMRmAuXG4gKlxuICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcuXG4gKiBAcmV0dXJucyBUaGUgc3RyaW5nIHdpdGggYExGYCBsaW5lIGVuZGluZ3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlbnN1cmVMZkVuZGluZ3Moc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gc3RyLnJlcGxhY2VBbGwoL1xcclxcbj8vZywgJ1xcbicpO1xufVxuXG4vKipcbiAqIEVuc3VyZXMgdGhhdCBhIHN0cmluZyBzdGFydHMgd2l0aCB0aGUgc3BlY2lmaWVkIHByZWZpeCwgYWRkaW5nIGl0IGlmIG5lY2Vzc2FyeS5cbiAqXG4gKiBAcGFyYW0gc3RyIC0gVGhlIHN0cmluZyB0byBjaGVjay5cbiAqIEBwYXJhbSBwcmVmaXggLSBUaGUgcHJlZml4IHRvIGVuc3VyZS5cbiAqIEByZXR1cm5zIFRoZSBzdHJpbmcgdGhhdCBzdGFydHMgd2l0aCB0aGUgcHJlZml4LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZW5zdXJlU3RhcnRzV2l0aChzdHI6IHN0cmluZywgcHJlZml4OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gc3RyLnN0YXJ0c1dpdGgocHJlZml4KSA/IHN0ciA6IHByZWZpeCArIHN0cjtcbn1cblxuLyoqXG4gKiBFc2NhcGVzIHNwZWNpYWwgY2hhcmFjdGVycyBpbiBhIHN0cmluZy5cbiAqXG4gKiBAcGFyYW0gc3RyIC0gVGhlIHN0cmluZyB0byBlc2NhcGUuXG4gKiBAcmV0dXJucyBUaGUgZXNjYXBlZCBzdHJpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBlc2NhcGUoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gcmVwbGFjZShzdHIsIEVTQ0FQRV9NQVApO1xufVxuXG4vKipcbiAqIFJldHVybnMgYSBmdW5jdGlvbiB0aGF0IG1hcHMgTEYtbm9ybWFsaXplZCBvZmZzZXRzIHRvIG9yaWdpbmFsIG9mZnNldHMuXG4gKlxuICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcgdG8gZ2V0IHRoZSBMRi1ub3JtYWxpemVkIGluZGljZXMgZnJvbS5cbiAqIEByZXR1cm5zIEEgZnVuY3Rpb24gdGhhdCBtYXBzIExGLW5vcm1hbGl6ZWQgb2Zmc2V0cyB0byBvcmlnaW5hbCBvZmZzZXRzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0TGZOb3JtYWxpemVkT2Zmc2V0VG9PcmlnaW5hbE9mZnNldE1hcHBlcihzdHI6IHN0cmluZyk6IChsZk9mZnNldDogbnVtYmVyKSA9PiBudW1iZXIge1xuICBjb25zdCBsZk9mZnNldFRvT3JpZ2luYWxPZmZzZXRNYXA6IG51bWJlcltdID0gW107XG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdHIubGVuZ3RoOyBpKyspIHtcbiAgICBpZiAoc3RyW2ldID09PSBDUiAmJiBzdHJbaSArIDFdID09PSBMRikge1xuICAgICAgbGZPZmZzZXRUb09yaWdpbmFsT2Zmc2V0TWFwLnB1c2goaSArIDEpO1xuICAgICAgaSsrO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZk9mZnNldFRvT3JpZ2luYWxPZmZzZXRNYXAucHVzaChpKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gKGxmT2Zmc2V0OiBudW1iZXIpOiBudW1iZXIgPT4ge1xuICAgIGlmIChsZk9mZnNldCA8IDApIHtcbiAgICAgIHJldHVybiBsZk9mZnNldDtcbiAgICB9XG4gICAgaWYgKGxmT2Zmc2V0ID49IGxmT2Zmc2V0VG9PcmlnaW5hbE9mZnNldE1hcC5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBsZk9mZnNldCAtIGxmT2Zmc2V0VG9PcmlnaW5hbE9mZnNldE1hcC5sZW5ndGggKyBzdHIubGVuZ3RoO1xuICAgIH1cblxuICAgIGFzc2VydChsZk9mZnNldFRvT3JpZ2luYWxPZmZzZXRNYXBbbGZPZmZzZXRdICE9PSB1bmRlZmluZWQsICdDb3VsZCBub3QgbWFwIG9mZnNldCcpO1xuICAgIHJldHVybiBsZk9mZnNldFRvT3JpZ2luYWxPZmZzZXRNYXBbbGZPZmZzZXRdO1xuICB9O1xufVxuXG4vKipcbiAqIENoZWNrcyBpZiBhIHN0cmluZyBoYXMgYSBzaW5nbGUgb2NjdXJyZW5jZSBvZiBhIHNlYXJjaCB2YWx1ZS5cbiAqXG4gKiBAcGFyYW0gc3RyIC0gVGhlIHN0cmluZyB0byBjaGVjay5cbiAqIEBwYXJhbSBzZWFyY2hWYWx1ZSAtIFRoZSBzZWFyY2ggdmFsdWUgdG8gY2hlY2sgZm9yLlxuICogQHJldHVybnMgYHRydWVgIGlmIHRoZSBzdHJpbmcgaGFzIGEgc2luZ2xlIG9jY3VycmVuY2Ugb2YgdGhlIHNlYXJjaCB2YWx1ZSwgYGZhbHNlYCBvdGhlcndpc2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoYXNTaW5nbGVPY2N1cnJlbmNlKHN0cjogc3RyaW5nLCBzZWFyY2hWYWx1ZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gIGNvbnN0IGZpcnN0SW5kZXggPSBzdHIuaW5kZXhPZihzZWFyY2hWYWx1ZSk7XG4gIGNvbnN0IGxhc3RJbmRleCA9IHN0ci5sYXN0SW5kZXhPZihzZWFyY2hWYWx1ZSk7XG4gIHJldHVybiBmaXJzdEluZGV4ICE9PSBOT1RfRk9VTkRfSU5ERVggJiYgZmlyc3RJbmRleCA9PT0gbGFzdEluZGV4O1xufVxuXG4vKipcbiAqIEluZGVudHMgYSBzdHJpbmcgYnkgYWRkaW5nIGEgcHJlZml4IHRvIGVhY2ggbGluZS5cbiAqXG4gKiBAcGFyYW0gdGV4dCAtIFRoZSBzdHJpbmcgdG8gaW5kZW50LlxuICogQHBhcmFtIHByZWZpeCAtIFRoZSBwcmVmaXggdG8gYWRkIHRvIGVhY2ggbGluZS5cbiAqIEByZXR1cm5zIFRoZSBpbmRlbnRlZCBzdHJpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbmRlbnQodGV4dDogc3RyaW5nLCBwcmVmaXg6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiB0ZXh0LnNwbGl0KCdcXG4nKS5tYXAoKGxpbmUpID0+IGAke3ByZWZpeH0ke2xpbmV9YCkuam9pbignXFxuJyk7XG59XG5cbi8qKlxuICogSW5zZXJ0cyBhIHN1YnN0cmluZyBhdCBhIHNwZWNpZmllZCBwb3NpdGlvbiBpbiBhIHN0cmluZy5cbiAqXG4gKiBAcGFyYW0gc3RyIC0gVGhlIHN0cmluZyB0byBpbnNlcnQgdGhlIHN1YnN0cmluZyBpbnRvLlxuICogQHBhcmFtIHN1YnN0cmluZyAtIFRoZSBzdWJzdHJpbmcgdG8gaW5zZXJ0LlxuICogQHBhcmFtIHN0YXJ0SW5kZXggLSBUaGUgaW5kZXggdG8gaW5zZXJ0IHRoZSBzdWJzdHJpbmcgYXQuXG4gKiBAcGFyYW0gZW5kSW5kZXggLSBUaGUgaW5kZXggdG8gZW5kIHRoZSBzdWJzdHJpbmcgYXQuXG4gKiBAcmV0dXJucyBUaGUgbW9kaWZpZWQgc3RyaW5nIHdpdGggdGhlIHN1YnN0cmluZyBpbnNlcnRlZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluc2VydEF0KHN0cjogc3RyaW5nLCBzdWJzdHJpbmc6IHN0cmluZywgc3RhcnRJbmRleDogbnVtYmVyLCBlbmRJbmRleD86IG51bWJlcik6IHN0cmluZyB7XG4gIGVuZEluZGV4ID8/PSBzdGFydEluZGV4O1xuICByZXR1cm4gc3RyLnNsaWNlKDAsIHN0YXJ0SW5kZXgpICsgc3Vic3RyaW5nICsgc3RyLnNsaWNlKGVuZEluZGV4KTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhIHN0cmluZyBpbnRvIGEgdmFsaWQgSmF2YVNjcmlwdCB2YXJpYWJsZSBuYW1lIGJ5IHJlcGxhY2luZyBpbnZhbGlkIGNoYXJhY3RlcnMgd2l0aCB1bmRlcnNjb3Jlcy5cbiAqXG4gKiBAcGFyYW0gc3RyIC0gVGhlIHN0cmluZyB0byBjb252ZXJ0LlxuICogQHJldHVybnMgVGhlIHZhbGlkIHZhcmlhYmxlIG5hbWUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYWtlVmFsaWRWYXJpYWJsZU5hbWUoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gcmVwbGFjZUFsbChzdHIsIC9bXmEtekEtWjAtOV9dL2csICdfJyk7XG59XG5cbi8qKlxuICogTm9ybWFsaXplcyBhIHN0cmluZyBieSBjb252ZXJ0aW5nIGl0IHRvIHRoZSBORkMgZm9ybSBhbmQgcmVwbGFjaW5nIG5vbi1icmVha2luZyBzcGFjZXMgd2l0aCByZWd1bGFyIHNwYWNlcy5cbiAqXG4gKiBAcGFyYW0gc3RyIC0gVGhlIHN0cmluZyB0byBub3JtYWxpemUuXG4gKiBAcmV0dXJucyBUaGUgbm9ybWFsaXplZCBzdHJpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxpemUoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gcmVwbGFjZUFsbChzdHIsIC9cXHUwMEEwfFxcdTIwMkYvZywgJyAnKS5ub3JtYWxpemUoJ05GQycpO1xufVxuXG4vKipcbiAqIFJlcGxhY2VzIG9jY3VycmVuY2VzIG9mIHN0cmluZ3MgaW4gYSBnaXZlbiBzdHJpbmcgYmFzZWQgb24gYSByZXBsYWNlbWVudHMgbWFwLlxuICpcbiAqIEBwYXJhbSBzdHIgLSBUaGUgc3RyaW5nIHRvIHBlcmZvcm0gcmVwbGFjZW1lbnRzIG9uLlxuICogQHBhcmFtIHJlcGxhY2VtZW50c01hcCAtIEFuIG9iamVjdCBtYXBwaW5nIHN0cmluZ3MgdG8gdGhlaXIgcmVwbGFjZW1lbnQgdmFsdWVzLlxuICogQHJldHVybnMgVGhlIG1vZGlmaWVkIHN0cmluZyB3aXRoIHJlcGxhY2VtZW50cyBhcHBsaWVkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVwbGFjZShzdHI6IHN0cmluZywgcmVwbGFjZW1lbnRzTWFwOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KTogc3RyaW5nIHtcbiAgY29uc3QgcmVnRXhwID0gbmV3IFJlZ0V4cChPYmplY3Qua2V5cyhyZXBsYWNlbWVudHNNYXApLm1hcCgoc291cmNlKSA9PiBlc2NhcGVSZWdFeHAoc291cmNlKSkuam9pbignfCcpLCAnZycpO1xuICByZXR1cm4gcmVwbGFjZUFsbChzdHIsIHJlZ0V4cCwgKHsgc3Vic3RyaW5nOiBzb3VyY2UgfSkgPT4gZW5zdXJlTm9uTnVsbGFibGUocmVwbGFjZW1lbnRzTWFwW3NvdXJjZV0pKTtcbn1cblxuLyoqXG4gKiBSZXBsYWNlcyBhbGwgb2NjdXJyZW5jZXMgb2YgYSBzZWFyY2ggc3RyaW5nIG9yIHBhdHRlcm4gd2l0aCB0aGUgcmVzdWx0cyBvZiBhbiByZXBsYWNlciBmdW5jdGlvbi5cbiAqXG4gKiBAdHlwZVBhcmFtIFJlcGxhY2VHcm91cEFyZ3MgLSBUaGUgdHlwZSBvZiBhZGRpdGlvbmFsIGFyZ3VtZW50cyBwYXNzZWQgdG8gdGhlIHJlcGxhY2VyIGZ1bmN0aW9uLlxuICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcgaW4gd2hpY2ggdG8gcGVyZm9ybSByZXBsYWNlbWVudHMuXG4gKiBAcGFyYW0gc2VhcmNoVmFsdWUgLSBUaGUgc3RyaW5nIG9yIHJlZ3VsYXIgZXhwcmVzc2lvbiB0byBzZWFyY2ggZm9yLlxuICogQHBhcmFtIHJlcGxhY2VyIC0gQSByZXBsYWNlciBmdW5jdGlvbiB0aGF0IGdlbmVyYXRlcyByZXBsYWNlbWVudCBzdHJpbmdzLCBvciBhIHN0cmluZyB0byByZXBsYWNlIHdpdGguXG4gKiBAcmV0dXJucyBUaGUgc3RyaW5nIHdpdGggYWxsIHJlcGxhY2VtZW50cyBtYWRlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVwbGFjZUFsbDxSZXBsYWNlR3JvdXBBcmdzIGV4dGVuZHMgc3RyaW5nW10+KFxuICBzdHI6IHN0cmluZyxcbiAgc2VhcmNoVmFsdWU6IFJlZ0V4cCB8IHN0cmluZyxcbiAgcmVwbGFjZXI6IFJlcGxhY2VyPFJlcGxhY2VHcm91cEFyZ3M+XG4pOiBzdHJpbmcge1xuICBpZiAodHlwZW9mIHJlcGxhY2VyID09PSAndW5kZWZpbmVkJykge1xuICAgIHJldHVybiBzdHI7XG4gIH1cblxuICBpZiAoc2VhcmNoVmFsdWUgaW5zdGFuY2VvZiBSZWdFeHAgJiYgIXNlYXJjaFZhbHVlLmdsb2JhbCkge1xuICAgIHNlYXJjaFZhbHVlID0gbmV3IFJlZ0V4cChzZWFyY2hWYWx1ZS5zb3VyY2UsIGAke3NlYXJjaFZhbHVlLmZsYWdzfWdgKTtcbiAgfVxuXG4gIGlmICh0eXBlb2YgcmVwbGFjZXIgPT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuIHN0ci5yZXBsYWNlQWxsKHNlYXJjaFZhbHVlLCByZXBsYWNlcik7XG4gIH1cblxuICByZXR1cm4gc3RyLnJlcGxhY2VBbGwoc2VhcmNoVmFsdWUsIChzdWJzdHJpbmc6IHN0cmluZywgLi4uYXJnczogdW5rbm93bltdKSA9PiB7XG4gICAgY29uc3QgU09VUkNFX0lOREVYX09GRlNFVF9GT1JfR1JPVVBfQVJHID0gMjtcbiAgICBjb25zdCBoYXNHcm91cHNBcmcgPSB0eXBlb2YgYXJncy5hdCgtMSkgPT09ICdvYmplY3QnO1xuICAgIGNvbnN0IHNvdXJjZUluZGV4ID0gaGFzR3JvdXBzQXJnID8gYXJncy5sZW5ndGggLSBTT1VSQ0VfSU5ERVhfT0ZGU0VUX0ZPUl9HUk9VUF9BUkcgOiBhcmdzLmxlbmd0aCAtIDE7XG5cbiAgICBjb25zdCBjb21tb25BcmdzOiBSZXBsYWNlQ29tbW9uQXJncyA9IHtcbiAgICAgIGdyb3VwczogaGFzR3JvdXBzQXJnID8gYXJncy5hdCgtMSkgYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgdW5kZWZpbmVkPiA6IHVuZGVmaW5lZCxcbiAgICAgIG1pc3NpbmdHcm91cEluZGljZXM6IFtdLFxuICAgICAgb2Zmc2V0OiBhcmdzLmF0KHNvdXJjZUluZGV4IC0gMSkgYXMgbnVtYmVyLFxuICAgICAgc291cmNlOiBhcmdzLmF0KHNvdXJjZUluZGV4KSBhcyBzdHJpbmcsXG4gICAgICBzdWJzdHJpbmdcbiAgICB9O1xuXG4gICAgY29uc3QgZ3JvdXBBcmdzID0gYXJncy5zbGljZSgwLCBzb3VyY2VJbmRleCAtIDEpLm1hcCgoYXJnLCBpbmRleCk6IHN0cmluZyA9PiB7XG4gICAgICBpZiAodHlwZW9mIGFyZyA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIGFyZztcbiAgICAgIH1cblxuICAgICAgLyogdjggaWdub3JlIHN0YXJ0IC0tIEl0IGluY29ycmVjdGx5IHJlcG9ydHMgdGhpcyBhcyB1bmNvdmVyZWQsIGJ1dCBpdCBpcyBjb3ZlcmVkIGJ5IGBzaG91bGQgcG9wdWxhdGUgbWlzc2luZ0dyb3VwSW5kaWNlcyBmb3IgdW5kZWZpbmVkIGNhcHR1cmUgZ3JvdXBzYCB0ZXN0LiAqL1xuICAgICAgaWYgKHR5cGVvZiBhcmcgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIC8qIHY4IGlnbm9yZSBzdG9wICovXG4gICAgICAgIGNvbW1vbkFyZ3MubWlzc2luZ0dyb3VwSW5kaWNlcy5wdXNoKGluZGV4KTtcbiAgICAgICAgcmV0dXJuICcnO1xuICAgICAgfVxuXG4gICAgICAvKiB2OCBpZ25vcmUgc3RhcnQgLS0gTmV2ZXIgaGFwcGVucy4gKi9cbiAgICAgIHRocm93IG5ldyBFcnJvcihgVW5leHBlY3RlZCBhcmd1bWVudCB0eXBlOiAke3R5cGVvZiBhcmd9YCk7XG4gICAgICAvKiB2OCBpZ25vcmUgc3RvcCAqL1xuICAgIH0pIGFzIFJlcGxhY2VHcm91cEFyZ3M7XG5cbiAgICByZXR1cm4gKHJlcGxhY2VyKGNvbW1vbkFyZ3MsIC4uLmdyb3VwQXJncykgYXMgc3RyaW5nIHwgdW5kZWZpbmVkKSA/PyBjb21tb25BcmdzLnN1YnN0cmluZztcbiAgfSk7XG59XG5cbi8qKlxuICogQXN5bmNocm9ub3VzbHkgcmVwbGFjZXMgYWxsIG9jY3VycmVuY2VzIG9mIGEgc2VhcmNoIHN0cmluZyBvciBwYXR0ZXJuIHdpdGggdGhlIHJlc3VsdHMgb2YgYW4gYXN5bmNocm9ub3VzIHJlcGxhY2VyIGZ1bmN0aW9uLlxuICpcbiAqIEB0eXBlUGFyYW0gUmVwbGFjZUdyb3VwQXJncyAtIFRoZSB0eXBlIG9mIGFkZGl0aW9uYWwgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgcmVwbGFjZXIgZnVuY3Rpb24uXG4gKiBAcGFyYW0gc3RyIC0gVGhlIHN0cmluZyBpbiB3aGljaCB0byBwZXJmb3JtIHJlcGxhY2VtZW50cy5cbiAqIEBwYXJhbSBzZWFyY2hWYWx1ZSAtIFRoZSBzdHJpbmcgb3IgcmVndWxhciBleHByZXNzaW9uIHRvIHNlYXJjaCBmb3IuXG4gKiBAcGFyYW0gcmVwbGFjZXIgLSBBIHN5bmNocm9ub3VzL2FzeW5jaHJvbm91cyBmdW5jdGlvbiB0aGF0IGdlbmVyYXRlcyByZXBsYWNlbWVudCBzdHJpbmdzLCBvciBhIHN0cmluZyB0byByZXBsYWNlIHdpdGguXG4gKiBAcGFyYW0gYWJvcnRTaWduYWwgLSBUaGUgYWJvcnQgc2lnbmFsIHRvIGNvbnRyb2wgdGhlIGV4ZWN1dGlvbiBvZiB0aGUgZnVuY3Rpb24uXG4gKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHRvIHRoZSBzdHJpbmcgd2l0aCBhbGwgcmVwbGFjZW1lbnRzIG1hZGUuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZXBsYWNlQWxsQXN5bmM8UmVwbGFjZUdyb3VwQXJncyBleHRlbmRzIHN0cmluZ1tdPihcbiAgc3RyOiBzdHJpbmcsXG4gIHNlYXJjaFZhbHVlOiBSZWdFeHAgfCBzdHJpbmcsXG4gIHJlcGxhY2VyOiBBc3luY1JlcGxhY2VyPFJlcGxhY2VHcm91cEFyZ3M+LFxuICBhYm9ydFNpZ25hbD86IEFib3J0U2lnbmFsXG4pOiBQcm9taXNlPHN0cmluZz4ge1xuICBhYm9ydFNpZ25hbCA/Pz0gYWJvcnRTaWduYWxOZXZlcigpO1xuICBhYm9ydFNpZ25hbC50aHJvd0lmQWJvcnRlZCgpO1xuICBpZiAodHlwZW9mIHJlcGxhY2VyID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiByZXBsYWNlQWxsKHN0ciwgc2VhcmNoVmFsdWUsIHJlcGxhY2VyKTtcbiAgfVxuXG4gIGNvbnN0IHJlcGxhY2VtZW50QXN5bmNGbnM6ICgoKSA9PiBQcm9taXNlPFN0cmluZ1JlcGxhY2VtZW50PilbXSA9IFtdO1xuXG4gIHJlcGxhY2VBbGw8UmVwbGFjZUdyb3VwQXJncz4oc3RyLCBzZWFyY2hWYWx1ZSwgKGNvbW1vbkFyZ3MsIC4uLmdyb3VwQXJncykgPT4ge1xuICAgIHJlcGxhY2VtZW50QXN5bmNGbnMucHVzaCgoKSA9PiByZXNvbHZlVmFsdWUocmVwbGFjZXIsIGFib3J0U2lnbmFsLCBjb21tb25BcmdzLCAuLi5ncm91cEFyZ3MpKTtcbiAgICByZXR1cm4gJyc7XG4gIH0pO1xuXG4gIGNvbnN0IHJlcGxhY2VtZW50czogU3RyaW5nUmVwbGFjZW1lbnRbXSA9IFtdO1xuXG4gIGZvciAoY29uc3QgYXN5bmNGbiBvZiByZXBsYWNlbWVudEFzeW5jRm5zKSB7XG4gICAgYWJvcnRTaWduYWwudGhyb3dJZkFib3J0ZWQoKTtcbiAgICByZXBsYWNlbWVudHMucHVzaChhd2FpdCBhc3luY0ZuKCkpO1xuICB9XG5cbiAgYWJvcnRTaWduYWwudGhyb3dJZkFib3J0ZWQoKTtcbiAgcmV0dXJuIHJlcGxhY2VBbGwoc3RyLCBzZWFyY2hWYWx1ZSwgKGFyZ3MpOiBzdHJpbmcgPT4gcmVwbGFjZW1lbnRzLnNoaWZ0KCkgPz8gYXJncy5zdWJzdHJpbmcpO1xufVxuXG4vKipcbiAqIFRyaW1zIHRoZSBzcGVjaWZpZWQgc3VmZml4IGZyb20gdGhlIGVuZCBvZiBhIHN0cmluZy5cbiAqXG4gKiBAcGFyYW0gc3RyIC0gVGhlIHN0cmluZyB0byB0cmltLlxuICogQHBhcmFtIHN1ZmZpeCAtIFRoZSBzdWZmaXggdG8gcmVtb3ZlIGZyb20gdGhlIGVuZCBvZiB0aGUgc3RyaW5nLlxuICogQHBhcmFtIHNob3VsZFZhbGlkYXRlIC0gSWYgYHRydWVgLCB0aHJvd3MgYW4gZXJyb3IgaWYgdGhlIHN0cmluZyBkb2VzIG5vdCBlbmQgd2l0aCB0aGUgc3VmZml4LlxuICogQHJldHVybnMgVGhlIHRyaW1tZWQgc3RyaW5nLlxuICogQHRocm93cyBJZiBgdmFsaWRhdGVgIGlzIGB0cnVlYCBhbmQgdGhlIHN0cmluZyBkb2VzIG5vdCBlbmQgd2l0aCB0aGUgc3VmZml4LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdHJpbUVuZChzdHI6IHN0cmluZywgc3VmZml4OiBzdHJpbmcsIHNob3VsZFZhbGlkYXRlPzogYm9vbGVhbik6IHN0cmluZyB7XG4gIGlmIChzdHIuZW5kc1dpdGgoc3VmZml4KSkge1xuICAgIHJldHVybiBzdHIuc2xpY2UoMCwgLXN1ZmZpeC5sZW5ndGgpO1xuICB9XG5cbiAgaWYgKHNob3VsZFZhbGlkYXRlKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBTdHJpbmcgJHtzdHJ9IGRvZXMgbm90IGVuZCB3aXRoIHN1ZmZpeCAke3N1ZmZpeH1gKTtcbiAgfVxuXG4gIHJldHVybiBzdHI7XG59XG5cbi8qKlxuICogVHJpbXMgdGhlIHNwZWNpZmllZCBwcmVmaXggZnJvbSB0aGUgc3RhcnQgb2YgYSBzdHJpbmcuXG4gKlxuICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcgdG8gdHJpbS5cbiAqIEBwYXJhbSBwcmVmaXggLSBUaGUgcHJlZml4IHRvIHJlbW92ZSBmcm9tIHRoZSBzdGFydCBvZiB0aGUgc3RyaW5nLlxuICogQHBhcmFtIHZhbGlkYXRlIC0gSWYgYHRydWVgLCB0aHJvd3MgYW4gZXJyb3IgaWYgdGhlIHN0cmluZyBkb2VzIG5vdCBzdGFydCB3aXRoIHRoZSBwcmVmaXguXG4gKiBAcmV0dXJucyBUaGUgdHJpbW1lZCBzdHJpbmcuXG4gKiBAdGhyb3dzIElmIGB2YWxpZGF0ZWAgaXMgYHRydWVgIGFuZCB0aGUgc3RyaW5nIGRvZXMgbm90IHN0YXJ0IHdpdGggdGhlIHByZWZpeC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRyaW1TdGFydChzdHI6IHN0cmluZywgcHJlZml4OiBzdHJpbmcsIHZhbGlkYXRlPzogYm9vbGVhbik6IHN0cmluZyB7XG4gIGlmIChzdHIuc3RhcnRzV2l0aChwcmVmaXgpKSB7XG4gICAgcmV0dXJuIHN0ci5zbGljZShwcmVmaXgubGVuZ3RoKTtcbiAgfVxuXG4gIGlmICh2YWxpZGF0ZSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgU3RyaW5nICR7c3RyfSBkb2VzIG5vdCBzdGFydCB3aXRoIHByZWZpeCAke3ByZWZpeH1gKTtcbiAgfVxuXG4gIHJldHVybiBzdHI7XG59XG5cbi8qKlxuICogVW5lc2NhcGVzIGEgc3RyaW5nIGJ5IHJlcGxhY2luZyBlc2NhcGUgc2VxdWVuY2VzIHdpdGggdGhlaXIgY29ycmVzcG9uZGluZyBjaGFyYWN0ZXJzLlxuICpcbiAqIEBwYXJhbSBzdHIgLSBUaGUgc3RyaW5nIHRvIHVuZXNjYXBlLlxuICogQHJldHVybnMgVGhlIHVuZXNjYXBlZCBzdHJpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1bmVzY2FwZShzdHI6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiByZXBsYWNlKHN0ciwgVU5FU0NBUEVfTUFQKTtcbn1cblxuLyoqXG4gKiBVbmluZGVudHMgYSBzdHJpbmcgYnkgcmVtb3ZpbmcgYSBwcmVmaXggZnJvbSBlYWNoIGxpbmUuXG4gKlxuICogQHBhcmFtIHRleHQgLSBUaGUgc3RyaW5nIHRvIHVuaW5kZW50LlxuICogQHBhcmFtIHByZWZpeCAtIFRoZSBwcmVmaXggdG8gcmVtb3ZlIGZyb20gZWFjaCBsaW5lLlxuICogQHBhcmFtIHNob3VsZFRocm93SWZOb3RJbmRlbnRlZCAtIElmIGB0cnVlYCwgdGhyb3dzIGFuIGVycm9yIGlmIGEgbGluZSBpcyBub3QgaW5kZW50ZWQgd2l0aCB0aGUgcHJlZml4LlxuICogQHJldHVybnMgVGhlIHVuaW5kZW50ZWQgc3RyaW5nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdW5pbmRlbnQodGV4dDogc3RyaW5nLCBwcmVmaXg6IHN0cmluZywgc2hvdWxkVGhyb3dJZk5vdEluZGVudGVkID0gZmFsc2UpOiBzdHJpbmcge1xuICByZXR1cm4gdGV4dC5zcGxpdCgnXFxuJykubWFwKChsaW5lKSA9PiB7XG4gICAgaWYgKGxpbmUuc3RhcnRzV2l0aChwcmVmaXgpKSB7XG4gICAgICByZXR1cm4gbGluZS5zbGljZShwcmVmaXgubGVuZ3RoKTtcbiAgICB9XG4gICAgaWYgKHNob3VsZFRocm93SWZOb3RJbmRlbnRlZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBMaW5lIFwiJHtsaW5lfVwiIGlzIG5vdCBpbmRlbnRlZCB3aXRoIFwiJHtwcmVmaXh9XCJgKTtcbiAgICB9XG4gICAgcmV0dXJuIGxpbmU7XG4gIH0pLmpvaW4oJ1xcbicpO1xufVxuIl0sCiAgIm1hcHBp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
205
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3N0cmluZy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIENvbnRhaW5zIHV0aWxpdHkgZnVuY3Rpb25zIGZvciBzdHJpbmcgb3BlcmF0aW9ucy5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IE1heWJlUmV0dXJuIH0gZnJvbSAnLi90eXBlLnRzJztcbmltcG9ydCB0eXBlIHsgVmFsdWVQcm92aWRlciB9IGZyb20gJy4vdmFsdWUtcHJvdmlkZXIudHMnO1xuXG5pbXBvcnQgeyBhYm9ydFNpZ25hbE5ldmVyIH0gZnJvbSAnLi9hYm9ydC1jb250cm9sbGVyLnRzJztcbmltcG9ydCB7IGVzY2FwZVJlZ0V4cCB9IGZyb20gJy4vcmVnLWV4cC50cyc7XG5pbXBvcnQge1xuICBhc3NlcnQsXG4gIGVuc3VyZU5vbk51bGxhYmxlXG59IGZyb20gJy4vdHlwZS1ndWFyZHMudHMnO1xuaW1wb3J0IHsgcmVzb2x2ZVZhbHVlIH0gZnJvbSAnLi92YWx1ZS1wcm92aWRlci50cyc7XG5cbi8qKlxuICogQSBzeW5jaHJvbm91cy9hc3luY2hyb25vdXMgZnVuY3Rpb24gdGhhdCBnZW5lcmF0ZXMgcmVwbGFjZW1lbnQgc3RyaW5ncywgb3IgYSBzdHJpbmcgdG8gcmVwbGFjZSB3aXRoLlxuICovXG5leHBvcnQgdHlwZSBBc3luY1JlcGxhY2VyPENhcHR1cmVkR3JvdXBBcmdzIGV4dGVuZHMgc3RyaW5nW10+ID0gVmFsdWVQcm92aWRlcjxTdHJpbmdSZXBsYWNlbWVudCwgUmVwbGFjZUFyZ3M8Q2FwdHVyZWRHcm91cEFyZ3M+PjtcblxuLyoqXG4gKiBDb21tb24gYXJndW1lbnRzIGZvciB0aGUgYHJlcGxhY2VBbGxgL2ByZXBsYWNlQWxsQXN5bmNgIGZ1bmN0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXBsYWNlQXJnczxDYXB0dXJlZEdyb3VwQXJncyBleHRlbmRzIHN0cmluZ1tdPiB7XG4gIC8qKlxuICAgKiBDYXB0dXJlZCBncm91cCBhcmd1bWVudHMuXG4gICAqL1xuICBjYXB0dXJlZEdyb3VwQXJnczogQ2FwdHVyZWRHcm91cEFyZ3M7XG5cbiAgLyoqXG4gICAqIEdyb3VwcyBvZiB0aGUgbWF0Y2guXG4gICAqL1xuICBncm91cHM6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IHVuZGVmaW5lZD4gfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEluZGljZXMgb2YgdGhlIGdyb3VwcyB0aGF0IHdlcmUgbm90IGZvdW5kIGluIHRoZSBtYXRjaC5cbiAgICovXG4gIG1pc3NpbmdHcm91cEluZGljZXM6IG51bWJlcltdO1xuXG4gIC8qKlxuICAgKiBBbiBvZmZzZXQgb2YgdGhlIG1hdGNoLlxuICAgKi9cbiAgb2Zmc2V0OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEEgc291cmNlIG9mIHRoZSBtYXRjaC5cbiAgICovXG4gIHNvdXJjZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIHN1YnN0cmluZyBvZiB0aGUgbWF0Y2guXG4gICAqL1xuICBzdWJzdHJpbmc6IHN0cmluZztcbn1cblxuLyoqXG4gKiBBIHN5bmNocm9ub3VzIGZ1bmN0aW9uIHRoYXQgZ2VuZXJhdGVzIHJlcGxhY2VtZW50IHN0cmluZ3MsIG9yIGEgc3RyaW5nIHRvIHJlcGxhY2Ugd2l0aC5cbiAqL1xuZXhwb3J0IHR5cGUgUmVwbGFjZXI8Q2FwdHVyZWRHcm91cEFyZ3MgZXh0ZW5kcyBzdHJpbmdbXT4gPSAoKGFyZ3M6IFJlcGxhY2VBcmdzPENhcHR1cmVkR3JvdXBBcmdzPikgPT4gU3RyaW5nUmVwbGFjZW1lbnQpIHwgU3RyaW5nUmVwbGFjZW1lbnQ7XG5cbnR5cGUgU3RyaW5nUmVwbGFjZW1lbnQgPSBNYXliZVJldHVybjxzdHJpbmc+O1xuXG4vKipcbiAqIE1hcHBpbmcgb2Ygc3BlY2lhbCBjaGFyYWN0ZXJzIHRvIHRoZWlyIGVzY2FwZWQgY291bnRlcnBhcnRzLlxuICovXG5jb25zdCBFU0NBUEVfTUFQOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAnXFxuJzogJ1xcXFxuJyxcbiAgJ1xccic6ICdcXFxccicsXG4gICdcXHQnOiAnXFxcXHQnLFxuICAnXFxiJzogJ1xcXFxiJyxcbiAgJ1xcZic6ICdcXFxcZicsXG4gICdcXCcnOiAnXFxcXFxcJycsXG4gICdcIic6ICdcXFxcXCInLFxuICAnXFxcXCc6ICdcXFxcXFxcXCdcbn0gYXMgY29uc3Q7XG5cbmNvbnN0IENSID0gJ1xccic7XG5jb25zdCBMRiA9ICdcXG4nO1xuY29uc3QgTk9UX0ZPVU5EX0lOREVYID0gLTE7XG5cbi8qKlxuICogTWFwcGluZyBvZiBlc2NhcGVkIHNwZWNpYWwgY2hhcmFjdGVycyB0byB0aGVpciB1bmVzY2FwZWQgY291bnRlcnBhcnRzLlxuICovXG5jb25zdCBVTkVTQ0FQRV9NQVA6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbmZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKEVTQ0FQRV9NQVApKSB7XG4gIFVORVNDQVBFX01BUFt2YWx1ZV0gPSBrZXk7XG59XG5cbi8qKlxuICogRW5zdXJlcyB0aGF0IGEgc3RyaW5nIGVuZHMgd2l0aCB0aGUgc3BlY2lmaWVkIHN1ZmZpeCwgYWRkaW5nIGl0IGlmIG5lY2Vzc2FyeS5cbiAqXG4gKiBAcGFyYW0gc3RyIC0gVGhlIHN0cmluZyB0byBjaGVjay5cbiAqIEBwYXJhbSBzdWZmaXggLSBUaGUgc3VmZml4IHRvIGVuc3VyZS5cbiAqIEByZXR1cm5zIFRoZSBzdHJpbmcgdGhhdCBlbmRzIHdpdGggdGhlIHN1ZmZpeC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVuc3VyZUVuZHNXaXRoKHN0cjogc3RyaW5nLCBzdWZmaXg6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBzdHIuZW5kc1dpdGgoc3VmZml4KSA/IHN0ciA6IHN0ciArIHN1ZmZpeDtcbn1cblxuLyoqXG4gKiBFbnN1cmVzIHRoYXQgYSBzdHJpbmcgaGFzIGBMRmAgbGluZSBlbmRpbmdzLlxuICpcbiAqIEl0IHJlcGxhY2VzIGBDUkxGYCBsaW5lIGVuZGluZ3Mgd2l0aCBgTEZgLlxuICpcbiAqIEBwYXJhbSBzdHIgLSBUaGUgc3RyaW5nLlxuICogQHJldHVybnMgVGhlIHN0cmluZyB3aXRoIGBMRmAgbGluZSBlbmRpbmdzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZW5zdXJlTGZFbmRpbmdzKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHN0ci5yZXBsYWNlQWxsKC9cXHJcXG4/L2csICdcXG4nKTtcbn1cblxuLyoqXG4gKiBFbnN1cmVzIHRoYXQgYSBzdHJpbmcgc3RhcnRzIHdpdGggdGhlIHNwZWNpZmllZCBwcmVmaXgsIGFkZGluZyBpdCBpZiBuZWNlc3NhcnkuXG4gKlxuICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcgdG8gY2hlY2suXG4gKiBAcGFyYW0gcHJlZml4IC0gVGhlIHByZWZpeCB0byBlbnN1cmUuXG4gKiBAcmV0dXJucyBUaGUgc3RyaW5nIHRoYXQgc3RhcnRzIHdpdGggdGhlIHByZWZpeC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVuc3VyZVN0YXJ0c1dpdGgoc3RyOiBzdHJpbmcsIHByZWZpeDogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHN0ci5zdGFydHNXaXRoKHByZWZpeCkgPyBzdHIgOiBwcmVmaXggKyBzdHI7XG59XG5cbi8qKlxuICogRXNjYXBlcyBzcGVjaWFsIGNoYXJhY3RlcnMgaW4gYSBzdHJpbmcuXG4gKlxuICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcgdG8gZXNjYXBlLlxuICogQHJldHVybnMgVGhlIGVzY2FwZWQgc3RyaW5nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZXNjYXBlKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHJlcGxhY2Uoc3RyLCBFU0NBUEVfTUFQKTtcbn1cblxuLyoqXG4gKiBSZXR1cm5zIGEgZnVuY3Rpb24gdGhhdCBtYXBzIExGLW5vcm1hbGl6ZWQgb2Zmc2V0cyB0byBvcmlnaW5hbCBvZmZzZXRzLlxuICpcbiAqIEBwYXJhbSBzdHIgLSBUaGUgc3RyaW5nIHRvIGdldCB0aGUgTEYtbm9ybWFsaXplZCBpbmRpY2VzIGZyb20uXG4gKiBAcmV0dXJucyBBIGZ1bmN0aW9uIHRoYXQgbWFwcyBMRi1ub3JtYWxpemVkIG9mZnNldHMgdG8gb3JpZ2luYWwgb2Zmc2V0cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldExmTm9ybWFsaXplZE9mZnNldFRvT3JpZ2luYWxPZmZzZXRNYXBwZXIoc3RyOiBzdHJpbmcpOiAobGZPZmZzZXQ6IG51bWJlcikgPT4gbnVtYmVyIHtcbiAgY29uc3QgbGZPZmZzZXRUb09yaWdpbmFsT2Zmc2V0TWFwOiBudW1iZXJbXSA9IFtdO1xuXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgc3RyLmxlbmd0aDsgaSsrKSB7XG4gICAgaWYgKHN0cltpXSA9PT0gQ1IgJiYgc3RyW2kgKyAxXSA9PT0gTEYpIHtcbiAgICAgIGxmT2Zmc2V0VG9PcmlnaW5hbE9mZnNldE1hcC5wdXNoKGkgKyAxKTtcbiAgICAgIGkrKztcbiAgICB9IGVsc2Uge1xuICAgICAgbGZPZmZzZXRUb09yaWdpbmFsT2Zmc2V0TWFwLnB1c2goaSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIChsZk9mZnNldDogbnVtYmVyKTogbnVtYmVyID0+IHtcbiAgICBpZiAobGZPZmZzZXQgPCAwKSB7XG4gICAgICByZXR1cm4gbGZPZmZzZXQ7XG4gICAgfVxuICAgIGlmIChsZk9mZnNldCA+PSBsZk9mZnNldFRvT3JpZ2luYWxPZmZzZXRNYXAubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gbGZPZmZzZXQgLSBsZk9mZnNldFRvT3JpZ2luYWxPZmZzZXRNYXAubGVuZ3RoICsgc3RyLmxlbmd0aDtcbiAgICB9XG5cbiAgICBhc3NlcnQobGZPZmZzZXRUb09yaWdpbmFsT2Zmc2V0TWFwW2xmT2Zmc2V0XSAhPT0gdW5kZWZpbmVkLCAnQ291bGQgbm90IG1hcCBvZmZzZXQnKTtcbiAgICByZXR1cm4gbGZPZmZzZXRUb09yaWdpbmFsT2Zmc2V0TWFwW2xmT2Zmc2V0XTtcbiAgfTtcbn1cblxuLyoqXG4gKiBDaGVja3MgaWYgYSBzdHJpbmcgaGFzIGEgc2luZ2xlIG9jY3VycmVuY2Ugb2YgYSBzZWFyY2ggdmFsdWUuXG4gKlxuICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcgdG8gY2hlY2suXG4gKiBAcGFyYW0gc2VhcmNoVmFsdWUgLSBUaGUgc2VhcmNoIHZhbHVlIHRvIGNoZWNrIGZvci5cbiAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgc3RyaW5nIGhhcyBhIHNpbmdsZSBvY2N1cnJlbmNlIG9mIHRoZSBzZWFyY2ggdmFsdWUsIGBmYWxzZWAgb3RoZXJ3aXNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaGFzU2luZ2xlT2NjdXJyZW5jZShzdHI6IHN0cmluZywgc2VhcmNoVmFsdWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICBjb25zdCBmaXJzdEluZGV4ID0gc3RyLmluZGV4T2Yoc2VhcmNoVmFsdWUpO1xuICBjb25zdCBsYXN0SW5kZXggPSBzdHIubGFzdEluZGV4T2Yoc2VhcmNoVmFsdWUpO1xuICByZXR1cm4gZmlyc3RJbmRleCAhPT0gTk9UX0ZPVU5EX0lOREVYICYmIGZpcnN0SW5kZXggPT09IGxhc3RJbmRleDtcbn1cblxuLyoqXG4gKiBJbmRlbnRzIGEgc3RyaW5nIGJ5IGFkZGluZyBhIHByZWZpeCB0byBlYWNoIGxpbmUuXG4gKlxuICogQHBhcmFtIHRleHQgLSBUaGUgc3RyaW5nIHRvIGluZGVudC5cbiAqIEBwYXJhbSBwcmVmaXggLSBUaGUgcHJlZml4IHRvIGFkZCB0byBlYWNoIGxpbmUuXG4gKiBAcmV0dXJucyBUaGUgaW5kZW50ZWQgc3RyaW5nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaW5kZW50KHRleHQ6IHN0cmluZywgcHJlZml4OiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gdGV4dC5zcGxpdCgnXFxuJykubWFwKChsaW5lKSA9PiBgJHtwcmVmaXh9JHtsaW5lfWApLmpvaW4oJ1xcbicpO1xufVxuXG4vKipcbiAqIEluc2VydHMgYSBzdWJzdHJpbmcgYXQgYSBzcGVjaWZpZWQgcG9zaXRpb24gaW4gYSBzdHJpbmcuXG4gKlxuICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcgdG8gaW5zZXJ0IHRoZSBzdWJzdHJpbmcgaW50by5cbiAqIEBwYXJhbSBzdWJzdHJpbmcgLSBUaGUgc3Vic3RyaW5nIHRvIGluc2VydC5cbiAqIEBwYXJhbSBzdGFydEluZGV4IC0gVGhlIGluZGV4IHRvIGluc2VydCB0aGUgc3Vic3RyaW5nIGF0LlxuICogQHBhcmFtIGVuZEluZGV4IC0gVGhlIGluZGV4IHRvIGVuZCB0aGUgc3Vic3RyaW5nIGF0LlxuICogQHJldHVybnMgVGhlIG1vZGlmaWVkIHN0cmluZyB3aXRoIHRoZSBzdWJzdHJpbmcgaW5zZXJ0ZWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnNlcnRBdChzdHI6IHN0cmluZywgc3Vic3RyaW5nOiBzdHJpbmcsIHN0YXJ0SW5kZXg6IG51bWJlciwgZW5kSW5kZXg/OiBudW1iZXIpOiBzdHJpbmcge1xuICBlbmRJbmRleCA/Pz0gc3RhcnRJbmRleDtcbiAgcmV0dXJuIHN0ci5zbGljZSgwLCBzdGFydEluZGV4KSArIHN1YnN0cmluZyArIHN0ci5zbGljZShlbmRJbmRleCk7XG59XG5cbi8qKlxuICogQ29udmVydHMgYSBzdHJpbmcgaW50byBhIHZhbGlkIEphdmFTY3JpcHQgdmFyaWFibGUgbmFtZSBieSByZXBsYWNpbmcgaW52YWxpZCBjaGFyYWN0ZXJzIHdpdGggdW5kZXJzY29yZXMuXG4gKlxuICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcgdG8gY29udmVydC5cbiAqIEByZXR1cm5zIFRoZSB2YWxpZCB2YXJpYWJsZSBuYW1lLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFrZVZhbGlkVmFyaWFibGVOYW1lKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHJlcGxhY2VBbGwoc3RyLCAvW15hLXpBLVowLTlfXS9nLCAnXycpO1xufVxuXG4vKipcbiAqIE5vcm1hbGl6ZXMgYSBzdHJpbmcgYnkgY29udmVydGluZyBpdCB0byB0aGUgTkZDIGZvcm0gYW5kIHJlcGxhY2luZyBub24tYnJlYWtpbmcgc3BhY2VzIHdpdGggcmVndWxhciBzcGFjZXMuXG4gKlxuICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcgdG8gbm9ybWFsaXplLlxuICogQHJldHVybnMgVGhlIG5vcm1hbGl6ZWQgc3RyaW5nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbm9ybWFsaXplKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHJlcGxhY2VBbGwoc3RyLCAvXFx1MDBBMHxcXHUyMDJGL2csICcgJykubm9ybWFsaXplKCdORkMnKTtcbn1cblxuLyoqXG4gKiBSZXBsYWNlcyBvY2N1cnJlbmNlcyBvZiBzdHJpbmdzIGluIGEgZ2l2ZW4gc3RyaW5nIGJhc2VkIG9uIGEgcmVwbGFjZW1lbnRzIG1hcC5cbiAqXG4gKiBAcGFyYW0gc3RyIC0gVGhlIHN0cmluZyB0byBwZXJmb3JtIHJlcGxhY2VtZW50cyBvbi5cbiAqIEBwYXJhbSByZXBsYWNlbWVudHNNYXAgLSBBbiBvYmplY3QgbWFwcGluZyBzdHJpbmdzIHRvIHRoZWlyIHJlcGxhY2VtZW50IHZhbHVlcy5cbiAqIEByZXR1cm5zIFRoZSBtb2RpZmllZCBzdHJpbmcgd2l0aCByZXBsYWNlbWVudHMgYXBwbGllZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlcGxhY2Uoc3RyOiBzdHJpbmcsIHJlcGxhY2VtZW50c01hcDogUmVjb3JkPHN0cmluZywgc3RyaW5nPik6IHN0cmluZyB7XG4gIGNvbnN0IHJlZ0V4cCA9IG5ldyBSZWdFeHAoT2JqZWN0LmtleXMocmVwbGFjZW1lbnRzTWFwKS5tYXAoKHNvdXJjZSkgPT4gZXNjYXBlUmVnRXhwKHNvdXJjZSkpLmpvaW4oJ3wnKSwgJ2cnKTtcbiAgcmV0dXJuIHJlcGxhY2VBbGwoc3RyLCByZWdFeHAsICh7IHN1YnN0cmluZzogc291cmNlIH0pID0+IGVuc3VyZU5vbk51bGxhYmxlKHJlcGxhY2VtZW50c01hcFtzb3VyY2VdKSk7XG59XG5cbi8qKlxuICogUmVwbGFjZXMgYWxsIG9jY3VycmVuY2VzIG9mIGEgc2VhcmNoIHN0cmluZyBvciBwYXR0ZXJuIHdpdGggdGhlIHJlc3VsdHMgb2YgYW4gcmVwbGFjZXIgZnVuY3Rpb24uXG4gKlxuICogQHR5cGVQYXJhbSBSZXBsYWNlR3JvdXBBcmdzIC0gVGhlIHR5cGUgb2YgYWRkaXRpb25hbCBhcmd1bWVudHMgcGFzc2VkIHRvIHRoZSByZXBsYWNlciBmdW5jdGlvbi5cbiAqIEBwYXJhbSBzdHIgLSBUaGUgc3RyaW5nIGluIHdoaWNoIHRvIHBlcmZvcm0gcmVwbGFjZW1lbnRzLlxuICogQHBhcmFtIHNlYXJjaFZhbHVlIC0gVGhlIHN0cmluZyBvciByZWd1bGFyIGV4cHJlc3Npb24gdG8gc2VhcmNoIGZvci5cbiAqIEBwYXJhbSByZXBsYWNlciAtIEEgcmVwbGFjZXIgZnVuY3Rpb24gdGhhdCBnZW5lcmF0ZXMgcmVwbGFjZW1lbnQgc3RyaW5ncywgb3IgYSBzdHJpbmcgdG8gcmVwbGFjZSB3aXRoLlxuICogQHJldHVybnMgVGhlIHN0cmluZyB3aXRoIGFsbCByZXBsYWNlbWVudHMgbWFkZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlcGxhY2VBbGw8Q2FwdHVyZWRHcm91cEFyZ3MgZXh0ZW5kcyBzdHJpbmdbXT4oXG4gIHN0cjogc3RyaW5nLFxuICBzZWFyY2hWYWx1ZTogUmVnRXhwIHwgc3RyaW5nLFxuICByZXBsYWNlcjogUmVwbGFjZXI8Q2FwdHVyZWRHcm91cEFyZ3M+XG4pOiBzdHJpbmcge1xuICBpZiAodHlwZW9mIHJlcGxhY2VyID09PSAndW5kZWZpbmVkJykge1xuICAgIHJldHVybiBzdHI7XG4gIH1cblxuICBpZiAoc2VhcmNoVmFsdWUgaW5zdGFuY2VvZiBSZWdFeHAgJiYgIXNlYXJjaFZhbHVlLmdsb2JhbCkge1xuICAgIHNlYXJjaFZhbHVlID0gbmV3IFJlZ0V4cChzZWFyY2hWYWx1ZS5zb3VyY2UsIGAke3NlYXJjaFZhbHVlLmZsYWdzfWdgKTtcbiAgfVxuXG4gIGlmICh0eXBlb2YgcmVwbGFjZXIgPT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuIHN0ci5yZXBsYWNlQWxsKHNlYXJjaFZhbHVlLCByZXBsYWNlcik7XG4gIH1cblxuICByZXR1cm4gc3RyLnJlcGxhY2VBbGwoc2VhcmNoVmFsdWUsIChzdWJzdHJpbmc6IHN0cmluZywgLi4uYXJnczogdW5rbm93bltdKSA9PiB7XG4gICAgY29uc3QgU09VUkNFX0lOREVYX09GRlNFVF9GT1JfR1JPVVBfQVJHID0gMjtcbiAgICBjb25zdCBoYXNHcm91cHNBcmcgPSB0eXBlb2YgYXJncy5hdCgtMSkgPT09ICdvYmplY3QnO1xuICAgIGNvbnN0IHNvdXJjZUluZGV4ID0gaGFzR3JvdXBzQXJnID8gYXJncy5sZW5ndGggLSBTT1VSQ0VfSU5ERVhfT0ZGU0VUX0ZPUl9HUk9VUF9BUkcgOiBhcmdzLmxlbmd0aCAtIDE7XG5cbiAgICBjb25zdCByZXBsYWNlQXJnczogUmVwbGFjZUFyZ3M8Q2FwdHVyZWRHcm91cEFyZ3M+ID0ge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXJlc3RyaWN0ZWQtc3ludGF4IC0tIENhbid0IGF2b2lkLlxuICAgICAgY2FwdHVyZWRHcm91cEFyZ3M6IFtdIGFzIHVua25vd25bXSBhcyBDYXB0dXJlZEdyb3VwQXJncyxcbiAgICAgIGdyb3VwczogaGFzR3JvdXBzQXJnID8gYXJncy5hdCgtMSkgYXMgUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgdW5kZWZpbmVkPiA6IHVuZGVmaW5lZCxcbiAgICAgIG1pc3NpbmdHcm91cEluZGljZXM6IFtdLFxuICAgICAgb2Zmc2V0OiBhcmdzLmF0KHNvdXJjZUluZGV4IC0gMSkgYXMgbnVtYmVyLFxuICAgICAgc291cmNlOiBhcmdzLmF0KHNvdXJjZUluZGV4KSBhcyBzdHJpbmcsXG4gICAgICBzdWJzdHJpbmdcbiAgICB9O1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzb3VyY2VJbmRleCAtIDE7IGkrKykge1xuICAgICAgY29uc3QgaXRlbSA9IGFyZ3NbaV07XG4gICAgICBpZiAodHlwZW9mIGl0ZW0gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHJlcGxhY2VBcmdzLmNhcHR1cmVkR3JvdXBBcmdzLnB1c2goaXRlbSk7XG4gICAgICAgIC8qIHY4IGlnbm9yZSBzdGFydCAtLSB2OCB0cmFja3MgdGhlIGltcGxpY2l0IGVsc2UgYnJhbmNoIHRoYXQgbmV2ZXIgaGFwcGVucy4gKi9cbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGl0ZW0gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIC8qIHY4IGlnbm9yZSBzdG9wICovXG4gICAgICAgIHJlcGxhY2VBcmdzLm1pc3NpbmdHcm91cEluZGljZXMucHVzaChpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gKHJlcGxhY2VyKHJlcGxhY2VBcmdzKSBhcyBzdHJpbmcgfCB1bmRlZmluZWQpID8/IHJlcGxhY2VBcmdzLnN1YnN0cmluZztcbiAgfSk7XG59XG5cbi8qKlxuICogQXN5bmNocm9ub3VzbHkgcmVwbGFjZXMgYWxsIG9jY3VycmVuY2VzIG9mIGEgc2VhcmNoIHN0cmluZyBvciBwYXR0ZXJuIHdpdGggdGhlIHJlc3VsdHMgb2YgYW4gYXN5bmNocm9ub3VzIHJlcGxhY2VyIGZ1bmN0aW9uLlxuICpcbiAqIEB0eXBlUGFyYW0gUmVwbGFjZUdyb3VwQXJncyAtIFRoZSB0eXBlIG9mIGFkZGl0aW9uYWwgYXJndW1lbnRzIHBhc3NlZCB0byB0aGUgcmVwbGFjZXIgZnVuY3Rpb24uXG4gKiBAcGFyYW0gc3RyIC0gVGhlIHN0cmluZyBpbiB3aGljaCB0byBwZXJmb3JtIHJlcGxhY2VtZW50cy5cbiAqIEBwYXJhbSBzZWFyY2hWYWx1ZSAtIFRoZSBzdHJpbmcgb3IgcmVndWxhciBleHByZXNzaW9uIHRvIHNlYXJjaCBmb3IuXG4gKiBAcGFyYW0gcmVwbGFjZXIgLSBBIHN5bmNocm9ub3VzL2FzeW5jaHJvbm91cyBmdW5jdGlvbiB0aGF0IGdlbmVyYXRlcyByZXBsYWNlbWVudCBzdHJpbmdzLCBvciBhIHN0cmluZyB0byByZXBsYWNlIHdpdGguXG4gKiBAcGFyYW0gYWJvcnRTaWduYWwgLSBUaGUgYWJvcnQgc2lnbmFsIHRvIGNvbnRyb2wgdGhlIGV4ZWN1dGlvbiBvZiB0aGUgZnVuY3Rpb24uXG4gKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSB0aGF0IHJlc29sdmVzIHRvIHRoZSBzdHJpbmcgd2l0aCBhbGwgcmVwbGFjZW1lbnRzIG1hZGUuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZXBsYWNlQWxsQXN5bmM8UmVwbGFjZUdyb3VwQXJncyBleHRlbmRzIHN0cmluZ1tdPihcbiAgc3RyOiBzdHJpbmcsXG4gIHNlYXJjaFZhbHVlOiBSZWdFeHAgfCBzdHJpbmcsXG4gIHJlcGxhY2VyOiBBc3luY1JlcGxhY2VyPFJlcGxhY2VHcm91cEFyZ3M+LFxuICBhYm9ydFNpZ25hbD86IEFib3J0U2lnbmFsXG4pOiBQcm9taXNlPHN0cmluZz4ge1xuICBhYm9ydFNpZ25hbCA/Pz0gYWJvcnRTaWduYWxOZXZlcigpO1xuICBhYm9ydFNpZ25hbC50aHJvd0lmQWJvcnRlZCgpO1xuICBpZiAodHlwZW9mIHJlcGxhY2VyID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiByZXBsYWNlQWxsKHN0ciwgc2VhcmNoVmFsdWUsIHJlcGxhY2VyKTtcbiAgfVxuXG4gIGNvbnN0IHJlcGxhY2VtZW50QXN5bmNGbnM6ICgoKSA9PiBQcm9taXNlPFN0cmluZ1JlcGxhY2VtZW50PilbXSA9IFtdO1xuXG4gIHJlcGxhY2VBbGw8UmVwbGFjZUdyb3VwQXJncz4oc3RyLCBzZWFyY2hWYWx1ZSwgKGFyZ3MpID0+IHtcbiAgICByZXBsYWNlbWVudEFzeW5jRm5zLnB1c2goKCkgPT4gcmVzb2x2ZVZhbHVlKHJlcGxhY2VyLCB7IGFib3J0U2lnbmFsLCAuLi5hcmdzIH0pKTtcbiAgICByZXR1cm4gJyc7XG4gIH0pO1xuXG4gIGNvbnN0IHJlcGxhY2VtZW50czogU3RyaW5nUmVwbGFjZW1lbnRbXSA9IFtdO1xuXG4gIGZvciAoY29uc3QgYXN5bmNGbiBvZiByZXBsYWNlbWVudEFzeW5jRm5zKSB7XG4gICAgYWJvcnRTaWduYWwudGhyb3dJZkFib3J0ZWQoKTtcbiAgICByZXBsYWNlbWVudHMucHVzaChhd2FpdCBhc3luY0ZuKCkpO1xuICB9XG5cbiAgYWJvcnRTaWduYWwudGhyb3dJZkFib3J0ZWQoKTtcbiAgcmV0dXJuIHJlcGxhY2VBbGwoc3RyLCBzZWFyY2hWYWx1ZSwgKGFyZ3MpOiBzdHJpbmcgPT4gcmVwbGFjZW1lbnRzLnNoaWZ0KCkgPz8gYXJncy5zdWJzdHJpbmcpO1xufVxuXG4vKipcbiAqIFRyaW1zIHRoZSBzcGVjaWZpZWQgc3VmZml4IGZyb20gdGhlIGVuZCBvZiBhIHN0cmluZy5cbiAqXG4gKiBAcGFyYW0gc3RyIC0gVGhlIHN0cmluZyB0byB0cmltLlxuICogQHBhcmFtIHN1ZmZpeCAtIFRoZSBzdWZmaXggdG8gcmVtb3ZlIGZyb20gdGhlIGVuZCBvZiB0aGUgc3RyaW5nLlxuICogQHBhcmFtIHNob3VsZFZhbGlkYXRlIC0gSWYgYHRydWVgLCB0aHJvd3MgYW4gZXJyb3IgaWYgdGhlIHN0cmluZyBkb2VzIG5vdCBlbmQgd2l0aCB0aGUgc3VmZml4LlxuICogQHJldHVybnMgVGhlIHRyaW1tZWQgc3RyaW5nLlxuICogQHRocm93cyBJZiBgdmFsaWRhdGVgIGlzIGB0cnVlYCBhbmQgdGhlIHN0cmluZyBkb2VzIG5vdCBlbmQgd2l0aCB0aGUgc3VmZml4LlxuICovXG5leHBvcnQgZnVuY3Rpb24gdHJpbUVuZChzdHI6IHN0cmluZywgc3VmZml4OiBzdHJpbmcsIHNob3VsZFZhbGlkYXRlPzogYm9vbGVhbik6IHN0cmluZyB7XG4gIGlmIChzdHIuZW5kc1dpdGgoc3VmZml4KSkge1xuICAgIHJldHVybiBzdHIuc2xpY2UoMCwgLXN1ZmZpeC5sZW5ndGgpO1xuICB9XG5cbiAgaWYgKHNob3VsZFZhbGlkYXRlKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBTdHJpbmcgJHtzdHJ9IGRvZXMgbm90IGVuZCB3aXRoIHN1ZmZpeCAke3N1ZmZpeH1gKTtcbiAgfVxuXG4gIHJldHVybiBzdHI7XG59XG5cbi8qKlxuICogVHJpbXMgdGhlIHNwZWNpZmllZCBwcmVmaXggZnJvbSB0aGUgc3RhcnQgb2YgYSBzdHJpbmcuXG4gKlxuICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcgdG8gdHJpbS5cbiAqIEBwYXJhbSBwcmVmaXggLSBUaGUgcHJlZml4IHRvIHJlbW92ZSBmcm9tIHRoZSBzdGFydCBvZiB0aGUgc3RyaW5nLlxuICogQHBhcmFtIHZhbGlkYXRlIC0gSWYgYHRydWVgLCB0aHJvd3MgYW4gZXJyb3IgaWYgdGhlIHN0cmluZyBkb2VzIG5vdCBzdGFydCB3aXRoIHRoZSBwcmVmaXguXG4gKiBAcmV0dXJucyBUaGUgdHJpbW1lZCBzdHJpbmcuXG4gKiBAdGhyb3dzIElmIGB2YWxpZGF0ZWAgaXMgYHRydWVgIGFuZCB0aGUgc3RyaW5nIGRvZXMgbm90IHN0YXJ0IHdpdGggdGhlIHByZWZpeC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRyaW1TdGFydChzdHI6IHN0cmluZywgcHJlZml4OiBzdHJpbmcsIHZhbGlkYXRlPzogYm9vbGVhbik6IHN0cmluZyB7XG4gIGlmIChzdHIuc3RhcnRzV2l0aChwcmVmaXgpKSB7XG4gICAgcmV0dXJuIHN0ci5zbGljZShwcmVmaXgubGVuZ3RoKTtcbiAgfVxuXG4gIGlmICh2YWxpZGF0ZSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgU3RyaW5nICR7c3RyfSBkb2VzIG5vdCBzdGFydCB3aXRoIHByZWZpeCAke3ByZWZpeH1gKTtcbiAgfVxuXG4gIHJldHVybiBzdHI7XG59XG5cbi8qKlxuICogVW5lc2NhcGVzIGEgc3RyaW5nIGJ5IHJlcGxhY2luZyBlc2NhcGUgc2VxdWVuY2VzIHdpdGggdGhlaXIgY29ycmVzcG9uZGluZyBjaGFyYWN0ZXJzLlxuICpcbiAqIEBwYXJhbSBzdHIgLSBUaGUgc3RyaW5nIHRvIHVuZXNjYXBlLlxuICogQHJldHVybnMgVGhlIHVuZXNjYXBlZCBzdHJpbmcuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1bmVzY2FwZShzdHI6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiByZXBsYWNlKHN0ciwgVU5FU0NBUEVfTUFQKTtcbn1cblxuLyoqXG4gKiBVbmluZGVudHMgYSBzdHJpbmcgYnkgcmVtb3ZpbmcgYSBwcmVmaXggZnJvbSBlYWNoIGxpbmUuXG4gKlxuICogQHBhcmFtIHRleHQgLSBUaGUgc3RyaW5nIHRvIHVuaW5kZW50LlxuICogQHBhcmFtIHByZWZpeCAtIFRoZSBwcmVmaXggdG8gcmVtb3ZlIGZyb20gZWFjaCBsaW5lLlxuICogQHBhcmFtIHNob3VsZFRocm93SWZOb3RJbmRlbnRlZCAtIElmIGB0cnVlYCwgdGhyb3dzIGFuIGVycm9yIGlmIGEgbGluZSBpcyBub3QgaW5kZW50ZWQgd2l0aCB0aGUgcHJlZml4LlxuICogQHJldHVybnMgVGhlIHVuaW5kZW50ZWQgc3RyaW5nLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdW5pbmRlbnQodGV4dDogc3RyaW5nLCBwcmVmaXg6IHN0cmluZywgc2hvdWxkVGhyb3dJZk5vdEluZGVudGVkID0gZmFsc2UpOiBzdHJpbmcge1xuICByZXR1cm4gdGV4dC5zcGxpdCgnXFxuJykubWFwKChsaW5lKSA9PiB7XG4gICAgaWYgKGxpbmUuc3RhcnRzV2l0aChwcmVmaXgpKSB7XG4gICAgICByZXR1cm4gbGluZS5zbGljZShwcmVmaXgubGVuZ3RoKTtcbiAgICB9XG4gICAgaWYgKHNob3VsZFRocm93SWZOb3RJbmRlbnRlZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBMaW5lIFwiJHtsaW5lfVwiIGlzIG5vdCBpbmRlbnRlZCB3aXRoIFwiJHtwcmVmaXh9XCJgKTtcbiAgICB9XG4gICAgcmV0dXJuIGxpbmU7XG4gIH0pLmpvaW4oJ1xcbicpO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBU0EsU0FBUyx3QkFBd0I7QUFDakMsU0FBUyxv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
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @packageDocumentation
2
+ * @file
3
3
  *
4
4
  * A transformer that can transform Date to an ISO string and back.
5
5
  */
@@ -60,4 +60,4 @@ class DateTransformer extends TypedTransformer {
60
60
  export {
61
61
  DateTransformer
62
62
  };
63
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9kYXRlLXRyYW5zZm9ybWVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIEEgdHJhbnNmb3JtZXIgdGhhdCBjYW4gdHJhbnNmb3JtIERhdGUgdG8gYW4gSVNPIHN0cmluZyBhbmQgYmFjay5cbiAqL1xuXG5pbXBvcnQgeyBUeXBlZFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90eXBlZC10cmFuc2Zvcm1lci50cyc7XG5cbi8qKlxuICogQSB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gRGF0ZSB0byBhbiBJU08gc3RyaW5nIGFuZCBiYWNrLlxuICovXG5leHBvcnQgY2xhc3MgRGF0ZVRyYW5zZm9ybWVyIGV4dGVuZHMgVHlwZWRUcmFuc2Zvcm1lcjxEYXRlLCBzdHJpbmc+IHtcbiAgLyoqXG4gICAqIEFuIGlkIG9mIHRoZSB0cmFuc2Zvcm1lci5cbiAgICpcbiAgICogQHJldHVybnMgYGRhdGVgLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnZGF0ZSc7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiB0aGUgdmFsdWUgaXMgYSBEYXRlLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gY2hlY2suXG4gICAqIEByZXR1cm5zIEEgYm9vbGVhbiBpbmRpY2F0aW5nIGlmIHRoZSB2YWx1ZSBpcyBhIERhdGUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgY2FuVHJhbnNmb3JtKHZhbHVlOiB1bmtub3duKTogdmFsdWUgaXMgRGF0ZSB7XG4gICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgRGF0ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXN0b3JlcyB0aGUgdmFsdWUgZnJvbSBhIHN0cmluZy5cbiAgICpcbiAgICogQHBhcmFtIHRyYW5zZm9ybWVkVmFsdWUgLSBUaGUgdHJhbnNmb3JtZWQgdmFsdWUuXG4gICAqIEByZXR1cm5zIFRoZSByZXN0b3JlZCB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSByZXN0b3JlVmFsdWUodHJhbnNmb3JtZWRWYWx1ZTogc3RyaW5nKTogRGF0ZSB7XG4gICAgcmV0dXJuIG5ldyBEYXRlKHRyYW5zZm9ybWVkVmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyYW5zZm9ybXMgdGhlIHZhbHVlIHRvIGEgc3RyaW5nLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gdHJhbnNmb3JtLlxuICAgKiBAcmV0dXJucyBUaGUgdHJhbnNmb3JtZWQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdHJhbnNmb3JtVmFsdWUodmFsdWU6IERhdGUpOiBzdHJpbmcge1xuICAgIHJldHVybiB2YWx1ZS50b0lTT1N0cmluZygpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNQSxTQUFTLHdCQUF3QjtBQUsxQixNQUFNLHdCQUF3QixpQkFBK0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNbEUsSUFBb0IsS0FBYTtBQUMvQixXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGFBQWEsT0FBK0I7QUFDMUQsV0FBTyxpQkFBaUI7QUFBQSxFQUMxQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGFBQWEsa0JBQWdDO0FBQzNELFdBQU8sSUFBSSxLQUFLLGdCQUFnQjtBQUFBLEVBQ2xDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsZUFBZSxPQUFxQjtBQUNsRCxXQUFPLE1BQU0sWUFBWTtBQUFBLEVBQzNCO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
63
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9kYXRlLXRyYW5zZm9ybWVyLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogQSB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gRGF0ZSB0byBhbiBJU08gc3RyaW5nIGFuZCBiYWNrLlxuICovXG5cbmltcG9ydCB7IFR5cGVkVHJhbnNmb3JtZXIgfSBmcm9tICcuL3R5cGVkLXRyYW5zZm9ybWVyLnRzJztcblxuLyoqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSBEYXRlIHRvIGFuIElTTyBzdHJpbmcgYW5kIGJhY2suXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRlVHJhbnNmb3JtZXIgZXh0ZW5kcyBUeXBlZFRyYW5zZm9ybWVyPERhdGUsIHN0cmluZz4ge1xuICAvKipcbiAgICogQW4gaWQgb2YgdGhlIHRyYW5zZm9ybWVyLlxuICAgKlxuICAgKiBAcmV0dXJucyBgZGF0ZWAuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdkYXRlJztcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIHRoZSB2YWx1ZSBpcyBhIERhdGUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAgICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgaWYgdGhlIHZhbHVlIGlzIGEgRGF0ZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBjYW5UcmFuc2Zvcm0odmFsdWU6IHVua25vd24pOiB2YWx1ZSBpcyBEYXRlIHtcbiAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBEYXRlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc3RvcmVzIHRoZSB2YWx1ZSBmcm9tIGEgc3RyaW5nLlxuICAgKlxuICAgKiBAcGFyYW0gdHJhbnNmb3JtZWRWYWx1ZSAtIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZS5cbiAgICogQHJldHVybnMgVGhlIHJlc3RvcmVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHJlc3RvcmVWYWx1ZSh0cmFuc2Zvcm1lZFZhbHVlOiBzdHJpbmcpOiBEYXRlIHtcbiAgICByZXR1cm4gbmV3IERhdGUodHJhbnNmb3JtZWRWYWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNmb3JtcyB0aGUgdmFsdWUgdG8gYSBzdHJpbmcuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byB0cmFuc2Zvcm0uXG4gICAqIEByZXR1cm5zIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSB0cmFuc2Zvcm1WYWx1ZSh2YWx1ZTogRGF0ZSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlLnRvSVNPU3RyaW5nKCk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU1BLFNBQVMsd0JBQXdCO0FBSzFCLE1BQU0sd0JBQXdCLGlCQUErQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1sRSxJQUFvQixLQUFhO0FBQy9CLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsYUFBYSxPQUErQjtBQUMxRCxXQUFPLGlCQUFpQjtBQUFBLEVBQzFCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsYUFBYSxrQkFBZ0M7QUFDM0QsV0FBTyxJQUFJLEtBQUssZ0JBQWdCO0FBQUEsRUFDbEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixlQUFlLE9BQXFCO0FBQ2xELFdBQU8sTUFBTSxZQUFZO0FBQUEsRUFDM0I7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @packageDocumentation
2
+ * @file
3
3
  *
4
4
  * A transformer that can transform Duration to an ISO string and back.
5
5
  */
@@ -62,4 +62,4 @@ class DurationTransformer extends TypedTransformer {
62
62
  export {
63
63
  DurationTransformer
64
64
  };
65
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9kdXJhdGlvbi10cmFuc2Zvcm1lci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSBEdXJhdGlvbiB0byBhbiBJU08gc3RyaW5nIGFuZCBiYWNrLlxuICovXG5cbmltcG9ydCB7IG1vbWVudCB9IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHsgVHlwZWRUcmFuc2Zvcm1lciB9IGZyb20gJy4vdHlwZWQtdHJhbnNmb3JtZXIudHMnO1xuXG4vKipcbiAqIEEgdHJhbnNmb3JtZXIgdGhhdCBjb252ZXJ0cyBhIER1cmF0aW9uIHRvIGFuIElTTyBzdHJpbmcgYW5kIGJhY2suXG4gKi9cbmV4cG9ydCBjbGFzcyBEdXJhdGlvblRyYW5zZm9ybWVyIGV4dGVuZHMgVHlwZWRUcmFuc2Zvcm1lcjxtb21lbnQuRHVyYXRpb24sIHN0cmluZz4ge1xuICAvKipcbiAgICogQW4gaWQgb2YgdGhlIHRyYW5zZm9ybWVyLlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgaWQgb2YgdGhlIHRyYW5zZm9ybWVyLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnZHVyYXRpb24nO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgdmFsdWUgaXMgYSBEdXJhdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGNoZWNrLlxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHZhbHVlIGlzIGEgRHVyYXRpb24sIGBmYWxzZWAgb3RoZXJ3aXNlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGNhblRyYW5zZm9ybSh2YWx1ZTogdW5rbm93bik6IHZhbHVlIGlzIG1vbWVudC5EdXJhdGlvbiB7XG4gICAgY29uc3QgbWF5YmVEdXJhdGlvbiA9ICh2YWx1ZSA/PyB7fSkgYXMgUGFydGlhbDxtb21lbnQuRHVyYXRpb24+O1xuICAgIHJldHVybiAhIW1heWJlRHVyYXRpb24uYXNIb3VycyAmJiAhIW1heWJlRHVyYXRpb24uYXNNaW51dGVzICYmICEhbWF5YmVEdXJhdGlvbi5hc1NlY29uZHMgJiYgISFtYXliZUR1cmF0aW9uLmFzTWlsbGlzZWNvbmRzO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc3RvcmVzIHRoZSB2YWx1ZSBmcm9tIGEgc3RyaW5nLlxuICAgKlxuICAgKiBAcGFyYW0gdHJhbnNmb3JtZWRWYWx1ZSAtIFRoZSBzdHJpbmcgdG8gcmVzdG9yZSB0aGUgdmFsdWUgZnJvbS5cbiAgICogQHJldHVybnMgVGhlIHJlc3RvcmVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHJlc3RvcmVWYWx1ZSh0cmFuc2Zvcm1lZFZhbHVlOiBzdHJpbmcpOiBtb21lbnQuRHVyYXRpb24ge1xuICAgIHJldHVybiBtb21lbnQuZHVyYXRpb24odHJhbnNmb3JtZWRWYWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNmb3JtcyB0aGUgdmFsdWUgdG8gYSBzdHJpbmcuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byB0cmFuc2Zvcm0uXG4gICAqIEByZXR1cm5zIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSB0cmFuc2Zvcm1WYWx1ZSh2YWx1ZTogbW9tZW50LkR1cmF0aW9uKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdmFsdWUudG9JU09TdHJpbmcoKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsU0FBUyxjQUFjO0FBRXZCLFNBQVMsd0JBQXdCO0FBSzFCLE1BQU0sNEJBQTRCLGlCQUEwQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1qRixJQUFvQixLQUFhO0FBQy9CLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsYUFBYSxPQUEwQztBQUNyRSxVQUFNLGdCQUFpQixTQUFTLENBQUM7QUFDakMsV0FBTyxDQUFDLENBQUMsY0FBYyxXQUFXLENBQUMsQ0FBQyxjQUFjLGFBQWEsQ0FBQyxDQUFDLGNBQWMsYUFBYSxDQUFDLENBQUMsY0FBYztBQUFBLEVBQzlHO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsYUFBYSxrQkFBMkM7QUFDdEUsV0FBTyxPQUFPLFNBQVMsZ0JBQWdCO0FBQUEsRUFDekM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixlQUFlLE9BQWdDO0FBQzdELFdBQU8sTUFBTSxZQUFZO0FBQUEsRUFDM0I7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
65
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9kdXJhdGlvbi10cmFuc2Zvcm1lci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIEEgdHJhbnNmb3JtZXIgdGhhdCBjYW4gdHJhbnNmb3JtIER1cmF0aW9uIHRvIGFuIElTTyBzdHJpbmcgYW5kIGJhY2suXG4gKi9cblxuaW1wb3J0IHsgbW9tZW50IH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgeyBUeXBlZFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90eXBlZC10cmFuc2Zvcm1lci50cyc7XG5cbi8qKlxuICogQSB0cmFuc2Zvcm1lciB0aGF0IGNvbnZlcnRzIGEgRHVyYXRpb24gdG8gYW4gSVNPIHN0cmluZyBhbmQgYmFjay5cbiAqL1xuZXhwb3J0IGNsYXNzIER1cmF0aW9uVHJhbnNmb3JtZXIgZXh0ZW5kcyBUeXBlZFRyYW5zZm9ybWVyPG1vbWVudC5EdXJhdGlvbiwgc3RyaW5nPiB7XG4gIC8qKlxuICAgKiBBbiBpZCBvZiB0aGUgdHJhbnNmb3JtZXIuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBpZCBvZiB0aGUgdHJhbnNmb3JtZXIuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdkdXJhdGlvbic7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSB2YWx1ZSBpcyBhIER1cmF0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gY2hlY2suXG4gICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgdmFsdWUgaXMgYSBEdXJhdGlvbiwgYGZhbHNlYCBvdGhlcndpc2UuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgY2FuVHJhbnNmb3JtKHZhbHVlOiB1bmtub3duKTogdmFsdWUgaXMgbW9tZW50LkR1cmF0aW9uIHtcbiAgICBjb25zdCBtYXliZUR1cmF0aW9uID0gKHZhbHVlID8/IHt9KSBhcyBQYXJ0aWFsPG1vbWVudC5EdXJhdGlvbj47XG4gICAgcmV0dXJuICEhbWF5YmVEdXJhdGlvbi5hc0hvdXJzICYmICEhbWF5YmVEdXJhdGlvbi5hc01pbnV0ZXMgJiYgISFtYXliZUR1cmF0aW9uLmFzU2Vjb25kcyAmJiAhIW1heWJlRHVyYXRpb24uYXNNaWxsaXNlY29uZHM7XG4gIH1cblxuICAvKipcbiAgICogUmVzdG9yZXMgdGhlIHZhbHVlIGZyb20gYSBzdHJpbmcuXG4gICAqXG4gICAqIEBwYXJhbSB0cmFuc2Zvcm1lZFZhbHVlIC0gVGhlIHN0cmluZyB0byByZXN0b3JlIHRoZSB2YWx1ZSBmcm9tLlxuICAgKiBAcmV0dXJucyBUaGUgcmVzdG9yZWQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgcmVzdG9yZVZhbHVlKHRyYW5zZm9ybWVkVmFsdWU6IHN0cmluZyk6IG1vbWVudC5EdXJhdGlvbiB7XG4gICAgcmV0dXJuIG1vbWVudC5kdXJhdGlvbih0cmFuc2Zvcm1lZFZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm1zIHRoZSB2YWx1ZSB0byBhIHN0cmluZy5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHRyYW5zZm9ybS5cbiAgICogQHJldHVybnMgVGhlIHRyYW5zZm9ybWVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHRyYW5zZm9ybVZhbHVlKHZhbHVlOiBtb21lbnQuRHVyYXRpb24pOiBzdHJpbmcge1xuICAgIHJldHVybiB2YWx1ZS50b0lTT1N0cmluZygpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNQSxTQUFTLGNBQWM7QUFFdkIsU0FBUyx3QkFBd0I7QUFLMUIsTUFBTSw0QkFBNEIsaUJBQTBDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTWpGLElBQW9CLEtBQWE7QUFDL0IsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixhQUFhLE9BQTBDO0FBQ3JFLFVBQU0sZ0JBQWlCLFNBQVMsQ0FBQztBQUNqQyxXQUFPLENBQUMsQ0FBQyxjQUFjLFdBQVcsQ0FBQyxDQUFDLGNBQWMsYUFBYSxDQUFDLENBQUMsY0FBYyxhQUFhLENBQUMsQ0FBQyxjQUFjO0FBQUEsRUFDOUc7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixhQUFhLGtCQUEyQztBQUN0RSxXQUFPLE9BQU8sU0FBUyxnQkFBZ0I7QUFBQSxFQUN6QztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGVBQWUsT0FBZ0M7QUFDN0QsV0FBTyxNQUFNLFlBQVk7QUFBQSxFQUMzQjtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @packageDocumentation
2
+ * @file
3
3
  *
4
4
  * A transformer that combines multiple transformers.
5
5
  */
@@ -110,4 +110,4 @@ class GroupTransformer extends Transformer {
110
110
  export {
111
111
  GroupTransformer
112
112
  };
113
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9ncm91cC10cmFuc2Zvcm1lci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgY29tYmluZXMgbXVsdGlwbGUgdHJhbnNmb3JtZXJzLlxuICovXG5cbmltcG9ydCB7XG4gIGFzc2VydE5vbk51bGxhYmxlLFxuICBlbnN1cmVOb25OdWxsYWJsZVxufSBmcm9tICcuLi90eXBlLWd1YXJkcy50cyc7XG5pbXBvcnQgeyBUcmFuc2Zvcm1lciB9IGZyb20gJy4vdHJhbnNmb3JtZXIudHMnO1xuXG4vKipcbiAqIEEgdHJhbnNmb3JtZXIgdGhhdCBjb21iaW5lcyBtdWx0aXBsZSB0cmFuc2Zvcm1lcnMuXG4gKi9cbmV4cG9ydCBjbGFzcyBHcm91cFRyYW5zZm9ybWVyIGV4dGVuZHMgVHJhbnNmb3JtZXIge1xuICAvKipcbiAgICogQW4gaWQgb2YgdGhlIHRyYW5zZm9ybWVyLlxuICAgKlxuICAgKiBAcmV0dXJucyBgZ3JvdXBgLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnZ3JvdXAnO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyYW5zZm9ybWVycyB0byBjb21iaW5lLlxuICAgKlxuICAgKiBAcGFyYW0gdHJhbnNmb3JtZXJzIC0gVGhlIHRyYW5zZm9ybWVycyB0byBjb21iaW5lLlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgdHJhbnNmb3JtZXJzOiBUcmFuc2Zvcm1lcltdKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIHRoZSB2YWx1ZSBjYW4gYmUgdHJhbnNmb3JtZWQgYnkgYW55IG9mIHRoZSB0cmFuc2Zvcm1lcnMuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAgICogQHBhcmFtIGtleSAtIFRoZSBrZXkgb2YgdGhlIHZhbHVlIHRvIGNoZWNrLlxuICAgKiBAcmV0dXJucyBBIGJvb2xlYW4gaW5kaWNhdGluZyBpZiB0aGUgdmFsdWUgY2FuIGJlIHRyYW5zZm9ybWVkLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGNhblRyYW5zZm9ybSh2YWx1ZTogdW5rbm93biwga2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5nZXRGaXJzdFRyYW5zZm9ybWVyVGhhdENhblRyYW5zZm9ybSh2YWx1ZSwga2V5KSAhPT0gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB0cmFuc2Zvcm1lciB3aXRoIHRoZSBnaXZlbiBpZC5cbiAgICpcbiAgICogQHBhcmFtIHRyYW5zZm9ybWVySWQgLSBUaGUgaWQgb2YgdGhlIHRyYW5zZm9ybWVyIHRvIGdldC5cbiAgICogQHJldHVybnMgVGhlIHRyYW5zZm9ybWVyIHdpdGggdGhlIGdpdmVuIGlkLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGdldFRyYW5zZm9ybWVyKHRyYW5zZm9ybWVySWQ6IHN0cmluZyk6IFRyYW5zZm9ybWVyIHtcbiAgICByZXR1cm4gZW5zdXJlTm9uTnVsbGFibGUodGhpcy50cmFuc2Zvcm1lcnMuZmluZCgodCkgPT4gdC5pZCA9PT0gdHJhbnNmb3JtZXJJZCksIGBObyB0cmFuc2Zvcm1lciB3aXRoIGlkICR7dHJhbnNmb3JtZXJJZH0gZm91bmRgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm1zIHRoZSB2YWx1ZSB1c2luZyB0aGUgZmlyc3QgdHJhbnNmb3JtZXIgdGhhdCBjYW4gdHJhbnNmb3JtIGl0LlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gdHJhbnNmb3JtLlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsdWUgdG8gdHJhbnNmb3JtLlxuICAgKiBAcmV0dXJucyBUaGUgdHJhbnNmb3JtZWQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdHJhbnNmb3JtVmFsdWUodmFsdWU6IHVua25vd24sIGtleTogc3RyaW5nKTogdW5rbm93biB7XG4gICAgY29uc3QgdHJhbnNmb3JtZXIgPSB0aGlzLmdldEZpcnN0VHJhbnNmb3JtZXJUaGF0Q2FuVHJhbnNmb3JtKHZhbHVlLCBrZXkpO1xuICAgIGFzc2VydE5vbk51bGxhYmxlKHRyYW5zZm9ybWVyLCAnTm8gdHJhbnNmb3JtZXIgY2FuIHRyYW5zZm9ybSB0aGUgdmFsdWUnKTtcblxuICAgIHJldHVybiB0cmFuc2Zvcm1lci50cmFuc2Zvcm1WYWx1ZSh2YWx1ZSwga2V5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBpZCBvZiB0aGUgdHJhbnNmb3JtZXIgdGhhdCBjYW4gdHJhbnNmb3JtIHRoZSBnaXZlbiB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGdldCB0aGUgdHJhbnNmb3JtZXIgaWQgZm9yLlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsdWUgdG8gZ2V0IHRoZSB0cmFuc2Zvcm1lciBpZCBmb3IuXG4gICAqIEByZXR1cm5zIFRoZSBpZCBvZiB0aGUgdHJhbnNmb3JtZXIgdGhhdCBjYW4gdHJhbnNmb3JtIHRoZSBnaXZlbiB2YWx1ZS5cbiAgICovXG4gIHByb3RlY3RlZCBvdmVycmlkZSBnZXRUcmFuc2Zvcm1lcklkKHZhbHVlOiB1bmtub3duLCBrZXk6IHN0cmluZyk6IG51bGwgfCBzdHJpbmcge1xuICAgIGNvbnN0IHRyYW5zZm9ybWVyID0gdGhpcy5nZXRGaXJzdFRyYW5zZm9ybWVyVGhhdENhblRyYW5zZm9ybSh2YWx1ZSwga2V5KTtcbiAgICBpZiAodHJhbnNmb3JtZXIgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiB0cmFuc2Zvcm1lci5pZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlzIHRyYW5zZm9ybWVyIGRvZXMgbm90IHN1cHBvcnQgcmVzdG9yaW5nIHZhbHVlcy5cbiAgICpcbiAgICogQHRocm93c1xuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlc3RvcmVWYWx1ZSgpOiBuZXZlciB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdHcm91cFRyYW5zZm9ybWVyIGRvZXMgbm90IHN1cHBvcnQgcmVzdG9yaW5nIHZhbHVlcycpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGZpcnN0IHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSB0aGUgZ2l2ZW4gdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBnZXQgdGhlIGZpcnN0IHRyYW5zZm9ybWVyIGZvci5cbiAgICogQHBhcmFtIGtleSAtIFRoZSBrZXkgb2YgdGhlIHZhbHVlIHRvIGdldCB0aGUgZmlyc3QgdHJhbnNmb3JtZXIgZm9yLlxuICAgKiBAcmV0dXJucyBUaGUgZmlyc3QgdHJhbnNmb3JtZXIgdGhhdCBjYW4gdHJhbnNmb3JtIHRoZSBnaXZlbiB2YWx1ZS5cbiAgICovXG4gIHByaXZhdGUgZ2V0Rmlyc3RUcmFuc2Zvcm1lclRoYXRDYW5UcmFuc2Zvcm0odmFsdWU6IHVua25vd24sIGtleTogc3RyaW5nKTogbnVsbCB8IFRyYW5zZm9ybWVyIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm1lcnMuZmluZCgodCkgPT4gdC5jYW5UcmFuc2Zvcm0odmFsdWUsIGtleSkpID8/IG51bGw7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU1BO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxPQUNLO0FBQ1AsU0FBUyxtQkFBbUI7QUFLckIsTUFBTSx5QkFBeUIsWUFBWTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQWV6QyxZQUE2QixjQUE2QjtBQUMvRCxVQUFNO0FBRDRCO0FBQUEsRUFFcEM7QUFBQSxFQUZvQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVRwQyxJQUFvQixLQUFhO0FBQy9CLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQWtCZ0IsYUFBYSxPQUFnQixLQUFzQjtBQUNqRSxXQUFPLEtBQUssb0NBQW9DLE9BQU8sR0FBRyxNQUFNO0FBQUEsRUFDbEU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixlQUFlLGVBQW9DO0FBQ2pFLFdBQU8sa0JBQWtCLEtBQUssYUFBYSxLQUFLLENBQUMsTUFBTSxFQUFFLE9BQU8sYUFBYSxHQUFHLDBCQUEwQixhQUFhLFFBQVE7QUFBQSxFQUNqSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTZ0IsZUFBZSxPQUFnQixLQUFzQjtBQUNuRSxVQUFNLGNBQWMsS0FBSyxvQ0FBb0MsT0FBTyxHQUFHO0FBQ3ZFLHNCQUFrQixhQUFhLHdDQUF3QztBQUV2RSxXQUFPLFlBQVksZUFBZSxPQUFPLEdBQUc7QUFBQSxFQUM5QztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTbUIsaUJBQWlCLE9BQWdCLEtBQTRCO0FBQzlFLFVBQU0sY0FBYyxLQUFLLG9DQUFvQyxPQUFPLEdBQUc7QUFDdkUsUUFBSSxnQkFBZ0IsTUFBTTtBQUN4QixhQUFPO0FBQUEsSUFDVDtBQUVBLFdBQU8sWUFBWTtBQUFBLEVBQ3JCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT21CLGVBQXNCO0FBQ3ZDLFVBQU0sSUFBSSxNQUFNLG9EQUFvRDtBQUFBLEVBQ3RFO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVNRLG9DQUFvQyxPQUFnQixLQUFpQztBQUMzRixXQUFPLEtBQUssYUFBYSxLQUFLLENBQUMsTUFBTSxFQUFFLGFBQWEsT0FBTyxHQUFHLENBQUMsS0FBSztBQUFBLEVBQ3RFO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
113
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9ncm91cC10cmFuc2Zvcm1lci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIEEgdHJhbnNmb3JtZXIgdGhhdCBjb21iaW5lcyBtdWx0aXBsZSB0cmFuc2Zvcm1lcnMuXG4gKi9cblxuaW1wb3J0IHtcbiAgYXNzZXJ0Tm9uTnVsbGFibGUsXG4gIGVuc3VyZU5vbk51bGxhYmxlXG59IGZyb20gJy4uL3R5cGUtZ3VhcmRzLnRzJztcbmltcG9ydCB7IFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90cmFuc2Zvcm1lci50cyc7XG5cbi8qKlxuICogQSB0cmFuc2Zvcm1lciB0aGF0IGNvbWJpbmVzIG11bHRpcGxlIHRyYW5zZm9ybWVycy5cbiAqL1xuZXhwb3J0IGNsYXNzIEdyb3VwVHJhbnNmb3JtZXIgZXh0ZW5kcyBUcmFuc2Zvcm1lciB7XG4gIC8qKlxuICAgKiBBbiBpZCBvZiB0aGUgdHJhbnNmb3JtZXIuXG4gICAqXG4gICAqIEByZXR1cm5zIGBncm91cGAuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdncm91cCc7XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNmb3JtZXJzIHRvIGNvbWJpbmUuXG4gICAqXG4gICAqIEBwYXJhbSB0cmFuc2Zvcm1lcnMgLSBUaGUgdHJhbnNmb3JtZXJzIHRvIGNvbWJpbmUuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB0cmFuc2Zvcm1lcnM6IFRyYW5zZm9ybWVyW10pIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgdGhlIHZhbHVlIGNhbiBiZSB0cmFuc2Zvcm1lZCBieSBhbnkgb2YgdGhlIHRyYW5zZm9ybWVycy5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGNoZWNrLlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsdWUgdG8gY2hlY2suXG4gICAqIEByZXR1cm5zIEEgYm9vbGVhbiBpbmRpY2F0aW5nIGlmIHRoZSB2YWx1ZSBjYW4gYmUgdHJhbnNmb3JtZWQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgY2FuVHJhbnNmb3JtKHZhbHVlOiB1bmtub3duLCBrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmdldEZpcnN0VHJhbnNmb3JtZXJUaGF0Q2FuVHJhbnNmb3JtKHZhbHVlLCBrZXkpICE9PSBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHRyYW5zZm9ybWVyIHdpdGggdGhlIGdpdmVuIGlkLlxuICAgKlxuICAgKiBAcGFyYW0gdHJhbnNmb3JtZXJJZCAtIFRoZSBpZCBvZiB0aGUgdHJhbnNmb3JtZXIgdG8gZ2V0LlxuICAgKiBAcmV0dXJucyBUaGUgdHJhbnNmb3JtZXIgd2l0aCB0aGUgZ2l2ZW4gaWQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0VHJhbnNmb3JtZXIodHJhbnNmb3JtZXJJZDogc3RyaW5nKTogVHJhbnNmb3JtZXIge1xuICAgIHJldHVybiBlbnN1cmVOb25OdWxsYWJsZSh0aGlzLnRyYW5zZm9ybWVycy5maW5kKCh0KSA9PiB0LmlkID09PSB0cmFuc2Zvcm1lcklkKSwgYE5vIHRyYW5zZm9ybWVyIHdpdGggaWQgJHt0cmFuc2Zvcm1lcklkfSBmb3VuZGApO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyYW5zZm9ybXMgdGhlIHZhbHVlIHVzaW5nIHRoZSBmaXJzdCB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gaXQuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byB0cmFuc2Zvcm0uXG4gICAqIEBwYXJhbSBrZXkgLSBUaGUga2V5IG9mIHRoZSB2YWx1ZSB0byB0cmFuc2Zvcm0uXG4gICAqIEByZXR1cm5zIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSB0cmFuc2Zvcm1WYWx1ZSh2YWx1ZTogdW5rbm93biwga2V5OiBzdHJpbmcpOiB1bmtub3duIHtcbiAgICBjb25zdCB0cmFuc2Zvcm1lciA9IHRoaXMuZ2V0Rmlyc3RUcmFuc2Zvcm1lclRoYXRDYW5UcmFuc2Zvcm0odmFsdWUsIGtleSk7XG4gICAgYXNzZXJ0Tm9uTnVsbGFibGUodHJhbnNmb3JtZXIsICdObyB0cmFuc2Zvcm1lciBjYW4gdHJhbnNmb3JtIHRoZSB2YWx1ZScpO1xuXG4gICAgcmV0dXJuIHRyYW5zZm9ybWVyLnRyYW5zZm9ybVZhbHVlKHZhbHVlLCBrZXkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGlkIG9mIHRoZSB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gdGhlIGdpdmVuIHZhbHVlLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gZ2V0IHRoZSB0cmFuc2Zvcm1lciBpZCBmb3IuXG4gICAqIEBwYXJhbSBrZXkgLSBUaGUga2V5IG9mIHRoZSB2YWx1ZSB0byBnZXQgdGhlIHRyYW5zZm9ybWVyIGlkIGZvci5cbiAgICogQHJldHVybnMgVGhlIGlkIG9mIHRoZSB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gdGhlIGdpdmVuIHZhbHVlLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGdldFRyYW5zZm9ybWVySWQodmFsdWU6IHVua25vd24sIGtleTogc3RyaW5nKTogbnVsbCB8IHN0cmluZyB7XG4gICAgY29uc3QgdHJhbnNmb3JtZXIgPSB0aGlzLmdldEZpcnN0VHJhbnNmb3JtZXJUaGF0Q2FuVHJhbnNmb3JtKHZhbHVlLCBrZXkpO1xuICAgIGlmICh0cmFuc2Zvcm1lciA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRyYW5zZm9ybWVyLmlkO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgdHJhbnNmb3JtZXIgZG9lcyBub3Qgc3VwcG9ydCByZXN0b3JpbmcgdmFsdWVzLlxuICAgKlxuICAgKiBAdGhyb3dzXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVzdG9yZVZhbHVlKCk6IG5ldmVyIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0dyb3VwVHJhbnNmb3JtZXIgZG9lcyBub3Qgc3VwcG9ydCByZXN0b3JpbmcgdmFsdWVzJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgZmlyc3QgdHJhbnNmb3JtZXIgdGhhdCBjYW4gdHJhbnNmb3JtIHRoZSBnaXZlbiB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGdldCB0aGUgZmlyc3QgdHJhbnNmb3JtZXIgZm9yLlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsdWUgdG8gZ2V0IHRoZSBmaXJzdCB0cmFuc2Zvcm1lciBmb3IuXG4gICAqIEByZXR1cm5zIFRoZSBmaXJzdCB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gdGhlIGdpdmVuIHZhbHVlLlxuICAgKi9cbiAgcHJpdmF0ZSBnZXRGaXJzdFRyYW5zZm9ybWVyVGhhdENhblRyYW5zZm9ybSh2YWx1ZTogdW5rbm93biwga2V5OiBzdHJpbmcpOiBudWxsIHwgVHJhbnNmb3JtZXIge1xuICAgIHJldHVybiB0aGlzLnRyYW5zZm9ybWVycy5maW5kKCh0KSA9PiB0LmNhblRyYW5zZm9ybSh2YWx1ZSwga2V5KSkgPz8gbnVsbDtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUE7QUFBQSxFQUNFO0FBQUEsRUFDQTtBQUFBLE9BQ0s7QUFDUCxTQUFTLG1CQUFtQjtBQUtyQixNQUFNLHlCQUF5QixZQUFZO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBZXpDLFlBQTZCLGNBQTZCO0FBQy9ELFVBQU07QUFENEI7QUFBQSxFQUVwQztBQUFBLEVBRm9DO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBVHBDLElBQW9CLEtBQWE7QUFDL0IsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBa0JnQixhQUFhLE9BQWdCLEtBQXNCO0FBQ2pFLFdBQU8sS0FBSyxvQ0FBb0MsT0FBTyxHQUFHLE1BQU07QUFBQSxFQUNsRTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGVBQWUsZUFBb0M7QUFDakUsV0FBTyxrQkFBa0IsS0FBSyxhQUFhLEtBQUssQ0FBQyxNQUFNLEVBQUUsT0FBTyxhQUFhLEdBQUcsMEJBQTBCLGFBQWEsUUFBUTtBQUFBLEVBQ2pJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVNnQixlQUFlLE9BQWdCLEtBQXNCO0FBQ25FLFVBQU0sY0FBYyxLQUFLLG9DQUFvQyxPQUFPLEdBQUc7QUFDdkUsc0JBQWtCLGFBQWEsd0NBQXdDO0FBRXZFLFdBQU8sWUFBWSxlQUFlLE9BQU8sR0FBRztBQUFBLEVBQzlDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVNtQixpQkFBaUIsT0FBZ0IsS0FBNEI7QUFDOUUsVUFBTSxjQUFjLEtBQUssb0NBQW9DLE9BQU8sR0FBRztBQUN2RSxRQUFJLGdCQUFnQixNQUFNO0FBQ3hCLGFBQU87QUFBQSxJQUNUO0FBRUEsV0FBTyxZQUFZO0FBQUEsRUFDckI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPbUIsZUFBc0I7QUFDdkMsVUFBTSxJQUFJLE1BQU0sb0RBQW9EO0FBQUEsRUFDdEU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU1Esb0NBQW9DLE9BQWdCLEtBQWlDO0FBQzNGLFdBQU8sS0FBSyxhQUFhLEtBQUssQ0FBQyxNQUFNLEVBQUUsYUFBYSxPQUFPLEdBQUcsQ0FBQyxLQUFLO0FBQUEsRUFDdEU7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @packageDocumentation
2
+ * @file
3
3
  *
4
4
  * A transformer that can transform a Map to an array of entries and back.
5
5
  */
@@ -60,4 +60,4 @@ class MapTransformer extends TypedTransformer {
60
60
  export {
61
61
  MapTransformer
62
62
  };
63
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9tYXAtdHJhbnNmb3JtZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKlxuICogQSB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gYSBNYXAgdG8gYW4gYXJyYXkgb2YgZW50cmllcyBhbmQgYmFjay5cbiAqL1xuXG5pbXBvcnQgeyBUeXBlZFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90eXBlZC10cmFuc2Zvcm1lci50cyc7XG5cbnR5cGUgTWFwRW50cnkgPSByZWFkb25seSBba2V5OiB1bmtub3duLCB2YWx1ZTogdW5rbm93bl07XG5cbi8qKlxuICogQSB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gYSBNYXAgdG8gYW4gYXJyYXkgb2YgZW50cmllcyBhbmQgYmFjay5cbiAqL1xuZXhwb3J0IGNsYXNzIE1hcFRyYW5zZm9ybWVyIGV4dGVuZHMgVHlwZWRUcmFuc2Zvcm1lcjxNYXA8dW5rbm93biwgdW5rbm93bj4sIE1hcEVudHJ5W10+IHtcbiAgLyoqXG4gICAqIEFuIGlkIG9mIHRoZSB0cmFuc2Zvcm1lci5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIElEIG9mIHRoZSB0cmFuc2Zvcm1lci5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgaWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ21hcCc7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSB2YWx1ZSBpcyBhIE1hcC5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGNoZWNrLlxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHZhbHVlIGlzIGEgTWFwLCBgZmFsc2VgIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBjYW5UcmFuc2Zvcm0odmFsdWU6IHVua25vd24pOiB2YWx1ZSBpcyBNYXA8dW5rbm93biwgdW5rbm93bj4ge1xuICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIE1hcDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXN0b3JlcyB0aGUgdmFsdWUgZnJvbSBhbiBhcnJheSBvZiBlbnRyaWVzLlxuICAgKlxuICAgKiBAcGFyYW0gdHJhbnNmb3JtZWRWYWx1ZSAtIFRoZSBhcnJheSBvZiBlbnRyaWVzIHRvIHJlc3RvcmUgdGhlIHZhbHVlIGZyb20uXG4gICAqIEByZXR1cm5zIFRoZSByZXN0b3JlZCB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSByZXN0b3JlVmFsdWUodHJhbnNmb3JtZWRWYWx1ZTogTWFwRW50cnlbXSk6IE1hcDx1bmtub3duLCB1bmtub3duPiB7XG4gICAgcmV0dXJuIG5ldyBNYXA8dW5rbm93biwgdW5rbm93bj4odHJhbnNmb3JtZWRWYWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNmb3JtcyB0aGUgdmFsdWUgdG8gYW4gYXJyYXkgb2YgZW50cmllcy5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHRyYW5zZm9ybS5cbiAgICogQHJldHVybnMgVGhlIHRyYW5zZm9ybWVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHRyYW5zZm9ybVZhbHVlKHZhbHVlOiBNYXA8dW5rbm93biwgdW5rbm93bj4pOiBNYXBFbnRyeVtdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh2YWx1ZS5lbnRyaWVzKCkpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNQSxTQUFTLHdCQUF3QjtBQU8xQixNQUFNLHVCQUF1QixpQkFBb0Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNdEYsSUFBb0IsS0FBYTtBQUMvQixXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGFBQWEsT0FBZ0Q7QUFDM0UsV0FBTyxpQkFBaUI7QUFBQSxFQUMxQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGFBQWEsa0JBQXFEO0FBQ2hGLFdBQU8sSUFBSSxJQUFzQixnQkFBZ0I7QUFBQSxFQUNuRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGVBQWUsT0FBMEM7QUFDdkUsV0FBTyxNQUFNLEtBQUssTUFBTSxRQUFRLENBQUM7QUFBQSxFQUNuQztBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
63
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9tYXAtdHJhbnNmb3JtZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSBhIE1hcCB0byBhbiBhcnJheSBvZiBlbnRyaWVzIGFuZCBiYWNrLlxuICovXG5cbmltcG9ydCB7IFR5cGVkVHJhbnNmb3JtZXIgfSBmcm9tICcuL3R5cGVkLXRyYW5zZm9ybWVyLnRzJztcblxudHlwZSBNYXBFbnRyeSA9IHJlYWRvbmx5IFtrZXk6IHVua25vd24sIHZhbHVlOiB1bmtub3duXTtcblxuLyoqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSBhIE1hcCB0byBhbiBhcnJheSBvZiBlbnRyaWVzIGFuZCBiYWNrLlxuICovXG5leHBvcnQgY2xhc3MgTWFwVHJhbnNmb3JtZXIgZXh0ZW5kcyBUeXBlZFRyYW5zZm9ybWVyPE1hcDx1bmtub3duLCB1bmtub3duPiwgTWFwRW50cnlbXT4ge1xuICAvKipcbiAgICogQW4gaWQgb2YgdGhlIHRyYW5zZm9ybWVyLlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgSUQgb2YgdGhlIHRyYW5zZm9ybWVyLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnbWFwJztcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIHZhbHVlIGlzIGEgTWFwLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gY2hlY2suXG4gICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgdmFsdWUgaXMgYSBNYXAsIGBmYWxzZWAgb3RoZXJ3aXNlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGNhblRyYW5zZm9ybSh2YWx1ZTogdW5rbm93bik6IHZhbHVlIGlzIE1hcDx1bmtub3duLCB1bmtub3duPiB7XG4gICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgTWFwO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc3RvcmVzIHRoZSB2YWx1ZSBmcm9tIGFuIGFycmF5IG9mIGVudHJpZXMuXG4gICAqXG4gICAqIEBwYXJhbSB0cmFuc2Zvcm1lZFZhbHVlIC0gVGhlIGFycmF5IG9mIGVudHJpZXMgdG8gcmVzdG9yZSB0aGUgdmFsdWUgZnJvbS5cbiAgICogQHJldHVybnMgVGhlIHJlc3RvcmVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHJlc3RvcmVWYWx1ZSh0cmFuc2Zvcm1lZFZhbHVlOiBNYXBFbnRyeVtdKTogTWFwPHVua25vd24sIHVua25vd24+IHtcbiAgICByZXR1cm4gbmV3IE1hcDx1bmtub3duLCB1bmtub3duPih0cmFuc2Zvcm1lZFZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm1zIHRoZSB2YWx1ZSB0byBhbiBhcnJheSBvZiBlbnRyaWVzLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gdHJhbnNmb3JtLlxuICAgKiBAcmV0dXJucyBUaGUgdHJhbnNmb3JtZWQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdHJhbnNmb3JtVmFsdWUodmFsdWU6IE1hcDx1bmtub3duLCB1bmtub3duPik6IE1hcEVudHJ5W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHZhbHVlLmVudHJpZXMoKSk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU1BLFNBQVMsd0JBQXdCO0FBTzFCLE1BQU0sdUJBQXVCLGlCQUFvRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU10RixJQUFvQixLQUFhO0FBQy9CLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsYUFBYSxPQUFnRDtBQUMzRSxXQUFPLGlCQUFpQjtBQUFBLEVBQzFCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsYUFBYSxrQkFBcUQ7QUFDaEYsV0FBTyxJQUFJLElBQXNCLGdCQUFnQjtBQUFBLEVBQ25EO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsZUFBZSxPQUEwQztBQUN2RSxXQUFPLE1BQU0sS0FBSyxNQUFNLFFBQVEsQ0FBQztBQUFBLEVBQ25DO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @packageDocumentation
2
+ * @file
3
3
  *
4
4
  * A transformer that can transform a Set to an array and back.
5
5
  */
@@ -60,4 +60,4 @@ class SetTransformer extends TypedTransformer {
60
60
  export {
61
61
  SetTransformer
62
62
  };
63
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9zZXQtdHJhbnNmb3JtZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKlxuICogQSB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gYSBTZXQgdG8gYW4gYXJyYXkgYW5kIGJhY2suXG4gKi9cblxuaW1wb3J0IHsgVHlwZWRUcmFuc2Zvcm1lciB9IGZyb20gJy4vdHlwZWQtdHJhbnNmb3JtZXIudHMnO1xuXG4vKipcbiAqIEEgdHJhbnNmb3JtZXIgdGhhdCBjYW4gdHJhbnNmb3JtIGEgU2V0IHRvIGFuIGFycmF5IGFuZCBiYWNrLlxuICovXG5leHBvcnQgY2xhc3MgU2V0VHJhbnNmb3JtZXIgZXh0ZW5kcyBUeXBlZFRyYW5zZm9ybWVyPFNldDx1bmtub3duPiwgdW5rbm93bltdPiB7XG4gIC8qKlxuICAgKiBBbiBpZCBvZiB0aGUgdHJhbnNmb3JtZXIuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBJRCBvZiB0aGUgdHJhbnNmb3JtZXIuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdzZXQnO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgdmFsdWUgaXMgYSBTZXQuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSB2YWx1ZSBpcyBhIFNldCwgYGZhbHNlYCBvdGhlcndpc2UuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgY2FuVHJhbnNmb3JtKHZhbHVlOiB1bmtub3duKTogdmFsdWUgaXMgU2V0PHVua25vd24+IHtcbiAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBTZXQ7XG4gIH1cblxuICAvKipcbiAgICogUmVzdG9yZXMgdGhlIHZhbHVlIGZyb20gYW4gYXJyYXkuXG4gICAqXG4gICAqIEBwYXJhbSB0cmFuc2Zvcm1lZFZhbHVlIC0gVGhlIGFycmF5IHRvIHJlc3RvcmUgdGhlIHZhbHVlIGZyb20uXG4gICAqIEByZXR1cm5zIFRoZSByZXN0b3JlZCB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSByZXN0b3JlVmFsdWUodHJhbnNmb3JtZWRWYWx1ZTogdW5rbm93bltdKTogU2V0PHVua25vd24+IHtcbiAgICByZXR1cm4gbmV3IFNldCh0cmFuc2Zvcm1lZFZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm1zIHRoZSB2YWx1ZSB0byBhbiBhcnJheS5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHRyYW5zZm9ybS5cbiAgICogQHJldHVybnMgVGhlIHRyYW5zZm9ybWVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHRyYW5zZm9ybVZhbHVlKHZhbHVlOiBTZXQ8dW5rbm93bj4pOiB1bmtub3duW10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHZhbHVlKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsU0FBUyx3QkFBd0I7QUFLMUIsTUFBTSx1QkFBdUIsaUJBQTBDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTTVFLElBQW9CLEtBQWE7QUFDL0IsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixhQUFhLE9BQXVDO0FBQ2xFLFdBQU8saUJBQWlCO0FBQUEsRUFDMUI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixhQUFhLGtCQUEyQztBQUN0RSxXQUFPLElBQUksSUFBSSxnQkFBZ0I7QUFBQSxFQUNqQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGVBQWUsT0FBZ0M7QUFDN0QsV0FBTyxNQUFNLEtBQUssS0FBSztBQUFBLEVBQ3pCO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
63
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9zZXQtdHJhbnNmb3JtZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSBhIFNldCB0byBhbiBhcnJheSBhbmQgYmFjay5cbiAqL1xuXG5pbXBvcnQgeyBUeXBlZFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90eXBlZC10cmFuc2Zvcm1lci50cyc7XG5cbi8qKlxuICogQSB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gYSBTZXQgdG8gYW4gYXJyYXkgYW5kIGJhY2suXG4gKi9cbmV4cG9ydCBjbGFzcyBTZXRUcmFuc2Zvcm1lciBleHRlbmRzIFR5cGVkVHJhbnNmb3JtZXI8U2V0PHVua25vd24+LCB1bmtub3duW10+IHtcbiAgLyoqXG4gICAqIEFuIGlkIG9mIHRoZSB0cmFuc2Zvcm1lci5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIElEIG9mIHRoZSB0cmFuc2Zvcm1lci5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgaWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ3NldCc7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSB2YWx1ZSBpcyBhIFNldC5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGNoZWNrLlxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHZhbHVlIGlzIGEgU2V0LCBgZmFsc2VgIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBjYW5UcmFuc2Zvcm0odmFsdWU6IHVua25vd24pOiB2YWx1ZSBpcyBTZXQ8dW5rbm93bj4ge1xuICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFNldDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXN0b3JlcyB0aGUgdmFsdWUgZnJvbSBhbiBhcnJheS5cbiAgICpcbiAgICogQHBhcmFtIHRyYW5zZm9ybWVkVmFsdWUgLSBUaGUgYXJyYXkgdG8gcmVzdG9yZSB0aGUgdmFsdWUgZnJvbS5cbiAgICogQHJldHVybnMgVGhlIHJlc3RvcmVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHJlc3RvcmVWYWx1ZSh0cmFuc2Zvcm1lZFZhbHVlOiB1bmtub3duW10pOiBTZXQ8dW5rbm93bj4ge1xuICAgIHJldHVybiBuZXcgU2V0KHRyYW5zZm9ybWVkVmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyYW5zZm9ybXMgdGhlIHZhbHVlIHRvIGFuIGFycmF5LlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gdHJhbnNmb3JtLlxuICAgKiBAcmV0dXJucyBUaGUgdHJhbnNmb3JtZWQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdHJhbnNmb3JtVmFsdWUodmFsdWU6IFNldDx1bmtub3duPik6IHVua25vd25bXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odmFsdWUpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNQSxTQUFTLHdCQUF3QjtBQUsxQixNQUFNLHVCQUF1QixpQkFBMEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNNUUsSUFBb0IsS0FBYTtBQUMvQixXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGFBQWEsT0FBdUM7QUFDbEUsV0FBTyxpQkFBaUI7QUFBQSxFQUMxQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGFBQWEsa0JBQTJDO0FBQ3RFLFdBQU8sSUFBSSxJQUFJLGdCQUFnQjtBQUFBLEVBQ2pDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsZUFBZSxPQUFnQztBQUM3RCxXQUFPLE1BQU0sS0FBSyxLQUFLO0FBQUEsRUFDekI7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @packageDocumentation
2
+ * @file
3
3
  *
4
4
  * A transformer that skips private properties.
5
5
  */
@@ -58,4 +58,4 @@ class SkipPrivatePropertyTransformer extends Transformer {
58
58
  export {
59
59
  SkipPrivatePropertyTransformer
60
60
  };
61
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9za2lwLXByaXZhdGUtcHJvcGVydHktdHJhbnNmb3JtZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKlxuICogQSB0cmFuc2Zvcm1lciB0aGF0IHNraXBzIHByaXZhdGUgcHJvcGVydGllcy5cbiAqL1xuXG5pbXBvcnQgeyBUcmFuc2Zvcm1lciB9IGZyb20gJy4vdHJhbnNmb3JtZXIudHMnO1xuXG5jb25zdCBQUklWQVRFX1BST1BFUlRZX1BSRUZJWCA9ICdfJztcblxuLyoqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgc2tpcHMgcHJpdmF0ZSBwcm9wZXJ0aWVzLlxuICovXG5leHBvcnQgY2xhc3MgU2tpcFByaXZhdGVQcm9wZXJ0eVRyYW5zZm9ybWVyIGV4dGVuZHMgVHJhbnNmb3JtZXIge1xuICAvKipcbiAgICogQW4gaWQgb2YgdGhlIHRyYW5zZm9ybWVyLlxuICAgKlxuICAgKiBAcmV0dXJucyBgc2tpcC1wcml2YXRlLXByb3BlcnR5YC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgaWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ3NraXAtcHJpdmF0ZS1wcm9wZXJ0eSc7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiB0aGUgdHJhbnNmb3JtZXIgY2FuIHRyYW5zZm9ybSB0aGUgZ2l2ZW4gdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSBfdmFsdWUgLSBUaGUgdmFsdWUgdG8gY2hlY2suXG4gICAqIEBwYXJhbSBrZXkgLSBUaGUga2V5IG9mIHRoZSB2YWx1ZSB0byBjaGVjay5cbiAgICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgaWYgdGhlIHRyYW5zZm9ybWVyIGNhbiB0cmFuc2Zvcm0gdGhlIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGNhblRyYW5zZm9ybShfdmFsdWU6IHVua25vd24sIGtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGtleS5zdGFydHNXaXRoKFBSSVZBVEVfUFJPUEVSVFlfUFJFRklYKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm1zIHRoZSBnaXZlbiB2YWx1ZS5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHRyYW5zZm9ybWVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHRyYW5zZm9ybVZhbHVlKCk6IHVua25vd24ge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICAvKipcbiAgICogUmVzdG9yZXMgdGhlIGdpdmVuIHZhbHVlLlxuICAgKi9cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIHJlc3RvcmVWYWx1ZSgpOiB1bmtub3duIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1NraXBQcml2YXRlUHJvcGVydHlUcmFuc2Zvcm1lciBkb2VzIG5vdCBzdXBwb3J0IHJlc3RvcmluZyB2YWx1ZXMnKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsU0FBUyxtQkFBbUI7QUFFNUIsTUFBTSwwQkFBMEI7QUFLekIsTUFBTSx1Q0FBdUMsWUFBWTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU05RCxJQUFvQixLQUFhO0FBQy9CLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVNnQixhQUFhLFFBQWlCLEtBQXNCO0FBQ2xFLFdBQU8sSUFBSSxXQUFXLHVCQUF1QjtBQUFBLEVBQy9DO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT2dCLGlCQUEwQjtBQUN4QyxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS21CLGVBQXdCO0FBQ3pDLFVBQU0sSUFBSSxNQUFNLGtFQUFrRTtBQUFBLEVBQ3BGO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
61
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy9za2lwLXByaXZhdGUtcHJvcGVydHktdHJhbnNmb3JtZXIudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQGZpbGVcbiAqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgc2tpcHMgcHJpdmF0ZSBwcm9wZXJ0aWVzLlxuICovXG5cbmltcG9ydCB7IFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90cmFuc2Zvcm1lci50cyc7XG5cbmNvbnN0IFBSSVZBVEVfUFJPUEVSVFlfUFJFRklYID0gJ18nO1xuXG4vKipcbiAqIEEgdHJhbnNmb3JtZXIgdGhhdCBza2lwcyBwcml2YXRlIHByb3BlcnRpZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTa2lwUHJpdmF0ZVByb3BlcnR5VHJhbnNmb3JtZXIgZXh0ZW5kcyBUcmFuc2Zvcm1lciB7XG4gIC8qKlxuICAgKiBBbiBpZCBvZiB0aGUgdHJhbnNmb3JtZXIuXG4gICAqXG4gICAqIEByZXR1cm5zIGBza2lwLXByaXZhdGUtcHJvcGVydHlgLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnc2tpcC1wcml2YXRlLXByb3BlcnR5JztcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIHRoZSB0cmFuc2Zvcm1lciBjYW4gdHJhbnNmb3JtIHRoZSBnaXZlbiB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIF92YWx1ZSAtIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAgICogQHBhcmFtIGtleSAtIFRoZSBrZXkgb2YgdGhlIHZhbHVlIHRvIGNoZWNrLlxuICAgKiBAcmV0dXJucyBBIGJvb2xlYW4gaW5kaWNhdGluZyBpZiB0aGUgdHJhbnNmb3JtZXIgY2FuIHRyYW5zZm9ybSB0aGUgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgY2FuVHJhbnNmb3JtKF92YWx1ZTogdW5rbm93biwga2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4ga2V5LnN0YXJ0c1dpdGgoUFJJVkFURV9QUk9QRVJUWV9QUkVGSVgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyYW5zZm9ybXMgdGhlIGdpdmVuIHZhbHVlLlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdHJhbnNmb3JtZWQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdHJhbnNmb3JtVmFsdWUoKTogdW5rbm93biB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXN0b3JlcyB0aGUgZ2l2ZW4gdmFsdWUuXG4gICAqL1xuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgcmVzdG9yZVZhbHVlKCk6IHVua25vd24ge1xuICAgIHRocm93IG5ldyBFcnJvcignU2tpcFByaXZhdGVQcm9wZXJ0eVRyYW5zZm9ybWVyIGRvZXMgbm90IHN1cHBvcnQgcmVzdG9yaW5nIHZhbHVlcycpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNQSxTQUFTLG1CQUFtQjtBQUU1QixNQUFNLDBCQUEwQjtBQUt6QixNQUFNLHVDQUF1QyxZQUFZO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTTlELElBQW9CLEtBQWE7QUFDL0IsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU2dCLGFBQWEsUUFBaUIsS0FBc0I7QUFDbEUsV0FBTyxJQUFJLFdBQVcsdUJBQXVCO0FBQUEsRUFDL0M7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPZ0IsaUJBQTBCO0FBQ3hDLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLbUIsZUFBd0I7QUFDekMsVUFBTSxJQUFJLE1BQU0sa0VBQWtFO0FBQUEsRUFDcEY7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @packageDocumentation
2
+ * @file
3
3
  *
4
4
  * A base class for transformers.
5
5
  */
@@ -101,4 +101,4 @@ class Transformer {
101
101
  export {
102
102
  Transformer
103
103
  };
104
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy90cmFuc2Zvcm1lci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBBIGJhc2UgY2xhc3MgZm9yIHRyYW5zZm9ybWVycy5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IEdlbmVyaWNPYmplY3QgfSBmcm9tICcuLi90eXBlLWd1YXJkcy50cyc7XG5cbmltcG9ydCB7IGdldEFsbEtleXMgfSBmcm9tICcuLi9vYmplY3QtdXRpbHMudHMnO1xuXG4vKipcbiAqIEEgd3JhcHBlciBmb3IgYSB0cmFuc2Zvcm1lZCB2YWx1ZS5cbiAqL1xuaW50ZXJmYWNlIFRyYW5zZm9ybWVkVmFsdWVXcmFwcGVyIHtcbiAgLyoqXG4gICAqIEFuIGlkIG9mIHRoZSB0cmFuc2Zvcm1lciB0aGF0IHRyYW5zZm9ybWVkIHRoZSB2YWx1ZS5cbiAgICovXG4gIF9fdHJhbnNmb3JtZXJJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIHRyYW5zZm9ybWVkIHZhbHVlLlxuICAgKi9cbiAgdHJhbnNmb3JtZWRWYWx1ZTogdW5rbm93bjtcbn1cblxuLyoqXG4gKiBBIGJhc2UgY2xhc3MgZm9yIHRyYW5zZm9ybWVycy5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRyYW5zZm9ybWVyIHtcbiAgLyoqXG4gICAqIEFuIGlkIG9mIHRoZSB0cmFuc2Zvcm1lci5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBnZXQgaWQoKTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIHRoZSB0cmFuc2Zvcm1lciBjYW4gdHJhbnNmb3JtIHRoZSBnaXZlbiB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGNoZWNrLlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsdWUgdG8gY2hlY2suXG4gICAqIEByZXR1cm5zIEEgYm9vbGVhbiBpbmRpY2F0aW5nIGlmIHRoZSB0cmFuc2Zvcm1lciBjYW4gdHJhbnNmb3JtIHRoZSB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBjYW5UcmFuc2Zvcm0odmFsdWU6IHVua25vd24sIGtleTogc3RyaW5nKTogYm9vbGVhbjtcblxuICAvKipcbiAgICogR2V0cyB0aGUgdHJhbnNmb3JtZXIgd2l0aCB0aGUgZ2l2ZW4gaWQuXG4gICAqXG4gICAqIEBwYXJhbSB0cmFuc2Zvcm1lcklkIC0gVGhlIGlkIG9mIHRoZSB0cmFuc2Zvcm1lciB0byBnZXQuXG4gICAqIEByZXR1cm5zIFRoZSB0cmFuc2Zvcm1lciB3aXRoIHRoZSBnaXZlbiBpZC5cbiAgICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvcHJlZmVyLXJldHVybi10aGlzLXR5cGUgLS0gVGhlIG92ZXJyaWRkZW4gbWV0aG9kIG1pZ2h0IHJldHVybiBhIGRpZmZlcmVudCB0eXBlLlxuICBwdWJsaWMgZ2V0VHJhbnNmb3JtZXIodHJhbnNmb3JtZXJJZDogc3RyaW5nKTogVHJhbnNmb3JtZXIge1xuICAgIGlmICh0cmFuc2Zvcm1lcklkID09PSB0aGlzLmlkKSB7XG4gICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICB0aHJvdyBuZXcgRXJyb3IoYFRyYW5zZm9ybWVyIHdpdGggaWQgJHt0cmFuc2Zvcm1lcklkfSBub3QgZm91bmRgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm1zIHRoZSBnaXZlbiBvYmplY3QgcmVjdXJzaXZlbHkuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byB0cmFuc2Zvcm0uXG4gICAqIEByZXR1cm5zIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyB0cmFuc2Zvcm1PYmplY3RSZWN1cnNpdmVseSh2YWx1ZTogb2JqZWN0KTogR2VuZXJpY09iamVjdCB7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNmb3JtVmFsdWVSZWN1cnNpdmVseSh2YWx1ZSwgJycpIGFzIEdlbmVyaWNPYmplY3Q7XG4gIH1cblxuICAvKipcbiAgICogVHJhbnNmb3JtcyB0aGUgZ2l2ZW4gdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byB0cmFuc2Zvcm0uXG4gICAqIEBwYXJhbSBrZXkgLSBUaGUga2V5IG9mIHRoZSB2YWx1ZSB0byB0cmFuc2Zvcm0uXG4gICAqIEByZXR1cm5zIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCB0cmFuc2Zvcm1WYWx1ZSh2YWx1ZTogdW5rbm93biwga2V5OiBzdHJpbmcpOiB1bmtub3duO1xuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBpZCBvZiB0aGUgdHJhbnNmb3JtZXIgdGhhdCBjYW4gdHJhbnNmb3JtIHRoZSBnaXZlbiB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGdldCB0aGUgdHJhbnNmb3JtZXIgaWQgZm9yLlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsdWUgdG8gZ2V0IHRoZSB0cmFuc2Zvcm1lciBpZCBmb3IuXG4gICAqIEByZXR1cm5zIFRoZSBpZCBvZiB0aGUgdHJhbnNmb3JtZXIgdGhhdCBjYW4gdHJhbnNmb3JtIHRoZSBnaXZlbiB2YWx1ZS5cbiAgICovXG4gIHByb3RlY3RlZCBnZXRUcmFuc2Zvcm1lcklkKHZhbHVlOiB1bmtub3duLCBrZXk6IHN0cmluZyk6IG51bGwgfCBzdHJpbmcge1xuICAgIGlmICh0aGlzLmNhblRyYW5zZm9ybSh2YWx1ZSwga2V5KSkge1xuICAgICAgcmV0dXJuIHRoaXMuaWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKipcbiAgICogUmVzdG9yZXMgdGhlIGdpdmVuIHZhbHVlLlxuICAgKlxuICAgKiBAcGFyYW0gdHJhbnNmb3JtZWRWYWx1ZSAtIFRoZSB2YWx1ZSB0byByZXN0b3JlLlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsdWUgdG8gcmVzdG9yZS5cbiAgICogQHJldHVybnMgVGhlIHJlc3RvcmVkIHZhbHVlLlxuICAgKi9cbiAgcHJvdGVjdGVkIGFic3RyYWN0IHJlc3RvcmVWYWx1ZSh0cmFuc2Zvcm1lZFZhbHVlOiB1bmtub3duLCBrZXk6IHN0cmluZyk6IHVua25vd247XG5cbiAgLyoqXG4gICAqIFRyYW5zZm9ybXMgdGhlIGdpdmVuIHZhbHVlIHJlY3Vyc2l2ZWx5LlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gdHJhbnNmb3JtLlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsdWUgdG8gdHJhbnNmb3JtLlxuICAgKiBAcmV0dXJucyBUaGUgdHJhbnNmb3JtZWQgdmFsdWUuXG4gICAqL1xuICBwcml2YXRlIHRyYW5zZm9ybVZhbHVlUmVjdXJzaXZlbHkodmFsdWU6IHVua25vd24sIGtleTogc3RyaW5nKTogdW5rbm93biB7XG4gICAgY29uc3QgdHJhbnNmb3JtZXJJZCA9IHRoaXMuZ2V0VHJhbnNmb3JtZXJJZCh2YWx1ZSwga2V5KTtcbiAgICBpZiAodHJhbnNmb3JtZXJJZCkge1xuICAgICAgY29uc3QgdHJhbnNmb3JtZWRWYWx1ZSA9IHRoaXMudHJhbnNmb3JtVmFsdWUodmFsdWUsIGtleSk7XG4gICAgICBpZiAodHJhbnNmb3JtZWRWYWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHdyYXBwZXI6IFRyYW5zZm9ybWVkVmFsdWVXcmFwcGVyID0ge1xuICAgICAgICBfX3RyYW5zZm9ybWVySWQ6IHRyYW5zZm9ybWVySWQsXG4gICAgICAgIHRyYW5zZm9ybWVkVmFsdWVcbiAgICAgIH07XG5cbiAgICAgIHJldHVybiB3cmFwcGVyO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ29iamVjdCcpIHtcbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgIHJldHVybiB2YWx1ZS5tYXAoKGNoaWxkVmFsdWUsIGluZGV4KSA9PiB0aGlzLnRyYW5zZm9ybVZhbHVlUmVjdXJzaXZlbHkoY2hpbGRWYWx1ZSwgU3RyaW5nKGluZGV4KSkpO1xuICAgIH1cblxuICAgIGNvbnN0IHRyYW5zZm9ybWVkVmFsdWVXcmFwcGVyID0gdmFsdWUgYXMgUGFydGlhbDxUcmFuc2Zvcm1lZFZhbHVlV3JhcHBlcj47XG4gICAgaWYgKHRyYW5zZm9ybWVkVmFsdWVXcmFwcGVyLl9fdHJhbnNmb3JtZXJJZCkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0VHJhbnNmb3JtZXIodHJhbnNmb3JtZWRWYWx1ZVdyYXBwZXIuX190cmFuc2Zvcm1lcklkKS5yZXN0b3JlVmFsdWUodHJhbnNmb3JtZWRWYWx1ZVdyYXBwZXIudHJhbnNmb3JtZWRWYWx1ZSwga2V5KTtcbiAgICB9XG5cbiAgICBjb25zdCByZWNvcmQ6IEdlbmVyaWNPYmplY3QgPSB7fTtcblxuICAgIGZvciAoY29uc3QgY2hpbGRLZXkgb2YgZ2V0QWxsS2V5cyh2YWx1ZSkpIHtcbiAgICAgIGNvbnN0IGNoaWxkVmFsdWUgPSB2YWx1ZVtjaGlsZEtleV07XG4gICAgICBjb25zdCB0cmFuc2Zvcm1lZENoaWxkVmFsdWUgPSB0aGlzLnRyYW5zZm9ybVZhbHVlUmVjdXJzaXZlbHkoY2hpbGRWYWx1ZSwgY2hpbGRLZXkpO1xuICAgICAgcmVjb3JkW2NoaWxkS2V5XSA9IHRyYW5zZm9ybWVkQ2hpbGRWYWx1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gcmVjb3JkO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRQSxTQUFTLGtCQUFrQjtBQW9CcEIsTUFBZSxZQUFZO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQXNCekIsZUFBZSxlQUFvQztBQUN4RCxRQUFJLGtCQUFrQixLQUFLLElBQUk7QUFDN0IsYUFBTztBQUFBLElBQ1Q7QUFFQSxVQUFNLElBQUksTUFBTSx1QkFBdUIsYUFBYSxZQUFZO0FBQUEsRUFDbEU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLDJCQUEyQixPQUE4QjtBQUM5RCxXQUFPLEtBQUssMEJBQTBCLE9BQU8sRUFBRTtBQUFBLEVBQ2pEO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQWtCVSxpQkFBaUIsT0FBZ0IsS0FBNEI7QUFDckUsUUFBSSxLQUFLLGFBQWEsT0FBTyxHQUFHLEdBQUc7QUFDakMsYUFBTyxLQUFLO0FBQUEsSUFDZDtBQUVBLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQWtCUSwwQkFBMEIsT0FBZ0IsS0FBc0I7QUFDdEUsVUFBTSxnQkFBZ0IsS0FBSyxpQkFBaUIsT0FBTyxHQUFHO0FBQ3RELFFBQUksZUFBZTtBQUNqQixZQUFNLG1CQUFtQixLQUFLLGVBQWUsT0FBTyxHQUFHO0FBQ3ZELFVBQUkscUJBQXFCLFFBQVc7QUFDbEMsZUFBTztBQUFBLE1BQ1Q7QUFFQSxZQUFNLFVBQW1DO0FBQUEsUUFDdkMsaUJBQWlCO0FBQUEsUUFDakI7QUFBQSxNQUNGO0FBRUEsYUFBTztBQUFBLElBQ1Q7QUFFQSxRQUFJLFVBQVUsTUFBTTtBQUNsQixhQUFPO0FBQUEsSUFDVDtBQUVBLFFBQUksT0FBTyxVQUFVLFVBQVU7QUFDN0IsYUFBTztBQUFBLElBQ1Q7QUFFQSxRQUFJLE1BQU0sUUFBUSxLQUFLLEdBQUc7QUFDeEIsYUFBTyxNQUFNLElBQUksQ0FBQyxZQUFZLFVBQVUsS0FBSywwQkFBMEIsWUFBWSxPQUFPLEtBQUssQ0FBQyxDQUFDO0FBQUEsSUFDbkc7QUFFQSxVQUFNLDBCQUEwQjtBQUNoQyxRQUFJLHdCQUF3QixpQkFBaUI7QUFDM0MsYUFBTyxLQUFLLGVBQWUsd0JBQXdCLGVBQWUsRUFBRSxhQUFhLHdCQUF3QixrQkFBa0IsR0FBRztBQUFBLElBQ2hJO0FBRUEsVUFBTSxTQUF3QixDQUFDO0FBRS9CLGVBQVcsWUFBWSxXQUFXLEtBQUssR0FBRztBQUN4QyxZQUFNLGFBQWEsTUFBTSxRQUFRO0FBQ2pDLFlBQU0sd0JBQXdCLEtBQUssMEJBQTBCLFlBQVksUUFBUTtBQUNqRixhQUFPLFFBQVEsSUFBSTtBQUFBLElBQ3JCO0FBRUEsV0FBTztBQUFBLEVBQ1Q7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
104
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy90cmFuc2Zvcm1lci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIEEgYmFzZSBjbGFzcyBmb3IgdHJhbnNmb3JtZXJzLlxuICovXG5cbmltcG9ydCB0eXBlIHsgR2VuZXJpY09iamVjdCB9IGZyb20gJy4uL3R5cGUtZ3VhcmRzLnRzJztcblxuaW1wb3J0IHsgZ2V0QWxsS2V5cyB9IGZyb20gJy4uL29iamVjdC11dGlscy50cyc7XG5cbi8qKlxuICogQSB3cmFwcGVyIGZvciBhIHRyYW5zZm9ybWVkIHZhbHVlLlxuICovXG5pbnRlcmZhY2UgVHJhbnNmb3JtZWRWYWx1ZVdyYXBwZXIge1xuICAvKipcbiAgICogQW4gaWQgb2YgdGhlIHRyYW5zZm9ybWVyIHRoYXQgdHJhbnNmb3JtZWQgdGhlIHZhbHVlLlxuICAgKi9cbiAgX190cmFuc2Zvcm1lcklkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgdHJhbnNmb3JtZWQgdmFsdWUuXG4gICAqL1xuICB0cmFuc2Zvcm1lZFZhbHVlOiB1bmtub3duO1xufVxuXG4vKipcbiAqIEEgYmFzZSBjbGFzcyBmb3IgdHJhbnNmb3JtZXJzLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVHJhbnNmb3JtZXIge1xuICAvKipcbiAgICogQW4gaWQgb2YgdGhlIHRyYW5zZm9ybWVyLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGdldCBpZCgpOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgdGhlIHRyYW5zZm9ybWVyIGNhbiB0cmFuc2Zvcm0gdGhlIGdpdmVuIHZhbHVlLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gY2hlY2suXG4gICAqIEBwYXJhbSBrZXkgLSBUaGUga2V5IG9mIHRoZSB2YWx1ZSB0byBjaGVjay5cbiAgICogQHJldHVybnMgQSBib29sZWFuIGluZGljYXRpbmcgaWYgdGhlIHRyYW5zZm9ybWVyIGNhbiB0cmFuc2Zvcm0gdGhlIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGNhblRyYW5zZm9ybSh2YWx1ZTogdW5rbm93biwga2V5OiBzdHJpbmcpOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB0cmFuc2Zvcm1lciB3aXRoIHRoZSBnaXZlbiBpZC5cbiAgICpcbiAgICogQHBhcmFtIHRyYW5zZm9ybWVySWQgLSBUaGUgaWQgb2YgdGhlIHRyYW5zZm9ybWVyIHRvIGdldC5cbiAgICogQHJldHVybnMgVGhlIHRyYW5zZm9ybWVyIHdpdGggdGhlIGdpdmVuIGlkLlxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9wcmVmZXItcmV0dXJuLXRoaXMtdHlwZSAtLSBUaGUgb3ZlcnJpZGRlbiBtZXRob2QgbWlnaHQgcmV0dXJuIGEgZGlmZmVyZW50IHR5cGUuXG4gIHB1YmxpYyBnZXRUcmFuc2Zvcm1lcih0cmFuc2Zvcm1lcklkOiBzdHJpbmcpOiBUcmFuc2Zvcm1lciB7XG4gICAgaWYgKHRyYW5zZm9ybWVySWQgPT09IHRoaXMuaWQpIHtcbiAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHRocm93IG5ldyBFcnJvcihgVHJhbnNmb3JtZXIgd2l0aCBpZCAke3RyYW5zZm9ybWVySWR9IG5vdCBmb3VuZGApO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyYW5zZm9ybXMgdGhlIGdpdmVuIG9iamVjdCByZWN1cnNpdmVseS5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHRyYW5zZm9ybS5cbiAgICogQHJldHVybnMgVGhlIHRyYW5zZm9ybWVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIHRyYW5zZm9ybU9iamVjdFJlY3Vyc2l2ZWx5KHZhbHVlOiBvYmplY3QpOiBHZW5lcmljT2JqZWN0IHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm1WYWx1ZVJlY3Vyc2l2ZWx5KHZhbHVlLCAnJykgYXMgR2VuZXJpY09iamVjdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm1zIHRoZSBnaXZlbiB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHRyYW5zZm9ybS5cbiAgICogQHBhcmFtIGtleSAtIFRoZSBrZXkgb2YgdGhlIHZhbHVlIHRvIHRyYW5zZm9ybS5cbiAgICogQHJldHVybnMgVGhlIHRyYW5zZm9ybWVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHRyYW5zZm9ybVZhbHVlKHZhbHVlOiB1bmtub3duLCBrZXk6IHN0cmluZyk6IHVua25vd247XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGlkIG9mIHRoZSB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gdGhlIGdpdmVuIHZhbHVlLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gZ2V0IHRoZSB0cmFuc2Zvcm1lciBpZCBmb3IuXG4gICAqIEBwYXJhbSBrZXkgLSBUaGUga2V5IG9mIHRoZSB2YWx1ZSB0byBnZXQgdGhlIHRyYW5zZm9ybWVyIGlkIGZvci5cbiAgICogQHJldHVybnMgVGhlIGlkIG9mIHRoZSB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gdGhlIGdpdmVuIHZhbHVlLlxuICAgKi9cbiAgcHJvdGVjdGVkIGdldFRyYW5zZm9ybWVySWQodmFsdWU6IHVua25vd24sIGtleTogc3RyaW5nKTogbnVsbCB8IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuY2FuVHJhbnNmb3JtKHZhbHVlLCBrZXkpKSB7XG4gICAgICByZXR1cm4gdGhpcy5pZDtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXN0b3JlcyB0aGUgZ2l2ZW4gdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB0cmFuc2Zvcm1lZFZhbHVlIC0gVGhlIHZhbHVlIHRvIHJlc3RvcmUuXG4gICAqIEBwYXJhbSBrZXkgLSBUaGUga2V5IG9mIHRoZSB2YWx1ZSB0byByZXN0b3JlLlxuICAgKiBAcmV0dXJucyBUaGUgcmVzdG9yZWQgdmFsdWUuXG4gICAqL1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgcmVzdG9yZVZhbHVlKHRyYW5zZm9ybWVkVmFsdWU6IHVua25vd24sIGtleTogc3RyaW5nKTogdW5rbm93bjtcblxuICAvKipcbiAgICogVHJhbnNmb3JtcyB0aGUgZ2l2ZW4gdmFsdWUgcmVjdXJzaXZlbHkuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byB0cmFuc2Zvcm0uXG4gICAqIEBwYXJhbSBrZXkgLSBUaGUga2V5IG9mIHRoZSB2YWx1ZSB0byB0cmFuc2Zvcm0uXG4gICAqIEByZXR1cm5zIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZS5cbiAgICovXG4gIHByaXZhdGUgdHJhbnNmb3JtVmFsdWVSZWN1cnNpdmVseSh2YWx1ZTogdW5rbm93biwga2V5OiBzdHJpbmcpOiB1bmtub3duIHtcbiAgICBjb25zdCB0cmFuc2Zvcm1lcklkID0gdGhpcy5nZXRUcmFuc2Zvcm1lcklkKHZhbHVlLCBrZXkpO1xuICAgIGlmICh0cmFuc2Zvcm1lcklkKSB7XG4gICAgICBjb25zdCB0cmFuc2Zvcm1lZFZhbHVlID0gdGhpcy50cmFuc2Zvcm1WYWx1ZSh2YWx1ZSwga2V5KTtcbiAgICAgIGlmICh0cmFuc2Zvcm1lZFZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cblxuICAgICAgY29uc3Qgd3JhcHBlcjogVHJhbnNmb3JtZWRWYWx1ZVdyYXBwZXIgPSB7XG4gICAgICAgIF9fdHJhbnNmb3JtZXJJZDogdHJhbnNmb3JtZXJJZCxcbiAgICAgICAgdHJhbnNmb3JtZWRWYWx1ZVxuICAgICAgfTtcblxuICAgICAgcmV0dXJuIHdyYXBwZXI7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHZhbHVlICE9PSAnb2JqZWN0Jykge1xuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cblxuICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgcmV0dXJuIHZhbHVlLm1hcCgoY2hpbGRWYWx1ZSwgaW5kZXgpID0+IHRoaXMudHJhbnNmb3JtVmFsdWVSZWN1cnNpdmVseShjaGlsZFZhbHVlLCBTdHJpbmcoaW5kZXgpKSk7XG4gICAgfVxuXG4gICAgY29uc3QgdHJhbnNmb3JtZWRWYWx1ZVdyYXBwZXIgPSB2YWx1ZSBhcyBQYXJ0aWFsPFRyYW5zZm9ybWVkVmFsdWVXcmFwcGVyPjtcbiAgICBpZiAodHJhbnNmb3JtZWRWYWx1ZVdyYXBwZXIuX190cmFuc2Zvcm1lcklkKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRUcmFuc2Zvcm1lcih0cmFuc2Zvcm1lZFZhbHVlV3JhcHBlci5fX3RyYW5zZm9ybWVySWQpLnJlc3RvcmVWYWx1ZSh0cmFuc2Zvcm1lZFZhbHVlV3JhcHBlci50cmFuc2Zvcm1lZFZhbHVlLCBrZXkpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlY29yZDogR2VuZXJpY09iamVjdCA9IHt9O1xuXG4gICAgZm9yIChjb25zdCBjaGlsZEtleSBvZiBnZXRBbGxLZXlzKHZhbHVlKSkge1xuICAgICAgY29uc3QgY2hpbGRWYWx1ZSA9IHZhbHVlW2NoaWxkS2V5XTtcbiAgICAgIGNvbnN0IHRyYW5zZm9ybWVkQ2hpbGRWYWx1ZSA9IHRoaXMudHJhbnNmb3JtVmFsdWVSZWN1cnNpdmVseShjaGlsZFZhbHVlLCBjaGlsZEtleSk7XG4gICAgICByZWNvcmRbY2hpbGRLZXldID0gdHJhbnNmb3JtZWRDaGlsZFZhbHVlO1xuICAgIH1cblxuICAgIHJldHVybiByZWNvcmQ7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVFBLFNBQVMsa0JBQWtCO0FBb0JwQixNQUFlLFlBQVk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBc0J6QixlQUFlLGVBQW9DO0FBQ3hELFFBQUksa0JBQWtCLEtBQUssSUFBSTtBQUM3QixhQUFPO0FBQUEsSUFDVDtBQUVBLFVBQU0sSUFBSSxNQUFNLHVCQUF1QixhQUFhLFlBQVk7QUFBQSxFQUNsRTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sMkJBQTJCLE9BQThCO0FBQzlELFdBQU8sS0FBSywwQkFBMEIsT0FBTyxFQUFFO0FBQUEsRUFDakQ7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBa0JVLGlCQUFpQixPQUFnQixLQUE0QjtBQUNyRSxRQUFJLEtBQUssYUFBYSxPQUFPLEdBQUcsR0FBRztBQUNqQyxhQUFPLEtBQUs7QUFBQSxJQUNkO0FBRUEsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBa0JRLDBCQUEwQixPQUFnQixLQUFzQjtBQUN0RSxVQUFNLGdCQUFnQixLQUFLLGlCQUFpQixPQUFPLEdBQUc7QUFDdEQsUUFBSSxlQUFlO0FBQ2pCLFlBQU0sbUJBQW1CLEtBQUssZUFBZSxPQUFPLEdBQUc7QUFDdkQsVUFBSSxxQkFBcUIsUUFBVztBQUNsQyxlQUFPO0FBQUEsTUFDVDtBQUVBLFlBQU0sVUFBbUM7QUFBQSxRQUN2QyxpQkFBaUI7QUFBQSxRQUNqQjtBQUFBLE1BQ0Y7QUFFQSxhQUFPO0FBQUEsSUFDVDtBQUVBLFFBQUksVUFBVSxNQUFNO0FBQ2xCLGFBQU87QUFBQSxJQUNUO0FBRUEsUUFBSSxPQUFPLFVBQVUsVUFBVTtBQUM3QixhQUFPO0FBQUEsSUFDVDtBQUVBLFFBQUksTUFBTSxRQUFRLEtBQUssR0FBRztBQUN4QixhQUFPLE1BQU0sSUFBSSxDQUFDLFlBQVksVUFBVSxLQUFLLDBCQUEwQixZQUFZLE9BQU8sS0FBSyxDQUFDLENBQUM7QUFBQSxJQUNuRztBQUVBLFVBQU0sMEJBQTBCO0FBQ2hDLFFBQUksd0JBQXdCLGlCQUFpQjtBQUMzQyxhQUFPLEtBQUssZUFBZSx3QkFBd0IsZUFBZSxFQUFFLGFBQWEsd0JBQXdCLGtCQUFrQixHQUFHO0FBQUEsSUFDaEk7QUFFQSxVQUFNLFNBQXdCLENBQUM7QUFFL0IsZUFBVyxZQUFZLFdBQVcsS0FBSyxHQUFHO0FBQ3hDLFlBQU0sYUFBYSxNQUFNLFFBQVE7QUFDakMsWUFBTSx3QkFBd0IsS0FBSywwQkFBMEIsWUFBWSxRQUFRO0FBQ2pGLGFBQU8sUUFBUSxJQUFJO0FBQUEsSUFDckI7QUFFQSxXQUFPO0FBQUEsRUFDVDtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @packageDocumentation
2
+ * @file
3
3
  *
4
4
  * A transformer that can transform a TwoWayMap to an array of entries and back.
5
5
  */
@@ -61,4 +61,4 @@ class TwoWayMapTransformer extends TypedTransformer {
61
61
  export {
62
62
  TwoWayMapTransformer
63
63
  };
64
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy90d28td2F5LW1hcC10cmFuc2Zvcm1lci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSBhIFR3b1dheU1hcCB0byBhbiBhcnJheSBvZiBlbnRyaWVzIGFuZCBiYWNrLlxuICovXG5cbmltcG9ydCB7IFR3b1dheU1hcCB9IGZyb20gJy4uL3R3by13YXktbWFwLnRzJztcbmltcG9ydCB7IFR5cGVkVHJhbnNmb3JtZXIgfSBmcm9tICcuL3R5cGVkLXRyYW5zZm9ybWVyLnRzJztcblxudHlwZSBNYXBFbnRyeSA9IHJlYWRvbmx5IFtrZXk6IHVua25vd24sIHZhbHVlOiB1bmtub3duXTtcblxuLyoqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSBhIFR3b1dheU1hcCB0byBhbiBhcnJheSBvZiBlbnRyaWVzIGFuZCBiYWNrLlxuICovXG5leHBvcnQgY2xhc3MgVHdvV2F5TWFwVHJhbnNmb3JtZXIgZXh0ZW5kcyBUeXBlZFRyYW5zZm9ybWVyPFR3b1dheU1hcDx1bmtub3duLCB1bmtub3duPiwgTWFwRW50cnlbXT4ge1xuICAvKipcbiAgICogR2V0cyB0aGUgSUQgb2YgdGhlIHRyYW5zZm9ybWVyLlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgSUQgb2YgdGhlIHRyYW5zZm9ybWVyLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiAndHdvLXdheS1tYXAnO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgdmFsdWUgaXMgYSBUd29XYXlNYXAuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSB2YWx1ZSBpcyBhIFR3b1dheU1hcCwgYGZhbHNlYCBvdGhlcndpc2UuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgY2FuVHJhbnNmb3JtKHZhbHVlOiB1bmtub3duKTogdmFsdWUgaXMgVHdvV2F5TWFwPHVua25vd24sIHVua25vd24+IHtcbiAgICByZXR1cm4gdmFsdWUgaW5zdGFuY2VvZiBUd29XYXlNYXA7XG4gIH1cblxuICAvKipcbiAgICogUmVzdG9yZXMgYSBUd29XYXlNYXAgZnJvbSBhbiBhcnJheSBvZiBlbnRyaWVzLlxuICAgKlxuICAgKiBAcGFyYW0gdHJhbnNmb3JtZWRWYWx1ZSAtIFRoZSBhcnJheSBvZiBlbnRyaWVzLlxuICAgKiBAcmV0dXJucyBUaGUgVHdvV2F5TWFwLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHJlc3RvcmVWYWx1ZSh0cmFuc2Zvcm1lZFZhbHVlOiBNYXBFbnRyeVtdKTogVHdvV2F5TWFwPHVua25vd24sIHVua25vd24+IHtcbiAgICByZXR1cm4gbmV3IFR3b1dheU1hcDx1bmtub3duLCB1bmtub3duPih0cmFuc2Zvcm1lZFZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmFuc2Zvcm1zIGEgVHdvV2F5TWFwIHRvIGFuIGFycmF5IG9mIGVudHJpZXMuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBUd29XYXlNYXAuXG4gICAqIEByZXR1cm5zIFRoZSBhcnJheSBvZiBlbnRyaWVzLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHRyYW5zZm9ybVZhbHVlKHZhbHVlOiBUd29XYXlNYXA8dW5rbm93biwgdW5rbm93bj4pOiBNYXBFbnRyeVtdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh2YWx1ZS5lbnRyaWVzKCkpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNQSxTQUFTLGlCQUFpQjtBQUMxQixTQUFTLHdCQUF3QjtBQU8xQixNQUFNLDZCQUE2QixpQkFBMEQ7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNbEcsSUFBb0IsS0FBYTtBQUMvQixXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGFBQWEsT0FBc0Q7QUFDakYsV0FBTyxpQkFBaUI7QUFBQSxFQUMxQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGFBQWEsa0JBQTJEO0FBQ3RGLFdBQU8sSUFBSSxVQUE0QixnQkFBZ0I7QUFBQSxFQUN6RDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGVBQWUsT0FBZ0Q7QUFDN0UsV0FBTyxNQUFNLEtBQUssTUFBTSxRQUFRLENBQUM7QUFBQSxFQUNuQztBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
64
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy90d28td2F5LW1hcC10cmFuc2Zvcm1lci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIEEgdHJhbnNmb3JtZXIgdGhhdCBjYW4gdHJhbnNmb3JtIGEgVHdvV2F5TWFwIHRvIGFuIGFycmF5IG9mIGVudHJpZXMgYW5kIGJhY2suXG4gKi9cblxuaW1wb3J0IHsgVHdvV2F5TWFwIH0gZnJvbSAnLi4vdHdvLXdheS1tYXAudHMnO1xuaW1wb3J0IHsgVHlwZWRUcmFuc2Zvcm1lciB9IGZyb20gJy4vdHlwZWQtdHJhbnNmb3JtZXIudHMnO1xuXG50eXBlIE1hcEVudHJ5ID0gcmVhZG9ubHkgW2tleTogdW5rbm93biwgdmFsdWU6IHVua25vd25dO1xuXG4vKipcbiAqIEEgdHJhbnNmb3JtZXIgdGhhdCBjYW4gdHJhbnNmb3JtIGEgVHdvV2F5TWFwIHRvIGFuIGFycmF5IG9mIGVudHJpZXMgYW5kIGJhY2suXG4gKi9cbmV4cG9ydCBjbGFzcyBUd29XYXlNYXBUcmFuc2Zvcm1lciBleHRlbmRzIFR5cGVkVHJhbnNmb3JtZXI8VHdvV2F5TWFwPHVua25vd24sIHVua25vd24+LCBNYXBFbnRyeVtdPiB7XG4gIC8qKlxuICAgKiBHZXRzIHRoZSBJRCBvZiB0aGUgdHJhbnNmb3JtZXIuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBJRCBvZiB0aGUgdHJhbnNmb3JtZXIuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0IGlkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICd0d28td2F5LW1hcCc7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSB2YWx1ZSBpcyBhIFR3b1dheU1hcC5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGNoZWNrLlxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHZhbHVlIGlzIGEgVHdvV2F5TWFwLCBgZmFsc2VgIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBjYW5UcmFuc2Zvcm0odmFsdWU6IHVua25vd24pOiB2YWx1ZSBpcyBUd29XYXlNYXA8dW5rbm93biwgdW5rbm93bj4ge1xuICAgIHJldHVybiB2YWx1ZSBpbnN0YW5jZW9mIFR3b1dheU1hcDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXN0b3JlcyBhIFR3b1dheU1hcCBmcm9tIGFuIGFycmF5IG9mIGVudHJpZXMuXG4gICAqXG4gICAqIEBwYXJhbSB0cmFuc2Zvcm1lZFZhbHVlIC0gVGhlIGFycmF5IG9mIGVudHJpZXMuXG4gICAqIEByZXR1cm5zIFRoZSBUd29XYXlNYXAuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgcmVzdG9yZVZhbHVlKHRyYW5zZm9ybWVkVmFsdWU6IE1hcEVudHJ5W10pOiBUd29XYXlNYXA8dW5rbm93biwgdW5rbm93bj4ge1xuICAgIHJldHVybiBuZXcgVHdvV2F5TWFwPHVua25vd24sIHVua25vd24+KHRyYW5zZm9ybWVkVmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyYW5zZm9ybXMgYSBUd29XYXlNYXAgdG8gYW4gYXJyYXkgb2YgZW50cmllcy5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIFR3b1dheU1hcC5cbiAgICogQHJldHVybnMgVGhlIGFycmF5IG9mIGVudHJpZXMuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdHJhbnNmb3JtVmFsdWUodmFsdWU6IFR3b1dheU1hcDx1bmtub3duLCB1bmtub3duPik6IE1hcEVudHJ5W10ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKHZhbHVlLmVudHJpZXMoKSk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU1BLFNBQVMsaUJBQWlCO0FBQzFCLFNBQVMsd0JBQXdCO0FBTzFCLE1BQU0sNkJBQTZCLGlCQUEwRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU1sRyxJQUFvQixLQUFhO0FBQy9CLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsYUFBYSxPQUFzRDtBQUNqRixXQUFPLGlCQUFpQjtBQUFBLEVBQzFCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsYUFBYSxrQkFBMkQ7QUFDdEYsV0FBTyxJQUFJLFVBQTRCLGdCQUFnQjtBQUFBLEVBQ3pEO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsZUFBZSxPQUFnRDtBQUM3RSxXQUFPLE1BQU0sS0FBSyxNQUFNLFFBQVEsQ0FBQztBQUFBLEVBQ25DO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @packageDocumentation
2
+ * @file
3
3
  *
4
4
  * A base class for transformers that can transform and restore a specific type.
5
5
  */
@@ -25,4 +25,4 @@ class TypedTransformer extends Transformer {
25
25
  export {
26
26
  TypedTransformer
27
27
  };
28
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy90eXBlZC10cmFuc2Zvcm1lci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBBIGJhc2UgY2xhc3MgZm9yIHRyYW5zZm9ybWVycyB0aGF0IGNhbiB0cmFuc2Zvcm0gYW5kIHJlc3RvcmUgYSBzcGVjaWZpYyB0eXBlLlxuICovXG5cbmltcG9ydCB7IFRyYW5zZm9ybWVyIH0gZnJvbSAnLi90cmFuc2Zvcm1lci50cyc7XG5cbi8qKlxuICogQSB0cmFuc2Zvcm1lciB0aGF0IGNhbiB0cmFuc2Zvcm0gYW5kIHJlc3RvcmUgYSBzcGVjaWZpYyB0eXBlLlxuICpcbiAqIEB0eXBlUGFyYW0gU291cmNlIC0gVGhlIHR5cGUgb2YgdGhlIHNvdXJjZSB2YWx1ZS5cbiAqIEB0eXBlUGFyYW0gVHJhbnNmb3JtZWQgLSBUaGUgdHlwZSBvZiB0aGUgdHJhbnNmb3JtZWQgdmFsdWUuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUeXBlZFRyYW5zZm9ybWVyPFNvdXJjZSwgVHJhbnNmb3JtZWQ+IGV4dGVuZHMgVHJhbnNmb3JtZXIge1xuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiB0aGUgdHJhbnNmb3JtZXIgY2FuIHRyYW5zZm9ybSB0aGUgZ2l2ZW4gdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBjaGVjay5cbiAgICogQHBhcmFtIGtleSAtIFRoZSBrZXkgb2YgdGhlIHZhbHVlIHRvIGNoZWNrLlxuICAgKiBAcmV0dXJucyBBIGJvb2xlYW4gaW5kaWNhdGluZyBpZiB0aGUgdHJhbnNmb3JtZXIgY2FuIHRyYW5zZm9ybSB0aGUgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3Qgb3ZlcnJpZGUgY2FuVHJhbnNmb3JtKHZhbHVlOiB1bmtub3duLCBrZXk6IHN0cmluZyk6IHZhbHVlIGlzIFNvdXJjZTtcblxuICAvKipcbiAgICogUmVzdG9yZXMgdGhlIGdpdmVuIHZhbHVlLlxuICAgKlxuICAgKiBAcGFyYW0gdHJhbnNmb3JtZWRWYWx1ZSAtIFRoZSB2YWx1ZSB0byByZXN0b3JlLlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsdWUgdG8gcmVzdG9yZS5cbiAgICogQHJldHVybnMgVGhlIHJlc3RvcmVkIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IG92ZXJyaWRlIHJlc3RvcmVWYWx1ZSh0cmFuc2Zvcm1lZFZhbHVlOiBUcmFuc2Zvcm1lZCwga2V5OiBzdHJpbmcpOiBTb3VyY2U7XG5cbiAgLyoqXG4gICAqIFRyYW5zZm9ybXMgdGhlIGdpdmVuIHZhbHVlLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gdHJhbnNmb3JtLlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsdWUgdG8gdHJhbnNmb3JtLlxuICAgKiBAcmV0dXJucyBUaGUgdHJhbnNmb3JtZWQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3Qgb3ZlcnJpZGUgdHJhbnNmb3JtVmFsdWUodmFsdWU6IFNvdXJjZSwga2V5OiBzdHJpbmcpOiBUcmFuc2Zvcm1lZDtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQU1BLFNBQVMsbUJBQW1CO0FBUXJCLE1BQWUseUJBQThDLFlBQVk7QUEyQmhGOyIsCiAgIm5hbWVzIjogW10KfQo=
28
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zZm9ybWVycy90eXBlZC10cmFuc2Zvcm1lci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIEEgYmFzZSBjbGFzcyBmb3IgdHJhbnNmb3JtZXJzIHRoYXQgY2FuIHRyYW5zZm9ybSBhbmQgcmVzdG9yZSBhIHNwZWNpZmljIHR5cGUuXG4gKi9cblxuaW1wb3J0IHsgVHJhbnNmb3JtZXIgfSBmcm9tICcuL3RyYW5zZm9ybWVyLnRzJztcblxuLyoqXG4gKiBBIHRyYW5zZm9ybWVyIHRoYXQgY2FuIHRyYW5zZm9ybSBhbmQgcmVzdG9yZSBhIHNwZWNpZmljIHR5cGUuXG4gKlxuICogQHR5cGVQYXJhbSBTb3VyY2UgLSBUaGUgdHlwZSBvZiB0aGUgc291cmNlIHZhbHVlLlxuICogQHR5cGVQYXJhbSBUcmFuc2Zvcm1lZCAtIFRoZSB0eXBlIG9mIHRoZSB0cmFuc2Zvcm1lZCB2YWx1ZS5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFR5cGVkVHJhbnNmb3JtZXI8U291cmNlLCBUcmFuc2Zvcm1lZD4gZXh0ZW5kcyBUcmFuc2Zvcm1lciB7XG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIHRoZSB0cmFuc2Zvcm1lciBjYW4gdHJhbnNmb3JtIHRoZSBnaXZlbiB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGNoZWNrLlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsdWUgdG8gY2hlY2suXG4gICAqIEByZXR1cm5zIEEgYm9vbGVhbiBpbmRpY2F0aW5nIGlmIHRoZSB0cmFuc2Zvcm1lciBjYW4gdHJhbnNmb3JtIHRoZSB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBvdmVycmlkZSBjYW5UcmFuc2Zvcm0odmFsdWU6IHVua25vd24sIGtleTogc3RyaW5nKTogdmFsdWUgaXMgU291cmNlO1xuXG4gIC8qKlxuICAgKiBSZXN0b3JlcyB0aGUgZ2l2ZW4gdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB0cmFuc2Zvcm1lZFZhbHVlIC0gVGhlIHZhbHVlIHRvIHJlc3RvcmUuXG4gICAqIEBwYXJhbSBrZXkgLSBUaGUga2V5IG9mIHRoZSB2YWx1ZSB0byByZXN0b3JlLlxuICAgKiBAcmV0dXJucyBUaGUgcmVzdG9yZWQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3Qgb3ZlcnJpZGUgcmVzdG9yZVZhbHVlKHRyYW5zZm9ybWVkVmFsdWU6IFRyYW5zZm9ybWVkLCBrZXk6IHN0cmluZyk6IFNvdXJjZTtcblxuICAvKipcbiAgICogVHJhbnNmb3JtcyB0aGUgZ2l2ZW4gdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byB0cmFuc2Zvcm0uXG4gICAqIEBwYXJhbSBrZXkgLSBUaGUga2V5IG9mIHRoZSB2YWx1ZSB0byB0cmFuc2Zvcm0uXG4gICAqIEByZXR1cm5zIFRoZSB0cmFuc2Zvcm1lZCB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBvdmVycmlkZSB0cmFuc2Zvcm1WYWx1ZSh2YWx1ZTogU291cmNlLCBrZXk6IHN0cmluZyk6IFRyYW5zZm9ybWVkO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUEsU0FBUyxtQkFBbUI7QUFRckIsTUFBZSx5QkFBOEMsWUFBWTtBQTJCaEY7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @packageDocumentation
2
+ * @file
3
3
  *
4
4
  * Two-way map.
5
5
  */
@@ -139,4 +139,4 @@ class TwoWayMap {
139
139
  export {
140
140
  TwoWayMap
141
141
  };
142
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3R3by13YXktbWFwLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIFR3by13YXkgbWFwLlxuICovXG5cbi8qKlxuICogQSBtYXAgdGhhdCBhbGxvd3MgeW91IHRvIGxvb2sgdXAgYSB2YWx1ZSBieSBpdHMga2V5IGFuZCB2aWNlIHZlcnNhLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogY29uc3QgbWFwID0gbmV3IFR3b1dheU1hcDxzdHJpbmcsIG51bWJlcj4oKTtcbiAqIG1hcC5zZXQoJ2ZvbycsIDQyKTtcbiAqIG1hcC5nZXRWYWx1ZSgnZm9vJyk7IC8vIDQyXG4gKiBtYXAuZ2V0S2V5KDQyKTsgLy8gJ2ZvbydcbiAqIG1hcC5kZWxldGVLZXkoJ2ZvbycpO1xuICogbWFwLmRlbGV0ZVZhbHVlKDQyKTtcbiAqIG1hcC5jbGVhcigpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBUd29XYXlNYXA8S2V5LCBWYWx1ZT4ge1xuICBwcml2YXRlIHJlYWRvbmx5IGtleVZhbHVlTWFwID0gbmV3IE1hcDxLZXksIFZhbHVlPigpO1xuICBwcml2YXRlIHJlYWRvbmx5IHZhbHVlS2V5TWFwID0gbmV3IE1hcDxWYWx1ZSwgS2V5PigpO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IHR3by13YXkgbWFwLlxuICAgKlxuICAgKiBAcGFyYW0gZW50cmllcyAtIEVudHJpZXMgdG8gaW5pdGlhbGl6ZSB0aGUgbWFwIHdpdGguXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoZW50cmllczogKHJlYWRvbmx5IFtrZXk6IEtleSwgdmFsdWU6IFZhbHVlXSlbXSA9IFtdKSB7XG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgZW50cmllcykge1xuICAgICAgdGhpcy5zZXQoa2V5LCB2YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENsZWFycyB0aGUgbWFwLlxuICAgKi9cbiAgcHVibGljIGNsZWFyKCk6IHZvaWQge1xuICAgIHRoaXMua2V5VmFsdWVNYXAuY2xlYXIoKTtcbiAgICB0aGlzLnZhbHVlS2V5TWFwLmNsZWFyKCk7XG4gIH1cblxuICAvKipcbiAgICogRGVsZXRlcyBhIGtleSBmcm9tIHRoZSBtYXAuXG4gICAqXG4gICAqIEBwYXJhbSBrZXkgLSBUaGUga2V5LlxuICAgKi9cbiAgcHVibGljIGRlbGV0ZUtleShrZXk6IEtleSk6IHZvaWQge1xuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5nZXRWYWx1ZShrZXkpO1xuICAgIGlmICh2YWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLnZhbHVlS2V5TWFwLmRlbGV0ZSh2YWx1ZSk7XG4gICAgfVxuICAgIHRoaXMua2V5VmFsdWVNYXAuZGVsZXRlKGtleSk7XG4gIH1cblxuICAvKipcbiAgICogRGVsZXRlcyBhIHZhbHVlIGZyb20gdGhlIG1hcC5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIGRlbGV0ZVZhbHVlKHZhbHVlOiBWYWx1ZSk6IHZvaWQge1xuICAgIGNvbnN0IGtleSA9IHRoaXMuZ2V0S2V5KHZhbHVlKTtcbiAgICBpZiAoa2V5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMua2V5VmFsdWVNYXAuZGVsZXRlKGtleSk7XG4gICAgfVxuICAgIHRoaXMudmFsdWVLZXlNYXAuZGVsZXRlKHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGFsbCBlbnRyaWVzIGluIHRoZSBtYXAuXG4gICAqXG4gICAqIEByZXR1cm5zIEFuIGl0ZXJhdG9yIG92ZXIgYWxsIGVudHJpZXMgaW4gdGhlIG1hcC5cbiAgICovXG4gIHB1YmxpYyBlbnRyaWVzKCk6IEl0ZXJhYmxlSXRlcmF0b3I8cmVhZG9ubHkgW2tleTogS2V5LCB2YWx1ZTogVmFsdWVdPiB7XG4gICAgcmV0dXJuIHRoaXMua2V5VmFsdWVNYXAuZW50cmllcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYSBrZXkgYnkgaXRzIHZhbHVlLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUuXG4gICAqIEByZXR1cm5zIFRoZSBrZXkuXG4gICAqL1xuICBwdWJsaWMgZ2V0S2V5KHZhbHVlOiBWYWx1ZSk6IEtleSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVLZXlNYXAuZ2V0KHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGEgdmFsdWUgYnkgaXRzIGtleS5cbiAgICpcbiAgICogQHBhcmFtIGtleSAtIFRoZSBrZXkuXG4gICAqIEByZXR1cm5zIFRoZSB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBnZXRWYWx1ZShrZXk6IEtleSk6IHVuZGVmaW5lZCB8IFZhbHVlIHtcbiAgICByZXR1cm4gdGhpcy5rZXlWYWx1ZU1hcC5nZXQoa2V5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIG1hcCBoYXMgYSBrZXkuXG4gICAqXG4gICAqIEBwYXJhbSBrZXkgLSBUaGUga2V5LlxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIG1hcCBoYXMgdGhlIGtleSwgYGZhbHNlYCBvdGhlcndpc2UuXG4gICAqL1xuICBwdWJsaWMgaGFzS2V5KGtleTogS2V5KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMua2V5VmFsdWVNYXAuaGFzKGtleSk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBtYXAgaGFzIGEgdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZS5cbiAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSBtYXAgaGFzIHRoZSB2YWx1ZSwgYGZhbHNlYCBvdGhlcndpc2UuXG4gICAqL1xuICBwdWJsaWMgaGFzVmFsdWUodmFsdWU6IFZhbHVlKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVLZXlNYXAuaGFzKHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGFsbCBrZXlzIGluIHRoZSBtYXAuXG4gICAqXG4gICAqIEByZXR1cm5zIEFuIGl0ZXJhdG9yIG92ZXIgYWxsIGtleXMgaW4gdGhlIG1hcC5cbiAgICovXG4gIHB1YmxpYyBrZXlzKCk6IEl0ZXJhYmxlSXRlcmF0b3I8S2V5PiB7XG4gICAgcmV0dXJuIHRoaXMua2V5VmFsdWVNYXAua2V5cygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgYSBrZXktdmFsdWUgcGFpciBpbiB0aGUgbWFwLlxuICAgKlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIGtleS5cbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIHNldChrZXk6IEtleSwgdmFsdWU6IFZhbHVlKTogdm9pZCB7XG4gICAgdGhpcy5kZWxldGVLZXkoa2V5KTtcbiAgICB0aGlzLmRlbGV0ZVZhbHVlKHZhbHVlKTtcblxuICAgIHRoaXMua2V5VmFsdWVNYXAuc2V0KGtleSwgdmFsdWUpO1xuICAgIHRoaXMudmFsdWVLZXlNYXAuc2V0KHZhbHVlLCBrZXkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYWxsIHZhbHVlcyBpbiB0aGUgbWFwLlxuICAgKlxuICAgKiBAcmV0dXJucyBBbiBpdGVyYXRvciBvdmVyIGFsbCB2YWx1ZXMgaW4gdGhlIG1hcC5cbiAgICovXG4gIHB1YmxpYyB2YWx1ZXMoKTogSXRlcmFibGVJdGVyYXRvcjxWYWx1ZT4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlS2V5TWFwLmtleXMoKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBb0JPLE1BQU0sVUFBc0I7QUFBQSxFQUNoQixjQUFjLG9CQUFJLElBQWdCO0FBQUEsRUFDbEMsY0FBYyxvQkFBSSxJQUFnQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU81QyxZQUFZLFVBQWlELENBQUMsR0FBRztBQUN0RSxlQUFXLENBQUMsS0FBSyxLQUFLLEtBQUssU0FBUztBQUNsQyxXQUFLLElBQUksS0FBSyxLQUFLO0FBQUEsSUFDckI7QUFBQSxFQUNGO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLTyxRQUFjO0FBQ25CLFNBQUssWUFBWSxNQUFNO0FBQ3ZCLFNBQUssWUFBWSxNQUFNO0FBQUEsRUFDekI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPTyxVQUFVLEtBQWdCO0FBQy9CLFVBQU0sUUFBUSxLQUFLLFNBQVMsR0FBRztBQUMvQixRQUFJLFVBQVUsUUFBVztBQUN2QixXQUFLLFlBQVksT0FBTyxLQUFLO0FBQUEsSUFDL0I7QUFDQSxTQUFLLFlBQVksT0FBTyxHQUFHO0FBQUEsRUFDN0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPTyxZQUFZLE9BQW9CO0FBQ3JDLFVBQU0sTUFBTSxLQUFLLE9BQU8sS0FBSztBQUM3QixRQUFJLFFBQVEsUUFBVztBQUNyQixXQUFLLFlBQVksT0FBTyxHQUFHO0FBQUEsSUFDN0I7QUFDQSxTQUFLLFlBQVksT0FBTyxLQUFLO0FBQUEsRUFDL0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPTyxVQUErRDtBQUNwRSxXQUFPLEtBQUssWUFBWSxRQUFRO0FBQUEsRUFDbEM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLE9BQU8sT0FBK0I7QUFDM0MsV0FBTyxLQUFLLFlBQVksSUFBSSxLQUFLO0FBQUEsRUFDbkM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFNBQVMsS0FBNkI7QUFDM0MsV0FBTyxLQUFLLFlBQVksSUFBSSxHQUFHO0FBQUEsRUFDakM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLE9BQU8sS0FBbUI7QUFDL0IsV0FBTyxLQUFLLFlBQVksSUFBSSxHQUFHO0FBQUEsRUFDakM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFNBQVMsT0FBdUI7QUFDckMsV0FBTyxLQUFLLFlBQVksSUFBSSxLQUFLO0FBQUEsRUFDbkM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPTyxPQUE4QjtBQUNuQyxXQUFPLEtBQUssWUFBWSxLQUFLO0FBQUEsRUFDL0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLElBQUksS0FBVSxPQUFvQjtBQUN2QyxTQUFLLFVBQVUsR0FBRztBQUNsQixTQUFLLFlBQVksS0FBSztBQUV0QixTQUFLLFlBQVksSUFBSSxLQUFLLEtBQUs7QUFDL0IsU0FBSyxZQUFZLElBQUksT0FBTyxHQUFHO0FBQUEsRUFDakM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPTyxTQUFrQztBQUN2QyxXQUFPLEtBQUssWUFBWSxLQUFLO0FBQUEsRUFDL0I7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
142
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3R3by13YXktbWFwLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBmaWxlXG4gKlxuICogVHdvLXdheSBtYXAuXG4gKi9cblxuLyoqXG4gKiBBIG1hcCB0aGF0IGFsbG93cyB5b3UgdG8gbG9vayB1cCBhIHZhbHVlIGJ5IGl0cyBrZXkgYW5kIHZpY2UgdmVyc2EuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHRzXG4gKiBjb25zdCBtYXAgPSBuZXcgVHdvV2F5TWFwPHN0cmluZywgbnVtYmVyPigpO1xuICogbWFwLnNldCgnZm9vJywgNDIpO1xuICogbWFwLmdldFZhbHVlKCdmb28nKTsgLy8gNDJcbiAqIG1hcC5nZXRLZXkoNDIpOyAvLyAnZm9vJ1xuICogbWFwLmRlbGV0ZUtleSgnZm9vJyk7XG4gKiBtYXAuZGVsZXRlVmFsdWUoNDIpO1xuICogbWFwLmNsZWFyKCk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIFR3b1dheU1hcDxLZXksIFZhbHVlPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkga2V5VmFsdWVNYXAgPSBuZXcgTWFwPEtleSwgVmFsdWU+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgdmFsdWVLZXlNYXAgPSBuZXcgTWFwPFZhbHVlLCBLZXk+KCk7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgdHdvLXdheSBtYXAuXG4gICAqXG4gICAqIEBwYXJhbSBlbnRyaWVzIC0gRW50cmllcyB0byBpbml0aWFsaXplIHRoZSBtYXAgd2l0aC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihlbnRyaWVzOiAocmVhZG9ubHkgW2tleTogS2V5LCB2YWx1ZTogVmFsdWVdKVtdID0gW10pIHtcbiAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBlbnRyaWVzKSB7XG4gICAgICB0aGlzLnNldChrZXksIHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXJzIHRoZSBtYXAuXG4gICAqL1xuICBwdWJsaWMgY2xlYXIoKTogdm9pZCB7XG4gICAgdGhpcy5rZXlWYWx1ZU1hcC5jbGVhcigpO1xuICAgIHRoaXMudmFsdWVLZXlNYXAuY2xlYXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxldGVzIGEga2V5IGZyb20gdGhlIG1hcC5cbiAgICpcbiAgICogQHBhcmFtIGtleSAtIFRoZSBrZXkuXG4gICAqL1xuICBwdWJsaWMgZGVsZXRlS2V5KGtleTogS2V5KTogdm9pZCB7XG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLmdldFZhbHVlKGtleSk7XG4gICAgaWYgKHZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMudmFsdWVLZXlNYXAuZGVsZXRlKHZhbHVlKTtcbiAgICB9XG4gICAgdGhpcy5rZXlWYWx1ZU1hcC5kZWxldGUoa2V5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxldGVzIGEgdmFsdWUgZnJvbSB0aGUgbWFwLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgZGVsZXRlVmFsdWUodmFsdWU6IFZhbHVlKTogdm9pZCB7XG4gICAgY29uc3Qga2V5ID0gdGhpcy5nZXRLZXkodmFsdWUpO1xuICAgIGlmIChrZXkgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5rZXlWYWx1ZU1hcC5kZWxldGUoa2V5KTtcbiAgICB9XG4gICAgdGhpcy52YWx1ZUtleU1hcC5kZWxldGUodmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYWxsIGVudHJpZXMgaW4gdGhlIG1hcC5cbiAgICpcbiAgICogQHJldHVybnMgQW4gaXRlcmF0b3Igb3ZlciBhbGwgZW50cmllcyBpbiB0aGUgbWFwLlxuICAgKi9cbiAgcHVibGljIGVudHJpZXMoKTogSXRlcmFibGVJdGVyYXRvcjxyZWFkb25seSBba2V5OiBLZXksIHZhbHVlOiBWYWx1ZV0+IHtcbiAgICByZXR1cm4gdGhpcy5rZXlWYWx1ZU1hcC5lbnRyaWVzKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBhIGtleSBieSBpdHMgdmFsdWUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZS5cbiAgICogQHJldHVybnMgVGhlIGtleS5cbiAgICovXG4gIHB1YmxpYyBnZXRLZXkodmFsdWU6IFZhbHVlKTogS2V5IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZUtleU1hcC5nZXQodmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYSB2YWx1ZSBieSBpdHMga2V5LlxuICAgKlxuICAgKiBAcGFyYW0ga2V5IC0gVGhlIGtleS5cbiAgICogQHJldHVybnMgVGhlIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIGdldFZhbHVlKGtleTogS2V5KTogdW5kZWZpbmVkIHwgVmFsdWUge1xuICAgIHJldHVybiB0aGlzLmtleVZhbHVlTWFwLmdldChrZXkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyBpZiB0aGUgbWFwIGhhcyBhIGtleS5cbiAgICpcbiAgICogQHBhcmFtIGtleSAtIFRoZSBrZXkuXG4gICAqIEByZXR1cm5zIGB0cnVlYCBpZiB0aGUgbWFwIGhhcyB0aGUga2V5LCBgZmFsc2VgIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBoYXNLZXkoa2V5OiBLZXkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5rZXlWYWx1ZU1hcC5oYXMoa2V5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIG1hcCBoYXMgYSB2YWx1ZS5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlLlxuICAgKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIG1hcCBoYXMgdGhlIHZhbHVlLCBgZmFsc2VgIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBoYXNWYWx1ZSh2YWx1ZTogVmFsdWUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZUtleU1hcC5oYXModmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYWxsIGtleXMgaW4gdGhlIG1hcC5cbiAgICpcbiAgICogQHJldHVybnMgQW4gaXRlcmF0b3Igb3ZlciBhbGwga2V5cyBpbiB0aGUgbWFwLlxuICAgKi9cbiAgcHVibGljIGtleXMoKTogSXRlcmFibGVJdGVyYXRvcjxLZXk+IHtcbiAgICByZXR1cm4gdGhpcy5rZXlWYWx1ZU1hcC5rZXlzKCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyBhIGtleS12YWx1ZSBwYWlyIGluIHRoZSBtYXAuXG4gICAqXG4gICAqIEBwYXJhbSBrZXkgLSBUaGUga2V5LlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgc2V0KGtleTogS2V5LCB2YWx1ZTogVmFsdWUpOiB2b2lkIHtcbiAgICB0aGlzLmRlbGV0ZUtleShrZXkpO1xuICAgIHRoaXMuZGVsZXRlVmFsdWUodmFsdWUpO1xuXG4gICAgdGhpcy5rZXlWYWx1ZU1hcC5zZXQoa2V5LCB2YWx1ZSk7XG4gICAgdGhpcy52YWx1ZUtleU1hcC5zZXQodmFsdWUsIGtleSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBhbGwgdmFsdWVzIGluIHRoZSBtYXAuXG4gICAqXG4gICAqIEByZXR1cm5zIEFuIGl0ZXJhdG9yIG92ZXIgYWxsIHZhbHVlcyBpbiB0aGUgbWFwLlxuICAgKi9cbiAgcHVibGljIHZhbHVlcygpOiBJdGVyYWJsZUl0ZXJhdG9yPFZhbHVlPiB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVLZXlNYXAua2V5cygpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFvQk8sTUFBTSxVQUFzQjtBQUFBLEVBQ2hCLGNBQWMsb0JBQUksSUFBZ0I7QUFBQSxFQUNsQyxjQUFjLG9CQUFJLElBQWdCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTzVDLFlBQVksVUFBaUQsQ0FBQyxHQUFHO0FBQ3RFLGVBQVcsQ0FBQyxLQUFLLEtBQUssS0FBSyxTQUFTO0FBQ2xDLFdBQUssSUFBSSxLQUFLLEtBQUs7QUFBQSxJQUNyQjtBQUFBLEVBQ0Y7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtPLFFBQWM7QUFDbkIsU0FBSyxZQUFZLE1BQU07QUFDdkIsU0FBSyxZQUFZLE1BQU07QUFBQSxFQUN6QjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLFVBQVUsS0FBZ0I7QUFDL0IsVUFBTSxRQUFRLEtBQUssU0FBUyxHQUFHO0FBQy9CLFFBQUksVUFBVSxRQUFXO0FBQ3ZCLFdBQUssWUFBWSxPQUFPLEtBQUs7QUFBQSxJQUMvQjtBQUNBLFNBQUssWUFBWSxPQUFPLEdBQUc7QUFBQSxFQUM3QjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLFlBQVksT0FBb0I7QUFDckMsVUFBTSxNQUFNLEtBQUssT0FBTyxLQUFLO0FBQzdCLFFBQUksUUFBUSxRQUFXO0FBQ3JCLFdBQUssWUFBWSxPQUFPLEdBQUc7QUFBQSxJQUM3QjtBQUNBLFNBQUssWUFBWSxPQUFPLEtBQUs7QUFBQSxFQUMvQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLFVBQStEO0FBQ3BFLFdBQU8sS0FBSyxZQUFZLFFBQVE7QUFBQSxFQUNsQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sT0FBTyxPQUErQjtBQUMzQyxXQUFPLEtBQUssWUFBWSxJQUFJLEtBQUs7QUFBQSxFQUNuQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sU0FBUyxLQUE2QjtBQUMzQyxXQUFPLEtBQUssWUFBWSxJQUFJLEdBQUc7QUFBQSxFQUNqQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sT0FBTyxLQUFtQjtBQUMvQixXQUFPLEtBQUssWUFBWSxJQUFJLEdBQUc7QUFBQSxFQUNqQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sU0FBUyxPQUF1QjtBQUNyQyxXQUFPLEtBQUssWUFBWSxJQUFJLEtBQUs7QUFBQSxFQUNuQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLE9BQThCO0FBQ25DLFdBQU8sS0FBSyxZQUFZLEtBQUs7QUFBQSxFQUMvQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sSUFBSSxLQUFVLE9BQW9CO0FBQ3ZDLFNBQUssVUFBVSxHQUFHO0FBQ2xCLFNBQUssWUFBWSxLQUFLO0FBRXRCLFNBQUssWUFBWSxJQUFJLEtBQUssS0FBSztBQUMvQixTQUFLLFlBQVksSUFBSSxPQUFPLEdBQUc7QUFBQSxFQUNqQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9PLFNBQWtDO0FBQ3ZDLFdBQU8sS0FBSyxZQUFZLEtBQUs7QUFBQSxFQUMvQjtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=