@clr/angular 17.2.0 → 17.2.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/clarity.api.md +26 -6
- package/data/datagrid/datagrid-detail-header.d.ts +4 -1
- package/data/datagrid/datagrid-detail.d.ts +5 -1
- package/data/datagrid/datagrid-filter.d.ts +4 -2
- package/data/datagrid/datagrid-if-detail.d.ts +9 -0
- package/data/datagrid/datagrid-virtual-scroll.directive.d.ts +5 -2
- package/data/datagrid/datagrid.d.ts +1 -0
- package/data/datagrid/enums/column-changes.enum.d.ts +2 -1
- package/data/datagrid/providers/columns.service.d.ts +1 -0
- package/data/datagrid/providers/detail.service.d.ts +3 -0
- package/data/datagrid/render/main-renderer.d.ts +1 -1
- package/data/datagrid/utils/key-navigation-grid.controller.d.ts +1 -0
- package/esm2020/data/datagrid/datagrid-action-overflow.mjs +3 -1
- package/esm2020/data/datagrid/datagrid-detail-header.mjs +12 -6
- package/esm2020/data/datagrid/datagrid-detail.mjs +36 -8
- package/esm2020/data/datagrid/datagrid-filter.mjs +22 -13
- package/esm2020/data/datagrid/datagrid-if-detail.mjs +30 -7
- package/esm2020/data/datagrid/datagrid-row.mjs +3 -3
- package/esm2020/data/datagrid/datagrid-virtual-scroll.directive.mjs +13 -5
- package/esm2020/data/datagrid/datagrid.mjs +17 -6
- package/esm2020/data/datagrid/enums/column-changes.enum.mjs +3 -2
- package/esm2020/data/datagrid/providers/columns.service.mjs +9 -3
- package/esm2020/data/datagrid/providers/detail.service.mjs +10 -5
- package/esm2020/data/datagrid/render/cell-renderer.mjs +1 -3
- package/esm2020/data/datagrid/render/main-renderer.mjs +21 -16
- package/esm2020/data/datagrid/utils/key-navigation-grid.controller.mjs +6 -3
- package/esm2020/forms/common/abstract-container.mjs +5 -2
- package/esm2020/timeline/timeline-step.mjs +3 -3
- package/esm2020/timeline/timeline.mjs +3 -3
- package/esm2020/utils/i18n/common-strings.default.mjs +2 -2
- package/fesm2015/clr-angular.mjs +354 -246
- package/fesm2015/clr-angular.mjs.map +1 -1
- package/fesm2020/clr-angular.mjs +348 -241
- package/fesm2020/clr-angular.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -5,11 +5,13 @@
|
|
|
5
5
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
6
6
|
*/
|
|
7
7
|
import { Injectable } from '@angular/core';
|
|
8
|
+
import { BehaviorSubject } from 'rxjs';
|
|
8
9
|
import { ALL_COLUMN_CHANGES } from '../enums/column-changes.enum';
|
|
9
10
|
import * as i0 from "@angular/core";
|
|
10
11
|
export class ColumnsService {
|
|
11
12
|
constructor() {
|
|
12
13
|
this.columns = [];
|
|
14
|
+
this.columnsStateChange = new BehaviorSubject(null);
|
|
13
15
|
this._cache = [];
|
|
14
16
|
}
|
|
15
17
|
get columnStates() {
|
|
@@ -31,7 +33,9 @@ export class ColumnsService {
|
|
|
31
33
|
resetToLastCache() {
|
|
32
34
|
this._cache.forEach((state, index) => {
|
|
33
35
|
// Just emit the exact value from the cache
|
|
34
|
-
|
|
36
|
+
const cachedState = { ...state, changes: ALL_COLUMN_CHANGES };
|
|
37
|
+
this.columns[index].next(cachedState);
|
|
38
|
+
this.columnsStateChange.next(cachedState);
|
|
35
39
|
});
|
|
36
40
|
this._cache = [];
|
|
37
41
|
}
|
|
@@ -43,7 +47,9 @@ export class ColumnsService {
|
|
|
43
47
|
this.emitStateChange(this.columns[columnIndex], diff);
|
|
44
48
|
}
|
|
45
49
|
emitStateChange(column, diff) {
|
|
46
|
-
|
|
50
|
+
const changedState = { ...column.value, ...diff };
|
|
51
|
+
column.next(changedState);
|
|
52
|
+
this.columnsStateChange.next(changedState);
|
|
47
53
|
}
|
|
48
54
|
}
|
|
49
55
|
ColumnsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ColumnsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
@@ -51,4 +57,4 @@ ColumnsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", versi
|
|
|
51
57
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ColumnsService, decorators: [{
|
|
52
58
|
type: Injectable
|
|
53
59
|
}] });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvZGF0YS9kYXRhZ3JpZC9wcm92aWRlcnMvY29sdW1ucy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OztHQUtHO0FBRUgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXZDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQUlsRSxNQUFNLE9BQU8sY0FBYztJQUQzQjtRQUVFLFlBQU8sR0FBbUMsRUFBRSxDQUFDO1FBQzdDLHVCQUFrQixHQUFpQyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVyRSxXQUFNLEdBQWtCLEVBQUUsQ0FBQztLQTZDcEM7SUEzQ0MsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUN2QyxNQUFNLEtBQUssR0FBRyxFQUFFLEdBQUcsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ25DLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQztZQUNyQixPQUFPLEtBQUssQ0FBQztRQUNmLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUM5QixDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDbkMsMkNBQTJDO1lBQzNDLE1BQU0sV0FBVyxHQUFHLEVBQUUsR0FBRyxLQUFLLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLENBQUM7WUFDOUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDdEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCwwR0FBMEc7SUFDMUcsaUJBQWlCLENBQUMsV0FBbUIsRUFBRSxJQUFxQjtRQUMxRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUM5QixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUFvQyxFQUFFLElBQXFCO1FBQ3pFLE1BQU0sWUFBWSxHQUFHLEVBQUUsR0FBRyxNQUFNLENBQUMsS0FBSyxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQUM7UUFDbEQsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzdDLENBQUM7OzJHQWhEVSxjQUFjOytHQUFkLGNBQWM7MkZBQWQsY0FBYztrQkFEMUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyNCBCcm9hZGNvbS4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoZSB0ZXJtIFwiQnJvYWRjb21cIiByZWZlcnMgdG8gQnJvYWRjb20gSW5jLiBhbmQvb3IgaXRzIHN1YnNpZGlhcmllcy5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEFMTF9DT0xVTU5fQ0hBTkdFUyB9IGZyb20gJy4uL2VudW1zL2NvbHVtbi1jaGFuZ2VzLmVudW0nO1xuaW1wb3J0IHsgQ29sdW1uU3RhdGUsIENvbHVtblN0YXRlRGlmZiB9IGZyb20gJy4uL2ludGVyZmFjZXMvY29sdW1uLXN0YXRlLmludGVyZmFjZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDb2x1bW5zU2VydmljZSB7XG4gIGNvbHVtbnM6IEJlaGF2aW9yU3ViamVjdDxDb2x1bW5TdGF0ZT5bXSA9IFtdO1xuICBjb2x1bW5zU3RhdGVDaGFuZ2U6IEJlaGF2aW9yU3ViamVjdDxDb2x1bW5TdGF0ZT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KG51bGwpO1xuXG4gIHByaXZhdGUgX2NhY2hlOiBDb2x1bW5TdGF0ZVtdID0gW107XG5cbiAgZ2V0IGNvbHVtblN0YXRlcygpOiBDb2x1bW5TdGF0ZVtdIHtcbiAgICByZXR1cm4gdGhpcy5jb2x1bW5zLm1hcChjb2x1bW4gPT4gY29sdW1uLnZhbHVlKTtcbiAgfVxuXG4gIGdldCBoYXNIaWRlYWJsZUNvbHVtbnMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY29sdW1uU3RhdGVzLmZpbHRlcihzdGF0ZSA9PiBzdGF0ZS5oaWRlYWJsZSkubGVuZ3RoID4gMDtcbiAgfVxuXG4gIGNhY2hlKCkge1xuICAgIHRoaXMuX2NhY2hlID0gdGhpcy5jb2x1bW5zLm1hcChzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0geyAuLi5zdWJqZWN0LnZhbHVlIH07XG4gICAgICBkZWxldGUgdmFsdWUuY2hhbmdlcztcbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9KTtcbiAgfVxuXG4gIGhhc0NhY2hlKCkge1xuICAgIHJldHVybiAhIXRoaXMuX2NhY2hlLmxlbmd0aDtcbiAgfVxuXG4gIHJlc2V0VG9MYXN0Q2FjaGUoKSB7XG4gICAgdGhpcy5fY2FjaGUuZm9yRWFjaCgoc3RhdGUsIGluZGV4KSA9PiB7XG4gICAgICAvLyBKdXN0IGVtaXQgdGhlIGV4YWN0IHZhbHVlIGZyb20gdGhlIGNhY2hlXG4gICAgICBjb25zdCBjYWNoZWRTdGF0ZSA9IHsgLi4uc3RhdGUsIGNoYW5nZXM6IEFMTF9DT0xVTU5fQ0hBTkdFUyB9O1xuICAgICAgdGhpcy5jb2x1bW5zW2luZGV4XS5uZXh0KGNhY2hlZFN0YXRlKTtcbiAgICAgIHRoaXMuY29sdW1uc1N0YXRlQ2hhbmdlLm5leHQoY2FjaGVkU3RhdGUpO1xuICAgIH0pO1xuICAgIHRoaXMuX2NhY2hlID0gW107XG4gIH1cblxuICAvLyBIZWxwZXIgbWV0aG9kIHRvIGVtaXQgYSBjaGFuZ2UgdG8gYSBjb2x1bW4gb25seSB3aGVuIHRoZXJlIGlzIGFuIGFjdHVhbCBkaWZmIHRvIHByb2Nlc3MgZm9yIHRoYXQgY29sdW1uXG4gIGVtaXRTdGF0ZUNoYW5nZUF0KGNvbHVtbkluZGV4OiBudW1iZXIsIGRpZmY6IENvbHVtblN0YXRlRGlmZikge1xuICAgIGlmICghdGhpcy5jb2x1bW5zW2NvbHVtbkluZGV4XSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmVtaXRTdGF0ZUNoYW5nZSh0aGlzLmNvbHVtbnNbY29sdW1uSW5kZXhdLCBkaWZmKTtcbiAgfVxuXG4gIGVtaXRTdGF0ZUNoYW5nZShjb2x1bW46IEJlaGF2aW9yU3ViamVjdDxDb2x1bW5TdGF0ZT4sIGRpZmY6IENvbHVtblN0YXRlRGlmZikge1xuICAgIGNvbnN0IGNoYW5nZWRTdGF0ZSA9IHsgLi4uY29sdW1uLnZhbHVlLCAuLi5kaWZmIH07XG4gICAgY29sdW1uLm5leHQoY2hhbmdlZFN0YXRlKTtcbiAgICB0aGlzLmNvbHVtbnNTdGF0ZUNoYW5nZS5uZXh0KGNoYW5nZWRTdGF0ZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -11,6 +11,7 @@ import * as i1 from "../../../modal/modal-stack.service";
|
|
|
11
11
|
export class DetailService {
|
|
12
12
|
constructor(modalStackService) {
|
|
13
13
|
this.modalStackService = modalStackService;
|
|
14
|
+
this.preventScroll = false;
|
|
14
15
|
this.toggleState = false;
|
|
15
16
|
this._enabled = false;
|
|
16
17
|
this._state = new BehaviorSubject(this.toggleState);
|
|
@@ -21,6 +22,12 @@ export class DetailService {
|
|
|
21
22
|
set enabled(state) {
|
|
22
23
|
this._enabled = state;
|
|
23
24
|
}
|
|
25
|
+
get preventFocusScroll() {
|
|
26
|
+
return this.preventScroll;
|
|
27
|
+
}
|
|
28
|
+
set preventFocusScroll(preventScroll) {
|
|
29
|
+
this.preventScroll = preventScroll;
|
|
30
|
+
}
|
|
24
31
|
get state() {
|
|
25
32
|
return this.cache;
|
|
26
33
|
}
|
|
@@ -39,15 +46,13 @@ export class DetailService {
|
|
|
39
46
|
}
|
|
40
47
|
close() {
|
|
41
48
|
this.toggleState = false;
|
|
49
|
+
this.returnFocus();
|
|
42
50
|
this._state.next(this.toggleState);
|
|
43
51
|
this.modalStackService.trackModalClose(this);
|
|
44
|
-
// In the case of browser zoom greater than 250%, the detail pane toggle button is not visible on the page.
|
|
45
|
-
// Wait for the detail pane to close, and return focus to the detail toggle button.
|
|
46
|
-
setTimeout(() => this.returnFocus(), 0);
|
|
47
52
|
}
|
|
48
53
|
returnFocus() {
|
|
49
54
|
if (this.button) {
|
|
50
|
-
this.button.focus();
|
|
55
|
+
this.button.focus({ preventScroll: this.preventFocusScroll });
|
|
51
56
|
this.button = null;
|
|
52
57
|
}
|
|
53
58
|
}
|
|
@@ -68,4 +73,4 @@ DetailService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", versio
|
|
|
68
73
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: DetailService, decorators: [{
|
|
69
74
|
type: Injectable
|
|
70
75
|
}], ctorParameters: function () { return [{ type: i1.ModalStackService }]; } });
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV0YWlsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyL3NyYy9kYXRhL2RhdGFncmlkL3Byb3ZpZGVycy9kZXRhaWwuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7R0FLRztBQUVILE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQzs7O0FBS25ELE1BQU0sT0FBTyxhQUFhO0lBVXhCLFlBQTZCLGlCQUFvQztRQUFwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBUHpELGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBR3BCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsV0FBTSxHQUFHLElBQUksZUFBZSxDQUFpQixJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFSCxDQUFDO0lBRXJFLElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBQ0QsSUFBSSxPQUFPLENBQUMsS0FBYztRQUN4QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFDRCxJQUFJLGtCQUFrQixDQUFDLGFBQXNCO1FBQzNDLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO0lBQ3JDLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLElBQUksQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxDQUFDLElBQVMsRUFBRSxNQUEwQjtRQUN4QyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUN4QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNmLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7WUFDOUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7U0FDcEI7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVMsRUFBRSxNQUEwQjtRQUMxQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDakMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ2Q7YUFBTTtZQUNMLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQztJQUVELFNBQVMsQ0FBQyxJQUFTO1FBQ2pCLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxDQUFDO0lBQ3JELENBQUM7OzBHQXRFVSxhQUFhOzhHQUFiLGFBQWE7MkZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyNCBCcm9hZGNvbS4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoZSB0ZXJtIFwiQnJvYWRjb21cIiByZWZlcnMgdG8gQnJvYWRjb20gSW5jLiBhbmQvb3IgaXRzIHN1YnNpZGlhcmllcy5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IE1vZGFsU3RhY2tTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vbW9kYWwvbW9kYWwtc3RhY2suc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEZXRhaWxTZXJ2aWNlIHtcbiAgaWQ6IHN0cmluZztcblxuICBwcml2YXRlIHByZXZlbnRTY3JvbGwgPSBmYWxzZTtcbiAgcHJpdmF0ZSB0b2dnbGVTdGF0ZSA9IGZhbHNlO1xuICBwcml2YXRlIGNhY2hlOiBhbnk7XG4gIHByaXZhdGUgYnV0dG9uOiBIVE1MQnV0dG9uRWxlbWVudDtcbiAgcHJpdmF0ZSBfZW5hYmxlZCA9IGZhbHNlO1xuICBwcml2YXRlIF9zdGF0ZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbiB8IG51bGw+KHRoaXMudG9nZ2xlU3RhdGUpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgbW9kYWxTdGFja1NlcnZpY2U6IE1vZGFsU3RhY2tTZXJ2aWNlKSB7fVxuXG4gIGdldCBlbmFibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9lbmFibGVkO1xuICB9XG4gIHNldCBlbmFibGVkKHN0YXRlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZW5hYmxlZCA9IHN0YXRlO1xuICB9XG5cbiAgZ2V0IHByZXZlbnRGb2N1c1Njcm9sbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5wcmV2ZW50U2Nyb2xsO1xuICB9XG4gIHNldCBwcmV2ZW50Rm9jdXNTY3JvbGwocHJldmVudFNjcm9sbDogYm9vbGVhbikge1xuICAgIHRoaXMucHJldmVudFNjcm9sbCA9IHByZXZlbnRTY3JvbGw7XG4gIH1cblxuICBnZXQgc3RhdGUoKSB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGU7XG4gIH1cblxuICBnZXQgc3RhdGVDaGFuZ2UoKTogT2JzZXJ2YWJsZTxib29sZWFuIHwgbnVsbD4ge1xuICAgIHJldHVybiB0aGlzLl9zdGF0ZS5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBpc09wZW4oKSB7XG4gICAgcmV0dXJuIHRoaXMudG9nZ2xlU3RhdGUgPT09IHRydWU7XG4gIH1cblxuICBvcGVuKGl0ZW06IGFueSwgYnV0dG9uPzogSFRNTEJ1dHRvbkVsZW1lbnQpIHtcbiAgICB0aGlzLmNhY2hlID0gaXRlbTtcbiAgICB0aGlzLmJ1dHRvbiA9IGJ1dHRvbjtcbiAgICB0aGlzLnRvZ2dsZVN0YXRlID0gdHJ1ZTtcbiAgICB0aGlzLl9zdGF0ZS5uZXh0KHRoaXMudG9nZ2xlU3RhdGUpO1xuICAgIHRoaXMubW9kYWxTdGFja1NlcnZpY2UudHJhY2tNb2RhbE9wZW4odGhpcyk7XG4gIH1cblxuICBjbG9zZSgpIHtcbiAgICB0aGlzLnRvZ2dsZVN0YXRlID0gZmFsc2U7XG4gICAgdGhpcy5yZXR1cm5Gb2N1cygpO1xuICAgIHRoaXMuX3N0YXRlLm5leHQodGhpcy50b2dnbGVTdGF0ZSk7XG4gICAgdGhpcy5tb2RhbFN0YWNrU2VydmljZS50cmFja01vZGFsQ2xvc2UodGhpcyk7XG4gIH1cblxuICByZXR1cm5Gb2N1cygpIHtcbiAgICBpZiAodGhpcy5idXR0b24pIHtcbiAgICAgIHRoaXMuYnV0dG9uLmZvY3VzKHsgcHJldmVudFNjcm9sbDogdGhpcy5wcmV2ZW50Rm9jdXNTY3JvbGwgfSk7XG4gICAgICB0aGlzLmJ1dHRvbiA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgdG9nZ2xlKGl0ZW06IGFueSwgYnV0dG9uPzogSFRNTEJ1dHRvbkVsZW1lbnQpIHtcbiAgICBpZiAodGhpcy5pc1Jvd09wZW4oaXRlbSkgfHwgIWl0ZW0pIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vcGVuKGl0ZW0sIGJ1dHRvbik7XG4gICAgfVxuICB9XG5cbiAgaXNSb3dPcGVuKGl0ZW06IGFueSkge1xuICAgIHJldHVybiAhISh0aGlzLnRvZ2dsZVN0YXRlICYmIHRoaXMuY2FjaGUgPT09IGl0ZW0pO1xuICB9XG59XG4iXX0=
|
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
* The full license information can be found in LICENSE in the root directory of this project.
|
|
6
6
|
*/
|
|
7
7
|
import { Directive } from '@angular/core';
|
|
8
|
-
import { ALL_COLUMN_CHANGES } from '../enums/column-changes.enum';
|
|
9
8
|
import { DatagridRenderStep } from '../enums/render-step.enum';
|
|
10
9
|
import { HIDDEN_COLUMN_CLASS, STRICT_WIDTH_CLASS } from './constants';
|
|
11
10
|
import * as i0 from "@angular/core";
|
|
@@ -24,7 +23,6 @@ export class DatagridCellRenderer {
|
|
|
24
23
|
}
|
|
25
24
|
}
|
|
26
25
|
resetState(state) {
|
|
27
|
-
state.changes = ALL_COLUMN_CHANGES;
|
|
28
26
|
this.setWidth(state);
|
|
29
27
|
this.setHidden(state);
|
|
30
28
|
}
|
|
@@ -58,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
|
|
|
58
56
|
selector: 'clr-dg-cell',
|
|
59
57
|
}]
|
|
60
58
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.DatagridRenderOrganizer }]; } });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2VsbC1yZW5kZXJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL2RhdGEvZGF0YWdyaWQvcmVuZGVyL2NlbGwtcmVuZGVyZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFFSCxPQUFPLEVBQUUsU0FBUyxFQUFvQyxNQUFNLGVBQWUsQ0FBQztBQUc1RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUUvRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7OztBQU10RSxNQUFNLE9BQU8sb0JBQW9CO0lBSS9CLFlBQW9CLEVBQWMsRUFBVSxRQUFtQixFQUFFLFNBQWtDO1FBQS9FLE9BQUUsR0FBRixFQUFFLENBQVk7UUFBVSxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBRnZELGtCQUFhLEdBQW1CLEVBQUUsQ0FBQztRQUd6QyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDckIsU0FBUyxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FDaEcsQ0FBQztJQUNKLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUNyRCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDdEM7SUFDSCxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQWtCO1FBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQWtCO1FBQ3pCLElBQUksS0FBSyxDQUFDLFdBQVcsRUFBRTtZQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1NBQ25FO2FBQU07WUFDTCxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO1NBQ3RFO1FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFrQjtRQUMxQixJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztTQUNwRTthQUFNO1lBQ0wsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztTQUN2RTtJQUNILENBQUM7SUFFTyxVQUFVO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLGtCQUFrQixDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQy9ELENBQUM7O2lIQTFDVSxvQkFBb0I7cUdBQXBCLG9CQUFvQjsyRkFBcEIsb0JBQW9CO2tCQUhoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO2lCQUN4QiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyNCBCcm9hZGNvbS4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoZSB0ZXJtIFwiQnJvYWRjb21cIiByZWZlcnMgdG8gQnJvYWRjb20gSW5jLiBhbmQvb3IgaXRzIHN1YnNpZGlhcmllcy5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBPbkRlc3Ryb3ksIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IERhdGFncmlkUmVuZGVyU3RlcCB9IGZyb20gJy4uL2VudW1zL3JlbmRlci1zdGVwLmVudW0nO1xuaW1wb3J0IHsgQ29sdW1uU3RhdGUgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2NvbHVtbi1zdGF0ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSElEREVOX0NPTFVNTl9DTEFTUywgU1RSSUNUX1dJRFRIX0NMQVNTIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgRGF0YWdyaWRSZW5kZXJPcmdhbml6ZXIgfSBmcm9tICcuL3JlbmRlci1vcmdhbml6ZXInO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdjbHItZGctY2VsbCcsXG59KVxuZXhwb3J0IGNsYXNzIERhdGFncmlkQ2VsbFJlbmRlcmVyIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSBzdGF0ZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBvcmdhbml6ZXI6IERhdGFncmlkUmVuZGVyT3JnYW5pemVyKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICBvcmdhbml6ZXIuZmlsdGVyUmVuZGVyU3RlcHMoRGF0YWdyaWRSZW5kZXJTdGVwLkNMRUFSX1dJRFRIUykuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2xlYXJXaWR0aCgpKVxuICAgICk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaChzdWIgPT4gc3ViLnVuc3Vic2NyaWJlKCkpO1xuICAgIGlmICh0aGlzLnN0YXRlU3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLnN0YXRlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcmVzZXRTdGF0ZShzdGF0ZTogQ29sdW1uU3RhdGUpIHtcbiAgICB0aGlzLnNldFdpZHRoKHN0YXRlKTtcbiAgICB0aGlzLnNldEhpZGRlbihzdGF0ZSk7XG4gIH1cblxuICBzZXRXaWR0aChzdGF0ZTogQ29sdW1uU3RhdGUpIHtcbiAgICBpZiAoc3RhdGUuc3RyaWN0V2lkdGgpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5lbC5uYXRpdmVFbGVtZW50LCBTVFJJQ1RfV0lEVEhfQ0xBU1MpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgU1RSSUNUX1dJRFRIX0NMQVNTKTtcbiAgICB9XG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICd3aWR0aCcsIHN0YXRlLndpZHRoICsgJ3B4Jyk7XG4gIH1cblxuICBzZXRIaWRkZW4oc3RhdGU6IENvbHVtblN0YXRlKSB7XG4gICAgaWYgKHN0YXRlLmhpZGRlbikge1xuICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIEhJRERFTl9DT0xVTU5fQ0xBU1MpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgSElEREVOX0NPTFVNTl9DTEFTUyk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBjbGVhcldpZHRoKCkge1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy5lbC5uYXRpdmVFbGVtZW50LCBTVFJJQ1RfV0lEVEhfQ0xBU1MpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnd2lkdGgnLCBudWxsKTtcbiAgfVxufVxuIl19
|
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { isPlatformBrowser } from '@angular/common';
|
|
8
8
|
import { ContentChildren, Directive, PLATFORM_ID, } from '@angular/core';
|
|
9
|
-
import { merge } from 'rxjs';
|
|
10
9
|
import { DomAdapter } from '../../../utils/dom-adapter/dom-adapter';
|
|
11
10
|
import { DatagridColumnChanges } from '../enums/column-changes.enum';
|
|
12
11
|
import { DatagridRenderStep } from '../enums/render-step.enum';
|
|
@@ -67,6 +66,9 @@ export class DatagridMainRenderer {
|
|
|
67
66
|
this.subscriptions.push(this.detailService.stateChange.subscribe(state => this.toggleDetailPane(state)));
|
|
68
67
|
this.subscriptions.push(this.items.change.subscribe(() => (this.shouldStabilizeColumns = true)));
|
|
69
68
|
}
|
|
69
|
+
ngOnInit() {
|
|
70
|
+
this.columnsService.columnsStateChange.subscribe(change => this.columnStateChanged(change));
|
|
71
|
+
}
|
|
70
72
|
ngAfterContentInit() {
|
|
71
73
|
this.setupColumns();
|
|
72
74
|
this.subscriptions.push(this.headers.changes.subscribe(() => {
|
|
@@ -76,7 +78,6 @@ export class DatagridMainRenderer {
|
|
|
76
78
|
this.columnsSizesStable = false;
|
|
77
79
|
this.stabilizeColumns();
|
|
78
80
|
}));
|
|
79
|
-
this.listenForColumnChanges();
|
|
80
81
|
}
|
|
81
82
|
// Initialize and set Table width for horizontal scrolling here.
|
|
82
83
|
ngAfterViewInit() {
|
|
@@ -118,7 +119,10 @@ export class DatagridMainRenderer {
|
|
|
118
119
|
setupColumns() {
|
|
119
120
|
this.headers.forEach((header, index) => header.setColumnState(index));
|
|
120
121
|
this.columnsService.columns.splice(this.headers.length); // Trim any old columns
|
|
121
|
-
|
|
122
|
+
// Sets columnIndex for each column
|
|
123
|
+
this.columnsService.columns.forEach((column, index) => {
|
|
124
|
+
this.columnsService.emitStateChange(column, { changes: [DatagridColumnChanges.INITIALIZE], columnIndex: index });
|
|
125
|
+
});
|
|
122
126
|
}
|
|
123
127
|
shouldComputeHeight() {
|
|
124
128
|
if (!this._heightSet && this.page.size > 0) {
|
|
@@ -175,6 +179,10 @@ export class DatagridMainRenderer {
|
|
|
175
179
|
});
|
|
176
180
|
}
|
|
177
181
|
columnStateChanged(state) {
|
|
182
|
+
// eslint-disable-next-line eqeqeq
|
|
183
|
+
if (!this.headers || state.columnIndex == null) {
|
|
184
|
+
return;
|
|
185
|
+
}
|
|
178
186
|
const columnIndex = state.columnIndex;
|
|
179
187
|
if (state.changes && state.changes.length) {
|
|
180
188
|
state.changes.forEach(change => {
|
|
@@ -182,7 +190,7 @@ export class DatagridMainRenderer {
|
|
|
182
190
|
case DatagridColumnChanges.WIDTH:
|
|
183
191
|
this.headers.get(columnIndex).setWidth(state);
|
|
184
192
|
this.rows.forEach(row => {
|
|
185
|
-
if (row.
|
|
193
|
+
if (row?.cells.length === this.columnsService.columns.length) {
|
|
186
194
|
row.cells.get(columnIndex).setWidth(state);
|
|
187
195
|
}
|
|
188
196
|
});
|
|
@@ -196,23 +204,20 @@ export class DatagridMainRenderer {
|
|
|
196
204
|
});
|
|
197
205
|
this.keyNavigation.resetKeyGrid();
|
|
198
206
|
break;
|
|
207
|
+
case DatagridColumnChanges.INITIALIZE:
|
|
208
|
+
if (state.hideable && state.hidden) {
|
|
209
|
+
this.headers.get(columnIndex).setHidden(state);
|
|
210
|
+
this.rows.forEach(row => {
|
|
211
|
+
row.setCellsState();
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
break;
|
|
199
215
|
default:
|
|
200
216
|
break;
|
|
201
217
|
}
|
|
202
218
|
});
|
|
203
219
|
}
|
|
204
220
|
}
|
|
205
|
-
listenForColumnChanges() {
|
|
206
|
-
this.columnsService.columns.forEach((column, index) => {
|
|
207
|
-
this.columnsService.emitStateChange(column, { changes: [], columnIndex: index });
|
|
208
|
-
});
|
|
209
|
-
/*
|
|
210
|
-
Merges all column subject so we can track them at once
|
|
211
|
-
and receive only the changed column as result
|
|
212
|
-
*/
|
|
213
|
-
const columnChanges = merge(...this.columnsService.columns);
|
|
214
|
-
this.subscriptions.push(columnChanges.subscribe(change => this.columnStateChanged(change)));
|
|
215
|
-
}
|
|
216
221
|
/**
|
|
217
222
|
* Triggers a whole re-rendring cycle to set column sizes, if needed.
|
|
218
223
|
*/
|
|
@@ -244,4 +249,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
|
|
|
244
249
|
type: ContentChildren,
|
|
245
250
|
args: [DatagridRowRenderer, { descendants: true }]
|
|
246
251
|
}] } });
|
|
247
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi1yZW5kZXJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL2RhdGEvZGF0YWdyaWQvcmVuZGVyL21haW4tcmVuZGVyZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFFSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBSUwsZUFBZSxFQUNmLFNBQVMsRUFJVCxXQUFXLEdBR1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLEtBQUssRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFFM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBUS9ELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVwRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7OztBQUVyRCxvQkFBb0I7QUFDcEIsb0ZBQW9GO0FBQ3BGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQUMsVUFBZSxFQUFFLEVBQUU7SUFDbkQsSUFBSSxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsRUFBRTtRQUNqQyxPQUFPLElBQUksVUFBVSxFQUFFLENBQUM7S0FDekI7U0FBTTtRQUNMLE9BQU8sSUFBSSxjQUFjLEVBQUUsQ0FBQztLQUM3QjtBQUNILENBQUMsQ0FBQztBQUVGLG9CQUFvQjtBQUNwQixvRkFBb0Y7QUFLcEYsTUFBTSxPQUFPLG9CQUFvQjtJQWUvQixZQUNVLFNBQWtDLEVBQ2xDLEtBQVksRUFDWixJQUFV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cyBSZXNlcnZlZC5cbiAqIFRoZSB0ZXJtIFwiQnJvYWRjb21cIiByZWZlcnMgdG8gQnJvYWRjb20gSW5jLiBhbmQvb3IgaXRzIHN1YnNpZGlhcmllcy5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQWZ0ZXJWaWV3Q2hlY2tlZCxcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95LFxuICBQTEFURk9STV9JRCxcbiAgUXVlcnlMaXN0LFxuICBSZW5kZXJlcjIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbWVyZ2UsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBEb21BZGFwdGVyIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvZG9tLWFkYXB0ZXIvZG9tLWFkYXB0ZXInO1xuaW1wb3J0IHsgRGF0YWdyaWRDb2x1bW5DaGFuZ2VzIH0gZnJvbSAnLi4vZW51bXMvY29sdW1uLWNoYW5nZXMuZW51bSc7XG5pbXBvcnQgeyBEYXRhZ3JpZFJlbmRlclN0ZXAgfSBmcm9tICcuLi9lbnVtcy9yZW5kZXItc3RlcC5lbnVtJztcbmltcG9ydCB7IENvbHVtblN0YXRlRGlmZiB9IGZyb20gJy4uL2ludGVyZmFjZXMvY29sdW1uLXN0YXRlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDb2x1bW5zU2VydmljZSB9IGZyb20gJy4uL3Byb3ZpZGVycy9jb2x1bW5zLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGV0YWlsU2VydmljZSB9IGZyb20gJy4uL3Byb3ZpZGVycy9kZXRhaWwuc2VydmljZSc7XG5pbXBvcnQgeyBJdGVtcyB9IGZyb20gJy4uL3Byb3ZpZGVycy9pdGVtcyc7XG5pbXBvcnQgeyBQYWdlIH0gZnJvbSAnLi4vcHJvdmlkZXJzL3BhZ2UnO1xuaW1wb3J0IHsgVGFibGVTaXplU2VydmljZSB9IGZyb20gJy4uL3Byb3ZpZGVycy90YWJsZS1zaXplLnNlcnZpY2UnO1xuaW1wb3J0IHsgS2V5TmF2aWdhdGlvbkdyaWRDb250cm9sbGVyIH0gZnJvbSAnLi4vdXRpbHMva2V5LW5hdmlnYXRpb24tZ3JpZC5jb250cm9sbGVyJztcbmltcG9ydCB7IERhdGFncmlkSGVhZGVyUmVuZGVyZXIgfSBmcm9tICcuL2hlYWRlci1yZW5kZXJlcic7XG5pbXBvcnQgeyBOb29wRG9tQWRhcHRlciB9IGZyb20gJy4vbm9vcC1kb20tYWRhcHRlcic7XG5pbXBvcnQgeyBEYXRhZ3JpZFJlbmRlck9yZ2FuaXplciB9IGZyb20gJy4vcmVuZGVyLW9yZ2FuaXplcic7XG5pbXBvcnQgeyBEYXRhZ3JpZFJvd1JlbmRlcmVyIH0gZnJvbSAnLi9yb3ctcmVuZGVyZXInO1xuXG4vLyBGaXhlcyBidWlsZCBlcnJvclxuLy8gQGR5bmFtaWMgKGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzE5Njk4I2lzc3VlY29tbWVudC0zMzgzNDAyMTEpXG5leHBvcnQgY29uc3QgZG9tQWRhcHRlckZhY3RvcnkgPSAocGxhdGZvcm1JZDogYW55KSA9PiB7XG4gIGlmIChpc1BsYXRmb3JtQnJvd3NlcihwbGF0Zm9ybUlkKSkge1xuICAgIHJldHVybiBuZXcgRG9tQWRhcHRlcigpO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBuZXcgTm9vcERvbUFkYXB0ZXIoKTtcbiAgfVxufTtcblxuLy8gRml4ZXMgYnVpbGQgZXJyb3Jcbi8vIEBkeW5hbWljIChodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8xOTY5OCNpc3N1ZWNvbW1lbnQtMzM4MzQwMjExKVxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnY2xyLWRhdGFncmlkJyxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBEb21BZGFwdGVyLCB1c2VGYWN0b3J5OiBkb21BZGFwdGVyRmFjdG9yeSwgZGVwczogW1BMQVRGT1JNX0lEXSB9XSxcbn0pXG5leHBvcnQgY2xhc3MgRGF0YWdyaWRNYWluUmVuZGVyZXIgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0LCBBZnRlclZpZXdDaGVja2VkLCBPbkRlc3Ryb3kge1xuICBAQ29udGVudENoaWxkcmVuKERhdGFncmlkSGVhZGVyUmVuZGVyZXIpIHByaXZhdGUgaGVhZGVyczogUXVlcnlMaXN0PERhdGFncmlkSGVhZGVyUmVuZGVyZXI+O1xuICBAQ29udGVudENoaWxkcmVuKERhdGFncmlkUm93UmVuZGVyZXIsIHsgZGVzY2VuZGFudHM6IHRydWUgfSkgcHJpdmF0ZSByb3dzOiBRdWVyeUxpc3Q8RGF0YWdyaWRSb3dSZW5kZXJlcj47IC8vIGlmIGV4cGFuZGFibGUgcm93IGlzIGV4cGFuZGVkIGluaXRpYWxseSwgcXVlcnkgaXRzIGNlbGxzIHRvby5cblxuICBwcml2YXRlIF9oZWlnaHRTZXQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBzaG91bGRTdGFiaWxpemVDb2x1bW5zID0gdHJ1ZTtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgd2Ugd2FudCB0byByZS1jb21wdXRlIGNvbHVtbnMgd2lkdGguIFRoaXMgc2hvdWxkIG9ubHkgaGFwcGVuOlxuICAgKiAxKSBXaGVuIGhlYWRlcnMgY2hhbmdlLCB3aXRoIGNvbHVtbnMgYmVpbmcgYWRkZWQgb3IgcmVtb3ZlZFxuICAgKiAyKSBXaGVuIHJvd3MgYXJlIGxhemlseSBsb2FkZWQgZm9yIHRoZSBmaXJzdCB0aW1lXG4gICAqL1xuICBwcml2YXRlIGNvbHVtbnNTaXplc1N0YWJsZSA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgb3JnYW5pemVyOiBEYXRhZ3JpZFJlbmRlck9yZ2FuaXplcixcbiAgICBwcml2YXRlIGl0ZW1zOiBJdGVtcyxcbiAgICBwcml2YXRlIHBhZ2U6IFBhZ2UsXG4gICAgcHJpdmF0ZSBkb21BZGFwdGVyOiBEb21BZGFwdGVyLFxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgZGV0YWlsU2VydmljZTogRGV0YWlsU2VydmljZSxcbiAgICBwcml2YXRlIHRhYmxlU2l6ZVNlcnZpY2U6IFRhYmxlU2l6ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb2x1bW5zU2VydmljZTogQ29sdW1uc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIGtleU5hdmlnYXRpb246IEtleU5hdmlnYXRpb25HcmlkQ29udHJvbGxlclxuICApIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMub3JnYW5pemVyXG4gICAgICAgIC5maWx0ZXJSZW5kZXJTdGVwcyhEYXRhZ3JpZFJlbmRlclN0ZXAuQ09NUFVURV9DT0xVTU5fV0lEVEhTKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuY29tcHV0ZUhlYWRlcnNXaWR0aCgpKVxuICAgICk7XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMucGFnZS5zaXplQ2hhbmdlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLl9oZWlnaHRTZXQpIHtcbiAgICAgICAgICB0aGlzLnJlc2V0RGF0YWdyaWRIZWlnaHQoKTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHRoaXMuZGV0YWlsU2VydmljZS5zdGF0ZUNoYW5nZS5zdWJzY3JpYmUoc3RhdGUgPT4gdGhpcy50b2dnbGVEZXRhaWxQYW5lKHN0YXRlKSkpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHRoaXMuaXRlbXMuY2hhbmdlLnN1YnNjcmliZSgoKSA9PiAodGhpcy5zaG91bGRTdGFiaWxpemVDb2x1bW5zID0gdHJ1ZSkpKTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLnNldHVwQ29sdW1ucygpO1xuXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICB0aGlzLmhlYWRlcnMuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAvLyBUT0RPOiBvbmx5IHJlLXN0YWJpbGl6ZSBpZiBhIGNvbHVtbiB3YXMgYWRkZWQgb3IgcmVtb3ZlZC4gUmVvcmRlcmluZyBpcyBmaW5lLlxuICAgICAgICAvLyBOZWVkIHRvIHNldHVwIGNvbHVtbnMgYmVmb3JlIHN0YWJhbGl6aW5nIHRoZW1cbiAgICAgICAgdGhpcy5zZXR1cENvbHVtbnMoKTtcbiAgICAgICAgdGhpcy5jb2x1bW5zU2l6ZXNTdGFibGUgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zdGFiaWxpemVDb2x1bW5zKCk7XG4gICAgICB9KVxuICAgICk7XG4gICAgdGhpcy5saXN0ZW5Gb3JDb2x1bW5DaGFuZ2VzKCk7XG4gIH1cblxuICAvLyBJbml0aWFsaXplIGFuZCBzZXQgVGFibGUgd2lkdGggZm9yIGhvcml6b250YWwgc2Nyb2xsaW5nIGhlcmUuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLnRhYmxlU2l6ZVNlcnZpY2UudGFibGUgPSB0aGlzLmVsO1xuICB9XG5cbiAgbmdBZnRlclZpZXdDaGVja2VkKCkge1xuICAgIGlmICh0aGlzLnNob3VsZFN0YWJpbGl6ZUNvbHVtbnMpIHtcbiAgICAgIHRoaXMuc3RhYmlsaXplQ29sdW1ucygpO1xuICAgIH1cbiAgICBpZiAodGhpcy5zaG91bGRDb21wdXRlSGVpZ2h0KCkpIHtcbiAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5jb21wdXRlRGF0YWdyaWRIZWlnaHQoKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaChzdWIgPT4gc3ViLnVuc3Vic2NyaWJlKCkpO1xuICB9XG5cbiAgdG9nZ2xlRGV0YWlsUGFuZShzdGF0ZTogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLmhlYWRlcnMpIHtcbiAgICAgIGlmIChzdGF0ZSAmJiAhdGhpcy5jb2x1bW5zU2VydmljZS5oYXNDYWNoZSgpKSB7XG4gICAgICAgIHRoaXMuY29sdW1uc1NlcnZpY2UuY2FjaGUoKTtcbiAgICAgICAgdGhpcy5oZWFkZXJzLmZvckVhY2goKF9oZWFkZXIsIGluZGV4KSA9PiB7XG4gICAgICAgICAgaWYgKGluZGV4ID4gMCkge1xuICAgICAgICAgICAgdGhpcy5jb2x1bW5zU2VydmljZS5lbWl0U3RhdGVDaGFuZ2VBdChpbmRleCwge1xuICAgICAgICAgICAgICBjaGFuZ2VzOiBbRGF0YWdyaWRDb2x1bW5DaGFuZ2VzLkhJRERFTl0sXG4gICAgICAgICAgICAgIGhpZGRlbjogc3RhdGUsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIGlmICghc3RhdGUpIHtcbiAgICAgICAgdGhpcy5jb2x1bW5zU2VydmljZS5yZXNldFRvTGFzdENhY2hlKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXR1cENvbHVtbnMoKSB7XG4gICAgdGhpcy5oZWFkZXJzLmZvckVhY2goKGhlYWRlciwgaW5kZXgpID0+IGhlYWRlci5zZXRDb2x1bW5TdGF0ZShpbmRleCkpO1xuICAgIHRoaXMuY29sdW1uc1NlcnZpY2UuY29sdW1ucy5zcGxpY2UodGhpcy5oZWFkZXJzLmxlbmd0aCk7IC8vIFRyaW0gYW55IG9sZCBjb2x1bW5zXG4gICAgdGhpcy5yb3dzLmZvckVhY2gocm93ID0+IHJvdy5zZXRDZWxsc1N0YXRlKCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBzaG91bGRDb21wdXRlSGVpZ2h0KCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5faGVpZ2h0U2V0ICYmIHRoaXMucGFnZS5zaXplID4gMCkge1xuICAgICAgaWYgKHRoaXMuaXRlbXMuZGlzcGxheWVkLmxlbmd0aCA9PT0gdGhpcy5wYWdlLnNpemUpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb21wdXRlcyB0aGUgaGVpZ2h0IG9mIHRoZSBkYXRhZ3JpZC5cbiAgICpcbiAgICogTk9URTogV2UgaGFkIHRvIGNob29zZSB0byBzZXQgdGhlIGhlaWdodCBpbnN0ZWFkIG9mIHRoZSBtaW4taGVpZ2h0IGJlY2F1c2VcbiAgICogSUUgMTEgcmVxdWlyZXMgdGhlIGhlaWdodCBvbiB0aGUgcGFyZW50IGZvciB0aGUgY2hpbGRyZW4gZmxleCBncm93L3NocmluayBwcm9wZXJ0aWVzIHRvIHdvcmsuXG4gICAqIFdoZW4gd2UgdXNlZCBtaW4taGVpZ2h0LCAxIDEgYXV0byBkb2Vzbid0IHVzZWQgdG8gd29yayBpbiBJRTExIDotKFxuICAgKiBCdXQgdGhpcyBkb2Vzbid0IGFmZmVjdCB0aGUgZml4LiBJdCB3b3JrcyBpbiBib3RoIGZpeGVkICYgdmFyaWFibGUgaGVpZ2h0IGRhdGFncmlkcy5cbiAgICpcbiAgICogUmVmZXI6IGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMjQzOTYyMDUvZmxleC1ncm93LW5vdC13b3JraW5nLWluLWludGVybmV0LWV4cGxvcmVyLTExLTBcbiAgICovXG4gIHByaXZhdGUgY29tcHV0ZURhdGFncmlkSGVpZ2h0KCkge1xuICAgIGNvbnN0IGhlaWdodCA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCkuaGVpZ2h0O1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnaGVpZ2h0JywgaGVpZ2h0KTtcbiAgICB0aGlzLl9oZWlnaHRTZXQgPSB0cnVlO1xuICB9XG5cbiAgcHJpdmF0ZSByZXNldERhdGFncmlkSGVpZ2h0KCkge1xuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnaGVpZ2h0JywgJycpO1xuICAgIHRoaXMuX2hlaWdodFNldCA9IGZhbHNlO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ha2VzIGVhY2ggaGVhZGVyIGNvbXB1dGUgaXRzIHdpZHRoLlxuICAgKi9cbiAgcHJpdmF0ZSBjb21wdXRlSGVhZGVyc1dpZHRoKCkge1xuICAgIGNvbnN0IG5iQ29sdW1uczogbnVtYmVyID0gdGhpcy5oZWFkZXJzLmxlbmd0aDtcbiAgICBjb25zdCBoZWFkZXJXaWR0aHMgPSB0aGlzLmhlYWRlcnMubWFwKGhlYWRlciA9PiB7XG4gICAgICByZXR1cm4gaGVhZGVyLmdldENvbHVtbldpZHRoU3RhdGUoKTtcbiAgICB9KTtcbiAgICBsZXQgYWxsU3RyaWN0ID0gdHJ1ZTtcbiAgICB0aGlzLmhlYWRlcnMuZm9yRWFjaCgoaGVhZGVyLCBpbmRleCkgPT4ge1xuICAgICAgLy8gT24gdGhlIGxhc3QgaGVhZGVyIGNvbHVtbiBjaGVjayB3aGV0aGVyIGFsbCBjb2x1bW5zIGhhdmUgc3RyaWN0IHdpZHRocy5cbiAgICAgIC8vIElmIGFsbCBjb2x1bW5zIGhhdmUgc3RyaWN0IHdpZHRocywgcmVtb3ZlIHRoZSBzdHJpY3Qgd2lkdGggZnJvbSB0aGUgbGFzdCBjb2x1bW4gYW5kIG1ha2UgaXQgdGhlIGNvbHVtbidzXG4gICAgICAvLyBtaW5pbXVtIHdpZHRoIHNvIHRoYXQgd2hlbiBhbGwgcHJldmlvdXMgY29sdW1ucyBzaHJpbmssIGl0IHdpbGwgZ2V0IGEgZmxleGlibGUgd2lkdGggYW5kIGNvdmVyIHRoZSBlbXB0eVxuICAgICAgLy8gZ2FwIGluIHRoZSBEYXRhZ3JpZC5cbiAgICAgIGNvbnN0IHN0YXRlOiBDb2x1bW5TdGF0ZURpZmYgPSB7XG4gICAgICAgIGNoYW5nZXM6IFtEYXRhZ3JpZENvbHVtbkNoYW5nZXMuV0lEVEhdLFxuICAgICAgICAuLi5oZWFkZXJXaWR0aHNbaW5kZXhdLFxuICAgICAgfTtcblxuICAgICAgaWYgKCFzdGF0ZS5zdHJpY3RXaWR0aCkge1xuICAgICAgICBhbGxTdHJpY3QgPSBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgaWYgKG5iQ29sdW1ucyA9PT0gaW5kZXggKyAxICYmIGFsbFN0cmljdCkge1xuICAgICAgICBzdGF0ZS5zdHJpY3RXaWR0aCA9IDA7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY29sdW1uc1NlcnZpY2UuZW1pdFN0YXRlQ2hhbmdlQXQoaW5kZXgsIHN0YXRlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY29sdW1uU3RhdGVDaGFuZ2VkKHN0YXRlKSB7XG4gICAgY29uc3QgY29sdW1uSW5kZXggPSBzdGF0ZS5jb2x1bW5JbmRleDtcbiAgICBpZiAoc3RhdGUuY2hhbmdlcyAmJiBzdGF0ZS5jaGFuZ2VzLmxlbmd0aCkge1xuICAgICAgc3RhdGUuY2hhbmdlcy5mb3JFYWNoKGNoYW5nZSA9PiB7XG4gICAgICAgIHN3aXRjaCAoY2hhbmdlKSB7XG4gICAgICAgICAgY2FzZSBEYXRhZ3JpZENvbHVtbkNoYW5nZXMuV0lEVEg6XG4gICAgICAgICAgICB0aGlzLmhlYWRlcnMuZ2V0KGNvbHVtbkluZGV4KS5zZXRXaWR0aChzdGF0ZSk7XG4gICAgICAgICAgICB0aGlzLnJvd3MuZm9yRWFjaChyb3cgPT4ge1xuICAgICAgICAgICAgICBpZiAocm93LmNlbGxzICYmIHJvdy5jZWxscy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICByb3cuY2VsbHMuZ2V0KGNvbHVtbkluZGV4KS5zZXRXaWR0aChzdGF0ZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSBEYXRhZ3JpZENvbHVtbkNoYW5nZXMuSElEREVOOlxuICAgICAgICAgICAgdGhpcy5oZWFkZXJzLmdldChjb2x1bW5JbmRleCkuc2V0SGlkZGVuKHN0YXRlKTtcbiAgICAgICAgICAgIHRoaXMucm93cy5mb3JFYWNoKHJvdyA9PiB7XG4gICAgICAgICAgICAgIGlmIChyb3cuY2VsbHMgJiYgcm93LmNlbGxzLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHJvdy5jZWxscy5nZXQoY29sdW1uSW5kZXgpLnNldEhpZGRlbihzdGF0ZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5rZXlOYXZpZ2F0aW9uLnJlc2V0S2V5R3JpZCgpO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGxpc3RlbkZvckNvbHVtbkNoYW5nZXMoKSB7XG4gICAgdGhpcy5jb2x1bW5zU2VydmljZS5jb2x1bW5zLmZvckVhY2goKGNvbHVtbiwgaW5kZXgpID0+IHtcbiAgICAgIHRoaXMuY29sdW1uc1NlcnZpY2UuZW1pdFN0YXRlQ2hhbmdlKGNvbHVtbiwgeyBjaGFuZ2VzOiBbXSwgY29sdW1uSW5kZXg6IGluZGV4IH0pO1xuICAgIH0pO1xuICAgIC8qIFxuICAgICAgTWVyZ2VzIGFsbCBjb2x1bW4gc3ViamVjdCBzbyB3ZSBjYW4gdHJhY2sgdGhlbSBhdCBvbmNlXG4gICAgICBhbmQgcmVjZWl2ZSBvbmx5IHRoZSBjaGFuZ2VkIGNvbHVtbiBhcyByZXN1bHRcbiAgICAqL1xuICAgIGNvbnN0IGNvbHVtbkNoYW5nZXMgPSBtZXJnZSguLi50aGlzLmNvbHVtbnNTZXJ2aWNlLmNvbHVtbnMpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKGNvbHVtbkNoYW5nZXMuc3Vic2NyaWJlKGNoYW5nZSA9PiB0aGlzLmNvbHVtblN0YXRlQ2hhbmdlZChjaGFuZ2UpKSk7XG4gIH1cblxuICAvKipcbiAgICogVHJpZ2dlcnMgYSB3aG9sZSByZS1yZW5kcmluZyBjeWNsZSB0byBzZXQgY29sdW1uIHNpemVzLCBpZiBuZWVkZWQuXG4gICAqL1xuICBwcml2YXRlIHN0YWJpbGl6ZUNvbHVtbnMoKSB7XG4gICAgdGhpcy5zaG91bGRTdGFiaWxpemVDb2x1bW5zID0gZmFsc2U7XG4gICAgaWYgKHRoaXMuY29sdW1uc1NpemVzU3RhYmxlKSB7XG4gICAgICAvLyBOb3RoaW5nIHRvIGRvLlxuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvLyBSZXNpemUgd2hlbiB0aGUgcm93cyBhcmUgbG9hZGVkLlxuICAgIGlmICh0aGlzLml0ZW1zLmRpc3BsYXllZC5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLm9yZ2FuaXplci5yZXNpemUoKTtcbiAgICAgIHRoaXMuY29sdW1uc1NpemVzU3RhYmxlID0gdHJ1ZTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
252
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi1yZW5kZXJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL2RhdGEvZGF0YWdyaWQvcmVuZGVyL21haW4tcmVuZGVyZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFFSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBSUwsZUFBZSxFQUNmLFNBQVMsRUFJVCxXQUFXLEdBR1osTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBUS9ELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzNELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVwRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7OztBQUVyRCxvQkFBb0I7QUFDcEIsb0ZBQW9GO0FBQ3BGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQUMsVUFBZSxFQUFFLEVBQUU7SUFDbkQsSUFBSSxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsRUFBRTtRQUNqQyxPQUFPLElBQUksVUFBVSxFQUFFLENBQUM7S0FDekI7U0FBTTtRQUNMLE9BQU8sSUFBSSxjQUFjLEVBQUUsQ0FBQztLQUM3QjtBQUNILENBQUMsQ0FBQztBQUVGLG9CQUFvQjtBQUNwQixvRkFBb0Y7QUFLcEYsTUFBTSxPQUFPLG9CQUFvQjtJQWUvQixZQUNVLFNBQWtDLEVBQ2xDLEtBQVksRUFDWixJQUFVLEVBQ1YsVUFBc0IsRUFDdEIsRUFBYyxFQUNkLFFBQW1CLEVBQ25CLGFB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RCxPQUFPO3NCQUF2RCxlQUFlO3VCQUFDLHNCQUFzQjtnQkFDOEIsSUFBSTtzQkFBeEUsZUFBZTt1QkFBQyxtQkFBbUIsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjQgQnJvYWRjb20uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGUgdGVybSBcIkJyb2FkY29tXCIgcmVmZXJzIHRvIEJyb2FkY29tIEluYy4gYW5kL29yIGl0cyBzdWJzaWRpYXJpZXMuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIEFmdGVyVmlld0NoZWNrZWQsXG4gIEFmdGVyVmlld0luaXQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBOZ1pvbmUsXG4gIE9uRGVzdHJveSxcbiAgUExBVEZPUk1fSUQsXG4gIFF1ZXJ5TGlzdCxcbiAgUmVuZGVyZXIyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBEb21BZGFwdGVyIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvZG9tLWFkYXB0ZXIvZG9tLWFkYXB0ZXInO1xuaW1wb3J0IHsgRGF0YWdyaWRDb2x1bW5DaGFuZ2VzIH0gZnJvbSAnLi4vZW51bXMvY29sdW1uLWNoYW5nZXMuZW51bSc7XG5pbXBvcnQgeyBEYXRhZ3JpZFJlbmRlclN0ZXAgfSBmcm9tICcuLi9lbnVtcy9yZW5kZXItc3RlcC5lbnVtJztcbmltcG9ydCB7IENvbHVtblN0YXRlRGlmZiB9IGZyb20gJy4uL2ludGVyZmFjZXMvY29sdW1uLXN0YXRlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDb2x1bW5zU2VydmljZSB9IGZyb20gJy4uL3Byb3ZpZGVycy9jb2x1bW5zLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGV0YWlsU2VydmljZSB9IGZyb20gJy4uL3Byb3ZpZGVycy9kZXRhaWwuc2VydmljZSc7XG5pbXBvcnQgeyBJdGVtcyB9IGZyb20gJy4uL3Byb3ZpZGVycy9pdGVtcyc7XG5pbXBvcnQgeyBQYWdlIH0gZnJvbSAnLi4vcHJvdmlkZXJzL3BhZ2UnO1xuaW1wb3J0IHsgVGFibGVTaXplU2VydmljZSB9IGZyb20gJy4uL3Byb3ZpZGVycy90YWJsZS1zaXplLnNlcnZpY2UnO1xuaW1wb3J0IHsgS2V5TmF2aWdhdGlvbkdyaWRDb250cm9sbGVyIH0gZnJvbSAnLi4vdXRpbHMva2V5LW5hdmlnYXRpb24tZ3JpZC5jb250cm9sbGVyJztcbmltcG9ydCB7IERhdGFncmlkSGVhZGVyUmVuZGVyZXIgfSBmcm9tICcuL2hlYWRlci1yZW5kZXJlcic7XG5pbXBvcnQgeyBOb29wRG9tQWRhcHRlciB9IGZyb20gJy4vbm9vcC1kb20tYWRhcHRlcic7XG5pbXBvcnQgeyBEYXRhZ3JpZFJlbmRlck9yZ2FuaXplciB9IGZyb20gJy4vcmVuZGVyLW9yZ2FuaXplcic7XG5pbXBvcnQgeyBEYXRhZ3JpZFJvd1JlbmRlcmVyIH0gZnJvbSAnLi9yb3ctcmVuZGVyZXInO1xuXG4vLyBGaXhlcyBidWlsZCBlcnJvclxuLy8gQGR5bmFtaWMgKGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzE5Njk4I2lzc3VlY29tbWVudC0zMzgzNDAyMTEpXG5leHBvcnQgY29uc3QgZG9tQWRhcHRlckZhY3RvcnkgPSAocGxhdGZvcm1JZDogYW55KSA9PiB7XG4gIGlmIChpc1BsYXRmb3JtQnJvd3NlcihwbGF0Zm9ybUlkKSkge1xuICAgIHJldHVybiBuZXcgRG9tQWRhcHRlcigpO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBuZXcgTm9vcERvbUFkYXB0ZXIoKTtcbiAgfVxufTtcblxuLy8gRml4ZXMgYnVpbGQgZXJyb3Jcbi8vIEBkeW5hbWljIChodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8xOTY5OCNpc3N1ZWNvbW1lbnQtMzM4MzQwMjExKVxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnY2xyLWRhdGFncmlkJyxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBEb21BZGFwdGVyLCB1c2VGYWN0b3J5OiBkb21BZGFwdGVyRmFjdG9yeSwgZGVwczogW1BMQVRGT1JNX0lEXSB9XSxcbn0pXG5leHBvcnQgY2xhc3MgRGF0YWdyaWRNYWluUmVuZGVyZXIgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0LCBBZnRlclZpZXdDaGVja2VkLCBPbkRlc3Ryb3kge1xuICBAQ29udGVudENoaWxkcmVuKERhdGFncmlkSGVhZGVyUmVuZGVyZXIpIHByaXZhdGUgaGVhZGVyczogUXVlcnlMaXN0PERhdGFncmlkSGVhZGVyUmVuZGVyZXI+O1xuICBAQ29udGVudENoaWxkcmVuKERhdGFncmlkUm93UmVuZGVyZXIsIHsgZGVzY2VuZGFudHM6IHRydWUgfSkgcHJpdmF0ZSByb3dzOiBRdWVyeUxpc3Q8RGF0YWdyaWRSb3dSZW5kZXJlcj47IC8vIGlmIGV4cGFuZGFibGUgcm93IGlzIGV4cGFuZGVkIGluaXRpYWxseSwgcXVlcnkgaXRzIGNlbGxzIHRvby5cblxuICBwcml2YXRlIF9oZWlnaHRTZXQgPSBmYWxzZTtcbiAgcHJpdmF0ZSBzaG91bGRTdGFiaWxpemVDb2x1bW5zID0gdHJ1ZTtcbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgd2Ugd2FudCB0byByZS1jb21wdXRlIGNvbHVtbnMgd2lkdGguIFRoaXMgc2hvdWxkIG9ubHkgaGFwcGVuOlxuICAgKiAxKSBXaGVuIGhlYWRlcnMgY2hhbmdlLCB3aXRoIGNvbHVtbnMgYmVpbmcgYWRkZWQgb3IgcmVtb3ZlZFxuICAgKiAyKSBXaGVuIHJvd3MgYXJlIGxhemlseSBsb2FkZWQgZm9yIHRoZSBmaXJzdCB0aW1lXG4gICAqL1xuICBwcml2YXRlIGNvbHVtbnNTaXplc1N0YWJsZSA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgb3JnYW5pemVyOiBEYXRhZ3JpZFJlbmRlck9yZ2FuaXplcixcbiAgICBwcml2YXRlIGl0ZW1zOiBJdGVtcyxcbiAgICBwcml2YXRlIHBhZ2U6IFBhZ2UsXG4gICAgcHJpdmF0ZSBkb21BZGFwdGVyOiBEb21BZGFwdGVyLFxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgZGV0YWlsU2VydmljZTogRGV0YWlsU2VydmljZSxcbiAgICBwcml2YXRlIHRhYmxlU2l6ZVNlcnZpY2U6IFRhYmxlU2l6ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb2x1bW5zU2VydmljZTogQ29sdW1uc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIGtleU5hdmlnYXRpb246IEtleU5hdmlnYXRpb25HcmlkQ29udHJvbGxlclxuICApIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMub3JnYW5pemVyXG4gICAgICAgIC5maWx0ZXJSZW5kZXJTdGVwcyhEYXRhZ3JpZFJlbmRlclN0ZXAuQ09NUFVURV9DT0xVTU5fV0lEVEhTKVxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuY29tcHV0ZUhlYWRlcnNXaWR0aCgpKVxuICAgICk7XG5cbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMucGFnZS5zaXplQ2hhbmdlLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLl9oZWlnaHRTZXQpIHtcbiAgICAgICAgICB0aGlzLnJlc2V0RGF0YWdyaWRIZWlnaHQoKTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHRoaXMuZGV0YWlsU2VydmljZS5zdGF0ZUNoYW5nZS5zdWJzY3JpYmUoc3RhdGUgPT4gdGhpcy50b2dnbGVEZXRhaWxQYW5lKHN0YXRlKSkpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKHRoaXMuaXRlbXMuY2hhbmdlLnN1YnNjcmliZSgoKSA9PiAodGhpcy5zaG91bGRTdGFiaWxpemVDb2x1bW5zID0gdHJ1ZSkpKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY29sdW1uc1NlcnZpY2UuY29sdW1uc1N0YXRlQ2hhbmdlLnN1YnNjcmliZShjaGFuZ2UgPT4gdGhpcy5jb2x1bW5TdGF0ZUNoYW5nZWQoY2hhbmdlKSk7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgdGhpcy5zZXR1cENvbHVtbnMoKTtcblxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxuICAgICAgdGhpcy5oZWFkZXJzLmNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgLy8gVE9ETzogb25seSByZS1zdGFiaWxpemUgaWYgYSBjb2x1bW4gd2FzIGFkZGVkIG9yIHJlbW92ZWQuIFJlb3JkZXJpbmcgaXMgZmluZS5cbiAgICAgICAgLy8gTmVlZCB0byBzZXR1cCBjb2x1bW5zIGJlZm9yZSBzdGFiYWxpemluZyB0aGVtXG4gICAgICAgIHRoaXMuc2V0dXBDb2x1bW5zKCk7XG4gICAgICAgIHRoaXMuY29sdW1uc1NpemVzU3RhYmxlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc3RhYmlsaXplQ29sdW1ucygpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLy8gSW5pdGlhbGl6ZSBhbmQgc2V0IFRhYmxlIHdpZHRoIGZvciBob3Jpem9udGFsIHNjcm9sbGluZyBoZXJlLlxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy50YWJsZVNpemVTZXJ2aWNlLnRhYmxlID0gdGhpcy5lbDtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpIHtcbiAgICBpZiAodGhpcy5zaG91bGRTdGFiaWxpemVDb2x1bW5zKSB7XG4gICAgICB0aGlzLnN0YWJpbGl6ZUNvbHVtbnMoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuc2hvdWxkQ29tcHV0ZUhlaWdodCgpKSB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuY29tcHV0ZURhdGFncmlkSGVpZ2h0KCk7XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2goc3ViID0+IHN1Yi51bnN1YnNjcmliZSgpKTtcbiAgfVxuXG4gIHRvZ2dsZURldGFpbFBhbmUoc3RhdGU6IGJvb2xlYW4pIHtcbiAgICBpZiAodGhpcy5oZWFkZXJzKSB7XG4gICAgICBpZiAoc3RhdGUgJiYgIXRoaXMuY29sdW1uc1NlcnZpY2UuaGFzQ2FjaGUoKSkge1xuICAgICAgICB0aGlzLmNvbHVtbnNTZXJ2aWNlLmNhY2hlKCk7XG4gICAgICAgIHRoaXMuaGVhZGVycy5mb3JFYWNoKChfaGVhZGVyLCBpbmRleCkgPT4ge1xuICAgICAgICAgIGlmIChpbmRleCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMuY29sdW1uc1NlcnZpY2UuZW1pdFN0YXRlQ2hhbmdlQXQoaW5kZXgsIHtcbiAgICAgICAgICAgICAgY2hhbmdlczogW0RhdGFncmlkQ29sdW1uQ2hhbmdlcy5ISURERU5dLFxuICAgICAgICAgICAgICBoaWRkZW46IHN0YXRlLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSBpZiAoIXN0YXRlKSB7XG4gICAgICAgIHRoaXMuY29sdW1uc1NlcnZpY2UucmVzZXRUb0xhc3RDYWNoZSgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBDb2x1bW5zKCkge1xuICAgIHRoaXMuaGVhZGVycy5mb3JFYWNoKChoZWFkZXIsIGluZGV4KSA9PiBoZWFkZXIuc2V0Q29sdW1uU3RhdGUoaW5kZXgpKTtcbiAgICB0aGlzLmNvbHVtbnNTZXJ2aWNlLmNvbHVtbnMuc3BsaWNlKHRoaXMuaGVhZGVycy5sZW5ndGgpOyAvLyBUcmltIGFueSBvbGQgY29sdW1uc1xuICAgIC8vIFNldHMgY29sdW1uSW5kZXggZm9yIGVhY2ggY29sdW1uXG4gICAgdGhpcy5jb2x1bW5zU2VydmljZS5jb2x1bW5zLmZvckVhY2goKGNvbHVtbiwgaW5kZXgpID0+IHtcbiAgICAgIHRoaXMuY29sdW1uc1NlcnZpY2UuZW1pdFN0YXRlQ2hhbmdlKGNvbHVtbiwgeyBjaGFuZ2VzOiBbRGF0YWdyaWRDb2x1bW5DaGFuZ2VzLklOSVRJQUxJWkVdLCBjb2x1bW5JbmRleDogaW5kZXggfSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHNob3VsZENvbXB1dGVIZWlnaHQoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLl9oZWlnaHRTZXQgJiYgdGhpcy5wYWdlLnNpemUgPiAwKSB7XG4gICAgICBpZiAodGhpcy5pdGVtcy5kaXNwbGF5ZWQubGVuZ3RoID09PSB0aGlzLnBhZ2Uuc2l6ZSkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXB1dGVzIHRoZSBoZWlnaHQgb2YgdGhlIGRhdGFncmlkLlxuICAgKlxuICAgKiBOT1RFOiBXZSBoYWQgdG8gY2hvb3NlIHRvIHNldCB0aGUgaGVpZ2h0IGluc3RlYWQgb2YgdGhlIG1pbi1oZWlnaHQgYmVjYXVzZVxuICAgKiBJRSAxMSByZXF1aXJlcyB0aGUgaGVpZ2h0IG9uIHRoZSBwYXJlbnQgZm9yIHRoZSBjaGlsZHJlbiBmbGV4IGdyb3cvc2hyaW5rIHByb3BlcnRpZXMgdG8gd29yay5cbiAgICogV2hlbiB3ZSB1c2VkIG1pbi1oZWlnaHQsIDEgMSBhdXRvIGRvZXNuJ3QgdXNlZCB0byB3b3JrIGluIElFMTEgOi0oXG4gICAqIEJ1dCB0aGlzIGRvZXNuJ3QgYWZmZWN0IHRoZSBmaXguIEl0IHdvcmtzIGluIGJvdGggZml4ZWQgJiB2YXJpYWJsZSBoZWlnaHQgZGF0YWdyaWRzLlxuICAgKlxuICAgKiBSZWZlcjogaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8yNDM5NjIwNS9mbGV4LWdyb3ctbm90LXdvcmtpbmctaW4taW50ZXJuZXQtZXhwbG9yZXItMTEtMFxuICAgKi9cbiAgcHJpdmF0ZSBjb21wdXRlRGF0YWdyaWRIZWlnaHQoKSB7XG4gICAgY29uc3QgaGVpZ2h0ID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50KS5oZWlnaHQ7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdoZWlnaHQnLCBoZWlnaHQpO1xuICAgIHRoaXMuX2hlaWdodFNldCA9IHRydWU7XG4gIH1cblxuICBwcml2YXRlIHJlc2V0RGF0YWdyaWRIZWlnaHQoKSB7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdoZWlnaHQnLCAnJyk7XG4gICAgdGhpcy5faGVpZ2h0U2V0ID0gZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogTWFrZXMgZWFjaCBoZWFkZXIgY29tcHV0ZSBpdHMgd2lkdGguXG4gICAqL1xuICBwcml2YXRlIGNvbXB1dGVIZWFkZXJzV2lkdGgoKSB7XG4gICAgY29uc3QgbmJDb2x1bW5zOiBudW1iZXIgPSB0aGlzLmhlYWRlcnMubGVuZ3RoO1xuICAgIGNvbnN0IGhlYWRlcldpZHRocyA9IHRoaXMuaGVhZGVycy5tYXAoaGVhZGVyID0+IHtcbiAgICAgIHJldHVybiBoZWFkZXIuZ2V0Q29sdW1uV2lkdGhTdGF0ZSgpO1xuICAgIH0pO1xuICAgIGxldCBhbGxTdHJpY3QgPSB0cnVlO1xuICAgIHRoaXMuaGVhZGVycy5mb3JFYWNoKChoZWFkZXIsIGluZGV4KSA9PiB7XG4gICAgICAvLyBPbiB0aGUgbGFzdCBoZWFkZXIgY29sdW1uIGNoZWNrIHdoZXRoZXIgYWxsIGNvbHVtbnMgaGF2ZSBzdHJpY3Qgd2lkdGhzLlxuICAgICAgLy8gSWYgYWxsIGNvbHVtbnMgaGF2ZSBzdHJpY3Qgd2lkdGhzLCByZW1vdmUgdGhlIHN0cmljdCB3aWR0aCBmcm9tIHRoZSBsYXN0IGNvbHVtbiBhbmQgbWFrZSBpdCB0aGUgY29sdW1uJ3NcbiAgICAgIC8vIG1pbmltdW0gd2lkdGggc28gdGhhdCB3aGVuIGFsbCBwcmV2aW91cyBjb2x1bW5zIHNocmluaywgaXQgd2lsbCBnZXQgYSBmbGV4aWJsZSB3aWR0aCBhbmQgY292ZXIgdGhlIGVtcHR5XG4gICAgICAvLyBnYXAgaW4gdGhlIERhdGFncmlkLlxuICAgICAgY29uc3Qgc3RhdGU6IENvbHVtblN0YXRlRGlmZiA9IHtcbiAgICAgICAgY2hhbmdlczogW0RhdGFncmlkQ29sdW1uQ2hhbmdlcy5XSURUSF0sXG4gICAgICAgIC4uLmhlYWRlcldpZHRoc1tpbmRleF0sXG4gICAgICB9O1xuXG4gICAgICBpZiAoIXN0YXRlLnN0cmljdFdpZHRoKSB7XG4gICAgICAgIGFsbFN0cmljdCA9IGZhbHNlO1xuICAgICAgfVxuXG4gICAgICBpZiAobmJDb2x1bW5zID09PSBpbmRleCArIDEgJiYgYWxsU3RyaWN0KSB7XG4gICAgICAgIHN0YXRlLnN0cmljdFdpZHRoID0gMDtcbiAgICAgIH1cblxuICAgICAgdGhpcy5jb2x1bW5zU2VydmljZS5lbWl0U3RhdGVDaGFuZ2VBdChpbmRleCwgc3RhdGUpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjb2x1bW5TdGF0ZUNoYW5nZWQoc3RhdGUpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZXFlcWVxXG4gICAgaWYgKCF0aGlzLmhlYWRlcnMgfHwgc3RhdGUuY29sdW1uSW5kZXggPT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBjb2x1bW5JbmRleCA9IHN0YXRlLmNvbHVtbkluZGV4O1xuICAgIGlmIChzdGF0ZS5jaGFuZ2VzICYmIHN0YXRlLmNoYW5nZXMubGVuZ3RoKSB7XG4gICAgICBzdGF0ZS5jaGFuZ2VzLmZvckVhY2goY2hhbmdlID0+IHtcbiAgICAgICAgc3dpdGNoIChjaGFuZ2UpIHtcbiAgICAgICAgICBjYXNlIERhdGFncmlkQ29sdW1uQ2hhbmdlcy5XSURUSDpcbiAgICAgICAgICAgIHRoaXMuaGVhZGVycy5nZXQoY29sdW1uSW5kZXgpLnNldFdpZHRoKHN0YXRlKTtcbiAgICAgICAgICAgIHRoaXMucm93cy5mb3JFYWNoKHJvdyA9PiB7XG4gICAgICAgICAgICAgIGlmIChyb3c/LmNlbGxzLmxlbmd0aCA9PT0gdGhpcy5jb2x1bW5zU2VydmljZS5jb2x1bW5zLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHJvdy5jZWxscy5nZXQoY29sdW1uSW5kZXgpLnNldFdpZHRoKHN0YXRlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIERhdGFncmlkQ29sdW1uQ2hhbmdlcy5ISURERU46XG4gICAgICAgICAgICB0aGlzLmhlYWRlcnMuZ2V0KGNvbHVtbkluZGV4KS5zZXRIaWRkZW4oc3RhdGUpO1xuICAgICAgICAgICAgdGhpcy5yb3dzLmZvckVhY2gocm93ID0+IHtcbiAgICAgICAgICAgICAgaWYgKHJvdy5jZWxscyAmJiByb3cuY2VsbHMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgcm93LmNlbGxzLmdldChjb2x1bW5JbmRleCkuc2V0SGlkZGVuKHN0YXRlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLmtleU5hdmlnYXRpb24ucmVzZXRLZXlHcmlkKCk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlIERhdGFncmlkQ29sdW1uQ2hhbmdlcy5JTklUSUFMSVpFOlxuICAgICAgICAgICAgaWYgKHN0YXRlLmhpZGVhYmxlICYmIHN0YXRlLmhpZGRlbikge1xuICAgICAgICAgICAgICB0aGlzLmhlYWRlcnMuZ2V0KGNvbHVtbkluZGV4KS5zZXRIaWRkZW4oc3RhdGUpO1xuICAgICAgICAgICAgICB0aGlzLnJvd3MuZm9yRWFjaChyb3cgPT4ge1xuICAgICAgICAgICAgICAgIHJvdy5zZXRDZWxsc1N0YXRlKCk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVHJpZ2dlcnMgYSB3aG9sZSByZS1yZW5kcmluZyBjeWNsZSB0byBzZXQgY29sdW1uIHNpemVzLCBpZiBuZWVkZWQuXG4gICAqL1xuICBwcml2YXRlIHN0YWJpbGl6ZUNvbHVtbnMoKSB7XG4gICAgdGhpcy5zaG91bGRTdGFiaWxpemVDb2x1bW5zID0gZmFsc2U7XG4gICAgaWYgKHRoaXMuY29sdW1uc1NpemVzU3RhYmxlKSB7XG4gICAgICAvLyBOb3RoaW5nIHRvIGRvLlxuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICAvLyBSZXNpemUgd2hlbiB0aGUgcm93cyBhcmUgbG9hZGVkLlxuICAgIGlmICh0aGlzLml0ZW1zLmRpc3BsYXllZC5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLm9yZ2FuaXplci5yZXNpemUoKTtcbiAgICAgIHRoaXMuY29sdW1uc1NpemVzU3RhYmxlID0gdHJ1ZTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -28,6 +28,7 @@ export function getTabableItems(el) {
|
|
|
28
28
|
export class KeyNavigationGridController {
|
|
29
29
|
constructor(zone) {
|
|
30
30
|
this.zone = zone;
|
|
31
|
+
this.skipItemFocus = false;
|
|
31
32
|
this.listenersAdded = false;
|
|
32
33
|
this.destroy$ = new Subject();
|
|
33
34
|
this._activeCell = null;
|
|
@@ -124,10 +125,12 @@ export class KeyNavigationGridController {
|
|
|
124
125
|
prior.setAttribute('tabindex', '-1');
|
|
125
126
|
}
|
|
126
127
|
activeCell.setAttribute('tabindex', '0');
|
|
128
|
+
this._activeCell = activeCell;
|
|
127
129
|
const items = getTabableItems(activeCell);
|
|
128
130
|
const item = activeCell.getAttribute('role') !== 'columnheader' && items[0] ? items[0] : activeCell;
|
|
129
|
-
|
|
130
|
-
|
|
131
|
+
if (!this.skipItemFocus) {
|
|
132
|
+
item.focus();
|
|
133
|
+
}
|
|
131
134
|
}
|
|
132
135
|
getNextItemCoordinate(e) {
|
|
133
136
|
let currentCell = this.cells ? Array.from(this.cells).find(i => i.getAttribute('tabindex') === '0') : null;
|
|
@@ -183,4 +186,4 @@ KeyNavigationGridController.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "1
|
|
|
183
186
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: KeyNavigationGridController, decorators: [{
|
|
184
187
|
type: Injectable
|
|
185
188
|
}], ctorParameters: function () { return [{ type: i0.NgZone }]; } });
|
|
186
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5LW5hdmlnYXRpb24tZ3JpZC5jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvZGF0YS9kYXRhZ3JpZC91dGlscy9rZXktbmF2aWdhdGlvbi1ncmlkLmNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBRTNDLE1BQU0sVUFBVSxlQUFlLENBQUMsRUFBZTtJQUM3QyxNQUFNLGVBQWUsR0FBRztRQUN0QixTQUFTO1FBQ1QsWUFBWTtRQUNaLHVCQUF1QjtRQUN2Qix3QkFBd0I7UUFDeEIsd0JBQXdCO1FBQ3hCLDBCQUEwQjtRQUMxQixRQUFRO1FBQ1IsUUFBUTtRQUNSLE9BQU87UUFDUCxhQUFhO1FBQ2IseUJBQXlCO1FBQ3pCLCtCQUErQjtLQUNoQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNaLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLENBQWtCLENBQUM7QUFDM0UsQ0FBQztBQVNELE1BQU0sT0FBTywyQkFBMkI7SUFPdEMsWUFBb0IsSUFBWTtRQUFaLFNBQUksR0FBSixJQUFJLENBQVE7UUFKeEIsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDdkIsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDL0IsZ0JBQVcsR0FBZ0IsSUFBSSxDQUFDO1FBR3RDLElBQUksQ0FBQyxNQUFNLEdBQUc7WUFDWixXQUFXLEVBQUUsdUNBQXVDO1lBQ3BELFlBQVksRUFDViw4TEFBOEw7WUFDaE0sT0FBTyxF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QUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDM0csSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLEtBQUssRUFBRTtZQUNwQixXQUFXLEdBQUcsUUFBUSxDQUFDLGFBQTRCLENBQUM7U0FDckQ7UUFDRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsSUFBSSxJQUFJLFdBQVcsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDOUcsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTNGLElBQUksQ0FBQyxHQUNILFVBQVUsSUFBSSxXQUFXO1lBQ3ZCLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztZQUN4RixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ1IsSUFBSSxDQUFDLEdBQUcsVUFBVSxJQUFJLFdBQVcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUUvRixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztRQUMxQixNQUFNLFdBQVcsR0FBRyxHQUFHLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQztRQUMvRCxNQUFNLFNBQVMsR0FBRyxHQUFHLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQztRQUU3RCxNQUFNLFlBQVksR0FDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXRHLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNuQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNYO2FBQU0sSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLFdBQVcsSUFBSSxDQUFDLEdBQUcsU0FBUyxFQUFFO1lBQ2xELENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ1g7YUFBTSxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssV0FBVyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDNUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDWDthQUFNLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLElBQUksQ0FBQyxHQUFHLFlBQVksRUFBRTtZQUNuRCxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNYO2FBQU0sSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLEtBQUssRUFBRTtZQUMzQixDQUFDLEdBQUcsWUFBWSxDQUFDO1lBRWpCLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRTtnQkFDYixDQUFDLEdBQUcsU0FBUyxDQUFDO2FBQ2Y7U0FDRjthQUFNLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxNQUFNLEVBQUU7WUFDNUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUVOLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRTtnQkFDYixDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ1A7U0FDRjthQUFNLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUU7WUFDOUIsQ0FBQyxHQUFHLENBQUMsR0FBRyxZQUFZLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsWUFBWSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3JEO2FBQU0sSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLFVBQVUsRUFBRTtZQUNoQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLFlBQVksR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztTQUNqRTtRQUVELE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7SUFDbEIsQ0FBQzs7d0hBcExVLDJCQUEyQjs0SEFBM0IsMkJBQTJCOzJGQUEzQiwyQkFBMkI7a0JBRHZDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjQgQnJvYWRjb20uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGUgdGVybSBcIkJyb2FkY29tXCIgcmVmZXJzIHRvIEJyb2FkY29tIEluYy4gYW5kL29yIGl0cyBzdWJzaWRpYXJpZXMuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IEluamVjdGFibGUsIE5nWm9uZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFRhYmFibGVJdGVtcyhlbDogSFRNTEVsZW1lbnQpIHtcbiAgY29uc3QgdGFiYWJsZVNlbGVjdG9yID0gW1xuICAgICdhW2hyZWZdJyxcbiAgICAnYXJlYVtocmVmXScsXG4gICAgJ2lucHV0Om5vdChbZGlzYWJsZWRdKScsXG4gICAgJ2J1dHRvbjpub3QoW2Rpc2FibGVkXSknLFxuICAgICdzZWxlY3Q6bm90KFtkaXNhYmxlZF0pJyxcbiAgICAndGV4dGFyZWE6bm90KFtkaXNhYmxlZF0pJyxcbiAgICAnaWZyYW1lJyxcbiAgICAnb2JqZWN0JyxcbiAgICAnZW1iZWQnLFxuICAgICcqW3RhYmluZGV4XScsXG4gICAgJypbY29udGVudGVkaXRhYmxlPXRydWVdJyxcbiAgICAnW3JvbGU9YnV0dG9uXTpub3QoW2Rpc2FibGVkXSknLFxuICBdLmpvaW4oJywnKTtcbiAgcmV0dXJuIEFycmF5LmZyb20oZWwucXVlcnlTZWxlY3RvckFsbCh0YWJhYmxlU2VsZWN0b3IpKSBhcyBIVE1MRWxlbWVudFtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEtleU5hdmlnYXRpb25HcmlkQ29uZmlnIHtcbiAga2V5R3JpZDogc3RyaW5nO1xuICBrZXlHcmlkUm93czogc3RyaW5nO1xuICBrZXlHcmlkQ2VsbHM6IHN0cmluZztcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEtleU5hdmlnYXRpb25HcmlkQ29udHJvbGxlciBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHByaXZhdGUgaG9zdDogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgY29uZmlnOiBLZXlOYXZpZ2F0aW9uR3JpZENvbmZpZztcbiAgcHJpdmF0ZSBsaXN0ZW5lcnNBZGRlZCA9IGZhbHNlO1xuICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgcHJpdmF0ZSBfYWN0aXZlQ2VsbDogSFRNTEVsZW1lbnQgPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgem9uZTogTmdab25lKSB7XG4gICAgdGhpcy5jb25maWcgPSB7XG4gICAgICBrZXlHcmlkUm93czogJ1tyb2xlPXJvd106bm90KC5kYXRhZ3JpZC1wbGFjZWhvbGRlciknLFxuICAgICAga2V5R3JpZENlbGxzOlxuICAgICAgICAnW3JvbGU9Z3JpZGNlbGxdOm5vdCguZGF0YWdyaWQtaGlkZGVuLWNvbHVtbik6bm90KC5kYXRhZ3JpZC1wbGFjZWhvbGRlci1jb250ZW50KSwgW3JvbGU9Y29sdW1uaGVhZGVyXTpub3QoLmRhdGFncmlkLWhpZGRlbi1jb2x1bW4pOm5vdCguZGF0YWdyaWQtcGxhY2Vob2xkZXItY29udGVudCksIC5kYXRhZ3JpZC1kZXRhaWwtY2FyZXQnLFxuICAgICAga2V5R3JpZDogJ1tyb2xlPWdyaWRdJyxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgZ3JpZCgpIHtcbiAgICByZXR1cm4gdGhpcy5ob3N0Py5xdWVyeVNlbGVjdG9yKHRoaXMuY29uZmlnLmtleUdyaWQpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgcm93cygpIHtcbiAgICByZXR1cm4gdGhpcy5ob3N0Py5xdWVyeVNlbGVjdG9yQWxsKHRoaXMuY29uZmlnLmtleUdyaWRSb3dzKSBhcyBOb2RlTGlzdE9mPEhUTUxFbGVtZW50PjtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGNlbGxzKCkge1xuICAgIHJldHVybiB0aGlzLmhvc3Q/LnF1ZXJ5U2VsZWN0b3JBbGwodGhpcy5jb25maWcua2V5R3JpZENlbGxzKSBhcyBOb2RlTGlzdE9mPEhUTUxFbGVtZW50PjtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIGFkZExpc3RlbmVycygpIHtcbiAgICBpZiAodGhpcy5saXN0ZW5lcnNBZGRlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICBmcm9tRXZlbnQodGhpcy5ncmlkLCAnbW91c2Vkb3duJylcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgICAgICAuc3Vic2NyaWJlKChlOiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgICAgLy8gcHJlc2VydmUgcmlnaHQgY2xpY2sgZm9yIGNvbnRleHQgbWVudXMgJiBrZXlib2FyZCBtb3VzZSBjb250cm9sIGh0dHBzOi8vYXBwbGUuc3RhY2tleGNoYW5nZS5jb20vcXVlc3Rpb25zLzMyNzE1L2hvdy1kby1pLW9wZW4tdGhlLWNvbnRleHQtbWVudS1mcm9tLWEtbWFjLWtleWJvYXJkXG4gICAgICAgICAgaWYgKGUuYnV0dG9ucyA9PT0gMSAmJiAhZS5jdHJsS2V5KSB7XG4gICAgICAgICAgICBjb25zdCBhY3RpdmVDZWxsID0gdGhpcy5jZWxsc1xuICAgICAgICAgICAgICA/IEFycmF5LmZyb20odGhpcy5jZWxscykuZmluZChcbiAgICAgICAgICAgICAgICAgIGMgPT4gYyA9PT0gZS50YXJnZXQgfHwgYyA9PT0gKGUudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5jbG9zZXN0KHRoaXMuY29uZmlnLmtleUdyaWRDZWxscylcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIDogbnVsbDtcbiAgICAgICAgICAgIGlmIChhY3RpdmVDZWxsKSB7XG4gICAgICAgICAgICAgIHRoaXMuc2V0QWN0aXZlQ2VsbChhY3RpdmVDZWxsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICBmcm9tRXZlbnQodGhpcy5ncmlkLCAnd2hlZWwnKVxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIHRoaXMucmVtb3ZlQWN0aXZlQ2VsbCgpO1xuICAgICAgICB9KTtcblxuICAgICAgZnJvbUV2ZW50KHRoaXMuZ3JpZCwgJ2tleWRvd24nKVxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgIC5zdWJzY3JpYmUoKGU6IEtleWJvYXJkRXZlbnQpID0+IHtcbiAgICAgICAgICAvLyBTa2lwIGNvbHVtbiByZXNpemUgZXZlbnRzXG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgKGUudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5jbGFzc0xpc3QuY29udGFpbnMoJ2RyYWctaGFuZGxlJykgJiZcbiAgICAgICAgICAgIChlLmNvZGUgPT09ICdBcnJvd0xlZnQnIHx8IGUuY29kZSA9PT0gJ0Fycm93UmlnaHQnKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBlLmNvZGUgPT09ICdBcnJvd1VwJyB8fFxuICAgICAgICAgICAgZS5jb2RlID09PSAnQXJyb3dEb3duJyB8fFxuICAgICAgICAgICAgZS5jb2RlID09PSAnQXJyb3dMZWZ0JyB8fFxuICAgICAgICAgICAgZS5jb2RlID09PSAnQXJyb3dSaWdodCcgfHxcbiAgICAgICAgICAgIGUuY29kZSA9PT0gJ0VuZCcgfHxcbiAgICAgICAgICAgIGUuY29kZSA9PT0gJ0hvbWUnIHx8XG4gICAgICAgICAgICBlLmNvZGUgPT09ICdQYWdlVXAnIHx8XG4gICAgICAgICAgICBlLmNvZGUgPT09ICdQYWdlRG93bidcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIGNvbnN0IHsgeCwgeSB9ID0gdGhpcy5nZXROZXh0SXRlbUNvb3JkaW5hdGUoZSk7XG4gICAgICAgICAgICBjb25zdCBhY3RpdmVJdGVtID0gdGhpcy5yb3dzXG4gICAgICAgICAgICAgID8gKEFycmF5LmZyb20odGhpcy5yb3dzW3ldLnF1ZXJ5U2VsZWN0b3JBbGwodGhpcy5jb25maWcua2V5R3JpZENlbGxzKSlbeF0gYXMgSFRNTEVsZW1lbnQpXG4gICAgICAgICAgICAgIDogbnVsbDtcbiAgICAgICAgICAgIGlmIChhY3RpdmVJdGVtKSB7XG4gICAgICAgICAgICAgIHRoaXMuc2V0QWN0aXZlQ2VsbChhY3RpdmVJdGVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH0pO1xuICAgIHRoaXMubGlzdGVuZXJzQWRkZWQgPSB0cnVlO1xuICB9XG5cbiAgaW5pdGlhbGl6ZUtleUdyaWQoaG9zdDogSFRNTEVsZW1lbnQpIHtcbiAgICB0aGlzLmhvc3QgPSBob3N0O1xuICAgIHRoaXMuYWRkTGlzdGVuZXJzKCk7XG4gICAgdGhpcy5yZXNldEtleUdyaWQoKTtcbiAgfVxuXG4gIHJlc2V0S2V5R3JpZCgpIHtcbiAgICB0aGlzLmNlbGxzPy5mb3JFYWNoKChpOiBIVE1MRWxlbWVudCkgPT4gaS5zZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JywgJy0xJykpO1xuICAgIGNvbnN0IGZpcnN0Q2VsbCA9IHRoaXMuY2VsbHMgPyB0aGlzLmNlbGxzWzBdIDogbnVsbDtcbiAgICBmaXJzdENlbGw/LnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCAnMCcpO1xuICB9XG5cbiAgcmVtb3ZlQWN0aXZlQ2VsbCgpIHtcbiAgICB0aGlzLl9hY3RpdmVDZWxsID0gbnVsbDtcbiAgfVxuXG4gIGdldEFjdGl2ZUNlbGwoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZUNlbGw7XG4gIH1cblxuICBzZXRBY3RpdmVDZWxsKGFjdGl2ZUNlbGw6IEhUTUxFbGVtZW50KSB7XG4gICAgY29uc3QgcHJpb3IgPSB0aGlzLmNlbGxzID8gQXJyYXkuZnJvbSh0aGlzLmNlbGxzKS5maW5kKGMgPT4gYy5nZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JykgPT09ICcwJykgOiBudWxsO1xuXG4gICAgaWYgKHByaW9yKSB7XG4gICAgICBwcmlvci5zZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JywgJy0xJyk7XG4gICAgfVxuXG4gICAgYWN0aXZlQ2VsbC5zZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JywgJzAnKTtcblxuICAgIGNvbnN0IGl0ZW1zID0gZ2V0VGFiYWJsZUl0ZW1zKGFjdGl2ZUNlbGwpO1xuICAgIGNvbnN0IGl0ZW0gPSBhY3RpdmVDZWxsLmdldEF0dHJpYnV0ZSgncm9sZScpICE9PSAnY29sdW1uaGVhZGVyJyAmJiBpdGVtc1swXSA/IGl0ZW1zWzBdIDogYWN0aXZlQ2VsbDtcblxuICAgIGl0ZW0uZm9jdXMoKTtcbiAgICB0aGlzLl9hY3RpdmVDZWxsID0gaXRlbTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0TmV4dEl0ZW1Db29yZGluYXRlKGU6IGFueSkge1xuICAgIGxldCBjdXJyZW50Q2VsbCA9IHRoaXMuY2VsbHMgPyBBcnJheS5mcm9tKHRoaXMuY2VsbHMpLmZpbmQoaSA9PiBpLmdldEF0dHJpYnV0ZSgndGFiaW5kZXgnKSA9PT0gJzAnKSA6IG51bGw7XG4gICAgaWYgKGUuY29kZSA9PT0gJ1RhYicpIHtcbiAgICAgIGN1cnJlbnRDZWxsID0gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcbiAgICB9XG4gICAgY29uc3QgY3VycmVudFJvdyA9IHRoaXMucm93cyAmJiBjdXJyZW50Q2VsbCA/IEFycmF5LmZyb20odGhpcy5yb3dzKS5maW5kKHIgPT4gci5jb250YWlucyhjdXJyZW50Q2VsbCkpIDogbnVsbDtcbiAgICBjb25zdCBudW1PZlJvd3MgPSB0aGlzLnJvd3MgPyB0aGlzLnJvd3MubGVuZ3RoIC0gMSA6IDA7XG4gICAgY29uc3QgbnVtT2ZDb2x1bW5zID0gdGhpcy5jZWxscyA/IE1hdGguZmxvb3IodGhpcy5jZWxscy5sZW5ndGggLyB0aGlzLnJvd3MubGVuZ3RoIC0gMSkgOiAwO1xuXG4gICAgbGV0IHggPVxuICAgICAgY3VycmVudFJvdyAmJiBjdXJyZW50Q2VsbFxuICAgICAgICA/IEFycmF5LmZyb20oY3VycmVudFJvdy5xdWVyeVNlbGVjdG9yQWxsKHRoaXMuY29uZmlnLmtleUdyaWRDZWxscykpLmluZGV4T2YoY3VycmVudENlbGwpXG4gICAgICAgIDogMDtcbiAgICBsZXQgeSA9IGN1cnJlbnRSb3cgJiYgY3VycmVudENlbGwgJiYgdGhpcy5yb3dzID8gQXJyYXkuZnJvbSh0aGlzLnJvd3MpLmluZGV4T2YoY3VycmVudFJvdykgOiAwO1xuXG4gICAgY29uc3QgZGlyID0gdGhpcy5ob3N0LmRpcjtcbiAgICBjb25zdCBpbmxpbmVTdGFydCA9IGRpciA9PT0gJ3J0bCcgPyAnQXJyb3dSaWdodCcgOiAnQXJyb3dMZWZ0JztcbiAgICBjb25zdCBpbmxpbmVFbmQgPSBkaXIgPT09ICdydGwnID8gJ0Fycm93TGVmdCcgOiAnQXJyb3dSaWdodCc7XG5cbiAgICBjb25zdCBpdGVtc1BlclBhZ2UgPVxuICAgICAgTWF0aC5mbG9vcih0aGlzLmhvc3Q/LnF1ZXJ5U2VsZWN0b3IoJy5kYXRhZ3JpZCcpLmNsaWVudEhlaWdodCAvIHRoaXMucm93c1swXS5jbGllbnRIZWlnaHQpIC0gMSB8fCAwO1xuXG4gICAgaWYgKGUuY29kZSA9PT0gJ0Fycm93VXAnICYmIHkgIT09IDApIHtcbiAgICAgIHkgPSB5IC0gMTtcbiAgICB9IGVsc2UgaWYgKGUuY29kZSA9PT0gJ0Fycm93RG93bicgJiYgeSA8IG51bU9mUm93cykge1xuICAgICAgeSA9IHkgKyAxO1xuICAgIH0gZWxzZSBpZiAoZS5jb2RlID09PSBpbmxpbmVTdGFydCAmJiB4ICE9PSAwKSB7XG4gICAgICB4ID0geCAtIDE7XG4gICAgfSBlbHNlIGlmIChlLmNvZGUgPT09IGlubGluZUVuZCAmJiB4IDwgbnVtT2ZDb2x1bW5zKSB7XG4gICAgICB4ID0geCArIDE7XG4gICAgfSBlbHNlIGlmIChlLmNvZGUgPT09ICdFbmQnKSB7XG4gICAgICB4ID0gbnVtT2ZDb2x1bW5zO1xuXG4gICAgICBpZiAoZS5jdHJsS2V5KSB7XG4gICAgICAgIHkgPSBudW1PZlJvd3M7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChlLmNvZGUgPT09ICdIb21lJykge1xuICAgICAgeCA9IDA7XG5cbiAgICAgIGlmIChlLmN0cmxLZXkpIHtcbiAgICAgICAgeSA9IDA7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChlLmNvZGUgPT09ICdQYWdlVXAnKSB7XG4gICAgICB5ID0geSAtIGl0ZW1zUGVyUGFnZSA+IDAgPyB5IC0gaXRlbXNQZXJQYWdlICsgMSA6IDE7XG4gICAgfSBlbHNlIGlmIChlLmNvZGUgPT09ICdQYWdlRG93bicpIHtcbiAgICAgIHkgPSB5ICsgaXRlbXNQZXJQYWdlIDwgbnVtT2ZSb3dzID8geSArIGl0ZW1zUGVyUGFnZSA6IG51bU9mUm93cztcbiAgICB9XG5cbiAgICByZXR1cm4geyB4LCB5IH07XG4gIH1cbn1cbiJdfQ==
|
|
189
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5LW5hdmlnYXRpb24tZ3JpZC5jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvZGF0YS9kYXRhZ3JpZC91dGlscy9rZXktbmF2aWdhdGlvbi1ncmlkLmNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFFSCxPQUFPLEVBQUUsVUFBVSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBRTNDLE1BQU0sVUFBVSxlQUFlLENBQUMsRUFBZTtJQUM3QyxNQUFNLGVBQWUsR0FBRztRQUN0QixTQUFTO1FBQ1QsWUFBWTtRQUNaLHVCQUF1QjtRQUN2Qix3QkFBd0I7UUFDeEIsd0JBQXdCO1FBQ3hCLDBCQUEwQjtRQUMxQixRQUFRO1FBQ1IsUUFBUTtRQUNSLE9BQU87UUFDUCxhQUFhO1FBQ2IseUJBQXlCO1FBQ3pCLCtCQUErQjtLQUNoQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNaLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLENBQWtCLENBQUM7QUFDM0UsQ0FBQztBQVNELE1BQU0sT0FBTywyQkFBMkI7SUFTdEMsWUFBb0IsSUFBWTtRQUFaLFNBQUksR0FBSixJQUFJLENBQVE7UUFSaEMsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFJZCxtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2QixhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUMvQixnQkFBVyxHQUFnQixJQUFJLENBQUM7UUFHdEMsSUFBSSxDQUFDLE1BQU0sR0FBRztZQUNaLFdBQVcsRUFBRSx1Q0FBdUM7WUFDcEQsWUFB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QztRQUNSLElBQUksQ0FBQyxHQUFHLFVBQVUsSUFBSSxXQUFXLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFL0YsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7UUFDMUIsTUFBTSxXQUFXLEdBQUcsR0FBRyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDL0QsTUFBTSxTQUFTLEdBQUcsR0FBRyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUM7UUFFN0QsTUFBTSxZQUFZLEdBQ2hCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsV0FBVyxDQUFDLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV0RyxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDbkMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDWDthQUFNLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxXQUFXLElBQUksQ0FBQyxHQUFHLFNBQVMsRUFBRTtZQUNsRCxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNYO2FBQU0sSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLFdBQVcsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzVDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ1g7YUFBTSxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssU0FBUyxJQUFJLENBQUMsR0FBRyxZQUFZLEVBQUU7WUFDbkQsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDWDthQUFNLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxLQUFLLEVBQUU7WUFDM0IsQ0FBQyxHQUFHLFlBQVksQ0FBQztZQUVqQixJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUU7Z0JBQ2IsQ0FBQyxHQUFHLFNBQVMsQ0FBQzthQUNmO1NBQ0Y7YUFBTSxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssTUFBTSxFQUFFO1lBQzVCLENBQUMsR0FBRyxDQUFDLENBQUM7WUFFTixJQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUU7Z0JBQ2IsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUNQO1NBQ0Y7YUFBTSxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFO1lBQzlCLENBQUMsR0FBRyxDQUFDLEdBQUcsWUFBWSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLFlBQVksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNyRDthQUFNLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxVQUFVLEVBQUU7WUFDaEMsQ0FBQyxHQUFHLENBQUMsR0FBRyxZQUFZLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7U0FDakU7UUFFRCxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO0lBQ2xCLENBQUM7O3dIQXhMVSwyQkFBMkI7NEhBQTNCLDJCQUEyQjsyRkFBM0IsMkJBQTJCO2tCQUR2QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxNi0yMDI0IEJyb2FkY29tLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICogVGhlIHRlcm0gXCJCcm9hZGNvbVwiIHJlZmVycyB0byBCcm9hZGNvbSBJbmMuIGFuZC9vciBpdHMgc3Vic2lkaWFyaWVzLlxuICogVGhpcyBzb2Z0d2FyZSBpcyByZWxlYXNlZCB1bmRlciBNSVQgbGljZW5zZS5cbiAqIFRoZSBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24gY2FuIGJlIGZvdW5kIGluIExJQ0VOU0UgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgcHJvamVjdC5cbiAqL1xuXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBOZ1pvbmUsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRUYWJhYmxlSXRlbXMoZWw6IEhUTUxFbGVtZW50KSB7XG4gIGNvbnN0IHRhYmFibGVTZWxlY3RvciA9IFtcbiAgICAnYVtocmVmXScsXG4gICAgJ2FyZWFbaHJlZl0nLFxuICAgICdpbnB1dDpub3QoW2Rpc2FibGVkXSknLFxuICAgICdidXR0b246bm90KFtkaXNhYmxlZF0pJyxcbiAgICAnc2VsZWN0Om5vdChbZGlzYWJsZWRdKScsXG4gICAgJ3RleHRhcmVhOm5vdChbZGlzYWJsZWRdKScsXG4gICAgJ2lmcmFtZScsXG4gICAgJ29iamVjdCcsXG4gICAgJ2VtYmVkJyxcbiAgICAnKlt0YWJpbmRleF0nLFxuICAgICcqW2NvbnRlbnRlZGl0YWJsZT10cnVlXScsXG4gICAgJ1tyb2xlPWJ1dHRvbl06bm90KFtkaXNhYmxlZF0pJyxcbiAgXS5qb2luKCcsJyk7XG4gIHJldHVybiBBcnJheS5mcm9tKGVsLnF1ZXJ5U2VsZWN0b3JBbGwodGFiYWJsZVNlbGVjdG9yKSkgYXMgSFRNTEVsZW1lbnRbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBLZXlOYXZpZ2F0aW9uR3JpZENvbmZpZyB7XG4gIGtleUdyaWQ6IHN0cmluZztcbiAga2V5R3JpZFJvd3M6IHN0cmluZztcbiAga2V5R3JpZENlbGxzOiBzdHJpbmc7XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBLZXlOYXZpZ2F0aW9uR3JpZENvbnRyb2xsZXIgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBza2lwSXRlbUZvY3VzID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBob3N0OiBIVE1MRWxlbWVudDtcbiAgcHJpdmF0ZSBjb25maWc6IEtleU5hdmlnYXRpb25HcmlkQ29uZmlnO1xuICBwcml2YXRlIGxpc3RlbmVyc0FkZGVkID0gZmFsc2U7XG4gIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIF9hY3RpdmVDZWxsOiBIVE1MRWxlbWVudCA9IG51bGw7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB6b25lOiBOZ1pvbmUpIHtcbiAgICB0aGlzLmNvbmZpZyA9IHtcbiAgICAgIGtleUdyaWRSb3dzOiAnW3JvbGU9cm93XTpub3QoLmRhdGFncmlkLXBsYWNlaG9sZGVyKScsXG4gICAgICBrZXlHcmlkQ2VsbHM6XG4gICAgICAgICdbcm9sZT1ncmlkY2VsbF06bm90KC5kYXRhZ3JpZC1oaWRkZW4tY29sdW1uKTpub3QoLmRhdGFncmlkLXBsYWNlaG9sZGVyLWNvbnRlbnQpLCBbcm9sZT1jb2x1bW5oZWFkZXJdOm5vdCguZGF0YWdyaWQtaGlkZGVuLWNvbHVtbik6bm90KC5kYXRhZ3JpZC1wbGFjZWhvbGRlci1jb250ZW50KSwgLmRhdGFncmlkLWRldGFpbC1jYXJldCcsXG4gICAgICBrZXlHcmlkOiAnW3JvbGU9Z3JpZF0nLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGdldCBncmlkKCkge1xuICAgIHJldHVybiB0aGlzLmhvc3Q/LnF1ZXJ5U2VsZWN0b3IodGhpcy5jb25maWcua2V5R3JpZCk7XG4gIH1cblxuICBwcml2YXRlIGdldCByb3dzKCkge1xuICAgIHJldHVybiB0aGlzLmhvc3Q/LnF1ZXJ5U2VsZWN0b3JBbGwodGhpcy5jb25maWcua2V5R3JpZFJvd3MpIGFzIE5vZGVMaXN0T2Y8SFRNTEVsZW1lbnQ+O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgY2VsbHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuaG9zdD8ucXVlcnlTZWxlY3RvckFsbCh0aGlzLmNvbmZpZy5rZXlHcmlkQ2VsbHMpIGFzIE5vZGVMaXN0T2Y8SFRNTEVsZW1lbnQ+O1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgYWRkTGlzdGVuZXJzKCkge1xuICAgIGlmICh0aGlzLmxpc3RlbmVyc0FkZGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy56b25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIGZyb21FdmVudCh0aGlzLmdyaWQsICdtb3VzZWRvd24nKVxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgIC5zdWJzY3JpYmUoKGU6IE1vdXNlRXZlbnQpID0+IHtcbiAgICAgICAgICAvLyBwcmVzZXJ2ZSByaWdodCBjbGljayBmb3IgY29udGV4dCBtZW51cyAmIGtleWJvYXJkIG1vdXNlIGNvbnRyb2wgaHR0cHM6Ly9hcHBsZS5zdGFja2V4Y2hhbmdlLmNvbS9xdWVzdGlvbnMvMzI3MTUvaG93LWRvLWktb3Blbi10aGUtY29udGV4dC1tZW51LWZyb20tYS1tYWMta2V5Ym9hcmRcbiAgICAgICAgICBpZiAoZS5idXR0b25zID09PSAxICYmICFlLmN0cmxLZXkpIHtcbiAgICAgICAgICAgIGNvbnN0IGFjdGl2ZUNlbGwgPSB0aGlzLmNlbGxzXG4gICAgICAgICAgICAgID8gQXJyYXkuZnJvbSh0aGlzLmNlbGxzKS5maW5kKFxuICAgICAgICAgICAgICAgICAgYyA9PiBjID09PSBlLnRhcmdldCB8fCBjID09PSAoZS50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmNsb3Nlc3QodGhpcy5jb25maWcua2V5R3JpZENlbGxzKVxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgOiBudWxsO1xuICAgICAgICAgICAgaWYgKGFjdGl2ZUNlbGwpIHtcbiAgICAgICAgICAgICAgdGhpcy5zZXRBY3RpdmVDZWxsKGFjdGl2ZUNlbGwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgIGZyb21FdmVudCh0aGlzLmdyaWQsICd3aGVlbCcpXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5yZW1vdmVBY3RpdmVDZWxsKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICBmcm9tRXZlbnQodGhpcy5ncmlkLCAna2V5ZG93bicpXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgICAgLnN1YnNjcmliZSgoZTogS2V5Ym9hcmRFdmVudCkgPT4ge1xuICAgICAgICAgIC8vIFNraXAgY29sdW1uIHJlc2l6ZSBldmVudHNcbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAoZS50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmNsYXNzTGlzdC5jb250YWlucygnZHJhZy1oYW5kbGUnKSAmJlxuICAgICAgICAgICAgKGUuY29kZSA9PT0gJ0Fycm93TGVmdCcgfHwgZS5jb2RlID09PSAnQXJyb3dSaWdodCcpXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGUuY29kZSA9PT0gJ0Fycm93VXAnIHx8XG4gICAgICAgICAgICBlLmNvZGUgPT09ICdBcnJvd0Rvd24nIHx8XG4gICAgICAgICAgICBlLmNvZGUgPT09ICdBcnJvd0xlZnQnIHx8XG4gICAgICAgICAgICBlLmNvZGUgPT09ICdBcnJvd1JpZ2h0JyB8fFxuICAgICAgICAgICAgZS5jb2RlID09PSAnRW5kJyB8fFxuICAgICAgICAgICAgZS5jb2RlID09PSAnSG9tZScgfHxcbiAgICAgICAgICAgIGUuY29kZSA9PT0gJ1BhZ2VVcCcgfHxcbiAgICAgICAgICAgIGUuY29kZSA9PT0gJ1BhZ2VEb3duJ1xuICAgICAgICAgICkge1xuICAgICAgICAgICAgY29uc3QgeyB4LCB5IH0gPSB0aGlzLmdldE5leHRJdGVtQ29vcmRpbmF0ZShlKTtcbiAgICAgICAgICAgIGNvbnN0IGFjdGl2ZUl0ZW0gPSB0aGlzLnJvd3NcbiAgICAgICAgICAgICAgPyAoQXJyYXkuZnJvbSh0aGlzLnJvd3NbeV0ucXVlcnlTZWxlY3RvckFsbCh0aGlzLmNvbmZpZy5rZXlHcmlkQ2VsbHMpKVt4XSBhcyBIVE1MRWxlbWVudClcbiAgICAgICAgICAgICAgOiBudWxsO1xuICAgICAgICAgICAgaWYgKGFjdGl2ZUl0ZW0pIHtcbiAgICAgICAgICAgICAgdGhpcy5zZXRBY3RpdmVDZWxsKGFjdGl2ZUl0ZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSk7XG4gICAgdGhpcy5saXN0ZW5lcnNBZGRlZCA9IHRydWU7XG4gIH1cblxuICBpbml0aWFsaXplS2V5R3JpZChob3N0OiBIVE1MRWxlbWVudCkge1xuICAgIHRoaXMuaG9zdCA9IGhvc3Q7XG4gICAgdGhpcy5hZGRMaXN0ZW5lcnMoKTtcbiAgICB0aGlzLnJlc2V0S2V5R3JpZCgpO1xuICB9XG5cbiAgcmVzZXRLZXlHcmlkKCkge1xuICAgIHRoaXMuY2VsbHM/LmZvckVhY2goKGk6IEhUTUxFbGVtZW50KSA9PiBpLnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCAnLTEnKSk7XG4gICAgY29uc3QgZmlyc3RDZWxsID0gdGhpcy5jZWxscyA/IHRoaXMuY2VsbHNbMF0gOiBudWxsO1xuICAgIGZpcnN0Q2VsbD8uc2V0QXR0cmlidXRlKCd0YWJpbmRleCcsICcwJyk7XG4gIH1cblxuICByZW1vdmVBY3RpdmVDZWxsKCkge1xuICAgIHRoaXMuX2FjdGl2ZUNlbGwgPSBudWxsO1xuICB9XG5cbiAgZ2V0QWN0aXZlQ2VsbCgpIHtcbiAgICByZXR1cm4gdGhpcy5fYWN0aXZlQ2VsbDtcbiAgfVxuXG4gIHNldEFjdGl2ZUNlbGwoYWN0aXZlQ2VsbDogSFRNTEVsZW1lbnQpIHtcbiAgICBjb25zdCBwcmlvciA9IHRoaXMuY2VsbHMgPyBBcnJheS5mcm9tKHRoaXMuY2VsbHMpLmZpbmQoYyA9PiBjLmdldEF0dHJpYnV0ZSgndGFiaW5kZXgnKSA9PT0gJzAnKSA6IG51bGw7XG5cbiAgICBpZiAocHJpb3IpIHtcbiAgICAgIHByaW9yLnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCAnLTEnKTtcbiAgICB9XG5cbiAgICBhY3RpdmVDZWxsLnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCAnMCcpO1xuICAgIHRoaXMuX2FjdGl2ZUNlbGwgPSBhY3RpdmVDZWxsO1xuXG4gICAgY29uc3QgaXRlbXMgPSBnZXRUYWJhYmxlSXRlbXMoYWN0aXZlQ2VsbCk7XG4gICAgY29uc3QgaXRlbSA9IGFjdGl2ZUNlbGwuZ2V0QXR0cmlidXRlKCdyb2xlJykgIT09ICdjb2x1bW5oZWFkZXInICYmIGl0ZW1zWzBdID8gaXRlbXNbMF0gOiBhY3RpdmVDZWxsO1xuXG4gICAgaWYgKCF0aGlzLnNraXBJdGVtRm9jdXMpIHtcbiAgICAgIGl0ZW0uZm9jdXMoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldE5leHRJdGVtQ29vcmRpbmF0ZShlOiBhbnkpIHtcbiAgICBsZXQgY3VycmVudENlbGwgPSB0aGlzLmNlbGxzID8gQXJyYXkuZnJvbSh0aGlzLmNlbGxzKS5maW5kKGkgPT4gaS5nZXRBdHRyaWJ1dGUoJ3RhYmluZGV4JykgPT09ICcwJykgOiBudWxsO1xuICAgIGlmIChlLmNvZGUgPT09ICdUYWInKSB7XG4gICAgICBjdXJyZW50Q2VsbCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgfVxuICAgIGNvbnN0IGN1cnJlbnRSb3cgPSB0aGlzLnJvd3MgJiYgY3VycmVudENlbGwgPyBBcnJheS5mcm9tKHRoaXMucm93cykuZmluZChyID0+IHIuY29udGFpbnMoY3VycmVudENlbGwpKSA6IG51bGw7XG4gICAgY29uc3QgbnVtT2ZSb3dzID0gdGhpcy5yb3dzID8gdGhpcy5yb3dzLmxlbmd0aCAtIDEgOiAwO1xuICAgIGNvbnN0IG51bU9mQ29sdW1ucyA9IHRoaXMuY2VsbHMgPyBNYXRoLmZsb29yKHRoaXMuY2VsbHMubGVuZ3RoIC8gdGhpcy5yb3dzLmxlbmd0aCAtIDEpIDogMDtcblxuICAgIGxldCB4ID1cbiAgICAgIGN1cnJlbnRSb3cgJiYgY3VycmVudENlbGxcbiAgICAgICAgPyBBcnJheS5mcm9tKGN1cnJlbnRSb3cucXVlcnlTZWxlY3RvckFsbCh0aGlzLmNvbmZpZy5rZXlHcmlkQ2VsbHMpKS5pbmRleE9mKGN1cnJlbnRDZWxsKVxuICAgICAgICA6IDA7XG4gICAgbGV0IHkgPSBjdXJyZW50Um93ICYmIGN1cnJlbnRDZWxsICYmIHRoaXMucm93cyA/IEFycmF5LmZyb20odGhpcy5yb3dzKS5pbmRleE9mKGN1cnJlbnRSb3cpIDogMDtcblxuICAgIGNvbnN0IGRpciA9IHRoaXMuaG9zdC5kaXI7XG4gICAgY29uc3QgaW5saW5lU3RhcnQgPSBkaXIgPT09ICdydGwnID8gJ0Fycm93UmlnaHQnIDogJ0Fycm93TGVmdCc7XG4gICAgY29uc3QgaW5saW5lRW5kID0gZGlyID09PSAncnRsJyA/ICdBcnJvd0xlZnQnIDogJ0Fycm93UmlnaHQnO1xuXG4gICAgY29uc3QgaXRlbXNQZXJQYWdlID1cbiAgICAgIE1hdGguZmxvb3IodGhpcy5ob3N0Py5xdWVyeVNlbGVjdG9yKCcuZGF0YWdyaWQnKS5jbGllbnRIZWlnaHQgLyB0aGlzLnJvd3NbMF0uY2xpZW50SGVpZ2h0KSAtIDEgfHwgMDtcblxuICAgIGlmIChlLmNvZGUgPT09ICdBcnJvd1VwJyAmJiB5ICE9PSAwKSB7XG4gICAgICB5ID0geSAtIDE7XG4gICAgfSBlbHNlIGlmIChlLmNvZGUgPT09ICdBcnJvd0Rvd24nICYmIHkgPCBudW1PZlJvd3MpIHtcbiAgICAgIHkgPSB5ICsgMTtcbiAgICB9IGVsc2UgaWYgKGUuY29kZSA9PT0gaW5saW5lU3RhcnQgJiYgeCAhPT0gMCkge1xuICAgICAgeCA9IHggLSAxO1xuICAgIH0gZWxzZSBpZiAoZS5jb2RlID09PSBpbmxpbmVFbmQgJiYgeCA8IG51bU9mQ29sdW1ucykge1xuICAgICAgeCA9IHggKyAxO1xuICAgIH0gZWxzZSBpZiAoZS5jb2RlID09PSAnRW5kJykge1xuICAgICAgeCA9IG51bU9mQ29sdW1ucztcblxuICAgICAgaWYgKGUuY3RybEtleSkge1xuICAgICAgICB5ID0gbnVtT2ZSb3dzO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoZS5jb2RlID09PSAnSG9tZScpIHtcbiAgICAgIHggPSAwO1xuXG4gICAgICBpZiAoZS5jdHJsS2V5KSB7XG4gICAgICAgIHkgPSAwO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoZS5jb2RlID09PSAnUGFnZVVwJykge1xuICAgICAgeSA9IHkgLSBpdGVtc1BlclBhZ2UgPiAwID8geSAtIGl0ZW1zUGVyUGFnZSArIDEgOiAxO1xuICAgIH0gZWxzZSBpZiAoZS5jb2RlID09PSAnUGFnZURvd24nKSB7XG4gICAgICB5ID0geSArIGl0ZW1zUGVyUGFnZSA8IG51bU9mUm93cyA/IHkgKyBpdGVtc1BlclBhZ2UgOiBudW1PZlJvd3M7XG4gICAgfVxuXG4gICAgcmV0dXJuIHsgeCwgeSB9O1xuICB9XG59XG4iXX0=
|
|
@@ -25,7 +25,10 @@ export class ClrAbstractContainer {
|
|
|
25
25
|
this.subscriptions = [];
|
|
26
26
|
this.subscriptions.push(this.ifControlStateService.statusChanges.subscribe((state) => {
|
|
27
27
|
this.state = state;
|
|
28
|
-
|
|
28
|
+
// Make sure everything is updated before dispatching the values for helpers
|
|
29
|
+
setTimeout(() => {
|
|
30
|
+
this.updateHelpers();
|
|
31
|
+
});
|
|
29
32
|
}));
|
|
30
33
|
this.subscriptions.push(this.ngControlService.controlChanges.subscribe(control => {
|
|
31
34
|
this.control = control;
|
|
@@ -122,4 +125,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
|
|
|
122
125
|
type: ContentChild,
|
|
123
126
|
args: [ClrControlHelper]
|
|
124
127
|
}] } });
|
|
125
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtY29udGFpbmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvZm9ybXMvY29tbW9uL2Fic3RyYWN0LWNvbnRhaW5lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7R0FLRztBQUVILE9BQU8sRUFBb0IsWUFBWSxFQUFFLFNBQVMsRUFBYSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFLL0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDNUMsT0FBTyxFQUFFLGFBQWEsRUFBeUIsTUFBTSw2Q0FBNkMsQ0FBQztBQUNuRyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBSW5DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFdBQVcsQ0FBQzs7Ozs7O0FBRzlDLE1BQU0sT0FBZ0Isb0JBQW9CO0lBYXhDLFlBQ1kscUJBQTRDLEVBQ2hDLGFBQTRCLEVBQ3hDLG1CQUF3QyxFQUN4QyxnQkFBa0M7UUFIbEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUNoQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUN4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFWOUMsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUVQLGtCQUFhLEdBQW1CLEVBQUUsQ0FBQztRQVUzQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDckIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFvQixFQUFFLEVBQUU7WUFDMUUsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDbkIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxD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Y2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE2LTIwMjQgQnJvYWRjb20uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBUaGUgdGVybSBcIkJyb2FkY29tXCIgcmVmZXJzIHRvIEJyb2FkY29tIEluYy4gYW5kL29yIGl0cyBzdWJzaWRpYXJpZXMuXG4gKiBUaGlzIHNvZnR3YXJlIGlzIHJlbGVhc2VkIHVuZGVyIE1JVCBsaWNlbnNlLlxuICogVGhlIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbiBjYW4gYmUgZm91bmQgaW4gTElDRU5TRSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBwcm9qZWN0LlxuICovXG5cbmltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENvbnRlbnRDaGlsZCwgRGlyZWN0aXZlLCBPbkRlc3Ryb3ksIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRHluYW1pY1dyYXBwZXIgfSBmcm9tICcuLi8uLi91dGlscy9ob3N0LXdyYXBwaW5nL2R5bmFtaWMtd3JhcHBlcic7XG5pbXBvcnQgeyBDbHJDb250cm9sRXJyb3IgfSBmcm9tICcuL2Vycm9yJztcbmltcG9ydCB7IENsckNvbnRyb2xIZWxwZXIgfSBmcm9tICcuL2hlbHBlcic7XG5pbXBvcnQgeyBDT05UUk9MX1NUQVRFLCBJZkNvbnRyb2xTdGF0ZVNlcnZpY2UgfSBmcm9tICcuL2lmLWNvbnRyb2wtc3RhdGUvaWYtY29udHJvbC1zdGF0ZS5zZXJ2aWNlJztcbmltcG9ydCB7IENsckxhYmVsIH0gZnJvbSAnLi9sYWJlbCc7XG5pbXBvcnQgeyBDb250cm9sQ2xhc3NTZXJ2aWNlIH0gZnJvbSAnLi9wcm92aWRlcnMvY29udHJvbC1jbGFzcy5zZXJ2aWNlJztcbmltcG9ydCB7IExheW91dFNlcnZpY2UgfSBmcm9tICcuL3Byb3ZpZGVycy9sYXlvdXQuc2VydmljZSc7XG5pbXBvcnQgeyBOZ0NvbnRyb2xTZXJ2aWNlIH0gZnJvbSAnLi9wcm92aWRlcnMvbmctY29udHJvbC5zZXJ2aWNlJztcbmltcG9ydCB7IENsckNvbnRyb2xTdWNjZXNzIH0gZnJvbSAnLi9zdWNjZXNzJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ2xyQWJzdHJhY3RDb250YWluZXIgaW1wbGVtZW50cyBEeW5hbWljV3JhcHBlciwgT25EZXN0cm95LCBBZnRlckNvbnRlbnRJbml0IHtcbiAgQENvbnRlbnRDaGlsZChDbHJMYWJlbCwgeyBzdGF0aWM6IGZhbHNlIH0pIGxhYmVsOiBDbHJMYWJlbDtcbiAgQENvbnRlbnRDaGlsZChDbHJDb250cm9sU3VjY2VzcykgY29udHJvbFN1Y2Nlc3NDb21wb25lbnQ6IENsckNvbnRyb2xTdWNjZXNzO1xuICBAQ29udGVudENoaWxkKENsckNvbnRyb2xFcnJvcikgY29udHJvbEVycm9yQ29tcG9uZW50OiBDbHJDb250cm9sRXJyb3I7XG4gIEBDb250ZW50Q2hpbGQoQ2xyQ29udHJvbEhlbHBlcikgY29udHJvbEhlbHBlckNvbXBvbmVudDogQ2xyQ29udHJvbEhlbHBlcjtcblxuICBjb250cm9sOiBOZ0NvbnRyb2w7XG4gIF9keW5hbWljID0gZmFsc2U7XG5cbiAgcHJvdGVjdGVkIHN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbltdID0gW107XG5cbiAgcHJpdmF0ZSBzdGF0ZTogQ09OVFJPTF9TVEFURTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgaWZDb250cm9sU3RhdGVTZXJ2aWNlOiBJZkNvbnRyb2xTdGF0ZVNlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgcHJvdGVjdGVkIGxheW91dFNlcnZpY2U6IExheW91dFNlcnZpY2UsXG4gICAgcHJvdGVjdGVkIGNvbnRyb2xDbGFzc1NlcnZpY2U6IENvbnRyb2xDbGFzc1NlcnZpY2UsXG4gICAgcHJvdGVjdGVkIG5nQ29udHJvbFNlcnZpY2U6IE5nQ29udHJvbFNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICB0aGlzLmlmQ29udHJvbFN0YXRlU2VydmljZS5zdGF0dXNDaGFuZ2VzLnN1YnNjcmliZSgoc3RhdGU6IENPTlRST0xfU1RBVEUpID0+IHtcbiAgICAgICAgdGhpcy5zdGF0ZSA9IHN0YXRlO1xuICAgICAgICB0aGlzLnVwZGF0ZUhlbHBlcnMoKTtcbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxuICAgICAgdGhpcy5uZ0NvbnRyb2xTZXJ2aWNlLmNvbnRyb2xDaGFuZ2VzLnN1YnNjcmliZShjb250cm9sID0+IHtcbiAgICAgICAgdGhpcy5jb250cm9sID0gY29udHJvbDtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBATk9URVxuICAgKiBIZWxwZXIgY29udHJvbCBpcyBhIGJpdCBkaWZmZXJlbnQgdGhhbiB0aGUgb3RoZXJzLCBpdCBtdXN0IGJlIGFsd2F5cyB2aXNpYmxlOlxuICAgKiAgIC0gIExhYmVscyBhbmQgaW5zdHJ1Y3Rpb25zIG11c3QgYWx3YXlzIGFjY29tcGFueSBmb3JtcyBhbmQgYXJlIHBlcnNpc3RlbnQuXG4gICAqICAgLSAgVGhlIHJlY29tbWVuZGF0aW9uIGhlcmUgaXMgdG8gYWx3YXlzIGhhdmUgaGVscGVyIHRleHQgb3IgYW55dGhpbmcgaW5zdHJ1Y3Rpb25zIHZpc2libGUuXG4gICAqICAgLSAgVGhlIGV4cGVjdGF0aW9uIGlzIHRvIGhhdmUgZXJyb3IgdGV4dCArIGhlbHBlciB0ZXh0IGluIHRoZSBlcnJvcmVkIHN0YXRlLiB0aGlzIHdheSBhbGwgdXNlcnMgd2lsbCBoYXZlIHRoZSBoZWxwZXIgdGV4dCBpbmZvcm1hdGlvbiBhbHdheXMgYXZhaWxhYmxlLlxuICAgKi9cbiAgZ2V0IHNob3dIZWxwZXIoKTogYm9vbGVhbiB7XG4gICAgLyoqXG4gICAgICogQE5PVEVcbiAgICAgKiBTYXZpbmcgdGhlIHByZXZpb3VzIHZlcnNpb24gaW4gY2FzZSBzb21ldGhpbmcgaXMgY2hhbmdlZC4gV2UnbGwgcmV0dXJuIGFsd2F5cyB0cnVlIHNvIHdlIGNhbiBiZSBmbGV4aWJsZVxuICAgICAqIGFuZCBrZWVwIHRoZSBjb25kaXRpb24gcGVyIGNvbXBvbmVudHMuXG4gICAgICpcbiAgICAgKiByZXR1cm4gKFxuICAgICAqIEhlbHBlciBDb21wb25lbnQgZXhpc3QgYW5kIHRoZSBzdGF0ZSBvZiB0aGUgZm9ybSBpcyBOT05FIChub3QgdG91Y2hlZClcbiAgICAgKiAoISF0aGlzLmNvbnRyb2xIZWxwZXJDb21wb25lbnQgJiYgKCF0aGlzLnRvdWNoZWQgfHwgdGhpcy5zdGF0ZSA9PT0gQ09OVFJPTF9TVEFURS5OT05FKSkgfHxcbiAgICAgKiBvciB0aGVyZSBpcyBubyBzdWNjZXNzIGNvbXBvbmVudCBidXQgdGhlIHN0YXRlIG9mIHRoZSBmb3JtIGlzIFZBTElEIC0gc2hvdyBoZWxwZXIgaW5mb3JtYXRpb25cbiAgICAgKiAoISF0aGlzLmNvbnRyb2xTdWNjZXNzQ29tcG9uZW50ID09PSBmYWxzZSAmJiB0aGlzLnN0YXRlID09PSBDT05UUk9MX1NUQVRFLlZBTElEKSB8fFxuICAgICAqIG9yIHRoZXJlIGlzIG5vIGVycm9yIGNvbXBvbmVudCBidXQgdGhlIHN0YXRlIG9mIHRoZSBmb3JtIGlzIElOVkFMSUQgLSBzaG93IGhlbHBlciBpbmZvcm1hdGlvblxuICAgICAqICghIXRoaXMuY29udHJvbEVycm9yQ29tcG9uZW50ID09PSBmYWxzZSAmJiB0aGlzLnN0YXRlID09PSBDT05UUk9MX1NUQVRFLklOVkFMSUQpXG4gICAgICogKTtcbiAgICAgKi9cbiAgICByZXR1cm4gQm9vbGVhbih0aGlzLmNvbnRyb2xIZWxwZXJDb21wb25lbnQpO1xuICB9XG5cbiAgZ2V0IHNob3dWYWxpZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50b3VjaGVkICYmIHRoaXMuc3RhdGUgPT09IENPTlRST0xfU1RBVEUuVkFMSUQgJiYgISF0aGlzLmNvbnRyb2xTdWNjZXNzQ29tcG9uZW50O1xuICB9XG5cbiAgZ2V0IHNob3dJbnZhbGlkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRvdWNoZWQgJiYgdGhpcy5zdGF0ZSA9PT0gQ09OVFJPTF9TVEFURS5JTlZBTElEICYmICEhdGhpcy5jb250cm9sRXJyb3JDb21wb25lbnQ7XG4gIH1cblxuICBwcml2YXRlIGdldCB0b3VjaGVkKCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRyb2w/LnRvdWNoZWQ7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgLyoqXG4gICAgICogV2UgZ29ubmEgc2V0IHRoZSBoZWxwZXIgY29udHJvbCBzdGF0ZSwgYWZ0ZXIgYWxsIG9yIG1vc3Qgb2YgdGhlIGNvbXBvbmVudHNcbiAgICAgKiBhcmUgcmVhZHkgLSBhbHNvIHRoaXMgd2lsbCB0cmlnZ2VyIHNvbWUgaW5pdGlhbCBmbG93cyBpbnRvIHdyYXBwZXJzIGFuZCBjb250cm9scyxcbiAgICAgKiBsaWtlIGxvY2F0aW5nIElEcyAgYW5kIHNldHRpbmcgIGF0dHJpYnV0ZXMuXG4gICAgICovXG4gICAgdGhpcy51cGRhdGVIZWxwZXJzKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMuZm9yRWFjaChzdWJzY3JpcHRpb24gPT4gc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCkpO1xuICB9XG5cbiAgY29udHJvbENsYXNzKCkge1xuICAgIC8qKlxuICAgICAqIERlY2lkZSB3aGF0IHN1YnRleHQgdG8gZGlzcGxheTpcbiAgICAgKiAgIC0gY29udGFpbmVyIGlzIHZhbGlkIGJ1dCBubyBzdWNjZXNzIGNvbXBvbmVudCBpcyBpbXBsZW1lbnRlZCAtIHVzZSBoZWxwZXIgY2xhc3NcbiAgICAgKiAgIC0gY29udGFpbmVyIGlzIHZhbGlkIGFuZCBzdWNjZXNzIGNvbXBvbmVudCBpcyBpbXBsZW1lbnRlZCAtIHVzZSBzdWNjZXNzIGNsYXNzXG4gICAgICovXG4gICAgaWYgKCghdGhpcy5jb250cm9sU3VjY2Vzc0NvbXBvbmVudCAmJiB0aGlzLnN0YXRlID09PSBDT05UUk9MX1NUQVRFLlZBTElEKSB8fCAhdGhpcy50b3VjaGVkKSB7XG4gICAgICByZXR1cm4gdGhpcy5jb250cm9sQ2xhc3NTZXJ2aWNlLmNvbnRyb2xDbGFzcyhDT05UUk9MX1NUQVRFLk5PTkUsIHRoaXMuYWRkR3JpZCgpKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogUGFzcyBmb3JtIGNvbnRyb2wgc3RhdGUgYW5kIHJldHVybiBzdHJpbmcgb2YgY2xhc3NlcyB0byBiZSBhcHBsaWVkIHRvIHRoZSBjb250YWluZXIuXG4gICAgICovXG4gICAgcmV0dXJuIHRoaXMuY29udHJvbENsYXNzU2VydmljZS5jb250cm9sQ2xhc3ModGhpcy5zdGF0ZSwgdGhpcy5hZGRHcmlkKCkpO1xuICB9XG5cbiAgYWRkR3JpZCgpIHtcbiAgICByZXR1cm4gdGhpcy5sYXlvdXRTZXJ2aWNlICYmICF0aGlzLmxheW91dFNlcnZpY2UuaXNWZXJ0aWNhbCgpO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVIZWxwZXJzKCkge1xuICAgIGlmICh0aGlzLm5nQ29udHJvbFNlcnZpY2UpIHtcbiAgICAgIHRoaXMubmdDb250cm9sU2VydmljZS5zZXRIZWxwZXJzKHtcbiAgICAgICAgc2hvdzogdGhpcy5zaG93SW52YWxpZCB8fCB0aGlzLnNob3dIZWxwZXIgfHwgdGhpcy5zaG93VmFsaWQsXG4gICAgICAgIHNob3dJbnZhbGlkOiB0aGlzLnNob3dJbnZhbGlkLFxuICAgICAgICBzaG93SGVscGVyOiB0aGlzLnNob3dIZWxwZXIsXG4gICAgICAgIHNob3dWYWxpZDogdGhpcy5zaG93VmFsaWQsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtY29udGFpbmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci9zcmMvZm9ybXMvY29tbW9uL2Fic3RyYWN0LWNvbnRhaW5lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7R0FLRztBQUVILE9BQU8sRUFBb0IsWUFBWSxFQUFFLFNBQVMsRUFBYSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFLL0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDNUMsT0FBTyxFQUFFLGFBQWEsRUFBeUIsTUFBTSw2Q0FBNkMsQ0FBQztBQUNuRyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBSW5DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFdBQVcsQ0FBQzs7Ozs7O0FBRzlDLE1BQU0sT0FBZ0Isb0JBQW9CO0lBYXhDLFlBQ1kscUJBQTRDLEVBQ2hDLGFBQTRCLEVBQ3hDLG1CQUF3QyxFQUN4QyxnQkFBa0M7UUFIbEMsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUNoQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUN4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFWOUMsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUVQLGtCQUFhLEdBQW1CLEVBQUUsQ0FBQztRQVUzQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDckIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFvQixFQUFFLEVBQUU7WUFDMUUsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7WUFDbkIsNEVBQTRFO1lBQzVFLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2QsSUFB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QUFZO3VCQUFDLGVBQWU7Z0JBQ0csc0JBQXNCO3NCQUFyRCxZQUFZO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyNCBCcm9hZGNvbS4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoZSB0ZXJtIFwiQnJvYWRjb21cIiByZWZlcnMgdG8gQnJvYWRjb20gSW5jLiBhbmQvb3IgaXRzIHN1YnNpZGlhcmllcy5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgQ29udGVudENoaWxkLCBEaXJlY3RpdmUsIE9uRGVzdHJveSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBEeW5hbWljV3JhcHBlciB9IGZyb20gJy4uLy4uL3V0aWxzL2hvc3Qtd3JhcHBpbmcvZHluYW1pYy13cmFwcGVyJztcbmltcG9ydCB7IENsckNvbnRyb2xFcnJvciB9IGZyb20gJy4vZXJyb3InO1xuaW1wb3J0IHsgQ2xyQ29udHJvbEhlbHBlciB9IGZyb20gJy4vaGVscGVyJztcbmltcG9ydCB7IENPTlRST0xfU1RBVEUsIElmQ29udHJvbFN0YXRlU2VydmljZSB9IGZyb20gJy4vaWYtY29udHJvbC1zdGF0ZS9pZi1jb250cm9sLXN0YXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2xyTGFiZWwgfSBmcm9tICcuL2xhYmVsJztcbmltcG9ydCB7IENvbnRyb2xDbGFzc1NlcnZpY2UgfSBmcm9tICcuL3Byb3ZpZGVycy9jb250cm9sLWNsYXNzLnNlcnZpY2UnO1xuaW1wb3J0IHsgTGF5b3V0U2VydmljZSB9IGZyb20gJy4vcHJvdmlkZXJzL2xheW91dC5zZXJ2aWNlJztcbmltcG9ydCB7IE5nQ29udHJvbFNlcnZpY2UgfSBmcm9tICcuL3Byb3ZpZGVycy9uZy1jb250cm9sLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2xyQ29udHJvbFN1Y2Nlc3MgfSBmcm9tICcuL3N1Y2Nlc3MnO1xuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDbHJBYnN0cmFjdENvbnRhaW5lciBpbXBsZW1lbnRzIER5bmFtaWNXcmFwcGVyLCBPbkRlc3Ryb3ksIEFmdGVyQ29udGVudEluaXQge1xuICBAQ29udGVudENoaWxkKENsckxhYmVsLCB7IHN0YXRpYzogZmFsc2UgfSkgbGFiZWw6IENsckxhYmVsO1xuICBAQ29udGVudENoaWxkKENsckNvbnRyb2xTdWNjZXNzKSBjb250cm9sU3VjY2Vzc0NvbXBvbmVudDogQ2xyQ29udHJvbFN1Y2Nlc3M7XG4gIEBDb250ZW50Q2hpbGQoQ2xyQ29udHJvbEVycm9yKSBjb250cm9sRXJyb3JDb21wb25lbnQ6IENsckNvbnRyb2xFcnJvcjtcbiAgQENvbnRlbnRDaGlsZChDbHJDb250cm9sSGVscGVyKSBjb250cm9sSGVscGVyQ29tcG9uZW50OiBDbHJDb250cm9sSGVscGVyO1xuXG4gIGNvbnRyb2w6IE5nQ29udHJvbDtcbiAgX2R5bmFtaWMgPSBmYWxzZTtcblxuICBwcm90ZWN0ZWQgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcblxuICBwcml2YXRlIHN0YXRlOiBDT05UUk9MX1NUQVRFO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBpZkNvbnRyb2xTdGF0ZVNlcnZpY2U6IElmQ29udHJvbFN0YXRlU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBwcm90ZWN0ZWQgbGF5b3V0U2VydmljZTogTGF5b3V0U2VydmljZSxcbiAgICBwcm90ZWN0ZWQgY29udHJvbENsYXNzU2VydmljZTogQ29udHJvbENsYXNzU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgbmdDb250cm9sU2VydmljZTogTmdDb250cm9sU2VydmljZVxuICApIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMucHVzaChcbiAgICAgIHRoaXMuaWZDb250cm9sU3RhdGVTZXJ2aWNlLnN0YXR1c0NoYW5nZXMuc3Vic2NyaWJlKChzdGF0ZTogQ09OVFJPTF9TVEFURSkgPT4ge1xuICAgICAgICB0aGlzLnN0YXRlID0gc3RhdGU7XG4gICAgICAgIC8vIE1ha2Ugc3VyZSBldmVyeXRoaW5nIGlzIHVwZGF0ZWQgYmVmb3JlIGRpc3BhdGNoaW5nIHRoZSB2YWx1ZXMgZm9yIGhlbHBlcnNcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy51cGRhdGVIZWxwZXJzKCk7XG4gICAgICAgIH0pO1xuICAgICAgfSlcbiAgICApO1xuXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLnB1c2goXG4gICAgICB0aGlzLm5nQ29udHJvbFNlcnZpY2UuY29udHJvbENoYW5nZXMuc3Vic2NyaWJlKGNvbnRyb2wgPT4ge1xuICAgICAgICB0aGlzLmNvbnRyb2wgPSBjb250cm9sO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEBOT1RFXG4gICAqIEhlbHBlciBjb250cm9sIGlzIGEgYml0IGRpZmZlcmVudCB0aGFuIHRoZSBvdGhlcnMsIGl0IG11c3QgYmUgYWx3YXlzIHZpc2libGU6XG4gICAqICAgLSAgTGFiZWxzIGFuZCBpbnN0cnVjdGlvbnMgbXVzdCBhbHdheXMgYWNjb21wYW55IGZvcm1zIGFuZCBhcmUgcGVyc2lzdGVudC5cbiAgICogICAtICBUaGUgcmVjb21tZW5kYXRpb24gaGVyZSBpcyB0byBhbHdheXMgaGF2ZSBoZWxwZXIgdGV4dCBvciBhbnl0aGluZyBpbnN0cnVjdGlvbnMgdmlzaWJsZS5cbiAgICogICAtICBUaGUgZXhwZWN0YXRpb24gaXMgdG8gaGF2ZSBlcnJvciB0ZXh0ICsgaGVscGVyIHRleHQgaW4gdGhlIGVycm9yZWQgc3RhdGUuIHRoaXMgd2F5IGFsbCB1c2VycyB3aWxsIGhhdmUgdGhlIGhlbHBlciB0ZXh0IGluZm9ybWF0aW9uIGFsd2F5cyBhdmFpbGFibGUuXG4gICAqL1xuICBnZXQgc2hvd0hlbHBlcigpOiBib29sZWFuIHtcbiAgICAvKipcbiAgICAgKiBATk9URVxuICAgICAqIFNhdmluZyB0aGUgcHJldmlvdXMgdmVyc2lvbiBpbiBjYXNlIHNvbWV0aGluZyBpcyBjaGFuZ2VkLiBXZSdsbCByZXR1cm4gYWx3YXlzIHRydWUgc28gd2UgY2FuIGJlIGZsZXhpYmxlXG4gICAgICogYW5kIGtlZXAgdGhlIGNvbmRpdGlvbiBwZXIgY29tcG9uZW50cy5cbiAgICAgKlxuICAgICAqIHJldHVybiAoXG4gICAgICogSGVscGVyIENvbXBvbmVudCBleGlzdCBhbmQgdGhlIHN0YXRlIG9mIHRoZSBmb3JtIGlzIE5PTkUgKG5vdCB0b3VjaGVkKVxuICAgICAqICghIXRoaXMuY29udHJvbEhlbHBlckNvbXBvbmVudCAmJiAoIXRoaXMudG91Y2hlZCB8fCB0aGlzLnN0YXRlID09PSBDT05UUk9MX1NUQVRFLk5PTkUpKSB8fFxuICAgICAqIG9yIHRoZXJlIGlzIG5vIHN1Y2Nlc3MgY29tcG9uZW50IGJ1dCB0aGUgc3RhdGUgb2YgdGhlIGZvcm0gaXMgVkFMSUQgLSBzaG93IGhlbHBlciBpbmZvcm1hdGlvblxuICAgICAqICghIXRoaXMuY29udHJvbFN1Y2Nlc3NDb21wb25lbnQgPT09IGZhbHNlICYmIHRoaXMuc3RhdGUgPT09IENPTlRST0xfU1RBVEUuVkFMSUQpIHx8XG4gICAgICogb3IgdGhlcmUgaXMgbm8gZXJyb3IgY29tcG9uZW50IGJ1dCB0aGUgc3RhdGUgb2YgdGhlIGZvcm0gaXMgSU5WQUxJRCAtIHNob3cgaGVscGVyIGluZm9ybWF0aW9uXG4gICAgICogKCEhdGhpcy5jb250cm9sRXJyb3JDb21wb25lbnQgPT09IGZhbHNlICYmIHRoaXMuc3RhdGUgPT09IENPTlRST0xfU1RBVEUuSU5WQUxJRClcbiAgICAgKiApO1xuICAgICAqL1xuICAgIHJldHVybiBCb29sZWFuKHRoaXMuY29udHJvbEhlbHBlckNvbXBvbmVudCk7XG4gIH1cblxuICBnZXQgc2hvd1ZhbGlkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRvdWNoZWQgJiYgdGhpcy5zdGF0ZSA9PT0gQ09OVFJPTF9TVEFURS5WQUxJRCAmJiAhIXRoaXMuY29udHJvbFN1Y2Nlc3NDb21wb25lbnQ7XG4gIH1cblxuICBnZXQgc2hvd0ludmFsaWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudG91Y2hlZCAmJiB0aGlzLnN0YXRlID09PSBDT05UUk9MX1NUQVRFLklOVkFMSUQgJiYgISF0aGlzLmNvbnRyb2xFcnJvckNvbXBvbmVudDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IHRvdWNoZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuY29udHJvbD8udG91Y2hlZDtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICAvKipcbiAgICAgKiBXZSBnb25uYSBzZXQgdGhlIGhlbHBlciBjb250cm9sIHN0YXRlLCBhZnRlciBhbGwgb3IgbW9zdCBvZiB0aGUgY29tcG9uZW50c1xuICAgICAqIGFyZSByZWFkeSAtIGFsc28gdGhpcyB3aWxsIHRyaWdnZXIgc29tZSBpbml0aWFsIGZsb3dzIGludG8gd3JhcHBlcnMgYW5kIGNvbnRyb2xzLFxuICAgICAqIGxpa2UgbG9jYXRpbmcgSURzICBhbmQgc2V0dGluZyAgYXR0cmlidXRlcy5cbiAgICAgKi9cbiAgICB0aGlzLnVwZGF0ZUhlbHBlcnMoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5mb3JFYWNoKHN1YnNjcmlwdGlvbiA9PiBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKSk7XG4gIH1cblxuICBjb250cm9sQ2xhc3MoKSB7XG4gICAgLyoqXG4gICAgICogRGVjaWRlIHdoYXQgc3VidGV4dCB0byBkaXNwbGF5OlxuICAgICAqICAgLSBjb250YWluZXIgaXMgdmFsaWQgYnV0IG5vIHN1Y2Nlc3MgY29tcG9uZW50IGlzIGltcGxlbWVudGVkIC0gdXNlIGhlbHBlciBjbGFzc1xuICAgICAqICAgLSBjb250YWluZXIgaXMgdmFsaWQgYW5kIHN1Y2Nlc3MgY29tcG9uZW50IGlzIGltcGxlbWVudGVkIC0gdXNlIHN1Y2Nlc3MgY2xhc3NcbiAgICAgKi9cbiAgICBpZiAoKCF0aGlzLmNvbnRyb2xTdWNjZXNzQ29tcG9uZW50ICYmIHRoaXMuc3RhdGUgPT09IENPTlRST0xfU1RBVEUuVkFMSUQpIHx8ICF0aGlzLnRvdWNoZWQpIHtcbiAgICAgIHJldHVybiB0aGlzLmNvbnRyb2xDbGFzc1NlcnZpY2UuY29udHJvbENsYXNzKENPTlRST0xfU1RBVEUuTk9ORSwgdGhpcy5hZGRHcmlkKCkpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBQYXNzIGZvcm0gY29udHJvbCBzdGF0ZSBhbmQgcmV0dXJuIHN0cmluZyBvZiBjbGFzc2VzIHRvIGJlIGFwcGxpZWQgdG8gdGhlIGNvbnRhaW5lci5cbiAgICAgKi9cbiAgICByZXR1cm4gdGhpcy5jb250cm9sQ2xhc3NTZXJ2aWNlLmNvbnRyb2xDbGFzcyh0aGlzLnN0YXRlLCB0aGlzLmFkZEdyaWQoKSk7XG4gIH1cblxuICBhZGRHcmlkKCkge1xuICAgIHJldHVybiB0aGlzLmxheW91dFNlcnZpY2UgJiYgIXRoaXMubGF5b3V0U2VydmljZS5pc1ZlcnRpY2FsKCk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUhlbHBlcnMoKSB7XG4gICAgaWYgKHRoaXMubmdDb250cm9sU2VydmljZSkge1xuICAgICAgdGhpcy5uZ0NvbnRyb2xTZXJ2aWNlLnNldEhlbHBlcnMoe1xuICAgICAgICBzaG93OiB0aGlzLnNob3dJbnZhbGlkIHx8IHRoaXMuc2hvd0hlbHBlciB8fCB0aGlzLnNob3dWYWxpZCxcbiAgICAgICAgc2hvd0ludmFsaWQ6IHRoaXMuc2hvd0ludmFsaWQsXG4gICAgICAgIHNob3dIZWxwZXI6IHRoaXMuc2hvd0hlbHBlcixcbiAgICAgICAgc2hvd1ZhbGlkOiB0aGlzLnNob3dWYWxpZCxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -38,7 +38,7 @@ export class ClrTimelineStep {
|
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
ClrTimelineStep.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: ClrTimelineStep, deps: [{ token: i1.TimelineIconAttributeService }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Component });
|
|
41
|
-
ClrTimelineStep.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ClrTimelineStep, selector: "clr-timeline-step", inputs: { state: ["clrState", "state"] }, host: { properties: { "class.clr-timeline-step": "true" } }, queries: [{ propertyName: "stepTitle", first: true, predicate: ClrTimelineStepTitle, descendants: true, read: ElementRef }], ngImport: i0, template: `
|
|
41
|
+
ClrTimelineStep.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.2", type: ClrTimelineStep, selector: "clr-timeline-step", inputs: { state: ["clrState", "state"] }, host: { properties: { "class.clr-timeline-step": "true", "attr.role": "\"listitem\"" } }, queries: [{ propertyName: "stepTitle", first: true, predicate: ClrTimelineStepTitle, descendants: true, read: ElementRef }], ngImport: i0, template: `
|
|
42
42
|
<ng-content select="clr-timeline-step-header"></ng-content>
|
|
43
43
|
<span class="clr-sr-only">{{ stepTitleText }}</span>
|
|
44
44
|
<ng-container *ngIf="!isProcessing; else processing">
|
|
@@ -82,7 +82,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
|
|
|
82
82
|
<clr-spinner clrMedium [attr.aria-label]="iconAriaLabel"></clr-spinner>
|
|
83
83
|
</ng-template>
|
|
84
84
|
`,
|
|
85
|
-
host: { '[class.clr-timeline-step]': 'true' },
|
|
85
|
+
host: { '[class.clr-timeline-step]': 'true', '[attr.role]': '"listitem"' },
|
|
86
86
|
}]
|
|
87
87
|
}], ctorParameters: function () { return [{ type: i1.TimelineIconAttributeService }, { type: undefined, decorators: [{
|
|
88
88
|
type: Inject,
|
|
@@ -94,4 +94,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImpor
|
|
|
94
94
|
type: ContentChild,
|
|
95
95
|
args: [ClrTimelineStepTitle, { read: ElementRef }]
|
|
96
96
|
}] } });
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZWxpbmUtc3RlcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXIvc3JjL3RpbWVsaW5lL3RpbWVsaW5lLXN0ZXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFFSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFaEcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFeEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7OztBQTBCN0QsTUFBTSxPQUFPLGVBQWU7SUFPMUIsWUFDVSxvQkFBa0QsRUFDN0IsVUFBZTtRQURwQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQThCO1FBQzdCLGVBQVUsR0FBVixVQUFVLENBQUs7UUFSM0IsVUFBSyxHQUF5QixvQkFBb0IsQ0FBQyxXQUFXLENBQUM7SUFTL0UsQ0FBQztJQUVKLElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxvQkFBb0IsQ0FBQyxVQUFVLENBQUM7SUFDeEQsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ3hELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDO1NBQzdEO0lBQ0gsQ0FBQzs7NEdBaENVLGVBQWUsOERBU2hCLFdBQVc7Z0dBVFYsZUFBZSxvT0FHWixvQkFBb0IsMkJBQVUsVUFBVSw2QkF6QjVDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUJUOzJGQUdVLGVBQWU7a0JBeEIzQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1CVDtvQkFDRCxJQUFJLEVBQUUsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRTtpQkFDM0U7OzBCQVVJLE1BQU07MkJBQUMsV0FBVzs0Q0FSRixLQUFLO3NCQUF2QixLQUFLO3VCQUFDLFVBQVU7Z0JBRXlDLFNBQVM7c0JBQWxFLFlBQVk7dUJBQUMsb0JBQW9CLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxNi0yMDI0IEJyb2FkY29tLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICogVGhlIHRlcm0gXCJCcm9hZGNvbVwiIHJlZmVycyB0byBCcm9hZGNvbSBJbmMuIGFuZC9vciBpdHMgc3Vic2lkaWFyaWVzLlxuICogVGhpcyBzb2Z0d2FyZSBpcyByZWxlYXNlZCB1bmRlciBNSVQgbGljZW5zZS5cbiAqIFRoZSBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24gY2FuIGJlIGZvdW5kIGluIExJQ0VOU0UgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgcHJvamVjdC5cbiAqL1xuXG5pbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgRWxlbWVudFJlZiwgSW5qZWN0LCBJbnB1dCwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ2xyVGltZWxpbmVTdGVwU3RhdGUgfSBmcm9tICcuL2VudW1zL3RpbWVsaW5lLXN0ZXAtc3RhdGUuZW51bSc7XG5pbXBvcnQgeyBUaW1lbGluZUljb25BdHRyaWJ1dGVTZXJ2aWNlIH0gZnJvbSAnLi9wcm92aWRlcnMvdGltZWxpbmUtaWNvbi1hdHRyaWJ1dGUuc2VydmljZSc7XG5pbXBvcnQgeyBDbHJUaW1lbGluZVN0ZXBUaXRsZSB9IGZyb20gJy4vdGltZWxpbmUtc3RlcC10aXRsZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Nsci10aW1lbGluZS1zdGVwJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJjbHItdGltZWxpbmUtc3RlcC1oZWFkZXJcIj48L25nLWNvbnRlbnQ+XG4gICAgPHNwYW4gY2xhc3M9XCJjbHItc3Itb25seVwiPnt7IHN0ZXBUaXRsZVRleHQgfX08L3NwYW4+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc1Byb2Nlc3Npbmc7IGVsc2UgcHJvY2Vzc2luZ1wiPlxuICAgICAgPGNkcy1pY29uXG4gICAgICAgIFthdHRyLnN0YXR1c109XCJpY29uU3RhdHVzXCJcbiAgICAgICAgW2F0dHIuc2hhcGVdPVwiaWNvblNoYXBlXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJpY29uQXJpYUxhYmVsXCJcbiAgICAgICAgcm9sZT1cImltZ1wiXG4gICAgICA+PC9jZHMtaWNvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8ZGl2IGNsYXNzPVwiY2xyLXRpbWVsaW5lLXN0ZXAtYm9keVwiPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiY2xyLXRpbWVsaW5lLXN0ZXAtdGl0bGVcIj48L25nLWNvbnRlbnQ+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJjbHItdGltZWxpbmUtc3RlcC1kZXNjcmlwdGlvblwiPjwvbmctY29udGVudD5cbiAgICA8L2Rpdj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjcHJvY2Vzc2luZz5cbiAgICAgIDxjbHItc3Bpbm5lciBjbHJNZWRpdW0gW2F0dHIuYXJpYS1sYWJlbF09XCJpY29uQXJpYUxhYmVsXCI+PC9jbHItc3Bpbm5lcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxuICBob3N0OiB7ICdbY2xhc3MuY2xyLXRpbWVsaW5lLXN0ZXBdJzogJ3RydWUnLCAnW2F0dHIucm9sZV0nOiAnXCJsaXN0aXRlbVwiJyB9LFxufSlcbmV4cG9ydCBjbGFzcyBDbHJUaW1lbGluZVN0ZXAge1xuICBASW5wdXQoJ2NsclN0YXRlJykgc3RhdGU6IENsclRpbWVsaW5lU3RlcFN0YXRlID0gQ2xyVGltZWxpbmVTdGVwU3RhdGUuTk9UX1NUQVJURUQ7XG5cbiAgQENvbnRlbnRDaGlsZChDbHJUaW1lbGluZVN0ZXBUaXRsZSwgeyByZWFkOiBFbGVtZW50UmVmIH0pIHN0ZXBUaXRsZTogRWxlbWVudFJlZjtcblxuICBzdGVwVGl0bGVUZXh0OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBpY29uQXR0cmlidXRlU2VydmljZTogVGltZWxpbmVJY29uQXR0cmlidXRlU2VydmljZSxcbiAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IGFueVxuICApIHt9XG5cbiAgZ2V0IGljb25BcmlhTGFiZWwoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pY29uQXR0cmlidXRlU2VydmljZS5nZXRBcmlhTGFiZWwodGhpcy5zdGF0ZSk7XG4gIH1cblxuICBnZXQgaWNvblNoYXBlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaWNvbkF0dHJpYnV0ZVNlcnZpY2UuZ2V0SWNvblNoYXBlKHRoaXMuc3RhdGUpO1xuICB9XG5cbiAgZ2V0IGljb25TdGF0dXMoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pY29uQXR0cmlidXRlU2VydmljZS5nZXRJY29uU3RhdHVzKHRoaXMuc3RhdGUpO1xuICB9XG5cbiAgZ2V0IGlzUHJvY2Vzc2luZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0ZSA9PT0gQ2xyVGltZWxpbmVTdGVwU3RhdGUuUFJPQ0VTU0lORztcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICBpZiAodGhpcy5zdGVwVGl0bGUgJiYgaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgdGhpcy5zdGVwVGl0bGVUZXh0ID0gdGhpcy5zdGVwVGl0bGUubmF0aXZlRWxlbWVudC5pbm5lclRleHQ7XG4gICAgfVxuICB9XG59XG4iXX0=
|