@porscheinformatik/clr-addons 15.0.0 → 15.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/datagrid/datagrid-state-persistence/datagrid-state-persistence-model.interface.d.ts +2 -0
- package/datagrid/datagrid-state-persistence/index.d.ts +1 -0
- package/datagrid/datagrid-state-persistence/state-persistence-key.directive.d.ts +13 -4
- package/datagrid/datagrid-state-persistence/state-persistence-options.interface.d.ts +8 -0
- package/esm2020/datagrid/datagrid-state-persistence/column-hidden-state-persistence.directive.mjs +3 -2
- package/esm2020/datagrid/datagrid-state-persistence/datagrid-state-persistence-model.interface.mjs +1 -1
- package/esm2020/datagrid/datagrid-state-persistence/index.mjs +2 -1
- package/esm2020/datagrid/datagrid-state-persistence/state-persistence-key.directive.mjs +58 -12
- package/esm2020/datagrid/datagrid-state-persistence/state-persistence-options.interface.mjs +2 -0
- package/esm2020/searchfield/search-field.mjs +7 -5
- package/fesm2015/clr-addons.mjs +75 -20
- package/fesm2015/clr-addons.mjs.map +1 -1
- package/fesm2020/clr-addons.mjs +65 -16
- package/fesm2020/clr-addons.mjs.map +1 -1
- package/package.json +1 -1
- package/searchfield/search-field.d.ts +2 -2
- package/styles/clr-addons-phs.css +0 -13
- package/styles/clr-addons-phs.css.map +1 -1
- package/styles/clr-addons-phs.min.css +1 -1
- package/styles/clr-addons-phs.min.css.map +1 -1
|
@@ -2,13 +2,18 @@ import { AfterContentInit, ElementRef, OnDestroy, QueryList } from '@angular/cor
|
|
|
2
2
|
import { ClrDatagrid, ClrDatagridFilter, ClrDatagridPagination } from '@clr/angular';
|
|
3
3
|
import { ClrDatagridStatePersistenceModel } from './datagrid-state-persistence-model.interface';
|
|
4
4
|
import { Subject } from 'rxjs';
|
|
5
|
+
import { StatePersistenceOptions } from './state-persistence-options.interface';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
export declare class StatePersistenceKeyDirective implements AfterContentInit, OnDestroy {
|
|
7
8
|
private datagrid;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Configuration options for the persistence.
|
|
11
|
+
* 'Key' represents the local storage key under which the persistence state is stored.
|
|
12
|
+
*
|
|
13
|
+
* Optional fields with the 'persist' prefix toggle the persistence of the respective datagrid functionality,
|
|
14
|
+
* the default value is always 'true'.
|
|
15
|
+
*/
|
|
16
|
+
options: StatePersistenceOptions;
|
|
12
17
|
useLocalStoreOnly: boolean;
|
|
13
18
|
paginationDescription: string;
|
|
14
19
|
pagination: ClrDatagridPagination;
|
|
@@ -29,7 +34,10 @@ export declare class StatePersistenceKeyDirective implements AfterContentInit, O
|
|
|
29
34
|
private initPageSizePersister;
|
|
30
35
|
private initCurrentPage;
|
|
31
36
|
private initFilter;
|
|
37
|
+
private initSorting;
|
|
32
38
|
private initDatagridPersister;
|
|
39
|
+
private persistFiltersAndCurrentPage;
|
|
40
|
+
private persistSorting;
|
|
33
41
|
/**
|
|
34
42
|
* Pagination description must be set by this directive,
|
|
35
43
|
* otherwise we can't update datagrid values from localStorage
|
|
@@ -52,6 +60,7 @@ export declare class StatePersistenceKeyDirective implements AfterContentInit, O
|
|
|
52
60
|
private parseFilterValue;
|
|
53
61
|
private getFilter;
|
|
54
62
|
private getFilterPropertyName;
|
|
63
|
+
private getSortProperty;
|
|
55
64
|
ngOnDestroy(): void;
|
|
56
65
|
static ɵfac: i0.ɵɵFactoryDeclaration<StatePersistenceKeyDirective, never>;
|
|
57
66
|
static ɵdir: i0.ɵɵDirectiveDeclaration<StatePersistenceKeyDirective, "[clrStatePersistenceKey]", never, { "options": "clrStatePersistenceKey"; "useLocalStoreOnly": "clrUseLocalStoreOnly"; "paginationDescription": "clrPaginationDescription"; }, {}, ["pagination", "paginationElem", "customFilters"], never, false, never>;
|
package/esm2020/datagrid/datagrid-state-persistence/column-hidden-state-persistence.directive.mjs
CHANGED
|
@@ -17,7 +17,8 @@ export class ColumnHiddenStatePersistenceDirective {
|
|
|
17
17
|
this.destroy$ = new Subject();
|
|
18
18
|
}
|
|
19
19
|
ngOnInit() {
|
|
20
|
-
|
|
20
|
+
const persistenceEnabled = this.statePersistenceKey?.options?.persistHiddenColumns ?? true;
|
|
21
|
+
if (this.statePersistenceKey?.options.key && this.columnDirective?.clrDgField && persistenceEnabled) {
|
|
21
22
|
/* set hidden states from local storage (if existing) */
|
|
22
23
|
this.initHiddenState();
|
|
23
24
|
/* listen to state changes and persist in local storage */
|
|
@@ -76,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
|
|
|
76
77
|
}] }, { type: i2.StatePersistenceKeyDirective, decorators: [{
|
|
77
78
|
type: Optional
|
|
78
79
|
}] }, { type: i3.ClrDatagrid }, { type: i3.ClrDatagridHideableColumn }]; } });
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLWhpZGRlbi1zdGF0ZS1wZXJzaXN0ZW5jZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY2xyLWFkZG9ucy9kYXRhZ3JpZC9kYXRhZ3JpZC1zdGF0ZS1wZXJzaXN0ZW5jZS9jb2x1bW4taGlkZGVuLXN0YXRlLXBlcnNpc3RlbmNlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDcEUsT0FBTyxFQUFFLFdBQVcsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVqRixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFLM0MsTUFBTSxPQUFPLHFDQUFxQztJQUdoRCxZQUNzQixlQUF1QyxFQUN2QyxtQkFBaUQsRUFDN0QsUUFBcUIsRUFDckIsdUJBQWtEO1FBSHRDLG9CQUFlLEdBQWYsZUFBZSxDQUF3QjtRQUN2Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQThCO1FBQzdELGFBQVEsR0FBUixRQUFRLENBQWE7UUFDckIsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUEyQjtRQU41RCxhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQU81QixDQUFDO0lBRUosUUFBUTtRQUNOLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixFQUFFLE9BQU8sRUFBRSxvQkFBb0IsSUFBSSxJQUFJLENBQUM7UUFDM0YsSUFBSSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsT0FBTyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLFVBQVUsSUFBSSxrQkFBa0IsRUFBRTtZQUNuRyx3REFBd0Q7WUFDeEQsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBRXZCLDBEQUEwRDtZQUMxRCxJQUFJLENBQUMsdUJBQXVCLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUMxRixJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzlCLENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRU8sZUFBZTtRQUNyQixpQ0FBaUM7UUFDakMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFbEQsbUNBQW1DO1FBQ25DLElBQUksa0JBQWtCLEVBQUUsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUNsRSwwQ0FBMEM7WUFDMUMsTUFBTSwwQkFBMEIsR0FBRyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDdEcsSUFBSSwwQkFBMEIsS0FBSyxTQUFTLEVBQUU7Z0JBQzVDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxXQUFXLEdBQUcsMEJBQTBCLEtBQUssSUFBSSxDQUFDO2FBQ2hGO1NBQ0Y7SUFDSCxDQUFDO0lBRU8sY0FBYyxDQUFDLE1BQWU7UUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsYUFBYSxFQUFFLE1BQU0sRUFBRTtZQUN6QyxpQ0FBaUM7WUFDakMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFFbEQsbUNBQW1DO1lBQ25DLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUU7Z0JBQy9CLGtCQUFrQixDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7YUFDakM7WUFDRCxJQUFJLG9CQUFvQixHQUFHLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3ZGLElBQUksQ0FBQyxvQkFBb0IsRUFBRTtnQkFDekIsb0JBQW9CLEdBQUcsRUFBRSxDQUFDO2dCQUMxQixrQkFBa0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsR0FBRyxvQkFBb0IsQ0FBQzthQUNwRjtZQUVELDBEQUEwRDtZQUMxRCxvQkFBb0IsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1lBQ3JDLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7U0FDaEc7SUFDSCxDQUFDO0lBRU8sZUFBZTtRQUNyQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3RGLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7O2tJQWpFVSxxQ0FBcUM7c0hBQXJDLHFDQUFxQzsyRkFBckMscUNBQXFDO2tCQUhqRCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1QkFBdUI7aUJBQ2xDOzswQkFLSSxRQUFROzswQkFDUixRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERhdGFncmlkRmllbGREaXJlY3RpdmUgfSBmcm9tICcuL2RhdGFncmlkLWZpZWxkLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDbHJEYXRhZ3JpZCwgQ2xyRGF0YWdyaWRIaWRlYWJsZUNvbHVtbiB9IGZyb20gJ0BjbHIvYW5ndWxhcic7XG5pbXBvcnQgeyBTdGF0ZVBlcnNpc3RlbmNlS2V5RGlyZWN0aXZlIH0gZnJvbSAnLi9zdGF0ZS1wZXJzaXN0ZW5jZS1rZXkuZGlyZWN0aXZlJztcbmltcG9ydCB7IENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsIH0gZnJvbSAnLi9kYXRhZ3JpZC1zdGF0ZS1wZXJzaXN0ZW5jZS1tb2RlbC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbY2xyRGdIaWRlYWJsZUNvbHVtbl0nLFxufSlcbmV4cG9ydCBjbGFzcyBDb2x1bW5IaWRkZW5TdGF0ZVBlcnNpc3RlbmNlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBjb2x1bW5EaXJlY3RpdmU6IERhdGFncmlkRmllbGREaXJlY3RpdmUsXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBzdGF0ZVBlcnNpc3RlbmNlS2V5OiBTdGF0ZVBlcnNpc3RlbmNlS2V5RGlyZWN0aXZlLFxuICAgIHByaXZhdGUgZGF0YWdyaWQ6IENsckRhdGFncmlkLFxuICAgIHByaXZhdGUgaGlkZWFibGVDb2x1bW5EaXJlY3RpdmU6IENsckRhdGFncmlkSGlkZWFibGVDb2x1bW5cbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGNvbnN0IHBlcnNpc3RlbmNlRW5hYmxlZCA9IHRoaXMuc3RhdGVQZXJzaXN0ZW5jZUtleT8ub3B0aW9ucz8ucGVyc2lzdEhpZGRlbkNvbHVtbnMgPz8gdHJ1ZTtcbiAgICBpZiAodGhpcy5zdGF0ZVBlcnNpc3RlbmNlS2V5Py5vcHRpb25zLmtleSAmJiB0aGlzLmNvbHVtbkRpcmVjdGl2ZT8uY2xyRGdGaWVsZCAmJiBwZXJzaXN0ZW5jZUVuYWJsZWQpIHtcbiAgICAgIC8qIHNldCBoaWRkZW4gc3RhdGVzIGZyb20gbG9jYWwgc3RvcmFnZSAoaWYgZXhpc3RpbmcpICovXG4gICAgICB0aGlzLmluaXRIaWRkZW5TdGF0ZSgpO1xuXG4gICAgICAvKiBsaXN0ZW4gdG8gc3RhdGUgY2hhbmdlcyBhbmQgcGVyc2lzdCBpbiBsb2NhbCBzdG9yYWdlICovXG4gICAgICB0aGlzLmhpZGVhYmxlQ29sdW1uRGlyZWN0aXZlLmhpZGRlbkNoYW5nZS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKGhpZGRlbiA9PiB7XG4gICAgICAgIHRoaXMuc2V0SGlkZGVuU3RhdGUoaGlkZGVuKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdEhpZGRlblN0YXRlKCkge1xuICAgIC8qIHJlYWQgZ3JpZCBzdGF0ZSBpZiBleGlzdGluZyAqL1xuICAgIGNvbnN0IHBlcnNpc3RlZEdyaWRTdGF0ZSA9IHRoaXMucmVhZFN0b3JlZFN0YXRlKCk7XG5cbiAgICAvKiByZWFkIGNvbHVtbiBzdGF0ZSBpZiBleGlzdGluZyAqL1xuICAgIGlmIChwZXJzaXN0ZWRHcmlkU3RhdGU/LmNvbHVtbnM/Llt0aGlzLmNvbHVtbkRpcmVjdGl2ZS5jbHJEZ0ZpZWxkXSkge1xuICAgICAgLyogcmVhZCBjb2x1bW4gaGlkZGVuIHN0YXRlIGlmIGV4aXN0aW5nICovXG4gICAgICBjb25zdCBwZXJzaXN0ZWRDb2x1bW5IaWRkZW5TdGF0ZSA9IHBlcnNpc3RlZEdyaWRTdGF0ZS5jb2x1bW5zW3RoaXMuY29sdW1uRGlyZWN0aXZlLmNsckRnRmllbGRdLmhpZGRlbjtcbiAgICAgIGlmIChwZXJzaXN0ZWRDb2x1bW5IaWRkZW5TdGF0ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuaGlkZWFibGVDb2x1bW5EaXJlY3RpdmUuY2xyRGdIaWRkZW4gPSBwZXJzaXN0ZWRDb2x1bW5IaWRkZW5TdGF0ZSA9PT0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldEhpZGRlblN0YXRlKGhpZGRlbjogYm9vbGVhbikge1xuICAgIGlmICghdGhpcy5kYXRhZ3JpZD8uZGV0YWlsU2VydmljZT8uaXNPcGVuKSB7XG4gICAgICAvKiByZWFkIGdyaWQgc3RhdGUgaWYgZXhpc3RpbmcgKi9cbiAgICAgIGNvbnN0IHBlcnNpc3RlZEdyaWRTdGF0ZSA9IHRoaXMucmVhZFN0b3JlZFN0YXRlKCk7XG5cbiAgICAgIC8qIHJlYWQgY29sdW1uIHN0YXRlIGlmIGV4aXN0aW5nICovXG4gICAgICBpZiAoIXBlcnNpc3RlZEdyaWRTdGF0ZS5jb2x1bW5zKSB7XG4gICAgICAgIHBlcnNpc3RlZEdyaWRTdGF0ZS5jb2x1bW5zID0ge307XG4gICAgICB9XG4gICAgICBsZXQgcGVyc2lzdGVkQ29sdW1uU3RhdGUgPSBwZXJzaXN0ZWRHcmlkU3RhdGUuY29sdW1uc1t0aGlzLmNvbHVtbkRpcmVjdGl2ZS5jbHJEZ0ZpZWxkXTtcbiAgICAgIGlmICghcGVyc2lzdGVkQ29sdW1uU3RhdGUpIHtcbiAgICAgICAgcGVyc2lzdGVkQ29sdW1uU3RhdGUgPSB7fTtcbiAgICAgICAgcGVyc2lzdGVkR3JpZFN0YXRlLmNvbHVtbnNbdGhpcy5jb2x1bW5EaXJlY3RpdmUuY2xyRGdGaWVsZF0gPSBwZXJzaXN0ZWRDb2x1bW5TdGF0ZTtcbiAgICAgIH1cblxuICAgICAgLyogc2V0IGNvbHVtbiBoaWRkZW4gc3RhdGUgYW5kIHBlcnNpc3QgaW4gbG9jYWwgc3RvcmFnZSAqL1xuICAgICAgcGVyc2lzdGVkQ29sdW1uU3RhdGUuaGlkZGVuID0gaGlkZGVuO1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5zdGF0ZVBlcnNpc3RlbmNlS2V5Lm9wdGlvbnMua2V5LCBKU09OLnN0cmluZ2lmeShwZXJzaXN0ZWRHcmlkU3RhdGUpKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHJlYWRTdG9yZWRTdGF0ZSgpOiBDbHJEYXRhZ3JpZFN0YXRlUGVyc2lzdGVuY2VNb2RlbCB7XG4gICAgcmV0dXJuIEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5zdGF0ZVBlcnNpc3RlbmNlS2V5Lm9wdGlvbnMua2V5KSkgfHwge307XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiJdfQ==
|
package/esm2020/datagrid/datagrid-state-persistence/datagrid-state-persistence-model.interface.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWdyaWQtc3RhdGUtcGVyc2lzdGVuY2UtbW9kZWwuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2Nsci1hZGRvbnMvZGF0YWdyaWQvZGF0YWdyaWQtc3RhdGUtcGVyc2lzdGVuY2UvZGF0YWdyaWQtc3RhdGUtcGVyc2lzdGVuY2UtbW9kZWwuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsIHtcbiAgcGFnZVNpemU6IG51bWJlcjtcbiAgY3VycmVudFBhZ2U6IG51bWJlcjtcbiAgc29ydEJ5Pzogc3RyaW5nO1xuICBzb3J0UmV2ZXJzZT86IGJvb2xlYW47XG4gIGNvbHVtbnM6IHsgW2tleTogc3RyaW5nXTogQ2xyQ29sdW1uU3RhdGVQZXJzaXN0ZW5jZU1vZGVsIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2xyQ29sdW1uU3RhdGVQZXJzaXN0ZW5jZU1vZGVsIHtcbiAgaGlkZGVuPzogYm9vbGVhbjtcbiAgZmlsdGVyVmFsdWU/OiBhbnk7XG59XG4iXX0=
|
|
@@ -3,4 +3,5 @@ export * from './datagrid-field.directive';
|
|
|
3
3
|
export * from './datagrid-state-persistence.module';
|
|
4
4
|
export * from './state-persistence-key.directive';
|
|
5
5
|
export * from './datagrid-state-persistence-model.interface';
|
|
6
|
-
|
|
6
|
+
export * from './state-persistence-options.interface';
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY2xyLWFkZG9ucy9kYXRhZ3JpZC9kYXRhZ3JpZC1zdGF0ZS1wZXJzaXN0ZW5jZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyx1Q0FBdUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY29sdW1uLWhpZGRlbi1zdGF0ZS1wZXJzaXN0ZW5jZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhZ3JpZC1maWVsZC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhZ3JpZC1zdGF0ZS1wZXJzaXN0ZW5jZS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zdGF0ZS1wZXJzaXN0ZW5jZS1rZXkuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0YWdyaWQtc3RhdGUtcGVyc2lzdGVuY2UtbW9kZWwuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc3RhdGUtcGVyc2lzdGVuY2Utb3B0aW9ucy5pbnRlcmZhY2UnO1xuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ContentChild, ContentChildren, Directive, ElementRef, Input, QueryList, } from '@angular/core';
|
|
2
|
-
import { ClrDatagrid, ClrDatagridFilter, ClrDatagridPagination } from '@clr/angular';
|
|
2
|
+
import { ClrDatagrid, ClrDatagridFilter, ClrDatagridPagination, ClrDatagridSortOrder, DatagridPropertyComparator, } from '@clr/angular';
|
|
3
3
|
import { delay, Subject } from 'rxjs';
|
|
4
4
|
import { takeUntil } from 'rxjs/operators';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
@@ -28,8 +28,10 @@ export class StatePersistenceKeyDirective {
|
|
|
28
28
|
const volatileDataState = this.getVolatileDataState();
|
|
29
29
|
const localStorageState = this.getLocalStorageState();
|
|
30
30
|
this.initFilter(volatileDataState);
|
|
31
|
+
this.initSorting(localStorageState);
|
|
31
32
|
this.initDatagridPersister();
|
|
32
|
-
|
|
33
|
+
const paginationPersistenceEnabled = this.options.persistPagination ?? true;
|
|
34
|
+
if (this.pagination?.page && paginationPersistenceEnabled) {
|
|
33
35
|
this.initPageSizePersister(localStorageState);
|
|
34
36
|
this.initCurrentPage(volatileDataState);
|
|
35
37
|
}
|
|
@@ -64,7 +66,8 @@ export class StatePersistenceKeyDirective {
|
|
|
64
66
|
}
|
|
65
67
|
}
|
|
66
68
|
initFilter(savedState) {
|
|
67
|
-
|
|
69
|
+
const filterPersistenceEnabled = this.options.persistFilters ?? true;
|
|
70
|
+
if (savedState.columns && filterPersistenceEnabled) {
|
|
68
71
|
Object.keys(savedState.columns).forEach(prop => {
|
|
69
72
|
const filter = this.getFilter(prop);
|
|
70
73
|
if (filter) {
|
|
@@ -76,13 +79,40 @@ export class StatePersistenceKeyDirective {
|
|
|
76
79
|
});
|
|
77
80
|
}
|
|
78
81
|
}
|
|
82
|
+
initSorting(savedState) {
|
|
83
|
+
const sortPersistenceEnabled = this.options.persistSort ?? true;
|
|
84
|
+
if (savedState.sortBy && sortPersistenceEnabled) {
|
|
85
|
+
this.datagrid.columns.forEach(column => {
|
|
86
|
+
if (this.getSortProperty(column.sortBy) === savedState.sortBy) {
|
|
87
|
+
column.sortOrder = savedState.sortReverse ? ClrDatagridSortOrder.DESC : ClrDatagridSortOrder.ASC;
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
column.sortOrder = ClrDatagridSortOrder.UNSORTED;
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
}
|
|
79
95
|
initDatagridPersister() {
|
|
80
96
|
// delay is needed, as onDestroy the filters emit empty values.
|
|
81
97
|
// So delay it to the end of the current cycle, so the directive is also destroyed before it gets the next values
|
|
82
98
|
this.datagrid.refresh.pipe(delay(0), takeUntil(this.destroy$)).subscribe(dgState => {
|
|
83
|
-
|
|
99
|
+
this.persistFiltersAndCurrentPage(dgState);
|
|
100
|
+
this.persistSorting(dgState);
|
|
101
|
+
if (this.canShowPaginationDescription) {
|
|
102
|
+
this.updatePaginationDescription();
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
this.datagrid.items.change.pipe(takeUntil(this.destroy$)).subscribe(() => this.updatePaginationDescription());
|
|
106
|
+
}
|
|
107
|
+
persistFiltersAndCurrentPage(dgState) {
|
|
108
|
+
const filterPersistenceEnabled = this.options.persistFilters ?? true;
|
|
109
|
+
const paginationPersistenceEnabled = this.options.persistPagination ?? true;
|
|
110
|
+
const state = this.getVolatileDataState();
|
|
111
|
+
state.columns = state.columns || {};
|
|
112
|
+
if (paginationPersistenceEnabled) {
|
|
84
113
|
state.currentPage = dgState.page?.current;
|
|
85
|
-
|
|
114
|
+
}
|
|
115
|
+
if (filterPersistenceEnabled) {
|
|
86
116
|
Object.keys(state.columns).forEach(prop => (state.columns[prop].filterValue = undefined));
|
|
87
117
|
dgState.filters?.forEach(filter => {
|
|
88
118
|
const property = this.getFilterPropertyName(filter);
|
|
@@ -91,12 +121,17 @@ export class StatePersistenceKeyDirective {
|
|
|
91
121
|
state.columns[property].filterValue = this.enrichFilterValue(filter);
|
|
92
122
|
}
|
|
93
123
|
});
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
124
|
+
}
|
|
125
|
+
(this.useLocalStoreOnly ? localStorage : sessionStorage).setItem(this.options.key, JSON.stringify(state));
|
|
126
|
+
}
|
|
127
|
+
persistSorting(dgState) {
|
|
128
|
+
const sortPersistenceEnabled = this.options.persistSort ?? true;
|
|
129
|
+
if (sortPersistenceEnabled) {
|
|
130
|
+
const state = this.getLocalStorageState();
|
|
131
|
+
state.sortBy = this.getSortProperty(dgState.sort?.by);
|
|
132
|
+
state.sortReverse = dgState.sort?.reverse;
|
|
133
|
+
localStorage.setItem(this.options.key, JSON.stringify(state));
|
|
134
|
+
}
|
|
100
135
|
}
|
|
101
136
|
/**
|
|
102
137
|
* Pagination description must be set by this directive,
|
|
@@ -163,6 +198,17 @@ export class StatePersistenceKeyDirective {
|
|
|
163
198
|
const filterWithProp = filter;
|
|
164
199
|
return (filterWithProp.property?.prop || filterWithProp.property);
|
|
165
200
|
}
|
|
201
|
+
getSortProperty(sortBy) {
|
|
202
|
+
if (sortBy) {
|
|
203
|
+
if (typeof sortBy === 'string') {
|
|
204
|
+
return sortBy;
|
|
205
|
+
}
|
|
206
|
+
if (sortBy instanceof DatagridPropertyComparator) {
|
|
207
|
+
return sortBy.prop;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
return undefined;
|
|
211
|
+
}
|
|
166
212
|
ngOnDestroy() {
|
|
167
213
|
this.destroy$.next();
|
|
168
214
|
this.destroy$.complete();
|
|
@@ -194,4 +240,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
|
|
|
194
240
|
type: ContentChildren,
|
|
195
241
|
args: [ClrDatagridFilter, { descendants: true }]
|
|
196
242
|
}] } });
|
|
197
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtcGVyc2lzdGVuY2Uta2V5LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL2RhdGFncmlkL2RhdGFncmlkLXN0YXRlLXBlcnNpc3RlbmNlL3N0YXRlLXBlcnNpc3RlbmNlLWtleS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFlBQVksRUFDWixlQUFlLEVBQ2YsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBRUwsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQThCLHFCQUFxQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRWpILE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBRTNDLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQztBQVV6QixNQUFNLE9BQU8sNEJBQTRCO0lBdUJ2QyxZQUFvQixRQUFxQjtRQUFyQixhQUFRLEdBQVIsUUFBUSxDQUFhO1FBbEJ6QyxzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFHMUIsMEJBQXFCLEdBQUcsRUFBRSxDQUFDO1FBVzNCLGlDQUE0QixHQUFHLEtBQUssQ0FBQztRQUNyQyxpQ0FBNEIsR0FBRyxLQUFLLENBQUM7UUFDckMsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFFYSxDQUFDO0lBRTdDLGtCQUFrQjtRQUNoQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFO1lBQzdCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNiO2FBQU07WUFDTCxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNkLENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFD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QkFBVSxVQUFVLGdEQUd0QyxpQkFBaUI7MkZBaEJ2Qiw0QkFBNEI7a0JBSHhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDBCQUEwQjtpQkFDckM7a0dBR0MsT0FBTztzQkFETixLQUFLO3VCQUFDLHdCQUF3QjtnQkFJL0IsaUJBQWlCO3NCQURoQixLQUFLO3VCQUFDLHNCQUFzQjtnQkFJN0IscUJBQXFCO3NCQURwQixLQUFLO3VCQUFDLDBCQUEwQjtnQkFJakMsVUFBVTtzQkFEVCxZQUFZO3VCQUFDLHFCQUFxQjtnQkFJbkMsY0FBYztzQkFEYixZQUFZO3VCQUFDLHFCQUFxQixFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFJekQsYUFBYTtzQkFEWixlQUFlO3VCQUFDLGlCQUFpQixFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENvbnRlbnRDaGlsZCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIFF1ZXJ5TGlzdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbHJEYXRhZ3JpZCwgQ2xyRGF0YWdyaWRGaWx0ZXIsIENsckRhdGFncmlkRmlsdGVySW50ZXJmYWNlLCBDbHJEYXRhZ3JpZFBhZ2luYXRpb24gfSBmcm9tICdAY2xyL2FuZ3VsYXInO1xuaW1wb3J0IHsgQ2xyRGF0YWdyaWRTdGF0ZVBlcnNpc3RlbmNlTW9kZWwgfSBmcm9tICcuL2RhdGFncmlkLXN0YXRlLXBlcnNpc3RlbmNlLW1vZGVsLmludGVyZmFjZSc7XG5pbXBvcnQgeyBkZWxheSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5jb25zdCBEQVRFX1RZUEUgPSAnZGF0ZSc7XG5cbmludGVyZmFjZSBGaWx0ZXJWYWx1ZVdpdGhNZXRhZGF0YSB7XG4gIHR5cGU6IHN0cmluZztcbiAgdmFsdWU6IHVua25vd247XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tjbHJTdGF0ZVBlcnNpc3RlbmNlS2V5XScsXG59KVxuZXhwb3J0IGNsYXNzIFN0YXRlUGVyc2lzdGVuY2VLZXlEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoJ2NsclN0YXRlUGVyc2lzdGVuY2VLZXknKVxuICBvcHRpb25zOiB7IGtleTogc3RyaW5nOyBzZXJ2ZXJEcml2ZW46IGJvb2xlYW4gfTtcblxuICBASW5wdXQoJ2NsclVzZUxvY2FsU3RvcmVPbmx5JylcbiAgdXNlTG9jYWxTdG9yZU9ubHkgPSBmYWxzZTtcblxuICBASW5wdXQoJ2NsclBhZ2luYXRpb25EZXNjcmlwdGlvbicpXG4gIHBhZ2luYXRpb25EZXNjcmlwdGlvbiA9ICcnO1xuXG4gIEBDb250ZW50Q2hpbGQoQ2xyRGF0YWdyaWRQYWdpbmF0aW9uKVxuICBwYWdpbmF0aW9uOiBDbHJEYXRhZ3JpZFBhZ2luYXRpb247XG5cbiAgQENvbnRlbnRDaGlsZChDbHJEYXRhZ3JpZFBhZ2luYXRpb24sIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICBwYWdpbmF0aW9uRWxlbTogRWxlbWVudFJlZjtcblxuICBAQ29udGVudENoaWxkcmVuKENsckRhdGFncmlkRmlsdGVyLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIGN1c3RvbUZpbHRlcnM6IFF1ZXJ5TGlzdDxDbHJEYXRhZ3JpZEZpbHRlcj47XG5cbiAgY2FuU2hvd1BhZ2luYXRpb25EZXNjcmlwdGlvbiA9IGZhbHNlO1xuICB3YXJuZWRBYm91dEN1c3RvbURlc2NyaXB0aW9uID0gZmFsc2U7XG4gIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGFncmlkOiBDbHJEYXRhZ3JpZCkge31cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgaWYgKHRoaXMub3B0aW9ucy5zZXJ2ZXJEcml2ZW4pIHtcbiAgICAgIHRoaXMuaW5pdCgpO1xuICAgIH0gZWxzZSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5pbml0KCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluaXQoKSB7XG4gICAgY29uc3Qgdm9sYXRpbGVEYXRhU3RhdGUgPSB0aGlzLmdldFZvbGF0aWxlRGF0YVN0YXRlKCk7XG4gICAgY29uc3QgbG9jYWxTdG9yYWdlU3RhdGUgPSB0aGlzLmdldExvY2FsU3RvcmFnZVN0YXRlKCk7XG5cbiAgICB0aGlzLmluaXRGaWx0ZXIodm9sYXRpbGVEYXRhU3RhdGUpO1xuICAgIHRoaXMuaW5pdERhdGFncmlkUGVyc2lzdGVyKCk7XG5cbiAgICBpZiAodGhpcy5wYWdpbmF0aW9uICYmIHRoaXMucGFnaW5hdGlvbi5wYWdlKSB7XG4gICAgICB0aGlzLmluaXRQYWdlU2l6ZVBlcnNpc3Rlcihsb2NhbFN0b3JhZ2VTdGF0ZSk7XG4gICAgICB0aGlzLmluaXRDdXJyZW50UGFnZSh2b2xhdGlsZURhdGFTdGF0ZSk7XG4gICAgfVxuICAgIHRoaXMuY2FuU2hvd1BhZ2luYXRpb25EZXNjcmlwdGlvbiA9IHRydWU7XG4gIH1cblxuICAvKipcbiAgICogV2l0aCB0aGlzIG1ldGhvZCBmaWx0ZXJzIGNhbiBiZSBjbGVhcmVkXG4gICAqIEBwYXJhbSBrZXkgVGhlIGtleSBmb3IgY2xyU3RhdGVQZXJzaXN0ZW5jZUtleVxuICAgKiBAcGFyYW0gdXNlTG9jYWxTdG9yZU9ubHkgVGhlIGNsclVzZUxvY2FsU3RvcmVPbmx5IGluZGljYXRvclxuICAgKi9cbiAgc3RhdGljIGNsZWFyRmlsdGVycyhrZXk6IHN0cmluZywgdXNlTG9jYWxTdG9yZU9ubHk6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBjb25zdCBkYXRhID0gSlNPTi5wYXJzZSgodXNlTG9jYWxTdG9yZU9ubHkgPyBsb2NhbFN0b3JhZ2UgOiBzZXNzaW9uU3RvcmFnZSkuZ2V0SXRlbShrZXkpKSB8fCB7fTtcbiAgICBkYXRhLmNvbHVtbnMgPSB7fTtcbiAgICAodXNlTG9jYWxTdG9yZU9ubHkgPyBsb2NhbFN0b3JhZ2UgOiBzZXNzaW9uU3RvcmFnZSkuc2V0SXRlbShrZXksIEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFBhZ2VTaXplUGVyc2lzdGVyKHNhdmVkU3RhdGU6IENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsKSB7XG4gICAgLyogcGVyc2lzdCBwYWdlIHNpemUgY2hhbmdlcyBpbiBsb2NhbCBzdG9yYWdlICovXG4gICAgdGhpcy5wYWdpbmF0aW9uLnBhZ2Uuc2l6ZUNoYW5nZS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKHBhZ2VTaXplID0+IHtcbiAgICAgIGNvbnN0IHN0YXRlID0gdGhpcy5nZXRMb2NhbFN0b3JhZ2VTdGF0ZSgpO1xuICAgICAgc3RhdGUucGFnZVNpemUgPSBwYWdlU2l6ZTtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMub3B0aW9ucy5rZXksIEpTT04uc3RyaW5naWZ5KHN0YXRlKSk7XG4gICAgfSk7XG5cbiAgICAvKiBpbml0IHBhZ2Ugc2l6ZSBvZiBkYXRhZ3JpZCBpZiBhbHJlYWR5IHBlcnNpc3RlZCBpbiBsb2NhbCBzdG9yYWdlICovXG4gICAgaWYgKHNhdmVkU3RhdGUucGFnZVNpemUpIHtcbiAgICAgIHRoaXMucGFnaW5hdGlvbi5wYWdlLnNpemUgPSBzYXZlZFN0YXRlLnBhZ2VTaXplO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdEN1cnJlbnRQYWdlKHNhdmVkU3RhdGU6IENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsKSB7XG4gICAgLyogaW5pdCBjdXJyZW50IHBhZ2Ugb2YgZGF0YWdyaWQgaWYgYWxyZWFkeSBwZXJzaXN0ZWQgKi9cbiAgICBpZiAoc2F2ZWRTdGF0ZT8uY3VycmVudFBhZ2UpIHtcbiAgICAgIHRoaXMucGFnaW5hdGlvbi5wYWdlLmN1cnJlbnQgPSBzYXZlZFN0YXRlLmN1cnJlbnRQYWdlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdEZpbHRlcihzYXZlZFN0YXRlOiBDbHJEYXRhZ3JpZFN0YXRlUGVyc2lzdGVuY2VNb2RlbCkge1xuICAgIGlmIChzYXZlZFN0YXRlLmNvbHVtbnMpIHtcbiAgICAgIE9iamVjdC5rZXlzKHNhdmVkU3RhdGUuY29sdW1ucykuZm9yRWFjaChwcm9wID0+IHtcbiAgICAgICAgY29uc3QgZmlsdGVyID0gdGhpcy5nZXRGaWx0ZXIocHJvcCk7XG4gICAgICAgIGlmIChmaWx0ZXIpIHtcbiAgICAgICAgICBjb25zdCBzYXZlZEZpbHRlclZhbHVlID0gc2F2ZWRTdGF0ZS5jb2x1bW5zW3Byb3BdLmZpbHRlclZhbHVlIHx8IHt9O1xuICAgICAgICAgIE9iamVjdC5rZXlzKHNhdmVkRmlsdGVyVmFsdWUpXG4gICAgICAgICAgICAuZmlsdGVyKHZhbHVlS2V5ID0+IHZhbHVlS2V5ICE9PSAncHJvcGVydHknKVxuICAgICAgICAgICAgLmZvckVhY2godmFsdWVLZXkgPT4gKChmaWx0ZXIgYXMgYW55KVt2YWx1ZUtleV0gPSB0aGlzLnBhcnNlRmlsdGVyVmFsdWUoc2F2ZWRGaWx0ZXJWYWx1ZVt2YWx1ZUtleV0pKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdERhdGFncmlkUGVyc2lzdGVyKCkge1xuICAgIC8vIGRlbGF5IGlzIG5lZWRlZCwgYXMgb25EZXN0cm95IHRoZSBmaWx0ZXJzIGVtaXQgZW1wdHkgdmFsdWVzLlxuICAgIC8vIFNvIGRlbGF5IGl0IHRvIHRoZSBlbmQgb2YgdGhlIGN1cnJlbnQgY3ljbGUsIHNvIHRoZSBkaXJlY3RpdmUgaXMgYWxzbyBkZXN0cm95ZWQgYmVmb3JlIGl0IGdldHMgdGhlIG5leHQgdmFsdWVzXG4gICAgdGhpcy5kYXRhZ3JpZC5yZWZyZXNoLnBpcGUoZGVsYXkoMCksIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKGRnU3RhdGUgPT4ge1xuICAgICAgY29uc3Qgc3RhdGUgPSB0aGlzLmdldFZvbGF0aWxlRGF0YVN0YXRlKCk7XG5cbiAgICAgIHN0YXRlLmN1cnJlbnRQYWdlID0gZGdTdGF0ZS5wYWdlPy5jdXJyZW50O1xuICAgICAgc3RhdGUuY29sdW1ucyA9IHN0YXRlLmNvbHVtbnMgfHwge307XG4gICAgICBPYmplY3Qua2V5cyhzdGF0ZS5jb2x1bW5zKS5mb3JFYWNoKHByb3AgPT4gKHN0YXRlLmNvbHVtbnNbcHJvcF0uZmlsdGVyVmFsdWUgPSB1bmRlZmluZWQpKTtcbiAgICAgIGRnU3RhdGUuZmlsdGVycz8uZm9yRWFjaChmaWx0ZXIgPT4ge1xuICAgICAgICBjb25zdCBwcm9wZXJ0eSA9IHRoaXMuZ2V0RmlsdGVyUHJvcGVydHlOYW1lKGZpbHRlcik7XG4gICAgICAgIGlmIChwcm9wZXJ0eSkge1xuICAgICAgICAgIHN0YXRlLmNvbHVtbnNbcHJvcGVydHldID0gc3RhdGUuY29sdW1uc1twcm9wZXJ0eV0gfHwge307XG4gICAgICAgICAgc3RhdGUuY29sdW1uc1twcm9wZXJ0eV0uZmlsdGVyVmFsdWUgPSB0aGlzLmVucmljaEZpbHRlclZhbHVlKGZpbHRlcik7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICAodGhpcy51c2VMb2NhbFN0b3JlT25seSA/IGxvY2FsU3RvcmFnZSA6IHNlc3Npb25TdG9yYWdlKS5zZXRJdGVtKHRoaXMub3B0aW9ucy5rZXksIEpTT04uc3RyaW5naWZ5KHN0YXRlKSk7XG4gICAgICBpZiAodGhpcy5jYW5TaG93UGFnaW5hdGlvbkRlc2NyaXB0aW9uKSB7XG4gICAgICAgIHRoaXMudXBkYXRlUGFnaW5hdGlvbkRlc2NyaXB0aW9uKCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLmRhdGFncmlkLml0ZW1zLmNoYW5nZS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMudXBkYXRlUGFnaW5hdGlvbkRlc2NyaXB0aW9uKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFBhZ2luYXRpb24gZGVzY3JpcHRpb24gbXVzdCBiZSBzZXQgYnkgdGhpcyBkaXJlY3RpdmUsXG4gICAqIG90aGVyd2lzZSB3ZSBjYW4ndCB1cGRhdGUgZGF0YWdyaWQgdmFsdWVzIGZyb20gbG9jYWxTdG9yYWdlXG4gICAqIHdpdGhvdXQgZ2V0dGluZyBFeHByZXNzaW9uQ2hhbmdlZEFmdGVySXRIYXNCZWVuQ2hlY2tlZEVycm9yXG4gICAqL1xuICBwcml2YXRlIHVwZGF0ZVBhZ2luYXRpb25EZXNjcmlwdGlvbigpIHtcbiAgICBpZiAodGhpcy5wYWdpbmF0aW9uRWxlbSAmJiB0aGlzLnBhZ2luYXRpb24pIHtcbiAgICAgIGNvbnN0IHBhZ2luYXRpb25EZXNjRWxlbSA9ICg8SFRNTEVsZW1lbnQ+dGhpcy5wYWdpbmF0aW9uRWxlbS5uYXRpdmVFbGVtZW50KS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFxuICAgICAgICAncGFnaW5hdGlvbi1kZXNjcmlwdGlvbidcbiAgICAgICk/LlswXTtcbiAgICAgIGlmIChwYWdpbmF0aW9uRGVzY0VsZW0pIHtcbiAgICAgICAgaWYgKCF0aGlzLndhcm5lZEFib3V0Q3VzdG9tRGVzY3JpcHRpb24gJiYgcGFnaW5hdGlvbkRlc2NFbGVtLnRleHRDb250ZW50LnRyaW0oKS5sZW5ndGggIT09IDApIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgICAgJ1doZW4gdXNpbmcgY2xyU3RhdGVQZXJzaXN0ZW5jZUtleSBkaXJlY3RpdmUsIHlvdSBzaG91bGQgbm90IHVzZSBjdXN0b20gcGFnaW5hdGlvbiBkZXNjcmlwdGlvbicgK1xuICAgICAgICAgICAgICAnIGluc2lkZSBwYWdpbmF0aW9uIGNvbXBvbmVudCBjb250ZW50LCBidXQgdXNlIFtjbHJQYWdpbmF0aW9uRGVzY3JpcHRpb25dIG9uIGNsci1kYXRhZ3JpZCdcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMud2FybmVkQWJvdXRDdXN0b21EZXNjcmlwdGlvbiA9IHRydWU7XG4gICAgICAgIGlmICh0aGlzLnBhZ2luYXRpb25EZXNjcmlwdGlvbikge1xuICAgICAgICAgIHBhZ2luYXRpb25EZXNjRWxlbS50ZXh0Q29udGVudCA9IHRoaXMucGFnaW5hdGlvbkRlc2NyaXB0aW9uXG4gICAgICAgICAgICAucmVwbGFjZSgne3tmaXJzdH19JywgKHRoaXMucGFnaW5hdGlvbi5maXJzdEl0ZW0gKyAxKS50b1N0cmluZygpKVxuICAgICAgICAgICAgLnJlcGxhY2UoJ3t7bGFzdH19JywgKHRoaXMucGFnaW5hdGlvbi5sYXN0SXRlbSArIDEpLnRvU3RyaW5nKCkpXG4gICAgICAgICAgICAucmVwbGFjZSgne3t0b3RhbH19JywgdGhpcy5wYWdpbmF0aW9uLnRvdGFsSXRlbXMudG9TdHJpbmcoKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgc3RhdGUgb2Ygdm9sYXRpbGUgZGF0YS4gVGhpcyBjYW4gYmUgaW5mbHVlbmNlZCBieSBjbHJVc2VMb2NhbFN0b3JlT25seS5cbiAgICovXG4gIGdldFZvbGF0aWxlRGF0YVN0YXRlKCk6IENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsIHtcbiAgICByZXR1cm4gSlNPTi5wYXJzZSgodGhpcy51c2VMb2NhbFN0b3JlT25seSA/IGxvY2FsU3RvcmFnZSA6IHNlc3Npb25TdG9yYWdlKS5nZXRJdGVtKHRoaXMub3B0aW9ucy5rZXkpKSB8fCB7fTtcbiAgfVxuXG4gIGdldExvY2FsU3RvcmFnZVN0YXRlKCk6IENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsIHtcbiAgICByZXR1cm4gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLm9wdGlvbnMua2V5KSkgfHwge307XG4gIH1cblxuICAvKipcbiAgICogQXMgYSBkYXRlIGlzIHNlcmlhbGl6ZWQgYXMgc3RyaW5nLCBidXQgbm90IGRlc2VyaWFsaXplZCBhcyBkYXRlXG4gICAqIHdlIG5lZWQgdG8gYWRkIHNvbWUgbWV0YSBpbmZvcm1hdGlvbiB0byBkbyB0aGF0IG1hbnVhbGx5IGxhdGVyXG4gICAqL1xuICBwcml2YXRlIGVucmljaEZpbHRlclZhbHVlKGZpbHRlcjogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pIHtcbiAgICBjb25zdCByZXN1bHQgPSB7fSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuICAgIE9iamVjdC5rZXlzKGZpbHRlcikuZm9yRWFjaChcbiAgICAgIGtleSA9PlxuICAgICAgICAocmVzdWx0W2tleV0gPVxuICAgICAgICAgIGZpbHRlcltrZXldIGluc3RhbmNlb2YgRGF0ZVxuICAgICAgICAgICAgPyAoe1xuICAgICAgICAgICAgICAgIHR5cGU6IERBVEVfVFlQRSxcbiAgICAgICAgICAgICAgICB2YWx1ZTogZmlsdGVyW2tleV0sXG4gICAgICAgICAgICAgIH0gYXMgRmlsdGVyVmFsdWVXaXRoTWV0YWRhdGEpXG4gICAgICAgICAgICA6IGZpbHRlcltrZXldKVxuICAgICk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIFBhcnNlIGZpbHRlciB2YWx1ZXMgd2l0aCBtZXRhIGluZm9ybWF0aW9uIGxpa2UgZGF0ZSwgd2hpY2ggbmVlZHMgbWFudWFsIGRlc2VyaWFsaXphdGlvbiB0byBhIGRhdGUgb2JqZWN0XG4gICAqL1xuICBwcml2YXRlIHBhcnNlRmlsdGVyVmFsdWUodmFsdWU6IHVua25vd24pOiB1bmtub3duIHtcbiAgICByZXR1cm4gKHZhbHVlIGFzIEZpbHRlclZhbHVlV2l0aE1ldGFkYXRhKT8udHlwZSA9PT0gREFURV9UWVBFXG4gICAgICA/IG5ldyBEYXRlKCh2YWx1ZSBhcyBGaWx0ZXJWYWx1ZVdpdGhNZXRhZGF0YSkudmFsdWUgYXMgc3RyaW5nKVxuICAgICAgOiB2YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmlsdGVyKHByb3A6IHN0cmluZyk6IENsckRhdGFncmlkRmlsdGVySW50ZXJmYWNlPHVua25vd24sIHVua25vd24+IHtcbiAgICAvLyBnZXQgZGVmYXVsdCBmaWx0ZXIgb3IgY3VzdG9tIGZpbHRlclxuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmRhdGFncmlkLmNvbHVtbnMuZmluZChjb2wgPT4gY29sLmZpZWxkID09PSBwcm9wKT8uZmlsdGVyIHx8XG4gICAgICB0aGlzLmN1c3RvbUZpbHRlcnMuZmluZChmaWx0ZXIgPT4gdGhpcy5nZXRGaWx0ZXJQcm9wZXJ0eU5hbWUoZmlsdGVyLmZpbHRlcikgPT09IHByb3ApPy5maWx0ZXJcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGaWx0ZXJQcm9wZXJ0eU5hbWUoZmlsdGVyOiBDbHJEYXRhZ3JpZEZpbHRlckludGVyZmFjZTx1bmtub3duLCB1bmtub3duPik6IHN0cmluZyB7XG4gICAgLy8gZm9yIE5lc3RlZFByb3BlcnR5IHdlIG5lZWQgdG8gZ2V0IHRoZSBvcmlnaW5hbCBwcm9wZXJ0eVxuICAgIGNvbnN0IGZpbHRlcldpdGhQcm9wID0gZmlsdGVyIGFzIHVua25vd24gYXMgeyBwcm9wZXJ0eTogdW5rbm93biB9O1xuICAgIHJldHVybiAoKGZpbHRlcldpdGhQcm9wLnByb3BlcnR5IGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KT8ucHJvcCB8fCBmaWx0ZXJXaXRoUHJvcC5wcm9wZXJ0eSkgYXMgc3RyaW5nO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG59XG4iXX0=
|
|
243
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtcGVyc2lzdGVuY2Uta2V5LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL2RhdGFncmlkL2RhdGFncmlkLXN0YXRlLXBlcnNpc3RlbmNlL3N0YXRlLXBlcnNpc3RlbmNlLWtleS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFlBQVksRUFDWixlQUFlLEVBQ2YsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBRUwsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxXQUFXLEVBRVgsaUJBQWlCLEVBRWpCLHFCQUFxQixFQUNyQixvQkFBb0IsRUFFcEIsMEJBQTBCLEdBQzNCLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBRzNDLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQztBQVV6QixNQUFNLE9BQU8sNEJBQTRCO0lBOEJ2QyxZQUFvQixRQUFxQjtRQUFyQixhQUFRLEdBQVIsUUFBUSxDQUFhO1FBbEJ6QyxzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUFHMUIsMEJBQXFCLEdBQUcsRUFBRSxDQUFDO1FBVzNCLGlDQUE0QixHQUFHLEtBQUssQ0FBQztRQUNyQyxpQ0FBNEIsR0FBRyxLQUFLLENBQUM7UUFDckMsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFFYSxDQUFDO0lBRTdDLGtCQUFrQjtRQUNoQixJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFO1lBQzdCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNiO2FBQU07WUFDTCxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZ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QUlqQyxVQUFVO3NCQURULFlBQVk7dUJBQUMscUJBQXFCO2dCQUluQyxjQUFjO3NCQURiLFlBQVk7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQUl6RCxhQUFhO3NCQURaLGVBQWU7dUJBQUMsaUJBQWlCLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ29udGVudENoaWxkLFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgUXVlcnlMaXN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIENsckRhdGFncmlkLFxuICBDbHJEYXRhZ3JpZENvbXBhcmF0b3JJbnRlcmZhY2UsXG4gIENsckRhdGFncmlkRmlsdGVyLFxuICBDbHJEYXRhZ3JpZEZpbHRlckludGVyZmFjZSxcbiAgQ2xyRGF0YWdyaWRQYWdpbmF0aW9uLFxuICBDbHJEYXRhZ3JpZFNvcnRPcmRlcixcbiAgQ2xyRGF0YWdyaWRTdGF0ZUludGVyZmFjZSxcbiAgRGF0YWdyaWRQcm9wZXJ0eUNvbXBhcmF0b3IsXG59IGZyb20gJ0BjbHIvYW5ndWxhcic7XG5pbXBvcnQgeyBDbHJEYXRhZ3JpZFN0YXRlUGVyc2lzdGVuY2VNb2RlbCB9IGZyb20gJy4vZGF0YWdyaWQtc3RhdGUtcGVyc2lzdGVuY2UtbW9kZWwuaW50ZXJmYWNlJztcbmltcG9ydCB7IGRlbGF5LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBTdGF0ZVBlcnNpc3RlbmNlT3B0aW9ucyB9IGZyb20gJy4vc3RhdGUtcGVyc2lzdGVuY2Utb3B0aW9ucy5pbnRlcmZhY2UnO1xuXG5jb25zdCBEQVRFX1RZUEUgPSAnZGF0ZSc7XG5cbmludGVyZmFjZSBGaWx0ZXJWYWx1ZVdpdGhNZXRhZGF0YSB7XG4gIHR5cGU6IHN0cmluZztcbiAgdmFsdWU6IHVua25vd247XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tjbHJTdGF0ZVBlcnNpc3RlbmNlS2V5XScsXG59KVxuZXhwb3J0IGNsYXNzIFN0YXRlUGVyc2lzdGVuY2VLZXlEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuICAvKipcbiAgICogQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgcGVyc2lzdGVuY2UuXG4gICAqICdLZXknIHJlcHJlc2VudHMgdGhlIGxvY2FsIHN0b3JhZ2Uga2V5IHVuZGVyIHdoaWNoIHRoZSBwZXJzaXN0ZW5jZSBzdGF0ZSBpcyBzdG9yZWQuXG4gICAqXG4gICAqIE9wdGlvbmFsIGZpZWxkcyB3aXRoIHRoZSAncGVyc2lzdCcgcHJlZml4IHRvZ2dsZSB0aGUgcGVyc2lzdGVuY2Ugb2YgdGhlIHJlc3BlY3RpdmUgZGF0YWdyaWQgZnVuY3Rpb25hbGl0eSxcbiAgICogdGhlIGRlZmF1bHQgdmFsdWUgaXMgYWx3YXlzICd0cnVlJy5cbiAgICovXG4gIEBJbnB1dCgnY2xyU3RhdGVQZXJzaXN0ZW5jZUtleScpXG4gIG9wdGlvbnM6IFN0YXRlUGVyc2lzdGVuY2VPcHRpb25zO1xuXG4gIEBJbnB1dCgnY2xyVXNlTG9jYWxTdG9yZU9ubHknKVxuICB1c2VMb2NhbFN0b3JlT25seSA9IGZhbHNlO1xuXG4gIEBJbnB1dCgnY2xyUGFnaW5hdGlvbkRlc2NyaXB0aW9uJylcbiAgcGFnaW5hdGlvbkRlc2NyaXB0aW9uID0gJyc7XG5cbiAgQENvbnRlbnRDaGlsZChDbHJEYXRhZ3JpZFBhZ2luYXRpb24pXG4gIHBhZ2luYXRpb246IENsckRhdGFncmlkUGFnaW5hdGlvbjtcblxuICBAQ29udGVudENoaWxkKENsckRhdGFncmlkUGFnaW5hdGlvbiwgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gIHBhZ2luYXRpb25FbGVtOiBFbGVtZW50UmVmO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oQ2xyRGF0YWdyaWRGaWx0ZXIsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgY3VzdG9tRmlsdGVyczogUXVlcnlMaXN0PENsckRhdGFncmlkRmlsdGVyPjtcblxuICBjYW5TaG93UGFnaW5hdGlvbkRlc2NyaXB0aW9uID0gZmFsc2U7XG4gIHdhcm5lZEFib3V0Q3VzdG9tRGVzY3JpcHRpb24gPSBmYWxzZTtcbiAgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZGF0YWdyaWQ6IENsckRhdGFncmlkKSB7fVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICBpZiAodGhpcy5vcHRpb25zLnNlcnZlckRyaXZlbikge1xuICAgICAgdGhpcy5pbml0KCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmluaXQoKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdCgpIHtcbiAgICBjb25zdCB2b2xhdGlsZURhdGFTdGF0ZSA9IHRoaXMuZ2V0Vm9sYXRpbGVEYXRhU3RhdGUoKTtcbiAgICBjb25zdCBsb2NhbFN0b3JhZ2VTdGF0ZSA9IHRoaXMuZ2V0TG9jYWxTdG9yYWdlU3RhdGUoKTtcblxuICAgIHRoaXMuaW5pdEZpbHRlcih2b2xhdGlsZURhdGFTdGF0ZSk7XG4gICAgdGhpcy5pbml0U29ydGluZyhsb2NhbFN0b3JhZ2VTdGF0ZSk7XG4gICAgdGhpcy5pbml0RGF0YWdyaWRQZXJzaXN0ZXIoKTtcblxuICAgIGNvbnN0IHBhZ2luYXRpb25QZXJzaXN0ZW5jZUVuYWJsZWQgPSB0aGlzLm9wdGlvbnMucGVyc2lzdFBhZ2luYXRpb24gPz8gdHJ1ZTtcbiAgICBpZiAodGhpcy5wYWdpbmF0aW9uPy5wYWdlICYmIHBhZ2luYXRpb25QZXJzaXN0ZW5jZUVuYWJsZWQpIHtcbiAgICAgIHRoaXMuaW5pdFBhZ2VTaXplUGVyc2lzdGVyKGxvY2FsU3RvcmFnZVN0YXRlKTtcbiAgICAgIHRoaXMuaW5pdEN1cnJlbnRQYWdlKHZvbGF0aWxlRGF0YVN0YXRlKTtcbiAgICB9XG4gICAgdGhpcy5jYW5TaG93UGFnaW5hdGlvbkRlc2NyaXB0aW9uID0gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaXRoIHRoaXMgbWV0aG9kIGZpbHRlcnMgY2FuIGJlIGNsZWFyZWRcbiAgICogQHBhcmFtIGtleSBUaGUga2V5IGZvciBjbHJTdGF0ZVBlcnNpc3RlbmNlS2V5XG4gICAqIEBwYXJhbSB1c2VMb2NhbFN0b3JlT25seSBUaGUgY2xyVXNlTG9jYWxTdG9yZU9ubHkgaW5kaWNhdG9yXG4gICAqL1xuICBzdGF0aWMgY2xlYXJGaWx0ZXJzKGtleTogc3RyaW5nLCB1c2VMb2NhbFN0b3JlT25seTogYm9vbGVhbik6IHZvaWQge1xuICAgIGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKCh1c2VMb2NhbFN0b3JlT25seSA/IGxvY2FsU3RvcmFnZSA6IHNlc3Npb25TdG9yYWdlKS5nZXRJdGVtKGtleSkpIHx8IHt9O1xuICAgIGRhdGEuY29sdW1ucyA9IHt9O1xuICAgICh1c2VMb2NhbFN0b3JlT25seSA/IGxvY2FsU3RvcmFnZSA6IHNlc3Npb25TdG9yYWdlKS5zZXRJdGVtKGtleSwgSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0UGFnZVNpemVQZXJzaXN0ZXIoc2F2ZWRTdGF0ZTogQ2xyRGF0YWdyaWRTdGF0ZVBlcnNpc3RlbmNlTW9kZWwpIHtcbiAgICAvKiBwZXJzaXN0IHBhZ2Ugc2l6ZSBjaGFuZ2VzIGluIGxvY2FsIHN0b3JhZ2UgKi9cbiAgICB0aGlzLnBhZ2luYXRpb24ucGFnZS5zaXplQ2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUocGFnZVNpemUgPT4ge1xuICAgICAgY29uc3Qgc3RhdGUgPSB0aGlzLmdldExvY2FsU3RvcmFnZVN0YXRlKCk7XG4gICAgICBzdGF0ZS5wYWdlU2l6ZSA9IHBhZ2VTaXplO1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5vcHRpb25zLmtleSwgSlNPTi5zdHJpbmdpZnkoc3RhdGUpKTtcbiAgICB9KTtcblxuICAgIC8qIGluaXQgcGFnZSBzaXplIG9mIGRhdGFncmlkIGlmIGFscmVhZHkgcGVyc2lzdGVkIGluIGxvY2FsIHN0b3JhZ2UgKi9cbiAgICBpZiAoc2F2ZWRTdGF0ZS5wYWdlU2l6ZSkge1xuICAgICAgdGhpcy5wYWdpbmF0aW9uLnBhZ2Uuc2l6ZSA9IHNhdmVkU3RhdGUucGFnZVNpemU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0Q3VycmVudFBhZ2Uoc2F2ZWRTdGF0ZTogQ2xyRGF0YWdyaWRTdGF0ZVBlcnNpc3RlbmNlTW9kZWwpIHtcbiAgICAvKiBpbml0IGN1cnJlbnQgcGFnZSBvZiBkYXRhZ3JpZCBpZiBhbHJlYWR5IHBlcnNpc3RlZCAqL1xuICAgIGlmIChzYXZlZFN0YXRlPy5jdXJyZW50UGFnZSkge1xuICAgICAgdGhpcy5wYWdpbmF0aW9uLnBhZ2UuY3VycmVudCA9IHNhdmVkU3RhdGUuY3VycmVudFBhZ2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0RmlsdGVyKHNhdmVkU3RhdGU6IENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsKTogdm9pZCB7XG4gICAgY29uc3QgZmlsdGVyUGVyc2lzdGVuY2VFbmFibGVkID0gdGhpcy5vcHRpb25zLnBlcnNpc3RGaWx0ZXJzID8/IHRydWU7XG4gICAgaWYgKHNhdmVkU3RhdGUuY29sdW1ucyAmJiBmaWx0ZXJQZXJzaXN0ZW5jZUVuYWJsZWQpIHtcbiAgICAgIE9iamVjdC5rZXlzKHNhdmVkU3RhdGUuY29sdW1ucykuZm9yRWFjaChwcm9wID0+IHtcbiAgICAgICAgY29uc3QgZmlsdGVyID0gdGhpcy5nZXRGaWx0ZXIocHJvcCk7XG4gICAgICAgIGlmIChmaWx0ZXIpIHtcbiAgICAgICAgICBjb25zdCBzYXZlZEZpbHRlclZhbHVlID0gc2F2ZWRTdGF0ZS5jb2x1bW5zW3Byb3BdLmZpbHRlclZhbHVlIHx8IHt9O1xuICAgICAgICAgIE9iamVjdC5rZXlzKHNhdmVkRmlsdGVyVmFsdWUpXG4gICAgICAgICAgICAuZmlsdGVyKHZhbHVlS2V5ID0+IHZhbHVlS2V5ICE9PSAncHJvcGVydHknKVxuICAgICAgICAgICAgLmZvckVhY2godmFsdWVLZXkgPT4gKChmaWx0ZXIgYXMgYW55KVt2YWx1ZUtleV0gPSB0aGlzLnBhcnNlRmlsdGVyVmFsdWUoc2F2ZWRGaWx0ZXJWYWx1ZVt2YWx1ZUtleV0pKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdFNvcnRpbmcoc2F2ZWRTdGF0ZTogQ2xyRGF0YWdyaWRTdGF0ZVBlcnNpc3RlbmNlTW9kZWwpOiB2b2lkIHtcbiAgICBjb25zdCBzb3J0UGVyc2lzdGVuY2VFbmFibGVkID0gdGhpcy5vcHRpb25zLnBlcnNpc3RTb3J0ID8/IHRydWU7XG4gICAgaWYgKHNhdmVkU3RhdGUuc29ydEJ5ICYmIHNvcnRQZXJzaXN0ZW5jZUVuYWJsZWQpIHtcbiAgICAgIHRoaXMuZGF0YWdyaWQuY29sdW1ucy5mb3JFYWNoKGNvbHVtbiA9PiB7XG4gICAgICAgIGlmICh0aGlzLmdldFNvcnRQcm9wZXJ0eShjb2x1bW4uc29ydEJ5KSA9PT0gc2F2ZWRTdGF0ZS5zb3J0QnkpIHtcbiAgICAgICAgICBjb2x1bW4uc29ydE9yZGVyID0gc2F2ZWRTdGF0ZS5zb3J0UmV2ZXJzZSA/IENsckRhdGFncmlkU29ydE9yZGVyLkRFU0MgOiBDbHJEYXRhZ3JpZFNvcnRPcmRlci5BU0M7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29sdW1uLnNvcnRPcmRlciA9IENsckRhdGFncmlkU29ydE9yZGVyLlVOU09SVEVEO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluaXREYXRhZ3JpZFBlcnNpc3RlcigpIHtcbiAgICAvLyBkZWxheSBpcyBuZWVkZWQsIGFzIG9uRGVzdHJveSB0aGUgZmlsdGVycyBlbWl0IGVtcHR5IHZhbHVlcy5cbiAgICAvLyBTbyBkZWxheSBpdCB0byB0aGUgZW5kIG9mIHRoZSBjdXJyZW50IGN5Y2xlLCBzbyB0aGUgZGlyZWN0aXZlIGlzIGFsc28gZGVzdHJveWVkIGJlZm9yZSBpdCBnZXRzIHRoZSBuZXh0IHZhbHVlc1xuICAgIHRoaXMuZGF0YWdyaWQucmVmcmVzaC5waXBlKGRlbGF5KDApLCB0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZShkZ1N0YXRlID0+IHtcbiAgICAgIHRoaXMucGVyc2lzdEZpbHRlcnNBbmRDdXJyZW50UGFnZShkZ1N0YXRlKTtcbiAgICAgIHRoaXMucGVyc2lzdFNvcnRpbmcoZGdTdGF0ZSk7XG5cbiAgICAgIGlmICh0aGlzLmNhblNob3dQYWdpbmF0aW9uRGVzY3JpcHRpb24pIHtcbiAgICAgICAgdGhpcy51cGRhdGVQYWdpbmF0aW9uRGVzY3JpcHRpb24oKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuZGF0YWdyaWQuaXRlbXMuY2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy51cGRhdGVQYWdpbmF0aW9uRGVzY3JpcHRpb24oKSk7XG4gIH1cblxuICBwcml2YXRlIHBlcnNpc3RGaWx0ZXJzQW5kQ3VycmVudFBhZ2UoZGdTdGF0ZTogQ2xyRGF0YWdyaWRTdGF0ZUludGVyZmFjZTx1bmtub3duPik6IHZvaWQge1xuICAgIGNvbnN0IGZpbHRlclBlcnNpc3RlbmNlRW5hYmxlZCA9IHRoaXMub3B0aW9ucy5wZXJzaXN0RmlsdGVycyA/PyB0cnVlO1xuICAgIGNvbnN0IHBhZ2luYXRpb25QZXJzaXN0ZW5jZUVuYWJsZWQgPSB0aGlzLm9wdGlvbnMucGVyc2lzdFBhZ2luYXRpb24gPz8gdHJ1ZTtcblxuICAgIGNvbnN0IHN0YXRlID0gdGhpcy5nZXRWb2xhdGlsZURhdGFTdGF0ZSgpO1xuICAgIHN0YXRlLmNvbHVtbnMgPSBzdGF0ZS5jb2x1bW5zIHx8IHt9O1xuXG4gICAgaWYgKHBhZ2luYXRpb25QZXJzaXN0ZW5jZUVuYWJsZWQpIHtcbiAgICAgIHN0YXRlLmN1cnJlbnRQYWdlID0gZGdTdGF0ZS5wYWdlPy5jdXJyZW50O1xuICAgIH1cblxuICAgIGlmIChmaWx0ZXJQZXJzaXN0ZW5jZUVuYWJsZWQpIHtcbiAgICAgIE9iamVjdC5rZXlzKHN0YXRlLmNvbHVtbnMpLmZvckVhY2gocHJvcCA9PiAoc3RhdGUuY29sdW1uc1twcm9wXS5maWx0ZXJWYWx1ZSA9IHVuZGVmaW5lZCkpO1xuICAgICAgZGdTdGF0ZS5maWx0ZXJzPy5mb3JFYWNoKGZpbHRlciA9PiB7XG4gICAgICAgIGNvbnN0IHByb3BlcnR5ID0gdGhpcy5nZXRGaWx0ZXJQcm9wZXJ0eU5hbWUoZmlsdGVyKTtcbiAgICAgICAgaWYgKHByb3BlcnR5KSB7XG4gICAgICAgICAgc3RhdGUuY29sdW1uc1twcm9wZXJ0eV0gPSBzdGF0ZS5jb2x1bW5zW3Byb3BlcnR5XSB8fCB7fTtcbiAgICAgICAgICBzdGF0ZS5jb2x1bW5zW3Byb3BlcnR5XS5maWx0ZXJWYWx1ZSA9IHRoaXMuZW5yaWNoRmlsdGVyVmFsdWUoZmlsdGVyKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgKHRoaXMudXNlTG9jYWxTdG9yZU9ubHkgPyBsb2NhbFN0b3JhZ2UgOiBzZXNzaW9uU3RvcmFnZSkuc2V0SXRlbSh0aGlzLm9wdGlvbnMua2V5LCBKU09OLnN0cmluZ2lmeShzdGF0ZSkpO1xuICB9XG5cbiAgcHJpdmF0ZSBwZXJzaXN0U29ydGluZyhkZ1N0YXRlOiBDbHJEYXRhZ3JpZFN0YXRlSW50ZXJmYWNlPHVua25vd24+KTogdm9pZCB7XG4gICAgY29uc3Qgc29ydFBlcnNpc3RlbmNlRW5hYmxlZCA9IHRoaXMub3B0aW9ucy5wZXJzaXN0U29ydCA/PyB0cnVlO1xuICAgIGlmIChzb3J0UGVyc2lzdGVuY2VFbmFibGVkKSB7XG4gICAgICBjb25zdCBzdGF0ZSA9IHRoaXMuZ2V0TG9jYWxTdG9yYWdlU3RhdGUoKTtcbiAgICAgIHN0YXRlLnNvcnRCeSA9IHRoaXMuZ2V0U29ydFByb3BlcnR5KGRnU3RhdGUuc29ydD8uYnkpO1xuICAgICAgc3RhdGUuc29ydFJldmVyc2UgPSBkZ1N0YXRlLnNvcnQ/LnJldmVyc2U7XG5cbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMub3B0aW9ucy5rZXksIEpTT04uc3RyaW5naWZ5KHN0YXRlKSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFBhZ2luYXRpb24gZGVzY3JpcHRpb24gbXVzdCBiZSBzZXQgYnkgdGhpcyBkaXJlY3RpdmUsXG4gICAqIG90aGVyd2lzZSB3ZSBjYW4ndCB1cGRhdGUgZGF0YWdyaWQgdmFsdWVzIGZyb20gbG9jYWxTdG9yYWdlXG4gICAqIHdpdGhvdXQgZ2V0dGluZyBFeHByZXNzaW9uQ2hhbmdlZEFmdGVySXRIYXNCZWVuQ2hlY2tlZEVycm9yXG4gICAqL1xuICBwcml2YXRlIHVwZGF0ZVBhZ2luYXRpb25EZXNjcmlwdGlvbigpIHtcbiAgICBpZiAodGhpcy5wYWdpbmF0aW9uRWxlbSAmJiB0aGlzLnBhZ2luYXRpb24pIHtcbiAgICAgIGNvbnN0IHBhZ2luYXRpb25EZXNjRWxlbSA9ICg8SFRNTEVsZW1lbnQ+dGhpcy5wYWdpbmF0aW9uRWxlbS5uYXRpdmVFbGVtZW50KS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKFxuICAgICAgICAncGFnaW5hdGlvbi1kZXNjcmlwdGlvbidcbiAgICAgICk/LlswXTtcbiAgICAgIGlmIChwYWdpbmF0aW9uRGVzY0VsZW0pIHtcbiAgICAgICAgaWYgKCF0aGlzLndhcm5lZEFib3V0Q3VzdG9tRGVzY3JpcHRpb24gJiYgcGFnaW5hdGlvbkRlc2NFbGVtLnRleHRDb250ZW50LnRyaW0oKS5sZW5ndGggIT09IDApIHtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICAgICAgJ1doZW4gdXNpbmcgY2xyU3RhdGVQZXJzaXN0ZW5jZUtleSBkaXJlY3RpdmUsIHlvdSBzaG91bGQgbm90IHVzZSBjdXN0b20gcGFnaW5hdGlvbiBkZXNjcmlwdGlvbicgK1xuICAgICAgICAgICAgICAnIGluc2lkZSBwYWdpbmF0aW9uIGNvbXBvbmVudCBjb250ZW50LCBidXQgdXNlIFtjbHJQYWdpbmF0aW9uRGVzY3JpcHRpb25dIG9uIGNsci1kYXRhZ3JpZCdcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMud2FybmVkQWJvdXRDdXN0b21EZXNjcmlwdGlvbiA9IHRydWU7XG4gICAgICAgIGlmICh0aGlzLnBhZ2luYXRpb25EZXNjcmlwdGlvbikge1xuICAgICAgICAgIHBhZ2luYXRpb25EZXNjRWxlbS50ZXh0Q29udGVudCA9IHRoaXMucGFnaW5hdGlvbkRlc2NyaXB0aW9uXG4gICAgICAgICAgICAucmVwbGFjZSgne3tmaXJzdH19JywgKHRoaXMucGFnaW5hdGlvbi5maXJzdEl0ZW0gKyAxKS50b1N0cmluZygpKVxuICAgICAgICAgICAgLnJlcGxhY2UoJ3t7bGFzdH19JywgKHRoaXMucGFnaW5hdGlvbi5sYXN0SXRlbSArIDEpLnRvU3RyaW5nKCkpXG4gICAgICAgICAgICAucmVwbGFjZSgne3t0b3RhbH19JywgdGhpcy5wYWdpbmF0aW9uLnRvdGFsSXRlbXMudG9TdHJpbmcoKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgc3RhdGUgb2Ygdm9sYXRpbGUgZGF0YS4gVGhpcyBjYW4gYmUgaW5mbHVlbmNlZCBieSBjbHJVc2VMb2NhbFN0b3JlT25seS5cbiAgICovXG4gIGdldFZvbGF0aWxlRGF0YVN0YXRlKCk6IENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsIHtcbiAgICByZXR1cm4gSlNPTi5wYXJzZSgodGhpcy51c2VMb2NhbFN0b3JlT25seSA/IGxvY2FsU3RvcmFnZSA6IHNlc3Npb25TdG9yYWdlKS5nZXRJdGVtKHRoaXMub3B0aW9ucy5rZXkpKSB8fCB7fTtcbiAgfVxuXG4gIGdldExvY2FsU3RvcmFnZVN0YXRlKCk6IENsckRhdGFncmlkU3RhdGVQZXJzaXN0ZW5jZU1vZGVsIHtcbiAgICByZXR1cm4gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLm9wdGlvbnMua2V5KSkgfHwge307XG4gIH1cblxuICAvKipcbiAgICogQXMgYSBkYXRlIGlzIHNlcmlhbGl6ZWQgYXMgc3RyaW5nLCBidXQgbm90IGRlc2VyaWFsaXplZCBhcyBkYXRlXG4gICAqIHdlIG5lZWQgdG8gYWRkIHNvbWUgbWV0YSBpbmZvcm1hdGlvbiB0byBkbyB0aGF0IG1hbnVhbGx5IGxhdGVyXG4gICAqL1xuICBwcml2YXRlIGVucmljaEZpbHRlclZhbHVlKGZpbHRlcjogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pIHtcbiAgICBjb25zdCByZXN1bHQgPSB7fSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuICAgIE9iamVjdC5rZXlzKGZpbHRlcikuZm9yRWFjaChcbiAgICAgIGtleSA9PlxuICAgICAgICAocmVzdWx0W2tleV0gPVxuICAgICAgICAgIGZpbHRlcltrZXldIGluc3RhbmNlb2YgRGF0ZVxuICAgICAgICAgICAgPyAoe1xuICAgICAgICAgICAgICAgIHR5cGU6IERBVEVfVFlQRSxcbiAgICAgICAgICAgICAgICB2YWx1ZTogZmlsdGVyW2tleV0sXG4gICAgICAgICAgICAgIH0gYXMgRmlsdGVyVmFsdWVXaXRoTWV0YWRhdGEpXG4gICAgICAgICAgICA6IGZpbHRlcltrZXldKVxuICAgICk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgLyoqXG4gICAqIFBhcnNlIGZpbHRlciB2YWx1ZXMgd2l0aCBtZXRhIGluZm9ybWF0aW9uIGxpa2UgZGF0ZSwgd2hpY2ggbmVlZHMgbWFudWFsIGRlc2VyaWFsaXphdGlvbiB0byBhIGRhdGUgb2JqZWN0XG4gICAqL1xuICBwcml2YXRlIHBhcnNlRmlsdGVyVmFsdWUodmFsdWU6IHVua25vd24pOiB1bmtub3duIHtcbiAgICByZXR1cm4gKHZhbHVlIGFzIEZpbHRlclZhbHVlV2l0aE1ldGFkYXRhKT8udHlwZSA9PT0gREFURV9UWVBFXG4gICAgICA/IG5ldyBEYXRlKCh2YWx1ZSBhcyBGaWx0ZXJWYWx1ZVdpdGhNZXRhZGF0YSkudmFsdWUgYXMgc3RyaW5nKVxuICAgICAgOiB2YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RmlsdGVyKHByb3A6IHN0cmluZyk6IENsckRhdGFncmlkRmlsdGVySW50ZXJmYWNlPHVua25vd24sIHVua25vd24+IHtcbiAgICAvLyBnZXQgZGVmYXVsdCBmaWx0ZXIgb3IgY3VzdG9tIGZpbHRlclxuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmRhdGFncmlkLmNvbHVtbnMuZmluZChjb2wgPT4gY29sLmZpZWxkID09PSBwcm9wKT8uZmlsdGVyIHx8XG4gICAgICB0aGlzLmN1c3RvbUZpbHRlcnMuZmluZChmaWx0ZXIgPT4gdGhpcy5nZXRGaWx0ZXJQcm9wZXJ0eU5hbWUoZmlsdGVyLmZpbHRlcikgPT09IHByb3ApPy5maWx0ZXJcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGaWx0ZXJQcm9wZXJ0eU5hbWUoZmlsdGVyOiBDbHJEYXRhZ3JpZEZpbHRlckludGVyZmFjZTx1bmtub3duLCB1bmtub3duPik6IHN0cmluZyB7XG4gICAgLy8gZm9yIE5lc3RlZFByb3BlcnR5IHdlIG5lZWQgdG8gZ2V0IHRoZSBvcmlnaW5hbCBwcm9wZXJ0eVxuICAgIGNvbnN0IGZpbHRlcldpdGhQcm9wID0gZmlsdGVyIGFzIHVua25vd24gYXMgeyBwcm9wZXJ0eTogdW5rbm93biB9O1xuICAgIHJldHVybiAoKGZpbHRlcldpdGhQcm9wLnByb3BlcnR5IGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KT8ucHJvcCB8fCBmaWx0ZXJXaXRoUHJvcC5wcm9wZXJ0eSkgYXMgc3RyaW5nO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTb3J0UHJvcGVydHkoc29ydEJ5OiBDbHJEYXRhZ3JpZENvbXBhcmF0b3JJbnRlcmZhY2U8dW5rbm93bj4gfCBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGlmIChzb3J0QnkpIHtcbiAgICAgIGlmICh0eXBlb2Ygc29ydEJ5ID09PSAnc3RyaW5nJykge1xuICAgICAgICByZXR1cm4gc29ydEJ5O1xuICAgICAgfVxuICAgICAgaWYgKHNvcnRCeSBpbnN0YW5jZW9mIERhdGFncmlkUHJvcGVydHlDb21wYXJhdG9yKSB7XG4gICAgICAgIHJldHVybiBzb3J0QnkucHJvcDtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtcGVyc2lzdGVuY2Utb3B0aW9ucy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY2xyLWFkZG9ucy9kYXRhZ3JpZC9kYXRhZ3JpZC1zdGF0ZS1wZXJzaXN0ZW5jZS9zdGF0ZS1wZXJzaXN0ZW5jZS1vcHRpb25zLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBTdGF0ZVBlcnNpc3RlbmNlT3B0aW9ucyB7XG4gIGtleTogc3RyaW5nO1xuICBzZXJ2ZXJEcml2ZW46IGJvb2xlYW47XG4gIHBlcnNpc3RGaWx0ZXJzPzogYm9vbGVhbjtcbiAgcGVyc2lzdFBhZ2luYXRpb24/OiBib29sZWFuO1xuICBwZXJzaXN0U29ydD86IGJvb2xlYW47XG4gIHBlcnNpc3RIaWRkZW5Db2x1bW5zPzogYm9vbGVhbjtcbn1cbiJdfQ==
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Copyright (c) 2018-
|
|
2
|
+
* Copyright (c) 2018-2023 Porsche Informatik. All Rights Reserved.
|
|
3
3
|
* This software is released under MIT license.
|
|
4
4
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
5
5
|
*/
|
|
6
|
-
import { Directive, ElementRef, Renderer2 } from '@angular/core';
|
|
6
|
+
import { Directive, ElementRef, Optional, Renderer2 } from '@angular/core';
|
|
7
7
|
import { NgControl } from '@angular/forms';
|
|
8
8
|
import { Subject } from 'rxjs';
|
|
9
9
|
import { takeUntil } from 'rxjs/operators';
|
|
@@ -88,7 +88,7 @@ export class ClrSearchField {
|
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
90
|
}
|
|
91
|
-
ClrSearchField.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrSearchField, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.NgControl }], target: i0.ɵɵFactoryTarget.Directive });
|
|
91
|
+
ClrSearchField.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrSearchField, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.NgControl, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
92
92
|
ClrSearchField.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.1", type: ClrSearchField, selector: "[clrSearch]", host: { properties: { "class.search-input": "true" } }, ngImport: i0 });
|
|
93
93
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrSearchField, decorators: [{
|
|
94
94
|
type: Directive,
|
|
@@ -96,5 +96,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
|
|
|
96
96
|
selector: '[clrSearch]',
|
|
97
97
|
host: { '[class.search-input]': 'true' },
|
|
98
98
|
}]
|
|
99
|
-
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.NgControl
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2Nsci1hZGRvbnMvc2VhcmNoZmllbGQvc2VhcmNoLWZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBcUIsU0FBUyxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNuRyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQU0zQyxNQUFNLE9BQU8sY0FBYztJQVN6QixZQUFvQixRQUFtQixFQUFVLE9BQW1CLEVBQVUsU0FBb0I7UUFBOUUsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUFVLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFBVSxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBRmxHLGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRXFFLENBQUM7SUFFdEcsUUFBUTtRQUNOLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFMUQsK0VBQStFO1FBQy9FLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNsQixJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUNoSDthQUFNO1lBQ0wsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FDckYsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUM1QyxDQUFDO1NBQ0g7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0IsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1QyxLQUFLLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxNQUFlO1FBQ3RDLElBQUksTUFBTSxFQUFFO1lBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1NBQzVFO2FBQU07WUFDTCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsV0FBVyxDQUFDLENBQUM7U0FDL0U7SUFDSCxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLG1EQUFtRDtRQUNuRCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7UUFFM0QsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDdEIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMxRCxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQztZQUNoRSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ2pELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFDdEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUMsQ0FBQztZQUN0RCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLGVBQWUsQ0FBQyxDQUFDO1lBQzNELElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7WUFFM0UsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUM1RCxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztZQUNoRSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNoRSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQzVEO0lBQ0gsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7UUFFM0QsNkNBQTZDO1FBQzdDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDNUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUMsQ0FBQztZQUMzRCxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztZQUNqRSxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQ3pGO0lBQ0gsQ0FBQztJQUVPLGlCQUFpQixDQUFDLFlBQWlCO1FBQ3pDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRSxzQkFBc0IsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFTyxjQUFjO1FBQ3BCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDckIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQzs7MkdBN0ZVLGNBQWM7K0ZBQWQsY0FBYzsyRkFBZCxjQUFjO2tCQUoxQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixJQUFJLEVBQUUsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLEVBQUU7aUJBQ3pDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDIyIFBvcnNjaGUgSW5mb3JtYXRpay4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBPbkRlc3Ryb3ksIE9uSW5pdCwgUmVuZGVyZXIyLCBBZnRlclZpZXdJbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tjbHJTZWFyY2hdJyxcbiAgaG9zdDogeyAnW2NsYXNzLnNlYXJjaC1pbnB1dF0nOiAndHJ1ZScgfSxcbn0pXG5leHBvcnQgY2xhc3MgQ2xyU2VhcmNoRmllbGQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XG4gIHByaXZhdGUga2V5dXBMaXN0ZW5lcjogKCkgPT4gdm9pZDtcblxuICBwcml2YXRlIGRlbGV0ZVN5bWJvbDogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgZGVsZXRlQnV0dG9uOiBIVE1MRWxlbWVudDtcbiAgcHJpdmF0ZSBzZWFyY2hTeW1ib2w6IEhUTUxFbGVtZW50O1xuXG4gIGRlc3Ryb3llZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBwcml2YXRlIGlucHV0RWw6IEVsZW1lbnRSZWYsIHByaXZhdGUgbmdDb250cm9sOiBOZ0NvbnRyb2wpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRIYXNWYWx1ZUNsYXNzKCEhdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQudmFsdWUpO1xuXG4gICAgLy8gdXNlIGFuZ3VsYXIgZm9ybSBjb250cm9sIGZvciBjaGFuZ2UgZGV0ZWN0aW9uIGFuZCBpbnB1dCBsaXN0ZW5lciBhcyBmYWxsYmFja1xuICAgIGlmICh0aGlzLm5nQ29udHJvbCkge1xuICAgICAgdGhpcy5uZ0NvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSkuc3Vic2NyaWJlKHZhbHVlID0+IHRoaXMuc2V0SGFzVmFsdWVDbGFzcyghIXZhbHVlKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMua2V5dXBMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LCAnaW5wdXQnLCBldmVudCA9PlxuICAgICAgICB0aGlzLnNldEhhc1ZhbHVlQ2xhc3MoISFldmVudC50YXJnZXQudmFsdWUpXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmFkZENsYXNzVG9XcmFwcGVyKHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LnBhcmVudE5vZGUpO1xuICAgIHRoaXMuaW5qZWN0U2VhcmNoSWNvbigpO1xuICAgIHRoaXMuaW5qZWN0RGVsZXRlSWNvbigpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXRhY2hMaXN0ZW5lcigpO1xuICAgIHRoaXMuZGVzdHJveWVkLm5leHQoKTtcbiAgICB0aGlzLmRlc3Ryb3llZC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgY2xlYXJTZWFyY2hJbnB1dCgpOiB2b2lkIHtcbiAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LCAndmFsdWUnLCAnJyk7XG4gICAgdGhpcy5zZXRIYXNWYWx1ZUNsYXNzKGZhbHNlKTtcbiAgICBjb25zdCBldmVudCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KCdFdmVudCcpO1xuICAgIGV2ZW50LmluaXRFdmVudCgnaW5wdXQnLCBmYWxzZSwgZmFsc2UpO1xuICAgIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LmRpc3BhdGNoRXZlbnQoZXZlbnQpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRIYXNWYWx1ZUNsYXNzKGFjdGl2ZTogYm9vbGVhbik6IHZvaWQge1xuICAgIGlmIChhY3RpdmUpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQucGFyZW50Tm9kZSwgJ2hhcy12YWx1ZScpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LnBhcmVudE5vZGUsICdoYXMtdmFsdWUnKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluamVjdERlbGV0ZUljb24oKTogdm9pZCB7XG4gICAgLy8gR2V0IHRoZSBpbnB1dCB3cmFwcGVyIGFuZCBhcHBseSBuZWNlc3Nhcnkgc3R5bGVzXG4gICAgY29uc3QgaW5wdXRXcmFwcGVyID0gdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQucGFyZW50Tm9kZTtcblxuICAgIGlmICghdGhpcy5kZWxldGVTeW1ib2wpIHtcbiAgICAgIHRoaXMuZGVsZXRlQnV0dG9uID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdidXR0b24nKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMuZGVsZXRlQnV0dG9uLCAndHlwZScsICdidXR0b24nKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5kZWxldGVCdXR0b24sICdidG4nKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5kZWxldGVCdXR0b24sICdidG4tbGluaycpO1xuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmRlbGV0ZUJ1dHRvbiwgJ2J0bi1pY29uJyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuZGVsZXRlQnV0dG9uLCAnZGVsZXRlLWJ1dHRvbicpO1xuICAgICAgdGhpcy5kZWxldGVCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB0aGlzLmNsZWFyU2VhcmNoSW5wdXQoKSk7XG5cbiAgICAgIHRoaXMuZGVsZXRlU3ltYm9sID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdjbHItaWNvbicpO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5kZWxldGVTeW1ib2wsICdzaGFwZScsICd0aW1lcycpO1xuICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLmRlbGV0ZUJ1dHRvbiwgdGhpcy5kZWxldGVTeW1ib2wpO1xuICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZChpbnB1dFdyYXBwZXIsIHRoaXMuZGVsZXRlQnV0dG9uKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluamVjdFNlYXJjaEljb24oKTogdm9pZCB7XG4gICAgY29uc3QgaW5wdXRXcmFwcGVyID0gdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQucGFyZW50Tm9kZTtcblxuICAgIC8vIENyZWF0ZSB0aGUgaWNvbiBhbmQgYXBwbHkgbmVjZXNzYXJ5IHN0eWxlc1xuICAgIGlmICghdGhpcy5zZWFyY2hTeW1ib2wpIHtcbiAgICAgIHRoaXMuc2VhcmNoU3ltYm9sID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdjbHItaWNvbicpO1xuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLnNlYXJjaFN5bWJvbCwgJ3NlYXJjaC1zeW1ib2wnKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMuc2VhcmNoU3ltYm9sLCAnc2hhcGUnLCAnc2VhcmNoJyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLmluc2VydEJlZm9yZShpbnB1dFdyYXBwZXIsIHRoaXMuc2VhcmNoU3ltYm9sLCB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhZGRDbGFzc1RvV3JhcHBlcihpbnB1dFdyYXBwZXI6IGFueSk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoaW5wdXRXcmFwcGVyLCAnc2VhcmNoLWlucHV0LXdyYXBwZXInKTtcbiAgfVxuXG4gIHByaXZhdGUgZGV0YWNoTGlzdGVuZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMua2V5dXBMaXN0ZW5lcikge1xuICAgICAgdGhpcy5rZXl1cExpc3RlbmVyKCk7XG4gICAgICBkZWxldGUgdGhpcy5rZXl1cExpc3RlbmVyO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
99
|
+
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i1.NgControl, decorators: [{
|
|
100
|
+
type: Optional
|
|
101
|
+
}] }]; } });
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2Nsci1hZGRvbnMvc2VhcmNoZmllbGQvc2VhcmNoLWZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEVBQWlCLFNBQVMsRUFBRSxVQUFVLEVBQXFCLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0csT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFNM0MsTUFBTSxPQUFPLGNBQWM7SUFTekIsWUFBb0IsUUFBbUIsRUFBVSxPQUFtQixFQUFzQixTQUFvQjtRQUExRixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVUsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQUFzQixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBRjlHLGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRWlGLENBQUM7SUFFbEgsUUFBUTtRQUNOLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFMUQsK0VBQStFO1FBQy9FLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNsQixJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUNoSDthQUFNO1lBQ0wsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FDckYsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUM1QyxDQUFDO1NBQ0g7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELGdCQUFnQjtRQUNkLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0IsTUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1QyxLQUFLLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxNQUFlO1FBQ3RDLElBQUksTUFBTSxFQUFFO1lBQ1YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1NBQzVFO2FBQU07WUFDTCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxVQUFVLEVBQUUsV0FBVyxDQUFDLENBQUM7U0FDL0U7SUFDSCxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLG1EQUFtRDtRQUNuRCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7UUFFM0QsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDdEIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMxRCxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQztZQUNoRSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ2pELElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFDdEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUMsQ0FBQztZQUN0RCxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLGVBQWUsQ0FBQyxDQUFDO1lBQzNELElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7WUFFM0UsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUM1RCxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztZQUNoRSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNoRSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQzVEO0lBQ0gsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7UUFFM0QsNkNBQTZDO1FBQzdDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDNUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUMsQ0FBQztZQUMzRCxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztZQUNqRSxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQ3pGO0lBQ0gsQ0FBQztJQUVPLGlCQUFpQixDQUFDLFlBQWlCO1FBQ3pDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRSxzQkFBc0IsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFTyxjQUFjO1FBQ3BCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDckIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO1NBQzNCO0lBQ0gsQ0FBQzs7MkdBN0ZVLGNBQWM7K0ZBQWQsY0FBYzsyRkFBZCxjQUFjO2tCQUoxQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixJQUFJLEVBQUUsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLEVBQUU7aUJBQ3pDOzswQkFVd0UsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAyMyBQb3JzY2hlIEluZm9ybWF0aWsuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsLCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2NsclNlYXJjaF0nLFxuICBob3N0OiB7ICdbY2xhc3Muc2VhcmNoLWlucHV0XSc6ICd0cnVlJyB9LFxufSlcbmV4cG9ydCBjbGFzcyBDbHJTZWFyY2hGaWVsZCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0IHtcbiAgcHJpdmF0ZSBrZXl1cExpc3RlbmVyOiAoKSA9PiB2b2lkO1xuXG4gIHByaXZhdGUgZGVsZXRlU3ltYm9sOiBIVE1MRWxlbWVudDtcbiAgcHJpdmF0ZSBkZWxldGVCdXR0b246IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIHNlYXJjaFN5bWJvbDogSFRNTEVsZW1lbnQ7XG5cbiAgZGVzdHJveWVkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsIHByaXZhdGUgaW5wdXRFbDogRWxlbWVudFJlZiwgQE9wdGlvbmFsKCkgcHJpdmF0ZSBuZ0NvbnRyb2w6IE5nQ29udHJvbCkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldEhhc1ZhbHVlQ2xhc3MoISF0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC52YWx1ZSk7XG5cbiAgICAvLyB1c2UgYW5ndWxhciBmb3JtIGNvbnRyb2wgZm9yIGNoYW5nZSBkZXRlY3Rpb24gYW5kIGlucHV0IGxpc3RlbmVyIGFzIGZhbGxiYWNrXG4gICAgaWYgKHRoaXMubmdDb250cm9sKSB7XG4gICAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUNoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKS5zdWJzY3JpYmUodmFsdWUgPT4gdGhpcy5zZXRIYXNWYWx1ZUNsYXNzKCEhdmFsdWUpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5rZXl1cExpc3RlbmVyID0gdGhpcy5yZW5kZXJlci5saXN0ZW4odGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQsICdpbnB1dCcsIGV2ZW50ID0+XG4gICAgICAgIHRoaXMuc2V0SGFzVmFsdWVDbGFzcyghIWV2ZW50LnRhcmdldC52YWx1ZSlcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYWRkQ2xhc3NUb1dyYXBwZXIodGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQucGFyZW50Tm9kZSk7XG4gICAgdGhpcy5pbmplY3RTZWFyY2hJY29uKCk7XG4gICAgdGhpcy5pbmplY3REZWxldGVJY29uKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRldGFjaExpc3RlbmVyKCk7XG4gICAgdGhpcy5kZXN0cm95ZWQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveWVkLmNvbXBsZXRlKCk7XG4gIH1cblxuICBjbGVhclNlYXJjaElucHV0KCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQsICd2YWx1ZScsICcnKTtcbiAgICB0aGlzLnNldEhhc1ZhbHVlQ2xhc3MoZmFsc2UpO1xuICAgIGNvbnN0IGV2ZW50ID0gZG9jdW1lbnQuY3JlYXRlRXZlbnQoJ0V2ZW50Jyk7XG4gICAgZXZlbnQuaW5pdEV2ZW50KCdpbnB1dCcsIGZhbHNlLCBmYWxzZSk7XG4gICAgdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQuZGlzcGF0Y2hFdmVudChldmVudCk7XG4gIH1cblxuICBwcml2YXRlIHNldEhhc1ZhbHVlQ2xhc3MoYWN0aXZlOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKGFjdGl2ZSkge1xuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC5wYXJlbnROb2RlLCAnaGFzLXZhbHVlJyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQucGFyZW50Tm9kZSwgJ2hhcy12YWx1ZScpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5qZWN0RGVsZXRlSWNvbigpOiB2b2lkIHtcbiAgICAvLyBHZXQgdGhlIGlucHV0IHdyYXBwZXIgYW5kIGFwcGx5IG5lY2Vzc2FyeSBzdHlsZXNcbiAgICBjb25zdCBpbnB1dFdyYXBwZXIgPSB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC5wYXJlbnROb2RlO1xuXG4gICAgaWYgKCF0aGlzLmRlbGV0ZVN5bWJvbCkge1xuICAgICAgdGhpcy5kZWxldGVCdXR0b24gPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2J1dHRvbicpO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5kZWxldGVCdXR0b24sICd0eXBlJywgJ2J1dHRvbicpO1xuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmRlbGV0ZUJ1dHRvbiwgJ2J0bicpO1xuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmRlbGV0ZUJ1dHRvbiwgJ2J0bi1saW5rJyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuZGVsZXRlQnV0dG9uLCAnYnRuLWljb24nKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5kZWxldGVCdXR0b24sICdkZWxldGUtYnV0dG9uJyk7XG4gICAgICB0aGlzLmRlbGV0ZUJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHRoaXMuY2xlYXJTZWFyY2hJbnB1dCgpKTtcblxuICAgICAgdGhpcy5kZWxldGVTeW1ib2wgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2Nsci1pY29uJyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLmRlbGV0ZVN5bWJvbCwgJ3NoYXBlJywgJ3RpbWVzJyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMuZGVsZXRlQnV0dG9uLCB0aGlzLmRlbGV0ZVN5bWJvbCk7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKGlucHV0V3JhcHBlciwgdGhpcy5kZWxldGVCdXR0b24pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5qZWN0U2VhcmNoSWNvbigpOiB2b2lkIHtcbiAgICBjb25zdCBpbnB1dFdyYXBwZXIgPSB0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudC5wYXJlbnROb2RlO1xuXG4gICAgLy8gQ3JlYXRlIHRoZSBpY29uIGFuZCBhcHBseSBuZWNlc3Nhcnkgc3R5bGVzXG4gICAgaWYgKCF0aGlzLnNlYXJjaFN5bWJvbCkge1xuICAgICAgdGhpcy5zZWFyY2hTeW1ib2wgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2Nsci1pY29uJyk7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuc2VhcmNoU3ltYm9sLCAnc2VhcmNoLXN5bWJvbCcpO1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5zZWFyY2hTeW1ib2wsICdzaGFwZScsICdzZWFyY2gnKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuaW5zZXJ0QmVmb3JlKGlucHV0V3JhcHBlciwgdGhpcy5zZWFyY2hTeW1ib2wsIHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFkZENsYXNzVG9XcmFwcGVyKGlucHV0V3JhcHBlcjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhpbnB1dFdyYXBwZXIsICdzZWFyY2gtaW5wdXQtd3JhcHBlcicpO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXRhY2hMaXN0ZW5lcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5rZXl1cExpc3RlbmVyKSB7XG4gICAgICB0aGlzLmtleXVwTGlzdGVuZXIoKTtcbiAgICAgIGRlbGV0ZSB0aGlzLmtleXVwTGlzdGVuZXI7XG4gICAgfVxuICB9XG59XG4iXX0=
|
package/fesm2015/clr-addons.mjs
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, NgModule, Injectable, EventEmitter, Input, Output, Directive, ViewChild, ContentChildren, TemplateRef, ViewChildren, HostBinding, ElementRef, Renderer2, forwardRef, ContentChild, HostListener, InjectionToken, Inject
|
|
2
|
+
import { Component, NgModule, Injectable, EventEmitter, Input, Output, Directive, ViewChild, ContentChildren, TemplateRef, ViewChildren, HostBinding, ElementRef, Renderer2, forwardRef, ContentChild, Optional, HostListener, InjectionToken, Inject } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { CommonModule, DOCUMENT } from '@angular/common';
|
|
5
5
|
import * as i3$1 from '@angular/forms';
|
|
6
6
|
import { FormsModule, NG_VALIDATORS, NgControl, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
7
7
|
import * as i2 from '@clr/angular';
|
|
8
|
-
import { ClarityModule, ClrFormsModule, ClrDropdown, ClrForm, ClrAlert, ClrAxis, ClrSide, ClrAlignment, ClrPopoverToggleService, ClrPopoverEventsService, ClrPopoverPositionService, ClrIconModule, ClrDropdownModule, ClrDatagridPagination, ClrDatagridFilter } from '@clr/angular';
|
|
8
|
+
import { ClarityModule, ClrFormsModule, ClrDropdown, ClrForm, ClrAlert, ClrAxis, ClrSide, ClrAlignment, ClrPopoverToggleService, ClrPopoverEventsService, ClrPopoverPositionService, ClrIconModule, ClrDropdownModule, ClrDatagridSortOrder, DatagridPropertyComparator, ClrDatagridPagination, ClrDatagridFilter } from '@clr/angular';
|
|
9
9
|
import { Subject, BehaviorSubject, timer, asyncScheduler, interval, of, ReplaySubject, takeUntil as takeUntil$1, delay } from 'rxjs';
|
|
10
10
|
import { takeUntil, observeOn, take } from 'rxjs/operators';
|
|
11
11
|
import * as i3 from '@angular/router';
|
|
@@ -3070,7 +3070,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
|
|
|
3070
3070
|
}] });
|
|
3071
3071
|
|
|
3072
3072
|
/*
|
|
3073
|
-
* Copyright (c) 2018-
|
|
3073
|
+
* Copyright (c) 2018-2023 Porsche Informatik. All Rights Reserved.
|
|
3074
3074
|
* This software is released under MIT license.
|
|
3075
3075
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
3076
3076
|
*/
|
|
@@ -3153,7 +3153,7 @@ class ClrSearchField {
|
|
|
3153
3153
|
}
|
|
3154
3154
|
}
|
|
3155
3155
|
}
|
|
3156
|
-
ClrSearchField.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrSearchField, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i3$1.NgControl }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3156
|
+
ClrSearchField.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrSearchField, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i3$1.NgControl, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3157
3157
|
ClrSearchField.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.1", type: ClrSearchField, selector: "[clrSearch]", host: { properties: { "class.search-input": "true" } }, ngImport: i0 });
|
|
3158
3158
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: ClrSearchField, decorators: [{
|
|
3159
3159
|
type: Directive,
|
|
@@ -3161,7 +3161,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImpor
|
|
|
3161
3161
|
selector: '[clrSearch]',
|
|
3162
3162
|
host: { '[class.search-input]': 'true' },
|
|
3163
3163
|
}]
|
|
3164
|
-
}], ctorParameters: function () {
|
|
3164
|
+
}], ctorParameters: function () {
|
|
3165
|
+
return [{ type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i3$1.NgControl, decorators: [{
|
|
3166
|
+
type: Optional
|
|
3167
|
+
}] }];
|
|
3168
|
+
} });
|
|
3165
3169
|
|
|
3166
3170
|
/*
|
|
3167
3171
|
* Copyright (c) 2018-2019 Porsche Informatik. All Rights Reserved.
|
|
@@ -4652,11 +4656,14 @@ class StatePersistenceKeyDirective {
|
|
|
4652
4656
|
}
|
|
4653
4657
|
}
|
|
4654
4658
|
init() {
|
|
4659
|
+
var _a, _b;
|
|
4655
4660
|
const volatileDataState = this.getVolatileDataState();
|
|
4656
4661
|
const localStorageState = this.getLocalStorageState();
|
|
4657
4662
|
this.initFilter(volatileDataState);
|
|
4663
|
+
this.initSorting(localStorageState);
|
|
4658
4664
|
this.initDatagridPersister();
|
|
4659
|
-
|
|
4665
|
+
const paginationPersistenceEnabled = (_a = this.options.persistPagination) !== null && _a !== void 0 ? _a : true;
|
|
4666
|
+
if (((_b = this.pagination) === null || _b === void 0 ? void 0 : _b.page) && paginationPersistenceEnabled) {
|
|
4660
4667
|
this.initPageSizePersister(localStorageState);
|
|
4661
4668
|
this.initCurrentPage(volatileDataState);
|
|
4662
4669
|
}
|
|
@@ -4691,7 +4698,9 @@ class StatePersistenceKeyDirective {
|
|
|
4691
4698
|
}
|
|
4692
4699
|
}
|
|
4693
4700
|
initFilter(savedState) {
|
|
4694
|
-
|
|
4701
|
+
var _a;
|
|
4702
|
+
const filterPersistenceEnabled = (_a = this.options.persistFilters) !== null && _a !== void 0 ? _a : true;
|
|
4703
|
+
if (savedState.columns && filterPersistenceEnabled) {
|
|
4695
4704
|
Object.keys(savedState.columns).forEach(prop => {
|
|
4696
4705
|
const filter = this.getFilter(prop);
|
|
4697
4706
|
if (filter) {
|
|
@@ -4703,28 +4712,62 @@ class StatePersistenceKeyDirective {
|
|
|
4703
4712
|
});
|
|
4704
4713
|
}
|
|
4705
4714
|
}
|
|
4715
|
+
initSorting(savedState) {
|
|
4716
|
+
var _a;
|
|
4717
|
+
const sortPersistenceEnabled = (_a = this.options.persistSort) !== null && _a !== void 0 ? _a : true;
|
|
4718
|
+
if (savedState.sortBy && sortPersistenceEnabled) {
|
|
4719
|
+
this.datagrid.columns.forEach(column => {
|
|
4720
|
+
if (this.getSortProperty(column.sortBy) === savedState.sortBy) {
|
|
4721
|
+
column.sortOrder = savedState.sortReverse ? ClrDatagridSortOrder.DESC : ClrDatagridSortOrder.ASC;
|
|
4722
|
+
}
|
|
4723
|
+
else {
|
|
4724
|
+
column.sortOrder = ClrDatagridSortOrder.UNSORTED;
|
|
4725
|
+
}
|
|
4726
|
+
});
|
|
4727
|
+
}
|
|
4728
|
+
}
|
|
4706
4729
|
initDatagridPersister() {
|
|
4707
4730
|
// delay is needed, as onDestroy the filters emit empty values.
|
|
4708
4731
|
// So delay it to the end of the current cycle, so the directive is also destroyed before it gets the next values
|
|
4709
4732
|
this.datagrid.refresh.pipe(delay(0), takeUntil(this.destroy$)).subscribe(dgState => {
|
|
4710
|
-
|
|
4711
|
-
|
|
4712
|
-
|
|
4713
|
-
|
|
4733
|
+
this.persistFiltersAndCurrentPage(dgState);
|
|
4734
|
+
this.persistSorting(dgState);
|
|
4735
|
+
if (this.canShowPaginationDescription) {
|
|
4736
|
+
this.updatePaginationDescription();
|
|
4737
|
+
}
|
|
4738
|
+
});
|
|
4739
|
+
this.datagrid.items.change.pipe(takeUntil(this.destroy$)).subscribe(() => this.updatePaginationDescription());
|
|
4740
|
+
}
|
|
4741
|
+
persistFiltersAndCurrentPage(dgState) {
|
|
4742
|
+
var _a, _b, _c, _d;
|
|
4743
|
+
const filterPersistenceEnabled = (_a = this.options.persistFilters) !== null && _a !== void 0 ? _a : true;
|
|
4744
|
+
const paginationPersistenceEnabled = (_b = this.options.persistPagination) !== null && _b !== void 0 ? _b : true;
|
|
4745
|
+
const state = this.getVolatileDataState();
|
|
4746
|
+
state.columns = state.columns || {};
|
|
4747
|
+
if (paginationPersistenceEnabled) {
|
|
4748
|
+
state.currentPage = (_c = dgState.page) === null || _c === void 0 ? void 0 : _c.current;
|
|
4749
|
+
}
|
|
4750
|
+
if (filterPersistenceEnabled) {
|
|
4714
4751
|
Object.keys(state.columns).forEach(prop => (state.columns[prop].filterValue = undefined));
|
|
4715
|
-
(
|
|
4752
|
+
(_d = dgState.filters) === null || _d === void 0 ? void 0 : _d.forEach(filter => {
|
|
4716
4753
|
const property = this.getFilterPropertyName(filter);
|
|
4717
4754
|
if (property) {
|
|
4718
4755
|
state.columns[property] = state.columns[property] || {};
|
|
4719
4756
|
state.columns[property].filterValue = this.enrichFilterValue(filter);
|
|
4720
4757
|
}
|
|
4721
4758
|
});
|
|
4722
|
-
|
|
4723
|
-
|
|
4724
|
-
|
|
4725
|
-
|
|
4726
|
-
|
|
4727
|
-
|
|
4759
|
+
}
|
|
4760
|
+
(this.useLocalStoreOnly ? localStorage : sessionStorage).setItem(this.options.key, JSON.stringify(state));
|
|
4761
|
+
}
|
|
4762
|
+
persistSorting(dgState) {
|
|
4763
|
+
var _a, _b, _c;
|
|
4764
|
+
const sortPersistenceEnabled = (_a = this.options.persistSort) !== null && _a !== void 0 ? _a : true;
|
|
4765
|
+
if (sortPersistenceEnabled) {
|
|
4766
|
+
const state = this.getLocalStorageState();
|
|
4767
|
+
state.sortBy = this.getSortProperty((_b = dgState.sort) === null || _b === void 0 ? void 0 : _b.by);
|
|
4768
|
+
state.sortReverse = (_c = dgState.sort) === null || _c === void 0 ? void 0 : _c.reverse;
|
|
4769
|
+
localStorage.setItem(this.options.key, JSON.stringify(state));
|
|
4770
|
+
}
|
|
4728
4771
|
}
|
|
4729
4772
|
/**
|
|
4730
4773
|
* Pagination description must be set by this directive,
|
|
@@ -4794,6 +4837,17 @@ class StatePersistenceKeyDirective {
|
|
|
4794
4837
|
const filterWithProp = filter;
|
|
4795
4838
|
return (((_a = filterWithProp.property) === null || _a === void 0 ? void 0 : _a.prop) || filterWithProp.property);
|
|
4796
4839
|
}
|
|
4840
|
+
getSortProperty(sortBy) {
|
|
4841
|
+
if (sortBy) {
|
|
4842
|
+
if (typeof sortBy === 'string') {
|
|
4843
|
+
return sortBy;
|
|
4844
|
+
}
|
|
4845
|
+
if (sortBy instanceof DatagridPropertyComparator) {
|
|
4846
|
+
return sortBy.prop;
|
|
4847
|
+
}
|
|
4848
|
+
}
|
|
4849
|
+
return undefined;
|
|
4850
|
+
}
|
|
4797
4851
|
ngOnDestroy() {
|
|
4798
4852
|
this.destroy$.next();
|
|
4799
4853
|
this.destroy$.complete();
|
|
@@ -4835,8 +4889,9 @@ class ColumnHiddenStatePersistenceDirective {
|
|
|
4835
4889
|
this.destroy$ = new Subject();
|
|
4836
4890
|
}
|
|
4837
4891
|
ngOnInit() {
|
|
4838
|
-
var _a, _b;
|
|
4839
|
-
|
|
4892
|
+
var _a, _b, _c, _d, _e;
|
|
4893
|
+
const persistenceEnabled = (_c = (_b = (_a = this.statePersistenceKey) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.persistHiddenColumns) !== null && _c !== void 0 ? _c : true;
|
|
4894
|
+
if (((_d = this.statePersistenceKey) === null || _d === void 0 ? void 0 : _d.options.key) && ((_e = this.columnDirective) === null || _e === void 0 ? void 0 : _e.clrDgField) && persistenceEnabled) {
|
|
4840
4895
|
/* set hidden states from local storage (if existing) */
|
|
4841
4896
|
this.initHiddenState();
|
|
4842
4897
|
/* listen to state changes and persist in local storage */
|