@coolon/angular-ui-powerups 16.1.0-aplpha.9 → 16.1.0-aplpha.91

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 (145) hide show
  1. package/assets/activities/input-activities.scss +10 -2
  2. package/assets/form.scss +74 -27
  3. package/assets/table.scss +13 -24
  4. package/assets/tabs.scss +2 -6
  5. package/esm2022/lib/animations/slide-animations.mjs +6 -1
  6. package/esm2022/lib/components/cards/card-container/card-container.component.mjs +4 -4
  7. package/esm2022/lib/components/commands/command/command.component.mjs +24 -10
  8. package/esm2022/lib/components/commands/command-face/command-face.component.mjs +11 -3
  9. package/esm2022/lib/components/commands/command-face.mjs +11 -11
  10. package/esm2022/lib/components/commands/group/popup-menu/abstract-popup-menu.component.mjs +11 -11
  11. package/esm2022/lib/components/commands/group/tool-bar/tool-bar.component.mjs +6 -4
  12. package/esm2022/lib/components/components.module.mjs +22 -8
  13. package/esm2022/lib/components/disposable-component.mjs +19 -37
  14. package/esm2022/lib/components/exports.mjs +6 -2
  15. package/esm2022/lib/components/forms/abstract-input.component.mjs +55 -12
  16. package/esm2022/lib/components/forms/autocomplete-input/autocomplete-input.component.mjs +2 -2
  17. package/esm2022/lib/components/forms/checkbox-input/checkbox-input.component.mjs +3 -3
  18. package/esm2022/lib/components/forms/form-field.mjs +2 -0
  19. package/esm2022/lib/components/forms/multiple-select-input/multiple-select-input.component.mjs +2 -2
  20. package/esm2022/lib/components/forms/number-input/number-input.component.mjs +49 -10
  21. package/esm2022/lib/components/forms/password-input/password-input.component.mjs +40 -3
  22. package/esm2022/lib/components/forms/search-input/search-input.component.mjs +33 -0
  23. package/esm2022/lib/components/forms/select-input/select-input.component.mjs +11 -10
  24. package/esm2022/lib/components/forms/string-input/string-input.component.mjs +21 -9
  25. package/esm2022/lib/components/icon/icon.component.mjs +7 -4
  26. package/esm2022/lib/components/loadable-component.mjs +49 -0
  27. package/esm2022/lib/components/resize-aware.component.mjs +61 -24
  28. package/esm2022/lib/components/switch-case/switch-case.component.mjs +5 -7
  29. package/esm2022/lib/components/tables/abstract-table-model.mjs +42 -25
  30. package/esm2022/lib/components/tables/abstract-table.component.mjs +19 -5
  31. package/esm2022/lib/components/tables/column/column-manager.mjs +81 -0
  32. package/esm2022/lib/components/tables/column/column-model.mjs +13 -3
  33. package/esm2022/lib/components/tables/column/column-order-manager.mjs +19 -0
  34. package/esm2022/lib/components/tables/column/custom-template-column-model.mjs +3 -3
  35. package/esm2022/lib/components/tables/column/custom-value-column-model.mjs +3 -3
  36. package/esm2022/lib/components/tables/column/editor-controls-column-model.mjs +3 -3
  37. package/esm2022/lib/components/tables/column/list-propery-column-model.mjs +3 -3
  38. package/esm2022/lib/components/tables/column/property-column-model.mjs +3 -3
  39. package/esm2022/lib/components/tables/column/selection-column-model.mjs +3 -3
  40. package/esm2022/lib/components/tables/editor/edit-session.mjs +4 -2
  41. package/esm2022/lib/components/tables/filter/table-filter-model.mjs +4 -2
  42. package/esm2022/lib/components/tables/filter/text-search-predicate.mjs +16 -2
  43. package/esm2022/lib/components/tables/renderer/default-cell-renderer/default-cell-renderer.component.mjs +3 -3
  44. package/esm2022/lib/components/tables/renderer/table-body/table-body.component.mjs +132 -41
  45. package/esm2022/lib/components/tables/renderer/table-more-menu/table-more-menu.component.mjs +7 -2
  46. package/esm2022/lib/components/tables/table/table.component.mjs +19 -68
  47. package/esm2022/lib/components/tables/tree-table/decorated-tree-node.mjs +5 -4
  48. package/esm2022/lib/components/tables/tree-table/tree-label-column-model.mjs +3 -3
  49. package/esm2022/lib/components/tables/tree-table/tree-table-component.mjs +7 -4
  50. package/esm2022/lib/components/tables/tree-table/tree-table-model.mjs +3 -3
  51. package/esm2022/lib/components/text/markdown/markdown.component.mjs +2 -2
  52. package/esm2022/lib/directives/directives.module.mjs +1 -1
  53. package/esm2022/lib/directives/exports.mjs +2 -1
  54. package/esm2022/lib/directives/highlight.pipe.mjs +2 -2
  55. package/esm2022/lib/directives/resize-observer.directive.mjs +40 -0
  56. package/esm2022/lib/interaction/activity.mjs +3 -4
  57. package/esm2022/lib/interaction/alert.mjs +2 -2
  58. package/esm2022/lib/interaction/components/abstract-confirm-dialog.component.mjs +8 -4
  59. package/esm2022/lib/interaction/components/activity-actions/activity-actions.component.mjs +7 -9
  60. package/esm2022/lib/interaction/components/activity-container/activity-container.component.mjs +28 -11
  61. package/esm2022/lib/interaction/components/activity-title/activity-title.component.mjs +4 -4
  62. package/esm2022/lib/interaction/components/editors/edit-context.mjs +1 -1
  63. package/esm2022/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.mjs +2 -2
  64. package/esm2022/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.mjs +3 -3
  65. package/esm2022/lib/interaction/components/input-activities/input-activity.mjs +2 -2
  66. package/esm2022/lib/interaction/components/input-activities/select-input-activity.mjs +3 -1
  67. package/esm2022/lib/interaction/components/input-activities/string-input-activity.mjs +8 -4
  68. package/esm2022/lib/interaction/components/slide-down-interaction-context/slide-down-interaction-context.component.mjs +129 -0
  69. package/esm2022/lib/interaction/directives/interaction-context-trigger-for.directive.mjs +2 -2
  70. package/esm2022/lib/interaction/exports.mjs +2 -1
  71. package/esm2022/lib/interaction/interaction.module.mjs +7 -9
  72. package/esm2022/lib/place/components/list-place-nav/list-place-nav.component.mjs +3 -4
  73. package/esm2022/lib/place/components/place-outlet/place-outlet.component.mjs +7 -9
  74. package/esm2022/lib/place/components/side-place-navigation/side-place-navigation.component.mjs +2 -2
  75. package/esm2022/lib/place/guards/consolidated-param-map.mjs +4 -4
  76. package/esm2022/lib/place/navigation/place-component-deactivation-handler.mjs +2 -2
  77. package/esm2022/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.mjs +3 -6
  78. package/esm2022/lib/place/place-component.mjs +7 -7
  79. package/esm2022/lib/place/place-definition.mjs +3 -3
  80. package/esm2022/lib/place/place-history.mjs +2 -2
  81. package/esm2022/lib/place/place.decorator.mjs +2 -2
  82. package/esm2022/lib/place/place.module.mjs +1 -5
  83. package/esm2022/lib/place/route/formatter.mjs +2 -2
  84. package/esm2022/lib/place/route/parameter-decorators.mjs +54 -50
  85. package/esm2022/lib/place/route/parameter-definition.mjs +2 -2
  86. package/esm2022/lib/place/url-snapshot.mjs +3 -3
  87. package/esm2022/lib/place/visit-segment.mjs +2 -2
  88. package/esm2022/lib/place/visit.mjs +2 -2
  89. package/fesm2022/coolon-angular-ui-powerups.mjs +1075 -485
  90. package/fesm2022/coolon-angular-ui-powerups.mjs.map +1 -1
  91. package/lib/animations/slide-animations.d.ts +1 -0
  92. package/lib/components/cards/card-container/card-container.component.d.ts +1 -1
  93. package/lib/components/commands/command/command.component.d.ts +2 -1
  94. package/lib/components/commands/command-face/command-face.component.d.ts +2 -0
  95. package/lib/components/commands/command-face.d.ts +5 -7
  96. package/lib/components/commands/group/popup-menu/abstract-popup-menu.component.d.ts +2 -2
  97. package/lib/components/commands/group/tool-bar/tool-bar.component.d.ts +1 -1
  98. package/lib/components/components.module.d.ts +55 -53
  99. package/lib/components/disposable-component.d.ts +11 -8
  100. package/lib/components/exports.d.ts +5 -1
  101. package/lib/components/forms/abstract-input.component.d.ts +13 -5
  102. package/lib/components/forms/form-field.d.ts +5 -0
  103. package/lib/components/forms/number-input/number-input.component.d.ts +8 -4
  104. package/lib/components/forms/password-input/password-input.component.d.ts +7 -1
  105. package/lib/components/forms/search-input/search-input.component.d.ts +10 -0
  106. package/lib/components/forms/select-input/select-input.component.d.ts +4 -3
  107. package/lib/components/forms/string-input/string-input.component.d.ts +3 -1
  108. package/lib/components/loadable-component.d.ts +17 -0
  109. package/lib/components/resize-aware.component.d.ts +24 -5
  110. package/lib/components/switch-case/switch-case.component.d.ts +2 -3
  111. package/lib/components/tables/abstract-table-model.d.ts +10 -5
  112. package/lib/components/tables/abstract-table.component.d.ts +3 -2
  113. package/lib/components/tables/column/column-manager.d.ts +19 -0
  114. package/lib/components/tables/column/column-model.d.ts +5 -1
  115. package/lib/components/tables/column/column-order-manager.d.ts +20 -0
  116. package/lib/components/tables/column/custom-template-column-model.d.ts +2 -1
  117. package/lib/components/tables/column/custom-value-column-model.d.ts +2 -1
  118. package/lib/components/tables/column/editor-controls-column-model.d.ts +2 -1
  119. package/lib/components/tables/column/list-propery-column-model.d.ts +2 -1
  120. package/lib/components/tables/column/property-column-model.d.ts +2 -1
  121. package/lib/components/tables/column/selection-column-model.d.ts +2 -1
  122. package/lib/components/tables/filter/text-search-predicate.d.ts +9 -0
  123. package/lib/components/tables/renderer/table-body/table-body.component.d.ts +35 -16
  124. package/lib/components/tables/renderer/table-more-menu/table-more-menu.component.d.ts +2 -1
  125. package/lib/components/tables/table/table.component.d.ts +5 -10
  126. package/lib/components/tables/tree-table/tree-label-column-model.d.ts +2 -1
  127. package/lib/components/tables/tree-table/tree-table-component.d.ts +3 -0
  128. package/lib/directives/exports.d.ts +1 -0
  129. package/lib/directives/resize-observer.directive.d.ts +16 -0
  130. package/lib/interaction/activity.d.ts +2 -2
  131. package/lib/interaction/components/abstract-confirm-dialog.component.d.ts +1 -0
  132. package/lib/interaction/components/activity-actions/activity-actions.component.d.ts +1 -3
  133. package/lib/interaction/components/activity-container/activity-container.component.d.ts +7 -3
  134. package/lib/interaction/components/activity-title/activity-title.component.d.ts +1 -1
  135. package/lib/interaction/components/editors/edit-context.d.ts +1 -1
  136. package/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.d.ts +1 -1
  137. package/lib/interaction/components/slide-down-interaction-context/slide-down-interaction-context.component.d.ts +53 -0
  138. package/lib/interaction/exports.d.ts +1 -0
  139. package/lib/interaction/interaction.module.d.ts +28 -28
  140. package/lib/place/components/place-outlet/place-outlet.component.d.ts +3 -4
  141. package/lib/place/place-component.d.ts +4 -4
  142. package/lib/place/place.module.d.ts +4 -5
  143. package/package.json +7 -5
  144. package/esm2022/lib/components/tables/column/column-list-model.mjs +0 -44
  145. package/lib/components/tables/column/column-list-model.d.ts +0 -13
@@ -2,7 +2,6 @@ import { A11yModule } from '@angular/cdk/a11y';
2
2
  import { PortalModule } from '@angular/cdk/portal';
3
3
  import { CommonModule } from '@angular/common';
4
4
  import { NgModule } from '@angular/core';
5
- import { FlexModule, GridModule } from '@angular/flex-layout';
6
5
  import { FormsModule } from '@angular/forms';
7
6
  import { MatButtonModule } from '@angular/material/button';
8
7
  import { MatDialogModule } from '@angular/material/dialog';
@@ -37,6 +36,7 @@ import { InputActivity } from './components/input-activities/input-activity';
37
36
  import { SelectInputActivity } from './components/input-activities/select-input-activity';
38
37
  import { StringInputActivity } from './components/input-activities/string-input-activity';
39
38
  import { PopupInteractionContextComponent } from './components/popup-interaction-context/popup-interaction-context.component';
39
+ import { SlideDownInteractionContextComponent } from "./components/slide-down-interaction-context/slide-down-interaction-context.component";
40
40
  import { InteractionContextTriggerForDirective } from './directives/interaction-context-trigger-for.directive';
41
41
  import { InteractionService } from './services/interaction.service';
42
42
  import * as i0 from "@angular/core";
@@ -49,6 +49,7 @@ export class InteractionModule {
49
49
  AlertDialogComponent,
50
50
  ActivityOutletComponent,
51
51
  InPlaceInteractionContextComponent,
52
+ SlideDownInteractionContextComponent,
52
53
  AddItemInteractionContextComponent,
53
54
  ActivityActionsComponent,
54
55
  PopupInteractionContextComponent,
@@ -75,8 +76,6 @@ export class InteractionModule {
75
76
  RouterModule,
76
77
  MatIconModule,
77
78
  DirectivesModule,
78
- FlexModule,
79
- GridModule,
80
79
  ComponentsModule,
81
80
  FormsModule,
82
81
  MatInputModule,
@@ -96,7 +95,8 @@ export class InteractionModule {
96
95
  InlineActivityTriggerComponent,
97
96
  ModalActivityTriggerComponent,
98
97
  AddCardActivityComponent,
99
- InlineStringEditorComponent] });
98
+ InlineStringEditorComponent,
99
+ SlideDownInteractionContextComponent] });
100
100
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: InteractionModule, providers: [
101
101
  InteractionService
102
102
  // {
@@ -110,8 +110,6 @@ export class InteractionModule {
110
110
  RouterModule,
111
111
  MatIconModule,
112
112
  DirectivesModule,
113
- FlexModule,
114
- GridModule,
115
113
  ComponentsModule,
116
114
  FormsModule,
117
115
  MatInputModule,
@@ -130,8 +128,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
130
128
  RouterModule,
131
129
  MatIconModule,
132
130
  DirectivesModule,
133
- FlexModule,
134
- GridModule,
135
131
  ComponentsModule,
136
132
  FormsModule,
137
133
  MatInputModule,
@@ -146,6 +142,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
146
142
  AlertDialogComponent,
147
143
  ActivityOutletComponent,
148
144
  InPlaceInteractionContextComponent,
145
+ SlideDownInteractionContextComponent,
149
146
  AddItemInteractionContextComponent,
150
147
  ActivityActionsComponent,
151
148
  PopupInteractionContextComponent,
@@ -183,6 +180,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
183
180
  ModalActivityTriggerComponent,
184
181
  AddCardActivityComponent,
185
182
  InlineStringEditorComponent,
183
+ SlideDownInteractionContextComponent,
186
184
  ],
187
185
  providers: [
188
186
  InteractionService
@@ -192,4 +190,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
192
190
  ]
193
191
  }]
194
192
  }] });
195
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3Rpb24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvaW50ZXJhY3Rpb24vaW50ZXJhY3Rpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUM1RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDdkQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDakUsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUNwQyxPQUFPLEVBQUMsOEJB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cUJBQ2pDO29CQUNELE9BQU8sRUFBRTt3QkFDTCwwQkFBMEI7d0JBQzFCLHVCQUF1Qjt3QkFDdkIsc0JBQXNCO3dCQUN0QixrQ0FBa0M7d0JBQ2xDLGtDQUFrQzt3QkFDbEMsd0JBQXdCO3dCQUN4QixnQ0FBZ0M7d0JBQ2hDLHFDQUFxQzt3QkFDckMsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLHFCQUFxQjt3QkFDckIsNkJBQTZCO3dCQUM3Qiw4QkFBOEI7d0JBQzlCLDZCQUE2Qjt3QkFDN0Isd0JBQXdCO3dCQUN4QiwyQkFBMkI7cUJBQzlCO29CQUNELFNBQVMsRUFBRTt3QkFDUCxrQkFBa0I7d0JBQ2xCLElBQUk7d0JBQ0osb0VBQW9FO3dCQUNwRSxJQUFJO3FCQUNQO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBMTF5TW9kdWxlfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQge1BvcnRhbE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtGbGV4TW9kdWxlLCBHcmlkTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mbGV4LWxheW91dCc7XG5pbXBvcnQge0Zvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge01hdEJ1dHRvbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7TWF0RGlhbG9nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHtNYXRGb3JtRmllbGRNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHtNYXRJY29uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7TWF0SW5wdXRNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7TWF0VGFic01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFicyc7XG5pbXBvcnQge1JvdXRlck1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7Q29tcG9uZW50c01vZHVsZX0gZnJvbSAnLi4vY29tcG9uZW50cy9leHBvcnRzJztcbmltcG9ydCB7RGlyZWN0aXZlc01vZHVsZX0gZnJvbSAnLi4vZGlyZWN0aXZlcy9kaXJlY3RpdmVzLm1vZHVsZSc7XG5pbXBvcnQge0FjdGl2aXR5fSBmcm9tICcuL2FjdGl2aXR5JztcbmltcG9ydCB7QWJzdHJhY3RDb25maXJtRGlhbG9nQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvYWJzdHJhY3QtY29uZmlybS1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7QWJzdHJhY3REaWFsb2dDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9hYnN0cmFjdC1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7QWN0aXZpdHlBY3Rpb25zQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvYWN0aXZpdHktYWN0aW9ucy9hY3Rpdml0eS1hY3Rpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQge0FjdGl2aXR5Qm9keUNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2FjdGl2aXR5LWJvZHkvYWN0aXZpdHktYm9keS5jb21wb25lbnQnO1xuaW1wb3J0IHtBY3Rpdml0eUNvbnRhaW5lckNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2FjdGl2aXR5LWNvbnRhaW5lci9hY3Rpdml0eS1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7QWN0aXZpdHlPdXRsZXRDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9hY3Rpdml0eS1jb250YWluZXIvYWN0aXZpdHktb3V0bGV0L2FjdGl2aXR5LW91dGxldC5jb21wb25lbnQnO1xuaW1wb3J0IHtBY3Rpdml0eVRpdGxlQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvYWN0aXZpdHktdGl0bGUvYWN0aXZpdHktdGl0bGUuY29tcG9uZW50JztcbmltcG9ydCB7QWJzdHJhY3RBY3Rpdml0eVRyaWdnZXJDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9hY3Rpdml0eS10cmlnZ2Vycy9hYnN0cmFjdC1hY3Rpdml0eS10cmlnZ2VyLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBJbmxpbmVBY3Rpdml0eVRyaWdnZXJDb21wb25lbnRcbn0gZnJvbSAnLi9jb21wb25lbnRzL2FjdGl2aXR5LXRyaWdnZXJzL2lubGluZS1hY3Rpdml0eS10cmlnZ2VyL2lubGluZS1hY3Rpdml0eS10cmlnZ2VyLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBNb2RhbEFjdGl2aXR5VHJpZ2dlckNvbXBvbmVudFxufSBmcm9tICcuL2NvbXBvbmVudHMvYWN0aXZpdHktdHJpZ2dlcnMvbW9kYWwtYWN0aXZpdHktdHJpZ2dlci9tb2RhbC1hY3Rpdml0eS10cmlnZ2VyLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBQb3B1cEFjdGl2aXR5VHJpZ2dlckNvbXBvbmVudFxufSBmcm9tICcuL2NvbXBvbmVudHMvYWN0aXZpdHktdHJpZ2dlcnMvcG9wdXAtYWN0aXZpdHktdHJpZ2dlci9wb3B1cC1hY3Rpdml0eS10cmlnZ2VyLmNvbXBvbmVudCc7XG5pbXBvcnQge0FkZENhcmRBY3Rpdml0eUNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2FkZC1jYXJkLWFjdGl2aXR5L2FkZC1jYXJkLWFjdGl2aXR5LmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBBZGRJdGVtSW50ZXJhY3Rpb25Db250ZXh0Q29tcG9uZW50XG59IGZyb20gJy4vY29tcG9uZW50cy9hZGQtaXRlbS1pbnRlcmFjdGlvbi1jb250ZXh0L2FkZC1pdGVtLWludGVyYWN0aW9uLWNvbnRleHQuY29tcG9uZW50JztcbmltcG9ydCB7QWxlcnREaWFsb2dDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9hbGVydC1kaWFsb2cvYWxlcnQtZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQge0NvbmZpcm1UaGVuRGlhbG9nQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvY29uZmlybS10aGVuLWRpYWxvZy9jb25maXJtLXRoZW4tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBDb25maXJtVGhlbkV4ZWN1dGVEaWFsb2dDb21wb25lbnRcbn0gZnJvbSAnLi9jb21wb25lbnRzL2NvbmZpcm0tdGhlbi1leGVjdXRlLWRpYWxvZy9jb25maXJtLXRoZW4tZXhlY3V0ZS1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7Q29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvY29uZmlybWF0aW9uLWRpYWxvZy9jb25maXJtYXRpb24tZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQge0lubGluZVN0cmluZ0VkaXRvckNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2VkaXRvcnMvaW5saW5lLXN0cmluZy1lZGl0b3IvaW5saW5lLXN0cmluZy1lZGl0b3IuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIEluUGxhY2VJbnRlcmFjdGlvbkNvbnRleHRDb21wb25lbnRcbn0gZnJvbSAnLi9jb21wb25lbnRzL2lucGxhY2UtaW50ZXJhY3Rpb24tY29udGV4dC9pbi1wbGFjZS1pbnRlcmFjdGlvbi1jb250ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQge0lucHV0QWN0aXZpdHl9IGZyb20gJy4vY29tcG9uZW50cy9pbnB1dC1hY3Rpdml0aWVzL2lucHV0LWFjdGl2aXR5JztcbmltcG9ydCB7U2VsZWN0SW5wdXRBY3Rpdml0eX0gZnJvbSAnLi9jb21wb25lbnRzL2lucHV0LWFjdGl2aXRpZXMvc2VsZWN0LWlucHV0LWFjdGl2aXR5JztcbmltcG9ydCB7U3RyaW5nSW5wdXRBY3Rpdml0eX0gZnJvbSAnLi9jb21wb25lbnRzL2lucHV0LWFjdGl2aXRpZXMvc3RyaW5nLWlucHV0LWFjdGl2aXR5JztcbmltcG9ydCB7XG4gIFBvcHVwSW50ZXJhY3Rpb25Db250ZXh0Q29tcG9uZW50XG59IGZyb20gJy4vY29tcG9uZW50cy9wb3B1cC1pbnRlcmFjdGlvbi1jb250ZXh0L3BvcHVwLWludGVyYWN0aW9uLWNvbnRleHQuY29tcG9uZW50JztcbmltcG9ydCB7SW50ZXJhY3Rpb25Db250ZXh0VHJpZ2dlckZvckRpcmVjdGl2ZX0gZnJvbSAnLi9kaXJlY3RpdmVzL2ludGVyYWN0aW9uLWNvbnRleHQtdHJpZ2dlci1mb3IuZGlyZWN0aXZlJztcbmltcG9ydCB7SW50ZXJhY3Rpb25TZXJ2aWNlfSBmcm9tICcuL3NlcnZpY2VzL2ludGVyYWN0aW9uLnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBNYXRCdXR0b25Nb2R1bGUsXG4gICAgICAgIE1hdERpYWxvZ01vZHVsZSxcbiAgICAgICAgTWF0VGFic01vZHVsZSxcbiAgICAgICAgUG9ydGFsTW9kdWxlLFxuICAgICAgICBSb3V0ZXJNb2R1bGUsXG4gICAgICAgIE1hdEljb25Nb2R1bGUsXG4gICAgICAgIERpcmVjdGl2ZXNNb2R1bGUsXG4gICAgICAgIEZsZXhNb2R1bGUsXG4gICAgICAgIEdyaWRNb2R1bGUsXG4gICAgICAgIENvbXBvbmVudHNNb2R1bGUsXG4gICAgICAgIEZvcm1zTW9kdWxlLFxuICAgICAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICAgICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgICAgICBBMTF5TW9kdWxlXG4gICAgXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgQWN0aXZpdHlDb250YWluZXJDb21wb25lbnQsXG4gICAgICAgIENvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCxcbiAgICAgICAgQ29uZmlybVRoZW5EaWFsb2dDb21wb25lbnQsXG4gICAgICAgIENvbmZpcm1UaGVuRXhlY3V0ZURpYWxvZ0NvbXBvbmVudCxcbiAgICAgICAgQWxlcnREaWFsb2dDb21wb25lbnQsXG4gICAgICAgIEFjdGl2aXR5T3V0bGV0Q29tcG9uZW50LFxuICAgICAgICBJblBsYWNlSW50ZXJhY3Rpb25Db250ZXh0Q29tcG9uZW50LFxuICAgICAgICBBZGRJdGVtSW50ZXJhY3Rpb25Db250ZXh0Q29tcG9uZW50LFxuICAgICAgICBBY3Rpdml0eUFjdGlvbnNDb21wb25lbnQsXG4gICAgICAgIFBvcHVwSW50ZXJhY3Rpb25Db250ZXh0Q29tcG9uZW50LFxuICAgICAgICBTdHJpbmdJbnB1dEFjdGl2aXR5LFxuICAgICAgICBTZWxlY3RJbnB1dEFjdGl2aXR5LFxuICAgICAgICBJbnB1dEFjdGl2aXR5LFxuICAgICAgICBJbnRlcmFjdGlvbkNvbnRleHRUcmlnZ2VyRm9yRGlyZWN0aXZlLFxuICAgICAgICBBY3Rpdml0eSxcbiAgICAgICAgQWN0aXZpdHlUaXRsZUNvbXBvbmVudCxcbiAgICAgICAgQWN0aXZpdHlCb2R5Q29tcG9uZW50LFxuICAgICAgICBBY3Rpdml0eUFjdGlvbnNDb21wb25lbnQsXG4gICAgICAgIEFic3RyYWN0QWN0aXZpdHlUcmlnZ2VyQ29tcG9uZW50LFxuICAgICAgICBQb3B1cEFjdGl2aXR5VHJpZ2dlckNvbXBvbmVudCxcbiAgICAgICAgSW5saW5lQWN0aXZpdHlUcmlnZ2VyQ29tcG9uZW50LFxuICAgICAgICBNb2RhbEFjdGl2aXR5VHJpZ2dlckNvbXBvbmVudCxcbiAgICAgICAgQWRkQ2FyZEFjdGl2aXR5Q29tcG9uZW50LFxuICAgICAgICBJbmxpbmVTdHJpbmdFZGl0b3JDb21wb25lbnQsXG4gICAgICAgIEFic3RyYWN0RGlhbG9nQ29tcG9uZW50LFxuICAgICAgICBBYnN0cmFjdENvbmZpcm1EaWFsb2dDb21wb25lbnQsXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIEFjdGl2aXR5Q29udGFpbmVyQ29tcG9uZW50LFxuICAgICAgICBBY3Rpdml0eU91dGxldENvbXBvbmVudCxcbiAgICAgICAgQWN0aXZpdHlUaXRsZUNvbXBvbmVudCxcbiAgICAgICAgSW5QbGFjZUludGVyYWN0aW9uQ29udGV4dENvbXBvbmVudCxcbiAgICAgICAgQWRkSXRlbUludGVyYWN0aW9uQ29udGV4dENvbXBvbmVudCxcbiAgICAgICAgQWN0aXZpdHlBY3Rpb25zQ29tcG9uZW50LFxuICAgICAgICBQb3B1cEludGVyYWN0aW9uQ29udGV4dENvbXBvbmVudCxcbiAgICAgICAgSW50ZXJhY3Rpb25Db250ZXh0VHJpZ2dlckZvckRpcmVjdGl2ZSxcbiAgICAgICAgU3RyaW5nSW5wdXRBY3Rpdml0eSxcbiAgICAgICAgU2VsZWN0SW5wdXRBY3Rpdml0eSxcbiAgICAgICAgQWN0aXZpdHlCb2R5Q29tcG9uZW50LFxuICAgICAgICBQb3B1cEFjdGl2aXR5VHJpZ2dlckNvbXBvbmVudCxcbiAgICAgICAgSW5saW5lQWN0aXZpdHlUcmlnZ2VyQ29tcG9uZW50LFxuICAgICAgICBNb2RhbEFjdGl2aXR5VHJpZ2dlckNvbXBvbmVudCxcbiAgICAgICAgQWRkQ2FyZEFjdGl2aXR5Q29tcG9uZW50LFxuICAgICAgICBJbmxpbmVTdHJpbmdFZGl0b3JDb21wb25lbnQsXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgSW50ZXJhY3Rpb25TZXJ2aWNlXG4gICAgICAgIC8vIHtcbiAgICAgICAgLy8gICBwcm92aWRlOiBNQVRfVEFCU19DT05GSUcsIHVzZVZhbHVlOiB7IGFuaW1hdGlvbkR1cmF0aW9uOiBcIjJzXCIgfVxuICAgICAgICAvLyB9XG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBJbnRlcmFjdGlvbk1vZHVsZSB7XG59XG4iXX0=
193
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJhY3Rpb24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvaW50ZXJhY3Rpb24vaW50ZXJhY3Rpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDaEUsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFDcEMsT0FBTyxFQUFDLDhCQUE4QixFQUFDLE1BQU0sZ0RBQWdELENBQUM7QUFDOUYsT0FBTyxFQUFDLHVCQUF1QixFQUFD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LDBCQUEwQjt3QkFDMUIsdUJBQXVCO3dCQUN2QixzQkFBc0I7d0JBQ3RCLGtDQUFrQzt3QkFDbEMsa0NBQWtDO3dCQUNsQyx3QkFBd0I7d0JBQ3hCLGdDQUFnQzt3QkFDaEMscUNBQXFDO3dCQUNyQyxtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIscUJBQXFCO3dCQUNyQiw2QkFBNkI7d0JBQzdCLDhCQUE4Qjt3QkFDOUIsNkJBQTZCO3dCQUM3Qix3QkFBd0I7d0JBQ3hCLDJCQUEyQjt3QkFDM0Isb0NBQW9DO3FCQUNyQztvQkFDRCxTQUFTLEVBQUU7d0JBQ1Qsa0JBQWtCO3dCQUNsQixJQUFJO3dCQUNKLG9FQUFvRTt3QkFDcEUsSUFBSTtxQkFDTDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QTExeU1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHtQb3J0YWxNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7TWF0QnV0dG9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHtNYXREaWFsb2dNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQge01hdEZvcm1GaWVsZE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQge01hdEljb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHtNYXRJbnB1dE1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHtNYXRUYWJzTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJzJztcbmltcG9ydCB7Um91dGVyTW9kdWxlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtDb21wb25lbnRzTW9kdWxlfSBmcm9tICcuLi9jb21wb25lbnRzL2V4cG9ydHMnO1xuaW1wb3J0IHtEaXJlY3RpdmVzTW9kdWxlfSBmcm9tICcuLi9kaXJlY3RpdmVzL2RpcmVjdGl2ZXMubW9kdWxlJztcbmltcG9ydCB7QWN0aXZpdHl9IGZyb20gJy4vYWN0aXZpdHknO1xuaW1wb3J0IHtBYnN0cmFjdENvbmZpcm1EaWFsb2dDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9hYnN0cmFjdC1jb25maXJtLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHtBYnN0cmFjdERpYWxvZ0NvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2Fic3RyYWN0LWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHtBY3Rpdml0eUFjdGlvbnNDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9hY3Rpdml0eS1hY3Rpb25zL2FjdGl2aXR5LWFjdGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7QWN0aXZpdHlCb2R5Q29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvYWN0aXZpdHktYm9keS9hY3Rpdml0eS1ib2R5LmNvbXBvbmVudCc7XG5pbXBvcnQge0FjdGl2aXR5Q29udGFpbmVyQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvYWN0aXZpdHktY29udGFpbmVyL2FjdGl2aXR5LWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHtBY3Rpdml0eU91dGxldENvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2FjdGl2aXR5LWNvbnRhaW5lci9hY3Rpdml0eS1vdXRsZXQvYWN0aXZpdHktb3V0bGV0LmNvbXBvbmVudCc7XG5pbXBvcnQge0FjdGl2aXR5VGl0bGVDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9hY3Rpdml0eS10aXRsZS9hY3Rpdml0eS10aXRsZS5jb21wb25lbnQnO1xuaW1wb3J0IHtBYnN0cmFjdEFjdGl2aXR5VHJpZ2dlckNvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2FjdGl2aXR5LXRyaWdnZXJzL2Fic3RyYWN0LWFjdGl2aXR5LXRyaWdnZXIuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIElubGluZUFjdGl2aXR5VHJpZ2dlckNvbXBvbmVudFxufSBmcm9tICcuL2NvbXBvbmVudHMvYWN0aXZpdHktdHJpZ2dlcnMvaW5saW5lLWFjdGl2aXR5LXRyaWdnZXIvaW5saW5lLWFjdGl2aXR5LXRyaWdnZXIuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIE1vZGFsQWN0aXZpdHlUcmlnZ2VyQ29tcG9uZW50XG59IGZyb20gJy4vY29tcG9uZW50cy9hY3Rpdml0eS10cmlnZ2Vycy9tb2RhbC1hY3Rpdml0eS10cmlnZ2VyL21vZGFsLWFjdGl2aXR5LXRyaWdnZXIuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIFBvcHVwQWN0aXZpdHlUcmlnZ2VyQ29tcG9uZW50XG59IGZyb20gJy4vY29tcG9uZW50cy9hY3Rpdml0eS10cmlnZ2Vycy9wb3B1cC1hY3Rpdml0eS10cmlnZ2VyL3BvcHVwLWFjdGl2aXR5LXRyaWdnZXIuY29tcG9uZW50JztcbmltcG9ydCB7QWRkQ2FyZEFjdGl2aXR5Q29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvYWRkLWNhcmQtYWN0aXZpdHkvYWRkLWNhcmQtYWN0aXZpdHkuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIEFkZEl0ZW1JbnRlcmFjdGlvbkNvbnRleHRDb21wb25lbnRcbn0gZnJvbSAnLi9jb21wb25lbnRzL2FkZC1pdGVtLWludGVyYWN0aW9uLWNvbnRleHQvYWRkLWl0ZW0taW50ZXJhY3Rpb24tY29udGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHtBbGVydERpYWxvZ0NvbXBvbmVudH0gZnJvbSAnLi9jb21wb25lbnRzL2FsZXJ0LWRpYWxvZy9hbGVydC1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7Q29uZmlybVRoZW5EaWFsb2dDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9jb25maXJtLXRoZW4tZGlhbG9nL2NvbmZpcm0tdGhlbi1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIENvbmZpcm1UaGVuRXhlY3V0ZURpYWxvZ0NvbXBvbmVudFxufSBmcm9tICcuL2NvbXBvbmVudHMvY29uZmlybS10aGVuLWV4ZWN1dGUtZGlhbG9nL2NvbmZpcm0tdGhlbi1leGVjdXRlLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHtDb25maXJtYXRpb25EaWFsb2dDb21wb25lbnR9IGZyb20gJy4vY29tcG9uZW50cy9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7SW5saW5lU3RyaW5nRWRpdG9yQ29tcG9uZW50fSBmcm9tICcuL2NvbXBvbmVudHMvZWRpdG9ycy9pbmxpbmUtc3RyaW5nLWVkaXRvci9pbmxpbmUtc3RyaW5nLWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgSW5QbGFjZUludGVyYWN0aW9uQ29udGV4dENvbXBvbmVudFxufSBmcm9tICcuL2NvbXBvbmVudHMvaW5wbGFjZS1pbnRlcmFjdGlvbi1jb250ZXh0L2luLXBsYWNlLWludGVyYWN0aW9uLWNvbnRleHQuY29tcG9uZW50JztcbmltcG9ydCB7SW5wdXRBY3Rpdml0eX0gZnJvbSAnLi9jb21wb25lbnRzL2lucHV0LWFjdGl2aXRpZXMvaW5wdXQtYWN0aXZpdHknO1xuaW1wb3J0IHtTZWxlY3RJbnB1dEFjdGl2aXR5fSBmcm9tICcuL2NvbXBvbmVudHMvaW5wdXQtYWN0aXZpdGllcy9zZWxlY3QtaW5wdXQtYWN0aXZpdHknO1xuaW1wb3J0IHtTdHJpbmdJbnB1dEFjdGl2aXR5fSBmcm9tICcuL2NvbXBvbmVudHMvaW5wdXQtYWN0aXZpdGllcy9zdHJpbmctaW5wdXQtYWN0aXZpdHknO1xuaW1wb3J0IHtcbiAgUG9wdXBJbnRlcmFjdGlvbkNvbnRleHRDb21wb25lbnRcbn0gZnJvbSAnLi9jb21wb25lbnRzL3BvcHVwLWludGVyYWN0aW9uLWNvbnRleHQvcG9wdXAtaW50ZXJhY3Rpb24tY29udGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgU2xpZGVEb3duSW50ZXJhY3Rpb25Db250ZXh0Q29tcG9uZW50XG59IGZyb20gXCIuL2NvbXBvbmVudHMvc2xpZGUtZG93bi1pbnRlcmFjdGlvbi1jb250ZXh0L3NsaWRlLWRvd24taW50ZXJhY3Rpb24tY29udGV4dC5jb21wb25lbnRcIjtcbmltcG9ydCB7SW50ZXJhY3Rpb25Db250ZXh0VHJpZ2dlckZvckRpcmVjdGl2ZX0gZnJvbSAnLi9kaXJlY3RpdmVzL2ludGVyYWN0aW9uLWNvbnRleHQtdHJpZ2dlci1mb3IuZGlyZWN0aXZlJztcbmltcG9ydCB7SW50ZXJhY3Rpb25TZXJ2aWNlfSBmcm9tICcuL3NlcnZpY2VzL2ludGVyYWN0aW9uLnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXREaWFsb2dNb2R1bGUsXG4gICAgTWF0VGFic01vZHVsZSxcbiAgICBQb3J0YWxNb2R1bGUsXG4gICAgUm91dGVyTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgRGlyZWN0aXZlc01vZHVsZSxcbiAgICBDb21wb25lbnRzTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBBMTF5TW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEFjdGl2aXR5Q29udGFpbmVyQ29tcG9uZW50LFxuICAgIENvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCxcbiAgICBDb25maXJtVGhlbkRpYWxvZ0NvbXBvbmVudCxcbiAgICBDb25maXJtVGhlbkV4ZWN1dGVEaWFsb2dDb21wb25lbnQsXG4gICAgQWxlcnREaWFsb2dDb21wb25lbnQsXG4gICAgQWN0aXZpdHlPdXRsZXRDb21wb25lbnQsXG4gICAgSW5QbGFjZUludGVyYWN0aW9uQ29udGV4dENvbXBvbmVudCxcbiAgICBTbGlkZURvd25JbnRlcmFjdGlvbkNvbnRleHRDb21wb25lbnQsXG4gICAgQWRkSXRlbUludGVyYWN0aW9uQ29udGV4dENvbXBvbmVudCxcbiAgICBBY3Rpdml0eUFjdGlvbnNDb21wb25lbnQsXG4gICAgUG9wdXBJbnRlcmFjdGlvbkNvbnRleHRDb21wb25lbnQsXG4gICAgU3RyaW5nSW5wdXRBY3Rpdml0eSxcbiAgICBTZWxlY3RJbnB1dEFjdGl2aXR5LFxuICAgIElucHV0QWN0aXZpdHksXG4gICAgSW50ZXJhY3Rpb25Db250ZXh0VHJpZ2dlckZvckRpcmVjdGl2ZSxcbiAgICBBY3Rpdml0eSxcbiAgICBBY3Rpdml0eVRpdGxlQ29tcG9uZW50LFxuICAgIEFjdGl2aXR5Qm9keUNvbXBvbmVudCxcbiAgICBBY3Rpdml0eUFjdGlvbnNDb21wb25lbnQsXG4gICAgQWJzdHJhY3RBY3Rpdml0eVRyaWdnZXJDb21wb25lbnQsXG4gICAgUG9wdXBBY3Rpdml0eVRyaWdnZXJDb21wb25lbnQsXG4gICAgSW5saW5lQWN0aXZpdHlUcmlnZ2VyQ29tcG9uZW50LFxuICAgIE1vZGFsQWN0aXZpdHlUcmlnZ2VyQ29tcG9uZW50LFxuICAgIEFkZENhcmRBY3Rpdml0eUNvbXBvbmVudCxcbiAgICBJbmxpbmVTdHJpbmdFZGl0b3JDb21wb25lbnQsXG4gICAgQWJzdHJhY3REaWFsb2dDb21wb25lbnQsXG4gICAgQWJzdHJhY3RDb25maXJtRGlhbG9nQ29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgQWN0aXZpdHlDb250YWluZXJDb21wb25lbnQsXG4gICAgQWN0aXZpdHlPdXRsZXRDb21wb25lbnQsXG4gICAgQWN0aXZpdHlUaXRsZUNvbXBvbmVudCxcbiAgICBJblBsYWNlSW50ZXJhY3Rpb25Db250ZXh0Q29tcG9uZW50LFxuICAgIEFkZEl0ZW1JbnRlcmFjdGlvbkNvbnRleHRDb21wb25lbnQsXG4gICAgQWN0aXZpdHlBY3Rpb25zQ29tcG9uZW50LFxuICAgIFBvcHVwSW50ZXJhY3Rpb25Db250ZXh0Q29tcG9uZW50LFxuICAgIEludGVyYWN0aW9uQ29udGV4dFRyaWdnZXJGb3JEaXJlY3RpdmUsXG4gICAgU3RyaW5nSW5wdXRBY3Rpdml0eSxcbiAgICBTZWxlY3RJbnB1dEFjdGl2aXR5LFxuICAgIEFjdGl2aXR5Qm9keUNvbXBvbmVudCxcbiAgICBQb3B1cEFjdGl2aXR5VHJpZ2dlckNvbXBvbmVudCxcbiAgICBJbmxpbmVBY3Rpdml0eVRyaWdnZXJDb21wb25lbnQsXG4gICAgTW9kYWxBY3Rpdml0eVRyaWdnZXJDb21wb25lbnQsXG4gICAgQWRkQ2FyZEFjdGl2aXR5Q29tcG9uZW50LFxuICAgIElubGluZVN0cmluZ0VkaXRvckNvbXBvbmVudCxcbiAgICBTbGlkZURvd25JbnRlcmFjdGlvbkNvbnRleHRDb21wb25lbnQsXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIEludGVyYWN0aW9uU2VydmljZVxuICAgIC8vIHtcbiAgICAvLyAgIHByb3ZpZGU6IE1BVF9UQUJTX0NPTkZJRywgdXNlVmFsdWU6IHsgYW5pbWF0aW9uRHVyYXRpb246IFwiMnNcIiB9XG4gICAgLy8gfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEludGVyYWN0aW9uTW9kdWxlIHtcbn1cbiJdfQ==
@@ -8,17 +8,16 @@ import * as i3 from "@angular/material/list";
8
8
  import * as i4 from "@angular/material/tooltip";
9
9
  import * as i5 from "../../../directives/command.directive";
10
10
  import * as i6 from "../../../directives/garbage-collector.directive";
11
- import * as i7 from "@angular/flex-layout";
12
- import * as i8 from "../../../components/commands/command-face/command-face.component";
11
+ import * as i7 from "../../../components/commands/command-face/command-face.component";
13
12
  export class ListPlaceNavComponent extends AbstractPlaceNavigationComponent {
14
13
  constructor(router) {
15
14
  super(router);
16
15
  }
17
16
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ListPlaceNavComponent, deps: [{ token: i1.PlaceRouter }], target: i0.ɵɵFactoryTarget.Component });
18
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ListPlaceNavComponent, selector: "aup-list-place-nav", usesInheritance: true, ngImport: i0, template: "<mat-nav-list fxFlex>\n <a mat-list-item *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n aup-gc #gc=\"aup-gc\"\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [class.active]=\"item.active\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\">\n <aup-command-face [faces]=\"[getNavigationFace(item.place)]\"></aup-command-face>\n </a>\n</mat-nav-list>\n", styles: [":host{display:flex;flex-direction:column;--selected-border-color: #838383;--selected-color: inherit;--selected-background: #f1f1f1}mat-nav-list{padding-top:0}a{border-right:2px solid transparent}a.active{border-right:2px solid var(--selected-border-color);background:var(--selected-background);color:var(--selected-color)}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i5.CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "directive", type: i6.GarbageCollectorDirective, selector: "[aup-gc]", exportAs: ["aup-gc"] }, { kind: "directive", type: i7.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i8.CommandFaceComponent, selector: "aup-command-face", inputs: ["faces", "face", "ignoreIcon", "ignoreText", "includeMissingIconInLayout"] }] });
17
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ListPlaceNavComponent, selector: "aup-list-place-nav", usesInheritance: true, ngImport: i0, template: "<mat-nav-list fxFlex>\n <a mat-list-item *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n aup-gc #gc=\"aup-gc\"\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [class.active]=\"item.active\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\">\n <aup-command-face [faces]=\"[getNavigationFace(item.place)]\"></aup-command-face>\n </a>\n</mat-nav-list>\n", styles: [":host{display:flex;flex-direction:column;--selected-border-color: #838383;--selected-color: inherit;--selected-background: #f1f1f1}mat-nav-list{padding-top:0}a{border-right:2px solid transparent}a.active{border-right:2px solid var(--selected-border-color);background:var(--selected-background);color:var(--selected-color)}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i5.CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "directive", type: i6.GarbageCollectorDirective, selector: "[aup-gc]", exportAs: ["aup-gc"] }, { kind: "component", type: i7.CommandFaceComponent, selector: "aup-command-face", inputs: ["faces", "face", "ignoreIcon", "ignoreText", "includeMissingIconInLayout"] }] });
19
18
  }
20
19
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ListPlaceNavComponent, decorators: [{
21
20
  type: Component,
22
21
  args: [{ selector: 'aup-list-place-nav', template: "<mat-nav-list fxFlex>\n <a mat-list-item *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n aup-gc #gc=\"aup-gc\"\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [class.active]=\"item.active\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\">\n <aup-command-face [faces]=\"[getNavigationFace(item.place)]\"></aup-command-face>\n </a>\n</mat-nav-list>\n", styles: [":host{display:flex;flex-direction:column;--selected-border-color: #838383;--selected-color: inherit;--selected-background: #f1f1f1}mat-nav-list{padding-top:0}a{border-right:2px solid transparent}a.active{border-right:2px solid var(--selected-border-color);background:var(--selected-background);color:var(--selected-color)}\n"] }]
23
22
  }], ctorParameters: function () { return [{ type: i1.PlaceRouter }]; } });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1wbGFjZS1uYXYuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvcGxhY2UvY29tcG9uZW50cy9saXN0LXBsYWNlLW5hdi9saXN0LXBsYWNlLW5hdi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS9jb21wb25lbnRzL2xpc3QtcGxhY2UtbmF2L2xpc3QtcGxhY2UtbmF2LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQy9DLE9BQU8sRUFBQyxnQ0FBZ0MsRUFBQyxNQUFNLHdDQUF3QyxDQUFDOzs7Ozs7Ozs7O0FBT3hGLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxnQ0FBZ0M7SUFFekUsWUFBWSxNQUFtQjtRQUM3QixLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEIsQ0FBQzt1R0FKVSxxQkFBcUI7MkZBQXJCLHFCQUFxQixpRkNUbEMsK2FBU0E7OzJGREFhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1BsYWNlUm91dGVyfSBmcm9tICcuLi8uLi9wbGFjZS1yb3V0ZXInO1xuaW1wb3J0IHtBYnN0cmFjdFBsYWNlTmF2aWdhdGlvbkNvbXBvbmVudH0gZnJvbSAnLi4vYWJzdHJhY3QtcGxhY2UtbmF2aWdhdGlvbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdXAtbGlzdC1wbGFjZS1uYXYnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGlzdC1wbGFjZS1uYXYuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9saXN0LXBsYWNlLW5hdi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIExpc3RQbGFjZU5hdkNvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0UGxhY2VOYXZpZ2F0aW9uQ29tcG9uZW50IHtcblxuICBjb25zdHJ1Y3Rvcihyb3V0ZXI6IFBsYWNlUm91dGVyKSB7XG4gICAgc3VwZXIocm91dGVyKTtcbiAgfVxufVxuIiwiPG1hdC1uYXYtbGlzdCBmeEZsZXg+XG4gIDxhIG1hdC1saXN0LWl0ZW0gKm5nRm9yPVwibGV0IGl0ZW0gb2YgbWVudUl0ZW1zLnZhbHVlOyB0cmFja0J5OiB0cmFja0J5UGxhY2VEZWZcIlxuICAgICBhdXAtZ2MgI2djPVwiYXVwLWdjXCJcbiAgICAgW3BlY3RpbkNvbW1hbmRdPVwiY29tbWFuZEZhY3RvcnkuY3JlYXRlKGl0ZW0ucGxhY2UsIHtkaXNwb3NlZFdpdGg6IGdjfSlcIlxuICAgICBbY2xhc3MuYWN0aXZlXT1cIml0ZW0uYWN0aXZlXCJcbiAgICAgW21hdFRvb2x0aXBdPVwiZ2V0TmF2aWdhdGlvbkZhY2UoaXRlbS5wbGFjZSkudG9vbHRpcCgpXCI+XG4gICAgPGF1cC1jb21tYW5kLWZhY2UgW2ZhY2VzXT1cIltnZXROYXZpZ2F0aW9uRmFjZShpdGVtLnBsYWNlKV1cIj48L2F1cC1jb21tYW5kLWZhY2U+XG4gIDwvYT5cbjwvbWF0LW5hdi1saXN0PlxuIl19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1wbGFjZS1uYXYuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvcGxhY2UvY29tcG9uZW50cy9saXN0LXBsYWNlLW5hdi9saXN0LXBsYWNlLW5hdi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS9jb21wb25lbnRzL2xpc3QtcGxhY2UtbmF2L2xpc3QtcGxhY2UtbmF2LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQy9DLE9BQU8sRUFBQyxnQ0FBZ0MsRUFBQyxNQUFNLHdDQUF3QyxDQUFDOzs7Ozs7Ozs7QUFPeEYsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGdDQUFnQztJQUV6RSxZQUFZLE1BQW1CO1FBQzdCLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoQixDQUFDO3VHQUpVLHFCQUFxQjsyRkFBckIscUJBQXFCLGlGQ1RsQywrYUFTQTs7MkZEQWEscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7UGxhY2VSb3V0ZXJ9IGZyb20gJy4uLy4uL3BsYWNlLXJvdXRlcic7XG5pbXBvcnQge0Fic3RyYWN0UGxhY2VOYXZpZ2F0aW9uQ29tcG9uZW50fSBmcm9tICcuLi9hYnN0cmFjdC1wbGFjZS1uYXZpZ2F0aW9uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1cC1saXN0LXBsYWNlLW5hdicsXG4gIHRlbXBsYXRlVXJsOiAnLi9saXN0LXBsYWNlLW5hdi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xpc3QtcGxhY2UtbmF2LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTGlzdFBsYWNlTmF2Q29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RQbGFjZU5hdmlnYXRpb25Db21wb25lbnQge1xuXG4gIGNvbnN0cnVjdG9yKHJvdXRlcjogUGxhY2VSb3V0ZXIpIHtcbiAgICBzdXBlcihyb3V0ZXIpO1xuICB9XG59XG4iLCI8bWF0LW5hdi1saXN0IGZ4RmxleD5cbiAgPGEgbWF0LWxpc3QtaXRlbSAqbmdGb3I9XCJsZXQgaXRlbSBvZiBtZW51SXRlbXMudmFsdWU7IHRyYWNrQnk6IHRyYWNrQnlQbGFjZURlZlwiXG4gICAgIGF1cC1nYyAjZ2M9XCJhdXAtZ2NcIlxuICAgICBbcGVjdGluQ29tbWFuZF09XCJjb21tYW5kRmFjdG9yeS5jcmVhdGUoaXRlbS5wbGFjZSwge2Rpc3Bvc2VkV2l0aDogZ2N9KVwiXG4gICAgIFtjbGFzcy5hY3RpdmVdPVwiaXRlbS5hY3RpdmVcIlxuICAgICBbbWF0VG9vbHRpcF09XCJnZXROYXZpZ2F0aW9uRmFjZShpdGVtLnBsYWNlKS50b29sdGlwKClcIj5cbiAgICA8YXVwLWNvbW1hbmQtZmFjZSBbZmFjZXNdPVwiW2dldE5hdmlnYXRpb25GYWNlKGl0ZW0ucGxhY2UpXVwiPjwvYXVwLWNvbW1hbmQtZmFjZT5cbiAgPC9hPlxuPC9tYXQtbmF2LWxpc3Q+XG4iXX0=
@@ -1,9 +1,9 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
2
  import { ComponentPortal } from '@angular/cdk/portal';
3
- import { ChangeDetectorRef, Component, EventEmitter, HostBinding, Inject, InjectionToken, Input, Optional, Output, SkipSelf, ViewChild } from '@angular/core';
3
+ import { Component, EventEmitter, HostBinding, Inject, InjectionToken, Input, Optional, Output, SkipSelf, ViewChild } from '@angular/core';
4
4
  import { Router, RouterOutlet } from '@angular/router';
5
5
  import { DebugContext, Dsl, lang, ListModel, MutableValueModel, Proxify, proxify, StoreInListModel, StoreInValueModel, ValueModel } from '@coolon/pectin';
6
- import { isNil } from 'lodash';
6
+ import { isNil } from 'lodash-es';
7
7
  import { DisposableComponent } from '../../../components/disposable-component';
8
8
  import { AUP_PLACE_CONFIG } from '../../place-config';
9
9
  import { PlaceRouter } from '../../place-router';
@@ -20,7 +20,6 @@ export class PlaceOutletComponent extends DisposableComponent {
20
20
  router;
21
21
  placeRouter;
22
22
  placeConfig;
23
- cdr;
24
23
  #animate$_accessor_storage = proxify((ValueModel));
25
24
  get animate$() { return this.#animate$_accessor_storage; }
26
25
  set animate$(value) { this.#animate$_accessor_storage = value; }
@@ -54,12 +53,11 @@ export class PlaceOutletComponent extends DisposableComponent {
54
53
  animationEnabled;
55
54
  authorised;
56
55
  notAuthorisedNoticePortal;
57
- constructor(router, placeRouter, placeConfig, unauthorisedPlaceNotice, parentOutlet, cdr) {
56
+ constructor(router, placeRouter, placeConfig, unauthorisedPlaceNotice, parentOutlet) {
58
57
  super();
59
58
  this.router = router;
60
59
  this.placeRouter = placeRouter;
61
60
  this.placeConfig = placeConfig;
62
- this.cdr = cdr;
63
61
  const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
64
62
  this.parentOutletModel = new MutableValueModel(parentOutlet);
65
63
  const defaultPlaceAnimationOrder = chain(this.parentOutletModel)
@@ -71,7 +69,7 @@ export class PlaceOutletComponent extends DisposableComponent {
71
69
  this.placesInAnimationOrder = chain(this.customPlaceAnimationOrder$)
72
70
  .otherwise(defaultPlaceAnimationOrder);
73
71
  this.activePlaceAnimationPosition = this.placesInAnimationOrder
74
- .reduce((placesInOrder) => {
72
+ .reduceAll((placesInOrder) => {
75
73
  let placeIndex = 0;
76
74
  if (activatePlaceType.value) {
77
75
  placeIndex = placesInOrder.indexOf(activatePlaceType.value);
@@ -225,7 +223,7 @@ export class PlaceOutletComponent extends DisposableComponent {
225
223
  this.onAnimationFinishedJob = undefined;
226
224
  }
227
225
  }
228
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceOutletComponent, deps: [{ token: i1.Router }, { token: i2.PlaceRouter }, { token: AUP_PLACE_CONFIG, optional: true }, { token: AUP_UNAUTHORISED_PLACE_NOTICE_COMPONENT, optional: true }, { token: PlaceOutletComponent, optional: true, skipSelf: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
226
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceOutletComponent, deps: [{ token: i1.Router }, { token: i2.PlaceRouter }, { token: AUP_PLACE_CONFIG, optional: true }, { token: AUP_UNAUTHORISED_PLACE_NOTICE_COMPONENT, optional: true }, { token: PlaceOutletComponent, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
229
227
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: PlaceOutletComponent, selector: "aup-place-outlet", inputs: { animate$: "animate$", animate: "animate", customPlaceAnimationOrder$: ["placeAnimationOrderModel", "customPlaceAnimationOrder$"], customPlaceAnimationOrder: ["placeAnimationOrder", "customPlaceAnimationOrder"] }, outputs: { placeChanged: "placeChanged" }, host: { properties: { "class.authorised": "this.isAuthorised" } }, viewQueries: [{ propertyName: "routerOut", first: true, predicate: ["routeOutlet"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"animationEnabled.value\">\n <div class=\"router-outlet-container\"\n cdkScrollable\n [@routeAnimations]=\"{value: getAnimationOrder(), params:{duration: animationDuration}}\"\n (@routeAnimations.start)=\"animationStarted()\"\n (@routeAnimations.done)=\"animationDone()\"\n >\n <router-outlet #routerOutlet=\"outlet\"\n (activate)=\"onOutletActivated(routerOutlet, $event)\"\n (deactivate)=\"onOutletDeactivated()\">\n </router-outlet>\n </div>\n</ng-container>\n\n<ng-container *ngIf=\"!animationEnabled.value\">\n <div class=\"router-outlet-container\"\n cdkScrollable>\n <router-outlet #routerOutlet=\"outlet\"\n (activate)=\"onOutletActivated(routerOutlet, $event)\"\n (deactivate)=\"onOutletDeactivated()\">\n </router-outlet>\n </div>\n</ng-container>\n\n<div class=\"not-authorised-component-container\" *ngIf=\"!authorised.value\">\n <ng-template [cdkPortalOutlet]=\"notAuthorisedNoticePortal\"></ng-template>\n</div>\n", styles: [":host{display:flex;flex-direction:column;min-height:0}:host:not(.authorised) .router-outlet-container{display:none}.router-outlet-container{flex:1;display:block;position:relative;min-height:0;overflow-x:hidden;overflow-y:auto}router-outlet{display:none}.not-authorised-component-container{flex:1;display:grid;grid-template-columns:1fr;grid-template-rows:1fr}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: i4.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "directive", type: i5.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], animations: [LEFT_RIGHT_PLACE_ANIMATION] });
230
228
  }
231
229
  __decorate([
@@ -261,7 +259,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
261
259
  type: SkipSelf
262
260
  }, {
263
261
  type: Optional
264
- }] }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { animate$: [{
262
+ }] }]; }, propDecorators: { animate$: [{
265
263
  type: Input
266
264
  }], animate: [{
267
265
  type: Input
@@ -280,4 +278,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
280
278
  type: HostBinding,
281
279
  args: ["class.authorised"]
282
280
  }] } });
283
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2Utb3V0bGV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL3BsYWNlL2NvbXBvbmVudHMvcGxhY2Utb3V0bGV0L3BsYWNlLW91dGxldC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS9jb21wb25lbnRzL3BsYWNlLW91dGxldC9wbGFjZS1vdXRsZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLE1BQU0sRUFDTixjQUFjLEVBQ2QsS0FBSyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04sUUFBUSxFQUNSLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQWlCLE1BQU0sRUFBRSxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRSxPQUFPLEVBR0wsWUFBWSxFQUNaLEdBQUcsRUFDSCxJQUFJLEVBQ0osU0FBUyxFQUVULGlCQUFpQixFQUNqQixPQUFPLEVBQ1AsT0FBTyxFQUNQLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDakIsVUFBVSxFQUVYLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLFFBQVEsQ0FBQztBQUM3QixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSwwQ0FBMEMsQ0FBQztBQUc3RSxPQUFPLEVBQUMsZ0JBQWdCLEVBQWMsTUFBTSxvQkFBb0IsQ0FBQztBQUVqRSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFHL0MsT0FBTyxF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c0IsRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxTQUFTLENBQUM7U0FDekM7SUFDSCxDQUFDO3VHQXpQVSxvQkFBb0IsbUVBaURDLGdCQUFnQiw2QkFDaEIsdUNBQXVDOzJGQWxENUQsb0JBQW9CLG9oQkNyRGpDLCtpQ0EyQkEsbTZCRHdCYyxDQUFDLDBCQUEwQixDQUFDOztBQUsvQjtJQURDLE9BQU8sRUFBRTs7b0RBQzhCO0FBR3hDO0lBREMsaUJBQWlCLEVBQUU7O21EQUNMO0FBS2Y7SUFEMkIsT0FBTyxFQUFFOztzRUFDMkM7QUFJL0U7SUFEc0IsZ0JBQWdCLEVBQUU7O3FFQUNpQzsyRkFmdkUsb0JBQW9CO2tCQU5oQyxTQUFTOytCQUNFLGtCQUFrQixjQUdoQixDQUFDLDBCQUEwQixDQUFDOzswQkFtRDNCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsZ0JBQWdCOzswQkFDbkMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyx1Q0FBdUM7OzBCQUMxRCxRQUFROzswQkFBSSxRQUFROzRFQWhEeEIsUUFBUTtzQkFEaEIsS0FBSztnQkFJRyxPQUFPO3NCQURmLEtBQUs7Z0JBTUcsMEJBQTBCO3NCQURsQyxLQUFLO3VCQUFDLDBCQUEwQjtnQkFLeEIseUJBQXlCO3NCQURqQyxLQUFLO3VCQUFDLHFCQUFxQjtnQkFJbkIsWUFBWTtzQkFEcEIsTUFBTTtnQkFJUCxTQUFTO3NCQURSLFNBQVM7dUJBQUMsYUFBYSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFxR3RDLFlBQVk7c0JBRGYsV0FBVzt1QkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudFBvcnRhbH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbmplY3QsXG4gIEluamVjdGlvblRva2VuLFxuICBJbnB1dCxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dCxcbiAgU2tpcFNlbGYsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIFJvdXRlciwgUm91dGVyT3V0bGV0fSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgQm9vbGVhblZhbHVlTW9kZWxDaGFpbixcbiAgQ29uc3RydWN0YWJsZSxcbiAgRGVidWdDb250ZXh0LFxuICBEc2wsXG4gIGxhbmcsXG4gIExpc3RNb2RlbCxcbiAgTGlzdE1vZGVsQ2hhaW4sXG4gIE11dGFibGVWYWx1ZU1vZGVsLFxuICBQcm94aWZ5LFxuICBwcm94aWZ5LFxuICBTdG9yZUluTGlzdE1vZGVsLFxuICBTdG9yZUluVmFsdWVNb2RlbCxcbiAgVmFsdWVNb2RlbCxcbiAgVmFsdWVNb2RlbENoYWluXG59IGZyb20gJ0Bjb29sb24vcGVjdGluJztcblxuaW1wb3J0IHtpc05pbH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7RGlzcG9zYWJsZUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vY29tcG9uZW50cy9kaXNwb3NhYmxlLWNvbXBvbmVudCc7XG5pbXBvcnQge1BsYWNlQ29tcG9uZW50fSBmcm9tICcuLi8uLi9wbGFjZS1jb21wb25lbnQnO1xuXG5pbXBvcnQge0FVUF9QTEFDRV9DT05GSUcsIFBsYWNlQ29uZmlnfSBmcm9tICcuLi8uLi9wbGFjZS1jb25maWcnO1xuaW1wb3J0IHtQbGFjZURlZmluaXRpb259IGZyb20gJy4uLy4uL3BsYWNlLWRlZmluaXRpb24nO1xuaW1wb3J0IHtQbGFjZVJvdXRlcn0gZnJvbSAnLi4vLi4vcGxhY2Utcm91dGVyJztcbmltcG9ydCB7VmlzaXRTZWdtZW50fSBmcm9tICcuLi8uLi92aXNpdC1zZWdtZW50JztcblxuaW1wb3J0IHtOb3RBdXRob3Jpc2VkTm90aWNlQ29tcG9uZW50fSBmcm9tICcuLi9ub3QtYXV0aG9yaXNlZC1ub3RpY2Uvbm90LWF1dGhvcmlzZWQtbm90aWNlLmNvbXBvbmVudCc7XG5pbXBvcnQge0xFRlRfUklHSFRfUExBQ0VfQU5JTUFUSU9OfSBmcm9tICcuL3JvdXRlLWFuaW1hdGlvbnMnO1xuXG5cbmV4cG9ydCBjb25zdCBBVVBfVU5BVVRIT1JJU0VEX1BMQUNFX05PVElDRV9DT01QT05FTlQgPSBuZXcgSW5qZWN0aW9uVG9rZW48Q29uc3RydWN0YWJsZTxhbnk+PignQVVQX1VOQVVUSE9SSVNFRF9QTEFDRV9DT01QT05FTlQnKTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVwLXBsYWNlLW91dGxldCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wbGFjZS1vdXRsZXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wbGFjZS1vdXRsZXQuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW0xFRlRfUklHSFRfUExBQ0VfQU5JTUFUSU9OXVxufSlcbmV4cG9ydCBjbGFzcyBQbGFjZU91dGxldENvbXBvbmVudCBleHRlbmRzIERpc3Bvc2FibGVDb21wb25lbnQge1xuXG4gIEBJbnB1dCgpIEBQcm94aWZ5KClcbiAgYWNjZXNzb3IgYW5pbWF0ZSQgPSBwcm94aWZ5KFZhbHVlTW9kZWw8Ym9vbGVhbj4pO1xuXG4gIEBJbnB1dCgpIEBTdG9yZUluVmFsdWVNb2RlbCgpXG4gIGFjY2Vzc29yIGFuaW1hdGUgPSB0cnVlO1xuXG5cbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ3BsYWNlQW5pbWF0aW9uT3JkZXJNb2RlbCcpIEBQcm94aWZ5KClcbiAgYWNjZXNzb3IgY3VzdG9tUGxhY2VBbmltYXRpb25PcmRlciQgPSBwcm94aWZ5KExpc3RNb2RlbDxDb25zdHJ1Y3RhYmxlPFBsYWNlQ29tcG9uZW50Pj4pO1xuXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdwbGFjZUFuaW1hdGlvbk9yZGVyJykgQFN0b3JlSW5MaXN0TW9kZWwoKVxuICBhY2Nlc3NvciBjdXN0b21QbGFjZUFuaW1hdGlvbk9yZGVyOiAgUmVhZG9ubHlBcnJheTxDb25zdHJ1Y3RhYmxlPFBsYWNlQ29tcG9uZW50Pj47XG5cbiAgQE91dHB1dCgpXG4gIHJlYWRvbmx5IHBsYWNlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8UGxhY2VDb21wb25lbnQ+KCk7XG5cbiAgQFZpZXdDaGlsZCgncm91dGVPdXRsZXQnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICByb3V0ZXJPdXQ6IFJvdXRlck91dGxldDtcblxuICBwcml2YXRlIG9uQW5pbWF0aW9uRmluaXNoZWRKb2I6ICgpID0+IHZvaWQ7XG5cblxuICBwcml2YXRlIG91dGxldEFjdGl2YXRlZCA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbChmYWxzZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2FjdGl2YXRlZFJvdXRlTW9kZWwgPSBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8QWN0aXZhdGVkUm91dGU+KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2FjdGl2ZVBsYWNlTW9kZWwgPSBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8UGxhY2VDb21wb25lbnQ+KCk7XG5cbiAgcmVhZG9ubHkgX2FjdGl2ZVBsYWNlRGVmaW5pdGlvbjogVmFsdWVNb2RlbENoYWluPFBsYWNlRGVmaW5pdGlvbj47XG5cbiAgcHJpdmF0ZSBwYXJlbnRPdXRsZXRNb2RlbDogTXV0YWJsZVZhbHVlTW9kZWw8UGxhY2VPdXRsZXRDb21wb25lbnQ+O1xuICBwdWJsaWMgcmVhZG9ubHkgYWN0aXZlUGxhY2VBbmltYXRpb25Qb3NpdGlvbjogVmFsdWVNb2RlbENoYWluPG51bWJlcj47XG5cbiAgcHJpdmF0ZSBpbml0aWFsUGxhY2VJbmRleDogbnVtYmVyID0gbnVsbDtcbiAgcHJpdmF0ZSBjdXJyZW50VmlzaXRTZWdtZW50JDogVmFsdWVNb2RlbENoYWluPFZpc2l0U2VnbWVudD47XG4gIHByaXZhdGUgX2lzUHVzaGluZ1Zpc2l0VG9Sb3V0ZXIgPSBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcml2YXRlIG5hdmlnYXRpb25JblByb2dyZXNzOiBWYWx1ZU1vZGVsQ2hhaW48Ym9vbGVhbj47XG5cbiAgcHJpdmF0ZSBpc1ZlcnlGaXJzdExvYWQgPSB0cnVlO1xuICBwcml2YXRlIHBsYWNlc0luQW5pbWF0aW9uT3JkZXI6IExpc3RNb2RlbENoYWluPENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+PjtcbiAgcHJpdmF0ZSBhbmltYXRpb25TdXBwb3J0ZWQ6IEJvb2xlYW5WYWx1ZU1vZGVsQ2hhaW47XG4gIHJlYWRvbmx5IGFuaW1hdGlvbkVuYWJsZWQ6IEJvb2xlYW5WYWx1ZU1vZGVsQ2hhaW47XG4gIHJlYWRvbmx5IGF1dGhvcmlzZWQ6IFZhbHVlTW9kZWxDaGFpbjxib29sZWFuPjtcbiAgcmVhZG9ubHkgbm90QXV0aG9yaXNlZE5vdGljZVBvcnRhbDogQ29tcG9uZW50UG9ydGFsPGFueT47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBwbGFjZVJvdXRlcjogUGxhY2VSb3V0ZXIsXG4gICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoQVVQX1BMQUNFX0NPTkZJRykgcmVhZG9ubHkgcGxhY2VDb25maWc6IFBsYWNlQ29uZmlnLFxuICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEFVUF9VTkFVVEhPUklTRURfUExBQ0VfTk9USUNFX0NPTVBPTkVOVCkgdW5hdXRob3Jpc2VkUGxhY2VOb3RpY2U6IENvbnN0cnVjdGFibGU8YW55PixcbiAgICAgICAgICAgICAgQFNraXBTZWxmKCkgQE9wdGlvbmFsKCkgcGFyZW50T3V0bGV0OiBQbGFjZU91dGxldENvbXBvbmVudCxcbiAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgc3VwZXIoKTtcbiAgICBjb25zdCB7IGNoYWluLCB2YWx1ZU9mLCBiZWZvcmUsIHdoZW4sIGFmdGVyLCBvYnNlcnZlLCBzd2l0Y2hPbiB9ID0gRHNsLmRpc3Bvc2VXaXRoKHRoaXMpO1xuXG4gICAgdGhpcy5wYXJlbnRPdXRsZXRNb2RlbCA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbChwYXJlbnRPdXRsZXQpO1xuXG4gICAgY29uc3QgZGVmYXVsdFBsYWNlQW5pbWF0aW9uT3JkZXIgPSBjaGFpbih0aGlzLnBhcmVudE91dGxldE1vZGVsKVxuICAgICAgLnB1bGxWYWx1ZU1vZGVsKG8gPT4gby5hY3RpdmVQbGFjZU1vZGVsKVxuICAgICAgLnBsdWNrKCdwbGFjZURlZmluaXRpb24nKVxuICAgICAgLnBsdWNrTGlzdCgnY2hpbGRyZW4nKVxuICAgICAgLnBsdWNrKCdjb21wb25lbnQnKTtcblxuICAgIGNvbnN0IGFjdGl2YXRlUGxhY2VUeXBlID0gY2hhaW4odGhpcy5hY3RpdmVQbGFjZU1vZGVsKS5tYXAocCA9PiBwLmNvbnN0cnVjdG9yIGFzIENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+KTtcblxuICAgIHRoaXMucGxhY2VzSW5BbmltYXRpb25PcmRlciA9IGNoYWluKHRoaXMuY3VzdG9tUGxhY2VBbmltYXRpb25PcmRlciQpXG4gICAgICAub3RoZXJ3aXNlKGRlZmF1bHRQbGFjZUFuaW1hdGlvbk9yZGVyKTtcblxuICAgIHRoaXMuYWN0aXZlUGxhY2VBbmltYXRpb25Qb3NpdGlvbiA9IHRoaXMucGxhY2VzSW5BbmltYXRpb25PcmRlclxuICAgICAgLnJlZHVjZSgocGxhY2VzSW5PcmRlcikgPT4ge1xuICAgICAgICBsZXQgcGxhY2VJbmRleCA9IDA7XG4gICAgICAgIGlmIChhY3RpdmF0ZVBsYWNlVHlwZS52YWx1ZSkge1xuICAgICAgICAgIHBsYWNlSW5kZXggPSBwbGFjZXNJbk9yZGVyLmluZGV4T2YoYWN0aXZhdGVQbGFjZVR5cGUudmFsdWUpO1xuICAgICAgICAgIGlmIChpc05pbCh0aGlzLmluaXRpYWxQbGFjZUluZGV4KSkge1xuICAgICAgICAgICAgdGhpcy5pbml0aWFsUGxhY2VJbmRleCA9IHBsYWNlSW5kZXg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpc05pbCh0aGlzLmluaXRpYWxQbGFjZUluZGV4KSA/IDAgOiBwbGFjZUluZGV4IC0gdGhpcy5pbml0aWFsUGxhY2VJbmRleDtcbiAgICAgIH0sIHsgZGVwZW5kc09uOiBhY3RpdmF0ZVBsYWNlVHlwZSB9KTtcblxuICAgIHRoaXMuYW5pbWF0aW9uU3VwcG9ydGVkID0gdGhpcy5wbGFjZXNJbkFuaW1hdGlvbk9yZGVyLmNvdW50KCkuaXNHcmVhdGVyVGhhbigwKTtcbiAgICB0aGlzLmFuaW1hdGlvbkVuYWJsZWQgPSB2YWx1ZU9mLmFsbChcbiAgICAgIHRoaXMuYW5pbWF0ZSQsXG4gICAgICB0aGlzLmFuaW1hdGlvblN1cHBvcnRlZFxuICAgICkuYXJlVHJ1dGh5KCk7XG5cbiAgICAvLyBFeHRyYWN0IG91ciB2aXNpdCBtb2RlbCBmcm9tIHRoZSBwbGFjZSByb3V0ZXIuXG4gICAgdGhpcy5fYWN0aXZlUGxhY2VEZWZpbml0aW9uID0gY2hhaW4odGhpcy5fYWN0aXZlUGxhY2VNb2RlbCkucGx1Y2soJ3BsYWNlRGVmaW5pdGlvbicpO1xuICAgIHRoaXMuY3VycmVudFZpc2l0U2VnbWVudCQgPSBjaGFpbihwbGFjZVJvdXRlci5hY3RpdmVWaXNpdCQpLm1hcCh2aXNpdCA9PiB2aXNpdC5nZXRTZWdtZW50Rm9yKHRoaXMuX2FjdGl2ZVBsYWNlRGVmaW5pdGlvbi52YWx1ZSksIHsgZGVwZW5kc09uOiB0aGlzLl9hY3RpdmVQbGFjZURlZmluaXRpb24gfSk7XG5cbiAgICB0aGlzLm5hdmlnYXRpb25JblByb2dyZXNzID0gY2hhaW4odGhpcy5wbGFjZVJvdXRlci5uYXZpZ2F0aW9uSW5Qcm9ncmVzcyQpO1xuXG4gICAgd2hlbih0aGlzLm5hdmlnYXRpb25JblByb2dyZXNzKS5iZWNvbWVzRmFsc2V5KCgpID0+IHtcbiAgICAgIHRoaXMuY2hlY2tTdGF0ZUFuZEluaXRpYWxpc2UoKTtcbiAgICB9KTtcbiAgICB3aGVuKHRoaXMub3V0bGV0QWN0aXZhdGVkKS5iZWNvbWVzVHJ1dGh5KCgpID0+IHtcbiAgICAgIHRoaXMuY2hlY2tTdGF0ZUFuZEluaXRpYWxpc2UoKTtcbiAgICB9KTtcblxuICAgIGNoYWluKHRoaXMuX2FjdGl2ZVBsYWNlTW9kZWwpXG4gICAgICAucG9zdHBvbmVXaGlsZSh0aGlzLm5hdmlnYXRpb25JblByb2dyZXNzKVxuICAgICAgLnN1YnNjcmliZShwbGFjZSA9PiB0aGlzLnBsYWNlQ2hhbmdlZC5lbWl0KHBsYWNlKSk7XG5cbiAgICB0aGlzLmF1dGhvcmlzZWQgPSBjaGFpbihwbGFjZVJvdXRlci5hdXRoU2VydmljZS5hY2Nlc3NHdWFyZCQpLm1hcChndWFyZCA9PiBndWFyZC5pc0F1dGhvcmlzZWQodGhpcy5fYWN0aXZlUGxhY2VEZWZpbml0aW9uLnZhbHVlKSwge1xuICAgICAgZGVwZW5kc09uOiB0aGlzLl9hY3RpdmVQbGFjZURlZmluaXRpb24sXG4gICAgICBwb3N0cG9uZVdoaWxlOiBjaGFpbih0aGlzLl9hY3RpdmVQbGFjZURlZmluaXRpb24pLmlzTmlsKClcbiAgICB9KS5vdGhlcndpc2UodHJ1ZSk7IC8vIGlmIHdlIGRvbid0IGhhdmUgYSBwbGFjZSBkZWYgeWV0IHdlIG5lZWQgdG8gc2hvdyB0aGUgb3V0bGV0IHNvIHdlIGdldCBvbmUgaW5qZWN0ZWQuXG5cbiAgICB0aGlzLm5vdEF1dGhvcmlzZWROb3RpY2VQb3J0YWwgPSBuZXcgQ29tcG9uZW50UG9ydGFsKHVuYXV0aG9yaXNlZFBsYWNlTm90aWNlID8/IE5vdEF1dGhvcmlzZWROb3RpY2VDb21wb25lbnQpO1xuICB9XG5cbiAgZ2V0QW5pbWF0aW9uT3JkZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlUGxhY2VBbmltYXRpb25Qb3NpdGlvbi52YWx1ZTtcbiAgfVxuXG4gIGdldCBhbmltYXRpb25EdXJhdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5wbGFjZUNvbmZpZyAmJiB0aGlzLnBsYWNlQ29uZmlnLmFuaW1hdGlvbkR1cmF0aW9uID8gdGhpcy5wbGFjZUNvbmZpZy5hbmltYXRpb25EdXJhdGlvbiA6ICc1MDBtcyc7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5hdXRob3Jpc2VkXCIpXG4gIGdldCBpc0F1dGhvcmlzZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXV0aG9yaXNlZC52YWx1ZTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGdldCBwYXJlbnRPdXRsZXQoKTogUGxhY2VPdXRsZXRDb21wb25lbnQge1xuICAgIHJldHVybiB0aGlzLnBhcmVudE91dGxldE1vZGVsLnZhbHVlO1xuICB9XG5cbiAgZ2V0IGFjdGl2ZVBsYWNlTW9kZWwoKTogVmFsdWVNb2RlbDxQbGFjZUNvbXBvbmVudD4ge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmVQbGFjZU1vZGVsLnJlYWRvbmx5JDtcbiAgfVxuXG4gIGdldCBhY3RpdmF0ZWRSb3V0ZU1vZGVsKCk6IFZhbHVlTW9kZWw8QWN0aXZhdGVkUm91dGU+IHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZhdGVkUm91dGVNb2RlbC5yZWFkb25seSQ7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBvbk91dGxldEFjdGl2YXRlZChyb3V0ZXJPdXRsZXQ6IFJvdXRlck91dGxldCwgcGxhY2U6IFBsYWNlQ29tcG9uZW50KSB7XG4gICAgdGhpcy5fYWN0aXZhdGVkUm91dGVNb2RlbC52YWx1ZSA9IHJvdXRlck91dGxldC5hY3RpdmF0ZWRSb3V0ZTtcbiAgICB0aGlzLl9hY3RpdmVQbGFjZU1vZGVsLnZhbHVlID0gcGxhY2U7XG4gICAgdGhpcy52YWxpZGF0ZUFuaW1hdGlvblN0YXRlKHBsYWNlKTtcbiAgICB0aGlzLm91dGxldEFjdGl2YXRlZC52YWx1ZSA9IHRydWU7XG4gICAgdGhpcy5jaGVja1N0YXRlQW5kSW5pdGlhbGlzZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZUFuaW1hdGlvblN0YXRlKHBsYWNlOiBQbGFjZUNvbXBvbmVudCkge1xuICAgIGlmICh0aGlzLmFuaW1hdGUkLnZhbHVlKSB7XG4gICAgICBpZiAodGhpcy5wbGFjZXNJbkFuaW1hdGlvbk9yZGVyLmxlbmd0aCA8IDEpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcignUGxhY2VPdXRsZXQuYW5pbWF0ZSA9PT0gdHJ1ZSBidXQgcGxhY2VBbmltYXRpb25PcmRlciBoYXMgbm90IGJlZW4gc2V0LiBBbmltYXRpb24gaXMgZGlzYWJsZWQuJyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoIXRoaXMucGxhY2VzSW5BbmltYXRpb25PcmRlci5xdWVyeSgpLmluY2x1ZGVzKHBsYWNlLnBsYWNlRGVmaW5pdGlvbi5jb21wb25lbnQpKSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihgUGxhY2VPdXRsZXQuYW5pbWF0ZSA9PT0gdHJ1ZSBidXQgcGxhY2VBbmltYXRpb25PcmRlciBkb2Vzbid0IGNvbnRhaW4gJHtwbGFjZS5wbGFjZURlZmluaXRpb24uY29tcG9uZW50Lm5hbWV9LmApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgb25PdXRsZXREZWFjdGl2YXRlZCgpIHtcbiAgICB0aGlzLm91dGxldEFjdGl2YXRlZC52YWx1ZSA9IGZhbHNlO1xuICAgIHRoaXMuX2FjdGl2ZVBsYWNlTW9kZWwudmFsdWUgPSBudWxsO1xuICAgIHRoaXMuX2FjdGl2YXRlZFJvdXRlTW9kZWwudmFsdWUgPSBudWxsO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgcHJpdmF0ZSBjaGVja1N0YXRlQW5kSW5pdGlhbGlzZSgpIHtcbiAgICBjb25zdCByb3V0ZXJWaXNpdCA9IHRoaXMuY3VycmVudFZpc2l0U2VnbWVudCQudmFsdWU7XG4gICAgY29uc3QgYWN0aXZlUGxhY2UgPSB0aGlzLmFjdGl2ZVBsYWNlTW9kZWwudmFsdWU7XG4gICAgaWYgKHJvdXRlclZpc2l0ICYmIGFjdGl2ZVBsYWNlICYmICFhY3RpdmVQbGFjZS5pc0luaXRpYWxpc2VkKCkpIHtcbiAgICAgIGlmIChyb3V0ZXJWaXNpdC5wbGFjZURlZmluaXRpb24gIT09IGFjdGl2ZVBsYWNlLnBsYWNlRGVmaW5pdGlvbikge1xuICAgICAgICBsYW5nLmlsbGVnYWxTdGF0ZSgnd3JvbmcgdmlzaXQhISEnKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuaW5pdGlhbGlzZVBsYWNlKHJvdXRlclZpc2l0LCBhY3RpdmVQbGFjZSk7XG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluaXRpYWxpc2VQbGFjZShyb3V0ZXJWaXNpdDogVmlzaXRTZWdtZW50LCBhY3RpdmVQbGFjZTogUGxhY2VDb21wb25lbnQpIHtcbiAgICBjb25zdCB2aXNpdE1vZGVsID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsPFZpc2l0U2VnbWVudD4ocm91dGVyVmlzaXQpO1xuICAgIERlYnVnQ29udGV4dC50YWcodmlzaXRNb2RlbCwgYFBsYWNlT3V0bGV0Q29tcG9uZW50WyR7YWN0aXZlUGxhY2UuY29uc3RydWN0b3IubmFtZX0pXS52aXNpdE1vZGVsYCk7XG4gICAgYWN0aXZlUGxhY2UuaW5pdGlhbGlzZVZpc2l0KHJvdXRlclZpc2l0LCAoaXMsIHdhcykgPT4ge1xuICAgICAgdGhpcy5ub3RpZnlDb21wb25lbnRWaXNpdFNlZ21lbnRDaGFuZ2VkKGlzLCB3YXMpO1xuICAgIH0pO1xuICAgIGNvbnN0IGZpbmlzaFBsYWNlTG9hZCA9ICgpID0+IHtcbiAgICAgIHRoaXMuX2FjdGl2ZVBsYWNlTW9kZWwudmFsdWUuX25vdGlmeUFjdGl2ZSh0cnVlKTtcbiAgICB9O1xuICAgIGlmICghdGhpcy5hbmltYXRpb25FbmFibGVkLnZhbHVlIHx8IHRoaXMuaXNWZXJ5Rmlyc3RMb2FkKSB7XG4gICAgICAvLyBpZiBhbmltYXRpb24gaXMgZGlzYWJsZWQgb3IgdGhpcyBpcyB0aGUgdmVyeSBmaXJzdCBsb2FkIHRoZW5cbiAgICAgIC8vIHdlIHdvbid0IGdldCBvdXIgYW5pbWF0aW9uIGRvbmUgY2FsbGJhY2sgc28gd2UgZmluaXNoIHRoZVxuICAgICAgLy8gcHJvY2VzcyBoZXJlIGFuZCBub3cuXG4gICAgICB0aGlzLmlzVmVyeUZpcnN0TG9hZCA9IGZhbHNlO1xuICAgICAgZmluaXNoUGxhY2VMb2FkKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMub25BbmltYXRpb25GaW5pc2hlZEpvYiA9IGZpbmlzaFBsYWNlTG9hZDtcbiAgICB9XG4gICAgY29uc3QgeyB3aGVuLCBjaGFpbiwgdmFsdWVPZiB9ID0gRHNsLmRpc3Bvc2VXaXRoKGFjdGl2ZVBsYWNlKTtcbiAgICB3aGVuKHRoaXMuY3VycmVudFZpc2l0U2VnbWVudCQpXG4gICAgICAuY2hhbmdlcyh2aXNpdCA9PiB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKFwicm91dGVyVmlzaXRNb2RlbC5jaGFuZ2VcIiwgeyByb3V0ZXJWaXNpdE1vZGVsOiB0aGlzLnJvdXRlclZpc2l0TW9kZWwudmFsdWUgfSlcbiAgICAgICAgdGhpcy5wdXNoVmlzaXRDaGFuZ2VUb0NvbXBvbmVudChhY3RpdmVQbGFjZSwgdmlzaXQpO1xuICAgICAgfSwge1xuICAgICAgICB1bmxlc3M6IHZhbHVlT2YuYW55KFxuICAgICAgICAgIHRoaXMuX2lzUHVzaGluZ1Zpc2l0VG9Sb3V0ZXIsXG4gICAgICAgICAgdGhpcy5jdXJyZW50VmlzaXRTZWdtZW50JC5pc05pbCgpXG4gICAgICAgICkuYXJlVHJ1dGh5KClcbiAgICAgIH0pO1xuICAgIC8vIGNoYWluKHRoaXMuY3VycmVudFZpc2l0U2VnbWVudCQpLnN1YnNjcmliZShpdCA9PiB7XG4gICAgLy8gICBpZiAoaXQpIHtcbiAgICAvLyAgICAgY29uc29sZS5sb2coXCJQbGFjZU91dGxldCBzZWdtZW50IHVwZGF0ZWRcIiwgaXQudG9EZWJ1Z1N0cmluZygpLCB7XG4gICAgLy8gICAgICAgaXNQdXNoaW5nOiB0aGlzLl9pc1B1c2hpbmdWaXNpdFRvUm91dGVyLnZhbHVlLFxuICAgIC8vICAgICAgIHNlZ21lbnQ6IHRoaXMuY3VycmVudFZpc2l0U2VnbWVudCQudmFsdWU/LnRvRGVidWdTdHJpbmcoKVxuICAgIC8vICAgICB9KVxuICAgIC8vICAgfVxuICAgIC8vIH0pXG4gIH1cblxuICBwcml2YXRlIHB1c2hWaXNpdENoYW5nZVRvQ29tcG9uZW50KGFjdGl2ZVBsYWNlOiBQbGFjZUNvbXBvbmVudCwgc2VnbWVudDogVmlzaXRTZWdtZW50KSB7XG4gICAgLy8gY29uc29sZS5sb2coXCJQbGFjZU91dGxldC5wdXNoVmlzaXRDaGFuZ2VUb0NvbXBvbmVudFwiLCBzZWdtZW50LnRvRGVidWdTdHJpbmcoKSk7XG4gICAgYWN0aXZlUGxhY2UudXBkYXRlVmlzaXQoc2VnbWVudCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIG5vdGlmeUNvbXBvbmVudFZpc2l0U2VnbWVudENoYW5nZWQoaXM6IFZpc2l0U2VnbWVudCwgd2FzOiBWaXNpdFNlZ21lbnQpIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5faXNQdXNoaW5nVmlzaXRUb1JvdXRlci52YWx1ZSA9IHRydWU7XG4gICAgICBhd2FpdCB0aGlzLnBsYWNlUm91dGVyLm5vdGlmeVZpc2l0U2VnbWVudENoYW5nZWQoaXMsIHdhcyk7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuX2lzUHVzaGluZ1Zpc2l0VG9Sb3V0ZXIudmFsdWUgPSBmYWxzZTtcbiAgICB9XG4gICAgLy8gc2FuaXRpc2VycyBtYXkgaGF2ZSBhZGp1c3RlZCBvdGhlciB2YWx1ZXMgaW4gdGhlIHZpc2l0IHRvIHdlIGNoZWNrIGFuZCB3cml0ZSBpdCBiYWNrLlxuICAgIGNvbnN0IGFuZEJlY2FtZSA9IHRoaXMuY3VycmVudFZpc2l0U2VnbWVudCQudmFsdWU7IC8vIHRoaXMgaXMgb2NjYXNpb25hbGx5IG51bGwuLi4gbmVlZCB0byBpbnZlc3RpZ2F0ZSBpZiB0aGF0J3MgYSBub3JtYWwgc3RhdGUgb3Igbm90LlxuICAgIC8vIGNvbnNvbGUubG9nKFwiUGxhY2VPdXRsZXQubm90aWZ5Q29tcG9uZW50VmlzaXRTZWdtZW50Q2hhbmdlZFwiLCB7IGlzLCB3YXMsIGFuZEJlY2FtZSB9KVxuICAgIGlmIChhbmRCZWNhbWUgJiYgYW5kQmVjYW1lLmhhc0NoYW5nZWRGcm9tKGlzKSkge1xuICAgICAgdGhpcy5wdXNoVmlzaXRDaGFuZ2VUb0NvbXBvbmVudCh0aGlzLmFjdGl2ZVBsYWNlTW9kZWwudmFsdWUsIGFuZEJlY2FtZSlcbiAgICB9XG4gIH1cblxuLy8gQFRyYWNlKClcbiAgYW5pbWF0aW9uU3RhcnRlZCgpIHtcbiAgICAvLyBjb25zb2xlLmxvZyh7IGFjdGl2ZVBsYWNlOiB0aGlzLl9hY3RpdmVQbGFjZU1vZGVsLnZhbHVlIH0pO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgYW5pbWF0aW9uRG9uZSgpIHtcbiAgICBpZiAodGhpcy5vbkFuaW1hdGlvbkZpbmlzaGVkSm9iKSB7XG4gICAgICB0aGlzLm9uQW5pbWF0aW9uRmluaXNoZWRKb2IoKTtcbiAgICAgIHRoaXMub25BbmltYXRpb25GaW5pc2hlZEpvYiA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImFuaW1hdGlvbkVuYWJsZWQudmFsdWVcIj5cbiAgPGRpdiBjbGFzcz1cInJvdXRlci1vdXRsZXQtY29udGFpbmVyXCJcbiAgICAgICBjZGtTY3JvbGxhYmxlXG4gICAgICAgW0Byb3V0ZUFuaW1hdGlvbnNdPVwie3ZhbHVlOiBnZXRBbmltYXRpb25PcmRlcigpLCBwYXJhbXM6e2R1cmF0aW9uOiBhbmltYXRpb25EdXJhdGlvbn19XCJcbiAgICAgICAoQHJvdXRlQW5pbWF0aW9ucy5zdGFydCk9XCJhbmltYXRpb25TdGFydGVkKClcIlxuICAgICAgIChAcm91dGVBbmltYXRpb25zLmRvbmUpPVwiYW5pbWF0aW9uRG9uZSgpXCJcbiAgPlxuICAgIDxyb3V0ZXItb3V0bGV0ICNyb3V0ZXJPdXRsZXQ9XCJvdXRsZXRcIlxuICAgICAgICAgICAgICAgICAgIChhY3RpdmF0ZSk9XCJvbk91dGxldEFjdGl2YXRlZChyb3V0ZXJPdXRsZXQsICRldmVudClcIlxuICAgICAgICAgICAgICAgICAgIChkZWFjdGl2YXRlKT1cIm9uT3V0bGV0RGVhY3RpdmF0ZWQoKVwiPlxuICAgIDwvcm91dGVyLW91dGxldD5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFhbmltYXRpb25FbmFibGVkLnZhbHVlXCI+XG4gIDxkaXYgY2xhc3M9XCJyb3V0ZXItb3V0bGV0LWNvbnRhaW5lclwiXG4gICAgICAgY2RrU2Nyb2xsYWJsZT5cbiAgICA8cm91dGVyLW91dGxldCAjcm91dGVyT3V0bGV0PVwib3V0bGV0XCJcbiAgICAgICAgICAgICAgICAgICAoYWN0aXZhdGUpPVwib25PdXRsZXRBY3RpdmF0ZWQocm91dGVyT3V0bGV0LCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAoZGVhY3RpdmF0ZSk9XCJvbk91dGxldERlYWN0aXZhdGVkKClcIj5cbiAgICA8L3JvdXRlci1vdXRsZXQ+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG5cbjxkaXYgIGNsYXNzPVwibm90LWF1dGhvcmlzZWQtY29tcG9uZW50LWNvbnRhaW5lclwiICpuZ0lmPVwiIWF1dGhvcmlzZWQudmFsdWVcIj5cbiAgPG5nLXRlbXBsYXRlIFtjZGtQb3J0YWxPdXRsZXRdPVwibm90QXV0aG9yaXNlZE5vdGljZVBvcnRhbFwiPjwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
281
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2Utb3V0bGV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL3BsYWNlL2NvbXBvbmVudHMvcGxhY2Utb3V0bGV0L3BsYWNlLW91dGxldC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdWktcG93ZXJ1cHMvc3JjL2xpYi9wbGFjZS9jb21wb25lbnRzL3BsYWNlLW91dGxldC9wbGFjZS1vdXRsZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNwRCxPQUFPLEVBRUwsU0FBUyxFQUNULFlBQVksRUFDWixXQUFXLEVBQ1gsTUFBTSxFQUNOLGNBQWMsRUFDZCxLQUFLLEVBQ0wsUUFBUSxFQUNSLE1BQU0sRUFDTixRQUFRLEVBQ1IsU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBaUIsTUFBTSxFQUFFLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ3JFLE9BQU8sRUFHTCxZQUFZLEVBQ1osR0FBRyxFQUNILElBQUksRUFDSixTQUFTLEVBRVQsaUJBQWlCLEVBQ2pCLE9BQU8sRUFDUCxPQUFPLEVBQ1AsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixVQUFVLEVBRVgsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sV0FBVyxDQUFDO0FBQ2hDLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDBDQUEwQyxDQUFDO0FBRzdFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBYyxNQUFNLG9CQUFvQixDQUFDO0FBRWpFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUcvQyxPQUFPLEVBQUMsNEJBQTRCLEVB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QUNILENBQUM7dUdBeFBVLG9CQUFvQixtRUFpREMsZ0JBQWdCLDZCQUNoQix1Q0FBdUM7MkZBbEQ1RCxvQkFBb0Isb2hCQ3JEakMsK2lDQTJCQSxtNkJEd0JjLENBQUMsMEJBQTBCLENBQUM7O0FBSy9CO0lBREMsT0FBTyxFQUFFOztvREFDOEI7QUFHeEM7SUFEQyxpQkFBaUIsRUFBRTs7bURBQ0w7QUFLZjtJQUQyQixPQUFPLEVBQUU7O3NFQUMyQztBQUkvRTtJQURzQixnQkFBZ0IsRUFBRTs7cUVBQ2lDOzJGQWZ2RSxvQkFBb0I7a0JBTmhDLFNBQVM7K0JBQ0Usa0JBQWtCLGNBR2hCLENBQUMsMEJBQTBCLENBQUM7OzBCQW1EM0IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxnQkFBZ0I7OzBCQUNuQyxRQUFROzswQkFBSSxNQUFNOzJCQUFDLHVDQUF1Qzs7MEJBQzFELFFBQVE7OzBCQUFJLFFBQVE7NENBaER4QixRQUFRO3NCQURoQixLQUFLO2dCQUlHLE9BQU87c0JBRGYsS0FBSztnQkFNRywwQkFBMEI7c0JBRGxDLEtBQUs7dUJBQUMsMEJBQTBCO2dCQUt4Qix5QkFBeUI7c0JBRGpDLEtBQUs7dUJBQUMscUJBQXFCO2dCQUluQixZQUFZO3NCQURwQixNQUFNO2dCQUlQLFNBQVM7c0JBRFIsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQW9HdEMsWUFBWTtzQkFEZixXQUFXO3VCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50UG9ydGFsfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIEluamVjdCxcbiAgSW5qZWN0aW9uVG9rZW4sXG4gIElucHV0LFxuICBPcHRpb25hbCxcbiAgT3V0cHV0LFxuICBTa2lwU2VsZixcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyLCBSb3V0ZXJPdXRsZXR9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1xuICBCb29sZWFuVmFsdWVNb2RlbENoYWluLFxuICBDb25zdHJ1Y3RhYmxlLFxuICBEZWJ1Z0NvbnRleHQsXG4gIERzbCxcbiAgbGFuZyxcbiAgTGlzdE1vZGVsLFxuICBMaXN0TW9kZWxDaGFpbixcbiAgTXV0YWJsZVZhbHVlTW9kZWwsXG4gIFByb3hpZnksXG4gIHByb3hpZnksXG4gIFN0b3JlSW5MaXN0TW9kZWwsXG4gIFN0b3JlSW5WYWx1ZU1vZGVsLFxuICBWYWx1ZU1vZGVsLFxuICBWYWx1ZU1vZGVsQ2hhaW5cbn0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuXG5pbXBvcnQge2lzTmlsfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHtEaXNwb3NhYmxlQ29tcG9uZW50fSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL2Rpc3Bvc2FibGUtY29tcG9uZW50JztcbmltcG9ydCB7UGxhY2VDb21wb25lbnR9IGZyb20gJy4uLy4uL3BsYWNlLWNvbXBvbmVudCc7XG5cbmltcG9ydCB7QVVQX1BMQUNFX0NPTkZJRywgUGxhY2VDb25maWd9IGZyb20gJy4uLy4uL3BsYWNlLWNvbmZpZyc7XG5pbXBvcnQge1BsYWNlRGVmaW5pdGlvbn0gZnJvbSAnLi4vLi4vcGxhY2UtZGVmaW5pdGlvbic7XG5pbXBvcnQge1BsYWNlUm91dGVyfSBmcm9tICcuLi8uLi9wbGFjZS1yb3V0ZXInO1xuaW1wb3J0IHtWaXNpdFNlZ21lbnR9IGZyb20gJy4uLy4uL3Zpc2l0LXNlZ21lbnQnO1xuXG5pbXBvcnQge05vdEF1dGhvcmlzZWROb3RpY2VDb21wb25lbnR9IGZyb20gJy4uL25vdC1hdXRob3Jpc2VkLW5vdGljZS9ub3QtYXV0aG9yaXNlZC1ub3RpY2UuY29tcG9uZW50JztcbmltcG9ydCB7TEVGVF9SSUdIVF9QTEFDRV9BTklNQVRJT059IGZyb20gJy4vcm91dGUtYW5pbWF0aW9ucyc7XG5cblxuZXhwb3J0IGNvbnN0IEFVUF9VTkFVVEhPUklTRURfUExBQ0VfTk9USUNFX0NPTVBPTkVOVCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxDb25zdHJ1Y3RhYmxlPGFueT4+KCdBVVBfVU5BVVRIT1JJU0VEX1BMQUNFX0NPTVBPTkVOVCcpO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdXAtcGxhY2Utb3V0bGV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BsYWNlLW91dGxldC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BsYWNlLW91dGxldC5jb21wb25lbnQuc2NzcyddLFxuICBhbmltYXRpb25zOiBbTEVGVF9SSUdIVF9QTEFDRV9BTklNQVRJT05dXG59KVxuZXhwb3J0IGNsYXNzIFBsYWNlT3V0bGV0Q29tcG9uZW50IGV4dGVuZHMgRGlzcG9zYWJsZUNvbXBvbmVudCB7XG5cbiAgQElucHV0KCkgQFByb3hpZnkoKVxuICBhY2Nlc3NvciBhbmltYXRlJCA9IHByb3hpZnkoVmFsdWVNb2RlbDxib29sZWFuPik7XG5cbiAgQElucHV0KCkgQFN0b3JlSW5WYWx1ZU1vZGVsKClcbiAgYWNjZXNzb3IgYW5pbWF0ZSA9IHRydWU7XG5cblxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8taW5wdXQtcmVuYW1lXG4gIEBJbnB1dCgncGxhY2VBbmltYXRpb25PcmRlck1vZGVsJykgQFByb3hpZnkoKVxuICBhY2Nlc3NvciBjdXN0b21QbGFjZUFuaW1hdGlvbk9yZGVyJCA9IHByb3hpZnkoTGlzdE1vZGVsPENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+Pik7XG5cbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm5vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ3BsYWNlQW5pbWF0aW9uT3JkZXInKSBAU3RvcmVJbkxpc3RNb2RlbCgpXG4gIGFjY2Vzc29yIGN1c3RvbVBsYWNlQW5pbWF0aW9uT3JkZXI6ICBSZWFkb25seUFycmF5PENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+PjtcblxuICBAT3V0cHV0KClcbiAgcmVhZG9ubHkgcGxhY2VDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxQbGFjZUNvbXBvbmVudD4oKTtcblxuICBAVmlld0NoaWxkKCdyb3V0ZU91dGxldCcsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHJvdXRlck91dDogUm91dGVyT3V0bGV0O1xuXG4gIHByaXZhdGUgb25BbmltYXRpb25GaW5pc2hlZEpvYjogKCkgPT4gdm9pZDtcblxuXG4gIHByaXZhdGUgb3V0bGV0QWN0aXZhdGVkID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsKGZhbHNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYWN0aXZhdGVkUm91dGVNb2RlbCA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbDxBY3RpdmF0ZWRSb3V0ZT4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYWN0aXZlUGxhY2VNb2RlbCA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbDxQbGFjZUNvbXBvbmVudD4oKTtcblxuICByZWFkb25seSBfYWN0aXZlUGxhY2VEZWZpbml0aW9uOiBWYWx1ZU1vZGVsQ2hhaW48UGxhY2VEZWZpbml0aW9uPjtcblxuICBwcml2YXRlIHBhcmVudE91dGxldE1vZGVsOiBNdXRhYmxlVmFsdWVNb2RlbDxQbGFjZU91dGxldENvbXBvbmVudD47XG4gIHB1YmxpYyByZWFkb25seSBhY3RpdmVQbGFjZUFuaW1hdGlvblBvc2l0aW9uOiBWYWx1ZU1vZGVsQ2hhaW48bnVtYmVyPjtcblxuICBwcml2YXRlIGluaXRpYWxQbGFjZUluZGV4OiBudW1iZXIgPSBudWxsO1xuICBwcml2YXRlIGN1cnJlbnRWaXNpdFNlZ21lbnQkOiBWYWx1ZU1vZGVsQ2hhaW48VmlzaXRTZWdtZW50PjtcbiAgcHJpdmF0ZSBfaXNQdXNoaW5nVmlzaXRUb1JvdXRlciA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbDxib29sZWFuPihmYWxzZSk7XG4gIHByaXZhdGUgbmF2aWdhdGlvbkluUHJvZ3Jlc3M6IFZhbHVlTW9kZWxDaGFpbjxib29sZWFuPjtcblxuICBwcml2YXRlIGlzVmVyeUZpcnN0TG9hZCA9IHRydWU7XG4gIHByaXZhdGUgcGxhY2VzSW5BbmltYXRpb25PcmRlcjogTGlzdE1vZGVsQ2hhaW48Q29uc3RydWN0YWJsZTxQbGFjZUNvbXBvbmVudD4+O1xuICBwcml2YXRlIGFuaW1hdGlvblN1cHBvcnRlZDogQm9vbGVhblZhbHVlTW9kZWxDaGFpbjtcbiAgcmVhZG9ubHkgYW5pbWF0aW9uRW5hYmxlZDogQm9vbGVhblZhbHVlTW9kZWxDaGFpbjtcbiAgcmVhZG9ubHkgYXV0aG9yaXNlZDogVmFsdWVNb2RlbENoYWluPGJvb2xlYW4+O1xuICByZWFkb25seSBub3RBdXRob3Jpc2VkTm90aWNlUG9ydGFsOiBDb21wb25lbnRQb3J0YWw8YW55PjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxuICAgICAgICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHBsYWNlUm91dGVyOiBQbGFjZVJvdXRlcixcbiAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChBVVBfUExBQ0VfQ09ORklHKSByZWFkb25seSBwbGFjZUNvbmZpZzogUGxhY2VDb25maWcsXG4gICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoQVVQX1VOQVVUSE9SSVNFRF9QTEFDRV9OT1RJQ0VfQ09NUE9ORU5UKSB1bmF1dGhvcmlzZWRQbGFjZU5vdGljZTogQ29uc3RydWN0YWJsZTxhbnk+LFxuICAgICAgICAgICAgICBAU2tpcFNlbGYoKSBAT3B0aW9uYWwoKSBwYXJlbnRPdXRsZXQ6IFBsYWNlT3V0bGV0Q29tcG9uZW50KSB7XG4gICAgc3VwZXIoKTtcbiAgICBjb25zdCB7IGNoYWluLCB2YWx1ZU9mLCBiZWZvcmUsIHdoZW4sIGFmdGVyLCBvYnNlcnZlLCBzd2l0Y2hPbiB9ID0gRHNsLmRpc3Bvc2VXaXRoKHRoaXMpO1xuXG4gICAgdGhpcy5wYXJlbnRPdXRsZXRNb2RlbCA9IG5ldyBNdXRhYmxlVmFsdWVNb2RlbChwYXJlbnRPdXRsZXQpO1xuXG4gICAgY29uc3QgZGVmYXVsdFBsYWNlQW5pbWF0aW9uT3JkZXIgPSBjaGFpbih0aGlzLnBhcmVudE91dGxldE1vZGVsKVxuICAgICAgLnB1bGxWYWx1ZU1vZGVsKG8gPT4gby5hY3RpdmVQbGFjZU1vZGVsKVxuICAgICAgLnBsdWNrKCdwbGFjZURlZmluaXRpb24nKVxuICAgICAgLnBsdWNrTGlzdCgnY2hpbGRyZW4nKVxuICAgICAgLnBsdWNrKCdjb21wb25lbnQnKTtcblxuICAgIGNvbnN0IGFjdGl2YXRlUGxhY2VUeXBlID0gY2hhaW4odGhpcy5hY3RpdmVQbGFjZU1vZGVsKS5tYXAocCA9PiBwLmNvbnN0cnVjdG9yIGFzIENvbnN0cnVjdGFibGU8UGxhY2VDb21wb25lbnQ+KTtcblxuICAgIHRoaXMucGxhY2VzSW5BbmltYXRpb25PcmRlciA9IGNoYWluKHRoaXMuY3VzdG9tUGxhY2VBbmltYXRpb25PcmRlciQpXG4gICAgICAub3RoZXJ3aXNlKGRlZmF1bHRQbGFjZUFuaW1hdGlvbk9yZGVyKTtcblxuICAgIHRoaXMuYWN0aXZlUGxhY2VBbmltYXRpb25Qb3NpdGlvbiA9IHRoaXMucGxhY2VzSW5BbmltYXRpb25PcmRlclxuICAgICAgLnJlZHVjZUFsbCgocGxhY2VzSW5PcmRlcikgPT4ge1xuICAgICAgICBsZXQgcGxhY2VJbmRleCA9IDA7XG4gICAgICAgIGlmIChhY3RpdmF0ZVBsYWNlVHlwZS52YWx1ZSkge1xuICAgICAgICAgIHBsYWNlSW5kZXggPSBwbGFjZXNJbk9yZGVyLmluZGV4T2YoYWN0aXZhdGVQbGFjZVR5cGUudmFsdWUpO1xuICAgICAgICAgIGlmIChpc05pbCh0aGlzLmluaXRpYWxQbGFjZUluZGV4KSkge1xuICAgICAgICAgICAgdGhpcy5pbml0aWFsUGxhY2VJbmRleCA9IHBsYWNlSW5kZXg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpc05pbCh0aGlzLmluaXRpYWxQbGFjZUluZGV4KSA/IDAgOiBwbGFjZUluZGV4IC0gdGhpcy5pbml0aWFsUGxhY2VJbmRleDtcbiAgICAgIH0sIHsgZGVwZW5kc09uOiBhY3RpdmF0ZVBsYWNlVHlwZSB9KTtcblxuICAgIHRoaXMuYW5pbWF0aW9uU3VwcG9ydGVkID0gdGhpcy5wbGFjZXNJbkFuaW1hdGlvbk9yZGVyLmNvdW50KCkuaXNHcmVhdGVyVGhhbigwKTtcbiAgICB0aGlzLmFuaW1hdGlvbkVuYWJsZWQgPSB2YWx1ZU9mLmFsbChcbiAgICAgIHRoaXMuYW5pbWF0ZSQsXG4gICAgICB0aGlzLmFuaW1hdGlvblN1cHBvcnRlZFxuICAgICkuYXJlVHJ1dGh5KCk7XG5cbiAgICAvLyBFeHRyYWN0IG91ciB2aXNpdCBtb2RlbCBmcm9tIHRoZSBwbGFjZSByb3V0ZXIuXG4gICAgdGhpcy5fYWN0aXZlUGxhY2VEZWZpbml0aW9uID0gY2hhaW4odGhpcy5fYWN0aXZlUGxhY2VNb2RlbCkucGx1Y2soJ3BsYWNlRGVmaW5pdGlvbicpO1xuICAgIHRoaXMuY3VycmVudFZpc2l0U2VnbWVudCQgPSBjaGFpbihwbGFjZVJvdXRlci5hY3RpdmVWaXNpdCQpLm1hcCh2aXNpdCA9PiB2aXNpdC5nZXRTZWdtZW50Rm9yKHRoaXMuX2FjdGl2ZVBsYWNlRGVmaW5pdGlvbi52YWx1ZSksIHsgZGVwZW5kc09uOiB0aGlzLl9hY3RpdmVQbGFjZURlZmluaXRpb24gfSk7XG5cbiAgICB0aGlzLm5hdmlnYXRpb25JblByb2dyZXNzID0gY2hhaW4odGhpcy5wbGFjZVJvdXRlci5uYXZpZ2F0aW9uSW5Qcm9ncmVzcyQpO1xuXG4gICAgd2hlbih0aGlzLm5hdmlnYXRpb25JblByb2dyZXNzKS5iZWNvbWVzRmFsc2V5KCgpID0+IHtcbiAgICAgIHRoaXMuY2hlY2tTdGF0ZUFuZEluaXRpYWxpc2UoKTtcbiAgICB9KTtcbiAgICB3aGVuKHRoaXMub3V0bGV0QWN0aXZhdGVkKS5iZWNvbWVzVHJ1dGh5KCgpID0+IHtcbiAgICAgIHRoaXMuY2hlY2tTdGF0ZUFuZEluaXRpYWxpc2UoKTtcbiAgICB9KTtcblxuICAgIGNoYWluKHRoaXMuX2FjdGl2ZVBsYWNlTW9kZWwpXG4gICAgICAucG9zdHBvbmVXaGlsZSh0aGlzLm5hdmlnYXRpb25JblByb2dyZXNzKVxuICAgICAgLnN1YnNjcmliZShwbGFjZSA9PiB0aGlzLnBsYWNlQ2hhbmdlZC5lbWl0KHBsYWNlKSk7XG5cbiAgICB0aGlzLmF1dGhvcmlzZWQgPSBjaGFpbihwbGFjZVJvdXRlci5hdXRoU2VydmljZS5hY2Nlc3NHdWFyZCQpLm1hcChndWFyZCA9PiBndWFyZC5pc0F1dGhvcmlzZWQodGhpcy5fYWN0aXZlUGxhY2VEZWZpbml0aW9uLnZhbHVlKSwge1xuICAgICAgZGVwZW5kc09uOiB0aGlzLl9hY3RpdmVQbGFjZURlZmluaXRpb24sXG4gICAgICBwb3N0cG9uZVdoaWxlOiBjaGFpbih0aGlzLl9hY3RpdmVQbGFjZURlZmluaXRpb24pLmlzTmlsKClcbiAgICB9KS5vdGhlcndpc2UodHJ1ZSk7IC8vIGlmIHdlIGRvbid0IGhhdmUgYSBwbGFjZSBkZWYgeWV0IHdlIG5lZWQgdG8gc2hvdyB0aGUgb3V0bGV0IHNvIHdlIGdldCBvbmUgaW5qZWN0ZWQuXG5cbiAgICB0aGlzLm5vdEF1dGhvcmlzZWROb3RpY2VQb3J0YWwgPSBuZXcgQ29tcG9uZW50UG9ydGFsKHVuYXV0aG9yaXNlZFBsYWNlTm90aWNlID8/IE5vdEF1dGhvcmlzZWROb3RpY2VDb21wb25lbnQpO1xuICB9XG5cbiAgZ2V0QW5pbWF0aW9uT3JkZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlUGxhY2VBbmltYXRpb25Qb3NpdGlvbi52YWx1ZTtcbiAgfVxuXG4gIGdldCBhbmltYXRpb25EdXJhdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5wbGFjZUNvbmZpZyAmJiB0aGlzLnBsYWNlQ29uZmlnLmFuaW1hdGlvbkR1cmF0aW9uID8gdGhpcy5wbGFjZUNvbmZpZy5hbmltYXRpb25EdXJhdGlvbiA6ICc1MDBtcyc7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5hdXRob3Jpc2VkXCIpXG4gIGdldCBpc0F1dGhvcmlzZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuYXV0aG9yaXNlZC52YWx1ZTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGdldCBwYXJlbnRPdXRsZXQoKTogUGxhY2VPdXRsZXRDb21wb25lbnQge1xuICAgIHJldHVybiB0aGlzLnBhcmVudE91dGxldE1vZGVsLnZhbHVlO1xuICB9XG5cbiAgZ2V0IGFjdGl2ZVBsYWNlTW9kZWwoKTogVmFsdWVNb2RlbDxQbGFjZUNvbXBvbmVudD4ge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmVQbGFjZU1vZGVsLnJlYWRvbmx5JDtcbiAgfVxuXG4gIGdldCBhY3RpdmF0ZWRSb3V0ZU1vZGVsKCk6IFZhbHVlTW9kZWw8QWN0aXZhdGVkUm91dGU+IHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZhdGVkUm91dGVNb2RlbC5yZWFkb25seSQ7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBvbk91dGxldEFjdGl2YXRlZChyb3V0ZXJPdXRsZXQ6IFJvdXRlck91dGxldCwgcGxhY2U6IFBsYWNlQ29tcG9uZW50KSB7XG4gICAgdGhpcy5fYWN0aXZhdGVkUm91dGVNb2RlbC52YWx1ZSA9IHJvdXRlck91dGxldC5hY3RpdmF0ZWRSb3V0ZTtcbiAgICB0aGlzLl9hY3RpdmVQbGFjZU1vZGVsLnZhbHVlID0gcGxhY2U7XG4gICAgdGhpcy52YWxpZGF0ZUFuaW1hdGlvblN0YXRlKHBsYWNlKTtcbiAgICB0aGlzLm91dGxldEFjdGl2YXRlZC52YWx1ZSA9IHRydWU7XG4gICAgdGhpcy5jaGVja1N0YXRlQW5kSW5pdGlhbGlzZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZUFuaW1hdGlvblN0YXRlKHBsYWNlOiBQbGFjZUNvbXBvbmVudCkge1xuICAgIGlmICh0aGlzLmFuaW1hdGUkLnZhbHVlKSB7XG4gICAgICBpZiAodGhpcy5wbGFjZXNJbkFuaW1hdGlvbk9yZGVyLmxlbmd0aCA8IDEpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcignUGxhY2VPdXRsZXQuYW5pbWF0ZSA9PT0gdHJ1ZSBidXQgcGxhY2VBbmltYXRpb25PcmRlciBoYXMgbm90IGJlZW4gc2V0LiBBbmltYXRpb24gaXMgZGlzYWJsZWQuJyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoIXRoaXMucGxhY2VzSW5BbmltYXRpb25PcmRlci5xdWVyeSgpLmluY2x1ZGVzKHBsYWNlLnBsYWNlRGVmaW5pdGlvbi5jb21wb25lbnQpKSB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihgUGxhY2VPdXRsZXQuYW5pbWF0ZSA9PT0gdHJ1ZSBidXQgcGxhY2VBbmltYXRpb25PcmRlciBkb2Vzbid0IGNvbnRhaW4gJHtwbGFjZS5wbGFjZURlZmluaXRpb24uY29tcG9uZW50Lm5hbWV9LmApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgb25PdXRsZXREZWFjdGl2YXRlZCgpIHtcbiAgICB0aGlzLm91dGxldEFjdGl2YXRlZC52YWx1ZSA9IGZhbHNlO1xuICAgIHRoaXMuX2FjdGl2ZVBsYWNlTW9kZWwudmFsdWUgPSBudWxsO1xuICAgIHRoaXMuX2FjdGl2YXRlZFJvdXRlTW9kZWwudmFsdWUgPSBudWxsO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgcHJpdmF0ZSBjaGVja1N0YXRlQW5kSW5pdGlhbGlzZSgpIHtcbiAgICBjb25zdCByb3V0ZXJWaXNpdCA9IHRoaXMuY3VycmVudFZpc2l0U2VnbWVudCQudmFsdWU7XG4gICAgY29uc3QgYWN0aXZlUGxhY2UgPSB0aGlzLmFjdGl2ZVBsYWNlTW9kZWwudmFsdWU7XG4gICAgaWYgKHJvdXRlclZpc2l0ICYmIGFjdGl2ZVBsYWNlICYmICFhY3RpdmVQbGFjZS5pc0luaXRpYWxpc2VkKCkpIHtcbiAgICAgIGlmIChyb3V0ZXJWaXNpdC5wbGFjZURlZmluaXRpb24gIT09IGFjdGl2ZVBsYWNlLnBsYWNlRGVmaW5pdGlvbikge1xuICAgICAgICBsYW5nLmlsbGVnYWxTdGF0ZSgnd3JvbmcgdmlzaXQhISEnKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuaW5pdGlhbGlzZVBsYWNlKHJvdXRlclZpc2l0LCBhY3RpdmVQbGFjZSk7XG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluaXRpYWxpc2VQbGFjZShyb3V0ZXJWaXNpdDogVmlzaXRTZWdtZW50LCBhY3RpdmVQbGFjZTogUGxhY2VDb21wb25lbnQpIHtcbiAgICBjb25zdCB2aXNpdE1vZGVsID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsPFZpc2l0U2VnbWVudD4ocm91dGVyVmlzaXQpO1xuICAgIERlYnVnQ29udGV4dC50YWcodmlzaXRNb2RlbCwgYFBsYWNlT3V0bGV0Q29tcG9uZW50WyR7YWN0aXZlUGxhY2UuY29uc3RydWN0b3IubmFtZX0pXS52aXNpdE1vZGVsYCk7XG4gICAgYWN0aXZlUGxhY2UuaW5pdGlhbGlzZVZpc2l0KHJvdXRlclZpc2l0LCAoaXMsIHdhcykgPT4ge1xuICAgICAgdGhpcy5ub3RpZnlDb21wb25lbnRWaXNpdFNlZ21lbnRDaGFuZ2VkKGlzLCB3YXMpO1xuICAgIH0pO1xuICAgIGNvbnN0IGZpbmlzaFBsYWNlTG9hZCA9ICgpID0+IHtcbiAgICAgIHRoaXMuX2FjdGl2ZVBsYWNlTW9kZWwudmFsdWUuX25vdGlmeUFjdGl2ZSh0cnVlKTtcbiAgICB9O1xuICAgIGlmICghdGhpcy5hbmltYXRpb25FbmFibGVkLnZhbHVlIHx8IHRoaXMuaXNWZXJ5Rmlyc3RMb2FkKSB7XG4gICAgICAvLyBpZiBhbmltYXRpb24gaXMgZGlzYWJsZWQgb3IgdGhpcyBpcyB0aGUgdmVyeSBmaXJzdCBsb2FkIHRoZW5cbiAgICAgIC8vIHdlIHdvbid0IGdldCBvdXIgYW5pbWF0aW9uIGRvbmUgY2FsbGJhY2sgc28gd2UgZmluaXNoIHRoZVxuICAgICAgLy8gcHJvY2VzcyBoZXJlIGFuZCBub3cuXG4gICAgICB0aGlzLmlzVmVyeUZpcnN0TG9hZCA9IGZhbHNlO1xuICAgICAgZmluaXNoUGxhY2VMb2FkKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMub25BbmltYXRpb25GaW5pc2hlZEpvYiA9IGZpbmlzaFBsYWNlTG9hZDtcbiAgICB9XG4gICAgY29uc3QgeyB3aGVuLCBjaGFpbiwgdmFsdWVPZiB9ID0gRHNsLmRpc3Bvc2VXaXRoKGFjdGl2ZVBsYWNlKTtcbiAgICB3aGVuKHRoaXMuY3VycmVudFZpc2l0U2VnbWVudCQpXG4gICAgICAuY2hhbmdlcyh2aXNpdCA9PiB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKFwicm91dGVyVmlzaXRNb2RlbC5jaGFuZ2VcIiwgeyByb3V0ZXJWaXNpdE1vZGVsOiB0aGlzLnJvdXRlclZpc2l0TW9kZWwudmFsdWUgfSlcbiAgICAgICAgdGhpcy5wdXNoVmlzaXRDaGFuZ2VUb0NvbXBvbmVudChhY3RpdmVQbGFjZSwgdmlzaXQpO1xuICAgICAgfSwge1xuICAgICAgICB1bmxlc3M6IHZhbHVlT2YuYW55KFxuICAgICAgICAgIHRoaXMuX2lzUHVzaGluZ1Zpc2l0VG9Sb3V0ZXIsXG4gICAgICAgICAgdGhpcy5jdXJyZW50VmlzaXRTZWdtZW50JC5pc05pbCgpXG4gICAgICAgICkuYXJlVHJ1dGh5KClcbiAgICAgIH0pO1xuICAgIC8vIGNoYWluKHRoaXMuY3VycmVudFZpc2l0U2VnbWVudCQpLnN1YnNjcmliZShpdCA9PiB7XG4gICAgLy8gICBpZiAoaXQpIHtcbiAgICAvLyAgICAgY29uc29sZS5sb2coXCJQbGFjZU91dGxldCBzZWdtZW50IHVwZGF0ZWRcIiwgaXQudG9EZWJ1Z1N0cmluZygpLCB7XG4gICAgLy8gICAgICAgaXNQdXNoaW5nOiB0aGlzLl9pc1B1c2hpbmdWaXNpdFRvUm91dGVyLnZhbHVlLFxuICAgIC8vICAgICAgIHNlZ21lbnQ6IHRoaXMuY3VycmVudFZpc2l0U2VnbWVudCQudmFsdWU/LnRvRGVidWdTdHJpbmcoKVxuICAgIC8vICAgICB9KVxuICAgIC8vICAgfVxuICAgIC8vIH0pXG4gIH1cblxuICBwcml2YXRlIHB1c2hWaXNpdENoYW5nZVRvQ29tcG9uZW50KGFjdGl2ZVBsYWNlOiBQbGFjZUNvbXBvbmVudCwgc2VnbWVudDogVmlzaXRTZWdtZW50KSB7XG4gICAgLy8gY29uc29sZS5sb2coXCJQbGFjZU91dGxldC5wdXNoVmlzaXRDaGFuZ2VUb0NvbXBvbmVudFwiLCBzZWdtZW50LnRvRGVidWdTdHJpbmcoKSk7XG4gICAgYWN0aXZlUGxhY2UudXBkYXRlVmlzaXQoc2VnbWVudCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIG5vdGlmeUNvbXBvbmVudFZpc2l0U2VnbWVudENoYW5nZWQoaXM6IFZpc2l0U2VnbWVudCwgd2FzOiBWaXNpdFNlZ21lbnQpIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5faXNQdXNoaW5nVmlzaXRUb1JvdXRlci52YWx1ZSA9IHRydWU7XG4gICAgICBhd2FpdCB0aGlzLnBsYWNlUm91dGVyLm5vdGlmeVZpc2l0U2VnbWVudENoYW5nZWQoaXMsIHdhcyk7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuX2lzUHVzaGluZ1Zpc2l0VG9Sb3V0ZXIudmFsdWUgPSBmYWxzZTtcbiAgICB9XG4gICAgLy8gc2FuaXRpc2VycyBtYXkgaGF2ZSBhZGp1c3RlZCBvdGhlciB2YWx1ZXMgaW4gdGhlIHZpc2l0IHRvIHdlIGNoZWNrIGFuZCB3cml0ZSBpdCBiYWNrLlxuICAgIGNvbnN0IGFuZEJlY2FtZSA9IHRoaXMuY3VycmVudFZpc2l0U2VnbWVudCQudmFsdWU7IC8vIHRoaXMgaXMgb2NjYXNpb25hbGx5IG51bGwuLi4gbmVlZCB0byBpbnZlc3RpZ2F0ZSBpZiB0aGF0J3MgYSBub3JtYWwgc3RhdGUgb3Igbm90LlxuICAgIC8vIGNvbnNvbGUubG9nKFwiUGxhY2VPdXRsZXQubm90aWZ5Q29tcG9uZW50VmlzaXRTZWdtZW50Q2hhbmdlZFwiLCB7IGlzLCB3YXMsIGFuZEJlY2FtZSB9KVxuICAgIGlmIChhbmRCZWNhbWUgJiYgYW5kQmVjYW1lLmhhc0NoYW5nZWRGcm9tKGlzKSkge1xuICAgICAgdGhpcy5wdXNoVmlzaXRDaGFuZ2VUb0NvbXBvbmVudCh0aGlzLmFjdGl2ZVBsYWNlTW9kZWwudmFsdWUsIGFuZEJlY2FtZSlcbiAgICB9XG4gIH1cblxuLy8gQFRyYWNlKClcbiAgYW5pbWF0aW9uU3RhcnRlZCgpIHtcbiAgICAvLyBjb25zb2xlLmxvZyh7IGFjdGl2ZVBsYWNlOiB0aGlzLl9hY3RpdmVQbGFjZU1vZGVsLnZhbHVlIH0pO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgYW5pbWF0aW9uRG9uZSgpIHtcbiAgICBpZiAodGhpcy5vbkFuaW1hdGlvbkZpbmlzaGVkSm9iKSB7XG4gICAgICB0aGlzLm9uQW5pbWF0aW9uRmluaXNoZWRKb2IoKTtcbiAgICAgIHRoaXMub25BbmltYXRpb25GaW5pc2hlZEpvYiA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImFuaW1hdGlvbkVuYWJsZWQudmFsdWVcIj5cbiAgPGRpdiBjbGFzcz1cInJvdXRlci1vdXRsZXQtY29udGFpbmVyXCJcbiAgICAgICBjZGtTY3JvbGxhYmxlXG4gICAgICAgW0Byb3V0ZUFuaW1hdGlvbnNdPVwie3ZhbHVlOiBnZXRBbmltYXRpb25PcmRlcigpLCBwYXJhbXM6e2R1cmF0aW9uOiBhbmltYXRpb25EdXJhdGlvbn19XCJcbiAgICAgICAoQHJvdXRlQW5pbWF0aW9ucy5zdGFydCk9XCJhbmltYXRpb25TdGFydGVkKClcIlxuICAgICAgIChAcm91dGVBbmltYXRpb25zLmRvbmUpPVwiYW5pbWF0aW9uRG9uZSgpXCJcbiAgPlxuICAgIDxyb3V0ZXItb3V0bGV0ICNyb3V0ZXJPdXRsZXQ9XCJvdXRsZXRcIlxuICAgICAgICAgICAgICAgICAgIChhY3RpdmF0ZSk9XCJvbk91dGxldEFjdGl2YXRlZChyb3V0ZXJPdXRsZXQsICRldmVudClcIlxuICAgICAgICAgICAgICAgICAgIChkZWFjdGl2YXRlKT1cIm9uT3V0bGV0RGVhY3RpdmF0ZWQoKVwiPlxuICAgIDwvcm91dGVyLW91dGxldD5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFhbmltYXRpb25FbmFibGVkLnZhbHVlXCI+XG4gIDxkaXYgY2xhc3M9XCJyb3V0ZXItb3V0bGV0LWNvbnRhaW5lclwiXG4gICAgICAgY2RrU2Nyb2xsYWJsZT5cbiAgICA8cm91dGVyLW91dGxldCAjcm91dGVyT3V0bGV0PVwib3V0bGV0XCJcbiAgICAgICAgICAgICAgICAgICAoYWN0aXZhdGUpPVwib25PdXRsZXRBY3RpdmF0ZWQocm91dGVyT3V0bGV0LCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAoZGVhY3RpdmF0ZSk9XCJvbk91dGxldERlYWN0aXZhdGVkKClcIj5cbiAgICA8L3JvdXRlci1vdXRsZXQ+XG4gIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG5cbjxkaXYgIGNsYXNzPVwibm90LWF1dGhvcmlzZWQtY29tcG9uZW50LWNvbnRhaW5lclwiICpuZ0lmPVwiIWF1dGhvcmlzZWQudmFsdWVcIj5cbiAgPG5nLXRlbXBsYXRlIFtjZGtQb3J0YWxPdXRsZXRdPVwibm90QXV0aG9yaXNlZE5vdGljZVBvcnRhbFwiPjwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
@@ -79,7 +79,7 @@ export class SidePlaceNavigationComponent extends AbstractPlaceNavigationCompone
79
79
  this.expanded = !this.expanded;
80
80
  }
81
81
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SidePlaceNavigationComponent, deps: [{ token: i1.PlaceRouter }], target: i0.ɵɵFactoryTarget.Component });
82
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SidePlaceNavigationComponent, selector: "aup-side-place-navigation", inputs: { expanded$: "expanded$", expanded: "expanded" }, host: { properties: { "class.expanded": "this.expanded" } }, queries: [{ propertyName: "navEndTemplate", first: true, predicate: ["navEndTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-nav-list>\n <a mat-list-item (click)=\"toggleMenu()\">\n <aup-icon matListItemIcon [icon]=\"homeIcon$.value\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">Menu</span>\n </a>\n <a *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n mat-list-item\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [activated]=\"item.active\"\n aup-gc #gc=\"aup-gc\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\"\n >\n <aup-icon matListItemIcon *ngIf=\"getNavigationFace(item.place).icon()\" [icon]=\"getNavigationFace(item.place).icon()\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">{{getNavigationFace(item.place).text()}}</span>\n </a>\n <span [style.flex]=\"1\"></span>\n <ng-container *ngIf=\"navEndTemplate\" [ngTemplateOutlet]=\"navEndTemplate\"></ng-container>\n</mat-nav-list>\n", styles: [":host{display:flex;flex-direction:column;--resolved-nav-item-width: var(--nav-width, 56px);--resolved-expanded-width: var(--nav-expanded-width, 235px);--resolved-color: var(--nav-color, rgba(255, 255, 255, .9));--resolved-background-color: var(--nav-background-color, #555);color:var(--resolved-color);background-color:var(--resolved-background-color);width:var(--resolved-nav-item-width);transition:width 125ms linear}:host.expanded{width:var(--resolved-expanded-width);max-width:var(--resolved-expanded-width)}:host aup-icon{margin-right:12px}:host>mat-nav-list{flex:1;display:flex;flex-direction:column;padding:0}:host .mat-mdc-list-item,:host .mat-mdc-list-item-icon,:host .mat-mdc-list-item-icon.activated,:host .mdc-list-item__primary-text{color:var(--resolved-color)}:host .mdc-list-item--activated .mdc-list-item__primary-text,:host .mdc-list-item--activated .mat-mdc-list-item-icon{color:var(--resolved-color)}:host .mdc-list-item--activated{background-color:#444}:host *.flip-horizontal{transform:scaleX(-1)}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i3.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i3.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i5.CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "directive", type: i6.GarbageCollectorDirective, selector: "[aup-gc]", exportAs: ["aup-gc"] }, { kind: "component", type: i7.IconComponent, selector: "aup-icon", inputs: ["icon"] }] });
82
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SidePlaceNavigationComponent, selector: "aup-side-place-navigation", inputs: { expanded$: "expanded$", expanded: "expanded" }, host: { properties: { "class.expanded": "this.expanded" } }, queries: [{ propertyName: "navEndTemplate", first: true, predicate: ["navEndTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-nav-list>\n <a mat-list-item (click)=\"toggleMenu()\">\n <aup-icon matListItemIcon [icon]=\"homeIcon$.value\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">Menu</span>\n </a>\n <a *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n mat-list-item\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [activated]=\"item.active\"\n aup-gc #gc=\"aup-gc\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\"\n >\n <aup-icon matListItemIcon *ngIf=\"getNavigationFace(item.place).icon()\" [icon]=\"getNavigationFace(item.place).icon()\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">{{getNavigationFace(item.place).text()}}</span>\n </a>\n <span [style.flex]=\"1\"></span>\n <ng-container *ngIf=\"navEndTemplate\" [ngTemplateOutlet]=\"navEndTemplate\"></ng-container>\n</mat-nav-list>\n", styles: [":host{display:flex;flex-direction:column;--resolved-nav-item-width: var(--nav-width, 56px);--resolved-expanded-width: var(--nav-expanded-width, 235px);--resolved-color: var(--nav-color, rgba(255, 255, 255, .9));--resolved-background-color: var(--nav-background-color, #555);color:var(--resolved-color);background-color:var(--resolved-background-color);width:var(--resolved-nav-item-width);transition:width 125ms linear}:host.expanded{width:var(--resolved-expanded-width);max-width:var(--resolved-expanded-width)}:host aup-icon{margin-right:12px}:host>mat-nav-list{flex:1;display:flex;flex-direction:column;padding:0}:host .mat-mdc-list-item,:host .mat-mdc-list-item-icon,:host .mat-mdc-list-item-icon.activated,:host .mdc-list-item--with-leading-icon:hover .mdc-list-item__start,:host .mdc-list-item__primary-text{color:var(--resolved-color)}:host .mdc-list-item--activated .mdc-list-item__primary-text,:host .mdc-list-item--activated .mat-mdc-list-item-icon{color:var(--resolved-color)}:host .mdc-list-item:hover{background-color:#444}:host .mdc-list-item:hover .mdc-list-item__primary-text{color:var(--resolved-color)}:host .mdc-list-item--activated{background-color:#444}:host *.flip-horizontal{transform:scaleX(-1)}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i3.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i3.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: i5.CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "directive", type: i6.GarbageCollectorDirective, selector: "[aup-gc]", exportAs: ["aup-gc"] }, { kind: "component", type: i7.IconComponent, selector: "aup-icon", inputs: ["icon"] }] });
83
83
  }
84
84
  __decorate([
85
85
  Proxify(),
@@ -91,7 +91,7 @@ __decorate([
91
91
  ], SidePlaceNavigationComponent.prototype, "expanded", null);
92
92
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SidePlaceNavigationComponent, decorators: [{
93
93
  type: Component,
94
- args: [{ selector: 'aup-side-place-navigation', template: "<mat-nav-list>\n <a mat-list-item (click)=\"toggleMenu()\">\n <aup-icon matListItemIcon [icon]=\"homeIcon$.value\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">Menu</span>\n </a>\n <a *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n mat-list-item\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [activated]=\"item.active\"\n aup-gc #gc=\"aup-gc\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\"\n >\n <aup-icon matListItemIcon *ngIf=\"getNavigationFace(item.place).icon()\" [icon]=\"getNavigationFace(item.place).icon()\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">{{getNavigationFace(item.place).text()}}</span>\n </a>\n <span [style.flex]=\"1\"></span>\n <ng-container *ngIf=\"navEndTemplate\" [ngTemplateOutlet]=\"navEndTemplate\"></ng-container>\n</mat-nav-list>\n", styles: [":host{display:flex;flex-direction:column;--resolved-nav-item-width: var(--nav-width, 56px);--resolved-expanded-width: var(--nav-expanded-width, 235px);--resolved-color: var(--nav-color, rgba(255, 255, 255, .9));--resolved-background-color: var(--nav-background-color, #555);color:var(--resolved-color);background-color:var(--resolved-background-color);width:var(--resolved-nav-item-width);transition:width 125ms linear}:host.expanded{width:var(--resolved-expanded-width);max-width:var(--resolved-expanded-width)}:host aup-icon{margin-right:12px}:host>mat-nav-list{flex:1;display:flex;flex-direction:column;padding:0}:host .mat-mdc-list-item,:host .mat-mdc-list-item-icon,:host .mat-mdc-list-item-icon.activated,:host .mdc-list-item__primary-text{color:var(--resolved-color)}:host .mdc-list-item--activated .mdc-list-item__primary-text,:host .mdc-list-item--activated .mat-mdc-list-item-icon{color:var(--resolved-color)}:host .mdc-list-item--activated{background-color:#444}:host *.flip-horizontal{transform:scaleX(-1)}\n"] }]
94
+ args: [{ selector: 'aup-side-place-navigation', template: "<mat-nav-list>\n <a mat-list-item (click)=\"toggleMenu()\">\n <aup-icon matListItemIcon [icon]=\"homeIcon$.value\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">Menu</span>\n </a>\n <a *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n mat-list-item\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [activated]=\"item.active\"\n aup-gc #gc=\"aup-gc\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\"\n >\n <aup-icon matListItemIcon *ngIf=\"getNavigationFace(item.place).icon()\" [icon]=\"getNavigationFace(item.place).icon()\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">{{getNavigationFace(item.place).text()}}</span>\n </a>\n <span [style.flex]=\"1\"></span>\n <ng-container *ngIf=\"navEndTemplate\" [ngTemplateOutlet]=\"navEndTemplate\"></ng-container>\n</mat-nav-list>\n", styles: [":host{display:flex;flex-direction:column;--resolved-nav-item-width: var(--nav-width, 56px);--resolved-expanded-width: var(--nav-expanded-width, 235px);--resolved-color: var(--nav-color, rgba(255, 255, 255, .9));--resolved-background-color: var(--nav-background-color, #555);color:var(--resolved-color);background-color:var(--resolved-background-color);width:var(--resolved-nav-item-width);transition:width 125ms linear}:host.expanded{width:var(--resolved-expanded-width);max-width:var(--resolved-expanded-width)}:host aup-icon{margin-right:12px}:host>mat-nav-list{flex:1;display:flex;flex-direction:column;padding:0}:host .mat-mdc-list-item,:host .mat-mdc-list-item-icon,:host .mat-mdc-list-item-icon.activated,:host .mdc-list-item--with-leading-icon:hover .mdc-list-item__start,:host .mdc-list-item__primary-text{color:var(--resolved-color)}:host .mdc-list-item--activated .mdc-list-item__primary-text,:host .mdc-list-item--activated .mat-mdc-list-item-icon{color:var(--resolved-color)}:host .mdc-list-item:hover{background-color:#444}:host .mdc-list-item:hover .mdc-list-item__primary-text{color:var(--resolved-color)}:host .mdc-list-item--activated{background-color:#444}:host *.flip-horizontal{transform:scaleX(-1)}\n"] }]
95
95
  }], ctorParameters: function () { return [{ type: i1.PlaceRouter }]; }, propDecorators: { expanded$: [{
96
96
  type: Input
97
97
  }], expanded: [{
@@ -1,6 +1,6 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
- import { Memoize } from '@typescript-plus/fast-memoize-decorator';
3
- import { uniq } from 'lodash';
2
+ import { MemoizeGet } from "@coolon/typescript-utilities";
3
+ import { uniq } from 'lodash-es';
4
4
  /**
5
5
  * This a work around for the fact that an activated route with multiple segments doesn't
6
6
  * include the segment params in the paramMap as well as each segment returns an empty
@@ -31,7 +31,7 @@ export class ConsolidatedParameterMap {
31
31
  }
32
32
  }
33
33
  __decorate([
34
- Memoize(),
34
+ MemoizeGet(),
35
35
  __metadata("design:type", Array),
36
36
  __metadata("design:paramtypes", [])
37
37
  ], ConsolidatedParameterMap.prototype, "keys", null);
@@ -54,4 +54,4 @@ class ParamMapAdapter {
54
54
  return Object.keys(this.params);
55
55
  }
56
56
  }
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc29saWRhdGVkLXBhcmFtLW1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL3BsYWNlL2d1YXJkcy9jb25zb2xpZGF0ZWQtcGFyYW0tbWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFFaEUsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLFFBQVEsQ0FBQztBQUU1Qjs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLHdCQUF3QjtJQUVsQixTQUFTLEdBQWUsRUFBRSxDQUFDO0lBRTVDLFlBQVksV0FBeUIsRUFBRSxRQUFtQjtRQUN4RCxvR0FBb0c7UUFDcEcsTUFBTSxhQUFhLEdBQUcsQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxlQUFlLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFlLENBQUM7UUFDcEcsSUFBSSxDQUFDLFNBQVMsR0FBRyxhQUFhO2FBQzNCLE1BQU0sQ0FBQyxRQUFRLENBQUM7YUFDaEIsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsNENBQTRDO0lBQ25FLENBQUM7SUFFRCxHQUFHLENBQUMsSUFBWTtRQUNkLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVk7UUFDakIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDdkQsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxHQUFHLENBQUMsSUFBWTtRQUNkLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxJQUNJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQztDQUNGO0FBSkM7SUFBQyxPQUFPLEVBQUU7OztvREFHVDtBQUdILE1BQU0sZUFBZTtJQUNVO0lBQTdCLFlBQTZCLE1BQStCO1FBQS9CLFdBQU0sR0FBTixNQUFNLENBQXlCO0lBQzVELENBQUM7SUFFRCxHQUFHLENBQUMsSUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVk7UUFDakIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsR0FBRyxDQUFDLElBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2xDLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UGFyYW1NYXAsIFVybFNlZ21lbnR9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge01lbW9pemV9IGZyb20gJ0B0eXBlc2NyaXB0LXBsdXMvZmFzdC1tZW1vaXplLWRlY29yYXRvcic7XG5cbmltcG9ydCB7dW5pcX0gZnJvbSAnbG9kYXNoJztcblxuLyoqXG4gKiBUaGlzIGEgd29yayBhcm91bmQgZm9yIHRoZSBmYWN0IHRoYXQgYW4gYWN0aXZhdGVkIHJvdXRlIHdpdGggbXVsdGlwbGUgc2VnbWVudHMgZG9lc24ndFxuICogaW5jbHVkZSB0aGUgc2VnbWVudCBwYXJhbXMgaW4gdGhlIHBhcmFtTWFwIGFzIHdlbGwgYXMgZWFjaCBzZWdtZW50IHJldHVybnMgYW4gZW1wdHlcbiAqIHBhcmFtIG1hcCBldmVuIHdoZW4gYHBhcmFtZXRlcmBzIGhhcyBjb250ZW50LlxuICovXG5leHBvcnQgY2xhc3MgQ29uc29saWRhdGVkUGFyYW1ldGVyTWFwIGltcGxlbWVudHMgUGFyYW1NYXAge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgcGFyYW1NYXBzOiBQYXJhbU1hcFtdID0gW107XG5cbiAgY29uc3RydWN0b3IodXJsU2VnbWVudHM6IFVybFNlZ21lbnRbXSwgcGFyYW1NYXA/OiBQYXJhbU1hcCkge1xuICAgIC8vIFRPRE86IGNhbiB3ZSBnZXQgYWxsIG91ciBwYXJhbXMgZnJvbSB0ZWggdXJsIHNlZ21lbnRzPyBJZiBzbyB3ZSBjYW4gZHJvcCB0aGUgcGFyYW1NYXAgYWx0b2dldGhlci5cbiAgICBjb25zdCBzZWdtZW50UGFyYW1zID0gKHVybFNlZ21lbnRzIHx8IFtdKS5tYXAocyA9PiBuZXcgUGFyYW1NYXBBZGFwdGVyKHMucGFyYW1ldGVycykpIGFzIFBhcmFtTWFwW107XG4gICAgdGhpcy5wYXJhbU1hcHMgPSBzZWdtZW50UGFyYW1zXG4gICAgICAuY29uY2F0KHBhcmFtTWFwKVxuICAgICAgLmZpbHRlcihtID0+ICEhbSk7IC8vIHRoZSBhY3RpdmF0ZWQgcm91dGUgcGFyYW0gbWFwIGNhbiBiZSBudWxsXG4gIH1cblxuICBnZXQobmFtZTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgY29uc3QgcGFyYW1NYXAgPSB0aGlzLnBhcmFtTWFwcy5maW5kKG0gPT4gbS5oYXMobmFtZSkpO1xuICAgIHJldHVybiBwYXJhbU1hcC5nZXQobmFtZSk7XG4gIH1cblxuICBnZXRBbGwobmFtZTogc3RyaW5nKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IHBhcmFtTWFwID0gdGhpcy5wYXJhbU1hcHMuZmluZChtID0+IG0uaGFzKG5hbWUpKTtcbiAgICByZXR1cm4gcGFyYW1NYXAuZ2V0QWxsKG5hbWUpO1xuICB9XG5cbiAgaGFzKG5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMucGFyYW1NYXBzLmZpbmQobSA9PiBtLmhhcyhuYW1lKSk7XG4gIH1cblxuICBATWVtb2l6ZSgpXG4gIGdldCBrZXlzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdW5pcSh0aGlzLnBhcmFtTWFwcy5yZWR1Y2UoKHJlc3VsdCwgcGFyYW1zKSA9PiByZXN1bHQuY29uY2F0KHBhcmFtcy5rZXlzKSwgW10pKTtcbiAgfVxufVxuXG5jbGFzcyBQYXJhbU1hcEFkYXB0ZXIgaW1wbGVtZW50cyBQYXJhbU1hcCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcGFyYW1zOiB7IFtwOiBzdHJpbmddOiBzdHJpbmcgfSkge1xuICB9XG5cbiAgZ2V0KG5hbWU6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnBhcmFtc1tuYW1lXTtcbiAgfVxuXG4gIGdldEFsbChuYW1lOiBzdHJpbmcpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLmdldChuYW1lKTtcbiAgICByZXR1cm4gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFt2YWx1ZV07XG4gIH1cblxuICBoYXMobmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMua2V5cy5pbmNsdWRlcyhuYW1lKTtcbiAgfVxuXG4gIGdldCBrZXlzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5wYXJhbXMpO1xuICB9XG5cbn1cbiJdfQ==
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc29saWRhdGVkLXBhcmFtLW1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL3BsYWNlL2d1YXJkcy9jb25zb2xpZGF0ZWQtcGFyYW0tbWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFHeEQsT0FBTyxFQUFDLElBQUksRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUUvQjs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLHdCQUF3QjtJQUVsQixTQUFTLEdBQWUsRUFBRSxDQUFDO0lBRTVDLFlBQVksV0FBeUIsRUFBRSxRQUFtQjtRQUN4RCxvR0FBb0c7UUFDcEcsTUFBTSxhQUFhLEdBQUcsQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxlQUFlLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFlLENBQUM7UUFDcEcsSUFBSSxDQUFDLFNBQVMsR0FBRyxhQUFhO2FBQzNCLE1BQU0sQ0FBQyxRQUFRLENBQUM7YUFDaEIsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsNENBQTRDO0lBQ25FLENBQUM7SUFFRCxHQUFHLENBQUMsSUFBWTtRQUNkLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVk7UUFDakIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDdkQsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxHQUFHLENBQUMsSUFBWTtRQUNkLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxJQUNJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDekYsQ0FBQztDQUNGO0FBSkM7SUFBQyxVQUFVLEVBQUU7OztvREFHWjtBQUdILE1BQU0sZUFBZTtJQUNVO0lBQTdCLFlBQTZCLE1BQStCO1FBQS9CLFdBQU0sR0FBTixNQUFNLENBQXlCO0lBQzVELENBQUM7SUFFRCxHQUFHLENBQUMsSUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVk7UUFDakIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsR0FBRyxDQUFDLElBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2xDLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UGFyYW1NYXAsIFVybFNlZ21lbnR9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge01lbW9pemVHZXR9IGZyb20gXCJAY29vbG9uL3R5cGVzY3JpcHQtdXRpbGl0aWVzXCI7XG5pbXBvcnQge01lbW9pemV9IGZyb20gJ2Zhc3QtdHlwZXNjcmlwdC1tZW1vaXplJztcblxuaW1wb3J0IHt1bmlxfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG4vKipcbiAqIFRoaXMgYSB3b3JrIGFyb3VuZCBmb3IgdGhlIGZhY3QgdGhhdCBhbiBhY3RpdmF0ZWQgcm91dGUgd2l0aCBtdWx0aXBsZSBzZWdtZW50cyBkb2Vzbid0XG4gKiBpbmNsdWRlIHRoZSBzZWdtZW50IHBhcmFtcyBpbiB0aGUgcGFyYW1NYXAgYXMgd2VsbCBhcyBlYWNoIHNlZ21lbnQgcmV0dXJucyBhbiBlbXB0eVxuICogcGFyYW0gbWFwIGV2ZW4gd2hlbiBgcGFyYW1ldGVyYHMgaGFzIGNvbnRlbnQuXG4gKi9cbmV4cG9ydCBjbGFzcyBDb25zb2xpZGF0ZWRQYXJhbWV0ZXJNYXAgaW1wbGVtZW50cyBQYXJhbU1hcCB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBwYXJhbU1hcHM6IFBhcmFtTWFwW10gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcih1cmxTZWdtZW50czogVXJsU2VnbWVudFtdLCBwYXJhbU1hcD86IFBhcmFtTWFwKSB7XG4gICAgLy8gVE9ETzogY2FuIHdlIGdldCBhbGwgb3VyIHBhcmFtcyBmcm9tIHRlaCB1cmwgc2VnbWVudHM/IElmIHNvIHdlIGNhbiBkcm9wIHRoZSBwYXJhbU1hcCBhbHRvZ2V0aGVyLlxuICAgIGNvbnN0IHNlZ21lbnRQYXJhbXMgPSAodXJsU2VnbWVudHMgfHwgW10pLm1hcChzID0+IG5ldyBQYXJhbU1hcEFkYXB0ZXIocy5wYXJhbWV0ZXJzKSkgYXMgUGFyYW1NYXBbXTtcbiAgICB0aGlzLnBhcmFtTWFwcyA9IHNlZ21lbnRQYXJhbXNcbiAgICAgIC5jb25jYXQocGFyYW1NYXApXG4gICAgICAuZmlsdGVyKG0gPT4gISFtKTsgLy8gdGhlIGFjdGl2YXRlZCByb3V0ZSBwYXJhbSBtYXAgY2FuIGJlIG51bGxcbiAgfVxuXG4gIGdldChuYW1lOiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICBjb25zdCBwYXJhbU1hcCA9IHRoaXMucGFyYW1NYXBzLmZpbmQobSA9PiBtLmhhcyhuYW1lKSk7XG4gICAgcmV0dXJuIHBhcmFtTWFwLmdldChuYW1lKTtcbiAgfVxuXG4gIGdldEFsbChuYW1lOiBzdHJpbmcpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgcGFyYW1NYXAgPSB0aGlzLnBhcmFtTWFwcy5maW5kKG0gPT4gbS5oYXMobmFtZSkpO1xuICAgIHJldHVybiBwYXJhbU1hcC5nZXRBbGwobmFtZSk7XG4gIH1cblxuICBoYXMobmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5wYXJhbU1hcHMuZmluZChtID0+IG0uaGFzKG5hbWUpKTtcbiAgfVxuXG4gIEBNZW1vaXplR2V0KClcbiAgZ2V0IGtleXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB1bmlxKHRoaXMucGFyYW1NYXBzLnJlZHVjZSgocmVzdWx0LCBwYXJhbXMpID0+IHJlc3VsdC5jb25jYXQocGFyYW1zLmtleXMpLCBbXSkpO1xuICB9XG59XG5cbmNsYXNzIFBhcmFtTWFwQWRhcHRlciBpbXBsZW1lbnRzIFBhcmFtTWFwIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBwYXJhbXM6IHsgW3A6IHN0cmluZ106IHN0cmluZyB9KSB7XG4gIH1cblxuICBnZXQobmFtZTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMucGFyYW1zW25hbWVdO1xuICB9XG5cbiAgZ2V0QWxsKG5hbWU6IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuZ2V0KG5hbWUpO1xuICAgIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSA/IHZhbHVlIDogW3ZhbHVlXTtcbiAgfVxuXG4gIGhhcyhuYW1lOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5rZXlzLmluY2x1ZGVzKG5hbWUpO1xuICB9XG5cbiAgZ2V0IGtleXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyh0aGlzLnBhcmFtcyk7XG4gIH1cblxufVxuIl19
@@ -1,5 +1,5 @@
1
1
  import { assert } from '@coolon/pectin';
2
- import { isEqual } from 'lodash';
2
+ import { isEqual } from 'lodash-es';
3
3
  /**
4
4
  * This class handles the logic around canDeactivate for a given router state transition. It's core responsibilities are:
5
5
  * 1. Ensure we only ask the component to deactivate once on a given navigation cycle (since visit sanitisation can result in multiple round trips to through the router.)
@@ -84,4 +84,4 @@ export class PlaceComponentDeactivationHandler {
84
84
  return !nextState.includesPathOf(this.component.placeDefinition);
85
85
  }
86
86
  }
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UtY29tcG9uZW50LWRlYWN0aXZhdGlvbi1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvcGxhY2UvbmF2aWdhdGlvbi9wbGFjZS1jb21wb25lbnQtZGVhY3RpdmF0aW9uLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRXRDLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxRQUFRLENBQUM7QUFNL0I7Ozs7OztHQU1HO0FBQ0gsTUFBTSxPQUFPLGlDQUFpQztJQUl2QjtJQUFvQztJQUErQztJQUZoRyxvQkFBb0IsQ0FBaUM7SUFFN0QsWUFBcUIsU0FBeUIsRUFBVyxpQkFBb0MsRUFBVyxrQkFBMkI7UUFBOUcsY0FBUyxHQUFULFNBQVMsQ0FBZ0I7UUFBVyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQVcsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFTO1FBQ2pJLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksd0JBQXdCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLHlCQUF5QixDQUFDO0lBQzFELENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxXQUFXO0lBQ1gsS0FBSyxDQUFDLGFBQWEsQ0FBQyxVQUF1QixFQUFFLFNBQXNCO1FBQ2pFLDJFQUEyRTtRQUMzRSxvRkFBb0Y7UUFDcEYsc0JBQXNCO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDOUIsd0ZBQXdGO1lBQ3hGLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQ2hGO1FBQ0QsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDbkMsQ0FBQztJQUdELFdBQVc7SUFDRCxLQUFLLENBQUMsc0JBQXNCLENBQUMsVUFBdUIsRUFBRSxTQUFzQjtRQUNwRix5R0FBeUc7UUFDekcsK0lBQStJO1FBQy9JLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsRUFBRTtZQUVyQyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxJQUFJLENBQUMsd0JBQXdCLENBQUMsYUFBYSxFQUFFLEVBQUU7Z0JBQzVFLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsOEJBQThCLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUMvRSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsOEJBQThCLEVBQUUsQ0FBQztnQkFDbEYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLEVBQUUsRUFBRSw2QkFBNkI7b0JBQ2pFLE1BQU0sSUFBSSxDQUFDLHdCQUF3QixDQUFDLDZCQUE2QixFQUFFLENBQUM7b0JBQ3BFLE9BQU8sS0FBSyxDQUFDO2lCQUNkO2FBQ0Y7aUJBQU07Z0JBQ0wscURBQXFEO2dCQUNyRCxJQUFJLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUU7b0JBQ3hFLE1BQU0sSUFBSSxDQUFDLHdCQUF3QixDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztvQkFDL0UsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7YUFDRjtTQUNGO1FBRUQscURBQXFEO1FBQ3JELDhIQUE4SDtRQUM5SCwrR0FBK0c7UUFDL0csSUFBSSxJQUFJLENBQUMsd0JBQXdCLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDNUMsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsK0JBQStCLENBQUMsQ0FBQztZQUM3RyxxR0FBcUc7WUFDckcsd0RBQXdEO1lBQ3hELElBQUksUUFBUSxJQUFJLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUU7Z0JBQ3BGLE9BQU8sQ0FBQyxJQUFJLENBQUMsNkVBQTZFLENBQUMsQ0FBQztnQkFDNUYsT0FBTyxLQUFLLENBQUM7YUFDZDtZQUVELE9BQU8sUUFBUSxDQUFDO1NBQ2pCO2FBQU07WUFDTCxtREFBbUQ7WUFDbkQsT0FBTyxNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLCtCQUErQixFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQzFIO0lBQ0gsQ0FBQztJQUVTLHdCQUF3QixDQUFDLFNBQXNCO1FBQ3ZELHFGQUFxRjtRQUNyRixnRkFBZ0Y7UUFDaEYsMENBQTBDO1FBQzFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDbkUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHthc3NlcnR9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcblxuaW1wb3J0IHtpc0VxdWFsfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHtQbGFjZUNvbXBvbmVudH0gZnJvbSAnLi4vcGxhY2UtY29tcG9uZW50JztcbmltcG9ydCB7UGxhY2VEZWZpbml0aW9ufSBmcm9tICcuLi9wbGFjZS1kZWZpbml0aW9uJztcbmltcG9ydCB7VXJsU25hcHNob3R9IGZyb20gJy4uL3VybC1zbmFwc2hvdCc7XG5pbXBvcnQge05hdmlnYXRpb25TZXNzaW9ufSBmcm9tICcuL3Nlc3Npb24vbmF2aWdhdGlvbi1zZXNzaW9uJztcblxuLyoqXG4gKiBUaGlzIGNsYXNzIGhhbmRsZXMgdGhlIGxvZ2ljIGFyb3VuZCBjYW5EZWFjdGl2YXRlIGZvciBhIGdpdmVuIHJvdXRlciBzdGF0ZSB0cmFuc2l0aW9uLiAgSXQncyBjb3JlIHJlc3BvbnNpYmlsaXRpZXMgYXJlOlxuICogMS4gRW5zdXJlIHdlIG9ubHkgYXNrIHRoZSBjb21wb25lbnQgdG8gZGVhY3RpdmF0ZSBvbmNlIG9uIGEgZ2l2ZW4gbmF2aWdhdGlvbiBjeWNsZSAoc2luY2UgdmlzaXQgc2FuaXRpc2F0aW9uIGNhbiByZXN1bHQgaW4gbXVsdGlwbGUgcm91bmQgdHJpcHMgdG8gdGhyb3VnaCB0aGUgcm91dGVyLilcbiAqIDIuIEVuc3VyZSBvbmx5IHRoZSBwcmltYXJ5IHBsYWNlIGNvbXBvbmVudCBpcyBhc2tlZCB3aGVuIHRoZXJlIGFyZSBuZXN0ZWQgcGxhY2VzLiAgVGhlIHByaW1hcnkgY29tcG9uZW50IGlzIHRoZSBvbmUgYXQgdGhlIHRvcFxuICogICAgb2YgdGhlIHJvdXRpbmcgY2hhbmdlIHRyZWUuXG4gKiAzLiBBdXRvbWF0aWNhbGx5IGhhbmRsZSBzdGFuZGFyZCBpbnRlcmFjdGlvbiBzY2VuYXJpb3Mgb24gdGhlIGNvbXBvbmVudHMgYmVoYWxmLlxuICovXG5leHBvcnQgY2xhc3MgUGxhY2VDb21wb25lbnREZWFjdGl2YXRpb25IYW5kbGVyIHtcblxuICBwcml2YXRlIGNhbkRlYWN0aXZhdGVQcm9taXNlOiBQcm9taXNlPGJvb2xlYW4gfCBVcmxTbmFwc2hvdD47XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgY29tcG9uZW50OiBQbGFjZUNvbXBvbmVudCwgcmVhZG9ubHkgbmF2aWdhdGlvblNlc3Npb246IE5hdmlnYXRpb25TZXNzaW9uLCByZWFkb25seSBpc1ByaW1hcnlDb21wb25lbnQ6IGJvb2xlYW4pIHtcbiAgICBhc3NlcnQubm90TmlsKGNvbXBvbmVudCk7XG4gIH1cblxuICBnZXQgcm91dGVySW50ZXJhY3Rpb25BZGFwdGVyKCkge1xuICAgIHJldHVybiB0aGlzLm5hdmlnYXRpb25TZXNzaW9uLmludGVyYWN0aW9uU2VydmljZUFkYXB0ZXI7XG4gIH1cblxuICBnZXQgdXJsU2VydmljZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYXZpZ2F0aW9uU2Vzc2lvbi51cmxTZXJ2aWNlO1xuICB9XG5cbiAgZ2V0IHBsYWNlRGVmaW5pdGlvbigpOlBsYWNlRGVmaW5pdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50LnBsYWNlRGVmaW5pdGlvbjtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGFzeW5jIGNhbkRlYWN0aXZhdGUoY3VycmVudFVybDogVXJsU25hcHNob3QsIG5leHRTdGF0ZTogVXJsU25hcHNob3QpOiBQcm9taXNlPGJvb2xlYW4gfCBVcmxTbmFwc2hvdD4ge1xuICAgIC8vIFdlJ2xsIGdldCBjYWxsZWQgbXVsdGlwbGUgdGltZXMgaWYgdGhlcmUncyBhbnkgcGFyYW1ldGVyIHNhbml0aXNhdGlvbiBzb1xuICAgIC8vIHdlIGFsd2F5cyByZXR1cm4gdHJ1ZSBpZiB3ZSBhY2NlcHRlZCBwcm9taXNlIGZyb20gYSBwcmV2aW91cyBjeWNsZSBvZiB0aGUgY3VycmVudFxuICAgIC8vIG5hdmlnYXRpb24gc2Vzc2lvbi5cbiAgICBpZiAoIXRoaXMuY2FuRGVhY3RpdmF0ZVByb21pc2UpIHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKGBjcmVhdGluZyBkZWFjdGl2YXRlIHByb21pc2UgZm9yIC0+ICR7dGhpcy5jb21wb25lbnQuY29uc3RydWN0b3IubmFtZX1gKTtcbiAgICAgIHRoaXMuY2FuRGVhY3RpdmF0ZVByb21pc2UgPSB0aGlzLmNhbkRlYWN0aXZhdGVDb21wb25lbnQoY3VycmVudFVybCwgbmV4dFN0YXRlKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY2FuRGVhY3RpdmF0ZVByb21pc2U7XG4gIH1cblxuXG4gIC8vIEBUcmFjZSgpXG4gIHByb3RlY3RlZCBhc3luYyBjYW5EZWFjdGl2YXRlQ29tcG9uZW50KGN1cnJlbnRVcmw6IFVybFNuYXBzaG90LCBuZXh0U3RhdGU6IFVybFNuYXBzaG90KTogUHJvbWlzZTxVcmxTbmFwc2hvdCB8IGJvb2xlYW4+IHtcbiAgICAvLyBBdXRvbWF0aWNhbGx5IGNhbmNlbCBhbnkgYWN0aXZlIGFjdGl2aXRpZXMgaWYgdGhlIG5hdmlnYXRpb24gc2Vzc2lvbiB3YXMgdHJpZ2dlcmVkIGJ5IHRoZSBiYWNrIGJ1dHRvbi5cbiAgICAvLyBJZiB3ZSBoYW5kbGVkIG1vcmUgdGhhbiBqdXN0IHRoZSBwb3Agc3RhdGUgdGhlbiBpdCBsZWFkcyB0byB0aGUgVUkgaWdub3JpbmcgY2xpY2tzIGFuZCBqdXN0IGNhbmNlbGxpbmcgdGhpbmdzIHdoaWNoIGlzIGRlZXBseSBkaXNjb25jZXJ0aW5nLlxuICAgIGlmICh0aGlzLm5hdmlnYXRpb25TZXNzaW9uLmlzUG9wU3RhdGUpIHtcblxuICAgICAgaWYgKHRoaXMuaXNQcmltYXJ5Q29tcG9uZW50ICYmIHRoaXMucm91dGVySW50ZXJhY3Rpb25BZGFwdGVyLmlzTW9kYWxBY3RpdmUoKSkge1xuICAgICAgICBjb25zdCByb3V0ZUlkcyA9IHRoaXMudXJsU2VydmljZS5nZXRBY3RpdmVJbnRlcmFjdGlvbklkc0Zyb21VcmwobmV4dFN0YXRlLnVybCk7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRJZHMgPSB0aGlzLnJvdXRlckludGVyYWN0aW9uQWRhcHRlci5nZXRBY3RpdmVJbnRlcmFjdGlvbkNvbnRleHRJZHMoKTtcbiAgICAgICAgaWYgKCFpc0VxdWFsKGN1cnJlbnRJZHMsIHJvdXRlSWRzKSkgeyAvLyB3aHkgYW0gSSBjaGVja2luZyB0aGlzPz8/P1xuICAgICAgICAgIGF3YWl0IHRoaXMucm91dGVySW50ZXJhY3Rpb25BZGFwdGVyLmNhbmNlbEN1cnJlbnRNb2RhbEludGVyYWN0aW9uKCk7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBjaGVjayBpZiB0aGUgY29tcG9uZW50IGhhcyBhbiBpbiBwbGFjZSBpbnRlcmFjdGlvblxuICAgICAgICBpZiAodGhpcy5yb3V0ZXJJbnRlcmFjdGlvbkFkYXB0ZXIuaXNDb21wb25lbnRJbnRlcmFjdGluZyh0aGlzLmNvbXBvbmVudCkpIHtcbiAgICAgICAgICBhd2FpdCB0aGlzLnJvdXRlckludGVyYWN0aW9uQWRhcHRlci5jYW5jZWxDb21wb25lbnRJbnRlcmFjdGlvbih0aGlzLmNvbXBvbmVudCk7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTm8gaW50ZXJhY3Rpb24gaW4gcHJvZ3Jlc3MsIHNvIGFzayB0aGUgY29tcG9uZW50IC5cbiAgICAvLyBUaGlzIG1heSBzdGFydCBhbiBpbnRlcmFjdGlvbiwgaGVuY2UgY2hlY2tpbmcgdGhlIGludGVyYWN0aW9uIGNvbnRleHQgYmVmb3JlIG5vdy4gSS5lLiBpZiB0aGUgcGxhY2UgcG9wcyB1cCB0aGUgZGlhbG9nLCBhbmRcbiAgICAvLyB0aGUgdXNlciBjbGlja3MgYmFjayBhZ2Fpbiwgd2UnbGwgcmUtZW50ZXIgaGVyZSBhbmQgZ28gYmFuZyB3aGVuIHRoZSBjb21wb25lbnQgdHJpZXMgdG8gb3BlbiBhbm90aGVyIGRpYWxvZy5cbiAgICBpZiAodGhpcy5pc0dvaW5nVG9BRGlmZmVyZW50UGxhY2UobmV4dFN0YXRlKSkge1xuICAgICAgY29uc3QgY2FuTGVhdmUgPSBhd2FpdCB0aGlzLmNvbXBvbmVudC5fY2FuTGVhdmVQbGFjZSh0aGlzLm5hdmlnYXRpb25TZXNzaW9uLmNhbkRlYWN0aXZhdGVJbnRlcmFjdGlvbkNvbnRleHQpO1xuICAgICAgLy8gVGhlIGNvbXBvbmVudCBoYXMgYW4gYWN0aXZlIGludGVyYWN0aW9uIGJ1dCBubyBkZWFjdGl2YXRpb24gaG9vay4gIFJhdGhlciB0aGFuIGd1ZXNzaW5nIHdoYXQgdG8gZG9cbiAgICAgIC8vIHdlJ2xsIGp1c3QgY2FuY2VsIHRoZSBuYXZpZ2F0aW9uIGFuZCBwcmludCBhIHdhcm5pbmcuXG4gICAgICBpZiAoY2FuTGVhdmUgJiYgdGhpcy5yb3V0ZXJJbnRlcmFjdGlvbkFkYXB0ZXIuaXNDb21wb25lbnRJbnRlcmFjdGluZyh0aGlzLmNvbXBvbmVudCkpIHtcbiAgICAgICAgY29uc29sZS53YXJuKCdSb3V0ZSBjaGFuZ2VkIHdoaWxlIGNvbXBvbmVudCBoYXMgYWN0aXZlIGludGVyYWN0aW9uLCBjYW5jZWxsaW5nIG5hdmlnYXRpb24nKTtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gY2FuTGVhdmU7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGVpdGhlciBhbiBpbnRlcmFjdGlvbiBvciB2aXNpdCBwYXJhbWV0ZXIgY2hhbmdlLlxuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuY29tcG9uZW50Ll9jYW5DaGFuZ2VSb3V0ZVBhcmFtZXRlcnModGhpcy5uYXZpZ2F0aW9uU2Vzc2lvbi5jYW5EZWFjdGl2YXRlSW50ZXJhY3Rpb25Db250ZXh0LCBuZXh0U3RhdGUpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBpc0dvaW5nVG9BRGlmZmVyZW50UGxhY2UobmV4dFN0YXRlOiBVcmxTbmFwc2hvdCkge1xuICAgIC8vIEJlY2F1c2UgcGxhY2VzIHdpdGggYSByb3V0ZS1pZCBjb3ZlciB0d28gcm91dGUgc2VnbWVudHMgd2UgZ2V0IGFza2VkIHRvIGRlYWN0aXZhdGVcbiAgICAvLyBpZiB0aGUgcm91dGUgaWQgaXMgYWRkZWQgb3IgcmVtb3ZlZC4gIFNvIGlmIG91ciBwYXRoIGlzIHN0aWxsIHByZXNlbnQgdGhlIHVybFxuICAgIC8vIHRoZW4gd2Ugc2hvdWxkbid0IGRlYWN0aXZhdGUgdGhlIHBsYWNlLlxuICAgIHJldHVybiAhbmV4dFN0YXRlLmluY2x1ZGVzUGF0aE9mKHRoaXMuY29tcG9uZW50LnBsYWNlRGVmaW5pdGlvbik7XG4gIH1cbn1cbiJdfQ==
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhY2UtY29tcG9uZW50LWRlYWN0aXZhdGlvbi1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvcGxhY2UvbmF2aWdhdGlvbi9wbGFjZS1jb21wb25lbnQtZGVhY3RpdmF0aW9uLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRXRDLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxXQUFXLENBQUM7QUFNbEM7Ozs7OztHQU1HO0FBQ0gsTUFBTSxPQUFPLGlDQUFpQztJQUl2QjtJQUFvQztJQUErQztJQUZoRyxvQkFBb0IsQ0FBaUM7SUFFN0QsWUFBcUIsU0FBeUIsRUFBVyxpQkFBb0MsRUFBVyxrQkFBMkI7UUFBOUcsY0FBUyxHQUFULFNBQVMsQ0FBZ0I7UUFBVyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQVcsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFTO1FBQ2pJLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksd0JBQXdCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLHlCQUF5QixDQUFDO0lBQzFELENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxXQUFXO0lBQ1gsS0FBSyxDQUFDLGFBQWEsQ0FBQyxVQUF1QixFQUFFLFNBQXNCO1FBQ2pFLDJFQUEyRTtRQUMzRSxvRkFBb0Y7UUFDcEYsc0JBQXNCO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDOUIsd0ZBQXdGO1lBQ3hGLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQ2hGO1FBQ0QsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDbkMsQ0FBQztJQUdELFdBQVc7SUFDRCxLQUFLLENBQUMsc0JBQXNCLENBQUMsVUFBdUIsRUFBRSxTQUFzQjtRQUNwRix5R0FBeUc7UUFDekcsK0lBQStJO1FBQy9JLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsRUFBRTtZQUVyQyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxJQUFJLENBQUMsd0JBQXdCLENBQUMsYUFBYSxFQUFFLEVBQUU7Z0JBQzVFLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsOEJBQThCLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUMvRSxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsOEJBQThCLEVBQUUsQ0FBQztnQkFDbEYsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLEVBQUUsRUFBRSw2QkFBNkI7b0JBQ2pFLE1BQU0sSUFBSSxDQUFDLHdCQUF3QixDQUFDLDZCQUE2QixFQUFFLENBQUM7b0JBQ3BFLE9BQU8sS0FBSyxDQUFDO2lCQUNkO2FBQ0Y7aUJBQU07Z0JBQ0wscURBQXFEO2dCQUNyRCxJQUFJLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUU7b0JBQ3hFLE1BQU0sSUFBSSxDQUFDLHdCQUF3QixDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztvQkFDL0UsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7YUFDRjtTQUNGO1FBRUQscURBQXFEO1FBQ3JELDhIQUE4SDtRQUM5SCwrR0FBK0c7UUFDL0csSUFBSSxJQUFJLENBQUMsd0JBQXdCLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDNUMsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsK0JBQStCLENBQUMsQ0FBQztZQUM3RyxxR0FBcUc7WUFDckcsd0RBQXdEO1lBQ3hELElBQUksUUFBUSxJQUFJLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUU7Z0JBQ3BGLE9BQU8sQ0FBQyxJQUFJLENBQUMsNkVBQTZFLENBQUMsQ0FBQztnQkFDNUYsT0FBTyxLQUFLLENBQUM7YUFDZDtZQUVELE9BQU8sUUFBUSxDQUFDO1NBQ2pCO2FBQU07WUFDTCxtREFBbUQ7WUFDbkQsT0FBTyxNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLCtCQUErQixFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQzFIO0lBQ0gsQ0FBQztJQUVTLHdCQUF3QixDQUFDLFNBQXNCO1FBQ3ZELHFGQUFxRjtRQUNyRixnRkFBZ0Y7UUFDaEYsMENBQTBDO1FBQzFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDbkUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHthc3NlcnR9IGZyb20gJ0Bjb29sb24vcGVjdGluJztcblxuaW1wb3J0IHtpc0VxdWFsfSBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHtQbGFjZUNvbXBvbmVudH0gZnJvbSAnLi4vcGxhY2UtY29tcG9uZW50JztcbmltcG9ydCB7UGxhY2VEZWZpbml0aW9ufSBmcm9tICcuLi9wbGFjZS1kZWZpbml0aW9uJztcbmltcG9ydCB7VXJsU25hcHNob3R9IGZyb20gJy4uL3VybC1zbmFwc2hvdCc7XG5pbXBvcnQge05hdmlnYXRpb25TZXNzaW9ufSBmcm9tICcuL3Nlc3Npb24vbmF2aWdhdGlvbi1zZXNzaW9uJztcblxuLyoqXG4gKiBUaGlzIGNsYXNzIGhhbmRsZXMgdGhlIGxvZ2ljIGFyb3VuZCBjYW5EZWFjdGl2YXRlIGZvciBhIGdpdmVuIHJvdXRlciBzdGF0ZSB0cmFuc2l0aW9uLiAgSXQncyBjb3JlIHJlc3BvbnNpYmlsaXRpZXMgYXJlOlxuICogMS4gRW5zdXJlIHdlIG9ubHkgYXNrIHRoZSBjb21wb25lbnQgdG8gZGVhY3RpdmF0ZSBvbmNlIG9uIGEgZ2l2ZW4gbmF2aWdhdGlvbiBjeWNsZSAoc2luY2UgdmlzaXQgc2FuaXRpc2F0aW9uIGNhbiByZXN1bHQgaW4gbXVsdGlwbGUgcm91bmQgdHJpcHMgdG8gdGhyb3VnaCB0aGUgcm91dGVyLilcbiAqIDIuIEVuc3VyZSBvbmx5IHRoZSBwcmltYXJ5IHBsYWNlIGNvbXBvbmVudCBpcyBhc2tlZCB3aGVuIHRoZXJlIGFyZSBuZXN0ZWQgcGxhY2VzLiAgVGhlIHByaW1hcnkgY29tcG9uZW50IGlzIHRoZSBvbmUgYXQgdGhlIHRvcFxuICogICAgb2YgdGhlIHJvdXRpbmcgY2hhbmdlIHRyZWUuXG4gKiAzLiBBdXRvbWF0aWNhbGx5IGhhbmRsZSBzdGFuZGFyZCBpbnRlcmFjdGlvbiBzY2VuYXJpb3Mgb24gdGhlIGNvbXBvbmVudHMgYmVoYWxmLlxuICovXG5leHBvcnQgY2xhc3MgUGxhY2VDb21wb25lbnREZWFjdGl2YXRpb25IYW5kbGVyIHtcblxuICBwcml2YXRlIGNhbkRlYWN0aXZhdGVQcm9taXNlOiBQcm9taXNlPGJvb2xlYW4gfCBVcmxTbmFwc2hvdD47XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgY29tcG9uZW50OiBQbGFjZUNvbXBvbmVudCwgcmVhZG9ubHkgbmF2aWdhdGlvblNlc3Npb246IE5hdmlnYXRpb25TZXNzaW9uLCByZWFkb25seSBpc1ByaW1hcnlDb21wb25lbnQ6IGJvb2xlYW4pIHtcbiAgICBhc3NlcnQubm90TmlsKGNvbXBvbmVudCk7XG4gIH1cblxuICBnZXQgcm91dGVySW50ZXJhY3Rpb25BZGFwdGVyKCkge1xuICAgIHJldHVybiB0aGlzLm5hdmlnYXRpb25TZXNzaW9uLmludGVyYWN0aW9uU2VydmljZUFkYXB0ZXI7XG4gIH1cblxuICBnZXQgdXJsU2VydmljZSgpIHtcbiAgICByZXR1cm4gdGhpcy5uYXZpZ2F0aW9uU2Vzc2lvbi51cmxTZXJ2aWNlO1xuICB9XG5cbiAgZ2V0IHBsYWNlRGVmaW5pdGlvbigpOlBsYWNlRGVmaW5pdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50LnBsYWNlRGVmaW5pdGlvbjtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGFzeW5jIGNhbkRlYWN0aXZhdGUoY3VycmVudFVybDogVXJsU25hcHNob3QsIG5leHRTdGF0ZTogVXJsU25hcHNob3QpOiBQcm9taXNlPGJvb2xlYW4gfCBVcmxTbmFwc2hvdD4ge1xuICAgIC8vIFdlJ2xsIGdldCBjYWxsZWQgbXVsdGlwbGUgdGltZXMgaWYgdGhlcmUncyBhbnkgcGFyYW1ldGVyIHNhbml0aXNhdGlvbiBzb1xuICAgIC8vIHdlIGFsd2F5cyByZXR1cm4gdHJ1ZSBpZiB3ZSBhY2NlcHRlZCBwcm9taXNlIGZyb20gYSBwcmV2aW91cyBjeWNsZSBvZiB0aGUgY3VycmVudFxuICAgIC8vIG5hdmlnYXRpb24gc2Vzc2lvbi5cbiAgICBpZiAoIXRoaXMuY2FuRGVhY3RpdmF0ZVByb21pc2UpIHtcbiAgICAgIC8vIGNvbnNvbGUubG9nKGBjcmVhdGluZyBkZWFjdGl2YXRlIHByb21pc2UgZm9yIC0+ICR7dGhpcy5jb21wb25lbnQuY29uc3RydWN0b3IubmFtZX1gKTtcbiAgICAgIHRoaXMuY2FuRGVhY3RpdmF0ZVByb21pc2UgPSB0aGlzLmNhbkRlYWN0aXZhdGVDb21wb25lbnQoY3VycmVudFVybCwgbmV4dFN0YXRlKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuY2FuRGVhY3RpdmF0ZVByb21pc2U7XG4gIH1cblxuXG4gIC8vIEBUcmFjZSgpXG4gIHByb3RlY3RlZCBhc3luYyBjYW5EZWFjdGl2YXRlQ29tcG9uZW50KGN1cnJlbnRVcmw6IFVybFNuYXBzaG90LCBuZXh0U3RhdGU6IFVybFNuYXBzaG90KTogUHJvbWlzZTxVcmxTbmFwc2hvdCB8IGJvb2xlYW4+IHtcbiAgICAvLyBBdXRvbWF0aWNhbGx5IGNhbmNlbCBhbnkgYWN0aXZlIGFjdGl2aXRpZXMgaWYgdGhlIG5hdmlnYXRpb24gc2Vzc2lvbiB3YXMgdHJpZ2dlcmVkIGJ5IHRoZSBiYWNrIGJ1dHRvbi5cbiAgICAvLyBJZiB3ZSBoYW5kbGVkIG1vcmUgdGhhbiBqdXN0IHRoZSBwb3Agc3RhdGUgdGhlbiBpdCBsZWFkcyB0byB0aGUgVUkgaWdub3JpbmcgY2xpY2tzIGFuZCBqdXN0IGNhbmNlbGxpbmcgdGhpbmdzIHdoaWNoIGlzIGRlZXBseSBkaXNjb25jZXJ0aW5nLlxuICAgIGlmICh0aGlzLm5hdmlnYXRpb25TZXNzaW9uLmlzUG9wU3RhdGUpIHtcblxuICAgICAgaWYgKHRoaXMuaXNQcmltYXJ5Q29tcG9uZW50ICYmIHRoaXMucm91dGVySW50ZXJhY3Rpb25BZGFwdGVyLmlzTW9kYWxBY3RpdmUoKSkge1xuICAgICAgICBjb25zdCByb3V0ZUlkcyA9IHRoaXMudXJsU2VydmljZS5nZXRBY3RpdmVJbnRlcmFjdGlvbklkc0Zyb21VcmwobmV4dFN0YXRlLnVybCk7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRJZHMgPSB0aGlzLnJvdXRlckludGVyYWN0aW9uQWRhcHRlci5nZXRBY3RpdmVJbnRlcmFjdGlvbkNvbnRleHRJZHMoKTtcbiAgICAgICAgaWYgKCFpc0VxdWFsKGN1cnJlbnRJZHMsIHJvdXRlSWRzKSkgeyAvLyB3aHkgYW0gSSBjaGVja2luZyB0aGlzPz8/P1xuICAgICAgICAgIGF3YWl0IHRoaXMucm91dGVySW50ZXJhY3Rpb25BZGFwdGVyLmNhbmNlbEN1cnJlbnRNb2RhbEludGVyYWN0aW9uKCk7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBjaGVjayBpZiB0aGUgY29tcG9uZW50IGhhcyBhbiBpbiBwbGFjZSBpbnRlcmFjdGlvblxuICAgICAgICBpZiAodGhpcy5yb3V0ZXJJbnRlcmFjdGlvbkFkYXB0ZXIuaXNDb21wb25lbnRJbnRlcmFjdGluZyh0aGlzLmNvbXBvbmVudCkpIHtcbiAgICAgICAgICBhd2FpdCB0aGlzLnJvdXRlckludGVyYWN0aW9uQWRhcHRlci5jYW5jZWxDb21wb25lbnRJbnRlcmFjdGlvbih0aGlzLmNvbXBvbmVudCk7XG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTm8gaW50ZXJhY3Rpb24gaW4gcHJvZ3Jlc3MsIHNvIGFzayB0aGUgY29tcG9uZW50IC5cbiAgICAvLyBUaGlzIG1heSBzdGFydCBhbiBpbnRlcmFjdGlvbiwgaGVuY2UgY2hlY2tpbmcgdGhlIGludGVyYWN0aW9uIGNvbnRleHQgYmVmb3JlIG5vdy4gSS5lLiBpZiB0aGUgcGxhY2UgcG9wcyB1cCB0aGUgZGlhbG9nLCBhbmRcbiAgICAvLyB0aGUgdXNlciBjbGlja3MgYmFjayBhZ2Fpbiwgd2UnbGwgcmUtZW50ZXIgaGVyZSBhbmQgZ28gYmFuZyB3aGVuIHRoZSBjb21wb25lbnQgdHJpZXMgdG8gb3BlbiBhbm90aGVyIGRpYWxvZy5cbiAgICBpZiAodGhpcy5pc0dvaW5nVG9BRGlmZmVyZW50UGxhY2UobmV4dFN0YXRlKSkge1xuICAgICAgY29uc3QgY2FuTGVhdmUgPSBhd2FpdCB0aGlzLmNvbXBvbmVudC5fY2FuTGVhdmVQbGFjZSh0aGlzLm5hdmlnYXRpb25TZXNzaW9uLmNhbkRlYWN0aXZhdGVJbnRlcmFjdGlvbkNvbnRleHQpO1xuICAgICAgLy8gVGhlIGNvbXBvbmVudCBoYXMgYW4gYWN0aXZlIGludGVyYWN0aW9uIGJ1dCBubyBkZWFjdGl2YXRpb24gaG9vay4gIFJhdGhlciB0aGFuIGd1ZXNzaW5nIHdoYXQgdG8gZG9cbiAgICAgIC8vIHdlJ2xsIGp1c3QgY2FuY2VsIHRoZSBuYXZpZ2F0aW9uIGFuZCBwcmludCBhIHdhcm5pbmcuXG4gICAgICBpZiAoY2FuTGVhdmUgJiYgdGhpcy5yb3V0ZXJJbnRlcmFjdGlvbkFkYXB0ZXIuaXNDb21wb25lbnRJbnRlcmFjdGluZyh0aGlzLmNvbXBvbmVudCkpIHtcbiAgICAgICAgY29uc29sZS53YXJuKCdSb3V0ZSBjaGFuZ2VkIHdoaWxlIGNvbXBvbmVudCBoYXMgYWN0aXZlIGludGVyYWN0aW9uLCBjYW5jZWxsaW5nIG5hdmlnYXRpb24nKTtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gY2FuTGVhdmU7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGVpdGhlciBhbiBpbnRlcmFjdGlvbiBvciB2aXNpdCBwYXJhbWV0ZXIgY2hhbmdlLlxuICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuY29tcG9uZW50Ll9jYW5DaGFuZ2VSb3V0ZVBhcmFtZXRlcnModGhpcy5uYXZpZ2F0aW9uU2Vzc2lvbi5jYW5EZWFjdGl2YXRlSW50ZXJhY3Rpb25Db250ZXh0LCBuZXh0U3RhdGUpO1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBpc0dvaW5nVG9BRGlmZmVyZW50UGxhY2UobmV4dFN0YXRlOiBVcmxTbmFwc2hvdCkge1xuICAgIC8vIEJlY2F1c2UgcGxhY2VzIHdpdGggYSByb3V0ZS1pZCBjb3ZlciB0d28gcm91dGUgc2VnbWVudHMgd2UgZ2V0IGFza2VkIHRvIGRlYWN0aXZhdGVcbiAgICAvLyBpZiB0aGUgcm91dGUgaWQgaXMgYWRkZWQgb3IgcmVtb3ZlZC4gIFNvIGlmIG91ciBwYXRoIGlzIHN0aWxsIHByZXNlbnQgdGhlIHVybFxuICAgIC8vIHRoZW4gd2Ugc2hvdWxkbid0IGRlYWN0aXZhdGUgdGhlIHBsYWNlLlxuICAgIHJldHVybiAhbmV4dFN0YXRlLmluY2x1ZGVzUGF0aE9mKHRoaXMuY29tcG9uZW50LnBsYWNlRGVmaW5pdGlvbik7XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import { lang } from '@coolon/typescript-utilities';
2
- import { isEqual } from 'lodash';
2
+ import { isEqual } from 'lodash-es';
3
3
  import { NavigationSession } from '../navigation-session';
4
4
  import { RemoveLastInteractionFromUrlNavigationSession } from './remove-last-interaction-from-url-navigation-session';
5
5
  export class SynchroniseInteractionContextIdsWithRoute extends NavigationSession {
@@ -13,10 +13,7 @@ export class SynchroniseInteractionContextIdsWithRoute extends NavigationSession
13
13
  return true;
14
14
  }
15
15
  notifyActive() {
16
- // TODO: Do I still need this??
17
- setTimeout(() => {
18
- this.syncInteractionIdsWithRouter();
19
- });
16
+ this.syncInteractionIdsWithRouter();
20
17
  }
21
18
  // @Trace()
22
19
  onRouterEnd(event) {
@@ -86,4 +83,4 @@ export class SynchroniseInteractionContextIdsWithRoute extends NavigationSession
86
83
  lang.methodNotSupported();
87
84
  }
88
85
  }
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luY2hyb25pc2UtaW50ZXJhY3Rpb24tY29udGV4dC1pZHMtd2l0aC1yb3V0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL3BsYWNlL25hdmlnYXRpb24vc2Vzc2lvbi9pbnRlcmFjdGlvbnMvc3luY2hyb25pc2UtaW50ZXJhY3Rpb24tY29udGV4dC1pZHMtd2l0aC1yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFFbEQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLFFBQVEsQ0FBQztBQUUvQixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUN4RCxPQUFPLEVBQUMsNkNBQTZDLEVBQUMsTUFBTSx1REFBdUQsQ0FBQztBQUVwSCxNQUFNLE9BQU8seUNBQTBDLFNBQVEsaUJBQWlCO0lBSVI7SUFGN0QsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUU1QixZQUFZLE9BQTBCLEVBQUUsV0FBbUIsRUFBVyxzQkFBK0I7UUFDbkcsS0FBSyxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztRQUR3QywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQVM7SUFFckcsQ0FBQztJQUVELElBQWEsaUJBQWlCO1FBQzVCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUdRLFlBQVk7UUFDbkIsK0JBQStCO1FBQy9CLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztRQUN0QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO0lBQ0YsV0FBVyxDQUFDLEtBQW9CO1FBQ3ZDLElBQUksQ0FBQyxPQUFPLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsV0FBVztJQUNGLGlCQUFp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RCxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0NBRUYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05hdmlnYXRpb25DYW5jZWwsIE5hdmlnYXRpb25FbmR9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge2xhbmd9IGZyb20gJ0Bjb29sb24vdHlwZXNjcmlwdC11dGlsaXRpZXMnO1xuXG5pbXBvcnQge2lzRXF1YWx9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQge05hdmlnYXRpb25Db250ZXh0fSBmcm9tICcuLi9uYXZpZ2F0aW9uLWNvbnRleHQnO1xuaW1wb3J0IHtOYXZpZ2F0aW9uU2Vzc2lvbn0gZnJvbSAnLi4vbmF2aWdhdGlvbi1zZXNzaW9uJztcbmltcG9ydCB7UmVtb3ZlTGFzdEludGVyYWN0aW9uRnJvbVVybE5hdmlnYXRpb25TZXNzaW9ufSBmcm9tICcuL3JlbW92ZS1sYXN0LWludGVyYWN0aW9uLWZyb20tdXJsLW5hdmlnYXRpb24tc2Vzc2lvbic7XG5cbmV4cG9ydCBjbGFzcyBTeW5jaHJvbmlzZUludGVyYWN0aW9uQ29udGV4dElkc1dpdGhSb3V0ZSBleHRlbmRzIE5hdmlnYXRpb25TZXNzaW9uIHtcblxuICByZWFkb25seSBpc1BvcFN0YXRlID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoY29udGV4dDogTmF2aWdhdGlvbkNvbnRleHQsIHN0YXJ0aW5nVXJsOiBzdHJpbmcsIHJlYWRvbmx5IHdhc1RyaWdnZXJlZEJ5UG9wU3RhdGU6IGJvb2xlYW4pIHtcbiAgICBzdXBlcihjb250ZXh0LCBzdGFydGluZ1VybCk7XG4gIH1cblxuICBvdmVycmlkZSBnZXQgaXNJbnRlcmFjdGlvblN5bmMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuXG4gIG92ZXJyaWRlIG5vdGlmeUFjdGl2ZSgpIHtcbiAgICAvLyBUT0RPOiBEbyBJIHN0aWxsIG5lZWQgdGhpcz8/XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnN5bmNJbnRlcmFjdGlvbklkc1dpdGhSb3V0ZXIoKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIG92ZXJyaWRlIG9uUm91dGVyRW5kKGV2ZW50OiBOYXZpZ2F0aW9uRW5kKTogdm9pZCB7XG4gICAgdGhpcy5jb250ZXh0LmZpbmlzaFJvdXRpbmdTZXNzaW9uKCk7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBvdmVycmlkZSBvblJvdXRlckNhbmNlbGxlZChldmVudDogTmF2aWdhdGlvbkNhbmNlbCk6IHZvaWQge1xuICAgIHRoaXMuY29udGV4dC5maW5pc2hSb3V0aW5nU2Vzc2lvbigpO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgc3luY0ludGVyYWN0aW9uSWRzV2l0aFJvdXRlcigpOiB2b2lkIHtcbiAgICBjb25zdCBjdXJyZW50SWRzID0gdGhpcy5pbnRlcmFjdGlvblNlcnZpY2VBZGFwdGVyLmdldEFjdGl2ZUludGVyYWN0aW9uQ29udGV4dElkcygpO1xuICAgIGNvbnN0IHByZXZpb3VzSWRzID0gdGhpcy51cmxTZXJ2aWNlLmdldEN1cnJlbnRMb2NhdGlvblVybFNuYXBzaG90KCkuZ2V0SW50ZXJhY3Rpb25JZHMoKTtcbiAgICAvLyBjb25zb2xlLmxvZyhgLS0tPiBzeW5jaHJvbmlzZUludGVyYWN0aW9uSWRzYCwgeyBpczogY3VycmVudElkcy5qb2luKCcsJyksIHdhczogcHJldmlvdXNJZHMuam9pbignLCcpIH0pO1xuICAgIGlmIChpc0VxdWFsKGN1cnJlbnRJZHMsIHByZXZpb3VzSWRzKSkge1xuICAgICAgLy8gY29uc29sZS5sb2coJyMjIyBBY3Rpdml0eSBjb250ZXh0IGlkcyB3ZXJlIHRoZSBzYW1lLCBza2lwcGluZycpO1xuICAgICAgdGhpcy5jb250ZXh0LmZpbmlzaFJvdXRpbmdTZXNzaW9uKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChjdXJyZW50SWRzLmxlbmd0aCA+IHByZXZpb3VzSWRzLmxlbmd0aCkge1xuICAgICAgICBjb25zdCBpc0ZpcnN0QWN0aXZpdHkgPSBjdXJyZW50SWRzLmxlbmd0aCA+IHByZXZpb3VzSWRzLmxlbmd0aCAmJiBwcmV2aW91c0lkcy5sZW5ndGggPCAxO1xuICAgICAgICB0aGlzLmFkZEFjdGl2aXR5Q29udGV4dFRvUm91dGUoY3VycmVudElkcywgaXNGaXJzdEFjdGl2aXR5KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMucmVtb3ZlQWN0aXZpdHlDb250ZXh0RnJvbVJvdXRlKGN1cnJlbnRJZHMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIGFkZEFjdGl2aXR5Q29udGV4dFRvUm91dGUoYWN0aXZlSW50ZXJhY3Rpb25Db250ZXh0SWRzOiByZWFkb25seSBzdHJpbmdbXSwgaXNGaXJzdDogYm9vbGVhbik6IHZvaWQge1xuICAgIGNvbnN0IHVybFNuYXBzaG90ID0gdGhpcy51cmxTZXJ2aWNlLmdldEN1cnJlbnRSb3V0ZXJTbmFwc2hvdCgpLnVwZGF0ZUludGVyYWN0aW9uSWRzKGFjdGl2ZUludGVyYWN0aW9uQ29udGV4dElkcyk7XG4gICAgdGhpcy5jb250ZXh0Lm5hdmlnYXRlQnlVcmwodXJsU25hcHNob3QsIHtcbiAgICAgIHJlcGxhY2VVcmw6ICFpc0ZpcnN0XG4gICAgfSkudGhlbihyZXN1bHQgPT4ge1xuICAgICAgaWYgKCF0aGlzLnVybFNlcnZpY2UuZ2V0Q3VycmVudExvY2F0aW9uVXJsU25hcHNob3QoKS5oYXNJbnRlcmFjdGlvbklkcyhhY3RpdmVJbnRlcmFjdGlvbkNvbnRleHRJZHMpKSB7XG4gICAgICAgIGxhbmcuaWxsZWdhbFN0YXRlKGBFeHBlY3RlZCB1cmwgdG8gYmUgJHt1cmxTbmFwc2hvdC51cmx9IGJ1dCB3YXMgJHt0aGlzLnVybFNlcnZpY2UuZ2V0Q3VycmVudExvY2F0aW9uVXJsKCl9YCk7XG4gICAgICAgIC8vIHRoaXMudXJsU2VydmljZS5yZXNldEJyb3dzZXJMb2NhdGlvbih1cmxTbmFwc2hvdC51cmwsIHtyZXBsYWNlQ3VycmVudDogIWlzRmlyc3R9KVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cblxuICAvLyBAVHJhY2UoKVxuICByZW1vdmVBY3Rpdml0eUNvbnRleHRGcm9tUm91dGUoYWN0aXZlSW50ZXJhY3Rpb25Db250ZXh0SWQ6IHJlYWRvbmx5IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgY29uc3QgdXJsU25hcHNob3QgPSB0aGlzLnVybFNlcnZpY2UuZ2V0Q3VycmVudFJvdXRlclNuYXBzaG90KCkudXBkYXRlSW50ZXJhY3Rpb25JZHMoYWN0aXZlSW50ZXJhY3Rpb25Db250ZXh0SWQpO1xuICAgIGNvbnN0IGlzUmVtb3ZpbmdMYXN0QWN0aXZpdHkgPSBhY3RpdmVJbnRlcmFjdGlvbkNvbnRleHRJZC5sZW5ndGggPCAxO1xuICAgIGlmIChpc1JlbW92aW5nTGFzdEFjdGl2aXR5KSB7XG4gICAgICBpZiAodGhpcy53YXNUcmlnZ2VyZWRCeVBvcFN0YXRlKSB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdyZW1vdmFsIHdhcyB0cmlnZ2VyZWQgYnkgcG9wIHN0YXRlLCBub3RoaW5nIHRvIGRvLicpO1xuICAgICAgICAvLyAgIG5vb3AuICBPdXIgdXJsIHdpbGwgYmUgYmFjayB0byB0aGUgbm9uIGludGVyYWN0aW9uIHZlcnNpb24gbm93IHNvIHdlIGRvbnQnIG5lZWQgdG8gZG8gYW55dGhpbmcuXG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBub3cgd2UganVzdCBwb3Agb3VyIGludGVyYWN0aW9uIGlkJ3MgZnJvbSB0aGUgYnJvd3NlciBoaXN0b3J5LlxuICAgICAgICAvLyBjb25zb2xlLmxvZyhgUmVtb3ZhbCBvZiB0aGUgbGFzdCBhY3Rpdml0eSB3YXNuJ3QgdHJpZ2dlcmVkIGJ5IHBvcCBzdGF0ZSBzbyB3ZSBoYXZlIHRvIHRyaWdnZXIgb25lIHRvIGNsZWFuIHRoZSBoaXN0b3J5YCk7XG4gICAgICAgIGNvbnN0IHNlc3Npb24gPSBuZXcgUmVtb3ZlTGFzdEludGVyYWN0aW9uRnJvbVVybE5hdmlnYXRpb25TZXNzaW9uKHRoaXMuY29udGV4dCwgdGhpcy51cmxTZXJ2aWNlLmdldEN1cnJlbnRSb3V0ZXJVcmwoKSk7XG4gICAgICAgIHRoaXMuY29udGV4dC50cmFuc2l0aW9uVG8oc2Vzc2lvbik7XG4gICAgICAgIHRoaXMudXJsU2VydmljZS5iYWNrKCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHdlJ3ZlIHJlbW92ZWQgYW4gaW50ZXJhY3Rpb24sIGJ1dCB3ZSBzdGlsbCBoYXZlIHJlbWFpbmluZyBhY3Rpdml0aWVzIHNvIHdlXG4gICAgICAvLyB1cGRhdGUgdGhlIHVybCBpbiBwbGFjZSBpZiBpdCB3YXNuJ3QgYSBwb3Agc3RhdGUuIElmIGl0IHdhcyBhIHBvcCBzdGF0ZSB3ZSBuZWVkXG4gICAgICAvLyB0byAgcHVzaCBpdCBiYWNrIHVwLlxuICAgICAgLy8gdGhpcy51cmxTZXJ2aWNlLnJlc2V0QnJvd3NlckxvY2F0aW9uKHVybFNuYXBzaG90LnVybCwgeyByZXBsYWNlQ3VycmVudDogIXRoaXMud2FzVHJpZ2dlcmVkQnlQb3BTdGF0ZSB9KTtcbiAgICAgIHRoaXMuY29udGV4dC5uYXZpZ2F0ZUJ5VXJsKHVybFNuYXBzaG90LCB7IHJlcGxhY2VVcmw6ICF0aGlzLndhc1RyaWdnZXJlZEJ5UG9wU3RhdGUgfSk7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlQ2FuRGVhY3RpdmF0ZUNhbmNlbGxlZEV2ZW50U2NlbmFyaW8obmV3VXJsOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBsYW5nLm1ldGhvZE5vdFN1cHBvcnRlZCgpO1xuICB9XG5cbn1cbiJdfQ==
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luY2hyb25pc2UtaW50ZXJhY3Rpb24tY29udGV4dC1pZHMtd2l0aC1yb3V0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL3BsYWNlL25hdmlnYXRpb24vc2Vzc2lvbi9pbnRlcmFjdGlvbnMvc3luY2hyb25pc2UtaW50ZXJhY3Rpb24tY29udGV4dC1pZHMtd2l0aC1yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFFbEQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUVsQyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUN4RCxPQUFPLEVBQUMsNkNBQTZDLEVBQUMsTUFBTSx1REFBdUQsQ0FBQztBQUVwSCxNQUFNLE9BQU8seUNBQTBDLFNBQVEsaUJBQWlCO0lBSVI7SUFGN0QsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUU1QixZQUFZLE9BQTBCLEVBQUUsV0FBbUIsRUFBVyxzQkFBK0I7UUFDbkcsS0FBSyxDQUFDLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQztRQUR3QywyQkFBc0IsR0FBdEIsc0JBQXNCLENBQVM7SUFFckcsQ0FBQztJQUVELElBQWEsaUJBQWlCO1FBQzVCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUdRLFlBQVk7UUFDbkIsSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUVELFdBQVc7SUFDRixXQUFXLENBQUMsS0FBb0I7UUFDdkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxXQUFXO0lBQ0YsaUJBQWlCLENBQUMsS0FBdUI7UUFDaEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lB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ZW50IjpbImltcG9ydCB7TmF2aWdhdGlvbkNhbmNlbCwgTmF2aWdhdGlvbkVuZH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7bGFuZ30gZnJvbSAnQGNvb2xvbi90eXBlc2NyaXB0LXV0aWxpdGllcyc7XG5cbmltcG9ydCB7aXNFcXVhbH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7TmF2aWdhdGlvbkNvbnRleHR9IGZyb20gJy4uL25hdmlnYXRpb24tY29udGV4dCc7XG5pbXBvcnQge05hdmlnYXRpb25TZXNzaW9ufSBmcm9tICcuLi9uYXZpZ2F0aW9uLXNlc3Npb24nO1xuaW1wb3J0IHtSZW1vdmVMYXN0SW50ZXJhY3Rpb25Gcm9tVXJsTmF2aWdhdGlvblNlc3Npb259IGZyb20gJy4vcmVtb3ZlLWxhc3QtaW50ZXJhY3Rpb24tZnJvbS11cmwtbmF2aWdhdGlvbi1zZXNzaW9uJztcblxuZXhwb3J0IGNsYXNzIFN5bmNocm9uaXNlSW50ZXJhY3Rpb25Db250ZXh0SWRzV2l0aFJvdXRlIGV4dGVuZHMgTmF2aWdhdGlvblNlc3Npb24ge1xuXG4gIHJlYWRvbmx5IGlzUG9wU3RhdGUgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3Rvcihjb250ZXh0OiBOYXZpZ2F0aW9uQ29udGV4dCwgc3RhcnRpbmdVcmw6IHN0cmluZywgcmVhZG9ubHkgd2FzVHJpZ2dlcmVkQnlQb3BTdGF0ZTogYm9vbGVhbikge1xuICAgIHN1cGVyKGNvbnRleHQsIHN0YXJ0aW5nVXJsKTtcbiAgfVxuXG4gIG92ZXJyaWRlIGdldCBpc0ludGVyYWN0aW9uU3luYygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG5cbiAgb3ZlcnJpZGUgbm90aWZ5QWN0aXZlKCkge1xuICAgIHRoaXMuc3luY0ludGVyYWN0aW9uSWRzV2l0aFJvdXRlcigpO1xuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgb3ZlcnJpZGUgb25Sb3V0ZXJFbmQoZXZlbnQ6IE5hdmlnYXRpb25FbmQpOiB2b2lkIHtcbiAgICB0aGlzLmNvbnRleHQuZmluaXNoUm91dGluZ1Nlc3Npb24oKTtcbiAgfVxuXG4gIC8vIEBUcmFjZSgpXG4gIG92ZXJyaWRlIG9uUm91dGVyQ2FuY2VsbGVkKGV2ZW50OiBOYXZpZ2F0aW9uQ2FuY2VsKTogdm9pZCB7XG4gICAgdGhpcy5jb250ZXh0LmZpbmlzaFJvdXRpbmdTZXNzaW9uKCk7XG4gIH1cblxuICAvLyBAVHJhY2UoKVxuICBzeW5jSW50ZXJhY3Rpb25JZHNXaXRoUm91dGVyKCk6IHZvaWQge1xuICAgIGNvbnN0IGN1cnJlbnRJZHMgPSB0aGlzLmludGVyYWN0aW9uU2VydmljZUFkYXB0ZXIuZ2V0QWN0aXZlSW50ZXJhY3Rpb25Db250ZXh0SWRzKCk7XG4gICAgY29uc3QgcHJldmlvdXNJZHMgPSB0aGlzLnVybFNlcnZpY2UuZ2V0Q3VycmVudExvY2F0aW9uVXJsU25hcHNob3QoKS5nZXRJbnRlcmFjdGlvbklkcygpO1xuICAgIC8vIGNvbnNvbGUubG9nKGAtLS0+IHN5bmNocm9uaXNlSW50ZXJhY3Rpb25JZHNgLCB7IGlzOiBjdXJyZW50SWRzLmpvaW4oJywnKSwgd2FzOiBwcmV2aW91c0lkcy5qb2luKCcsJykgfSk7XG4gICAgaWYgKGlzRXF1YWwoY3VycmVudElkcywgcHJldmlvdXNJZHMpKSB7XG4gICAgICAvLyBjb25zb2xlLmxvZygnIyMjIEFjdGl2aXR5IGNvbnRleHQgaWRzIHdlcmUgdGhlIHNhbWUsIHNraXBwaW5nJyk7XG4gICAgICB0aGlzLmNvbnRleHQuZmluaXNoUm91dGluZ1Nlc3Npb24oKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKGN1cnJlbnRJZHMubGVuZ3RoID4gcHJldmlvdXNJZHMubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IGlzRmlyc3RBY3Rpdml0eSA9IGN1cnJlbnRJZHMubGVuZ3RoID4gcHJldmlvdXNJZHMubGVuZ3RoICYmIHByZXZpb3VzSWRzLmxlbmd0aCA8IDE7XG4gICAgICAgIHRoaXMuYWRkQWN0aXZpdHlDb250ZXh0VG9Sb3V0ZShjdXJyZW50SWRzLCBpc0ZpcnN0QWN0aXZpdHkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5yZW1vdmVBY3Rpdml0eUNvbnRleHRGcm9tUm91dGUoY3VycmVudElkcyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQFRyYWNlKClcbiAgYWRkQWN0aXZpdHlDb250ZXh0VG9Sb3V0ZShhY3RpdmVJbnRlcmFjdGlvbkNvbnRleHRJZHM6IHJlYWRvbmx5IHN0cmluZ1tdLCBpc0ZpcnN0OiBib29sZWFuKTogdm9pZCB7XG4gICAgY29uc3QgdXJsU25hcHNob3QgPSB0aGlzLnVybFNlcnZpY2UuZ2V0Q3VycmVudFJvdXRlclNuYXBzaG90KCkudXBkYXRlSW50ZXJhY3Rpb25JZHMoYWN0aXZlSW50ZXJhY3Rpb25Db250ZXh0SWRzKTtcbiAgICB0aGlzLmNvbnRleHQubmF2aWdhdGVCeVVybCh1cmxTbmFwc2hvdCwge1xuICAgICAgcmVwbGFjZVVybDogIWlzRmlyc3RcbiAgICB9KS50aGVuKHJlc3VsdCA9PiB7XG4gICAgICBpZiAoIXRoaXMudXJsU2VydmljZS5nZXRDdXJyZW50TG9jYXRpb25VcmxTbmFwc2hvdCgpLmhhc0ludGVyYWN0aW9uSWRzKGFjdGl2ZUludGVyYWN0aW9uQ29udGV4dElkcykpIHtcbiAgICAgICAgbGFuZy5pbGxlZ2FsU3RhdGUoYEV4cGVjdGVkIHVybCB0byBiZSAke3VybFNuYXBzaG90LnVybH0gYnV0IHdhcyAke3RoaXMudXJsU2VydmljZS5nZXRDdXJyZW50TG9jYXRpb25VcmwoKX1gKTtcbiAgICAgICAgLy8gdGhpcy51cmxTZXJ2aWNlLnJlc2V0QnJvd3NlckxvY2F0aW9uKHVybFNuYXBzaG90LnVybCwge3JlcGxhY2VDdXJyZW50OiAhaXNGaXJzdH0pXG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuXG4gIC8vIEBUcmFjZSgpXG4gIHJlbW92ZUFjdGl2aXR5Q29udGV4dEZyb21Sb3V0ZShhY3RpdmVJbnRlcmFjdGlvbkNvbnRleHRJZDogcmVhZG9ubHkgc3RyaW5nW10pOiB2b2lkIHtcbiAgICBjb25zdCB1cmxTbmFwc2hvdCA9IHRoaXMudXJsU2VydmljZS5nZXRDdXJyZW50Um91dGVyU25hcHNob3QoKS51cGRhdGVJbnRlcmFjdGlvbklkcyhhY3RpdmVJbnRlcmFjdGlvbkNvbnRleHRJZCk7XG4gICAgY29uc3QgaXNSZW1vdmluZ0xhc3RBY3Rpdml0eSA9IGFjdGl2ZUludGVyYWN0aW9uQ29udGV4dElkLmxlbmd0aCA8IDE7XG4gICAgaWYgKGlzUmVtb3ZpbmdMYXN0QWN0aXZpdHkpIHtcbiAgICAgIGlmICh0aGlzLndhc1RyaWdnZXJlZEJ5UG9wU3RhdGUpIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ3JlbW92YWwgd2FzIHRyaWdnZXJlZCBieSBwb3Agc3RhdGUsIG5vdGhpbmcgdG8gZG8uJyk7XG4gICAgICAgIC8vICAgbm9vcC4gIE91ciB1cmwgd2lsbCBiZSBiYWNrIHRvIHRoZSBub24gaW50ZXJhY3Rpb24gdmVyc2lvbiBub3cgc28gd2UgZG9udCcgbmVlZCB0byBkbyBhbnl0aGluZy5cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIG5vdyB3ZSBqdXN0IHBvcCBvdXIgaW50ZXJhY3Rpb24gaWQncyBmcm9tIHRoZSBicm93c2VyIGhpc3RvcnkuXG4gICAgICAgIC8vIGNvbnNvbGUubG9nKGBSZW1vdmFsIG9mIHRoZSBsYXN0IGFjdGl2aXR5IHdhc24ndCB0cmlnZ2VyZWQgYnkgcG9wIHN0YXRlIHNvIHdlIGhhdmUgdG8gdHJpZ2dlciBvbmUgdG8gY2xlYW4gdGhlIGhpc3RvcnlgKTtcbiAgICAgICAgY29uc3Qgc2Vzc2lvbiA9IG5ldyBSZW1vdmVMYXN0SW50ZXJhY3Rpb25Gcm9tVXJsTmF2aWdhdGlvblNlc3Npb24odGhpcy5jb250ZXh0LCB0aGlzLnVybFNlcnZpY2UuZ2V0Q3VycmVudFJvdXRlclVybCgpKTtcbiAgICAgICAgdGhpcy5jb250ZXh0LnRyYW5zaXRpb25UbyhzZXNzaW9uKTtcbiAgICAgICAgdGhpcy51cmxTZXJ2aWNlLmJhY2soKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gd2UndmUgcmVtb3ZlZCBhbiBpbnRlcmFjdGlvbiwgYnV0IHdlIHN0aWxsIGhhdmUgcmVtYWluaW5nIGFjdGl2aXRpZXMgc28gd2VcbiAgICAgIC8vIHVwZGF0ZSB0aGUgdXJsIGluIHBsYWNlIGlmIGl0IHdhc24ndCBhIHBvcCBzdGF0ZS4gSWYgaXQgd2FzIGEgcG9wIHN0YXRlIHdlIG5lZWRcbiAgICAgIC8vIHRvICBwdXNoIGl0IGJhY2sgdXAuXG4gICAgICAvLyB0aGlzLnVybFNlcnZpY2UucmVzZXRCcm93c2VyTG9jYXRpb24odXJsU25hcHNob3QudXJsLCB7IHJlcGxhY2VDdXJyZW50OiAhdGhpcy53YXNUcmlnZ2VyZWRCeVBvcFN0YXRlIH0pO1xuICAgICAgdGhpcy5jb250ZXh0Lm5hdmlnYXRlQnlVcmwodXJsU25hcHNob3QsIHtyZXBsYWNlVXJsOiAhdGhpcy53YXNUcmlnZ2VyZWRCeVBvcFN0YXRlfSk7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlQ2FuRGVhY3RpdmF0ZUNhbmNlbGxlZEV2ZW50U2NlbmFyaW8obmV3VXJsOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBsYW5nLm1ldGhvZE5vdFN1cHBvcnRlZCgpO1xuICB9XG5cbn1cbiJdfQ==