@skyux/data-manager 5.0.0-beta.4 → 5.0.0

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.
@@ -22,7 +22,7 @@
22
22
  "typedoc": {
23
23
  "id": 0,
24
24
  "name": "@skyux/data-manager",
25
- "kind": 0,
25
+ "kind": 1,
26
26
  "kindString": "Project",
27
27
  "flags": {},
28
28
  "originalName": "",
@@ -30,7 +30,7 @@
30
30
  {
31
31
  "id": 228,
32
32
  "name": "SkyDataManagerColumnPickerSortStrategy",
33
- "kind": 4,
33
+ "kind": 8,
34
34
  "kindString": "Enumeration",
35
35
  "flags": {},
36
36
  "children": [
@@ -478,7 +478,7 @@
478
478
  "kindString": "Parameter",
479
479
  "flags": {},
480
480
  "comment": {
481
- "text": "The ID of the entity subscribing to data state updates. This can be any value you choose\nbut should be unique within the data manager instance and should also be used when that entity updates the state.\n"
481
+ "shortText": "The ID of the entity subscribing to data state updates. This can be any value you choose\nbut should be unique within the data manager instance and should also be used when that entity updates the state.\n"
482
482
  },
483
483
  "type": {
484
484
  "type": "intrinsic",
@@ -588,7 +588,7 @@
588
588
  "kindString": "Parameter",
589
589
  "flags": {},
590
590
  "comment": {
591
- "text": "The ID of the view config to get.\n"
591
+ "shortText": "The ID of the view config to get.\n"
592
592
  },
593
593
  "type": {
594
594
  "type": "intrinsic",
@@ -637,7 +637,7 @@
637
637
  "kindString": "Parameter",
638
638
  "flags": {},
639
639
  "comment": {
640
- "text": "The initial active view ID, data manager config, and state to use for the data manager.\nIf a settings key is provided, it checks for a saved data state in the SKY UI config service before using the default data state\nand saves any state changes to the service.\n"
640
+ "shortText": "The initial active view ID, data manager config, and state to use for the data manager.\nIf a settings key is provided, it checks for a saved data state in the SKY UI config service before using the default data state\nand saves any state changes to the service.\n"
641
641
  },
642
642
  "type": {
643
643
  "type": "reference",
@@ -686,7 +686,7 @@
686
686
  "kindString": "Parameter",
687
687
  "flags": {},
688
688
  "comment": {
689
- "text": "The SkyDataViewConfig settings for the view being registered.\n"
689
+ "shortText": "The SkyDataViewConfig settings for the view being registered.\n"
690
690
  },
691
691
  "type": {
692
692
  "type": "reference",
@@ -772,7 +772,7 @@
772
772
  "kindString": "Parameter",
773
773
  "flags": {},
774
774
  "comment": {
775
- "text": "The new active view ID.\n"
775
+ "shortText": "The new active view ID.\n"
776
776
  },
777
777
  "type": {
778
778
  "type": "intrinsic",
@@ -820,7 +820,7 @@
820
820
  "kindString": "Parameter",
821
821
  "flags": {},
822
822
  "comment": {
823
- "text": "The new `SkyDataManagerConfig` value.\n"
823
+ "shortText": "The new `SkyDataManagerConfig` value.\n"
824
824
  },
825
825
  "type": {
826
826
  "type": "reference",
@@ -869,7 +869,7 @@
869
869
  "kindString": "Parameter",
870
870
  "flags": {},
871
871
  "comment": {
872
- "text": "The new `SkyDataManagerState` value."
872
+ "shortText": "The new `SkyDataManagerState` value."
873
873
  },
874
874
  "type": {
875
875
  "type": "reference",
@@ -884,7 +884,7 @@
884
884
  "kindString": "Parameter",
885
885
  "flags": {},
886
886
  "comment": {
887
- "text": "The ID of the entity updating the state. This can be any value you choose,\nbut should be unique within the data manager instance and should also be used when that entity\nsubscribes to state changes from `getDataStateUpdates`.\n"
887
+ "shortText": "The ID of the entity updating the state. This can be any value you choose,\nbut should be unique within the data manager instance and should also be used when that entity\nsubscribes to state changes from `getDataStateUpdates`.\n"
888
888
  },
889
889
  "type": {
890
890
  "type": "intrinsic",
@@ -932,7 +932,7 @@
932
932
  "kindString": "Parameter",
933
933
  "flags": {},
934
934
  "comment": {
935
- "text": "The new `SkyDataViewConfig` containing all properties.\n"
935
+ "shortText": "The new `SkyDataViewConfig` containing all properties.\n"
936
936
  },
937
937
  "type": {
938
938
  "type": "reference",
@@ -2218,7 +2218,7 @@
2218
2218
  "name": "Component"
2219
2219
  },
2220
2220
  "arguments": {
2221
- "obj": "{\n selector: 'sky-data-manager-toolbar',\n templateUrl: './data-manager-toolbar.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n}"
2221
+ "obj": "{\n selector: 'sky-data-manager-toolbar',\n templateUrl: './data-manager-toolbar.component.html',\n styleUrls: ['./data-manager-toolbar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n}"
2222
2222
  }
2223
2223
  }
2224
2224
  ],
@@ -2232,7 +2232,7 @@
2232
2232
  "sources": [
2233
2233
  {
2234
2234
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2235
- "line": 125,
2235
+ "line": 126,
2236
2236
  "character": 2
2237
2237
  }
2238
2238
  ],
@@ -2309,7 +2309,7 @@
2309
2309
  "sources": [
2310
2310
  {
2311
2311
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2312
- "line": 115,
2312
+ "line": 116,
2313
2313
  "character": 9
2314
2314
  }
2315
2315
  ],
@@ -2329,7 +2329,7 @@
2329
2329
  "sources": [
2330
2330
  {
2331
2331
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2332
- "line": 74,
2332
+ "line": 75,
2333
2333
  "character": 13
2334
2334
  }
2335
2335
  ],
@@ -2358,7 +2358,7 @@
2358
2358
  "sources": [
2359
2359
  {
2360
2360
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2361
- "line": 79,
2361
+ "line": 80,
2362
2362
  "character": 13
2363
2363
  }
2364
2364
  ],
@@ -2415,7 +2415,7 @@
2415
2415
  "sources": [
2416
2416
  {
2417
2417
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2418
- "line": 88,
2418
+ "line": 89,
2419
2419
  "character": 13
2420
2420
  }
2421
2421
  ],
@@ -2472,7 +2472,7 @@
2472
2472
  "sources": [
2473
2473
  {
2474
2474
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2475
- "line": 97,
2475
+ "line": 98,
2476
2476
  "character": 13
2477
2477
  }
2478
2478
  ],
@@ -2529,7 +2529,7 @@
2529
2529
  "sources": [
2530
2530
  {
2531
2531
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2532
- "line": 106,
2532
+ "line": 107,
2533
2533
  "character": 13
2534
2534
  }
2535
2535
  ],
@@ -2592,7 +2592,7 @@
2592
2592
  "sources": [
2593
2593
  {
2594
2594
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2595
- "line": 240,
2595
+ "line": 241,
2596
2596
  "character": 9
2597
2597
  }
2598
2598
  ],
@@ -2621,7 +2621,7 @@
2621
2621
  "sources": [
2622
2622
  {
2623
2623
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2624
- "line": 183,
2624
+ "line": 184,
2625
2625
  "character": 9
2626
2626
  }
2627
2627
  ],
@@ -2650,7 +2650,7 @@
2650
2650
  "sources": [
2651
2651
  {
2652
2652
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2653
- "line": 164,
2653
+ "line": 165,
2654
2654
  "character": 9
2655
2655
  }
2656
2656
  ],
@@ -2687,7 +2687,7 @@
2687
2687
  "sources": [
2688
2688
  {
2689
2689
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2690
- "line": 132,
2690
+ "line": 133,
2691
2691
  "character": 9
2692
2692
  }
2693
2693
  ],
@@ -2724,7 +2724,7 @@
2724
2724
  "sources": [
2725
2725
  {
2726
2726
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2727
- "line": 247,
2727
+ "line": 248,
2728
2728
  "character": 9
2729
2729
  }
2730
2730
  ],
@@ -2766,7 +2766,7 @@
2766
2766
  "sources": [
2767
2767
  {
2768
2768
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2769
- "line": 174,
2769
+ "line": 175,
2770
2770
  "character": 9
2771
2771
  }
2772
2772
  ],
@@ -2808,7 +2808,7 @@
2808
2808
  "sources": [
2809
2809
  {
2810
2810
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2811
- "line": 205,
2811
+ "line": 206,
2812
2812
  "character": 9
2813
2813
  }
2814
2814
  ],
@@ -2837,7 +2837,7 @@
2837
2837
  "sources": [
2838
2838
  {
2839
2839
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2840
- "line": 178,
2840
+ "line": 179,
2841
2841
  "character": 9
2842
2842
  }
2843
2843
  ],
@@ -2879,7 +2879,7 @@
2879
2879
  "sources": [
2880
2880
  {
2881
2881
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2882
- "line": 233,
2882
+ "line": 234,
2883
2883
  "character": 9
2884
2884
  }
2885
2885
  ],
@@ -2908,7 +2908,7 @@
2908
2908
  "sources": [
2909
2909
  {
2910
2910
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2911
- "line": 169,
2911
+ "line": 170,
2912
2912
  "character": 9
2913
2913
  }
2914
2914
  ],
@@ -2987,7 +2987,7 @@
2987
2987
  "sources": [
2988
2988
  {
2989
2989
  "fileName": "projects/data-manager/src/modules/data-manager/data-manager-toolbar/data-manager-toolbar.component.ts",
2990
- "line": 72,
2990
+ "line": 73,
2991
2991
  "character": 13
2992
2992
  }
2993
2993
  ],
@@ -4201,7 +4201,7 @@
4201
4201
  "groups": [
4202
4202
  {
4203
4203
  "title": "Enumerations",
4204
- "kind": 4,
4204
+ "kind": 8,
4205
4205
  "children": [
4206
4206
  228
4207
4207
  ]
@@ -4288,7 +4288,7 @@
4288
4288
  {
4289
4289
  "fileName": "data-view-repeater.component.ts",
4290
4290
  "filePath": "/projects/data-manager/documentation/code-examples/data-manager/basic/data-view-repeater.component.ts",
4291
- "rawContents": "import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit\n} from '@angular/core';\n\nimport {\n SkyDataManagerState,\n SkyDataViewConfig,\n SkyDataManagerService\n} from '@skyux/data-manager';\n\n@Component({\n selector: 'app-data-view-repeater-demo',\n templateUrl: './data-view-repeater.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DataViewRepeaterDemoComponent implements OnInit {\n\n @Input()\n public items: any[];\n\n public dataState = new SkyDataManagerState({});\n\n public displayedItems: any[];\n\n public isActive: boolean;\n\n public viewId = 'repeaterView';\n\n public viewConfig: SkyDataViewConfig = {\n id: this.viewId,\n name: 'Repeater View',\n icon: 'list',\n searchEnabled: true,\n filterButtonEnabled: true,\n multiselectToolbarEnabled: true,\n onClearAllClick: this.clearAll.bind(this),\n onSelectAllClick: this.selectAll.bind(this)\n };\n\n constructor(\n private changeDetector: ChangeDetectorRef,\n private dataManagerService: SkyDataManagerService\n ) { }\n\n public ngOnInit(): void {\n this.displayedItems = this.items;\n\n this.dataManagerService.initDataView(this.viewConfig);\n\n this.dataManagerService.getDataStateUpdates(this.viewId).subscribe(state => {\n this.dataState = state;\n this.updateData();\n });\n\n this.dataManagerService.getActiveViewIdUpdates().subscribe(id => {\n this.isActive = id === this.viewId;\n });\n }\n\n public updateData(): void {\n let selectedIds = this.dataState.selectedIds || [];\n this.items.forEach(item => {\n item.selected = selectedIds.indexOf(item.id) !== -1;\n });\n this.displayedItems = this.filterItems(this.searchItems(this.items));\n\n if (this.dataState.onlyShowSelected) {\n this.displayedItems = this.displayedItems.filter(item => item.selected);\n }\n\n this.changeDetector.detectChanges();\n }\n\n public searchItems(items: any[]): any[] {\n let searchedItems = items;\n let searchText = this.dataState && this.dataState.searchText?.toUpperCase();\n\n if (searchText) {\n searchedItems = items.filter(function (item: any) {\n let property: any;\n\n for (property in item) {\n if (item.hasOwnProperty(property) && (property === 'name' || property === 'description')) {\n const propertyText = item[property].toUpperCase();\n if (propertyText.indexOf(searchText) > -1) {\n return true;\n }\n }\n }\n\n return false;\n });\n }\n return searchedItems;\n }\n\n public filterItems(items: any[]): any[] {\n let filteredItems = items;\n let filterData = this.dataState && this.dataState.filterData;\n\n if (filterData && filterData.filters) {\n let filters = filterData.filters;\n filteredItems = items.filter((item: any) => {\n if (((filters.hideOrange && item.color !== 'orange') || !filters.hideOrange) &&\n ((filters.type !== 'any' && item.type === filters.type) || (!filters.type || filters.type === 'any'))) {\n return true;\n }\n return false;\n });\n }\n\n return filteredItems;\n }\n\n public selectAll(): void {\n let selectedIds = this.dataState.selectedIds || [];\n\n this.displayedItems.forEach(item => {\n if (!item.selected) {\n item.selected = true;\n selectedIds.push(item.id);\n }\n });\n\n this.dataState.selectedIds = selectedIds;\n this.dataManagerService.updateDataState(this.dataState, this.viewId);\n this.changeDetector.markForCheck();\n }\n\n public clearAll(): void {\n let selectedIds = this.dataState.selectedIds || [];\n\n this.displayedItems.forEach(item => {\n if (item.selected) {\n let itemIndex = selectedIds.indexOf(item.id);\n item.selected = false;\n selectedIds.splice(itemIndex, 1);\n }\n });\n this.dataState.selectedIds = selectedIds;\n this.dataManagerService.updateDataState(this.dataState, this.viewId);\n this.changeDetector.markForCheck();\n }\n\n public onItemSelect(isSelected: boolean, item: any): void {\n let selectedItems = this.dataState.selectedIds || [];\n let itemIndex = selectedItems.indexOf(item.id);\n\n if (isSelected && itemIndex === -1) {\n selectedItems.push(item.id);\n } else if (!isSelected && itemIndex !== -1) {\n selectedItems.splice(itemIndex, 1);\n }\n\n this.dataState.selectedIds = selectedItems;\n this.dataManagerService.updateDataState(this.dataState, this.viewId);\n }\n}\n"
4291
+ "rawContents": "import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Input,\n OnInit\n} from '@angular/core';\n\nimport {\n SkyDataManagerState,\n SkyDataViewConfig,\n SkyDataManagerService\n} from '@skyux/data-manager';\n\n@Component({\n selector: 'app-data-view-repeater-demo',\n templateUrl: './data-view-repeater.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DataViewRepeaterDemoComponent implements OnInit {\n\n @Input()\n public items: any[];\n\n public dataState = new SkyDataManagerState({});\n\n public displayedItems: any[];\n\n public isActive: boolean;\n\n public viewId = 'repeaterView';\n\n public viewConfig: SkyDataViewConfig = {\n id: this.viewId,\n name: 'Repeater View',\n icon: 'list',\n searchEnabled: true,\n filterButtonEnabled: true,\n multiselectToolbarEnabled: true,\n onClearAllClick: this.clearAll.bind(this),\n onSelectAllClick: this.selectAll.bind(this)\n };\n\n constructor(\n private changeDetector: ChangeDetectorRef,\n private dataManagerService: SkyDataManagerService\n ) { }\n\n public ngOnInit(): void {\n this.displayedItems = this.items;\n\n this.dataManagerService.initDataView(this.viewConfig);\n\n this.dataManagerService.getDataStateUpdates(this.viewId).subscribe(state => {\n this.dataState = state;\n this.updateData();\n });\n\n this.dataManagerService.getActiveViewIdUpdates().subscribe(id => {\n this.isActive = id === this.viewId;\n });\n }\n\n public updateData(): void {\n let selectedIds = this.dataState.selectedIds || [];\n this.items.forEach(item => {\n item.selected = selectedIds.indexOf(item.id) !== -1;\n });\n this.displayedItems = this.filterItems(this.searchItems(this.items));\n\n if (this.dataState.onlyShowSelected) {\n this.displayedItems = this.displayedItems.filter(item => item.selected);\n }\n\n this.changeDetector.detectChanges();\n }\n\n public searchItems(items: any[]): any[] {\n let searchedItems = items;\n let searchText = this.dataState && this.dataState.searchText?.toUpperCase();\n\n if (searchText) {\n searchedItems = items.filter(function (item: any) {\n let property: any;\n\n for (property in item) {\n if (item.hasOwnProperty(property) && (property === 'name' || property === 'description')) {\n const propertyText = item[property].toUpperCase();\n if (propertyText.indexOf(searchText) > -1) {\n return true;\n }\n }\n }\n\n return false;\n });\n }\n return searchedItems;\n }\n\n public filterItems(items: any[]): any[] {\n let filteredItems = items;\n let filterData = this.dataState && this.dataState.filterData;\n\n if (filterData && filterData.filters) {\n let filters = filterData.filters;\n filteredItems = items.filter((item: any) => {\n if (((filters.hideOrange && item.color !== 'orange') || !filters.hideOrange) &&\n ((filters.type !== 'any' && item.type === filters.type) || (!filters.type || filters.type === 'any'))) {\n return true;\n }\n return false;\n });\n }\n\n return filteredItems;\n }\n\n public selectAll(): void {\n let selectedIds = this.dataState.selectedIds || [];\n\n this.displayedItems.forEach(item => {\n if (!item.selected) {\n item.selected = true;\n selectedIds.push(item.id);\n }\n });\n\n this.dataState.selectedIds = selectedIds;\n this.dataManagerService.updateDataState(this.dataState, this.viewId);\n this.changeDetector.markForCheck();\n }\n\n public clearAll(): void {\n let selectedIds = this.dataState.selectedIds || [];\n\n this.displayedItems.forEach(item => {\n if (item.selected) {\n let itemIndex = selectedIds.indexOf(item.id);\n item.selected = false;\n selectedIds.splice(itemIndex, 1);\n }\n });\n\n if (this.dataState.onlyShowSelected) {\n this.displayedItems = [];\n }\n\n this.dataState.selectedIds = selectedIds;\n this.dataManagerService.updateDataState(this.dataState, this.viewId);\n this.changeDetector.markForCheck();\n }\n\n public onItemSelect(isSelected: boolean, item: any): void {\n let selectedItems = this.dataState.selectedIds || [];\n let itemIndex = selectedItems.indexOf(item.id);\n\n if (isSelected && itemIndex === -1) {\n selectedItems.push(item.id);\n } else if (!isSelected && itemIndex !== -1) {\n selectedItems.splice(itemIndex, 1);\n }\n\n this.dataState.selectedIds = selectedItems;\n this.dataManagerService.updateDataState(this.dataState, this.viewId);\n if (this.dataState.onlyShowSelected && this.displayedItems) {\n this.displayedItems = this.displayedItems.filter((itm) => itm.selected);\n this.changeDetector.markForCheck();\n }\n }\n}\n"
4292
4292
  }
4293
4293
  ]
4294
4294
  }
@@ -6,9 +6,9 @@ export class SkyDataManagerColumnPickerImplService {
6
6
  return SkyDataManagerColumnPickerComponent;
7
7
  }
8
8
  }
9
- SkyDataManagerColumnPickerImplService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerColumnPickerImplService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
10
- SkyDataManagerColumnPickerImplService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerColumnPickerImplService });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerColumnPickerImplService, decorators: [{
9
+ SkyDataManagerColumnPickerImplService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerColumnPickerImplService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
10
+ SkyDataManagerColumnPickerImplService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerColumnPickerImplService });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerColumnPickerImplService, decorators: [{
12
12
  type: Injectable
13
13
  }] });
14
14
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXItaW1wbC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YS1tYW5hZ2VyL3NyYy9tb2R1bGVzL2RhdGEtbWFuYWdlci9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci1pbXBsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFVBQVUsRUFDWCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQ0wsbUNBQW1DLEVBQ3BDLE1BQU0sd0NBQXdDLENBQUM7O0FBR2hELE1BQU0sT0FBTyxxQ0FBcUM7SUFDekMsZ0JBQWdCO1FBQ3JCLE9BQU8sbUNBQW1DLENBQUM7SUFDN0MsQ0FBQzs7a0lBSFUscUNBQXFDO3NJQUFyQyxxQ0FBcUM7MkZBQXJDLHFDQUFxQztrQkFEakQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEluamVjdGFibGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyQ29tcG9uZW50XG59IGZyb20gJy4vZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXIuY29tcG9uZW50JztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VySW1wbFNlcnZpY2Uge1xuICBwdWJsaWMgZ2V0Q29tcG9uZW50VHlwZSgpOiB0eXBlb2YgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJDb21wb25lbnQge1xuICAgIHJldHVybiBTa3lEYXRhTWFuYWdlckNvbHVtblBpY2tlckNvbXBvbmVudDtcbiAgfVxufVxuIl19
@@ -140,9 +140,9 @@ export class SkyDataManagerColumnPickerComponent {
140
140
  return formattedColumnOptions;
141
141
  }
142
142
  }
143
- SkyDataManagerColumnPickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerColumnPickerComponent, deps: [{ token: i1.SkyDataManagerColumnPickerContext }, { token: i2.SkyDataManagerService }, { token: i3.SkyModalInstance }, { token: i4.SkyLibResourcesService }], target: i0.ɵɵFactoryTarget.Component });
144
- SkyDataManagerColumnPickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.5", type: SkyDataManagerColumnPickerComponent, selector: "sky-data-manager-column-picker", providers: [SkyDataManagerService], ngImport: i0, template: "\n<sky-modal>\n <sky-modal-header>\n {{'skyux_data_manager_column_picker_title' | skyLibResources}}\n </sky-modal-header>\n <sky-modal-content\n class=\"sky-data-manager-column-picker-content\"\n >\n <sky-data-manager>\n <sky-data-manager-toolbar>\n </sky-data-manager-toolbar>\n\n <sky-data-view\n [viewId]=\"viewConfig.id\"\n >\n <sky-repeater\n expandMode=\"none\"\n >\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n >\n <sky-repeater-item-title>\n {{column.label}}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{column.description}}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n (click)=\"applyChanges()\"\n >\n {{'skyux_data_manager_apply_changes_button_title' | skyLibResources}}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{'skyux_data_manager_cancel_button_title' | skyLibResources}}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-data-manager-column-picker-content sky-repeater-item-content{margin-top:5px}\n"], components: [{ type: i3.λ5, selector: "sky-modal", inputs: ["ariaRole", "tiledBody"] }, { type: i3.λ4, selector: "sky-modal-header" }, { type: i3.λ2, selector: "sky-modal-content" }, { type: i5.SkyDataManagerComponent, selector: "sky-data-manager" }, { type: i6.SkyDataManagerToolbarComponent, selector: "sky-data-manager-toolbar" }, { type: i7.SkyDataViewComponent, selector: "sky-data-view", inputs: ["viewId"] }, { type: i8.ɵk, selector: "sky-repeater", inputs: ["reorderable", "activeIndex", "expandMode", "ariaLabel"], outputs: ["activeIndexChange", "orderChange"] }, { type: i8.ɵn, selector: "sky-repeater-item", inputs: ["reorderable", "selectable", "showInlineForm", "isExpanded", "isSelected", "inlineFormConfig", "inlineFormTemplate", "tag"], outputs: ["collapse", "expand", "inlineFormClose", "isSelectedChange"] }, { type: i8.ɵq, selector: "sky-repeater-item-title" }, { type: i8.ɵp, selector: "sky-repeater-item-content" }, { type: i3.λ3, selector: "sky-modal-footer" }], directives: [{ type: i9.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "skyLibResources": i4.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
145
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerColumnPickerComponent, decorators: [{
143
+ SkyDataManagerColumnPickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerColumnPickerComponent, deps: [{ token: i1.SkyDataManagerColumnPickerContext }, { token: i2.SkyDataManagerService }, { token: i3.SkyModalInstance }, { token: i4.SkyLibResourcesService }], target: i0.ɵɵFactoryTarget.Component });
144
+ SkyDataManagerColumnPickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.8", type: SkyDataManagerColumnPickerComponent, selector: "sky-data-manager-column-picker", providers: [SkyDataManagerService], ngImport: i0, template: "\n<sky-modal>\n <sky-modal-header>\n {{'skyux_data_manager_column_picker_title' | skyLibResources}}\n </sky-modal-header>\n <sky-modal-content\n class=\"sky-data-manager-column-picker-content\"\n >\n <sky-data-manager>\n <sky-data-manager-toolbar>\n </sky-data-manager-toolbar>\n\n <sky-data-view\n [viewId]=\"viewConfig.id\"\n >\n <sky-repeater\n expandMode=\"none\"\n >\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n >\n <sky-repeater-item-title>\n {{column.label}}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{column.description}}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n (click)=\"applyChanges()\"\n >\n {{'skyux_data_manager_apply_changes_button_title' | skyLibResources}}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{'skyux_data_manager_cancel_button_title' | skyLibResources}}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-data-manager-column-picker-content sky-repeater-item-content{margin-top:5px}\n"], components: [{ type: i3.λ5, selector: "sky-modal", inputs: ["ariaRole", "tiledBody"] }, { type: i3.λ4, selector: "sky-modal-header" }, { type: i3.λ2, selector: "sky-modal-content" }, { type: i5.SkyDataManagerComponent, selector: "sky-data-manager" }, { type: i6.SkyDataManagerToolbarComponent, selector: "sky-data-manager-toolbar" }, { type: i7.SkyDataViewComponent, selector: "sky-data-view", inputs: ["viewId"] }, { type: i8.λ11, selector: "sky-repeater", inputs: ["activeIndex", "ariaLabel", "reorderable", "expandMode"], outputs: ["activeIndexChange", "orderChange"] }, { type: i8.λ10, selector: "sky-repeater-item", inputs: ["inlineFormConfig", "inlineFormTemplate", "isExpanded", "isSelected", "reorderable", "selectable", "showInlineForm", "tag"], outputs: ["collapse", "expand", "inlineFormClose", "isSelectedChange"] }, { type: i8.λ12, selector: "sky-repeater-item-title" }, { type: i8.λ8, selector: "sky-repeater-item-content" }, { type: i3.λ3, selector: "sky-modal-footer" }], directives: [{ type: i9.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "skyLibResources": i4.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
145
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerColumnPickerComponent, decorators: [{
146
146
  type: Component,
147
147
  args: [{
148
148
  selector: 'sky-data-manager-column-picker',
@@ -8,9 +8,9 @@ import * as i0 from "@angular/core";
8
8
  */
9
9
  export class SkyDataManagerColumnPickerService {
10
10
  }
11
- SkyDataManagerColumnPickerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerColumnPickerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
12
- SkyDataManagerColumnPickerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerColumnPickerService });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerColumnPickerService, decorators: [{
11
+ SkyDataManagerColumnPickerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerColumnPickerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
12
+ SkyDataManagerColumnPickerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerColumnPickerService });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerColumnPickerService, decorators: [{
14
14
  type: Injectable
15
15
  }] });
16
16
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2RhdGEtbWFuYWdlci9zcmMvbW9kdWxlcy9kYXRhLW1hbmFnZXIvZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXIvZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsVUFBVSxFQUNYLE1BQU0sZUFBZSxDQUFDOztBQU12Qjs7Ozs7R0FLRztBQUVILE1BQU0sT0FBZ0IsaUNBQWlDOzs4SEFBakMsaUNBQWlDO2tJQUFqQyxpQ0FBaUM7MkZBQWpDLGlDQUFpQztrQkFEdEQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEluamVjdGFibGVcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB0eXBlIHtcbiAgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJDb21wb25lbnRcbn0gZnJvbSAnLi9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci5jb21wb25lbnQnO1xuXG4vKipcbiAqIFNlcnZpY2UgdGhhdCBwcm92aWRlcyB0aGUgY29sdW1uIHBpY2tlciBjb21wb25lbnQgdHlwZSBzbyBpdCBjYW4gYmUgZHluYW1pY2FsbHlcbiAqIGNyZWF0ZWQgaW4gdGhlIHRvb2xiYXIgY29tcG9uZW50LiBUaGlzIGF2b2lkcyBhIGNpcmN1bGFyIHJlZmVyZW5jZSBiZXR3ZWVuIGNvbHVtblxuICogcGlja2VyIGFuZCB0b29sYmFyLlxuICogaHR0cHM6Ly9hbmd1bGFyLmlvL2Vycm9ycy9ORzMwMDNcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyU2VydmljZSB7XG4gIHB1YmxpYyBhYnN0cmFjdCBnZXRDb21wb25lbnRUeXBlKCk6IHR5cGVvZiBTa3lEYXRhTWFuYWdlckNvbHVtblBpY2tlckNvbXBvbmVudDtcbn1cbiJdfQ==
@@ -8,9 +8,9 @@ import * as i1 from "@skyux/layout";
8
8
  */
9
9
  export class SkyDataManagerToolbarLeftItemComponent {
10
10
  }
11
- SkyDataManagerToolbarLeftItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerToolbarLeftItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
- SkyDataManagerToolbarLeftItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.5", type: SkyDataManagerToolbarLeftItemComponent, selector: "sky-data-manager-toolbar-left-item", ngImport: i0, template: "<sky-toolbar-item>\n <ng-content></ng-content>\n</sky-toolbar-item>\n", components: [{ type: i1.λ39, selector: "sky-toolbar-item" }] });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerToolbarLeftItemComponent, decorators: [{
11
+ SkyDataManagerToolbarLeftItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerToolbarLeftItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
+ SkyDataManagerToolbarLeftItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.8", type: SkyDataManagerToolbarLeftItemComponent, selector: "sky-data-manager-toolbar-left-item", ngImport: i0, template: "<sky-toolbar-item>\n <ng-content></ng-content>\n</sky-toolbar-item>\n", components: [{ type: i1.λ39, selector: "sky-toolbar-item" }] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerToolbarLeftItemComponent, decorators: [{
14
14
  type: Component,
15
15
  args: [{
16
16
  selector: 'sky-data-manager-toolbar-left-item',
@@ -8,9 +8,9 @@ import * as i1 from "@skyux/layout";
8
8
  */
9
9
  export class SkyDataManagerToolbarPrimaryItemComponent {
10
10
  }
11
- SkyDataManagerToolbarPrimaryItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerToolbarPrimaryItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
- SkyDataManagerToolbarPrimaryItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.5", type: SkyDataManagerToolbarPrimaryItemComponent, selector: "sky-data-manager-toolbar-primary-item", ngImport: i0, template: "<sky-toolbar-item>\n <ng-content></ng-content>\n</sky-toolbar-item>\n", components: [{ type: i1.λ39, selector: "sky-toolbar-item" }] });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerToolbarPrimaryItemComponent, decorators: [{
11
+ SkyDataManagerToolbarPrimaryItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerToolbarPrimaryItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
+ SkyDataManagerToolbarPrimaryItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.8", type: SkyDataManagerToolbarPrimaryItemComponent, selector: "sky-data-manager-toolbar-primary-item", ngImport: i0, template: "<sky-toolbar-item>\n <ng-content></ng-content>\n</sky-toolbar-item>\n", components: [{ type: i1.λ39, selector: "sky-toolbar-item" }] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerToolbarPrimaryItemComponent, decorators: [{
14
14
  type: Component,
15
15
  args: [{
16
16
  selector: 'sky-data-manager-toolbar-primary-item',
@@ -8,9 +8,9 @@ import * as i0 from "@angular/core";
8
8
  */
9
9
  export class SkyDataManagerToolbarRightItemComponent {
10
10
  }
11
- SkyDataManagerToolbarRightItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerToolbarRightItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
- SkyDataManagerToolbarRightItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.5", type: SkyDataManagerToolbarRightItemComponent, selector: "sky-data-manager-toolbar-right-item", ngImport: i0, template: "<ng-content></ng-content>\n" });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerToolbarRightItemComponent, decorators: [{
11
+ SkyDataManagerToolbarRightItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerToolbarRightItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
+ SkyDataManagerToolbarRightItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.8", type: SkyDataManagerToolbarRightItemComponent, selector: "sky-data-manager-toolbar-right-item", ngImport: i0, template: "<ng-content></ng-content>\n" });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerToolbarRightItemComponent, decorators: [{
14
14
  type: Component,
15
15
  args: [{
16
16
  selector: 'sky-data-manager-toolbar-right-item',
@@ -8,9 +8,9 @@ import * as i1 from "@skyux/layout";
8
8
  */
9
9
  export class SkyDataManagerToolbarSectionComponent {
10
10
  }
11
- SkyDataManagerToolbarSectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerToolbarSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
- SkyDataManagerToolbarSectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.5", type: SkyDataManagerToolbarSectionComponent, selector: "sky-data-manager-toolbar-section", ngImport: i0, template: "<sky-toolbar-section>\n <ng-content></ng-content>\n</sky-toolbar-section>\n", components: [{ type: i1.λ38, selector: "sky-toolbar-section" }] });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerToolbarSectionComponent, decorators: [{
11
+ SkyDataManagerToolbarSectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerToolbarSectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
+ SkyDataManagerToolbarSectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.8", type: SkyDataManagerToolbarSectionComponent, selector: "sky-data-manager-toolbar-section", ngImport: i0, template: "<sky-toolbar-section>\n <ng-content></ng-content>\n</sky-toolbar-section>\n", components: [{ type: i1.λ38, selector: "sky-toolbar-section" }] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerToolbarSectionComponent, decorators: [{
14
14
  type: Component,
15
15
  args: [{
16
16
  selector: 'sky-data-manager-toolbar-section',
@@ -159,14 +159,15 @@ export class SkyDataManagerToolbarComponent {
159
159
  this.dataManagerService.updateDataState(this.dataState, this._source);
160
160
  }
161
161
  }
162
- SkyDataManagerToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerToolbarComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SkyDataManagerService }, { token: i2.SkyModalService }, { token: i3.SkyDataManagerColumnPickerService }], target: i0.ɵɵFactoryTarget.Component });
163
- SkyDataManagerToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.5", type: SkyDataManagerToolbarComponent, selector: "sky-data-manager-toolbar", ngImport: i0, template: "<div class=\"sky-data-manager-toolbar\">\n<sky-toolbar>\n <sky-toolbar-section>\n\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 (click)=\"openColumnPicker()\"\n >\n <sky-icon\n icon=\"columns\"\n ></sky-icon>\n <span\n class=\"sky-column-selector-action-btn-text\"\n >\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 *ngIf=\"activeView && views && views.length > 1\"\n [ariaLabel]=\"'data view switcher'\"\n class=\"sky-switch-icon-group\"\n >\n <sky-radio *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\n<sky-toolbar *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 {{'skyux_data_manager_show_selected_option_title' | skyLibResources}}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n</sky-toolbar>\n</div>\n", components: [{ type: i4.λ37, selector: "sky-toolbar" }, { type: i4.λ38, selector: "sky-toolbar-section" }, { type: i4.λ39, selector: "sky-toolbar-item" }, { type: i5.ɵa, selector: "sky-filter-button", inputs: ["active", "disabled", "showButtonText", "filterButtonId", "ariaControls", "ariaExpanded"], outputs: ["filterButtonClick"] }, { type: i5.ɵr, selector: "sky-sort", inputs: ["showButtonText"] }, { type: i5.ɵt, selector: "sky-sort-item", inputs: ["active"], outputs: ["itemSelect"] }, { type: i6.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { type: i7.SkySearchComponent, selector: "sky-search", inputs: ["expandMode", "debounceTime", "disabled", "searchText", "placeholderText"], outputs: ["searchApply", "searchChange", "searchClear"] }, { type: i4.λ40, selector: "sky-toolbar-view-actions" }, { type: i8.λ11, selector: "sky-radio-group", inputs: ["ariaLabelledBy", "ariaLabel", "disabled", "name", "required", "value", "tabIndex"] }, { type: i8.λ13, selector: "sky-radio", inputs: ["checked", "disabled", "id", "label", "labelledBy", "name", "tabindex", "value", "icon", "radioType"], outputs: ["change", "checkedChange", "disabledChange"] }, { type: i8.λ3, selector: "sky-checkbox", inputs: ["label", "labelledBy", "id", "disabled", "tabindex", "name", "icon", "checkboxType", "checked", "required"], outputs: ["change", "checkedChange", "disabledChange"] }, { type: i8.λ4, selector: "sky-checkbox-label" }], directives: [{ type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i10.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "skyLibResources": i11.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
164
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerToolbarComponent, decorators: [{
162
+ SkyDataManagerToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerToolbarComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SkyDataManagerService }, { token: i2.SkyModalService }, { token: i3.SkyDataManagerColumnPickerService }], target: i0.ɵɵFactoryTarget.Component });
163
+ SkyDataManagerToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.8", type: SkyDataManagerToolbarComponent, selector: "sky-data-manager-toolbar", ngImport: i0, template: "<div class=\"sky-data-manager-toolbar\">\n<sky-toolbar>\n <sky-toolbar-section>\n\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]=\"'skyux_data_manager_columns_button_title' | skyLibResources\"\n [attr.title]=\"'skyux_data_manager_columns_button_title' | skyLibResources\"\n (click)=\"openColumnPicker()\"\n >\n <sky-icon\n icon=\"columns\"\n ></sky-icon>\n <span\n class=\"sky-column-selector-action-btn-text\"\n >\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 *ngIf=\"activeView && views && views.length > 1\"\n [ariaLabel]=\"'data view switcher'\"\n class=\"sky-switch-icon-group\"\n >\n <sky-radio *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\n<sky-toolbar *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 {{'skyux_data_manager_show_selected_option_title' | skyLibResources}}\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"], components: [{ type: i4.λ37, selector: "sky-toolbar" }, { type: i4.λ38, selector: "sky-toolbar-section" }, { type: i4.λ39, selector: "sky-toolbar-item" }, { type: i5.λ1, selector: "sky-filter-button", inputs: ["filterButtonId", "ariaControls", "ariaExpanded", "active", "disabled", "showButtonText"], outputs: ["filterButtonClick"] }, { type: i5.λ14, selector: "sky-sort", inputs: ["showButtonText"] }, { type: i5.λ13, selector: "sky-sort-item", inputs: ["active"], outputs: ["itemSelect"] }, { type: i6.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { type: i7.SkySearchComponent, selector: "sky-search", inputs: ["searchText", "expandMode", "debounceTime", "disabled", "placeholderText"], outputs: ["searchApply", "searchChange", "searchClear"] }, { type: i4.λ40, selector: "sky-toolbar-view-actions" }, { type: i8.λ11, selector: "sky-radio-group", inputs: ["ariaLabelledBy", "ariaLabel", "disabled", "name", "required", "value", "tabIndex"] }, { type: i8.λ13, selector: "sky-radio", inputs: ["checked", "disabled", "id", "label", "labelledBy", "name", "tabindex", "value", "icon", "radioType"], outputs: ["change", "checkedChange", "disabledChange"] }, { type: i8.λ3, selector: "sky-checkbox", inputs: ["label", "labelledBy", "id", "disabled", "tabindex", "name", "icon", "checkboxType", "checked", "required"], outputs: ["change", "checkedChange", "disabledChange"] }, { type: i8.λ4, selector: "sky-checkbox-label" }], directives: [{ type: i9.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i9.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i10.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "skyLibResources": i11.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
164
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerToolbarComponent, decorators: [{
165
165
  type: Component,
166
166
  args: [{
167
167
  selector: 'sky-data-manager-toolbar',
168
168
  templateUrl: './data-manager-toolbar.component.html',
169
+ styleUrls: ['./data-manager-toolbar.component.scss'],
169
170
  changeDetection: ChangeDetectionStrategy.OnPush
170
171
  }]
171
172
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.SkyDataManagerService }, { type: i2.SkyModalService }, { type: i3.SkyDataManagerColumnPickerService }]; } });
172
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1tYW5hZ2VyLXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YS1tYW5hZ2VyL3NyYy9tb2R1bGVzL2RhdGEtbWFuYWdlci9kYXRhLW1hbmFnZXItdG9vbGJhci9kYXRhLW1hbmFnZXItdG9vbGJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhLW1hbmFnZXIvc3JjL21vZHVsZXMvZGF0YS1tYW5hZ2VyL2RhdGEtbWFuYWdlci10b29sYmFyL2RhdGEtbWFuYWdlci10b29sYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUdWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDTCxPQUFPLEVBQ1IsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0wsU0FBUyxFQUNWLE1BQU0sZ0JBQWdCLENBQUM7QUFleEIsT0FBTyxFQUNMLGlDQUFpQyxFQUNsQyxNQUFNLGtFQUFrRSxDQUFDO0FBMEIxRSxPQUFPLEVBQ0wsZ0NBQWdDLEVBQ2pDLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFFeEM7Ozs7R0FJRztBQU1ILE1BQU0sT0FBTyw4QkFBOEI7SUFxRHpDLFlBQ1UsY0FBaUMsRUFDakMsa0JBQXlDLEVBQ3pDLFlBQTZCLEVBQzdCLG1CQUFzRDtRQUh0RCxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDakMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUF1QjtRQUN6QyxpQkFBWSxHQUFaLFlBQVksQ0FBaUI7UUFDN0Isd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFtQztRQVpoRSwrQ0FBK0M7UUFDdkMsWUFBTyxHQUFHLFNBQVMsQ0FBQztRQUlwQixtQkFBYyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFDL0IsV0FBTSxHQUF3QixF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O29CQUNULFFBQVEsRUFBRSwwQkFBMEI7b0JBQ3BDLFdBQVcsRUFBRSx1Q0FBdUM7b0JBQ3BELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtcbiAgU3ViamVjdFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgdGFrZVVudGlsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgU2t5Q2hlY2tib3hDaGFuZ2Vcbn0gZnJvbSAnQHNreXV4L2Zvcm1zJztcblxuaW1wb3J0IHtcbiAgU2t5TW9kYWxDbG9zZUFyZ3MsXG4gIFNreU1vZGFsU2VydmljZVxufSBmcm9tICdAc2t5dXgvbW9kYWxzJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0YU1hbmFnZXJTZXJ2aWNlXG59IGZyb20gJy4uL2RhdGEtbWFuYWdlci5zZXJ2aWNlJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJDb250ZXh0XG59IGZyb20gJy4uL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyLWNvbnRleHQnO1xuXG5pbXBvcnQge1xuICBTa3lEYXRhTWFuYWdlckNvbHVtblBpY2tlck9wdGlvblxufSBmcm9tICcuLi9tb2RlbHMvZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXItb3B0aW9uJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJTZXJ2aWNlXG59IGZyb20gJy4uL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyLnNlcnZpY2UnO1xuXG5pbXBvcnQge1xuICBTa3lEYXRhTWFuYWdlckNvbmZpZ1xufSBmcm9tICcuLi9tb2RlbHMvZGF0YS1tYW5hZ2VyLWNvbmZpZyc7XG5cbmltcG9ydCB7XG4gIFNreURhdGFNYW5hZ2VyU29ydE9wdGlvblxufSBmcm9tICcuLi9tb2RlbHMvZGF0YS1tYW5hZ2VyLXNvcnQtb3B0aW9uJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0YU1hbmFnZXJTdGF0ZVxufSBmcm9tICcuLi9tb2RlbHMvZGF0YS1tYW5hZ2VyLXN0YXRlJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0YVZpZXdDb25maWdcbn0gZnJvbSAnLi4vbW9kZWxzL2RhdGEtdmlldy1jb25maWcnO1xuXG5pbXBvcnQge1xuICBTa3lEYXRhTWFuYWdlckZpbHRlck1vZGFsQ29udGV4dFxufSBmcm9tICcuLi9kYXRhLW1hbmFnZXItZmlsdGVyLWNvbnRleHQnO1xuXG4vKipcbiAqIFJlbmRlcnMgYSBgc2t5LXRvb2xiYXJgIHdpdGggdGhlIGNvbnRlbnRzIHNwZWNpZmllZCBieSB0aGUgYWN0aXZlIHZpZXcncyBgU2t5RGF0YVZpZXdDb25maWdgXG4gKiBhbmQgdGhlIGBTa3lEYXRhTWFuYWdlclRvb2xiYXJMZWZ0SXRlbXNDb21wb25lbnRgLCBgU2t5RGF0YU1hbmFnZXJUb29sYmFyUmlnaHRJdGVtc0NvbXBvbmVudGAsXG4gKiBhbmQgYFNreURhdGFNYW5hZ2VyVG9vbGJhclNlY3Rpb25Db21wb25lbnRgIHdyYXBwZXJzLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS1tYW5hZ2VyLXRvb2xiYXIuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBTa3lEYXRhTWFuYWdlclRvb2xiYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE9uSW5pdCB7XG5cbiAgcHVibGljIGdldCBhY3RpdmVTb3J0T3B0aW9uSWQoKTogc3RyaW5nIHtcbiAgICBjb25zdCBhY3RpdmVTb3J0T3B0aW9uID0gdGhpcy5kYXRhU3RhdGUgJiYgdGhpcy5kYXRhU3RhdGUuYWN0aXZlU29ydE9wdGlvbjtcbiAgICByZXR1cm4gYWN0aXZlU29ydE9wdGlvbiAmJiBhY3RpdmVTb3J0T3B0aW9uLmlkO1xuICB9XG5cbiAgcHVibGljIGdldCBhY3RpdmVWaWV3KCk6IFNreURhdGFWaWV3Q29uZmlnIHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZlVmlldztcbiAgfVxuXG4gIHB1YmxpYyBzZXQgYWN0aXZlVmlldyh2YWx1ZTogU2t5RGF0YVZpZXdDb25maWcpIHtcbiAgICB0aGlzLl9hY3RpdmVWaWV3ID0gdmFsdWU7XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGF0YU1hbmFnZXJDb25maWcoKTogU2t5RGF0YU1hbmFnZXJDb25maWcge1xuICAgIHJldHVybiB0aGlzLl9kYXRhTWFuYWdlckNvbmZpZztcbiAgfVxuXG4gIHB1YmxpYyBzZXQgZGF0YU1hbmFnZXJDb25maWcodmFsdWU6IFNreURhdGFNYW5hZ2VyQ29uZmlnKSB7XG4gICAgdGhpcy5fZGF0YU1hbmFnZXJDb25maWcgPSB2YWx1ZTtcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIGdldCBkYXRhU3RhdGUoKTogU2t5RGF0YU1hbmFnZXJTdGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGFTdGF0ZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgZGF0YVN0YXRlKHZhbHVlOiBTa3lEYXRhTWFuYWdlclN0YXRlKSB7XG4gICAgdGhpcy5fZGF0YVN0YXRlID0gdmFsdWU7XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UudXBkYXRlRGF0YVN0YXRlKHZhbHVlLCB0aGlzLl9zb3VyY2UpO1xuICB9XG5cbiAgcHVibGljIGdldCB2aWV3cygpOiBTa3lEYXRhVmlld0NvbmZpZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5fdmlld3M7XG4gIH1cblxuICBwdWJsaWMgc2V0IHZpZXdzKHZhbHVlOiBTa3lEYXRhVmlld0NvbmZpZ1tdKSB7XG4gICAgdGhpcy5fdmlld3MgPSB2YWx1ZTtcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIG9ubHlTaG93U2VsZWN0ZWQ6IGJvb2xlYW47XG5cbiAgLy8gdGhlIHNvdXJjZSB0byBwcm92aWRlIGZvciBkYXRhIHN0YXRlIGNoYW5nZXNcbiAgcHJpdmF0ZSBfc291cmNlID0gJ3Rvb2xiYXInO1xuICBwcml2YXRlIF9hY3RpdmVWaWV3OiBTa3lEYXRhVmlld0NvbmZpZztcbiAgcHJpdmF0ZSBfZGF0YU1hbmFnZXJDb25maWc6IFNreURhdGFNYW5hZ2VyQ29uZmlnO1xuICBwcml2YXRlIF9kYXRhU3RhdGU6IFNreURhdGFNYW5hZ2VyU3RhdGU7XG4gIHByaXZhdGUgX25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpO1xuICBwcml2YXRlIF92aWV3czogU2t5RGF0YVZpZXdDb25maWdbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgZGF0YU1hbmFnZXJTZXJ2aWNlOiBTa3lEYXRhTWFuYWdlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBtb2RhbFNlcnZpY2U6IFNreU1vZGFsU2VydmljZSxcbiAgICBwcml2YXRlIGNvbHVtblBpY2tlclNlcnZpY2U6IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyU2VydmljZVxuICApIHsgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS5nZXRBY3RpdmVWaWV3SWRVcGRhdGVzKClcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoYWN0aXZlVmlld0lkID0+IHtcbiAgICAgICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICAgICAgaWYgKGFjdGl2ZVZpZXdJZCkge1xuICAgICAgICAgIHRoaXMuYWN0aXZlVmlldyA9IHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlLmdldFZpZXdCeUlkKGFjdGl2ZVZpZXdJZCk7XG4gICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS5nZXREYXRhVmlld3NVcGRhdGVzKClcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUodmlld3MgPT4ge1xuICAgICAgICB0aGlzLnZpZXdzID0gdmlld3M7XG4gICAgICB9KTtcblxuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlLmdldERhdGFTdGF0ZVVwZGF0ZXModGhpcy5fc291cmNlKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZShkYXRhU3RhdGUgPT4ge1xuICAgICAgICB0aGlzLl9kYXRhU3RhdGUgPSBkYXRhU3RhdGU7XG4gICAgICAgIHRoaXMub25seVNob3dTZWxlY3RlZCA9IGRhdGFTdGF0ZS5vbmx5U2hvd1NlbGVjdGVkO1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS5nZXREYXRhTWFuYWdlckNvbmZpZ1VwZGF0ZXMoKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZShjb25maWcgPT4ge1xuICAgICAgICB0aGlzLmRhdGFNYW5hZ2VyQ29uZmlnID0gY29uZmlnO1xuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHVibGljIHNvcnRTZWxlY3RlZChzb3J0T3B0aW9uOiBTa3lEYXRhTWFuYWdlclNvcnRPcHRpb24pOiB2b2lkIHtcbiAgICB0aGlzLmRhdGFTdGF0ZS5hY3RpdmVTb3J0T3B0aW9uID0gc29ydE9wdGlvbjtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS51cGRhdGVEYXRhU3RhdGUodGhpcy5kYXRhU3RhdGUsIHRoaXMuX3NvdXJjZSk7XG4gIH1cblxuICBwdWJsaWMgb25WaWV3Q2hhbmdlKHZpZXdJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UudXBkYXRlQWN0aXZlVmlld0lkKHZpZXdJZCk7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoQXBwbGllZCh0ZXh0OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGFTdGF0ZS5zZWFyY2hUZXh0ID0gdGV4dDtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS51cGRhdGVEYXRhU3RhdGUodGhpcy5kYXRhU3RhdGUsIHRoaXMuX3NvdXJjZSk7XG4gIH1cblxuICBwdWJsaWMgZmlsdGVyQnV0dG9uQ2xpY2tlZCgpOiB2b2lkIHtcbiAgICBjb25zdCBjb250ZXh0ID0gbmV3IFNreURhdGFNYW5hZ2VyRmlsdGVyTW9kYWxDb250ZXh0KCk7XG4gICAgY29uc3QgZmlsdGVyTW9kYWwgPSB0aGlzLmRhdGFNYW5hZ2VyQ29uZmlnICYmIHRoaXMuZGF0YU1hbmFnZXJDb25maWcuZmlsdGVyTW9kYWxDb21wb25lbnQ7XG5cbiAgICBjb250ZXh0LmZpbHRlckRhdGEgPSB0aGlzLmRhdGFTdGF0ZSAmJiB0aGlzLmRhdGFTdGF0ZS5maWx0ZXJEYXRhO1xuXG4gICAgY29uc3Qgb3B0aW9uczogYW55ID0ge1xuICAgICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBTa3lEYXRhTWFuYWdlckZpbHRlck1vZGFsQ29udGV4dCwgdXNlVmFsdWU6IGNvbnRleHQgfV1cbiAgICB9O1xuXG4gICAgaWYgKGZpbHRlck1vZGFsKSB7XG4gICAgICBjb25zdCBtb2RhbEluc3RhbmNlID0gdGhpcy5tb2RhbFNlcnZpY2Uub3BlbihmaWx0ZXJNb2RhbCwgb3B0aW9ucyk7XG5cbiAgICAgIG1vZGFsSW5zdGFuY2UuY2xvc2VkLnN1YnNjcmliZSgocmVzdWx0OiBTa3lNb2RhbENsb3NlQXJncykgPT4ge1xuICAgICAgICBpZiAocmVzdWx0LnJlYXNvbiA9PT0gJ3NhdmUnKSB7XG4gICAgICAgICAgdGhpcy5kYXRhU3RhdGUuZmlsdGVyRGF0YSA9IHJlc3VsdC5kYXRhO1xuICAgICAgICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlLnVwZGF0ZURhdGFTdGF0ZSh0aGlzLmRhdGFTdGF0ZSwgdGhpcy5fc291cmNlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9wZW5Db2x1bW5QaWNrZXIoKTogdm9pZCB7XG4gICAgY29uc3QgY29sdW1uT3B0aW9ucyA9IHRoaXMuYWN0aXZlVmlldyAmJiB0aGlzLmFjdGl2ZVZpZXcuY29sdW1uT3B0aW9ucztcbiAgICBjb25zdCB2aWV3U3RhdGUgPSB0aGlzLmRhdGFTdGF0ZS5nZXRWaWV3U3RhdGVCeUlkKHRoaXMuYWN0aXZlVmlldy5pZCk7XG4gICAgY29uc3QgY29udGV4dCA9IG5ldyBTa3lEYXRhTWFuYWdlckNvbHVtblBpY2tlckNvbnRleHQoY29sdW1uT3B0aW9ucywgdmlld1N0YXRlLmRpc3BsYXllZENvbHVtbklkcyk7XG5cbiAgICBpZiAodGhpcy5hY3RpdmVWaWV3LmNvbHVtblBpY2tlclNvcnRTdHJhdGVneSkge1xuICAgICAgY29udGV4dC5jb2x1bW5QaWNrZXJTb3J0U3RyYXRlZ3kgPSB0aGlzLmFjdGl2ZVZpZXcuY29sdW1uUGlja2VyU29ydFN0cmF0ZWd5O1xuICAgIH1cblxuICAgIGNvbnN0IG9wdGlvbnM6IGFueSA9IHtcbiAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJDb250ZXh0LCB1c2VWYWx1ZTogY29udGV4dCB9XVxuICAgIH07XG5cbiAgICBjb25zdCBtb2RhbEluc3RhbmNlID0gdGhpcy5tb2RhbFNlcnZpY2Uub3BlbihcbiAgICAgIHRoaXMuY29sdW1uUGlja2VyU2VydmljZS5nZXRDb21wb25lbnRUeXBlKCksXG4gICAgICBvcHRpb25zXG4gICAgKTtcblxuICAgIG1vZGFsSW5zdGFuY2UuY2xvc2VkLnN1YnNjcmliZSgocmVzdWx0OiBTa3lNb2RhbENsb3NlQXJncykgPT4ge1xuICAgICAgaWYgKHJlc3VsdC5yZWFzb24gPT09ICdzYXZlJykge1xuICAgICAgICBjb25zdCBkaXNwbGF5ZWRDb2x1bW5JZHMgPSByZXN1bHQuZGF0YS5tYXAoKGNvbDogU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJPcHRpb24pID0+IGNvbC5pZCk7XG5cbiAgICAgICAgdmlld1N0YXRlLmRpc3BsYXllZENvbHVtbklkcyA9IGRpc3BsYXllZENvbHVtbklkcztcbiAgICAgICAgdGhpcy5kYXRhU3RhdGUgPSB0aGlzLmRhdGFTdGF0ZS5hZGRPclVwZGF0ZVZpZXcodGhpcy5hY3RpdmVWaWV3LmlkLCB2aWV3U3RhdGUpO1xuICAgICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0QWxsKCk6IHZvaWQge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHRoaXMuYWN0aXZlVmlldy5vblNlbGVjdEFsbENsaWNrKSB7XG4gICAgICB0aGlzLmFjdGl2ZVZpZXcub25TZWxlY3RBbGxDbGljaygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbGVhckFsbCgpOiB2b2lkIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLmFjdGl2ZVZpZXcub25DbGVhckFsbENsaWNrKSB7XG4gICAgICB0aGlzLmFjdGl2ZVZpZXcub25DbGVhckFsbENsaWNrKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uT25seVNob3dTZWxlY3RlZChldmVudDogU2t5Q2hlY2tib3hDaGFuZ2UpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGFTdGF0ZS5vbmx5U2hvd1NlbGVjdGVkID0gZXZlbnQuY2hlY2tlZDtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS51cGRhdGVEYXRhU3RhdGUodGhpcy5kYXRhU3RhdGUsIHRoaXMuX3NvdXJjZSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXJcIj5cbjxza3ktdG9vbGJhcj5cbiAgPHNreS10b29sYmFyLXNlY3Rpb24+XG5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXItcHJpbWFyeS1pdGVtXCI+PC9uZy1jb250ZW50PlxuXG4gICAgPHNreS10b29sYmFyLWl0ZW0gKm5nSWY9XCJhY3RpdmVWaWV3Py5maWx0ZXJCdXR0b25FbmFibGVkXCI+XG4gICAgICA8c2t5LWZpbHRlci1idXR0b25cbiAgICAgICAgW3Nob3dCdXR0b25UZXh0XT1cImFjdGl2ZVZpZXc/LnNob3dGaWx0ZXJCdXR0b25UZXh0XCJcbiAgICAgICAgKGZpbHRlckJ1dHRvbkNsaWNrKT1cImZpbHRlckJ1dHRvbkNsaWNrZWQoKVwiXG4gICAgICA+XG4gICAgICA8L3NreS1maWx0ZXItYnV0dG9uPlxuICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cblxuICAgIDxza3ktdG9vbGJhci1pdGVtICpuZ0lmPVwiYWN0aXZlVmlldz8uc29ydEVuYWJsZWRcIj5cbiAgICAgIDxza3ktc29ydCBbc2hvd0J1dHRvblRleHRdPVwiYWN0aXZlVmlldz8uc2hvd1NvcnRCdXR0b25UZXh0XCI+XG4gICAgICAgIDxza3ktc29ydC1pdGVtXG4gICAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZGF0YU1hbmFnZXJDb25maWc/LnNvcnRPcHRpb25zXCJcbiAgICAgICAgICBbYWN0aXZlXT1cImFjdGl2ZVNvcnRPcHRpb25JZCAmJiBhY3RpdmVTb3J0T3B0aW9uSWQgPT09IGl0ZW0uaWRcIlxuICAgICAgICAgIChpdGVtU2VsZWN0KT1cInNvcnRTZWxlY3RlZChpdGVtKVwiXG4gICAgICAgID5cbiAgICAgICAgICB7e2l0ZW0ubGFiZWx9fVxuICAgICAgICA8L3NreS1zb3J0LWl0ZW0+XG4gICAgICA8L3NreS1zb3J0PlxuICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cblxuICAgIDxza3ktdG9vbGJhci1pdGVtICpuZ0lmPVwiYWN0aXZlVmlldz8uY29sdW1uUGlja2VyRW5hYmxlZFwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1kZWZhdWx0IHNreS1jb2wtcGlja2VyLWJ0blwiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwib3BlbkNvbHVtblBpY2tlcigpXCJcbiAgICAgID5cbiAgICAgICAgPHNreS1pY29uXG4gICAgICAgICAgaWNvbj1cImNvbHVtbnNcIlxuICAgICAgICA+PC9za3ktaWNvbj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICBjbGFzcz1cInNreS1jb2x1bW4tc2VsZWN0b3ItYWN0aW9uLWJ0bi10ZXh0XCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7J3NreXV4X2RhdGFfbWFuYWdlcl9jb2x1bW5zX2J1dHRvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXN9fVxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L3NreS10b29sYmFyLWl0ZW0+XG5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXItbGVmdC1pdGVtXCI+PC9uZy1jb250ZW50PlxuXG4gICAgPHNreS10b29sYmFyLWl0ZW0gKm5nSWY9XCJhY3RpdmVWaWV3Py5zZWFyY2hFbmFibGVkXCI+XG4gICAgICA8c2t5LXNlYXJjaFxuICAgICAgICBbZXhwYW5kTW9kZV09XCJhY3RpdmVWaWV3Py5zZWFyY2hFeHBhbmRNb2RlXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyVGV4dF09XCJhY3RpdmVWaWV3Py5zZWFyY2hQbGFjZWhvbGRlclRleHRcIlxuICAgICAgICBbc2VhcmNoVGV4dF09XCJkYXRhU3RhdGU/LnNlYXJjaFRleHRcIlxuICAgICAgICAoc2VhcmNoQXBwbHkpPVwic2VhcmNoQXBwbGllZCgkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgIDwvc2t5LXNlYXJjaD5cbiAgICA8L3NreS10b29sYmFyLWl0ZW0+XG5cbiAgICA8c2t5LXRvb2xiYXItdmlldy1hY3Rpb25zPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic2t5LWRhdGEtbWFuYWdlci10b29sYmFyLXJpZ2h0LWl0ZW1cIj48L25nLWNvbnRlbnQ+XG4gICAgICA8c2t5LXJhZGlvLWdyb3VwICpuZ0lmPVwiYWN0aXZlVmlldyAmJiB2aWV3cyAmJiB2aWV3cy5sZW5ndGggPiAxXCJcbiAgICAgICAgW2FyaWFMYWJlbF09XCInZGF0YSB2aWV3IHN3aXRjaGVyJ1wiXG4gICAgICAgIGNsYXNzPVwic2t5LXN3aXRjaC1pY29uLWdyb3VwXCJcbiAgICAgID5cbiAgICAgICAgPHNreS1yYWRpbyAqbmdGb3I9XCJsZXQgdmlldyBvZiB2aWV3c1wiXG4gICAgICAgICAgW2F0dHIubmFtZV09XCJ2aWV3Lm5hbWVcIlxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwidmlldy5uYW1lXCJcbiAgICAgICAgICBbaWNvbl09XCJ2aWV3Lmljb25cIlxuICAgICAgICAgIFt2YWx1ZV09XCJ2aWV3LmlkXCJcbiAgICAgICAgICBbbGFiZWxdPVwidmlldy5uYW1lXCJcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cImFjdGl2ZVZpZXcuaWRcIlxuICAgICAgICAgIChjaGFuZ2UpPVwib25WaWV3Q2hhbmdlKHZpZXcuaWQpXCJcbiAgICAgICAgPlxuICAgICAgICA8L3NreS1yYWRpbz5cbiAgICAgIDwvc2t5LXJhZGlvLWdyb3VwPlxuICAgIDwvc2t5LXRvb2xiYXItdmlldy1hY3Rpb25zPlxuICA8L3NreS10b29sYmFyLXNlY3Rpb24+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cInNreS1kYXRhLW1hbmFnZXItdG9vbGJhci1zZWN0aW9uXCI+PC9uZy1jb250ZW50PlxuPC9za3ktdG9vbGJhclxuPlxuXG48c2t5LXRvb2xiYXIgKm5nSWY9XCJhY3RpdmVWaWV3Py5tdWx0aXNlbGVjdFRvb2xiYXJFbmFibGVkXCJcbiAgY2xhc3M9XCJza3ktZGF0YS1tYW5hZ2VyLW11bHRpc2VsZWN0LXRvb2xiYXJcIlxuPlxuICA8c2t5LXRvb2xiYXItc2VjdGlvbj5cbiAgICA8c2t5LXRvb2xiYXItaXRlbT5cbiAgICAgIDxidXR0b25cbiAgICAgIGNsYXNzPVwic2t5LWJ0biBza3ktYnRuLWxpbmsgc2t5LWRhdGEtbWFuYWdlci1zZWxlY3QtYWxsLWJ0blwiXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIChjbGljayk9XCJzZWxlY3RBbGwoKVwiXG4gICAgICA+XG4gICAgICAgIHt7J3NreXV4X2RhdGFfbWFuYWdlcl9zZWxlY3RfYWxsX2J1dHRvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXN9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9za3ktdG9vbGJhci1pdGVtPlxuICAgIDxza3ktdG9vbGJhci1pdGVtPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1saW5rIHNreS1kYXRhLW1hbmFnZXItY2xlYXItYWxsLWJ0blwiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwiY2xlYXJBbGwoKVwiXG4gICAgICA+XG4gICAgICAgIHt7J3NreXV4X2RhdGFfbWFuYWdlcl9jbGVhcl9hbGxfYnV0dG9uX3RpdGxlJyB8IHNreUxpYlJlc291cmNlc319XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L3NreS10b29sYmFyLWl0ZW0+XG4gICAgPHNreS10b29sYmFyLXZpZXctYWN0aW9ucz5cbiAgICAgIDxza3ktY2hlY2tib3hcbiAgICAgICAgW2NoZWNrZWRdPVwib25seVNob3dTZWxlY3RlZFwiXG4gICAgICAgIChjaGFuZ2UpPVwib25Pbmx5U2hvd1NlbGVjdGVkKCRldmVudClcIlxuICAgICAgPlxuICAgICAgICA8c2t5LWNoZWNrYm94LWxhYmVsPlxuICAgICAgICAgIHt7J3NreXV4X2RhdGFfbWFuYWdlcl9zaG93X3NlbGVjdGVkX29wdGlvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXN9fVxuICAgICAgICA8L3NreS1jaGVja2JveC1sYWJlbD5cbiAgICAgIDwvc2t5LWNoZWNrYm94PlxuICAgIDwvc2t5LXRvb2xiYXItdmlldy1hY3Rpb25zPlxuICA8L3NreS10b29sYmFyLXNlY3Rpb24+XG48L3NreS10b29sYmFyPlxuPC9kaXY+XG4iXX0=
173
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1tYW5hZ2VyLXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YS1tYW5hZ2VyL3NyYy9tb2R1bGVzL2RhdGEtbWFuYWdlci9kYXRhLW1hbmFnZXItdG9vbGJhci9kYXRhLW1hbmFnZXItdG9vbGJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhLW1hbmFnZXIvc3JjL21vZHVsZXMvZGF0YS1tYW5hZ2VyL2RhdGEtbWFuYWdlci10b29sYmFyL2RhdGEtbWFuYWdlci10b29sYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUdWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFDTCxPQUFPLEVBQ1IsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0wsU0FBUyxFQUNWLE1BQU0sZ0JBQWdCLENBQUM7QUFleEIsT0FBTyxFQUNMLGlDQUFpQyxFQUNsQyxNQUFNLGtFQUFrRSxDQUFDO0FBMEIxRSxPQUFPLEVBQ0wsZ0NBQWdDLEVBQ2pDLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFFeEM7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyw4QkFBOEI7SUFxRHpDLFlBQ1UsY0FBaUMsRUFDakMsa0JBQXlDLEVBQ3pDLFlBQTZCLEVBQzdCLG1CQUFzRDtRQUh0RCxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDakMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUF1QjtRQUN6QyxpQkFBWSxHQUFaLFlBQVksQ0FBaUI7UUFDN0Isd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFtQztRQVpoRSwrQ0FBK0M7UUFDdkMsWUFBTyxHQUFHLFNBQVMsQ0FBQztRQUlwQixtQkFBYyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFDL0IsV0FBTSxHQUF3QixF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O29CQUNULFFBQVEsRUFBRSwwQkFBMEI7b0JBQ3BDLFdBQVcsRUFBRSx1Q0FBdUM7b0JBQ3BELFNBQVMsRUFBRSxDQUFDLHVDQUF1QyxDQUFDO29CQUNwRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDaEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgT25EZXN0cm95LFxuICBPbkluaXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7XG4gIFN1YmplY3Rcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gIHRha2VVbnRpbFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7XG4gIFNreUNoZWNrYm94Q2hhbmdlXG59IGZyb20gJ0Bza3l1eC9mb3Jtcyc7XG5cbmltcG9ydCB7XG4gIFNreU1vZGFsQ2xvc2VBcmdzLFxuICBTa3lNb2RhbFNlcnZpY2Vcbn0gZnJvbSAnQHNreXV4L21vZGFscyc7XG5cbmltcG9ydCB7XG4gIFNreURhdGFNYW5hZ2VyU2VydmljZVxufSBmcm9tICcuLi9kYXRhLW1hbmFnZXIuc2VydmljZSc7XG5cbmltcG9ydCB7XG4gIFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyQ29udGV4dFxufSBmcm9tICcuLi9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci1jb250ZXh0JztcblxuaW1wb3J0IHtcbiAgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJPcHRpb25cbn0gZnJvbSAnLi4vbW9kZWxzL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyLW9wdGlvbic7XG5cbmltcG9ydCB7XG4gIFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyU2VydmljZVxufSBmcm9tICcuLi9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci5zZXJ2aWNlJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0YU1hbmFnZXJDb25maWdcbn0gZnJvbSAnLi4vbW9kZWxzL2RhdGEtbWFuYWdlci1jb25maWcnO1xuXG5pbXBvcnQge1xuICBTa3lEYXRhTWFuYWdlclNvcnRPcHRpb25cbn0gZnJvbSAnLi4vbW9kZWxzL2RhdGEtbWFuYWdlci1zb3J0LW9wdGlvbic7XG5cbmltcG9ydCB7XG4gIFNreURhdGFNYW5hZ2VyU3RhdGVcbn0gZnJvbSAnLi4vbW9kZWxzL2RhdGEtbWFuYWdlci1zdGF0ZSc7XG5cbmltcG9ydCB7XG4gIFNreURhdGFWaWV3Q29uZmlnXG59IGZyb20gJy4uL21vZGVscy9kYXRhLXZpZXctY29uZmlnJztcblxuaW1wb3J0IHtcbiAgU2t5RGF0YU1hbmFnZXJGaWx0ZXJNb2RhbENvbnRleHRcbn0gZnJvbSAnLi4vZGF0YS1tYW5hZ2VyLWZpbHRlci1jb250ZXh0JztcblxuLyoqXG4gKiBSZW5kZXJzIGEgYHNreS10b29sYmFyYCB3aXRoIHRoZSBjb250ZW50cyBzcGVjaWZpZWQgYnkgdGhlIGFjdGl2ZSB2aWV3J3MgYFNreURhdGFWaWV3Q29uZmlnYFxuICogYW5kIHRoZSBgU2t5RGF0YU1hbmFnZXJUb29sYmFyTGVmdEl0ZW1zQ29tcG9uZW50YCwgYFNreURhdGFNYW5hZ2VyVG9vbGJhclJpZ2h0SXRlbXNDb21wb25lbnRgLFxuICogYW5kIGBTa3lEYXRhTWFuYWdlclRvb2xiYXJTZWN0aW9uQ29tcG9uZW50YCB3cmFwcGVycy5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWRhdGEtbWFuYWdlci10b29sYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtbWFuYWdlci10b29sYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0YS1tYW5hZ2VyLXRvb2xiYXIuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgU2t5RGF0YU1hbmFnZXJUb29sYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xuXG4gIHB1YmxpYyBnZXQgYWN0aXZlU29ydE9wdGlvbklkKCk6IHN0cmluZyB7XG4gICAgY29uc3QgYWN0aXZlU29ydE9wdGlvbiA9IHRoaXMuZGF0YVN0YXRlICYmIHRoaXMuZGF0YVN0YXRlLmFjdGl2ZVNvcnRPcHRpb247XG4gICAgcmV0dXJuIGFjdGl2ZVNvcnRPcHRpb24gJiYgYWN0aXZlU29ydE9wdGlvbi5pZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWN0aXZlVmlldygpOiBTa3lEYXRhVmlld0NvbmZpZyB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZVZpZXc7XG4gIH1cblxuICBwdWJsaWMgc2V0IGFjdGl2ZVZpZXcodmFsdWU6IFNreURhdGFWaWV3Q29uZmlnKSB7XG4gICAgdGhpcy5fYWN0aXZlVmlldyA9IHZhbHVlO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRhdGFNYW5hZ2VyQ29uZmlnKCk6IFNreURhdGFNYW5hZ2VyQ29uZmlnIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YU1hbmFnZXJDb25maWc7XG4gIH1cblxuICBwdWJsaWMgc2V0IGRhdGFNYW5hZ2VyQ29uZmlnKHZhbHVlOiBTa3lEYXRhTWFuYWdlckNvbmZpZykge1xuICAgIHRoaXMuX2RhdGFNYW5hZ2VyQ29uZmlnID0gdmFsdWU7XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGF0YVN0YXRlKCk6IFNreURhdGFNYW5hZ2VyU3RhdGUge1xuICAgIHJldHVybiB0aGlzLl9kYXRhU3RhdGU7XG4gIH1cblxuICBwdWJsaWMgc2V0IGRhdGFTdGF0ZSh2YWx1ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZSkge1xuICAgIHRoaXMuX2RhdGFTdGF0ZSA9IHZhbHVlO1xuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlLnVwZGF0ZURhdGFTdGF0ZSh2YWx1ZSwgdGhpcy5fc291cmNlKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdmlld3MoKTogU2t5RGF0YVZpZXdDb25maWdbXSB7XG4gICAgcmV0dXJuIHRoaXMuX3ZpZXdzO1xuICB9XG5cbiAgcHVibGljIHNldCB2aWV3cyh2YWx1ZTogU2t5RGF0YVZpZXdDb25maWdbXSkge1xuICAgIHRoaXMuX3ZpZXdzID0gdmFsdWU7XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBvbmx5U2hvd1NlbGVjdGVkOiBib29sZWFuO1xuXG4gIC8vIHRoZSBzb3VyY2UgdG8gcHJvdmlkZSBmb3IgZGF0YSBzdGF0ZSBjaGFuZ2VzXG4gIHByaXZhdGUgX3NvdXJjZSA9ICd0b29sYmFyJztcbiAgcHJpdmF0ZSBfYWN0aXZlVmlldzogU2t5RGF0YVZpZXdDb25maWc7XG4gIHByaXZhdGUgX2RhdGFNYW5hZ2VyQ29uZmlnOiBTa3lEYXRhTWFuYWdlckNvbmZpZztcbiAgcHJpdmF0ZSBfZGF0YVN0YXRlOiBTa3lEYXRhTWFuYWdlclN0YXRlO1xuICBwcml2YXRlIF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3QoKTtcbiAgcHJpdmF0ZSBfdmlld3M6IFNreURhdGFWaWV3Q29uZmlnW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIGRhdGFNYW5hZ2VyU2VydmljZTogU2t5RGF0YU1hbmFnZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBTa3lNb2RhbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb2x1bW5QaWNrZXJTZXJ2aWNlOiBTa3lEYXRhTWFuYWdlckNvbHVtblBpY2tlclNlcnZpY2VcbiAgKSB7IH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UuZ2V0QWN0aXZlVmlld0lkVXBkYXRlcygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKGFjdGl2ZVZpZXdJZCA9PiB7XG4gICAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgICAgIGlmIChhY3RpdmVWaWV3SWQpIHtcbiAgICAgICAgICB0aGlzLmFjdGl2ZVZpZXcgPSB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS5nZXRWaWV3QnlJZChhY3RpdmVWaWV3SWQpO1xuICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UuZ2V0RGF0YVZpZXdzVXBkYXRlcygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKHZpZXdzID0+IHtcbiAgICAgICAgdGhpcy52aWV3cyA9IHZpZXdzO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS5nZXREYXRhU3RhdGVVcGRhdGVzKHRoaXMuX3NvdXJjZSlcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoZGF0YVN0YXRlID0+IHtcbiAgICAgICAgdGhpcy5fZGF0YVN0YXRlID0gZGF0YVN0YXRlO1xuICAgICAgICB0aGlzLm9ubHlTaG93U2VsZWN0ZWQgPSBkYXRhU3RhdGUub25seVNob3dTZWxlY3RlZDtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UuZ2V0RGF0YU1hbmFnZXJDb25maWdVcGRhdGVzKClcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoY29uZmlnID0+IHtcbiAgICAgICAgdGhpcy5kYXRhTWFuYWdlckNvbmZpZyA9IGNvbmZpZztcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBzb3J0U2VsZWN0ZWQoc29ydE9wdGlvbjogU2t5RGF0YU1hbmFnZXJTb3J0T3B0aW9uKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhU3RhdGUuYWN0aXZlU29ydE9wdGlvbiA9IHNvcnRPcHRpb247XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UudXBkYXRlRGF0YVN0YXRlKHRoaXMuZGF0YVN0YXRlLCB0aGlzLl9zb3VyY2UpO1xuICB9XG5cbiAgcHVibGljIG9uVmlld0NoYW5nZSh2aWV3SWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlLnVwZGF0ZUFjdGl2ZVZpZXdJZCh2aWV3SWQpO1xuICB9XG5cbiAgcHVibGljIHNlYXJjaEFwcGxpZWQodGV4dDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhU3RhdGUuc2VhcmNoVGV4dCA9IHRleHQ7XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UudXBkYXRlRGF0YVN0YXRlKHRoaXMuZGF0YVN0YXRlLCB0aGlzLl9zb3VyY2UpO1xuICB9XG5cbiAgcHVibGljIGZpbHRlckJ1dHRvbkNsaWNrZWQoKTogdm9pZCB7XG4gICAgY29uc3QgY29udGV4dCA9IG5ldyBTa3lEYXRhTWFuYWdlckZpbHRlck1vZGFsQ29udGV4dCgpO1xuICAgIGNvbnN0IGZpbHRlck1vZGFsID0gdGhpcy5kYXRhTWFuYWdlckNvbmZpZyAmJiB0aGlzLmRhdGFNYW5hZ2VyQ29uZmlnLmZpbHRlck1vZGFsQ29tcG9uZW50O1xuXG4gICAgY29udGV4dC5maWx0ZXJEYXRhID0gdGhpcy5kYXRhU3RhdGUgJiYgdGhpcy5kYXRhU3RhdGUuZmlsdGVyRGF0YTtcblxuICAgIGNvbnN0IG9wdGlvbnM6IGFueSA9IHtcbiAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogU2t5RGF0YU1hbmFnZXJGaWx0ZXJNb2RhbENvbnRleHQsIHVzZVZhbHVlOiBjb250ZXh0IH1dXG4gICAgfTtcblxuICAgIGlmIChmaWx0ZXJNb2RhbCkge1xuICAgICAgY29uc3QgbW9kYWxJbnN0YW5jZSA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oZmlsdGVyTW9kYWwsIG9wdGlvbnMpO1xuXG4gICAgICBtb2RhbEluc3RhbmNlLmNsb3NlZC5zdWJzY3JpYmUoKHJlc3VsdDogU2t5TW9kYWxDbG9zZUFyZ3MpID0+IHtcbiAgICAgICAgaWYgKHJlc3VsdC5yZWFzb24gPT09ICdzYXZlJykge1xuICAgICAgICAgIHRoaXMuZGF0YVN0YXRlLmZpbHRlckRhdGEgPSByZXN1bHQuZGF0YTtcbiAgICAgICAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS51cGRhdGVEYXRhU3RhdGUodGhpcy5kYXRhU3RhdGUsIHRoaXMuX3NvdXJjZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvcGVuQ29sdW1uUGlja2VyKCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbHVtbk9wdGlvbnMgPSB0aGlzLmFjdGl2ZVZpZXcgJiYgdGhpcy5hY3RpdmVWaWV3LmNvbHVtbk9wdGlvbnM7XG4gICAgY29uc3Qgdmlld1N0YXRlID0gdGhpcy5kYXRhU3RhdGUuZ2V0Vmlld1N0YXRlQnlJZCh0aGlzLmFjdGl2ZVZpZXcuaWQpO1xuICAgIGNvbnN0IGNvbnRleHQgPSBuZXcgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJDb250ZXh0KGNvbHVtbk9wdGlvbnMsIHZpZXdTdGF0ZS5kaXNwbGF5ZWRDb2x1bW5JZHMpO1xuXG4gICAgaWYgKHRoaXMuYWN0aXZlVmlldy5jb2x1bW5QaWNrZXJTb3J0U3RyYXRlZ3kpIHtcbiAgICAgIGNvbnRleHQuY29sdW1uUGlja2VyU29ydFN0cmF0ZWd5ID0gdGhpcy5hY3RpdmVWaWV3LmNvbHVtblBpY2tlclNvcnRTdHJhdGVneTtcbiAgICB9XG5cbiAgICBjb25zdCBvcHRpb25zOiBhbnkgPSB7XG4gICAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyQ29udGV4dCwgdXNlVmFsdWU6IGNvbnRleHQgfV1cbiAgICB9O1xuXG4gICAgY29uc3QgbW9kYWxJbnN0YW5jZSA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oXG4gICAgICB0aGlzLmNvbHVtblBpY2tlclNlcnZpY2UuZ2V0Q29tcG9uZW50VHlwZSgpLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG5cbiAgICBtb2RhbEluc3RhbmNlLmNsb3NlZC5zdWJzY3JpYmUoKHJlc3VsdDogU2t5TW9kYWxDbG9zZUFyZ3MpID0+IHtcbiAgICAgIGlmIChyZXN1bHQucmVhc29uID09PSAnc2F2ZScpIHtcbiAgICAgICAgY29uc3QgZGlzcGxheWVkQ29sdW1uSWRzID0gcmVzdWx0LmRhdGEubWFwKChjb2w6IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyT3B0aW9uKSA9PiBjb2wuaWQpO1xuXG4gICAgICAgIHZpZXdTdGF0ZS5kaXNwbGF5ZWRDb2x1bW5JZHMgPSBkaXNwbGF5ZWRDb2x1bW5JZHM7XG4gICAgICAgIHRoaXMuZGF0YVN0YXRlID0gdGhpcy5kYXRhU3RhdGUuYWRkT3JVcGRhdGVWaWV3KHRoaXMuYWN0aXZlVmlldy5pZCwgdmlld1N0YXRlKTtcbiAgICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdEFsbCgpOiB2b2lkIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLmFjdGl2ZVZpZXcub25TZWxlY3RBbGxDbGljaykge1xuICAgICAgdGhpcy5hY3RpdmVWaWV3Lm9uU2VsZWN0QWxsQ2xpY2soKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgY2xlYXJBbGwoKTogdm9pZCB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAodGhpcy5hY3RpdmVWaWV3Lm9uQ2xlYXJBbGxDbGljaykge1xuICAgICAgdGhpcy5hY3RpdmVWaWV3Lm9uQ2xlYXJBbGxDbGljaygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbk9ubHlTaG93U2VsZWN0ZWQoZXZlbnQ6IFNreUNoZWNrYm94Q2hhbmdlKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhU3RhdGUub25seVNob3dTZWxlY3RlZCA9IGV2ZW50LmNoZWNrZWQ7XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UudXBkYXRlRGF0YVN0YXRlKHRoaXMuZGF0YVN0YXRlLCB0aGlzLl9zb3VyY2UpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwic2t5LWRhdGEtbWFuYWdlci10b29sYmFyXCI+XG48c2t5LXRvb2xiYXI+XG4gIDxza3ktdG9vbGJhci1zZWN0aW9uPlxuXG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic2t5LWRhdGEtbWFuYWdlci10b29sYmFyLXByaW1hcnktaXRlbVwiPjwvbmctY29udGVudD5cblxuICAgIDxza3ktdG9vbGJhci1pdGVtICpuZ0lmPVwiYWN0aXZlVmlldz8uZmlsdGVyQnV0dG9uRW5hYmxlZFwiPlxuICAgICAgPHNreS1maWx0ZXItYnV0dG9uXG4gICAgICAgIFtzaG93QnV0dG9uVGV4dF09XCJhY3RpdmVWaWV3Py5zaG93RmlsdGVyQnV0dG9uVGV4dFwiXG4gICAgICAgIChmaWx0ZXJCdXR0b25DbGljayk9XCJmaWx0ZXJCdXR0b25DbGlja2VkKClcIlxuICAgICAgPlxuICAgICAgPC9za3ktZmlsdGVyLWJ1dHRvbj5cbiAgICA8L3NreS10b29sYmFyLWl0ZW0+XG5cbiAgICA8c2t5LXRvb2xiYXItaXRlbSAqbmdJZj1cImFjdGl2ZVZpZXc/LnNvcnRFbmFibGVkXCI+XG4gICAgICA8c2t5LXNvcnQgW3Nob3dCdXR0b25UZXh0XT1cImFjdGl2ZVZpZXc/LnNob3dTb3J0QnV0dG9uVGV4dFwiPlxuICAgICAgICA8c2t5LXNvcnQtaXRlbVxuICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdGFNYW5hZ2VyQ29uZmlnPy5zb3J0T3B0aW9uc1wiXG4gICAgICAgICAgW2FjdGl2ZV09XCJhY3RpdmVTb3J0T3B0aW9uSWQgJiYgYWN0aXZlU29ydE9wdGlvbklkID09PSBpdGVtLmlkXCJcbiAgICAgICAgICAoaXRlbVNlbGVjdCk9XCJzb3J0U2VsZWN0ZWQoaXRlbSlcIlxuICAgICAgICA+XG4gICAgICAgICAge3tpdGVtLmxhYmVsfX1cbiAgICAgICAgPC9za3ktc29ydC1pdGVtPlxuICAgICAgPC9za3ktc29ydD5cbiAgICA8L3NreS10b29sYmFyLWl0ZW0+XG5cbiAgICA8c2t5LXRvb2xiYXItaXRlbSAqbmdJZj1cImFjdGl2ZVZpZXc/LmNvbHVtblBpY2tlckVuYWJsZWRcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgY2xhc3M9XCJza3ktYnRuIHNreS1idG4tZGVmYXVsdCBza3ktY29sLXBpY2tlci1idG5cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInc2t5dXhfZGF0YV9tYW5hZ2VyX2NvbHVtbnNfYnV0dG9uX3RpdGxlJyB8IHNreUxpYlJlc291cmNlc1wiXG4gICAgICAgIFthdHRyLnRpdGxlXT1cIidza3l1eF9kYXRhX21hbmFnZXJfY29sdW1uc19idXR0b25fdGl0bGUnIHwgc2t5TGliUmVzb3VyY2VzXCJcbiAgICAgICAgKGNsaWNrKT1cIm9wZW5Db2x1bW5QaWNrZXIoKVwiXG4gICAgICA+XG4gICAgICAgIDxza3ktaWNvblxuICAgICAgICAgIGljb249XCJjb2x1bW5zXCJcbiAgICAgICAgPjwvc2t5LWljb24+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgY2xhc3M9XCJza3ktY29sdW1uLXNlbGVjdG9yLWFjdGlvbi1idG4tdGV4dFwiXG4gICAgICAgID5cbiAgICAgICAgICB7eydza3l1eF9kYXRhX21hbmFnZXJfY29sdW1uc19idXR0b25fdGl0bGUnIHwgc2t5TGliUmVzb3VyY2VzfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9za3ktdG9vbGJhci1pdGVtPlxuXG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic2t5LWRhdGEtbWFuYWdlci10b29sYmFyLWxlZnQtaXRlbVwiPjwvbmctY29udGVudD5cblxuICAgIDxza3ktdG9vbGJhci1pdGVtICpuZ0lmPVwiYWN0aXZlVmlldz8uc2VhcmNoRW5hYmxlZFwiPlxuICAgICAgPHNreS1zZWFyY2hcbiAgICAgICAgW2V4cGFuZE1vZGVdPVwiYWN0aXZlVmlldz8uc2VhcmNoRXhwYW5kTW9kZVwiXG4gICAgICAgIFtwbGFjZWhvbGRlclRleHRdPVwiYWN0aXZlVmlldz8uc2VhcmNoUGxhY2Vob2xkZXJUZXh0XCJcbiAgICAgICAgW3NlYXJjaFRleHRdPVwiZGF0YVN0YXRlPy5zZWFyY2hUZXh0XCJcbiAgICAgICAgKHNlYXJjaEFwcGx5KT1cInNlYXJjaEFwcGxpZWQoJGV2ZW50KVwiXG4gICAgICA+XG4gICAgICA8L3NreS1zZWFyY2g+XG4gICAgPC9za3ktdG9vbGJhci1pdGVtPlxuXG4gICAgPHNreS10b29sYmFyLXZpZXctYWN0aW9ucz5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNreS1kYXRhLW1hbmFnZXItdG9vbGJhci1yaWdodC1pdGVtXCI+PC9uZy1jb250ZW50PlxuICAgICAgPHNreS1yYWRpby1ncm91cCAqbmdJZj1cImFjdGl2ZVZpZXcgJiYgdmlld3MgJiYgdmlld3MubGVuZ3RoID4gMVwiXG4gICAgICAgIFthcmlhTGFiZWxdPVwiJ2RhdGEgdmlldyBzd2l0Y2hlcidcIlxuICAgICAgICBjbGFzcz1cInNreS1zd2l0Y2gtaWNvbi1ncm91cFwiXG4gICAgICA+XG4gICAgICAgIDxza3ktcmFkaW8gKm5nRm9yPVwibGV0IHZpZXcgb2Ygdmlld3NcIlxuICAgICAgICAgIFthdHRyLm5hbWVdPVwidmlldy5uYW1lXCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInZpZXcubmFtZVwiXG4gICAgICAgICAgW2ljb25dPVwidmlldy5pY29uXCJcbiAgICAgICAgICBbdmFsdWVdPVwidmlldy5pZFwiXG4gICAgICAgICAgW2xhYmVsXT1cInZpZXcubmFtZVwiXG4gICAgICAgICAgWyhuZ01vZGVsKV09XCJhY3RpdmVWaWV3LmlkXCJcbiAgICAgICAgICAoY2hhbmdlKT1cIm9uVmlld0NoYW5nZSh2aWV3LmlkKVwiXG4gICAgICAgID5cbiAgICAgICAgPC9za3ktcmFkaW8+XG4gICAgICA8L3NreS1yYWRpby1ncm91cD5cbiAgICA8L3NreS10b29sYmFyLXZpZXctYWN0aW9ucz5cbiAgPC9za3ktdG9vbGJhci1zZWN0aW9uPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXItc2VjdGlvblwiPjwvbmctY29udGVudD5cbjwvc2t5LXRvb2xiYXJcbj5cblxuPHNreS10b29sYmFyICpuZ0lmPVwiYWN0aXZlVmlldz8ubXVsdGlzZWxlY3RUb29sYmFyRW5hYmxlZFwiXG4gIGNsYXNzPVwic2t5LWRhdGEtbWFuYWdlci1tdWx0aXNlbGVjdC10b29sYmFyXCJcbj5cbiAgPHNreS10b29sYmFyLXNlY3Rpb24+XG4gICAgPHNreS10b29sYmFyLWl0ZW0+XG4gICAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1saW5rIHNreS1kYXRhLW1hbmFnZXItc2VsZWN0LWFsbC1idG5cIlxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAoY2xpY2spPVwic2VsZWN0QWxsKClcIlxuICAgICAgPlxuICAgICAgICB7eydza3l1eF9kYXRhX21hbmFnZXJfc2VsZWN0X2FsbF9idXR0b25fdGl0bGUnIHwgc2t5TGliUmVzb3VyY2VzfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cbiAgICA8c2t5LXRvb2xiYXItaXRlbT5cbiAgICAgIDxidXR0b25cbiAgICAgICAgY2xhc3M9XCJza3ktYnRuIHNreS1idG4tbGluayBza3ktZGF0YS1tYW5hZ2VyLWNsZWFyLWFsbC1idG5cIlxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cImNsZWFyQWxsKClcIlxuICAgICAgPlxuICAgICAgICB7eydza3l1eF9kYXRhX21hbmFnZXJfY2xlYXJfYWxsX2J1dHRvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXN9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9za3ktdG9vbGJhci1pdGVtPlxuICAgIDxza3ktdG9vbGJhci12aWV3LWFjdGlvbnM+XG4gICAgICA8c2t5LWNoZWNrYm94XG4gICAgICAgIFtjaGVja2VkXT1cIm9ubHlTaG93U2VsZWN0ZWRcIlxuICAgICAgICAoY2hhbmdlKT1cIm9uT25seVNob3dTZWxlY3RlZCgkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgICAgPHNreS1jaGVja2JveC1sYWJlbD5cbiAgICAgICAgICB7eydza3l1eF9kYXRhX21hbmFnZXJfc2hvd19zZWxlY3RlZF9vcHRpb25fdGl0bGUnIHwgc2t5TGliUmVzb3VyY2VzfX1cbiAgICAgICAgPC9za3ktY2hlY2tib3gtbGFiZWw+XG4gICAgICA8L3NreS1jaGVja2JveD5cbiAgICA8L3NreS10b29sYmFyLXZpZXctYWN0aW9ucz5cbiAgPC9za3ktdG9vbGJhci1zZWN0aW9uPlxuPC9za3ktdG9vbGJhcj5cbjwvZGl2PlxuIl19
@@ -67,9 +67,9 @@ export class SkyDataManagerComponent {
67
67
  this.ngUnsubscribe.complete();
68
68
  }
69
69
  }
70
- SkyDataManagerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SkyDataManagerService }], target: i0.ɵɵFactoryTarget.Component });
71
- SkyDataManagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.5", type: SkyDataManagerComponent, selector: "sky-data-manager", ngImport: i0, template: "<div\n *ngIf=\"isInitialized\"\n class=\"sky-data-manager\"\n [skyBackToTop]=\"backToTopOptions\"\n [skyBackToTopMessageStream]=\"backToTopController\"\n [skyViewkeeper]=\"currentViewkeeperClasses\"\n #dataManager\n>\n <ng-content></ng-content>\n</div>\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.λ7, selector: "[skyBackToTop]", inputs: ["skyBackToTop", "skyBackToTopMessageStream"] }, { type: i4.λ3, selector: "[skyViewkeeper]", inputs: ["skyViewkeeper"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
72
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.5", ngImport: i0, type: SkyDataManagerComponent, decorators: [{
70
+ SkyDataManagerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SkyDataManagerService }], target: i0.ɵɵFactoryTarget.Component });
71
+ SkyDataManagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.8", type: SkyDataManagerComponent, selector: "sky-data-manager", ngImport: i0, template: "<div\n *ngIf=\"isInitialized\"\n class=\"sky-data-manager\"\n [skyBackToTop]=\"backToTopOptions\"\n [skyBackToTopMessageStream]=\"backToTopController\"\n [skyViewkeeper]=\"currentViewkeeperClasses\"\n #dataManager\n>\n <ng-content></ng-content>\n</div>\n", directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.λ7, selector: "[skyBackToTop]", inputs: ["skyBackToTop", "skyBackToTopMessageStream"] }, { type: i4.λ3, selector: "[skyViewkeeper]", inputs: ["skyViewkeeper"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
72
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.8", ngImport: i0, type: SkyDataManagerComponent, decorators: [{
73
73
  type: Component,
74
74
  args: [{
75
75
  selector: 'sky-data-manager',