@firestitch/list 18.0.26 → 18.0.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/app/classes/columns-controller.d.ts +3 -3
  2. package/app/classes/external-params-controller.d.ts +2 -3
  3. package/app/classes/list-controller.d.ts +2 -3
  4. package/app/classes/persistance-controller.d.ts +20 -5
  5. package/app/components/customize-cols/customize-cols.component.d.ts +5 -3
  6. package/app/components/list/list.component.d.ts +8 -11
  7. package/app/interfaces/listconfig.interface.d.ts +10 -2
  8. package/esm2022/app/classes/columns-controller.mjs +14 -14
  9. package/esm2022/app/classes/external-params-controller.mjs +13 -13
  10. package/esm2022/app/classes/index.mjs +1 -1
  11. package/esm2022/app/classes/list-controller.mjs +14 -11
  12. package/esm2022/app/classes/persistance-controller.mjs +80 -14
  13. package/esm2022/app/components/body/row/cell/cell.component.mjs +3 -3
  14. package/esm2022/app/components/customize-cols/customize-cols.component.mjs +20 -17
  15. package/esm2022/app/components/footer/footer-row/footer-cell/footer-cell.component.mjs +3 -3
  16. package/esm2022/app/components/head/head-cell/head-cell.component.mjs +1 -1
  17. package/esm2022/app/components/list/list.component.mjs +32 -43
  18. package/esm2022/app/components/loader/loader.component.mjs +3 -3
  19. package/esm2022/app/components/manage-saved-filters/manage-saved-filters.component.mjs +3 -3
  20. package/esm2022/app/components/saved-filters/saved-filters.component.mjs +3 -3
  21. package/esm2022/app/directives/cell/cell.directive.mjs +1 -1
  22. package/esm2022/app/directives/empty-state/empty-state.directive.mjs +1 -1
  23. package/esm2022/app/directives/footer/footer.directive.mjs +1 -1
  24. package/esm2022/app/directives/group-expand-trigger/group-expand-trigger.directive.mjs +1 -1
  25. package/esm2022/app/directives/header/header.directive.mjs +1 -1
  26. package/esm2022/app/directives/heading/heading.directive.mjs +1 -1
  27. package/esm2022/app/directives/heading-container/heading-container.directive.mjs +1 -1
  28. package/esm2022/app/directives/index.mjs +1 -1
  29. package/esm2022/app/directives/subheading/subheading.directive.mjs +1 -1
  30. package/esm2022/app/enums/page-change-type.enum.mjs +1 -1
  31. package/esm2022/app/enums/pagination-strategy.enum.mjs +1 -1
  32. package/esm2022/app/enums/state.enum.mjs +1 -1
  33. package/esm2022/app/interfaces/cellconfig.interface.mjs +1 -1
  34. package/esm2022/app/interfaces/draggable-list.interface.mjs +1 -1
  35. package/esm2022/app/interfaces/external-params.interface.mjs +1 -1
  36. package/esm2022/app/interfaces/listconfig.interface.mjs +1 -1
  37. package/esm2022/app/interfaces/sorting-change-event.interface.mjs +1 -1
  38. package/esm2022/app/models/row/base-row.mjs +1 -1
  39. package/esm2022/app/models/row/child-row.mjs +1 -1
  40. package/esm2022/app/models/row/simple-row.mjs +1 -1
  41. package/fesm2022/firestitch-list.mjs +168 -105
  42. package/fesm2022/firestitch-list.mjs.map +1 -1
  43. package/package.json +1 -1
@@ -2,14 +2,15 @@ import { Observable } from 'rxjs';
2
2
  import { FsListColumn, FsListColumnChangeFn, FsListColumnConfig } from '../interfaces';
3
3
  import { ColumnsColumn } from '../models';
4
4
  import { Column } from '../models/column.model';
5
+ import { PersistanceController } from './persistance-controller';
5
6
  export declare class ColumnsController {
7
+ private _persistance;
6
8
  private _visibleColumns$;
7
9
  private _visibleColumnsShared$;
8
10
  private _theadClass;
9
11
  private _loadFn;
10
12
  private _changeFn;
11
13
  private _isConfigured;
12
- private _loadFnConfigured;
13
14
  private _changeFnConfigured;
14
15
  private _columnsFetched;
15
16
  private _hasHeader;
@@ -18,7 +19,7 @@ export declare class ColumnsController {
18
19
  private _defaultConfigs;
19
20
  private _columnsUpdated$;
20
21
  private _destroy$;
21
- constructor();
22
+ constructor(_persistance: PersistanceController);
22
23
  get columns(): Column[];
23
24
  get visibleColumns(): Column[];
24
25
  get visibleColumns$(): Observable<Column[]>;
@@ -28,7 +29,6 @@ export declare class ColumnsController {
28
29
  get hasFooter(): boolean;
29
30
  get theadClass(): string;
30
31
  get configured(): boolean;
31
- get loadFnConfigured(): boolean;
32
32
  get changeFnConfigured(): boolean;
33
33
  get changeFn(): FsListColumnChangeFn;
34
34
  get visibleColumnsNames(): string[];
@@ -1,10 +1,9 @@
1
- import { ActivatedRoute, Router } from '@angular/router';
1
+ import { ActivatedRoute } from '@angular/router';
2
2
  import { PaginationController } from '../classes/pagination-controller';
3
3
  import { SortingController } from '../classes/sorting-controller';
4
4
  import { FsListSortConfig } from '../interfaces';
5
5
  import { PersistanceController } from './persistance-controller';
6
6
  export declare class ExternalParamsController {
7
- private _router;
8
7
  private _route;
9
8
  private _persistance;
10
9
  private _paginator;
@@ -12,7 +11,7 @@ export declare class ExternalParamsController {
12
11
  private _queryParamsEnabled;
13
12
  private _externalParams;
14
13
  private _destroy$;
15
- constructor(_router: Router, _route: ActivatedRoute, _persistance: PersistanceController, _paginator: PaginationController, _sorting: SortingController, _queryParamsEnabled: boolean);
14
+ constructor(_route: ActivatedRoute, _persistance: PersistanceController, _paginator: PaginationController, _sorting: SortingController, _queryParamsEnabled: boolean);
16
15
  get externalSorting(): FsListSortConfig;
17
16
  private get _enabled();
18
17
  private get _page();
@@ -1,5 +1,5 @@
1
1
  import { ElementRef, TemplateRef } from '@angular/core';
2
- import { ActivatedRoute, Router } from '@angular/router';
2
+ import { ActivatedRoute } from '@angular/router';
3
3
  import { ChangeFn, FilterConfig, FsFilterAutoReload, IFilterSavedFiltersConfig } from '@firestitch/filter';
4
4
  import { SelectionDialog } from '@firestitch/selection';
5
5
  import { Observable } from 'rxjs';
@@ -16,7 +16,6 @@ export declare class List {
16
16
  private _el;
17
17
  private _config;
18
18
  private _selectionDialog;
19
- private _router;
20
19
  private _route;
21
20
  private _persistance;
22
21
  private _inDialog;
@@ -74,7 +73,7 @@ export declare class List {
74
73
  private readonly _groupCellConfig;
75
74
  private readonly _cellConfig;
76
75
  private readonly _footerConfig;
77
- constructor(_el: ElementRef, _config: FsListConfig, _selectionDialog: SelectionDialog, _router: Router, _route: ActivatedRoute, _persistance: PersistanceController, _inDialog: boolean);
76
+ constructor(_el: ElementRef, _config: FsListConfig, _selectionDialog: SelectionDialog, _route: ActivatedRoute, _persistance: PersistanceController, _inDialog: boolean);
78
77
  get loading$(): Observable<boolean>;
79
78
  filtersReady(): void;
80
79
  get filtersReady$(): Observable<void>;
@@ -1,10 +1,25 @@
1
- import { ActivatedRoute } from '@angular/router';
2
- import { FsPersistanceStore, FsStore } from '@firestitch/store';
3
1
  import { FsListPersitance } from '../interfaces';
4
2
  import * as i0 from "@angular/core";
5
- export declare class PersistanceController extends FsPersistanceStore<FsListPersitance> {
6
- protected STORE_KEY: string;
7
- constructor(_store: FsStore, _route: ActivatedRoute);
3
+ export declare class PersistanceController {
4
+ filtersEnabled: boolean;
5
+ columnsEnabled: boolean;
6
+ pagingEnabled: boolean;
7
+ sortingEnabled: boolean;
8
+ private _store;
9
+ private _name;
10
+ private _data;
11
+ private _location;
12
+ init(listConfig: FsListPersitance, inDialog: boolean): void;
13
+ setSorting(value: any): void;
14
+ setPaging(value: any): void;
15
+ setColumns(value: any): void;
16
+ getColumns(): any;
17
+ getSorting(): any;
18
+ getPaging(): any;
19
+ private _set;
20
+ private _get;
21
+ private _initConfig;
22
+ private _getDefaultConfig;
8
23
  static ɵfac: i0.ɵɵFactoryDeclaration<PersistanceController, never>;
9
24
  static ɵprov: i0.ɵɵInjectableDeclaration<PersistanceController>;
10
25
  }
@@ -1,14 +1,16 @@
1
1
  import { OnDestroy } from '@angular/core';
2
- import { MatDialogRef } from '@angular/material/dialog';
3
2
  import { ColumnsColumn } from '../../models';
4
3
  import * as i0 from "@angular/core";
5
4
  export declare class CustomizeColsDialogComponent implements OnDestroy {
6
- private _dialog;
7
5
  columns: ColumnsColumn[];
8
6
  saveDisabled: boolean;
7
+ columnsEnabled: boolean;
9
8
  private _changeFn;
10
9
  private _destroy$;
11
- constructor(data: any, _dialog: MatDialogRef<any>);
10
+ private _persistance;
11
+ private _dialog;
12
+ private _data;
13
+ constructor();
12
14
  ngOnDestroy(): void;
13
15
  visibilityChange(event: any, column: any): void;
14
16
  save(): void;
@@ -1,8 +1,6 @@
1
- import { Location } from '@angular/common';
2
1
  import { AfterContentInit, ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, OnInit, QueryList, TemplateRef } from '@angular/core';
3
- import { ActivatedRoute, Router } from '@angular/router';
4
- import { MatDialog, MatDialogRef } from '@angular/material/dialog';
5
- import { DrawerRef } from '@firestitch/drawer';
2
+ import { ActivatedRoute } from '@angular/router';
3
+ import { MatDialog } from '@angular/material/dialog';
6
4
  import { FilterComponent } from '@firestitch/filter';
7
5
  import { SelectionDialog } from '@firestitch/selection';
8
6
  import { Observable } from 'rxjs';
@@ -18,17 +16,13 @@ import * as i0 from "@angular/core";
18
16
  export declare class FsListComponent implements OnInit, OnDestroy, AfterContentInit {
19
17
  reorderController: ReorderController;
20
18
  private _config;
21
- private _dialogRef;
22
- private _drawerRef;
23
19
  private _el;
24
20
  private _selectionDialog;
25
21
  private _dialog;
26
22
  private _cdRef;
27
23
  private _groupExpandNotifier;
28
- private _router;
29
24
  private _route;
30
25
  private _persistance;
31
- private _location;
32
26
  classFsList: boolean;
33
27
  rowHoverHighlight: boolean;
34
28
  set config(config: FsListConfig);
@@ -45,8 +39,8 @@ export declare class FsListComponent implements OnInit, OnDestroy, AfterContentI
45
39
  private _listColumnDirectives;
46
40
  private _filterRef;
47
41
  private _filterParamsReady;
48
- private _inDialog;
49
42
  private _destroy;
43
+ private _injector;
50
44
  set filterReference(component: any);
51
45
  /**
52
46
  * Set columns to config
@@ -54,7 +48,9 @@ export declare class FsListComponent implements OnInit, OnDestroy, AfterContentI
54
48
  */
55
49
  set columnTemplates(listColumnDirectives: QueryList<FsListColumnDirective>);
56
50
  private set _emptyStateTemplate(value);
57
- constructor(reorderController: ReorderController, _config: FsListConfig, _dialogRef: MatDialogRef<any>, _drawerRef: DrawerRef<any>, _el: ElementRef, _selectionDialog: SelectionDialog, _dialog: MatDialog, _cdRef: ChangeDetectorRef, _groupExpandNotifier: GroupExpandNotifierService, _router: Router, _route: ActivatedRoute, _persistance: PersistanceController, _location: Location);
51
+ private _dialogRef;
52
+ private _drawerRef;
53
+ constructor(reorderController: ReorderController, _config: FsListConfig, _el: ElementRef, _selectionDialog: SelectionDialog, _dialog: MatDialog, _cdRef: ChangeDetectorRef, _groupExpandNotifier: GroupExpandNotifierService, _route: ActivatedRoute, _persistance: PersistanceController);
58
54
  /**
59
55
  * Return reference for filter
60
56
  */
@@ -101,6 +97,7 @@ export declare class FsListComponent implements OnInit, OnDestroy, AfterContentI
101
97
  show: boolean;
102
98
  }[]): void;
103
99
  private _emitFiltersReadyEvent;
100
+ get inDialog(): boolean;
104
101
  /**
105
102
  * Initialize config for list
106
103
  *
@@ -122,6 +119,6 @@ export declare class FsListComponent implements OnInit, OnDestroy, AfterContentI
122
119
  private _waitFirstLoad;
123
120
  private _configMergeCustomizer;
124
121
  private _restorePersistance;
125
- static ɵfac: i0.ɵɵFactoryDeclaration<FsListComponent, [null, { optional: true; }, { optional: true; }, { optional: true; }, null, null, null, null, null, null, null, null, null]>;
122
+ static ɵfac: i0.ɵɵFactoryDeclaration<FsListComponent, [null, { optional: true; }, null, null, null, null, null, null, null]>;
126
123
  static ɵcmp: i0.ɵɵComponentDeclaration<FsListComponent, "fs-list", never, { "config": { "alias": "config"; "required": false; }; "loaderLines": { "alias": "loaderLines"; "required": false; }; }, { "filtersReady": "filtersReady"; }, ["headingTemplate", "headingContainerTemplate", "subheadingTemplate", "_emptyStateTemplate", "columnTemplates"], ["[fs-list-content]"], false, never>;
127
124
  }
@@ -1,5 +1,5 @@
1
1
  import { FsFile } from '@firestitch/file';
2
- import { ChangeFn, FsFilterAction, FsFilterAutoReload, FsFilterPersistance, IFilterConfigDateItem, IFilterConfigItem, IFilterSavedFiltersConfig } from '@firestitch/filter';
2
+ import { ChangeFn, FsFilterAction, FsFilterAutoReload, IFilterConfigDateItem, IFilterConfigItem, IFilterSavedFiltersConfig } from '@firestitch/filter';
3
3
  import { FsSelectionActionSelected, FsSelectionDialogConfigAction, SelectionRef } from '@firestitch/selection';
4
4
  import { Observable } from 'rxjs';
5
5
  import { ReorderPosition } from '../classes/reorder-controller';
@@ -228,7 +228,15 @@ export interface FsListEmptyStateConfig {
228
228
  export interface FsListFetchOptions {
229
229
  state: FsListState;
230
230
  }
231
- export type FsListPersitance = FsFilterPersistance;
231
+ export interface FsListPersistanceConfig {
232
+ name?: string;
233
+ timeout?: number;
234
+ persistFilter?: boolean;
235
+ persistPaging?: boolean;
236
+ persistSorting?: boolean;
237
+ persistColumn?: boolean;
238
+ }
239
+ export type FsListPersitance = boolean | FsListPersistanceConfig;
232
240
  export type FsListStateValidationFn = (filters: any, rows: FsListAbstractRow[]) => boolean;
233
241
  export type FsListFetchFn = (query: Record<string, any>, options: FsListFetchOptions) => Observable<{
234
242
  data: unknown[];
@@ -1,18 +1,15 @@
1
- import { BehaviorSubject, merge, Subject } from 'rxjs';
1
+ import { BehaviorSubject, merge, of, Subject } from 'rxjs';
2
2
  import { skip, takeUntil, tap } from 'rxjs/operators';
3
3
  import { isNumber } from 'lodash-es';
4
4
  import { Column } from '../models/column.model';
5
5
  export class ColumnsController {
6
+ _persistance;
6
7
  _visibleColumns$ = new BehaviorSubject([]);
7
8
  _visibleColumnsShared$ = this._visibleColumns$.pipe();
8
9
  _theadClass = '';
9
10
  _loadFn;
10
11
  _changeFn;
11
- // private _customizeFieldTitleFn: FsListColumnTitleFn;
12
- // private _customizeFieldDisabledFn: FsListColumnDisabledFn;
13
- //private _columnTooltipFn: FsListColumnTooltipFn;
14
12
  _isConfigured = false;
15
- _loadFnConfigured = false;
16
13
  _changeFnConfigured = false;
17
14
  _columnsFetched = false;
18
15
  _hasHeader = false;
@@ -21,7 +18,10 @@ export class ColumnsController {
21
18
  _defaultConfigs;
22
19
  _columnsUpdated$ = new Subject();
23
20
  _destroy$ = new Subject();
24
- constructor() { }
21
+ constructor(_persistance) {
22
+ this._persistance = _persistance;
23
+ this._loadFn = () => of([]);
24
+ }
25
25
  get columns() {
26
26
  return this._columns.slice();
27
27
  }
@@ -58,9 +58,6 @@ export class ColumnsController {
58
58
  get configured() {
59
59
  return this._isConfigured;
60
60
  }
61
- get loadFnConfigured() {
62
- return this._loadFnConfigured;
63
- }
64
61
  get changeFnConfigured() {
65
62
  return this._changeFnConfigured;
66
63
  }
@@ -83,7 +80,6 @@ export class ColumnsController {
83
80
  if (config) {
84
81
  if (config.load) {
85
82
  this._loadFn = config.load;
86
- this._loadFnConfigured = true;
87
83
  }
88
84
  if (config.change) {
89
85
  this._changeFn = config.change;
@@ -122,10 +118,14 @@ export class ColumnsController {
122
118
  */
123
119
  loadRemoteColumnConfigs() {
124
120
  return this._loadFn()
125
- .pipe(tap((columnConfigs) => {
121
+ .pipe(tap((column) => {
126
122
  this._columnsFetched = true;
127
- this.updateVisibilityForCols(columnConfigs);
128
- this.updateCustomizableForCols(columnConfigs);
123
+ this.updateVisibilityForCols(column);
124
+ this.updateCustomizableForCols(column);
125
+ }), tap(() => {
126
+ if (this._persistance.columnsEnabled) {
127
+ this.updateVisibilityForCols(this._persistance.getColumns());
128
+ }
129
129
  }), takeUntil(this._destroy$));
130
130
  }
131
131
  /**
@@ -195,4 +195,4 @@ export class ColumnsController {
195
195
  });
196
196
  }
197
197
  }
198
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1ucy1jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9jbGFzc2VzL2NvbHVtbnMtY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQVNyQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHaEQsTUFBTSxPQUFPLGlCQUFpQjtJQUVwQixnQkFBZ0IsR0FBRyxJQUFJLGVBQWUsQ0FBVyxFQUFFLENBQUMsQ0FBQztJQUNyRCxzQkFBc0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdEQsV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUNqQixPQUFPLENBQXFCO0lBQzVCLFNBQVMsQ0FBdUI7SUFDeEMsdURBQXVEO0lBQ3ZELDZEQUE2RDtJQUM3RCxrREFBa0Q7SUFFMUMsYUFBYSxHQUFHLEtBQUssQ0FBQztJQUN0QixpQkFBaUIsR0FBRyxLQUFLLENBQUM7SUFDMUIsbUJBQW1CLEdBQUcsS0FBSyxDQUFDO0lBQzVCLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDeEIsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUNuQixVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQ25CLFFBQVEsR0FBYSxFQUFFLENBQUM7SUFDeEIsZUFBZSxDQUFDO0lBRWhCLGdCQUFnQixHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFDdkMsU0FBUyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFFeEMsZ0JBQWUsQ0FBQztJQUVoQixJQUFXLE9BQU87UUFDaEIsT0FBTyxJ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QUUsS0FBSyxFQUFFLEVBQUU7WUFFbkMsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUN0QyxNQUFNLE1BQU0sR0FBRyxLQUFLLEdBQUcsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDO2dCQUU1QyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7b0JBQ3RCLE9BQU87Z0JBQ1QsQ0FBQztnQkFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEtBQUssQ0FBQztnQkFFekMsS0FBSyxJQUFJLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztvQkFDeEMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7d0JBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDO29CQUN0QyxDQUFDO2dCQUNILENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBRUYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIG1lcmdlLCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBza2lwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgaXNOdW1iZXIgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5pbXBvcnQge1xuICBGc0xpc3RDb2x1bW4sXG4gIEZzTGlzdENvbHVtbkNoYW5nZUZuLFxuICBGc0xpc3RDb2x1bW5Db25maWcsXG4gIEZzTGlzdENvbHVtbkxvYWRGbixcbn0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBDb2x1bW5zQ29sdW1uIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7IENvbHVtbiB9IGZyb20gJy4uL21vZGVscy9jb2x1bW4ubW9kZWwnO1xuXG5cbmV4cG9ydCBjbGFzcyBDb2x1bW5zQ29udHJvbGxlciB7XG5cbiAgcHJpdmF0ZSBfdmlzaWJsZUNvbHVtbnMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDb2x1bW5bXT4oW10pO1xuICBwcml2YXRlIF92aXNpYmxlQ29sdW1uc1NoYXJlZCQgPSB0aGlzLl92aXNpYmxlQ29sdW1ucyQucGlwZSgpO1xuICBwcml2YXRlIF90aGVhZENsYXNzID0gJyc7XG4gIHByaXZhdGUgX2xvYWRGbjogRnNMaXN0Q29sdW1uTG9hZEZuO1xuICBwcml2YXRlIF9jaGFuZ2VGbjogRnNMaXN0Q29sdW1uQ2hhbmdlRm47XG4gIC8vIHByaXZhdGUgX2N1c3RvbWl6ZUZpZWxkVGl0bGVGbjogRnNMaXN0Q29sdW1uVGl0bGVGbjtcbiAgLy8gcHJpdmF0ZSBfY3VzdG9taXplRmllbGREaXNhYmxlZEZuOiBGc0xpc3RDb2x1bW5EaXNhYmxlZEZuO1xuICAvL3ByaXZhdGUgX2NvbHVtblRvb2x0aXBGbjogRnNMaXN0Q29sdW1uVG9vbHRpcEZuO1xuXG4gIHByaXZhdGUgX2lzQ29uZmlndXJlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9sb2FkRm5Db25maWd1cmVkID0gZmFsc2U7XG4gIHByaXZhdGUgX2NoYW5nZUZuQ29uZmlndXJlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9jb2x1bW5zRmV0Y2hlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9oYXNIZWFkZXIgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfaGFzRm9vdGVyID0gZmFsc2U7XG4gIHByaXZhdGUgX2NvbHVtbnM6IENvbHVtbltdID0gW107XG4gIHByaXZhdGUgX2RlZmF1bHRDb25maWdzO1xuXG4gIHByaXZhdGUgX2NvbHVtbnNVcGRhdGVkJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgcHVibGljIGdldCBjb2x1bW5zKCkge1xuICAgIHJldHVybiB0aGlzLl9jb2x1bW5zLnNsaWNlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZpc2libGVDb2x1bW5zKCk6IENvbHVtbltdIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZUNvbHVtbnMkLmdldFZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZpc2libGVDb2x1bW5zJCgpOiBPYnNlcnZhYmxlPENvbHVtbltdPiB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGVDb2x1bW5zU2hhcmVkJDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29sdW1uc0ZvckRpYWxvZygpOiBDb2x1bW5zQ29sdW1uW10ge1xuICAgIHJldHVybiB0aGlzLl9jb2x1bW5zXG4gICAgICAuZmlsdGVyKChjb2x1bW4pID0+IGNvbHVtbi5jdXN0b21pemFibGUgJiYgISFjb2x1bW4ubmFtZSlcbiAgICAgIC5tYXAoKGNvbHVtbikgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHRlbXBsYXRlOiBjb2x1bW4uaGVhZGVyVGVtcGxhdGUsXG4gICAgICAgICAgbmFtZTogY29sdW1uLm5hbWUsXG4gICAgICAgICAgc2hvdzogY29sdW1uLnZpc2libGUsXG4gICAgICAgICAgdGl0bGU6IGNvbHVtbi50aXRsZSxcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldCBjb2x1bW5zRmV0Y2hlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fY29sdW1uc0ZldGNoZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhhc0hlYWRlcigpIHtcbiAgICByZXR1cm4gdGhpcy5faGFzSGVhZGVyO1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNGb290ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2hhc0Zvb3RlcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdGhlYWRDbGFzcygpIHtcbiAgICByZXR1cm4gdGhpcy5fdGhlYWRDbGFzcztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29uZmlndXJlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5faXNDb25maWd1cmVkO1xuICB9XG5cbiAgcHVibGljIGdldCBsb2FkRm5Db25maWd1cmVkKCkge1xuICAgIHJldHVybiB0aGlzLl9sb2FkRm5Db25maWd1cmVkO1xuICB9XG5cbiAgcHVibGljIGdldCBjaGFuZ2VGbkNvbmZpZ3VyZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NoYW5nZUZuQ29uZmlndXJlZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2hhbmdlRm4oKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NoYW5nZUZuO1xuICB9XG5cbiAgcHVibGljIGdldCB2aXNpYmxlQ29sdW1uc05hbWVzKCkge1xuICAgIHJldHVybiB0aGlzLnZpc2libGVDb2x1bW5zXG4gICAgICAubWFwKChjb2x1bW4pID0+IGNvbHVtbi5uYW1lKVxuICAgICAgLmZpbHRlcigobmFtZSkgPT4gISFuYW1lKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXREZWZhdWx0cyhkZWZhdWx0cykge1xuICAgIHRoaXMuX2RlZmF1bHRDb25maWdzID0gZGVmYXVsdHM7XG4gIH1cblxuICAvKipcbiAgICogU2V0IGRhdGEgZnJvbSBsaXN0IGNvbmZpZ1xuICAgKiBAcGFyYW0gY29uZmlnXG4gICAqL1xuICBwdWJsaWMgaW5pdENvbmZpZyhjb25maWc6IEZzTGlzdENvbHVtbkNvbmZpZykge1xuICAgIGlmIChjb25maWcpIHtcbiAgICAgIGlmIChjb25maWcubG9hZCkge1xuICAgICAgICB0aGlzLl9sb2FkRm4gPSBjb25maWcubG9hZDtcbiAgICAgICAgdGhpcy5fbG9hZEZuQ29uZmlndXJlZCA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIGlmIChjb25maWcuY2hhbmdlKSB7XG4gICAgICAgIHRoaXMuX2NoYW5nZUZuID0gY29uZmlnLmNoYW5nZTtcbiAgICAgICAgdGhpcy5fY2hhbmdlRm5Db25maWd1cmVkID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5faXNDb25maWd1cmVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQmFzZSBpbml0aWFsaXphdGlvbiBmb3IgY29sdW1uc1xuICAgKiBAcGFyYW0gdGVtcGxhdGVzXG4gICAqL1xuICBwdWJsaWMgaW5pdGlhbGl6ZUNvbHVtbnModGVtcGxhdGVzKSB7XG4gICAgdGhpcy5fY29sdW1ucyA9IFtdO1xuXG4gICAgdGVtcGxhdGVzLmZvckVhY2goKGNvbHVtbikgPT4ge1xuICAgICAgY29uc3QgY29sID0gbmV3IENvbHVtbihjb2x1bW4sIHRoaXMuX2RlZmF1bHRDb25maWdzKTtcblxuICAgICAgaWYgKGNvbC5oZWFkZXJUZW1wbGF0ZSB8fCBjb2wudGl0bGUpIHtcbiAgICAgICAgdGhpcy5faGFzSGVhZGVyID0gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIGlmIChjb2wuZm9vdGVyVGVtcGxhdGUpIHtcbiAgICAgICAgdGhpcy5faGFzRm9vdGVyID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5fY29sdW1ucy5wdXNoKGNvbCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLl90aGVhZENsYXNzID0gdGhpcy5oYXNIZWFkZXIgPyAnaGFzLWhlYWRlcicgOiAnJztcblxuICAgIHRoaXMuX3VwZGF0ZUNvbHNwYW5zKCdoZWFkZXJDb25maWdzJywgJ2hlYWRlckNvbHNwYW5uZWQnKTtcbiAgICB0aGlzLl91cGRhdGVDb2xzcGFucygnZ3JvdXBIZWFkZXJDb25maWdzJywgJ2dyb3VwSGVhZGVyQ29sc3Bhbm5lZCcpO1xuICAgIHRoaXMuX3VwZGF0ZUNvbHNwYW5zKCdncm91cEZvb3RlckNvbmZpZ3MnLCAnZ3JvdXBGb290ZXJDb2xzcGFubmVkJyk7XG4gICAgdGhpcy5fdXBkYXRlQ29sc3BhbnMoJ2NlbGxDb25maWdzJywgJ2NlbGxDb2xzcGFubmVkJyk7XG4gICAgdGhpcy5fdXBkYXRlQ29sc3BhbnMoJ2Zvb3RlckNvbmZpZ3MnLCAnZm9vdGVyQ29sc3Bhbm5lZCcpO1xuXG4gICAgdGhpcy51cGRhdGVWaXNpYmxlQ29sdW1ucygpO1xuICAgIHRoaXMuX2xpc3RlbkNvbHVtblZpc2liaWxpdHlVcGRhdGVzKCk7XG4gIH1cblxuICAvKipcbiAgICogTG9hZCB2aXNpYmxpdHkgY29uZmlnIGZvciBjb2x1bW5zIGZyb20gcmVtb3RlXG4gICAqL1xuICBwdWJsaWMgbG9hZFJlbW90ZUNvbHVtbkNvbmZpZ3MoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2xvYWRGbigpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKChjb2x1bW5Db25maWdzOiBGc0xpc3RDb2x1bW5bXSkgPT4ge1xuICAgICAgICAgIHRoaXMuX2NvbHVtbnNGZXRjaGVkID0gdHJ1ZTtcbiAgICAgICAgICB0aGlzLnVwZGF0ZVZpc2liaWxpdHlGb3JDb2xzKGNvbHVtbkNvbmZpZ3MpO1xuICAgICAgICAgIHRoaXMudXBkYXRlQ3VzdG9taXphYmxlRm9yQ29scyhjb2x1bW5Db25maWdzKTtcbiAgICAgICAgfSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB2aXNpYmxlIGNvbHVtbnMgYmFzZWQgb24gY3VycmVudCBjb2x1bW5zIHNob3cgc3RhdHVzXG4gICAqL1xuICBwdWJsaWMgdXBkYXRlVmlzaWJsZUNvbHVtbnMoKSB7XG4gICAgdGhpcy5fdmlzaWJsZUNvbHVtbnMkLm5leHQoXG4gICAgICB0aGlzLl9jb2x1bW5zLmZpbHRlcigoY29sdW1uKSA9PiBjb2x1bW4udmlzaWJsZSkgfHwgW10sXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgdmlzaWJpbGl0eSBiYXNlZCBvbiBwYXNzZWQgY29uZmlnXG4gICAqIEBwYXJhbSBjb2x1bW5zQ29uZmlnXG4gICAqL1xuICBwdWJsaWMgdXBkYXRlVmlzaWJpbGl0eUZvckNvbHMoY29sdW1uc0NvbmZpZzogRnNMaXN0Q29sdW1uW10pIHtcbiAgICBjb2x1bW5zQ29uZmlnLmZvckVhY2goKGNvbHVtbkNvbmZpZykgPT4ge1xuICAgICAgY29uc3QgY29sID0gdGhpcy5fY29sdW1uc1xuICAgICAgICAuZmluZCgoY29sdW1uKSA9PiBjb2x1bW4ubmFtZSA9PT0gY29sdW1uQ29uZmlnLm5hbWUpO1xuXG4gICAgICBpZiAoY29sKSB7XG4gICAgICAgIGNvbC51cGRhdGVWaXNpYmlsaXR5KGNvbHVtbkNvbmZpZy5zaG93ID8/IHRydWUpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy51cGRhdGVWaXNpYmxlQ29sdW1ucygpO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZUN1c3RvbWl6YWJsZUZvckNvbHMoY29sdW1uc0NvbmZpZzogRnNMaXN0Q29sdW1uW10pIHtcbiAgICBjb2x1bW5zQ29uZmlnLmZvckVhY2goKGNvbHVtbkNvbmZpZykgPT4ge1xuICAgICAgY29uc3QgY29sID0gdGhpcy5fY29sdW1uc1xuICAgICAgICAuZmluZCgoY29sdW1uKSA9PiBjb2x1bW4ubmFtZSA9PT0gY29sdW1uQ29uZmlnLm5hbWUpO1xuXG4gICAgICBpZiAoY29sKSB7XG4gICAgICAgIGNvbC51cGRhdGVDdXN0b21pemFibGUoY29sdW1uQ29uZmlnLmN1c3RvbWl6YWJsZSA/PyB0cnVlKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBkZXN0cm95KCkge1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQobnVsbCk7XG4gICAgdGhpcy5fZGVzdHJveSQuY29tcGxldGUoKTtcbiAgICB0aGlzLl9jb2x1bW5zVXBkYXRlZCQuY29tcGxldGUoKTtcblxuICAgIHRoaXMuX2NvbHVtbnMgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5fdmlzaWJsZUNvbHVtbnMkID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuX2RlZmF1bHRDb25maWdzID0gdW5kZWZpbmVkO1xuXG4gICAgdGhpcy5fbG9hZEZuID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuX2NoYW5nZUZuID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBfbGlzdGVuQ29sdW1uVmlzaWJpbGl0eVVwZGF0ZXMoKSB7XG4gICAgdGhpcy5fY29sdW1uc1VwZGF0ZWQkLm5leHQobnVsbCk7XG5cbiAgICBjb25zdCBjb2x1bW5zVmlzaWJpbGl0eSA9IHRoaXMuX2NvbHVtbnMubWFwKChjb2x1bW4pID0+IHtcbiAgICAgIHJldHVybiBjb2x1bW4udmlzaWJsZSQucGlwZShza2lwKDEpKTtcbiAgICB9KTtcblxuICAgIG1lcmdlKC4uLmNvbHVtbnNWaXNpYmlsaXR5KVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLl9jb2x1bW5zVXBkYXRlZCQpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMudXBkYXRlVmlzaWJsZUNvbHVtbnMoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlQ29sc3BhbnMoY29uZmlnLCB1cGRhdGVGbGFnKSB7XG4gICAgdGhpcy5fY29sdW1ucy5mb3JFYWNoKChjb2wsIGluZGV4KSA9PiB7XG5cbiAgICAgIGlmIChjb2xbY29uZmlnXS5jb2xzcGFuICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29uc3Qgc3BhblRvID0gaW5kZXggKyArY29sW2NvbmZpZ10uY29sc3BhbjtcblxuICAgICAgICBpZiAoIWlzTnVtYmVyKHNwYW5UbykpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fY29sdW1uc1tpbmRleF1bdXBkYXRlRmxhZ10gPSBmYWxzZTtcblxuICAgICAgICBmb3IgKGxldCBpID0gaW5kZXggKyAxOyBpIDwgc3BhblRvOyBpKyspIHtcbiAgICAgICAgICBpZiAodGhpcy5fY29sdW1uc1tpXSkge1xuICAgICAgICAgICAgdGhpcy5fY29sdW1uc1tpXVt1cGRhdGVGbGFnXSA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxufVxuIl19
198
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1ucy1jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FwcC9jbGFzc2VzL2NvbHVtbnMtY29udHJvbGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXRELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFTckMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBS2hELE1BQU0sT0FBTyxpQkFBaUI7SUFtQmxCO0lBakJGLGdCQUFnQixHQUFHLElBQUksZUFBZSxDQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELHNCQUFzQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0RCxXQUFXLEdBQUcsRUFBRSxDQUFDO0lBQ2pCLE9BQU8sQ0FBcUI7SUFDNUIsU0FBUyxDQUF1QjtJQUNoQyxhQUFhLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLG1CQUFtQixHQUFHLEtBQUssQ0FBQztJQUM1QixlQUFlLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDbkIsVUFBVSxHQUFHLEtBQUssQ0FBQztJQUNuQixRQUFRLEdBQWEsRUFBRSxDQUFDO0lBQ3hCLGVBQWUsQ0FBQztJQUVoQixnQkFBZ0IsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBQ3ZDLFNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRXhDLFlBQ1UsWUFBbUM7UUFBbkMsaUJBQVksR0FBWixZQUFZLENBQXVCO1FBRTNDLElBQUksQ0FBQyxPQUFPLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFXLE9BQU87UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFXLGNBQWM7UUFDdkIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDMUMsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN4QixPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBVyxnQkFBZ0I7UUFDekIsT0FBTyxJQUFJLENBQUMsUUFBUTthQUNqQixNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxZQUFZLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7YUFDeEQsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDZCxPQUFPO2dCQUNMLFFBQVEsRUFBRSxNQUFNLENBQUMsY0FBYztnQkFDL0IsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO2dCQUNqQixJQUFJLEVBQUUsTUFBTSxDQUFDLE9BQU87Z0JBQ3BCLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSzthQUNwQixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsSUFBVyxjQUFjO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBVyxrQkFBa0I7UUFDM0IsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELElBQVcsbUJBQW1CO1FBQzVCLE9BQU8sSUFBSSxDQUFDLGNBQWM7YUFDdkIsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO2FBQzVCLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFTSxXQUFXLENBQUMsUUFBUTtRQUN6QixJQUFJLENBQUMsZUFBZSxHQUFHLFFBQVEsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksVUFBVSxDQUFDLE1BQTBCO1FBQzFDLElBQUksTUFBTSxFQUFFLENBQUM7WUFDWCxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDaEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO1lBQzdCLENBQUM7WUFFRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDbEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO2dCQUMvQixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO1lBQ2xDLENBQUM7WUFFRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNJLGlCQUFpQixDQUFDLFNBQVM7UUFDaEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7UUFFbkIsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzNCLE1BQU0sR0FBRyxHQUFHLElBQUksTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7WUFFckQsSUFBSSxHQUFHLENBQUMsY0FBYyxJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDcEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7WUFDekIsQ0FBQztZQUNELElBQUksR0FBRyxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUN2QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztZQUN6QixDQUFDO1lBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBRXRELElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxvQkFBb0IsRUFBRSx1QkFBdUIsQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxlQUFlLENBQUMsb0JBQW9CLEVBQUUsdUJBQXVCLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFFMUQsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLDhCQUE4QixFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksdUJBQXVCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRTthQUNsQixJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsTUFBc0IsRUFBRSxFQUFFO1lBQzdCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQzVCLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNyQyxJQUFJLENBQUMseUJBQXlCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDekMsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxDQUFDLEdBQUcsRUFBRTtZQUNQLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDckMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztZQUMvRCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLEVBQ0YsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FDMUIsQ0FBQztJQUNOLENBQUM7SUFFRDs7T0FFRztJQUNJLG9CQUFvQjtRQUN6QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FDdkQsQ0FBQztJQUNKLENBQUM7SUFFRDs7O09BR0c7SUFDSSx1QkFBdUIsQ0FBQyxhQUE2QjtRQUMxRCxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsWUFBWSxFQUFFLEVBQUU7WUFDckMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVE7aUJBQ3RCLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFdkQsSUFBSSxHQUFHLEVBQUUsQ0FBQztnQkFDUixHQUFHLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQztZQUNsRCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRU0seUJBQXlCLENBQUMsYUFBNkI7UUFDNUQsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFlBQVksRUFBRSxFQUFFO1lBQ3JDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRO2lCQUN0QixJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBRXZELElBQUksR0FBRyxFQUFFLENBQUM7Z0JBQ1IsR0FBRyxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLENBQUM7WUFDNUQsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLE9BQU87UUFDWixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUVqQyxJQUFJLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQztRQUMxQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsU0FBUyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxlQUFlLEdBQUcsU0FBUyxDQUFDO1FBRWpDLElBQUksQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQzdCLENBQUM7SUFFTyw4QkFBOEI7UUFDcEMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVqQyxNQUFNLGlCQUFpQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDckQsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN2QyxDQUFDLENBQUMsQ0FBQztRQUVILEtBQUssQ0FBQyxHQUFHLGlCQUFpQixDQUFDO2FBQ3hCLElBQUksQ0FDSCxTQUFTLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEVBQ2hDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQzFCO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQzlCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVPLGVBQWUsQ0FBQyxNQUFNLEVBQUUsVUFBVTtRQUN4QyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUVuQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQ3RDLE1BQU0sTUFBTSxHQUFHLEtBQUssR0FBRyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUM7Z0JBRTVDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztvQkFDdEIsT0FBTztnQkFDVCxDQUFDO2dCQUNELElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsVUFBVSxDQUFDLEdBQUcsS0FBSyxDQUFDO2dCQUV6QyxLQUFLLElBQUksQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO29CQUN4QyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQzt3QkFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsR0FBRyxJQUFJLENBQUM7b0JBQ3RDLENBQUM7Z0JBQ0gsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgbWVyZ2UsIE9ic2VydmFibGUsIG9mLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBza2lwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgaXNOdW1iZXIgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG5pbXBvcnQge1xuICBGc0xpc3RDb2x1bW4sXG4gIEZzTGlzdENvbHVtbkNoYW5nZUZuLFxuICBGc0xpc3RDb2x1bW5Db25maWcsXG4gIEZzTGlzdENvbHVtbkxvYWRGbixcbn0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBDb2x1bW5zQ29sdW1uIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7IENvbHVtbiB9IGZyb20gJy4uL21vZGVscy9jb2x1bW4ubW9kZWwnO1xuXG5pbXBvcnQgeyBQZXJzaXN0YW5jZUNvbnRyb2xsZXIgfSBmcm9tICcuL3BlcnNpc3RhbmNlLWNvbnRyb2xsZXInO1xuXG5cbmV4cG9ydCBjbGFzcyBDb2x1bW5zQ29udHJvbGxlciB7XG5cbiAgcHJpdmF0ZSBfdmlzaWJsZUNvbHVtbnMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDb2x1bW5bXT4oW10pO1xuICBwcml2YXRlIF92aXNpYmxlQ29sdW1uc1NoYXJlZCQgPSB0aGlzLl92aXNpYmxlQ29sdW1ucyQucGlwZSgpO1xuICBwcml2YXRlIF90aGVhZENsYXNzID0gJyc7XG4gIHByaXZhdGUgX2xvYWRGbjogRnNMaXN0Q29sdW1uTG9hZEZuO1xuICBwcml2YXRlIF9jaGFuZ2VGbjogRnNMaXN0Q29sdW1uQ2hhbmdlRm47XG4gIHByaXZhdGUgX2lzQ29uZmlndXJlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9jaGFuZ2VGbkNvbmZpZ3VyZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfY29sdW1uc0ZldGNoZWQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfaGFzSGVhZGVyID0gZmFsc2U7XG4gIHByaXZhdGUgX2hhc0Zvb3RlciA9IGZhbHNlO1xuICBwcml2YXRlIF9jb2x1bW5zOiBDb2x1bW5bXSA9IFtdO1xuICBwcml2YXRlIF9kZWZhdWx0Q29uZmlncztcblxuICBwcml2YXRlIF9jb2x1bW5zVXBkYXRlZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfcGVyc2lzdGFuY2U6IFBlcnNpc3RhbmNlQ29udHJvbGxlcixcbiAgKSB7XG4gICAgdGhpcy5fbG9hZEZuID0gKCkgPT4gb2YoW10pO1xuICB9XG5cbiAgcHVibGljIGdldCBjb2x1bW5zKCkge1xuICAgIHJldHVybiB0aGlzLl9jb2x1bW5zLnNsaWNlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZpc2libGVDb2x1bW5zKCk6IENvbHVtbltdIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZUNvbHVtbnMkLmdldFZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZpc2libGVDb2x1bW5zJCgpOiBPYnNlcnZhYmxlPENvbHVtbltdPiB7XG4gICAgcmV0dXJuIHRoaXMuX3Zpc2libGVDb2x1bW5zU2hhcmVkJDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29sdW1uc0ZvckRpYWxvZygpOiBDb2x1bW5zQ29sdW1uW10ge1xuICAgIHJldHVybiB0aGlzLl9jb2x1bW5zXG4gICAgICAuZmlsdGVyKChjb2x1bW4pID0+IGNvbHVtbi5jdXN0b21pemFibGUgJiYgISFjb2x1bW4ubmFtZSlcbiAgICAgIC5tYXAoKGNvbHVtbikgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHRlbXBsYXRlOiBjb2x1bW4uaGVhZGVyVGVtcGxhdGUsXG4gICAgICAgICAgbmFtZTogY29sdW1uLm5hbWUsXG4gICAgICAgICAgc2hvdzogY29sdW1uLnZpc2libGUsXG4gICAgICAgICAgdGl0bGU6IGNvbHVtbi50aXRsZSxcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldCBjb2x1bW5zRmV0Y2hlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fY29sdW1uc0ZldGNoZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhhc0hlYWRlcigpIHtcbiAgICByZXR1cm4gdGhpcy5faGFzSGVhZGVyO1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNGb290ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2hhc0Zvb3RlcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdGhlYWRDbGFzcygpIHtcbiAgICByZXR1cm4gdGhpcy5fdGhlYWRDbGFzcztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29uZmlndXJlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5faXNDb25maWd1cmVkO1xuICB9XG5cbiAgcHVibGljIGdldCBjaGFuZ2VGbkNvbmZpZ3VyZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NoYW5nZUZuQ29uZmlndXJlZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2hhbmdlRm4oKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NoYW5nZUZuO1xuICB9XG5cbiAgcHVibGljIGdldCB2aXNpYmxlQ29sdW1uc05hbWVzKCkge1xuICAgIHJldHVybiB0aGlzLnZpc2libGVDb2x1bW5zXG4gICAgICAubWFwKChjb2x1bW4pID0+IGNvbHVtbi5uYW1lKVxuICAgICAgLmZpbHRlcigobmFtZSkgPT4gISFuYW1lKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXREZWZhdWx0cyhkZWZhdWx0cykge1xuICAgIHRoaXMuX2RlZmF1bHRDb25maWdzID0gZGVmYXVsdHM7XG4gIH1cblxuICAvKipcbiAgICogU2V0IGRhdGEgZnJvbSBsaXN0IGNvbmZpZ1xuICAgKiBAcGFyYW0gY29uZmlnXG4gICAqL1xuICBwdWJsaWMgaW5pdENvbmZpZyhjb25maWc6IEZzTGlzdENvbHVtbkNvbmZpZykge1xuICAgIGlmIChjb25maWcpIHtcbiAgICAgIGlmIChjb25maWcubG9hZCkge1xuICAgICAgICB0aGlzLl9sb2FkRm4gPSBjb25maWcubG9hZDtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgaWYgKGNvbmZpZy5jaGFuZ2UpIHtcbiAgICAgICAgdGhpcy5fY2hhbmdlRm4gPSBjb25maWcuY2hhbmdlO1xuICAgICAgICB0aGlzLl9jaGFuZ2VGbkNvbmZpZ3VyZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICB0aGlzLl9pc0NvbmZpZ3VyZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBCYXNlIGluaXRpYWxpemF0aW9uIGZvciBjb2x1bW5zXG4gICAqIEBwYXJhbSB0ZW1wbGF0ZXNcbiAgICovXG4gIHB1YmxpYyBpbml0aWFsaXplQ29sdW1ucyh0ZW1wbGF0ZXMpIHtcbiAgICB0aGlzLl9jb2x1bW5zID0gW107XG5cbiAgICB0ZW1wbGF0ZXMuZm9yRWFjaCgoY29sdW1uKSA9PiB7XG4gICAgICBjb25zdCBjb2wgPSBuZXcgQ29sdW1uKGNvbHVtbiwgdGhpcy5fZGVmYXVsdENvbmZpZ3MpO1xuXG4gICAgICBpZiAoY29sLmhlYWRlclRlbXBsYXRlIHx8IGNvbC50aXRsZSkge1xuICAgICAgICB0aGlzLl9oYXNIZWFkZXIgPSB0cnVlO1xuICAgICAgfVxuICAgICAgaWYgKGNvbC5mb290ZXJUZW1wbGF0ZSkge1xuICAgICAgICB0aGlzLl9oYXNGb290ZXIgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICB0aGlzLl9jb2x1bW5zLnB1c2goY29sKTtcbiAgICB9KTtcblxuICAgIHRoaXMuX3RoZWFkQ2xhc3MgPSB0aGlzLmhhc0hlYWRlciA/ICdoYXMtaGVhZGVyJyA6ICcnO1xuXG4gICAgdGhpcy5fdXBkYXRlQ29sc3BhbnMoJ2hlYWRlckNvbmZpZ3MnLCAnaGVhZGVyQ29sc3Bhbm5lZCcpO1xuICAgIHRoaXMuX3VwZGF0ZUNvbHNwYW5zKCdncm91cEhlYWRlckNvbmZpZ3MnLCAnZ3JvdXBIZWFkZXJDb2xzcGFubmVkJyk7XG4gICAgdGhpcy5fdXBkYXRlQ29sc3BhbnMoJ2dyb3VwRm9vdGVyQ29uZmlncycsICdncm91cEZvb3RlckNvbHNwYW5uZWQnKTtcbiAgICB0aGlzLl91cGRhdGVDb2xzcGFucygnY2VsbENvbmZpZ3MnLCAnY2VsbENvbHNwYW5uZWQnKTtcbiAgICB0aGlzLl91cGRhdGVDb2xzcGFucygnZm9vdGVyQ29uZmlncycsICdmb290ZXJDb2xzcGFubmVkJyk7XG5cbiAgICB0aGlzLnVwZGF0ZVZpc2libGVDb2x1bW5zKCk7XG4gICAgdGhpcy5fbGlzdGVuQ29sdW1uVmlzaWJpbGl0eVVwZGF0ZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2FkIHZpc2libGl0eSBjb25maWcgZm9yIGNvbHVtbnMgZnJvbSByZW1vdGVcbiAgICovXG4gIHB1YmxpYyBsb2FkUmVtb3RlQ29sdW1uQ29uZmlncygpIHtcbiAgICByZXR1cm4gdGhpcy5fbG9hZEZuKClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKGNvbHVtbjogRnNMaXN0Q29sdW1uW10pID0+IHtcbiAgICAgICAgICB0aGlzLl9jb2x1bW5zRmV0Y2hlZCA9IHRydWU7XG4gICAgICAgICAgdGhpcy51cGRhdGVWaXNpYmlsaXR5Rm9yQ29scyhjb2x1bW4pO1xuICAgICAgICAgIHRoaXMudXBkYXRlQ3VzdG9taXphYmxlRm9yQ29scyhjb2x1bW4pO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFwKCgpID0+IHtcbiAgICAgICAgICBpZiAodGhpcy5fcGVyc2lzdGFuY2UuY29sdW1uc0VuYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlVmlzaWJpbGl0eUZvckNvbHModGhpcy5fcGVyc2lzdGFuY2UuZ2V0Q29sdW1ucygpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdmlzaWJsZSBjb2x1bW5zIGJhc2VkIG9uIGN1cnJlbnQgY29sdW1ucyBzaG93IHN0YXR1c1xuICAgKi9cbiAgcHVibGljIHVwZGF0ZVZpc2libGVDb2x1bW5zKCkge1xuICAgIHRoaXMuX3Zpc2libGVDb2x1bW5zJC5uZXh0KFxuICAgICAgdGhpcy5fY29sdW1ucy5maWx0ZXIoKGNvbHVtbikgPT4gY29sdW1uLnZpc2libGUpIHx8IFtdLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIHZpc2liaWxpdHkgYmFzZWQgb24gcGFzc2VkIGNvbmZpZ1xuICAgKiBAcGFyYW0gY29sdW1uc0NvbmZpZ1xuICAgKi9cbiAgcHVibGljIHVwZGF0ZVZpc2liaWxpdHlGb3JDb2xzKGNvbHVtbnNDb25maWc6IEZzTGlzdENvbHVtbltdKSB7XG4gICAgY29sdW1uc0NvbmZpZy5mb3JFYWNoKChjb2x1bW5Db25maWcpID0+IHtcbiAgICAgIGNvbnN0IGNvbCA9IHRoaXMuX2NvbHVtbnNcbiAgICAgICAgLmZpbmQoKGNvbHVtbikgPT4gY29sdW1uLm5hbWUgPT09IGNvbHVtbkNvbmZpZy5uYW1lKTtcblxuICAgICAgaWYgKGNvbCkge1xuICAgICAgICBjb2wudXBkYXRlVmlzaWJpbGl0eShjb2x1bW5Db25maWcuc2hvdyA/PyB0cnVlKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMudXBkYXRlVmlzaWJsZUNvbHVtbnMoKTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVDdXN0b21pemFibGVGb3JDb2xzKGNvbHVtbnNDb25maWc6IEZzTGlzdENvbHVtbltdKSB7XG4gICAgY29sdW1uc0NvbmZpZy5mb3JFYWNoKChjb2x1bW5Db25maWcpID0+IHtcbiAgICAgIGNvbnN0IGNvbCA9IHRoaXMuX2NvbHVtbnNcbiAgICAgICAgLmZpbmQoKGNvbHVtbikgPT4gY29sdW1uLm5hbWUgPT09IGNvbHVtbkNvbmZpZy5uYW1lKTtcblxuICAgICAgaWYgKGNvbCkge1xuICAgICAgICBjb2wudXBkYXRlQ3VzdG9taXphYmxlKGNvbHVtbkNvbmZpZy5jdXN0b21pemFibGUgPz8gdHJ1ZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZGVzdHJveSgpIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KG51bGwpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fY29sdW1uc1VwZGF0ZWQkLmNvbXBsZXRlKCk7XG5cbiAgICB0aGlzLl9jb2x1bW5zID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuX3Zpc2libGVDb2x1bW5zJCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLl9kZWZhdWx0Q29uZmlncyA9IHVuZGVmaW5lZDtcblxuICAgIHRoaXMuX2xvYWRGbiA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLl9jaGFuZ2VGbiA9IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHByaXZhdGUgX2xpc3RlbkNvbHVtblZpc2liaWxpdHlVcGRhdGVzKCkge1xuICAgIHRoaXMuX2NvbHVtbnNVcGRhdGVkJC5uZXh0KG51bGwpO1xuXG4gICAgY29uc3QgY29sdW1uc1Zpc2liaWxpdHkgPSB0aGlzLl9jb2x1bW5zLm1hcCgoY29sdW1uKSA9PiB7XG4gICAgICByZXR1cm4gY29sdW1uLnZpc2libGUkLnBpcGUoc2tpcCgxKSk7XG4gICAgfSk7XG5cbiAgICBtZXJnZSguLi5jb2x1bW5zVmlzaWJpbGl0eSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fY29sdW1uc1VwZGF0ZWQkKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLnVwZGF0ZVZpc2libGVDb2x1bW5zKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZUNvbHNwYW5zKGNvbmZpZywgdXBkYXRlRmxhZykge1xuICAgIHRoaXMuX2NvbHVtbnMuZm9yRWFjaCgoY29sLCBpbmRleCkgPT4ge1xuXG4gICAgICBpZiAoY29sW2NvbmZpZ10uY29sc3BhbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnN0IHNwYW5UbyA9IGluZGV4ICsgK2NvbFtjb25maWddLmNvbHNwYW47XG5cbiAgICAgICAgaWYgKCFpc051bWJlcihzcGFuVG8pKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2NvbHVtbnNbaW5kZXhdW3VwZGF0ZUZsYWddID0gZmFsc2U7XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IGluZGV4ICsgMTsgaSA8IHNwYW5UbzsgaSsrKSB7XG4gICAgICAgICAgaWYgKHRoaXMuX2NvbHVtbnNbaV0pIHtcbiAgICAgICAgICAgIHRoaXMuX2NvbHVtbnNbaV1bdXBkYXRlRmxhZ10gPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbn1cbiJdfQ==
@@ -1,7 +1,6 @@
1
1
  import { merge, Subject } from 'rxjs';
2
2
  import { takeUntil } from 'rxjs/operators';
3
3
  export class ExternalParamsController {
4
- _router;
5
4
  _route;
6
5
  _persistance;
7
6
  _paginator;
@@ -14,8 +13,7 @@ export class ExternalParamsController {
14
13
  sortDirection: null,
15
14
  };
16
15
  _destroy$ = new Subject();
17
- constructor(_router, _route, _persistance, _paginator, _sorting, _queryParamsEnabled) {
18
- this._router = _router;
16
+ constructor(_route, _persistance, _paginator, _sorting, _queryParamsEnabled) {
19
17
  this._route = _route;
20
18
  this._persistance = _persistance;
21
19
  this._paginator = _paginator;
@@ -33,7 +31,7 @@ export class ExternalParamsController {
33
31
  };
34
32
  }
35
33
  get _enabled() {
36
- return this._queryParamsEnabled || this._persistance.enabled;
34
+ return this._queryParamsEnabled || this._persistance.filtersEnabled;
37
35
  }
38
36
  get _page() {
39
37
  return this._externalParams.page;
@@ -49,9 +47,11 @@ export class ExternalParamsController {
49
47
  }
50
48
  initialize() {
51
49
  // Restore from localStorage parameters if persistance enabled
52
- if (this._persistance.enabled) {
53
- this._restorePaginationParams(this._persistance.getDataFromScope('paging'));
54
- this._restoreSortingParams(this._persistance.getDataFromScope('sorting'));
50
+ if (this._persistance.pagingEnabled) {
51
+ this._restorePaginationParams(this._persistance.getPaging());
52
+ }
53
+ if (this._persistance.sortingEnabled) {
54
+ this._restoreSortingParams(this._persistance.getSorting());
55
55
  }
56
56
  // Restore from queryParams and override if persistance already had values for those params
57
57
  if (this._queryParamsEnabled) {
@@ -123,12 +123,12 @@ export class ExternalParamsController {
123
123
  sortDirection: direction,
124
124
  });
125
125
  }
126
- if (this._persistance.enabled) {
126
+ if (this._persistance.filtersEnabled) {
127
127
  if (name && direction) {
128
- this._persistance.saveDataToScope('sorting', { sortName: name, sortDirection: direction });
128
+ this._persistance.setSorting({ sortName: name, sortDirection: direction });
129
129
  }
130
130
  else {
131
- this._persistance.saveDataToScope('sorting', null);
131
+ this._persistance.setSorting(null);
132
132
  }
133
133
  }
134
134
  }
@@ -136,8 +136,8 @@ export class ExternalParamsController {
136
136
  if (this._queryParamsEnabled) {
137
137
  this._replaceState(params);
138
138
  }
139
- if (this._persistance.enabled) {
140
- this._persistance.saveDataToScope('paging', params);
139
+ if (this._persistance.filtersEnabled) {
140
+ this._persistance.setPaging(params);
141
141
  }
142
142
  }
143
143
  _replaceState(data) {
@@ -150,4 +150,4 @@ export class ExternalParamsController {
150
150
  history.replaceState({}, null, url.pathname + url.search);
151
151
  }
152
152
  }
153
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtcGFyYW1zLWNvbnRyb2xsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2NsYXNzZXMvZXh0ZXJuYWwtcGFyYW1zLWNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBYzNDLE1BQU0sT0FBTyx3QkFBd0I7SUFZekI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBZkYsZUFBZSxHQUFtQjtRQUN4QyxJQUFJLEVBQUUsSUFBSTtRQUNWLEtBQUssRUFBRSxJQUFJO1FBQ1gsUUFBUSxFQUFFLElBQUk7UUFDZCxhQUFhLEVBQUUsSUFBSTtLQUNwQixDQUFDO0lBRU0sU0FBUyxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFFeEMsWUFDVSxPQUFlLEVBQ2YsTUFBc0IsRUFDdEIsWUFBbUMsRUFDbkMsVUFBZ0MsRUFDaEMsUUFBMkIsRUFDM0IsbUJBQTRCO1FBTDVCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZixXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUN0QixpQkFBWSxHQUFaLFlBQVksQ0FBdUI7UUFDbkMsZUFBVSxHQUFWLFVBQVUsQ0FBc0I7UUFDaEMsYUFBUSxHQUFSLFFBQVEsQ0FBbUI7UUFDM0Isd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFTO1FBRXBDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBVyxlQUFlO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUM5RCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUM7UUFFRCxPQUFPO1lBQ0wsS0FBSyxFQUFFLElB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LElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUM7YUFDakUsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDaEIsR0FBRyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO1FBRUwsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBtZXJnZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBQYWdpbmF0aW9uQ29udHJvbGxlciB9IGZyb20gJy4uL2NsYXNzZXMvcGFnaW5hdGlvbi1jb250cm9sbGVyJztcbmltcG9ydCB7IFNvcnRpbmdDb250cm9sbGVyIH0gZnJvbSAnLi4vY2xhc3Nlcy9zb3J0aW5nLWNvbnRyb2xsZXInO1xuaW1wb3J0IHsgRnNMaXN0U29ydENvbmZpZyB9IGZyb20gJy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtcbiAgRXh0ZXJuYWxQYXJhbXMsXG4gIEV4dGVybmFsUXVlcnlQYWdpbmF0aW9uLFxuICBFeHRlcm5hbFF1ZXJ5U29ydGluZyxcbn0gZnJvbSAnLi4vaW50ZXJmYWNlcy9leHRlcm5hbC1wYXJhbXMuaW50ZXJmYWNlJztcblxuaW1wb3J0IHsgUGVyc2lzdGFuY2VDb250cm9sbGVyIH0gZnJvbSAnLi9wZXJzaXN0YW5jZS1jb250cm9sbGVyJztcblxuXG5leHBvcnQgY2xhc3MgRXh0ZXJuYWxQYXJhbXNDb250cm9sbGVyIHtcblxuICBwcml2YXRlIF9leHRlcm5hbFBhcmFtczogRXh0ZXJuYWxQYXJhbXMgPSB7XG4gICAgcGFnZTogbnVsbCxcbiAgICBsaW1pdDogbnVsbCxcbiAgICBzb3J0TmFtZTogbnVsbCxcbiAgICBzb3J0RGlyZWN0aW9uOiBudWxsLFxuICB9O1xuXG4gIHByaXZhdGUgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIF9yb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSBfcGVyc2lzdGFuY2U6IFBlcnNpc3RhbmNlQ29udHJvbGxlcixcbiAgICBwcml2YXRlIF9wYWdpbmF0b3I6IFBhZ2luYXRpb25Db250cm9sbGVyLFxuICAgIHByaXZhdGUgX3NvcnRpbmc6IFNvcnRpbmdDb250cm9sbGVyLFxuICAgIHByaXZhdGUgX3F1ZXJ5UGFyYW1zRW5hYmxlZDogYm9vbGVhbixcbiAgKSB7XG4gICAgdGhpcy5pbml0aWFsaXplKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGV4dGVybmFsU29ydGluZygpOiBGc0xpc3RTb3J0Q29uZmlnIHtcbiAgICBpZiAoIXRoaXMuX2VuYWJsZWQgfHwgIXRoaXMuX3NvcnROYW1lIHx8ICF0aGlzLl9zb3J0RGlyZWN0aW9uKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgdmFsdWU6IHRoaXMuX3NvcnROYW1lLFxuICAgICAgZGlyZWN0aW9uOiB0aGlzLl9zb3J0RGlyZWN0aW9uLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldCBfZW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcXVlcnlQYXJhbXNFbmFibGVkIHx8IHRoaXMuX3BlcnNpc3RhbmNlLmVuYWJsZWQ7XG4gIH1cblxuICBwcml2YXRlIGdldCBfcGFnZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9leHRlcm5hbFBhcmFtcy5wYWdlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX2xpbWl0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2V4dGVybmFsUGFyYW1zLmxpbWl0O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX3NvcnROYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2V4dGVybmFsUGFyYW1zLnNvcnROYW1lO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX3NvcnREaXJlY3Rpb24oKTogJ2FzYycgfCAnZGVzYycge1xuICAgIHJldHVybiB0aGlzLl9leHRlcm5hbFBhcmFtcy5zb3J0RGlyZWN0aW9uO1xuICB9XG5cbiAgcHVibGljIGluaXRpYWxpemUoKSB7XG5cbiAgICAvLyBSZXN0b3JlIGZyb20gbG9jYWxTdG9yYWdlIHBhcmFtZXRlcnMgaWYgcGVyc2lzdGFuY2UgZW5hYmxlZFxuICAgIGlmICh0aGlzLl9wZXJzaXN0YW5jZS5lbmFibGVkKSB7XG4gICAgICB0aGlzLl9yZXN0b3JlUGFnaW5hdGlvblBhcmFtcyh0aGlzLl9wZXJzaXN0YW5jZS5nZXREYXRhRnJvbVNjb3BlKCdwYWdpbmcnKSk7XG4gICAgICB0aGlzLl9yZXN0b3JlU29ydGluZ1BhcmFtcyh0aGlzLl9wZXJzaXN0YW5jZS5nZXREYXRhRnJvbVNjb3BlKCdzb3J0aW5nJykpO1xuICAgIH1cblxuICAgIC8vIFJlc3RvcmUgZnJvbSBxdWVyeVBhcmFtcyBhbmQgb3ZlcnJpZGUgaWYgcGVyc2lzdGFuY2UgYWxyZWFkeSBoYWQgdmFsdWVzIGZvciB0aG9zZSBwYXJhbXNcbiAgICBpZiAodGhpcy5fcXVlcnlQYXJhbXNFbmFibGVkKSB7XG4gICAgICB0aGlzLl9yZXN0b3JlUGFnaW5hdGlvblBhcmFtcyh0aGlzLl9yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcyBhcyBFeHRlcm5hbFF1ZXJ5UGFnaW5hdGlvbik7XG4gICAgICB0aGlzLl9yZXN0b3JlU29ydGluZ1BhcmFtcyh0aGlzLl9yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcyBhcyBFeHRlcm5hbFF1ZXJ5U29ydGluZyk7XG4gICAgfVxuXG4gICAgLy8gU2V0IGluaXRpYWwgcGFnaW5hdGlvbiBwYXJhbXNcbiAgICAvLyBUaGUgc2FtZSBpbml0aWFsLCBidXQgZm9yIHNvcnRpbmcgcGxhY2VkIGluIGxpc3QtY29udHJvbGxlciBcInRyYW5mb3JtVGVtcGxhdGVzVG9Db2x1bW5zXCIgbWV0aG9kXG4gICAgaWYgKHRoaXMuX3BhZ2luYXRvci5lbmFibGVkKSB7XG4gICAgICBpZiAodGhpcy5fbGltaXQpIHtcbiAgICAgICAgdGhpcy5fcGFnaW5hdG9yLnNldExpbWl0KHRoaXMuX2xpbWl0KTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuX3BhZ2UpIHtcbiAgICAgICAgdGhpcy5fcGFnaW5hdG9yLmdvVG9QYWdlKHRoaXMuX3BhZ2UpO1xuXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVXBkYXRlIHBhZ2luYXRpb24gaW4gc3RvcmVzXG4gICAgdGhpcy5fdXBkYXRlUGFnaW5hdGlvblBhcmFtcyh0aGlzLl9wYWdpbmF0b3IucXVlcnlQYWdlU3RyYXRlZ3kpO1xuXG4gICAgdGhpcy5fbGlzdGVuUGFnaW5hdG9yQ2hhbmdlcygpO1xuICAgIHRoaXMuX2xpc3RlblNvcnRpbmdDaGFuZ2VzKCk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJTb3J0aW5nUGFyYW1zKCkge1xuICAgIHRoaXMuX3VwZGF0ZVNvcnRpbmdQYXJhbXMobnVsbCwgbnVsbCk7XG4gIH1cblxuICBwdWJsaWMgZGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KG51bGwpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcml2YXRlIF9yZXN0b3JlUGFnaW5hdGlvblBhcmFtcyh2YWx1ZXM6IEV4dGVybmFsUXVlcnlQYWdpbmF0aW9uKSB7XG4gICAgaWYgKHZhbHVlcz8ucGFnZSkge1xuICAgICAgdGhpcy5fZXh0ZXJuYWxQYXJhbXMucGFnZSA9ICt2YWx1ZXMucGFnZTtcbiAgICB9XG5cbiAgICBpZiAodmFsdWVzPy5saW1pdCkge1xuICAgICAgdGhpcy5fZXh0ZXJuYWxQYXJhbXMubGltaXQgPSArdmFsdWVzLmxpbWl0O1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX3Jlc3RvcmVTb3J0aW5nUGFyYW1zKHZhbHVlczogRXh0ZXJuYWxRdWVyeVNvcnRpbmcpIHtcbiAgICBpZiAodmFsdWVzPy5zb3J0TmFtZSkge1xuICAgICAgdGhpcy5fZXh0ZXJuYWxQYXJhbXMuc29ydE5hbWUgPSB2YWx1ZXMuc29ydE5hbWU7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlcz8uc29ydERpcmVjdGlvbikge1xuICAgICAgdGhpcy5fZXh0ZXJuYWxQYXJhbXMuc29ydERpcmVjdGlvbiA9IHZhbHVlcy5zb3J0RGlyZWN0aW9uO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgX2xpc3RlblBhZ2luYXRvckNoYW5nZXMoKSB7XG4gICAgbWVyZ2UoXG4gICAgICB0aGlzLl9wYWdpbmF0b3IucGFnZUNoYW5nZWQkLFxuICAgICAgdGhpcy5fcGFnaW5hdG9yLnBhZ2VzJCxcbiAgICAgIHRoaXMuX3BhZ2luYXRvci5wYWdlUmVzZXQkLFxuICAgIClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuX3VwZGF0ZVBhZ2luYXRpb25QYXJhbXModGhpcy5fcGFnaW5hdG9yLnF1ZXJ5UGFnZVN0cmF0ZWd5KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfbGlzdGVuU29ydGluZ0NoYW5nZXMoKSB7XG4gICAgbWVyZ2UoXG4gICAgICB0aGlzLl9zb3J0aW5nLmluaXRpYWxpemVkJCxcbiAgICAgIHRoaXMuX3NvcnRpbmcuc29ydGluZ0NoYW5nZWQkLFxuICAgIClcbiAgICAgIC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGNvbnN0IHNvcnRpbmcgPSB0aGlzLl9zb3J0aW5nLnZhbHVlO1xuXG4gICAgICAgIGlmIChzb3J0aW5nKSB7XG4gICAgICAgICAgdGhpcy5fdXBkYXRlU29ydGluZ1BhcmFtcyhzb3J0aW5nLnZhbHVlLCBzb3J0aW5nLmRpcmVjdGlvbik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5jbGVhclNvcnRpbmdQYXJhbXMoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVTb3J0aW5nUGFyYW1zKG5hbWU6IHN0cmluZywgZGlyZWN0aW9uOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5fcXVlcnlQYXJhbXNFbmFibGVkKSB7XG4gICAgICB0aGlzLl9yZXBsYWNlU3RhdGUoe1xuICAgICAgICBzb3J0TmFtZTogbmFtZSxcbiAgICAgICAgc29ydERpcmVjdGlvbjogZGlyZWN0aW9uLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX3BlcnNpc3RhbmNlLmVuYWJsZWQpIHtcbiAgICAgIGlmIChuYW1lICYmIGRpcmVjdGlvbikge1xuICAgICAgICB0aGlzLl9wZXJzaXN0YW5jZS5zYXZlRGF0YVRvU2NvcGUoJ3NvcnRpbmcnLCB7IHNvcnROYW1lOiBuYW1lLCBzb3J0RGlyZWN0aW9uOiBkaXJlY3Rpb24gfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9wZXJzaXN0YW5jZS5zYXZlRGF0YVRvU2NvcGUoJ3NvcnRpbmcnLCBudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVQYWdpbmF0aW9uUGFyYW1zKHBhcmFtcykge1xuICAgIGlmICh0aGlzLl9xdWVyeVBhcmFtc0VuYWJsZWQpIHtcbiAgICAgIHRoaXMuX3JlcGxhY2VTdGF0ZShwYXJhbXMpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9wZXJzaXN0YW5jZS5lbmFibGVkKSB7XG4gICAgICB0aGlzLl9wZXJzaXN0YW5jZS5zYXZlRGF0YVRvU2NvcGUoJ3BhZ2luZycsIHBhcmFtcyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcmVwbGFjZVN0YXRlKGRhdGEpIHtcbiAgICBjb25zdCB1cmwgPSBuZXcgVVJMKHdpbmRvdy5sb2NhdGlvbi5ocmVmKTtcblxuICAgIE9iamVjdC5rZXlzKGRhdGEpXG4gICAgICAuZmlsdGVyKChuYW1lKSA9PiBkYXRhW25hbWVdICE9PSB1bmRlZmluZWQgJiYgZGF0YVtuYW1lXSAhPT0gbnVsbClcbiAgICAgIC5mb3JFYWNoKChuYW1lKSA9PiB7XG4gICAgICAgIHVybC5zZWFyY2hQYXJhbXMuc2V0KG5hbWUsZGF0YVtuYW1lXSk7XG4gICAgICB9KTtcblxuICAgIGhpc3RvcnkucmVwbGFjZVN0YXRlKHt9LCBudWxsLCB1cmwucGF0aG5hbWUgKyB1cmwuc2VhcmNoKTtcbiAgfVxufVxuIl19
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZXJuYWwtcGFyYW1zLWNvbnRyb2xsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2NsYXNzZXMvZXh0ZXJuYWwtcGFyYW1zLWNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBYzNDLE1BQU0sT0FBTyx3QkFBd0I7SUFZekI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQWRGLGVBQWUsR0FBbUI7UUFDeEMsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsSUFBSTtRQUNYLFFBQVEsRUFBRSxJQUFJO1FBQ2QsYUFBYSxFQUFFLElBQUk7S0FDcEIsQ0FBQztJQUVNLFNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRXhDLFlBQ1UsTUFBc0IsRUFDdEIsWUFBbUMsRUFDbkMsVUFBZ0MsRUFDaEMsUUFBMkIsRUFDM0IsbUJBQTRCO1FBSjVCLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBQ3RCLGlCQUFZLEdBQVosWUFBWSxDQUF1QjtRQUNuQyxlQUFVLEdBQVYsVUFBVSxDQUFzQjtRQUNoQyxhQUFRLEdBQVIsUUFBUSxDQUFtQjtRQUMzQix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQVM7UUFFcEMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFXLGVBQWU7UUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzlELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELE9BQU87WUFDTCxLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDckIsU0FBUyxFQUFFLElBQUksQ0FBQyxj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Q2pFLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2hCLEdBQUcsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksRUFBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN4QyxDQUFDLENBQUMsQ0FBQztRQUVMLE9BQU8sQ0FBQyxZQUFZLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxHQUFHLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7IG1lcmdlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFBhZ2luYXRpb25Db250cm9sbGVyIH0gZnJvbSAnLi4vY2xhc3Nlcy9wYWdpbmF0aW9uLWNvbnRyb2xsZXInO1xuaW1wb3J0IHsgU29ydGluZ0NvbnRyb2xsZXIgfSBmcm9tICcuLi9jbGFzc2VzL3NvcnRpbmctY29udHJvbGxlcic7XG5pbXBvcnQgeyBGc0xpc3RTb3J0Q29uZmlnIH0gZnJvbSAnLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQge1xuICBFeHRlcm5hbFBhcmFtcyxcbiAgRXh0ZXJuYWxRdWVyeVBhZ2luYXRpb24sXG4gIEV4dGVybmFsUXVlcnlTb3J0aW5nLFxufSBmcm9tICcuLi9pbnRlcmZhY2VzL2V4dGVybmFsLXBhcmFtcy5pbnRlcmZhY2UnO1xuXG5pbXBvcnQgeyBQZXJzaXN0YW5jZUNvbnRyb2xsZXIgfSBmcm9tICcuL3BlcnNpc3RhbmNlLWNvbnRyb2xsZXInO1xuXG5cbmV4cG9ydCBjbGFzcyBFeHRlcm5hbFBhcmFtc0NvbnRyb2xsZXIge1xuXG4gIHByaXZhdGUgX2V4dGVybmFsUGFyYW1zOiBFeHRlcm5hbFBhcmFtcyA9IHtcbiAgICBwYWdlOiBudWxsLFxuICAgIGxpbWl0OiBudWxsLFxuICAgIHNvcnROYW1lOiBudWxsLFxuICAgIHNvcnREaXJlY3Rpb246IG51bGwsXG4gIH07XG5cbiAgcHJpdmF0ZSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgX3JvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIF9wZXJzaXN0YW5jZTogUGVyc2lzdGFuY2VDb250cm9sbGVyLFxuICAgIHByaXZhdGUgX3BhZ2luYXRvcjogUGFnaW5hdGlvbkNvbnRyb2xsZXIsXG4gICAgcHJpdmF0ZSBfc29ydGluZzogU29ydGluZ0NvbnRyb2xsZXIsXG4gICAgcHJpdmF0ZSBfcXVlcnlQYXJhbXNFbmFibGVkOiBib29sZWFuLFxuICApIHtcbiAgICB0aGlzLmluaXRpYWxpemUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZXh0ZXJuYWxTb3J0aW5nKCk6IEZzTGlzdFNvcnRDb25maWcge1xuICAgIGlmICghdGhpcy5fZW5hYmxlZCB8fCAhdGhpcy5fc29ydE5hbWUgfHwgIXRoaXMuX3NvcnREaXJlY3Rpb24pIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICB2YWx1ZTogdGhpcy5fc29ydE5hbWUsXG4gICAgICBkaXJlY3Rpb246IHRoaXMuX3NvcnREaXJlY3Rpb24sXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IF9lbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9xdWVyeVBhcmFtc0VuYWJsZWQgfHwgdGhpcy5fcGVyc2lzdGFuY2UuZmlsdGVyc0VuYWJsZWQ7XG4gIH1cblxuICBwcml2YXRlIGdldCBfcGFnZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9leHRlcm5hbFBhcmFtcy5wYWdlO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX2xpbWl0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2V4dGVybmFsUGFyYW1zLmxpbWl0O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX3NvcnROYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2V4dGVybmFsUGFyYW1zLnNvcnROYW1lO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgX3NvcnREaXJlY3Rpb24oKTogJ2FzYycgfCAnZGVzYycge1xuICAgIHJldHVybiB0aGlzLl9leHRlcm5hbFBhcmFtcy5zb3J0RGlyZWN0aW9uO1xuICB9XG5cbiAgcHVibGljIGluaXRpYWxpemUoKSB7XG5cbiAgICAvLyBSZXN0b3JlIGZyb20gbG9jYWxTdG9yYWdlIHBhcmFtZXRlcnMgaWYgcGVyc2lzdGFuY2UgZW5hYmxlZFxuICAgIGlmICh0aGlzLl9wZXJzaXN0YW5jZS5wYWdpbmdFbmFibGVkKSB7XG4gICAgICB0aGlzLl9yZXN0b3JlUGFnaW5hdGlvblBhcmFtcyh0aGlzLl9wZXJzaXN0YW5jZS5nZXRQYWdpbmcoKSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX3BlcnNpc3RhbmNlLnNvcnRpbmdFbmFibGVkKSB7XG4gICAgICB0aGlzLl9yZXN0b3JlU29ydGluZ1BhcmFtcyh0aGlzLl9wZXJzaXN0YW5jZS5nZXRTb3J0aW5nKCkpO1xuICAgIH1cblxuICAgIC8vIFJlc3RvcmUgZnJvbSBxdWVyeVBhcmFtcyBhbmQgb3ZlcnJpZGUgaWYgcGVyc2lzdGFuY2UgYWxyZWFkeSBoYWQgdmFsdWVzIGZvciB0aG9zZSBwYXJhbXNcbiAgICBpZiAodGhpcy5fcXVlcnlQYXJhbXNFbmFibGVkKSB7XG4gICAgICB0aGlzLl9yZXN0b3JlUGFnaW5hdGlvblBhcmFtcyh0aGlzLl9yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcyBhcyBFeHRlcm5hbFF1ZXJ5UGFnaW5hdGlvbik7XG4gICAgICB0aGlzLl9yZXN0b3JlU29ydGluZ1BhcmFtcyh0aGlzLl9yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcyBhcyBFeHRlcm5hbFF1ZXJ5U29ydGluZyk7XG4gICAgfVxuXG4gICAgLy8gU2V0IGluaXRpYWwgcGFnaW5hdGlvbiBwYXJhbXNcbiAgICAvLyBUaGUgc2FtZSBpbml0aWFsLCBidXQgZm9yIHNvcnRpbmcgcGxhY2VkIGluIGxpc3QtY29udHJvbGxlciBcInRyYW5mb3JtVGVtcGxhdGVzVG9Db2x1bW5zXCIgbWV0aG9kXG4gICAgaWYgKHRoaXMuX3BhZ2luYXRvci5lbmFibGVkKSB7XG4gICAgICBpZiAodGhpcy5fbGltaXQpIHtcbiAgICAgICAgdGhpcy5fcGFnaW5hdG9yLnNldExpbWl0KHRoaXMuX2xpbWl0KTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuX3BhZ2UpIHtcbiAgICAgICAgdGhpcy5fcGFnaW5hdG9yLmdvVG9QYWdlKHRoaXMuX3BhZ2UpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFVwZGF0ZSBwYWdpbmF0aW9uIGluIHN0b3Jlc1xuICAgIHRoaXMuX3VwZGF0ZVBhZ2luYXRpb25QYXJhbXModGhpcy5fcGFnaW5hdG9yLnF1ZXJ5UGFnZVN0cmF0ZWd5KTtcblxuICAgIHRoaXMuX2xpc3RlblBhZ2luYXRvckNoYW5nZXMoKTtcbiAgICB0aGlzLl9saXN0ZW5Tb3J0aW5nQ2hhbmdlcygpO1xuICB9XG5cbiAgcHVibGljIGNsZWFyU29ydGluZ1BhcmFtcygpIHtcbiAgICB0aGlzLl91cGRhdGVTb3J0aW5nUGFyYW1zKG51bGwsIG51bGwpO1xuICB9XG5cbiAgcHVibGljIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dChudWxsKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfcmVzdG9yZVBhZ2luYXRpb25QYXJhbXModmFsdWVzOiBFeHRlcm5hbFF1ZXJ5UGFnaW5hdGlvbikge1xuICAgIGlmICh2YWx1ZXM/LnBhZ2UpIHtcbiAgICAgIHRoaXMuX2V4dGVybmFsUGFyYW1zLnBhZ2UgPSArdmFsdWVzLnBhZ2U7XG4gICAgfVxuXG4gICAgaWYgKHZhbHVlcz8ubGltaXQpIHtcbiAgICAgIHRoaXMuX2V4dGVybmFsUGFyYW1zLmxpbWl0ID0gK3ZhbHVlcy5saW1pdDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9yZXN0b3JlU29ydGluZ1BhcmFtcyh2YWx1ZXM6IEV4dGVybmFsUXVlcnlTb3J0aW5nKSB7XG4gICAgaWYgKHZhbHVlcz8uc29ydE5hbWUpIHtcbiAgICAgIHRoaXMuX2V4dGVybmFsUGFyYW1zLnNvcnROYW1lID0gdmFsdWVzLnNvcnROYW1lO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZXM/LnNvcnREaXJlY3Rpb24pIHtcbiAgICAgIHRoaXMuX2V4dGVybmFsUGFyYW1zLnNvcnREaXJlY3Rpb24gPSB2YWx1ZXMuc29ydERpcmVjdGlvbjtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9saXN0ZW5QYWdpbmF0b3JDaGFuZ2VzKCkge1xuICAgIG1lcmdlKFxuICAgICAgdGhpcy5fcGFnaW5hdG9yLnBhZ2VDaGFuZ2VkJCxcbiAgICAgIHRoaXMuX3BhZ2luYXRvci5wYWdlcyQsXG4gICAgICB0aGlzLl9wYWdpbmF0b3IucGFnZVJlc2V0JCxcbiAgICApXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLl91cGRhdGVQYWdpbmF0aW9uUGFyYW1zKHRoaXMuX3BhZ2luYXRvci5xdWVyeVBhZ2VTdHJhdGVneSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2xpc3RlblNvcnRpbmdDaGFuZ2VzKCkge1xuICAgIG1lcmdlKFxuICAgICAgdGhpcy5fc29ydGluZy5pbml0aWFsaXplZCQsXG4gICAgICB0aGlzLl9zb3J0aW5nLnNvcnRpbmdDaGFuZ2VkJCxcbiAgICApXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICBjb25zdCBzb3J0aW5nID0gdGhpcy5fc29ydGluZy52YWx1ZTtcblxuICAgICAgICBpZiAoc29ydGluZykge1xuICAgICAgICAgIHRoaXMuX3VwZGF0ZVNvcnRpbmdQYXJhbXMoc29ydGluZy52YWx1ZSwgc29ydGluZy5kaXJlY3Rpb24pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuY2xlYXJTb3J0aW5nUGFyYW1zKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlU29ydGluZ1BhcmFtcyhuYW1lOiBzdHJpbmcsIGRpcmVjdGlvbjogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMuX3F1ZXJ5UGFyYW1zRW5hYmxlZCkge1xuICAgICAgdGhpcy5fcmVwbGFjZVN0YXRlKHtcbiAgICAgICAgc29ydE5hbWU6IG5hbWUsXG4gICAgICAgIHNvcnREaXJlY3Rpb246IGRpcmVjdGlvbixcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9wZXJzaXN0YW5jZS5maWx0ZXJzRW5hYmxlZCkge1xuICAgICAgaWYgKG5hbWUgJiYgZGlyZWN0aW9uKSB7XG4gICAgICAgIHRoaXMuX3BlcnNpc3RhbmNlLnNldFNvcnRpbmcoeyBzb3J0TmFtZTogbmFtZSwgc29ydERpcmVjdGlvbjogZGlyZWN0aW9uIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5fcGVyc2lzdGFuY2Uuc2V0U29ydGluZyhudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVQYWdpbmF0aW9uUGFyYW1zKHBhcmFtcykge1xuICAgIGlmICh0aGlzLl9xdWVyeVBhcmFtc0VuYWJsZWQpIHtcbiAgICAgIHRoaXMuX3JlcGxhY2VTdGF0ZShwYXJhbXMpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9wZXJzaXN0YW5jZS5maWx0ZXJzRW5hYmxlZCkge1xuICAgICAgdGhpcy5fcGVyc2lzdGFuY2Uuc2V0UGFnaW5nKHBhcmFtcyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfcmVwbGFjZVN0YXRlKGRhdGEpIHtcbiAgICBjb25zdCB1cmwgPSBuZXcgVVJMKHdpbmRvdy5sb2NhdGlvbi5ocmVmKTtcblxuICAgIE9iamVjdC5rZXlzKGRhdGEpXG4gICAgICAuZmlsdGVyKChuYW1lKSA9PiBkYXRhW25hbWVdICE9PSB1bmRlZmluZWQgJiYgZGF0YVtuYW1lXSAhPT0gbnVsbClcbiAgICAgIC5mb3JFYWNoKChuYW1lKSA9PiB7XG4gICAgICAgIHVybC5zZWFyY2hQYXJhbXMuc2V0KG5hbWUsZGF0YVtuYW1lXSk7XG4gICAgICB9KTtcblxuICAgIGhpc3RvcnkucmVwbGFjZVN0YXRlKHt9LCBudWxsLCB1cmwucGF0aG5hbWUgKyB1cmwuc2VhcmNoKTtcbiAgfVxufVxuIl19
@@ -1,3 +1,3 @@
1
1
  export { ActionsController } from './actions-controller';
2
2
  export { ColumnsController } from './columns-controller';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2NsYXNzZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBBY3Rpb25zQ29udHJvbGxlciB9IGZyb20gJy4vYWN0aW9ucy1jb250cm9sbGVyJztcbmV4cG9ydCB7IENvbHVtbnNDb250cm9sbGVyIH0gZnJvbSAnLi9jb2x1bW5zLWNvbnRyb2xsZXInO1xuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBwL2NsYXNzZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBBY3Rpb25zQ29udHJvbGxlciB9IGZyb20gJy4vYWN0aW9ucy1jb250cm9sbGVyJztcclxuZXhwb3J0IHsgQ29sdW1uc0NvbnRyb2xsZXIgfSBmcm9tICcuL2NvbHVtbnMtY29udHJvbGxlcic7XHJcbiJdfQ==