cps-ui-kit 17.13.0 → 17.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/cps-autocomplete/cps-autocomplete.component.mjs +3 -3
- package/esm2022/lib/components/cps-button/cps-button.component.mjs +3 -3
- package/esm2022/lib/components/cps-button-toggle/cps-button-toggle.component.mjs +3 -3
- package/esm2022/lib/components/cps-checkbox/cps-checkbox.component.mjs +3 -3
- package/esm2022/lib/components/cps-chip/cps-chip.component.mjs +3 -3
- package/esm2022/lib/components/cps-datepicker/cps-datepicker.component.mjs +3 -3
- package/esm2022/lib/components/cps-expansion-panel/cps-expansion-panel.component.mjs +3 -3
- package/esm2022/lib/components/cps-file-upload/cps-file-upload.component.mjs +3 -3
- package/esm2022/lib/components/cps-icon/cps-icon.component.mjs +3 -3
- package/esm2022/lib/components/cps-info-circle/cps-info-circle.component.mjs +3 -3
- package/esm2022/lib/components/cps-input/cps-input.component.mjs +3 -3
- package/esm2022/lib/components/cps-loader/cps-loader.component.mjs +3 -3
- package/esm2022/lib/components/cps-menu/cps-menu.component.mjs +3 -3
- package/esm2022/lib/components/cps-paginator/cps-paginator.component.mjs +5 -6
- package/esm2022/lib/components/cps-paginator/pipes/cps-paginate.pipe.mjs +3 -3
- package/esm2022/lib/components/cps-progress-circular/cps-progress-circular.component.mjs +3 -3
- package/esm2022/lib/components/cps-progress-linear/cps-progress-linear.component.mjs +3 -3
- package/esm2022/lib/components/cps-radio-group/cps-radio/cps-radio.component.mjs +3 -3
- package/esm2022/lib/components/cps-radio-group/cps-radio-button/cps-radio-button.component.mjs +3 -3
- package/esm2022/lib/components/cps-radio-group/cps-radio-group.component.mjs +3 -3
- package/esm2022/lib/components/cps-scheduler/cps-scheduler.component.mjs +4 -4
- package/esm2022/lib/components/cps-select/cps-select.component.mjs +12 -5
- package/esm2022/lib/components/cps-sidebar-menu/cps-sidebar-menu.component.mjs +3 -3
- package/esm2022/lib/components/cps-switch/cps-switch.component.mjs +3 -3
- package/esm2022/lib/components/cps-tab-group/cps-tab/cps-tab.component.mjs +3 -3
- package/esm2022/lib/components/cps-tab-group/cps-tab-group.component.mjs +3 -3
- package/esm2022/lib/components/cps-table/components/internal/cps-sort-icon/cps-sort-icon.component.mjs +3 -3
- package/esm2022/lib/components/cps-table/components/internal/table-column-filter/table-column-filter.component.mjs +4 -4
- package/esm2022/lib/components/cps-table/components/internal/table-column-filter-constraint/table-column-filter-constraint.component.mjs +4 -5
- package/esm2022/lib/components/cps-table/components/internal/table-row-menu/table-row-menu.component.mjs +3 -3
- package/esm2022/lib/components/cps-table/cps-table.component.mjs +8 -7
- package/esm2022/lib/components/cps-table/directives/cps-table-column-filter.directive.mjs +3 -3
- package/esm2022/lib/components/cps-table/directives/cps-table-column-sortable.directive.mjs +3 -3
- package/esm2022/lib/components/cps-table/directives/cps-table-header-selectable.directive.mjs +3 -3
- package/esm2022/lib/components/cps-table/directives/cps-table-row-selectable.directive.mjs +3 -3
- package/esm2022/lib/components/cps-table/directives/internal/table-unsort.directive.mjs +21 -29
- package/esm2022/lib/components/cps-tag/cps-tag.component.mjs +3 -3
- package/esm2022/lib/components/cps-textarea/cps-textarea.component.mjs +3 -3
- package/esm2022/lib/components/cps-timepicker/cps-timepicker.component.mjs +3 -3
- package/esm2022/lib/components/cps-tree-autocomplete/cps-tree-autocomplete.component.mjs +6 -6
- package/esm2022/lib/components/cps-tree-select/cps-tree-select.component.mjs +5 -5
- package/esm2022/lib/components/cps-tree-table/cps-tree-table.component.mjs +8 -10
- package/esm2022/lib/components/cps-tree-table/directives/cps-tree-table-column-filter.directive.mjs +3 -3
- package/esm2022/lib/components/cps-tree-table/directives/cps-tree-table-column-sortable.directive.mjs +3 -3
- package/esm2022/lib/components/cps-tree-table/directives/cps-tree-table-header-selectable.directive.mjs +3 -3
- package/esm2022/lib/components/cps-tree-table/directives/cps-tree-table-row-selectable.directive.mjs +3 -3
- package/esm2022/lib/components/cps-tree-table/directives/cps-tree-table-row-toggler.directive.mjs +3 -3
- package/esm2022/lib/components/cps-tree-table/directives/internal/tree-table-unsort.directive.mjs +23 -41
- package/esm2022/lib/components/internal/cps-base-tree-dropdown/cps-base-tree-dropdown.component.mjs +19 -6
- package/esm2022/lib/directives/cps-tooltip/cps-tooltip.directive.mjs +3 -3
- package/esm2022/lib/pipes/internal/check-option-selected.pipe.mjs +3 -3
- package/esm2022/lib/pipes/internal/combine-labels.pipe.mjs +3 -3
- package/esm2022/lib/pipes/internal/label-by-value.pipe.mjs +3 -3
- package/esm2022/lib/services/cps-dialog/cps-dialog.service.mjs +3 -3
- package/esm2022/lib/services/cps-dialog/internal/components/cps-confirmation/cps-confirmation.component.mjs +3 -3
- package/esm2022/lib/services/cps-dialog/internal/components/cps-dialog/cps-dialog.component.mjs +3 -3
- package/esm2022/lib/services/cps-dialog/internal/directives/cps-dialog-content.directive.mjs +3 -3
- package/esm2022/lib/services/cps-notification/cps-notification.service.mjs +3 -3
- package/esm2022/lib/services/cps-notification/internal/components/cps-notification-container/cps-notification-container.component.mjs +3 -3
- package/esm2022/lib/services/cps-notification/internal/components/cps-toast/cps-toast.component.mjs +3 -3
- package/fesm2022/cps-ui-kit.mjs +251 -260
- package/fesm2022/cps-ui-kit.mjs.map +1 -1
- package/lib/components/cps-select/cps-select.component.d.ts +6 -1
- package/lib/components/cps-tree-table/cps-tree-table.component.d.ts +3 -4
- package/lib/components/internal/cps-base-tree-dropdown/cps-base-tree-dropdown.component.d.ts +7 -1
- package/package.json +7 -7
|
@@ -134,10 +134,10 @@ export class CpsTableColumnFilterDirective {
|
|
|
134
134
|
this.filterCompRef.destroy();
|
|
135
135
|
this.viewContainerRef.clear();
|
|
136
136
|
}
|
|
137
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
138
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.
|
|
137
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CpsTableColumnFilterDirective, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
138
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.0", type: CpsTableColumnFilterDirective, isStandalone: true, selector: "[cpsTColFilter]", inputs: { field: ["cpsTColFilter", "field"], filterType: "filterType", filterPersistent: "filterPersistent", filterShowClearButton: "filterShowClearButton", filterShowApplyButton: "filterShowApplyButton", filterShowCloseButton: "filterShowCloseButton", filterShowMatchModes: "filterShowMatchModes", filterMatchModes: "filterMatchModes", filterShowOperator: "filterShowOperator", filterMaxConstraints: "filterMaxConstraints", filterHeaderTitle: "filterHeaderTitle", filterHideOnClear: "filterHideOnClear", filterCategoryOptions: "filterCategoryOptions", filterAsButtonToggle: "filterAsButtonToggle", filterSingleSelection: "filterSingleSelection", filterPlaceholder: "filterPlaceholder" }, exportAs: ["cpsTColFilter"], usesOnChanges: true, ngImport: i0 }); }
|
|
139
139
|
}
|
|
140
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
140
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CpsTableColumnFilterDirective, decorators: [{
|
|
141
141
|
type: Directive,
|
|
142
142
|
args: [{
|
|
143
143
|
standalone: true,
|
|
@@ -31,10 +31,10 @@ export class CpsTableColumnSortableDirective extends SortableColumn {
|
|
|
31
31
|
this.sortIconRef.destroy();
|
|
32
32
|
this.viewContainerRef.clear();
|
|
33
33
|
}
|
|
34
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
35
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.
|
|
34
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CpsTableColumnSortableDirective, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i1.Table }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
35
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.0", type: CpsTableColumnSortableDirective, isStandalone: true, selector: "[cpsTColSortable]", inputs: { field: ["cpsTColSortable", "field"] }, usesInheritance: true, ngImport: i0 }); }
|
|
36
36
|
}
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CpsTableColumnSortableDirective, decorators: [{
|
|
38
38
|
type: Directive,
|
|
39
39
|
args: [{
|
|
40
40
|
standalone: true,
|
package/esm2022/lib/components/cps-table/directives/cps-table-header-selectable.directive.mjs
CHANGED
|
@@ -19,10 +19,10 @@ export class CpsTableHeaderSelectableDirective {
|
|
|
19
19
|
this.checkboxCompRef.destroy();
|
|
20
20
|
this.viewContainerRef.clear();
|
|
21
21
|
}
|
|
22
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
23
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CpsTableHeaderSelectableDirective, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
23
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.0", type: CpsTableHeaderSelectableDirective, isStandalone: true, selector: "[cpsTHdrSelectable]", ngImport: i0 }); }
|
|
24
24
|
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CpsTableHeaderSelectableDirective, decorators: [{
|
|
26
26
|
type: Directive,
|
|
27
27
|
args: [{
|
|
28
28
|
standalone: true,
|
|
@@ -19,10 +19,10 @@ export class CpsTableRowSelectableDirective {
|
|
|
19
19
|
this.checkboxCompRef.destroy();
|
|
20
20
|
this.viewContainerRef.clear();
|
|
21
21
|
}
|
|
22
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
23
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.
|
|
22
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CpsTableRowSelectableDirective, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
23
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.0", type: CpsTableRowSelectableDirective, isStandalone: true, selector: "[cpsTRowSelectable]", inputs: { value: ["cpsTRowSelectable", "value"] }, ngImport: i0 }); }
|
|
24
24
|
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CpsTableRowSelectableDirective, decorators: [{
|
|
26
26
|
type: Directive,
|
|
27
27
|
args: [{
|
|
28
28
|
standalone: true,
|
|
@@ -26,18 +26,17 @@ export class TableUnsortDirective {
|
|
|
26
26
|
if (pTable.sortMode === 'multiple') {
|
|
27
27
|
let resetIndex = false;
|
|
28
28
|
const sortMeta = pTable.getSortMeta(event.field);
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
pTable._multiSortMeta.splice(i, 1);
|
|
29
|
+
if (sortMeta && pTable.multiSortMeta) {
|
|
30
|
+
for (let i = 0; i < pTable.multiSortMeta.length; i++) {
|
|
31
|
+
if (pTable.multiSortMeta[i].field === sortMeta.field) {
|
|
32
|
+
pTable.multiSortMeta.splice(i, 1);
|
|
34
33
|
}
|
|
35
34
|
}
|
|
36
35
|
if (sortMeta.order === 1) {
|
|
37
36
|
sortMeta.order = sortMeta.order * -1;
|
|
38
37
|
pTable.multiSortMeta.push(sortMeta);
|
|
39
38
|
}
|
|
40
|
-
if (pTable.
|
|
39
|
+
if (pTable.multiSortMeta.length === 0) {
|
|
41
40
|
pTable.multiSortMeta = null;
|
|
42
41
|
this.resetSorting = true;
|
|
43
42
|
resetIndex = true;
|
|
@@ -45,7 +44,7 @@ export class TableUnsortDirective {
|
|
|
45
44
|
}
|
|
46
45
|
else {
|
|
47
46
|
if (!pTable.multiSortMeta) {
|
|
48
|
-
pTable.
|
|
47
|
+
pTable.multiSortMeta = [];
|
|
49
48
|
}
|
|
50
49
|
pTable.multiSortMeta.push({
|
|
51
50
|
field: event.field,
|
|
@@ -54,7 +53,7 @@ export class TableUnsortDirective {
|
|
|
54
53
|
}
|
|
55
54
|
pTable.sortMultiple();
|
|
56
55
|
if (resetIndex)
|
|
57
|
-
pTable.
|
|
56
|
+
pTable.multiSortMeta = [];
|
|
58
57
|
}
|
|
59
58
|
if (pTable.isStateful()) {
|
|
60
59
|
pTable.saveState();
|
|
@@ -110,13 +109,12 @@ export class TableUnsortDirective {
|
|
|
110
109
|
};
|
|
111
110
|
pTable.sortMultiple = () => {
|
|
112
111
|
if (pTable.groupRowsBy) {
|
|
113
|
-
if (!pTable.
|
|
114
|
-
pTable.
|
|
115
|
-
// Replace with explicit type
|
|
112
|
+
if (!pTable.multiSortMeta)
|
|
113
|
+
pTable.multiSortMeta = [pTable.getGroupRowsMeta()];
|
|
116
114
|
else if (pTable.multiSortMeta[0].field !== pTable.groupRowsBy)
|
|
117
|
-
pTable.
|
|
115
|
+
pTable.multiSortMeta = [
|
|
118
116
|
pTable.getGroupRowsMeta(),
|
|
119
|
-
...pTable.
|
|
117
|
+
...pTable.multiSortMeta
|
|
120
118
|
];
|
|
121
119
|
}
|
|
122
120
|
if ((pTable.multiSortMeta && pTable.multiSortMeta.length > 0) ||
|
|
@@ -142,8 +140,7 @@ export class TableUnsortDirective {
|
|
|
142
140
|
pTable.onSort.emit({
|
|
143
141
|
multisortmeta: pTable.multiSortMeta
|
|
144
142
|
});
|
|
145
|
-
|
|
146
|
-
pTable.tableService.onSort(pTable.multiSortMeta);
|
|
143
|
+
pTable.tableService.onSort(pTable.multiSortMeta || null);
|
|
147
144
|
}
|
|
148
145
|
};
|
|
149
146
|
}
|
|
@@ -184,26 +181,21 @@ export class TableUnsortDirective {
|
|
|
184
181
|
this.pTable._value = [...this.pTable.value];
|
|
185
182
|
}
|
|
186
183
|
_multisortField(data1, data2, index) {
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
this.pTable.multiSortMeta[index].field);
|
|
190
|
-
const value2 = ObjectUtils.resolveFieldData(data2[0],
|
|
191
|
-
// Replace with explicit type
|
|
192
|
-
this.pTable.multiSortMeta[index].field);
|
|
184
|
+
if (!this.pTable.multiSortMeta)
|
|
185
|
+
return 1;
|
|
186
|
+
const value1 = ObjectUtils.resolveFieldData(data1[0], this.pTable.multiSortMeta[index].field);
|
|
187
|
+
const value2 = ObjectUtils.resolveFieldData(data2[0], this.pTable.multiSortMeta[index].field);
|
|
193
188
|
if (ObjectUtils.compare(value1, value2, this.pTable.filterLocale) === 0) {
|
|
194
|
-
// Replace with explicit type
|
|
195
189
|
return this.pTable.multiSortMeta.length - 1 > index
|
|
196
190
|
? this._multisortField(data1, data2, index + 1)
|
|
197
191
|
: 0;
|
|
198
192
|
}
|
|
199
|
-
return this.pTable.compareValuesOnSort(value1, value2,
|
|
200
|
-
// Replace with explicit type
|
|
201
|
-
this.pTable.multiSortMeta[index].order);
|
|
193
|
+
return this.pTable.compareValuesOnSort(value1, value2, this.pTable.multiSortMeta[index].order);
|
|
202
194
|
}
|
|
203
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
204
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.
|
|
195
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TableUnsortDirective, deps: [{ token: i1.Table, host: true, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
196
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.0", type: TableUnsortDirective, isStandalone: true, selector: "[tWithUnsort]", exportAs: ["tWithUnsort"], ngImport: i0 }); }
|
|
205
197
|
}
|
|
206
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
198
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TableUnsortDirective, decorators: [{
|
|
207
199
|
type: Directive,
|
|
208
200
|
args: [{
|
|
209
201
|
standalone: true,
|
|
@@ -217,4 +209,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
217
209
|
}, {
|
|
218
210
|
type: Optional
|
|
219
211
|
}] }] });
|
|
220
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdW5zb3J0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nwcy11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2Nwcy10YWJsZS9kaXJlY3RpdmVzL2ludGVybmFsL3RhYmxlLXVuc29ydC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdoRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPNUMsTUFBTSxPQUFPLG9CQUFvQjtJQUkvQixZQUErQyxNQUFhO1FBQWIsV0FBTSxHQUFOLE1BQU0sQ0FBTztRQUg1RCxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUNyQixnQkFBVyxHQUFhLEVBQUUsQ0FBQztRQUd6QixNQUFNLENBQUMsSUFBSSxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDM0IsSUFBSSxNQUFNLENBQUMsUUFBUSxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUNqQyxJQUFJLE1BQU0sQ0FBQyxTQUFTLEtBQUssS0FBSyxDQUFDLEtBQUssSUFBSSxNQUFNLENBQUMsU0FBUyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7b0JBQ2hFLE1BQU0sQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDO29CQUMzQyxNQUFNLENBQUMsVUFBa0IsR0FBRyxJQUFJLENBQUM7b0JBQ2xDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO2dCQUMzQixDQUFDO3FCQUFNLENBQUM7b0JBQ04sTUFBTSxDQUFDLFVBQVU7d0JBQ2YsTUFBTSxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUMsS0FBSzs0QkFDOUIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDOzRCQUN2QixD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LEtBQUssRUFBRSxLQUFLLEdBQUcsQ0FBQyxDQUFDO2dCQUMvQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ1IsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FDcEMsTUFBTSxFQUNOLE1BQU07UUFDTiw2QkFBNkI7UUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FDaEQsQ0FBQztJQUNKLENBQUM7OEdBak9VLG9CQUFvQjtrR0FBcEIsb0JBQW9COzsyRkFBcEIsb0JBQW9CO2tCQUxoQyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsZUFBZTtvQkFDekIsUUFBUSxFQUFFLGFBQWE7aUJBQ3hCOzswQkFLYyxJQUFJOzswQkFBSSxJQUFJOzswQkFBSSxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0LCBTZWxmLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU29ydE1ldGEgfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBUYWJsZSB9IGZyb20gJ3ByaW1lbmcvdGFibGUnO1xuaW1wb3J0IHsgT2JqZWN0VXRpbHMgfSBmcm9tICdwcmltZW5nL3V0aWxzJztcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnW3RXaXRoVW5zb3J0XScsXG4gIGV4cG9ydEFzOiAndFdpdGhVbnNvcnQnXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlVW5zb3J0RGlyZWN0aXZlIHtcbiAgcmVzZXRTb3J0aW5nID0gZmFsc2U7XG4gIHNvcnRJbmRpY2VzOiBudW1iZXJbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKEBIb3N0KCkgQFNlbGYoKSBAT3B0aW9uYWwoKSBwdWJsaWMgcFRhYmxlOiBUYWJsZSkge1xuICAgIHBUYWJsZS5zb3J0ID0gKGV2ZW50OiBhbnkpID0+IHtcbiAgICAgIGlmIChwVGFibGUuc29ydE1vZGUgPT09ICdzaW5nbGUnKSB7XG4gICAgICAgIGlmIChwVGFibGUuc29ydEZpZWxkID09PSBldmVudC5maWVsZCAmJiBwVGFibGUuc29ydE9yZGVyID09PSAtMSkge1xuICAgICAgICAgIHBUYWJsZS5fc29ydE9yZGVyID0gcFRhYmxlLmRlZmF1bHRTb3J0T3JkZXI7XG4gICAgICAgICAgKHBUYWJsZS5fc29ydEZpZWxkIGFzIGFueSkgPSBudWxsO1xuICAgICAgICAgIHRoaXMucmVzZXRTb3J0aW5nID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBwVGFibGUuX3NvcnRPcmRlciA9XG4gICAgICAgICAgICBwVGFibGUuc29ydEZpZWxkID09PSBldmVudC5maWVsZFxuICAgICAgICAgICAgICA/IHBUYWJsZS5zb3J0T3JkZXIgKiAtMVxuICAgICAgICAgICAgICA6IHBUYWJsZS5kZWZhdWx0U29ydE9yZGVyO1xuICAgICAgICAgIHBUYWJsZS5fc29ydEZpZWxkID0gZXZlbnQuZmllbGQ7XG4gICAgICAgIH1cbiAgICAgICAgcFRhYmxlLnNvcnRTaW5nbGUoKTtcbiAgICAgIH1cbiAgICAgIGlmIChwVGFibGUuc29ydE1vZGUgPT09ICdtdWx0aXBsZScpIHtcbiAgICAgICAgbGV0IHJlc2V0SW5kZXggPSBmYWxzZTtcbiAgICAgICAgY29uc3Qgc29ydE1ldGEgPSBwVGFibGUuZ2V0U29ydE1ldGEoZXZlbnQuZmllbGQpO1xuXG4gICAgICAgIC8vIFRvZG86IFVzZSBleHBsaWNpdCB0eXBlIGluIHRoZSB3aG9sZSBibG9ja1xuICAgICAgICBpZiAoc29ydE1ldGEpIHtcbiAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IChwVGFibGUuX211bHRpU29ydE1ldGEgYXMgYW55KS5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKChwVGFibGUuX211bHRpU29ydE1ldGEgYXMgYW55KVtpXS5maWVsZCA9PT0gc29ydE1ldGEuZmllbGQpIHtcbiAgICAgICAgICAgICAgKHBUYWJsZS5fbXVsdGlTb3J0TWV0YSBhcyBhbnkpLnNwbGljZShpLCAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHNvcnRNZXRhLm9yZGVyID09PSAxKSB7XG4gICAgICAgICAgICBzb3J0TWV0YS5vcmRlciA9IHNvcnRNZXRhLm9yZGVyICogLTE7XG4gICAgICAgICAgICAocFRhYmxlLm11bHRpU29ydE1ldGEgYXMgYW55KS5wdXNoKHNvcnRNZXRhKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHBUYWJsZS5fbXVsdGlTb3J0TWV0YT8ubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAocFRhYmxlLm11bHRpU29ydE1ldGEgYXMgYW55KSA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLnJlc2V0U29ydGluZyA9IHRydWU7XG4gICAgICAgICAgICByZXNldEluZGV4ID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaWYgKCFwVGFibGUubXVsdGlTb3J0TWV0YSkge1xuICAgICAgICAgICAgcFRhYmxlLl9tdWx0aVNvcnRNZXRhID0gW107XG4gICAgICAgICAgfVxuICAgICAgICAgIChwVGFibGUubXVsdGlTb3J0TWV0YSBhcyBhbnkpLnB1c2goe1xuICAgICAgICAgICAgZmllbGQ6IGV2ZW50LmZpZWxkLFxuICAgICAgICAgICAgb3JkZXI6IHBUYWJsZS5kZWZhdWx0U29ydE9yZGVyXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBwVGFibGUuc29ydE11bHRpcGxlKCk7XG4gICAgICAgIGlmIChyZXNldEluZGV4KSBwVGFibGUuX211bHRpU29ydE1ldGEgPSBbXTtcbiAgICAgIH1cblxuICAgICAgaWYgKHBUYWJsZS5pc1N0YXRlZnVsKCkpIHtcbiAgICAgICAgcFRhYmxlLnNhdmVTdGF0ZSgpO1xuICAgICAgfVxuXG4gICAgICBwVGFibGUuYW5jaG9yUm93SW5kZXggPSAwO1xuICAgICAgdGhpcy5yZXNldFNvcnRpbmcgPSBmYWxzZTtcbiAgICB9O1xuXG4gICAgcFRhYmxlLnNvcnRTaW5nbGUgPSAoKSA9PiB7XG4gICAgICBjb25zdCBmaWVsZCA9IHBUYWJsZS5zb3J0RmllbGQgfHwgcFRhYmxlLmdyb3VwUm93c0J5O1xuICAgICAgY29uc3Qgb3JkZXIgPSBwVGFibGUuc29ydEZpZWxkXG4gICAgICAgID8gcFRhYmxlLnNvcnRPcmRlclxuICAgICAgICA6IHBUYWJsZS5ncm91cFJvd3NCeU9yZGVyO1xuICAgICAgaWYgKFxuICAgICAgICBwVGFibGUuZ3JvdXBSb3dzQnkgJiZcbiAgICAgICAgcFRhYmxlLnNvcnRGaWVsZCAmJlxuICAgICAgICBwVGFibGUuZ3JvdXBSb3dzQnkgIT09IHBUYWJsZS5zb3J0RmllbGRcbiAgICAgICkge1xuICAgICAgICBwVGFibGUuX211bHRpU29ydE1ldGEgPSBbXG4gICAgICAgICAgcFRhYmxlLmdldEdyb3VwUm93c01ldGEoKSxcbiAgICAgICAgICB7IGZpZWxkOiBwVGFibGUuc29ydEZpZWxkLCBvcmRlcjogcFRhYmxlLnNvcnRPcmRlciB9XG4gICAgICAgIF07XG4gICAgICAgIHBUYWJsZS5zb3J0TXVsdGlwbGUoKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAob3JkZXIgJiYgKGZpZWxkIHx8IHRoaXMucmVzZXRTb3J0aW5nKSkge1xuICAgICAgICBpZiAocFRhYmxlLnJlc3RvcmluZ1NvcnQpIHtcbiAgICAgICAgICBwVGFibGUucmVzdG9yaW5nU29ydCA9IGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHBUYWJsZS5sYXp5KSB7XG4gICAgICAgICAgcFRhYmxlLm9uTGF6eUxvYWQuZW1pdChwVGFibGUuY3JlYXRlTGF6eUxvYWRNZXRhZGF0YSgpKTtcbiAgICAgICAgfSBlbHNlIGlmIChwVGFibGUudmFsdWUpIHtcbiAgICAgICAgICBpZiAocFRhYmxlLmN1c3RvbVNvcnQpIHtcbiAgICAgICAgICAgIHBUYWJsZS5zb3J0RnVuY3Rpb24uZW1pdCh7XG4gICAgICAgICAgICAgIGRhdGE6IHBUYWJsZS52YWx1ZSxcbiAgICAgICAgICAgICAgbW9kZTogcFRhYmxlLnNvcnRNb2RlLFxuICAgICAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICAgICAgb3JkZXJcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9zb3J0RGF0YShmaWVsZCwgb3JkZXIpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChwVGFibGUuaGFzRmlsdGVyKCkpIHtcbiAgICAgICAgICAgIHBUYWJsZS5fZmlsdGVyKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgc29ydE1ldGE6IFNvcnRNZXRhID0ge1xuICAgICAgICAgIGZpZWxkLFxuICAgICAgICAgIG9yZGVyXG4gICAgICAgIH07XG5cbiAgICAgICAgcFRhYmxlLm9uU29ydC5lbWl0KHNvcnRNZXRhKTtcbiAgICAgICAgcFRhYmxlLnRhYmxlU2VydmljZS5vblNvcnQoc29ydE1ldGEpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBwVGFibGUuc29ydE11bHRpcGxlID0gKCkgPT4ge1xuICAgICAgaWYgKHBUYWJsZS5ncm91cFJvd3NCeSkge1xuICAgICAgICBpZiAoIXBUYWJsZS5fbXVsdGlTb3J0TWV0YSlcbiAgICAgICAgICBwVGFibGUuX211bHRpU29ydE1ldGEgPSBbcFRhYmxlLmdldEdyb3VwUm93c01ldGEoKV07XG4gICAgICAgIC8vIFJlcGxhY2Ugd2l0aCBleHBsaWNpdCB0eXBlXG4gICAgICAgIGVsc2UgaWYgKChwVGFibGUubXVsdGlTb3J0TWV0YSBhcyBhbnkpWzBdLmZpZWxkICE9PSBwVGFibGUuZ3JvdXBSb3dzQnkpXG4gICAgICAgICAgcFRhYmxlLl9tdWx0aVNvcnRNZXRhID0gW1xuICAgICAgICAgICAgcFRhYmxlLmdldEdyb3VwUm93c01ldGEoKSxcbiAgICAgICAgICAgIC4uLnBUYWJsZS5fbXVsdGlTb3J0TWV0YVxuICAgICAgICAgIF07XG4gICAgICB9XG5cbiAgICAgIGlmIChcbiAgICAgICAgKHBUYWJsZS5tdWx0aVNvcnRNZXRhICYmIHBUYWJsZS5tdWx0aVNvcnRNZXRhLmxlbmd0aCA+IDApIHx8XG4gICAgICAgIHRoaXMucmVzZXRTb3J0aW5nXG4gICAgICApIHtcbiAgICAgICAgaWYgKHBUYWJsZS5sYXp5KSB7XG4gICAgICAgICAgcFRhYmxlLm9uTGF6eUxvYWQuZW1pdChwVGFibGUuY3JlYXRlTGF6eUxvYWRNZXRhZGF0YSgpKTtcbiAgICAgICAgfSBlbHNlIGlmIChwVGFibGUudmFsdWUpIHtcbiAgICAgICAgICBpZiAocFRhYmxlLmN1c3RvbVNvcnQpIHtcbiAgICAgICAgICAgIHBUYWJsZS5zb3J0RnVuY3Rpb24uZW1pdCh7XG4gICAgICAgICAgICAgIGRhdGE6IHBUYWJsZS52YWx1ZSxcbiAgICAgICAgICAgICAgbW9kZTogcFRhYmxlLnNvcnRNb2RlLFxuICAgICAgICAgICAgICBtdWx0aVNvcnRNZXRhOiBwVGFibGUubXVsdGlTb3J0TWV0YVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3NvcnREYXRhKCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHBUYWJsZS5oYXNGaWx0ZXIoKSkge1xuICAgICAgICAgICAgcFRhYmxlLl9maWx0ZXIoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwVGFibGUub25Tb3J0LmVtaXQoe1xuICAgICAgICAgIG11bHRpc29ydG1ldGE6IHBUYWJsZS5tdWx0aVNvcnRNZXRhXG4gICAgICAgIH0pO1xuICAgICAgICAvLyBSZXBsYWNlIHdpdGggZXhwbGljaXQgdHlwZVxuICAgICAgICBwVGFibGUudGFibGVTZXJ2aWNlLm9uU29ydChwVGFibGUubXVsdGlTb3J0TWV0YSBhcyBhbnkpO1xuICAgICAgfVxuICAgIH07XG4gIH1cblxuICByZXNldERlZmF1bHRTb3J0T3JkZXIoKSB7XG4gICAgdGhpcy5zb3J0SW5kaWNlcyA9IFtdO1xuICB9XG5cbiAgcHJpdmF0ZSBfc29ydERhdGEoZmllbGQ/OiBhbnksIG9yZGVyPzogYW55KSB7XG4gICAgLy8gcmVzdG9yZSBkZWZhdWx0IHNvcnQgb3JkZXJcbiAgICBpZiAodGhpcy5yZXNldFNvcnRpbmcgJiYgdGhpcy5zb3J0SW5kaWNlcy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLnBUYWJsZS5fdmFsdWUgPSB0aGlzLnNvcnRJbmRpY2VzLm1hcChcbiAgICAgICAgKGluZGV4KSA9PiB0aGlzLnBUYWJsZS5fdmFsdWVbaW5kZXhdXG4gICAgICApO1xuICAgICAgdGhpcy5yZXNldERlZmF1bHRTb3J0T3JkZXIoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdG9Tb3J0OiBhbnlbXSA9IFtdO1xuICAgICAgaWYgKHRoaXMuc29ydEluZGljZXMubGVuZ3RoIDwgMSkge1xuICAgICAgICB0aGlzLnNvcnRJbmRpY2VzID0gQXJyYXkuZnJvbShcbiAgICAgICAgICB7IGxlbmd0aDogdGhpcy5wVGFibGUudmFsdWUubGVuZ3RoIH0sXG4gICAgICAgICAgKF8sIGluZGV4KSA9PiBpbmRleFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMucFRhYmxlLnZhbHVlLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHRvU29ydC5wdXNoKFt0aGlzLnBUYWJsZS52YWx1ZVtpXSwgdGhpcy5zb3J0SW5kaWNlcy5pbmRleE9mKGkpXSk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLnBUYWJsZS5zb3J0TW9kZSA9PT0gJ3NpbmdsZScpIHtcbiAgICAgICAgdG9Tb3J0LnNvcnQoKGRhdGExLCBkYXRhMikgPT4ge1xuICAgICAgICAgIGNvbnN0IHZhbHVlMSA9IE9iamVjdFV0aWxzLnJlc29sdmVGaWVsZERhdGEoZGF0YTFbMF0sIGZpZWxkKTtcbiAgICAgICAgICBjb25zdCB2YWx1ZTIgPSBPYmplY3RVdGlscy5yZXNvbHZlRmllbGREYXRhKGRhdGEyWzBdLCBmaWVsZCk7XG4gICAgICAgICAgcmV0dXJuIHRoaXMucFRhYmxlLmNvbXBhcmVWYWx1ZXNPblNvcnQodmFsdWUxLCB2YWx1ZTIsIG9yZGVyKTtcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0b1NvcnQuc29ydCgoZGF0YTEsIGRhdGEyKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuX211bHRpc29ydEZpZWxkKGRhdGExLCBkYXRhMiwgMCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRvU29ydC5sZW5ndGg7IGkrKykge1xuICAgICAgICB0aGlzLnNvcnRJbmRpY2VzW3RvU29ydFtpXVsxXV0gPSBpO1xuICAgICAgICB0aGlzLnBUYWJsZS52YWx1ZVtpXSA9IHRvU29ydFtpXVswXTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnBUYWJsZS5fdmFsdWUgPSBbLi4udGhpcy5wVGFibGUudmFsdWVdO1xuICB9XG5cbiAgcHJpdmF0ZSBfbXVsdGlzb3J0RmllbGQoZGF0YTE6IGFueSwgZGF0YTI6IGFueSwgaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgY29uc3QgdmFsdWUxID0gT2JqZWN0VXRpbHMucmVzb2x2ZUZpZWxkRGF0YShcbiAgICAgIGRhdGExWzBdLFxuICAgICAgLy8gUmVwbGFjZSB3aXRoIGV4cGxpY2l0IHR5cGVcbiAgICAgICh0aGlzLnBUYWJsZS5tdWx0aVNvcnRNZXRhIGFzIGFueSlbaW5kZXhdLmZpZWxkXG4gICAgKTtcbiAgICBjb25zdCB2YWx1ZTIgPSBPYmplY3RVdGlscy5yZXNvbHZlRmllbGREYXRhKFxuICAgICAgZGF0YTJbMF0sXG4gICAgICAvLyBSZXBsYWNlIHdpdGggZXhwbGljaXQgdHlwZVxuICAgICAgKHRoaXMucFRhYmxlLm11bHRpU29ydE1ldGEgYXMgYW55KVtpbmRleF0uZmllbGRcbiAgICApO1xuICAgIGlmIChPYmplY3RVdGlscy5jb21wYXJlKHZhbHVlMSwgdmFsdWUyLCB0aGlzLnBUYWJsZS5maWx0ZXJMb2NhbGUpID09PSAwKSB7XG4gICAgICAvLyBSZXBsYWNlIHdpdGggZXhwbGljaXQgdHlwZVxuICAgICAgcmV0dXJuICh0aGlzLnBUYWJsZS5tdWx0aVNvcnRNZXRhIGFzIGFueSkubGVuZ3RoIC0gMSA+IGluZGV4XG4gICAgICAgID8gdGhpcy5fbXVsdGlzb3J0RmllbGQoZGF0YTEsIGRhdGEyLCBpbmRleCArIDEpXG4gICAgICAgIDogMDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMucFRhYmxlLmNvbXBhcmVWYWx1ZXNPblNvcnQoXG4gICAgICB2YWx1ZTEsXG4gICAgICB2YWx1ZTIsXG4gICAgICAvLyBSZXBsYWNlIHdpdGggZXhwbGljaXQgdHlwZVxuICAgICAgKHRoaXMucFRhYmxlLm11bHRpU29ydE1ldGEgYXMgYW55KVtpbmRleF0ub3JkZXJcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
212
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtdW5zb3J0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nwcy11aS1raXQvc3JjL2xpYi9jb21wb25lbnRzL2Nwcy10YWJsZS9kaXJlY3RpdmVzL2ludGVybmFsL3RhYmxlLXVuc29ydC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdoRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPNUMsTUFBTSxPQUFPLG9CQUFvQjtJQUkvQixZQUErQyxNQUFhO1FBQWIsV0FBTSxHQUFOLE1BQU0sQ0FBTztRQUg1RCxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUNyQixnQkFBVyxHQUFhLEVBQUUsQ0FBQztRQUd6QixNQUFNLENBQUMsSUFBSSxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDM0IsSUFBSSxNQUFNLENBQUMsUUFBUSxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUNqQyxJQUFJLE1BQU0sQ0FBQyxTQUFTLEtBQUssS0FBSyxDQUFDLEtBQUssSUFBSSxNQUFNLENBQUMsU0FBUyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7b0JBQ2hFLE1BQU0sQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDO29CQUMzQyxNQUFNLENBQUMsVUFBa0IsR0FBRyxJQUFJLENBQUM7b0JBQ2xDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO2dCQUMzQixDQUFDO3FCQUFNLENBQUM7b0JBQ04sTUFBTSxDQUFDLFVBQVU7d0JBQ2YsTUFBTSxDQUFDLFNBQVMsS0FBSyxLQUFLLENBQUMsS0FBSzs0QkFDOUIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDOzRCQUN2QixDQUFDLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDO29CQUM5QixNQUFNLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7Z0JBQ2xDLENBQUM7Z0JBQ0QsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3RCLENBQUM7WUFDRCxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssVUFBVSxFQUFFLENBQUM7Z0JBQ25DLElBQUksVUFBVSxHQUFHLEtBQUssQ0FBQztnQkFDdkIsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBRWpELElBQUksUUFBUSxJQUFJLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQztvQkFDckMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7d0JBQ3JELElBQUksTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDOzRCQUNyRCxNQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7d0JBQ3BDLENBQUM7b0JBQ0gsQ0FBQztvQkFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUM7d0JBQ3pCLFFBQVEsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQzt3QkFDckMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7b0JBQ3RDLENBQUM7b0JBQ0QsSUFBSSxNQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQzt3QkFDdEMsTUFBTSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7d0JBQzVCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO3dCQUN6QixVQUFVLEdBQUcsSUFBSSxDQUFDO29CQUNwQixDQUFDO2dCQUNILENBQUM7cUJBQU0sQ0FBQztvQkFDTixJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxDQUFDO3dCQUMxQixNQUFNLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztvQkFDNUIsQ0FBQztvQkFDRCxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQzt3QkFDeEIsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO3dCQUNsQixLQUFLLEVBQUUsTUFBTSxDQUFDLGdCQUFnQjtxQkFDL0IsQ0FBQyxDQUFDO2dCQUNMLENBQUM7Z0JBRUQsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUN0QixJQUFJLFVBQVU7b0JBQUUsTUFBTSxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUM7WUFDNUMsQ0FBQztZQUVELElBQUksTUFBTSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUM7Z0JBQ3hCLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNyQixDQUFDO1lBRUQsTUFBTSxDQUFDLGNBQWMsR0FBRyxDQUFDLENBQUM7WUFDMUIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7UUFDNUIsQ0FBQyxDQUFDO1FBRUYsTUFBTSxDQUFDLFVBQVUsR0FBRyxHQUFHLEVBQUU7WUFDdkIsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLFNBQVMsSUFBSSxNQUFNLENBQUMsV0FBVyxDQUFDO1lBQ3JELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxTQUFTO2dCQUM1QixDQUFDLENBQUMsTUFBTSxDQUFDLFNBQVM7Z0JBQ2xCLENBQUMsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7WUFDNUIsSUFDRSxNQUFNLENBQUMsV0FBVztnQkFDbEIsTUFBTSxDQUFDLFNBQVM7Z0JBQ2hCLE1BQU0sQ0FBQyxXQUFXLEtBQUssTUFBTSxDQUFDLFNBQVMsRUFDdkMsQ0FBQztnQkFDRCxNQUFNLENBQUMsY0FBYyxHQUFHO29CQUN0QixNQUFNLENBQUMsZ0JBQWdCLEVBQUU7b0JBQ3pCLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxTQUFTLEVBQUU7aUJBQ3JELENBQUM7Z0JBQ0YsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUN0QixPQUFPO1lBQ1QsQ0FBQztZQUVELElBQUksS0FBSyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDO2dCQUMxQyxJQUFJLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQztvQkFDekIsTUFBTSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUM7Z0JBQy9CLENBQUM7Z0JBRUQsSUFBSSxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ2hCLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUM7Z0JBQzFELENBQUM7cUJBQU0sSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7b0JBQ3hCLElBQUksTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDO3dCQUN0QixNQUFNLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQzs0QkFDdkIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxLQUFLOzRCQUNsQixJQUFJLEVBQUUsTUFBTSxDQUFDLFFBQVE7NEJBQ3JCLEtBQUs7NEJBQ0wsS0FBSzt5QkFDTixDQUFDLENBQUM7b0JBQ0wsQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO29CQUMvQixDQUFDO29CQUVELElBQUksTUFBTSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUM7d0JBQ3ZCLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFDbkIsQ0FBQztnQkFDSCxDQUFDO2dCQUVELE1BQU0sUUFBUSxHQUFhO29CQUN6QixLQUFLO29CQUNMLEtBQUs7aUJBQ04sQ0FBQztnQkFFRixNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDN0IsTUFBTSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdkMsQ0FBQztRQUNILENBQUMsQ0FBQztRQUVGLE1BQU0sQ0FBQyxZQUFZLEdBQUcsR0FBRyxFQUFFO1lBQ3pCLElBQUksTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWE7b0JBQ3ZCLE1BQU0sQ0FBQyxhQUFhLEdBQUcsQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO3FCQUNoRCxJQUFJLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLE1BQU0sQ0FBQyxXQUFXO29CQUMzRCxNQUFNLENBQUMsYUFBYSxHQUFHO3dCQUNyQixNQUFNLENBQUMsZ0JBQWdCLEVBQUU7d0JBQ3pCLEdBQUcsTUFBTSxDQUFDLGFBQWE7cUJBQ3hCLENBQUM7WUFDTixDQUFDO1lBRUQsSUFDRSxDQUFDLE1BQU0sQ0FBQyxhQUFhLElBQUksTUFBTSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO2dCQUN6RCxJQUFJLENBQUMsWUFBWSxFQUNqQixDQUFDO2dCQUNELElBQUksTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO29CQUNoQixNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDO2dCQUMxRCxDQUFDO3FCQUFNLElBQUksTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO29CQUN4QixJQUFJLE1BQU0sQ0FBQyxVQUFVLEVBQUUsQ0FBQzt3QkFDdEIsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUM7NEJBQ3ZCLElBQUksRUFBRSxNQUFNLENBQUMsS0FBSzs0QkFDbEIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxRQUFROzRCQUNyQixhQUFhLEVBQUUsTUFBTSxDQUFDLGFBQWE7eUJBQ3BDLENBQUMsQ0FBQztvQkFDTCxDQUFDO3lCQUFNLENBQUM7d0JBQ04sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO29CQUNuQixDQUFDO29CQUVELElBQUksTUFBTSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUM7d0JBQ3ZCLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFDbkIsQ0FBQztnQkFDSCxDQUFDO2dCQUVELE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO29CQUNqQixhQUFhLEVBQUUsTUFBTSxDQUFDLGFBQWE7aUJBQ3BDLENBQUMsQ0FBQztnQkFDSCxNQUFNLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxDQUFDO1lBQzNELENBQUM7UUFDSCxDQUFDLENBQUM7SUFDSixDQUFDO0lBRUQscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFTyxTQUFTLENBQUMsS0FBVyxFQUFFLEtBQVc7UUFDeEMsNkJBQTZCO1FBQzdCLElBQUksSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNyRCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FDdkMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUNyQyxDQUFDO1lBQ0YsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDL0IsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLE1BQU0sR0FBVSxFQUFFLENBQUM7WUFDekIsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUMzQixFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsRUFDcEMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQ3BCLENBQUM7WUFDSixDQUFDO1lBRUQsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUNsRCxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ25FLENBQUM7WUFFRCxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUN0QyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFO29CQUMzQixNQUFNLE1BQU0sR0FBRyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO29CQUM3RCxNQUFNLE1BQU0sR0FBRyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO29CQUM3RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsbUJBQW1CLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDaEUsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRTtvQkFDM0IsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQy9DLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztZQUVELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdEMsQ0FBQztRQUNILENBQUM7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRU8sZUFBZSxDQUFDLEtBQVUsRUFBRSxLQUFVLEVBQUUsS0FBYTtRQUMzRCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhO1lBQUUsT0FBTyxDQUFDLENBQUM7UUFDekMsTUFBTSxNQUFNLEdBQUcsV0FBVyxDQUFDLGdCQUFnQixDQUN6QyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ1IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUN2QyxDQUFDO1FBQ0YsTUFBTSxNQUFNLEdBQUcsV0FBVyxDQUFDLGdCQUFnQixDQUN6QyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQ1IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUN2QyxDQUFDO1FBQ0YsSUFBSSxXQUFXLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN4RSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLEdBQUcsS0FBSztnQkFDakQsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEdBQUcsQ0FBQyxDQUFDO2dCQUMvQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ1IsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FDcEMsTUFBTSxFQUNOLE1BQU0sRUFDTixJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQ3ZDLENBQUM7SUFDSixDQUFDOzhHQTNOVSxvQkFBb0I7a0dBQXBCLG9CQUFvQjs7MkZBQXBCLG9CQUFvQjtrQkFMaEMsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFFBQVEsRUFBRSxhQUFhO2lCQUN4Qjs7MEJBS2MsSUFBSTs7MEJBQUksSUFBSTs7MEJBQUksUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdCwgU2VsZiwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNvcnRNZXRhIH0gZnJvbSAncHJpbWVuZy9hcGknO1xuaW1wb3J0IHsgVGFibGUgfSBmcm9tICdwcmltZW5nL3RhYmxlJztcbmltcG9ydCB7IE9iamVjdFV0aWxzIH0gZnJvbSAncHJpbWVuZy91dGlscyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ1t0V2l0aFVuc29ydF0nLFxuICBleHBvcnRBczogJ3RXaXRoVW5zb3J0J1xufSlcbmV4cG9ydCBjbGFzcyBUYWJsZVVuc29ydERpcmVjdGl2ZSB7XG4gIHJlc2V0U29ydGluZyA9IGZhbHNlO1xuICBzb3J0SW5kaWNlczogbnVtYmVyW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihASG9zdCgpIEBTZWxmKCkgQE9wdGlvbmFsKCkgcHVibGljIHBUYWJsZTogVGFibGUpIHtcbiAgICBwVGFibGUuc29ydCA9IChldmVudDogYW55KSA9PiB7XG4gICAgICBpZiAocFRhYmxlLnNvcnRNb2RlID09PSAnc2luZ2xlJykge1xuICAgICAgICBpZiAocFRhYmxlLnNvcnRGaWVsZCA9PT0gZXZlbnQuZmllbGQgJiYgcFRhYmxlLnNvcnRPcmRlciA9PT0gLTEpIHtcbiAgICAgICAgICBwVGFibGUuX3NvcnRPcmRlciA9IHBUYWJsZS5kZWZhdWx0U29ydE9yZGVyO1xuICAgICAgICAgIChwVGFibGUuX3NvcnRGaWVsZCBhcyBhbnkpID0gbnVsbDtcbiAgICAgICAgICB0aGlzLnJlc2V0U29ydGluZyA9IHRydWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcFRhYmxlLl9zb3J0T3JkZXIgPVxuICAgICAgICAgICAgcFRhYmxlLnNvcnRGaWVsZCA9PT0gZXZlbnQuZmllbGRcbiAgICAgICAgICAgICAgPyBwVGFibGUuc29ydE9yZGVyICogLTFcbiAgICAgICAgICAgICAgOiBwVGFibGUuZGVmYXVsdFNvcnRPcmRlcjtcbiAgICAgICAgICBwVGFibGUuX3NvcnRGaWVsZCA9IGV2ZW50LmZpZWxkO1xuICAgICAgICB9XG4gICAgICAgIHBUYWJsZS5zb3J0U2luZ2xlKCk7XG4gICAgICB9XG4gICAgICBpZiAocFRhYmxlLnNvcnRNb2RlID09PSAnbXVsdGlwbGUnKSB7XG4gICAgICAgIGxldCByZXNldEluZGV4ID0gZmFsc2U7XG4gICAgICAgIGNvbnN0IHNvcnRNZXRhID0gcFRhYmxlLmdldFNvcnRNZXRhKGV2ZW50LmZpZWxkKTtcblxuICAgICAgICBpZiAoc29ydE1ldGEgJiYgcFRhYmxlLm11bHRpU29ydE1ldGEpIHtcbiAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHBUYWJsZS5tdWx0aVNvcnRNZXRhLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAocFRhYmxlLm11bHRpU29ydE1ldGFbaV0uZmllbGQgPT09IHNvcnRNZXRhLmZpZWxkKSB7XG4gICAgICAgICAgICAgIHBUYWJsZS5tdWx0aVNvcnRNZXRhLnNwbGljZShpLCAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHNvcnRNZXRhLm9yZGVyID09PSAxKSB7XG4gICAgICAgICAgICBzb3J0TWV0YS5vcmRlciA9IHNvcnRNZXRhLm9yZGVyICogLTE7XG4gICAgICAgICAgICBwVGFibGUubXVsdGlTb3J0TWV0YS5wdXNoKHNvcnRNZXRhKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHBUYWJsZS5tdWx0aVNvcnRNZXRhLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgcFRhYmxlLm11bHRpU29ydE1ldGEgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5yZXNldFNvcnRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgcmVzZXRJbmRleCA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmICghcFRhYmxlLm11bHRpU29ydE1ldGEpIHtcbiAgICAgICAgICAgIHBUYWJsZS5tdWx0aVNvcnRNZXRhID0gW107XG4gICAgICAgICAgfVxuICAgICAgICAgIHBUYWJsZS5tdWx0aVNvcnRNZXRhLnB1c2goe1xuICAgICAgICAgICAgZmllbGQ6IGV2ZW50LmZpZWxkLFxuICAgICAgICAgICAgb3JkZXI6IHBUYWJsZS5kZWZhdWx0U29ydE9yZGVyXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBwVGFibGUuc29ydE11bHRpcGxlKCk7XG4gICAgICAgIGlmIChyZXNldEluZGV4KSBwVGFibGUubXVsdGlTb3J0TWV0YSA9IFtdO1xuICAgICAgfVxuXG4gICAgICBpZiAocFRhYmxlLmlzU3RhdGVmdWwoKSkge1xuICAgICAgICBwVGFibGUuc2F2ZVN0YXRlKCk7XG4gICAgICB9XG5cbiAgICAgIHBUYWJsZS5hbmNob3JSb3dJbmRleCA9IDA7XG4gICAgICB0aGlzLnJlc2V0U29ydGluZyA9IGZhbHNlO1xuICAgIH07XG5cbiAgICBwVGFibGUuc29ydFNpbmdsZSA9ICgpID0+IHtcbiAgICAgIGNvbnN0IGZpZWxkID0gcFRhYmxlLnNvcnRGaWVsZCB8fCBwVGFibGUuZ3JvdXBSb3dzQnk7XG4gICAgICBjb25zdCBvcmRlciA9IHBUYWJsZS5zb3J0RmllbGRcbiAgICAgICAgPyBwVGFibGUuc29ydE9yZGVyXG4gICAgICAgIDogcFRhYmxlLmdyb3VwUm93c0J5T3JkZXI7XG4gICAgICBpZiAoXG4gICAgICAgIHBUYWJsZS5ncm91cFJvd3NCeSAmJlxuICAgICAgICBwVGFibGUuc29ydEZpZWxkICYmXG4gICAgICAgIHBUYWJsZS5ncm91cFJvd3NCeSAhPT0gcFRhYmxlLnNvcnRGaWVsZFxuICAgICAgKSB7XG4gICAgICAgIHBUYWJsZS5fbXVsdGlTb3J0TWV0YSA9IFtcbiAgICAgICAgICBwVGFibGUuZ2V0R3JvdXBSb3dzTWV0YSgpLFxuICAgICAgICAgIHsgZmllbGQ6IHBUYWJsZS5zb3J0RmllbGQsIG9yZGVyOiBwVGFibGUuc29ydE9yZGVyIH1cbiAgICAgICAgXTtcbiAgICAgICAgcFRhYmxlLnNvcnRNdWx0aXBsZSgpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChvcmRlciAmJiAoZmllbGQgfHwgdGhpcy5yZXNldFNvcnRpbmcpKSB7XG4gICAgICAgIGlmIChwVGFibGUucmVzdG9yaW5nU29ydCkge1xuICAgICAgICAgIHBUYWJsZS5yZXN0b3JpbmdTb3J0ID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAocFRhYmxlLmxhenkpIHtcbiAgICAgICAgICBwVGFibGUub25MYXp5TG9hZC5lbWl0KHBUYWJsZS5jcmVhdGVMYXp5TG9hZE1ldGFkYXRhKCkpO1xuICAgICAgICB9IGVsc2UgaWYgKHBUYWJsZS52YWx1ZSkge1xuICAgICAgICAgIGlmIChwVGFibGUuY3VzdG9tU29ydCkge1xuICAgICAgICAgICAgcFRhYmxlLnNvcnRGdW5jdGlvbi5lbWl0KHtcbiAgICAgICAgICAgICAgZGF0YTogcFRhYmxlLnZhbHVlLFxuICAgICAgICAgICAgICBtb2RlOiBwVGFibGUuc29ydE1vZGUsXG4gICAgICAgICAgICAgIGZpZWxkLFxuICAgICAgICAgICAgICBvcmRlclxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3NvcnREYXRhKGZpZWxkLCBvcmRlcik7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHBUYWJsZS5oYXNGaWx0ZXIoKSkge1xuICAgICAgICAgICAgcFRhYmxlLl9maWx0ZXIoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzb3J0TWV0YTogU29ydE1ldGEgPSB7XG4gICAgICAgICAgZmllbGQsXG4gICAgICAgICAgb3JkZXJcbiAgICAgICAgfTtcblxuICAgICAgICBwVGFibGUub25Tb3J0LmVtaXQoc29ydE1ldGEpO1xuICAgICAgICBwVGFibGUudGFibGVTZXJ2aWNlLm9uU29ydChzb3J0TWV0YSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIHBUYWJsZS5zb3J0TXVsdGlwbGUgPSAoKSA9PiB7XG4gICAgICBpZiAocFRhYmxlLmdyb3VwUm93c0J5KSB7XG4gICAgICAgIGlmICghcFRhYmxlLm11bHRpU29ydE1ldGEpXG4gICAgICAgICAgcFRhYmxlLm11bHRpU29ydE1ldGEgPSBbcFRhYmxlLmdldEdyb3VwUm93c01ldGEoKV07XG4gICAgICAgIGVsc2UgaWYgKHBUYWJsZS5tdWx0aVNvcnRNZXRhWzBdLmZpZWxkICE9PSBwVGFibGUuZ3JvdXBSb3dzQnkpXG4gICAgICAgICAgcFRhYmxlLm11bHRpU29ydE1ldGEgPSBbXG4gICAgICAgICAgICBwVGFibGUuZ2V0R3JvdXBSb3dzTWV0YSgpLFxuICAgICAgICAgICAgLi4ucFRhYmxlLm11bHRpU29ydE1ldGFcbiAgICAgICAgICBdO1xuICAgICAgfVxuXG4gICAgICBpZiAoXG4gICAgICAgIChwVGFibGUubXVsdGlTb3J0TWV0YSAmJiBwVGFibGUubXVsdGlTb3J0TWV0YS5sZW5ndGggPiAwKSB8fFxuICAgICAgICB0aGlzLnJlc2V0U29ydGluZ1xuICAgICAgKSB7XG4gICAgICAgIGlmIChwVGFibGUubGF6eSkge1xuICAgICAgICAgIHBUYWJsZS5vbkxhenlMb2FkLmVtaXQocFRhYmxlLmNyZWF0ZUxhenlMb2FkTWV0YWRhdGEoKSk7XG4gICAgICAgIH0gZWxzZSBpZiAocFRhYmxlLnZhbHVlKSB7XG4gICAgICAgICAgaWYgKHBUYWJsZS5jdXN0b21Tb3J0KSB7XG4gICAgICAgICAgICBwVGFibGUuc29ydEZ1bmN0aW9uLmVtaXQoe1xuICAgICAgICAgICAgICBkYXRhOiBwVGFibGUudmFsdWUsXG4gICAgICAgICAgICAgIG1vZGU6IHBUYWJsZS5zb3J0TW9kZSxcbiAgICAgICAgICAgICAgbXVsdGlTb3J0TWV0YTogcFRhYmxlLm11bHRpU29ydE1ldGFcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9zb3J0RGF0YSgpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChwVGFibGUuaGFzRmlsdGVyKCkpIHtcbiAgICAgICAgICAgIHBUYWJsZS5fZmlsdGVyKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcFRhYmxlLm9uU29ydC5lbWl0KHtcbiAgICAgICAgICBtdWx0aXNvcnRtZXRhOiBwVGFibGUubXVsdGlTb3J0TWV0YVxuICAgICAgICB9KTtcbiAgICAgICAgcFRhYmxlLnRhYmxlU2VydmljZS5vblNvcnQocFRhYmxlLm11bHRpU29ydE1ldGEgfHwgbnVsbCk7XG4gICAgICB9XG4gICAgfTtcbiAgfVxuXG4gIHJlc2V0RGVmYXVsdFNvcnRPcmRlcigpIHtcbiAgICB0aGlzLnNvcnRJbmRpY2VzID0gW107XG4gIH1cblxuICBwcml2YXRlIF9zb3J0RGF0YShmaWVsZD86IGFueSwgb3JkZXI/OiBhbnkpIHtcbiAgICAvLyByZXN0b3JlIGRlZmF1bHQgc29ydCBvcmRlclxuICAgIGlmICh0aGlzLnJlc2V0U29ydGluZyAmJiB0aGlzLnNvcnRJbmRpY2VzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMucFRhYmxlLl92YWx1ZSA9IHRoaXMuc29ydEluZGljZXMubWFwKFxuICAgICAgICAoaW5kZXgpID0+IHRoaXMucFRhYmxlLl92YWx1ZVtpbmRleF1cbiAgICAgICk7XG4gICAgICB0aGlzLnJlc2V0RGVmYXVsdFNvcnRPcmRlcigpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB0b1NvcnQ6IGFueVtdID0gW107XG4gICAgICBpZiAodGhpcy5zb3J0SW5kaWNlcy5sZW5ndGggPCAxKSB7XG4gICAgICAgIHRoaXMuc29ydEluZGljZXMgPSBBcnJheS5mcm9tKFxuICAgICAgICAgIHsgbGVuZ3RoOiB0aGlzLnBUYWJsZS52YWx1ZS5sZW5ndGggfSxcbiAgICAgICAgICAoXywgaW5kZXgpID0+IGluZGV4XG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5wVGFibGUudmFsdWUubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgdG9Tb3J0LnB1c2goW3RoaXMucFRhYmxlLnZhbHVlW2ldLCB0aGlzLnNvcnRJbmRpY2VzLmluZGV4T2YoaSldKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMucFRhYmxlLnNvcnRNb2RlID09PSAnc2luZ2xlJykge1xuICAgICAgICB0b1NvcnQuc29ydCgoZGF0YTEsIGRhdGEyKSA9PiB7XG4gICAgICAgICAgY29uc3QgdmFsdWUxID0gT2JqZWN0VXRpbHMucmVzb2x2ZUZpZWxkRGF0YShkYXRhMVswXSwgZmllbGQpO1xuICAgICAgICAgIGNvbnN0IHZhbHVlMiA9IE9iamVjdFV0aWxzLnJlc29sdmVGaWVsZERhdGEoZGF0YTJbMF0sIGZpZWxkKTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5wVGFibGUuY29tcGFyZVZhbHVlc09uU29ydCh2YWx1ZTEsIHZhbHVlMiwgb3JkZXIpO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRvU29ydC5zb3J0KChkYXRhMSwgZGF0YTIpID0+IHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5fbXVsdGlzb3J0RmllbGQoZGF0YTEsIGRhdGEyLCAwKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdG9Tb3J0Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIHRoaXMuc29ydEluZGljZXNbdG9Tb3J0W2ldWzFdXSA9IGk7XG4gICAgICAgIHRoaXMucFRhYmxlLnZhbHVlW2ldID0gdG9Tb3J0W2ldWzBdO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMucFRhYmxlLl92YWx1ZSA9IFsuLi50aGlzLnBUYWJsZS52YWx1ZV07XG4gIH1cblxuICBwcml2YXRlIF9tdWx0aXNvcnRGaWVsZChkYXRhMTogYW55LCBkYXRhMjogYW55LCBpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMucFRhYmxlLm11bHRpU29ydE1ldGEpIHJldHVybiAxO1xuICAgIGNvbnN0IHZhbHVlMSA9IE9iamVjdFV0aWxzLnJlc29sdmVGaWVsZERhdGEoXG4gICAgICBkYXRhMVswXSxcbiAgICAgIHRoaXMucFRhYmxlLm11bHRpU29ydE1ldGFbaW5kZXhdLmZpZWxkXG4gICAgKTtcbiAgICBjb25zdCB2YWx1ZTIgPSBPYmplY3RVdGlscy5yZXNvbHZlRmllbGREYXRhKFxuICAgICAgZGF0YTJbMF0sXG4gICAgICB0aGlzLnBUYWJsZS5tdWx0aVNvcnRNZXRhW2luZGV4XS5maWVsZFxuICAgICk7XG4gICAgaWYgKE9iamVjdFV0aWxzLmNvbXBhcmUodmFsdWUxLCB2YWx1ZTIsIHRoaXMucFRhYmxlLmZpbHRlckxvY2FsZSkgPT09IDApIHtcbiAgICAgIHJldHVybiB0aGlzLnBUYWJsZS5tdWx0aVNvcnRNZXRhLmxlbmd0aCAtIDEgPiBpbmRleFxuICAgICAgICA/IHRoaXMuX211bHRpc29ydEZpZWxkKGRhdGExLCBkYXRhMiwgaW5kZXggKyAxKVxuICAgICAgICA6IDA7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnBUYWJsZS5jb21wYXJlVmFsdWVzT25Tb3J0KFxuICAgICAgdmFsdWUxLFxuICAgICAgdmFsdWUyLFxuICAgICAgdGhpcy5wVGFibGUubXVsdGlTb3J0TWV0YVtpbmRleF0ub3JkZXJcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -90,10 +90,10 @@ export class CpsTagComponent {
|
|
|
90
90
|
this.onChange(value);
|
|
91
91
|
this.valueChanged.emit(value);
|
|
92
92
|
}
|
|
93
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
94
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
93
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CpsTagComponent, deps: [{ token: i1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
94
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: CpsTagComponent, isStandalone: true, selector: "cps-tag", inputs: { label: "label", color: "color", disabled: "disabled", selectable: "selectable", value: "value" }, outputs: { valueChanged: "valueChanged" }, usesOnChanges: true, ngImport: i0, template: "<div\n [ngClass]=\"classesList\"\n [class.unselected]=\"!value && selectable\"\n [ngStyle]=\"{ borderColor: color }\"\n (click)=\"toggleSelected()\">\n <p>{{ label }}</p>\n</div>\n", styles: [":host{width:fit-content;display:inline-block;-webkit-user-select:none;-ms-user-select:none;user-select:none}:host .cps-tag{font-family:Source Sans Pro,sans-serif;min-height:25px;align-items:center;padding:0 10px;background-color:#fff;display:inline-flex;cursor:default;border:solid 1px;border-left:solid 4px}:host .cps-tag.cps-tag--selectable{cursor:pointer}:host .cps-tag.cps-tag--selectable:not(:active):not(:disabled){box-shadow:1px 3px 4px #0000001a}:host .cps-tag.cps-tag--disabled{pointer-events:none;border-color:var(--cps-color-line-dark)!important}:host .cps-tag.cps-tag--disabled p{color:var(--cps-color-text-light)}:host .cps-tag.unselected{border-color:var(--cps-color-text-light)!important}:host .cps-tag p{margin:0;font-size:11px;color:var(--cps-color-text-dark)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
95
95
|
}
|
|
96
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
96
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CpsTagComponent, decorators: [{
|
|
97
97
|
type: Component,
|
|
98
98
|
args: [{ standalone: true, imports: [CommonModule], selector: 'cps-tag', template: "<div\n [ngClass]=\"classesList\"\n [class.unselected]=\"!value && selectable\"\n [ngStyle]=\"{ borderColor: color }\"\n (click)=\"toggleSelected()\">\n <p>{{ label }}</p>\n</div>\n", styles: [":host{width:fit-content;display:inline-block;-webkit-user-select:none;-ms-user-select:none;user-select:none}:host .cps-tag{font-family:Source Sans Pro,sans-serif;min-height:25px;align-items:center;padding:0 10px;background-color:#fff;display:inline-flex;cursor:default;border:solid 1px;border-left:solid 4px}:host .cps-tag.cps-tag--selectable{cursor:pointer}:host .cps-tag.cps-tag--selectable:not(:active):not(:disabled){box-shadow:1px 3px 4px #0000001a}:host .cps-tag.cps-tag--disabled{pointer-events:none;border-color:var(--cps-color-line-dark)!important}:host .cps-tag.cps-tag--disabled p{color:var(--cps-color-text-light)}:host .cps-tag.unselected{border-color:var(--cps-color-text-light)!important}:host .cps-tag p{margin:0;font-size:11px;color:var(--cps-color-text-dark)}\n"] }]
|
|
99
99
|
}], ctorParameters: () => [{ type: i1.NgControl, decorators: [{
|
|
@@ -229,10 +229,10 @@ export class CpsTextareaComponent {
|
|
|
229
229
|
focus() {
|
|
230
230
|
this._elementRef?.nativeElement?.querySelector('textarea')?.focus();
|
|
231
231
|
}
|
|
232
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
233
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
232
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CpsTextareaComponent, deps: [{ token: i1.NgControl, optional: true, self: true }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
233
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: CpsTextareaComponent, isStandalone: true, selector: "cps-textarea", inputs: { label: "label", placeholder: "placeholder", rows: "rows", cols: "cols", autofocus: "autofocus", hint: "hint", disabled: "disabled", width: "width", clearable: "clearable", hideDetails: "hideDetails", persistentClear: "persistentClear", error: "error", resizable: "resizable", infoTooltip: "infoTooltip", infoTooltipClass: "infoTooltipClass", infoTooltipMaxWidth: "infoTooltipMaxWidth", infoTooltipPersistent: "infoTooltipPersistent", infoTooltipPosition: "infoTooltipPosition", value: "value" }, outputs: { valueChanged: "valueChanged", focused: "focused", prefixIconClicked: "prefixIconClicked", blurred: "blurred" }, ngImport: i0, template: "<div class=\"cps-textarea-container\" [ngStyle]=\"{ width: cvtWidth }\">\n <div\n class=\"cps-textarea-label\"\n [ngClass]=\"{ 'cps-textarea-label-disabled': disabled }\"\n *ngIf=\"label\">\n <label>{{ label }}</label>\n <cps-info-circle\n *ngIf=\"infoTooltip\"\n class=\"cps-textarea-label-info-circle\"\n size=\"xsmall\"\n [tooltipPosition]=\"infoTooltipPosition\"\n [tooltipContentClass]=\"infoTooltipClass\"\n [tooltipMaxWidth]=\"infoTooltipMaxWidth\"\n [tooltipPersistent]=\"infoTooltipPersistent\"\n [tooltipText]=\"infoTooltip\">\n </cps-info-circle>\n </div>\n\n <div\n class=\"cps-textarea-wrap\"\n [ngClass]=\"{\n 'cps-textarea-wrap-error': error,\n clearable: clearable,\n 'persistent-clear': persistentClear\n }\">\n <textarea\n spellcheck=\"false\"\n [cols]=\"cols\"\n [rows]=\"rows\"\n [autofocus]=\"autofocus\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder\"\n [value]=\"value\"\n [ngStyle]=\"{\n width: cvtWidth,\n resize: resizable\n }\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n (input)=\"updateValueEvent($event)\"></textarea>\n\n <span\n *ngIf=\"clearable && !disabled\"\n [style.visibility]=\"\n persistentClear || (!persistentClear && value) ? 'visible' : 'hidden'\n \"\n class=\"clear-btn\">\n <cps-icon icon=\"delete\" size=\"small\" (click)=\"clear()\"></cps-icon>\n </span>\n </div>\n <div *ngIf=\"!error && !hideDetails\" class=\"cps-textarea-hint\">\n {{ hint }}\n </div>\n <div *ngIf=\"error && !hideDetails\" class=\"cps-textarea-error\">\n {{ error }}\n </div>\n</div>\n", styles: [":host{display:flex}:host .cps-textarea-container{width:100%;gap:.2rem!important;display:flex!important;flex-direction:column!important;font-family:Source Sans Pro,sans-serif}:host .cps-textarea-container .cps-textarea-wrap{position:relative;overflow:hidden}:host .cps-textarea-container .cps-textarea-wrap:hover textarea:enabled{border:1px solid var(--cps-color-calm)}:host .cps-textarea-container .cps-textarea-wrap-error textarea{border-color:var(--cps-color-error)!important}:host .cps-textarea-container .cps-textarea-wrap-error textarea:not(:focus){background:#fef3f2!important}:host .cps-textarea-container .cps-textarea-wrap textarea{display:block;font-family:Source Sans Pro,sans-serif;font-size:1rem;color:var(--cps-color-text-dark);background:#fff;padding:.375rem .75rem;line-height:1.5;min-height:38px;border:1px solid var(--cps-color-line-light);transition-property:border-color;transition-duration:.2s;appearance:none;border-radius:4px;width:100%}:host .cps-textarea-container .cps-textarea-wrap textarea:focus{border:1px solid var(--cps-color-calm);outline:0}:host .cps-textarea-container .cps-textarea-wrap textarea:disabled{color:var(--cps-color-text-light);background-color:#f7f7f7;opacity:1;pointer-events:none}:host .cps-textarea-container .cps-textarea-wrap textarea:focus+.clear-btn cps-icon{opacity:.5}:host .cps-textarea-container .cps-textarea-wrap:hover .clear-btn cps-icon{opacity:.5}:host .cps-textarea-container .cps-textarea-wrap .clear-btn{position:absolute;top:.75rem;right:.75rem;cursor:pointer;color:var(--cps-color-calm)}:host .cps-textarea-container .cps-textarea-wrap .clear-btn cps-icon{opacity:0;transition-duration:.2s}:host .cps-textarea-container .cps-textarea-wrap .clear-btn cps-icon:hover{opacity:1!important}:host .cps-textarea-container .persistent-clear .clear-btn cps-icon{opacity:.5}:host .cps-textarea-container .clearable>textarea{padding-right:2.2rem}:host .cps-textarea-container .cps-textarea-hint{color:var(--cps-color-text-mild);font-size:.75rem;min-height:1.125rem;line-height:1.125rem;cursor:default}:host .cps-textarea-container .cps-textarea-error{color:var(--cps-color-error);font-weight:700;font-size:.75rem;min-height:1.125rem;line-height:1.125rem;cursor:default}:host .cps-textarea-container .cps-textarea-label{color:var(--cps-color-text-dark);font-size:.875rem;align-items:center;display:inline-flex;font-weight:600}:host .cps-textarea-container .cps-textarea-label .cps-textarea-label-info-circle{margin-left:8px}:host .cps-textarea-container .cps-textarea-label-disabled{color:var(--cps-color-text-mild)}:host .cps-textarea-container ::placeholder{font-family:Source Sans Pro,sans-serif;color:var(--cps-color-text-lightest);font-style:italic;opacity:1}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: CpsIconComponent, selector: "cps-icon", inputs: ["icon", "size", "color"] }, { kind: "component", type: CpsInfoCircleComponent, selector: "cps-info-circle", inputs: ["size", "tooltipText", "tooltipPosition", "tooltipContentClass", "tooltipMaxWidth", "tooltipPersistent"] }] }); }
|
|
234
234
|
}
|
|
235
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
235
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CpsTextareaComponent, decorators: [{
|
|
236
236
|
type: Component,
|
|
237
237
|
args: [{ standalone: true, selector: 'cps-textarea', imports: [CommonModule, CpsIconComponent, CpsInfoCircleComponent], template: "<div class=\"cps-textarea-container\" [ngStyle]=\"{ width: cvtWidth }\">\n <div\n class=\"cps-textarea-label\"\n [ngClass]=\"{ 'cps-textarea-label-disabled': disabled }\"\n *ngIf=\"label\">\n <label>{{ label }}</label>\n <cps-info-circle\n *ngIf=\"infoTooltip\"\n class=\"cps-textarea-label-info-circle\"\n size=\"xsmall\"\n [tooltipPosition]=\"infoTooltipPosition\"\n [tooltipContentClass]=\"infoTooltipClass\"\n [tooltipMaxWidth]=\"infoTooltipMaxWidth\"\n [tooltipPersistent]=\"infoTooltipPersistent\"\n [tooltipText]=\"infoTooltip\">\n </cps-info-circle>\n </div>\n\n <div\n class=\"cps-textarea-wrap\"\n [ngClass]=\"{\n 'cps-textarea-wrap-error': error,\n clearable: clearable,\n 'persistent-clear': persistentClear\n }\">\n <textarea\n spellcheck=\"false\"\n [cols]=\"cols\"\n [rows]=\"rows\"\n [autofocus]=\"autofocus\"\n [disabled]=\"disabled\"\n [placeholder]=\"placeholder\"\n [value]=\"value\"\n [ngStyle]=\"{\n width: cvtWidth,\n resize: resizable\n }\"\n (blur)=\"onBlur()\"\n (focus)=\"onFocus()\"\n (input)=\"updateValueEvent($event)\"></textarea>\n\n <span\n *ngIf=\"clearable && !disabled\"\n [style.visibility]=\"\n persistentClear || (!persistentClear && value) ? 'visible' : 'hidden'\n \"\n class=\"clear-btn\">\n <cps-icon icon=\"delete\" size=\"small\" (click)=\"clear()\"></cps-icon>\n </span>\n </div>\n <div *ngIf=\"!error && !hideDetails\" class=\"cps-textarea-hint\">\n {{ hint }}\n </div>\n <div *ngIf=\"error && !hideDetails\" class=\"cps-textarea-error\">\n {{ error }}\n </div>\n</div>\n", styles: [":host{display:flex}:host .cps-textarea-container{width:100%;gap:.2rem!important;display:flex!important;flex-direction:column!important;font-family:Source Sans Pro,sans-serif}:host .cps-textarea-container .cps-textarea-wrap{position:relative;overflow:hidden}:host .cps-textarea-container .cps-textarea-wrap:hover textarea:enabled{border:1px solid var(--cps-color-calm)}:host .cps-textarea-container .cps-textarea-wrap-error textarea{border-color:var(--cps-color-error)!important}:host .cps-textarea-container .cps-textarea-wrap-error textarea:not(:focus){background:#fef3f2!important}:host .cps-textarea-container .cps-textarea-wrap textarea{display:block;font-family:Source Sans Pro,sans-serif;font-size:1rem;color:var(--cps-color-text-dark);background:#fff;padding:.375rem .75rem;line-height:1.5;min-height:38px;border:1px solid var(--cps-color-line-light);transition-property:border-color;transition-duration:.2s;appearance:none;border-radius:4px;width:100%}:host .cps-textarea-container .cps-textarea-wrap textarea:focus{border:1px solid var(--cps-color-calm);outline:0}:host .cps-textarea-container .cps-textarea-wrap textarea:disabled{color:var(--cps-color-text-light);background-color:#f7f7f7;opacity:1;pointer-events:none}:host .cps-textarea-container .cps-textarea-wrap textarea:focus+.clear-btn cps-icon{opacity:.5}:host .cps-textarea-container .cps-textarea-wrap:hover .clear-btn cps-icon{opacity:.5}:host .cps-textarea-container .cps-textarea-wrap .clear-btn{position:absolute;top:.75rem;right:.75rem;cursor:pointer;color:var(--cps-color-calm)}:host .cps-textarea-container .cps-textarea-wrap .clear-btn cps-icon{opacity:0;transition-duration:.2s}:host .cps-textarea-container .cps-textarea-wrap .clear-btn cps-icon:hover{opacity:1!important}:host .cps-textarea-container .persistent-clear .clear-btn cps-icon{opacity:.5}:host .cps-textarea-container .clearable>textarea{padding-right:2.2rem}:host .cps-textarea-container .cps-textarea-hint{color:var(--cps-color-text-mild);font-size:.75rem;min-height:1.125rem;line-height:1.125rem;cursor:default}:host .cps-textarea-container .cps-textarea-error{color:var(--cps-color-error);font-weight:700;font-size:.75rem;min-height:1.125rem;line-height:1.125rem;cursor:default}:host .cps-textarea-container .cps-textarea-label{color:var(--cps-color-text-dark);font-size:.875rem;align-items:center;display:inline-flex;font-weight:600}:host .cps-textarea-container .cps-textarea-label .cps-textarea-label-info-circle{margin-left:8px}:host .cps-textarea-container .cps-textarea-label-disabled{color:var(--cps-color-text-mild)}:host .cps-textarea-container ::placeholder{font-family:Source Sans Pro,sans-serif;color:var(--cps-color-text-lightest);font-style:italic;opacity:1}\n"] }]
|
|
238
238
|
}], ctorParameters: () => [{ type: i1.NgControl, decorators: [{
|
|
@@ -299,10 +299,10 @@ export class CpsTimepickerComponent {
|
|
|
299
299
|
_getRange(startFrom, until) {
|
|
300
300
|
return Array.from({ length: until + 1 - startFrom }, (_, k) => k + startFrom);
|
|
301
301
|
}
|
|
302
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.
|
|
303
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.
|
|
302
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CpsTimepickerComponent, deps: [{ token: i1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
303
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: CpsTimepickerComponent, isStandalone: true, selector: "cps-timepicker", inputs: { label: "label", disabled: "disabled", use24HourTime: "use24HourTime", withSeconds: "withSeconds", hint: "hint", hideDetails: "hideDetails", infoTooltip: "infoTooltip", infoTooltipClass: "infoTooltipClass", infoTooltipMaxWidth: "infoTooltipMaxWidth", infoTooltipPersistent: "infoTooltipPersistent", infoTooltipPosition: "infoTooltipPosition", mandatoryValue: "mandatoryValue", value: "value" }, outputs: { valueChanged: "valueChanged" }, viewQueries: [{ propertyName: "hoursField", first: true, predicate: ["hoursField"], descendants: true }, { propertyName: "minutesField", first: true, predicate: ["minutesField"], descendants: true }, { propertyName: "secondsField", first: true, predicate: ["secondsField"], descendants: true }], ngImport: i0, template: "<div class=\"cps-timepicker\">\n <div\n class=\"cps-timepicker-label\"\n [ngClass]=\"{ 'cps-timepicker-label-disabled': disabled }\"\n *ngIf=\"label\">\n <label>{{ label }}</label>\n <cps-info-circle\n *ngIf=\"infoTooltip\"\n class=\"cps-timepicker-label-info-circle\"\n size=\"xsmall\"\n [tooltipPosition]=\"infoTooltipPosition\"\n [tooltipContentClass]=\"infoTooltipClass\"\n [tooltipMaxWidth]=\"infoTooltipMaxWidth\"\n [tooltipPersistent]=\"infoTooltipPersistent\"\n [tooltipText]=\"infoTooltip\">\n </cps-info-circle>\n </div>\n <div class=\"cps-timepicker-body\">\n <cps-autocomplete\n #hoursField\n (keypress)=\"numberOnly($event)\"\n width=\"60\"\n [emptyOptionIndex]=\"mandatoryValue ? 0 : -1\"\n [options]=\"hoursOptions\"\n [withOptionsAliases]=\"!use24HourTime\"\n [useOptionsAliasesWhenNoMatch]=\"true\"\n [hideDetails]=\"true\"\n [disabled]=\"disabled\"\n [showChevron]=\"false\"\n [showEmptyMessage]=\"false\"\n (blurred)=\"onFieldBlur()\"\n [returnObject]=\"false\"\n [value]=\"value?.hours\"\n (valueChanged)=\"updateHours($event)\"\n [externalError]=\"hoursError\"\n placeholder=\"HH\"></cps-autocomplete>\n <span class=\"cps-timepicker-delimiter\">:</span>\n <cps-autocomplete\n #minutesField\n (keypress)=\"numberOnly($event)\"\n width=\"60\"\n [emptyOptionIndex]=\"mandatoryValue ? 0 : -1\"\n [options]=\"minutesOptions\"\n [hideDetails]=\"true\"\n [disabled]=\"disabled\"\n [showChevron]=\"false\"\n [showEmptyMessage]=\"false\"\n (blurred)=\"onFieldBlur()\"\n [returnObject]=\"false\"\n [value]=\"value?.minutes\"\n (valueChanged)=\"updateMinutes($event)\"\n [externalError]=\"minutesError\"\n placeholder=\"MM\"></cps-autocomplete>\n <span *ngIf=\"withSeconds\" class=\"cps-timepicker-delimiter\">:</span>\n <cps-autocomplete\n *ngIf=\"withSeconds\"\n #secondsField\n (keypress)=\"numberOnly($event)\"\n width=\"60\"\n [emptyOptionIndex]=\"mandatoryValue ? 0 : -1\"\n [options]=\"secondsOptions\"\n [hideDetails]=\"true\"\n [disabled]=\"disabled\"\n [showChevron]=\"false\"\n [showEmptyMessage]=\"false\"\n (blurred)=\"onFieldBlur()\"\n [returnObject]=\"false\"\n [value]=\"value?.seconds\"\n (valueChanged)=\"updateSeconds($event)\"\n [externalError]=\"secondsError\"\n placeholder=\"SS\"></cps-autocomplete>\n <cps-button-toggle\n *ngIf=\"!use24HourTime\"\n class=\"cps-timepicker-am-pm-selector\"\n [options]=\"dayPeriodOptions\"\n [disabled]=\"disabled\"\n [value]=\"value?.dayPeriod || 'AM'\"\n (valueChanged)=\"updateDayPeriod($event)\">\n </cps-button-toggle>\n </div>\n <div *ngIf=\"!error && !hideDetails\" class=\"cps-timepicker-hint\">\n {{ hint }}\n </div>\n <div *ngIf=\"error && !hideDetails\" class=\"cps-timepicker-error\">\n {{ error }}\n </div>\n</div>\n", styles: [":host .cps-timepicker{display:flex;flex-direction:column}:host .cps-timepicker .cps-timepicker-label{align-items:center;display:inline-flex;margin-bottom:.2rem;color:var(--cps-color-text-dark);font-size:.875rem;font-weight:600}:host .cps-timepicker .cps-timepicker-label-info-circle{margin-left:8px}:host .cps-timepicker .cps-timepicker-label-disabled{color:var(--cps-color-text-mild)}:host .cps-timepicker-body{display:flex;flex-direction:row}:host .cps-timepicker-body .cps-timepicker-am-pm-selector{margin-left:10px;margin-top:0}:host .cps-timepicker-body .cps-timepicker-delimiter{color:var(--cps-color-text-lightest);font-size:24px;margin:0 10px}:host .cps-timepicker .cps-timepicker-hint{color:var(--cps-color-text-mild);font-size:.75rem;min-height:1.125rem;line-height:1.125rem;cursor:default;margin-top:.2rem}:host .cps-timepicker .cps-timepicker-error{color:var(--cps-color-error);font-weight:700;font-size:.75rem;min-height:1.125rem;line-height:1.125rem;cursor:default;margin-top:.2rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: CpsButtonToggleComponent, selector: "cps-button-toggle", inputs: ["label", "options", "multiple", "disabled", "mandatory", "equalWidths", "optionTooltipPosition", "infoTooltip", "infoTooltipClass", "infoTooltipMaxWidth", "infoTooltipPersistent", "infoTooltipPosition", "value"], outputs: ["valueChanged"] }, { kind: "component", type: CpsAutocompleteComponent, selector: "cps-autocomplete", inputs: ["label", "placeholder", "hint", "returnObject", "multiple", "disabled", "width", "selectAll", "showChevron", "withOptionsAliases", "useOptionsAliasesWhenNoMatch", "optionAlias", "chips", "closableChips", "clearable", "openOnClear", "options", "keepInitialOrder", "optionLabel", "optionValue", "optionInfo", "hideDetails", "persistentClear", "prefixIcon", "prefixIconSize", "loading", "emptyMessage", "showEmptyMessage", "virtualScroll", "numToleratedItems", "externalError", "infoTooltip", "infoTooltipClass", "infoTooltipMaxWidth", "infoTooltipPersistent", "infoTooltipPosition", "appearance", "emptyOptionIndex", "value"], outputs: ["valueChanged", "blurred"] }, { kind: "component", type: CpsInfoCircleComponent, selector: "cps-info-circle", inputs: ["size", "tooltipText", "tooltipPosition", "tooltipContentClass", "tooltipMaxWidth", "tooltipPersistent"] }] }); }
|
|
304
304
|
}
|
|
305
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.
|
|
305
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: CpsTimepickerComponent, decorators: [{
|
|
306
306
|
type: Component,
|
|
307
307
|
args: [{ selector: 'cps-timepicker', standalone: true, imports: [
|
|
308
308
|
CommonModule,
|