@coolon/angular-ui-powerups 16.1.0-aplpha.8 → 16.1.0-aplpha.80

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 (277) hide show
  1. package/assets/activities/input-activities.scss +10 -2
  2. package/assets/form.scss +62 -27
  3. package/assets/table.scss +15 -18
  4. package/assets/tabs.scss +2 -6
  5. package/esm2022/lib/angular-ui-powerups.module.mjs +1 -1
  6. package/esm2022/lib/animations/slide-animations.mjs +6 -1
  7. package/esm2022/lib/components/alignment.mjs +1 -1
  8. package/esm2022/lib/components/busy-overlay/busy-overlay.component.mjs +4 -9
  9. package/esm2022/lib/components/cards/abstract-card-container.component.mjs +1 -1
  10. package/esm2022/lib/components/cards/card-container/card-container.component.mjs +2 -2
  11. package/esm2022/lib/components/commands/command/command.component.mjs +24 -13
  12. package/esm2022/lib/components/commands/command-face/command-face.component.mjs +11 -3
  13. package/esm2022/lib/components/commands/command-face.mjs +11 -11
  14. package/esm2022/lib/components/commands/flex.component.mjs +1 -1
  15. package/esm2022/lib/components/commands/group/command-container.mjs +1 -1
  16. package/esm2022/lib/components/commands/group/popup-aware.component.mjs +1 -1
  17. package/esm2022/lib/components/commands/group/popup-container.mjs +1 -1
  18. package/esm2022/lib/components/commands/group/popup-menu/abstract-popup-menu.component.mjs +11 -11
  19. package/esm2022/lib/components/commands/group/popup-menu/more-menu.component.mjs +1 -1
  20. package/esm2022/lib/components/commands/group/popup-menu/popup-menu-renderer/popup-menu-renderer.component.mjs +1 -1
  21. package/esm2022/lib/components/commands/group/popup-menu/popup-menu.component.mjs +2 -2
  22. package/esm2022/lib/components/commands/group/tool-bar/tool-bar.component.mjs +9 -16
  23. package/esm2022/lib/components/commands/separator.component.mjs +1 -1
  24. package/esm2022/lib/components/components.module.mjs +31 -17
  25. package/esm2022/lib/components/disposable-component.mjs +8 -37
  26. package/esm2022/lib/components/empty-state/empty-state.component.mjs +2 -6
  27. package/esm2022/lib/components/exports.mjs +6 -2
  28. package/esm2022/lib/components/focus-container/focus-container.component.mjs +1 -1
  29. package/esm2022/lib/components/focusable.component.mjs +2 -2
  30. package/esm2022/lib/components/forms/abstract-input.component.mjs +62 -15
  31. package/esm2022/lib/components/forms/abstract-list-input.component.mjs +1 -1
  32. package/esm2022/lib/components/forms/abstract-value-input.component.mjs +1 -1
  33. package/esm2022/lib/components/forms/autocomplete-input/autocomplete-input.component.mjs +3 -4
  34. package/esm2022/lib/components/forms/checkbox-input/checkbox-input.component.mjs +1 -1
  35. package/esm2022/lib/components/forms/form-field.mjs +2 -0
  36. package/esm2022/lib/components/forms/multiple-select-input/multiple-select-input.component.mjs +3 -3
  37. package/esm2022/lib/components/forms/number-input/number-input.component.mjs +49 -10
  38. package/esm2022/lib/components/forms/password-input/password-input.component.mjs +40 -3
  39. package/esm2022/lib/components/forms/search-input/search-input.component.mjs +33 -0
  40. package/esm2022/lib/components/forms/select-input/select-input.component.mjs +12 -11
  41. package/esm2022/lib/components/forms/string-input/string-input.component.mjs +22 -10
  42. package/esm2022/lib/components/forms/text-input/text-input.component.mjs +1 -1
  43. package/esm2022/lib/components/icon/icon.component.mjs +6 -3
  44. package/esm2022/lib/components/labelled-value/labelled-value.component.mjs +1 -1
  45. package/esm2022/lib/components/loadable-component.mjs +49 -0
  46. package/esm2022/lib/components/loading-container/loading-container.component.mjs +4 -9
  47. package/esm2022/lib/components/noop/noop.component.mjs +2 -4
  48. package/esm2022/lib/components/resize-aware.component.mjs +61 -24
  49. package/esm2022/lib/components/scroll-container/scroll-container.component.mjs +2 -2
  50. package/esm2022/lib/components/section-header/section-header.component.mjs +1 -1
  51. package/esm2022/lib/components/switch-case/switch-case.component.mjs +2 -2
  52. package/esm2022/lib/components/tables/abstract-table-model.mjs +40 -23
  53. package/esm2022/lib/components/tables/abstract-table.component.mjs +19 -5
  54. package/esm2022/lib/components/tables/column/column-manager.mjs +81 -0
  55. package/esm2022/lib/components/tables/column/column-model.mjs +18 -7
  56. package/esm2022/lib/components/tables/column/column-order-manager.mjs +19 -0
  57. package/esm2022/lib/components/tables/column/column-template/column-template.directive.mjs +1 -1
  58. package/esm2022/lib/components/tables/column/custom-template-column-model.mjs +3 -3
  59. package/esm2022/lib/components/tables/column/custom-value-column-model.mjs +5 -5
  60. package/esm2022/lib/components/tables/column/editor-controls-column-model.mjs +5 -5
  61. package/esm2022/lib/components/tables/column/list-propery-column-model.mjs +6 -5
  62. package/esm2022/lib/components/tables/column/property-column-model.mjs +5 -5
  63. package/esm2022/lib/components/tables/column/selection-column-model.mjs +3 -3
  64. package/esm2022/lib/components/tables/editor/edit-row-controls/edit-row-controls.component.mjs +6 -6
  65. package/esm2022/lib/components/tables/editor/edit-session.mjs +4 -2
  66. package/esm2022/lib/components/tables/editor/editable-cell-renderer.mjs +1 -1
  67. package/esm2022/lib/components/tables/filter/column-text-search-formatter.mjs +1 -1
  68. package/esm2022/lib/components/tables/filter/enable-cell-text-search.decorator.mjs +3 -2
  69. package/esm2022/lib/components/tables/filter/table-filter-model.mjs +4 -2
  70. package/esm2022/lib/components/tables/filter/text-search-predicate.mjs +16 -2
  71. package/esm2022/lib/components/tables/paginator/paginator.component.mjs +1 -1
  72. package/esm2022/lib/components/tables/renderer/cell-editors.mjs +1 -1
  73. package/esm2022/lib/components/tables/renderer/cell-portal-ref.mjs +1 -3
  74. package/esm2022/lib/components/tables/renderer/default-cell-renderer/default-cell-renderer.component.mjs +4 -6
  75. package/esm2022/lib/components/tables/renderer/default-header-cell-renderer/default-header-cell-renderer.component.mjs +2 -4
  76. package/esm2022/lib/components/tables/renderer/select-header-cell/selection-header-cell.component.mjs +1 -1
  77. package/esm2022/lib/components/tables/renderer/table-body/table-body.component.mjs +212 -37
  78. package/esm2022/lib/components/tables/renderer/table-cell/table-cell.component.mjs +1 -1
  79. package/esm2022/lib/components/tables/renderer/table-header-cell/table-header-cell.component.mjs +2 -4
  80. package/esm2022/lib/components/tables/renderer/table-more-menu/table-more-menu-popup/table-more-menu-popup.component.mjs +1 -1
  81. package/esm2022/lib/components/tables/renderer/table-more-menu/table-more-menu.component.mjs +7 -2
  82. package/esm2022/lib/components/tables/table/table-model.mjs +1 -1
  83. package/esm2022/lib/components/tables/table/table.component.mjs +12 -67
  84. package/esm2022/lib/components/tables/table-row-menu/table-row-menu.component.mjs +1 -1
  85. package/esm2022/lib/components/tables/tree-table/decorated-tree-node.mjs +5 -4
  86. package/esm2022/lib/components/tables/tree-table/flattened-tree-list-model.mjs +1 -1
  87. package/esm2022/lib/components/tables/tree-table/tree-expansion-model.mjs +1 -1
  88. package/esm2022/lib/components/tables/tree-table/tree-inheritance-icon/tree-inheritance-icon.component.mjs +2 -4
  89. package/esm2022/lib/components/tables/tree-table/tree-label-cell-renderer/tree-label-cell-renderer.component.mjs +1 -1
  90. package/esm2022/lib/components/tables/tree-table/tree-label-column-model.mjs +4 -4
  91. package/esm2022/lib/components/tables/tree-table/tree-table-component.mjs +7 -4
  92. package/esm2022/lib/components/tables/tree-table/tree-table-model.mjs +3 -3
  93. package/esm2022/lib/components/text/markdown/markdown.component.mjs +3 -3
  94. package/esm2022/lib/components/track.mjs +1 -1
  95. package/esm2022/lib/components/types/bounds.class.mjs +1 -1
  96. package/esm2022/lib/components/vertical-focus-container/vertical-focus-container.component.mjs +1 -1
  97. package/esm2022/lib/directives/command.directive.mjs +2 -2
  98. package/esm2022/lib/directives/directives.module.mjs +2 -2
  99. package/esm2022/lib/directives/exports.mjs +2 -1
  100. package/esm2022/lib/directives/focus-binding-factory.mjs +1 -1
  101. package/esm2022/lib/directives/focus-binding.directive.mjs +2 -2
  102. package/esm2022/lib/directives/focus-binding.mjs +1 -1
  103. package/esm2022/lib/directives/garbage-collector.directive.mjs +2 -1
  104. package/esm2022/lib/directives/highlight-text-model.directive.mjs +1 -1
  105. package/esm2022/lib/directives/highlight.pipe.mjs +2 -2
  106. package/esm2022/lib/directives/resize-observer.directive.mjs +40 -0
  107. package/esm2022/lib/interaction/abstract-interaction-context.mjs +1 -1
  108. package/esm2022/lib/interaction/activity-ref.mjs +2 -2
  109. package/esm2022/lib/interaction/activity.mjs +4 -4
  110. package/esm2022/lib/interaction/alert.mjs +2 -2
  111. package/esm2022/lib/interaction/components/abstract-confirm-dialog.component.mjs +8 -4
  112. package/esm2022/lib/interaction/components/abstract-dialog.component.mjs +2 -3
  113. package/esm2022/lib/interaction/components/activity-actions/activity-actions.component.mjs +3 -3
  114. package/esm2022/lib/interaction/components/activity-body/activity-body.component.mjs +1 -1
  115. package/esm2022/lib/interaction/components/activity-container/activity-container.component.mjs +28 -11
  116. package/esm2022/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.mjs +1 -3
  117. package/esm2022/lib/interaction/components/activity-title/activity-title.component.mjs +2 -2
  118. package/esm2022/lib/interaction/components/activity-triggers/inline-activity-trigger/inline-activity-trigger.component.mjs +1 -1
  119. package/esm2022/lib/interaction/components/activity-triggers/modal-activity-trigger/modal-activity-trigger.component.mjs +1 -1
  120. package/esm2022/lib/interaction/components/activity-triggers/popup-activity-trigger/popup-activity-trigger.component.mjs +1 -1
  121. package/esm2022/lib/interaction/components/add-card-activity/add-card-activity.component.mjs +1 -1
  122. package/esm2022/lib/interaction/components/add-item-interaction-context/add-item-interaction-context.component.mjs +1 -1
  123. package/esm2022/lib/interaction/components/alert-dialog/alert-dialog.component.mjs +1 -1
  124. package/esm2022/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.mjs +1 -1
  125. package/esm2022/lib/interaction/components/confirm-then-execute-dialog/confirm-then-execute-dialog.component.mjs +1 -1
  126. package/esm2022/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.mjs +1 -1
  127. package/esm2022/lib/interaction/components/editors/edit-context.mjs +1 -1
  128. package/esm2022/lib/interaction/components/editors/inline-string-editor/inline-editor-model.mjs +2 -2
  129. package/esm2022/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.mjs +3 -3
  130. package/esm2022/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.mjs +3 -3
  131. package/esm2022/lib/interaction/components/input-activities/input-activity.mjs +3 -2
  132. package/esm2022/lib/interaction/components/input-activities/select-input-activity.mjs +4 -1
  133. package/esm2022/lib/interaction/components/input-activities/string-input-activity.mjs +9 -4
  134. package/esm2022/lib/interaction/components/popup-interaction-context/popup-interaction-context.component.mjs +3 -2
  135. package/esm2022/lib/interaction/components/slide-down-interaction-context/slide-down-interaction-context.component.mjs +129 -0
  136. package/esm2022/lib/interaction/confirm.mjs +1 -1
  137. package/esm2022/lib/interaction/directives/interaction-context-trigger-for.directive.mjs +6 -6
  138. package/esm2022/lib/interaction/exports.mjs +2 -1
  139. package/esm2022/lib/interaction/in-place-interaction-context.mjs +1 -1
  140. package/esm2022/lib/interaction/interaction-context.mjs +1 -1
  141. package/esm2022/lib/interaction/interaction.module.mjs +21 -23
  142. package/esm2022/lib/interaction/route-synchronisation-adapter.mjs +1 -1
  143. package/esm2022/lib/interaction/services/interaction-service-routing-adapter.mjs +1 -1
  144. package/esm2022/lib/interaction/services/interaction.service.mjs +3 -3
  145. package/esm2022/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.mjs +2 -3
  146. package/esm2022/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.mjs +1 -2
  147. package/esm2022/lib/interaction/services/modal-interaction-context.factory.mjs +1 -1
  148. package/esm2022/lib/place/components/abstract-place-navigation.component.mjs +1 -1
  149. package/esm2022/lib/place/components/list-place-nav/list-place-nav.component.mjs +3 -4
  150. package/esm2022/lib/place/components/not-authorised-notice/not-authorised-notice.component.mjs +2 -4
  151. package/esm2022/lib/place/components/place-outlet/place-outlet.component.mjs +4 -4
  152. package/esm2022/lib/place/components/place-outlet/route-animations.mjs +1 -1
  153. package/esm2022/lib/place/components/side-place-navigation/side-place-navigation.component.mjs +4 -4
  154. package/esm2022/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.mjs +1 -1
  155. package/esm2022/lib/place/guards/consolidated-param-map.mjs +4 -4
  156. package/esm2022/lib/place/guards/noop-auth-guard.service.mjs +2 -4
  157. package/esm2022/lib/place/guards/place.guard.mjs +2 -2
  158. package/esm2022/lib/place/navigation/place-component-deactivation-handler.mjs +2 -2
  159. package/esm2022/lib/place/navigation/session/abstract-pop-state-navigation.mjs +1 -1
  160. package/esm2022/lib/place/navigation/session/event-cleanup/event-clean-up-session.mjs +1 -1
  161. package/esm2022/lib/place/navigation/session/event-cleanup/wait-until-leaving-interaction-transition-cancelled.mjs +1 -1
  162. package/esm2022/lib/place/navigation/session/event-cleanup/wait-until-link-triggered-navigation-interaction-cancelation-type-determined.mjs +1 -1
  163. package/esm2022/lib/place/navigation/session/event-cleanup/wait-until-popstate-during-can-deactivate-transition-finishes.mjs +1 -1
  164. package/esm2022/lib/place/navigation/session/interactions/navigating-during-interaction.mjs +2 -2
  165. package/esm2022/lib/place/navigation/session/interactions/pop-state-during-interaction-navigation.mjs +1 -1
  166. package/esm2022/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.mjs +3 -3
  167. package/esm2022/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.mjs +3 -6
  168. package/esm2022/lib/place/navigation/session/navigating.mjs +2 -2
  169. package/esm2022/lib/place/navigation/session/navigation-context.mjs +1 -1
  170. package/esm2022/lib/place/navigation/session/navigation-session.mjs +1 -1
  171. package/esm2022/lib/place/navigation/session/pop-state-navigation.mjs +1 -1
  172. package/esm2022/lib/place/place-access-guard.mjs +1 -1
  173. package/esm2022/lib/place/place-component.mjs +29 -30
  174. package/esm2022/lib/place/place-config.mjs +1 -1
  175. package/esm2022/lib/place/place-definition.mjs +3 -3
  176. package/esm2022/lib/place/place-history.mjs +3 -5
  177. package/esm2022/lib/place/place-router.mjs +17 -15
  178. package/esm2022/lib/place/place.decorator.mjs +2 -2
  179. package/esm2022/lib/place/place.module.mjs +1 -5
  180. package/esm2022/lib/place/route/formatter.mjs +2 -2
  181. package/esm2022/lib/place/route/json-types.mjs +1 -1
  182. package/esm2022/lib/place/route/parameter-decorators.mjs +54 -50
  183. package/esm2022/lib/place/route/parameter-definition.mjs +2 -2
  184. package/esm2022/lib/place/route/parameter-sanitiser.mjs +1 -1
  185. package/esm2022/lib/place/route/parameter-snapshot.mjs +1 -1
  186. package/esm2022/lib/place/route/visit-segment-sanitiser.mjs +1 -1
  187. package/esm2022/lib/place/url-service.mjs +1 -1
  188. package/esm2022/lib/place/url-snapshot.mjs +3 -3
  189. package/esm2022/lib/place/visit-segment.mjs +2 -2
  190. package/esm2022/lib/place/visit.mjs +2 -2
  191. package/esm2022/lib/services/markdown/markdown.service.mjs +2 -4
  192. package/esm2022/lib/services/markdown/pill-plugin.mjs +1 -3
  193. package/esm2022/lib/services/visibility-service.mjs +4 -4
  194. package/fesm2022/coolon-angular-ui-powerups.mjs +2235 -1609
  195. package/fesm2022/coolon-angular-ui-powerups.mjs.map +1 -1
  196. package/lib/animations/slide-animations.d.ts +1 -0
  197. package/lib/components/busy-overlay/busy-overlay.component.d.ts +1 -4
  198. package/lib/components/commands/command/command.component.d.ts +4 -4
  199. package/lib/components/commands/command-face/command-face.component.d.ts +2 -0
  200. package/lib/components/commands/command-face.d.ts +5 -7
  201. package/lib/components/commands/group/popup-menu/abstract-popup-menu.component.d.ts +2 -2
  202. package/lib/components/commands/group/tool-bar/tool-bar.component.d.ts +3 -7
  203. package/lib/components/components.module.d.ts +55 -53
  204. package/lib/components/disposable-component.d.ts +1 -6
  205. package/lib/components/empty-state/empty-state.component.d.ts +1 -4
  206. package/lib/components/exports.d.ts +5 -1
  207. package/lib/components/forms/abstract-input.component.d.ts +13 -5
  208. package/lib/components/forms/form-field.d.ts +5 -0
  209. package/lib/components/forms/number-input/number-input.component.d.ts +8 -4
  210. package/lib/components/forms/password-input/password-input.component.d.ts +7 -1
  211. package/lib/components/forms/search-input/search-input.component.d.ts +10 -0
  212. package/lib/components/forms/select-input/select-input.component.d.ts +4 -3
  213. package/lib/components/forms/string-input/string-input.component.d.ts +3 -1
  214. package/lib/components/loadable-component.d.ts +17 -0
  215. package/lib/components/loading-container/loading-container.component.d.ts +1 -4
  216. package/lib/components/noop/noop.component.d.ts +0 -1
  217. package/lib/components/resize-aware.component.d.ts +24 -5
  218. package/lib/components/switch-case/switch-case.component.d.ts +4 -4
  219. package/lib/components/tables/abstract-table-model.d.ts +10 -5
  220. package/lib/components/tables/abstract-table.component.d.ts +5 -4
  221. package/lib/components/tables/column/column-manager.d.ts +19 -0
  222. package/lib/components/tables/column/column-model.d.ts +6 -2
  223. package/lib/components/tables/column/column-order-manager.d.ts +20 -0
  224. package/lib/components/tables/column/custom-template-column-model.d.ts +2 -1
  225. package/lib/components/tables/column/custom-value-column-model.d.ts +2 -1
  226. package/lib/components/tables/column/editor-controls-column-model.d.ts +2 -1
  227. package/lib/components/tables/column/list-propery-column-model.d.ts +2 -1
  228. package/lib/components/tables/column/property-column-model.d.ts +2 -1
  229. package/lib/components/tables/column/selection-column-model.d.ts +2 -1
  230. package/lib/components/tables/editor/edit-row-controls/edit-row-controls.component.d.ts +3 -3
  231. package/lib/components/tables/editor/editable-cell-renderer.d.ts +1 -1
  232. package/lib/components/tables/filter/enable-cell-text-search.decorator.d.ts +1 -1
  233. package/lib/components/tables/filter/text-search-predicate.d.ts +9 -0
  234. package/lib/components/tables/renderer/cell-portal-ref.d.ts +2 -3
  235. package/lib/components/tables/renderer/default-cell-renderer/default-cell-renderer.component.d.ts +0 -1
  236. package/lib/components/tables/renderer/default-header-cell-renderer/default-header-cell-renderer.component.d.ts +0 -1
  237. package/lib/components/tables/renderer/table-body/table-body.component.d.ts +25 -15
  238. package/lib/components/tables/renderer/table-header-cell/table-header-cell.component.d.ts +0 -1
  239. package/lib/components/tables/renderer/table-more-menu/table-more-menu.component.d.ts +2 -1
  240. package/lib/components/tables/table/table.component.d.ts +6 -12
  241. package/lib/components/tables/tree-table/tree-expansion-model.d.ts +2 -2
  242. package/lib/components/tables/tree-table/tree-inheritance-icon/tree-inheritance-icon.component.d.ts +0 -1
  243. package/lib/components/tables/tree-table/tree-label-column-model.d.ts +2 -1
  244. package/lib/components/tables/tree-table/tree-table-component.d.ts +5 -2
  245. package/lib/components/text/markdown/markdown.component.d.ts +1 -1
  246. package/lib/directives/exports.d.ts +1 -0
  247. package/lib/directives/resize-observer.directive.d.ts +16 -0
  248. package/lib/interaction/activity-ref.d.ts +2 -2
  249. package/lib/interaction/activity.d.ts +2 -2
  250. package/lib/interaction/components/abstract-confirm-dialog.component.d.ts +1 -0
  251. package/lib/interaction/components/activity-container/activity-container.component.d.ts +7 -3
  252. package/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.d.ts +2 -3
  253. package/lib/interaction/components/editors/edit-context.d.ts +1 -1
  254. package/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.d.ts +1 -1
  255. package/lib/interaction/components/input-activities/string-input-activity.d.ts +1 -1
  256. package/lib/interaction/components/slide-down-interaction-context/slide-down-interaction-context.component.d.ts +53 -0
  257. package/lib/interaction/directives/interaction-context-trigger-for.directive.d.ts +3 -3
  258. package/lib/interaction/exports.d.ts +1 -0
  259. package/lib/interaction/interaction.module.d.ts +28 -28
  260. package/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context-factory.d.ts +1 -2
  261. package/lib/interaction/services/mat-dialog-interaction/dialog-interaction-context.d.ts +1 -2
  262. package/lib/place/components/not-authorised-notice/not-authorised-notice.component.d.ts +0 -1
  263. package/lib/place/guards/noop-auth-guard.service.d.ts +0 -1
  264. package/lib/place/navigation/session/interactions/remove-last-interaction-from-url-navigation-session.d.ts +0 -1
  265. package/lib/place/place-component.d.ts +4 -10
  266. package/lib/place/place-history.d.ts +0 -1
  267. package/lib/place/place-router.d.ts +2 -2
  268. package/lib/place/place.decorator.d.ts +1 -1
  269. package/lib/place/place.module.d.ts +4 -5
  270. package/lib/place/route/json-types.d.ts +1 -3
  271. package/lib/place/visit-segment.d.ts +4 -4
  272. package/lib/place/visit.d.ts +2 -2
  273. package/lib/services/markdown/markdown.service.d.ts +0 -1
  274. package/lib/services/visibility-service.d.ts +1 -1
  275. package/package.json +8 -7
  276. package/esm2022/lib/components/tables/column/column-list-model.mjs +0 -44
  277. package/lib/components/tables/column/column-list-model.d.ts +0 -13
@@ -1,6 +1,6 @@
1
1
  import { MutableListModel, MutableValueModel } from '@coolon/pectin';
2
2
  import { lang, Opts } from '@coolon/typescript-utilities';
3
- import { isEqual, isFunction, isNil, isObject } from 'lodash';
3
+ import { isEqual, isFunction, isNil, isObject } from 'lodash-es';
4
4
  const PARAMETER_DEFINITION_KEY = Symbol('parameterDefinition');
5
5
  export class ParameterDefinition {
6
6
  propertyName;
@@ -118,4 +118,4 @@ export class ParameterDefinition {
118
118
  }
119
119
  ParameterDefinition.get = get;
120
120
  })(ParameterDefinition || (ParameterDefinition = {}));
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyLWRlZmluaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS9yb3V0ZS9wYXJhbWV0ZXItZGVmaW5pdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQXNDLGdCQUFnQixFQUFFLGlCQUFpQixFQUFjLE1BQU0sZ0JBQWdCLENBQUM7QUFDckgsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBTTlELE1BQU0sd0JBQXdCLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7QUFHL0QsTUFBTSxPQUFnQixtQkFBbUI7SUFVbEI7SUFBd0U7SUFMcEYsUUFBUSxDQUFVO0lBQ2xCLFlBQVksQ0FBSTtJQUNqQixPQUFPLENBQXVDO0lBR3RELFlBQXFCLFlBQW9CLEVBQUUsT0FBdUMsRUFBVyxTQUF3QjtRQUFoRyxpQkFBWSxHQUFaLFlBQVksQ0FBUTtRQUFvRCxjQUFTLEdBQVQsU0FBUyxDQUFlO1FBQ25ILElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsSUFB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QUUsU0FBUyxDQUFDLENBQUM7UUFDM0MsQ0FBQztRQUVELFlBQVksQ0FBQyxLQUFVO1lBQ3JCLE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFFRCxVQUFVLENBQUMsQ0FBTSxFQUFFLENBQU07WUFDdkIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDeEIsQ0FBQztLQUVGO0lBakJZLGtDQUFjLGlCQWlCMUIsQ0FBQTtJQUlELFNBQWdCLEdBQUcsQ0FBSSxLQUFtQztRQUN4RCxNQUFNLG1CQUFtQixHQUFHLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUN4QixJQUFJLENBQUMsZUFBZSxDQUFDLG9GQUFvRixDQUFDLENBQUM7U0FDNUc7UUFDRCxPQUFPLG1CQUFtQixDQUFDO0lBQzdCLENBQUM7SUFOZSx1QkFBRyxNQU1sQixDQUFBO0FBR0gsQ0FBQyxFQXJFZ0IsbUJBQW1CLEtBQW5CLG1CQUFtQixRQXFFbkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29uc3RydWN0YWJsZSwgSGFzVmFsdWUsIExpc3RNb2RlbCwgTXV0YWJsZUxpc3RNb2RlbCwgTXV0YWJsZVZhbHVlTW9kZWwsIFZhbHVlTW9kZWwgfSBmcm9tICdAY29vbG9uL3BlY3Rpbic7XG5pbXBvcnQgeyBsYW5nLCBPcHRzIH0gZnJvbSAnQGNvb2xvbi90eXBlc2NyaXB0LXV0aWxpdGllcyc7XG5cbmltcG9ydCB7IGlzRXF1YWwsIGlzRnVuY3Rpb24sIGlzTmlsLCBpc09iamVjdCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBQbGFjZUhpc3RvcnkgfSBmcm9tICcuLi9wbGFjZS1oaXN0b3J5JztcbmltcG9ydCB7IFZpc2l0U2VnbWVudCB9IGZyb20gJy4uL3Zpc2l0LXNlZ21lbnQnO1xuaW1wb3J0IHsgRm9ybWF0dGVyIH0gZnJvbSAnLi9mb3JtYXR0ZXInO1xuaW1wb3J0IHsgUGFyYW1ldGVyU2FuaXRpc2VyIH0gZnJvbSAnLi9wYXJhbWV0ZXItc2FuaXRpc2VyJztcblxuY29uc3QgUEFSQU1FVEVSX0RFRklOSVRJT05fS0VZID0gU3ltYm9sKCdwYXJhbWV0ZXJEZWZpbml0aW9uJyk7XG5cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFBhcmFtZXRlckRlZmluaXRpb248VCwgRSA9IFQ+IHtcblxuICBhYnN0cmFjdCByZWFkb25seSBpc1JvdXRlSWQ6IGJvb2xlYW47XG4gIGFic3RyYWN0IHJlYWRvbmx5IGlzQXJyYXk6IGJvb2xlYW47XG5cbiAgcmVhZG9ubHkgcmVtZW1iZXI6IGJvb2xlYW47XG4gIHJlYWRvbmx5IGRlZmF1bHRWYWx1ZTogVDtcbiAgcHJpdmF0ZSBvcHRpb25zOiBPcHRzPFBhcmFtZXRlckRlZmluaXRpb24uT3B0aW9uczxUPj47XG4gIHByb3RlY3RlZCBhYnN0cmFjdCBiYWNraW5nTW9kZWxGYWN0b3J5OiAoKSA9PiBIYXNWYWx1ZTxUPjtcblxuICBjb25zdHJ1Y3RvcihyZWFkb25seSBwcm9wZXJ0eU5hbWU6IHN0cmluZywgb3B0aW9uczogUGFyYW1ldGVyRGVmaW5pdGlvbi5PcHRpb25zPFQ+LCByZWFkb25seSB1cmxGb3JtYXQ/OiBGb3JtYXR0ZXI8RT4pIHtcbiAgICB0aGlzLm9wdGlvbnMgPSBPcHRzLmdldChvcHRpb25zKTtcbiAgICB0aGlzLnJlbWVtYmVyID0gdGhpcy5vcHRpb25zLmdldE9wdGlvbmFsKCdyZW1lbWJlcicsIGZhbHNlKTtcbiAgICB0aGlzLmRlZmF1bHRWYWx1ZSA9IHRoaXMub3B0aW9ucy5nZXRPcHRpb25hbCgnZGVmYXVsdFZhbHVlJywgbnVsbCk7XG4gIH1cblxuICBnZXQgbmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zLmdldE9wdGlvbmFsKCdhcycsIHRoaXMucHJvcGVydHlOYW1lKTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGdldCBpc1JvdXRlUGFyYW1ldGVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMudXJsRm9ybWF0O1xuICB9XG5cbiAgYWJzdHJhY3QgaXNFbXB0eVZhbHVlKHZhbHVlOiBUKTogYm9vbGVhbjtcblxuICBhYnN0cmFjdCBoYXNDaGFuZ2VkKGE6IGFueSwgYjogYW55KTogYm9vbGVhbjtcblxuICBjcmVhdGVCYWNraW5nTW9kZWwoKTogSGFzVmFsdWU8VD4ge1xuICAgIGNvbnN0IG1vZGVsID0gdGhpcy5iYWNraW5nTW9kZWxGYWN0b3J5KCk7XG4gICAgbW9kZWxbUEFSQU1FVEVSX0RFRklOSVRJT05fS0VZXSA9IHRoaXM7XG4gICAgcmV0dXJuIG1vZGVsO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldE9wdGlvblZhbHVlPEsgZXh0ZW5kcyBrZXlvZiBQYXJhbWV0ZXJEZWZpbml0aW9uLk9wdGlvbnM8VD4+KGtleTogSyk6IFBhcmFtZXRlckRlZmluaXRpb24uT3B0aW9uczxUPltLXSB7XG4gICAgcmV0dXJuIHRoaXMub3B0aW9ucy5nZXRPcHRpb25hbChrZXksIG51bGwpO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgYXN5bmMgc2FuaXRpc2UodmFsdWU6IFQsIHZpc2l0OiBWaXNpdFNlZ21lbnQsIHBsYWNlSGlzdG9yeTogUGxhY2VIaXN0b3J5LCBpbmplY3RvcjogSW5qZWN0b3IsIGlzUG9wU3RhdGU6IGJvb2xlYW4pOiBQcm9taXNlPFQ+IHtcbiAgICAvLyBjb25zb2xlLmxvZyhgc2FuaXRpc2UoJHt0aGlzLnByb3BlcnR5TmFtZX0pYClcbiAgICB2YWx1ZSA9IGF3YWl0IHRoaXMuc2FuaXRpc2VNaXNzaW5nKHZpc2l0LCBwbGFjZUhpc3RvcnksIHZhbHVlKTtcbiAgICB2YWx1ZSA9IGF3YWl0IHRoaXMucnVuQ3VzdG9tU2FuaXRpc2VyKHZhbHVlLCB2aXNpdCwgcGxhY2VIaXN0b3J5LCBpbmplY3RvciwgaXNQb3BTdGF0ZSk7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBydW5DdXN0b21TYW5pdGlzZXIodmFsdWU6IFQsIHZpc2l0OiBWaXNpdFNlZ21lbnQsIHBsYWNlSGlzdG9yeTogUGxhY2VIaXN0b3J5LCBpbmplY3RvcjogSW5qZWN0b3IsIGlzUG9wU3RhdGU6IGJvb2xlYW4pOiBQcm9taXNlPFQ+IHtcbiAgICBjb25zdCBjdXN0b21TYW5pdGlzZXIgPSB0aGlzLnByZXBhcmVDdXN0b21TYW5pdGlzZXIoaW5qZWN0b3IpO1xuICAgIHJldHVybiBjdXN0b21TYW5pdGlzZXIgPyBjdXN0b21TYW5pdGlzZXIuc2FuaXRpc2UodmFsdWUsIHZpc2l0LCBpbmplY3RvcikgOiB2YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgc2FuaXRpc2VNaXNzaW5nKHZpc2l0OiBWaXNpdFNlZ21lbnQsIHBsYWNlSGlzdG9yeTogUGxhY2VIaXN0b3J5LCB2YWx1ZTogVCkge1xuICAgIGlmICh0aGlzLmlzTWlzc2luZ0Zyb20odmlzaXQpKSB7XG4gICAgICBjb25zdCByZXR1cm5pbmdGcm9tU29tZXdoZXJlRWxzZSA9ICFwbGFjZUhpc3RvcnkubGFzdFZpc2l0SW5jbHVkZWQodmlzaXQucGxhY2VEZWZpbml0aW9uKTtcbiAgICAgIGlmIChyZXR1cm5pbmdGcm9tU29tZXdoZXJlRWxzZSkge1xuICAgICAgICBjb25zdCBsYXN0S25vd25WaXNpdCA9IHBsYWNlSGlzdG9yeS5nZXRNb3N0UmVjZW50VmlzaXRTZWdtZW50Rm9yKHZpc2l0LnBsYWNlRGVmaW5pdGlvbik7XG4gICAgICAgIGlmICh0aGlzLnJlbWVtYmVyICYmIGxhc3RLbm93blZpc2l0KSB7XG4gICAgICAgICAgdmFsdWUgPSBsYXN0S25vd25WaXNpdC5nZXRQYXJhbWV0ZXJWYWx1ZSh0aGlzKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5pc0VtcHR5VmFsdWUodmFsdWUpID8gdGhpcy5kZWZhdWx0VmFsdWUgOiB2YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgcHJlcGFyZUN1c3RvbVNhbml0aXNlcihpbmplY3RvcjogSW5qZWN0b3IpOiBQYXJhbWV0ZXJTYW5pdGlzZXI8YW55PiB7XG4gICAgY29uc3QgY3VzdG9tU2FuaXRpc2VyID0gdGhpcy5vcHRpb25zLmdldE9wdGlvbmFsKCdzYW5pdGlzZXInLCBudWxsKTtcbiAgICBpZiAoaXNGdW5jdGlvbihjdXN0b21TYW5pdGlzZXIpKSB7XG4gICAgICByZXR1cm4gaW5qZWN0b3IuZ2V0KGN1c3RvbVNhbml0aXNlcik7XG4gICAgfVxuICAgIGlmIChpc09iamVjdChjdXN0b21TYW5pdGlzZXIpKSB7XG4gICAgICByZXR1cm4gaXNGdW5jdGlvbihjdXN0b21TYW5pdGlzZXJbJ3Nhbml0aXNlJ10pID9cbiAgICAgICAgY3VzdG9tU2FuaXRpc2VyIGFzIFBhcmFtZXRlclNhbml0aXNlcjxhbnk+IDpcbiAgICAgICAgbGFuZy5pbGxlZ2FsU3RhdGUoYGV4cGVjdGVkIEBWaXNpdFBhcmFtZXRlcih7c2FuaXRpc2VyOiAuLi59KSBmb3IgJHt0aGlzLnByb3BlcnR5TmFtZX0gdG8gYmUgYSBjb25zdHJ1Y3RvciBvciBpbnN0YW5jZSBvZiBQYXJhbWV0ZXJTYW5pdGlzZXIsIGdvdDogYCArIGN1c3RvbVNhbml0aXNlcik7XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBwcml2YXRlIGlzTWlzc2luZ0Zyb20odmlzaXQ6IFZpc2l0U2VnbWVudCkge1xuICAgIHJldHVybiAhdmlzaXQuaGFzUGFyYW1ldGVyKHRoaXMpO1xuICB9XG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgUGFyYW1ldGVyRGVmaW5pdGlvbiB7XG5cbiAgZXhwb3J0IGludGVyZmFjZSBPcHRpb25zPFQ+IHtcbiAgICBhcz86IHN0cmluZztcbiAgICBvcHRpb25hbD86IGJvb2xlYW47XG4gICAgcmVtZW1iZXI/OiBib29sZWFuO1xuICAgIGRlZmF1bHRWYWx1ZT86IFQ7XG4gICAgc2FuaXRpc2VyPzogQ29uc3RydWN0YWJsZTxQYXJhbWV0ZXJTYW5pdGlzZXI8VD4+IHwgUGFyYW1ldGVyU2FuaXRpc2VyPFQ+O1xuICB9XG5cbiAgZXhwb3J0IGNsYXNzIFJvdXRlSWQ8VD4gZXh0ZW5kcyBQYXJhbWV0ZXJEZWZpbml0aW9uPFQ+IHtcbiAgICByZWFkb25seSBpc1JvdXRlSWQgPSB0cnVlO1xuICAgIHJlYWRvbmx5IGlzQXJyYXkgPSBmYWxzZTtcbiAgICBwcm90ZWN0ZWQgYmFja2luZ01vZGVsRmFjdG9yeSA9ICgpID0+IG5ldyBNdXRhYmxlVmFsdWVNb2RlbDxUPigpO1xuXG4gICAgaXNFbXB0eVZhbHVlKHZhbHVlOiBUKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gaXNOaWwodmFsdWUpO1xuICAgIH1cblxuICAgIGhhc0NoYW5nZWQoYTogYW55LCBiOiBhbnkpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiBhICE9PSBiO1xuICAgIH1cblxuICB9XG5cbiAgZXhwb3J0IGNsYXNzIFZhbHVlUGFyYW1ldGVyPFQ+IGV4dGVuZHMgUGFyYW1ldGVyRGVmaW5pdGlvbjxUPiB7XG4gICAgcmVhZG9ubHkgaXNSb3V0ZUlkID0gZmFsc2U7XG4gICAgcmVhZG9ubHkgaXNBcnJheSA9IGZhbHNlO1xuICAgIHByb3RlY3RlZCBiYWNraW5nTW9kZWxGYWN0b3J5ID0gKCkgPT4gbmV3IE11dGFibGVWYWx1ZU1vZGVsPFQ+KCk7XG5cbiAgICBpc0VtcHR5VmFsdWUodmFsdWU6IFQpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiBpc05pbCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgaGFzQ2hhbmdlZChhOiBhbnksIGI6IGFueSk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIGEgIT09IGI7XG4gICAgfVxuICB9XG5cbiAgZXhwb3J0IGNsYXNzIEFycmF5UGFyYW1ldGVyPFQ+IGV4dGVuZHMgUGFyYW1ldGVyRGVmaW5pdGlvbjxSZWFkb25seUFycmF5PFQ+LCBUPiB7XG4gICAgcmVhZG9ubHkgaXNSb3V0ZUlkID0gZmFsc2U7XG4gICAgcmVhZG9ubHkgaXNBcnJheSA9IHRydWU7XG4gICAgcHJvdGVjdGVkIGJhY2tpbmdNb2RlbEZhY3RvcnkgPSAoKSA9PiBuZXcgTXV0YWJsZUxpc3RNb2RlbDxUPigpO1xuXG4gICAgY29uc3RydWN0b3IocGFyYW1ldGVyTmFtZTogc3RyaW5nLCBvcHRpb25zOiBPcHRpb25zPFRbXT4sIHVybEZvcm1hdDogRm9ybWF0dGVyPFQ+KSB7XG4gICAgICBzdXBlcihwYXJhbWV0ZXJOYW1lLCBvcHRpb25zLCB1cmxGb3JtYXQpO1xuICAgIH1cblxuICAgIGlzRW1wdHlWYWx1ZSh2YWx1ZTogVFtdKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gaXNOaWwodmFsdWUpIHx8IHZhbHVlLmxlbmd0aCA8IDE7XG4gICAgfVxuXG4gICAgaGFzQ2hhbmdlZChhOiBUW10sIGI6IFRbXSk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuICFpc0VxdWFsKGEsIGIpO1xuICAgIH1cblxuICB9XG5cbiAgZXhwb3J0IGZ1bmN0aW9uIGdldDxUPihtb2RlbDogVmFsdWVNb2RlbDxUPik6IFBhcmFtZXRlckRlZmluaXRpb24uVmFsdWVQYXJhbWV0ZXI8VD5cbiAgZXhwb3J0IGZ1bmN0aW9uIGdldDxUPihtb2RlbDogTGlzdE1vZGVsPFQ+KTogUGFyYW1ldGVyRGVmaW5pdGlvbi5BcnJheVBhcmFtZXRlcjxUPlxuICBleHBvcnQgZnVuY3Rpb24gZ2V0PFQ+KG1vZGVsOiBWYWx1ZU1vZGVsPFQ+IHwgTGlzdE1vZGVsPFQ+KTogUGFyYW1ldGVyRGVmaW5pdGlvbi5WYWx1ZVBhcmFtZXRlcjxUPiB8IFBhcmFtZXRlckRlZmluaXRpb24uQXJyYXlQYXJhbWV0ZXI8VD4ge1xuICAgIGNvbnN0IHBhcmFtZXRlckRlZmluaXRpb24gPSBtb2RlbFtQQVJBTUVURVJfREVGSU5JVElPTl9LRVldO1xuICAgIGlmICghcGFyYW1ldGVyRGVmaW5pdGlvbikge1xuICAgICAgbGFuZy5pbGxlZ2FsQXJndW1lbnQoJ21vZGVsIGhhc25cXCd0IGJlZW4gYW5ub3RhdGVkIHdpdGggQFZpc2l0UGFyYW1ldGVyLCBAVmlzaXRQYXJhbWV0ZXJMaXN0IG9yIEBSb3V0ZUlkJyk7XG4gICAgfVxuICAgIHJldHVybiBwYXJhbWV0ZXJEZWZpbml0aW9uO1xuICB9XG5cblxufVxuIl19
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyLWRlZmluaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS9yb3V0ZS9wYXJhbWV0ZXItZGVmaW5pdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQXFDLGdCQUFnQixFQUFFLGlCQUFpQixFQUFhLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkgsT0FBTyxFQUFDLElBQUksRUFBRSxJQUFJLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUV4RCxPQUFPLEVBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFDLE1BQU0sV0FBVyxDQUFDO0FBTS9ELE1BQU0sd0JBQXdCLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7QUFHL0QsTUFBTSxPQUFnQixtQkFBbUI7SUFVbEI7SUFBd0U7SUFMcEYsUUFBUSxDQUFVO0lBQ2xCLFlBQVksQ0FBSTtJQUNqQixPQUFPLENBQXVDO0lBR3RELFlBQXFCLFlBQW9CLEVBQUUsT0FBdUMsRUFBVyxTQUF3QjtRQUFoRyxpQkFBWSxHQUFaLFlBQVksQ0FBUTtRQUFvRCxjQUFTLEdBQVQsU0FBUyxDQUFlO1FBQ25ILElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsSUFB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QUUsU0FBUyxDQUFDLENBQUM7UUFDM0MsQ0FBQztRQUVELFlBQVksQ0FBQyxLQUFVO1lBQ3JCLE9BQU8sS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQzFDLENBQUM7UUFFRCxVQUFVLENBQUMsQ0FBTSxFQUFFLENBQU07WUFDdkIsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDeEIsQ0FBQztLQUVGO0lBakJZLGtDQUFjLGlCQWlCMUIsQ0FBQTtJQUlELFNBQWdCLEdBQUcsQ0FBSSxLQUFtQztRQUN4RCxNQUFNLG1CQUFtQixHQUFHLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUN4QixJQUFJLENBQUMsZUFBZSxDQUFDLG9GQUFvRixDQUFDLENBQUM7U0FDNUc7UUFDRCxPQUFPLG1CQUFtQixDQUFDO0lBQzdCLENBQUM7SUFOZSx1QkFBRyxNQU1sQixDQUFBO0FBR0gsQ0FBQyxFQXJFZ0IsbUJBQW1CLEtBQW5CLG1CQUFtQixRQXFFbkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdG9yfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29uc3RydWN0YWJsZSwgSGFzVmFsdWUsIExpc3RNb2RlbCwgTXV0YWJsZUxpc3RNb2RlbCwgTXV0YWJsZVZhbHVlTW9kZWwsIFZhbHVlTW9kZWx9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7bGFuZywgT3B0c30gZnJvbSAnQGNvb2xvbi90eXBlc2NyaXB0LXV0aWxpdGllcyc7XG5cbmltcG9ydCB7aXNFcXVhbCwgaXNGdW5jdGlvbiwgaXNOaWwsIGlzT2JqZWN0fSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHtQbGFjZUhpc3Rvcnl9IGZyb20gJy4uL3BsYWNlLWhpc3RvcnknO1xuaW1wb3J0IHtWaXNpdFNlZ21lbnR9IGZyb20gJy4uL3Zpc2l0LXNlZ21lbnQnO1xuaW1wb3J0IHtGb3JtYXR0ZXJ9IGZyb20gJy4vZm9ybWF0dGVyJztcbmltcG9ydCB7UGFyYW1ldGVyU2FuaXRpc2VyfSBmcm9tICcuL3BhcmFtZXRlci1zYW5pdGlzZXInO1xuXG5jb25zdCBQQVJBTUVURVJfREVGSU5JVElPTl9LRVkgPSBTeW1ib2woJ3BhcmFtZXRlckRlZmluaXRpb24nKTtcblxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUGFyYW1ldGVyRGVmaW5pdGlvbjxULCBFID0gVD4ge1xuXG4gIGFic3RyYWN0IHJlYWRvbmx5IGlzUm91dGVJZDogYm9vbGVhbjtcbiAgYWJzdHJhY3QgcmVhZG9ubHkgaXNBcnJheTogYm9vbGVhbjtcblxuICByZWFkb25seSByZW1lbWJlcjogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZGVmYXVsdFZhbHVlOiBUO1xuICBwcml2YXRlIG9wdGlvbnM6IE9wdHM8UGFyYW1ldGVyRGVmaW5pdGlvbi5PcHRpb25zPFQ+PjtcbiAgcHJvdGVjdGVkIGFic3RyYWN0IGJhY2tpbmdNb2RlbEZhY3Rvcnk6ICgpID0+IEhhc1ZhbHVlPFQ+O1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IHByb3BlcnR5TmFtZTogc3RyaW5nLCBvcHRpb25zOiBQYXJhbWV0ZXJEZWZpbml0aW9uLk9wdGlvbnM8VD4sIHJlYWRvbmx5IHVybEZvcm1hdD86IEZvcm1hdHRlcjxFPikge1xuICAgIHRoaXMub3B0aW9ucyA9IE9wdHMuZ2V0KG9wdGlvbnMpO1xuICAgIHRoaXMucmVtZW1iZXIgPSB0aGlzLm9wdGlvbnMuZ2V0T3B0aW9uYWwoJ3JlbWVtYmVyJywgZmFsc2UpO1xuICAgIHRoaXMuZGVmYXVsdFZhbHVlID0gdGhpcy5vcHRpb25zLmdldE9wdGlvbmFsKCdkZWZhdWx0VmFsdWUnLCBudWxsKTtcbiAgfVxuXG4gIGdldCBuYW1lKCkge1xuICAgIHJldHVybiB0aGlzLm9wdGlvbnMuZ2V0T3B0aW9uYWwoJ2FzJywgdGhpcy5wcm9wZXJ0eU5hbWUpO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgZ2V0IGlzUm91dGVQYXJhbWV0ZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy51cmxGb3JtYXQ7XG4gIH1cblxuICBhYnN0cmFjdCBpc0VtcHR5VmFsdWUodmFsdWU6IFQpOiBib29sZWFuO1xuXG4gIGFic3RyYWN0IGhhc0NoYW5nZWQoYTogYW55LCBiOiBhbnkpOiBib29sZWFuO1xuXG4gIGNyZWF0ZUJhY2tpbmdNb2RlbCgpOiBIYXNWYWx1ZTxUPiB7XG4gICAgY29uc3QgbW9kZWwgPSB0aGlzLmJhY2tpbmdNb2RlbEZhY3RvcnkoKTtcbiAgICBtb2RlbFtQQVJBTUVURVJfREVGSU5JVElPTl9LRVldID0gdGhpcztcbiAgICByZXR1cm4gbW9kZWw7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0T3B0aW9uVmFsdWU8SyBleHRlbmRzIGtleW9mIFBhcmFtZXRlckRlZmluaXRpb24uT3B0aW9uczxUPj4oa2V5OiBLKTogUGFyYW1ldGVyRGVmaW5pdGlvbi5PcHRpb25zPFQ+W0tdIHtcbiAgICByZXR1cm4gdGhpcy5vcHRpb25zLmdldE9wdGlvbmFsKGtleSwgbnVsbCk7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBhc3luYyBzYW5pdGlzZSh2YWx1ZTogVCwgdmlzaXQ6IFZpc2l0U2VnbWVudCwgcGxhY2VIaXN0b3J5OiBQbGFjZUhpc3RvcnksIGluamVjdG9yOiBJbmplY3RvciwgaXNQb3BTdGF0ZTogYm9vbGVhbik6IFByb21pc2U8VD4ge1xuICAgIC8vIGNvbnNvbGUubG9nKGBzYW5pdGlzZSgke3RoaXMucHJvcGVydHlOYW1lfSlgKVxuICAgIHZhbHVlID0gYXdhaXQgdGhpcy5zYW5pdGlzZU1pc3NpbmcodmlzaXQsIHBsYWNlSGlzdG9yeSwgdmFsdWUpO1xuICAgIHZhbHVlID0gYXdhaXQgdGhpcy5ydW5DdXN0b21TYW5pdGlzZXIodmFsdWUsIHZpc2l0LCBwbGFjZUhpc3RvcnksIGluamVjdG9yLCBpc1BvcFN0YXRlKTtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHJ1bkN1c3RvbVNhbml0aXNlcih2YWx1ZTogVCwgdmlzaXQ6IFZpc2l0U2VnbWVudCwgcGxhY2VIaXN0b3J5OiBQbGFjZUhpc3RvcnksIGluamVjdG9yOiBJbmplY3RvciwgaXNQb3BTdGF0ZTogYm9vbGVhbik6IFByb21pc2U8VD4ge1xuICAgIGNvbnN0IGN1c3RvbVNhbml0aXNlciA9IHRoaXMucHJlcGFyZUN1c3RvbVNhbml0aXNlcihpbmplY3Rvcik7XG4gICAgcmV0dXJuIGN1c3RvbVNhbml0aXNlciA/IGN1c3RvbVNhbml0aXNlci5zYW5pdGlzZSh2YWx1ZSwgdmlzaXQsIGluamVjdG9yKSA6IHZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBzYW5pdGlzZU1pc3NpbmcodmlzaXQ6IFZpc2l0U2VnbWVudCwgcGxhY2VIaXN0b3J5OiBQbGFjZUhpc3RvcnksIHZhbHVlOiBUKSB7XG4gICAgaWYgKHRoaXMuaXNNaXNzaW5nRnJvbSh2aXNpdCkpIHtcbiAgICAgIGNvbnN0IHJldHVybmluZ0Zyb21Tb21ld2hlcmVFbHNlID0gIXBsYWNlSGlzdG9yeS5sYXN0VmlzaXRJbmNsdWRlZCh2aXNpdC5wbGFjZURlZmluaXRpb24pO1xuICAgICAgaWYgKHJldHVybmluZ0Zyb21Tb21ld2hlcmVFbHNlKSB7XG4gICAgICAgIGNvbnN0IGxhc3RLbm93blZpc2l0ID0gcGxhY2VIaXN0b3J5LmdldE1vc3RSZWNlbnRWaXNpdFNlZ21lbnRGb3IodmlzaXQucGxhY2VEZWZpbml0aW9uKTtcbiAgICAgICAgaWYgKHRoaXMucmVtZW1iZXIgJiYgbGFzdEtub3duVmlzaXQpIHtcbiAgICAgICAgICB2YWx1ZSA9IGxhc3RLbm93blZpc2l0LmdldFBhcmFtZXRlclZhbHVlKHRoaXMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmlzRW1wdHlWYWx1ZSh2YWx1ZSkgPyB0aGlzLmRlZmF1bHRWYWx1ZSA6IHZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBwcmVwYXJlQ3VzdG9tU2FuaXRpc2VyKGluamVjdG9yOiBJbmplY3Rvcik6IFBhcmFtZXRlclNhbml0aXNlcjxhbnk+IHtcbiAgICBjb25zdCBjdXN0b21TYW5pdGlzZXIgPSB0aGlzLm9wdGlvbnMuZ2V0T3B0aW9uYWwoJ3Nhbml0aXNlcicsIG51bGwpO1xuICAgIGlmIChpc0Z1bmN0aW9uKGN1c3RvbVNhbml0aXNlcikpIHtcbiAgICAgIHJldHVybiBpbmplY3Rvci5nZXQoY3VzdG9tU2FuaXRpc2VyKTtcbiAgICB9XG4gICAgaWYgKGlzT2JqZWN0KGN1c3RvbVNhbml0aXNlcikpIHtcbiAgICAgIHJldHVybiBpc0Z1bmN0aW9uKGN1c3RvbVNhbml0aXNlclsnc2FuaXRpc2UnXSkgP1xuICAgICAgICBjdXN0b21TYW5pdGlzZXIgYXMgUGFyYW1ldGVyU2FuaXRpc2VyPGFueT4gOlxuICAgICAgICBsYW5nLmlsbGVnYWxTdGF0ZShgZXhwZWN0ZWQgQFZpc2l0UGFyYW1ldGVyKHtzYW5pdGlzZXI6IC4uLn0pIGZvciAke3RoaXMucHJvcGVydHlOYW1lfSB0byBiZSBhIGNvbnN0cnVjdG9yIG9yIGluc3RhbmNlIG9mIFBhcmFtZXRlclNhbml0aXNlciwgZ290OiBgICsgY3VzdG9tU2FuaXRpc2VyKTtcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIHByaXZhdGUgaXNNaXNzaW5nRnJvbSh2aXNpdDogVmlzaXRTZWdtZW50KSB7XG4gICAgcmV0dXJuICF2aXNpdC5oYXNQYXJhbWV0ZXIodGhpcyk7XG4gIH1cbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBQYXJhbWV0ZXJEZWZpbml0aW9uIHtcblxuICBleHBvcnQgaW50ZXJmYWNlIE9wdGlvbnM8VD4ge1xuICAgIGFzPzogc3RyaW5nO1xuICAgIG9wdGlvbmFsPzogYm9vbGVhbjtcbiAgICByZW1lbWJlcj86IGJvb2xlYW47XG4gICAgZGVmYXVsdFZhbHVlPzogVDtcbiAgICBzYW5pdGlzZXI/OiBDb25zdHJ1Y3RhYmxlPFBhcmFtZXRlclNhbml0aXNlcjxUPj4gfCBQYXJhbWV0ZXJTYW5pdGlzZXI8VD47XG4gIH1cblxuICBleHBvcnQgY2xhc3MgUm91dGVJZDxUPiBleHRlbmRzIFBhcmFtZXRlckRlZmluaXRpb248VD4ge1xuICAgIHJlYWRvbmx5IGlzUm91dGVJZCA9IHRydWU7XG4gICAgcmVhZG9ubHkgaXNBcnJheSA9IGZhbHNlO1xuICAgIHByb3RlY3RlZCBiYWNraW5nTW9kZWxGYWN0b3J5ID0gKCkgPT4gbmV3IE11dGFibGVWYWx1ZU1vZGVsPFQ+KCk7XG5cbiAgICBpc0VtcHR5VmFsdWUodmFsdWU6IFQpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiBpc05pbCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgaGFzQ2hhbmdlZChhOiBhbnksIGI6IGFueSk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIGEgIT09IGI7XG4gICAgfVxuXG4gIH1cblxuICBleHBvcnQgY2xhc3MgVmFsdWVQYXJhbWV0ZXI8VD4gZXh0ZW5kcyBQYXJhbWV0ZXJEZWZpbml0aW9uPFQ+IHtcbiAgICByZWFkb25seSBpc1JvdXRlSWQgPSBmYWxzZTtcbiAgICByZWFkb25seSBpc0FycmF5ID0gZmFsc2U7XG4gICAgcHJvdGVjdGVkIGJhY2tpbmdNb2RlbEZhY3RvcnkgPSAoKSA9PiBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8VD4oKTtcblxuICAgIGlzRW1wdHlWYWx1ZSh2YWx1ZTogVCk6IGJvb2xlYW4ge1xuICAgICAgcmV0dXJuIGlzTmlsKHZhbHVlKTtcbiAgICB9XG5cbiAgICBoYXNDaGFuZ2VkKGE6IGFueSwgYjogYW55KTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gYSAhPT0gYjtcbiAgICB9XG4gIH1cblxuICBleHBvcnQgY2xhc3MgQXJyYXlQYXJhbWV0ZXI8VD4gZXh0ZW5kcyBQYXJhbWV0ZXJEZWZpbml0aW9uPFJlYWRvbmx5QXJyYXk8VD4sIFQ+IHtcbiAgICByZWFkb25seSBpc1JvdXRlSWQgPSBmYWxzZTtcbiAgICByZWFkb25seSBpc0FycmF5ID0gdHJ1ZTtcbiAgICBwcm90ZWN0ZWQgYmFja2luZ01vZGVsRmFjdG9yeSA9ICgpID0+IG5ldyBNdXRhYmxlTGlzdE1vZGVsPFQ+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihwYXJhbWV0ZXJOYW1lOiBzdHJpbmcsIG9wdGlvbnM6IE9wdGlvbnM8VFtdPiwgdXJsRm9ybWF0OiBGb3JtYXR0ZXI8VD4pIHtcbiAgICAgIHN1cGVyKHBhcmFtZXRlck5hbWUsIG9wdGlvbnMsIHVybEZvcm1hdCk7XG4gICAgfVxuXG4gICAgaXNFbXB0eVZhbHVlKHZhbHVlOiBUW10pOiBib29sZWFuIHtcbiAgICAgIHJldHVybiBpc05pbCh2YWx1ZSkgfHwgdmFsdWUubGVuZ3RoIDwgMTtcbiAgICB9XG5cbiAgICBoYXNDaGFuZ2VkKGE6IFRbXSwgYjogVFtdKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gIWlzRXF1YWwoYSwgYik7XG4gICAgfVxuXG4gIH1cblxuICBleHBvcnQgZnVuY3Rpb24gZ2V0PFQ+KG1vZGVsOiBWYWx1ZU1vZGVsPFQ+KTogUGFyYW1ldGVyRGVmaW5pdGlvbi5WYWx1ZVBhcmFtZXRlcjxUPlxuICBleHBvcnQgZnVuY3Rpb24gZ2V0PFQ+KG1vZGVsOiBMaXN0TW9kZWw8VD4pOiBQYXJhbWV0ZXJEZWZpbml0aW9uLkFycmF5UGFyYW1ldGVyPFQ+XG4gIGV4cG9ydCBmdW5jdGlvbiBnZXQ8VD4obW9kZWw6IFZhbHVlTW9kZWw8VD4gfCBMaXN0TW9kZWw8VD4pOiBQYXJhbWV0ZXJEZWZpbml0aW9uLlZhbHVlUGFyYW1ldGVyPFQ+IHwgUGFyYW1ldGVyRGVmaW5pdGlvbi5BcnJheVBhcmFtZXRlcjxUPiB7XG4gICAgY29uc3QgcGFyYW1ldGVyRGVmaW5pdGlvbiA9IG1vZGVsW1BBUkFNRVRFUl9ERUZJTklUSU9OX0tFWV07XG4gICAgaWYgKCFwYXJhbWV0ZXJEZWZpbml0aW9uKSB7XG4gICAgICBsYW5nLmlsbGVnYWxBcmd1bWVudCgnbW9kZWwgaGFzblxcJ3QgYmVlbiBhbm5vdGF0ZWQgd2l0aCBAVmlzaXRQYXJhbWV0ZXIsIEBWaXNpdFBhcmFtZXRlckxpc3Qgb3IgQFJvdXRlSWQnKTtcbiAgICB9XG4gICAgcmV0dXJuIHBhcmFtZXRlckRlZmluaXRpb247XG4gIH1cblxuXG59XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyLXNhbml0aXNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL3BsYWNlL3JvdXRlL3BhcmFtZXRlci1zYW5pdGlzZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWaXNpdFNlZ21lbnQgfSBmcm9tICcuLi92aXNpdC1zZWdtZW50JztcbmltcG9ydCB7IFBhcmFtZXRlclNuYXBzaG90IH0gZnJvbSAnLi9wYXJhbWV0ZXItc25hcHNob3QnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBhcmFtZXRlclNhbml0aXNlcjxUPiB7XG4gIHNhbml0aXNlKHBhcmFtZXRlclZhbHVlOiBULCB2aXNpdD86IFZpc2l0U2VnbWVudCwgaW5qZWN0b3I/OiBJbmplY3Rvcik6IFByb21pc2U8VD4gfCBUO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyLXNhbml0aXNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL3BsYWNlL3JvdXRlL3BhcmFtZXRlci1zYW5pdGlzZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0b3J9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtWaXNpdFNlZ21lbnR9IGZyb20gJy4uL3Zpc2l0LXNlZ21lbnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBhcmFtZXRlclNhbml0aXNlcjxUPiB7XG4gIHNhbml0aXNlKHBhcmFtZXRlclZhbHVlOiBULCB2aXNpdD86IFZpc2l0U2VnbWVudCwgaW5qZWN0b3I/OiBJbmplY3Rvcik6IFByb21pc2U8VD4gfCBUO1xufVxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyLXNuYXBzaG90LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvcGxhY2Uvcm91dGUvcGFyYW1ldGVyLXNuYXBzaG90LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQYXJhbWV0ZXJEZWZpbml0aW9uIH0gZnJvbSAnLi9wYXJhbWV0ZXItZGVmaW5pdGlvbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyYW1ldGVyU25hcHNob3Q8VD4ge1xuICBkZWZpbml0aW9uOiBQYXJhbWV0ZXJEZWZpbml0aW9uPFQsIGFueT5cbiAgcmVhZG9ubHkgdmFsdWU6IFQ7XG4gIGlzTWlzc2luZygpOiBib29sZWFuO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyLXNuYXBzaG90LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvcGxhY2Uvcm91dGUvcGFyYW1ldGVyLXNuYXBzaG90LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BhcmFtZXRlckRlZmluaXRpb259IGZyb20gJy4vcGFyYW1ldGVyLWRlZmluaXRpb24nO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBhcmFtZXRlclNuYXBzaG90PFQ+IHtcbiAgZGVmaW5pdGlvbjogUGFyYW1ldGVyRGVmaW5pdGlvbjxULCBhbnk+XG4gIHJlYWRvbmx5IHZhbHVlOiBUO1xuICBpc01pc3NpbmcoKTogYm9vbGVhbjtcbn1cbiJdfQ==
@@ -43,4 +43,4 @@ export class VisitSegmentSanitiser {
43
43
  return sanitisedSegment.hasChangedFrom(segment) ? sanitisedSegment : segment;
44
44
  }
45
45
  }
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaXQtc2VnbWVudC1zYW5pdGlzZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS9yb3V0ZS92aXNpdC1zZWdtZW50LXNhbml0aXNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxNQUFNLE9BQU8scUJBQXFCO0lBQ1o7SUFBOEM7SUFBZ0Q7SUFBd0I7SUFBb0M7SUFBOUssWUFBb0IsaUJBQW9DLEVBQVUsY0FBc0MsRUFBVSxNQUFjLEVBQVUsWUFBMEIsRUFBVSxRQUFrQjtRQUE1SyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQXdCO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUVoTSxDQUFDO0lBRUQsV0FBVztJQUNYLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBcUI7UUFDbEMsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQztRQUN6QyxJQUFJLFFBQVEsQ0FBQyxVQUFVLEVBQUUsRUFBRTtZQUN6QixNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztZQUNyRCxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDckMsTUFBTSxjQUFjLEdBQUcsTUFBTSxVQUFVLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUN4SSwwQ0FBMEM7WUFDMUMsb0NBQW9DO1lBQ3BDLElBQUksVUFBVSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLEVBQUU7Z0JBQ2xELCtEQUErRDtnQkFDL0QscUNBQXFDO2dCQUNyQyxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLGNBQWMsQ0FBQyxDQUFDO2FBQ3BEO1NBQ0Y7UUFFRCwyRUFBMkU7UUFDM0UsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDLHFCQUFxQixDQUFDO1lBQ25ELHNCQUFzQixFQUFFLElBQUk7WUFDNUIseUJBQXlCLEVBQUUsSUFBSTtTQUNoQyxDQUFDLENBQUM7UUFDSCxJQUFJLGdCQUFnQixHQUFpQixPQUFPLENBQUM7UUFDN0MsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLGFBQWEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDN0MsTUFBTSxHQUFHLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzdCLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM3QyxNQUFNLGNBQWMsR0FBRyxNQUFNLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLGdCQUFnQixFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDeEksSUFBSSxHQUFHLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxjQUFjLENBQUMsRUFBRTtnQkFDekMsZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxjQUFjLENBQUMsQ0FBQzthQUNsRTtTQUNGO1FBRUQsT0FBTyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDL0UsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBUcmFjZSB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcbmltcG9ydCB7IE5hdmlnYXRpb25TZXNzaW9uIH0gZnJvbSAnLi4vbmF2aWdhdGlvbi9zZXNzaW9uL25hdmlnYXRpb24tc2Vzc2lvbic7XG5pbXBvcnQgeyBQbGFjZUhpc3RvcnkgfSBmcm9tICcuLi9wbGFjZS1oaXN0b3J5JztcbmltcG9ydCB7IFZpc2l0U2VnbWVudCB9IGZyb20gJy4uL3Zpc2l0LXNlZ21lbnQnO1xuXG5leHBvcnQgY2xhc3MgVmlzaXRTZWdtZW50U2FuaXRpc2VyIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBuYXZpZ2F0aW9uU2Vzc2lvbjogTmF2aWdhdGlvblNlc3Npb24sIHByaXZhdGUgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgcGxhY2VIaXN0b3J5OiBQbGFjZUhpc3RvcnksIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yKSB7XG5cbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGFzeW5jIHNhbml0aXNlKHNlZ21lbnQ6IFZpc2l0U2VnbWVudCk6IFByb21pc2U8VmlzaXRTZWdtZW50PiB7XG4gICAgY29uc3QgcGxhY2VEZWYgPSBzZWdtZW50LnBsYWNlRGVmaW5pdGlvbjtcbiAgICBpZiAocGxhY2VEZWYuaGFzUm91dGVJZCgpKSB7XG4gICAgICBjb25zdCByb3V0ZUlkRGVmID0gcGxhY2VEZWYuZ2V0Um91dGVJZFBhcmFtZXRlckRlZigpO1xuICAgICAgY29uc3Qgcm91dGVJZCA9IHNlZ21lbnQuZ2V0Um91dGVJZCgpO1xuICAgICAgY29uc3Qgc2FuaXRpc2VkVmFsdWUgPSBhd2FpdCByb3V0ZUlkRGVmLnNhbml0aXNlKHJvdXRlSWQsIHNlZ21lbnQsIHRoaXMucGxhY2VIaXN0b3J5LCB0aGlzLmluamVjdG9yLCB0aGlzLm5hdmlnYXRpb25TZXNzaW9uLmlzUG9wU3RhdGUpO1xuICAgICAgLy8gY29uc29sZS5sb2coe3JvdXRlSWQsIHNhbml0aXNlZFZhbHVlfSk7XG4gICAgICAvLyAjIyMtLS0tLS0tIEVBUkxZIEVYSVQgLS0tLS0tLS0jIyNcbiAgICAgIGlmIChyb3V0ZUlkRGVmLmhhc0NoYW5nZWQocm91dGVJZCwgc2FuaXRpc2VkVmFsdWUpKSB7XG4gICAgICAgIC8vIGlmIHRoZSByb3V0ZSBpZCBoYXMgY2hhbmdlZCB3ZSByZWRpcmVjdCBpbW1lZGlhdGVseSBhcyBvdGhlclxuICAgICAgICAvLyBwYXJhbWV0ZXIgc2FuaXRpc2VycyBtaWdodCB1c2UgaXQuXG4gICAgICAgIHJldHVybiBzZWdtZW50LnJlcGxhY2Uocm91dGVJZERlZiwgc2FuaXRpc2VkVmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGlmIHdlIGRpZG4ndCByZXBsYWNlIHRoZSByb3V0ZUlkIHdlIGNvbnRpbnVlIHRoZSB1cmwgcHJlc2VudCBwYXJhbWV0ZXJzLlxuICAgIGNvbnN0IHBhcmFtZXRlckRlZnMgPSBwbGFjZURlZi5nZXRWaXNpdFBhcmFtZXRlckRlZnMoe1xuICAgICAgaW5jbHVkZVJvdXRlUGFyYW1ldGVyczogdHJ1ZSxcbiAgICAgIGluY2x1ZGVOb25Sb3V0ZVBhcmFtZXRlcnM6IHRydWVcbiAgICB9KTtcbiAgICBsZXQgc2FuaXRpc2VkU2VnbWVudDogVmlzaXRTZWdtZW50ID0gc2VnbWVudDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBhcmFtZXRlckRlZnMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGRlZiA9IHBhcmFtZXRlckRlZnNbaV07XG4gICAgICBjb25zdCB2YWx1ZSA9IHNlZ21lbnQuZ2V0UGFyYW1ldGVyVmFsdWUoZGVmKTtcbiAgICAgIGNvbnN0IHNhbml0aXNlZFZhbHVlID0gYXdhaXQgZGVmLnNhbml0aXNlKHZhbHVlLCBzYW5pdGlzZWRTZWdtZW50LCB0aGlzLnBsYWNlSGlzdG9yeSwgdGhpcy5pbmplY3RvciwgdGhpcy5uYXZpZ2F0aW9uU2Vzc2lvbi5pc1BvcFN0YXRlKTtcbiAgICAgIGlmIChkZWYuaGFzQ2hhbmdlZCh2YWx1ZSwgc2FuaXRpc2VkVmFsdWUpKSB7XG4gICAgICAgIHNhbml0aXNlZFNlZ21lbnQgPSBzYW5pdGlzZWRTZWdtZW50LnJlcGxhY2UoZGVmLCBzYW5pdGlzZWRWYWx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHNhbml0aXNlZFNlZ21lbnQuaGFzQ2hhbmdlZEZyb20oc2VnbWVudCkgPyBzYW5pdGlzZWRTZWdtZW50IDogc2VnbWVudDtcbiAgfVxuXG59XG4iXX0=
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaXQtc2VnbWVudC1zYW5pdGlzZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS9yb3V0ZS92aXNpdC1zZWdtZW50LXNhbml0aXNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxNQUFNLE9BQU8scUJBQXFCO0lBQ1o7SUFBOEM7SUFBZ0Q7SUFBd0I7SUFBb0M7SUFBOUssWUFBb0IsaUJBQW9DLEVBQVUsY0FBc0MsRUFBVSxNQUFjLEVBQVUsWUFBMEIsRUFBVSxRQUFrQjtRQUE1SyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQXdCO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUVoTSxDQUFDO0lBRUQsV0FBVztJQUNYLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBcUI7UUFDbEMsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQztRQUN6QyxJQUFJLFFBQVEsQ0FBQyxVQUFVLEVBQUUsRUFBRTtZQUN6QixNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztZQUNyRCxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDckMsTUFBTSxjQUFjLEdBQUcsTUFBTSxVQUFVLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUN4SSwwQ0FBMEM7WUFDMUMsb0NBQW9DO1lBQ3BDLElBQUksVUFBVSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLEVBQUU7Z0JBQ2xELCtEQUErRDtnQkFDL0QscUNBQXFDO2dCQUNyQyxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLGNBQWMsQ0FBQyxDQUFDO2FBQ3BEO1NBQ0Y7UUFFRCwyRUFBMkU7UUFDM0UsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDLHFCQUFxQixDQUFDO1lBQ25ELHNCQUFzQixFQUFFLElBQUk7WUFDNUIseUJBQXlCLEVBQUUsSUFBSTtTQUNoQyxDQUFDLENBQUM7UUFDSCxJQUFJLGdCQUFnQixHQUFpQixPQUFPLENBQUM7UUFDN0MsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLGFBQWEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDN0MsTUFBTSxHQUFHLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzdCLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM3QyxNQUFNLGNBQWMsR0FBRyxNQUFNLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLGdCQUFnQixFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDeEksSUFBSSxHQUFHLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxjQUFjLENBQUMsRUFBRTtnQkFDekMsZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxjQUFjLENBQUMsQ0FBQzthQUNsRTtTQUNGO1FBRUQsT0FBTyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDL0UsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3Rvcn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlU25hcHNob3QsIFJvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7TmF2aWdhdGlvblNlc3Npb259IGZyb20gJy4uL25hdmlnYXRpb24vc2Vzc2lvbi9uYXZpZ2F0aW9uLXNlc3Npb24nO1xuaW1wb3J0IHtQbGFjZUhpc3Rvcnl9IGZyb20gJy4uL3BsYWNlLWhpc3RvcnknO1xuaW1wb3J0IHtWaXNpdFNlZ21lbnR9IGZyb20gJy4uL3Zpc2l0LXNlZ21lbnQnO1xuXG5leHBvcnQgY2xhc3MgVmlzaXRTZWdtZW50U2FuaXRpc2VyIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBuYXZpZ2F0aW9uU2Vzc2lvbjogTmF2aWdhdGlvblNlc3Npb24sIHByaXZhdGUgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgcGxhY2VIaXN0b3J5OiBQbGFjZUhpc3RvcnksIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yKSB7XG5cbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGFzeW5jIHNhbml0aXNlKHNlZ21lbnQ6IFZpc2l0U2VnbWVudCk6IFByb21pc2U8VmlzaXRTZWdtZW50PiB7XG4gICAgY29uc3QgcGxhY2VEZWYgPSBzZWdtZW50LnBsYWNlRGVmaW5pdGlvbjtcbiAgICBpZiAocGxhY2VEZWYuaGFzUm91dGVJZCgpKSB7XG4gICAgICBjb25zdCByb3V0ZUlkRGVmID0gcGxhY2VEZWYuZ2V0Um91dGVJZFBhcmFtZXRlckRlZigpO1xuICAgICAgY29uc3Qgcm91dGVJZCA9IHNlZ21lbnQuZ2V0Um91dGVJZCgpO1xuICAgICAgY29uc3Qgc2FuaXRpc2VkVmFsdWUgPSBhd2FpdCByb3V0ZUlkRGVmLnNhbml0aXNlKHJvdXRlSWQsIHNlZ21lbnQsIHRoaXMucGxhY2VIaXN0b3J5LCB0aGlzLmluamVjdG9yLCB0aGlzLm5hdmlnYXRpb25TZXNzaW9uLmlzUG9wU3RhdGUpO1xuICAgICAgLy8gY29uc29sZS5sb2coe3JvdXRlSWQsIHNhbml0aXNlZFZhbHVlfSk7XG4gICAgICAvLyAjIyMtLS0tLS0tIEVBUkxZIEVYSVQgLS0tLS0tLS0jIyNcbiAgICAgIGlmIChyb3V0ZUlkRGVmLmhhc0NoYW5nZWQocm91dGVJZCwgc2FuaXRpc2VkVmFsdWUpKSB7XG4gICAgICAgIC8vIGlmIHRoZSByb3V0ZSBpZCBoYXMgY2hhbmdlZCB3ZSByZWRpcmVjdCBpbW1lZGlhdGVseSBhcyBvdGhlclxuICAgICAgICAvLyBwYXJhbWV0ZXIgc2FuaXRpc2VycyBtaWdodCB1c2UgaXQuXG4gICAgICAgIHJldHVybiBzZWdtZW50LnJlcGxhY2Uocm91dGVJZERlZiwgc2FuaXRpc2VkVmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGlmIHdlIGRpZG4ndCByZXBsYWNlIHRoZSByb3V0ZUlkIHdlIGNvbnRpbnVlIHRoZSB1cmwgcHJlc2VudCBwYXJhbWV0ZXJzLlxuICAgIGNvbnN0IHBhcmFtZXRlckRlZnMgPSBwbGFjZURlZi5nZXRWaXNpdFBhcmFtZXRlckRlZnMoe1xuICAgICAgaW5jbHVkZVJvdXRlUGFyYW1ldGVyczogdHJ1ZSxcbiAgICAgIGluY2x1ZGVOb25Sb3V0ZVBhcmFtZXRlcnM6IHRydWVcbiAgICB9KTtcbiAgICBsZXQgc2FuaXRpc2VkU2VnbWVudDogVmlzaXRTZWdtZW50ID0gc2VnbWVudDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBhcmFtZXRlckRlZnMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGRlZiA9IHBhcmFtZXRlckRlZnNbaV07XG4gICAgICBjb25zdCB2YWx1ZSA9IHNlZ21lbnQuZ2V0UGFyYW1ldGVyVmFsdWUoZGVmKTtcbiAgICAgIGNvbnN0IHNhbml0aXNlZFZhbHVlID0gYXdhaXQgZGVmLnNhbml0aXNlKHZhbHVlLCBzYW5pdGlzZWRTZWdtZW50LCB0aGlzLnBsYWNlSGlzdG9yeSwgdGhpcy5pbmplY3RvciwgdGhpcy5uYXZpZ2F0aW9uU2Vzc2lvbi5pc1BvcFN0YXRlKTtcbiAgICAgIGlmIChkZWYuaGFzQ2hhbmdlZCh2YWx1ZSwgc2FuaXRpc2VkVmFsdWUpKSB7XG4gICAgICAgIHNhbml0aXNlZFNlZ21lbnQgPSBzYW5pdGlzZWRTZWdtZW50LnJlcGxhY2UoZGVmLCBzYW5pdGlzZWRWYWx1ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHNhbml0aXNlZFNlZ21lbnQuaGFzQ2hhbmdlZEZyb20oc2VnbWVudCkgPyBzYW5pdGlzZWRTZWdtZW50IDogc2VnbWVudDtcbiAgfVxuXG59XG4iXX0=
@@ -65,4 +65,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
65
65
  providedIn: 'root'
66
66
  }]
67
67
  }], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.Location }, { type: i1.UrlSerializer }]; } });
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLXNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS91cmwtc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQU03QyxNQUFNLE9BQU8sVUFBVTtJQUNRO0lBQWdDO0lBQW9DO0lBQWpHLFlBQTZCLGFBQXFCLEVBQVcsZUFBeUIsRUFBVyxhQUE0QjtRQUFoRyxrQkFBYSxHQUFiLGFBQWEsQ0FBUTtRQUFXLG9CQUFlLEdBQWYsZUFBZSxDQUFVO1FBQVcsa0JBQWEsR0FBYixhQUFhLENBQWU7SUFDN0gsQ0FBQztJQUVELFFBQVEsQ0FBQyxHQUFXO1FBQ2xCLE9BQU8sSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsTUFBc0I7UUFDdEMsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2xGLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUM3RixDQUFDO0lBRUQscUJBQXFCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsNkJBQTZCO1FBQzNCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRDs7O09BR0c7SUFDSCx3QkFBd0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELDhCQUE4QixDQUFDLEdBQVc7UUFDeEMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDaEQsQ0FBQztJQUVELHFCQUFxQixDQUFDLEdBQVc7UUFDL0IsT0FBTyxJQUFJLENBQUMsOEJBQThCLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsb0JBQW9CLENBQUMsR0FBVyxFQUFFLE9BQW9DO1FBQ3BFLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNqRyxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUIsQ0FBQzt1R0F0RFUsVUFBVTsyR0FBVixVQUFVLGNBRlQsTUFBTTs7MkZBRVAsVUFBVTtrQkFIdEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIsIFVybFNlcmlhbGl6ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgVXJsU25hcHNob3QgfSBmcm9tICcuL3VybC1zbmFwc2hvdCc7XG5pbXBvcnQgeyBWaXNpdFNlZ21lbnQgfSBmcm9tICcuL3Zpc2l0LXNlZ21lbnQnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBVcmxTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBhbmd1bGFyUm91dGVyOiBSb3V0ZXIsIHJlYWRvbmx5IGFuZ3VsYXJMb2NhdGlvbjogTG9jYXRpb24sIHJlYWRvbmx5IHVybFNlcmlhbGl6ZXI6IFVybFNlcmlhbGl6ZXIpIHtcbiAgfVxuXG4gIHBhcnNlVXJsKHVybDogc3RyaW5nKTogVXJsU25hcHNob3Qge1xuICAgIHJldHVybiBuZXcgVXJsU25hcHNob3QodGhpcy51cmxTZXJpYWxpemVyLCB1cmwpO1xuICB9XG5cbiAgY3JlYXRlVXJsU25hcHNob3QodmlzaXRzOiBWaXNpdFNlZ21lbnRbXSk6IFVybFNuYXBzaG90IHtcbiAgICBjb25zdCBiaXRzID0gW107XG4gICAgdmlzaXRzLmZvckVhY2godiA9PiB7XG4gICAgICBiaXRzLnB1c2godGhpcy5wYXJzZVVybChgJHt2LnBsYWNlRGVmaW5pdGlvbi5wYXRofWApLnVwZGF0ZVZpc2l0U2VnbWVudCh2KS51cmwpO1xuICAgIH0pO1xuICAgIHJldHVybiB0aGlzLnBhcnNlVXJsKGJpdHMuam9pbignJykpO1xuICB9XG5cbiAgZ2V0Q3VycmVudFJvdXRlclVybCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmFuZ3VsYXJSb3V0ZXIucm91dGVyU3RhdGUgPyB0aGlzLmFuZ3VsYXJSb3V0ZXIucm91dGVyU3RhdGUuc25hcHNob3QudXJsIDogbnVsbDtcbiAgfVxuXG4gIGdldEN1cnJlbnRMb2NhdGlvblVybCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmFuZ3VsYXJMb2NhdGlvbi5wYXRoKCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBhIFVybFNuYXBzaG90IHVzaW5nIHRoZSBicm93c2VycyBjdXJyZW50IGxvY2F0aW9uLiAgTm90ZSB0aGlzIG1heSBub3QgYmUgdGhlIHNhbWVcbiAgICogYXMgdGhlIHJvdXRlcnMgY3VycmVudCB1cmwuXG4gICAqL1xuICBnZXRDdXJyZW50TG9jYXRpb25VcmxTbmFwc2hvdCgpOiBVcmxTbmFwc2hvdCB7XG4gICAgcmV0dXJuIHRoaXMucGFyc2VVcmwodGhpcy5nZXRDdXJyZW50TG9jYXRpb25VcmwoKSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBhIFVybFNuYXBzaG90IHVzaW5nIHRoZSByb3V0ZXJzIGN1cnJlbnQgc3RhdGUuICBUaGlzIG1heSBub3QgYmUgdGhlIHNhbWUgYXNcbiAgICogdGhlIGJyb3dzZXJzIGFjdHVhbCB1cmwuXG4gICAqL1xuICBnZXRDdXJyZW50Um91dGVyU25hcHNob3QoKTogVXJsU25hcHNob3Qge1xuICAgIHJldHVybiB0aGlzLnBhcnNlVXJsKHRoaXMuZ2V0Q3VycmVudFJvdXRlclVybCgpKTtcbiAgfVxuXG4gIGdldEFjdGl2ZUludGVyYWN0aW9uSWRzRnJvbVVybCh1cmw6IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5wYXJzZVVybCh1cmwpLmdldEludGVyYWN0aW9uSWRzKCk7XG4gIH1cblxuICBoYXNBY3RpdmVJbnRlcmFjdGlvbnModXJsOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRBY3RpdmVJbnRlcmFjdGlvbklkc0Zyb21VcmwodXJsKS5sZW5ndGggPiAwO1xuICB9XG5cbiAgcmVzZXRCcm93c2VyTG9jYXRpb24odXJsOiBzdHJpbmcsIG9wdGlvbnM6IHsgcmVwbGFjZUN1cnJlbnQ6IGJvb2xlYW4gfSkge1xuICAgIG9wdGlvbnMucmVwbGFjZUN1cnJlbnQgPyB0aGlzLmFuZ3VsYXJMb2NhdGlvbi5yZXBsYWNlU3RhdGUodXJsKSA6IHRoaXMuYW5ndWxhckxvY2F0aW9uLmdvKHVybCk7XG4gIH1cblxuICBiYWNrKCkge1xuICAgIHRoaXMuYW5ndWxhckxvY2F0aW9uLmJhY2soKTtcbiAgfVxuXG5cbn1cbiJdfQ==
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLXNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS91cmwtc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsTUFBTSxFQUFFLGFBQWEsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3RELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQU0zQyxNQUFNLE9BQU8sVUFBVTtJQUNRO0lBQWdDO0lBQW9DO0lBQWpHLFlBQTZCLGFBQXFCLEVBQVcsZUFBeUIsRUFBVyxhQUE0QjtRQUFoRyxrQkFBYSxHQUFiLGFBQWEsQ0FBUTtRQUFXLG9CQUFlLEdBQWYsZUFBZSxDQUFVO1FBQVcsa0JBQWEsR0FBYixhQUFhLENBQWU7SUFDN0gsQ0FBQztJQUVELFFBQVEsQ0FBQyxHQUFXO1FBQ2xCLE9BQU8sSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsTUFBc0I7UUFDdEMsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2hCLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2xGLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUM3RixDQUFDO0lBRUQscUJBQXFCO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsNkJBQTZCO1FBQzNCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRDs7O09BR0c7SUFDSCx3QkFBd0I7UUFDdEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELDhCQUE4QixDQUFDLEdBQVc7UUFDeEMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDaEQsQ0FBQztJQUVELHFCQUFxQixDQUFDLEdBQVc7UUFDL0IsT0FBTyxJQUFJLENBQUMsOEJBQThCLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsb0JBQW9CLENBQUMsR0FBVyxFQUFFLE9BQW9DO1FBQ3BFLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNqRyxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDOUIsQ0FBQzt1R0F0RFUsVUFBVTsyR0FBVixVQUFVLGNBRlQsTUFBTTs7MkZBRVAsVUFBVTtrQkFIdEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0xvY2F0aW9ufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Um91dGVyLCBVcmxTZXJpYWxpemVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtVcmxTbmFwc2hvdH0gZnJvbSAnLi91cmwtc25hcHNob3QnO1xuaW1wb3J0IHtWaXNpdFNlZ21lbnR9IGZyb20gJy4vdmlzaXQtc2VnbWVudCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFVybFNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGFuZ3VsYXJSb3V0ZXI6IFJvdXRlciwgcmVhZG9ubHkgYW5ndWxhckxvY2F0aW9uOiBMb2NhdGlvbiwgcmVhZG9ubHkgdXJsU2VyaWFsaXplcjogVXJsU2VyaWFsaXplcikge1xuICB9XG5cbiAgcGFyc2VVcmwodXJsOiBzdHJpbmcpOiBVcmxTbmFwc2hvdCB7XG4gICAgcmV0dXJuIG5ldyBVcmxTbmFwc2hvdCh0aGlzLnVybFNlcmlhbGl6ZXIsIHVybCk7XG4gIH1cblxuICBjcmVhdGVVcmxTbmFwc2hvdCh2aXNpdHM6IFZpc2l0U2VnbWVudFtdKTogVXJsU25hcHNob3Qge1xuICAgIGNvbnN0IGJpdHMgPSBbXTtcbiAgICB2aXNpdHMuZm9yRWFjaCh2ID0+IHtcbiAgICAgIGJpdHMucHVzaCh0aGlzLnBhcnNlVXJsKGAke3YucGxhY2VEZWZpbml0aW9uLnBhdGh9YCkudXBkYXRlVmlzaXRTZWdtZW50KHYpLnVybCk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMucGFyc2VVcmwoYml0cy5qb2luKCcnKSk7XG4gIH1cblxuICBnZXRDdXJyZW50Um91dGVyVXJsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYW5ndWxhclJvdXRlci5yb3V0ZXJTdGF0ZSA/IHRoaXMuYW5ndWxhclJvdXRlci5yb3V0ZXJTdGF0ZS5zbmFwc2hvdC51cmwgOiBudWxsO1xuICB9XG5cbiAgZ2V0Q3VycmVudExvY2F0aW9uVXJsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYW5ndWxhckxvY2F0aW9uLnBhdGgoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIGEgVXJsU25hcHNob3QgdXNpbmcgdGhlIGJyb3dzZXJzIGN1cnJlbnQgbG9jYXRpb24uICBOb3RlIHRoaXMgbWF5IG5vdCBiZSB0aGUgc2FtZVxuICAgKiBhcyB0aGUgcm91dGVycyBjdXJyZW50IHVybC5cbiAgICovXG4gIGdldEN1cnJlbnRMb2NhdGlvblVybFNuYXBzaG90KCk6IFVybFNuYXBzaG90IHtcbiAgICByZXR1cm4gdGhpcy5wYXJzZVVybCh0aGlzLmdldEN1cnJlbnRMb2NhdGlvblVybCgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIGEgVXJsU25hcHNob3QgdXNpbmcgdGhlIHJvdXRlcnMgY3VycmVudCBzdGF0ZS4gIFRoaXMgbWF5IG5vdCBiZSB0aGUgc2FtZSBhc1xuICAgKiB0aGUgYnJvd3NlcnMgYWN0dWFsIHVybC5cbiAgICovXG4gIGdldEN1cnJlbnRSb3V0ZXJTbmFwc2hvdCgpOiBVcmxTbmFwc2hvdCB7XG4gICAgcmV0dXJuIHRoaXMucGFyc2VVcmwodGhpcy5nZXRDdXJyZW50Um91dGVyVXJsKCkpO1xuICB9XG5cbiAgZ2V0QWN0aXZlSW50ZXJhY3Rpb25JZHNGcm9tVXJsKHVybDogc3RyaW5nKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLnBhcnNlVXJsKHVybCkuZ2V0SW50ZXJhY3Rpb25JZHMoKTtcbiAgfVxuXG4gIGhhc0FjdGl2ZUludGVyYWN0aW9ucyh1cmw6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmdldEFjdGl2ZUludGVyYWN0aW9uSWRzRnJvbVVybCh1cmwpLmxlbmd0aCA+IDA7XG4gIH1cblxuICByZXNldEJyb3dzZXJMb2NhdGlvbih1cmw6IHN0cmluZywgb3B0aW9uczogeyByZXBsYWNlQ3VycmVudDogYm9vbGVhbiB9KSB7XG4gICAgb3B0aW9ucy5yZXBsYWNlQ3VycmVudCA/IHRoaXMuYW5ndWxhckxvY2F0aW9uLnJlcGxhY2VTdGF0ZSh1cmwpIDogdGhpcy5hbmd1bGFyTG9jYXRpb24uZ28odXJsKTtcbiAgfVxuXG4gIGJhY2soKSB7XG4gICAgdGhpcy5hbmd1bGFyTG9jYXRpb24uYmFjaygpO1xuICB9XG5cblxufVxuIl19
@@ -1,7 +1,7 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
2
  import { UrlSegment } from '@angular/router';
3
- import { Memoize } from '@typescript-plus/fast-memoize-decorator';
4
- import { isEqual, last } from 'lodash';
3
+ import { Memoize } from 'fast-typescript-memoize';
4
+ import { isEqual, last } from 'lodash-es';
5
5
  import { ConsolidatedParameterMap } from './guards/consolidated-param-map';
6
6
  import { VisitSegment } from './visit-segment';
7
7
  function extractPrimaryUrlSegments(urlTree) {
@@ -122,4 +122,4 @@ __decorate([
122
122
  }
123
123
  UrlSnapshot.createPathIdFor = createPathIdFor;
124
124
  })(UrlSnapshot || (UrlSnapshot = {}));
125
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLXNuYXBzaG90LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvcGxhY2UvdXJsLXNuYXBzaG90LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUEwQixNQUFNLGlCQUFpQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUVsRSxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUN2QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFL0MsU0FBUyx5QkFBeUIsQ0FBQyxPQUFnQjtJQUNqRCxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxRQUFRLElBQUksRUFBRSxDQUFDO0FBQ3ZELENBQUM7QUFFRCxNQUFNLE9BQU8sV0FBVztJQUtEO0lBQXVDO0lBSG5ELE9BQU8sQ0FBVTtJQUUxQixpSUFBaUk7SUFDakksWUFBcUIsYUFBNEIsRUFBVyxHQUFXO1FBQWxELGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQVcsUUFBRyxHQUFILEdBQUcsQ0FBUTtRQUNyRSxJQUFJLENBQUMsT0FBTyxHQUFHLGFBQWEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELFdBQVc7SUFDSixrQkFBa0IsQ0FBQyxZQUEwQjtRQUNsRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdEQsOEJBQThCO1FBQzlCLE1BQU0sUUFBUSxHQUFHLENBQUMsR0FBRyx5QkFBeUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FB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LENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssT0FBTyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzRixDQUFDO0NBQ0Y7QUE5RVM7SUFEUCxPQUFPLEVBQUU7Ozs7d0RBR1Q7QUE4RUgsV0FBaUIsV0FBVztJQUViLG1DQUF1QixHQUFHLGtCQUFrQixDQUFDO0lBQzdDLG9DQUF3QixHQUFHLElBQUksQ0FBQztJQUU3QyxTQUFnQixtQkFBbUIsQ0FBQyxJQUFZO1FBQzlDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFBLHdCQUF3QixDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUZlLCtCQUFtQixzQkFFbEMsQ0FBQTtJQUVELFNBQWdCLGVBQWUsQ0FBQyxjQUFpQztRQUMvRCxPQUFPLGNBQWMsQ0FBQyxJQUFJLENBQUMsWUFBQSx3QkFBd0IsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFGZSwyQkFBZSxrQkFFOUIsQ0FBQTtBQUtILENBQUMsRUFoQmdCLFdBQVcsS0FBWCxXQUFXLFFBZ0IzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFVybFNlZ21lbnQsIFVybFNlcmlhbGl6ZXIsIFVybFRyZWUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTWVtb2l6ZSB9IGZyb20gJ0B0eXBlc2NyaXB0LXBsdXMvZmFzdC1tZW1vaXplLWRlY29yYXRvcic7XG5cbmltcG9ydCB7IGlzRXF1YWwsIGxhc3QgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgQ29uc29saWRhdGVkUGFyYW1ldGVyTWFwIH0gZnJvbSAnLi9ndWFyZHMvY29uc29saWRhdGVkLXBhcmFtLW1hcCc7XG5pbXBvcnQgeyBQbGFjZURlZmluaXRpb24gfSBmcm9tICcuL3BsYWNlLWRlZmluaXRpb24nO1xuaW1wb3J0IHsgVmlzaXRTZWdtZW50IH0gZnJvbSAnLi92aXNpdC1zZWdtZW50JztcblxuZnVuY3Rpb24gZXh0cmFjdFByaW1hcnlVcmxTZWdtZW50cyh1cmxUcmVlOiBVcmxUcmVlKTogVXJsU2VnbWVudFtdIHtcbiAgcmV0dXJuIHVybFRyZWUucm9vdC5jaGlsZHJlbi5wcmltYXJ5Py5zZWdtZW50cyA/PyBbXTtcbn1cblxuZXhwb3J0IGNsYXNzIFVybFNuYXBzaG90IHtcblxuICByZWFkb25seSB1cmxUcmVlOiBVcmxUcmVlO1xuXG4gIC8vIFRPRE86IFVwZGF0ZSB0aGlzIGFjY2VwdCBhIHVybCBQYXJzZXIgc28gaXQgY2FuIGJlIGltbXV0YWJsZSBhbmQgZ2VuZXJhdGUgbmV3IHRyZWVzIG9uIG11dGF0aW9uIHVzaW5nIHRvU3RyaW5nKCkgYXJlIHBhcnNlVXJsLlxuICBjb25zdHJ1Y3RvcihyZWFkb25seSB1cmxTZXJpYWxpemVyOiBVcmxTZXJpYWxpemVyLCByZWFkb25seSB1cmw6IHN0cmluZykge1xuICAgIHRoaXMudXJsVHJlZSA9IHVybFNlcmlhbGl6ZXIucGFyc2UodXJsKTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIHB1YmxpYyB1cGRhdGVWaXNpdFNlZ21lbnQodmlzaXRTZWdtZW50OiBWaXNpdFNlZ21lbnQpOiBVcmxTbmFwc2hvdCB7XG4gICAgY29uc3QgbmV3VXJsVHJlZSA9IHRoaXMudXJsU2VyaWFsaXplci5wYXJzZSh0aGlzLnVybCk7XG4gICAgLy8gVWdseSwgYnV0IGl0IHdvcmtzIGZvciBub3cuXG4gICAgY29uc3Qgc2VnbWVudHMgPSBbLi4uZXh0cmFjdFByaW1hcnlVcmxTZWdtZW50cyhuZXdVcmxUcmVlKV07XG4gICAgY29uc3QgdXJsU2VnbWVudHMgPSB0aGlzLmdldFVybFNlZ21lbnRzRm9yVmlzaXRTZWdtZW50KHZpc2l0U2VnbWVudCk7XG4gICAgY29uc3QgcmVwbGFjZUF0ID0gc2VnbWVudHMuZmluZEluZGV4KHNlZ21lbnQgPT4gc2VnbWVudC5wYXRoID09PSB1cmxTZWdtZW50c1swXS5wYXRoKTtcbiAgICAvLyBkbyBub3QgdXNlIHRoZSByZXR1cm4gdmFsdWUsIGl0J3MgdGhlIGl0ZW1zIHRoYXQgd2VyZSByZW1vdmVkIVxuICAgIHNlZ21lbnRzLnNwbGljZShyZXBsYWNlQXQsIHVybFNlZ21lbnRzLmxlbmd0aCwgLi4udXJsU2VnbWVudHMpO1xuICAgIG5ld1VybFRyZWUucm9vdC5jaGlsZHJlbi5wcmltYXJ5LnNlZ21lbnRzID0gc2VnbWVudHM7XG4gICAgcmV0dXJuIG5ldyBVcmxTbmFwc2hvdCh0aGlzLnVybFNlcmlhbGl6ZXIsIG5ld1VybFRyZWUudG9TdHJpbmcoKSk7XG4gIH1cblxuICBhcHBlbmRTZWdtZW50KHZpc2l0U2VnbWVudDogVmlzaXRTZWdtZW50KTpVcmxTbmFwc2hvdCB7XG4gICAgLy8gVE9ETzogbWFrZSB0aGlzIHdvcmsgcHJvcGVybHkgd2l0aCB2aXNpdCBwYXJhbWV0ZXJzXG4gICAgcmV0dXJuIG5ldyBVcmxTbmFwc2hvdCh0aGlzLnVybFNlcmlhbGl6ZXIsIHRoaXMudXJsICsgXCIvXCIgKyB2aXNpdFNlZ21lbnQucGxhY2VEZWZpbml0aW9uLnBhdGgpXG4gIH1cblxuICBATWVtb2l6ZSgpXG4gIHByaXZhdGUgZ2V0UHJpbWFyeVVybFNlZ21lbnRzKCk6IFVybFNlZ21lbnRbXSB7XG4gICAgcmV0dXJuIGV4dHJhY3RQcmltYXJ5VXJsU2VnbWVudHModGhpcy51cmxUcmVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyB0aGUgdmlzaXQgaW50byBzZWdtZW50cy4gIFBsZWFzZSBub3QgdGhhdCB0aGVzZSBzZWdtZW50cyBhcmUgbm90IGVcbiAgICogQHBhcmFtIHZpc2l0U2VnbWVudFxuICAgKi9cbiAgcHJvdGVjdGVkIGdldFVybFNlZ21lbnRzRm9yVmlzaXRTZWdtZW50KHZpc2l0U2VnbWVudDogVmlzaXRTZWdtZW50KTogVXJsU2VnbWVudFtdIHtcbiAgICByZXR1cm4gdmlzaXRTZWdtZW50LnBsYWNlRGVmaW5pdGlvbi5oYXNSb3V0ZUlkKCkgP1xuICAgICAgW1xuICAgICAgICAvLyBOT1RFOlxuICAgICAgICAvLyBJdCdzIGltcG9ydGFudCB0byBhdHRhY2ggdGhlIHBhcmFtcyB0byB0aGUgcm9vdCBwYXRoIGFuZCBub3QgdGhlIGlkLiAgSWYgd2UgYXR0YWNoIHRoZW1cbiAgICAgICAgLy8gdG8gYW4gZW1wdHkgaWQgdGhlbiB0aGUgYW5ndWxhciByb3V0ZXIgd29uJ3QgbWF0Y2ggdGhlIHBhdHRlcm4uXG4gICAgICAgIG5ldyBVcmxTZWdtZW50KHZpc2l0U2VnbWVudC5wbGFjZURlZmluaXRpb24ucGF0aCwgdmlzaXRTZWdtZW50LnBsYWNlRGVmaW5pdGlvbi5nZXRGb3JtYXR0ZWRSb3V0ZVBhcmFtZXRlcnModmlzaXRTZWdtZW50KSksXG4gICAgICAgIG5ldyBVcmxTZWdtZW50KHZpc2l0U2VnbWVudC5wbGFjZURlZmluaXRpb24uZ2V0Rm9ybWF0dGVkUm91dGVJZCh2aXNpdFNlZ21lbnQpLCB7fSldXG4gICAgICA6XG4gICAgICBbXG4gICAgICAgIG5ldyBVcmxTZWdtZW50KHZpc2l0U2VnbWVudC5wbGFjZURlZmluaXRpb24ucGF0aCwgdmlzaXRTZWdtZW50LnBsYWNlRGVmaW5pdGlvbi5nZXRGb3JtYXR0ZWRSb3V0ZVBhcmFtZXRlcnModmlzaXRTZWdtZW50KSlcbiAgICAgIF07XG4gIH1cblxuICBpbmNsdWRlc1BhdGhPZihwbGFjZURlZjogUGxhY2VEZWZpbml0aW9uKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0UHJpbWFyeVVybFNlZ21lbnRzKCkuZmluZChzID0+IHMucGF0aCA9PT0gcGxhY2VEZWYucGF0aCk7XG4gIH1cblxuICBpc0xhc3RQbGFjZUluVXJsKHBsYWNlRGVmOiBQbGFjZURlZmluaXRpb24pIHtcbiAgICByZXR1cm4gbGFzdCh0aGlzLmdldFByaW1hcnlVcmxTZWdtZW50cygpKS5wYXRoID09PSBwbGFjZURlZi5wYXRoO1xuICB9XG5cbiAgY3JlYXRlVmlzaXRTZWdtZW50Rm9yKHBsYWNlRGVmOiBQbGFjZURlZmluaXRpb24pIHtcbiAgICByZXR1cm4gbmV3IFZpc2l0U2VnbWVudChwbGFjZURlZiwgbmV3IENvbnNvbGlkYXRlZFBhcmFtZXRlck1hcCh0aGlzLmdldFByaW1hcnlVcmxTZWdtZW50cygpKSk7XG4gIH1cblxuICBnZXRJbnRlcmFjdGlvbklkcygpIHtcbiAgICBjb25zdCBxdWVyeVBhcmFtID0gdGhpcy51cmxUcmVlLnF1ZXJ5UGFyYW1zW1VybFNuYXBzaG90LklOVEVSQUNUSU9OX1FVRVJZX1BBUkFNXTtcbiAgICBpZiAocXVlcnlQYXJhbSkge1xuICAgICAgcmV0dXJuIFVybFNuYXBzaG90LnBhcnNlSW50ZXJhY3Rpb25JZHMocXVlcnlQYXJhbSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG4gIH1cblxuICBoYXNJbnRlcmFjdGlvbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0SW50ZXJhY3Rpb25JZHMoKS5sZW5ndGggPiAwO1xuICB9XG5cbiAgaGFzSW50ZXJhY3Rpb25JZHMoaWRzOiByZWFkb25seSBzdHJpbmdbXSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBpc0VxdWFsKHRoaXMuZ2V0SW50ZXJhY3Rpb25JZHMoKSwgaWRzKTtcbiAgfVxuICAvLyBAVHJhY2UoKVxuXG4gIHVwZGF0ZUludGVyYWN0aW9uSWRzKGlkczogcmVhZG9ubHkgc3RyaW5nW10pOiBVcmxTbmFwc2hvdCB7XG4gICAgaWYgKGlkcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB0aGlzLnJlbW92ZUludGVyYWN0aW9uSWRzKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHVybFRyZWUgPSB0aGlzLnVybFNlcmlhbGl6ZXIucGFyc2UodGhpcy51cmwpO1xuICAgICAgdXJsVHJlZS5xdWVyeVBhcmFtc1tVcmxTbmFwc2hvdC5JTlRFUkFDVElPTl9RVUVSWV9QQVJBTV0gPSBVcmxTbmFwc2hvdC5jcmVhdGVQYXRoSWRGb3IoaWRzKTtcbiAgICAgIHJldHVybiBuZXcgVXJsU25hcHNob3QodGhpcy51cmxTZXJpYWxpemVyLCB1cmxUcmVlLnRvU3RyaW5nKCkpO1xuICAgIH1cbiAgfVxuICAvLyBAVHJhY2UoKVxuXG4gIHJlbW92ZUludGVyYWN0aW9uSWRzKCk6IFVybFNuYXBzaG90IHtcbiAgICBjb25zdCB1cmxUcmVlID0gdGhpcy51cmxTZXJpYWxpemVyLnBhcnNlKHRoaXMudXJsKTtcbiAgICBpZiAodXJsVHJlZS5xdWVyeVBhcmFtcyAmJiB1cmxUcmVlLnF1ZXJ5UGFyYW1zW1VybFNuYXBzaG90LklOVEVSQUNUSU9OX1FVRVJZX1BBUkFNXSkge1xuICAgICAgdXJsVHJlZS5xdWVyeVBhcmFtcyA9IHt9Oy8vW1VybFNuYXBzaG90LklOVEVSQUNUSU9OX1JPVVRFUl9PVVRMRVRdXG4gICAgfVxuICAgIHJldHVybiBuZXcgVXJsU25hcHNob3QodGhpcy51cmxTZXJpYWxpemVyLCB1cmxUcmVlLnRvU3RyaW5nKCkpO1xuICB9XG5cbiAgdG9TdHJpbmcoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYFVybFNuYXBzaG90KCR7dGhpcy51cmx9KWA7XG4gIH1cblxuICBjb250YWluc1Zpc2l0U2VnbWVudChzZWdtZW50OiBWaXNpdFNlZ21lbnQpIHtcbiAgICByZXR1cm4gISF0aGlzLmdldFByaW1hcnlVcmxTZWdtZW50cygpLmZpbmQocyA9PiBzLnBhdGggPT09IHNlZ21lbnQucGxhY2VEZWZpbml0aW9uLnBhdGgpO1xuICB9XG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgVXJsU25hcHNob3Qge1xuXG4gIGV4cG9ydCBjb25zdCBJTlRFUkFDVElPTl9RVUVSWV9QQVJBTSA9ICdhdXAtaW50ZXJhY3Rpb25zJztcbiAgZXhwb3J0IGNvbnN0IElOVEVSQUNUSU9OX0lEX1NFUEFSQVRPUiA9ICctLSc7XG5cbiAgZXhwb3J0IGZ1bmN0aW9uIHBhcnNlSW50ZXJhY3Rpb25JZHMocGF0aDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHBhdGguc3BsaXQoSU5URVJBQ1RJT05fSURfU0VQQVJBVE9SKTtcbiAgfVxuXG4gIGV4cG9ydCBmdW5jdGlvbiBjcmVhdGVQYXRoSWRGb3IoaW50ZXJhY3Rpb25JZHM6IHJlYWRvbmx5IHN0cmluZ1tdKSB7XG4gICAgcmV0dXJuIGludGVyYWN0aW9uSWRzLmpvaW4oSU5URVJBQ1RJT05fSURfU0VQQVJBVE9SKTtcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgTmF2aWdhdGlvbk9wdGlvbnMge1xuICAgIHJlcGxhY2VVcmw/OiBib29sZWFuO1xuICB9XG59XG4iXX0=
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXJsLXNuYXBzaG90LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvcGxhY2UvdXJsLXNuYXBzaG90LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsVUFBVSxFQUF5QixNQUFNLGlCQUFpQixDQUFDO0FBQ25FLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUVoRCxPQUFPLEVBQUMsT0FBTyxFQUFFLElBQUksRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUN4QyxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUV6RSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFN0MsU0FBUyx5QkFBeUIsQ0FBQyxPQUFnQjtJQUNqRCxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxRQUFRLElBQUksRUFBRSxDQUFDO0FBQ3ZELENBQUM7QUFFRCxNQUFNLE9BQU8sV0FBVztJQUtEO0lBQXVDO0lBSG5ELE9BQU8sQ0FBVTtJQUUxQixpSUFBaUk7SUFDakksWUFBcUIsYUFBNEIsRUFBVyxHQUFXO1FBQWxELGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQVcsUUFBRyxHQUFILEdBQUcsQ0FBUTtRQUNyRSxJQUFJLENBQUMsT0FBTyxHQUFHLGFBQWEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELFdBQVc7SUFDSixrQkFBa0IsQ0FBQyxZQUEwQjtRQUNsRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdEQsOEJBQThCO1FBQzlCLE1BQU0sUUFBUSxHQUFHLENBQUMsR0FBRyx5QkFBeUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FB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LENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssT0FBTyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzRixDQUFDO0NBQ0Y7QUE5RVM7SUFEUCxPQUFPLEVBQUU7Ozs7d0RBR1Q7QUE4RUgsV0FBaUIsV0FBVztJQUViLG1DQUF1QixHQUFHLGtCQUFrQixDQUFDO0lBQzdDLG9DQUF3QixHQUFHLElBQUksQ0FBQztJQUU3QyxTQUFnQixtQkFBbUIsQ0FBQyxJQUFZO1FBQzlDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFBLHdCQUF3QixDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUZlLCtCQUFtQixzQkFFbEMsQ0FBQTtJQUVELFNBQWdCLGVBQWUsQ0FBQyxjQUFpQztRQUMvRCxPQUFPLGNBQWMsQ0FBQyxJQUFJLENBQUMsWUFBQSx3QkFBd0IsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFGZSwyQkFBZSxrQkFFOUIsQ0FBQTtBQUtILENBQUMsRUFoQmdCLFdBQVcsS0FBWCxXQUFXLFFBZ0IzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VXJsU2VnbWVudCwgVXJsU2VyaWFsaXplciwgVXJsVHJlZX0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7TWVtb2l6ZX0gZnJvbSAnZmFzdC10eXBlc2NyaXB0LW1lbW9pemUnO1xuXG5pbXBvcnQge2lzRXF1YWwsIGxhc3R9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQge0NvbnNvbGlkYXRlZFBhcmFtZXRlck1hcH0gZnJvbSAnLi9ndWFyZHMvY29uc29saWRhdGVkLXBhcmFtLW1hcCc7XG5pbXBvcnQge1BsYWNlRGVmaW5pdGlvbn0gZnJvbSAnLi9wbGFjZS1kZWZpbml0aW9uJztcbmltcG9ydCB7VmlzaXRTZWdtZW50fSBmcm9tICcuL3Zpc2l0LXNlZ21lbnQnO1xuXG5mdW5jdGlvbiBleHRyYWN0UHJpbWFyeVVybFNlZ21lbnRzKHVybFRyZWU6IFVybFRyZWUpOiBVcmxTZWdtZW50W10ge1xuICByZXR1cm4gdXJsVHJlZS5yb290LmNoaWxkcmVuLnByaW1hcnk/LnNlZ21lbnRzID8/IFtdO1xufVxuXG5leHBvcnQgY2xhc3MgVXJsU25hcHNob3Qge1xuXG4gIHJlYWRvbmx5IHVybFRyZWU6IFVybFRyZWU7XG5cbiAgLy8gVE9ETzogVXBkYXRlIHRoaXMgYWNjZXB0IGEgdXJsIFBhcnNlciBzbyBpdCBjYW4gYmUgaW1tdXRhYmxlIGFuZCBnZW5lcmF0ZSBuZXcgdHJlZXMgb24gbXV0YXRpb24gdXNpbmcgdG9TdHJpbmcoKSBhcmUgcGFyc2VVcmwuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IHVybFNlcmlhbGl6ZXI6IFVybFNlcmlhbGl6ZXIsIHJlYWRvbmx5IHVybDogc3RyaW5nKSB7XG4gICAgdGhpcy51cmxUcmVlID0gdXJsU2VyaWFsaXplci5wYXJzZSh1cmwpO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgcHVibGljIHVwZGF0ZVZpc2l0U2VnbWVudCh2aXNpdFNlZ21lbnQ6IFZpc2l0U2VnbWVudCk6IFVybFNuYXBzaG90IHtcbiAgICBjb25zdCBuZXdVcmxUcmVlID0gdGhpcy51cmxTZXJpYWxpemVyLnBhcnNlKHRoaXMudXJsKTtcbiAgICAvLyBVZ2x5LCBidXQgaXQgd29ya3MgZm9yIG5vdy5cbiAgICBjb25zdCBzZWdtZW50cyA9IFsuLi5leHRyYWN0UHJpbWFyeVVybFNlZ21lbnRzKG5ld1VybFRyZWUpXTtcbiAgICBjb25zdCB1cmxTZWdtZW50cyA9IHRoaXMuZ2V0VXJsU2VnbWVudHNGb3JWaXNpdFNlZ21lbnQodmlzaXRTZWdtZW50KTtcbiAgICBjb25zdCByZXBsYWNlQXQgPSBzZWdtZW50cy5maW5kSW5kZXgoc2VnbWVudCA9PiBzZWdtZW50LnBhdGggPT09IHVybFNlZ21lbnRzWzBdLnBhdGgpO1xuICAgIC8vIGRvIG5vdCB1c2UgdGhlIHJldHVybiB2YWx1ZSwgaXQncyB0aGUgaXRlbXMgdGhhdCB3ZXJlIHJlbW92ZWQhXG4gICAgc2VnbWVudHMuc3BsaWNlKHJlcGxhY2VBdCwgdXJsU2VnbWVudHMubGVuZ3RoLCAuLi51cmxTZWdtZW50cyk7XG4gICAgbmV3VXJsVHJlZS5yb290LmNoaWxkcmVuLnByaW1hcnkuc2VnbWVudHMgPSBzZWdtZW50cztcbiAgICByZXR1cm4gbmV3IFVybFNuYXBzaG90KHRoaXMudXJsU2VyaWFsaXplciwgbmV3VXJsVHJlZS50b1N0cmluZygpKTtcbiAgfVxuXG4gIGFwcGVuZFNlZ21lbnQodmlzaXRTZWdtZW50OiBWaXNpdFNlZ21lbnQpOlVybFNuYXBzaG90IHtcbiAgICAvLyBUT0RPOiBtYWtlIHRoaXMgd29yayBwcm9wZXJseSB3aXRoIHZpc2l0IHBhcmFtZXRlcnNcbiAgICByZXR1cm4gbmV3IFVybFNuYXBzaG90KHRoaXMudXJsU2VyaWFsaXplciwgdGhpcy51cmwgKyBcIi9cIiArIHZpc2l0U2VnbWVudC5wbGFjZURlZmluaXRpb24ucGF0aClcbiAgfVxuXG4gIEBNZW1vaXplKClcbiAgcHJpdmF0ZSBnZXRQcmltYXJ5VXJsU2VnbWVudHMoKTogVXJsU2VnbWVudFtdIHtcbiAgICByZXR1cm4gZXh0cmFjdFByaW1hcnlVcmxTZWdtZW50cyh0aGlzLnVybFRyZWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIHRoZSB2aXNpdCBpbnRvIHNlZ21lbnRzLiAgUGxlYXNlIG5vdCB0aGF0IHRoZXNlIHNlZ21lbnRzIGFyZSBub3QgZVxuICAgKiBAcGFyYW0gdmlzaXRTZWdtZW50XG4gICAqL1xuICBwcm90ZWN0ZWQgZ2V0VXJsU2VnbWVudHNGb3JWaXNpdFNlZ21lbnQodmlzaXRTZWdtZW50OiBWaXNpdFNlZ21lbnQpOiBVcmxTZWdtZW50W10ge1xuICAgIHJldHVybiB2aXNpdFNlZ21lbnQucGxhY2VEZWZpbml0aW9uLmhhc1JvdXRlSWQoKSA/XG4gICAgICBbXG4gICAgICAgIC8vIE5PVEU6XG4gICAgICAgIC8vIEl0J3MgaW1wb3J0YW50IHRvIGF0dGFjaCB0aGUgcGFyYW1zIHRvIHRoZSByb290IHBhdGggYW5kIG5vdCB0aGUgaWQuICBJZiB3ZSBhdHRhY2ggdGhlbVxuICAgICAgICAvLyB0byBhbiBlbXB0eSBpZCB0aGVuIHRoZSBhbmd1bGFyIHJvdXRlciB3b24ndCBtYXRjaCB0aGUgcGF0dGVybi5cbiAgICAgICAgbmV3IFVybFNlZ21lbnQodmlzaXRTZWdtZW50LnBsYWNlRGVmaW5pdGlvbi5wYXRoLCB2aXNpdFNlZ21lbnQucGxhY2VEZWZpbml0aW9uLmdldEZvcm1hdHRlZFJvdXRlUGFyYW1ldGVycyh2aXNpdFNlZ21lbnQpKSxcbiAgICAgICAgbmV3IFVybFNlZ21lbnQodmlzaXRTZWdtZW50LnBsYWNlRGVmaW5pdGlvbi5nZXRGb3JtYXR0ZWRSb3V0ZUlkKHZpc2l0U2VnbWVudCksIHt9KV1cbiAgICAgIDpcbiAgICAgIFtcbiAgICAgICAgbmV3IFVybFNlZ21lbnQodmlzaXRTZWdtZW50LnBsYWNlRGVmaW5pdGlvbi5wYXRoLCB2aXNpdFNlZ21lbnQucGxhY2VEZWZpbml0aW9uLmdldEZvcm1hdHRlZFJvdXRlUGFyYW1ldGVycyh2aXNpdFNlZ21lbnQpKVxuICAgICAgXTtcbiAgfVxuXG4gIGluY2x1ZGVzUGF0aE9mKHBsYWNlRGVmOiBQbGFjZURlZmluaXRpb24pIHtcbiAgICByZXR1cm4gdGhpcy5nZXRQcmltYXJ5VXJsU2VnbWVudHMoKS5maW5kKHMgPT4gcy5wYXRoID09PSBwbGFjZURlZi5wYXRoKTtcbiAgfVxuXG4gIGlzTGFzdFBsYWNlSW5VcmwocGxhY2VEZWY6IFBsYWNlRGVmaW5pdGlvbikge1xuICAgIHJldHVybiBsYXN0KHRoaXMuZ2V0UHJpbWFyeVVybFNlZ21lbnRzKCkpLnBhdGggPT09IHBsYWNlRGVmLnBhdGg7XG4gIH1cblxuICBjcmVhdGVWaXNpdFNlZ21lbnRGb3IocGxhY2VEZWY6IFBsYWNlRGVmaW5pdGlvbikge1xuICAgIHJldHVybiBuZXcgVmlzaXRTZWdtZW50KHBsYWNlRGVmLCBuZXcgQ29uc29saWRhdGVkUGFyYW1ldGVyTWFwKHRoaXMuZ2V0UHJpbWFyeVVybFNlZ21lbnRzKCkpKTtcbiAgfVxuXG4gIGdldEludGVyYWN0aW9uSWRzKCkge1xuICAgIGNvbnN0IHF1ZXJ5UGFyYW0gPSB0aGlzLnVybFRyZWUucXVlcnlQYXJhbXNbVXJsU25hcHNob3QuSU5URVJBQ1RJT05fUVVFUllfUEFSQU1dO1xuICAgIGlmIChxdWVyeVBhcmFtKSB7XG4gICAgICByZXR1cm4gVXJsU25hcHNob3QucGFyc2VJbnRlcmFjdGlvbklkcyhxdWVyeVBhcmFtKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFtdO1xuICAgIH1cbiAgfVxuXG4gIGhhc0ludGVyYWN0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRJbnRlcmFjdGlvbklkcygpLmxlbmd0aCA+IDA7XG4gIH1cblxuICBoYXNJbnRlcmFjdGlvbklkcyhpZHM6IHJlYWRvbmx5IHN0cmluZ1tdKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzRXF1YWwodGhpcy5nZXRJbnRlcmFjdGlvbklkcygpLCBpZHMpO1xuICB9XG4gIC8vIEBUcmFjZSgpXG5cbiAgdXBkYXRlSW50ZXJhY3Rpb25JZHMoaWRzOiByZWFkb25seSBzdHJpbmdbXSk6IFVybFNuYXBzaG90IHtcbiAgICBpZiAoaWRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIHRoaXMucmVtb3ZlSW50ZXJhY3Rpb25JZHMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdXJsVHJlZSA9IHRoaXMudXJsU2VyaWFsaXplci5wYXJzZSh0aGlzLnVybCk7XG4gICAgICB1cmxUcmVlLnF1ZXJ5UGFyYW1zW1VybFNuYXBzaG90LklOVEVSQUNUSU9OX1FVRVJZX1BBUkFNXSA9IFVybFNuYXBzaG90LmNyZWF0ZVBhdGhJZEZvcihpZHMpO1xuICAgICAgcmV0dXJuIG5ldyBVcmxTbmFwc2hvdCh0aGlzLnVybFNlcmlhbGl6ZXIsIHVybFRyZWUudG9TdHJpbmcoKSk7XG4gICAgfVxuICB9XG4gIC8vIEBUcmFjZSgpXG5cbiAgcmVtb3ZlSW50ZXJhY3Rpb25JZHMoKTogVXJsU25hcHNob3Qge1xuICAgIGNvbnN0IHVybFRyZWUgPSB0aGlzLnVybFNlcmlhbGl6ZXIucGFyc2UodGhpcy51cmwpO1xuICAgIGlmICh1cmxUcmVlLnF1ZXJ5UGFyYW1zICYmIHVybFRyZWUucXVlcnlQYXJhbXNbVXJsU25hcHNob3QuSU5URVJBQ1RJT05fUVVFUllfUEFSQU1dKSB7XG4gICAgICB1cmxUcmVlLnF1ZXJ5UGFyYW1zID0ge307Ly9bVXJsU25hcHNob3QuSU5URVJBQ1RJT05fUk9VVEVSX09VVExFVF1cbiAgICB9XG4gICAgcmV0dXJuIG5ldyBVcmxTbmFwc2hvdCh0aGlzLnVybFNlcmlhbGl6ZXIsIHVybFRyZWUudG9TdHJpbmcoKSk7XG4gIH1cblxuICB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiBgVXJsU25hcHNob3QoJHt0aGlzLnVybH0pYDtcbiAgfVxuXG4gIGNvbnRhaW5zVmlzaXRTZWdtZW50KHNlZ21lbnQ6IFZpc2l0U2VnbWVudCkge1xuICAgIHJldHVybiAhIXRoaXMuZ2V0UHJpbWFyeVVybFNlZ21lbnRzKCkuZmluZChzID0+IHMucGF0aCA9PT0gc2VnbWVudC5wbGFjZURlZmluaXRpb24ucGF0aCk7XG4gIH1cbn1cblxuZXhwb3J0IG5hbWVzcGFjZSBVcmxTbmFwc2hvdCB7XG5cbiAgZXhwb3J0IGNvbnN0IElOVEVSQUNUSU9OX1FVRVJZX1BBUkFNID0gJ2F1cC1pbnRlcmFjdGlvbnMnO1xuICBleHBvcnQgY29uc3QgSU5URVJBQ1RJT05fSURfU0VQQVJBVE9SID0gJy0tJztcblxuICBleHBvcnQgZnVuY3Rpb24gcGFyc2VJbnRlcmFjdGlvbklkcyhwYXRoOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gcGF0aC5zcGxpdChJTlRFUkFDVElPTl9JRF9TRVBBUkFUT1IpO1xuICB9XG5cbiAgZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVBhdGhJZEZvcihpbnRlcmFjdGlvbklkczogcmVhZG9ubHkgc3RyaW5nW10pIHtcbiAgICByZXR1cm4gaW50ZXJhY3Rpb25JZHMuam9pbihJTlRFUkFDVElPTl9JRF9TRVBBUkFUT1IpO1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBOYXZpZ2F0aW9uT3B0aW9ucyB7XG4gICAgcmVwbGFjZVVybD86IGJvb2xlYW47XG4gIH1cbn1cbiJdfQ==
@@ -1,4 +1,4 @@
1
- import { isEqual, isNil, isString } from 'lodash';
1
+ import { isEqual, isNil, isString } from 'lodash-es';
2
2
  export class VisitSegment {
3
3
  placeDefinition;
4
4
  visitParameters;
@@ -85,4 +85,4 @@ export class VisitSegment {
85
85
  return bits.join('');
86
86
  }
87
87
  }
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaXQtc2VnbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL3BsYWNlL3Zpc2l0LXNlZ21lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFDLE1BQU0sUUFBUSxDQUFDO0FBSWhELE1BQU0sT0FBTyxZQUFZO0lBR0Y7SUFGWixlQUFlLENBQXNCO0lBRTlDLFlBQXFCLGVBQWdDLEVBQUUsa0JBQXVDLEVBQUU7UUFBM0Usb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ25ELGVBQWUsQ0FBQyx1QkFBdUIsQ0FBQyxlQUFlLENBQUMsQ0FBQTtRQUN4RCxJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELFdBQVc7SUFDWCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsV0FBVztJQUNYLFVBQVU7UUFDUixPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGlCQUFpQixDQUFPLFNBQTZDO1FBQ25FLE9BQU8sUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0RyxDQUFDO0lBRUQsV0FBVztJQUNYLFlBQVksQ0FBQyxZQUFzQztRQUNqRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxZ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LEVBQUUsRUFBQyxHQUFHLEtBQUssQ0FBQyxlQUFlLEVBQUUsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFDLENBQUMsQ0FBQztJQUNyRyxDQUFDO0lBRUQsYUFBYTtRQUNYLE1BQU0sSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDakI7UUFDRCxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMvQyxJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3JFO1FBQ0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VHJhY2V9IGZyb20gXCJAY29vbG9uL3BlY3RpblwiO1xuaW1wb3J0IHtpc0VxdWFsLCBpc05pbCwgaXNTdHJpbmd9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQge1BsYWNlRGVmaW5pdGlvbn0gZnJvbSAnLi9wbGFjZS1kZWZpbml0aW9uJztcbmltcG9ydCB7UGFyYW1ldGVyRGVmaW5pdGlvbn0gZnJvbSAnLi9yb3V0ZS9wYXJhbWV0ZXItZGVmaW5pdGlvbic7XG5cbmV4cG9ydCBjbGFzcyBWaXNpdFNlZ21lbnQge1xuICByZWFkb25seSB2aXNpdFBhcmFtZXRlcnM6IFJlY29yZDxzdHJpbmcsIGFueT47XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgcGxhY2VEZWZpbml0aW9uOiBQbGFjZURlZmluaXRpb24sIHZpc2l0UGFyYW1ldGVyczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9KSB7XG4gICAgcGxhY2VEZWZpbml0aW9uLnZhbGlkYXRlUm91dGVQYXJhbWV0ZXJzKHZpc2l0UGFyYW1ldGVycylcbiAgICB0aGlzLnZpc2l0UGFyYW1ldGVycyA9IE9iamVjdC5mcmVlemUodmlzaXRQYXJhbWV0ZXJzKTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGdldFJvdXRlSWQoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5wbGFjZURlZmluaXRpb24uZ2V0Um91dGVJZEZyb20odGhpcyk7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBoYXNSb3V0ZUlkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhaXNOaWwodGhpcy5nZXRSb3V0ZUlkKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRoZSBwbGFjZSBwYXJhbWV0ZXIgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUuICBUaGUgcGFyYW1ldGVyXG4gICAqIG5hbWUgaXMgdGFrZW4gZnJvbSB0aGUgYGFzYCBvcHRpb24sIGUuZy4ge2FzOiAnYUN1c3RvbU5hbWUnfSBvdGhlcndpc2UgaXQgaXMgdGhlXG4gICAqIHNhbWUgYXMgdGhlIFZhbHVlTW9kZWwgcHJvcGVydHkgbmFtZS5cbiAgICogQHBhcmFtIHBhcmFtZXRlciB0aGUgdmlzaXQgcGFyYW1ldGVyIGRlZmluaXRpb25cbiAgICovXG4gIGdldFBhcmFtZXRlclZhbHVlPFQsIFM+KHBhcmFtZXRlcjogUGFyYW1ldGVyRGVmaW5pdGlvbjxULCBTPiB8IHN0cmluZyk6IFQge1xuICAgIHJldHVybiBpc1N0cmluZyhwYXJhbWV0ZXIpID8gdGhpcy52aXNpdFBhcmFtZXRlcnNbcGFyYW1ldGVyXSA6IHRoaXMudmlzaXRQYXJhbWV0ZXJzW3BhcmFtZXRlci5uYW1lXTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGhhc1BhcmFtZXRlcihwYXJhbWV0ZXJEZWY6IFBhcmFtZXRlckRlZmluaXRpb248YW55Pik6IGJvb2xlYW4ge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyh0aGlzLnZpc2l0UGFyYW1ldGVycykuaW5jbHVkZXMocGFyYW1ldGVyRGVmLm5hbWUpO1xuICB9XG5cbiAgcmVwbGFjZTxUPihwYXJhbWV0ZXI6IFBhcmFtZXRlckRlZmluaXRpb248VCwgYW55PiwgdmFsdWU6IFQpOiBWaXNpdFNlZ21lbnQge1xuICAgIHJldHVybiBuZXcgVmlzaXRTZWdtZW50KHRoaXMucGxhY2VEZWZpbml0aW9uLCB7Li4udGhpcy52aXNpdFBhcmFtZXRlcnMsIFtwYXJhbWV0ZXIubmFtZV06IHZhbHVlfSk7XG4gIH1cblxuICBtZXJnZVJvdXRlUGFyYW1ldGVyczxTPihyb3V0ZVBhcmFtczogUmVjb3JkPHN0cmluZywgYW55Pik6IFZpc2l0U2VnbWVudCB7XG4gICAgLy8gdG9kbzogd2hpdGVsaXN0IHBhcmFtZXRlcnMuXG4gICAgY29uc3Qgcm91dGVQYXJhbWV0ZXJLZXlzID0gT2JqZWN0LmtleXMocm91dGVQYXJhbXMpO1xuICAgIGNvbnN0IHBhcmFtcyA9IHt9O1xuICAgIHRoaXMucGxhY2VEZWZpbml0aW9uLmdldFZpc2l0UGFyYW1ldGVyRGVmcygpLmZvckVhY2goZGVmID0+IHtcbiAgICAgIGlmIChkZWYuaXNSb3V0ZUlkIHx8IGRlZi5pc1JvdXRlUGFyYW1ldGVyKSB7XG4gICAgICAgIGlmIChyb3V0ZVBhcmFtZXRlcktleXMuaW5jbHVkZXMoZGVmLm5hbWUpKSB7XG4gICAgICAgICAgcGFyYW1zW2RlZi5uYW1lXSA9IHJvdXRlUGFyYW1zW2RlZi5uYW1lXTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gY29weSBub24gcm91dGUgcGFyYW1zIGFzIGlzLCBidXQgb25seSBpZiB0aGV5IGFscmVhZHkgZXhpc3Qgb3RoZXJ3aXNlIHdlJ2xsIGluamVjdCBuaWwgdmFsdWVzIGFuZCBicmVhayB0aGVcbiAgICAgICAgLy8gZGVmYXVsdHMgYW5kIHJlbWVtYmVyIHNhbml0aXNhdGlvbiBwcm9jZXNzLlxuICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZ2V0UGFyYW1ldGVyVmFsdWUoZGVmKTtcbiAgICAgICAgaWYgKHRoaXMuaGFzUGFyYW1ldGVyKGRlZikpIHtcbiAgICAgICAgICBwYXJhbXNbZGVmLm5hbWVdID0gdmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gbmV3IFZpc2l0U2VnbWVudCh0aGlzLnBsYWNlRGVmaW5pdGlvbiwgcGFyYW1zKTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGhhc1JvdXRpbmdDaGFuZ2VkRnJvbShvdGhlcjogVmlzaXRTZWdtZW50KTogYm9vbGVhbiB7XG4gICAgY29uc3Qgc2FtZVBsYWNlID0gb3RoZXIucGxhY2VEZWZpbml0aW9uID09PSB0aGlzLnBsYWNlRGVmaW5pdGlvbjtcbiAgICBjb25zdCBjdXJyZW50UGFyYW1zID0gdGhpcy5wbGFjZURlZmluaXRpb24uZ2V0Rm9ybWF0dGVkUm91dGVQYXJhbWV0ZXJzKHRoaXMsIHRydWUpO1xuICAgIGNvbnN0IG90aGVyUGFyYW1zID0gdGhpcy5wbGFjZURlZmluaXRpb24uZ2V0Rm9ybWF0dGVkUm91dGVQYXJhbWV0ZXJzKG90aGVyLCB0cnVlKTtcbiAgICAvLyBjb25zb2xlLmxvZyh7Y3VycmVudFBhcmFtcywgb3RoZXJQYXJhbXN9KTtcbiAgICBjb25zdCBzYW1lUm91dGVQYXJhbWV0ZXJzID0gaXNFcXVhbChjdXJyZW50UGFyYW1zLCBvdGhlclBhcmFtcyk7XG4gICAgcmV0dXJuICFzYW1lUGxhY2UgfHwgIXNhbWVSb3V0ZVBhcmFtZXRlcnM7XG4gIH1cblxuICBoYXNDaGFuZ2VkRnJvbShvdGhlcjogVmlzaXRTZWdtZW50KSB7XG4gICAgY29uc3Qgc2FtZU5vblJvdXRlUGFyYW1ldGVycyA9IGlzRXF1YWwoXG4gICAgICB0aGlzLnBsYWNlRGVmaW5pdGlvbi5nZXROb25Sb3V0ZVBhcmFtZXRlcnModGhpcyksXG4gICAgICB0aGlzLnBsYWNlRGVmaW5pdGlvbi5nZXROb25Sb3V0ZVBhcmFtZXRlcnMob3RoZXIpXG4gICAgKTtcbiAgICByZXR1cm4gIXNhbWVOb25Sb3V0ZVBhcmFtZXRlcnMgfHwgdGhpcy5oYXNSb3V0aW5nQ2hhbmdlZEZyb20ob3RoZXIpO1xuICB9XG5cbiAgY3JlYXRlUm91dGVyQ29tbWFuZHMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLmhhc1JvdXRlSWQoKSA/XG4gICAgICBbdGhpcy5wbGFjZURlZmluaXRpb24uZ2V0Rm9ybWF0dGVkUm91dGVJZCh0aGlzKSwgdGhpcy5wbGFjZURlZmluaXRpb24uZ2V0Rm9ybWF0dGVkUm91dGVQYXJhbWV0ZXJzKHRoaXMpXSA6XG4gICAgICBbdGhpcy5wbGFjZURlZmluaXRpb24uZ2V0Rm9ybWF0dGVkUm91dGVQYXJhbWV0ZXJzKHRoaXMpXTtcbiAgfVxuXG4gIGNvcHlNaXNzaW5nRnJvbShvdGhlcjogVmlzaXRTZWdtZW50KTogVmlzaXRTZWdtZW50IHtcbiAgICByZXR1cm4gbmV3IFZpc2l0U2VnbWVudCh0aGlzLnBsYWNlRGVmaW5pdGlvbiwgey4uLm90aGVyLnZpc2l0UGFyYW1ldGVycywgLi4udGhpcy52aXNpdFBhcmFtZXRlcnN9KTtcbiAgfVxuXG4gIHRvRGVidWdTdHJpbmcoKSB7XG4gICAgY29uc3QgYml0cyA9IFt0aGlzLnBsYWNlRGVmaW5pdGlvbi5wYXRoXTtcbiAgICBpZiAodGhpcy5wbGFjZURlZmluaXRpb24uYXV0aGVudGljYXRlKSB7XG4gICAgICBiaXRzLnB1c2goXCLwn5SQXCIpO1xuICAgIH1cbiAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXModGhpcy52aXNpdFBhcmFtZXRlcnMpO1xuICAgIGlmIChrZXlzLmxlbmd0aCA+IDApIHtcbiAgICAgIGJpdHMucHVzaChgKCR7a2V5cy5tYXAoayA9PiBgJHtrfT0ke3RoaXMudmlzaXRQYXJhbWV0ZXJzW2tdfWApfX0pYCk7XG4gICAgfVxuICAgIHJldHVybiBiaXRzLmpvaW4oJycpO1xuICB9XG5cbn1cbiJdfQ==
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaXQtc2VnbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL3BsYWNlL3Zpc2l0LXNlZ21lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFDLE1BQU0sV0FBVyxDQUFDO0FBSW5ELE1BQU0sT0FBTyxZQUFZO0lBR0Y7SUFGWixlQUFlLENBQXNCO0lBRTlDLFlBQXFCLGVBQWdDLEVBQUUsa0JBQXVDLEVBQUU7UUFBM0Usb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ25ELGVBQWUsQ0FBQyx1QkFBdUIsQ0FBQyxlQUFlLENBQUMsQ0FBQTtRQUN4RCxJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELFdBQVc7SUFDWCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsV0FBVztJQUNYLFVBQVU7UUFDUixPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGlCQUFpQixDQUFPLFNBQTZDO1FBQ25FLE9BQU8sUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0RyxDQUFDO0lBRUQsV0FBVztJQUNYLFlBQVksQ0FBQyxZQUEwQztRQUNyRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVELE9BQU8sQ0FBSSxTQUEwQyxFQUFFLEtBQVE7UUFDN0QsT0FBTyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLEVBQUMsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBQyxDQUFDLENBQUM7SUFDcEcsQ0FBQztJQUVELG9CQUFvQixDQUFDLFdBQW9DO1FBQ3ZELDhCQUE4QjtRQUM5QixNQUFNLGtCQUFrQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDcEQsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxlQUFlLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDekQsSUFBSSxHQUFHLENBQUMsU0FBUyxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRTtnQkFDekMsSUFBSSxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO29CQUN6QyxNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQzFDO2FBQ0Y7aUJBQU07Z0JBQ0wsOEdBQThHO2dCQUM5Ryw4Q0FBOEM7Z0JBQzlDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDMUMsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUFFO29CQUMxQixNQUFNLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQztpQkFDMUI7YUFDRjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxXQUFXO0lBQ1gscUJBQXFCLENBQUMsS0FBbUI7UUFDdkMsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLGVBQWUsS0FBSyxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQ2pFLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsMkJBQTJCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ25GLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsMkJBQTJCLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2xGLDZDQUE2QztRQUM3QyxNQUFNLG1CQUFtQixHQUFHLE9BQU8sQ0FBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDaEUsT0FBTyxDQUFDLFNBQVMsSUFBSSxDQUFDLG1CQUFtQixDQUFDO0lBQzVDLENBQUM7SUFFRCxjQUFjLENBQUMsS0FBbUI7UUFDaEMsTUFBTSxzQkFBc0IsR0FBRyxPQUFPLENBQ3BDLElBQUksQ0FBQyxlQUFlLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLEVBQ2hELElBQUksQ0FBQyxlQUFlLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQ2xELENBQUM7UUFDRixPQUFPLENBQUMsc0JBQXNCLElBQUksSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztZQUN4QixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDMUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLDJCQUEyQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFtQjtRQUNqQyxPQUFPLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBQyxHQUFHLEtBQUssQ0FBQyxlQUFlLEVBQUUsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFDLENBQUMsQ0FBQztJQUNyRyxDQUFDO0lBRUQsYUFBYTtRQUNYLE1BQU0sSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDakI7UUFDRCxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUMvQyxJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3JFO1FBQ0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7aXNFcXVhbCwgaXNOaWwsIGlzU3RyaW5nfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHtQbGFjZURlZmluaXRpb259IGZyb20gJy4vcGxhY2UtZGVmaW5pdGlvbic7XG5pbXBvcnQge1BhcmFtZXRlckRlZmluaXRpb259IGZyb20gJy4vcm91dGUvcGFyYW1ldGVyLWRlZmluaXRpb24nO1xuXG5leHBvcnQgY2xhc3MgVmlzaXRTZWdtZW50IHtcbiAgcmVhZG9ubHkgdmlzaXRQYXJhbWV0ZXJzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xuXG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IHBsYWNlRGVmaW5pdGlvbjogUGxhY2VEZWZpbml0aW9uLCB2aXNpdFBhcmFtZXRlcnM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fSkge1xuICAgIHBsYWNlRGVmaW5pdGlvbi52YWxpZGF0ZVJvdXRlUGFyYW1ldGVycyh2aXNpdFBhcmFtZXRlcnMpXG4gICAgdGhpcy52aXNpdFBhcmFtZXRlcnMgPSBPYmplY3QuZnJlZXplKHZpc2l0UGFyYW1ldGVycyk7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBnZXRSb3V0ZUlkKCk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnBsYWNlRGVmaW5pdGlvbi5nZXRSb3V0ZUlkRnJvbSh0aGlzKTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGhhc1JvdXRlSWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICFpc05pbCh0aGlzLmdldFJvdXRlSWQoKSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlIHBsYWNlIHBhcmFtZXRlciB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS4gIFRoZSBwYXJhbWV0ZXJcbiAgICogbmFtZSBpcyB0YWtlbiBmcm9tIHRoZSBgYXNgIG9wdGlvbiwgZS5nLiB7YXM6ICdhQ3VzdG9tTmFtZSd9IG90aGVyd2lzZSBpdCBpcyB0aGVcbiAgICogc2FtZSBhcyB0aGUgVmFsdWVNb2RlbCBwcm9wZXJ0eSBuYW1lLlxuICAgKiBAcGFyYW0gcGFyYW1ldGVyIHRoZSB2aXNpdCBwYXJhbWV0ZXIgZGVmaW5pdGlvblxuICAgKi9cbiAgZ2V0UGFyYW1ldGVyVmFsdWU8VCwgUz4ocGFyYW1ldGVyOiBQYXJhbWV0ZXJEZWZpbml0aW9uPFQsIFM+IHwgc3RyaW5nKTogVCB7XG4gICAgcmV0dXJuIGlzU3RyaW5nKHBhcmFtZXRlcikgPyB0aGlzLnZpc2l0UGFyYW1ldGVyc1twYXJhbWV0ZXJdIDogdGhpcy52aXNpdFBhcmFtZXRlcnNbcGFyYW1ldGVyLm5hbWVdO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgaGFzUGFyYW1ldGVyKHBhcmFtZXRlckRlZjogUGFyYW1ldGVyRGVmaW5pdGlvbjx1bmtub3duPik6IGJvb2xlYW4ge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyh0aGlzLnZpc2l0UGFyYW1ldGVycykuaW5jbHVkZXMocGFyYW1ldGVyRGVmLm5hbWUpO1xuICB9XG5cbiAgcmVwbGFjZTxUPihwYXJhbWV0ZXI6IFBhcmFtZXRlckRlZmluaXRpb248VCwgdW5rbm93bj4sIHZhbHVlOiBUKTogVmlzaXRTZWdtZW50IHtcbiAgICByZXR1cm4gbmV3IFZpc2l0U2VnbWVudCh0aGlzLnBsYWNlRGVmaW5pdGlvbiwgey4uLnRoaXMudmlzaXRQYXJhbWV0ZXJzLCBbcGFyYW1ldGVyLm5hbWVdOiB2YWx1ZX0pO1xuICB9XG5cbiAgbWVyZ2VSb3V0ZVBhcmFtZXRlcnMocm91dGVQYXJhbXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogVmlzaXRTZWdtZW50IHtcbiAgICAvLyB0b2RvOiB3aGl0ZWxpc3QgcGFyYW1ldGVycy5cbiAgICBjb25zdCByb3V0ZVBhcmFtZXRlcktleXMgPSBPYmplY3Qua2V5cyhyb3V0ZVBhcmFtcyk7XG4gICAgY29uc3QgcGFyYW1zID0ge307XG4gICAgdGhpcy5wbGFjZURlZmluaXRpb24uZ2V0VmlzaXRQYXJhbWV0ZXJEZWZzKCkuZm9yRWFjaChkZWYgPT4ge1xuICAgICAgaWYgKGRlZi5pc1JvdXRlSWQgfHwgZGVmLmlzUm91dGVQYXJhbWV0ZXIpIHtcbiAgICAgICAgaWYgKHJvdXRlUGFyYW1ldGVyS2V5cy5pbmNsdWRlcyhkZWYubmFtZSkpIHtcbiAgICAgICAgICBwYXJhbXNbZGVmLm5hbWVdID0gcm91dGVQYXJhbXNbZGVmLm5hbWVdO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBjb3B5IG5vbiByb3V0ZSBwYXJhbXMgYXMgaXMsIGJ1dCBvbmx5IGlmIHRoZXkgYWxyZWFkeSBleGlzdCBvdGhlcndpc2Ugd2UnbGwgaW5qZWN0IG5pbCB2YWx1ZXMgYW5kIGJyZWFrIHRoZVxuICAgICAgICAvLyBkZWZhdWx0cyBhbmQgcmVtZW1iZXIgc2FuaXRpc2F0aW9uIHByb2Nlc3MuXG4gICAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5nZXRQYXJhbWV0ZXJWYWx1ZShkZWYpO1xuICAgICAgICBpZiAodGhpcy5oYXNQYXJhbWV0ZXIoZGVmKSkge1xuICAgICAgICAgIHBhcmFtc1tkZWYubmFtZV0gPSB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBuZXcgVmlzaXRTZWdtZW50KHRoaXMucGxhY2VEZWZpbml0aW9uLCBwYXJhbXMpO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgaGFzUm91dGluZ0NoYW5nZWRGcm9tKG90aGVyOiBWaXNpdFNlZ21lbnQpOiBib29sZWFuIHtcbiAgICBjb25zdCBzYW1lUGxhY2UgPSBvdGhlci5wbGFjZURlZmluaXRpb24gPT09IHRoaXMucGxhY2VEZWZpbml0aW9uO1xuICAgIGNvbnN0IGN1cnJlbnRQYXJhbXMgPSB0aGlzLnBsYWNlRGVmaW5pdGlvbi5nZXRGb3JtYXR0ZWRSb3V0ZVBhcmFtZXRlcnModGhpcywgdHJ1ZSk7XG4gICAgY29uc3Qgb3RoZXJQYXJhbXMgPSB0aGlzLnBsYWNlRGVmaW5pdGlvbi5nZXRGb3JtYXR0ZWRSb3V0ZVBhcmFtZXRlcnMob3RoZXIsIHRydWUpO1xuICAgIC8vIGNvbnNvbGUubG9nKHtjdXJyZW50UGFyYW1zLCBvdGhlclBhcmFtc30pO1xuICAgIGNvbnN0IHNhbWVSb3V0ZVBhcmFtZXRlcnMgPSBpc0VxdWFsKGN1cnJlbnRQYXJhbXMsIG90aGVyUGFyYW1zKTtcbiAgICByZXR1cm4gIXNhbWVQbGFjZSB8fCAhc2FtZVJvdXRlUGFyYW1ldGVycztcbiAgfVxuXG4gIGhhc0NoYW5nZWRGcm9tKG90aGVyOiBWaXNpdFNlZ21lbnQpIHtcbiAgICBjb25zdCBzYW1lTm9uUm91dGVQYXJhbWV0ZXJzID0gaXNFcXVhbChcbiAgICAgIHRoaXMucGxhY2VEZWZpbml0aW9uLmdldE5vblJvdXRlUGFyYW1ldGVycyh0aGlzKSxcbiAgICAgIHRoaXMucGxhY2VEZWZpbml0aW9uLmdldE5vblJvdXRlUGFyYW1ldGVycyhvdGhlcilcbiAgICApO1xuICAgIHJldHVybiAhc2FtZU5vblJvdXRlUGFyYW1ldGVycyB8fCB0aGlzLmhhc1JvdXRpbmdDaGFuZ2VkRnJvbShvdGhlcik7XG4gIH1cblxuICBjcmVhdGVSb3V0ZXJDb21tYW5kcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMuaGFzUm91dGVJZCgpID9cbiAgICAgIFt0aGlzLnBsYWNlRGVmaW5pdGlvbi5nZXRGb3JtYXR0ZWRSb3V0ZUlkKHRoaXMpLCB0aGlzLnBsYWNlRGVmaW5pdGlvbi5nZXRGb3JtYXR0ZWRSb3V0ZVBhcmFtZXRlcnModGhpcyldIDpcbiAgICAgIFt0aGlzLnBsYWNlRGVmaW5pdGlvbi5nZXRGb3JtYXR0ZWRSb3V0ZVBhcmFtZXRlcnModGhpcyldO1xuICB9XG5cbiAgY29weU1pc3NpbmdGcm9tKG90aGVyOiBWaXNpdFNlZ21lbnQpOiBWaXNpdFNlZ21lbnQge1xuICAgIHJldHVybiBuZXcgVmlzaXRTZWdtZW50KHRoaXMucGxhY2VEZWZpbml0aW9uLCB7Li4ub3RoZXIudmlzaXRQYXJhbWV0ZXJzLCAuLi50aGlzLnZpc2l0UGFyYW1ldGVyc30pO1xuICB9XG5cbiAgdG9EZWJ1Z1N0cmluZygpIHtcbiAgICBjb25zdCBiaXRzID0gW3RoaXMucGxhY2VEZWZpbml0aW9uLnBhdGhdO1xuICAgIGlmICh0aGlzLnBsYWNlRGVmaW5pdGlvbi5hdXRoZW50aWNhdGUpIHtcbiAgICAgIGJpdHMucHVzaChcIvCflJBcIik7XG4gICAgfVxuICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyh0aGlzLnZpc2l0UGFyYW1ldGVycyk7XG4gICAgaWYgKGtleXMubGVuZ3RoID4gMCkge1xuICAgICAgYml0cy5wdXNoKGAoJHtrZXlzLm1hcChrID0+IGAke2t9PSR7dGhpcy52aXNpdFBhcmFtZXRlcnNba119YCl9fSlgKTtcbiAgICB9XG4gICAgcmV0dXJuIGJpdHMuam9pbignJyk7XG4gIH1cblxufVxuIl19
@@ -1,7 +1,7 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
2
  import { assert } from "@coolon/typescript-utilities";
3
+ import { Memoize } from "fast-typescript-memoize";
3
4
  import { isEmpty, last } from "lodash-es";
4
- import { Memoize } from "typescript-memoize";
5
5
  import { PlaceComponent } from "./place-component";
6
6
  import { PlaceDefinition } from "./place-definition";
7
7
  import { VisitSegment } from "./visit-segment";
@@ -94,4 +94,4 @@ __decorate([
94
94
  // .withAncestorParameters(ParentA, {id: "a"}) // barf if not a ancestor or missing parameters are required or parameter isn't valid
95
95
  // .withAncestorParameters(ParentB, {id: "c"}) // barf if not a ancestor or missing parameters are required or parameter isn't valid
96
96
  //
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS92aXNpdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLE1BQU0sRUFBZ0IsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUMsT0FBTyxFQUFFLElBQUksRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUN4QyxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFFM0MsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFN0MsTUFBTSxPQUFPLEtBQUs7SUFFTix3QkFBd0IsR0FBRyxJQUFJLEdBQUcsRUFBK0MsQ0FBQztJQUN6RSxrQkFBa0IsQ0FBZTtJQUNqQyxtQkFBbUIsQ0FBa0I7SUFFeEQsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUE2QyxFQUFFLGVBQXFDO1FBQzlGLE9BQU8sSUFBSSxLQUFLLENBQUMsQ0FBQyxJQUFJLFlBQVksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNyRyxDQUFDO0lBRUQsTUFBTSxDQUFDLFlBQVksQ0FBQyxRQUF3QjtRQUMxQyxPQUFPLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxZQUFzQixRQUF3QjtRQUM1QyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6QyxJQUFJLENB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TyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUM1RCxDQUFDO0NBQ0Y7QUF4QkM7SUFEQyxPQUFPLEVBQUU7O3FDQUNxQixlQUFlO29DQUFHLFlBQVk7MENBRTVEO0FBeUJILHdEQUF3RDtBQUN4RCxzSUFBc0k7QUFDdEksc0lBQXNJO0FBQ3RJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2Fzc2VydCwgQ29uc3RydWN0YWJsZX0gZnJvbSBcIkBjb29sb24vdHlwZXNjcmlwdC11dGlsaXRpZXNcIjtcbmltcG9ydCB7aXNFbXB0eSwgbGFzdH0gZnJvbSBcImxvZGFzaC1lc1wiO1xuaW1wb3J0IHtNZW1vaXplfSBmcm9tIFwidHlwZXNjcmlwdC1tZW1vaXplXCI7XG5pbXBvcnQge1BsYWNlQWNjZXNzR3VhcmR9IGZyb20gXCIuL3BsYWNlLWFjY2Vzcy1ndWFyZFwiO1xuaW1wb3J0IHtQbGFjZUNvbXBvbmVudH0gZnJvbSBcIi4vcGxhY2UtY29tcG9uZW50XCI7XG5pbXBvcnQge1BsYWNlRGVmaW5pdGlvbn0gZnJvbSBcIi4vcGxhY2UtZGVmaW5pdGlvblwiO1xuaW1wb3J0IHtWaXNpdFNlZ21lbnR9IGZyb20gXCIuL3Zpc2l0LXNlZ21lbnRcIjtcblxuZXhwb3J0IGNsYXNzIFZpc2l0IHtcblxuICBwcm90ZWN0ZWQgc2VnbWVudHNCeVBsYWNlQ29tcG9uZW50ID0gbmV3IE1hcDxDb25zdHJ1Y3RhYmxlPFBsYWNlQ29tcG9uZW50PiwgVmlzaXRTZWdtZW50PigpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGVzdGluYXRpb25TZWdtZW50OiBWaXNpdFNlZ21lbnQ7XG4gIHByb3RlY3RlZCByZWFkb25seSBkZXN0aW5hdGlvblBsYWNlRGVmOiBQbGFjZURlZmluaXRpb247XG5cbiAgc3RhdGljIGdvdG8ocGxhY2VDb21wb25lbnQ6IENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+LCB2aXNpdFBhcmFtZXRlcnM/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogVmlzaXQge1xuICAgIHJldHVybiBuZXcgVmlzaXQoW25ldyBWaXNpdFNlZ21lbnQoUGxhY2VDb21wb25lbnQuZ2V0RGVmaW5pdGlvbihwbGFjZUNvbXBvbmVudCksIHZpc2l0UGFyYW1ldGVycyldKVxuICB9XG5cbiAgc3RhdGljIGZyb21TZWdtZW50cyhzZWdtZW50czogVmlzaXRTZWdtZW50W10pOiBWaXNpdCB7XG4gICAgcmV0dXJuIG5ldyBWaXNpdChzZWdtZW50cyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3Ioc2VnbWVudHM6IFZpc2l0U2VnbWVudFtdKSB7XG4gICAgYXNzZXJ0LmlzVHJ1dGh5KHNlZ21lbnRzLmxlbmd0aCA+IDApO1xuICAgIHRoaXMuZGVzdGluYXRpb25TZWdtZW50ID0gbGFzdChzZWdtZW50cyk7XG4gICAgdGhpcy5kZXN0aW5hdGlvblBsYWNlRGVmID0gdGhpcy5kZXN0aW5hdGlvblNlZ21lbnQucGxhY2VEZWZpbml0aW9uXG4gICAgc2VnbWVudHMuZm9yRWFjaChzID0+IHRoaXMuc2VnbWVudHNCeVBsYWNlQ29tcG9uZW50LnNldChzLnBsYWNlRGVmaW5pdGlvbi5jb21wb25lbnQsIHMpKVxuICB9XG5cbiAgcHJvdGVjdGVkIGdldCBkZWZpbmVkU2VnbWVudHMoKTogTWFwPENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+LCBWaXNpdFNlZ21lbnQ+IHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLnNlZ21lbnRzQnlQbGFjZUNvbXBvbmVudC52YWx1ZXMoKSkucmVkdWNlKChtYXAsIHMpID0+IHtcbiAgICAgIG1hcC5zZXQocy5wbGFjZURlZmluaXRpb24uY29tcG9uZW50LCBzKVxuICAgICAgcmV0dXJuIG1hcDtcbiAgICB9LCBuZXcgTWFwKCkpXG5cbiAgfVxuXG4gIHdpdGhBbmNlc3RvclBhcmFtZXRlcnMocGxhY2VDb21wb25lbnQ6IENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+LCBwYXJhbWV0ZXJzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogdGhpcyB7XG4gICAgaWYgKCF0aGlzLmRlc3RpbmF0aW9uUGxhY2VEZWYuaGFzQW5jZXN0b3IocGxhY2VDb21wb25lbnQpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFBsYWNlICR7cGxhY2VDb21wb25lbnQubmFtZX0gaXMgbm90IGFuIGFuY2VzdG9yIG9mICR7dGhpcy5kZXN0aW5hdGlvblBsYWNlRGVmLmNvbXBvbmVudC5uYW1lfWApO1xuICAgIH1cbiAgICB0aGlzLnNlZ21lbnRzQnlQbGFjZUNvbXBvbmVudC5zZXQocGxhY2VDb21wb25lbnQsIG5ldyBWaXNpdFNlZ21lbnQoUGxhY2VDb21wb25lbnQuZ2V0RGVmaW5pdGlvbihwbGFjZUNvbXBvbmVudCksIHBhcmFtZXRlcnMpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGdldCBzZWdtZW50cygpOiBWaXNpdFNlZ21lbnRbXSB7XG4gICAgcmV0dXJuIHRoaXMucmVzb2x2ZVNlZ21lbnRzKFt0aGlzLmRlZmluZWRTZWdtZW50c10pO1xuICB9XG5cbiAgcHJpdmF0ZSByZXNvbHZlU2VnbWVudHMoZGVmYXVsdHM6IE1hcDxDb25zdHJ1Y3RhYmxlPFBsYWNlQ29tcG9uZW50PiwgVmlzaXRTZWdtZW50PltdKSB7XG4gICAgcmV0dXJuIHRoaXMuZGVzdGluYXRpb25QbGFjZURlZi5hbmNlc3RvcnNBbmRTZWxmKClcbiAgICAgIC5tYXAoYSA9PiB7XG4gICAgICAgIGNvbnN0IHZpc2l0ID0gbmV3IFZpc2l0U2VnbWVudChhLCB7fSk7XG4gICAgICAgIHJldHVybiBkZWZhdWx0c1xuICAgICAgICAgIC5tYXAoc2VnbWVudHMgPT4gc2VnbWVudHMuZ2V0KGEuY29tcG9uZW50KSlcbiAgICAgICAgICAuZmlsdGVyKGl0ID0+ICEhaXQpXG4gICAgICAgICAgLnJlZHVjZSgoaXQsIG90aGVyKSA9PiBpdC5jb3B5TWlzc2luZ0Zyb20ob3RoZXIpLCB2aXNpdClcbiAgICAgIH0pO1xuICB9XG5cbiAgY29weVdpdGhEZWZhdWx0c0Zyb20ob3RoZXI6IFZpc2l0fHVuZGVmaW5lZCk6IFZpc2l0IHtcbiAgICBjb25zdCBkZWZhdWx0cyA9IFt0aGlzLmRlZmluZWRTZWdtZW50c107XG4gICAgaWYgKG90aGVyKSB7XG4gICAgICBkZWZhdWx0cy5wdXNoKG90aGVyLmRlZmluZWRTZWdtZW50cyk7XG4gICAgfVxuICAgIHJldHVybiBuZXcgVmlzaXQodGhpcy5yZXNvbHZlU2VnbWVudHMoZGVmYXVsdHMpKTtcbiAgfVxuXG4gIGNvcHlBbmRSZXBsYWNlU2VnbWVudChyZXBsYWNlOiBWaXNpdFNlZ21lbnQpOiBWaXNpdCB7XG4gICAgLy8gY29uc29sZS5sb2coXCJjb3B5QW5kUmVwbGFjZVNlZ21lbnRcIiwgcmVwbGFjZS50b0RlYnVnU3RyaW5nKCkpO1xuICAgIGNvbnN0IHNlZ21lbnRzID0gdGhpcy5zZWdtZW50cy5tYXAocyA9PiBzLnBsYWNlRGVmaW5pdGlvbiA9PT0gcmVwbGFjZS5wbGFjZURlZmluaXRpb24gPyByZXBsYWNlIDogcyk7XG4gICAgLy8gY29uc29sZS5sb2coXCJjb3B5QW5kUmVwbGFjZVNlZ21lbnQucmVzdWx0XCIsIHNlZ21lbnRzLm1hcChzID0+IHMudG9EZWJ1Z1N0cmluZygpKS5qb2luKFwiXFxuXCIpKTtcbiAgICByZXR1cm4gbmV3IFZpc2l0KHNlZ21lbnRzKTtcbiAgfVxuXG4gIGlzUGxhY2VBY3RpdmUocGxhY2VEZWZpbml0aW9uOiBQbGFjZURlZmluaXRpb24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmdldFNlZ21lbnRGb3IocGxhY2VEZWZpbml0aW9uKTtcbiAgfVxuXG4gIEBNZW1vaXplKClcbiAgZ2V0U2VnbWVudEZvcihwbGFjZURlZmluaXRpb246IFBsYWNlRGVmaW5pdGlvbik6IFZpc2l0U2VnbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuc2VnbWVudHMuZmluZCh2ID0+IHYucGxhY2VEZWZpbml0aW9uID09PSBwbGFjZURlZmluaXRpb24pO1xuICB9XG5cbiAgZ2V0Um91dGVyQ29tbWFuZHMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLnNlZ21lbnRzLnJlZHVjZSgocmVzdWx0LCB2KSA9PiB7XG4gICAgICBjb25zdCBwYXRoID0gdi5wbGFjZURlZmluaXRpb24ucGF0aDtcbiAgICAgIHJldHVybiBpc0VtcHR5KHBhdGgpID9cbiAgICAgICAgWy4uLnJlc3VsdCwgcGF0aF0gOiAvLyBBbmd1bGFyIGRvZXNuJ3Qgc3VwcG9ydCByb3V0ZSBwYXJhbXMgb24gZW1wdHkgcGF0aCBzZWdtZW50c1xuICAgICAgICBbLi4ucmVzdWx0LCBwYXRoLCAuLi52LmNyZWF0ZVJvdXRlckNvbW1hbmRzKCldO1xuICAgIH0sIFtdKTtcbiAgfVxuXG4gIGlzQXV0aG9yaXNlZChndWFyZDogUGxhY2VBY2Nlc3NHdWFyZCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNlZ21lbnRzLmZpbmQocyA9PiAhZ3VhcmQuaXNBdXRob3Jpc2VkKHMucGxhY2VEZWZpbml0aW9uKSkgPT0gbnVsbDtcbiAgfVxuXG4gIHJlcXVpcmVzQXV0aGVudGljYXRpb24oKSB7XG4gICAgcmV0dXJuICEhdGhpcy5zZWdtZW50cy5maW5kKHMgPT4gcy5wbGFjZURlZmluaXRpb24uYXV0aGVudGljYXRlKTtcbiAgfVxuXG4gIHRvRGVidWdTdHJpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuc2VnbWVudHMubWFwKHMgPT4gcy50b0RlYnVnU3RyaW5nKCkpLmpvaW4oXCIvXCIpXG4gIH1cbn1cblxuXG4vLyBjb25zdCB2aXNpdDIgPSBWaXNpdC5nb3RvKEFub3RoZXJQbGFjZSwge2lkOiBcImZyZWRcIn0pXG4vLyAgIC53aXRoQW5jZXN0b3JQYXJhbWV0ZXJzKFBhcmVudEEsIHtpZDogXCJhXCJ9KSAvLyBiYXJmIGlmIG5vdCBhIGFuY2VzdG9yIG9yIG1pc3NpbmcgcGFyYW1ldGVycyBhcmUgcmVxdWlyZWQgb3IgcGFyYW1ldGVyIGlzbid0IHZhbGlkXG4vLyAgIC53aXRoQW5jZXN0b3JQYXJhbWV0ZXJzKFBhcmVudEIsIHtpZDogXCJjXCJ9KSAvLyBiYXJmIGlmIG5vdCBhIGFuY2VzdG9yIG9yIG1pc3NpbmcgcGFyYW1ldGVycyBhcmUgcmVxdWlyZWQgb3IgcGFyYW1ldGVyIGlzbid0IHZhbGlkXG4vL1xuIl19
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS92aXNpdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLE1BQU0sRUFBZ0IsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDaEQsT0FBTyxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUMsTUFBTSxXQUFXLENBQUM7QUFFeEMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFN0MsTUFBTSxPQUFPLEtBQUs7SUFFTix3QkFBd0IsR0FBRyxJQUFJLEdBQUcsRUFBK0MsQ0FBQztJQUN6RSxrQkFBa0IsQ0FBZTtJQUNqQyxtQkFBbUIsQ0FBa0I7SUFFeEQsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUE2QyxFQUFFLGVBQXlDO1FBQ2xHLE9BQU8sSUFBSSxLQUFLLENBQUMsQ0FBQyxJQUFJLFlBQVksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNyRyxDQUFDO0lBRUQsTUFBTSxDQUFDLFlBQVksQ0FBQyxRQUF3QjtRQUMxQyxPQUFPLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxZQUFzQixRQUF3QjtRQUM1QyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6QyxJQUFJLENB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TyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUM1RCxDQUFDO0NBQ0Y7QUF4QkM7SUFEQyxPQUFPLEVBQUU7O3FDQUNxQixlQUFlO29DQUFHLFlBQVk7MENBRTVEO0FBeUJILHdEQUF3RDtBQUN4RCxzSUFBc0k7QUFDdEksc0lBQXNJO0FBQ3RJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2Fzc2VydCwgQ29uc3RydWN0YWJsZX0gZnJvbSBcIkBjb29sb24vdHlwZXNjcmlwdC11dGlsaXRpZXNcIjtcbmltcG9ydCB7TWVtb2l6ZX0gZnJvbSBcImZhc3QtdHlwZXNjcmlwdC1tZW1vaXplXCI7XG5pbXBvcnQge2lzRW1wdHksIGxhc3R9IGZyb20gXCJsb2Rhc2gtZXNcIjtcbmltcG9ydCB7UGxhY2VBY2Nlc3NHdWFyZH0gZnJvbSBcIi4vcGxhY2UtYWNjZXNzLWd1YXJkXCI7XG5pbXBvcnQge1BsYWNlQ29tcG9uZW50fSBmcm9tIFwiLi9wbGFjZS1jb21wb25lbnRcIjtcbmltcG9ydCB7UGxhY2VEZWZpbml0aW9ufSBmcm9tIFwiLi9wbGFjZS1kZWZpbml0aW9uXCI7XG5pbXBvcnQge1Zpc2l0U2VnbWVudH0gZnJvbSBcIi4vdmlzaXQtc2VnbWVudFwiO1xuXG5leHBvcnQgY2xhc3MgVmlzaXQge1xuXG4gIHByb3RlY3RlZCBzZWdtZW50c0J5UGxhY2VDb21wb25lbnQgPSBuZXcgTWFwPENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+LCBWaXNpdFNlZ21lbnQ+KCk7XG4gIHByb3RlY3RlZCByZWFkb25seSBkZXN0aW5hdGlvblNlZ21lbnQ6IFZpc2l0U2VnbWVudDtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRlc3RpbmF0aW9uUGxhY2VEZWY6IFBsYWNlRGVmaW5pdGlvbjtcblxuICBzdGF0aWMgZ290byhwbGFjZUNvbXBvbmVudDogQ29uc3RydWN0YWJsZTxQbGFjZUNvbXBvbmVudD4sIHZpc2l0UGFyYW1ldGVycz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogVmlzaXQge1xuICAgIHJldHVybiBuZXcgVmlzaXQoW25ldyBWaXNpdFNlZ21lbnQoUGxhY2VDb21wb25lbnQuZ2V0RGVmaW5pdGlvbihwbGFjZUNvbXBvbmVudCksIHZpc2l0UGFyYW1ldGVycyldKVxuICB9XG5cbiAgc3RhdGljIGZyb21TZWdtZW50cyhzZWdtZW50czogVmlzaXRTZWdtZW50W10pOiBWaXNpdCB7XG4gICAgcmV0dXJuIG5ldyBWaXNpdChzZWdtZW50cyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3Ioc2VnbWVudHM6IFZpc2l0U2VnbWVudFtdKSB7XG4gICAgYXNzZXJ0LmlzVHJ1dGh5KHNlZ21lbnRzLmxlbmd0aCA+IDApO1xuICAgIHRoaXMuZGVzdGluYXRpb25TZWdtZW50ID0gbGFzdChzZWdtZW50cyk7XG4gICAgdGhpcy5kZXN0aW5hdGlvblBsYWNlRGVmID0gdGhpcy5kZXN0aW5hdGlvblNlZ21lbnQucGxhY2VEZWZpbml0aW9uXG4gICAgc2VnbWVudHMuZm9yRWFjaChzID0+IHRoaXMuc2VnbWVudHNCeVBsYWNlQ29tcG9uZW50LnNldChzLnBsYWNlRGVmaW5pdGlvbi5jb21wb25lbnQsIHMpKVxuICB9XG5cbiAgcHJvdGVjdGVkIGdldCBkZWZpbmVkU2VnbWVudHMoKTogTWFwPENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+LCBWaXNpdFNlZ21lbnQ+IHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLnNlZ21lbnRzQnlQbGFjZUNvbXBvbmVudC52YWx1ZXMoKSkucmVkdWNlKChtYXAsIHMpID0+IHtcbiAgICAgIG1hcC5zZXQocy5wbGFjZURlZmluaXRpb24uY29tcG9uZW50LCBzKVxuICAgICAgcmV0dXJuIG1hcDtcbiAgICB9LCBuZXcgTWFwKCkpXG5cbiAgfVxuXG4gIHdpdGhBbmNlc3RvclBhcmFtZXRlcnMocGxhY2VDb21wb25lbnQ6IENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+LCBwYXJhbWV0ZXJzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IHRoaXMge1xuICAgIGlmICghdGhpcy5kZXN0aW5hdGlvblBsYWNlRGVmLmhhc0FuY2VzdG9yKHBsYWNlQ29tcG9uZW50KSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBQbGFjZSAke3BsYWNlQ29tcG9uZW50Lm5hbWV9IGlzIG5vdCBhbiBhbmNlc3RvciBvZiAke3RoaXMuZGVzdGluYXRpb25QbGFjZURlZi5jb21wb25lbnQubmFtZX1gKTtcbiAgICB9XG4gICAgdGhpcy5zZWdtZW50c0J5UGxhY2VDb21wb25lbnQuc2V0KHBsYWNlQ29tcG9uZW50LCBuZXcgVmlzaXRTZWdtZW50KFBsYWNlQ29tcG9uZW50LmdldERlZmluaXRpb24ocGxhY2VDb21wb25lbnQpLCBwYXJhbWV0ZXJzKSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBnZXQgc2VnbWVudHMoKTogVmlzaXRTZWdtZW50W10ge1xuICAgIHJldHVybiB0aGlzLnJlc29sdmVTZWdtZW50cyhbdGhpcy5kZWZpbmVkU2VnbWVudHNdKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzb2x2ZVNlZ21lbnRzKGRlZmF1bHRzOiBNYXA8Q29uc3RydWN0YWJsZTxQbGFjZUNvbXBvbmVudD4sIFZpc2l0U2VnbWVudD5bXSkge1xuICAgIHJldHVybiB0aGlzLmRlc3RpbmF0aW9uUGxhY2VEZWYuYW5jZXN0b3JzQW5kU2VsZigpXG4gICAgICAubWFwKGEgPT4ge1xuICAgICAgICBjb25zdCB2aXNpdCA9IG5ldyBWaXNpdFNlZ21lbnQoYSwge30pO1xuICAgICAgICByZXR1cm4gZGVmYXVsdHNcbiAgICAgICAgICAubWFwKHNlZ21lbnRzID0+IHNlZ21lbnRzLmdldChhLmNvbXBvbmVudCkpXG4gICAgICAgICAgLmZpbHRlcihpdCA9PiAhIWl0KVxuICAgICAgICAgIC5yZWR1Y2UoKGl0LCBvdGhlcikgPT4gaXQuY29weU1pc3NpbmdGcm9tKG90aGVyKSwgdmlzaXQpXG4gICAgICB9KTtcbiAgfVxuXG4gIGNvcHlXaXRoRGVmYXVsdHNGcm9tKG90aGVyOiBWaXNpdHx1bmRlZmluZWQpOiBWaXNpdCB7XG4gICAgY29uc3QgZGVmYXVsdHMgPSBbdGhpcy5kZWZpbmVkU2VnbWVudHNdO1xuICAgIGlmIChvdGhlcikge1xuICAgICAgZGVmYXVsdHMucHVzaChvdGhlci5kZWZpbmVkU2VnbWVudHMpO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IFZpc2l0KHRoaXMucmVzb2x2ZVNlZ21lbnRzKGRlZmF1bHRzKSk7XG4gIH1cblxuICBjb3B5QW5kUmVwbGFjZVNlZ21lbnQocmVwbGFjZTogVmlzaXRTZWdtZW50KTogVmlzaXQge1xuICAgIC8vIGNvbnNvbGUubG9nKFwiY29weUFuZFJlcGxhY2VTZWdtZW50XCIsIHJlcGxhY2UudG9EZWJ1Z1N0cmluZygpKTtcbiAgICBjb25zdCBzZWdtZW50cyA9IHRoaXMuc2VnbWVudHMubWFwKHMgPT4gcy5wbGFjZURlZmluaXRpb24gPT09IHJlcGxhY2UucGxhY2VEZWZpbml0aW9uID8gcmVwbGFjZSA6IHMpO1xuICAgIC8vIGNvbnNvbGUubG9nKFwiY29weUFuZFJlcGxhY2VTZWdtZW50LnJlc3VsdFwiLCBzZWdtZW50cy5tYXAocyA9PiBzLnRvRGVidWdTdHJpbmcoKSkuam9pbihcIlxcblwiKSk7XG4gICAgcmV0dXJuIG5ldyBWaXNpdChzZWdtZW50cyk7XG4gIH1cblxuICBpc1BsYWNlQWN0aXZlKHBsYWNlRGVmaW5pdGlvbjogUGxhY2VEZWZpbml0aW9uKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5nZXRTZWdtZW50Rm9yKHBsYWNlRGVmaW5pdGlvbik7XG4gIH1cblxuICBATWVtb2l6ZSgpXG4gIGdldFNlZ21lbnRGb3IocGxhY2VEZWZpbml0aW9uOiBQbGFjZURlZmluaXRpb24pOiBWaXNpdFNlZ21lbnQge1xuICAgIHJldHVybiB0aGlzLnNlZ21lbnRzLmZpbmQodiA9PiB2LnBsYWNlRGVmaW5pdGlvbiA9PT0gcGxhY2VEZWZpbml0aW9uKTtcbiAgfVxuXG4gIGdldFJvdXRlckNvbW1hbmRzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5zZWdtZW50cy5yZWR1Y2UoKHJlc3VsdCwgdikgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IHYucGxhY2VEZWZpbml0aW9uLnBhdGg7XG4gICAgICByZXR1cm4gaXNFbXB0eShwYXRoKSA/XG4gICAgICAgIFsuLi5yZXN1bHQsIHBhdGhdIDogLy8gQW5ndWxhciBkb2Vzbid0IHN1cHBvcnQgcm91dGUgcGFyYW1zIG9uIGVtcHR5IHBhdGggc2VnbWVudHNcbiAgICAgICAgWy4uLnJlc3VsdCwgcGF0aCwgLi4udi5jcmVhdGVSb3V0ZXJDb21tYW5kcygpXTtcbiAgICB9LCBbXSk7XG4gIH1cblxuICBpc0F1dGhvcmlzZWQoZ3VhcmQ6IFBsYWNlQWNjZXNzR3VhcmQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zZWdtZW50cy5maW5kKHMgPT4gIWd1YXJkLmlzQXV0aG9yaXNlZChzLnBsYWNlRGVmaW5pdGlvbikpID09IG51bGw7XG4gIH1cblxuICByZXF1aXJlc0F1dGhlbnRpY2F0aW9uKCkge1xuICAgIHJldHVybiAhIXRoaXMuc2VnbWVudHMuZmluZChzID0+IHMucGxhY2VEZWZpbml0aW9uLmF1dGhlbnRpY2F0ZSk7XG4gIH1cblxuICB0b0RlYnVnU3RyaW5nKCkge1xuICAgIHJldHVybiB0aGlzLnNlZ21lbnRzLm1hcChzID0+IHMudG9EZWJ1Z1N0cmluZygpKS5qb2luKFwiL1wiKVxuICB9XG59XG5cblxuLy8gY29uc3QgdmlzaXQyID0gVmlzaXQuZ290byhBbm90aGVyUGxhY2UsIHtpZDogXCJmcmVkXCJ9KVxuLy8gICAud2l0aEFuY2VzdG9yUGFyYW1ldGVycyhQYXJlbnRBLCB7aWQ6IFwiYVwifSkgLy8gYmFyZiBpZiBub3QgYSBhbmNlc3RvciBvciBtaXNzaW5nIHBhcmFtZXRlcnMgYXJlIHJlcXVpcmVkIG9yIHBhcmFtZXRlciBpc24ndCB2YWxpZFxuLy8gICAud2l0aEFuY2VzdG9yUGFyYW1ldGVycyhQYXJlbnRCLCB7aWQ6IFwiY1wifSkgLy8gYmFyZiBpZiBub3QgYSBhbmNlc3RvciBvciBtaXNzaW5nIHBhcmFtZXRlcnMgYXJlIHJlcXVpcmVkIG9yIHBhcmFtZXRlciBpc24ndCB2YWxpZFxuLy9cbiJdfQ==
@@ -3,8 +3,6 @@ import { marked } from 'marked';
3
3
  import { markdownPillExtension } from './pill-plugin';
4
4
  import * as i0 from "@angular/core";
5
5
  export class MarkdownService {
6
- constructor() {
7
- }
8
6
  render(content) {
9
7
  return marked.parse(content, {
10
8
  smartLists: true
@@ -23,5 +21,5 @@ export class MarkdownService {
23
21
  }
24
22
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: MarkdownService, decorators: [{
25
23
  type: Injectable
26
- }], ctorParameters: function () { return []; } });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL3NlcnZpY2VzL21hcmtkb3duL21hcmtkb3duLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ2hDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHdEQsTUFBTSxPQUFPLGVBQWU7SUFFMUI7SUFDQSxDQUFDO0lBRUQsTUFBTSxDQUFDLE9BQWU7UUFDcEIsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRTtZQUMzQixVQUFVLEVBQUUsSUFBSTtTQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsWUFBWSxDQUFDLE9BQWU7UUFDMUIsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxRQUFzQztRQUNyRCxNQUFNLENBQUMsR0FBRyxDQUFDO1lBQ1QsVUFBVSxFQUFFLENBQUMscUJBQXFCLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQywwQkFBMEIsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDO1NBQ2xHLENBQUMsQ0FBQztJQUNMLENBQUM7dUdBbkJVLGVBQWU7MkdBQWYsZUFBZTs7MkZBQWYsZUFBZTtrQkFEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgbWFya2VkIH0gZnJvbSAnbWFya2VkJztcbmltcG9ydCB7IG1hcmtkb3duUGlsbEV4dGVuc2lvbiB9IGZyb20gJy4vcGlsbC1wbHVnaW4nO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTWFya2Rvd25TZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgfVxuXG4gIHJlbmRlcihjb250ZW50OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbWFya2VkLnBhcnNlKGNvbnRlbnQsIHtcbiAgICAgIHNtYXJ0TGlzdHM6IHRydWVcbiAgICB9KTtcbiAgfVxuXG4gIHJlbmRlcklubGluZShjb250ZW50OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbWFya2VkLnBhcnNlSW5saW5lKGNvbnRlbnQpO1xuICB9XG5cbiAgdXNlUGlsbEV4dGVuc2lvbihyZW5kZXJlcj86IChjb250ZW50OiBzdHJpbmcpID0+IHN0cmluZykge1xuICAgIG1hcmtlZC51c2Uoe1xuICAgICAgZXh0ZW5zaW9uczogW21hcmtkb3duUGlsbEV4dGVuc2lvbihyZW5kZXJlciA/PyAodGV4dCA9PiBgPHNwYW4gY2xhc3M9J2F1cC1waWxsJz4ke3RleHR9PHNwYW4+YCkpXVxuICAgIH0pO1xuICB9XG59XG5cblxuIl19
24
+ }] });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL3NlcnZpY2VzL21hcmtkb3duL21hcmtkb3duLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sUUFBUSxDQUFDO0FBQzlCLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7QUFHcEQsTUFBTSxPQUFPLGVBQWU7SUFDMUIsTUFBTSxDQUFDLE9BQWU7UUFDcEIsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRTtZQUMzQixVQUFVLEVBQUUsSUFBSTtTQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsWUFBWSxDQUFDLE9BQWU7UUFDMUIsT0FBTyxNQUFNLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxRQUFzQztRQUNyRCxNQUFNLENBQUMsR0FBRyxDQUFDO1lBQ1QsVUFBVSxFQUFFLENBQUMscUJBQXFCLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQywwQkFBMEIsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDO1NBQ2xHLENBQUMsQ0FBQztJQUNMLENBQUM7dUdBZlUsZUFBZTsyR0FBZixlQUFlOzsyRkFBZixlQUFlO2tCQUQzQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHttYXJrZWR9IGZyb20gJ21hcmtlZCc7XG5pbXBvcnQge21hcmtkb3duUGlsbEV4dGVuc2lvbn0gZnJvbSAnLi9waWxsLXBsdWdpbic7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBNYXJrZG93blNlcnZpY2Uge1xuICByZW5kZXIoY29udGVudDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIG1hcmtlZC5wYXJzZShjb250ZW50LCB7XG4gICAgICBzbWFydExpc3RzOiB0cnVlXG4gICAgfSk7XG4gIH1cblxuICByZW5kZXJJbmxpbmUoY29udGVudDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIG1hcmtlZC5wYXJzZUlubGluZShjb250ZW50KTtcbiAgfVxuXG4gIHVzZVBpbGxFeHRlbnNpb24ocmVuZGVyZXI/OiAoY29udGVudDogc3RyaW5nKSA9PiBzdHJpbmcpIHtcbiAgICBtYXJrZWQudXNlKHtcbiAgICAgIGV4dGVuc2lvbnM6IFttYXJrZG93blBpbGxFeHRlbnNpb24ocmVuZGVyZXIgPz8gKHRleHQgPT4gYDxzcGFuIGNsYXNzPSdhdXAtcGlsbCc+JHt0ZXh0fTxzcGFuPmApKV1cbiAgICB9KTtcbiAgfVxufVxuXG5cbiJdfQ==
@@ -28,10 +28,8 @@ export const markdownPillExtension = (renderPill) => {
28
28
  }
29
29
  },
30
30
  renderer: function (token) {
31
- // @ts-ignore (until typings are up to date)
32
- const url = token.text;
33
31
  return renderPill(token.text);
34
32
  }
35
33
  };
36
34
  };
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlsbC1wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9zZXJ2aWNlcy9tYXJrZG93bi9waWxsLXBsdWdpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLFVBQW9DLEVBQUUsRUFBRTtJQUM1RSxPQUFPO1FBQ0wsSUFBSSxFQUFFLFVBQVU7UUFDaEIsS0FBSyxFQUFFLFFBQVE7UUFDZixLQUFLLEVBQUUsQ0FBQyxHQUFXLEVBQUUsRUFBRTtZQUNyQixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUFFLEtBQUssQ0FBQztZQUMzQyxlQUFlO1lBQ2YsK0JBQStCO1lBQy9CLElBQUk7WUFDSixPQUFPLEtBQUssQ0FBQztRQUNmLENBQUM7UUFDRCxTQUFTLEVBQUUsVUFBOEIsR0FBVztZQUNsRCxNQUFNLElBQUksR0FBRyxzQkFBc0IsQ0FBQyxDQUFFLCtCQUErQjtZQUNyRSxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzdCLElBQUksS0FBSyxFQUFFO2dCQUNULE1BQU0sS0FBSyxHQUFHO29CQUNaLElBQUksRUFBRSxVQUFVO29CQUNoQixHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztvQkFDYixJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLCtCQUErQjtvQkFDdEQsK0VBQStFO2lCQUNoRixDQUFDO2dCQUNGLHFCQUFxQjtnQkFDckIsNkdBQTZHO2dCQUM3RyxPQUFPLEtBQUssQ0FBQzthQUNkO2lCQUFNO2dCQUNMLE9BQU8sU0FBUyxDQUFDO2FBQ2xCO1FBQ0gsQ0FBQztRQUNELFFBQVEsRUFBRSxVQUE2QixLQUFxQjtZQUMxRCw0Q0FBNEM7WUFDNUMsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQztZQUN2QixPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEMsQ0FBQztLQUVGLENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUT0RPOiBtaWdyYXRlIHRvIG1hcmtkb3duLWl0IGFuZCBjb3B5IHRoaXMgcGx1Z2luOiBodHRwczovL2dpdGh1Yi5jb20vbWFya2Rvd24taXQvbWFya2Rvd24taXQtc3ViL2Jsb2IvbWFzdGVyL2luZGV4LmpzXG5pbXBvcnQgeyBtYXJrZWQgfSBmcm9tICdtYXJrZWQnO1xuaW1wb3J0IFJlbmRlcmVyVGhpcyA9IG1hcmtlZC5SZW5kZXJlclRoaXM7XG5pbXBvcnQgVG9rZW5pemVyVGhpcyA9IG1hcmtlZC5Ub2tlbml6ZXJUaGlzO1xuaW1wb3J0IFRva2VucyA9IG1hcmtlZC5Ub2tlbnM7XG5cbmV4cG9ydCBjb25zdCBtYXJrZG93blBpbGxFeHRlbnNpb24gPSAocmVuZGVyUGlsbDogKHRleHQ6IHN0cmluZykgPT4gc3RyaW5nKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogJ2F1cC1waWxsJyxcbiAgICBsZXZlbDogJ2lubGluZScsXG4gICAgc3RhcnQ6IChzcmM6IHN0cmluZykgPT4ge1xuICAgICAgY29uc3QgaW5kZXggPSBzcmMubWF0Y2goL1xcKFxcKFteKV0vKT8uaW5kZXg7XG4gICAgICAvLyBpZiAoaW5kZXgpIHtcbiAgICAgIC8vICAgICBjb25zb2xlLmxvZyh7c3RhcnQ6c3JjfSlcbiAgICAgIC8vIH1cbiAgICAgIHJldHVybiBpbmRleDtcbiAgICB9LFxuICAgIHRva2VuaXplcjogZnVuY3Rpb24odGhpczogVG9rZW5pemVyVGhpcywgc3JjOiBzdHJpbmcpIHtcbiAgICAgIGNvbnN0IHJ1bGUgPSAvXihcXChcXCgoKFteKV0pKylcXClcXCkpLzsgIC8vIFJlZ2V4IGZvciB0aGUgY29tcGxldGUgdG9rZW5cbiAgICAgIGNvbnN0IG1hdGNoID0gcnVsZS5leGVjKHNyYyk7XG4gICAgICBpZiAobWF0Y2gpIHtcbiAgICAgICAgY29uc3QgdG9rZW4gPSB7XG4gICAgICAgICAgdHlwZTogJ2F1cC1waWxsJywgICAgICAgICAgLy8gU2hvdWxkIG1hdGNoIFwibmFtZVwiIGFib3ZlXG4gICAgICAgICAgcmF3OiBtYXRjaFswXSwgICAgICAgICAvLyBUZXh0IHRvIGNvbnN1bWUgZnJvbSB0aGUgc291cmNlXG4gICAgICAgICAgdGV4dDogbWF0Y2hbMl0udHJpbSgpLCAvLyBBZGRpdGlvbmFsIGN1c3RvbSBwcm9wZXJ0aWVzXG4gICAgICAgICAgLy8gdG9rZW5zOiBbXSAgICAgICAgICAgICAgLy8gQXJyYXkgd2hlcmUgY2hpbGQgaW5saW5lIHRva2VucyB3aWxsIGJlIGdlbmVyYXRlZFxuICAgICAgICB9O1xuICAgICAgICAvLyBjb25zb2xlLmxvZyh0b2tlbilcbiAgICAgICAgLy8gdGhpcy5sZXhlci5pbmxpbmVUb2tlbnModG9rZW4udGV4dCwgdG9rZW4udG9rZW5zKTsgICAgLy8gUXVldWUgdGhpcyBkYXRhIHRvIGJlIHByb2Nlc3NlZCBmb3IgaW5saW5lIHRva2Vuc1xuICAgICAgICByZXR1cm4gdG9rZW47XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgIH0sXG4gICAgcmVuZGVyZXI6IGZ1bmN0aW9uKHRoaXM6IFJlbmRlcmVyVGhpcywgdG9rZW46IFRva2Vucy5HZW5lcmljKSB7XG4gICAgICAvLyBAdHMtaWdub3JlICh1bnRpbCB0eXBpbmdzIGFyZSB1cCB0byBkYXRlKVxuICAgICAgY29uc3QgdXJsID0gdG9rZW4udGV4dDtcbiAgICAgIHJldHVybiByZW5kZXJQaWxsKHRva2VuLnRleHQpO1xuICAgIH1cblxuICB9O1xufTtcbiJdfQ==
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlsbC1wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9zZXJ2aWNlcy9tYXJrZG93bi9waWxsLXBsdWdpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLFVBQW9DLEVBQUUsRUFBRTtJQUM1RSxPQUFPO1FBQ0wsSUFBSSxFQUFFLFVBQVU7UUFDaEIsS0FBSyxFQUFFLFFBQVE7UUFDZixLQUFLLEVBQUUsQ0FBQyxHQUFXLEVBQUUsRUFBRTtZQUNyQixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxFQUFFLEtBQUssQ0FBQztZQUMzQyxlQUFlO1lBQ2YsK0JBQStCO1lBQy9CLElBQUk7WUFDSixPQUFPLEtBQUssQ0FBQztRQUNmLENBQUM7UUFDRCxTQUFTLEVBQUUsVUFBOEIsR0FBVztZQUNsRCxNQUFNLElBQUksR0FBRyxzQkFBc0IsQ0FBQyxDQUFFLCtCQUErQjtZQUNyRSxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzdCLElBQUksS0FBSyxFQUFFO2dCQUNULE1BQU0sS0FBSyxHQUFHO29CQUNaLElBQUksRUFBRSxVQUFVO29CQUNoQixHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztvQkFDYixJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLCtCQUErQjtvQkFDdEQsK0VBQStFO2lCQUNoRixDQUFDO2dCQUNGLHFCQUFxQjtnQkFDckIsNkdBQTZHO2dCQUM3RyxPQUFPLEtBQUssQ0FBQzthQUNkO2lCQUFNO2dCQUNMLE9BQU8sU0FBUyxDQUFDO2FBQ2xCO1FBQ0gsQ0FBQztRQUNELFFBQVEsRUFBRSxVQUE2QixLQUFxQjtZQUMxRCxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEMsQ0FBQztLQUVGLENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUT0RPOiBtaWdyYXRlIHRvIG1hcmtkb3duLWl0IGFuZCBjb3B5IHRoaXMgcGx1Z2luOiBodHRwczovL2dpdGh1Yi5jb20vbWFya2Rvd24taXQvbWFya2Rvd24taXQtc3ViL2Jsb2IvbWFzdGVyL2luZGV4LmpzXG5pbXBvcnQge21hcmtlZH0gZnJvbSAnbWFya2VkJztcbmltcG9ydCBSZW5kZXJlclRoaXMgPSBtYXJrZWQuUmVuZGVyZXJUaGlzO1xuaW1wb3J0IFRva2VuaXplclRoaXMgPSBtYXJrZWQuVG9rZW5pemVyVGhpcztcbmltcG9ydCBUb2tlbnMgPSBtYXJrZWQuVG9rZW5zO1xuXG5leHBvcnQgY29uc3QgbWFya2Rvd25QaWxsRXh0ZW5zaW9uID0gKHJlbmRlclBpbGw6ICh0ZXh0OiBzdHJpbmcpID0+IHN0cmluZykgPT4ge1xuICByZXR1cm4ge1xuICAgIG5hbWU6ICdhdXAtcGlsbCcsXG4gICAgbGV2ZWw6ICdpbmxpbmUnLFxuICAgIHN0YXJ0OiAoc3JjOiBzdHJpbmcpID0+IHtcbiAgICAgIGNvbnN0IGluZGV4ID0gc3JjLm1hdGNoKC9cXChcXChbXildLyk/LmluZGV4O1xuICAgICAgLy8gaWYgKGluZGV4KSB7XG4gICAgICAvLyAgICAgY29uc29sZS5sb2coe3N0YXJ0OnNyY30pXG4gICAgICAvLyB9XG4gICAgICByZXR1cm4gaW5kZXg7XG4gICAgfSxcbiAgICB0b2tlbml6ZXI6IGZ1bmN0aW9uKHRoaXM6IFRva2VuaXplclRoaXMsIHNyYzogc3RyaW5nKSB7XG4gICAgICBjb25zdCBydWxlID0gL14oXFwoXFwoKChbXildKSspXFwpXFwpKS87ICAvLyBSZWdleCBmb3IgdGhlIGNvbXBsZXRlIHRva2VuXG4gICAgICBjb25zdCBtYXRjaCA9IHJ1bGUuZXhlYyhzcmMpO1xuICAgICAgaWYgKG1hdGNoKSB7XG4gICAgICAgIGNvbnN0IHRva2VuID0ge1xuICAgICAgICAgIHR5cGU6ICdhdXAtcGlsbCcsICAgICAgICAgIC8vIFNob3VsZCBtYXRjaCBcIm5hbWVcIiBhYm92ZVxuICAgICAgICAgIHJhdzogbWF0Y2hbMF0sICAgICAgICAgLy8gVGV4dCB0byBjb25zdW1lIGZyb20gdGhlIHNvdXJjZVxuICAgICAgICAgIHRleHQ6IG1hdGNoWzJdLnRyaW0oKSwgLy8gQWRkaXRpb25hbCBjdXN0b20gcHJvcGVydGllc1xuICAgICAgICAgIC8vIHRva2VuczogW10gICAgICAgICAgICAgIC8vIEFycmF5IHdoZXJlIGNoaWxkIGlubGluZSB0b2tlbnMgd2lsbCBiZSBnZW5lcmF0ZWRcbiAgICAgICAgfTtcbiAgICAgICAgLy8gY29uc29sZS5sb2codG9rZW4pXG4gICAgICAgIC8vIHRoaXMubGV4ZXIuaW5saW5lVG9rZW5zKHRva2VuLnRleHQsIHRva2VuLnRva2Vucyk7ICAgIC8vIFF1ZXVlIHRoaXMgZGF0YSB0byBiZSBwcm9jZXNzZWQgZm9yIGlubGluZSB0b2tlbnNcbiAgICAgICAgcmV0dXJuIHRva2VuO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cbiAgICB9LFxuICAgIHJlbmRlcmVyOiBmdW5jdGlvbih0aGlzOiBSZW5kZXJlclRoaXMsIHRva2VuOiBUb2tlbnMuR2VuZXJpYykge1xuICAgICAgcmV0dXJuIHJlbmRlclBpbGwodG9rZW4udGV4dCk7XG4gICAgfVxuXG4gIH07XG59O1xuIl19
@@ -1,7 +1,7 @@
1
1
  // TODO: Merge various wake detection events into this class. visibility, wake events, websocket connection, online detection.
2
2
  import { DOCUMENT } from '@angular/common';
3
3
  import { Inject, Injectable } from '@angular/core';
4
- import { Dsl, GarbageCollector, MutableValueModel } from '@coolon/pectin';
4
+ import { GarbageCollector, MutableValueModel } from '@coolon/pectin';
5
5
  import * as i0 from "@angular/core";
6
6
  // Taken from: https://developer.mozilla.org/en-US/docs/Web/API/Page_Visibility_API
7
7
  export class VisibilityService extends GarbageCollector {
@@ -14,7 +14,7 @@ export class VisibilityService extends GarbageCollector {
14
14
  constructor(document) {
15
15
  super();
16
16
  this.document = document; // see https://stackoverflow.com/a/53715642
17
- const { chain } = Dsl.disposeWith(this);
17
+ // const { chain } = Dsl.disposeWith(this);
18
18
  // Set the name of the hidden property and the change event for visibility
19
19
  if (typeof this.document.hidden !== 'undefined') { // Opera 12.10 and Firefox 18 and later support
20
20
  this.attributeName = 'hidden';
@@ -75,8 +75,8 @@ export class VisibilityService extends GarbageCollector {
75
75
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: VisibilityService, decorators: [{
76
76
  type: Injectable,
77
77
  args: [{ providedIn: 'root' }]
78
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
78
+ }], ctorParameters: function () { return [{ type: Document, decorators: [{
79
79
  type: Inject,
80
80
  args: [DOCUMENT]
81
81
  }] }]; } });
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaWJpbGl0eS1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvc2VydmljZXMvdmlzaWJpbGl0eS1zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtIQUErSDtBQUcvSCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLEdBQUcsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBYyxNQUFNLGdCQUFnQixDQUFDOztBQUV0RixtRkFBbUY7QUFHbkYsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGdCQUFnQjtJQUVwQyxRQUFRLENBQVc7SUFDbkIsYUFBYSxDQUFTO0lBQ3RCLFNBQVMsQ0FBUztJQUUzQixTQUFTLEdBQUcsSUFBSSxpQkFBaUIsRUFBVyxDQUFDO0lBQ3JELHNEQUFzRDtJQUN0RCxpREFBaUQ7SUFFakQsWUFBOEIsUUFBYTtRQUN6QyxLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLENBQUMsMkNBQTJDO1FBRXJFLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxHQUFHLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXhDLDBFQUEwRTtRQUMxRSxJQUFJLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEtBQUssV0FBVyxFQUFFLEVBQUUsK0NBQStDO1lBQ2hHLElBQUksQ0FBQyxhQUFhLEdBQUcsUUFBUSxDQUFDO1lBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsa0JBQWtCLENBQUM7U0FDckM7YUFBTSxJQUFJLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsS0FBSyxXQUFXLEVBQUU7WUFDM0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxVQUFVLENBQUM7WUFDaEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxvQkFBb0IsQ0FBQztTQUN2QzthQUFNLElBQUksT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxLQUFLLFdBQVcsRUFBRTtZQUMvRCxJQUFJLENBQUMsYUFBYSxHQUFHLGNBQWMsQ0FBQztZQUNwQyxJQUFJLENBQUMsU0FBUyxHQUFHLHdCQUF3QixDQUFDO1NBQzNDO1FBRUQsa0ZBQWtGO1FBQ2xGLElBQUksT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixLQUFLLFdBQVcsSUFBSSxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssV0FBVyxFQUFFO1lBQ2hILE9BQU8sQ0FBQyxHQUFHLENBQUMsdUdBQXVHLENBQUMsQ0FBQztTQUN0SDthQUFNO1lBQ0wsZ0NBQWdDO1lBQ2hDLE1BQU0sT0FBTyxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1lBQ25ELElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDL0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUM3RCxDQUFDLENBQUMsQ0FBQztTQUVKO1FBRUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBRXhDLHVGQUF1RjtRQUN2Rix3RUFBd0U7UUFDeEUsdURBQXVEO1FBQ3ZELHFFQUFxRTtJQUV2RSxDQUFDO0lBRUQsc0NBQXNDO0lBQ3RDLHNDQUFzQztJQUN0QyxJQUFJO0lBRUosU0FBUztJQUNDLHFCQUFxQjtRQUM3QixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDeEMsMkNBQTJDO0lBQzdDLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUM7SUFDbEMsQ0FBQztJQUNELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUM7SUFDbEMsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDMUIsQ0FBQzt1R0E1RVUsaUJBQWlCLGtCQVVSLFFBQVE7MkdBVmpCLGlCQUFpQixjQURKLE1BQU07OzJGQUNuQixpQkFBaUI7a0JBRDdCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFXbkIsTUFBTTsyQkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiLy8gVE9ETzogTWVyZ2UgdmFyaW91cyB3YWtlIGRldGVjdGlvbiBldmVudHMgaW50byB0aGlzIGNsYXNzLiAgdmlzaWJpbGl0eSwgd2FrZSBldmVudHMsIHdlYnNvY2tldCBjb25uZWN0aW9uLCBvbmxpbmUgZGV0ZWN0aW9uLlxuXG5cbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRHNsLCBHYXJiYWdlQ29sbGVjdG9yLCBNdXRhYmxlVmFsdWVNb2RlbCwgVmFsdWVNb2RlbCB9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcblxuLy8gVGFrZW4gZnJvbTogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL1BhZ2VfVmlzaWJpbGl0eV9BUElcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBWaXNpYmlsaXR5U2VydmljZSBleHRlbmRzIEdhcmJhZ2VDb2xsZWN0b3Ige1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnQ6IERvY3VtZW50O1xuICBwcml2YXRlIHJlYWRvbmx5IGF0dHJpYnV0ZU5hbWU6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBldmVudE5hbWU6IHN0cmluZztcblxuICBwcml2YXRlIF92aXNpYmxlJCA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbDxib29sZWFuPigpO1xuICAvLyBwcml2YXRlIF93YWtlRXZlbnRzID0gbmV3IE11dGFibGVTdHJlYW08SW5zdGFudD4oKTtcbiAgLy8gcHJpdmF0ZSBfdGhyb3R0bGVkV2FrZUV2ZW50czogU3RyZWFtPEluc3RhbnQ+O1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoRE9DVU1FTlQpIGRvY3VtZW50OiBhbnkpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuZG9jdW1lbnQgPSBkb2N1bWVudDsgLy8gc2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS81MzcxNTY0MlxuXG4gICAgY29uc3QgeyBjaGFpbiB9ID0gRHNsLmRpc3Bvc2VXaXRoKHRoaXMpO1xuXG4gICAgLy8gU2V0IHRoZSBuYW1lIG9mIHRoZSBoaWRkZW4gcHJvcGVydHkgYW5kIHRoZSBjaGFuZ2UgZXZlbnQgZm9yIHZpc2liaWxpdHlcbiAgICBpZiAodHlwZW9mIHRoaXMuZG9jdW1lbnQuaGlkZGVuICE9PSAndW5kZWZpbmVkJykgeyAvLyBPcGVyYSAxMi4xMCBhbmQgRmlyZWZveCAxOCBhbmQgbGF0ZXIgc3VwcG9ydFxuICAgICAgdGhpcy5hdHRyaWJ1dGVOYW1lID0gJ2hpZGRlbic7XG4gICAgICB0aGlzLmV2ZW50TmFtZSA9ICd2aXNpYmlsaXR5Y2hhbmdlJztcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiB0aGlzLmRvY3VtZW50Wydtc0hpZGRlbiddICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhpcy5hdHRyaWJ1dGVOYW1lID0gJ21zSGlkZGVuJztcbiAgICAgIHRoaXMuZXZlbnROYW1lID0gJ21zdmlzaWJpbGl0eWNoYW5nZSc7XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgdGhpcy5kb2N1bWVudFsnd2Via2l0SGlkZGVuJ10gIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0aGlzLmF0dHJpYnV0ZU5hbWUgPSAnd2Via2l0SGlkZGVuJztcbiAgICAgIHRoaXMuZXZlbnROYW1lID0gJ3dlYmtpdHZpc2liaWxpdHljaGFuZ2UnO1xuICAgIH1cblxuICAgIC8vIFdhcm4gaWYgdGhlIGJyb3dzZXIgZG9lc24ndCBzdXBwb3J0IGFkZEV2ZW50TGlzdGVuZXIgb3IgdGhlIFBhZ2UgVmlzaWJpbGl0eSBBUElcbiAgICBpZiAodHlwZW9mIHRoaXMuZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lciA9PT0gJ3VuZGVmaW5lZCcgfHwgdHlwZW9mIGRvY3VtZW50W3RoaXMuYXR0cmlidXRlTmFtZV0gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICBjb25zb2xlLmxvZygnVGhpcyBhcHAgcmVxdWlyZXMgYSBicm93c2VyLCBzdWNoIGFzIEdvb2dsZSBDaHJvbWUgb3IgRmlyZWZveCwgdGhhdCBzdXBwb3J0cyB0aGUgUGFnZSBWaXNpYmlsaXR5IEFQSS4nKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gSGFuZGxlIHBhZ2UgdmlzaWJpbGl0eSBjaGFuZ2VcbiAgICAgIGNvbnN0IGhhbmRsZXIgPSAoKSA9PiB0aGlzLnVwZGF0ZVZpc2liaWxpdHlTdGF0ZSgpO1xuICAgICAgdGhpcy5kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKHRoaXMuZXZlbnROYW1lLCBoYW5kbGVyLCBmYWxzZSk7XG4gICAgICB0aGlzLm9uRGlzcG9zZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcih0aGlzLmV2ZW50TmFtZSwgaGFuZGxlcik7XG4gICAgICB9KTtcblxuICAgIH1cblxuICAgIHRoaXMuX3Zpc2libGUkLnZhbHVlID0gdGhpcy5pc1Zpc2libGUoKTtcblxuICAgIC8vIGdpdmUgdGhlIG5ldHdvcmsgYSBjaGFuY2UgdG8gY29tZSBiYWNrIG9yIHdlIGVuZCB1cCB3aXRoIGEgYnVuY2ggb2YgZmFpbGVkIHJlcXVlc3RzLlxuICAgIC8vIHNob3VsZCBwcm9iYWJseSBhbHNvIGltcGxlbWVudCBhIGNvbm5lY3Rpb24gc2VydmljZSBzbyB0aGF0IHdlIGNhbiBnb1xuICAgIC8vIGNvbm5lY3Rpb25TZXJ2ZXIuZW5zdXJlQ29ubmVjdGVkVGhlbihmaXJlV2FrZUV2ZW50KTtcbiAgICAvLyB0aGlzLl90aHJvdHRsZWRXYWtlRXZlbnRzID0gY2hhaW4odGhpcy5fd2FrZUV2ZW50cykudGhyb3R0bGUoMzAwKTtcblxuICB9XG5cbiAgLy8gZ2V0IHdha2VFdmVudHMoKTogU3RyZWFtPEluc3RhbnQ+IHtcbiAgLy8gICByZXR1cm4gdGhpcy5fdGhyb3R0bGVkV2FrZUV2ZW50cztcbiAgLy8gfVxuXG4gIC8vIEB0cmFjZVxuICBwcm90ZWN0ZWQgdXBkYXRlVmlzaWJpbGl0eVN0YXRlKCkge1xuICAgIHRoaXMuX3Zpc2libGUkLnZhbHVlID0gdGhpcy5pc1Zpc2libGUoKTtcbiAgICAvLyB0aGlzLl93YWtlRXZlbnRzLnB1Ymxpc2goSW5zdGFudC5ub3coKSk7XG4gIH1cblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgdXNlIHZpc2libGUkIGluc3RlYWQuXG4gICAqL1xuICBnZXQgdmlzaWJsZU1vZGVsKCk6IFZhbHVlTW9kZWw8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl92aXNpYmxlJC5yZWFkb25seSQ7XG4gIH1cbiAgZ2V0IHZpc2libGUkKCk6IFZhbHVlTW9kZWw8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl92aXNpYmxlJC5yZWFkb25seSQ7XG4gIH1cblxuICBpc0hpZGRlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmRvY3VtZW50W3RoaXMuYXR0cmlidXRlTmFtZV07XG4gIH1cblxuICBpc1Zpc2libGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmlzSGlkZGVuKCk7XG4gIH1cblxufVxuIl19
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaWJpbGl0eS1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvc2VydmljZXMvdmlzaWJpbGl0eS1zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtIQUErSDtBQUcvSCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFDLGdCQUFnQixFQUFFLGlCQUFpQixFQUFhLE1BQU0sZ0JBQWdCLENBQUM7O0FBRS9FLG1GQUFtRjtBQUduRixNQUFNLE9BQU8saUJBQWtCLFNBQVEsZ0JBQWdCO0lBRXBDLFFBQVEsQ0FBVztJQUNuQixhQUFhLENBQVM7SUFDdEIsU0FBUyxDQUFTO0lBRTNCLFNBQVMsR0FBRyxJQUFJLGlCQUFpQixFQUFXLENBQUM7SUFDckQsc0RBQXNEO0lBQ3RELGlEQUFpRDtJQUVqRCxZQUE4QixRQUFrQjtRQUM5QyxLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLENBQUMsMkNBQTJDO1FBRXJFLDJDQUEyQztRQUUzQywwRUFBMEU7UUFDMUUsSUFBSSxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxLQUFLLFdBQVcsRUFBRSxFQUFFLCtDQUErQztZQUNoRyxJQUFJLENBQUMsYUFBYSxHQUFHLFFBQVEsQ0FBQztZQUM5QixJQUFJLENBQUMsU0FBUyxHQUFHLGtCQUFrQixDQUFDO1NBQ3JDO2FBQU0sSUFBSSxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEtBQUssV0FBVyxFQUFFO1lBQzNELElBQUksQ0FBQyxhQUFhLEdBQUcsVUFBVSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsb0JBQW9CLENBQUM7U0FDdkM7YUFBTSxJQUFJLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsS0FBSyxXQUFXLEVBQUU7WUFDL0QsSUFBSSxDQUFDLGFBQWEsR0FBRyxjQUFjLENBQUM7WUFDcEMsSUFBSSxDQUFDLFNBQVMsR0FBRyx3QkFBd0IsQ0FBQztTQUMzQztRQUVELGtGQUFrRjtRQUNsRixJQUFJLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsS0FBSyxXQUFXLElBQUksT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLFdBQVcsRUFBRTtZQUNoSCxPQUFPLENBQUMsR0FBRyxDQUFDLHVHQUF1RyxDQUFDLENBQUM7U0FDdEg7YUFBTTtZQUNMLGdDQUFnQztZQUNoQyxNQUFNLE9BQU8sR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUNuRCxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQy9ELElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDN0QsQ0FBQyxDQUFDLENBQUM7U0FFSjtRQUVELElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUV4Qyx1RkFBdUY7UUFDdkYsd0VBQXdFO1FBQ3hFLHVEQUF1RDtRQUN2RCxxRUFBcUU7SUFFdkUsQ0FBQztJQUVELHNDQUFzQztJQUN0QyxzQ0FBc0M7SUFDdEMsSUFBSTtJQUVKLFNBQVM7SUFDQyxxQkFBcUI7UUFDN0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3hDLDJDQUEyQztJQUM3QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDO0lBQ2xDLENBQUM7SUFDRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELFNBQVM7UUFDUCxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzFCLENBQUM7dUdBNUVVLGlCQUFpQixrQkFVUixRQUFROzJHQVZqQixpQkFBaUIsY0FESixNQUFNOzsyRkFDbkIsaUJBQWlCO2tCQUQ3QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7MEJBV25CLE1BQU07MkJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbIi8vIFRPRE86IE1lcmdlIHZhcmlvdXMgd2FrZSBkZXRlY3Rpb24gZXZlbnRzIGludG8gdGhpcyBjbGFzcy4gIHZpc2liaWxpdHksIHdha2UgZXZlbnRzLCB3ZWJzb2NrZXQgY29ubmVjdGlvbiwgb25saW5lIGRldGVjdGlvbi5cblxuXG5pbXBvcnQge0RPQ1VNRU5UfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtJbmplY3QsIEluamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtHYXJiYWdlQ29sbGVjdG9yLCBNdXRhYmxlVmFsdWVNb2RlbCwgVmFsdWVNb2RlbH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuXG4vLyBUYWtlbiBmcm9tOiBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvUGFnZV9WaXNpYmlsaXR5X0FQSVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFZpc2liaWxpdHlTZXJ2aWNlIGV4dGVuZHMgR2FyYmFnZUNvbGxlY3RvciB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudDogRG9jdW1lbnQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgYXR0cmlidXRlTmFtZTogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IGV2ZW50TmFtZTogc3RyaW5nO1xuXG4gIHByaXZhdGUgX3Zpc2libGUkID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsPGJvb2xlYW4+KCk7XG4gIC8vIHByaXZhdGUgX3dha2VFdmVudHMgPSBuZXcgTXV0YWJsZVN0cmVhbTxJbnN0YW50PigpO1xuICAvLyBwcml2YXRlIF90aHJvdHRsZWRXYWtlRXZlbnRzOiBTdHJlYW08SW5zdGFudD47XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChET0NVTUVOVCkgZG9jdW1lbnQ6IERvY3VtZW50KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmRvY3VtZW50ID0gZG9jdW1lbnQ7IC8vIHNlZSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL2EvNTM3MTU2NDJcblxuICAgIC8vIGNvbnN0IHsgY2hhaW4gfSA9IERzbC5kaXNwb3NlV2l0aCh0aGlzKTtcblxuICAgIC8vIFNldCB0aGUgbmFtZSBvZiB0aGUgaGlkZGVuIHByb3BlcnR5IGFuZCB0aGUgY2hhbmdlIGV2ZW50IGZvciB2aXNpYmlsaXR5XG4gICAgaWYgKHR5cGVvZiB0aGlzLmRvY3VtZW50LmhpZGRlbiAhPT0gJ3VuZGVmaW5lZCcpIHsgLy8gT3BlcmEgMTIuMTAgYW5kIEZpcmVmb3ggMTggYW5kIGxhdGVyIHN1cHBvcnRcbiAgICAgIHRoaXMuYXR0cmlidXRlTmFtZSA9ICdoaWRkZW4nO1xuICAgICAgdGhpcy5ldmVudE5hbWUgPSAndmlzaWJpbGl0eWNoYW5nZSc7XG4gICAgfSBlbHNlIGlmICh0eXBlb2YgdGhpcy5kb2N1bWVudFsnbXNIaWRkZW4nXSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHRoaXMuYXR0cmlidXRlTmFtZSA9ICdtc0hpZGRlbic7XG4gICAgICB0aGlzLmV2ZW50TmFtZSA9ICdtc3Zpc2liaWxpdHljaGFuZ2UnO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHRoaXMuZG9jdW1lbnRbJ3dlYmtpdEhpZGRlbiddICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgdGhpcy5hdHRyaWJ1dGVOYW1lID0gJ3dlYmtpdEhpZGRlbic7XG4gICAgICB0aGlzLmV2ZW50TmFtZSA9ICd3ZWJraXR2aXNpYmlsaXR5Y2hhbmdlJztcbiAgICB9XG5cbiAgICAvLyBXYXJuIGlmIHRoZSBicm93c2VyIGRvZXNuJ3Qgc3VwcG9ydCBhZGRFdmVudExpc3RlbmVyIG9yIHRoZSBQYWdlIFZpc2liaWxpdHkgQVBJXG4gICAgaWYgKHR5cGVvZiB0aGlzLmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIgPT09ICd1bmRlZmluZWQnIHx8IHR5cGVvZiBkb2N1bWVudFt0aGlzLmF0dHJpYnV0ZU5hbWVdID09PSAndW5kZWZpbmVkJykge1xuICAgICAgY29uc29sZS5sb2coJ1RoaXMgYXBwIHJlcXVpcmVzIGEgYnJvd3Nlciwgc3VjaCBhcyBHb29nbGUgQ2hyb21lIG9yIEZpcmVmb3gsIHRoYXQgc3VwcG9ydHMgdGhlIFBhZ2UgVmlzaWJpbGl0eSBBUEkuJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEhhbmRsZSBwYWdlIHZpc2liaWxpdHkgY2hhbmdlXG4gICAgICBjb25zdCBoYW5kbGVyID0gKCkgPT4gdGhpcy51cGRhdGVWaXNpYmlsaXR5U3RhdGUoKTtcbiAgICAgIHRoaXMuZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcih0aGlzLmV2ZW50TmFtZSwgaGFuZGxlciwgZmFsc2UpO1xuICAgICAgdGhpcy5vbkRpc3Bvc2UoKCkgPT4ge1xuICAgICAgICB0aGlzLmRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIodGhpcy5ldmVudE5hbWUsIGhhbmRsZXIpO1xuICAgICAgfSk7XG5cbiAgICB9XG5cbiAgICB0aGlzLl92aXNpYmxlJC52YWx1ZSA9IHRoaXMuaXNWaXNpYmxlKCk7XG5cbiAgICAvLyBnaXZlIHRoZSBuZXR3b3JrIGEgY2hhbmNlIHRvIGNvbWUgYmFjayBvciB3ZSBlbmQgdXAgd2l0aCBhIGJ1bmNoIG9mIGZhaWxlZCByZXF1ZXN0cy5cbiAgICAvLyBzaG91bGQgcHJvYmFibHkgYWxzbyBpbXBsZW1lbnQgYSBjb25uZWN0aW9uIHNlcnZpY2Ugc28gdGhhdCB3ZSBjYW4gZ29cbiAgICAvLyBjb25uZWN0aW9uU2VydmVyLmVuc3VyZUNvbm5lY3RlZFRoZW4oZmlyZVdha2VFdmVudCk7XG4gICAgLy8gdGhpcy5fdGhyb3R0bGVkV2FrZUV2ZW50cyA9IGNoYWluKHRoaXMuX3dha2VFdmVudHMpLnRocm90dGxlKDMwMCk7XG5cbiAgfVxuXG4gIC8vIGdldCB3YWtlRXZlbnRzKCk6IFN0cmVhbTxJbnN0YW50PiB7XG4gIC8vICAgcmV0dXJuIHRoaXMuX3Rocm90dGxlZFdha2VFdmVudHM7XG4gIC8vIH1cblxuICAvLyBAdHJhY2VcbiAgcHJvdGVjdGVkIHVwZGF0ZVZpc2liaWxpdHlTdGF0ZSgpIHtcbiAgICB0aGlzLl92aXNpYmxlJC52YWx1ZSA9IHRoaXMuaXNWaXNpYmxlKCk7XG4gICAgLy8gdGhpcy5fd2FrZUV2ZW50cy5wdWJsaXNoKEluc3RhbnQubm93KCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIHVzZSB2aXNpYmxlJCBpbnN0ZWFkLlxuICAgKi9cbiAgZ2V0IHZpc2libGVNb2RlbCgpOiBWYWx1ZU1vZGVsPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZSQucmVhZG9ubHkkO1xuICB9XG4gIGdldCB2aXNpYmxlJCgpOiBWYWx1ZU1vZGVsPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZSQucmVhZG9ubHkkO1xuICB9XG5cbiAgaXNIaWRkZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5kb2N1bWVudFt0aGlzLmF0dHJpYnV0ZU5hbWVdO1xuICB9XG5cbiAgaXNWaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5pc0hpZGRlbigpO1xuICB9XG5cbn1cbiJdfQ==