aril 2.0.1-dev.4 → 2.0.1-dev.5

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 (189) hide show
  1. package/boot/config/apps/src/interfaces.d.ts +7 -1
  2. package/boot/config/apps/src/route-close.service.d.ts +8 -3
  3. package/boot/config/apps/src/route-permissions.d.ts +2 -2
  4. package/esm2022/boot/config/api/src/interfaces.mjs +3 -2
  5. package/esm2022/boot/config/apps/src/apps.service.mjs +2 -2
  6. package/esm2022/boot/config/apps/src/custom-route-reuse-strategy.class.mjs +4 -4
  7. package/esm2022/boot/config/apps/src/interfaces.mjs +2 -1
  8. package/esm2022/boot/config/apps/src/route-close.service.mjs +11 -4
  9. package/esm2022/boot/config/apps/src/route-permissions.mjs +24 -6
  10. package/esm2022/boot/config/plugins/src/plugins.service.mjs +7 -5
  11. package/esm2022/boot/host/src/bootstrap.mjs +5 -3
  12. package/esm2022/boot/mfe/src/bootstrap.mjs +11 -3
  13. package/esm2022/http/index.mjs +1 -2
  14. package/esm2022/http/src/serviceBase.mjs +4 -4
  15. package/esm2022/http/src/serviceStateMethods.mjs +9 -1
  16. package/esm2022/keycloak/src/auth.interceptor.mjs +5 -2
  17. package/esm2022/selection/aril-selection.mjs +5 -0
  18. package/esm2022/selection/index.mjs +2 -0
  19. package/esm2022/selection/src/interfaces.mjs +2 -0
  20. package/esm2022/selection/src/selection-group.service.mjs +195 -0
  21. package/esm2022/theme/layout/app/profileSidebar/modals/edit-profile-modal/edit-profile-modal.component.mjs +2 -2
  22. package/esm2022/theme/layout/index.mjs +4 -2
  23. package/esm2022/ui/button/index.mjs +1 -2
  24. package/esm2022/ui/button/src/button.component.mjs +5 -2
  25. package/esm2022/ui/charts/index.mjs +1 -11
  26. package/esm2022/ui/lib/index.mjs +1 -4
  27. package/esm2022/ui/lib/src/form/form-error-message.directive.mjs +9 -5
  28. package/esm2022/ui/multiSelect/src/multi-select.component.mjs +25 -25
  29. package/esm2022/ui/relativeDateSelector/src/relative-date-selector.component.mjs +2 -2
  30. package/esm2022/ui/selectBox/src/select-box.component.mjs +11 -34
  31. package/esm2022/ui/table/src/table.component.mjs +10 -5
  32. package/esm2022/ui/value/src/value.component.mjs +3 -2
  33. package/esm2022/ui-business/enumPicker/src/enum-picker.component.mjs +14 -6
  34. package/esm2022/util/activity/aril-util-activity.mjs +5 -0
  35. package/esm2022/util/activity/index.mjs +4 -0
  36. package/esm2022/util/activity/src/activity.constants.mjs +4 -0
  37. package/esm2022/util/activity/src/activity.service.mjs +218 -0
  38. package/esm2022/util/activity/src/activity.types.mjs +2 -0
  39. package/esm2022/util/block/src/block.mjs +9 -25
  40. package/esm2022/util/pub-sub/src/pub-sub.service.mjs +10 -5
  41. package/fesm2022/{aril-app.component-s14ruALV.mjs → aril-app.component-MjG_tPEe.mjs} +2 -1
  42. package/fesm2022/{aril-app.component-s14ruALV.mjs.map → aril-app.component-MjG_tPEe.mjs.map} +1 -1
  43. package/fesm2022/aril-boot-config-api.mjs +2 -1
  44. package/fesm2022/aril-boot-config-api.mjs.map +1 -1
  45. package/fesm2022/aril-boot-config-apps.mjs +36 -12
  46. package/fesm2022/aril-boot-config-apps.mjs.map +1 -1
  47. package/fesm2022/aril-boot-config-plugins.mjs +6 -4
  48. package/fesm2022/aril-boot-config-plugins.mjs.map +1 -1
  49. package/fesm2022/aril-boot-host.mjs +4 -2
  50. package/fesm2022/aril-boot-host.mjs.map +1 -1
  51. package/fesm2022/{aril-boot-mfe-app.component-oxzMhRXe.mjs → aril-boot-mfe-app.component-DtspQ3J8.mjs} +3 -2
  52. package/fesm2022/{aril-boot-mfe-app.component-oxzMhRXe.mjs.map → aril-boot-mfe-app.component-DtspQ3J8.mjs.map} +1 -1
  53. package/fesm2022/{aril-boot-mfe-aril-boot-mfe-CKOM61xb.mjs → aril-boot-mfe-aril-boot-mfe-lovoFcgw.mjs} +12 -4
  54. package/fesm2022/aril-boot-mfe-aril-boot-mfe-lovoFcgw.mjs.map +1 -0
  55. package/fesm2022/aril-boot-mfe.mjs +2 -1
  56. package/fesm2022/aril-boot-mfe.mjs.map +1 -1
  57. package/fesm2022/aril-http.mjs +11 -7
  58. package/fesm2022/aril-http.mjs.map +1 -1
  59. package/fesm2022/aril-keycloak.mjs +4 -1
  60. package/fesm2022/aril-keycloak.mjs.map +1 -1
  61. package/fesm2022/aril-selection.mjs +202 -0
  62. package/fesm2022/aril-selection.mjs.map +1 -0
  63. package/fesm2022/aril-theme-layout.mjs +4 -193
  64. package/fesm2022/aril-theme-layout.mjs.map +1 -1
  65. package/fesm2022/aril-ui-business-enumPicker.mjs +14 -6
  66. package/fesm2022/aril-ui-business-enumPicker.mjs.map +1 -1
  67. package/fesm2022/aril-ui-button.mjs +5 -17
  68. package/fesm2022/aril-ui-button.mjs.map +1 -1
  69. package/fesm2022/aril-ui-charts.mjs +4 -1302
  70. package/fesm2022/aril-ui-charts.mjs.map +1 -1
  71. package/fesm2022/aril-ui-lib.mjs +10 -98
  72. package/fesm2022/aril-ui-lib.mjs.map +1 -1
  73. package/fesm2022/aril-ui-multiSelect.mjs +24 -24
  74. package/fesm2022/aril-ui-multiSelect.mjs.map +1 -1
  75. package/fesm2022/aril-ui-relativeDateSelector.mjs +1 -1
  76. package/fesm2022/aril-ui-relativeDateSelector.mjs.map +1 -1
  77. package/fesm2022/aril-ui-selectBox.mjs +10 -33
  78. package/fesm2022/aril-ui-selectBox.mjs.map +1 -1
  79. package/fesm2022/aril-ui-table.mjs +9 -4
  80. package/fesm2022/aril-ui-table.mjs.map +1 -1
  81. package/fesm2022/aril-ui-value.mjs +2 -1
  82. package/fesm2022/aril-ui-value.mjs.map +1 -1
  83. package/fesm2022/aril-util-activity.mjs +228 -0
  84. package/fesm2022/aril-util-activity.mjs.map +1 -0
  85. package/fesm2022/aril-util-block.mjs +9 -25
  86. package/fesm2022/aril-util-block.mjs.map +1 -1
  87. package/fesm2022/aril-util-pub-sub.mjs +9 -4
  88. package/fesm2022/aril-util-pub-sub.mjs.map +1 -1
  89. package/fesm2022/aril.mjs +14 -5
  90. package/fesm2022/aril.mjs.map +1 -1
  91. package/http/index.d.ts +0 -1
  92. package/http/src/serviceStateMethods.d.ts +1 -0
  93. package/package.json +215 -239
  94. package/selection/index.d.ts +1 -0
  95. package/selection/src/interfaces.d.ts +8 -0
  96. package/{theme/layout/service → selection/src}/selection-group.service.d.ts +1 -1
  97. package/theme/layout/index.d.ts +1 -1
  98. package/theme/layout/index.ts +3 -1
  99. package/ui/button/index.d.ts +0 -1
  100. package/ui/button/src/button.component.d.ts +2 -0
  101. package/ui/charts/index.d.ts +0 -10
  102. package/ui/lib/index.d.ts +0 -3
  103. package/ui/lib/src/form/form-error-message.directive.d.ts +4 -3
  104. package/ui/multiSelect/src/multi-select.component.d.ts +4 -5
  105. package/ui/selectBox/src/select-box.component.d.ts +2 -7
  106. package/ui/table/src/table.component.d.ts +3 -2
  107. package/util/activity/index.d.ts +3 -0
  108. package/util/activity/src/activity.constants.d.ts +3 -0
  109. package/util/activity/src/activity.service.d.ts +35 -0
  110. package/util/activity/src/activity.types.d.ts +13 -0
  111. package/util/block/src/block.d.ts +4 -10
  112. package/util/pub-sub/src/pub-sub.service.d.ts +2 -2
  113. package/esm2022/http/src/serviceMockBase.mjs +0 -4
  114. package/esm2022/theme/layout/service/selection-group.service.mjs +0 -195
  115. package/esm2022/ui/button/src/split-button.component.mjs +0 -18
  116. package/esm2022/ui/charts/src/amCharts/column/column-chart.component.mjs +0 -124
  117. package/esm2022/ui/charts/src/amCharts/line/line-chart.component.mjs +0 -164
  118. package/esm2022/ui/charts/src/amCharts/pie/pie-chart.component.mjs +0 -116
  119. package/esm2022/ui/charts/src/highCharts/area/area-chart.component.mjs +0 -114
  120. package/esm2022/ui/charts/src/highCharts/bar/bar-chart.component.mjs +0 -100
  121. package/esm2022/ui/charts/src/highCharts/column/column-chart.component.mjs +0 -117
  122. package/esm2022/ui/charts/src/highCharts/heatmap/heatMap-chart.component.mjs +0 -252
  123. package/esm2022/ui/charts/src/highCharts/line/line-chart-series.component.mjs +0 -89
  124. package/esm2022/ui/charts/src/highCharts/line/line-chart.component.mjs +0 -82
  125. package/esm2022/ui/charts/src/highCharts/pie/pie-chart.component.mjs +0 -137
  126. package/esm2022/ui/charts/src/theme/theme.mjs +0 -54
  127. package/esm2022/ui/dxEditor/aril-ui-dxEditor.mjs +0 -5
  128. package/esm2022/ui/dxEditor/index.mjs +0 -2
  129. package/esm2022/ui/dxEditor/src/dx-editor.component.mjs +0 -26
  130. package/esm2022/ui/lib/src/form/form-field-builder.mjs +0 -23
  131. package/esm2022/ui/lib/src/input/common-input-validators.service.mjs +0 -49
  132. package/esm2022/ui/lib/src/input/input-disabled.directive.mjs +0 -25
  133. package/esm2022/ui/overlayPanel/aril-ui-overlayPanel.mjs +0 -5
  134. package/esm2022/ui/overlayPanel/index.mjs +0 -2
  135. package/esm2022/ui/overlayPanel/src/overlay-panel.component.mjs +0 -20
  136. package/esm2022/ui/tooltip/aril-ui-tooltip.mjs +0 -5
  137. package/esm2022/ui/tooltip/index.mjs +0 -2
  138. package/esm2022/ui/tooltip/src/tooltip-component.mjs +0 -23
  139. package/esm2022/ui/treeTable/aril-ui-treeTable.mjs +0 -5
  140. package/esm2022/ui/treeTable/index.mjs +0 -2
  141. package/esm2022/ui/treeTable/src/tree-table.component.mjs +0 -55
  142. package/esm2022/ui-business/operation-types-dialog/aril-ui-business-operation-types-dialog.mjs +0 -5
  143. package/esm2022/ui-business/operation-types-dialog/index.mjs +0 -2
  144. package/esm2022/ui-business/operation-types-dialog/src/operation-types-dialog.component.mjs +0 -76
  145. package/esm2022/util/unwrap/aril-util-unwrap.mjs +0 -5
  146. package/esm2022/util/unwrap/index.mjs +0 -2
  147. package/esm2022/util/unwrap/src/unwrap-tag.directive.mjs +0 -24
  148. package/fesm2022/aril-boot-mfe-aril-boot-mfe-CKOM61xb.mjs.map +0 -1
  149. package/fesm2022/aril-ui-business-operation-types-dialog.mjs +0 -83
  150. package/fesm2022/aril-ui-business-operation-types-dialog.mjs.map +0 -1
  151. package/fesm2022/aril-ui-dxEditor.mjs +0 -33
  152. package/fesm2022/aril-ui-dxEditor.mjs.map +0 -1
  153. package/fesm2022/aril-ui-overlayPanel.mjs +0 -27
  154. package/fesm2022/aril-ui-overlayPanel.mjs.map +0 -1
  155. package/fesm2022/aril-ui-tooltip.mjs +0 -30
  156. package/fesm2022/aril-ui-tooltip.mjs.map +0 -1
  157. package/fesm2022/aril-ui-treeTable.mjs +0 -62
  158. package/fesm2022/aril-ui-treeTable.mjs.map +0 -1
  159. package/fesm2022/aril-util-unwrap.mjs +0 -31
  160. package/fesm2022/aril-util-unwrap.mjs.map +0 -1
  161. package/http/src/serviceMockBase.d.ts +0 -6
  162. package/theme/layout/service/selection-group.service.ts +0 -209
  163. package/ui/button/src/split-button.component.d.ts +0 -8
  164. package/ui/charts/src/amCharts/column/column-chart.component.d.ts +0 -25
  165. package/ui/charts/src/amCharts/line/line-chart.component.d.ts +0 -26
  166. package/ui/charts/src/amCharts/pie/pie-chart.component.d.ts +0 -24
  167. package/ui/charts/src/highCharts/area/area-chart.component.d.ts +0 -20
  168. package/ui/charts/src/highCharts/bar/bar-chart.component.d.ts +0 -26
  169. package/ui/charts/src/highCharts/column/column-chart.component.d.ts +0 -28
  170. package/ui/charts/src/highCharts/heatmap/heatMap-chart.component.d.ts +0 -32
  171. package/ui/charts/src/highCharts/line/line-chart-series.component.d.ts +0 -21
  172. package/ui/charts/src/highCharts/line/line-chart.component.d.ts +0 -21
  173. package/ui/charts/src/highCharts/pie/pie-chart.component.d.ts +0 -27
  174. package/ui/charts/src/theme/theme.d.ts +0 -5
  175. package/ui/dxEditor/index.d.ts +0 -1
  176. package/ui/dxEditor/src/dx-editor.component.d.ts +0 -11
  177. package/ui/lib/src/form/form-field-builder.d.ts +0 -8
  178. package/ui/lib/src/input/common-input-validators.service.d.ts +0 -20
  179. package/ui/lib/src/input/input-disabled.directive.d.ts +0 -9
  180. package/ui/overlayPanel/index.d.ts +0 -1
  181. package/ui/overlayPanel/src/overlay-panel.component.d.ts +0 -8
  182. package/ui/tooltip/index.d.ts +0 -1
  183. package/ui/tooltip/src/tooltip-component.d.ts +0 -14
  184. package/ui/treeTable/index.d.ts +0 -1
  185. package/ui/treeTable/src/tree-table.component.d.ts +0 -21
  186. package/ui-business/operation-types-dialog/index.d.ts +0 -1
  187. package/ui-business/operation-types-dialog/src/operation-types-dialog.component.d.ts +0 -28
  188. package/util/unwrap/index.d.ts +0 -1
  189. package/util/unwrap/src/unwrap-tag.directive.d.ts +0 -9
@@ -4,6 +4,7 @@ import { fromEvent } from 'rxjs';
4
4
  import { filter, switchMap, take } from 'rxjs/operators';
5
5
  import { bridge } from 'aril/boot/bridge';
6
6
  import { Apps } from 'aril/boot/config/apps';
7
+ import { ActivityService, LOGGER_SESSION_HEADER } from 'aril/util/activity';
7
8
  const HOST_APP_HEADERS = {
8
9
  [Apps.THOR]: { 'x-yeap-application': 'thor', 'x-application': 'thor', 'x-module': 'thor-fe' },
9
10
  [Apps.LENA]: { 'x-yeap-application': 'lena', 'x-application': 'lena', 'x-module': 'lena-fe' },
@@ -18,10 +19,12 @@ export const authInterceptor = (req, next) => {
18
19
  const activeHost = bridge.activeHost();
19
20
  const headers = isHostApp(activeHost) ? HOST_APP_HEADERS[activeHost] : {};
20
21
  const csrfToken = getCsrfToken();
22
+ const loggerSessionId = inject(ActivityService).getSessionId();
21
23
  const authReq = req.clone({
22
24
  setHeaders: {
23
25
  csrf_token: csrfToken ?? '',
24
- ...headers
26
+ ...headers,
27
+ ...(loggerSessionId ? { [LOGGER_SESSION_HEADER]: loggerSessionId } : {})
25
28
  }
26
29
  });
27
30
  return next(authReq);
@@ -40,4 +43,4 @@ export const keycloakAuthInterceptor = (req, next) => {
40
43
  }
41
44
  return fromEvent(document, 'visibilitychange').pipe(filter(() => document.visibilityState === 'visible'), take(1), switchMap(() => interceptor.intercept(req, { handle: next })));
42
45
  };
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwva2V5Y2xvYWsvc3JjL2F1dGguaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2QyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFJN0MsTUFBTSxnQkFBZ0IsR0FBc0Q7SUFDM0UsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFO0lBQzdGLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRTtJQUM3RixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUU7Q0FDN0YsQ0FBQztBQUVGLE1BQU0sU0FBUyxHQUFHLENBQUMsS0FBZ0MsRUFBb0IsRUFBRSxDQUN4RSxLQUFLLEtBQUssSUFBSSxDQUFDLElBQUksSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLElBQUksSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQztBQUVuRSxNQUFNLFlBQVksR0FBRyxHQUF1QixFQUFFLENBQzdDLFFBQVEsQ0FBQyxNQUFNO0tBQ2IsS0FBSyxDQUFDLElBQUksQ0FBQztLQUNYLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM3QyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUVsQixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQXNCLENBQUMsR0FBeUIsRUFBRSxJQUFtQixFQUFFLEVBQUU7SUFDcEcsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3ZDLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMxRSxNQUFNLFNBQVMsR0FBRyxZQUFZLEVBQUUsQ0FBQztJQUVqQyxNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDO1FBQ3pCLFVBQVUsRUFBRTtZQUNYLFVBQVUsRUFBRSxTQUFTLElBQUksRUFBRTtZQUMzQixHQUFHLE9BQU87U0FDVjtLQUNELENBQUMsQ0FBQztJQUVILE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ3RCLENBQUMsQ0FBQztBQUVGOzs7Ozs7R0FNRztBQUNILE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFzQixDQUFDLEdBQXlCLEVBQUUsSUFBbUIsRUFBRSxFQUFFO0lBQzVHLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBRXRELElBQUksT0FBTyxRQUFRLEtBQUssV0FBVyxJQUFJLFFBQVEsQ0FBQyxlQUFlLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDL0UsT0FBTyxXQUFXLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxPQUFPLFNBQVMsQ0FBQyxRQUFRLEVBQUUsa0JBQWtCLENBQUMsQ0FBQyxJQUFJLENBQ2xELE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsZUFBZSxLQUFLLFNBQVMsQ0FBQyxFQUNwRCxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQ1AsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FDN0QsQ0FBQztBQUNILENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBIYW5kbGVyRm4sIEh0dHBJbnRlcmNlcHRvckZuLCBIdHRwUmVxdWVzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBLZXljbG9ha0JlYXJlckludGVyY2VwdG9yIH0gZnJvbSAna2V5Y2xvYWstYW5ndWxhcic7XHJcbmltcG9ydCB7IGZyb21FdmVudCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIHN3aXRjaE1hcCwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IGJyaWRnZSB9IGZyb20gJ2FyaWwvYm9vdC9icmlkZ2UnO1xyXG5pbXBvcnQgeyBBcHBzIH0gZnJvbSAnYXJpbC9ib290L2NvbmZpZy9hcHBzJztcclxuXHJcbnR5cGUgSG9zdEFwcCA9IEFwcHMuVEhPUiB8IEFwcHMuWUVBUCB8IEFwcHMuTEVOQTtcclxuXHJcbmNvbnN0IEhPU1RfQVBQX0hFQURFUlM6IFJlY29yZDxIb3N0QXBwLCBSZWFkb25seTxSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+Pj4gPSB7XHJcblx0W0FwcHMuVEhPUl06IHsgJ3gteWVhcC1hcHBsaWNhdGlvbic6ICd0aG9yJywgJ3gtYXBwbGljYXRpb24nOiAndGhvcicsICd4LW1vZHVsZSc6ICd0aG9yLWZlJyB9LFxyXG5cdFtBcHBzLkxFTkFdOiB7ICd4LXllYXAtYXBwbGljYXRpb24nOiAnbGVuYScsICd4LWFwcGxpY2F0aW9uJzogJ2xlbmEnLCAneC1tb2R1bGUnOiAnbGVuYS1mZScgfSxcclxuXHRbQXBwcy5ZRUFQXTogeyAneC15ZWFwLWFwcGxpY2F0aW9uJzogJ3llYXAnLCAneC1hcHBsaWNhdGlvbic6ICd5ZWFwJywgJ3gtbW9kdWxlJzogJ3llYXAtZmUnIH1cclxufTtcclxuXHJcbmNvbnN0IGlzSG9zdEFwcCA9ICh2YWx1ZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCk6IHZhbHVlIGlzIEhvc3RBcHAgPT5cclxuXHR2YWx1ZSA9PT0gQXBwcy5USE9SIHx8IHZhbHVlID09PSBBcHBzLkxFTkEgfHwgdmFsdWUgPT09IEFwcHMuWUVBUDtcclxuXHJcbmNvbnN0IGdldENzcmZUb2tlbiA9ICgpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT5cclxuXHRkb2N1bWVudC5jb29raWVcclxuXHRcdC5zcGxpdCgnOyAnKVxyXG5cdFx0LmZpbmQoKHJvdykgPT4gcm93LnN0YXJ0c1dpdGgoJ2NzcmZfdG9rZW49JykpXHJcblx0XHQ/LnNwbGl0KCc9JylbMV07XHJcblxyXG5leHBvcnQgY29uc3QgYXV0aEludGVyY2VwdG9yOiBIdHRwSW50ZXJjZXB0b3JGbiA9IChyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OiBIdHRwSGFuZGxlckZuKSA9PiB7XHJcblx0Y29uc3QgYWN0aXZlSG9zdCA9IGJyaWRnZS5hY3RpdmVIb3N0KCk7XHJcblx0Y29uc3QgaGVhZGVycyA9IGlzSG9zdEFwcChhY3RpdmVIb3N0KSA/IEhPU1RfQVBQX0hFQURFUlNbYWN0aXZlSG9zdF0gOiB7fTtcclxuXHRjb25zdCBjc3JmVG9rZW4gPSBnZXRDc3JmVG9rZW4oKTtcclxuXHJcblx0Y29uc3QgYXV0aFJlcSA9IHJlcS5jbG9uZSh7XHJcblx0XHRzZXRIZWFkZXJzOiB7XHJcblx0XHRcdGNzcmZfdG9rZW46IGNzcmZUb2tlbiA/PyAnJyxcclxuXHRcdFx0Li4uaGVhZGVyc1xyXG5cdFx0fVxyXG5cdH0pO1xyXG5cclxuXHRyZXR1cm4gbmV4dChhdXRoUmVxKTtcclxufTtcclxuXHJcbi8qKlxyXG4gKiBLZXljbG9hayB0b2tlbiByZWZyZXNoIFhIUidsYXLEsW7EsW4gdGFiIGluYWN0aXZlIGlrZW4gYWJvcnQgb2x1cCBgSW52YWxpZFN0YXRlRXJyb3JgXHJcbiAqIGbEsXJsYXRtYXPEsW7EsSDDtm5sZXIuIGBLZXljbG9ha0JlYXJlckludGVyY2VwdG9yLmludGVyY2VwdGAgbGF6eSBPYnNlcnZhYmxlIGTDtm5lciDigJRcclxuICogc3Vic2NyaWJlIGVkaWxtZWRpxJ9pIHPDvHJlY2Ugc2lkZS1lZmZlY3QgKHRva2VuIHJlZnJlc2gpIHlvay4gVGFiIGB2aXNpYmlsaXR5U3RhdGVgXHJcbiAqIGAnaGlkZGVuJ2AgaWtlbiBzdWJzY3JpYmUnxLEgYHZpc2liaWxpdHljaGFuZ2Ug4oaSICd2aXNpYmxlJ2AgZXZlbnQnaW5lIGthZGFyIGVydGVsZXJpejtcclxuICogdGFiIHRla3JhciBnw7Zyw7xuw7xyIG9sdW5jYSByZXF1ZXN0IGZyZXNoIHRva2VuIGlsZSBhdMSxbMSxci5cclxuICovXHJcbmV4cG9ydCBjb25zdCBrZXljbG9ha0F1dGhJbnRlcmNlcHRvcjogSHR0cEludGVyY2VwdG9yRm4gPSAocmVxOiBIdHRwUmVxdWVzdDx1bmtub3duPiwgbmV4dDogSHR0cEhhbmRsZXJGbikgPT4ge1xyXG5cdGNvbnN0IGludGVyY2VwdG9yID0gaW5qZWN0KEtleWNsb2FrQmVhcmVySW50ZXJjZXB0b3IpO1xyXG5cclxuXHRpZiAodHlwZW9mIGRvY3VtZW50ID09PSAndW5kZWZpbmVkJyB8fCBkb2N1bWVudC52aXNpYmlsaXR5U3RhdGUgPT09ICd2aXNpYmxlJykge1xyXG5cdFx0cmV0dXJuIGludGVyY2VwdG9yLmludGVyY2VwdChyZXEsIHsgaGFuZGxlOiBuZXh0IH0pO1xyXG5cdH1cclxuXHJcblx0cmV0dXJuIGZyb21FdmVudChkb2N1bWVudCwgJ3Zpc2liaWxpdHljaGFuZ2UnKS5waXBlKFxyXG5cdFx0ZmlsdGVyKCgpID0+IGRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZSA9PT0gJ3Zpc2libGUnKSxcclxuXHRcdHRha2UoMSksXHJcblx0XHRzd2l0Y2hNYXAoKCkgPT4gaW50ZXJjZXB0b3IuaW50ZXJjZXB0KHJlcSwgeyBoYW5kbGU6IG5leHQgfSkpXHJcblx0KTtcclxufTtcclxuIl19
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwva2V5Y2xvYWsvc3JjL2F1dGguaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2QyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBSTVFLE1BQU0sZ0JBQWdCLEdBQXNEO0lBQzNFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRTtJQUM3RixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSxlQUFlLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUU7SUFDN0YsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFO0NBQzdGLENBQUM7QUFFRixNQUFNLFNBQVMsR0FBRyxDQUFDLEtBQWdDLEVBQW9CLEVBQUUsQ0FDeEUsS0FBSyxLQUFLLElBQUksQ0FBQyxJQUFJLElBQUksS0FBSyxLQUFLLElBQUksQ0FBQyxJQUFJLElBQUksS0FBSyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUM7QUFFbkUsTUFBTSxZQUFZLEdBQUcsR0FBdUIsRUFBRSxDQUM3QyxRQUFRLENBQUMsTUFBTTtLQUNiLEtBQUssQ0FBQyxJQUFJLENBQUM7S0FDWCxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDN0MsRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFFbEIsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFzQixDQUFDLEdBQXlCLEVBQUUsSUFBbUIsRUFBRSxFQUFFO0lBQ3BHLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUN2QyxNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDMUUsTUFBTSxTQUFTLEdBQUcsWUFBWSxFQUFFLENBQUM7SUFDakMsTUFBTSxlQUFlLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBRS9ELE1BQU0sT0FBTyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUM7UUFDekIsVUFBVSxFQUFFO1lBQ1gsVUFBVSxFQUFFLFNBQVMsSUFBSSxFQUFFO1lBQzNCLEdBQUcsT0FBTztZQUNWLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7U0FDeEU7S0FDRCxDQUFDLENBQUM7SUFFSCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUN0QixDQUFDLENBQUM7QUFFRjs7Ozs7O0dBTUc7QUFDSCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBc0IsQ0FBQyxHQUF5QixFQUFFLElBQW1CLEVBQUUsRUFBRTtJQUM1RyxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUV0RCxJQUFJLE9BQU8sUUFBUSxLQUFLLFdBQVcsSUFBSSxRQUFRLENBQUMsZUFBZSxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQy9FLE9BQU8sV0FBVyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsT0FBTyxTQUFTLENBQUMsUUFBUSxFQUFFLGtCQUFrQixDQUFDLENBQUMsSUFBSSxDQUNsRCxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLGVBQWUsS0FBSyxTQUFTLENBQUMsRUFDcEQsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQzdELENBQUM7QUFDSCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwSGFuZGxlckZuLCBIdHRwSW50ZXJjZXB0b3JGbiwgSHR0cFJlcXVlc3QgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgS2V5Y2xvYWtCZWFyZXJJbnRlcmNlcHRvciB9IGZyb20gJ2tleWNsb2FrLWFuZ3VsYXInO1xyXG5pbXBvcnQgeyBmcm9tRXZlbnQgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZmlsdGVyLCBzd2l0Y2hNYXAsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5pbXBvcnQgeyBicmlkZ2UgfSBmcm9tICdhcmlsL2Jvb3QvYnJpZGdlJztcclxuaW1wb3J0IHsgQXBwcyB9IGZyb20gJ2FyaWwvYm9vdC9jb25maWcvYXBwcyc7XHJcbmltcG9ydCB7IEFjdGl2aXR5U2VydmljZSwgTE9HR0VSX1NFU1NJT05fSEVBREVSIH0gZnJvbSAnYXJpbC91dGlsL2FjdGl2aXR5JztcclxuXHJcbnR5cGUgSG9zdEFwcCA9IEFwcHMuVEhPUiB8IEFwcHMuWUVBUCB8IEFwcHMuTEVOQTtcclxuXHJcbmNvbnN0IEhPU1RfQVBQX0hFQURFUlM6IFJlY29yZDxIb3N0QXBwLCBSZWFkb25seTxSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+Pj4gPSB7XHJcblx0W0FwcHMuVEhPUl06IHsgJ3gteWVhcC1hcHBsaWNhdGlvbic6ICd0aG9yJywgJ3gtYXBwbGljYXRpb24nOiAndGhvcicsICd4LW1vZHVsZSc6ICd0aG9yLWZlJyB9LFxyXG5cdFtBcHBzLkxFTkFdOiB7ICd4LXllYXAtYXBwbGljYXRpb24nOiAnbGVuYScsICd4LWFwcGxpY2F0aW9uJzogJ2xlbmEnLCAneC1tb2R1bGUnOiAnbGVuYS1mZScgfSxcclxuXHRbQXBwcy5ZRUFQXTogeyAneC15ZWFwLWFwcGxpY2F0aW9uJzogJ3llYXAnLCAneC1hcHBsaWNhdGlvbic6ICd5ZWFwJywgJ3gtbW9kdWxlJzogJ3llYXAtZmUnIH1cclxufTtcclxuXHJcbmNvbnN0IGlzSG9zdEFwcCA9ICh2YWx1ZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCk6IHZhbHVlIGlzIEhvc3RBcHAgPT5cclxuXHR2YWx1ZSA9PT0gQXBwcy5USE9SIHx8IHZhbHVlID09PSBBcHBzLkxFTkEgfHwgdmFsdWUgPT09IEFwcHMuWUVBUDtcclxuXHJcbmNvbnN0IGdldENzcmZUb2tlbiA9ICgpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT5cclxuXHRkb2N1bWVudC5jb29raWVcclxuXHRcdC5zcGxpdCgnOyAnKVxyXG5cdFx0LmZpbmQoKHJvdykgPT4gcm93LnN0YXJ0c1dpdGgoJ2NzcmZfdG9rZW49JykpXHJcblx0XHQ/LnNwbGl0KCc9JylbMV07XHJcblxyXG5leHBvcnQgY29uc3QgYXV0aEludGVyY2VwdG9yOiBIdHRwSW50ZXJjZXB0b3JGbiA9IChyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OiBIdHRwSGFuZGxlckZuKSA9PiB7XHJcblx0Y29uc3QgYWN0aXZlSG9zdCA9IGJyaWRnZS5hY3RpdmVIb3N0KCk7XHJcblx0Y29uc3QgaGVhZGVycyA9IGlzSG9zdEFwcChhY3RpdmVIb3N0KSA/IEhPU1RfQVBQX0hFQURFUlNbYWN0aXZlSG9zdF0gOiB7fTtcclxuXHRjb25zdCBjc3JmVG9rZW4gPSBnZXRDc3JmVG9rZW4oKTtcclxuXHRjb25zdCBsb2dnZXJTZXNzaW9uSWQgPSBpbmplY3QoQWN0aXZpdHlTZXJ2aWNlKS5nZXRTZXNzaW9uSWQoKTtcclxuXHJcblx0Y29uc3QgYXV0aFJlcSA9IHJlcS5jbG9uZSh7XHJcblx0XHRzZXRIZWFkZXJzOiB7XHJcblx0XHRcdGNzcmZfdG9rZW46IGNzcmZUb2tlbiA/PyAnJyxcclxuXHRcdFx0Li4uaGVhZGVycyxcclxuXHRcdFx0Li4uKGxvZ2dlclNlc3Npb25JZCA/IHsgW0xPR0dFUl9TRVNTSU9OX0hFQURFUl06IGxvZ2dlclNlc3Npb25JZCB9IDoge30pXHJcblx0XHR9XHJcblx0fSk7XHJcblxyXG5cdHJldHVybiBuZXh0KGF1dGhSZXEpO1xyXG59O1xyXG5cclxuLyoqXHJcbiAqIEtleWNsb2FrIHRva2VuIHJlZnJlc2ggWEhSJ2xhcsSxbsSxbiB0YWIgaW5hY3RpdmUgaWtlbiBhYm9ydCBvbHVwIGBJbnZhbGlkU3RhdGVFcnJvcmBcclxuICogZsSxcmxhdG1hc8SxbsSxIMO2bmxlci4gYEtleWNsb2FrQmVhcmVySW50ZXJjZXB0b3IuaW50ZXJjZXB0YCBsYXp5IE9ic2VydmFibGUgZMO2bmVyIOKAlFxyXG4gKiBzdWJzY3JpYmUgZWRpbG1lZGnEn2kgc8O8cmVjZSBzaWRlLWVmZmVjdCAodG9rZW4gcmVmcmVzaCkgeW9rLiBUYWIgYHZpc2liaWxpdHlTdGF0ZWBcclxuICogYCdoaWRkZW4nYCBpa2VuIHN1YnNjcmliZSfEsSBgdmlzaWJpbGl0eWNoYW5nZSDihpIgJ3Zpc2libGUnYCBldmVudCdpbmUga2FkYXIgZXJ0ZWxlcml6O1xyXG4gKiB0YWIgdGVrcmFyIGfDtnLDvG7DvHIgb2x1bmNhIHJlcXVlc3QgZnJlc2ggdG9rZW4gaWxlIGF0xLFsxLFyLlxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IGtleWNsb2FrQXV0aEludGVyY2VwdG9yOiBIdHRwSW50ZXJjZXB0b3JGbiA9IChyZXE6IEh0dHBSZXF1ZXN0PHVua25vd24+LCBuZXh0OiBIdHRwSGFuZGxlckZuKSA9PiB7XHJcblx0Y29uc3QgaW50ZXJjZXB0b3IgPSBpbmplY3QoS2V5Y2xvYWtCZWFyZXJJbnRlcmNlcHRvcik7XHJcblxyXG5cdGlmICh0eXBlb2YgZG9jdW1lbnQgPT09ICd1bmRlZmluZWQnIHx8IGRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZSA9PT0gJ3Zpc2libGUnKSB7XHJcblx0XHRyZXR1cm4gaW50ZXJjZXB0b3IuaW50ZXJjZXB0KHJlcSwgeyBoYW5kbGU6IG5leHQgfSk7XHJcblx0fVxyXG5cclxuXHRyZXR1cm4gZnJvbUV2ZW50KGRvY3VtZW50LCAndmlzaWJpbGl0eWNoYW5nZScpLnBpcGUoXHJcblx0XHRmaWx0ZXIoKCkgPT4gZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlID09PSAndmlzaWJsZScpLFxyXG5cdFx0dGFrZSgxKSxcclxuXHRcdHN3aXRjaE1hcCgoKSA9PiBpbnRlcmNlcHRvci5pbnRlcmNlcHQocmVxLCB7IGhhbmRsZTogbmV4dCB9KSlcclxuXHQpO1xyXG59O1xyXG4iXX0=
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJpbC1zZWxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3NlbGVjdGlvbi9hcmlsLXNlbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './src/selection-group.service';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3NlbGVjdGlvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zcmMvc2VsZWN0aW9uLWdyb3VwLnNlcnZpY2UnO1xyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvc2VsZWN0aW9uL3NyYy9pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFNlbGVjdGlvblJlcXVlc3REVE8ge1xyXG5cdGdyb3VwTmFtZTogc3RyaW5nO1xyXG5cdHBhcmVudFNlbGVjdGlvbktleT86IHN0cmluZyB8IG51bGw7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0aW9uR3JvdXBWZXJzaW9uRFRPIHtcclxuXHRncm91cE5hbWU6IHN0cmluZztcclxuXHR2ZXJzaW9uOiBudW1iZXI7XHJcbn1cclxuIl19
@@ -0,0 +1,195 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { take } from 'rxjs';
3
+ import { bridge } from 'aril/boot/bridge';
4
+ import { API_CONFIGS } from 'aril/boot/config/api';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common/http";
7
+ // Key başına maksimum ardışık fetch hatası: limit aşılınca o key oturum boyu yeniden denenmez.
8
+ // Sınırsız retry'da kalıcı hata veren bir grup (örn. silinmiş grup → 404), diğer grupların her
9
+ // başarılı yüklemesinde (map güncellemesi tüm enum computed'larını yeniden çalıştırır) yeniden
10
+ // POST edilirdi → istek/console fırtınası.
11
+ const MAX_FETCH_FAILURES = 3;
12
+ export class SelectionGroupService {
13
+ constructor(http) {
14
+ this.http = http;
15
+ // State cross-MFE paylaşımlı: bridge globalThis-singleton'ında yaşar (bkz. mfe-bridge.ts).
16
+ // Servis instance'ı MFE/tab başına çoğalsa da tüm okuma/yazma tek bridge state'ine gider.
17
+ this.selectionGroups = bridge.selectionGroups;
18
+ this.loading = bridge.selectionLoading;
19
+ this.loaded = bridge.selectionLoaded;
20
+ this.failures = bridge.selectionFailures;
21
+ // loadStates + invalidate yalnızca ilk instance'ta (cross-MFE bir kez): tek localStorage
22
+ // yüklemesi, tek `/versions` çağrısı. effect her instance'ta kurulur ama hepsi aynı paylaşılan
23
+ // state'i yazdığından ezme olmaz.
24
+ if (!bridge.selectionInitialized) {
25
+ bridge.selectionInitialized = true;
26
+ this.loadStatesFromLocalStorage();
27
+ this.invalidateStaleGroups();
28
+ }
29
+ }
30
+ // localStorage'a slim cache yazar. `effect` YERİNE bilinçli olarak doğrudan çağrılır: signal'i
31
+ // değiştiren her yer (fetchEnum, invalidateStaleGroups) persist'i açıkça tetikler. NOT: webpack MF
32
+ // config'iyle `@angular/core` artık singleton shared olduğundan effect-tabanlı persist de çalışırdı;
33
+ // yine de açık/öngörülebilir olması (effect içinde gizli signal-write + NG0600 riski olmaması) için
34
+ // doğrudan çağrı tercih edildi.
35
+ persistToLocalStorage() {
36
+ try {
37
+ const slim = this.slimForStorage(this.selectionGroups());
38
+ localStorage.setItem('selection-groups', btoa(encodeURI(JSON.stringify(slim))));
39
+ }
40
+ catch {
41
+ // QuotaExceededError vb. → eski cache'i koru, yeni yazımı sessizce atla.
42
+ }
43
+ }
44
+ loadStatesFromLocalStorage() {
45
+ const selectionGroups = localStorage.getItem('selection-groups');
46
+ if (selectionGroups) {
47
+ try {
48
+ const decodedData = decodeURI(atob(selectionGroups));
49
+ // Dynamic gruplar zaten persist edilmiyor (slimForStorage onları atlar) → ekstra
50
+ // filtre gerekmez; localStorage içeriği yalnızca Fixed gruplardır.
51
+ const restored = JSON.parse(decodedData);
52
+ this.selectionGroups.set(restored);
53
+ // Restore edilen gruplar loaded sayılır: aksi halde koşulsuz fetchEnum çağıran
54
+ // consumer'lar guard'ı geçip her oturum yeniden çeker (cache faydası kaybolur).
55
+ // Stale'lik kontrolü invalidateStaleGroups'un işi. null entry'ler (legacy) loaded
56
+ // işaretlenmez — işaretlenirse o grup bir daha hiç yüklenemezdi.
57
+ Object.entries(restored).forEach(([key, group]) => {
58
+ if (group)
59
+ this.loaded.set(key, true);
60
+ });
61
+ }
62
+ catch (e) {
63
+ console.error(e);
64
+ }
65
+ }
66
+ }
67
+ // Dynamic grupları atlar + Fixed grupları yalnızca render (value/table/picker/export) ve invalidate
68
+ // için gerekli alanlara indirger. localStorage'da audit/id/açıklama gibi kullanılmayan alanları tutmaz.
69
+ slimForStorage(groups) {
70
+ const out = {};
71
+ for (const [key, group] of Object.entries(groups)) {
72
+ if (!group || group.loadStrategy === 'Dynamic')
73
+ continue;
74
+ out[key] = {
75
+ version: group.version,
76
+ selectionItems: (group.selectionItems ?? []).map((it) => ({
77
+ selectionKey: it.selectionKey,
78
+ selectionDisplay: it.selectionDisplay,
79
+ selectionMultiLanguageDisplays: it.selectionMultiLanguageDisplays,
80
+ showOrder: it.showOrder,
81
+ parentSelectionKey: it.parentSelectionKey
82
+ }))
83
+ };
84
+ }
85
+ return out;
86
+ }
87
+ // App init'te enum version'larını çekip localStorage'daki stale grupları temizler.
88
+ // Silinen grup, tüketici component'lerin `if (!selectionGroup) fetchEnum()` guard'ıyla yeniden yüklenir.
89
+ invalidateStaleGroups() {
90
+ // App-init snapshot: yalnızca localStorage'dan yüklenen gruplar kontrol edilir. Yanıt gelene
91
+ // kadar consumer'ların fetchEnum ile yüklediği taze gruplar taranmaz/silinmez (aksi halde
92
+ // taze grup silinir ve kalıcı per-component fetch guard'ları onu bir daha çekmeyebilir).
93
+ const keysToCheck = Object.keys(this.selectionGroups());
94
+ if (keysToCheck.length === 0)
95
+ return;
96
+ const hostApi = API_CONFIGS.api.replace(/\/[^\/]+\/v1$/, `/host/v1`);
97
+ this.http
98
+ .get(hostApi + '/selection-group/versions')
99
+ .pipe(take(1))
100
+ .subscribe({
101
+ next: (versions) => {
102
+ // Boş/bozuk yanıt güvenlik şeridi: aşağıdaki "listede olmayanı sil" kuralı
103
+ // boş listeyle tüm cache'i yanlışlıkla boşaltmasın.
104
+ if (!versions?.length)
105
+ return;
106
+ const latest = new Map(versions.map((v) => [v.groupName, v.version]));
107
+ let changed = false;
108
+ const next = { ...this.selectionGroups() };
109
+ keysToCheck.forEach((key) => {
110
+ const group = next[key];
111
+ if (!group)
112
+ return;
113
+ const separatorIndex = key.indexOf('~');
114
+ if (separatorIndex === -1)
115
+ return;
116
+ const serverVersion = latest.get(key.substring(0, separatorIndex));
117
+ // serverVersion == null: grup /versions listesinde yok → sunucudan silinmiş /
118
+ // yeniden adlandırılmış demektir (endpoint Fixed grupların tam listesini döner)
119
+ // → o da evict edilir; kalırsa kaldırılmış enum değerleri süresiz render edilir.
120
+ if (serverVersion == null || serverVersion !== group.version) {
121
+ delete next[key];
122
+ this.loaded.delete(key);
123
+ this.failures.delete(key);
124
+ // Uçuştaki fetch'in flag'i korunur: silinirse ikinci bir consumer guard'ı
125
+ // geçip duplicate /load atar ve export-overlay'in isLoading poll'ü grubu
126
+ // beklemeden erken geçer. Yanıt geldiğinde flag'i fetchEnum kendisi yönetir.
127
+ if (!this.loading.get(key)) {
128
+ this.loading.delete(key);
129
+ }
130
+ changed = true;
131
+ }
132
+ });
133
+ if (changed) {
134
+ this.selectionGroups.set(next);
135
+ this.persistToLocalStorage();
136
+ }
137
+ },
138
+ error: () => {
139
+ // versions endpoint yok/erişilemez: sessizce mevcut cache ile devam.
140
+ }
141
+ });
142
+ }
143
+ fetchEnum(groupName, parentSelectionKey = 'ALL') {
144
+ const key = groupName + '~' + parentSelectionKey;
145
+ if (this.loaded.get(key) || this.loading.get(key))
146
+ return;
147
+ if ((this.failures.get(key) ?? 0) >= MAX_FETCH_FAILURES)
148
+ return;
149
+ const payload = {
150
+ groupName,
151
+ parentSelectionKey
152
+ };
153
+ this.loading.set(key, true);
154
+ this.loaded.set(key, false);
155
+ const hostApi = API_CONFIGS.api.replace(/\/[^\/]+\/v1$/, `/host/v1`);
156
+ this.http
157
+ .post(hostApi + '/selection-group/load', payload)
158
+ .pipe(take(1))
159
+ .subscribe({
160
+ next: (selectionGroup) => {
161
+ this.loading.set(key, false);
162
+ this.loaded.set(key, true);
163
+ this.failures.delete(key);
164
+ this.selectionGroups.update((groups) => ({
165
+ ...groups,
166
+ [key]: selectionGroup
167
+ }));
168
+ this.persistToLocalStorage();
169
+ },
170
+ // HTTP hatasında loading'i sıfırla: aksi halde guard (loaded/loading) bu enum'u
171
+ // kilitler. loading/loaded bridge'de cross-MFE SHARED olduğundan, tek bir anlık hata
172
+ // bu enum'u TÜM remote'larda hard-reload'a kadar bir daha çekilemez yapardı. loading=false
173
+ // → sonraki fetchEnum (component init/retry) yeniden deneyebilir. loaded zaten false kalır.
174
+ // Deneme sayısı MAX_FETCH_FAILURES ile sınırlı: kalıcı hatada sonsuz retry önlenir.
175
+ error: () => {
176
+ this.loading.set(key, false);
177
+ this.failures.set(key, (this.failures.get(key) ?? 0) + 1);
178
+ }
179
+ });
180
+ }
181
+ // key formatı: `groupName~parentSelectionKey` (fetchEnum'daki composite key ile aynı).
182
+ // Direkt olarak groupName geçilirse Map'te eşleşme olmaz ve her zaman false döner.
183
+ isLoading(key) {
184
+ return this.loading.get(key) ?? false;
185
+ }
186
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SelectionGroupService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
187
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SelectionGroupService, providedIn: 'root' }); }
188
+ }
189
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SelectionGroupService, decorators: [{
190
+ type: Injectable,
191
+ args: [{
192
+ providedIn: 'root'
193
+ }]
194
+ }], ctorParameters: () => [{ type: i1.HttpClient }] });
195
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLWdyb3VwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3NlbGVjdGlvbi9zcmMvc2VsZWN0aW9uLWdyb3VwLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTVCLE9BQU8sRUFBcUIsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7QUFJbkQsK0ZBQStGO0FBQy9GLCtGQUErRjtBQUMvRiwrRkFBK0Y7QUFDL0YsMkNBQTJDO0FBQzNDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxDQUFDO0FBSzdCLE1BQU0sT0FBTyxxQkFBcUI7SUFTakMsWUFBNkIsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQVI3QywyRkFBMkY7UUFDM0YsMEZBQTBGO1FBQzFGLG9CQUFlLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQztRQUV4QixZQUFPLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDO1FBQ2xDLFdBQU0sR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDO1FBQ2hDLGFBQVEsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUM7UUFHcEQseUZBQXlGO1FBQ3pGLCtGQUErRjtRQUMvRixrQ0FBa0M7UUFDbEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1lBQ2xDLE1BQU0sQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUM7WUFDbkMsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUM7WUFDbEMsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDOUIsQ0FBQztJQUNGLENBQUM7SUFFRCwrRkFBK0Y7SUFDL0YsbUdBQW1HO0lB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LENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDM0QsQ0FBQztTQUNELENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCx1RkFBdUY7SUFDdkYsbUZBQW1GO0lBQ25GLFNBQVMsQ0FBQyxHQUFXO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxDQUFDO0lBQ3ZDLENBQUM7OEdBNUxXLHFCQUFxQjtrSEFBckIscUJBQXFCLGNBRnJCLE1BQU07OzJGQUVOLHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDWCxVQUFVLEVBQUUsTUFBTTtpQkFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBTZWxlY3Rpb25Hcm91cERUTywgYnJpZGdlIH0gZnJvbSAnYXJpbC9ib290L2JyaWRnZSc7XHJcbmltcG9ydCB7IEFQSV9DT05GSUdTIH0gZnJvbSAnYXJpbC9ib290L2NvbmZpZy9hcGknO1xyXG5cclxuaW1wb3J0IHsgU2VsZWN0aW9uR3JvdXBWZXJzaW9uRFRPLCBTZWxlY3Rpb25SZXF1ZXN0RFRPIH0gZnJvbSAnLi9pbnRlcmZhY2VzJztcclxuXHJcbi8vIEtleSBiYcWfxLFuYSBtYWtzaW11bSBhcmTEscWfxLFrIGZldGNoIGhhdGFzxLE6IGxpbWl0IGHFn8SxbMSxbmNhIG8ga2V5IG90dXJ1bSBib3l1IHllbmlkZW4gZGVuZW5tZXouXHJcbi8vIFPEsW7EsXJzxLF6IHJldHJ5J2RhIGthbMSxY8SxIGhhdGEgdmVyZW4gYmlyIGdydXAgKMO2cm4uIHNpbGlubWnFnyBncnVwIOKGkiA0MDQpLCBkacSfZXIgZ3J1cGxhcsSxbiBoZXJcclxuLy8gYmHFn2FyxLFsxLEgecO8a2xlbWVzaW5kZSAobWFwIGfDvG5jZWxsZW1lc2kgdMO8bSBlbnVtIGNvbXB1dGVkJ2xhcsSxbsSxIHllbmlkZW4gw6dhbMSxxZ90xLFyxLFyKSB5ZW5pZGVuXHJcbi8vIFBPU1QgZWRpbGlyZGkg4oaSIGlzdGVrL2NvbnNvbGUgZsSxcnTEsW5hc8SxLlxyXG5jb25zdCBNQVhfRkVUQ0hfRkFJTFVSRVMgPSAzO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG5cdHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VsZWN0aW9uR3JvdXBTZXJ2aWNlIHtcclxuXHQvLyBTdGF0ZSBjcm9zcy1NRkUgcGF5bGHFn8SxbWzEsTogYnJpZGdlIGdsb2JhbFRoaXMtc2luZ2xldG9uJ8SxbmRhIHlhxZ9hciAoYmt6LiBtZmUtYnJpZGdlLnRzKS5cclxuXHQvLyBTZXJ2aXMgaW5zdGFuY2UnxLEgTUZFL3RhYiBiYcWfxLFuYSDDp2/En2Fsc2EgZGEgdMO8bSBva3VtYS95YXptYSB0ZWsgYnJpZGdlIHN0YXRlJ2luZSBnaWRlci5cclxuXHRzZWxlY3Rpb25Hcm91cHMgPSBicmlkZ2Uuc2VsZWN0aW9uR3JvdXBzO1xyXG5cclxuXHRwcml2YXRlIHJlYWRvbmx5IGxvYWRpbmcgPSBicmlkZ2Uuc2VsZWN0aW9uTG9hZGluZztcclxuXHRwcml2YXRlIHJlYWRvbmx5IGxvYWRlZCA9IGJyaWRnZS5zZWxlY3Rpb25Mb2FkZWQ7XHJcblx0cHJpdmF0ZSByZWFkb25seSBmYWlsdXJlcyA9IGJyaWRnZS5zZWxlY3Rpb25GYWlsdXJlcztcclxuXHJcblx0Y29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50KSB7XHJcblx0XHQvLyBsb2FkU3RhdGVzICsgaW52YWxpZGF0ZSB5YWxuxLF6Y2EgaWxrIGluc3RhbmNlJ3RhIChjcm9zcy1NRkUgYmlyIGtleik6IHRlayBsb2NhbFN0b3JhZ2VcclxuXHRcdC8vIHnDvGtsZW1lc2ksIHRlayBgL3ZlcnNpb25zYCDDp2HEn3LEsXPEsS4gZWZmZWN0IGhlciBpbnN0YW5jZSd0YSBrdXJ1bHVyIGFtYSBoZXBzaSBheW7EsSBwYXlsYcWfxLFsYW5cclxuXHRcdC8vIHN0YXRlJ2kgeWF6ZMSxxJ/EsW5kYW4gZXptZSBvbG1hei5cclxuXHRcdGlmICghYnJpZGdlLnNlbGVjdGlvbkluaXRpYWxpemVkKSB7XHJcblx0XHRcdGJyaWRnZS5zZWxlY3Rpb25Jbml0aWFsaXplZCA9IHRydWU7XHJcblx0XHRcdHRoaXMubG9hZFN0YXRlc0Zyb21Mb2NhbFN0b3JhZ2UoKTtcclxuXHRcdFx0dGhpcy5pbnZhbGlkYXRlU3RhbGVHcm91cHMoKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC8vIGxvY2FsU3RvcmFnZSdhIHNsaW0gY2FjaGUgeWF6YXIuIGBlZmZlY3RgIFlFUsSwTkUgYmlsaW7Dp2xpIG9sYXJhayBkb8SfcnVkYW4gw6dhxJ9yxLFsxLFyOiBzaWduYWwnaVxyXG5cdC8vIGRlxJ9pxZ90aXJlbiBoZXIgeWVyIChmZXRjaEVudW0sIGludmFsaWRhdGVTdGFsZUdyb3VwcykgcGVyc2lzdCdpIGHDp8Sxa8OnYSB0ZXRpa2xlci4gTk9UOiB3ZWJwYWNrIE1GXHJcblx0Ly8gY29uZmlnJ2l5bGUgYEBhbmd1bGFyL2NvcmVgIGFydMSxayBzaW5nbGV0b24gc2hhcmVkIG9sZHXEn3VuZGFuIGVmZmVjdC10YWJhbmzEsSBwZXJzaXN0IGRlIMOnYWzEscWfxLFyZMSxO1xyXG5cdC8vIHlpbmUgZGUgYcOnxLFrL8O2bmfDtnLDvGxlYmlsaXIgb2xtYXPEsSAoZWZmZWN0IGnDp2luZGUgZ2l6bGkgc2lnbmFsLXdyaXRlICsgTkcwNjAwIHJpc2tpIG9sbWFtYXPEsSkgacOnaW5cclxuXHQvLyBkb8SfcnVkYW4gw6dhxJ9yxLEgdGVyY2loIGVkaWxkaS5cclxuXHRwcml2YXRlIHBlcnNpc3RUb0xvY2FsU3RvcmFnZSgpIHtcclxuXHRcdHRyeSB7XHJcblx0XHRcdGNvbnN0IHNsaW0gPSB0aGlzLnNsaW1Gb3JTdG9yYWdlKHRoaXMuc2VsZWN0aW9uR3JvdXBzKCkpO1xyXG5cdFx0XHRsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnc2VsZWN0aW9uLWdyb3VwcycsIGJ0b2EoZW5jb2RlVVJJKEpTT04uc3RyaW5naWZ5KHNsaW0pKSkpO1xyXG5cdFx0fSBjYXRjaCB7XHJcblx0XHRcdC8vIFF1b3RhRXhjZWVkZWRFcnJvciB2Yi4g4oaSIGVza2kgY2FjaGUnaSBrb3J1LCB5ZW5pIHlhesSxbcSxIHNlc3NpemNlIGF0bGEuXHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGxvYWRTdGF0ZXNGcm9tTG9jYWxTdG9yYWdlKCkge1xyXG5cdFx0Y29uc3Qgc2VsZWN0aW9uR3JvdXBzID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3NlbGVjdGlvbi1ncm91cHMnKTtcclxuXHJcblx0XHRpZiAoc2VsZWN0aW9uR3JvdXBzKSB7XHJcblx0XHRcdHRyeSB7XHJcblx0XHRcdFx0Y29uc3QgZGVjb2RlZERhdGEgPSBkZWNvZGVVUkkoYXRvYihzZWxlY3Rpb25Hcm91cHMpKTtcclxuXHRcdFx0XHQvLyBEeW5hbWljIGdydXBsYXIgemF0ZW4gcGVyc2lzdCBlZGlsbWl5b3IgKHNsaW1Gb3JTdG9yYWdlIG9ubGFyxLEgYXRsYXIpIOKGkiBla3N0cmFcclxuXHRcdFx0XHQvLyBmaWx0cmUgZ2VyZWttZXo7IGxvY2FsU3RvcmFnZSBpw6dlcmnEn2kgeWFsbsSxemNhIEZpeGVkIGdydXBsYXJkxLFyLlxyXG5cdFx0XHRcdGNvbnN0IHJlc3RvcmVkOiB7IFtrZXk6IHN0cmluZ106IFNlbGVjdGlvbkdyb3VwRFRPIHwgbnVsbCB9ID0gSlNPTi5wYXJzZShkZWNvZGVkRGF0YSk7XHJcblx0XHRcdFx0dGhpcy5zZWxlY3Rpb25Hcm91cHMuc2V0KHJlc3RvcmVkKTtcclxuXHJcblx0XHRcdFx0Ly8gUmVzdG9yZSBlZGlsZW4gZ3J1cGxhciBsb2FkZWQgc2F5xLFsxLFyOiBha3NpIGhhbGRlIGtvxZ91bHN1eiBmZXRjaEVudW0gw6dhxJ/EsXJhblxyXG5cdFx0XHRcdC8vIGNvbnN1bWVyJ2xhciBndWFyZCfEsSBnZcOnaXAgaGVyIG90dXJ1bSB5ZW5pZGVuIMOnZWtlciAoY2FjaGUgZmF5ZGFzxLEga2F5Ym9sdXIpLlxyXG5cdFx0XHRcdC8vIFN0YWxlJ2xpayBrb250cm9sw7wgaW52YWxpZGF0ZVN0YWxlR3JvdXBzJ3VuIGnFn2kuIG51bGwgZW50cnknbGVyIChsZWdhY3kpIGxvYWRlZFxyXG5cdFx0XHRcdC8vIGnFn2FyZXRsZW5tZXog4oCUIGnFn2FyZXRsZW5pcnNlIG8gZ3J1cCBiaXIgZGFoYSBoacOnIHnDvGtsZW5lbWV6ZGkuXHJcblx0XHRcdFx0T2JqZWN0LmVudHJpZXMocmVzdG9yZWQpLmZvckVhY2goKFtrZXksIGdyb3VwXSkgPT4ge1xyXG5cdFx0XHRcdFx0aWYgKGdyb3VwKSB0aGlzLmxvYWRlZC5zZXQoa2V5LCB0cnVlKTtcclxuXHRcdFx0XHR9KTtcclxuXHRcdFx0fSBjYXRjaCAoZSkge1xyXG5cdFx0XHRcdGNvbnNvbGUuZXJyb3IoZSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC8vIER5bmFtaWMgZ3J1cGxhcsSxIGF0bGFyICsgRml4ZWQgZ3J1cGxhcsSxIHlhbG7EsXpjYSByZW5kZXIgKHZhbHVlL3RhYmxlL3BpY2tlci9leHBvcnQpIHZlIGludmFsaWRhdGVcclxuXHQvLyBpw6dpbiBnZXJla2xpIGFsYW5sYXJhIGluZGlyZ2VyLiBsb2NhbFN0b3JhZ2UnZGEgYXVkaXQvaWQvYcOnxLFrbGFtYSBnaWJpIGt1bGxhbsSxbG1heWFuIGFsYW5sYXLEsSB0dXRtYXouXHJcblx0cHJpdmF0ZSBzbGltRm9yU3RvcmFnZShncm91cHM6IHsgW2tleTogc3RyaW5nXTogU2VsZWN0aW9uR3JvdXBEVE8gfCBudWxsIH0pOiB7IFtrZXk6IHN0cmluZ106IHVua25vd24gfSB7XHJcblx0XHRjb25zdCBvdXQ6IHsgW2tleTogc3RyaW5nXTogdW5rbm93biB9ID0ge307XHJcblx0XHRmb3IgKGNvbnN0IFtrZXksIGdyb3VwXSBvZiBPYmplY3QuZW50cmllcyhncm91cHMpKSB7XHJcblx0XHRcdGlmICghZ3JvdXAgfHwgZ3JvdXAubG9hZFN0cmF0ZWd5ID09PSAnRHluYW1pYycpIGNvbnRpbnVlO1xyXG5cdFx0XHRvdXRba2V5XSA9IHtcclxuXHRcdFx0XHR2ZXJzaW9uOiBncm91cC52ZXJzaW9uLFxyXG5cdFx0XHRcdHNlbGVjdGlvbkl0ZW1zOiAoZ3JvdXAuc2VsZWN0aW9uSXRlbXMgPz8gW10pLm1hcCgoaXQpID0+ICh7XHJcblx0XHRcdFx0XHRzZWxlY3Rpb25LZXk6IGl0LnNlbGVjdGlvbktleSxcclxuXHRcdFx0XHRcdHNlbGVjdGlvbkRpc3BsYXk6IGl0LnNlbGVjdGlvbkRpc3BsYXksXHJcblx0XHRcdFx0XHRzZWxlY3Rpb25NdWx0aUxhbmd1YWdlRGlzcGxheXM6IGl0LnNlbGVjdGlvbk11bHRpTGFuZ3VhZ2VEaXNwbGF5cyxcclxuXHRcdFx0XHRcdHNob3dPcmRlcjogaXQuc2hvd09yZGVyLFxyXG5cdFx0XHRcdFx0cGFyZW50U2VsZWN0aW9uS2V5OiBpdC5wYXJlbnRTZWxlY3Rpb25LZXlcclxuXHRcdFx0XHR9KSlcclxuXHRcdFx0fTtcclxuXHRcdH1cclxuXHRcdHJldHVybiBvdXQ7XHJcblx0fVxyXG5cclxuXHQvLyBBcHAgaW5pdCd0ZSBlbnVtIHZlcnNpb24nbGFyxLFuxLEgw6dla2lwIGxvY2FsU3RvcmFnZSdkYWtpIHN0YWxlIGdydXBsYXLEsSB0ZW1pemxlci5cclxuXHQvLyBTaWxpbmVuIGdydXAsIHTDvGtldGljaSBjb21wb25lbnQnbGVyaW4gYGlmICghc2VsZWN0aW9uR3JvdXApIGZldGNoRW51bSgpYCBndWFyZCfEsXlsYSB5ZW5pZGVuIHnDvGtsZW5pci5cclxuXHRwcml2YXRlIGludmFsaWRhdGVTdGFsZUdyb3VwcygpIHtcclxuXHRcdC8vIEFwcC1pbml0IHNuYXBzaG90OiB5YWxuxLF6Y2EgbG9jYWxTdG9yYWdlJ2RhbiB5w7xrbGVuZW4gZ3J1cGxhciBrb250cm9sIGVkaWxpci4gWWFuxLF0IGdlbGVuZVxyXG5cdFx0Ly8ga2FkYXIgY29uc3VtZXInbGFyxLFuIGZldGNoRW51bSBpbGUgecO8a2xlZGnEn2kgdGF6ZSBncnVwbGFyIHRhcmFubWF6L3NpbGlubWV6IChha3NpIGhhbGRlXHJcblx0XHQvLyB0YXplIGdydXAgc2lsaW5pciB2ZSBrYWzEsWPEsSBwZXItY29tcG9uZW50IGZldGNoIGd1YXJkJ2xhcsSxIG9udSBiaXIgZGFoYSDDp2VrbWV5ZWJpbGlyKS5cclxuXHRcdGNvbnN0IGtleXNUb0NoZWNrID0gT2JqZWN0LmtleXModGhpcy5zZWxlY3Rpb25Hcm91cHMoKSk7XHJcblx0XHRpZiAoa2V5c1RvQ2hlY2subGVuZ3RoID09PSAwKSByZXR1cm47XHJcblxyXG5cdFx0Y29uc3QgaG9zdEFwaSA9IEFQSV9DT05GSUdTLmFwaS5yZXBsYWNlKC9cXC9bXlxcL10rXFwvdjEkLywgYC9ob3N0L3YxYCk7XHJcblxyXG5cdFx0dGhpcy5odHRwXHJcblx0XHRcdC5nZXQ8U2VsZWN0aW9uR3JvdXBWZXJzaW9uRFRPW10+KGhvc3RBcGkgKyAnL3NlbGVjdGlvbi1ncm91cC92ZXJzaW9ucycpXHJcblx0XHRcdC5waXBlKHRha2UoMSkpXHJcblx0XHRcdC5zdWJzY3JpYmUoe1xyXG5cdFx0XHRcdG5leHQ6ICh2ZXJzaW9ucykgPT4ge1xyXG5cdFx0XHRcdFx0Ly8gQm/Fny9ib3p1ayB5YW7EsXQgZ8O8dmVubGlrIMWfZXJpZGk6IGHFn2HEn8SxZGFraSBcImxpc3RlZGUgb2xtYXlhbsSxIHNpbFwiIGt1cmFsxLFcclxuXHRcdFx0XHRcdC8vIGJvxZ8gbGlzdGV5bGUgdMO8bSBjYWNoZSdpIHlhbmzEscWfbMSxa2xhIGJvxZ9hbHRtYXPEsW4uXHJcblx0XHRcdFx0XHRpZiAoIXZlcnNpb25zPy5sZW5ndGgpIHJldHVybjtcclxuXHJcblx0XHRcdFx0XHRjb25zdCBsYXRlc3QgPSBuZXcgTWFwKHZlcnNpb25zLm1hcCgodikgPT4gW3YuZ3JvdXBOYW1lLCB2LnZlcnNpb25dIGFzIFtzdHJpbmcsIG51bWJlcl0pKTtcclxuXHJcblx0XHRcdFx0XHRsZXQgY2hhbmdlZCA9IGZhbHNlO1xyXG5cdFx0XHRcdFx0Y29uc3QgbmV4dCA9IHsgLi4udGhpcy5zZWxlY3Rpb25Hcm91cHMoKSB9O1xyXG5cclxuXHRcdFx0XHRcdGtleXNUb0NoZWNrLmZvckVhY2goKGtleSkgPT4ge1xyXG5cdFx0XHRcdFx0XHRjb25zdCBncm91cCA9IG5leHRba2V5XTtcclxuXHRcdFx0XHRcdFx0aWYgKCFncm91cCkgcmV0dXJuO1xyXG5cclxuXHRcdFx0XHRcdFx0Y29uc3Qgc2VwYXJhdG9ySW5kZXggPSBrZXkuaW5kZXhPZignficpO1xyXG5cdFx0XHRcdFx0XHRpZiAoc2VwYXJhdG9ySW5kZXggPT09IC0xKSByZXR1cm47XHJcblxyXG5cdFx0XHRcdFx0XHRjb25zdCBzZXJ2ZXJWZXJzaW9uID0gbGF0ZXN0LmdldChrZXkuc3Vic3RyaW5nKDAsIHNlcGFyYXRvckluZGV4KSk7XHJcblxyXG5cdFx0XHRcdFx0XHQvLyBzZXJ2ZXJWZXJzaW9uID09IG51bGw6IGdydXAgL3ZlcnNpb25zIGxpc3Rlc2luZGUgeW9rIOKGkiBzdW51Y3VkYW4gc2lsaW5tacWfIC9cclxuXHRcdFx0XHRcdFx0Ly8geWVuaWRlbiBhZGxhbmTEsXLEsWxtxLHFnyBkZW1la3RpciAoZW5kcG9pbnQgRml4ZWQgZ3J1cGxhcsSxbiB0YW0gbGlzdGVzaW5pIGTDtm5lcilcclxuXHRcdFx0XHRcdFx0Ly8g4oaSIG8gZGEgZXZpY3QgZWRpbGlyOyBrYWzEsXJzYSBrYWxkxLFyxLFsbcSxxZ8gZW51bSBkZcSfZXJsZXJpIHPDvHJlc2l6IHJlbmRlciBlZGlsaXIuXHJcblx0XHRcdFx0XHRcdGlmIChzZXJ2ZXJWZXJzaW9uID09IG51bGwgfHwgc2VydmVyVmVyc2lvbiAhPT0gZ3JvdXAudmVyc2lvbikge1xyXG5cdFx0XHRcdFx0XHRcdGRlbGV0ZSBuZXh0W2tleV07XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5sb2FkZWQuZGVsZXRlKGtleSk7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5mYWlsdXJlcy5kZWxldGUoa2V5KTtcclxuXHRcdFx0XHRcdFx0XHQvLyBVw6d1xZ90YWtpIGZldGNoJ2luIGZsYWcnaSBrb3J1bnVyOiBzaWxpbmlyc2UgaWtpbmNpIGJpciBjb25zdW1lciBndWFyZCfEsVxyXG5cdFx0XHRcdFx0XHRcdC8vIGdlw6dpcCBkdXBsaWNhdGUgL2xvYWQgYXRhciB2ZSBleHBvcnQtb3ZlcmxheSdpbiBpc0xvYWRpbmcgcG9sbCfDvCBncnVidVxyXG5cdFx0XHRcdFx0XHRcdC8vIGJla2xlbWVkZW4gZXJrZW4gZ2XDp2VyLiBZYW7EsXQgZ2VsZGnEn2luZGUgZmxhZydpIGZldGNoRW51bSBrZW5kaXNpIHnDtm5ldGlyLlxyXG5cdFx0XHRcdFx0XHRcdGlmICghdGhpcy5sb2FkaW5nLmdldChrZXkpKSB7XHJcblx0XHRcdFx0XHRcdFx0XHR0aGlzLmxvYWRpbmcuZGVsZXRlKGtleSk7XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRcdGNoYW5nZWQgPSB0cnVlO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9KTtcclxuXHJcblx0XHRcdFx0XHRpZiAoY2hhbmdlZCkge1xyXG5cdFx0XHRcdFx0XHR0aGlzLnNlbGVjdGlvbkdyb3Vwcy5zZXQobmV4dCk7XHJcblx0XHRcdFx0XHRcdHRoaXMucGVyc2lzdFRvTG9jYWxTdG9yYWdlKCk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fSxcclxuXHRcdFx0XHRlcnJvcjogKCkgPT4ge1xyXG5cdFx0XHRcdFx0Ly8gdmVyc2lvbnMgZW5kcG9pbnQgeW9rL2VyacWfaWxlbWV6OiBzZXNzaXpjZSBtZXZjdXQgY2FjaGUgaWxlIGRldmFtLlxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSk7XHJcblx0fVxyXG5cclxuXHRmZXRjaEVudW0oZ3JvdXBOYW1lOiBzdHJpbmcsIHBhcmVudFNlbGVjdGlvbktleTogc3RyaW5nID0gJ0FMTCcpIHtcclxuXHRcdGNvbnN0IGtleSA9IGdyb3VwTmFtZSArICd+JyArIHBhcmVudFNlbGVjdGlvbktleTtcclxuXHJcblx0XHRpZiAodGhpcy5sb2FkZWQuZ2V0KGtleSkgfHwgdGhpcy5sb2FkaW5nLmdldChrZXkpKSByZXR1cm47XHJcblx0XHRpZiAoKHRoaXMuZmFpbHVyZXMuZ2V0KGtleSkgPz8gMCkgPj0gTUFYX0ZFVENIX0ZBSUxVUkVTKSByZXR1cm47XHJcblxyXG5cdFx0Y29uc3QgcGF5bG9hZDogU2VsZWN0aW9uUmVxdWVzdERUTyA9IHtcclxuXHRcdFx0Z3JvdXBOYW1lLFxyXG5cdFx0XHRwYXJlbnRTZWxlY3Rpb25LZXlcclxuXHRcdH07XHJcblxyXG5cdFx0dGhpcy5sb2FkaW5nLnNldChrZXksIHRydWUpO1xyXG5cdFx0dGhpcy5sb2FkZWQuc2V0KGtleSwgZmFsc2UpO1xyXG5cclxuXHRcdGNvbnN0IGhvc3RBcGkgPSBBUElfQ09ORklHUy5hcGkucmVwbGFjZSgvXFwvW15cXC9dK1xcL3YxJC8sIGAvaG9zdC92MWApO1xyXG5cclxuXHRcdHRoaXMuaHR0cFxyXG5cdFx0XHQucG9zdDxTZWxlY3Rpb25Hcm91cERUTz4oaG9zdEFwaSArICcvc2VsZWN0aW9uLWdyb3VwL2xvYWQnLCBwYXlsb2FkKVxyXG5cdFx0XHQucGlwZSh0YWtlKDEpKVxyXG5cdFx0XHQuc3Vic2NyaWJlKHtcclxuXHRcdFx0XHRuZXh0OiAoc2VsZWN0aW9uR3JvdXApID0+IHtcclxuXHRcdFx0XHRcdHRoaXMubG9hZGluZy5zZXQoa2V5LCBmYWxzZSk7XHJcblx0XHRcdFx0XHR0aGlzLmxvYWRlZC5zZXQoa2V5LCB0cnVlKTtcclxuXHRcdFx0XHRcdHRoaXMuZmFpbHVyZXMuZGVsZXRlKGtleSk7XHJcblxyXG5cdFx0XHRcdFx0dGhpcy5zZWxlY3Rpb25Hcm91cHMudXBkYXRlKChncm91cHMpID0+ICh7XHJcblx0XHRcdFx0XHRcdC4uLmdyb3VwcyxcclxuXHRcdFx0XHRcdFx0W2tleV06IHNlbGVjdGlvbkdyb3VwXHJcblx0XHRcdFx0XHR9KSk7XHJcblxyXG5cdFx0XHRcdFx0dGhpcy5wZXJzaXN0VG9Mb2NhbFN0b3JhZ2UoKTtcclxuXHRcdFx0XHR9LFxyXG5cdFx0XHRcdC8vIEhUVFAgaGF0YXPEsW5kYSBsb2FkaW5nJ2kgc8SxZsSxcmxhOiBha3NpIGhhbGRlIGd1YXJkIChsb2FkZWQvbG9hZGluZykgYnUgZW51bSd1XHJcblx0XHRcdFx0Ly8ga2lsaXRsZXIuIGxvYWRpbmcvbG9hZGVkIGJyaWRnZSdkZSBjcm9zcy1NRkUgU0hBUkVEIG9sZHXEn3VuZGFuLCB0ZWsgYmlyIGFubMSxayBoYXRhXHJcblx0XHRcdFx0Ly8gYnUgZW51bSd1IFTDnE0gcmVtb3RlJ2xhcmRhIGhhcmQtcmVsb2FkJ2Ega2FkYXIgYmlyIGRhaGEgw6dla2lsZW1leiB5YXBhcmTEsS4gbG9hZGluZz1mYWxzZVxyXG5cdFx0XHRcdC8vIOKGkiBzb25yYWtpIGZldGNoRW51bSAoY29tcG9uZW50IGluaXQvcmV0cnkpIHllbmlkZW4gZGVuZXllYmlsaXIuIGxvYWRlZCB6YXRlbiBmYWxzZSBrYWzEsXIuXHJcblx0XHRcdFx0Ly8gRGVuZW1lIHNhecSxc8SxIE1BWF9GRVRDSF9GQUlMVVJFUyBpbGUgc8SxbsSxcmzEsToga2FsxLFjxLEgaGF0YWRhIHNvbnN1eiByZXRyeSDDtm5sZW5pci5cclxuXHRcdFx0XHRlcnJvcjogKCkgPT4ge1xyXG5cdFx0XHRcdFx0dGhpcy5sb2FkaW5nLnNldChrZXksIGZhbHNlKTtcclxuXHRcdFx0XHRcdHRoaXMuZmFpbHVyZXMuc2V0KGtleSwgKHRoaXMuZmFpbHVyZXMuZ2V0KGtleSkgPz8gMCkgKyAxKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0pO1xyXG5cdH1cclxuXHJcblx0Ly8ga2V5IGZvcm1hdMSxOiBgZ3JvdXBOYW1lfnBhcmVudFNlbGVjdGlvbktleWAgKGZldGNoRW51bSdkYWtpIGNvbXBvc2l0ZSBrZXkgaWxlIGF5bsSxKS5cclxuXHQvLyBEaXJla3Qgb2xhcmFrIGdyb3VwTmFtZSBnZcOnaWxpcnNlIE1hcCd0ZSBlxZ9sZcWfbWUgb2xtYXogdmUgaGVyIHphbWFuIGZhbHNlIGTDtm5lci5cclxuXHRpc0xvYWRpbmcoa2V5OiBzdHJpbmcpOiBib29sZWFuIHtcclxuXHRcdHJldHVybiB0aGlzLmxvYWRpbmcuZ2V0KGtleSkgPz8gZmFsc2U7XHJcblx0fVxyXG59XHJcbiJdfQ==
@@ -177,7 +177,7 @@ export class EditProfileModalComponent {
177
177
  this.levelPairs = [];
178
178
  }
179
179
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: EditProfileModalComponent, deps: [{ token: i1.FormBuilder }, { token: i2.DynamicDialogRef }, { token: i3.MessageService }, { token: i4.ProfileService }, { token: i2.DynamicDialogConfig }, { token: i5.TranslocoService }], target: i0.ɵɵFactoryTarget.Component }); }
180
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: EditProfileModalComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<div *transloco=\"let t; read: 'profileSidebar'\">\r\n\t<aril-form [formGroup]=\"profileForm\">\r\n\t\t<aril-field [label]=\"t('userStatus')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\">\r\n\t\t\t<aril-checkbox [label]=\"' '\" formControlName=\"enabled\" [disabled]=\"true\"></aril-checkbox>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('systemUser')\" [cols]=\"{ xl: 6, lg: 6, md: 12, sm: 12 }\">\r\n\t\t\t<aril-checkbox [label]=\"' '\" formControlName=\"systemUser\" [disabled]=\"true\"></aril-checkbox>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('userType')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-select-box formControlName=\"userTypeId\" [items]=\"userTypeItems\" itemKey=\"value\" itemText=\"label\" [placeholder]=\"t('select')\"></aril-select-box>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('systemUserApp')\" [cols]=\"{ xl: 6, lg: 6, md: 12, sm: 12 }\">\r\n\t\t\t<aril-select-box formControlName=\"clientOfSystemUser\" [items]=\"clientList\" itemText=\"text\" itemKey=\"key\" [placeholder]=\"t('select')\"></aril-select-box>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('username')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-text formControlName=\"userName\" [disabled]=\"true\"></aril-text>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('userPassword')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-password formControlName=\"password\" [placeholder]=\"'&#8728;&#8728;&#8728;&#8728;&#8728;&#8728;&#8728;&#8728;&#8728;&#8728;'\"></aril-password>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('firstName')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-text formControlName=\"firstName\"></aril-text>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('lastName')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\">\r\n\t\t\t<aril-text formControlName=\"lastName\"></aril-text>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('email')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-text formControlName=\"email\"></aril-text>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('phone')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\">\r\n\t\t\t<aril-mask mask=\"(999) 999 99 99\" [placeholder]=\"t('phoneExample')\" formControlName=\"phone\"></aril-mask>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('tcNumber')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-mask mask=\"99999999999\" formControlName=\"tckn\"></aril-mask>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('responsibleRegions')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\">\r\n\t\t\t<aril-treeSelect\r\n\t\t\t\t[options]=\"treeItems\"\r\n\t\t\t\tformControlName=\"regions\"\r\n\t\t\t\t[placeholder]=\"t('select')\"\r\n\t\t\t\t(nodeSelect)=\"nodeSelect($event)\"\r\n\t\t\t\t(nodeUnselect)=\"nodeUnselect($event)\"\r\n\t\t\t\t(cleared)=\"clear()\">\r\n\t\t\t</aril-treeSelect>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('notes')\" [cols]=\"{ xl: 12, lg: 12, md: 12, sm: 12 }\">\r\n\t\t\t<aril-text-area [rows]=\"3\" [cols]=\"40\" formControlName=\"notes\"></aril-text-area>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('photoUrl')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\">\r\n\t\t\t<aril-text formControlName=\"photoUrl\"></aril-text>\r\n\t\t</aril-field>\r\n\r\n\t\t<div class=\"col-12 flex justify-content-end mt-3 gap-1\">\r\n\t\t\t<aril-button color=\"danger\" [label]=\"t('cancel')\" [outlined]=\"true\" icon=\"TIMES\" (clickEvent)=\"cancel()\"></aril-button>\r\n\t\t\t<aril-form-submit [label]=\"t('save')\" color=\"success\" icon=\"CHECK\" [formGroup]=\"profileForm\" (validEvent)=\"submit()\"></aril-form-submit>\r\n\t\t</div>\r\n\t</aril-form>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ARiLFormModule }, { kind: "component", type: i6.FormComponent, selector: "aril-form", inputs: ["formGroup"] }, { kind: "component", type: i6.FormSubmitButtonComponent, selector: "aril-form-submit:not([click])", inputs: ["formGroup"], outputs: ["validEvent", "inValidEvent"] }, { kind: "ngmodule", type: TranslocoModule }, { kind: "directive", type: i5.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoLang", "translocoLoadingTpl"] }, { kind: "ngmodule", type: TreeSelectModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: TextComponent, selector: "aril-text[ngModel], aril-text[formControl], aril-text[formControlName]", inputs: ["placeholder", "tabindex", "icon", "iconPos", "size"] }, { kind: "component", type: MaskComponent, selector: "aril-mask[ngModel], aril-mask[formControl], aril-mask[formControlName]", inputs: ["mask", "slotChar", "placeholder", "maxlength", "usageInGrid", "tabindex"] }, { kind: "component", type: FieldComponent, selector: "aril-field", inputs: ["label", "color", "labelWidth", "valueWidth", "labelPos", "markAsRequired", "cols", "infoData", "infoDataOverlayPanel"] }, { kind: "component", type: ButtonComponent, selector: "aril-button:not([click])", inputs: ["label", "loading", "disabled", "raised", "rounded", "text", "outlined", "badge", "size", "icon", "iconPos", "color"], outputs: ["clickEvent"] }, { kind: "component", type: TextAreaComponent, selector: "aril-text-area[ngModel], aril-text-area[formControl], aril-text-area[formControlName]", inputs: ["rows", "cols", "isAutoResize", "tabindex", "placeholder"] }, { kind: "component", type: CheckboxComponent, selector: "aril-checkbox[ngModel], aril-checkbox[formControl], aril-checkbox[formControlName]", inputs: ["label", "labelAsYesNo", "tabindex"] }, { kind: "component", type: PasswordComponent, selector: "aril-password[ngModel], aril-password[formControl], aril-password[formControlName]", inputs: ["feedback", "passwordCriterias", "placeholder", "tabindex"] }, { kind: "component", type: SelectBoxComponent, selector: "aril-select-box[ngModel], aril-select-box[formControl], aril-select-box[formControlName]", inputs: ["itemKey", "itemText", "groupName", "parentSelectionKey", "tabindex", "items", "grouped", "showClearButton", "placeholder", "searchExpr"], outputs: ["onSelectionChanged"] }, { kind: "component", type: TreeSelectComponent, selector: "aril-treeSelect", inputs: ["options", "modelValue", "placeholder", "selectionMode", "display", "showClear", "filter", "filterPlaceholder", "propagateSelectionUp", "propagateSelectionDown", "metaKeySelection", "formControlName"], outputs: ["modelValueChange", "nodeSelect", "nodeUnselect", "cleared"] }] }); }
180
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: EditProfileModalComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<div *transloco=\"let t; read: 'profileSidebar'\">\r\n\t<aril-form [formGroup]=\"profileForm\">\r\n\t\t<aril-field [label]=\"t('userStatus')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\">\r\n\t\t\t<aril-checkbox [label]=\"' '\" formControlName=\"enabled\" [disabled]=\"true\"></aril-checkbox>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('systemUser')\" [cols]=\"{ xl: 6, lg: 6, md: 12, sm: 12 }\">\r\n\t\t\t<aril-checkbox [label]=\"' '\" formControlName=\"systemUser\" [disabled]=\"true\"></aril-checkbox>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('userType')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-select-box formControlName=\"userTypeId\" [items]=\"userTypeItems\" itemKey=\"value\" itemText=\"label\" [placeholder]=\"t('select')\"></aril-select-box>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('systemUserApp')\" [cols]=\"{ xl: 6, lg: 6, md: 12, sm: 12 }\">\r\n\t\t\t<aril-select-box formControlName=\"clientOfSystemUser\" [items]=\"clientList\" itemText=\"text\" itemKey=\"key\" [placeholder]=\"t('select')\"></aril-select-box>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('username')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-text formControlName=\"userName\" [disabled]=\"true\"></aril-text>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('userPassword')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-password formControlName=\"password\" [placeholder]=\"'&#8728;&#8728;&#8728;&#8728;&#8728;&#8728;&#8728;&#8728;&#8728;&#8728;'\"></aril-password>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('firstName')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-text formControlName=\"firstName\"></aril-text>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('lastName')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\">\r\n\t\t\t<aril-text formControlName=\"lastName\"></aril-text>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('email')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-text formControlName=\"email\"></aril-text>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('phone')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\">\r\n\t\t\t<aril-mask mask=\"(999) 999 99 99\" [placeholder]=\"t('phoneExample')\" formControlName=\"phone\"></aril-mask>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('tcNumber')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-mask mask=\"99999999999\" formControlName=\"tckn\"></aril-mask>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('responsibleRegions')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\">\r\n\t\t\t<aril-treeSelect\r\n\t\t\t\t[options]=\"treeItems\"\r\n\t\t\t\tformControlName=\"regions\"\r\n\t\t\t\t[placeholder]=\"t('select')\"\r\n\t\t\t\t(nodeSelect)=\"nodeSelect($event)\"\r\n\t\t\t\t(nodeUnselect)=\"nodeUnselect($event)\"\r\n\t\t\t\t(cleared)=\"clear()\">\r\n\t\t\t</aril-treeSelect>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('notes')\" [cols]=\"{ xl: 12, lg: 12, md: 12, sm: 12 }\">\r\n\t\t\t<aril-text-area [rows]=\"3\" [cols]=\"40\" formControlName=\"notes\"></aril-text-area>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('photoUrl')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\">\r\n\t\t\t<aril-text formControlName=\"photoUrl\"></aril-text>\r\n\t\t</aril-field>\r\n\r\n\t\t<div class=\"col-12 flex justify-content-end mt-3 gap-1\">\r\n\t\t\t<aril-button color=\"danger\" [label]=\"t('cancel')\" [outlined]=\"true\" icon=\"TIMES\" (clickEvent)=\"cancel()\"></aril-button>\r\n\t\t\t<aril-form-submit [label]=\"t('save')\" color=\"success\" icon=\"CHECK\" [formGroup]=\"profileForm\" (validEvent)=\"submit()\"></aril-form-submit>\r\n\t\t</div>\r\n\t</aril-form>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ARiLFormModule }, { kind: "component", type: i6.FormComponent, selector: "aril-form", inputs: ["formGroup"] }, { kind: "component", type: i6.FormSubmitButtonComponent, selector: "aril-form-submit:not([click])", inputs: ["formGroup"], outputs: ["validEvent", "inValidEvent"] }, { kind: "ngmodule", type: TranslocoModule }, { kind: "directive", type: i5.TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoLang", "translocoLoadingTpl"] }, { kind: "ngmodule", type: TreeSelectModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: TextComponent, selector: "aril-text[ngModel], aril-text[formControl], aril-text[formControlName]", inputs: ["placeholder", "tabindex", "icon", "iconPos", "size"] }, { kind: "component", type: MaskComponent, selector: "aril-mask[ngModel], aril-mask[formControl], aril-mask[formControlName]", inputs: ["mask", "slotChar", "placeholder", "maxlength", "usageInGrid", "tabindex"] }, { kind: "component", type: FieldComponent, selector: "aril-field", inputs: ["label", "color", "labelWidth", "valueWidth", "labelPos", "markAsRequired", "cols", "infoData", "infoDataOverlayPanel"] }, { kind: "component", type: ButtonComponent, selector: "aril-button:not([click])", inputs: ["label", "loading", "disabled", "raised", "rounded", "text", "outlined", "badge", "size", "icon", "iconPos", "color"], outputs: ["clickEvent"] }, { kind: "component", type: TextAreaComponent, selector: "aril-text-area[ngModel], aril-text-area[formControl], aril-text-area[formControlName]", inputs: ["rows", "cols", "isAutoResize", "tabindex", "placeholder"] }, { kind: "component", type: CheckboxComponent, selector: "aril-checkbox[ngModel], aril-checkbox[formControl], aril-checkbox[formControlName]", inputs: ["label", "labelAsYesNo", "tabindex"] }, { kind: "component", type: PasswordComponent, selector: "aril-password[ngModel], aril-password[formControl], aril-password[formControlName]", inputs: ["feedback", "passwordCriterias", "placeholder", "tabindex"] }, { kind: "component", type: SelectBoxComponent, selector: "aril-select-box[ngModel], aril-select-box[formControl], aril-select-box[formControlName]", inputs: ["itemKey", "itemText", "parentSelectionKey", "tabindex", "items", "grouped", "showClearButton", "placeholder", "searchExpr"], outputs: ["onSelectionChanged"] }, { kind: "component", type: TreeSelectComponent, selector: "aril-treeSelect", inputs: ["options", "modelValue", "placeholder", "selectionMode", "display", "showClear", "filter", "filterPlaceholder", "propagateSelectionUp", "propagateSelectionDown", "metaKeySelection", "formControlName"], outputs: ["modelValueChange", "nodeSelect", "nodeUnselect", "cleared"] }] }); }
181
181
  }
182
182
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: EditProfileModalComponent, decorators: [{
183
183
  type: Component,
@@ -199,4 +199,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
199
199
  TreeSelectComponent
200
200
  ], template: "<div *transloco=\"let t; read: 'profileSidebar'\">\r\n\t<aril-form [formGroup]=\"profileForm\">\r\n\t\t<aril-field [label]=\"t('userStatus')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\">\r\n\t\t\t<aril-checkbox [label]=\"' '\" formControlName=\"enabled\" [disabled]=\"true\"></aril-checkbox>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('systemUser')\" [cols]=\"{ xl: 6, lg: 6, md: 12, sm: 12 }\">\r\n\t\t\t<aril-checkbox [label]=\"' '\" formControlName=\"systemUser\" [disabled]=\"true\"></aril-checkbox>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('userType')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-select-box formControlName=\"userTypeId\" [items]=\"userTypeItems\" itemKey=\"value\" itemText=\"label\" [placeholder]=\"t('select')\"></aril-select-box>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('systemUserApp')\" [cols]=\"{ xl: 6, lg: 6, md: 12, sm: 12 }\">\r\n\t\t\t<aril-select-box formControlName=\"clientOfSystemUser\" [items]=\"clientList\" itemText=\"text\" itemKey=\"key\" [placeholder]=\"t('select')\"></aril-select-box>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('username')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-text formControlName=\"userName\" [disabled]=\"true\"></aril-text>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('userPassword')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-password formControlName=\"password\" [placeholder]=\"'&#8728;&#8728;&#8728;&#8728;&#8728;&#8728;&#8728;&#8728;&#8728;&#8728;'\"></aril-password>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('firstName')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-text formControlName=\"firstName\"></aril-text>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('lastName')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\">\r\n\t\t\t<aril-text formControlName=\"lastName\"></aril-text>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('email')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-text formControlName=\"email\"></aril-text>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('phone')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\">\r\n\t\t\t<aril-mask mask=\"(999) 999 99 99\" [placeholder]=\"t('phoneExample')\" formControlName=\"phone\"></aril-mask>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('tcNumber')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\" [markAsRequired]=\"true\">\r\n\t\t\t<aril-mask mask=\"99999999999\" formControlName=\"tckn\"></aril-mask>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('responsibleRegions')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\">\r\n\t\t\t<aril-treeSelect\r\n\t\t\t\t[options]=\"treeItems\"\r\n\t\t\t\tformControlName=\"regions\"\r\n\t\t\t\t[placeholder]=\"t('select')\"\r\n\t\t\t\t(nodeSelect)=\"nodeSelect($event)\"\r\n\t\t\t\t(nodeUnselect)=\"nodeUnselect($event)\"\r\n\t\t\t\t(cleared)=\"clear()\">\r\n\t\t\t</aril-treeSelect>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('notes')\" [cols]=\"{ xl: 12, lg: 12, md: 12, sm: 12 }\">\r\n\t\t\t<aril-text-area [rows]=\"3\" [cols]=\"40\" formControlName=\"notes\"></aril-text-area>\r\n\t\t</aril-field>\r\n\r\n\t\t<aril-field [label]=\"t('photoUrl')\" [cols]=\"{ xl: 6, lg: 6, md: 6, sm: 12 }\">\r\n\t\t\t<aril-text formControlName=\"photoUrl\"></aril-text>\r\n\t\t</aril-field>\r\n\r\n\t\t<div class=\"col-12 flex justify-content-end mt-3 gap-1\">\r\n\t\t\t<aril-button color=\"danger\" [label]=\"t('cancel')\" [outlined]=\"true\" icon=\"TIMES\" (clickEvent)=\"cancel()\"></aril-button>\r\n\t\t\t<aril-form-submit [label]=\"t('save')\" color=\"success\" icon=\"CHECK\" [formGroup]=\"profileForm\" (validEvent)=\"submit()\"></aril-form-submit>\r\n\t\t</div>\r\n\t</aril-form>\r\n</div>\r\n" }]
201
201
  }], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.DynamicDialogRef }, { type: i3.MessageService }, { type: i4.ProfileService }, { type: i2.DynamicDialogConfig }, { type: i5.TranslocoService }] });
202
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1wcm9maWxlLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdGhlbWUvbGF5b3V0L2FwcC9wcm9maWxlU2lkZWJhci9tb2RhbHMvZWRpdC1wcm9maWxlLW1vZGFsL2VkaXQtcHJvZmlsZS1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9hcHAvcHJvZmlsZVNpZGViYXIvbW9kYWxzL2VkaXQtcHJvZmlsZS1tb2RhbC9lZGl0LXByb2ZpbGUtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RCxPQUFPLEVBQWUsV0FBVyxFQUFhLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUluSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV0RCxPQUFPLEVBQUUsZUFBZSxFQUFvQixNQUFNLG1CQUFtQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUMsT0FBTyxF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Q0FBQztRQUNqRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsS0FBSyxVQUFVLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUMsQ0FBQztRQUNoSCxJQUFJLEtBQUssS0FBSyxDQUFDLENBQUM7WUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELEtBQUs7UUFDSixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDOzhHQTFNVyx5QkFBeUI7a0dBQXpCLHlCQUF5Qix3RUMvQ3RDLDAwSEF1RUEsMkNEMUNFLFlBQVksOEJBQ1osV0FBVyxrU0FDWCxjQUFjLGlTQUNkLGVBQWUsZ09BQ2YsZ0JBQWdCLDhCQUNoQixtQkFBbUIsZ1ZBQ25CLGFBQWEsbUxBQ2IsYUFBYSx3TUFDYixjQUFjLHlMQUNkLGVBQWUsOE5BQ2YsaUJBQWlCLHVNQUNqQixpQkFBaUIsOEtBQ2pCLGlCQUFpQixxTUFDakIsa0JBQWtCLDBUQUNsQixtQkFBbUI7OzJGQUlSLHlCQUF5QjtrQkFyQnJDLFNBQVM7aUNBQ0csSUFBSSxXQUNQO3dCQUNSLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixtQkFBbUI7d0JBQ25CLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsaUJBQWlCO3dCQUNqQixpQkFBaUI7d0JBQ2pCLGlCQUFpQjt3QkFDakIsa0JBQWtCO3dCQUNsQixtQkFBbUI7cUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIGVmZmVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcbmltcG9ydCB7IER5bmFtaWNEaWFsb2dDb25maWcsIER5bmFtaWNEaWFsb2dSZWYgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5pbXBvcnQgeyBUcmVlU2VsZWN0TW9kdWxlIH0gZnJvbSAncHJpbWVuZy90cmVlc2VsZWN0JztcclxuXHJcbmltcG9ydCB7IFRyYW5zbG9jb01vZHVsZSwgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcclxuaW1wb3J0IHsgU3ViamVjdCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdhcmlsL3VpL2J1dHRvbic7XHJcbmltcG9ydCB7IENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnYXJpbC91aS9jaGVja2JveCc7XHJcbmltcG9ydCB7IEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnYXJpbC91aS9maWVsZCc7XHJcbmltcG9ydCB7IEFSaUxGb3JtTW9kdWxlIH0gZnJvbSAnYXJpbC91aS9mb3JtJztcclxuaW1wb3J0IHsgTWFza0NvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvbWFzayc7XHJcbmltcG9ydCB7IFBhc3N3b3JkQ29tcG9uZW50IH0gZnJvbSAnYXJpbC91aS9wYXNzd29yZCc7XHJcbmltcG9ydCB7IFNlbGVjdEJveENvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvc2VsZWN0Qm94JztcclxuaW1wb3J0IHsgVGV4dENvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvdGV4dCc7XHJcbmltcG9ydCB7IFRleHRBcmVhQ29tcG9uZW50IH0gZnJvbSAnYXJpbC91aS90ZXh0QXJlYSc7XHJcbmltcG9ydCB7IFRyZWVTZWxlY3RDb21wb25lbnQgfSBmcm9tICdhcmlsL3VpL3RyZWVTZWxlY3QnO1xyXG5cclxuaW1wb3J0IHsgQ2xpZW50UmVzcG9uc2VEVE8sIEdldEFsbENsaWVudFJlcXVlc3REVE8gfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlL2ludGVyZmFjZXMvaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IFByb2ZpbGVTZXJ2aWNlLCBVcGRhdGVVc2VyUmVxdWVzdERUTywgVXNlclJlc3BvbnNlRFRPIH0gZnJvbSAnLi4vLi4vcHJvZmlsZS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0aW1wb3J0czogW1xyXG5cdFx0Q29tbW9uTW9kdWxlLFxyXG5cdFx0Rm9ybXNNb2R1bGUsXHJcblx0XHRBUmlMRm9ybU1vZHVsZSxcclxuXHRcdFRyYW5zbG9jb01vZHVsZSxcclxuXHRcdFRyZWVTZWxlY3RNb2R1bGUsXHJcblx0XHRSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG5cdFx0VGV4dENvbXBvbmVudCxcclxuXHRcdE1hc2tDb21wb25lbnQsXHJcblx0XHRGaWVsZENvbXBvbmVudCxcclxuXHRcdEJ1dHRvbkNvbXBvbmVudCxcclxuXHRcdFRleHRBcmVhQ29tcG9uZW50LFxyXG5cdFx0Q2hlY2tib3hDb21wb25lbnQsXHJcblx0XHRQYXNzd29yZENvbXBvbmVudCxcclxuXHRcdFNlbGVjdEJveENvbXBvbmVudCxcclxuXHRcdFRyZWVTZWxlY3RDb21wb25lbnRcclxuXHRdLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9lZGl0LXByb2ZpbGUtbW9kYWwuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFZGl0UHJvZmlsZU1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBkaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYsXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgcHJvZmlsZVNlcnZpY2U6IFByb2ZpbGVTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBkaWFsb2dDb25maWc6IER5bmFtaWNEaWFsb2dDb25maWcsXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IHRyYW5zbG9jb1NlcnZpY2U6IFRyYW5zbG9jb1NlcnZpY2VcclxuXHQpIHtcclxuXHRcdHRoaXMudXNlclByb2ZpbGUgPSB0aGlzLmRpYWxvZ0NvbmZpZy5kYXRhPy51c2VyUHJvZmlsZTtcclxuXHJcblx0XHR0aGlzLmluaXRpYWxpemVFZmZlY3RzKCk7XHJcblx0XHR0aGlzLmluaXRpYWxpemVGb3JtKCk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGluaXRpYWxpemVFZmZlY3RzKCkge1xyXG5cdFx0dGhpcy5zdWJqZWN0cy5nZXRUcmVlLm5leHQoMCk7XHJcblx0XHR0aGlzLnN1YmplY3RzLmdldFVzZXJUeXBlLm5leHQoeyBmaXJzdDogMCwgbWF4OiAxMDAgfSk7XHJcblx0XHR0aGlzLnN1YmplY3RzLmdldENsaWVudExpc3QubmV4dCh7IGZpcnN0OiAwLCBtYXg6IDEwMCB9KTtcclxuXHJcblx0XHRpZiAodGhpcy5kaWFsb2dDb25maWc/LmRhdGE/Lml0ZW0/LmlkKSB7XHJcblx0XHRcdHRoaXMuc3ViamVjdHMuZ2V0VXNlckRldGFpbHMubmV4dCh7IGlkOiB0aGlzLmRpYWxvZ0NvbmZpZy5kYXRhLml0ZW0uaWQgfSk7XHJcblx0XHR9XHJcblxyXG5cdFx0ZWZmZWN0KCgpID0+IHtcclxuXHRcdFx0XHRjb25zdCBzZXJ2aWNlID0gdGhpcy51cGRhdGVVc2VyU2VydmljZSgpO1xyXG5cdFx0XHRcdGlmIChzZXJ2aWNlPy5yZXNwb25zZSkge1xyXG5cdFx0XHRcdFx0dGhpcy5tZXNzYWdlU2VydmljZS5hZGQoe1xyXG5cdFx0XHRcdFx0XHRzZXZlcml0eTogJ3N1Y2Nlc3MnLFxyXG5cdFx0XHRcdFx0XHRzdW1tYXJ5OiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdwcm9maWxlU2lkZWJhci51cGRhdGVTdWNjZXNzJyksXHJcblx0XHRcdFx0XHRcdGRldGFpbDogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgncHJvZmlsZVNpZGViYXIudXBkYXRlU3VjY2Vzc0RldGFpbCcpLFxyXG5cdFx0XHRcdFx0XHRrZXk6ICd0b2FzdC1yb290J1xyXG5cdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0XHR0aGlzLmRpYWxvZ1JlZi5jbG9zZSh7IHN0YXR1czogJ3N1Y2Nlc3MnLCBkYXRhOiBzZXJ2aWNlLnJlc3BvbnNlIH0pO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSxcclxuXHRcdFx0eyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9XHJcblx0XHQpO1xyXG5cclxuXHRcdGVmZmVjdCgoKSA9PiB7XHJcblx0XHRcdGlmICh0aGlzLmdldENsaWVudExpc3RTZXJ2aWNlKCk/LnJlc3BvbnNlKSB7XHJcblx0XHRcdFx0dGhpcy5wcmVwYXJlQ2xpZW50TGlzdERyb3Bkb3duKHRoaXMuZ2V0Q2xpZW50TGlzdFNlcnZpY2UoKT8ucmVzcG9uc2UgYXMgQ2xpZW50UmVzcG9uc2VEVE9bXSk7XHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cclxuXHRcdGVmZmVjdCgoKSA9PiB7XHJcblx0XHRcdGlmICh0aGlzLmdldFVzZXJUeXBlU2VydmljZSgpPy5yZXNwb25zZSkge1xyXG5cdFx0XHRcdHRoaXMudXNlclR5cGVEYXRhcyA9IHRoaXMuZ2V0VXNlclR5cGVTZXJ2aWNlKCk/LnJlc3BvbnNlO1xyXG5cdFx0XHRcdHRoaXMudXNlclR5cGVJdGVtcyA9IHRoaXMudXNlclR5cGVEYXRhcy5tYXAoKGl0ZW06IHsgbmFtZTogc3RyaW5nOyBpZDogc3RyaW5nIH0pID0+ICh7XHJcblx0XHRcdFx0XHR0ZXh0OiBpdGVtLm5hbWUsXHJcblx0XHRcdFx0XHRrZXk6IGl0ZW0uaWRcclxuXHRcdFx0XHR9KSk7XHJcblx0XHRcdFx0dGhpcy5pbml0aWFsaXplRm9ybSgpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHJcblx0XHRlZmZlY3QoKCkgPT4ge1xyXG5cdFx0XHRpZiAodGhpcy5nZXRVc2VyRGV0YWlsU2VydmljZSgpPy5yZXNwb25zZSkge1xyXG5cdFx0XHRcdHRoaXMudXBkYXRlVXNlckRhdGEgPSB0aGlzLmdldFVzZXJEZXRhaWxTZXJ2aWNlKCk/LnJlc3BvbnNlO1xyXG5cdFx0XHRcdHRoaXMuaW5pdGlhbGl6ZUZvcm0oKTtcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblxyXG5cdFx0ZWZmZWN0KCgpID0+IHtcclxuXHRcdFx0aWYgKHRoaXMuZ2V0QXV0aG9yaXR5VHJlZVNlcnZpY2UoKT8ucmVzcG9uc2UpIHtcclxuXHRcdFx0XHR0aGlzLnRyZWVEYXRhID0gdGhpcy5nZXRBdXRob3JpdHlUcmVlU2VydmljZSgpPy5yZXNwb25zZTtcclxuXHRcdFx0XHR0aGlzLnRyZWVJdGVtcyA9IHRoaXMubWFwVHJlZURhdGEodGhpcy50cmVlRGF0YSk7XHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBzdWJqZWN0cyA9IHtcclxuXHRcdGdldFRyZWU6IG5ldyBTdWJqZWN0PG51bWJlcj4oKSxcclxuXHRcdGdldFVzZXJUeXBlOiBuZXcgU3ViamVjdDxhbnk+KCksXHJcblx0XHRnZXRVc2VyRGV0YWlsczogbmV3IFN1YmplY3Q8eyBpZDogc3RyaW5nIH0+KCksXHJcblx0XHR1cGRhdGVVc2VyOiBuZXcgU3ViamVjdDxVcGRhdGVVc2VyUmVxdWVzdERUTz4oKSxcclxuXHRcdGdldENsaWVudExpc3Q6IG5ldyBTdWJqZWN0PEdldEFsbENsaWVudFJlcXVlc3REVE8+KClcclxuXHR9O1xyXG5cclxuXHR0cmVlRGF0YTogYW55O1xyXG5cdHRyZWVJdGVtczogYW55O1xyXG5cdHBhZ2VFZGl0ID0gZmFsc2U7XHJcblx0dXNlclR5cGVJdGVtczogYW55O1xyXG5cdHVzZXJUeXBlRGF0YXM6IGFueTtcclxuXHR1cGRhdGVVc2VyRGF0YTogYW55O1xyXG5cdGNsaWVudExpc3Q6IHsga2V5OiBzdHJpbmc7IHRleHQ6IHN0cmluZyB9W10gPSBbXTtcclxuXHRsZXZlbFBhaXJzOiBBcnJheTx7IHN0YXJ0TGV2ZWw6IHN0cmluZzsgZW5kTGV2ZWw6IHN0cmluZyB9PiA9IFtdO1xyXG5cclxuXHRwcm9maWxlRm9ybSE6IEZvcm1Hcm91cDtcclxuXHR1c2VyUHJvZmlsZTogVXNlclJlc3BvbnNlRFRPO1xyXG5cdHNlbGVjdGVkVXNlclR5cGVJZHM6IHN0cmluZ1tdID0gW107XHJcblxyXG5cdG5nT25Jbml0KCkge1xyXG5cdFx0aWYgKCF0aGlzLnVzZXJQcm9maWxlKSB7XHJcblx0XHRcdHRoaXMuZGlhbG9nUmVmLmNsb3NlKCdlcnJvcicpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0dXBkYXRlVXNlclNlcnZpY2UgPSB0b1NpZ25hbChcclxuXHRcdHRoaXMuc3ViamVjdHMudXBkYXRlVXNlci5waXBlKHN3aXRjaE1hcCgoZGF0YSkgPT4gdGhpcy5wcm9maWxlU2VydmljZS51cGRhdGVVc2VyKGRhdGEpKSlcclxuXHQpO1xyXG5cclxuXHRnZXRDbGllbnRMaXN0U2VydmljZSA9IHRvU2lnbmFsKFxyXG5cdFx0dGhpcy5zdWJqZWN0cy5nZXRDbGllbnRMaXN0LnBpcGUoc3dpdGNoTWFwKChkYXRhKSA9PiB0aGlzLnByb2ZpbGVTZXJ2aWNlLmdldEFsbENsaWVudHNMaXN0KGRhdGEpKSlcclxuXHQpO1xyXG5cclxuXHRnZXRVc2VyRGV0YWlsU2VydmljZSA9IHRvU2lnbmFsKFxyXG5cdFx0dGhpcy5zdWJqZWN0cy5nZXRVc2VyRGV0YWlscy5waXBlKHN3aXRjaE1hcCgoZGF0YSkgPT4gdGhpcy5wcm9maWxlU2VydmljZS5nZXRVc2VyKGRhdGEpKSlcclxuXHQpO1xyXG5cclxuXHRnZXRVc2VyVHlwZVNlcnZpY2UgPSB0b1NpZ25hbChcclxuXHRcdHRoaXMuc3ViamVjdHMuZ2V0VXNlclR5cGUucGlwZShzd2l0Y2hNYXAoKGRhdGEpID0+IHRoaXMucHJvZmlsZVNlcnZpY2UuZ2V0QWxsVXNlclR5cGUoZGF0YSkpKVxyXG5cdCk7XHJcblxyXG5cdGdldEF1dGhvcml0eVRyZWVTZXJ2aWNlID0gdG9TaWduYWwoXHJcblx0XHR0aGlzLnN1YmplY3RzLmdldFRyZWUucGlwZShzd2l0Y2hNYXAoKGRhdGEpID0+IHRoaXMucHJvZmlsZVNlcnZpY2UuZ2V0QXV0aG9yaXR5VHJlZShkYXRhKSkpXHJcblx0KTtcclxuXHJcblx0cHJpdmF0ZSBpbml0aWFsaXplRm9ybSgpOiB2b2lkIHtcclxuXHRcdHRoaXMudXBkYXRlVXNlckRhdGEgPSB0aGlzLmdldFVzZXJEZXRhaWxTZXJ2aWNlKCk/LnJlc3BvbnNlO1xyXG5cclxuXHRcdGNvbnN0IHVzZXJUeXBlc0Zyb21SZXNwb25zZTogc3RyaW5nW10gPSB0aGlzLnVzZXJQcm9maWxlPy51c2VyVHlwZXMgfHwgW107XHJcblx0XHRjb25zdCB1c2VyVHlwZURhdGFzID0gdGhpcy51c2VyVHlwZURhdGFzIHx8IFtdO1xyXG5cclxuXHRcdHRoaXMuc2VsZWN0ZWRVc2VyVHlwZUlkcyA9IHVzZXJUeXBlRGF0YXNcclxuXHRcdFx0LmZpbHRlcigodHlwZTogeyBuYW1lOiBzdHJpbmcgfSkgPT4gdXNlclR5cGVzRnJvbVJlc3BvbnNlLmluY2x1ZGVzKHR5cGUubmFtZSkpXHJcblx0XHRcdC5tYXAoKHR5cGU6IHsgaWQ6IGFueSB9KSA9PiB0eXBlLmlkKTtcclxuXHJcblx0XHR0aGlzLnVzZXJUeXBlSXRlbXMgPSB1c2VyVHlwZURhdGFzLm1hcCgodHlwZTogeyBuYW1lOiBhbnk7IGlkOiBhbnkgfSkgPT4gKHtcclxuXHRcdFx0bGFiZWw6IHR5cGUubmFtZSxcclxuXHRcdFx0dmFsdWU6IHR5cGUuaWRcclxuXHRcdH0pKTtcclxuXHJcblx0XHR0aGlzLnByb2ZpbGVGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcblx0XHRcdGlkOiBuZXcgRm9ybUNvbnRyb2wodGhpcy51c2VyUHJvZmlsZT8uaWQgfHwgbnVsbCksXHJcblx0XHRcdHN5c3RlbVVzZXI6IG5ldyBGb3JtQ29udHJvbCh7IHZhbHVlOiB0aGlzLnVzZXJQcm9maWxlPy5zeXN0ZW1Vc2VyID8/IHRydWUsIGRpc2FibGVkOiBmYWxzZSB9KSxcclxuXHRcdFx0Y2xpZW50T2ZTeXN0ZW1Vc2VyOiBuZXcgRm9ybUNvbnRyb2woeyB2YWx1ZTogdGhpcy51c2VyUHJvZmlsZT8uY2xpZW50T2ZTeXN0ZW1Vc2VyIHx8ICcnLCBkaXNhYmxlZDogZmFsc2UgfSksXHJcblx0XHRcdHVzZXJUeXBlSWQ6IG5ldyBGb3JtQ29udHJvbCh7IHZhbHVlOiB0aGlzLnNlbGVjdGVkVXNlclR5cGVJZHNbMF0sIGRpc2FibGVkOiBmYWxzZSB9KSxcclxuXHRcdFx0cmVnaW9uczogbmV3IEZvcm1Db250cm9sKHsgdmFsdWU6IHRoaXMudXNlclByb2ZpbGU/LnJlZ2lvbnMgfHwgJycsIGRpc2FibGVkOiBmYWxzZSB9KSxcclxuXHRcdFx0dXNlck5hbWU6IG5ldyBGb3JtQ29udHJvbCh7IHZhbHVlOiB0aGlzLnVzZXJQcm9maWxlPy51c2VyTmFtZSB8fCAnJywgZGlzYWJsZWQ6IHRydWUgfSwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKSxcclxuXHRcdFx0Zmlyc3ROYW1lOiBuZXcgRm9ybUNvbnRyb2wodGhpcy51c2VyUHJvZmlsZT8uZmlyc3ROYW1lIHx8ICcnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF0pLFxyXG5cdFx0XHRsYXN0TmFtZTogbmV3IEZvcm1Db250cm9sKHRoaXMudXNlclByb2ZpbGU/Lmxhc3ROYW1lIHx8ICcnKSxcclxuXHRcdFx0ZW1haWw6IG5ldyBGb3JtQ29udHJvbCh0aGlzLnVzZXJQcm9maWxlPy5lbWFpbCB8fCAnJywgW1ZhbGlkYXRvcnMuZW1haWwsIFZhbGlkYXRvcnMucmVxdWlyZWRdKSxcclxuXHRcdFx0cGhvbmU6IG5ldyBGb3JtQ29udHJvbChBcnJheS5pc0FycmF5KHRoaXMudXNlclByb2ZpbGU/LnBob25lKSA/IHRoaXMudXNlclByb2ZpbGUucGhvbmVbMF0gfHwgJycgOiB0aGlzLnVzZXJQcm9maWxlPy5waG9uZSB8fCAnJyksXHJcblx0XHRcdHRja246IG5ldyBGb3JtQ29udHJvbChBcnJheS5pc0FycmF5KHRoaXMudXNlclByb2ZpbGU/LnRja24pID8gdGhpcy51c2VyUHJvZmlsZS50Y2tuWzBdIHx8ICcnIDogJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSksXHJcblx0XHRcdHBob3RvVXJsOiBuZXcgRm9ybUNvbnRyb2wodGhpcy51c2VyUHJvZmlsZT8ucGhvdG9VcmwgfHwgJycpLFxyXG5cdFx0XHRlbmFibGVkOiBuZXcgRm9ybUNvbnRyb2woeyB2YWx1ZTogdGhpcy51c2VyUHJvZmlsZT8uZW5hYmxlZCA/PyB0cnVlLCBkaXNhYmxlZDogZmFsc2UgfSksXHJcblx0XHRcdGVtYWlsVmVyaWZpZWQ6IG5ldyBGb3JtQ29udHJvbCh7IHZhbHVlOiB0aGlzLnVzZXJQcm9maWxlPy5lbWFpbFZlcmlmaWVkID8/IHRydWUsIGRpc2FibGVkOiBmYWxzZSB9KSxcclxuXHRcdFx0bm90ZXM6IG5ldyBGb3JtQ29udHJvbCh0aGlzLnVzZXJQcm9maWxlPy5ub3RlcyB8fCAnJyksXHJcblx0XHRcdHBhc3N3b3JkOiBuZXcgRm9ybUNvbnRyb2wobnVsbClcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0c3VibWl0KCk6IHZvaWQge1xyXG5cdFx0Y29uc3QgcmF3VmFsdWUgPSB0aGlzLnByb2ZpbGVGb3JtLmdldFJhd1ZhbHVlKCk7XHJcblx0XHRjb25zdCB1cGRhdGVSZXF1ZXN0OiBVcGRhdGVVc2VyUmVxdWVzdERUTyA9IHtcclxuXHRcdFx0Li4ucmF3VmFsdWUsXHJcblx0XHRcdGlkOiB0aGlzLnVzZXJQcm9maWxlLmlkLFxyXG5cdFx0XHRwaG9uZTogQXJyYXkuaXNBcnJheShyYXdWYWx1ZS5waG9uZSkgPyByYXdWYWx1ZS5waG9uZSA6IFtyYXdWYWx1ZS5waG9uZV0sXHJcblx0XHRcdHRja246IEFycmF5LmlzQXJyYXkocmF3VmFsdWUudGNrbikgPyByYXdWYWx1ZS50Y2tuIDogW3Jhd1ZhbHVlLnRja25dLFxyXG5cdFx0XHRyZWdpb25zOiB0aGlzLmxldmVsUGFpcnMsXHJcblx0XHRcdHBob3RvVXJsOiBBcnJheS5pc0FycmF5KHJhd1ZhbHVlLnBob3RvVXJsKSA/IHJhd1ZhbHVlLnBob3RvVXJsIDogW3Jhd1ZhbHVlLnBob3RvVXJsXSxcclxuXHRcdFx0bm90ZXM6IEFycmF5LmlzQXJyYXkocmF3VmFsdWUubm90ZXMpID8gcmF3VmFsdWUubm90ZXMgOiBbcmF3VmFsdWUubm90ZXNdXHJcblx0XHR9O1xyXG5cclxuXHRcdHRoaXMuc3ViamVjdHMudXBkYXRlVXNlci5uZXh0KHVwZGF0ZVJlcXVlc3QpO1xyXG5cdH1cclxuXHJcblx0Y2FuY2VsKCk6IHZvaWQge1xyXG5cdFx0dGhpcy5kaWFsb2dSZWYuY2xvc2UoJ2NhbmNlbCcpO1xyXG5cdH1cclxuXHJcblx0cHJlcGFyZUNsaWVudExpc3REcm9wZG93bihjbGllbnRMaXN0UGFyYW06IENsaWVudFJlc3BvbnNlRFRPW10pIHtcclxuXHRcdHRoaXMuY2xpZW50TGlzdCA9IGNsaWVudExpc3RQYXJhbS5tYXAoKGNsaWVudEl0ZW0pID0+ICh7XHJcblx0XHRcdGtleTogY2xpZW50SXRlbS5jbGllbnRSZWZlcmVuY2VLZXksXHJcblx0XHRcdHRleHQ6IGNsaWVudEl0ZW0ubmFtZVxyXG5cdFx0fSkpO1xyXG5cdH1cclxuXHJcblx0bWFwVHJlZURhdGEodHJlZURhdGE6IGFueSkge1xyXG5cdFx0cmV0dXJuIHRyZWVEYXRhLm1hcCgoaXRlbTogYW55KSA9PiAoe1xyXG5cdFx0XHRrZXk6IGl0ZW0uc3RhcnRMZXZlbCxcclxuXHRcdFx0bGFiZWw6IGl0ZW0ubmFtZSxcclxuXHRcdFx0dmFsdWU6IGl0ZW0uaWQsXHJcblx0XHRcdGNoaWxkcmVuOiBpdGVtLmNoaWxkcmVuID8gdGhpcy5tYXBUcmVlRGF0YShpdGVtLmNoaWxkcmVuKSA6IFtdXHJcblx0XHR9KSk7XHJcblx0fVxyXG5cclxuXHRub2RlU2VsZWN0KGV2ZW50OiBhbnkpIHtcclxuXHRcdGNvbnN0IHsgc3RhcnRMZXZlbCwgZW5kTGV2ZWwgfSA9IGV2ZW50Lm5vZGUuZGF0YTtcclxuXHRcdGNvbnN0IGluZGV4ID0gdGhpcy5sZXZlbFBhaXJzLmZpbmRJbmRleCgocGFpcikgPT4gcGFpci5zdGFydExldmVsID09PSBzdGFydExldmVsICYmIHBhaXIuZW5kTGV2ZWwgPT09IGVuZExldmVsKTtcclxuXHRcdGluZGV4ID09PSAtMSA/IHRoaXMubGV2ZWxQYWlycy5wdXNoKHsgc3RhcnRMZXZlbCwgZW5kTGV2ZWwgfSkgOiB0aGlzLmxldmVsUGFpcnMuc3BsaWNlKGluZGV4LCAxKTtcclxuXHR9XHJcblxyXG5cdG5vZGVVbnNlbGVjdChldmVudDogYW55KSB7XHJcblx0XHRjb25zdCB7IHN0YXJ0TGV2ZWwsIGVuZExldmVsIH0gPSBldmVudC5ub2RlLmRhdGE7XHJcblx0XHRjb25zdCBpbmRleCA9IHRoaXMubGV2ZWxQYWlycy5maW5kSW5kZXgoKHBhaXIpID0+IHBhaXIuc3RhcnRMZXZlbCA9PT0gc3RhcnRMZXZlbCAmJiBwYWlyLmVuZExldmVsID09PSBlbmRMZXZlbCk7XHJcblx0XHRpZiAoaW5kZXggIT09IC0xKSB0aGlzLmxldmVsUGFpcnMuc3BsaWNlKGluZGV4LCAxKTtcclxuXHR9XHJcblxyXG5cdGNsZWFyKCkge1xyXG5cdFx0dGhpcy5sZXZlbFBhaXJzID0gW107XHJcblx0fVxyXG59XHJcbiIsIjxkaXYgKnRyYW5zbG9jbz1cImxldCB0OyByZWFkOiAncHJvZmlsZVNpZGViYXInXCI+XHJcblx0PGFyaWwtZm9ybSBbZm9ybUdyb3VwXT1cInByb2ZpbGVGb3JtXCI+XHJcblx0XHQ8YXJpbC1maWVsZCBbbGFiZWxdPVwidCgndXNlclN0YXR1cycpXCIgW2NvbHNdPVwieyB4bDogNiwgbGc6IDYsIG1kOiA2LCBzbTogMTIgfVwiPlxyXG5cdFx0XHQ8YXJpbC1jaGVja2JveCBbbGFiZWxdPVwiJyAnXCIgZm9ybUNvbnRyb2xOYW1lPVwiZW5hYmxlZFwiIFtkaXNhYmxlZF09XCJ0cnVlXCI+PC9hcmlsLWNoZWNrYm94PlxyXG5cdFx0PC9hcmlsLWZpZWxkPlxyXG5cclxuXHRcdDxhcmlsLWZpZWxkIFtsYWJlbF09XCJ0KCdzeXN0ZW1Vc2VyJylcIiBbY29sc109XCJ7IHhsOiA2LCBsZzogNiwgbWQ6IDEyLCBzbTogMTIgfVwiPlxyXG5cdFx0XHQ8YXJpbC1jaGVja2JveCBbbGFiZWxdPVwiJyAnXCIgZm9ybUNvbnRyb2xOYW1lPVwic3lzdGVtVXNlclwiIFtkaXNhYmxlZF09XCJ0cnVlXCI+PC9hcmlsLWNoZWNrYm94PlxyXG5cdFx0PC9hcmlsLWZpZWxkPlxyXG5cclxuXHRcdDxhcmlsLWZpZWxkIFtsYWJlbF09XCJ0KCd1c2VyVHlwZScpXCIgW2NvbHNdPVwieyB4bDogNiwgbGc6IDYsIG1kOiA2LCBzbTogMTIgfVwiIFttYXJrQXNSZXF1aXJlZF09XCJ0cnVlXCI+XHJcblx0XHRcdDxhcmlsLXNlbGVjdC1ib3ggZm9ybUNvbnRyb2xOYW1lPVwidXNlclR5cGVJZFwiIFtpdGVtc109XCJ1c2VyVHlwZUl0ZW1zXCIgaXRlbUtleT1cInZhbHVlXCIgaXRlbVRleHQ9XCJsYWJlbFwiIFtwbGFjZWhvbGRlcl09XCJ0KCdzZWxlY3QnKVwiPjwvYXJpbC1zZWxlY3QtYm94PlxyXG5cdFx0PC9hcmlsLWZpZWxkPlxyXG5cclxuXHRcdDxhcmlsLWZpZWxkIFtsYWJlbF09XCJ0KCdzeXN0ZW1Vc2VyQXBwJylcIiBbY29sc109XCJ7IHhsOiA2LCBsZzogNiwgbWQ6IDEyLCBzbTogMTIgfVwiPlxyXG5cdFx0XHQ8YXJpbC1zZWxlY3QtYm94IGZvcm1Db250cm9sTmFtZT1cImNsaWVudE9mU3lzdGVtVXNlclwiIFtpdGVtc109XCJjbGllbnRMaXN0XCIgaXRlbVRleHQ9XCJ0ZXh0XCIgaXRlbUtleT1cImtleVwiIFtwbGFjZWhvbGRlcl09XCJ0KCdzZWxlY3QnKVwiPjwvYXJpbC1zZWxlY3QtYm94PlxyXG5cdFx0PC9hcmlsLWZpZWxkPlxyXG5cclxuXHRcdDxhcmlsLWZpZWxkIFtsYWJlbF09XCJ0KCd1c2VybmFtZScpXCIgW2NvbHNdPVwieyB4bDogNiwgbGc6IDYsIG1kOiA2LCBzbTogMTIgfVwiIFttYXJrQXNSZXF1aXJlZF09XCJ0cnVlXCI+XHJcblx0XHRcdDxhcmlsLXRleHQgZm9ybUNvbnRyb2xOYW1lPVwidXNlck5hbWVcIiBbZGlzYWJsZWRdPVwidHJ1ZVwiPjwvYXJpbC10ZXh0PlxyXG5cdFx0PC9hcmlsLWZpZWxkPlxyXG5cclxuXHRcdDxhcmlsLWZpZWxkIFtsYWJlbF09XCJ0KCd1c2VyUGFzc3dvcmQnKVwiIFtjb2xzXT1cInsgeGw6IDYsIGxnOiA2LCBtZDogNiwgc206IDEyIH1cIiBbbWFya0FzUmVxdWlyZWRdPVwidHJ1ZVwiPlxyXG5cdFx0XHQ8YXJpbC1wYXNzd29yZCBmb3JtQ29udHJvbE5hbWU9XCJwYXNzd29yZFwiIFtwbGFjZWhvbGRlcl09XCInJiM4NzI4OyYjODcyODsmIzg3Mjg7JiM4NzI4OyYjODcyODsmIzg3Mjg7JiM4NzI4OyYjODcyODsmIzg3Mjg7JiM4NzI4OydcIj48L2FyaWwtcGFzc3dvcmQ+XHJcblx0XHQ8L2FyaWwtZmllbGQ+XHJcblxyXG5cdFx0PGFyaWwtZmllbGQgW2xhYmVsXT1cInQoJ2ZpcnN0TmFtZScpXCIgW2NvbHNdPVwieyB4bDogNiwgbGc6IDYsIG1kOiA2LCBzbTogMTIgfVwiIFttYXJrQXNSZXF1aXJlZF09XCJ0cnVlXCI+XHJcblx0XHRcdDxhcmlsLXRleHQgZm9ybUNvbnRyb2xOYW1lPVwiZmlyc3ROYW1lXCI+PC9hcmlsLXRleHQ+XHJcblx0XHQ8L2FyaWwtZmllbGQ+XHJcblxyXG5cdFx0PGFyaWwtZmllbGQgW2xhYmVsXT1cInQoJ2xhc3ROYW1lJylcIiBbY29sc109XCJ7IHhsOiA2LCBsZzogNiwgbWQ6IDYsIHNtOiAxMiB9XCI+XHJcblx0XHRcdDxhcmlsLXRleHQgZm9ybUNvbnRyb2xOYW1lPVwibGFzdE5hbWVcIj48L2FyaWwtdGV4dD5cclxuXHRcdDwvYXJpbC1maWVsZD5cclxuXHJcblx0XHQ8YXJpbC1maWVsZCBbbGFiZWxdPVwidCgnZW1haWwnKVwiIFtjb2xzXT1cInsgeGw6IDYsIGxnOiA2LCBtZDogNiwgc206IDEyIH1cIiBbbWFya0FzUmVxdWlyZWRdPVwidHJ1ZVwiPlxyXG5cdFx0XHQ8YXJpbC10ZXh0IGZvcm1Db250cm9sTmFtZT1cImVtYWlsXCI+PC9hcmlsLXRleHQ+XHJcblx0XHQ8L2FyaWwtZmllbGQ+XHJcblxyXG5cdFx0PGFyaWwtZmllbGQgW2xhYmVsXT1cInQoJ3Bob25lJylcIiBbY29sc109XCJ7IHhsOiA2LCBsZzogNiwgbWQ6IDYsIHNtOiAxMiB9XCI+XHJcblx0XHRcdDxhcmlsLW1hc2sgbWFzaz1cIig5OTkpIDk5OSA5OSA5OVwiIFtwbGFjZWhvbGRlcl09XCJ0KCdwaG9uZUV4YW1wbGUnKVwiIGZvcm1Db250cm9sTmFtZT1cInBob25lXCI+PC9hcmlsLW1hc2s+XHJcblx0XHQ8L2FyaWwtZmllbGQ+XHJcblxyXG5cdFx0PGFyaWwtZmllbGQgW2xhYmVsXT1cInQoJ3RjTnVtYmVyJylcIiBbY29sc109XCJ7IHhsOiA2LCBsZzogNiwgbWQ6IDYsIHNtOiAxMiB9XCIgW21hcmtBc1JlcXVpcmVkXT1cInRydWVcIj5cclxuXHRcdFx0PGFyaWwtbWFzayBtYXNrPVwiOTk5OTk5OTk5OTlcIiBmb3JtQ29udHJvbE5hbWU9XCJ0Y2tuXCI+PC9hcmlsLW1hc2s+XHJcblx0XHQ8L2FyaWwtZmllbGQ+XHJcblxyXG5cdFx0PGFyaWwtZmllbGQgW2xhYmVsXT1cInQoJ3Jlc3BvbnNpYmxlUmVnaW9ucycpXCIgW2NvbHNdPVwieyB4bDogNiwgbGc6IDYsIG1kOiA2LCBzbTogMTIgfVwiPlxyXG5cdFx0XHQ8YXJpbC10cmVlU2VsZWN0XHJcblx0XHRcdFx0W29wdGlvbnNdPVwidHJlZUl0ZW1zXCJcclxuXHRcdFx0XHRmb3JtQ29udHJvbE5hbWU9XCJyZWdpb25zXCJcclxuXHRcdFx0XHRbcGxhY2Vob2xkZXJdPVwidCgnc2VsZWN0JylcIlxyXG5cdFx0XHRcdChub2RlU2VsZWN0KT1cIm5vZGVTZWxlY3QoJGV2ZW50KVwiXHJcblx0XHRcdFx0KG5vZGVVbnNlbGVjdCk9XCJub2RlVW5zZWxlY3QoJGV2ZW50KVwiXHJcblx0XHRcdFx0KGNsZWFyZWQpPVwiY2xlYXIoKVwiPlxyXG5cdFx0XHQ8L2FyaWwtdHJlZVNlbGVjdD5cclxuXHRcdDwvYXJpbC1maWVsZD5cclxuXHJcblx0XHQ8YXJpbC1maWVsZCBbbGFiZWxdPVwidCgnbm90ZXMnKVwiIFtjb2xzXT1cInsgeGw6IDEyLCBsZzogMTIsIG1kOiAxMiwgc206IDEyIH1cIj5cclxuXHRcdFx0PGFyaWwtdGV4dC1hcmVhIFtyb3dzXT1cIjNcIiBbY29sc109XCI0MFwiIGZvcm1Db250cm9sTmFtZT1cIm5vdGVzXCI+PC9hcmlsLXRleHQtYXJlYT5cclxuXHRcdDwvYXJpbC1maWVsZD5cclxuXHJcblx0XHQ8YXJpbC1maWVsZCBbbGFiZWxdPVwidCgncGhvdG9VcmwnKVwiIFtjb2xzXT1cInsgeGw6IDYsIGxnOiA2LCBtZDogNiwgc206IDEyIH1cIj5cclxuXHRcdFx0PGFyaWwtdGV4dCBmb3JtQ29udHJvbE5hbWU9XCJwaG90b1VybFwiPjwvYXJpbC10ZXh0PlxyXG5cdFx0PC9hcmlsLWZpZWxkPlxyXG5cclxuXHRcdDxkaXYgY2xhc3M9XCJjb2wtMTIgZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIG10LTMgZ2FwLTFcIj5cclxuXHRcdFx0PGFyaWwtYnV0dG9uIGNvbG9yPVwiZGFuZ2VyXCIgW2xhYmVsXT1cInQoJ2NhbmNlbCcpXCIgW291dGxpbmVkXT1cInRydWVcIiBpY29uPVwiVElNRVNcIiAoY2xpY2tFdmVudCk9XCJjYW5jZWwoKVwiPjwvYXJpbC1idXR0b24+XHJcblx0XHRcdDxhcmlsLWZvcm0tc3VibWl0IFtsYWJlbF09XCJ0KCdzYXZlJylcIiBjb2xvcj1cInN1Y2Nlc3NcIiBpY29uPVwiQ0hFQ0tcIiBbZm9ybUdyb3VwXT1cInByb2ZpbGVGb3JtXCIgKHZhbGlkRXZlbnQpPVwic3VibWl0KClcIj48L2FyaWwtZm9ybS1zdWJtaXQ+XHJcblx0XHQ8L2Rpdj5cclxuXHQ8L2FyaWwtZm9ybT5cclxuPC9kaXY+XHJcbiJdfQ==
202
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1wcm9maWxlLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdGhlbWUvbGF5b3V0L2FwcC9wcm9maWxlU2lkZWJhci9tb2RhbHMvZWRpdC1wcm9maWxlLW1vZGFsL2VkaXQtcHJvZmlsZS1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9hcHAvcHJvZmlsZVNpZGViYXIvbW9kYWxzL2VkaXQtcHJvZmlsZS1tb2RhbC9lZGl0LXByb2ZpbGUtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RCxPQUFPLEVBQWUsV0FBVyxFQUFhLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUluSCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV0RCxPQUFPLEVBQUUsZUFBZSxFQUFvQixNQUFNLG1CQUFtQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM3QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzdDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7Ozs7OztBQTBCekQsTUFBTSxPQUFPLHlCQUF5QjtJQUNyQyxZQUNrQixXQUF3QixFQUN4QixTQUEyQixFQUMzQixjQUE4QixFQUM5QixjQUE4QixFQUM5QixZQUFpQyxFQUNqQyxnQkFBa0M7UUFMbEMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUM5QixpQkFBWSxHQUFaLFlBQVksQ0FBcUI7UUFDakMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQWdFNUMsYUFBUSxHQUFHO1lBQ2xCLE9BQU8sRUFBRSxJQUFJLE9BQU8sRUFBVTtZQUM5QixXQUFXLEVBQUUsSUFBSSxPQUFPLEVBQU87WUFDL0IsY0FBYyxFQUFFLElBQUksT0FBTyxFQUFrQjtZQUM3QyxVQUFVLEVBQUUsSUFBSSxPQUFPLEVBQXdCO1lBQy9DLGFBQWEsRUFBRSxJQUFJLE9BQU8sRUFBMEI7U0FDcEQsQ0FBQztRQUlGLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFJakIsZUFBVSxHQUFvQyxFQUFFLENBQUM7UUFDakQsZUFBVSxHQUFvRCxFQUFFLENBQUM7UUFJakUsd0JBQW1CLEdBQWEsRUFBRSxDQUFDO1FBUW5DLHNCQUFpQixHQUFHLFFBQVEsQ0FDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUN4RixDQUFDO1FBRUYseUJBQW9CLEdBQUcsUUFBUSxDQUM5QixJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FDbEcsQ0FBQztRQUVGLHlCQUFvQixHQUFHLFFBQVEsQ0FDOUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUN6RixDQUFDO1FBRUYsdUJBQWtCLEdBQUcsUUFBUSxDQUM1QixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQzdGLENBQUM7UUFFRiw0QkFBdUIsR0FBRyxRQUFRLENBQ2pDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUMzRixDQUFDO1FBM0dELElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDO1FBRXZELElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU8saUJBQWlCO1FBQ3hCLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFFekQsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzNFLENBQUM7UUFFRCxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1YsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDekMsSUFBSSxPQUFPLEVBQUUsUUFBUSxFQUFFLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDO29CQUN2QixRQUFRLEVBQUUsU0FBUztvQkFDbkIsT0FBTyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsOEJBQThCLENBQUM7b0JBQ3hFLE1BQU0sRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLG9DQUFvQyxDQUFDO29CQUM3RSxHQUFHLEVBQUUsWUFBWTtpQkFDakIsQ0FBQyxDQUFDO2dCQUNILElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7WUFDckUsQ0FBQztRQUNGLENBQUMsRUFDRCxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxDQUMzQixDQUFDO1FBRUYsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNYLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUM7Z0JBQzNDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsRUFBRSxRQUErQixDQUFDLENBQUM7WUFDOUYsQ0FBQztRQUNGLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNYLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUM7Z0JBQ3pDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixFQUFFLEVBQUUsUUFBUSxDQUFDO2dCQUN6RCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBa0MsRUFBRSxFQUFFLENBQUMsQ0FBQztvQkFDcEYsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO29CQUNmLEdBQUcsRUFBRSxJQUFJLENBQUMsRUFBRTtpQkFDWixDQUFDLENBQUMsQ0FBQztnQkFDSixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkIsQ0FBQztRQUNGLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNYLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQUUsUUFBUSxDQUFDO2dCQUM1RCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkIsQ0FBQztRQUNGLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNYLElBQUksSUFBSSxDQUFDLHVCQUF1QixFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUM7Z0JBQzlDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixFQUFFLEVBQUUsUUFBUSxDQUFDO2dCQUN6RCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2xELENBQUM7UUFDRixDQUFDLENBQUMsQ0FBQztJQUNKLENBQUM7SUF1QkQsUUFBUTtRQUNQLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0IsQ0FBQztJQUNGLENBQUM7SUFzQk8sY0FBYztRQUNyQixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLFFBQVEsQ0FBQztRQUU1RCxNQUFNLHFCQUFxQixHQUFhLElBQUksQ0FBQyxXQUFXLEVBQUUsU0FBUyxJQUFJLEVBQUUsQ0FBQztRQUMxRSxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxJQUFJLEVBQUUsQ0FBQztRQUUvQyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsYUFBYTthQUN0QyxNQUFNLENBQUMsQ0FBQyxJQUFzQixFQUFFLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQzdFLEdBQUcsQ0FBQyxDQUFDLElBQWlCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUV0QyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUE0QixFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3pFLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNoQixLQUFLLEVBQUUsSUFBSSxDQUFDLEVBQUU7U0FDZCxDQUFDLENBQUMsQ0FBQztRQUVKLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7WUFDekMsRUFBRSxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLElBQUksQ0FBQztZQUNqRCxVQUFVLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxVQUFVLElBQUksSUFBSSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQztZQUM3RixrQkFBa0IsRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLGtCQUFrQixJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDM0csVUFBVSxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDcEYsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsT0FBTyxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDckYsUUFBUSxFQUFFLElBQUksV0FBVyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsUUFBUSxJQUFJLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDN0csU0FBUyxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsU0FBUyxJQUFJLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNwRixRQUFRLEVBQUUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxRQUFRLElBQUksRUFBRSxDQUFDO1lBQzNELEtBQUssRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5RixLQUFLLEVBQUUsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUNoSSxJQUFJLEVBQUUsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN6SCxRQUFRLEVBQUUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxRQUFRLElBQUksRUFBRSxDQUFDO1lBQzNELE9BQU8sRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLE9BQU8sSUFBSSxJQUFJLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQ3ZGLGFBQWEsRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLGFBQWEsSUFBSSxJQUFJLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQ25HLEtBQUssRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDckQsUUFBUSxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQztTQUMvQixDQUFDLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTTtRQUNMLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEQsTUFBTSxhQUFhLEdBQXlCO1lBQzNDLEdBQUcsUUFBUTtZQUNYLEVBQUUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDdkIsS0FBSyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7WUFDeEUsSUFBSSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFDcEUsT0FBTyxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQ3hCLFFBQVEsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO1lBQ3BGLEtBQUssRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO1NBQ3hFLENBQUM7UUFFRixJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELE1BQU07UUFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQseUJBQXlCLENBQUMsZUFBb0M7UUFDN0QsSUFBSSxDQUFDLFVBQVUsR0FBRyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3RELEdBQUcsRUFBRSxVQUFVLENBQUMsa0JBQWtCO1lBQ2xDLElBQUksRUFBRSxVQUFVLENBQUMsSUFBSTtTQUNyQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXLENBQUMsUUFBYTtRQUN4QixPQUFPLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDbkMsR0FBRyxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQ3BCLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNoQixLQUFLLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDZCxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7U0FDOUQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVU7UUFDcEIsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztRQUNqRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsS0FBSyxVQUFVLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUMsQ0FBQztRQUNoSCxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNsRyxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQVU7UUFDdEIsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztRQUNqRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsS0FBSyxVQUFVLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUMsQ0FBQztRQUNoSCxJQUFJLEtBQUssS0FBSyxDQUFDLENBQUM7WUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELEtBQUs7UUFDSixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDOzhHQTFNVyx5QkFBeUI7a0dBQXpCLHlCQUF5Qix3RUMvQ3RDLDAwSEF1RUEsMkNEMUNFLFlBQVksOEJBQ1osV0FBVyxrU0FDWCxjQUFjLGlTQUNkLGVBQWUsZ09BQ2YsZ0JBQWdCLDhCQUNoQixtQkFBbUIsZ1ZBQ25CLGFBQWEsbUxBQ2IsYUFBYSx3TUFDYixjQUFjLHlMQUNkLGVBQWUsOE5BQ2YsaUJBQWlCLHVNQUNqQixpQkFBaUIsOEtBQ2pCLGlCQUFpQixxTUFDakIsa0JBQWtCLDZTQUNsQixtQkFBbUI7OzJGQUlSLHlCQUF5QjtrQkFyQnJDLFNBQVM7aUNBQ0csSUFBSSxXQUNQO3dCQUNSLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixtQkFBbUI7d0JBQ25CLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsaUJBQWlCO3dCQUNqQixpQkFBaUI7d0JBQ2pCLGlCQUFpQjt3QkFDakIsa0JBQWtCO3dCQUNsQixtQkFBbUI7cUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIGVmZmVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XHJcbmltcG9ydCB7IER5bmFtaWNEaWFsb2dDb25maWcsIER5bmFtaWNEaWFsb2dSZWYgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xyXG5pbXBvcnQgeyBUcmVlU2VsZWN0TW9kdWxlIH0gZnJvbSAncHJpbWVuZy90cmVlc2VsZWN0JztcclxuXHJcbmltcG9ydCB7IFRyYW5zbG9jb01vZHVsZSwgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcclxuaW1wb3J0IHsgU3ViamVjdCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdhcmlsL3VpL2J1dHRvbic7XHJcbmltcG9ydCB7IENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnYXJpbC91aS9jaGVja2JveCc7XHJcbmltcG9ydCB7IEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnYXJpbC91aS9maWVsZCc7XHJcbmltcG9ydCB7IEFSaUxGb3JtTW9kdWxlIH0gZnJvbSAnYXJpbC91aS9mb3JtJztcclxuaW1wb3J0IHsgTWFza0NvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvbWFzayc7XHJcbmltcG9ydCB7IFBhc3N3b3JkQ29tcG9uZW50IH0gZnJvbSAnYXJpbC91aS9wYXNzd29yZCc7XHJcbmltcG9ydCB7IFNlbGVjdEJveENvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvc2VsZWN0Qm94JztcclxuaW1wb3J0IHsgVGV4dENvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvdGV4dCc7XHJcbmltcG9ydCB7IFRleHRBcmVhQ29tcG9uZW50IH0gZnJvbSAnYXJpbC91aS90ZXh0QXJlYSc7XHJcbmltcG9ydCB7IFRyZWVTZWxlY3RDb21wb25lbnQgfSBmcm9tICdhcmlsL3VpL3RyZWVTZWxlY3QnO1xyXG5cclxuaW1wb3J0IHsgQ2xpZW50UmVzcG9uc2VEVE8sIEdldEFsbENsaWVudFJlcXVlc3REVE8gfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlL2ludGVyZmFjZXMvaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IFByb2ZpbGVTZXJ2aWNlLCBVcGRhdGVVc2VyUmVxdWVzdERUTywgVXNlclJlc3BvbnNlRFRPIH0gZnJvbSAnLi4vLi4vcHJvZmlsZS5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0aW1wb3J0czogW1xyXG5cdFx0Q29tbW9uTW9kdWxlLFxyXG5cdFx0Rm9ybXNNb2R1bGUsXHJcblx0XHRBUmlMRm9ybU1vZHVsZSxcclxuXHRcdFRyYW5zbG9jb01vZHVsZSxcclxuXHRcdFRyZWVTZWxlY3RNb2R1bGUsXHJcblx0XHRSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG5cdFx0VGV4dENvbXBvbmVudCxcclxuXHRcdE1hc2tDb21wb25lbnQsXHJcblx0XHRGaWVsZENvbXBvbmVudCxcclxuXHRcdEJ1dHRvbkNvbXBvbmVudCxcclxuXHRcdFRleHRBcmVhQ29tcG9uZW50LFxyXG5cdFx0Q2hlY2tib3hDb21wb25lbnQsXHJcblx0XHRQYXNzd29yZENvbXBvbmVudCxcclxuXHRcdFNlbGVjdEJveENvbXBvbmVudCxcclxuXHRcdFRyZWVTZWxlY3RDb21wb25lbnRcclxuXHRdLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9lZGl0LXByb2ZpbGUtbW9kYWwuY29tcG9uZW50Lmh0bWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFZGl0UHJvZmlsZU1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBkaWFsb2dSZWY6IER5bmFtaWNEaWFsb2dSZWYsXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgcHJvZmlsZVNlcnZpY2U6IFByb2ZpbGVTZXJ2aWNlLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBkaWFsb2dDb25maWc6IER5bmFtaWNEaWFsb2dDb25maWcsXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IHRyYW5zbG9jb1NlcnZpY2U6IFRyYW5zbG9jb1NlcnZpY2VcclxuXHQpIHtcclxuXHRcdHRoaXMudXNlclByb2ZpbGUgPSB0aGlzLmRpYWxvZ0NvbmZpZy5kYXRhPy51c2VyUHJvZmlsZTtcclxuXHJcblx0XHR0aGlzLmluaXRpYWxpemVFZmZlY3RzKCk7XHJcblx0XHR0aGlzLmluaXRpYWxpemVGb3JtKCk7XHJcblx0fVxyXG5cclxuXHRwcml2YXRlIGluaXRpYWxpemVFZmZlY3RzKCkge1xyXG5cdFx0dGhpcy5zdWJqZWN0cy5nZXRUcmVlLm5leHQoMCk7XHJcblx0XHR0aGlzLnN1YmplY3RzLmdldFVzZXJUeXBlLm5leHQoeyBmaXJzdDogMCwgbWF4OiAxMDAgfSk7XHJcblx0XHR0aGlzLnN1YmplY3RzLmdldENsaWVudExpc3QubmV4dCh7IGZpcnN0OiAwLCBtYXg6IDEwMCB9KTtcclxuXHJcblx0XHRpZiAodGhpcy5kaWFsb2dDb25maWc/LmRhdGE/Lml0ZW0/LmlkKSB7XHJcblx0XHRcdHRoaXMuc3ViamVjdHMuZ2V0VXNlckRldGFpbHMubmV4dCh7IGlkOiB0aGlzLmRpYWxvZ0NvbmZpZy5kYXRhLml0ZW0uaWQgfSk7XHJcblx0XHR9XHJcblxyXG5cdFx0ZWZmZWN0KCgpID0+IHtcclxuXHRcdFx0XHRjb25zdCBzZXJ2aWNlID0gdGhpcy51cGRhdGVVc2VyU2VydmljZSgpO1xyXG5cdFx0XHRcdGlmIChzZXJ2aWNlPy5yZXNwb25zZSkge1xyXG5cdFx0XHRcdFx0dGhpcy5tZXNzYWdlU2VydmljZS5hZGQoe1xyXG5cdFx0XHRcdFx0XHRzZXZlcml0eTogJ3N1Y2Nlc3MnLFxyXG5cdFx0XHRcdFx0XHRzdW1tYXJ5OiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdwcm9maWxlU2lkZWJhci51cGRhdGVTdWNjZXNzJyksXHJcblx0XHRcdFx0XHRcdGRldGFpbDogdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgncHJvZmlsZVNpZGViYXIudXBkYXRlU3VjY2Vzc0RldGFpbCcpLFxyXG5cdFx0XHRcdFx0XHRrZXk6ICd0b2FzdC1yb290J1xyXG5cdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0XHR0aGlzLmRpYWxvZ1JlZi5jbG9zZSh7IHN0YXR1czogJ3N1Y2Nlc3MnLCBkYXRhOiBzZXJ2aWNlLnJlc3BvbnNlIH0pO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fSxcclxuXHRcdFx0eyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9XHJcblx0XHQpO1xyXG5cclxuXHRcdGVmZmVjdCgoKSA9PiB7XHJcblx0XHRcdGlmICh0aGlzLmdldENsaWVudExpc3RTZXJ2aWNlKCk/LnJlc3BvbnNlKSB7XHJcblx0XHRcdFx0dGhpcy5wcmVwYXJlQ2xpZW50TGlzdERyb3Bkb3duKHRoaXMuZ2V0Q2xpZW50TGlzdFNlcnZpY2UoKT8ucmVzcG9uc2UgYXMgQ2xpZW50UmVzcG9uc2VEVE9bXSk7XHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cclxuXHRcdGVmZmVjdCgoKSA9PiB7XHJcblx0XHRcdGlmICh0aGlzLmdldFVzZXJUeXBlU2VydmljZSgpPy5yZXNwb25zZSkge1xyXG5cdFx0XHRcdHRoaXMudXNlclR5cGVEYXRhcyA9IHRoaXMuZ2V0VXNlclR5cGVTZXJ2aWNlKCk/LnJlc3BvbnNlO1xyXG5cdFx0XHRcdHRoaXMudXNlclR5cGVJdGVtcyA9IHRoaXMudXNlclR5cGVEYXRhcy5tYXAoKGl0ZW06IHsgbmFtZTogc3RyaW5nOyBpZDogc3RyaW5nIH0pID0+ICh7XHJcblx0XHRcdFx0XHR0ZXh0OiBpdGVtLm5hbWUsXHJcblx0XHRcdFx0XHRrZXk6IGl0ZW0uaWRcclxuXHRcdFx0XHR9KSk7XHJcblx0XHRcdFx0dGhpcy5pbml0aWFsaXplRm9ybSgpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHJcblx0XHRlZmZlY3QoKCkgPT4ge1xyXG5cdFx0XHRpZiAodGhpcy5nZXRVc2VyRGV0YWlsU2VydmljZSgpPy5yZXNwb25zZSkge1xyXG5cdFx0XHRcdHRoaXMudXBkYXRlVXNlckRhdGEgPSB0aGlzLmdldFVzZXJEZXRhaWxTZXJ2aWNlKCk/LnJlc3BvbnNlO1xyXG5cdFx0XHRcdHRoaXMuaW5pdGlhbGl6ZUZvcm0oKTtcclxuXHRcdFx0fVxyXG5cdFx0fSk7XHJcblxyXG5cdFx0ZWZmZWN0KCgpID0+IHtcclxuXHRcdFx0aWYgKHRoaXMuZ2V0QXV0aG9yaXR5VHJlZVNlcnZpY2UoKT8ucmVzcG9uc2UpIHtcclxuXHRcdFx0XHR0aGlzLnRyZWVEYXRhID0gdGhpcy5nZXRBdXRob3JpdHlUcmVlU2VydmljZSgpPy5yZXNwb25zZTtcclxuXHRcdFx0XHR0aGlzLnRyZWVJdGVtcyA9IHRoaXMubWFwVHJlZURhdGEodGhpcy50cmVlRGF0YSk7XHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBzdWJqZWN0cyA9IHtcclxuXHRcdGdldFRyZWU6IG5ldyBTdWJqZWN0PG51bWJlcj4oKSxcclxuXHRcdGdldFVzZXJUeXBlOiBuZXcgU3ViamVjdDxhbnk+KCksXHJcblx0XHRnZXRVc2VyRGV0YWlsczogbmV3IFN1YmplY3Q8eyBpZDogc3RyaW5nIH0+KCksXHJcblx0XHR1cGRhdGVVc2VyOiBuZXcgU3ViamVjdDxVcGRhdGVVc2VyUmVxdWVzdERUTz4oKSxcclxuXHRcdGdldENsaWVudExpc3Q6IG5ldyBTdWJqZWN0PEdldEFsbENsaWVudFJlcXVlc3REVE8+KClcclxuXHR9O1xyXG5cclxuXHR0cmVlRGF0YTogYW55O1xyXG5cdHRyZWVJdGVtczogYW55O1xyXG5cdHBhZ2VFZGl0ID0gZmFsc2U7XHJcblx0dXNlclR5cGVJdGVtczogYW55O1xyXG5cdHVzZXJUeXBlRGF0YXM6IGFueTtcclxuXHR1cGRhdGVVc2VyRGF0YTogYW55O1xyXG5cdGNsaWVudExpc3Q6IHsga2V5OiBzdHJpbmc7IHRleHQ6IHN0cmluZyB9W10gPSBbXTtcclxuXHRsZXZlbFBhaXJzOiBBcnJheTx7IHN0YXJ0TGV2ZWw6IHN0cmluZzsgZW5kTGV2ZWw6IHN0cmluZyB9PiA9IFtdO1xyXG5cclxuXHRwcm9maWxlRm9ybSE6IEZvcm1Hcm91cDtcclxuXHR1c2VyUHJvZmlsZTogVXNlclJlc3BvbnNlRFRPO1xyXG5cdHNlbGVjdGVkVXNlclR5cGVJZHM6IHN0cmluZ1tdID0gW107XHJcblxyXG5cdG5nT25Jbml0KCkge1xyXG5cdFx0aWYgKCF0aGlzLnVzZXJQcm9maWxlKSB7XHJcblx0XHRcdHRoaXMuZGlhbG9nUmVmLmNsb3NlKCdlcnJvcicpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0dXBkYXRlVXNlclNlcnZpY2UgPSB0b1NpZ25hbChcclxuXHRcdHRoaXMuc3ViamVjdHMudXBkYXRlVXNlci5waXBlKHN3aXRjaE1hcCgoZGF0YSkgPT4gdGhpcy5wcm9maWxlU2VydmljZS51cGRhdGVVc2VyKGRhdGEpKSlcclxuXHQpO1xyXG5cclxuXHRnZXRDbGllbnRMaXN0U2VydmljZSA9IHRvU2lnbmFsKFxyXG5cdFx0dGhpcy5zdWJqZWN0cy5nZXRDbGllbnRMaXN0LnBpcGUoc3dpdGNoTWFwKChkYXRhKSA9PiB0aGlzLnByb2ZpbGVTZXJ2aWNlLmdldEFsbENsaWVudHNMaXN0KGRhdGEpKSlcclxuXHQpO1xyXG5cclxuXHRnZXRVc2VyRGV0YWlsU2VydmljZSA9IHRvU2lnbmFsKFxyXG5cdFx0dGhpcy5zdWJqZWN0cy5nZXRVc2VyRGV0YWlscy5waXBlKHN3aXRjaE1hcCgoZGF0YSkgPT4gdGhpcy5wcm9maWxlU2VydmljZS5nZXRVc2VyKGRhdGEpKSlcclxuXHQpO1xyXG5cclxuXHRnZXRVc2VyVHlwZVNlcnZpY2UgPSB0b1NpZ25hbChcclxuXHRcdHRoaXMuc3ViamVjdHMuZ2V0VXNlclR5cGUucGlwZShzd2l0Y2hNYXAoKGRhdGEpID0+IHRoaXMucHJvZmlsZVNlcnZpY2UuZ2V0QWxsVXNlclR5cGUoZGF0YSkpKVxyXG5cdCk7XHJcblxyXG5cdGdldEF1dGhvcml0eVRyZWVTZXJ2aWNlID0gdG9TaWduYWwoXHJcblx0XHR0aGlzLnN1YmplY3RzLmdldFRyZWUucGlwZShzd2l0Y2hNYXAoKGRhdGEpID0+IHRoaXMucHJvZmlsZVNlcnZpY2UuZ2V0QXV0aG9yaXR5VHJlZShkYXRhKSkpXHJcblx0KTtcclxuXHJcblx0cHJpdmF0ZSBpbml0aWFsaXplRm9ybSgpOiB2b2lkIHtcclxuXHRcdHRoaXMudXBkYXRlVXNlckRhdGEgPSB0aGlzLmdldFVzZXJEZXRhaWxTZXJ2aWNlKCk/LnJlc3BvbnNlO1xyXG5cclxuXHRcdGNvbnN0IHVzZXJUeXBlc0Zyb21SZXNwb25zZTogc3RyaW5nW10gPSB0aGlzLnVzZXJQcm9maWxlPy51c2VyVHlwZXMgfHwgW107XHJcblx0XHRjb25zdCB1c2VyVHlwZURhdGFzID0gdGhpcy51c2VyVHlwZURhdGFzIHx8IFtdO1xyXG5cclxuXHRcdHRoaXMuc2VsZWN0ZWRVc2VyVHlwZUlkcyA9IHVzZXJUeXBlRGF0YXNcclxuXHRcdFx0LmZpbHRlcigodHlwZTogeyBuYW1lOiBzdHJpbmcgfSkgPT4gdXNlclR5cGVzRnJvbVJlc3BvbnNlLmluY2x1ZGVzKHR5cGUubmFtZSkpXHJcblx0XHRcdC5tYXAoKHR5cGU6IHsgaWQ6IGFueSB9KSA9PiB0eXBlLmlkKTtcclxuXHJcblx0XHR0aGlzLnVzZXJUeXBlSXRlbXMgPSB1c2VyVHlwZURhdGFzLm1hcCgodHlwZTogeyBuYW1lOiBhbnk7IGlkOiBhbnkgfSkgPT4gKHtcclxuXHRcdFx0bGFiZWw6IHR5cGUubmFtZSxcclxuXHRcdFx0dmFsdWU6IHR5cGUuaWRcclxuXHRcdH0pKTtcclxuXHJcblx0XHR0aGlzLnByb2ZpbGVGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcblx0XHRcdGlkOiBuZXcgRm9ybUNvbnRyb2wodGhpcy51c2VyUHJvZmlsZT8uaWQgfHwgbnVsbCksXHJcblx0XHRcdHN5c3RlbVVzZXI6IG5ldyBGb3JtQ29udHJvbCh7IHZhbHVlOiB0aGlzLnVzZXJQcm9maWxlPy5zeXN0ZW1Vc2VyID8/IHRydWUsIGRpc2FibGVkOiBmYWxzZSB9KSxcclxuXHRcdFx0Y2xpZW50T2ZTeXN0ZW1Vc2VyOiBuZXcgRm9ybUNvbnRyb2woeyB2YWx1ZTogdGhpcy51c2VyUHJvZmlsZT8uY2xpZW50T2ZTeXN0ZW1Vc2VyIHx8ICcnLCBkaXNhYmxlZDogZmFsc2UgfSksXHJcblx0XHRcdHVzZXJUeXBlSWQ6IG5ldyBGb3JtQ29udHJvbCh7IHZhbHVlOiB0aGlzLnNlbGVjdGVkVXNlclR5cGVJZHNbMF0sIGRpc2FibGVkOiBmYWxzZSB9KSxcclxuXHRcdFx0cmVnaW9uczogbmV3IEZvcm1Db250cm9sKHsgdmFsdWU6IHRoaXMudXNlclByb2ZpbGU/LnJlZ2lvbnMgfHwgJycsIGRpc2FibGVkOiBmYWxzZSB9KSxcclxuXHRcdFx0dXNlck5hbWU6IG5ldyBGb3JtQ29udHJvbCh7IHZhbHVlOiB0aGlzLnVzZXJQcm9maWxlPy51c2VyTmFtZSB8fCAnJywgZGlzYWJsZWQ6IHRydWUgfSwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKSxcclxuXHRcdFx0Zmlyc3ROYW1lOiBuZXcgRm9ybUNvbnRyb2wodGhpcy51c2VyUHJvZmlsZT8uZmlyc3ROYW1lIHx8ICcnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF0pLFxyXG5cdFx0XHRsYXN0TmFtZTogbmV3IEZvcm1Db250cm9sKHRoaXMudXNlclByb2ZpbGU/Lmxhc3ROYW1lIHx8ICcnKSxcclxuXHRcdFx0ZW1haWw6IG5ldyBGb3JtQ29udHJvbCh0aGlzLnVzZXJQcm9maWxlPy5lbWFpbCB8fCAnJywgW1ZhbGlkYXRvcnMuZW1haWwsIFZhbGlkYXRvcnMucmVxdWlyZWRdKSxcclxuXHRcdFx0cGhvbmU6IG5ldyBGb3JtQ29udHJvbChBcnJheS5pc0FycmF5KHRoaXMudXNlclByb2ZpbGU/LnBob25lKSA/IHRoaXMudXNlclByb2ZpbGUucGhvbmVbMF0gfHwgJycgOiB0aGlzLnVzZXJQcm9maWxlPy5waG9uZSB8fCAnJyksXHJcblx0XHRcdHRja246IG5ldyBGb3JtQ29udHJvbChBcnJheS5pc0FycmF5KHRoaXMudXNlclByb2ZpbGU/LnRja24pID8gdGhpcy51c2VyUHJvZmlsZS50Y2tuWzBdIHx8ICcnIDogJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXSksXHJcblx0XHRcdHBob3RvVXJsOiBuZXcgRm9ybUNvbnRyb2wodGhpcy51c2VyUHJvZmlsZT8ucGhvdG9VcmwgfHwgJycpLFxyXG5cdFx0XHRlbmFibGVkOiBuZXcgRm9ybUNvbnRyb2woeyB2YWx1ZTogdGhpcy51c2VyUHJvZmlsZT8uZW5hYmxlZCA/PyB0cnVlLCBkaXNhYmxlZDogZmFsc2UgfSksXHJcblx0XHRcdGVtYWlsVmVyaWZpZWQ6IG5ldyBGb3JtQ29udHJvbCh7IHZhbHVlOiB0aGlzLnVzZXJQcm9maWxlPy5lbWFpbFZlcmlmaWVkID8/IHRydWUsIGRpc2FibGVkOiBmYWxzZSB9KSxcclxuXHRcdFx0bm90ZXM6IG5ldyBGb3JtQ29udHJvbCh0aGlzLnVzZXJQcm9maWxlPy5ub3RlcyB8fCAnJyksXHJcblx0XHRcdHBhc3N3b3JkOiBuZXcgRm9ybUNvbnRyb2wobnVsbClcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0c3VibWl0KCk6IHZvaWQge1xyXG5cdFx0Y29uc3QgcmF3VmFsdWUgPSB0aGlzLnByb2ZpbGVGb3JtLmdldFJhd1ZhbHVlKCk7XHJcblx0XHRjb25zdCB1cGRhdGVSZXF1ZXN0OiBVcGRhdGVVc2VyUmVxdWVzdERUTyA9IHtcclxuXHRcdFx0Li4ucmF3VmFsdWUsXHJcblx0XHRcdGlkOiB0aGlzLnVzZXJQcm9maWxlLmlkLFxyXG5cdFx0XHRwaG9uZTogQXJyYXkuaXNBcnJheShyYXdWYWx1ZS5waG9uZSkgPyByYXdWYWx1ZS5waG9uZSA6IFtyYXdWYWx1ZS5waG9uZV0sXHJcblx0XHRcdHRja246IEFycmF5LmlzQXJyYXkocmF3VmFsdWUudGNrbikgPyByYXdWYWx1ZS50Y2tuIDogW3Jhd1ZhbHVlLnRja25dLFxyXG5cdFx0XHRyZWdpb25zOiB0aGlzLmxldmVsUGFpcnMsXHJcblx0XHRcdHBob3RvVXJsOiBBcnJheS5pc0FycmF5KHJhd1ZhbHVlLnBob3RvVXJsKSA/IHJhd1ZhbHVlLnBob3RvVXJsIDogW3Jhd1ZhbHVlLnBob3RvVXJsXSxcclxuXHRcdFx0bm90ZXM6IEFycmF5LmlzQXJyYXkocmF3VmFsdWUubm90ZXMpID8gcmF3VmFsdWUubm90ZXMgOiBbcmF3VmFsdWUubm90ZXNdXHJcblx0XHR9O1xyXG5cclxuXHRcdHRoaXMuc3ViamVjdHMudXBkYXRlVXNlci5uZXh0KHVwZGF0ZVJlcXVlc3QpO1xyXG5cdH1cclxuXHJcblx0Y2FuY2VsKCk6IHZvaWQge1xyXG5cdFx0dGhpcy5kaWFsb2dSZWYuY2xvc2UoJ2NhbmNlbCcpO1xyXG5cdH1cclxuXHJcblx0cHJlcGFyZUNsaWVudExpc3REcm9wZG93bihjbGllbnRMaXN0UGFyYW06IENsaWVudFJlc3BvbnNlRFRPW10pIHtcclxuXHRcdHRoaXMuY2xpZW50TGlzdCA9IGNsaWVudExpc3RQYXJhbS5tYXAoKGNsaWVudEl0ZW0pID0+ICh7XHJcblx0XHRcdGtleTogY2xpZW50SXRlbS5jbGllbnRSZWZlcmVuY2VLZXksXHJcblx0XHRcdHRleHQ6IGNsaWVudEl0ZW0ubmFtZVxyXG5cdFx0fSkpO1xyXG5cdH1cclxuXHJcblx0bWFwVHJlZURhdGEodHJlZURhdGE6IGFueSkge1xyXG5cdFx0cmV0dXJuIHRyZWVEYXRhLm1hcCgoaXRlbTogYW55KSA9PiAoe1xyXG5cdFx0XHRrZXk6IGl0ZW0uc3RhcnRMZXZlbCxcclxuXHRcdFx0bGFiZWw6IGl0ZW0ubmFtZSxcclxuXHRcdFx0dmFsdWU6IGl0ZW0uaWQsXHJcblx0XHRcdGNoaWxkcmVuOiBpdGVtLmNoaWxkcmVuID8gdGhpcy5tYXBUcmVlRGF0YShpdGVtLmNoaWxkcmVuKSA6IFtdXHJcblx0XHR9KSk7XHJcblx0fVxyXG5cclxuXHRub2RlU2VsZWN0KGV2ZW50OiBhbnkpIHtcclxuXHRcdGNvbnN0IHsgc3RhcnRMZXZlbCwgZW5kTGV2ZWwgfSA9IGV2ZW50Lm5vZGUuZGF0YTtcclxuXHRcdGNvbnN0IGluZGV4ID0gdGhpcy5sZXZlbFBhaXJzLmZpbmRJbmRleCgocGFpcikgPT4gcGFpci5zdGFydExldmVsID09PSBzdGFydExldmVsICYmIHBhaXIuZW5kTGV2ZWwgPT09IGVuZExldmVsKTtcclxuXHRcdGluZGV4ID09PSAtMSA/IHRoaXMubGV2ZWxQYWlycy5wdXNoKHsgc3RhcnRMZXZlbCwgZW5kTGV2ZWwgfSkgOiB0aGlzLmxldmVsUGFpcnMuc3BsaWNlKGluZGV4LCAxKTtcclxuXHR9XHJcblxyXG5cdG5vZGVVbnNlbGVjdChldmVudDogYW55KSB7XHJcblx0XHRjb25zdCB7IHN0YXJ0TGV2ZWwsIGVuZExldmVsIH0gPSBldmVudC5ub2RlLmRhdGE7XHJcblx0XHRjb25zdCBpbmRleCA9IHRoaXMubGV2ZWxQYWlycy5maW5kSW5kZXgoKHBhaXIpID0+IHBhaXIuc3RhcnRMZXZlbCA9PT0gc3RhcnRMZXZlbCAmJiBwYWlyLmVuZExldmVsID09PSBlbmRMZXZlbCk7XHJcblx0XHRpZiAoaW5kZXggIT09IC0xKSB0aGlzLmxldmVsUGFpcnMuc3BsaWNlKGluZGV4LCAxKTtcclxuXHR9XHJcblxyXG5cdGNsZWFyKCkge1xyXG5cdFx0dGhpcy5sZXZlbFBhaXJzID0gW107XHJcblx0fVxyXG59XHJcbiIsIjxkaXYgKnRyYW5zbG9jbz1cImxldCB0OyByZWFkOiAncHJvZmlsZVNpZGViYXInXCI+XHJcblx0PGFyaWwtZm9ybSBbZm9ybUdyb3VwXT1cInByb2ZpbGVGb3JtXCI+XHJcblx0XHQ8YXJpbC1maWVsZCBbbGFiZWxdPVwidCgndXNlclN0YXR1cycpXCIgW2NvbHNdPVwieyB4bDogNiwgbGc6IDYsIG1kOiA2LCBzbTogMTIgfVwiPlxyXG5cdFx0XHQ8YXJpbC1jaGVja2JveCBbbGFiZWxdPVwiJyAnXCIgZm9ybUNvbnRyb2xOYW1lPVwiZW5hYmxlZFwiIFtkaXNhYmxlZF09XCJ0cnVlXCI+PC9hcmlsLWNoZWNrYm94PlxyXG5cdFx0PC9hcmlsLWZpZWxkPlxyXG5cclxuXHRcdDxhcmlsLWZpZWxkIFtsYWJlbF09XCJ0KCdzeXN0ZW1Vc2VyJylcIiBbY29sc109XCJ7IHhsOiA2LCBsZzogNiwgbWQ6IDEyLCBzbTogMTIgfVwiPlxyXG5cdFx0XHQ8YXJpbC1jaGVja2JveCBbbGFiZWxdPVwiJyAnXCIgZm9ybUNvbnRyb2xOYW1lPVwic3lzdGVtVXNlclwiIFtkaXNhYmxlZF09XCJ0cnVlXCI+PC9hcmlsLWNoZWNrYm94PlxyXG5cdFx0PC9hcmlsLWZpZWxkPlxyXG5cclxuXHRcdDxhcmlsLWZpZWxkIFtsYWJlbF09XCJ0KCd1c2VyVHlwZScpXCIgW2NvbHNdPVwieyB4bDogNiwgbGc6IDYsIG1kOiA2LCBzbTogMTIgfVwiIFttYXJrQXNSZXF1aXJlZF09XCJ0cnVlXCI+XHJcblx0XHRcdDxhcmlsLXNlbGVjdC1ib3ggZm9ybUNvbnRyb2xOYW1lPVwidXNlclR5cGVJZFwiIFtpdGVtc109XCJ1c2VyVHlwZUl0ZW1zXCIgaXRlbUtleT1cInZhbHVlXCIgaXRlbVRleHQ9XCJsYWJlbFwiIFtwbGFjZWhvbGRlcl09XCJ0KCdzZWxlY3QnKVwiPjwvYXJpbC1zZWxlY3QtYm94PlxyXG5cdFx0PC9hcmlsLWZpZWxkPlxyXG5cclxuXHRcdDxhcmlsLWZpZWxkIFtsYWJlbF09XCJ0KCdzeXN0ZW1Vc2VyQXBwJylcIiBbY29sc109XCJ7IHhsOiA2LCBsZzogNiwgbWQ6IDEyLCBzbTogMTIgfVwiPlxyXG5cdFx0XHQ8YXJpbC1zZWxlY3QtYm94IGZvcm1Db250cm9sTmFtZT1cImNsaWVudE9mU3lzdGVtVXNlclwiIFtpdGVtc109XCJjbGllbnRMaXN0XCIgaXRlbVRleHQ9XCJ0ZXh0XCIgaXRlbUtleT1cImtleVwiIFtwbGFjZWhvbGRlcl09XCJ0KCdzZWxlY3QnKVwiPjwvYXJpbC1zZWxlY3QtYm94PlxyXG5cdFx0PC9hcmlsLWZpZWxkPlxyXG5cclxuXHRcdDxhcmlsLWZpZWxkIFtsYWJlbF09XCJ0KCd1c2VybmFtZScpXCIgW2NvbHNdPVwieyB4bDogNiwgbGc6IDYsIG1kOiA2LCBzbTogMTIgfVwiIFttYXJrQXNSZXF1aXJlZF09XCJ0cnVlXCI+XHJcblx0XHRcdDxhcmlsLXRleHQgZm9ybUNvbnRyb2xOYW1lPVwidXNlck5hbWVcIiBbZGlzYWJsZWRdPVwidHJ1ZVwiPjwvYXJpbC10ZXh0PlxyXG5cdFx0PC9hcmlsLWZpZWxkPlxyXG5cclxuXHRcdDxhcmlsLWZpZWxkIFtsYWJlbF09XCJ0KCd1c2VyUGFzc3dvcmQnKVwiIFtjb2xzXT1cInsgeGw6IDYsIGxnOiA2LCBtZDogNiwgc206IDEyIH1cIiBbbWFya0FzUmVxdWlyZWRdPVwidHJ1ZVwiPlxyXG5cdFx0XHQ8YXJpbC1wYXNzd29yZCBmb3JtQ29udHJvbE5hbWU9XCJwYXNzd29yZFwiIFtwbGFjZWhvbGRlcl09XCInJiM4NzI4OyYjODcyODsmIzg3Mjg7JiM4NzI4OyYjODcyODsmIzg3Mjg7JiM4NzI4OyYjODcyODsmIzg3Mjg7JiM4NzI4OydcIj48L2FyaWwtcGFzc3dvcmQ+XHJcblx0XHQ8L2FyaWwtZmllbGQ+XHJcblxyXG5cdFx0PGFyaWwtZmllbGQgW2xhYmVsXT1cInQoJ2ZpcnN0TmFtZScpXCIgW2NvbHNdPVwieyB4bDogNiwgbGc6IDYsIG1kOiA2LCBzbTogMTIgfVwiIFttYXJrQXNSZXF1aXJlZF09XCJ0cnVlXCI+XHJcblx0XHRcdDxhcmlsLXRleHQgZm9ybUNvbnRyb2xOYW1lPVwiZmlyc3ROYW1lXCI+PC9hcmlsLXRleHQ+XHJcblx0XHQ8L2FyaWwtZmllbGQ+XHJcblxyXG5cdFx0PGFyaWwtZmllbGQgW2xhYmVsXT1cInQoJ2xhc3ROYW1lJylcIiBbY29sc109XCJ7IHhsOiA2LCBsZzogNiwgbWQ6IDYsIHNtOiAxMiB9XCI+XHJcblx0XHRcdDxhcmlsLXRleHQgZm9ybUNvbnRyb2xOYW1lPVwibGFzdE5hbWVcIj48L2FyaWwtdGV4dD5cclxuXHRcdDwvYXJpbC1maWVsZD5cclxuXHJcblx0XHQ8YXJpbC1maWVsZCBbbGFiZWxdPVwidCgnZW1haWwnKVwiIFtjb2xzXT1cInsgeGw6IDYsIGxnOiA2LCBtZDogNiwgc206IDEyIH1cIiBbbWFya0FzUmVxdWlyZWRdPVwidHJ1ZVwiPlxyXG5cdFx0XHQ8YXJpbC10ZXh0IGZvcm1Db250cm9sTmFtZT1cImVtYWlsXCI+PC9hcmlsLXRleHQ+XHJcblx0XHQ8L2FyaWwtZmllbGQ+XHJcblxyXG5cdFx0PGFyaWwtZmllbGQgW2xhYmVsXT1cInQoJ3Bob25lJylcIiBbY29sc109XCJ7IHhsOiA2LCBsZzogNiwgbWQ6IDYsIHNtOiAxMiB9XCI+XHJcblx0XHRcdDxhcmlsLW1hc2sgbWFzaz1cIig5OTkpIDk5OSA5OSA5OVwiIFtwbGFjZWhvbGRlcl09XCJ0KCdwaG9uZUV4YW1wbGUnKVwiIGZvcm1Db250cm9sTmFtZT1cInBob25lXCI+PC9hcmlsLW1hc2s+XHJcblx0XHQ8L2FyaWwtZmllbGQ+XHJcblxyXG5cdFx0PGFyaWwtZmllbGQgW2xhYmVsXT1cInQoJ3RjTnVtYmVyJylcIiBbY29sc109XCJ7IHhsOiA2LCBsZzogNiwgbWQ6IDYsIHNtOiAxMiB9XCIgW21hcmtBc1JlcXVpcmVkXT1cInRydWVcIj5cclxuXHRcdFx0PGFyaWwtbWFzayBtYXNrPVwiOTk5OTk5OTk5OTlcIiBmb3JtQ29udHJvbE5hbWU9XCJ0Y2tuXCI+PC9hcmlsLW1hc2s+XHJcblx0XHQ8L2FyaWwtZmllbGQ+XHJcblxyXG5cdFx0PGFyaWwtZmllbGQgW2xhYmVsXT1cInQoJ3Jlc3BvbnNpYmxlUmVnaW9ucycpXCIgW2NvbHNdPVwieyB4bDogNiwgbGc6IDYsIG1kOiA2LCBzbTogMTIgfVwiPlxyXG5cdFx0XHQ8YXJpbC10cmVlU2VsZWN0XHJcblx0XHRcdFx0W29wdGlvbnNdPVwidHJlZUl0ZW1zXCJcclxuXHRcdFx0XHRmb3JtQ29udHJvbE5hbWU9XCJyZWdpb25zXCJcclxuXHRcdFx0XHRbcGxhY2Vob2xkZXJdPVwidCgnc2VsZWN0JylcIlxyXG5cdFx0XHRcdChub2RlU2VsZWN0KT1cIm5vZGVTZWxlY3QoJGV2ZW50KVwiXHJcblx0XHRcdFx0KG5vZGVVbnNlbGVjdCk9XCJub2RlVW5zZWxlY3QoJGV2ZW50KVwiXHJcblx0XHRcdFx0KGNsZWFyZWQpPVwiY2xlYXIoKVwiPlxyXG5cdFx0XHQ8L2FyaWwtdHJlZVNlbGVjdD5cclxuXHRcdDwvYXJpbC1maWVsZD5cclxuXHJcblx0XHQ8YXJpbC1maWVsZCBbbGFiZWxdPVwidCgnbm90ZXMnKVwiIFtjb2xzXT1cInsgeGw6IDEyLCBsZzogMTIsIG1kOiAxMiwgc206IDEyIH1cIj5cclxuXHRcdFx0PGFyaWwtdGV4dC1hcmVhIFtyb3dzXT1cIjNcIiBbY29sc109XCI0MFwiIGZvcm1Db250cm9sTmFtZT1cIm5vdGVzXCI+PC9hcmlsLXRleHQtYXJlYT5cclxuXHRcdDwvYXJpbC1maWVsZD5cclxuXHJcblx0XHQ8YXJpbC1maWVsZCBbbGFiZWxdPVwidCgncGhvdG9VcmwnKVwiIFtjb2xzXT1cInsgeGw6IDYsIGxnOiA2LCBtZDogNiwgc206IDEyIH1cIj5cclxuXHRcdFx0PGFyaWwtdGV4dCBmb3JtQ29udHJvbE5hbWU9XCJwaG90b1VybFwiPjwvYXJpbC10ZXh0PlxyXG5cdFx0PC9hcmlsLWZpZWxkPlxyXG5cclxuXHRcdDxkaXYgY2xhc3M9XCJjb2wtMTIgZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kIG10LTMgZ2FwLTFcIj5cclxuXHRcdFx0PGFyaWwtYnV0dG9uIGNvbG9yPVwiZGFuZ2VyXCIgW2xhYmVsXT1cInQoJ2NhbmNlbCcpXCIgW291dGxpbmVkXT1cInRydWVcIiBpY29uPVwiVElNRVNcIiAoY2xpY2tFdmVudCk9XCJjYW5jZWwoKVwiPjwvYXJpbC1idXR0b24+XHJcblx0XHRcdDxhcmlsLWZvcm0tc3VibWl0IFtsYWJlbF09XCJ0KCdzYXZlJylcIiBjb2xvcj1cInN1Y2Nlc3NcIiBpY29uPVwiQ0hFQ0tcIiBbZm9ybUdyb3VwXT1cInByb2ZpbGVGb3JtXCIgKHZhbGlkRXZlbnQpPVwic3VibWl0KClcIj48L2FyaWwtZm9ybS1zdWJtaXQ+XHJcblx0XHQ8L2Rpdj5cclxuXHQ8L2FyaWwtZm9ybT5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -1,10 +1,12 @@
1
1
  export * from './app/layout/app.layout.component';
2
2
  export * from './app/layout/mfe.layout.component';
3
3
  export * from './service/app.menu.service';
4
- export * from './service/selection-group.service';
4
+ // SelectionGroupService aril/selection entry point'ine taşındı (theme/layout → selectBox circular'ını
5
+ // kırmak için). Mevcut tüketiciler aril/theme/layout'tan import etmeye devam etsin diye re-export edilir.
6
+ export { SelectionGroupService } from 'aril/selection';
5
7
  export * from './service/breadcrumb.service';
6
8
  export * from './service/app.layout.service';
7
9
  export * from './app/favorite-pages/favorite-pages.service';
8
10
  export * from './service/interfaces/enum';
9
11
  export * from './service/interfaces/interfaces';
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXBwL2xheW91dC9hcHAubGF5b3V0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYXBwL2xheW91dC9tZmUubGF5b3V0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS9hcHAubWVudS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlL3NlbGVjdGlvbi1ncm91cC5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlL2JyZWFkY3J1bWIuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS9hcHAubGF5b3V0LnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2FwcC9mYXZvcml0ZS1wYWdlcy9mYXZvcml0ZS1wYWdlcy5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlL2ludGVyZmFjZXMvZW51bSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS9pbnRlcmZhY2VzL2ludGVyZmFjZXMnO1xyXG4iXX0=
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3RoZW1lL2xheW91dC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxzR0FBc0c7QUFDdEcsMEdBQTBHO0FBQzFHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXBwL2xheW91dC9hcHAubGF5b3V0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYXBwL2xheW91dC9tZmUubGF5b3V0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS9hcHAubWVudS5zZXJ2aWNlJztcclxuLy8gU2VsZWN0aW9uR3JvdXBTZXJ2aWNlIGFyaWwvc2VsZWN0aW9uIGVudHJ5IHBvaW50J2luZSB0YcWfxLFuZMSxICh0aGVtZS9sYXlvdXQg4oaSIHNlbGVjdEJveCBjaXJjdWxhcifEsW7EsVxyXG4vLyBrxLFybWFrIGnDp2luKS4gTWV2Y3V0IHTDvGtldGljaWxlciBhcmlsL3RoZW1lL2xheW91dCd0YW4gaW1wb3J0IGV0bWV5ZSBkZXZhbSBldHNpbiBkaXllIHJlLWV4cG9ydCBlZGlsaXIuXHJcbmV4cG9ydCB7IFNlbGVjdGlvbkdyb3VwU2VydmljZSB9IGZyb20gJ2FyaWwvc2VsZWN0aW9uJztcclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlL2JyZWFkY3J1bWIuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS9hcHAubGF5b3V0LnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2FwcC9mYXZvcml0ZS1wYWdlcy9mYXZvcml0ZS1wYWdlcy5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlL2ludGVyZmFjZXMvZW51bSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZS9pbnRlcmZhY2VzL2ludGVyZmFjZXMnO1xyXG4iXX0=
@@ -1,3 +1,2 @@
1
1
  export * from './src/button.component';
2
- export * from './src/split-button.component';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpL2J1dHRvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NyYy9idXR0b24uY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9zcmMvc3BsaXQtYnV0dG9uLmNvbXBvbmVudCc7XHJcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpL2J1dHRvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zcmMvYnV0dG9uLmNvbXBvbmVudCc7XHJcbiJdfQ==