@provoly/dashboard 1.4.13 → 1.4.15

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 (226) hide show
  1. package/esm2022/admin/components/admin-abac-rules/admin-abac-rules-form/admin-abac-rules-form.component.mjs +7 -7
  2. package/esm2022/admin/components/admin-abac-rules/admin-abac-rules.component.mjs +3 -3
  3. package/esm2022/admin/components/admin-abac-rules/components/attribute-condition/attribute-condition.component.mjs +7 -7
  4. package/esm2022/admin/components/admin-abac-rules/components/composed-condition/composed-condition.component.mjs +10 -10
  5. package/esm2022/admin/components/admin-abac-rules/components/metadata-condition/metadata-condition.component.mjs +6 -6
  6. package/esm2022/admin/components/admin-abac-rules/components/select-attribute/select-attribute.component.mjs +3 -3
  7. package/esm2022/admin/components/admin-abac-rules/components/select-metadata/select-metadata.component.mjs +3 -3
  8. package/esm2022/admin/components/admin-classes/admin-classes-customize/admin-classes-customize.component.mjs +10 -10
  9. package/esm2022/admin/components/admin-classes/admin-classes-customize/symbol/admin-classes-customize-symbol.component.mjs +10 -15
  10. package/esm2022/admin/components/admin-classes/admin-classes-customize/tooltip/admin-classes-customize-tooltip.component.mjs +8 -8
  11. package/esm2022/admin/components/admin-classes/admin-classes-edit/admin-classes-edit.component.mjs +5 -5
  12. package/esm2022/admin/components/admin-classes/admin-classes-form/admin-classes-form.component.mjs +5 -5
  13. package/esm2022/admin/components/admin-classes/admin-classes-select/admin-classes-select.component.mjs +6 -6
  14. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-edit/admin-attributes-edit.component.mjs +5 -5
  15. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-form/admin-attributes-form.component.mjs +3 -3
  16. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-new/admin-attributes-new.component.mjs +5 -5
  17. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-attributes-select/admin-attributes-select.component.mjs +6 -6
  18. package/esm2022/admin/components/admin-classes/admin-classes-view/admin-classes-view.component.mjs +3 -3
  19. package/esm2022/admin/components/admin-classes/admin-classes.component.mjs +5 -5
  20. package/esm2022/admin/components/admin-dataset/admin-dataset.component.mjs +6 -6
  21. package/esm2022/admin/components/admin-dataset/admin-select-dataset/admin-select-dataset.component.mjs +7 -7
  22. package/esm2022/admin/components/admin-environment/admin-environment-form/admin-environment-form.component.mjs +3 -3
  23. package/esm2022/admin/components/admin-environment/admin-environment-select/admin-environment-select.component.mjs +5 -5
  24. package/esm2022/admin/components/admin-environment/admin-environment-update/admin-environment-update.component.mjs +5 -5
  25. package/esm2022/admin/components/admin-environment/admin-environment.component.mjs +5 -5
  26. package/esm2022/admin/components/admin-fields/admin-fields-edit/admin-fields-edit.component.mjs +5 -5
  27. package/esm2022/admin/components/admin-fields/admin-fields-select/admin-fields-select.component.mjs +3 -3
  28. package/esm2022/admin/components/admin-layout/admin-layout.component.mjs +3 -3
  29. package/esm2022/admin/components/admin-links/admin-links-new/admin-links-new.component.mjs +5 -5
  30. package/esm2022/admin/components/admin-links/admin-links.component.mjs +5 -5
  31. package/esm2022/admin/components/admin-menu/admin-menu.component.mjs +5 -5
  32. package/esm2022/admin/components/admin-metadata/admin-edit-metadata/admin-edit-metadata.component.mjs +5 -5
  33. package/esm2022/admin/components/admin-metadata/admin-select-metadata/admin-select-metadata.component.mjs +5 -5
  34. package/esm2022/admin/components/admin-metadata/shared/form-metadata/form-metadata.component.mjs +4 -5
  35. package/esm2022/admin/components/admin-metadata/shared/list-metadata/pry-list-metadata.component.mjs +5 -6
  36. package/esm2022/admin/components/admin-metadata-rules/admin-metadata-rules.component.mjs +5 -5
  37. package/esm2022/admin/components/admin-metadata-rules/admin-select-metadata-rules/admin-select-metadata-rules.component.mjs +5 -5
  38. package/esm2022/admin/components/admin-metadata-rules/shared/admin-form-metadata-rules/admin-form-metadata-rules.component.mjs +4 -5
  39. package/esm2022/admin/components/admin-metadata-user/admin-user-edit-metadata/admin-user-edit-metadata.component.mjs +5 -5
  40. package/esm2022/admin/components/admin-metadata-user/admin-user-select-metadata/admin-user-select-metadata.component.mjs +5 -5
  41. package/esm2022/admin/components/admin-predicates/admin-predicates-form/admin-predicates-form.component.mjs +5 -5
  42. package/esm2022/admin/components/admin-predicates/admin-predicates-select/admin-predicates-select.component.mjs +5 -5
  43. package/esm2022/admin/components/admin-predicates/admin-predicates-update/admin-predicates-update.component.mjs +5 -5
  44. package/esm2022/admin/components/admin-predicates/admin-predicates.component.mjs +5 -5
  45. package/esm2022/admin/components/admin-relation-types/admin-relation-types-modal/admin-relation-types-modal.component.mjs +4 -5
  46. package/esm2022/admin/components/admin-relation-types/admin-relation-types-select/admin-relation-types-select.component.mjs +5 -5
  47. package/esm2022/admin/components/admin-relation-types/admin-relation-types.component.mjs +6 -6
  48. package/esm2022/admin/components/admin-user/admin-user-select/admin-user-select.component.mjs +6 -6
  49. package/esm2022/admin/components/admin-user/admin-user.component.mjs +5 -5
  50. package/esm2022/admin/components/association/association.component.mjs +4 -5
  51. package/esm2022/components/card/card.component.mjs +5 -6
  52. package/esm2022/components/metadata-editor/metadata-editor.component.mjs +6 -6
  53. package/esm2022/components/scheme-picker/scheme-picker.component.mjs +7 -7
  54. package/esm2022/components/stepper/stepper.component.mjs +3 -4
  55. package/esm2022/dataset/components/dataset-detail/dataset-detail.component.mjs +5 -5
  56. package/esm2022/dataset/components/dataset-version-form/dataset-version-form.component.mjs +6 -7
  57. package/esm2022/filters/date/date-filter.component.mjs +5 -6
  58. package/esm2022/filters/list/list-filter.component.mjs +6 -7
  59. package/esm2022/filters/number/number-filter.component.mjs +5 -6
  60. package/esm2022/filters/text/text-filter.component.mjs +5 -6
  61. package/esm2022/lib/core/components/about/about.component.mjs +3 -3
  62. package/esm2022/lib/core/components/accordion/accordion-item/accordion-item.component.mjs +7 -7
  63. package/esm2022/lib/core/components/base-menu/base-menu.component.mjs +6 -6
  64. package/esm2022/lib/core/components/base-toolbox/base-toolbox.component.mjs +6 -6
  65. package/esm2022/lib/core/components/base-toolbox-action/base-toolbox-action.component.mjs +6 -7
  66. package/esm2022/lib/core/components/date-picker/date-picker.component.mjs +4 -4
  67. package/esm2022/lib/core/components/date-picker/time-picker/loop-scroll-column/loop-scroll-column.component.mjs +3 -4
  68. package/esm2022/lib/core/components/date-picker/time-picker/time-picker.component.mjs +6 -6
  69. package/esm2022/lib/core/components/edit-input/edit-input.component.mjs +7 -8
  70. package/esm2022/lib/core/components/icon/icon.component.mjs +3 -3
  71. package/esm2022/lib/core/components/modal/modal.component.mjs +5 -6
  72. package/esm2022/lib/core/components/nq-color-selector/nq-color-selector.component.mjs +5 -5
  73. package/esm2022/lib/core/components/overlay/dialog-confirm.component.mjs +3 -3
  74. package/esm2022/lib/core/components/range/range.component.mjs +5 -6
  75. package/esm2022/lib/core/components/select/select.component.mjs +3 -3
  76. package/esm2022/lib/core/components/select-image/select-image.component.mjs +5 -5
  77. package/esm2022/lib/core/components/share/group-share/group-share.component.mjs +6 -6
  78. package/esm2022/lib/core/components/snackbar/snackbar/snackbar.component.mjs +3 -3
  79. package/esm2022/lib/core/components/status-modal/status-modal.component.mjs +5 -5
  80. package/esm2022/lib/core/components/tabs/tab-group.component.mjs +3 -3
  81. package/esm2022/lib/core/components/toggle/toggle.component.mjs +4 -4
  82. package/esm2022/lib/core/model/result-set.interface.mjs +1 -1
  83. package/esm2022/lib/core/model/search-mono-class.model.mjs +1 -1
  84. package/esm2022/lib/core/store/data-source/data-source.effects.mjs +9 -9
  85. package/esm2022/lib/core/store/relation-types/relation-types.actions.mjs +2 -1
  86. package/esm2022/lib/core/store/relation-types/relation-types.effects.mjs +2 -1
  87. package/esm2022/lib/core/store/relation-types/relation-types.service.mjs +5 -1
  88. package/esm2022/lib/core/store/search/search.actions.mjs +1 -1
  89. package/esm2022/lib/core/store/search/search.effects.mjs +5 -3
  90. package/esm2022/lib/core/store/search/search.service.mjs +19 -13
  91. package/esm2022/lib/core/toolbox/toolbox-manifest.service.mjs +3 -3
  92. package/esm2022/lib/dashboard/action-bus/service/bus.service.mjs +2 -2
  93. package/esm2022/lib/dashboard/components/context-menu/context-menu.component.mjs +8 -8
  94. package/esm2022/lib/dashboard/components/dashboard.component.mjs +12 -12
  95. package/esm2022/lib/dashboard/components/manifests/manifests.component.mjs +5 -5
  96. package/esm2022/lib/dashboard/components/metadata/metadata.component.mjs +5 -6
  97. package/esm2022/lib/dashboard/components/vizualize-raw/vizualize-raw.component.mjs +3 -3
  98. package/esm2022/lib/dashboard/components/widgets/datasource-selector/datasource-selector.component.mjs +6 -6
  99. package/esm2022/lib/dashboard/components/widgets/header/widget-header.component.mjs +10 -10
  100. package/esm2022/lib/dashboard/components/widgets/widget-filler/widget-filler.component.mjs +2 -2
  101. package/esm2022/lib/dashboard/components/widgets/widget-placement/widget-placement.utils.mjs +2 -2
  102. package/esm2022/lib/dashboard/filter/components/filter-group/filter-group.component.mjs +7 -7
  103. package/esm2022/lib/dashboard/resultset-utils.mjs +7 -8
  104. package/esm2022/lib/dashboard/store/dashboard.actions.mjs +2 -1
  105. package/esm2022/lib/dashboard/store/dashboard.effects.mjs +3 -3
  106. package/esm2022/lib/dashboard/store/dashboard.reducers.mjs +31 -23
  107. package/esm2022/lib/dashboard/tooltip/components/default/default.tooltip.component.mjs +3 -3
  108. package/esm2022/notification/components/notification/content/notification-content.component.mjs +3 -3
  109. package/esm2022/notification/components/notification/notification.component.mjs +5 -5
  110. package/esm2022/pipeline/components/pipeline-details/pipeline-details.component.mjs +7 -7
  111. package/esm2022/pipeline/components/pipeline-editor/graph-serializer.utils.mjs +2 -2
  112. package/esm2022/pipeline/components/pipeline-editor/pipeline-editor.component.mjs +5 -5
  113. package/esm2022/pipeline/components/pipeline-list/pipeline-list.component.mjs +9 -9
  114. package/esm2022/presentation/components/add-edit-presentation/add-edit-presentation.component.mjs +6 -6
  115. package/esm2022/presentation/components/presentation.component.mjs +6 -6
  116. package/esm2022/presentation/components/title-presentation/title-presentation.component.mjs +5 -5
  117. package/esm2022/restitution/components/restitution/restitution.component.mjs +3 -3
  118. package/esm2022/restitution/components/restitution-catalog/restitution-catalog.component.mjs +9 -9
  119. package/esm2022/restitution/components/restitution-list-item/restitution-list-item.component.mjs +3 -3
  120. package/esm2022/search/components/choose-widget/choose-widget.component.mjs +5 -5
  121. package/esm2022/search/components/edit-named-query/edit-named-query.component.mjs +9 -9
  122. package/esm2022/search/search-fulltext/search-fulltext/search-fulltext.component.mjs +3 -3
  123. package/esm2022/search/search-home/search-home.component.mjs +3 -3
  124. package/esm2022/search/search-mono-class/components/search-composed/search-composed.component.mjs +3 -3
  125. package/esm2022/search/search-mono-class/components/search-condition/search-condition.component.mjs +3 -3
  126. package/esm2022/search/search-mono-class/components/search-mono-class/search-mono-class.component.mjs +8 -8
  127. package/esm2022/search/search-mono-class/components/search-order/search-order.component.mjs +6 -6
  128. package/esm2022/search/search-mono-class/components/search-select-attribute/search-select-attribute.component.mjs +3 -3
  129. package/esm2022/search/search-mono-class/store/search-mono-class.service.mjs +4 -4
  130. package/esm2022/search/search-multi-class/components/multi-class-condition/multi-class-condition.component.mjs +7 -7
  131. package/esm2022/search/search-multi-class/components/multi-class-field-selection/multi-class-field-selection.component.mjs +6 -6
  132. package/esm2022/search/search-multi-class/components/search-multi-class/search-multi-class.component.mjs +7 -7
  133. package/esm2022/search/search-tools/search-tools.component.mjs +13 -13
  134. package/esm2022/toolbox/components/named-query/named-query.component.mjs +5 -5
  135. package/esm2022/toolbox/components/save-view/save-view.component.mjs +10 -10
  136. package/esm2022/toolbox/components/select-grid-layout/select-grid-layout.component.mjs +8 -8
  137. package/esm2022/toolbox/shared/presentation-form/presentation-form.component.mjs +9 -6
  138. package/esm2022/tooltips/attribute/attribute-tooltip.component.mjs +3 -3
  139. package/esm2022/widgets/widget-aggregated-chart/component/widget-aggregated-chart.component.mjs +4 -4
  140. package/esm2022/widgets/widget-analytic/component/widget-analytic.component.mjs +2 -2
  141. package/esm2022/widgets/widget-chart/component/widget-chart.component.mjs +12 -12
  142. package/esm2022/widgets/widget-detail/component/widget-detail.component.mjs +13 -7
  143. package/esm2022/widgets/widget-graph/component/widget-graph.component.mjs +7 -7
  144. package/esm2022/widgets/widget-iframe/component/widget-iframe.component.mjs +7 -7
  145. package/esm2022/widgets/widget-iframe/messaging/iframe-messaging.service.mjs +2 -2
  146. package/esm2022/widgets/widget-map/component/widget-map.component.mjs +10 -10
  147. package/esm2022/widgets/widget-map/utils/widget-map.utils.mjs +2 -2
  148. package/esm2022/widgets/widget-table/component/widget-table.component.mjs +2 -2
  149. package/esm2022/widgets/widget-table/expand-value/expand-value.component.mjs +4 -5
  150. package/esm2022/widgets/widget-template/component/widget-template.component.mjs +7 -7
  151. package/esm2022/widgets/widget-tile/component/widget-tile.component.mjs +10 -10
  152. package/esm2022/widgets/widget-vega/component/widget-vega.component.mjs +9 -9
  153. package/fesm2022/provoly-dashboard-admin.mjs +171 -175
  154. package/fesm2022/provoly-dashboard-admin.mjs.map +1 -1
  155. package/fesm2022/provoly-dashboard-components-card.mjs +4 -5
  156. package/fesm2022/provoly-dashboard-components-card.mjs.map +1 -1
  157. package/fesm2022/provoly-dashboard-components-metadata-editor.mjs +4 -4
  158. package/fesm2022/provoly-dashboard-components-metadata-editor.mjs.map +1 -1
  159. package/fesm2022/provoly-dashboard-components-scheme-picker.mjs +6 -6
  160. package/fesm2022/provoly-dashboard-components-scheme-picker.mjs.map +1 -1
  161. package/fesm2022/provoly-dashboard-components-stepper.mjs +2 -3
  162. package/fesm2022/provoly-dashboard-components-stepper.mjs.map +1 -1
  163. package/fesm2022/provoly-dashboard-dataset.mjs +14 -14
  164. package/fesm2022/provoly-dashboard-dataset.mjs.map +1 -1
  165. package/fesm2022/provoly-dashboard-filters-date.mjs +4 -5
  166. package/fesm2022/provoly-dashboard-filters-date.mjs.map +1 -1
  167. package/fesm2022/provoly-dashboard-filters-list.mjs +4 -5
  168. package/fesm2022/provoly-dashboard-filters-list.mjs.map +1 -1
  169. package/fesm2022/provoly-dashboard-filters-number.mjs +4 -5
  170. package/fesm2022/provoly-dashboard-filters-number.mjs.map +1 -1
  171. package/fesm2022/provoly-dashboard-filters-text.mjs +4 -5
  172. package/fesm2022/provoly-dashboard-filters-text.mjs.map +1 -1
  173. package/fesm2022/provoly-dashboard-notification.mjs +4 -4
  174. package/fesm2022/provoly-dashboard-notification.mjs.map +1 -1
  175. package/fesm2022/provoly-dashboard-pipeline.mjs +21 -21
  176. package/fesm2022/provoly-dashboard-pipeline.mjs.map +1 -1
  177. package/fesm2022/provoly-dashboard-presentation.mjs +14 -14
  178. package/fesm2022/provoly-dashboard-presentation.mjs.map +1 -1
  179. package/fesm2022/provoly-dashboard-restitution.mjs +6 -6
  180. package/fesm2022/provoly-dashboard-restitution.mjs.map +1 -1
  181. package/fesm2022/provoly-dashboard-search.mjs +38 -38
  182. package/fesm2022/provoly-dashboard-search.mjs.map +1 -1
  183. package/fesm2022/provoly-dashboard-toolbox.mjs +29 -25
  184. package/fesm2022/provoly-dashboard-toolbox.mjs.map +1 -1
  185. package/fesm2022/provoly-dashboard-tooltips-attribute.mjs +2 -2
  186. package/fesm2022/provoly-dashboard-tooltips-attribute.mjs.map +1 -1
  187. package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs +3 -3
  188. package/fesm2022/provoly-dashboard-widgets-widget-aggregated-chart.mjs.map +1 -1
  189. package/fesm2022/provoly-dashboard-widgets-widget-analytic.mjs +1 -1
  190. package/fesm2022/provoly-dashboard-widgets-widget-analytic.mjs.map +1 -1
  191. package/fesm2022/provoly-dashboard-widgets-widget-chart.mjs +10 -10
  192. package/fesm2022/provoly-dashboard-widgets-widget-chart.mjs.map +1 -1
  193. package/fesm2022/provoly-dashboard-widgets-widget-detail.mjs +11 -5
  194. package/fesm2022/provoly-dashboard-widgets-widget-detail.mjs.map +1 -1
  195. package/fesm2022/provoly-dashboard-widgets-widget-graph.mjs +5 -5
  196. package/fesm2022/provoly-dashboard-widgets-widget-graph.mjs.map +1 -1
  197. package/fesm2022/provoly-dashboard-widgets-widget-iframe.mjs +8 -8
  198. package/fesm2022/provoly-dashboard-widgets-widget-iframe.mjs.map +1 -1
  199. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs +9 -9
  200. package/fesm2022/provoly-dashboard-widgets-widget-map.mjs.map +1 -1
  201. package/fesm2022/provoly-dashboard-widgets-widget-table.mjs +6 -6
  202. package/fesm2022/provoly-dashboard-widgets-widget-table.mjs.map +1 -1
  203. package/fesm2022/provoly-dashboard-widgets-widget-template.mjs +7 -7
  204. package/fesm2022/provoly-dashboard-widgets-widget-template.mjs.map +1 -1
  205. package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs +11 -11
  206. package/fesm2022/provoly-dashboard-widgets-widget-tile.mjs.map +1 -1
  207. package/fesm2022/provoly-dashboard-widgets-widget-vega.mjs +7 -7
  208. package/fesm2022/provoly-dashboard-widgets-widget-vega.mjs.map +1 -1
  209. package/fesm2022/provoly-dashboard.mjs +245 -224
  210. package/fesm2022/provoly-dashboard.mjs.map +1 -1
  211. package/lib/core/model/result-set.interface.d.ts +6 -0
  212. package/lib/core/model/search-mono-class.model.d.ts +9 -2
  213. package/lib/core/store/relation-types/relation-types.actions.d.ts +9 -0
  214. package/lib/core/store/relation-types/relation-types.effects.d.ts +5 -0
  215. package/lib/core/store/relation-types/relation-types.service.d.ts +1 -0
  216. package/lib/core/store/search/search.actions.d.ts +4 -0
  217. package/lib/core/store/search/search.effects.d.ts +1 -0
  218. package/lib/core/store/search/search.service.d.ts +2 -2
  219. package/lib/dashboard/store/dashboard.actions.d.ts +5 -0
  220. package/lib/dashboard/store/dashboard.effects.d.ts +2 -0
  221. package/package.json +37 -37
  222. package/search/search-fulltext/store/search-fulltext.effects.d.ts +1 -0
  223. package/search/search-mono-class/store/search-mono-class.effects.d.ts +1 -0
  224. package/search/search-mono-class/store/search-mono-class.service.d.ts +1 -1
  225. package/search/search-multi-class/store/search-multi-class.effects.d.ts +1 -0
  226. package/toolbox/shared/presentation-form/presentation-form.component.d.ts +1 -0
@@ -34,6 +34,10 @@ export class RelationTypesService {
34
34
  }
35
35
  return this.store.select(ConfigSelectors.dataUrl).pipe(mergeMap((url) => this.httpClient.post(`${url}/relations`, relations)), map(() => relations));
36
36
  }
37
+ deleteRelation(source, destination, relationType) {
38
+ const relation = { source, destination, relationType };
39
+ return this.store.select(ConfigSelectors.dataUrl).pipe(mergeMap((url) => this.httpClient.delete(`${url}/relations`, { body: relation })), map(() => relation));
40
+ }
37
41
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RelationTypesService, deps: [{ token: i1.Store }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
38
42
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RelationTypesService, providedIn: 'root' }); }
39
43
  }
@@ -43,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
43
47
  providedIn: 'root'
44
48
  }]
45
49
  }], ctorParameters: () => [{ type: i1.Store }, { type: i2.HttpClient }] });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXRpb24tdHlwZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2xpYi9jb3JlL3N0b3JlL3JlbGF0aW9uLXR5cGVzL3JlbGF0aW9uLXR5cGVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUVqRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7QUFNN0QsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixZQUNVLEtBQVksRUFDWixVQUFzQjtRQUR0QixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQ1osZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUM3QixDQUFDO0lBRUosZUFBZSxDQUFDLEVBQVUsRUFBRSxJQUFZO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLEtBQUs7YUFDZCxNQUFNLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQzthQUM5QixJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBTyxHQUFHLEdBQUcsaUJBQWlCLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxRyxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSzthQUNkLE1BQU0sQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDO2FBQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFpQixHQUFHLEdBQUcsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVELGtCQUFrQixDQUFDLEVBQVU7UUFDM0IsT0FBTyxJQUFJLENBQUMsS0FBSzthQUNkLE1BQU0sQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDO2FBQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFPLEdBQUcsR0FBRyxzQkFBc0IsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUVELGNBQWMsQ0FDWixPQUFpQixFQUNqQixXQUFtQixFQUNuQixZQUFvQixFQUNwQixTQUFrQjtRQUVsQixJQUFJLFNBQVMsR0FBUSxFQUFFLENBQUM7UUFDeEIsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNkLFNBQVMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNwRyxDQUFDO2FBQU0sQ0FBQztZQUNOLFNBQVMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDL0UsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDcEQsUUFBUSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBTyxHQUFHLEdBQUcsWUFBWSxFQUFFLFNBQVMsQ0FBQyxDQUFDLEVBQzVFLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FDckIsQ0FBQztJQUNKLENBQUM7OEdBeENVLG9CQUFvQjtrSEFBcEIsb0JBQW9CLGNBRm5CLE1BQU07OzJGQUVQLG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBtYXAsIG1lcmdlTWFwLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBSZWxhdGlvbiB9IGZyb20gJy4uLy4uL21vZGVsL3JlbGF0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDb25maWdTZWxlY3RvcnMgfSBmcm9tICcuLi9jb25maWcvY29uZmlnLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBSZWxhdGlvblR5cGUgfSBmcm9tICcuL3JlbGF0aW9uLXR5cGVzLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFJlbGF0aW9uVHlwZXNTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmUsXG4gICAgcHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50XG4gICkge31cblxuICBhZGRSZWxhdGlvblR5cGUoaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmVcbiAgICAgIC5zZWxlY3QoQ29uZmlnU2VsZWN0b3JzLnJlZlVybClcbiAgICAgIC5waXBlKG1lcmdlTWFwKCh1cmwpID0+IHRoaXMuaHR0cENsaWVudC5wb3N0PHZvaWQ+KGAke3VybH0vcmVsYXRpb24tdHlwZXNgLCB7IGlkOiBpZCwgbmFtZTogbmFtZSB9KSkpO1xuICB9XG5cbiAgZ2V0UmVsYXRpb25zVHlwZXMoKTogT2JzZXJ2YWJsZTxSZWxhdGlvblR5cGVbXT4ge1xuICAgIHJldHVybiB0aGlzLnN0b3JlXG4gICAgICAuc2VsZWN0KENvbmZpZ1NlbGVjdG9ycy5yZWZVcmwpXG4gICAgICAucGlwZShtZXJnZU1hcCgodXJsKSA9PiB0aGlzLmh0dHBDbGllbnQuZ2V0PFJlbGF0aW9uVHlwZVtdPihgJHt1cmx9L3JlbGF0aW9uLXR5cGVzYCkpKTtcbiAgfVxuXG4gIGRlbGV0ZVJlbGF0aW9uVHlwZShpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmVcbiAgICAgIC5zZWxlY3QoQ29uZmlnU2VsZWN0b3JzLnJlZlVybClcbiAgICAgIC5waXBlKG1lcmdlTWFwKCh1cmwpID0+IHRoaXMuaHR0cENsaWVudC5kZWxldGU8dm9pZD4oYCR7dXJsfS9yZWxhdGlvbi10eXBlcy9pZC8ke2lkfWApKSk7XG4gIH1cblxuICBjcmVhdGVSZWxhdGlvbihcbiAgICBzb3VyY2VzOiBzdHJpbmdbXSxcbiAgICBkZXN0aW5hdGlvbjogc3RyaW5nLFxuICAgIHJlbGF0aW9uVHlwZTogc3RyaW5nLFxuICAgIGludmVyc2lvbjogYm9vbGVhblxuICApOiBPYnNlcnZhYmxlPFJlbGF0aW9uW10+IHtcbiAgICBsZXQgcmVsYXRpb25zOiBhbnkgPSBbXTtcbiAgICBpZiAoaW52ZXJzaW9uKSB7XG4gICAgICByZWxhdGlvbnMgPSBzb3VyY2VzLm1hcCgoc291cmNlKSA9PiAoeyBzb3VyY2U6IGRlc3RpbmF0aW9uLCBkZXN0aW5hdGlvbjogc291cmNlLCByZWxhdGlvblR5cGUgfSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZWxhdGlvbnMgPSBzb3VyY2VzLm1hcCgoc291cmNlKSA9PiAoeyBkZXN0aW5hdGlvbiwgc291cmNlLCByZWxhdGlvblR5cGUgfSkpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zdG9yZS5zZWxlY3QoQ29uZmlnU2VsZWN0b3JzLmRhdGFVcmwpLnBpcGUoXG4gICAgICBtZXJnZU1hcCgodXJsKSA9PiB0aGlzLmh0dHBDbGllbnQucG9zdDx2b2lkPihgJHt1cmx9L3JlbGF0aW9uc2AsIHJlbGF0aW9ucykpLFxuICAgICAgbWFwKCgpID0+IHJlbGF0aW9ucylcbiAgICApO1xuICB9XG59XG4iXX0=
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXRpb24tdHlwZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Byb3ZvbHkvZGFzaGJvYXJkL2xpYi9jb3JlL3N0b3JlL3JlbGF0aW9uLXR5cGVzL3JlbGF0aW9uLXR5cGVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUVqRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7QUFNN0QsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixZQUNVLEtBQVksRUFDWixVQUFzQjtRQUR0QixVQUFLLEdBQUwsS0FBSyxDQUFPO1FBQ1osZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUM3QixDQUFDO0lBRUosZUFBZSxDQUFDLEVBQVUsRUFBRSxJQUFZO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLEtBQUs7YUFDZCxNQUFNLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQzthQUM5QixJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBTyxHQUFHLEdBQUcsaUJBQWlCLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxRyxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSzthQUNkLE1BQU0sQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDO2FBQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFpQixHQUFHLEdBQUcsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0YsQ0FBQztJQUVELGtCQUFrQixDQUFDLEVBQVU7UUFDM0IsT0FBTyxJQUFJLENBQUMsS0FBSzthQUNkLE1BQU0sQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDO2FBQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFPLEdBQUcsR0FBRyxzQkFBc0IsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUVELGNBQWMsQ0FDWixPQUFpQixFQUNqQixXQUFtQixFQUNuQixZQUFvQixFQUNwQixTQUFrQjtRQUVsQixJQUFJLFNBQVMsR0FBUSxFQUFFLENBQUM7UUFDeEIsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNkLFNBQVMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNwRyxDQUFDO2FBQU0sQ0FBQztZQUNOLFNBQVMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDL0UsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDcEQsUUFBUSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBTyxHQUFHLEdBQUcsWUFBWSxFQUFFLFNBQVMsQ0FBQyxDQUFDLEVBQzVFLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FDckIsQ0FBQztJQUNKLENBQUM7SUFFRCxjQUFjLENBQUMsTUFBYyxFQUFFLFdBQW1CLEVBQUUsWUFBb0I7UUFDdEUsTUFBTSxRQUFRLEdBQUcsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxDQUFDO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDcEQsUUFBUSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBTyxHQUFHLEdBQUcsWUFBWSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFDdkYsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUNwQixDQUFDO0lBQ0osQ0FBQzs4R0FoRFUsb0JBQW9CO2tIQUFwQixvQkFBb0IsY0FGbkIsTUFBTTs7MkZBRVAsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IG1hcCwgbWVyZ2VNYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFJlbGF0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWwvcmVsYXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IENvbmZpZ1NlbGVjdG9ycyB9IGZyb20gJy4uL2NvbmZpZy9jb25maWcuc2VsZWN0b3JzJztcbmltcG9ydCB7IFJlbGF0aW9uVHlwZSB9IGZyb20gJy4vcmVsYXRpb24tdHlwZXMuaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgUmVsYXRpb25UeXBlc1NlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZSxcbiAgICBwcml2YXRlIGh0dHBDbGllbnQ6IEh0dHBDbGllbnRcbiAgKSB7fVxuXG4gIGFkZFJlbGF0aW9uVHlwZShpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZVxuICAgICAgLnNlbGVjdChDb25maWdTZWxlY3RvcnMucmVmVXJsKVxuICAgICAgLnBpcGUobWVyZ2VNYXAoKHVybCkgPT4gdGhpcy5odHRwQ2xpZW50LnBvc3Q8dm9pZD4oYCR7dXJsfS9yZWxhdGlvbi10eXBlc2AsIHsgaWQ6IGlkLCBuYW1lOiBuYW1lIH0pKSk7XG4gIH1cblxuICBnZXRSZWxhdGlvbnNUeXBlcygpOiBPYnNlcnZhYmxlPFJlbGF0aW9uVHlwZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmVcbiAgICAgIC5zZWxlY3QoQ29uZmlnU2VsZWN0b3JzLnJlZlVybClcbiAgICAgIC5waXBlKG1lcmdlTWFwKCh1cmwpID0+IHRoaXMuaHR0cENsaWVudC5nZXQ8UmVsYXRpb25UeXBlW10+KGAke3VybH0vcmVsYXRpb24tdHlwZXNgKSkpO1xuICB9XG5cbiAgZGVsZXRlUmVsYXRpb25UeXBlKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5zdG9yZVxuICAgICAgLnNlbGVjdChDb25maWdTZWxlY3RvcnMucmVmVXJsKVxuICAgICAgLnBpcGUobWVyZ2VNYXAoKHVybCkgPT4gdGhpcy5odHRwQ2xpZW50LmRlbGV0ZTx2b2lkPihgJHt1cmx9L3JlbGF0aW9uLXR5cGVzL2lkLyR7aWR9YCkpKTtcbiAgfVxuXG4gIGNyZWF0ZVJlbGF0aW9uKFxuICAgIHNvdXJjZXM6IHN0cmluZ1tdLFxuICAgIGRlc3RpbmF0aW9uOiBzdHJpbmcsXG4gICAgcmVsYXRpb25UeXBlOiBzdHJpbmcsXG4gICAgaW52ZXJzaW9uOiBib29sZWFuXG4gICk6IE9ic2VydmFibGU8UmVsYXRpb25bXT4ge1xuICAgIGxldCByZWxhdGlvbnM6IGFueSA9IFtdO1xuICAgIGlmIChpbnZlcnNpb24pIHtcbiAgICAgIHJlbGF0aW9ucyA9IHNvdXJjZXMubWFwKChzb3VyY2UpID0+ICh7IHNvdXJjZTogZGVzdGluYXRpb24sIGRlc3RpbmF0aW9uOiBzb3VyY2UsIHJlbGF0aW9uVHlwZSB9KSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlbGF0aW9ucyA9IHNvdXJjZXMubWFwKChzb3VyY2UpID0+ICh7IGRlc3RpbmF0aW9uLCBzb3VyY2UsIHJlbGF0aW9uVHlwZSB9KSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNlbGVjdChDb25maWdTZWxlY3RvcnMuZGF0YVVybCkucGlwZShcbiAgICAgIG1lcmdlTWFwKCh1cmwpID0+IHRoaXMuaHR0cENsaWVudC5wb3N0PHZvaWQ+KGAke3VybH0vcmVsYXRpb25zYCwgcmVsYXRpb25zKSksXG4gICAgICBtYXAoKCkgPT4gcmVsYXRpb25zKVxuICAgICk7XG4gIH1cblxuICBkZWxldGVSZWxhdGlvbihzb3VyY2U6IHN0cmluZywgZGVzdGluYXRpb246IHN0cmluZywgcmVsYXRpb25UeXBlOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFJlbGF0aW9uPiB7XG4gICAgY29uc3QgcmVsYXRpb24gPSB7IHNvdXJjZSwgZGVzdGluYXRpb24sIHJlbGF0aW9uVHlwZSB9O1xuICAgIHJldHVybiB0aGlzLnN0b3JlLnNlbGVjdChDb25maWdTZWxlY3RvcnMuZGF0YVVybCkucGlwZShcbiAgICAgIG1lcmdlTWFwKCh1cmwpID0+IHRoaXMuaHR0cENsaWVudC5kZWxldGU8dm9pZD4oYCR7dXJsfS9yZWxhdGlvbnNgLCB7IGJvZHk6IHJlbGF0aW9uIH0pKSxcbiAgICAgIG1hcCgoKSA9PiByZWxhdGlvbilcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -9,4 +9,4 @@ export const SearchActions = {
9
9
  getPossibleFilterValues: createAction('[Dashboard] (bus) get possible filter values', props()),
10
10
  setPossibleFilterValues: createAction('[Dashboard] (bus) set possible filter values', props())
11
11
  };
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvY29yZS9zdG9yZS9zZWFyY2gvc2VhcmNoLmFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFLbEQsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHO0lBQzNCLE1BQU0sRUFBRSxZQUFZLENBQ2xCLGlCQUFpQixFQUNqQixLQUFLLEVBQXNHLENBQzVHO0lBQ0Qsa0JBQWtCLEVBQUUsWUFBWSxDQUM5Qix5REFBeUQsRUFDekQsS0FBSyxFQUFxRSxDQUMzRTtJQUVELGdCQUFnQjtJQUNoQixhQUFhLEVBQUUsWUFBWSxDQUN6Qix1REFBdUQsRUFDdkQsS0FBSyxFQUEwRSxDQUNoRjtJQUNELGFBQWEsRUFBRSxZQUFZLENBQUMsbUNBQW1DLEVBQUUsS0FBSyxFQUErQixDQUFDO0lBRXRHLGdCQUFnQixFQUFFLFlBQVksQ0FDNUIseURBQXlELEVBQ3pELEtBQUssRUFBNkMsQ0FDbkQ7SUFDRCx1QkFBdUIsRUFBRSxZQUFZLENBQ25DLDhDQUE4QyxFQUM5QyxLQUFLLEVBSUQsQ0FDTDtJQUNELHVCQUF1QixFQUFFLFlBQVksQ0FDbkMsOENBQThDLEVBQzlDLEtBQUssRUFBMEMsQ0FDaEQ7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQWN0aW9uLCBwcm9wcyB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IFJlc3VsdFNldCB9IGZyb20gJy4uLy4uL21vZGVsL3Jlc3VsdC1zZXQuaW50ZXJmYWNlJztcbmltcG9ydCB7IE1vbm9DbGFzc1NlYXJjaFBheWxvYWQgfSBmcm9tICcuLi8uLi9tb2RlbC9zZWFyY2gtbW9uby1jbGFzcy5tb2RlbCc7XG5pbXBvcnQgeyBGdWxsVGV4dFNlYXJjaFBheWxvYWQsIE11bHRpQ2xhc3NTZWFyY2hQYXlsb2FkIH0gZnJvbSAnLi4vLi4vbW9kZWwvc2VhcmNoLW11bHRpLWNsYXNzLm1vZGVsJztcblxuZXhwb3J0IGNvbnN0IFNlYXJjaEFjdGlvbnMgPSB7XG4gIHNlYXJjaDogY3JlYXRlQWN0aW9uKFxuICAgICdbU2VhcmNoXSBzZWFyY2gnLFxuICAgIHByb3BzPHsgcGF5bG9hZDogTW9ub0NsYXNzU2VhcmNoUGF5bG9hZCB8IE11bHRpQ2xhc3NTZWFyY2hQYXlsb2FkIHwgRnVsbFRleHRTZWFyY2hQYXlsb2FkOyBpZD86IHN0cmluZyB9PigpXG4gICksXG4gIGdldERhdGFzb3VyY2VJdGVtczogY3JlYXRlQWN0aW9uKFxuICAgICdbU2VhcmNoXSAoYnVzKSBnZXQgZGF0YXNvdXJjZSBpdGVtcyAobm90LWFjdGl2ZS1hY3Rpb24pJyxcbiAgICBwcm9wczx7IGlkOiBzdHJpbmc7IGV4Y2x1ZGVHZW86IGJvb2xlYW47IGZyb206IHN0cmluZzsgbmV4dD86IGJvb2xlYW4gfT4oKVxuICApLFxuXG4gIC8vIHJlc3VsdCBTZWFyY2hcbiAgc2VhcmNoU3VjY2VzczogY3JlYXRlQWN0aW9uKFxuICAgICdbU2VhcmNoIEFwaV0gKGJ1cykgU2VhcmNoIFN1Y2Nlc3MgKG5vdC1hY3RpdmUtYWN0aW9uKScsXG4gICAgcHJvcHM8eyByZXN1bHRTZXQ6IFJlc3VsdFNldDsgaWQ/OiBzdHJpbmc7IHBhcmFtcz86IHN0cmluZzsgbmV4dD86IGJvb2xlYW4gfT4oKVxuICApLFxuICBzZWFyY2hGYWlsdXJlOiBjcmVhdGVBY3Rpb24oJ1tTZWFyY2ggQXBpXSAoYnVzKSBTZWFyY2ggRmFpbHVyZScsIHByb3BzPHsgZXJyb3I6IGFueTsgaWQ/OiBzdHJpbmcgfT4oKSksXG5cbiAgc2V0U2VhcmNoTG9hZGluZzogY3JlYXRlQWN0aW9uKFxuICAgICdbU2VhcmNoIEFwaV0gKGJ1cykgc2V0IFNlYXJjaCBsb2FkaW5nIGRhdGFzb3VyY2Ugc3RhdHVzJyxcbiAgICBwcm9wczx7IGRhdGFzb3VyY2VzOiBzdHJpbmdbXTsgc3RhcnQ6IGJvb2xlYW4gfT4oKVxuICApLFxuICBnZXRQb3NzaWJsZUZpbHRlclZhbHVlczogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSAoYnVzKSBnZXQgcG9zc2libGUgZmlsdGVyIHZhbHVlcycsXG4gICAgcHJvcHM8e1xuICAgICAgZmlsdGVySWQ6IHN0cmluZztcbiAgICAgIGF0dHJpYnV0ZXM6IHsgaWQ6IHN0cmluZzsgZGF0YXNvdXJjZTogc3RyaW5nIH1bXTtcbiAgICAgIGxpbWl0OiBudW1iZXI7XG4gICAgfT4oKVxuICApLFxuICBzZXRQb3NzaWJsZUZpbHRlclZhbHVlczogY3JlYXRlQWN0aW9uKFxuICAgICdbRGFzaGJvYXJkXSAoYnVzKSBzZXQgcG9zc2libGUgZmlsdGVyIHZhbHVlcycsXG4gICAgcHJvcHM8eyBmaWx0ZXJJZDogc3RyaW5nOyB2YWx1ZXM6IHN0cmluZ1tdIH0+KClcbiAgKVxufTtcbiJdfQ==
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvY29yZS9zdG9yZS9zZWFyY2gvc2VhcmNoLmFjdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFLbEQsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHO0lBQzNCLE1BQU0sRUFBRSxZQUFZLENBQ2xCLGlCQUFpQixFQUNqQixLQUFLLEVBSUQsQ0FDTDtJQUNELGtCQUFrQixFQUFFLFlBQVksQ0FDOUIseURBQXlELEVBQ3pELEtBQUssRUFNRCxDQUNMO0lBRUQsZ0JBQWdCO0lBQ2hCLGFBQWEsRUFBRSxZQUFZLENBQ3pCLHVEQUF1RCxFQUN2RCxLQUFLLEVBQTBFLENBQ2hGO0lBQ0QsYUFBYSxFQUFFLFlBQVksQ0FBQyxtQ0FBbUMsRUFBRSxLQUFLLEVBQStCLENBQUM7SUFFdEcsZ0JBQWdCLEVBQUUsWUFBWSxDQUM1Qix5REFBeUQsRUFDekQsS0FBSyxFQUE2QyxDQUNuRDtJQUNELHVCQUF1QixFQUFFLFlBQVksQ0FDbkMsOENBQThDLEVBQzlDLEtBQUssRUFJRCxDQUNMO0lBQ0QsdUJBQXVCLEVBQUUsWUFBWSxDQUNuQyw4Q0FBOEMsRUFDOUMsS0FBSyxFQUEwQyxDQUNoRDtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVBY3Rpb24sIHByb3BzIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgUmVzdWx0U2V0IH0gZnJvbSAnLi4vLi4vbW9kZWwvcmVzdWx0LXNldC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTW9ub0NsYXNzU2VhcmNoUGF5bG9hZCB9IGZyb20gJy4uLy4uL21vZGVsL3NlYXJjaC1tb25vLWNsYXNzLm1vZGVsJztcbmltcG9ydCB7IEZ1bGxUZXh0U2VhcmNoUGF5bG9hZCwgTXVsdGlDbGFzc1NlYXJjaFBheWxvYWQgfSBmcm9tICcuLi8uLi9tb2RlbC9zZWFyY2gtbXVsdGktY2xhc3MubW9kZWwnO1xuXG5leHBvcnQgY29uc3QgU2VhcmNoQWN0aW9ucyA9IHtcbiAgc2VhcmNoOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tTZWFyY2hdIHNlYXJjaCcsXG4gICAgcHJvcHM8e1xuICAgICAgcGF5bG9hZDogTW9ub0NsYXNzU2VhcmNoUGF5bG9hZCB8IE11bHRpQ2xhc3NTZWFyY2hQYXlsb2FkIHwgRnVsbFRleHRTZWFyY2hQYXlsb2FkO1xuICAgICAgaWQ/OiBzdHJpbmc7XG4gICAgICBsaW5rZWRJdGVtcz86ICgnZGVzdGluYXRpb24nIHwgJ3NvdXJjZScpW107XG4gICAgfT4oKVxuICApLFxuICBnZXREYXRhc291cmNlSXRlbXM6IGNyZWF0ZUFjdGlvbihcbiAgICAnW1NlYXJjaF0gKGJ1cykgZ2V0IGRhdGFzb3VyY2UgaXRlbXMgKG5vdC1hY3RpdmUtYWN0aW9uKScsXG4gICAgcHJvcHM8e1xuICAgICAgaWQ6IHN0cmluZztcbiAgICAgIGV4Y2x1ZGVHZW86IGJvb2xlYW47XG4gICAgICBmcm9tOiBzdHJpbmc7XG4gICAgICBuZXh0PzogYm9vbGVhbjtcbiAgICAgIGxpbmtlZEl0ZW1zPzogKCdkZXN0aW5hdGlvbicgfCAnc291cmNlJylbXTtcbiAgICB9PigpXG4gICksXG5cbiAgLy8gcmVzdWx0IFNlYXJjaFxuICBzZWFyY2hTdWNjZXNzOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tTZWFyY2ggQXBpXSAoYnVzKSBTZWFyY2ggU3VjY2VzcyAobm90LWFjdGl2ZS1hY3Rpb24pJyxcbiAgICBwcm9wczx7IHJlc3VsdFNldDogUmVzdWx0U2V0OyBpZD86IHN0cmluZzsgcGFyYW1zPzogc3RyaW5nOyBuZXh0PzogYm9vbGVhbiB9PigpXG4gICksXG4gIHNlYXJjaEZhaWx1cmU6IGNyZWF0ZUFjdGlvbignW1NlYXJjaCBBcGldIChidXMpIFNlYXJjaCBGYWlsdXJlJywgcHJvcHM8eyBlcnJvcjogYW55OyBpZD86IHN0cmluZyB9PigpKSxcblxuICBzZXRTZWFyY2hMb2FkaW5nOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tTZWFyY2ggQXBpXSAoYnVzKSBzZXQgU2VhcmNoIGxvYWRpbmcgZGF0YXNvdXJjZSBzdGF0dXMnLFxuICAgIHByb3BzPHsgZGF0YXNvdXJjZXM6IHN0cmluZ1tdOyBzdGFydDogYm9vbGVhbiB9PigpXG4gICksXG4gIGdldFBvc3NpYmxlRmlsdGVyVmFsdWVzOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIGdldCBwb3NzaWJsZSBmaWx0ZXIgdmFsdWVzJyxcbiAgICBwcm9wczx7XG4gICAgICBmaWx0ZXJJZDogc3RyaW5nO1xuICAgICAgYXR0cmlidXRlczogeyBpZDogc3RyaW5nOyBkYXRhc291cmNlOiBzdHJpbmcgfVtdO1xuICAgICAgbGltaXQ6IG51bWJlcjtcbiAgICB9PigpXG4gICksXG4gIHNldFBvc3NpYmxlRmlsdGVyVmFsdWVzOiBjcmVhdGVBY3Rpb24oXG4gICAgJ1tEYXNoYm9hcmRdIChidXMpIHNldCBwb3NzaWJsZSBmaWx0ZXIgdmFsdWVzJyxcbiAgICBwcm9wczx7IGZpbHRlcklkOiBzdHJpbmc7IHZhbHVlczogc3RyaW5nW10gfT4oKVxuICApXG59O1xuIl19
@@ -17,7 +17,7 @@ export class SearchEffects {
17
17
  this.store = store;
18
18
  this.widgetFactoryService = widgetFactoryService;
19
19
  this.searchNamed$ = createEffect(() => this.actions$.pipe(ofType(SearchActions.getDatasourceItems), withLatestFrom(this.store.select(DashboardSelectors.rank), this.store.select(DashboardSelectors.quickOrder), this.store.select(DashboardSelectors.resultSets)), filter(([_, rank]) => rank === 0), filter(([props, rank]) => props.id !== DEFAULT_NAMED_QUERY_ID && props.id !== EXPLORE_NAMED_QUERY_ID), groupBy(([props, rank, quickOrder, rs]) => props.id), mergeMap((group$) => group$.pipe(debounceTime(100), switchMap(([props, rank, quickOrder, rs]) => this.searchService
20
- .getItems(props.id, quickOrder[props.id], props.excludeGeo, props.next ? rs[props.id].searchAfter : undefined)
20
+ .getItems(props.id, quickOrder[props.id], props.excludeGeo, props.next ? rs[props.id].searchAfter : undefined, props.linkedItems)
21
21
  .pipe(map((resultSet) => SearchActions.searchSuccess({
22
22
  resultSet,
23
23
  id: props.id,
@@ -41,7 +41,9 @@ export class SearchEffects {
41
41
  return EMPTY;
42
42
  }
43
43
  })));
44
- this.search$ = createEffect(() => this.actions$.pipe(ofType(SearchActions.search), mergeMap((props) => this.searchService.search(props.payload).pipe(map((resultSet) => SearchActions.searchSuccess({ resultSet, id: props.id })), catchError((error) => [SearchActions.searchFailure({ error, id: props.id })])))));
44
+ this.search$ = createEffect(() => this.actions$.pipe(ofType(SearchActions.search), mergeMap((props) => this.searchService.search(props.payload, props.id, props.linkedItems).pipe(map((resultSet) => {
45
+ return SearchActions.searchSuccess({ resultSet, id: props.id });
46
+ }), catchError((error) => [SearchActions.searchFailure({ error, id: props.id })])))));
45
47
  this.searchSuccess$ = createEffect(() => this.actions$.pipe(ofType(SearchActions.searchSuccess), map((action) => DashboardActions.updateResultSet({
46
48
  id: action.id ?? DEFAULT_NAMED_QUERY_ID,
47
49
  resultSet: action.resultSet,
@@ -58,4 +60,4 @@ export class SearchEffects {
58
60
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SearchEffects, decorators: [{
59
61
  type: Injectable
60
62
  }], ctorParameters: () => [{ type: i1.Actions }, { type: i2.SearchService }, { type: i3.Store }, { type: i4.WidgetFactoryService }] });
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmVmZmVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvY29yZS9zdG9yZS9zZWFyY2gvc2VhcmNoLmVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQVcsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBR2xGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7O0FBUXBGLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQ1UsUUFBaUIsRUFDakIsYUFBNEIsRUFDNUIsS0FBWSxFQUNaLG9CQUEwQztRQUgxQyxhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQ2pCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLFVBQUssR0FBTCxLQUFLLENBQU87UUFDWix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBR3BELGlCQUFZLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUMvQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxFQUN4QyxjQUFj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TSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsRUFDbkMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FDYixnQkFBZ0IsQ0FBQyxlQUFlLENBQUM7WUFDL0IsRUFBRSxFQUFFLE1BQU0sQ0FBQyxFQUFFLElBQUksc0JBQXNCO1lBQ3ZDLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUztZQUMzQixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07WUFDckIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO1NBQ2xCLENBQUMsQ0FDSCxDQUNGLENBQ0YsQ0FBQztRQUVGLDZCQUF3QixHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FDM0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2hCLE1BQU0sQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsRUFDN0MsUUFBUSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FDbEIsSUFBSSxDQUFDLGFBQWE7YUFDZixZQUFZLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxFQUFFLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQzthQUNqRCxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FDdkcsQ0FDRixDQUNGLENBQUM7SUF6R0MsQ0FBQzs4R0FOTyxhQUFhO2tIQUFiLGFBQWE7OzJGQUFiLGFBQWE7a0JBRHpCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3Rpb25zLCBjcmVhdGVFZmZlY3QsIG9mVHlwZSB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBkZWJvdW5jZVRpbWUsIEVNUFRZLCBmaWx0ZXIsIGdyb3VwQnksIG1hcCwgbWVyZ2VNYXAsIG9mLCBzd2l0Y2hNYXAsIHdpdGhMYXRlc3RGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEYXNoYm9hcmRBY3Rpb25zIH0gZnJvbSAnLi4vLi4vLi4vZGFzaGJvYXJkL3N0b3JlL2Rhc2hib2FyZC5hY3Rpb25zJztcbmltcG9ydCB7IERhc2hib2FyZFNlbGVjdG9ycyB9IGZyb20gJy4uLy4uLy4uL2Rhc2hib2FyZC9zdG9yZS9kYXNoYm9hcmQuc2VsZWN0b3JzJztcbmltcG9ydCB7IE1vbm9DbGFzc1NlYXJjaFBheWxvYWQgfSBmcm9tICcuLi8uLi9tb2RlbC9zZWFyY2gtbW9uby1jbGFzcy5tb2RlbCc7XG5pbXBvcnQgeyBGdWxsVGV4dFNlYXJjaFBheWxvYWQsIE11bHRpQ2xhc3NTZWFyY2hQYXlsb2FkIH0gZnJvbSAnLi4vLi4vbW9kZWwvc2VhcmNoLW11bHRpLWNsYXNzLm1vZGVsJztcbmltcG9ydCB7IFNlYXJjaEFjdGlvbnMgfSBmcm9tICcuL3NlYXJjaC5hY3Rpb25zJztcbmltcG9ydCB7IERFRkFVTFRfTkFNRURfUVVFUllfSUQsIEVYUExPUkVfTkFNRURfUVVFUllfSUQgfSBmcm9tICcuL3NlYXJjaC5jb25zdGFudHMnO1xuaW1wb3J0IHsgU2VhcmNoU2VydmljZSB9IGZyb20gJy4vc2VhcmNoLnNlcnZpY2UnO1xuaW1wb3J0IHsgV2lkZ2V0RmFjdG9yeVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9kYXNoYm9hcmQvY29tcG9uZW50cy93aWRnZXRzL3dpZGdldC1pbnN0YW5jaWF0b3Ivd2lkZ2V0LWZhY3Rvcnkuc2VydmljZSc7XG5pbXBvcnQgeyBXaWRnZXRNYW5pZmVzdCB9IGZyb20gJy4uLy4uL21vZGVsL21hbmlmZXN0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCBlcXVhbCBmcm9tICdmYXN0LWRlZXAtZXF1YWwvZXM2JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNlYXJjaEVmZmVjdHMge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFjdGlvbnMkOiBBY3Rpb25zLFxuICAgIHByaXZhdGUgc2VhcmNoU2VydmljZTogU2VhcmNoU2VydmljZSxcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZSxcbiAgICBwcml2YXRlIHdpZGdldEZhY3RvcnlTZXJ2aWNlOiBXaWRnZXRGYWN0b3J5U2VydmljZVxuICApIHt9XG5cbiAgc2VhcmNoTmFtZWQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKFNlYXJjaEFjdGlvbnMuZ2V0RGF0YXNvdXJjZUl0ZW1zKSxcbiAgICAgIHdpdGhMYXRlc3RGcm9tKFxuICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdChEYXNoYm9hcmRTZWxlY3RvcnMucmFuayksXG4gICAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KERhc2hib2FyZFNlbGVjdG9ycy5xdWlja09yZGVyKSxcbiAgICAgICAgdGhpcy5zdG9yZS5zZWxlY3QoRGFzaGJvYXJkU2VsZWN0b3JzLnJlc3VsdFNldHMpXG4gICAgICApLFxuICAgICAgZmlsdGVyKChbXywgcmFua10pID0+IHJhbmsgPT09IDApLFxuICAgICAgZmlsdGVyKChbcHJvcHMsIHJhbmtdKSA9PiBwcm9wcy5pZCAhPT0gREVGQVVMVF9OQU1FRF9RVUVSWV9JRCAmJiBwcm9wcy5pZCAhPT0gRVhQTE9SRV9OQU1FRF9RVUVSWV9JRCksXG4gICAgICBncm91cEJ5KChbcHJvcHMsIHJhbmssIHF1aWNrT3JkZXIsIHJzXSkgPT4gcHJvcHMuaWQpLFxuICAgICAgbWVyZ2VNYXAoKGdyb3VwJCkgPT5cbiAgICAgICAgZ3JvdXAkLnBpcGUoXG4gICAgICAgICAgZGVib3VuY2VUaW1lKDEwMCksXG4gICAgICAgICAgc3dpdGNoTWFwKChbcHJvcHMsIHJhbmssIHF1aWNrT3JkZXIsIHJzXSkgPT5cbiAgICAgICAgICAgIHRoaXMuc2VhcmNoU2VydmljZVxuICAgICAgICAgICAgICAuZ2V0SXRlbXMoXG4gICAgICAgICAgICAgICAgcHJvcHMuaWQsXG4gICAgICAgICAgICAgICAgcXVpY2tPcmRlcltwcm9wcy5pZF0sXG4gICAgICAgICAgICAgICAgcHJvcHMuZXhjbHVkZUdlbyxcbiAgICAgICAgICAgICAgICBwcm9wcy5uZXh0ID8gcnNbcHJvcHMuaWRdLnNlYXJjaEFmdGVyIDogdW5kZWZpbmVkXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChyZXN1bHRTZXQpID0+XG4gICAgICAgICAgICAgICAgICBTZWFyY2hBY3Rpb25zLnNlYXJjaFN1Y2Nlc3Moe1xuICAgICAgICAgICAgICAgICAgICByZXN1bHRTZXQsXG4gICAgICAgICAgICAgICAgICAgIGlkOiBwcm9wcy5pZCxcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiB0aGlzLnNlYXJjaFNlcnZpY2UuZ2V0SXRlbXNTZXJpYWxpemVkUGFyYW1zKHByb3BzLmlkLCBxdWlja09yZGVyKSxcbiAgICAgICAgICAgICAgICAgICAgbmV4dDogcHJvcHMubmV4dFxuICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBbU2VhcmNoQWN0aW9ucy5zZWFyY2hGYWlsdXJlKHsgZXJyb3IsIGlkOiBwcm9wcy5pZCB9KV0pXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgZmV0Y2hNb3JlJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXNoYm9hcmRBY3Rpb25zLmZldGNoTW9yZUl0ZW1zKSxcbiAgICAgIHdpdGhMYXRlc3RGcm9tKHRoaXMuc3RvcmUuc2VsZWN0KERhc2hib2FyZFNlbGVjdG9ycy5yYW5rKSwgdGhpcy5zdG9yZS5zZWxlY3QoRGFzaGJvYXJkU2VsZWN0b3JzLnJlc3VsdFNldHMpKSxcbiAgICAgIGZpbHRlcigoW3Byb3BzLCByYW5rLCByc10pID0+IHJhbmsgPT09IDAgJiYgISFyc1twcm9wcy5pZF0uc2VhcmNoQWZ0ZXIpLFxuICAgICAgZGVib3VuY2VUaW1lKDMwMCksXG4gICAgICBtZXJnZU1hcCgoW3Byb3BzXSkgPT4ge1xuICAgICAgICBjb25zdCBkcyA9IHRoaXMud2lkZ2V0RmFjdG9yeVNlcnZpY2UuZGF0YXNvdXJjZXNUb0F1dG9Mb2FkKHtcbiAgICAgICAgICB0eXBlOiBwcm9wcy53aWRnZXRUeXBlLFxuICAgICAgICAgIGRhdGFzb3VyY2U6IFtwcm9wcy5pZF1cbiAgICAgICAgfSBhcyBXaWRnZXRNYW5pZmVzdClbMF07XG5cbiAgICAgICAgaWYgKCEhZHMpIHtcbiAgICAgICAgICByZXR1cm4gb2YoXG4gICAgICAgICAgICBTZWFyY2hBY3Rpb25zLmdldERhdGFzb3VyY2VJdGVtcyh7XG4gICAgICAgICAgICAgIGlkOiBkcy5kYXRhc2V0SWQsXG4gICAgICAgICAgICAgIGV4Y2x1ZGVHZW86IGRzLmV4Y2x1ZGVHZW8sXG4gICAgICAgICAgICAgIGZyb206ICdmZXRjaE1vcmUnLFxuICAgICAgICAgICAgICBuZXh0OiB0cnVlXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgIClcbiAgKTtcblxuICBzZWFyY2gkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKFNlYXJjaEFjdGlvbnMuc2VhcmNoKSxcbiAgICAgIG1lcmdlTWFwKFxuICAgICAgICAocHJvcHM6IHsgcGF5bG9hZDogTW9ub0NsYXNzU2VhcmNoUGF5bG9hZCB8IE11bHRpQ2xhc3NTZWFyY2hQYXlsb2FkIHwgRnVsbFRleHRTZWFyY2hQYXlsb2FkOyBpZD86IHN0cmluZyB9KSA9PlxuICAgICAgICAgIHRoaXMuc2VhcmNoU2VydmljZS5zZWFyY2gocHJvcHMucGF5bG9hZCkucGlwZShcbiAgICAgICAgICAgIG1hcCgocmVzdWx0U2V0KSA9PiBTZWFyY2hBY3Rpb25zLnNlYXJjaFN1Y2Nlc3MoeyByZXN1bHRTZXQsIGlkOiBwcm9wcy5pZCB9KSksXG4gICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gW1NlYXJjaEFjdGlvbnMuc2VhcmNoRmFpbHVyZSh7IGVycm9yLCBpZDogcHJvcHMuaWQgfSldKVxuICAgICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgc2VhcmNoU3VjY2VzcyQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoU2VhcmNoQWN0aW9ucy5zZWFyY2hTdWNjZXNzKSxcbiAgICAgIG1hcCgoYWN0aW9uKSA9PlxuICAgICAgICBEYXNoYm9hcmRBY3Rpb25zLnVwZGF0ZVJlc3VsdFNldCh7XG4gICAgICAgICAgaWQ6IGFjdGlvbi5pZCA/PyBERUZBVUxUX05BTUVEX1FVRVJZX0lELFxuICAgICAgICAgIHJlc3VsdFNldDogYWN0aW9uLnJlc3VsdFNldCxcbiAgICAgICAgICBwYXJhbXM6IGFjdGlvbi5wYXJhbXMsXG4gICAgICAgICAgbmV4dDogYWN0aW9uLm5leHRcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgZ2V0UG9zc2libGVGaWx0ZXJWYWx1ZXMkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKFNlYXJjaEFjdGlvbnMuZ2V0UG9zc2libGVGaWx0ZXJWYWx1ZXMpLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5zZWFyY2hTZXJ2aWNlXG4gICAgICAgICAgLmF1dG9jb21wbGV0ZShhY3Rpb24uYXR0cmlidXRlcywgJycsIGFjdGlvbi5saW1pdClcbiAgICAgICAgICAucGlwZShtYXAoKHZhbHVlcykgPT4gU2VhcmNoQWN0aW9ucy5zZXRQb3NzaWJsZUZpbHRlclZhbHVlcyh7IGZpbHRlcklkOiBhY3Rpb24uZmlsdGVySWQsIHZhbHVlcyB9KSkpXG4gICAgICApXG4gICAgKVxuICApO1xufVxuIl19
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmVmZmVjdHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvY29yZS9zdG9yZS9zZWFyY2gvc2VhcmNoLmVmZmVjdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQVcsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBR2xGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7O0FBTXBGLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQ1UsUUFBaUIsRUFDakIsYUFBNEIsRUFDNUIsS0FBWSxFQUNaLG9CQUEwQztRQUgxQyxhQUFRLEdBQVIsUUFBUSxDQUFTO1FBQ2pCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLFVBQUssR0FBTCxLQUFLLENBQU87UUFDWix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBR3BELGlCQUFZLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUMvQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQyxFQUN4QyxjQUFjLENBQ1osSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQzFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxFQUNoRCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsQ0FDakQsRUFDRCxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxLQUFLLENBQUMsQ0FBQyxFQUNqQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxzQkFBc0IsSUFBSSxLQUFLLENBQUMsRUFBRSxLQUFLLHNCQUFzQixDQUFDLEVBQ3JHLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsRUFDcEQsUUFBUSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FDbEIsTUFBTSxDQUFDLElBQUksQ0FDVCxZQUFZLENBQUMsR0FBRyxDQUFDLEVBQ2pCLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUMxQyxJQUFJLENBQUMsYUFBYTthQUNmLFFBQVEsQ0FDUCxLQUFLLENBQUMsRUFBRSxFQUNSLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQ3BCLEtBQUssQ0FBQyxVQUFVLEVBQ2hCLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQ2pELEtBQUssQ0FBQyxXQUFXLENBQ2xCO2FBQ0EsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQ2hCLGFBQWEsQ0FBQyxhQUFhLENBQUM7WUFDMUIsU0FBUztZQUNULEVBQUUsRUFBRSxLQUFLLENBQUMsRUFBRTtZQUNaLE1BQU0sRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDO1lBQ3pFLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtTQUNqQixDQUFDLENBQ0gsRUFDRCxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUM5RSxDQUNKLENBQ0YsQ0FDRixDQUNGLENBQ0YsQ0FBQztRQUVGLGVBQVUsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNoQixNQUFNLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLEVBQ3ZDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUM1RyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLEVBQ3ZFLFlBQVksQ0FBQyxHQUFHLENBQUMsRUFDakIsUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFO1lBQ25CLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxxQkFBcUIsQ0FBQztnQkFDekQsSUFBSSxFQUFFLEtBQUssQ0FBQyxVQUFVO2dCQUN0QixVQUFVLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO2FBQ0wsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBRXhCLElBQUksQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUNULE9BQU8sRUFBRSxDQUNQLGFBQWEsQ0FBQyxrQkFBa0IsQ0FBQztvQkFDL0IsRUFBRSxFQUFFLEVBQUUsQ0FBQyxTQUFTO29CQUNoQixVQUFVLEVBQUUsRUFBRSxDQUFDLFVBQVU7b0JBQ3pCLElBQUksRUFBRSxXQUFXO29CQUNqQixJQUFJLEVBQUUsSUFBSTtpQkFDWCxDQUFDLENBQ0gsQ0FBQztZQUNKLENBQUM7aUJBQU0sQ0FBQztnQkFDTixPQUFPLEtBQUssQ0FBQztZQUNmLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FDSCxDQUNGLENBQUM7UUFFRixZQUFPLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsRUFDNUIsUUFBUSxDQUNOLENBQUMsS0FJQSxFQUFFLEVBQUUsQ0FDSCxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FDeEUsR0FBRyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDaEIsT0FBTyxhQUFhLENBQUMsYUFBYSxDQUFDLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNsRSxDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUM5RSxDQUNKLENBQ0YsQ0FDRixDQUFDO1FBRUYsbUJBQWMsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQ2pDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNoQixNQUFNLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxFQUNuQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUNiLGdCQUFnQixDQUFDLGVBQWUsQ0FBQztZQUMvQixFQUFFLEVBQUUsTUFBTSxDQUFDLEVBQUUsSUFBSSxzQkFBc0I7WUFDdkMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTO1lBQzNCLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtZQUNyQixJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUk7U0FDbEIsQ0FBQyxDQUNILENBQ0YsQ0FDRixDQUFDO1FBRUYsNkJBQXdCLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUMzQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsTUFBTSxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsQ0FBQyxFQUM3QyxRQUFRLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUNsQixJQUFJLENBQUMsYUFBYTthQUNmLFlBQVksQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLEVBQUUsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDO2FBQ2pELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsQ0FBQyxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUN2RyxDQUNGLENBQ0YsQ0FBQztJQWhIQyxDQUFDOzhHQU5PLGFBQWE7a0hBQWIsYUFBYTs7MkZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGlvbnMsIGNyZWF0ZUVmZmVjdCwgb2ZUeXBlIH0gZnJvbSAnQG5ncngvZWZmZWN0cyc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGRlYm91bmNlVGltZSwgRU1QVFksIGZpbHRlciwgZ3JvdXBCeSwgbWFwLCBtZXJnZU1hcCwgb2YsIHN3aXRjaE1hcCwgd2l0aExhdGVzdEZyb20gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERhc2hib2FyZEFjdGlvbnMgfSBmcm9tICcuLi8uLi8uLi9kYXNoYm9hcmQvc3RvcmUvZGFzaGJvYXJkLmFjdGlvbnMnO1xuaW1wb3J0IHsgRGFzaGJvYXJkU2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vLi4vZGFzaGJvYXJkL3N0b3JlL2Rhc2hib2FyZC5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgTW9ub0NsYXNzU2VhcmNoUGF5bG9hZCB9IGZyb20gJy4uLy4uL21vZGVsL3NlYXJjaC1tb25vLWNsYXNzLm1vZGVsJztcbmltcG9ydCB7IEZ1bGxUZXh0U2VhcmNoUGF5bG9hZCwgTXVsdGlDbGFzc1NlYXJjaFBheWxvYWQgfSBmcm9tICcuLi8uLi9tb2RlbC9zZWFyY2gtbXVsdGktY2xhc3MubW9kZWwnO1xuaW1wb3J0IHsgU2VhcmNoQWN0aW9ucyB9IGZyb20gJy4vc2VhcmNoLmFjdGlvbnMnO1xuaW1wb3J0IHsgREVGQVVMVF9OQU1FRF9RVUVSWV9JRCwgRVhQTE9SRV9OQU1FRF9RVUVSWV9JRCB9IGZyb20gJy4vc2VhcmNoLmNvbnN0YW50cyc7XG5pbXBvcnQgeyBTZWFyY2hTZXJ2aWNlIH0gZnJvbSAnLi9zZWFyY2guc2VydmljZSc7XG5pbXBvcnQgeyBXaWRnZXRGYWN0b3J5U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL2Rhc2hib2FyZC9jb21wb25lbnRzL3dpZGdldHMvd2lkZ2V0LWluc3RhbmNpYXRvci93aWRnZXQtZmFjdG9yeS5zZXJ2aWNlJztcbmltcG9ydCB7IFdpZGdldE1hbmlmZXN0IH0gZnJvbSAnLi4vLi4vbW9kZWwvbWFuaWZlc3QuaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNlYXJjaEVmZmVjdHMge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFjdGlvbnMkOiBBY3Rpb25zLFxuICAgIHByaXZhdGUgc2VhcmNoU2VydmljZTogU2VhcmNoU2VydmljZSxcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZSxcbiAgICBwcml2YXRlIHdpZGdldEZhY3RvcnlTZXJ2aWNlOiBXaWRnZXRGYWN0b3J5U2VydmljZVxuICApIHt9XG5cbiAgc2VhcmNoTmFtZWQkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKFNlYXJjaEFjdGlvbnMuZ2V0RGF0YXNvdXJjZUl0ZW1zKSxcbiAgICAgIHdpdGhMYXRlc3RGcm9tKFxuICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdChEYXNoYm9hcmRTZWxlY3RvcnMucmFuayksXG4gICAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KERhc2hib2FyZFNlbGVjdG9ycy5xdWlja09yZGVyKSxcbiAgICAgICAgdGhpcy5zdG9yZS5zZWxlY3QoRGFzaGJvYXJkU2VsZWN0b3JzLnJlc3VsdFNldHMpXG4gICAgICApLFxuICAgICAgZmlsdGVyKChbXywgcmFua10pID0+IHJhbmsgPT09IDApLFxuICAgICAgZmlsdGVyKChbcHJvcHMsIHJhbmtdKSA9PiBwcm9wcy5pZCAhPT0gREVGQVVMVF9OQU1FRF9RVUVSWV9JRCAmJiBwcm9wcy5pZCAhPT0gRVhQTE9SRV9OQU1FRF9RVUVSWV9JRCksXG4gICAgICBncm91cEJ5KChbcHJvcHMsIHJhbmssIHF1aWNrT3JkZXIsIHJzXSkgPT4gcHJvcHMuaWQpLFxuICAgICAgbWVyZ2VNYXAoKGdyb3VwJCkgPT5cbiAgICAgICAgZ3JvdXAkLnBpcGUoXG4gICAgICAgICAgZGVib3VuY2VUaW1lKDEwMCksXG4gICAgICAgICAgc3dpdGNoTWFwKChbcHJvcHMsIHJhbmssIHF1aWNrT3JkZXIsIHJzXSkgPT5cbiAgICAgICAgICAgIHRoaXMuc2VhcmNoU2VydmljZVxuICAgICAgICAgICAgICAuZ2V0SXRlbXMoXG4gICAgICAgICAgICAgICAgcHJvcHMuaWQsXG4gICAgICAgICAgICAgICAgcXVpY2tPcmRlcltwcm9wcy5pZF0sXG4gICAgICAgICAgICAgICAgcHJvcHMuZXhjbHVkZUdlbyxcbiAgICAgICAgICAgICAgICBwcm9wcy5uZXh0ID8gcnNbcHJvcHMuaWRdLnNlYXJjaEFmdGVyIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgIHByb3BzLmxpbmtlZEl0ZW1zXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChyZXN1bHRTZXQpID0+XG4gICAgICAgICAgICAgICAgICBTZWFyY2hBY3Rpb25zLnNlYXJjaFN1Y2Nlc3Moe1xuICAgICAgICAgICAgICAgICAgICByZXN1bHRTZXQsXG4gICAgICAgICAgICAgICAgICAgIGlkOiBwcm9wcy5pZCxcbiAgICAgICAgICAgICAgICAgICAgcGFyYW1zOiB0aGlzLnNlYXJjaFNlcnZpY2UuZ2V0SXRlbXNTZXJpYWxpemVkUGFyYW1zKHByb3BzLmlkLCBxdWlja09yZGVyKSxcbiAgICAgICAgICAgICAgICAgICAgbmV4dDogcHJvcHMubmV4dFxuICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiBbU2VhcmNoQWN0aW9ucy5zZWFyY2hGYWlsdXJlKHsgZXJyb3IsIGlkOiBwcm9wcy5pZCB9KV0pXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgZmV0Y2hNb3JlJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PlxuICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgIG9mVHlwZShEYXNoYm9hcmRBY3Rpb25zLmZldGNoTW9yZUl0ZW1zKSxcbiAgICAgIHdpdGhMYXRlc3RGcm9tKHRoaXMuc3RvcmUuc2VsZWN0KERhc2hib2FyZFNlbGVjdG9ycy5yYW5rKSwgdGhpcy5zdG9yZS5zZWxlY3QoRGFzaGJvYXJkU2VsZWN0b3JzLnJlc3VsdFNldHMpKSxcbiAgICAgIGZpbHRlcigoW3Byb3BzLCByYW5rLCByc10pID0+IHJhbmsgPT09IDAgJiYgISFyc1twcm9wcy5pZF0uc2VhcmNoQWZ0ZXIpLFxuICAgICAgZGVib3VuY2VUaW1lKDMwMCksXG4gICAgICBtZXJnZU1hcCgoW3Byb3BzXSkgPT4ge1xuICAgICAgICBjb25zdCBkcyA9IHRoaXMud2lkZ2V0RmFjdG9yeVNlcnZpY2UuZGF0YXNvdXJjZXNUb0F1dG9Mb2FkKHtcbiAgICAgICAgICB0eXBlOiBwcm9wcy53aWRnZXRUeXBlLFxuICAgICAgICAgIGRhdGFzb3VyY2U6IFtwcm9wcy5pZF1cbiAgICAgICAgfSBhcyBXaWRnZXRNYW5pZmVzdClbMF07XG5cbiAgICAgICAgaWYgKCEhZHMpIHtcbiAgICAgICAgICByZXR1cm4gb2YoXG4gICAgICAgICAgICBTZWFyY2hBY3Rpb25zLmdldERhdGFzb3VyY2VJdGVtcyh7XG4gICAgICAgICAgICAgIGlkOiBkcy5kYXRhc2V0SWQsXG4gICAgICAgICAgICAgIGV4Y2x1ZGVHZW86IGRzLmV4Y2x1ZGVHZW8sXG4gICAgICAgICAgICAgIGZyb206ICdmZXRjaE1vcmUnLFxuICAgICAgICAgICAgICBuZXh0OiB0cnVlXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgIClcbiAgKTtcblxuICBzZWFyY2gkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKFNlYXJjaEFjdGlvbnMuc2VhcmNoKSxcbiAgICAgIG1lcmdlTWFwKFxuICAgICAgICAocHJvcHM6IHtcbiAgICAgICAgICBwYXlsb2FkOiBNb25vQ2xhc3NTZWFyY2hQYXlsb2FkIHwgTXVsdGlDbGFzc1NlYXJjaFBheWxvYWQgfCBGdWxsVGV4dFNlYXJjaFBheWxvYWQ7XG4gICAgICAgICAgaWQ/OiBzdHJpbmc7XG4gICAgICAgICAgbGlua2VkSXRlbXM/OiAoJ2Rlc3RpbmF0aW9uJyB8ICdzb3VyY2UnKVtdO1xuICAgICAgICB9KSA9PlxuICAgICAgICAgIHRoaXMuc2VhcmNoU2VydmljZS5zZWFyY2gocHJvcHMucGF5bG9hZCwgcHJvcHMuaWQsIHByb3BzLmxpbmtlZEl0ZW1zKS5waXBlKFxuICAgICAgICAgICAgbWFwKChyZXN1bHRTZXQpID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIFNlYXJjaEFjdGlvbnMuc2VhcmNoU3VjY2Vzcyh7IHJlc3VsdFNldCwgaWQ6IHByb3BzLmlkIH0pO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvcikgPT4gW1NlYXJjaEFjdGlvbnMuc2VhcmNoRmFpbHVyZSh7IGVycm9yLCBpZDogcHJvcHMuaWQgfSldKVxuICAgICAgICAgIClcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgc2VhcmNoU3VjY2VzcyQgPSBjcmVhdGVFZmZlY3QoKCkgPT5cbiAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICBvZlR5cGUoU2VhcmNoQWN0aW9ucy5zZWFyY2hTdWNjZXNzKSxcbiAgICAgIG1hcCgoYWN0aW9uKSA9PlxuICAgICAgICBEYXNoYm9hcmRBY3Rpb25zLnVwZGF0ZVJlc3VsdFNldCh7XG4gICAgICAgICAgaWQ6IGFjdGlvbi5pZCA/PyBERUZBVUxUX05BTUVEX1FVRVJZX0lELFxuICAgICAgICAgIHJlc3VsdFNldDogYWN0aW9uLnJlc3VsdFNldCxcbiAgICAgICAgICBwYXJhbXM6IGFjdGlvbi5wYXJhbXMsXG4gICAgICAgICAgbmV4dDogYWN0aW9uLm5leHRcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICApXG4gICk7XG5cbiAgZ2V0UG9zc2libGVGaWx0ZXJWYWx1ZXMkID0gY3JlYXRlRWZmZWN0KCgpID0+XG4gICAgdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgb2ZUeXBlKFNlYXJjaEFjdGlvbnMuZ2V0UG9zc2libGVGaWx0ZXJWYWx1ZXMpLFxuICAgICAgbWVyZ2VNYXAoKGFjdGlvbikgPT5cbiAgICAgICAgdGhpcy5zZWFyY2hTZXJ2aWNlXG4gICAgICAgICAgLmF1dG9jb21wbGV0ZShhY3Rpb24uYXR0cmlidXRlcywgJycsIGFjdGlvbi5saW1pdClcbiAgICAgICAgICAucGlwZShtYXAoKHZhbHVlcykgPT4gU2VhcmNoQWN0aW9ucy5zZXRQb3NzaWJsZUZpbHRlclZhbHVlcyh7IGZpbHRlcklkOiBhY3Rpb24uZmlsdGVySWQsIHZhbHVlcyB9KSkpXG4gICAgICApXG4gICAgKVxuICApO1xufVxuIl19
@@ -1,6 +1,6 @@
1
1
  import { HttpParams } from '@angular/common/http';
2
2
  import { Injectable } from '@angular/core';
3
- import { combineLatest, map, mergeMap, of, switchMap } from 'rxjs';
3
+ import { filter, map, mergeMap, of, switchMap, take, withLatestFrom } from 'rxjs';
4
4
  import { DashboardSelectors } from '../../../dashboard/store/dashboard.selectors';
5
5
  import { ConfigSelectors } from '../config/config.selectors';
6
6
  import { DEFAULT_NAMED_QUERY_ID } from './search.constants';
@@ -29,7 +29,7 @@ export class SearchService {
29
29
  this.datasources = datasources;
30
30
  });
31
31
  }
32
- getItems(id, quickOrder, excludeGeo, searchAfter) {
32
+ getItems(id, quickOrder, excludeGeo, searchAfter, linkedItems = []) {
33
33
  const params = this.getItemsFilter(id, this.getOrder(quickOrder));
34
34
  if (!id) {
35
35
  console.warn('Not sending items request with no datasource attached.');
@@ -40,9 +40,10 @@ export class SearchService {
40
40
  return this.httpClient.post(encodeURI(`${url}/data-sources/id/${id}/items`), {
41
41
  type: ds?.sourceType === 'namedQuery' ? ds.request.type : NamedQueryTypes.MONO_CLASS,
42
42
  excludeGeo: excludeGeo ?? false,
43
- searchAfter: searchAfter ?? undefined
43
+ searchAfter: searchAfter ?? undefined,
44
+ linkedItems
44
45
  }, { params });
45
- }), map((rs) => this.applyTransformations('current', rs)));
46
+ }), map((rs) => this.applyTransformations(id, rs)));
46
47
  }
47
48
  getItemsSerializedParams(id, quickOrder = {}) {
48
49
  return '|' + this.getItemsFilter(id, this.getOrder(quickOrder[id])).toString() + '|';
@@ -94,19 +95,24 @@ export class SearchService {
94
95
  * Launch a search request (and saves it as current search)
95
96
  * @param condition
96
97
  */
97
- search(condition) {
98
- return combineLatest([
99
- this.store.select(ConfigSelectors.dataUrl),
100
- this.store.select(DashboardSelectors.quickOrder),
101
- this.store.select(ConfigSelectors.limits)
102
- ]).pipe(mergeMap(([url, quickOrder, limits]) => {
98
+ search(condition, id, withLinkedItems = []) {
99
+ return this.store.select(ConfigSelectors.dataUrl).pipe(filter((url) => !!url), take(1), withLatestFrom(this.store.select(DashboardSelectors.quickOrder), this.store.select(ConfigSelectors.limits)), mergeMap(([url, quickOrder, limits]) => {
103
100
  const params = {};
104
101
  if (quickOrder[DEFAULT_NAMED_QUERY_ID]) {
105
102
  params['order'] = `${quickOrder[DEFAULT_NAMED_QUERY_ID]?.attribute},${quickOrder[DEFAULT_NAMED_QUERY_ID]?.asc ?? ''}`;
106
103
  }
107
- const _condition = { ...condition, limit: limits[DEFAULT_NAMED_QUERY_ID] ?? limits['default'] };
104
+ const otherParams = {};
105
+ if (withLinkedItems.length > 0) {
106
+ if (withLinkedItems.includes('destination')) {
107
+ otherParams['withDestinationItems'] = 'true';
108
+ }
109
+ if (withLinkedItems.includes('source')) {
110
+ otherParams['withSourceItems'] = 'true';
111
+ }
112
+ }
113
+ const _condition = { ...condition, limit: limits[DEFAULT_NAMED_QUERY_ID] ?? limits['default'], ...otherParams };
108
114
  return this.httpClient.post(encodeURI(`${url}/items/search`), _condition, { params });
109
- }), map((rs) => this.applyTransformations(DEFAULT_NAMED_QUERY_ID, rs)));
115
+ }), map((rs) => this.applyTransformations(id ?? DEFAULT_NAMED_QUERY_ID, rs)));
110
116
  }
111
117
  /**
112
118
  * Allows to add a transformation function when getting results from backend
@@ -141,4 +147,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
141
147
  providedIn: 'root'
142
148
  }]
143
149
  }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.Store }] });
144
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvY29yZS9zdG9yZS9zZWFyY2gvc2VhcmNoLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFPbEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRTVELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7QUFRM0UsTUFBTSxPQUFPLGFBQWE7SUFNeEIsWUFDVSxVQUFzQixFQUN0QixLQUF1QztRQUR2QyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLFVBQUssR0FBTCxLQUFLLENBQWtDO1FBUGpELG9CQUFlLEdBQThCLEVBQUUsQ0FBQztRQUNoRCxZQUFPLEdBQThDLEVBQUUsQ0FBQztRQUN4RCxXQUFNLEdBQTRCLEVBQUUsQ0FBQztRQUNyQyxnQkFBVyxHQUFpQixFQUFFLENBQUM7UUFNN0IsS0FBSyxDQUFDLE1BQU0sQ0FBQyxr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Q0FBQyxFQUFVLEVBQUUsRUFBYTtRQUM1QyxJQUFJLFdBQVcsR0FBRyxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxFQUFFLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlFLE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxZQUFZLENBQ1YsVUFLYSxFQUNiLFNBQWlCLEVBQUUsRUFDbkIsS0FBYztRQUVkLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDcEQsU0FBUyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FDaEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQVcsU0FBUyxDQUFDLEdBQUcsR0FBRyxzQkFBc0IsQ0FBQyxFQUFFO1lBQ3RFLFVBQVUsRUFBRSxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDbkcsS0FBSyxFQUFFLE1BQU07WUFDYixLQUFLO1NBQ04sQ0FBQyxDQUNILENBQ0YsQ0FBQztJQUNKLENBQUM7OEdBM0pVLGFBQWE7a0hBQWIsYUFBYSxjQUZaLE1BQU07OzJGQUVQLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgbWFwLCBtZXJnZU1hcCwgT2JzZXJ2YWJsZSwgb2YsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGFzaGJvYXJkU2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vLi4vZGFzaGJvYXJkL3N0b3JlL2Rhc2hib2FyZC5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgRmlsdGVyQ29udGV4dCB9IGZyb20gJy4uLy4uL21vZGVsL2ZpbHRlci5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUmVzdWx0T3JkZXIgfSBmcm9tICcuLi8uLi9tb2RlbC9yZXN1bHQtb3JkZXIuaW50ZXJmYWNlJztcbmltcG9ydCB7IFJlc3VsdFNldCB9IGZyb20gJy4uLy4uL21vZGVsL3Jlc3VsdC1zZXQuaW50ZXJmYWNlJztcbmltcG9ydCB7IE1vbm9DbGFzc1NlYXJjaFBheWxvYWQgfSBmcm9tICcuLi8uLi9tb2RlbC9zZWFyY2gtbW9uby1jbGFzcy5tb2RlbCc7XG5pbXBvcnQgeyBGdWxsVGV4dFNlYXJjaFBheWxvYWQsIE11bHRpQ2xhc3NTZWFyY2hQYXlsb2FkIH0gZnJvbSAnLi4vLi4vbW9kZWwvc2VhcmNoLW11bHRpLWNsYXNzLm1vZGVsJztcbmltcG9ydCB7IENvbmZpZ1N0YXRlIH0gZnJvbSAnLi4vY29uZmlnL2NvbmZpZy5yZWR1Y2VyJztcbmltcG9ydCB7IENvbmZpZ1NlbGVjdG9ycyB9IGZyb20gJy4uL2NvbmZpZy9jb25maWcuc2VsZWN0b3JzJztcbmltcG9ydCB7IERFRkFVTFRfTkFNRURfUVVFUllfSUQgfSBmcm9tICcuL3NlYXJjaC5jb25zdGFudHMnO1xuaW1wb3J0IHsgU2VhcmNoU3RhdGUgfSBmcm9tICcuL3NlYXJjaC5yZWR1Y2VyJztcbmltcG9ydCB7IEZpbHRlclBhcmFtRW5jb2RlciB9IGZyb20gJy4vZmlsdGVyLXBhcmFtLWVuY29kZXInO1xuaW1wb3J0IHsgRGF0ZVV0aWxzIH0gZnJvbSAnLi4vLi4vLi4vZGFzaGJvYXJkL2RhdGUtdXRpbHMnO1xuaW1wb3J0IHsgTmFtZWRRdWVyeVR5cGVzIH0gZnJvbSAnLi4vZGF0YS1zb3VyY2UvbmFtZWQtcXVlcnktdHlwZXMubW9kZWwnO1xuaW1wb3J0IHsgRGF0YVNvdXJjZVNlbGVjdG9ycyB9IGZyb20gJy4uL2RhdGEtc291cmNlL2RhdGEtc291cmNlLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBEYXRhU291cmNlIH0gZnJvbSAnLi4vZGF0YS1zb3VyY2UvZGF0YS1zb3VyY2UubW9kZWwnO1xuXG5leHBvcnQgdHlwZSBSZXN1bHRzZXRUcmFuc2Zvcm1hdGlvbiA9IChpZDogc3RyaW5nLCByZXN1bHQ6IFJlc3VsdFNldCkgPT4gUmVzdWx0U2V0O1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTZWFyY2hTZXJ2aWNlIHtcbiAgdHJhbnNmb3JtYXRpb25zOiBSZXN1bHRzZXRUcmFuc2Zvcm1hdGlvbltdID0gW107XG4gIGZpbHRlcnM6IHsgW2RhdGFzb3VyY2U6IHN0cmluZ106IEZpbHRlckNvbnRleHRbXSB9ID0ge307XG4gIGxpbWl0czogeyBbcDogc3RyaW5nXTogbnVtYmVyIH0gPSB7fTtcbiAgZGF0YXNvdXJjZXM6IERhdGFTb3VyY2VbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxDb25maWdTdGF0ZSB8IFNlYXJjaFN0YXRlPlxuICApIHtcbiAgICBzdG9yZS5zZWxlY3QoRGFzaGJvYXJkU2VsZWN0b3JzLmRhdGFzb3VyY2VGaWx0ZXJzKS5zdWJzY3JpYmUoKGZpbHRlcnMpID0+IHtcbiAgICAgIHRoaXMuZmlsdGVycyA9IGZpbHRlcnM7XG4gICAgfSk7XG4gICAgc3RvcmUuc2VsZWN0KENvbmZpZ1NlbGVjdG9ycy5saW1pdHMpLnN1YnNjcmliZSgobGltaXRzKSA9PiB7XG4gICAgICB0aGlzLmxpbWl0cyA9IGxpbWl0cztcbiAgICB9KTtcbiAgICBzdG9yZS5zZWxlY3QoRGF0YVNvdXJjZVNlbGVjdG9ycy5nZXREYXRhU291cmNlcykuc3Vic2NyaWJlKChkYXRhc291cmNlcykgPT4ge1xuICAgICAgdGhpcy5kYXRhc291cmNlcyA9IGRhdGFzb3VyY2VzO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0SXRlbXMoaWQ6IHN0cmluZywgcXVpY2tPcmRlcj86IFJlc3VsdE9yZGVyLCBleGNsdWRlR2VvPzogYm9vbGVhbiwgc2VhcmNoQWZ0ZXI/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPFJlc3VsdFNldD4ge1xuICAgIGNvbnN0IHBhcmFtcyA9IHRoaXMuZ2V0SXRlbXNGaWx0ZXIoaWQsIHRoaXMuZ2V0T3JkZXIocXVpY2tPcmRlcikpO1xuICAgIGlmICghaWQpIHtcbiAgICAgIGNvbnNvbGUud2FybignTm90IHNlbmRpbmcgaXRlbXMgcmVxdWVzdCB3aXRoIG5vIGRhdGFzb3VyY2UgYXR0YWNoZWQuJyk7XG4gICAgICByZXR1cm4gb2YoeyBpdGVtczoge30sIHJlbGF0aW9uczogW10gfSBhcyBSZXN1bHRTZXQpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnN0b3JlLnNlbGVjdChDb25maWdTZWxlY3RvcnMuZGF0YVVybCkucGlwZShcbiAgICAgIG1lcmdlTWFwKCh1cmwpID0+IHtcbiAgICAgICAgY29uc3QgZHMgPSB0aGlzLmRhdGFzb3VyY2VzLmZpbmQoKGQpID0+IGQuaWQgPT09IGlkKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PFJlc3VsdFNldD4oXG4gICAgICAgICAgZW5jb2RlVVJJKGAke3VybH0vZGF0YS1zb3VyY2VzL2lkLyR7aWR9L2l0ZW1zYCksXG4gICAgICAgICAge1xuICAgICAgICAgICAgdHlwZTogZHM/LnNvdXJjZVR5cGUgPT09ICduYW1lZFF1ZXJ5JyA/IGRzLnJlcXVlc3QudHlwZSA6IE5hbWVkUXVlcnlUeXBlcy5NT05PX0NMQVNTLFxuICAgICAgICAgICAgZXhjbHVkZUdlbzogZXhjbHVkZUdlbyA/PyBmYWxzZSxcbiAgICAgICAgICAgIHNlYXJjaEFmdGVyOiBzZWFyY2hBZnRlciA/PyB1bmRlZmluZWRcbiAgICAgICAgICB9LFxuICAgICAgICAgIHsgcGFyYW1zIH1cbiAgICAgICAgKTtcbiAgICAgIH0pLFxuICAgICAgbWFwKChycykgPT4gdGhpcy5hcHBseVRyYW5zZm9ybWF0aW9ucygnY3VycmVudCcsIHJzKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0SXRlbXNTZXJpYWxpemVkUGFyYW1zKGlkOiBzdHJpbmcsIHF1aWNrT3JkZXI6IHsgW2lkOiBzdHJpbmddOiBSZXN1bHRPcmRlciB8IHVuZGVmaW5lZCB9ID0ge30pOiBzdHJpbmcge1xuICAgIHJldHVybiAnfCcgKyB0aGlzLmdldEl0ZW1zRmlsdGVyKGlkLCB0aGlzLmdldE9yZGVyKHF1aWNrT3JkZXJbaWRdKSkudG9TdHJpbmcoKSArICd8JztcbiAgfVxuXG4gIGdldEl0ZW1zRmlsdGVyKGlkOiBzdHJpbmcsIGN1bXVsYXRpdmU/OiBIdHRwUGFyYW1zLCBpbmNsdWRlTGltaXQgPSB0cnVlKTogSHR0cFBhcmFtcyB7XG4gICAgbGV0IHBhcmFtcyA9IGN1bXVsYXRpdmUgPz8gbmV3IEh0dHBQYXJhbXMoeyBlbmNvZGVyOiBuZXcgRmlsdGVyUGFyYW1FbmNvZGVyKCkgfSk7XG4gICAgaWYgKHRoaXMuZmlsdGVyc1tpZF0pIHtcbiAgICAgIHRoaXMuZmlsdGVyc1tpZF1cbiAgICAgICAgLmZpbHRlcigoZmlsdGVyKSA9PiBmaWx0ZXIudmFsdWUgIT09IG51bGwgJiYgZmlsdGVyLnZhbHVlICE9PSB1bmRlZmluZWQpXG4gICAgICAgIC5mb3JFYWNoKChmaWx0ZXIpID0+IHtcbiAgICAgICAgICBsZXQgdmFsdWVzVG9BZGRUb1BhcmFtcyA9IGZpbHRlci52YWx1ZTtcbiAgICAgICAgICAvLyBJTlNJREUgYW5kIE9VVFNJREUgb3BlcmF0b3JzIHVzZXMgMiB2YWx1ZXMgYnV0IG5vdCBzZW50IGluIGFuIGFycmF5LCB2YWx1ZXMgYXJlIHNlcGFyYXRlZCBieSBhIGNvbWFcbiAgICAgICAgICAvLyB3aWNoIG11c3Qgbm90IGJlIGVuY29kZWQgKGFzIGlmIHZhbHVlcyB3ZXJlIGluIGFuIGFycmF5KVxuICAgICAgICAgIGNvbnN0IGlzTXVsdGlWYWx1ZWQgPSBbJ0lOU0lERScsICdPVVRTSURFJ10uZmluZCgodmFsKSA9PiB2YWwgPT09IGZpbHRlci5vcGVyYXRvcikgIT09IHVuZGVmaW5lZDtcbiAgICAgICAgICBpZiAoaXNNdWx0aVZhbHVlZCkge1xuICAgICAgICAgICAgdmFsdWVzVG9BZGRUb1BhcmFtcyA9IChmaWx0ZXIudmFsdWUgYXMgc3RyaW5nKS5zcGxpdCgnLCcpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAvLyBkYXRlIGZpbHRlciB2YWx1ZSBtdXN0IGJlIHNlbmQgaW4gSVNPLTg2MDEgZm9ybWF0XG4gICAgICAgICAgaWYgKGZpbHRlci50eXBlID09PSAnZGF0ZScpIHtcbiAgICAgICAgICAgIHZhbHVlc1RvQWRkVG9QYXJhbXMgPSBpc011bHRpVmFsdWVkXG4gICAgICAgICAgICAgID8gKHZhbHVlc1RvQWRkVG9QYXJhbXMgYXMgc3RyaW5nW10pLm1hcCgodmFsdWUpID0+IERhdGVVdGlscy5wYXJzZVRvSXNvU3RyaW5nKHZhbHVlKSlcbiAgICAgICAgICAgICAgOiBEYXRlVXRpbHMucGFyc2VUb0lzb1N0cmluZyh2YWx1ZXNUb0FkZFRvUGFyYW1zIGFzIHN0cmluZyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnN0IHZhbHVlID0gQXJyYXkuaXNBcnJheSh2YWx1ZXNUb0FkZFRvUGFyYW1zKVxuICAgICAgICAgICAgPyB2YWx1ZXNUb0FkZFRvUGFyYW1zLm1hcCgodikgPT4gZW5jb2RlVVJJQ29tcG9uZW50KHYudG9TdHJpbmcoKS5zcGxpdCgnLCcpLmpvaW4oJ1xcXFwsJykpKS5qb2luKCcsJylcbiAgICAgICAgICAgIDogZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlc1RvQWRkVG9QYXJhbXMhLnRvU3RyaW5nKCkucmVwbGFjZSgvLC9nLCAnXFxcXCwnKSk7XG4gICAgICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZCgnZmlsdGVyJywgYCR7ZmlsdGVyLmF0dHJpYnV0ZX0sJHtmaWx0ZXIub3BlcmF0b3J9LCR7dmFsdWV9YCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAoaW5jbHVkZUxpbWl0KSB7XG4gICAgICBjb25zdCBsaW1pdCA9IHRoaXMubGltaXRzW2lkXTtcbiAgICAgIGlmIChsaW1pdCkge1xuICAgICAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdsaW1pdCcsIGxpbWl0KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHBhcmFtcztcbiAgfVxuXG4gIGdldE9yZGVyKHF1aWNrT3JkZXI6IFJlc3VsdE9yZGVyIHwgdW5kZWZpbmVkKTogSHR0cFBhcmFtcyB7XG4gICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHsgZW5jb2RlcjogbmV3IEZpbHRlclBhcmFtRW5jb2RlcigpIH0pO1xuICAgIGlmIChxdWlja09yZGVyKSB7XG4gICAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdvcmRlcicsIGAke3F1aWNrT3JkZXIuYXR0cmlidXRlfSwke3F1aWNrT3JkZXIuYXNjID8/ICcnfWApO1xuICAgIH0gZWxzZSB7XG4gICAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdvcmRlcicsICd0cnVlLGFzYycpO1xuICAgIH1cbiAgICByZXR1cm4gcGFyYW1zO1xuICB9XG5cbiAgLyoqXG4gICAqIExhdW5jaCBhIHNlYXJjaCByZXF1ZXN0IChhbmQgc2F2ZXMgaXQgYXMgY3VycmVudCBzZWFyY2gpXG4gICAqIEBwYXJhbSBjb25kaXRpb25cbiAgICovXG4gIHNlYXJjaChjb25kaXRpb246IE1vbm9DbGFzc1NlYXJjaFBheWxvYWQgfCBNdWx0aUNsYXNzU2VhcmNoUGF5bG9hZCB8IEZ1bGxUZXh0U2VhcmNoUGF5bG9hZCk6IE9ic2VydmFibGU8UmVzdWx0U2V0PiB7XG4gICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdGhpcy5zdG9yZS5zZWxlY3QoQ29uZmlnU2VsZWN0b3JzLmRhdGFVcmwpLFxuICAgICAgdGhpcy5zdG9yZS5zZWxlY3QoRGFzaGJvYXJkU2VsZWN0b3JzLnF1aWNrT3JkZXIpLFxuICAgICAgdGhpcy5zdG9yZS5zZWxlY3QoQ29uZmlnU2VsZWN0b3JzLmxpbWl0cylcbiAgICBdKS5waXBlKFxuICAgICAgbWVyZ2VNYXAoKFt1cmwsIHF1aWNrT3JkZXIsIGxpbWl0c10pID0+IHtcbiAgICAgICAgY29uc3QgcGFyYW1zID0ge30gYXMgeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbiAgICAgICAgaWYgKHF1aWNrT3JkZXJbREVGQVVMVF9OQU1FRF9RVUVSWV9JRF0pIHtcbiAgICAgICAgICBwYXJhbXNbJ29yZGVyJ10gPSBgJHtxdWlja09yZGVyW0RFRkFVTFRfTkFNRURfUVVFUllfSURdPy5hdHRyaWJ1dGV9LCR7XG4gICAgICAgICAgICBxdWlja09yZGVyW0RFRkFVTFRfTkFNRURfUVVFUllfSURdPy5hc2MgPz8gJydcbiAgICAgICAgICB9YDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBfY29uZGl0aW9uID0geyAuLi5jb25kaXRpb24sIGxpbWl0OiBsaW1pdHNbREVGQVVMVF9OQU1FRF9RVUVSWV9JRF0gPz8gbGltaXRzWydkZWZhdWx0J10gfTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PFJlc3VsdFNldD4oZW5jb2RlVVJJKGAke3VybH0vaXRlbXMvc2VhcmNoYCksIF9jb25kaXRpb24sIHsgcGFyYW1zIH0pO1xuICAgICAgfSksXG4gICAgICBtYXAoKHJzKSA9PiB0aGlzLmFwcGx5VHJhbnNmb3JtYXRpb25zKERFRkFVTFRfTkFNRURfUVVFUllfSUQsIHJzKSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEFsbG93cyB0byBhZGQgYSB0cmFuc2Zvcm1hdGlvbiBmdW5jdGlvbiB3aGVuIGdldHRpbmcgcmVzdWx0cyBmcm9tIGJhY2tlbmRcbiAgICogQHBhcmFtIGZ1bmNcbiAgICovXG4gIGFkZFRyYW5zZm9ybWF0aW9uKGZ1bmM6IFJlc3VsdHNldFRyYW5zZm9ybWF0aW9uKSB7XG4gICAgdGhpcy50cmFuc2Zvcm1hdGlvbnMucHVzaChmdW5jKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBcHBseSBhbGwgdHJhbnNmb3JtYXRpb24gZnVuY3Rpb25zXG4gICAqIEBwYXJhbSBpZFxuICAgKiBAcGFyYW0gcnNcbiAgICovXG4gIGFwcGx5VHJhbnNmb3JtYXRpb25zKGlkOiBzdHJpbmcsIHJzOiBSZXN1bHRTZXQpIHtcbiAgICBsZXQgdHJhbnNmb3JtZWQgPSBycztcbiAgICB0aGlzLnRyYW5zZm9ybWF0aW9ucy5mb3JFYWNoKChmdW5jKSA9PiAodHJhbnNmb3JtZWQgPSBmdW5jKGlkLCB0cmFuc2Zvcm1lZCkpKTtcbiAgICByZXR1cm4gdHJhbnNmb3JtZWQ7XG4gIH1cblxuICBhdXRvY29tcGxldGUoXG4gICAgYXR0cmlidXRlczpcbiAgICAgIHwge1xuICAgICAgICAgIGlkOiBzdHJpbmc7XG4gICAgICAgICAgZGF0YXNvdXJjZTogc3RyaW5nO1xuICAgICAgICB9W11cbiAgICAgIHwgdW5kZWZpbmVkLFxuICAgIHNlYXJjaDogc3RyaW5nID0gJycsXG4gICAgbGltaXQ/OiBudW1iZXJcbiAgKSB7XG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2VsZWN0KENvbmZpZ1NlbGVjdG9ycy5kYXRhVXJsKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKCh1cmwpID0+XG4gICAgICAgIHRoaXMuaHR0cENsaWVudC5wb3N0PHN0cmluZ1tdPihlbmNvZGVVUkkoYCR7dXJsfS9kYXRhLXNvdXJjZXMvdmFsdWVzYCksIHtcbiAgICAgICAgICBhdHRyaWJ1dGVzOiAoYXR0cmlidXRlcyA/PyBbXSkubWFwKChhdHRyKSA9PiAoeyBkYXRhc291cmNlOiBhdHRyLmRhdGFzb3VyY2UsIGF0dHJpYnV0ZTogYXR0ci5pZCB9KSksXG4gICAgICAgICAgdmFsdWU6IHNlYXJjaCxcbiAgICAgICAgICBsaW1pdFxuICAgICAgICB9KVxuICAgICAgKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
150
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvY29yZS9zdG9yZS9zZWFyY2gvc2VhcmNoLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzlELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFjLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM5RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQU9sRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7OztBQVEzRSxNQUFNLE9BQU8sYUFBYTtJQU14QixZQUNVLFVBQXNCLEVBQ3RCLEtBQXVDO1FBRHZDLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDdEIsVUFBSyxHQUFMLEtBQUssQ0FBa0M7UUFQakQsb0JBQWUsR0FBOEIsRUFBRSxDQUFDO1FBQ2hELFlBQU8sR0FBOEMsRUFBRSxDQUFDO1FBQ3hELFdBQU0sR0FBNEIsRUFBRSxDQUFDO1FBQ3JDLGdCQUFXLEdBQWlCLEVBQUUsQ0FBQztRQU03QixL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QUFDLEVBQUU7WUFDdEUsVUFBVSxFQUFFLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNuRyxLQUFLLEVBQUUsTUFBTTtZQUNiLEtBQUs7U0FDTixDQUFDLENBQ0gsQ0FDRixDQUFDO0lBQ0osQ0FBQzs4R0E5S1UsYUFBYTtrSEFBYixhQUFhLGNBRlosTUFBTTs7MkZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgbWVyZ2VNYXAsIE9ic2VydmFibGUsIG9mLCBzd2l0Y2hNYXAsIHRha2UsIHdpdGhMYXRlc3RGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEYXNoYm9hcmRTZWxlY3RvcnMgfSBmcm9tICcuLi8uLi8uLi9kYXNoYm9hcmQvc3RvcmUvZGFzaGJvYXJkLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBGaWx0ZXJDb250ZXh0IH0gZnJvbSAnLi4vLi4vbW9kZWwvZmlsdGVyLmludGVyZmFjZSc7XG5pbXBvcnQgeyBSZXN1bHRPcmRlciB9IGZyb20gJy4uLy4uL21vZGVsL3Jlc3VsdC1vcmRlci5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUmVzdWx0U2V0IH0gZnJvbSAnLi4vLi4vbW9kZWwvcmVzdWx0LXNldC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTW9ub0NsYXNzU2VhcmNoUGF5bG9hZCB9IGZyb20gJy4uLy4uL21vZGVsL3NlYXJjaC1tb25vLWNsYXNzLm1vZGVsJztcbmltcG9ydCB7IEZ1bGxUZXh0U2VhcmNoUGF5bG9hZCwgTXVsdGlDbGFzc1NlYXJjaFBheWxvYWQgfSBmcm9tICcuLi8uLi9tb2RlbC9zZWFyY2gtbXVsdGktY2xhc3MubW9kZWwnO1xuaW1wb3J0IHsgQ29uZmlnU3RhdGUgfSBmcm9tICcuLi9jb25maWcvY29uZmlnLnJlZHVjZXInO1xuaW1wb3J0IHsgQ29uZmlnU2VsZWN0b3JzIH0gZnJvbSAnLi4vY29uZmlnL2NvbmZpZy5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgREVGQVVMVF9OQU1FRF9RVUVSWV9JRCB9IGZyb20gJy4vc2VhcmNoLmNvbnN0YW50cyc7XG5pbXBvcnQgeyBTZWFyY2hTdGF0ZSB9IGZyb20gJy4vc2VhcmNoLnJlZHVjZXInO1xuaW1wb3J0IHsgRmlsdGVyUGFyYW1FbmNvZGVyIH0gZnJvbSAnLi9maWx0ZXItcGFyYW0tZW5jb2Rlcic7XG5pbXBvcnQgeyBEYXRlVXRpbHMgfSBmcm9tICcuLi8uLi8uLi9kYXNoYm9hcmQvZGF0ZS11dGlscyc7XG5pbXBvcnQgeyBOYW1lZFF1ZXJ5VHlwZXMgfSBmcm9tICcuLi9kYXRhLXNvdXJjZS9uYW1lZC1xdWVyeS10eXBlcy5tb2RlbCc7XG5pbXBvcnQgeyBEYXRhU291cmNlU2VsZWN0b3JzIH0gZnJvbSAnLi4vZGF0YS1zb3VyY2UvZGF0YS1zb3VyY2Uuc2VsZWN0b3JzJztcbmltcG9ydCB7IERhdGFTb3VyY2UgfSBmcm9tICcuLi9kYXRhLXNvdXJjZS9kYXRhLXNvdXJjZS5tb2RlbCc7XG5cbmV4cG9ydCB0eXBlIFJlc3VsdHNldFRyYW5zZm9ybWF0aW9uID0gKGlkOiBzdHJpbmcsIHJlc3VsdDogUmVzdWx0U2V0KSA9PiBSZXN1bHRTZXQ7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaFNlcnZpY2Uge1xuICB0cmFuc2Zvcm1hdGlvbnM6IFJlc3VsdHNldFRyYW5zZm9ybWF0aW9uW10gPSBbXTtcbiAgZmlsdGVyczogeyBbZGF0YXNvdXJjZTogc3RyaW5nXTogRmlsdGVyQ29udGV4dFtdIH0gPSB7fTtcbiAgbGltaXRzOiB7IFtwOiBzdHJpbmddOiBudW1iZXIgfSA9IHt9O1xuICBkYXRhc291cmNlczogRGF0YVNvdXJjZVtdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPENvbmZpZ1N0YXRlIHwgU2VhcmNoU3RhdGU+XG4gICkge1xuICAgIHN0b3JlLnNlbGVjdChEYXNoYm9hcmRTZWxlY3RvcnMuZGF0YXNvdXJjZUZpbHRlcnMpLnN1YnNjcmliZSgoZmlsdGVycykgPT4ge1xuICAgICAgdGhpcy5maWx0ZXJzID0gZmlsdGVycztcbiAgICB9KTtcbiAgICBzdG9yZS5zZWxlY3QoQ29uZmlnU2VsZWN0b3JzLmxpbWl0cykuc3Vic2NyaWJlKChsaW1pdHMpID0+IHtcbiAgICAgIHRoaXMubGltaXRzID0gbGltaXRzO1xuICAgIH0pO1xuICAgIHN0b3JlLnNlbGVjdChEYXRhU291cmNlU2VsZWN0b3JzLmdldERhdGFTb3VyY2VzKS5zdWJzY3JpYmUoKGRhdGFzb3VyY2VzKSA9PiB7XG4gICAgICB0aGlzLmRhdGFzb3VyY2VzID0gZGF0YXNvdXJjZXM7XG4gICAgfSk7XG4gIH1cblxuICBnZXRJdGVtcyhcbiAgICBpZDogc3RyaW5nLFxuICAgIHF1aWNrT3JkZXI/OiBSZXN1bHRPcmRlcixcbiAgICBleGNsdWRlR2VvPzogYm9vbGVhbixcbiAgICBzZWFyY2hBZnRlcj86IHN0cmluZyxcbiAgICBsaW5rZWRJdGVtczogKCdkZXN0aW5hdGlvbicgfCAnc291cmNlJylbXSA9IFtdXG4gICk6IE9ic2VydmFibGU8UmVzdWx0U2V0PiB7XG4gICAgY29uc3QgcGFyYW1zID0gdGhpcy5nZXRJdGVtc0ZpbHRlcihpZCwgdGhpcy5nZXRPcmRlcihxdWlja09yZGVyKSk7XG4gICAgaWYgKCFpZCkge1xuICAgICAgY29uc29sZS53YXJuKCdOb3Qgc2VuZGluZyBpdGVtcyByZXF1ZXN0IHdpdGggbm8gZGF0YXNvdXJjZSBhdHRhY2hlZC4nKTtcbiAgICAgIHJldHVybiBvZih7IGl0ZW1zOiB7fSwgcmVsYXRpb25zOiBbXSB9IGFzIFJlc3VsdFNldCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuc3RvcmUuc2VsZWN0KENvbmZpZ1NlbGVjdG9ycy5kYXRhVXJsKS5waXBlKFxuICAgICAgbWVyZ2VNYXAoKHVybCkgPT4ge1xuICAgICAgICBjb25zdCBkcyA9IHRoaXMuZGF0YXNvdXJjZXMuZmluZCgoZCkgPT4gZC5pZCA9PT0gaWQpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3Q8UmVzdWx0U2V0PihcbiAgICAgICAgICBlbmNvZGVVUkkoYCR7dXJsfS9kYXRhLXNvdXJjZXMvaWQvJHtpZH0vaXRlbXNgKSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0eXBlOiBkcz8uc291cmNlVHlwZSA9PT0gJ25hbWVkUXVlcnknID8gZHMucmVxdWVzdC50eXBlIDogTmFtZWRRdWVyeVR5cGVzLk1PTk9fQ0xBU1MsXG4gICAgICAgICAgICBleGNsdWRlR2VvOiBleGNsdWRlR2VvID8/IGZhbHNlLFxuICAgICAgICAgICAgc2VhcmNoQWZ0ZXI6IHNlYXJjaEFmdGVyID8/IHVuZGVmaW5lZCxcbiAgICAgICAgICAgIGxpbmtlZEl0ZW1zXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7IHBhcmFtcyB9XG4gICAgICAgICk7XG4gICAgICB9KSxcbiAgICAgIG1hcCgocnMpID0+IHRoaXMuYXBwbHlUcmFuc2Zvcm1hdGlvbnMoaWQsIHJzKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0SXRlbXNTZXJpYWxpemVkUGFyYW1zKGlkOiBzdHJpbmcsIHF1aWNrT3JkZXI6IHsgW2lkOiBzdHJpbmddOiBSZXN1bHRPcmRlciB8IHVuZGVmaW5lZCB9ID0ge30pOiBzdHJpbmcge1xuICAgIHJldHVybiAnfCcgKyB0aGlzLmdldEl0ZW1zRmlsdGVyKGlkLCB0aGlzLmdldE9yZGVyKHF1aWNrT3JkZXJbaWRdKSkudG9TdHJpbmcoKSArICd8JztcbiAgfVxuXG4gIGdldEl0ZW1zRmlsdGVyKGlkOiBzdHJpbmcsIGN1bXVsYXRpdmU/OiBIdHRwUGFyYW1zLCBpbmNsdWRlTGltaXQgPSB0cnVlKTogSHR0cFBhcmFtcyB7XG4gICAgbGV0IHBhcmFtcyA9IGN1bXVsYXRpdmUgPz8gbmV3IEh0dHBQYXJhbXMoeyBlbmNvZGVyOiBuZXcgRmlsdGVyUGFyYW1FbmNvZGVyKCkgfSk7XG4gICAgaWYgKHRoaXMuZmlsdGVyc1tpZF0pIHtcbiAgICAgIHRoaXMuZmlsdGVyc1tpZF1cbiAgICAgICAgLmZpbHRlcigoZmlsdGVyKSA9PiBmaWx0ZXIudmFsdWUgIT09IG51bGwgJiYgZmlsdGVyLnZhbHVlICE9PSB1bmRlZmluZWQpXG4gICAgICAgIC5mb3JFYWNoKChmaWx0ZXIpID0+IHtcbiAgICAgICAgICBsZXQgdmFsdWVzVG9BZGRUb1BhcmFtcyA9IGZpbHRlci52YWx1ZTtcbiAgICAgICAgICAvLyBJTlNJREUgYW5kIE9VVFNJREUgb3BlcmF0b3JzIHVzZXMgMiB2YWx1ZXMgYnV0IG5vdCBzZW50IGluIGFuIGFycmF5LCB2YWx1ZXMgYXJlIHNlcGFyYXRlZCBieSBhIGNvbWFcbiAgICAgICAgICAvLyB3aWNoIG11c3Qgbm90IGJlIGVuY29kZWQgKGFzIGlmIHZhbHVlcyB3ZXJlIGluIGFuIGFycmF5KVxuICAgICAgICAgIGNvbnN0IGlzTXVsdGlWYWx1ZWQgPSBbJ0lOU0lERScsICdPVVRTSURFJ10uZmluZCgodmFsKSA9PiB2YWwgPT09IGZpbHRlci5vcGVyYXRvcikgIT09IHVuZGVmaW5lZDtcbiAgICAgICAgICBpZiAoaXNNdWx0aVZhbHVlZCkge1xuICAgICAgICAgICAgdmFsdWVzVG9BZGRUb1BhcmFtcyA9IChmaWx0ZXIudmFsdWUgYXMgc3RyaW5nKS5zcGxpdCgnLCcpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAvLyBkYXRlIGZpbHRlciB2YWx1ZSBtdXN0IGJlIHNlbmQgaW4gSVNPLTg2MDEgZm9ybWF0XG4gICAgICAgICAgaWYgKGZpbHRlci50eXBlID09PSAnZGF0ZScpIHtcbiAgICAgICAgICAgIHZhbHVlc1RvQWRkVG9QYXJhbXMgPSBpc011bHRpVmFsdWVkXG4gICAgICAgICAgICAgID8gKHZhbHVlc1RvQWRkVG9QYXJhbXMgYXMgc3RyaW5nW10pLm1hcCgodmFsdWUpID0+IERhdGVVdGlscy5wYXJzZVRvSXNvU3RyaW5nKHZhbHVlKSlcbiAgICAgICAgICAgICAgOiBEYXRlVXRpbHMucGFyc2VUb0lzb1N0cmluZyh2YWx1ZXNUb0FkZFRvUGFyYW1zIGFzIHN0cmluZyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnN0IHZhbHVlID0gQXJyYXkuaXNBcnJheSh2YWx1ZXNUb0FkZFRvUGFyYW1zKVxuICAgICAgICAgICAgPyB2YWx1ZXNUb0FkZFRvUGFyYW1zLm1hcCgodikgPT4gZW5jb2RlVVJJQ29tcG9uZW50KHYudG9TdHJpbmcoKS5zcGxpdCgnLCcpLmpvaW4oJ1xcXFwsJykpKS5qb2luKCcsJylcbiAgICAgICAgICAgIDogZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlc1RvQWRkVG9QYXJhbXMhLnRvU3RyaW5nKCkucmVwbGFjZSgvLC9nLCAnXFxcXCwnKSk7XG4gICAgICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZCgnZmlsdGVyJywgYCR7ZmlsdGVyLmF0dHJpYnV0ZX0sJHtmaWx0ZXIub3BlcmF0b3J9LCR7dmFsdWV9YCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAoaW5jbHVkZUxpbWl0KSB7XG4gICAgICBjb25zdCBsaW1pdCA9IHRoaXMubGltaXRzW2lkXTtcbiAgICAgIGlmIChsaW1pdCkge1xuICAgICAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdsaW1pdCcsIGxpbWl0KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHBhcmFtcztcbiAgfVxuXG4gIGdldE9yZGVyKHF1aWNrT3JkZXI6IFJlc3VsdE9yZGVyIHwgdW5kZWZpbmVkKTogSHR0cFBhcmFtcyB7XG4gICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKHsgZW5jb2RlcjogbmV3IEZpbHRlclBhcmFtRW5jb2RlcigpIH0pO1xuICAgIGlmIChxdWlja09yZGVyKSB7XG4gICAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdvcmRlcicsIGAke3F1aWNrT3JkZXIuYXR0cmlidXRlfSwke3F1aWNrT3JkZXIuYXNjID8/ICcnfWApO1xuICAgIH0gZWxzZSB7XG4gICAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdvcmRlcicsICd0cnVlLGFzYycpO1xuICAgIH1cbiAgICByZXR1cm4gcGFyYW1zO1xuICB9XG5cbiAgLyoqXG4gICAqIExhdW5jaCBhIHNlYXJjaCByZXF1ZXN0IChhbmQgc2F2ZXMgaXQgYXMgY3VycmVudCBzZWFyY2gpXG4gICAqIEBwYXJhbSBjb25kaXRpb25cbiAgICovXG4gIHNlYXJjaChcbiAgICBjb25kaXRpb246IE1vbm9DbGFzc1NlYXJjaFBheWxvYWQgfCBNdWx0aUNsYXNzU2VhcmNoUGF5bG9hZCB8IEZ1bGxUZXh0U2VhcmNoUGF5bG9hZCxcbiAgICBpZD86IHN0cmluZyxcbiAgICB3aXRoTGlua2VkSXRlbXM6ICgnZGVzdGluYXRpb24nIHwgJ3NvdXJjZScpW10gPSBbXVxuICApOiBPYnNlcnZhYmxlPFJlc3VsdFNldD4ge1xuICAgIHJldHVybiB0aGlzLnN0b3JlLnNlbGVjdChDb25maWdTZWxlY3RvcnMuZGF0YVVybCkucGlwZShcbiAgICAgIGZpbHRlcigodXJsKSA9PiAhIXVybCksXG4gICAgICB0YWtlKDEpLFxuICAgICAgd2l0aExhdGVzdEZyb20odGhpcy5zdG9yZS5zZWxlY3QoRGFzaGJvYXJkU2VsZWN0b3JzLnF1aWNrT3JkZXIpLCB0aGlzLnN0b3JlLnNlbGVjdChDb25maWdTZWxlY3RvcnMubGltaXRzKSksXG4gICAgICBtZXJnZU1hcCgoW3VybCwgcXVpY2tPcmRlciwgbGltaXRzXSkgPT4ge1xuICAgICAgICBjb25zdCBwYXJhbXMgPSB7fSBhcyB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuICAgICAgICBpZiAocXVpY2tPcmRlcltERUZBVUxUX05BTUVEX1FVRVJZX0lEXSkge1xuICAgICAgICAgIHBhcmFtc1snb3JkZXInXSA9IGAke3F1aWNrT3JkZXJbREVGQVVMVF9OQU1FRF9RVUVSWV9JRF0/LmF0dHJpYnV0ZX0sJHtcbiAgICAgICAgICAgIHF1aWNrT3JkZXJbREVGQVVMVF9OQU1FRF9RVUVSWV9JRF0/LmFzYyA/PyAnJ1xuICAgICAgICAgIH1gO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG90aGVyUGFyYW1zOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge307XG4gICAgICAgIGlmICh3aXRoTGlua2VkSXRlbXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgIGlmICh3aXRoTGlua2VkSXRlbXMuaW5jbHVkZXMoJ2Rlc3RpbmF0aW9uJykpIHtcbiAgICAgICAgICAgIG90aGVyUGFyYW1zWyd3aXRoRGVzdGluYXRpb25JdGVtcyddID0gJ3RydWUnO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAod2l0aExpbmtlZEl0ZW1zLmluY2x1ZGVzKCdzb3VyY2UnKSkge1xuICAgICAgICAgICAgb3RoZXJQYXJhbXNbJ3dpdGhTb3VyY2VJdGVtcyddID0gJ3RydWUnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBjb25zdCBfY29uZGl0aW9uID0geyAuLi5jb25kaXRpb24sIGxpbWl0OiBsaW1pdHNbREVGQVVMVF9OQU1FRF9RVUVSWV9JRF0gPz8gbGltaXRzWydkZWZhdWx0J10sIC4uLm90aGVyUGFyYW1zIH07XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdDxSZXN1bHRTZXQ+KGVuY29kZVVSSShgJHt1cmx9L2l0ZW1zL3NlYXJjaGApLCBfY29uZGl0aW9uLCB7IHBhcmFtcyB9KTtcbiAgICAgIH0pLFxuICAgICAgbWFwKChycykgPT4gdGhpcy5hcHBseVRyYW5zZm9ybWF0aW9ucyhpZCA/PyBERUZBVUxUX05BTUVEX1FVRVJZX0lELCBycykpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBbGxvd3MgdG8gYWRkIGEgdHJhbnNmb3JtYXRpb24gZnVuY3Rpb24gd2hlbiBnZXR0aW5nIHJlc3VsdHMgZnJvbSBiYWNrZW5kXG4gICAqIEBwYXJhbSBmdW5jXG4gICAqL1xuICBhZGRUcmFuc2Zvcm1hdGlvbihmdW5jOiBSZXN1bHRzZXRUcmFuc2Zvcm1hdGlvbikge1xuICAgIHRoaXMudHJhbnNmb3JtYXRpb25zLnB1c2goZnVuYyk7XG4gIH1cblxuICAvKipcbiAgICogQXBwbHkgYWxsIHRyYW5zZm9ybWF0aW9uIGZ1bmN0aW9uc1xuICAgKiBAcGFyYW0gaWRcbiAgICogQHBhcmFtIHJzXG4gICAqL1xuICBhcHBseVRyYW5zZm9ybWF0aW9ucyhpZDogc3RyaW5nLCByczogUmVzdWx0U2V0KSB7XG4gICAgbGV0IHRyYW5zZm9ybWVkID0gcnM7XG4gICAgdGhpcy50cmFuc2Zvcm1hdGlvbnMuZm9yRWFjaCgoZnVuYykgPT4gKHRyYW5zZm9ybWVkID0gZnVuYyhpZCwgdHJhbnNmb3JtZWQpKSk7XG4gICAgcmV0dXJuIHRyYW5zZm9ybWVkO1xuICB9XG5cbiAgYXV0b2NvbXBsZXRlKFxuICAgIGF0dHJpYnV0ZXM6XG4gICAgICB8IHtcbiAgICAgICAgICBpZDogc3RyaW5nO1xuICAgICAgICAgIGRhdGFzb3VyY2U6IHN0cmluZztcbiAgICAgICAgfVtdXG4gICAgICB8IHVuZGVmaW5lZCxcbiAgICBzZWFyY2g6IHN0cmluZyA9ICcnLFxuICAgIGxpbWl0PzogbnVtYmVyXG4gICkge1xuICAgIHJldHVybiB0aGlzLnN0b3JlLnNlbGVjdChDb25maWdTZWxlY3RvcnMuZGF0YVVybCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgodXJsKSA9PlxuICAgICAgICB0aGlzLmh0dHBDbGllbnQucG9zdDxzdHJpbmdbXT4oZW5jb2RlVVJJKGAke3VybH0vZGF0YS1zb3VyY2VzL3ZhbHVlc2ApLCB7XG4gICAgICAgICAgYXR0cmlidXRlczogKGF0dHJpYnV0ZXMgPz8gW10pLm1hcCgoYXR0cikgPT4gKHsgZGF0YXNvdXJjZTogYXR0ci5kYXRhc291cmNlLCBhdHRyaWJ1dGU6IGF0dHIuaWQgfSkpLFxuICAgICAgICAgIHZhbHVlOiBzZWFyY2gsXG4gICAgICAgICAgbGltaXRcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -258,7 +258,7 @@ export class ToolboxManifestService extends SubscriptionnerDirective {
258
258
  if (!manifest) {
259
259
  return manifest;
260
260
  }
261
- const copy = JSON.parse(JSON.stringify(manifest));
261
+ const copy = structuredClone(manifest);
262
262
  if (instanciate && !!copy && copy.datasource === USE_CURRENT_RESULTSET) {
263
263
  copy.datasource = [];
264
264
  }
@@ -268,7 +268,7 @@ export class ToolboxManifestService extends SubscriptionnerDirective {
268
268
  this.initialManifests$.next({ ...this.initialManifests$.getValue(), [id]: manifest });
269
269
  }
270
270
  setAllLayouts(layout) {
271
- Object.keys(this.initialManifests$.getValue()).forEach((key) => (this.initialManifests$.getValue()[key].layout = JSON.parse(JSON.stringify(layout))));
271
+ Object.keys(this.initialManifests$.getValue()).forEach((key) => (this.initialManifests$.getValue()[key].layout = structuredClone(layout)));
272
272
  }
273
273
  isModel(id) {
274
274
  const manifest = this.get(id, false);
@@ -292,4 +292,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
292
292
  providedIn: 'root'
293
293
  }]
294
294
  }], ctorParameters: () => [{ type: i1.Store }] });
295
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJveC1tYW5pZmVzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvbGliL2NvcmUvdG9vbGJveC90b29sYm94LW1hbmlmZXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ2xILE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUNoRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUFFbkUsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsdUJBQXVCLENBQUM7QUFLN0QsTUFBTSxPQUFPLHNCQUF1QixTQUFRLHdCQUF3QjtJQTRPbEUsWUFBb0IsS0FBaUI7UUFDbkMsS0FBSyxFQUFFLENBQUM7UUFEVSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBM09yQyxzQkFBaUIsR0FBRyxJQUFJLGVBQWUsQ0FBb0M7WUFDekUsU0FBUyxFQUFFO2dCQUNULElBQUksRUFBRSxLQUFLO2dCQUNYLE1BQU0sRUFBRTtvQkFDTixDQUFDLEVBQUUsQ0FBQztvQkFDSixDQUFDLEVBQUUsQ0FBQztvQkFDSixNQUFNLEVBQUUsQ0FBQztvQkFDVCxLQUFLLEVBQUUsQ0FBQztpQkFDVDtnQkFDRCxPQUFPLEVBQUU7b0JBQ1As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O29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQzdDLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxVQUFVLEVBQUU7Z0JBQ1YsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQzlDLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxTQUFTLEVBQUU7Z0JBQ1QsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQzVDLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLEVBQUU7Z0JBQ2hELFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxNQUFNLEVBQUU7Z0JBQ04s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QUF0QixzQkFBc0IsY0FGckIsTUFBTTs7MkZBRVAsc0JBQXNCO2tCQUhsQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNSU1FX1RZUEVfV0lER0VUX01BTklGRVNULCBNSU1FX1RZUEVfV0lER0VUX1RZUEUgfSBmcm9tICcuLi8uLi9kYXNoYm9hcmQvY29tcG9uZW50cy9kYXNoYm9hcmQuY29tcG9uZW50JztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbm5lckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2Rhc2hib2FyZC9jb21wb25lbnRzL3N1YnNjcmlwdGlvbm5lci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRGFzaGJvYXJkU2VsZWN0b3JzIH0gZnJvbSAnLi4vLi4vZGFzaGJvYXJkL3N0b3JlL2Rhc2hib2FyZC5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgV2lkZ2V0TGF5b3V0LCBXaWRnZXRNYW5pZmVzdCB9IGZyb20gJy4uL21vZGVsL21hbmlmZXN0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBHcmFwaFR5cGUgfSBmcm9tICcuLi9tb2RlbC93aWRnZXQtYWdncmVnYXRlZC1jaGFydC1tYW5pZmVzdC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgVG9vbHRpcE1vZGUgfSBmcm9tICcuLi9tb2RlbC93aWRnZXQtbWFwLW1hbmlmZXN0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBDb25maWdTZWxlY3RvcnMgfSBmcm9tICcuLi9zdG9yZS9jb25maWcvY29uZmlnLnNlbGVjdG9ycyc7XG5cbmV4cG9ydCBjb25zdCBVU0VfQ1VSUkVOVF9SRVNVTFRTRVQgPSAndXNlLWN1cnJlbnQtcmVzdWx0c2V0JztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgVG9vbGJveE1hbmlmZXN0U2VydmljZSBleHRlbmRzIFN1YnNjcmlwdGlvbm5lckRpcmVjdGl2ZSB7XG4gIGluaXRpYWxNYW5pZmVzdHMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDx7IFtrZXk6IHN0cmluZ106IFdpZGdldE1hbmlmZXN0IH0+KHtcbiAgICBzaW1wbGVtYXA6IHtcbiAgICAgIHR5cGU6ICdtYXAnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIGZpdDogdHJ1ZSxcbiAgICAgICAgYXV0b21hdGljTGF5ZXJzOiB0cnVlLFxuICAgICAgICBsYXllcnM6IFtdLFxuICAgICAgICB0b29sdGlwTW9kZTogVG9vbHRpcE1vZGUuQ0xJQ0tcbiAgICAgIH0sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIGhlYXRtYXA6IHtcbiAgICAgIHR5cGU6ICdtYXAnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIGZpdDogdHJ1ZSxcbiAgICAgICAgbGF5ZXJzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgdHlwZTogJ2hlYXRtYXAnXG4gICAgICAgICAgfVxuICAgICAgICBdLFxuICAgICAgICB0b29sdGlwTW9kZTogVG9vbHRpcE1vZGUuQ0xJQ0tcbiAgICAgIH0sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIGJ1YmJsZW1hcDoge1xuICAgICAgdHlwZTogJ21hcCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgZml0OiB0cnVlLFxuICAgICAgICBsYXllcnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0eXBlOiAnYnViYmxlJ1xuICAgICAgICAgIH1cbiAgICAgICAgXSxcbiAgICAgICAgdG9vbHRpcE1vZGU6IFRvb2x0aXBNb2RlLkNMSUNLXG4gICAgICB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBtYXJrZXJtYXA6IHtcbiAgICAgIHR5cGU6ICdtYXAnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIGZpdDogdHJ1ZSxcbiAgICAgICAgbGF5ZXJzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgdHlwZTogJ21hcmtlcidcbiAgICAgICAgICB9XG4gICAgICAgIF0sXG4gICAgICAgIHRvb2x0aXBNb2RlOiBUb29sdGlwTW9kZS5DTElDS1xuICAgICAgfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgdGFibGU6IHtcbiAgICAgIHR5cGU6ICd0YWJsZScsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHt9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBiYXJjaGFydDoge1xuICAgICAgdHlwZTogJ2NoYXJ0JyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczogeyBncmFwaDogeyB0eXBlOiBHcmFwaFR5cGUuQkFSIH0gfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgaGlzdG9ncmFtOiB7XG4gICAgICB0eXBlOiAnY2hhcnQnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7IGdyYXBoOiB7IHR5cGU6IEdyYXBoVHlwZS5ISVNUT0dSQU0gfSB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBsaW5lY2hhcnQ6IHtcbiAgICAgIHR5cGU6ICdjaGFydCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHsgZ3JhcGg6IHsgdHlwZTogR3JhcGhUeXBlLkNVUlZFIH0gfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgcG9pbnRjaGFydDoge1xuICAgICAgdHlwZTogJ2NoYXJ0JyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczogeyBncmFwaDogeyB0eXBlOiBHcmFwaFR5cGUuUE9JTlRTIH0gfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgYXJlYWNoYXJ0OiB7XG4gICAgICB0eXBlOiAnY2hhcnQnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7IGdyYXBoOiB7IHR5cGU6IEdyYXBoVHlwZS5BUkVBIH0gfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgYXJjY2hhcnQ6IHtcbiAgICAgIHR5cGU6ICdjaGFydCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHsgZ3JhcGg6IHsgdHlwZTogR3JhcGhUeXBlLkNJUkNVTEFSIH0gfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgZGV0YWlsOiB7XG4gICAgICB0eXBlOiAnZGV0YWlsJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczoge31cbiAgICB9LFxuICAgIGlmcmFtZToge1xuICAgICAgdHlwZTogJ2lmcmFtZScsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHt9XG4gICAgfSxcbiAgICBncmFwaDoge1xuICAgICAgdHlwZTogJ2dyYXBoJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczoge1xuICAgICAgICBtaW5pTWFwOiB0cnVlXG4gICAgICB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICB0aWxlOiB7XG4gICAgICB0eXBlOiAndGlsZScsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHt9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICB0ZW1wbGF0ZToge1xuICAgICAgdHlwZTogJ3RlbXBsYXRlJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczogeyBodG1sOiAnJywgY3NzOiAnJyB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICB2ZWdhOiB7XG4gICAgICB0eXBlOiAndmVnYScsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgcGxhY2VEYXRhOiBbJ2RhdGEnLCAwLCAndmFsdWVzJ10sXG4gICAgICAgIGJhc2VTcGVjOiB7fVxuICAgICAgfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgYW5hbHl0aWM6IHtcbiAgICAgIHR5cGU6ICdhbmFseXRpYycsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHsgcHJpbWFyeVByb3A6ICcnLCBzZWNvbmRhcnlQcm9wOiAnJywgdmVydGljYWxQcm9wOiAnJywgdmFsdWVQcm9wOiAnJyB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfVxuICB9KTtcblxuICBjdXJyZW50UmVzdWx0U2V0OiBzdHJpbmdbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgc3RvcmU6IFN0b3JlPGFueT4pIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnN0b3JlLnNlbGVjdChEYXNoYm9hcmRTZWxlY3RvcnMuZGVmYXVsdERhdGFzb3VyY2VOYW1lcykuc3Vic2NyaWJlKChyc05hbWUpID0+IHtcbiAgICAgICAgdGhpcy5jdXJyZW50UmVzdWx0U2V0ID0gcnNOYW1lO1xuICAgICAgfSlcbiAgICApO1xuXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KENvbmZpZ1NlbGVjdG9ycy5jYXRhbG9nKS5zdWJzY3JpYmUoKHdpZGdldHMpID0+IHtcbiAgICAgICAgd2lkZ2V0cy5mb3JFYWNoKCh3aWRnZXQpID0+IHRoaXMuc2V0KHdpZGdldC5pZCwgeyAuLi5KU09OLnBhcnNlKHdpZGdldC5jb250ZW50KSwgdGl0bGU6IHdpZGdldC5uYW1lIH0pKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldChpZDogc3RyaW5nLCBpbnN0YW5jaWF0ZSA9IHRydWUpOiBXaWRnZXRNYW5pZmVzdCB7XG4gICAgY29uc3QgbWFuaWZlc3QgPSB0aGlzLmluaXRpYWxNYW5pZmVzdHMkLmdldFZhbHVlKClbaWRdO1xuICAgIGlmICghbWFuaWZlc3QpIHtcbiAgICAgIHJldHVybiBtYW5pZmVzdDtcbiAgICB9XG4gICAgY29uc3QgY29weSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkobWFuaWZlc3QpKTtcbiAgICBpZiAoaW5zdGFuY2lhdGUgJiYgISFjb3B5ICYmIGNvcHkuZGF0YXNvdXJjZSA9PT0gVVNFX0NVUlJFTlRfUkVTVUxUU0VUKSB7XG4gICAgICBjb3B5LmRhdGFzb3VyY2UgPSBbXTtcbiAgICB9XG4gICAgcmV0dXJuIGNvcHk7XG4gIH1cblxuICBzZXQoaWQ6IHN0cmluZywgbWFuaWZlc3Q6IFdpZGdldE1hbmlmZXN0KTogdm9pZCB7XG4gICAgdGhpcy5pbml0aWFsTWFuaWZlc3RzJC5uZXh0KHsgLi4udGhpcy5pbml0aWFsTWFuaWZlc3RzJC5nZXRWYWx1ZSgpLCBbaWRdOiBtYW5pZmVzdCB9KTtcbiAgfVxuXG4gIHNldEFsbExheW91dHMobGF5b3V0OiBXaWRnZXRMYXlvdXQpOiB2b2lkIHtcbiAgICBPYmplY3Qua2V5cyh0aGlzLmluaXRpYWxNYW5pZmVzdHMkLmdldFZhbHVlKCkpLmZvckVhY2goXG4gICAgICAoa2V5KSA9PiAodGhpcy5pbml0aWFsTWFuaWZlc3RzJC5nZXRWYWx1ZSgpW2tleV0ubGF5b3V0ID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShsYXlvdXQpKSlcbiAgICApO1xuICB9XG5cbiAgaXNNb2RlbChpZDogc3RyaW5nKSB7XG4gICAgY29uc3QgbWFuaWZlc3QgPSB0aGlzLmdldChpZCwgZmFsc2UpO1xuICAgIHJldHVybiAhIW1hbmlmZXN0ICYmIG1hbmlmZXN0LmRhdGFzb3VyY2UgPT09IFVTRV9DVVJSRU5UX1JFU1VMVFNFVDtcbiAgfVxuXG4gIGRhdGFUcmFuc2ZlcigkZXZlbnQ6IERyYWdFdmVudCwgaWQ6IHN0cmluZykge1xuICAgIGlmICghISRldmVudCAmJiAhISRldmVudC5kYXRhVHJhbnNmZXIgJiYgISRldmVudC5kYXRhVHJhbnNmZXIudHlwZXMuaW5jbHVkZXMoTUlNRV9UWVBFX1dJREdFVF9NQU5JRkVTVCkpIHtcbiAgICAgIGNvbnN0IG1hbmlmZXN0ID0gdGhpcy5nZXQoaWQpO1xuXG4gICAgICAkZXZlbnQuZGF0YVRyYW5zZmVyLmRyb3BFZmZlY3QgPSAnY29weSc7XG4gICAgICAkZXZlbnQuZGF0YVRyYW5zZmVyLmVmZmVjdEFsbG93ZWQgPSAnY29weSc7XG5cbiAgICAgICRldmVudC5kYXRhVHJhbnNmZXIuc2V0RGF0YShNSU1FX1RZUEVfV0lER0VUX01BTklGRVNULCBKU09OLnN0cmluZ2lmeShtYW5pZmVzdCkpO1xuICAgICAgJGV2ZW50LmRhdGFUcmFuc2Zlci5zZXREYXRhKE1JTUVfVFlQRV9XSURHRVRfVFlQRSArIG1hbmlmZXN0LnR5cGUsICd1bnVzZWQnKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
295
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGJveC1tYW5pZmVzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9kYXNoYm9hcmQvbGliL2NvcmUvdG9vbGJveC90b29sYm94LW1hbmlmZXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ2xILE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUNoRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUFFbkUsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsdUJBQXVCLENBQUM7QUFLN0QsTUFBTSxPQUFPLHNCQUF1QixTQUFRLHdCQUF3QjtJQTRPbEUsWUFBb0IsS0FBaUI7UUFDbkMsS0FBSyxFQUFFLENBQUM7UUFEVSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBM09yQyxzQkFBaUIsR0FBRyxJQUFJLGVBQWUsQ0FBb0M7WUFDekUsU0FBUyxFQUFFO2dCQUNULElBQUksRUFBRSxLQUFLO2dCQUNYLE1BQU0sRUFBRTtvQkFDTixDQUFDLEVBQUUsQ0FBQztvQkFDSixDQUFDLEVBQUUsQ0FBQztvQkFDSixNQUFNLEVBQUUsQ0FBQztvQkFDVCxLQUFLLEVBQUUsQ0FBQztpQkFDVDtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsR0FBRyxFQUFFLElBQUk7b0JBQ1QsZUFBZSxFQUFFLElBQUk7b0JBQ3JCLE1BQU0sRUFBRSxFQUFFO29CQUNWLFdBQVcsRUFBRSxXQUFXLENBQUMsS0FBSztpQkFDL0I7Z0JBQ0QsVUFBVSxFQUFFLHFCQUFxQjthQUNsQztZQUNELE9BQU8sRUFBRTtnQkFDUCxJQUFJLEVBQUUsS0FBSztnQkFDWCxNQUFNLEVBQUU7b0JBQ04sQ0FBQyxFQUFFLENBQUM7b0JBQ0osQ0FBQyxFQUFFLENBQUM7b0JBQ0osTUFBTSxFQUFFLENBQUM7b0JBQ1QsS0FBSyxFQUFFLENBQUM7aUJBQ1Q7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLEdBQUcsRUFBRSxJQUFJO29CQUNULE1BQU0sRUFBRTt3QkFDTjs0QkFDRSxJQUFJLEVBQUUsU0FBUzt5QkFDaEI7cUJBQ0Y7b0JBQ0QsV0FBVyxFQUFFLFdBQVcsQ0FBQyxLQUFLO2lCQUMvQjtnQkFDRCxVQUFVLEVBQUUscUJBQXFCO2FBQ2xDO1lBQ0QsU0FBUyxFQUFFO2dCQUNULElBQUksRUFBRSxLQUFLO2dCQUNYLE1BQU0sRUFBRTtvQkFDTixDQUFDLEVBQUUsQ0FBQztvQkFDSixDQUFDLEVBQUUsQ0FBQztvQkFDSixNQUFNLEVBQUUsQ0FBQztvQkFDVCxLQUFLLEVBQUUsQ0FBQztpQkFDVDtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsR0FBRyxFQUFFLElBQUk7b0JBQ1QsTUFBTSxFQUFFO3dCQUNOOzRCQUNFLElBQUksRUFBRSxRQUFRO3lCQUNmO3FCQUNGO29CQUNELFdBQVcsRUFBRSxXQUFXLENBQUMsS0FBSztpQkFDL0I7Z0JBQ0QsVUFBVSxFQUFFLHFCQUFxQjthQUNsQztZQUNELFNBQVMsRUFBRTtnQkFDVCxJQUFJLEVBQUUsS0FBSztnQkFDWCxNQUFNLEVBQUU7b0JBQ04sQ0FBQyxFQUFFLENBQUM7b0JBQ0osQ0FBQyxFQUFFLENBQUM7b0JBQ0osTUFBTSxFQUFFLENBQUM7b0JBQ1QsS0FBSyxFQUFFLENBQUM7aUJBQ1Q7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLEdBQUcsRUFBRSxJQUFJO29CQUNULE1BQU0sRUFBRTt3QkFDTjs0QkFDRSxJQUFJLEVBQUUsUUFBUTt5QkFDZjtxQkFDRjtvQkFDRCxXQUFXLEVBQUUsV0FBVyxDQUFDLEtBQUs7aUJBQy9CO2dCQUNELFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxLQUFLLEVBQUU7Z0JBQ0wsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFO2dCQUNYLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQzNDLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxTQUFTLEVBQUU7Z0JBQ1QsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsU0FBUyxFQUFFLEVBQUU7Z0JBQ2pELFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxTQUFTLEVBQUU7Z0JBQ1QsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQzdDLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxVQUFVLEVBQUU7Z0JBQ1YsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQzlDLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxTQUFTLEVBQUU7Z0JBQ1QsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQzVDLFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsSUFBSSxFQUFFLE9BQU87Z0JBQ2IsTUFBTSxFQUFFO29CQUNOLENBQUMsRUFBRSxDQUFDO29CQUNKLENBQUMsRUFBRSxDQUFDO29CQUNKLE1BQU0sRUFBRSxDQUFDO29CQUNULEtBQUssRUFBRSxDQUFDO2lCQUNUO2dCQUNELE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFLEVBQUU7Z0JBQ2hELFVBQVUsRUFBRSxxQkFBcUI7YUFDbEM7WUFDRCxNQUFNLEVBQUU7Z0JBQ04s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LE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IE1JTUVfVFlQRV9XSURHRVRfTUFOSUZFU1QsIE1JTUVfVFlQRV9XSURHRVRfVFlQRSB9IGZyb20gJy4uLy4uL2Rhc2hib2FyZC9jb21wb25lbnRzL2Rhc2hib2FyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGFzaGJvYXJkL2NvbXBvbmVudHMvc3Vic2NyaXB0aW9ubmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBEYXNoYm9hcmRTZWxlY3RvcnMgfSBmcm9tICcuLi8uLi9kYXNoYm9hcmQvc3RvcmUvZGFzaGJvYXJkLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBXaWRnZXRMYXlvdXQsIFdpZGdldE1hbmlmZXN0IH0gZnJvbSAnLi4vbW9kZWwvbWFuaWZlc3QuaW50ZXJmYWNlJztcbmltcG9ydCB7IEdyYXBoVHlwZSB9IGZyb20gJy4uL21vZGVsL3dpZGdldC1hZ2dyZWdhdGVkLWNoYXJ0LW1hbmlmZXN0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBUb29sdGlwTW9kZSB9IGZyb20gJy4uL21vZGVsL3dpZGdldC1tYXAtbWFuaWZlc3QuaW50ZXJmYWNlJztcbmltcG9ydCB7IENvbmZpZ1NlbGVjdG9ycyB9IGZyb20gJy4uL3N0b3JlL2NvbmZpZy9jb25maWcuc2VsZWN0b3JzJztcblxuZXhwb3J0IGNvbnN0IFVTRV9DVVJSRU5UX1JFU1VMVFNFVCA9ICd1c2UtY3VycmVudC1yZXN1bHRzZXQnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBUb29sYm94TWFuaWZlc3RTZXJ2aWNlIGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIHtcbiAgaW5pdGlhbE1hbmlmZXN0cyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHsgW2tleTogc3RyaW5nXTogV2lkZ2V0TWFuaWZlc3QgfT4oe1xuICAgIHNpbXBsZW1hcDoge1xuICAgICAgdHlwZTogJ21hcCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgZml0OiB0cnVlLFxuICAgICAgICBhdXRvbWF0aWNMYXllcnM6IHRydWUsXG4gICAgICAgIGxheWVyczogW10sXG4gICAgICAgIHRvb2x0aXBNb2RlOiBUb29sdGlwTW9kZS5DTElDS1xuICAgICAgfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgaGVhdG1hcDoge1xuICAgICAgdHlwZTogJ21hcCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgZml0OiB0cnVlLFxuICAgICAgICBsYXllcnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0eXBlOiAnaGVhdG1hcCdcbiAgICAgICAgICB9XG4gICAgICAgIF0sXG4gICAgICAgIHRvb2x0aXBNb2RlOiBUb29sdGlwTW9kZS5DTElDS1xuICAgICAgfSxcbiAgICAgIGRhdGFzb3VyY2U6IFVTRV9DVVJSRU5UX1JFU1VMVFNFVFxuICAgIH0sXG4gICAgYnViYmxlbWFwOiB7XG4gICAgICB0eXBlOiAnbWFwJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczoge1xuICAgICAgICBmaXQ6IHRydWUsXG4gICAgICAgIGxheWVyczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHR5cGU6ICdidWJibGUnXG4gICAgICAgICAgfVxuICAgICAgICBdLFxuICAgICAgICB0b29sdGlwTW9kZTogVG9vbHRpcE1vZGUuQ0xJQ0tcbiAgICAgIH0sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIG1hcmtlcm1hcDoge1xuICAgICAgdHlwZTogJ21hcCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHtcbiAgICAgICAgZml0OiB0cnVlLFxuICAgICAgICBsYXllcnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICB0eXBlOiAnbWFya2VyJ1xuICAgICAgICAgIH1cbiAgICAgICAgXSxcbiAgICAgICAgdG9vbHRpcE1vZGU6IFRvb2x0aXBNb2RlLkNMSUNLXG4gICAgICB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICB0YWJsZToge1xuICAgICAgdHlwZTogJ3RhYmxlJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczoge30sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIGJhcmNoYXJ0OiB7XG4gICAgICB0eXBlOiAnY2hhcnQnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7IGdyYXBoOiB7IHR5cGU6IEdyYXBoVHlwZS5CQVIgfSB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBoaXN0b2dyYW06IHtcbiAgICAgIHR5cGU6ICdjaGFydCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHsgZ3JhcGg6IHsgdHlwZTogR3JhcGhUeXBlLkhJU1RPR1JBTSB9IH0sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIGxpbmVjaGFydDoge1xuICAgICAgdHlwZTogJ2NoYXJ0JyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczogeyBncmFwaDogeyB0eXBlOiBHcmFwaFR5cGUuQ1VSVkUgfSB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBwb2ludGNoYXJ0OiB7XG4gICAgICB0eXBlOiAnY2hhcnQnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7IGdyYXBoOiB7IHR5cGU6IEdyYXBoVHlwZS5QT0lOVFMgfSB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBhcmVhY2hhcnQ6IHtcbiAgICAgIHR5cGU6ICdjaGFydCcsXG4gICAgICBsYXlvdXQ6IHtcbiAgICAgICAgeDogMSxcbiAgICAgICAgeTogMSxcbiAgICAgICAgaGVpZ2h0OiAyLFxuICAgICAgICB3aWR0aDogM1xuICAgICAgfSxcbiAgICAgIG9wdGlvbnM6IHsgZ3JhcGg6IHsgdHlwZTogR3JhcGhUeXBlLkFSRUEgfSB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBhcmNjaGFydDoge1xuICAgICAgdHlwZTogJ2NoYXJ0JyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczogeyBncmFwaDogeyB0eXBlOiBHcmFwaFR5cGUuQ0lSQ1VMQVIgfSB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBkZXRhaWw6IHtcbiAgICAgIHR5cGU6ICdkZXRhaWwnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7fVxuICAgIH0sXG4gICAgaWZyYW1lOiB7XG4gICAgICB0eXBlOiAnaWZyYW1lJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczoge31cbiAgICB9LFxuICAgIGdyYXBoOiB7XG4gICAgICB0eXBlOiAnZ3JhcGgnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIG1pbmlNYXA6IHRydWVcbiAgICAgIH0sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIHRpbGU6IHtcbiAgICAgIHR5cGU6ICd0aWxlJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczoge30sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIHRlbXBsYXRlOiB7XG4gICAgICB0eXBlOiAndGVtcGxhdGUnLFxuICAgICAgbGF5b3V0OiB7XG4gICAgICAgIHg6IDEsXG4gICAgICAgIHk6IDEsXG4gICAgICAgIGhlaWdodDogMixcbiAgICAgICAgd2lkdGg6IDNcbiAgICAgIH0sXG4gICAgICBvcHRpb25zOiB7IGh0bWw6ICcnLCBjc3M6ICcnIH0sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9LFxuICAgIHZlZ2E6IHtcbiAgICAgIHR5cGU6ICd2ZWdhJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczoge1xuICAgICAgICBwbGFjZURhdGE6IFsnZGF0YScsIDAsICd2YWx1ZXMnXSxcbiAgICAgICAgYmFzZVNwZWM6IHt9XG4gICAgICB9LFxuICAgICAgZGF0YXNvdXJjZTogVVNFX0NVUlJFTlRfUkVTVUxUU0VUXG4gICAgfSxcbiAgICBhbmFseXRpYzoge1xuICAgICAgdHlwZTogJ2FuYWx5dGljJyxcbiAgICAgIGxheW91dDoge1xuICAgICAgICB4OiAxLFxuICAgICAgICB5OiAxLFxuICAgICAgICBoZWlnaHQ6IDIsXG4gICAgICAgIHdpZHRoOiAzXG4gICAgICB9LFxuICAgICAgb3B0aW9uczogeyBwcmltYXJ5UHJvcDogJycsIHNlY29uZGFyeVByb3A6ICcnLCB2ZXJ0aWNhbFByb3A6ICcnLCB2YWx1ZVByb3A6ICcnIH0sXG4gICAgICBkYXRhc291cmNlOiBVU0VfQ1VSUkVOVF9SRVNVTFRTRVRcbiAgICB9XG4gIH0pO1xuXG4gIGN1cnJlbnRSZXN1bHRTZXQ6IHN0cmluZ1tdID0gW107XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzdG9yZTogU3RvcmU8YW55Pikge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KERhc2hib2FyZFNlbGVjdG9ycy5kZWZhdWx0RGF0YXNvdXJjZU5hbWVzKS5zdWJzY3JpYmUoKHJzTmFtZSkgPT4ge1xuICAgICAgICB0aGlzLmN1cnJlbnRSZXN1bHRTZXQgPSByc05hbWU7XG4gICAgICB9KVxuICAgICk7XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgdGhpcy5zdG9yZS5zZWxlY3QoQ29uZmlnU2VsZWN0b3JzLmNhdGFsb2cpLnN1YnNjcmliZSgod2lkZ2V0cykgPT4ge1xuICAgICAgICB3aWRnZXRzLmZvckVhY2goKHdpZGdldCkgPT4gdGhpcy5zZXQod2lkZ2V0LmlkLCB7IC4uLkpTT04ucGFyc2Uod2lkZ2V0LmNvbnRlbnQpLCB0aXRsZTogd2lkZ2V0Lm5hbWUgfSkpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0KGlkOiBzdHJpbmcsIGluc3RhbmNpYXRlID0gdHJ1ZSk6IFdpZGdldE1hbmlmZXN0IHtcbiAgICBjb25zdCBtYW5pZmVzdCA9IHRoaXMuaW5pdGlhbE1hbmlmZXN0cyQuZ2V0VmFsdWUoKVtpZF07XG4gICAgaWYgKCFtYW5pZmVzdCkge1xuICAgICAgcmV0dXJuIG1hbmlmZXN0O1xuICAgIH1cbiAgICBjb25zdCBjb3B5ID0gc3RydWN0dXJlZENsb25lKG1hbmlmZXN0KTtcbiAgICBpZiAoaW5zdGFuY2lhdGUgJiYgISFjb3B5ICYmIGNvcHkuZGF0YXNvdXJjZSA9PT0gVVNFX0NVUlJFTlRfUkVTVUxUU0VUKSB7XG4gICAgICBjb3B5LmRhdGFzb3VyY2UgPSBbXTtcbiAgICB9XG4gICAgcmV0dXJuIGNvcHk7XG4gIH1cblxuICBzZXQoaWQ6IHN0cmluZywgbWFuaWZlc3Q6IFdpZGdldE1hbmlmZXN0KTogdm9pZCB7XG4gICAgdGhpcy5pbml0aWFsTWFuaWZlc3RzJC5uZXh0KHsgLi4udGhpcy5pbml0aWFsTWFuaWZlc3RzJC5nZXRWYWx1ZSgpLCBbaWRdOiBtYW5pZmVzdCB9KTtcbiAgfVxuXG4gIHNldEFsbExheW91dHMobGF5b3V0OiBXaWRnZXRMYXlvdXQpOiB2b2lkIHtcbiAgICBPYmplY3Qua2V5cyh0aGlzLmluaXRpYWxNYW5pZmVzdHMkLmdldFZhbHVlKCkpLmZvckVhY2goXG4gICAgICAoa2V5KSA9PiAodGhpcy5pbml0aWFsTWFuaWZlc3RzJC5nZXRWYWx1ZSgpW2tleV0ubGF5b3V0ID0gc3RydWN0dXJlZENsb25lKGxheW91dCkpXG4gICAgKTtcbiAgfVxuXG4gIGlzTW9kZWwoaWQ6IHN0cmluZykge1xuICAgIGNvbnN0IG1hbmlmZXN0ID0gdGhpcy5nZXQoaWQsIGZhbHNlKTtcbiAgICByZXR1cm4gISFtYW5pZmVzdCAmJiBtYW5pZmVzdC5kYXRhc291cmNlID09PSBVU0VfQ1VSUkVOVF9SRVNVTFRTRVQ7XG4gIH1cblxuICBkYXRhVHJhbnNmZXIoJGV2ZW50OiBEcmFnRXZlbnQsIGlkOiBzdHJpbmcpIHtcbiAgICBpZiAoISEkZXZlbnQgJiYgISEkZXZlbnQuZGF0YVRyYW5zZmVyICYmICEkZXZlbnQuZGF0YVRyYW5zZmVyLnR5cGVzLmluY2x1ZGVzKE1JTUVfVFlQRV9XSURHRVRfTUFOSUZFU1QpKSB7XG4gICAgICBjb25zdCBtYW5pZmVzdCA9IHRoaXMuZ2V0KGlkKTtcblxuICAgICAgJGV2ZW50LmRhdGFUcmFuc2Zlci5kcm9wRWZmZWN0ID0gJ2NvcHknO1xuICAgICAgJGV2ZW50LmRhdGFUcmFuc2Zlci5lZmZlY3RBbGxvd2VkID0gJ2NvcHknO1xuXG4gICAgICAkZXZlbnQuZGF0YVRyYW5zZmVyLnNldERhdGEoTUlNRV9UWVBFX1dJREdFVF9NQU5JRkVTVCwgSlNPTi5zdHJpbmdpZnkobWFuaWZlc3QpKTtcbiAgICAgICRldmVudC5kYXRhVHJhbnNmZXIuc2V0RGF0YShNSU1FX1RZUEVfV0lER0VUX1RZUEUgKyBtYW5pZmVzdC50eXBlLCAndW51c2VkJyk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -41,7 +41,7 @@ export class BusService {
41
41
  if (!action.sender) {
42
42
  // Send only non bus-received messages
43
43
  this.dataChannel.postMessage({
44
- ...JSON.parse(JSON.stringify(action)),
44
+ ...structuredClone(action),
45
45
  sender: this.sender,
46
46
  target
47
47
  });
@@ -83,4 +83,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
83
83
  providedIn: 'root'
84
84
  }]
85
85
  }], ctorParameters: () => [{ type: i1.Store }, { type: i0.NgZone }] });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvZGFzaGJvYXJkL2FjdGlvbi1idXMvc2VydmljZS9idXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7OztBQU9qRSxNQUFNLE9BQU8sVUFBVTtJQU1yQixZQUNVLEtBQWlCLEVBQ2pCLElBQVk7UUFEWixVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLFNBQUksR0FBSixJQUFJLENBQVE7UUFFcEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDO1FBQzlDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNoRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFFakIsaUZBQWlGO1FBQ2pGLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxHQUFHLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDbkMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDeEQsa0NBQWtDO2dCQUNsQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEdBQUcsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFD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LENBQUMsTUFBbUI7UUFDbkMsNkNBQTZDO1FBQzdDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxNQUFjO1FBQ2xDLGlEQUFpRDtRQUNqRCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzdCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2hDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7OEdBeEZVLFVBQVU7a0hBQVYsVUFBVSxjQUZULE1BQU07OzJGQUVQLFVBQVU7a0JBSHRCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3Rpb24sIFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgdjQgfSBmcm9tICd1dWlkJztcbmltcG9ydCB7IERhc2hib2FyZEFjdGlvbnMgfSBmcm9tICcuLi8uLi9zdG9yZS9kYXNoYm9hcmQuYWN0aW9ucyc7XG5pbXBvcnQgeyBCdXNBY3Rpb24gfSBmcm9tICcuLi9idXMtYWN0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDb250cm9sTWVzc2FnZSwgQ29udHJvbE1lc3NhZ2VUeXBlIH0gZnJvbSAnLi9jb250cm9sLW1lc3NhZ2UuaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQnVzU2VydmljZSB7XG4gIHNlbmRlcjogc3RyaW5nO1xuICBkYXRhQ2hhbm5lbDogQnJvYWRjYXN0Q2hhbm5lbDtcbiAgY29udHJvbENoYW5uZWw6IEJyb2FkY2FzdENoYW5uZWw7XG4gIGJ1ZmZlcjogQWN0aW9uW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmU8YW55PixcbiAgICBwcml2YXRlIHpvbmU6IE5nWm9uZVxuICApIHtcbiAgICB0aGlzLnNlbmRlciA9IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSArIHY0KCk7XG4gICAgdGhpcy5kYXRhQ2hhbm5lbCA9IG5ldyBCcm9hZGNhc3RDaGFubmVsKCdkYXRhJyk7XG4gICAgdGhpcy5jb250cm9sQ2hhbm5lbCA9IG5ldyBCcm9hZGNhc3RDaGFubmVsKCdjb250cm9sJyk7XG4gICAgdGhpcy5idWZmZXIgPSBbXTtcblxuICAgIC8vIERpc3BhdGNoIGFueSBtZXNzYWdlIHJlY2VpdmVkIG9uIHRoZSBkYXRhIGNoYW5uZWwgYXMgdGhleSBtdXN0IGJlIG5ncnggYWN0aW9uc1xuICAgIHRoaXMuZGF0YUNoYW5uZWwub25tZXNzYWdlID0gKG1zZykgPT4ge1xuICAgICAgaWYgKCFtc2cuZGF0YS50YXJnZXQgfHwgbXNnLmRhdGEudGFyZ2V0ID09PSB0aGlzLnNlbmRlcikge1xuICAgICAgICAvLyBpZiBicm9hZGNhc3Qgb3IgaSBhbSB0aGUgdGFyZ2V0XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goeyAuLi5tc2cuZGF0YSB9KTtcbiAgICAgIH1cbiAgICB9O1xuICAgIHRoaXMuZGF0YUNoYW5uZWwub25tZXNzYWdlZXJyb3IgPSAobXNnKSA9PiB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkobXNnKSk7XG4gICAgfTtcblxuICAgIHRoaXMuY29udHJvbENoYW5uZWwub25tZXNzYWdlID0gKG1zZykgPT5cbiAgICAgIHRoaXMuem9uZS5ydW4oKCkgPT4ge1xuICAgICAgICB0aGlzLm1hbmFnZUNvbnRyb2xNZXNzYWdlKG1zZy5kYXRhKTtcbiAgICAgIH0pO1xuICAgIHRoaXMuZGF0YUNoYW5uZWwub25tZXNzYWdlZXJyb3IgPSAobXNnKSA9PiB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkobXNnKSk7XG4gICAgfTtcblxuICAgIHdpbmRvdy5vbmJlZm9yZXVubG9hZCA9ICgpID0+IHRoaXMucG9zdENvbnRyb2woJ2xlYXZlJywgeyBzZW5kZXI6IHRoaXMuc2VuZGVyIH0pO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFxuICAgICAgICBEYXNoYm9hcmRBY3Rpb25zLmRlY2xhcmVTZW5kZXJJZCh7XG4gICAgICAgICAgc2VuZGVyOiB0aGlzLnNlbmRlcixcbiAgICAgICAgICB0ZW5hbnRzOiBbdGhpcy5zZW5kZXJdXG4gICAgICAgIH0pXG4gICAgICApO1xuICAgICAgdGhpcy5wb3N0Q29udHJvbCgnam9pbicsIHsgc2VuZGVyOiB0aGlzLnNlbmRlciB9KTtcbiAgICB9LCAxKTtcbiAgfVxuXG4gIHBvc3REYXRhKGFjdGlvbjogQnVzQWN0aW9uIHwgQWN0aW9uLCB0YXJnZXQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgaWYgKCFhY3Rpb24uc2VuZGVyKSB7XG4gICAgICAvLyBTZW5kIG9ubHkgbm9uIGJ1cy1yZWNlaXZlZCBtZXNzYWdlc1xuICAgICAgdGhpcy5kYXRhQ2hhbm5lbC5wb3N0TWVzc2FnZSh7XG4gICAgICAgIC4uLkpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoYWN0aW9uKSksXG4gICAgICAgIHNlbmRlcjogdGhpcy5zZW5kZXIsXG4gICAgICAgIHRhcmdldFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcG9zdENvbnRyb2wodHlwZTogQ29udHJvbE1lc3NhZ2VUeXBlLCBkYXRhOiBhbnkpIHtcbiAgICB0aGlzLmNvbnRyb2xDaGFubmVsLnBvc3RNZXNzYWdlKHsgdHlwZSwgZGF0YSwgc2VuZGVyOiB0aGlzLnNlbmRlciB9KTtcbiAgfVxuXG4gIG1hbmFnZUNvbnRyb2xNZXNzYWdlKG1zZzogQ29udHJvbE1lc3NhZ2UpIHtcbiAgICBzd2l0Y2ggKG1zZy50eXBlKSB7XG4gICAgICBjYXNlICdqb2luJzpcbiAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChEYXNoYm9hcmRBY3Rpb25zLmpvaW4oeyBzZW5kZXI6IG1zZy5zZW5kZXIgfSkpO1xuICAgICAgICB0aGlzLnJlbGFzZUJ1ZmZlcmVkQWN0aW9ucyhtc2cuc2VuZGVyKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdsZWF2ZSc6XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goRGFzaGJvYXJkQWN0aW9ucy5sZWF2ZSh7IHNlbmRlcjogbXNnLnNlbmRlciB9KSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgY29uc29sZS5lcnJvcignTWVzc2FnZSB0eXBlIHVucmVjb2duaXplZCcsIG1zZy50eXBlKTtcbiAgICB9XG4gIH1cblxuICBidWZmZXJVbnRpbEpvaW5lZChhY3Rpb246IEFjdGlvbjxhbnk+KSB7XG4gICAgLy8gQnVmZmVycyB0aGVzZSBhY3Rpb25zIHVudGlsIGEgbmV3IHRhYiBqb2luXG4gICAgdGhpcy5idWZmZXIucHVzaChhY3Rpb24pO1xuICB9XG5cbiAgcmVsYXNlQnVmZmVyZWRBY3Rpb25zKHNlbmRlcjogc3RyaW5nKSB7XG4gICAgLy8gUmVsZWFzZSBidWZmZXJlZCBhY3Rpb25zIHdhaXRpbmcgZm9yIHRoYXQgam9pblxuICAgIHRoaXMuYnVmZmVyLmZvckVhY2goKGFjdGlvbikgPT4ge1xuICAgICAgdGhpcy5wb3N0RGF0YShhY3Rpb24sIHNlbmRlcik7XG4gICAgfSk7XG4gICAgdGhpcy5idWZmZXIubGVuZ3RoID0gMDtcbiAgfVxufVxuIl19
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2Rhc2hib2FyZC9saWIvZGFzaGJvYXJkL2FjdGlvbi1idXMvc2VydmljZS9idXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7OztBQU9qRSxNQUFNLE9BQU8sVUFBVTtJQU1yQixZQUNVLEtBQWlCLEVBQ2pCLElBQVk7UUFEWixVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLFNBQUksR0FBSixJQUFJLENBQVE7UUFFcEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDO1FBQzlDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNoRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksZ0JBQWdCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFFakIsaUZBQWlGO1FBQ2pGLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxHQUFHLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDbkMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDeEQsa0NBQWtDO2dCQUNsQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEdBQUcsR0FBRyxDQUFDLElBQUksRUFBRSxDQUFD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LENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQscUJBQXFCLENBQUMsTUFBYztRQUNsQyxpREFBaUQ7UUFDakQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUM3QixJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUNoQyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUN6QixDQUFDOzhHQXhGVSxVQUFVO2tIQUFWLFVBQVUsY0FGVCxNQUFNOzsyRkFFUCxVQUFVO2tCQUh0QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aW9uLCBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IHY0IH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBEYXNoYm9hcmRBY3Rpb25zIH0gZnJvbSAnLi4vLi4vc3RvcmUvZGFzaGJvYXJkLmFjdGlvbnMnO1xuaW1wb3J0IHsgQnVzQWN0aW9uIH0gZnJvbSAnLi4vYnVzLWFjdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQ29udHJvbE1lc3NhZ2UsIENvbnRyb2xNZXNzYWdlVHlwZSB9IGZyb20gJy4vY29udHJvbC1tZXNzYWdlLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEJ1c1NlcnZpY2Uge1xuICBzZW5kZXI6IHN0cmluZztcbiAgZGF0YUNoYW5uZWw6IEJyb2FkY2FzdENoYW5uZWw7XG4gIGNvbnRyb2xDaGFubmVsOiBCcm9hZGNhc3RDaGFubmVsO1xuICBidWZmZXI6IEFjdGlvbltdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPGFueT4sXG4gICAgcHJpdmF0ZSB6b25lOiBOZ1pvbmVcbiAgKSB7XG4gICAgdGhpcy5zZW5kZXIgPSBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCkgKyB2NCgpO1xuICAgIHRoaXMuZGF0YUNoYW5uZWwgPSBuZXcgQnJvYWRjYXN0Q2hhbm5lbCgnZGF0YScpO1xuICAgIHRoaXMuY29udHJvbENoYW5uZWwgPSBuZXcgQnJvYWRjYXN0Q2hhbm5lbCgnY29udHJvbCcpO1xuICAgIHRoaXMuYnVmZmVyID0gW107XG5cbiAgICAvLyBEaXNwYXRjaCBhbnkgbWVzc2FnZSByZWNlaXZlZCBvbiB0aGUgZGF0YSBjaGFubmVsIGFzIHRoZXkgbXVzdCBiZSBuZ3J4IGFjdGlvbnNcbiAgICB0aGlzLmRhdGFDaGFubmVsLm9ubWVzc2FnZSA9IChtc2cpID0+IHtcbiAgICAgIGlmICghbXNnLmRhdGEudGFyZ2V0IHx8IG1zZy5kYXRhLnRhcmdldCA9PT0gdGhpcy5zZW5kZXIpIHtcbiAgICAgICAgLy8gaWYgYnJvYWRjYXN0IG9yIGkgYW0gdGhlIHRhcmdldFxuICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKHsgLi4ubXNnLmRhdGEgfSk7XG4gICAgICB9XG4gICAgfTtcbiAgICB0aGlzLmRhdGFDaGFubmVsLm9ubWVzc2FnZWVycm9yID0gKG1zZykgPT4ge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKEpTT04uc3RyaW5naWZ5KG1zZykpO1xuICAgIH07XG5cbiAgICB0aGlzLmNvbnRyb2xDaGFubmVsLm9ubWVzc2FnZSA9IChtc2cpID0+XG4gICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5tYW5hZ2VDb250cm9sTWVzc2FnZShtc2cuZGF0YSk7XG4gICAgICB9KTtcbiAgICB0aGlzLmRhdGFDaGFubmVsLm9ubWVzc2FnZWVycm9yID0gKG1zZykgPT4ge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKEpTT04uc3RyaW5naWZ5KG1zZykpO1xuICAgIH07XG5cbiAgICB3aW5kb3cub25iZWZvcmV1bmxvYWQgPSAoKSA9PiB0aGlzLnBvc3RDb250cm9sKCdsZWF2ZScsIHsgc2VuZGVyOiB0aGlzLnNlbmRlciB9KTtcblxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgRGFzaGJvYXJkQWN0aW9ucy5kZWNsYXJlU2VuZGVySWQoe1xuICAgICAgICAgIHNlbmRlcjogdGhpcy5zZW5kZXIsXG4gICAgICAgICAgdGVuYW50czogW3RoaXMuc2VuZGVyXVxuICAgICAgICB9KVxuICAgICAgKTtcbiAgICAgIHRoaXMucG9zdENvbnRyb2woJ2pvaW4nLCB7IHNlbmRlcjogdGhpcy5zZW5kZXIgfSk7XG4gICAgfSwgMSk7XG4gIH1cblxuICBwb3N0RGF0YShhY3Rpb246IEJ1c0FjdGlvbiB8IEFjdGlvbiwgdGFyZ2V0Pzogc3RyaW5nKTogdm9pZCB7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGlmICghYWN0aW9uLnNlbmRlcikge1xuICAgICAgLy8gU2VuZCBvbmx5IG5vbiBidXMtcmVjZWl2ZWQgbWVzc2FnZXNcbiAgICAgIHRoaXMuZGF0YUNoYW5uZWwucG9zdE1lc3NhZ2Uoe1xuICAgICAgICAuLi5zdHJ1Y3R1cmVkQ2xvbmUoYWN0aW9uKSxcbiAgICAgICAgc2VuZGVyOiB0aGlzLnNlbmRlcixcbiAgICAgICAgdGFyZ2V0XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwb3N0Q29udHJvbCh0eXBlOiBDb250cm9sTWVzc2FnZVR5cGUsIGRhdGE6IGFueSkge1xuICAgIHRoaXMuY29udHJvbENoYW5uZWwucG9zdE1lc3NhZ2UoeyB0eXBlLCBkYXRhLCBzZW5kZXI6IHRoaXMuc2VuZGVyIH0pO1xuICB9XG5cbiAgbWFuYWdlQ29udHJvbE1lc3NhZ2UobXNnOiBDb250cm9sTWVzc2FnZSkge1xuICAgIHN3aXRjaCAobXNnLnR5cGUpIHtcbiAgICAgIGNhc2UgJ2pvaW4nOlxuICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKERhc2hib2FyZEFjdGlvbnMuam9pbih7IHNlbmRlcjogbXNnLnNlbmRlciB9KSk7XG4gICAgICAgIHRoaXMucmVsYXNlQnVmZmVyZWRBY3Rpb25zKG1zZy5zZW5kZXIpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2xlYXZlJzpcbiAgICAgICAgdGhpcy5zdG9yZS5kaXNwYXRjaChEYXNoYm9hcmRBY3Rpb25zLmxlYXZlKHsgc2VuZGVyOiBtc2cuc2VuZGVyIH0pKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBjb25zb2xlLmVycm9yKCdNZXNzYWdlIHR5cGUgdW5yZWNvZ25pemVkJywgbXNnLnR5cGUpO1xuICAgIH1cbiAgfVxuXG4gIGJ1ZmZlclVudGlsSm9pbmVkKGFjdGlvbjogQWN0aW9uPGFueT4pIHtcbiAgICAvLyBCdWZmZXJzIHRoZXNlIGFjdGlvbnMgdW50aWwgYSBuZXcgdGFiIGpvaW5cbiAgICB0aGlzLmJ1ZmZlci5wdXNoKGFjdGlvbik7XG4gIH1cblxuICByZWxhc2VCdWZmZXJlZEFjdGlvbnMoc2VuZGVyOiBzdHJpbmcpIHtcbiAgICAvLyBSZWxlYXNlIGJ1ZmZlcmVkIGFjdGlvbnMgd2FpdGluZyBmb3IgdGhhdCBqb2luXG4gICAgdGhpcy5idWZmZXIuZm9yRWFjaCgoYWN0aW9uKSA9PiB7XG4gICAgICB0aGlzLnBvc3REYXRhKGFjdGlvbiwgc2VuZGVyKTtcbiAgICB9KTtcbiAgICB0aGlzLmJ1ZmZlci5sZW5ndGggPSAwO1xuICB9XG59XG4iXX0=