@skyux/data-manager 6.15.0 → 6.17.1

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.
@@ -2594,7 +2594,7 @@
2594
2594
  "sources": [
2595
2595
  {
2596
2596
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2597
- "line": 221,
2597
+ "line": 227,
2598
2598
  "character": 9
2599
2599
  }
2600
2600
  ],
@@ -2623,7 +2623,7 @@
2623
2623
  "sources": [
2624
2624
  {
2625
2625
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2626
- "line": 149,
2626
+ "line": 155,
2627
2627
  "character": 9
2628
2628
  }
2629
2629
  ],
@@ -2652,7 +2652,7 @@
2652
2652
  "sources": [
2653
2653
  {
2654
2654
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2655
- "line": 130,
2655
+ "line": 136,
2656
2656
  "character": 9
2657
2657
  }
2658
2658
  ],
@@ -2726,7 +2726,7 @@
2726
2726
  "sources": [
2727
2727
  {
2728
2728
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2729
- "line": 228,
2729
+ "line": 234,
2730
2730
  "character": 9
2731
2731
  }
2732
2732
  ],
@@ -2768,7 +2768,7 @@
2768
2768
  "sources": [
2769
2769
  {
2770
2770
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2771
- "line": 140,
2771
+ "line": 146,
2772
2772
  "character": 9
2773
2773
  }
2774
2774
  ],
@@ -2810,7 +2810,7 @@
2810
2810
  "sources": [
2811
2811
  {
2812
2812
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2813
- "line": 175,
2813
+ "line": 181,
2814
2814
  "character": 9
2815
2815
  }
2816
2816
  ],
@@ -2839,7 +2839,7 @@
2839
2839
  "sources": [
2840
2840
  {
2841
2841
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2842
- "line": 144,
2842
+ "line": 150,
2843
2843
  "character": 9
2844
2844
  }
2845
2845
  ],
@@ -2881,7 +2881,7 @@
2881
2881
  "sources": [
2882
2882
  {
2883
2883
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2884
- "line": 214,
2884
+ "line": 220,
2885
2885
  "character": 9
2886
2886
  }
2887
2887
  ],
@@ -2910,7 +2910,7 @@
2910
2910
  "sources": [
2911
2911
  {
2912
2912
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2913
- "line": 135,
2913
+ "line": 141,
2914
2914
  "character": 9
2915
2915
  }
2916
2916
  ],
@@ -82,6 +82,10 @@ export class SkyDataManagerToolbarComponent {
82
82
  .pipe(takeUntil(this._ngUnsubscribe))
83
83
  .subscribe((views) => {
84
84
  this.views = views;
85
+ if (this.activeView) {
86
+ this.activeView = this.dataManagerService.getViewById(this.activeView.id);
87
+ }
88
+ this.changeDetector.markForCheck();
85
89
  });
86
90
  this.dataManagerService
87
91
  .getDataStateUpdates(this._source)
@@ -178,4 +182,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
178
182
  type: Component,
179
183
  args: [{ selector: 'sky-data-manager-toolbar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"sky-data-manager-toolbar\">\n <sky-toolbar>\n <sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-primary-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.filterButtonEnabled\">\n <sky-filter-button\n [showButtonText]=\"activeView?.showFilterButtonText\"\n (filterButtonClick)=\"filterButtonClicked()\"\n >\n </sky-filter-button>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.sortEnabled\">\n <sky-sort [showButtonText]=\"activeView?.showSortButtonText\">\n <sky-sort-item\n *ngFor=\"let item of dataManagerConfig?.sortOptions\"\n [active]=\"activeSortOptionId && activeSortOptionId === item.id\"\n (itemSelect)=\"sortSelected(item)\"\n >\n {{ item.label }}\n </sky-sort-item>\n </sky-sort>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.columnPickerEnabled\">\n <button\n class=\"sky-btn sky-btn-default sky-col-picker-btn\"\n type=\"button\"\n [attr.aria-label]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n [attr.title]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n (click)=\"openColumnPicker()\"\n >\n <sky-icon icon=\"columns\"></sky-icon>\n <span class=\"sky-column-selector-action-btn-text\">\n {{ 'skyux_data_manager_columns_button_title' | skyLibResources }}\n </span>\n </button>\n </sky-toolbar-item>\n\n <ng-content select=\"sky-data-manager-toolbar-left-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.searchEnabled\">\n <sky-search\n [expandMode]=\"activeView?.searchExpandMode\"\n [placeholderText]=\"activeView?.searchPlaceholderText\"\n [searchText]=\"dataState?.searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n\n <sky-toolbar-view-actions>\n <ng-content select=\"sky-data-manager-toolbar-right-item\"></ng-content>\n <sky-radio-group\n *ngIf=\"activeView && views && views.length > 1\"\n [ariaLabel]=\"'data view switcher'\"\n class=\"sky-switch-icon-group\"\n >\n <sky-radio\n *ngFor=\"let view of views\"\n [attr.name]=\"view.name\"\n [attr.aria-label]=\"view.name\"\n [icon]=\"view.icon\"\n [value]=\"view.id\"\n [label]=\"view.name\"\n [(ngModel)]=\"activeView.id\"\n (change)=\"onViewChange(view.id)\"\n >\n </sky-radio>\n </sky-radio-group>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-section\"></ng-content>\n </sky-toolbar>\n\n <sky-toolbar\n *ngIf=\"activeView?.multiselectToolbarEnabled\"\n class=\"sky-data-manager-multiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{ 'skyux_data_manager_select_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{ 'skyux_data_manager_clear_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [checked]=\"onlyShowSelected\"\n (change)=\"onOnlyShowSelected($event)\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_data_manager_show_selected_option_title' | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n</div>\n", styles: [":host .sky-col-picker-btn .sky-column-selector-action-btn-text{display:none}:host-context(.sky-responsive-container-xs) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-sm) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-md) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-lg) .sky-col-picker-btn .sky-column-selector-action-btn-text{display:none}@media (min-width: 768px){:host .sky-col-picker-btn .sky-column-selector-action-btn-text{display:inline}}:host-context(.sky-responsive-container-sm) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-md) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-lg) .sky-col-picker-btn .sky-column-selector-action-btn-text{display:inline}\n"] }]
180
184
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.SkyDataManagerService }, { type: i2.SkyModalService }, { type: i3.SkyDataManagerColumnPickerService }]; } });
181
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1tYW5hZ2VyLXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGEtbWFuYWdlci9zcmMvbGliL21vZHVsZXMvZGF0YS1tYW5hZ2VyL2RhdGEtbWFuYWdlci10b29sYmFyL2RhdGEtbWFuYWdlci10b29sYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kYXRhLW1hbmFnZXIvc3JjL2xpYi9tb2R1bGVzL2RhdGEtbWFuYWdlci9kYXRhLW1hbmFnZXItdG9vbGJhci9kYXRhLW1hbmFnZXItdG9vbGJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEdBR1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFxQixlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDckgsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDckgsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFPaEU7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyw4QkFBOEI7SUFvRHpDLFlBQ1UsY0FBaUMsRUFDakMsa0JBQXlDLEVBQ3pDLFlBQTZCLEVBQzdCLG1CQUFzRDtRQUh0RCxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFD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S0FBd0I7UUFDaEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQ2hELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDeEUsQ0FBQzs7MkhBcE1VLDhCQUE4QjsrR0FBOUIsOEJBQThCLGdFQ2xDM0Msb25JQXNIQTsyRkRwRmEsOEJBQThCO2tCQU4xQyxTQUFTOytCQUNFLDBCQUEwQixtQkFHbkIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lDaGVja2JveENoYW5nZSB9IGZyb20gJ0Bza3l1eC9mb3Jtcyc7XG5pbXBvcnQgeyBTa3lNb2RhbENsb3NlQXJncywgU2t5TW9kYWxTZXJ2aWNlIH0gZnJvbSAnQHNreXV4L21vZGFscyc7XG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJDb250ZXh0IH0gZnJvbSAnLi4vZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXIvZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXItY29udGV4dCc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlckNvbHVtblBpY2tlclNlcnZpY2UgfSBmcm9tICcuLi9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNreURhdGFNYW5hZ2VyRmlsdGVyTW9kYWxDb250ZXh0IH0gZnJvbSAnLi4vZGF0YS1tYW5hZ2VyLWZpbHRlci1jb250ZXh0JztcbmltcG9ydCB7IFNreURhdGFNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4uL2RhdGEtbWFuYWdlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyT3B0aW9uIH0gZnJvbSAnLi4vbW9kZWxzL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyLW9wdGlvbic7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlckNvbmZpZyB9IGZyb20gJy4uL21vZGVscy9kYXRhLW1hbmFnZXItY29uZmlnJztcbmltcG9ydCB7IFNreURhdGFNYW5hZ2VyU29ydE9wdGlvbiB9IGZyb20gJy4uL21vZGVscy9kYXRhLW1hbmFnZXItc29ydC1vcHRpb24nO1xuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJTdGF0ZSB9IGZyb20gJy4uL21vZGVscy9kYXRhLW1hbmFnZXItc3RhdGUnO1xuaW1wb3J0IHsgU2t5RGF0YVZpZXdDb25maWcgfSBmcm9tICcuLi9tb2RlbHMvZGF0YS12aWV3LWNvbmZpZyc7XG5cbi8qKlxuICogUmVuZGVycyBhIGBza3ktdG9vbGJhcmAgd2l0aCB0aGUgY29udGVudHMgc3BlY2lmaWVkIGJ5IHRoZSBhY3RpdmUgdmlldydzIGBTa3lEYXRhVmlld0NvbmZpZ2BcbiAqIGFuZCB0aGUgYFNreURhdGFNYW5hZ2VyVG9vbGJhckxlZnRJdGVtc0NvbXBvbmVudGAsIGBTa3lEYXRhTWFuYWdlclRvb2xiYXJSaWdodEl0ZW1zQ29tcG9uZW50YCxcbiAqIGFuZCBgU2t5RGF0YU1hbmFnZXJUb29sYmFyU2VjdGlvbkNvbXBvbmVudGAgd3JhcHBlcnMuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1kYXRhLW1hbmFnZXItdG9vbGJhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRhLW1hbmFnZXItdG9vbGJhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RhdGEtbWFuYWdlci10b29sYmFyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lEYXRhTWFuYWdlclRvb2xiYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE9uSW5pdCB7XG4gIHB1YmxpYyBnZXQgYWN0aXZlU29ydE9wdGlvbklkKCk6IHN0cmluZyB7XG4gICAgY29uc3QgYWN0aXZlU29ydE9wdGlvbiA9IHRoaXMuZGF0YVN0YXRlICYmIHRoaXMuZGF0YVN0YXRlLmFjdGl2ZVNvcnRPcHRpb247XG4gICAgcmV0dXJuIGFjdGl2ZVNvcnRPcHRpb24gJiYgYWN0aXZlU29ydE9wdGlvbi5pZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWN0aXZlVmlldygpOiBTa3lEYXRhVmlld0NvbmZpZyB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZVZpZXc7XG4gIH1cblxuICBwdWJsaWMgc2V0IGFjdGl2ZVZpZXcodmFsdWU6IFNreURhdGFWaWV3Q29uZmlnKSB7XG4gICAgdGhpcy5fYWN0aXZlVmlldyA9IHZhbHVlO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRhdGFNYW5hZ2VyQ29uZmlnKCk6IFNreURhdGFNYW5hZ2VyQ29uZmlnIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YU1hbmFnZXJDb25maWc7XG4gIH1cblxuICBwdWJsaWMgc2V0IGRhdGFNYW5hZ2VyQ29uZmlnKHZhbHVlOiBTa3lEYXRhTWFuYWdlckNvbmZpZykge1xuICAgIHRoaXMuX2RhdGFNYW5hZ2VyQ29uZmlnID0gdmFsdWU7XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGF0YVN0YXRlKCk6IFNreURhdGFNYW5hZ2VyU3RhdGUge1xuICAgIHJldHVybiB0aGlzLl9kYXRhU3RhdGU7XG4gIH1cblxuICBwdWJsaWMgc2V0IGRhdGFTdGF0ZSh2YWx1ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZSkge1xuICAgIHRoaXMuX2RhdGFTdGF0ZSA9IHZhbHVlO1xuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlLnVwZGF0ZURhdGFTdGF0ZSh2YWx1ZSwgdGhpcy5fc291cmNlKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmlld3MoKTogU2t5RGF0YVZpZXdDb25maWdbXSB7XG4gICAgcmV0dXJuIHRoaXMuX3ZpZXdzO1xuICB9XG5cbiAgcHVibGljIHNldCB2aWV3cyh2YWx1ZTogU2t5RGF0YVZpZXdDb25maWdbXSkge1xuICAgIHRoaXMuX3ZpZXdzID0gdmFsdWU7XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBvbmx5U2hvd1NlbGVjdGVkOiBib29sZWFuO1xuXG4gIC8vIHRoZSBzb3VyY2UgdG8gcHJvdmlkZSBmb3IgZGF0YSBzdGF0ZSBjaGFuZ2VzXG4gIHByaXZhdGUgX3NvdXJjZSA9ICd0b29sYmFyJztcbiAgcHJpdmF0ZSBfYWN0aXZlVmlldzogU2t5RGF0YVZpZXdDb25maWc7XG4gIHByaXZhdGUgX2RhdGFNYW5hZ2VyQ29uZmlnOiBTa3lEYXRhTWFuYWdlckNvbmZpZztcbiAgcHJpdmF0ZSBfZGF0YVN0YXRlOiBTa3lEYXRhTWFuYWdlclN0YXRlO1xuICBwcml2YXRlIF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSBfdmlld3M6IFNreURhdGFWaWV3Q29uZmlnW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIGRhdGFNYW5hZ2VyU2VydmljZTogU2t5RGF0YU1hbmFnZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBTa3lNb2RhbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb2x1bW5QaWNrZXJTZXJ2aWNlOiBTa3lEYXRhTWFuYWdlckNvbHVtblBpY2tlclNlcnZpY2VcbiAgKSB7fVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZVxuICAgICAgLmdldEFjdGl2ZVZpZXdJZFVwZGF0ZXMoKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoYWN0aXZlVmlld0lkKSA9PiB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgIGlmIChhY3RpdmVWaWV3SWQpIHtcbiAgICAgICAgICB0aGlzLmFjdGl2ZVZpZXcgPSB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS5nZXRWaWV3QnlJZChhY3RpdmVWaWV3SWQpO1xuICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2VcbiAgICAgIC5nZXREYXRhVmlld3NVcGRhdGVzKClcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKHZpZXdzKSA9PiB7XG4gICAgICAgIHRoaXMudmlld3MgPSB2aWV3cztcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2VcbiAgICAgIC5nZXREYXRhU3RhdGVVcGRhdGVzKHRoaXMuX3NvdXJjZSlcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKGRhdGFTdGF0ZSkgPT4ge1xuICAgICAgICB0aGlzLl9kYXRhU3RhdGUgPSBkYXRhU3RhdGU7XG4gICAgICAgIHRoaXMub25seVNob3dTZWxlY3RlZCA9IGRhdGFTdGF0ZS5vbmx5U2hvd1NlbGVjdGVkO1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZVxuICAgICAgLmdldERhdGFNYW5hZ2VyQ29uZmlnVXBkYXRlcygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChjb25maWcpID0+IHtcbiAgICAgICAgdGhpcy5kYXRhTWFuYWdlckNvbmZpZyA9IGNvbmZpZztcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzb3J0U2VsZWN0ZWQoc29ydE9wdGlvbjogU2t5RGF0YU1hbmFnZXJTb3J0T3B0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhU3RhdGUuYWN0aXZlU29ydE9wdGlvbiA9IHNvcnRPcHRpb247XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UudXBkYXRlRGF0YVN0YXRlKHRoaXMuZGF0YVN0YXRlLCB0aGlzLl9zb3VyY2UpO1xuICB9XG5cbiAgcHVibGljIG9uVmlld0NoYW5nZSh2aWV3SWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlLnVwZGF0ZUFjdGl2ZVZpZXdJZCh2aWV3SWQpO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaEFwcGxpZWQodGV4dDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhU3RhdGUuc2VhcmNoVGV4dCA9IHRleHQ7XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UudXBkYXRlRGF0YVN0YXRlKHRoaXMuZGF0YVN0YXRlLCB0aGlzLl9zb3VyY2UpO1xuICB9XG5cbiAgcHVibGljIGZpbHRlckJ1dHRvbkNsaWNrZWQoKTogdm9pZCB7XG4gICAgY29uc3QgY29udGV4dCA9IG5ldyBTa3lEYXRhTWFuYWdlckZpbHRlck1vZGFsQ29udGV4dCgpO1xuICAgIGNvbnN0IGZpbHRlck1vZGFsID1cbiAgICAgIHRoaXMuZGF0YU1hbmFnZXJDb25maWcgJiYgdGhpcy5kYXRhTWFuYWdlckNvbmZpZy5maWx0ZXJNb2RhbENvbXBvbmVudDtcblxuICAgIGNvbnRleHQuZmlsdGVyRGF0YSA9IHRoaXMuZGF0YVN0YXRlICYmIHRoaXMuZGF0YVN0YXRlLmZpbHRlckRhdGE7XG5cbiAgICBjb25zdCBvcHRpb25zOiBhbnkgPSB7XG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBTa3lEYXRhTWFuYWdlckZpbHRlck1vZGFsQ29udGV4dCwgdXNlVmFsdWU6IGNvbnRleHQgfSxcbiAgICAgIF0sXG4gICAgICBzaXplOiAnbGFyZ2UnLFxuICAgIH07XG5cbiAgICBpZiAoZmlsdGVyTW9kYWwpIHtcbiAgICAgIGNvbnN0IG1vZGFsSW5zdGFuY2UgPSB0aGlzLm1vZGFsU2VydmljZS5vcGVuKGZpbHRlck1vZGFsLCBvcHRpb25zKTtcblxuICAgICAgbW9kYWxJbnN0YW5jZS5jbG9zZWQuc3Vic2NyaWJlKChyZXN1bHQ6IFNreU1vZGFsQ2xvc2VBcmdzKSA9PiB7XG4gICAgICAgIGlmIChyZXN1bHQucmVhc29uID09PSAnc2F2ZScpIHtcbiAgICAgICAgICB0aGlzLmRhdGFTdGF0ZS5maWx0ZXJEYXRhID0gcmVzdWx0LmRhdGE7XG4gICAgICAgICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UudXBkYXRlRGF0YVN0YXRlKHRoaXMuZGF0YVN0YXRlLCB0aGlzLl9zb3VyY2UpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3BlbkNvbHVtblBpY2tlcigpOiB2b2lkIHtcbiAgICBjb25zdCBjb2x1bW5PcHRpb25zID0gdGhpcy5hY3RpdmVWaWV3ICYmIHRoaXMuYWN0aXZlVmlldy5jb2x1bW5PcHRpb25zO1xuICAgIGNvbnN0IHZpZXdTdGF0ZSA9IHRoaXMuZGF0YVN0YXRlLmdldFZpZXdTdGF0ZUJ5SWQodGhpcy5hY3RpdmVWaWV3LmlkKTtcbiAgICBjb25zdCBjb250ZXh0ID0gbmV3IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyQ29udGV4dChcbiAgICAgIGNvbHVtbk9wdGlvbnMsXG4gICAgICB2aWV3U3RhdGUuZGlzcGxheWVkQ29sdW1uSWRzXG4gICAgKTtcblxuICAgIGlmICh0aGlzLmFjdGl2ZVZpZXcuY29sdW1uUGlja2VyU29ydFN0cmF0ZWd5KSB7XG4gICAgICBjb250ZXh0LmNvbHVtblBpY2tlclNvcnRTdHJhdGVneSA9XG4gICAgICAgIHRoaXMuYWN0aXZlVmlldy5jb2x1bW5QaWNrZXJTb3J0U3RyYXRlZ3k7XG4gICAgfVxuXG4gICAgY29uc3Qgb3B0aW9uczogYW55ID0ge1xuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJDb250ZXh0LCB1c2VWYWx1ZTogY29udGV4dCB9LFxuICAgICAgXSxcbiAgICB9O1xuXG4gICAgY29uc3QgbW9kYWxJbnN0YW5jZSA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oXG4gICAgICB0aGlzLmNvbHVtblBpY2tlclNlcnZpY2UuZ2V0Q29tcG9uZW50VHlwZSgpLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG5cbiAgICBtb2RhbEluc3RhbmNlLmNsb3NlZC5zdWJzY3JpYmUoKHJlc3VsdDogU2t5TW9kYWxDbG9zZUFyZ3MpID0+IHtcbiAgICAgIGlmIChyZXN1bHQucmVhc29uID09PSAnc2F2ZScpIHtcbiAgICAgICAgY29uc3QgZGlzcGxheWVkQ29sdW1uSWRzID0gcmVzdWx0LmRhdGEubWFwKFxuICAgICAgICAgIChjb2w6IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyT3B0aW9uKSA9PiBjb2wuaWRcbiAgICAgICAgKTtcblxuICAgICAgICB2aWV3U3RhdGUuZGlzcGxheWVkQ29sdW1uSWRzID0gZGlzcGxheWVkQ29sdW1uSWRzO1xuICAgICAgICB0aGlzLmRhdGFTdGF0ZSA9IHRoaXMuZGF0YVN0YXRlLmFkZE9yVXBkYXRlVmlldyhcbiAgICAgICAgICB0aGlzLmFjdGl2ZVZpZXcuaWQsXG4gICAgICAgICAgdmlld1N0YXRlXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0QWxsKCk6IHZvaWQge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHRoaXMuYWN0aXZlVmlldy5vblNlbGVjdEFsbENsaWNrKSB7XG4gICAgICB0aGlzLmFjdGl2ZVZpZXcub25TZWxlY3RBbGxDbGljaygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbGVhckFsbCgpOiB2b2lkIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLmFjdGl2ZVZpZXcub25DbGVhckFsbENsaWNrKSB7XG4gICAgICB0aGlzLmFjdGl2ZVZpZXcub25DbGVhckFsbENsaWNrKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uT25seVNob3dTZWxlY3RlZChldmVudDogU2t5Q2hlY2tib3hDaGFuZ2UpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGFTdGF0ZS5vbmx5U2hvd1NlbGVjdGVkID0gZXZlbnQuY2hlY2tlZDtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS51cGRhdGVEYXRhU3RhdGUodGhpcy5kYXRhU3RhdGUsIHRoaXMuX3NvdXJjZSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXJcIj5cbiAgPHNreS10b29sYmFyPlxuICAgIDxza3ktdG9vbGJhci1zZWN0aW9uPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic2t5LWRhdGEtbWFuYWdlci10b29sYmFyLXByaW1hcnktaXRlbVwiPjwvbmctY29udGVudD5cblxuICAgICAgPHNreS10b29sYmFyLWl0ZW0gKm5nSWY9XCJhY3RpdmVWaWV3Py5maWx0ZXJCdXR0b25FbmFibGVkXCI+XG4gICAgICAgIDxza3ktZmlsdGVyLWJ1dHRvblxuICAgICAgICAgIFtzaG93QnV0dG9uVGV4dF09XCJhY3RpdmVWaWV3Py5zaG93RmlsdGVyQnV0dG9uVGV4dFwiXG4gICAgICAgICAgKGZpbHRlckJ1dHRvbkNsaWNrKT1cImZpbHRlckJ1dHRvbkNsaWNrZWQoKVwiXG4gICAgICAgID5cbiAgICAgICAgPC9za3ktZmlsdGVyLWJ1dHRvbj5cbiAgICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cblxuICAgICAgPHNreS10b29sYmFyLWl0ZW0gKm5nSWY9XCJhY3RpdmVWaWV3Py5zb3J0RW5hYmxlZFwiPlxuICAgICAgICA8c2t5LXNvcnQgW3Nob3dCdXR0b25UZXh0XT1cImFjdGl2ZVZpZXc/LnNob3dTb3J0QnV0dG9uVGV4dFwiPlxuICAgICAgICAgIDxza3ktc29ydC1pdGVtXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkYXRhTWFuYWdlckNvbmZpZz8uc29ydE9wdGlvbnNcIlxuICAgICAgICAgICAgW2FjdGl2ZV09XCJhY3RpdmVTb3J0T3B0aW9uSWQgJiYgYWN0aXZlU29ydE9wdGlvbklkID09PSBpdGVtLmlkXCJcbiAgICAgICAgICAgIChpdGVtU2VsZWN0KT1cInNvcnRTZWxlY3RlZChpdGVtKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3sgaXRlbS5sYWJlbCB9fVxuICAgICAgICAgIDwvc2t5LXNvcnQtaXRlbT5cbiAgICAgICAgPC9za3ktc29ydD5cbiAgICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cblxuICAgICAgPHNreS10b29sYmFyLWl0ZW0gKm5nSWY9XCJhY3RpdmVWaWV3Py5jb2x1bW5QaWNrZXJFbmFibGVkXCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1kZWZhdWx0IHNreS1jb2wtcGlja2VyLWJ0blwiXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJcbiAgICAgICAgICAgICdza3l1eF9kYXRhX21hbmFnZXJfY29sdW1uc19idXR0b25fdGl0bGUnIHwgc2t5TGliUmVzb3VyY2VzXG4gICAgICAgICAgXCJcbiAgICAgICAgICBbYXR0ci50aXRsZV09XCJcbiAgICAgICAgICAgICdza3l1eF9kYXRhX21hbmFnZXJfY29sdW1uc19idXR0b25fdGl0bGUnIHwgc2t5TGliUmVzb3VyY2VzXG4gICAgICAgICAgXCJcbiAgICAgICAgICAoY2xpY2spPVwib3BlbkNvbHVtblBpY2tlcigpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxza3ktaWNvbiBpY29uPVwiY29sdW1uc1wiPjwvc2t5LWljb24+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJza3ktY29sdW1uLXNlbGVjdG9yLWFjdGlvbi1idG4tdGV4dFwiPlxuICAgICAgICAgICAge3sgJ3NreXV4X2RhdGFfbWFuYWdlcl9jb2x1bW5zX2J1dHRvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9za3ktdG9vbGJhci1pdGVtPlxuXG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXItbGVmdC1pdGVtXCI+PC9uZy1jb250ZW50PlxuXG4gICAgICA8c2t5LXRvb2xiYXItaXRlbSAqbmdJZj1cImFjdGl2ZVZpZXc/LnNlYXJjaEVuYWJsZWRcIj5cbiAgICAgICAgPHNreS1zZWFyY2hcbiAgICAgICAgICBbZXhwYW5kTW9kZV09XCJhY3RpdmVWaWV3Py5zZWFyY2hFeHBhbmRNb2RlXCJcbiAgICAgICAgICBbcGxhY2Vob2xkZXJUZXh0XT1cImFjdGl2ZVZpZXc/LnNlYXJjaFBsYWNlaG9sZGVyVGV4dFwiXG4gICAgICAgICAgW3NlYXJjaFRleHRdPVwiZGF0YVN0YXRlPy5zZWFyY2hUZXh0XCJcbiAgICAgICAgICAoc2VhcmNoQXBwbHkpPVwic2VhcmNoQXBwbGllZCgkZXZlbnQpXCJcbiAgICAgICAgPlxuICAgICAgICA8L3NreS1zZWFyY2g+XG4gICAgICA8L3NreS10b29sYmFyLWl0ZW0+XG5cbiAgICAgIDxza3ktdG9vbGJhci12aWV3LWFjdGlvbnM+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNreS1kYXRhLW1hbmFnZXItdG9vbGJhci1yaWdodC1pdGVtXCI+PC9uZy1jb250ZW50PlxuICAgICAgICA8c2t5LXJhZGlvLWdyb3VwXG4gICAgICAgICAgKm5nSWY9XCJhY3RpdmVWaWV3ICYmIHZpZXdzICYmIHZpZXdzLmxlbmd0aCA+IDFcIlxuICAgICAgICAgIFthcmlhTGFiZWxdPVwiJ2RhdGEgdmlldyBzd2l0Y2hlcidcIlxuICAgICAgICAgIGNsYXNzPVwic2t5LXN3aXRjaC1pY29uLWdyb3VwXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxza3ktcmFkaW9cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCB2aWV3IG9mIHZpZXdzXCJcbiAgICAgICAgICAgIFthdHRyLm5hbWVdPVwidmlldy5uYW1lXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwidmlldy5uYW1lXCJcbiAgICAgICAgICAgIFtpY29uXT1cInZpZXcuaWNvblwiXG4gICAgICAgICAgICBbdmFsdWVdPVwidmlldy5pZFwiXG4gICAgICAgICAgICBbbGFiZWxdPVwidmlldy5uYW1lXCJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYWN0aXZlVmlldy5pZFwiXG4gICAgICAgICAgICAoY2hhbmdlKT1cIm9uVmlld0NoYW5nZSh2aWV3LmlkKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvc2t5LXJhZGlvPlxuICAgICAgICA8L3NreS1yYWRpby1ncm91cD5cbiAgICAgIDwvc2t5LXRvb2xiYXItdmlldy1hY3Rpb25zPlxuICAgIDwvc2t5LXRvb2xiYXItc2VjdGlvbj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXItc2VjdGlvblwiPjwvbmctY29udGVudD5cbiAgPC9za3ktdG9vbGJhcj5cblxuICA8c2t5LXRvb2xiYXJcbiAgICAqbmdJZj1cImFjdGl2ZVZpZXc/Lm11bHRpc2VsZWN0VG9vbGJhckVuYWJsZWRcIlxuICAgIGNsYXNzPVwic2t5LWRhdGEtbWFuYWdlci1tdWx0aXNlbGVjdC10b29sYmFyXCJcbiAgPlxuICAgIDxza3ktdG9vbGJhci1zZWN0aW9uPlxuICAgICAgPHNreS10b29sYmFyLWl0ZW0+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1saW5rIHNreS1kYXRhLW1hbmFnZXItc2VsZWN0LWFsbC1idG5cIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIChjbGljayk9XCJzZWxlY3RBbGwoKVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyAnc2t5dXhfZGF0YV9tYW5hZ2VyX3NlbGVjdF9hbGxfYnV0dG9uX3RpdGxlJyB8IHNreUxpYlJlc291cmNlcyB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cbiAgICAgIDxza3ktdG9vbGJhci1pdGVtPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJza3ktYnRuIHNreS1idG4tbGluayBza3ktZGF0YS1tYW5hZ2VyLWNsZWFyLWFsbC1idG5cIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIChjbGljayk9XCJjbGVhckFsbCgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7ICdza3l1eF9kYXRhX21hbmFnZXJfY2xlYXJfYWxsX2J1dHRvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L3NreS10b29sYmFyLWl0ZW0+XG4gICAgICA8c2t5LXRvb2xiYXItdmlldy1hY3Rpb25zPlxuICAgICAgICA8c2t5LWNoZWNrYm94XG4gICAgICAgICAgW2NoZWNrZWRdPVwib25seVNob3dTZWxlY3RlZFwiXG4gICAgICAgICAgKGNoYW5nZSk9XCJvbk9ubHlTaG93U2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICA8c2t5LWNoZWNrYm94LWxhYmVsPlxuICAgICAgICAgICAge3tcbiAgICAgICAgICAgICAgJ3NreXV4X2RhdGFfbWFuYWdlcl9zaG93X3NlbGVjdGVkX29wdGlvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXNcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPC9za3ktY2hlY2tib3gtbGFiZWw+XG4gICAgICAgIDwvc2t5LWNoZWNrYm94PlxuICAgICAgPC9za3ktdG9vbGJhci12aWV3LWFjdGlvbnM+XG4gICAgPC9za3ktdG9vbGJhci1zZWN0aW9uPlxuICA8L3NreS10b29sYmFyPlxuPC9kaXY+XG4iXX0=
185
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1tYW5hZ2VyLXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGEtbWFuYWdlci9zcmMvbGliL21vZHVsZXMvZGF0YS1tYW5hZ2VyL2RhdGEtbWFuYWdlci10b29sYmFyL2RhdGEtbWFuYWdlci10b29sYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kYXRhLW1hbmFnZXIvc3JjL2xpYi9tb2R1bGVzL2RhdGEtbWFuYWdlci9kYXRhLW1hbmFnZXItdG9vbGJhci9kYXRhLW1hbmFnZXItdG9vbGJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEdBR1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFxQixlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDckgsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDckgsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFPaEU7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyw4QkFBOEI7SUFvRHpDLFlBQ1UsY0FBaUMsRUFDakMsa0JBQXlDLEVBQ3pDLFlBQTZCLEVBQzdCLG1CQUFzRDtRQUh0RCxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFD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QyxnQkFBZ0IsRUFBRSxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQztJQUVNLFFBQVE7UUFDYiwwQkFBMEI7UUFDMUIsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsRUFBRTtZQUNuQyxJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsRUFBRSxDQUFDO1NBQ25DO0lBQ0gsQ0FBQztJQUVNLGtCQUFrQixDQUFDLEtBQXdCO1FBQ2hELElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUNoRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hFLENBQUM7OzJIQTFNVSw4QkFBOEI7K0dBQTlCLDhCQUE4QixnRUNsQzNDLG9uSUFzSEE7MkZEcEZhLDhCQUE4QjtrQkFOMUMsU0FBUzsrQkFDRSwwQkFBMEIsbUJBR25CLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5Q2hlY2tib3hDaGFuZ2UgfSBmcm9tICdAc2t5dXgvZm9ybXMnO1xuaW1wb3J0IHsgU2t5TW9kYWxDbG9zZUFyZ3MsIFNreU1vZGFsU2VydmljZSB9IGZyb20gJ0Bza3l1eC9tb2RhbHMnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyQ29udGV4dCB9IGZyb20gJy4uL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyLWNvbnRleHQnO1xuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJTZXJ2aWNlIH0gZnJvbSAnLi4vZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXIvZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlckZpbHRlck1vZGFsQ29udGV4dCB9IGZyb20gJy4uL2RhdGEtbWFuYWdlci1maWx0ZXItY29udGV4dCc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuLi9kYXRhLW1hbmFnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlckNvbHVtblBpY2tlck9wdGlvbiB9IGZyb20gJy4uL21vZGVscy9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci1vcHRpb24nO1xuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJDb25maWcgfSBmcm9tICcuLi9tb2RlbHMvZGF0YS1tYW5hZ2VyLWNvbmZpZyc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlclNvcnRPcHRpb24gfSBmcm9tICcuLi9tb2RlbHMvZGF0YS1tYW5hZ2VyLXNvcnQtb3B0aW9uJztcbmltcG9ydCB7IFNreURhdGFNYW5hZ2VyU3RhdGUgfSBmcm9tICcuLi9tb2RlbHMvZGF0YS1tYW5hZ2VyLXN0YXRlJztcbmltcG9ydCB7IFNreURhdGFWaWV3Q29uZmlnIH0gZnJvbSAnLi4vbW9kZWxzL2RhdGEtdmlldy1jb25maWcnO1xuXG4vKipcbiAqIFJlbmRlcnMgYSBgc2t5LXRvb2xiYXJgIHdpdGggdGhlIGNvbnRlbnRzIHNwZWNpZmllZCBieSB0aGUgYWN0aXZlIHZpZXcncyBgU2t5RGF0YVZpZXdDb25maWdgXG4gKiBhbmQgdGhlIGBTa3lEYXRhTWFuYWdlclRvb2xiYXJMZWZ0SXRlbXNDb21wb25lbnRgLCBgU2t5RGF0YU1hbmFnZXJUb29sYmFyUmlnaHRJdGVtc0NvbXBvbmVudGAsXG4gKiBhbmQgYFNreURhdGFNYW5hZ2VyVG9vbGJhclNlY3Rpb25Db21wb25lbnRgIHdyYXBwZXJzLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS1tYW5hZ2VyLXRvb2xiYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kYXRhLW1hbmFnZXItdG9vbGJhci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2t5RGF0YU1hbmFnZXJUb29sYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xuICBwdWJsaWMgZ2V0IGFjdGl2ZVNvcnRPcHRpb25JZCgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGFjdGl2ZVNvcnRPcHRpb24gPSB0aGlzLmRhdGFTdGF0ZSAmJiB0aGlzLmRhdGFTdGF0ZS5hY3RpdmVTb3J0T3B0aW9uO1xuICAgIHJldHVybiBhY3RpdmVTb3J0T3B0aW9uICYmIGFjdGl2ZVNvcnRPcHRpb24uaWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFjdGl2ZVZpZXcoKTogU2t5RGF0YVZpZXdDb25maWcge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmVWaWV3O1xuICB9XG5cbiAgcHVibGljIHNldCBhY3RpdmVWaWV3KHZhbHVlOiBTa3lEYXRhVmlld0NvbmZpZykge1xuICAgIHRoaXMuX2FjdGl2ZVZpZXcgPSB2YWx1ZTtcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIGdldCBkYXRhTWFuYWdlckNvbmZpZygpOiBTa3lEYXRhTWFuYWdlckNvbmZpZyB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGFNYW5hZ2VyQ29uZmlnO1xuICB9XG5cbiAgcHVibGljIHNldCBkYXRhTWFuYWdlckNvbmZpZyh2YWx1ZTogU2t5RGF0YU1hbmFnZXJDb25maWcpIHtcbiAgICB0aGlzLl9kYXRhTWFuYWdlckNvbmZpZyA9IHZhbHVlO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRhdGFTdGF0ZSgpOiBTa3lEYXRhTWFuYWdlclN0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YVN0YXRlO1xuICB9XG5cbiAgcHVibGljIHNldCBkYXRhU3RhdGUodmFsdWU6IFNreURhdGFNYW5hZ2VyU3RhdGUpIHtcbiAgICB0aGlzLl9kYXRhU3RhdGUgPSB2YWx1ZTtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS51cGRhdGVEYXRhU3RhdGUodmFsdWUsIHRoaXMuX3NvdXJjZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZpZXdzKCk6IFNreURhdGFWaWV3Q29uZmlnW10ge1xuICAgIHJldHVybiB0aGlzLl92aWV3cztcbiAgfVxuXG4gIHB1YmxpYyBzZXQgdmlld3ModmFsdWU6IFNreURhdGFWaWV3Q29uZmlnW10pIHtcbiAgICB0aGlzLl92aWV3cyA9IHZhbHVlO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwdWJsaWMgb25seVNob3dTZWxlY3RlZDogYm9vbGVhbjtcblxuICAvLyB0aGUgc291cmNlIHRvIHByb3ZpZGUgZm9yIGRhdGEgc3RhdGUgY2hhbmdlc1xuICBwcml2YXRlIF9zb3VyY2UgPSAndG9vbGJhcic7XG4gIHByaXZhdGUgX2FjdGl2ZVZpZXc6IFNreURhdGFWaWV3Q29uZmlnO1xuICBwcml2YXRlIF9kYXRhTWFuYWdlckNvbmZpZzogU2t5RGF0YU1hbmFnZXJDb25maWc7XG4gIHByaXZhdGUgX2RhdGFTdGF0ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZTtcbiAgcHJpdmF0ZSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgX3ZpZXdzOiBTa3lEYXRhVmlld0NvbmZpZ1tdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBkYXRhTWFuYWdlclNlcnZpY2U6IFNreURhdGFNYW5hZ2VyU2VydmljZSxcbiAgICBwcml2YXRlIG1vZGFsU2VydmljZTogU2t5TW9kYWxTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29sdW1uUGlja2VyU2VydmljZTogU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJTZXJ2aWNlXG4gICkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2VcbiAgICAgIC5nZXRBY3RpdmVWaWV3SWRVcGRhdGVzKClcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKGFjdGl2ZVZpZXdJZCkgPT4ge1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICBpZiAoYWN0aXZlVmlld0lkKSB7XG4gICAgICAgICAgdGhpcy5hY3RpdmVWaWV3ID0gdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UuZ2V0Vmlld0J5SWQoYWN0aXZlVmlld0lkKTtcbiAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlXG4gICAgICAuZ2V0RGF0YVZpZXdzVXBkYXRlcygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCh2aWV3cykgPT4ge1xuICAgICAgICB0aGlzLnZpZXdzID0gdmlld3M7XG4gICAgICAgIGlmICh0aGlzLmFjdGl2ZVZpZXcpIHtcbiAgICAgICAgICB0aGlzLmFjdGl2ZVZpZXcgPSB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS5nZXRWaWV3QnlJZChcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlVmlldy5pZFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2VcbiAgICAgIC5nZXREYXRhU3RhdGVVcGRhdGVzKHRoaXMuX3NvdXJjZSlcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKGRhdGFTdGF0ZSkgPT4ge1xuICAgICAgICB0aGlzLl9kYXRhU3RhdGUgPSBkYXRhU3RhdGU7XG4gICAgICAgIHRoaXMub25seVNob3dTZWxlY3RlZCA9IGRhdGFTdGF0ZS5vbmx5U2hvd1NlbGVjdGVkO1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZVxuICAgICAgLmdldERhdGFNYW5hZ2VyQ29uZmlnVXBkYXRlcygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChjb25maWcpID0+IHtcbiAgICAgICAgdGhpcy5kYXRhTWFuYWdlckNvbmZpZyA9IGNvbmZpZztcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzb3J0U2VsZWN0ZWQoc29ydE9wdGlvbjogU2t5RGF0YU1hbmFnZXJTb3J0T3B0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhU3RhdGUuYWN0aXZlU29ydE9wdGlvbiA9IHNvcnRPcHRpb247XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UudXBkYXRlRGF0YVN0YXRlKHRoaXMuZGF0YVN0YXRlLCB0aGlzLl9zb3VyY2UpO1xuICB9XG5cbiAgcHVibGljIG9uVmlld0NoYW5nZSh2aWV3SWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlLnVwZGF0ZUFjdGl2ZVZpZXdJZCh2aWV3SWQpO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaEFwcGxpZWQodGV4dDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhU3RhdGUuc2VhcmNoVGV4dCA9IHRleHQ7XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UudXBkYXRlRGF0YVN0YXRlKHRoaXMuZGF0YVN0YXRlLCB0aGlzLl9zb3VyY2UpO1xuICB9XG5cbiAgcHVibGljIGZpbHRlckJ1dHRvbkNsaWNrZWQoKTogdm9pZCB7XG4gICAgY29uc3QgY29udGV4dCA9IG5ldyBTa3lEYXRhTWFuYWdlckZpbHRlck1vZGFsQ29udGV4dCgpO1xuICAgIGNvbnN0IGZpbHRlck1vZGFsID1cbiAgICAgIHRoaXMuZGF0YU1hbmFnZXJDb25maWcgJiYgdGhpcy5kYXRhTWFuYWdlckNvbmZpZy5maWx0ZXJNb2RhbENvbXBvbmVudDtcblxuICAgIGNvbnRleHQuZmlsdGVyRGF0YSA9IHRoaXMuZGF0YVN0YXRlICYmIHRoaXMuZGF0YVN0YXRlLmZpbHRlckRhdGE7XG5cbiAgICBjb25zdCBvcHRpb25zOiBhbnkgPSB7XG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBTa3lEYXRhTWFuYWdlckZpbHRlck1vZGFsQ29udGV4dCwgdXNlVmFsdWU6IGNvbnRleHQgfSxcbiAgICAgIF0sXG4gICAgICBzaXplOiAnbGFyZ2UnLFxuICAgIH07XG5cbiAgICBpZiAoZmlsdGVyTW9kYWwpIHtcbiAgICAgIGNvbnN0IG1vZGFsSW5zdGFuY2UgPSB0aGlzLm1vZGFsU2VydmljZS5vcGVuKGZpbHRlck1vZGFsLCBvcHRpb25zKTtcblxuICAgICAgbW9kYWxJbnN0YW5jZS5jbG9zZWQuc3Vic2NyaWJlKChyZXN1bHQ6IFNreU1vZGFsQ2xvc2VBcmdzKSA9PiB7XG4gICAgICAgIGlmIChyZXN1bHQucmVhc29uID09PSAnc2F2ZScpIHtcbiAgICAgICAgICB0aGlzLmRhdGFTdGF0ZS5maWx0ZXJEYXRhID0gcmVzdWx0LmRhdGE7XG4gICAgICAgICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UudXBkYXRlRGF0YVN0YXRlKHRoaXMuZGF0YVN0YXRlLCB0aGlzLl9zb3VyY2UpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3BlbkNvbHVtblBpY2tlcigpOiB2b2lkIHtcbiAgICBjb25zdCBjb2x1bW5PcHRpb25zID0gdGhpcy5hY3RpdmVWaWV3ICYmIHRoaXMuYWN0aXZlVmlldy5jb2x1bW5PcHRpb25zO1xuICAgIGNvbnN0IHZpZXdTdGF0ZSA9IHRoaXMuZGF0YVN0YXRlLmdldFZpZXdTdGF0ZUJ5SWQodGhpcy5hY3RpdmVWaWV3LmlkKTtcbiAgICBjb25zdCBjb250ZXh0ID0gbmV3IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyQ29udGV4dChcbiAgICAgIGNvbHVtbk9wdGlvbnMsXG4gICAgICB2aWV3U3RhdGUuZGlzcGxheWVkQ29sdW1uSWRzXG4gICAgKTtcblxuICAgIGlmICh0aGlzLmFjdGl2ZVZpZXcuY29sdW1uUGlja2VyU29ydFN0cmF0ZWd5KSB7XG4gICAgICBjb250ZXh0LmNvbHVtblBpY2tlclNvcnRTdHJhdGVneSA9XG4gICAgICAgIHRoaXMuYWN0aXZlVmlldy5jb2x1bW5QaWNrZXJTb3J0U3RyYXRlZ3k7XG4gICAgfVxuXG4gICAgY29uc3Qgb3B0aW9uczogYW55ID0ge1xuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJDb250ZXh0LCB1c2VWYWx1ZTogY29udGV4dCB9LFxuICAgICAgXSxcbiAgICB9O1xuXG4gICAgY29uc3QgbW9kYWxJbnN0YW5jZSA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oXG4gICAgICB0aGlzLmNvbHVtblBpY2tlclNlcnZpY2UuZ2V0Q29tcG9uZW50VHlwZSgpLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG5cbiAgICBtb2RhbEluc3RhbmNlLmNsb3NlZC5zdWJzY3JpYmUoKHJlc3VsdDogU2t5TW9kYWxDbG9zZUFyZ3MpID0+IHtcbiAgICAgIGlmIChyZXN1bHQucmVhc29uID09PSAnc2F2ZScpIHtcbiAgICAgICAgY29uc3QgZGlzcGxheWVkQ29sdW1uSWRzID0gcmVzdWx0LmRhdGEubWFwKFxuICAgICAgICAgIChjb2w6IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyT3B0aW9uKSA9PiBjb2wuaWRcbiAgICAgICAgKTtcblxuICAgICAgICB2aWV3U3RhdGUuZGlzcGxheWVkQ29sdW1uSWRzID0gZGlzcGxheWVkQ29sdW1uSWRzO1xuICAgICAgICB0aGlzLmRhdGFTdGF0ZSA9IHRoaXMuZGF0YVN0YXRlLmFkZE9yVXBkYXRlVmlldyhcbiAgICAgICAgICB0aGlzLmFjdGl2ZVZpZXcuaWQsXG4gICAgICAgICAgdmlld1N0YXRlXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0QWxsKCk6IHZvaWQge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHRoaXMuYWN0aXZlVmlldy5vblNlbGVjdEFsbENsaWNrKSB7XG4gICAgICB0aGlzLmFjdGl2ZVZpZXcub25TZWxlY3RBbGxDbGljaygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbGVhckFsbCgpOiB2b2lkIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLmFjdGl2ZVZpZXcub25DbGVhckFsbENsaWNrKSB7XG4gICAgICB0aGlzLmFjdGl2ZVZpZXcub25DbGVhckFsbENsaWNrKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uT25seVNob3dTZWxlY3RlZChldmVudDogU2t5Q2hlY2tib3hDaGFuZ2UpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGFTdGF0ZS5vbmx5U2hvd1NlbGVjdGVkID0gZXZlbnQuY2hlY2tlZDtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS51cGRhdGVEYXRhU3RhdGUodGhpcy5kYXRhU3RhdGUsIHRoaXMuX3NvdXJjZSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXJcIj5cbiAgPHNreS10b29sYmFyPlxuICAgIDxza3ktdG9vbGJhci1zZWN0aW9uPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic2t5LWRhdGEtbWFuYWdlci10b29sYmFyLXByaW1hcnktaXRlbVwiPjwvbmctY29udGVudD5cblxuICAgICAgPHNreS10b29sYmFyLWl0ZW0gKm5nSWY9XCJhY3RpdmVWaWV3Py5maWx0ZXJCdXR0b25FbmFibGVkXCI+XG4gICAgICAgIDxza3ktZmlsdGVyLWJ1dHRvblxuICAgICAgICAgIFtzaG93QnV0dG9uVGV4dF09XCJhY3RpdmVWaWV3Py5zaG93RmlsdGVyQnV0dG9uVGV4dFwiXG4gICAgICAgICAgKGZpbHRlckJ1dHRvbkNsaWNrKT1cImZpbHRlckJ1dHRvbkNsaWNrZWQoKVwiXG4gICAgICAgID5cbiAgICAgICAgPC9za3ktZmlsdGVyLWJ1dHRvbj5cbiAgICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cblxuICAgICAgPHNreS10b29sYmFyLWl0ZW0gKm5nSWY9XCJhY3RpdmVWaWV3Py5zb3J0RW5hYmxlZFwiPlxuICAgICAgICA8c2t5LXNvcnQgW3Nob3dCdXR0b25UZXh0XT1cImFjdGl2ZVZpZXc/LnNob3dTb3J0QnV0dG9uVGV4dFwiPlxuICAgICAgICAgIDxza3ktc29ydC1pdGVtXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkYXRhTWFuYWdlckNvbmZpZz8uc29ydE9wdGlvbnNcIlxuICAgICAgICAgICAgW2FjdGl2ZV09XCJhY3RpdmVTb3J0T3B0aW9uSWQgJiYgYWN0aXZlU29ydE9wdGlvbklkID09PSBpdGVtLmlkXCJcbiAgICAgICAgICAgIChpdGVtU2VsZWN0KT1cInNvcnRTZWxlY3RlZChpdGVtKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3sgaXRlbS5sYWJlbCB9fVxuICAgICAgICAgIDwvc2t5LXNvcnQtaXRlbT5cbiAgICAgICAgPC9za3ktc29ydD5cbiAgICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cblxuICAgICAgPHNreS10b29sYmFyLWl0ZW0gKm5nSWY9XCJhY3RpdmVWaWV3Py5jb2x1bW5QaWNrZXJFbmFibGVkXCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1kZWZhdWx0IHNreS1jb2wtcGlja2VyLWJ0blwiXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJcbiAgICAgICAgICAgICdza3l1eF9kYXRhX21hbmFnZXJfY29sdW1uc19idXR0b25fdGl0bGUnIHwgc2t5TGliUmVzb3VyY2VzXG4gICAgICAgICAgXCJcbiAgICAgICAgICBbYXR0ci50aXRsZV09XCJcbiAgICAgICAgICAgICdza3l1eF9kYXRhX21hbmFnZXJfY29sdW1uc19idXR0b25fdGl0bGUnIHwgc2t5TGliUmVzb3VyY2VzXG4gICAgICAgICAgXCJcbiAgICAgICAgICAoY2xpY2spPVwib3BlbkNvbHVtblBpY2tlcigpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxza3ktaWNvbiBpY29uPVwiY29sdW1uc1wiPjwvc2t5LWljb24+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJza3ktY29sdW1uLXNlbGVjdG9yLWFjdGlvbi1idG4tdGV4dFwiPlxuICAgICAgICAgICAge3sgJ3NreXV4X2RhdGFfbWFuYWdlcl9jb2x1bW5zX2J1dHRvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9za3ktdG9vbGJhci1pdGVtPlxuXG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXItbGVmdC1pdGVtXCI+PC9uZy1jb250ZW50PlxuXG4gICAgICA8c2t5LXRvb2xiYXItaXRlbSAqbmdJZj1cImFjdGl2ZVZpZXc/LnNlYXJjaEVuYWJsZWRcIj5cbiAgICAgICAgPHNreS1zZWFyY2hcbiAgICAgICAgICBbZXhwYW5kTW9kZV09XCJhY3RpdmVWaWV3Py5zZWFyY2hFeHBhbmRNb2RlXCJcbiAgICAgICAgICBbcGxhY2Vob2xkZXJUZXh0XT1cImFjdGl2ZVZpZXc/LnNlYXJjaFBsYWNlaG9sZGVyVGV4dFwiXG4gICAgICAgICAgW3NlYXJjaFRleHRdPVwiZGF0YVN0YXRlPy5zZWFyY2hUZXh0XCJcbiAgICAgICAgICAoc2VhcmNoQXBwbHkpPVwic2VhcmNoQXBwbGllZCgkZXZlbnQpXCJcbiAgICAgICAgPlxuICAgICAgICA8L3NreS1zZWFyY2g+XG4gICAgICA8L3NreS10b29sYmFyLWl0ZW0+XG5cbiAgICAgIDxza3ktdG9vbGJhci12aWV3LWFjdGlvbnM+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNreS1kYXRhLW1hbmFnZXItdG9vbGJhci1yaWdodC1pdGVtXCI+PC9uZy1jb250ZW50PlxuICAgICAgICA8c2t5LXJhZGlvLWdyb3VwXG4gICAgICAgICAgKm5nSWY9XCJhY3RpdmVWaWV3ICYmIHZpZXdzICYmIHZpZXdzLmxlbmd0aCA+IDFcIlxuICAgICAgICAgIFthcmlhTGFiZWxdPVwiJ2RhdGEgdmlldyBzd2l0Y2hlcidcIlxuICAgICAgICAgIGNsYXNzPVwic2t5LXN3aXRjaC1pY29uLWdyb3VwXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxza3ktcmFkaW9cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCB2aWV3IG9mIHZpZXdzXCJcbiAgICAgICAgICAgIFthdHRyLm5hbWVdPVwidmlldy5uYW1lXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwidmlldy5uYW1lXCJcbiAgICAgICAgICAgIFtpY29uXT1cInZpZXcuaWNvblwiXG4gICAgICAgICAgICBbdmFsdWVdPVwidmlldy5pZFwiXG4gICAgICAgICAgICBbbGFiZWxdPVwidmlldy5uYW1lXCJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYWN0aXZlVmlldy5pZFwiXG4gICAgICAgICAgICAoY2hhbmdlKT1cIm9uVmlld0NoYW5nZSh2aWV3LmlkKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvc2t5LXJhZGlvPlxuICAgICAgICA8L3NreS1yYWRpby1ncm91cD5cbiAgICAgIDwvc2t5LXRvb2xiYXItdmlldy1hY3Rpb25zPlxuICAgIDwvc2t5LXRvb2xiYXItc2VjdGlvbj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXItc2VjdGlvblwiPjwvbmctY29udGVudD5cbiAgPC9za3ktdG9vbGJhcj5cblxuICA8c2t5LXRvb2xiYXJcbiAgICAqbmdJZj1cImFjdGl2ZVZpZXc/Lm11bHRpc2VsZWN0VG9vbGJhckVuYWJsZWRcIlxuICAgIGNsYXNzPVwic2t5LWRhdGEtbWFuYWdlci1tdWx0aXNlbGVjdC10b29sYmFyXCJcbiAgPlxuICAgIDxza3ktdG9vbGJhci1zZWN0aW9uPlxuICAgICAgPHNreS10b29sYmFyLWl0ZW0+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1saW5rIHNreS1kYXRhLW1hbmFnZXItc2VsZWN0LWFsbC1idG5cIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIChjbGljayk9XCJzZWxlY3RBbGwoKVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyAnc2t5dXhfZGF0YV9tYW5hZ2VyX3NlbGVjdF9hbGxfYnV0dG9uX3RpdGxlJyB8IHNreUxpYlJlc291cmNlcyB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cbiAgICAgIDxza3ktdG9vbGJhci1pdGVtPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJza3ktYnRuIHNreS1idG4tbGluayBza3ktZGF0YS1tYW5hZ2VyLWNsZWFyLWFsbC1idG5cIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIChjbGljayk9XCJjbGVhckFsbCgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7ICdza3l1eF9kYXRhX21hbmFnZXJfY2xlYXJfYWxsX2J1dHRvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L3NreS10b29sYmFyLWl0ZW0+XG4gICAgICA8c2t5LXRvb2xiYXItdmlldy1hY3Rpb25zPlxuICAgICAgICA8c2t5LWNoZWNrYm94XG4gICAgICAgICAgW2NoZWNrZWRdPVwib25seVNob3dTZWxlY3RlZFwiXG4gICAgICAgICAgKGNoYW5nZSk9XCJvbk9ubHlTaG93U2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICA8c2t5LWNoZWNrYm94LWxhYmVsPlxuICAgICAgICAgICAge3tcbiAgICAgICAgICAgICAgJ3NreXV4X2RhdGFfbWFuYWdlcl9zaG93X3NlbGVjdGVkX29wdGlvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXNcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPC9za3ktY2hlY2tib3gtbGFiZWw+XG4gICAgICAgIDwvc2t5LWNoZWNrYm94PlxuICAgICAgPC9za3ktdG9vbGJhci12aWV3LWFjdGlvbnM+XG4gICAgPC9za3ktdG9vbGJhci1zZWN0aW9uPlxuICA8L3NreS10b29sYmFyPlxuPC9kaXY+XG4iXX0=
@@ -638,6 +638,10 @@ class SkyDataManagerToolbarComponent {
638
638
  .pipe(takeUntil(this._ngUnsubscribe))
639
639
  .subscribe((views) => {
640
640
  this.views = views;
641
+ if (this.activeView) {
642
+ this.activeView = this.dataManagerService.getViewById(this.activeView.id);
643
+ }
644
+ this.changeDetector.markForCheck();
641
645
  });
642
646
  this.dataManagerService
643
647
  .getDataStateUpdates(this._source)