ngx-st-tables 17.0.132 → 17.0.133
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/material-table/material-table-caption/material-table-caption.component.mjs +59 -57
- package/esm2022/lib/components/material-table/material-table-caption/material-table-filter-dialog/material-table-filter-dialog.component.mjs +44 -67
- package/esm2022/lib/components/material-table/material-table-caption/material-table-filter-dialog/material-table-filter.component.mjs +101 -119
- package/esm2022/lib/components/material-table/material-table-caption/material-table-order-column-dialog/material-table-order-column-dialog.component.mjs +24 -25
- package/esm2022/lib/components/material-table/material-table-row-cell/material-table-row-cell.component.mjs +45 -39
- package/esm2022/lib/components/material-table/material-table.component.mjs +223 -205
- package/fesm2022/ngx-st-tables.mjs +480 -495
- package/fesm2022/ngx-st-tables.mjs.map +1 -1
- package/lib/components/material-table/material-table-caption/material-table-caption.component.d.ts +7 -9
- package/lib/components/material-table/material-table-caption/material-table-filter-dialog/material-table-filter-dialog.component.d.ts +7 -14
- package/lib/components/material-table/material-table-caption/material-table-filter-dialog/material-table-filter.component.d.ts +8 -7
- package/lib/components/material-table/material-table-caption/material-table-order-column-dialog/material-table-order-column-dialog.component.d.ts +3 -8
- package/lib/components/material-table/material-table-row-cell/material-table-row-cell.component.d.ts +10 -11
- package/lib/components/material-table/material-table.component.d.ts +18 -13
- package/package.json +1 -1
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, input, output, } from '@angular/core';
|
|
2
|
-
import { StSubscribeDestroyComponent } from 'ngx-st-base-functions';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, input, effect, output, computed, } from '@angular/core';
|
|
3
2
|
import * as i0 from "@angular/core";
|
|
4
3
|
import * as i1 from "../../../../services/st-tables-translations.service";
|
|
5
4
|
import * as i2 from "@angular/forms";
|
|
@@ -8,19 +7,16 @@ import * as i4 from "@angular/material/input";
|
|
|
8
7
|
import * as i5 from "@angular/material/select";
|
|
9
8
|
import * as i6 from "@angular/material/core";
|
|
10
9
|
import * as i7 from "@angular/material/datepicker";
|
|
11
|
-
export class MaterialTableFilterComponent
|
|
12
|
-
constructor(stTableTranslations, fb) {
|
|
13
|
-
super();
|
|
10
|
+
export class MaterialTableFilterComponent {
|
|
11
|
+
constructor(stTableTranslations, fb, changeDetectorRef) {
|
|
14
12
|
this.stTableTranslations = stTableTranslations;
|
|
15
13
|
this.fb = fb;
|
|
16
|
-
this.
|
|
17
|
-
this.
|
|
18
|
-
|
|
19
|
-
this.setFilterValue(filterValue);
|
|
20
|
-
return filterValue || {};
|
|
21
|
-
},
|
|
22
|
-
});
|
|
14
|
+
this.changeDetectorRef = changeDetectorRef;
|
|
15
|
+
this.column = input.required();
|
|
16
|
+
this.filterValue = input({});
|
|
23
17
|
this.filterValueChanged = output();
|
|
18
|
+
// Cache translations as computed signal
|
|
19
|
+
this.translations = computed(() => this.stTableTranslations.getTranslations()());
|
|
24
20
|
this.formGroup = this.fb.group({
|
|
25
21
|
matchMode: {
|
|
26
22
|
value: 'contains',
|
|
@@ -31,16 +27,24 @@ export class MaterialTableFilterComponent extends StSubscribeDestroyComponent {
|
|
|
31
27
|
dateTo: null,
|
|
32
28
|
});
|
|
33
29
|
this.isUpdatingFromOutside = false;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
if (
|
|
38
|
-
this.
|
|
30
|
+
// React to filterValue changes
|
|
31
|
+
effect(() => {
|
|
32
|
+
const filter = this.filterValue();
|
|
33
|
+
if (filter && Object.keys(filter).length > 0) {
|
|
34
|
+
this.isUpdatingFromOutside = true;
|
|
35
|
+
this.setFilterValue(filter);
|
|
36
|
+
this.isUpdatingFromOutside = false;
|
|
39
37
|
}
|
|
40
38
|
});
|
|
41
|
-
//
|
|
42
|
-
|
|
43
|
-
|
|
39
|
+
// React to form value changes
|
|
40
|
+
effect(() => {
|
|
41
|
+
// Track form changes
|
|
42
|
+
this.formGroup.valueChanges.subscribe(() => {
|
|
43
|
+
if (!this.isUpdatingFromOutside) {
|
|
44
|
+
this.updateAfterFormValueChanged();
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
});
|
|
44
48
|
}
|
|
45
49
|
setFilterValue(newFilterValue) {
|
|
46
50
|
if (newFilterValue) {
|
|
@@ -59,40 +63,42 @@ export class MaterialTableFilterComponent extends StSubscribeDestroyComponent {
|
|
|
59
63
|
else {
|
|
60
64
|
this.formGroup.controls.value.setValue(newFilterValue.value || '', { emitEvent: false });
|
|
61
65
|
}
|
|
66
|
+
this.changeDetectorRef.markForCheck();
|
|
62
67
|
}
|
|
63
68
|
}
|
|
64
69
|
updateAfterFormValueChanged() {
|
|
65
70
|
let tmpValue = this.formGroup.controls.value.value || '';
|
|
66
71
|
if (this.column().filterType === 'date') {
|
|
67
72
|
tmpValue = [
|
|
68
|
-
this.formGroup.controls.dateFrom.value
|
|
69
|
-
|
|
70
|
-
: null,
|
|
71
|
-
this.formGroup.controls.dateTo.value
|
|
72
|
-
? `${this.formGroup.controls.dateTo.value.getFullYear()}-${(this.formGroup.controls.dateTo.value.getMonth() + 1).toString().padStart(2, '0')}-${this.formGroup.controls.dateTo.value.getDate().toString().padStart(2, '0')}`
|
|
73
|
-
: null,
|
|
73
|
+
this.formatDateToString(this.formGroup.controls.dateFrom.value),
|
|
74
|
+
this.formatDateToString(this.formGroup.controls.dateTo.value),
|
|
74
75
|
];
|
|
75
76
|
}
|
|
76
77
|
if (this.column().filterType === 'boolean' ||
|
|
77
78
|
this.column().filterType === 'number') {
|
|
78
79
|
tmpValue = this.formGroup.controls.value.value || null;
|
|
79
80
|
}
|
|
80
|
-
// this.formGroup.controls.value.setValue(tmpValue);
|
|
81
81
|
const newFilter = {
|
|
82
82
|
matchMode: this.formGroup.controls.matchMode.value,
|
|
83
83
|
value: tmpValue,
|
|
84
84
|
};
|
|
85
85
|
this.filterValueChanged.emit(newFilter);
|
|
86
86
|
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
87
|
+
formatDateToString(date) {
|
|
88
|
+
if (!date)
|
|
89
|
+
return null;
|
|
90
|
+
const year = date.getFullYear();
|
|
91
|
+
const month = (date.getMonth() + 1).toString().padStart(2, '0');
|
|
92
|
+
const day = date.getDate().toString().padStart(2, '0');
|
|
93
|
+
return `${year}-${month}-${day}`;
|
|
94
|
+
}
|
|
95
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MaterialTableFilterComponent, deps: [{ token: i1.StTablesTranslationsService }, { token: i2.NonNullableFormBuilder }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
96
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: MaterialTableFilterComponent, selector: "ngx-st-material-table-filter", inputs: { column: { classPropertyName: "column", publicName: "column", isSignal: true, isRequired: true, transformFunction: null }, filterValue: { classPropertyName: "filterValue", publicName: "filterValue", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { filterValueChanged: "filterValueChanged" }, ngImport: i0, template: `
|
|
97
|
+
<form class="row" [formGroup]="formGroup">
|
|
90
98
|
<div class="col-auto">
|
|
91
|
-
<mat-form-field appearance="outline"
|
|
92
|
-
<mat-label>
|
|
93
|
-
|
|
94
|
-
>
|
|
95
|
-
<input matInput type="text" [formControlName]="'matchMode'" />
|
|
99
|
+
<mat-form-field appearance="outline" class="match-mode-field">
|
|
100
|
+
<mat-label>{{ translations().matchMode }}</mat-label>
|
|
101
|
+
<input matInput type="text" formControlName="matchMode" />
|
|
96
102
|
</mat-form-field>
|
|
97
103
|
</div>
|
|
98
104
|
|
|
@@ -100,14 +106,12 @@ export class MaterialTableFilterComponent extends StSubscribeDestroyComponent {
|
|
|
100
106
|
column().filterType === 'string' || column().filterType === 'number'
|
|
101
107
|
) {
|
|
102
108
|
<div class="col">
|
|
103
|
-
<mat-form-field appearance="outline"
|
|
104
|
-
<mat-label>{{
|
|
105
|
-
stTableTranslations.getTranslations()().searchFilter
|
|
106
|
-
}}</mat-label>
|
|
109
|
+
<mat-form-field appearance="outline" class="full-width">
|
|
110
|
+
<mat-label>{{ translations().searchFilter }}</mat-label>
|
|
107
111
|
<input
|
|
108
112
|
matInput
|
|
109
113
|
[type]="column().filterType === 'string' ? 'text' : 'number'"
|
|
110
|
-
|
|
114
|
+
formControlName="value"
|
|
111
115
|
/>
|
|
112
116
|
</mat-form-field>
|
|
113
117
|
</div>
|
|
@@ -115,14 +119,12 @@ export class MaterialTableFilterComponent extends StSubscribeDestroyComponent {
|
|
|
115
119
|
|
|
116
120
|
@if (column().filterType === 'date') {
|
|
117
121
|
<div class="col">
|
|
118
|
-
<mat-form-field appearance="outline"
|
|
119
|
-
<mat-label>{{
|
|
120
|
-
stTableTranslations.getTranslations()().dateFrom
|
|
121
|
-
}}</mat-label>
|
|
122
|
+
<mat-form-field appearance="outline" class="date-field">
|
|
123
|
+
<mat-label>{{ translations().dateFrom }}</mat-label>
|
|
122
124
|
<input
|
|
123
125
|
matInput
|
|
124
126
|
[matDatepicker]="picker1"
|
|
125
|
-
|
|
127
|
+
formControlName="dateFrom"
|
|
126
128
|
/>
|
|
127
129
|
<mat-datepicker-toggle
|
|
128
130
|
matIconSuffix
|
|
@@ -132,14 +134,12 @@ export class MaterialTableFilterComponent extends StSubscribeDestroyComponent {
|
|
|
132
134
|
</mat-form-field>
|
|
133
135
|
</div>
|
|
134
136
|
<div class="col">
|
|
135
|
-
<mat-form-field appearance="outline"
|
|
136
|
-
<mat-label>{{
|
|
137
|
-
stTableTranslations.getTranslations()().dateTo
|
|
138
|
-
}}</mat-label>
|
|
137
|
+
<mat-form-field appearance="outline" class="date-field">
|
|
138
|
+
<mat-label>{{ translations().dateTo }}</mat-label>
|
|
139
139
|
<input
|
|
140
140
|
matInput
|
|
141
141
|
[matDatepicker]="picker2"
|
|
142
|
-
|
|
142
|
+
formControlName="dateTo"
|
|
143
143
|
/>
|
|
144
144
|
<mat-datepicker-toggle
|
|
145
145
|
matIconSuffix
|
|
@@ -152,19 +152,15 @@ export class MaterialTableFilterComponent extends StSubscribeDestroyComponent {
|
|
|
152
152
|
|
|
153
153
|
@if (column().filterType === 'boolean') {
|
|
154
154
|
<div class="col">
|
|
155
|
-
<mat-form-field appearance="outline"
|
|
156
|
-
<mat-label>{{
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
<mat-select [formControlName]="'value'">
|
|
160
|
-
<mat-option value="">{{
|
|
161
|
-
stTableTranslations.getTranslations()().booleanNone
|
|
162
|
-
}}</mat-option>
|
|
155
|
+
<mat-form-field appearance="outline" class="full-width">
|
|
156
|
+
<mat-label>{{ translations().booleanPickValue }}</mat-label>
|
|
157
|
+
<mat-select formControlName="value">
|
|
158
|
+
<mat-option value="">{{ translations().booleanNone }}</mat-option>
|
|
163
159
|
<mat-option [value]="true">{{
|
|
164
|
-
|
|
160
|
+
translations().booleanYes
|
|
165
161
|
}}</mat-option>
|
|
166
162
|
<mat-option [value]="false">{{
|
|
167
|
-
|
|
163
|
+
translations().booleanNo
|
|
168
164
|
}}</mat-option>
|
|
169
165
|
</mat-select>
|
|
170
166
|
</mat-form-field>
|
|
@@ -173,36 +169,33 @@ export class MaterialTableFilterComponent extends StSubscribeDestroyComponent {
|
|
|
173
169
|
|
|
174
170
|
@if (column().filterType === 'custom') {
|
|
175
171
|
<div class="col">
|
|
176
|
-
<mat-form-field appearance="outline"
|
|
177
|
-
<mat-label>{{
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
</mat-option>
|
|
172
|
+
<mat-form-field appearance="outline" class="full-width">
|
|
173
|
+
<mat-label>{{ translations().customPickValue }}</mat-label>
|
|
174
|
+
<mat-select formControlName="value">
|
|
175
|
+
<mat-option value="">{{ translations().customNone }}</mat-option>
|
|
176
|
+
@for (
|
|
177
|
+
option of column().customFilterOptions;
|
|
178
|
+
track option.value
|
|
179
|
+
) {
|
|
180
|
+
<mat-option [value]="option.value">{{
|
|
181
|
+
option.label
|
|
182
|
+
}}</mat-option>
|
|
188
183
|
}
|
|
189
184
|
</mat-select>
|
|
190
185
|
</mat-form-field>
|
|
191
186
|
</div>
|
|
192
187
|
}
|
|
193
188
|
</form>
|
|
194
|
-
`, isInline: true, styles: [":host{width:100%}form.row{gap:8px}form.row>:is(.col-auto,.col){padding:0}\n"], dependencies: [{ kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i7.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i7.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i7.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
189
|
+
`, isInline: true, styles: [":host{width:100%}form.row{gap:8px;width:100%}form.row>:is(.col-auto,.col){padding:0}.match-mode-field{width:120px}.date-field{width:170px}.full-width{width:100%}\n"], dependencies: [{ kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i7.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i7.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i7.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
195
190
|
}
|
|
196
191
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MaterialTableFilterComponent, decorators: [{
|
|
197
192
|
type: Component,
|
|
198
193
|
args: [{ selector: 'ngx-st-material-table-filter', template: `
|
|
199
|
-
<form class="row" [formGroup]="formGroup"
|
|
194
|
+
<form class="row" [formGroup]="formGroup">
|
|
200
195
|
<div class="col-auto">
|
|
201
|
-
<mat-form-field appearance="outline"
|
|
202
|
-
<mat-label>
|
|
203
|
-
|
|
204
|
-
>
|
|
205
|
-
<input matInput type="text" [formControlName]="'matchMode'" />
|
|
196
|
+
<mat-form-field appearance="outline" class="match-mode-field">
|
|
197
|
+
<mat-label>{{ translations().matchMode }}</mat-label>
|
|
198
|
+
<input matInput type="text" formControlName="matchMode" />
|
|
206
199
|
</mat-form-field>
|
|
207
200
|
</div>
|
|
208
201
|
|
|
@@ -210,14 +203,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
210
203
|
column().filterType === 'string' || column().filterType === 'number'
|
|
211
204
|
) {
|
|
212
205
|
<div class="col">
|
|
213
|
-
<mat-form-field appearance="outline"
|
|
214
|
-
<mat-label>{{
|
|
215
|
-
stTableTranslations.getTranslations()().searchFilter
|
|
216
|
-
}}</mat-label>
|
|
206
|
+
<mat-form-field appearance="outline" class="full-width">
|
|
207
|
+
<mat-label>{{ translations().searchFilter }}</mat-label>
|
|
217
208
|
<input
|
|
218
209
|
matInput
|
|
219
210
|
[type]="column().filterType === 'string' ? 'text' : 'number'"
|
|
220
|
-
|
|
211
|
+
formControlName="value"
|
|
221
212
|
/>
|
|
222
213
|
</mat-form-field>
|
|
223
214
|
</div>
|
|
@@ -225,14 +216,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
225
216
|
|
|
226
217
|
@if (column().filterType === 'date') {
|
|
227
218
|
<div class="col">
|
|
228
|
-
<mat-form-field appearance="outline"
|
|
229
|
-
<mat-label>{{
|
|
230
|
-
stTableTranslations.getTranslations()().dateFrom
|
|
231
|
-
}}</mat-label>
|
|
219
|
+
<mat-form-field appearance="outline" class="date-field">
|
|
220
|
+
<mat-label>{{ translations().dateFrom }}</mat-label>
|
|
232
221
|
<input
|
|
233
222
|
matInput
|
|
234
223
|
[matDatepicker]="picker1"
|
|
235
|
-
|
|
224
|
+
formControlName="dateFrom"
|
|
236
225
|
/>
|
|
237
226
|
<mat-datepicker-toggle
|
|
238
227
|
matIconSuffix
|
|
@@ -242,14 +231,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
242
231
|
</mat-form-field>
|
|
243
232
|
</div>
|
|
244
233
|
<div class="col">
|
|
245
|
-
<mat-form-field appearance="outline"
|
|
246
|
-
<mat-label>{{
|
|
247
|
-
stTableTranslations.getTranslations()().dateTo
|
|
248
|
-
}}</mat-label>
|
|
234
|
+
<mat-form-field appearance="outline" class="date-field">
|
|
235
|
+
<mat-label>{{ translations().dateTo }}</mat-label>
|
|
249
236
|
<input
|
|
250
237
|
matInput
|
|
251
238
|
[matDatepicker]="picker2"
|
|
252
|
-
|
|
239
|
+
formControlName="dateTo"
|
|
253
240
|
/>
|
|
254
241
|
<mat-datepicker-toggle
|
|
255
242
|
matIconSuffix
|
|
@@ -262,19 +249,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
262
249
|
|
|
263
250
|
@if (column().filterType === 'boolean') {
|
|
264
251
|
<div class="col">
|
|
265
|
-
<mat-form-field appearance="outline"
|
|
266
|
-
<mat-label>{{
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
<mat-select [formControlName]="'value'">
|
|
270
|
-
<mat-option value="">{{
|
|
271
|
-
stTableTranslations.getTranslations()().booleanNone
|
|
272
|
-
}}</mat-option>
|
|
252
|
+
<mat-form-field appearance="outline" class="full-width">
|
|
253
|
+
<mat-label>{{ translations().booleanPickValue }}</mat-label>
|
|
254
|
+
<mat-select formControlName="value">
|
|
255
|
+
<mat-option value="">{{ translations().booleanNone }}</mat-option>
|
|
273
256
|
<mat-option [value]="true">{{
|
|
274
|
-
|
|
257
|
+
translations().booleanYes
|
|
275
258
|
}}</mat-option>
|
|
276
259
|
<mat-option [value]="false">{{
|
|
277
|
-
|
|
260
|
+
translations().booleanNo
|
|
278
261
|
}}</mat-option>
|
|
279
262
|
</mat-select>
|
|
280
263
|
</mat-form-field>
|
|
@@ -283,24 +266,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
283
266
|
|
|
284
267
|
@if (column().filterType === 'custom') {
|
|
285
268
|
<div class="col">
|
|
286
|
-
<mat-form-field appearance="outline"
|
|
287
|
-
<mat-label>{{
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
</mat-option>
|
|
269
|
+
<mat-form-field appearance="outline" class="full-width">
|
|
270
|
+
<mat-label>{{ translations().customPickValue }}</mat-label>
|
|
271
|
+
<mat-select formControlName="value">
|
|
272
|
+
<mat-option value="">{{ translations().customNone }}</mat-option>
|
|
273
|
+
@for (
|
|
274
|
+
option of column().customFilterOptions;
|
|
275
|
+
track option.value
|
|
276
|
+
) {
|
|
277
|
+
<mat-option [value]="option.value">{{
|
|
278
|
+
option.label
|
|
279
|
+
}}</mat-option>
|
|
298
280
|
}
|
|
299
281
|
</mat-select>
|
|
300
282
|
</mat-form-field>
|
|
301
283
|
</div>
|
|
302
284
|
}
|
|
303
285
|
</form>
|
|
304
|
-
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{width:100%}form.row{gap:8px}form.row>:is(.col-auto,.col){padding:0}\n"] }]
|
|
305
|
-
}], ctorParameters: () => [{ type: i1.StTablesTranslationsService }, { type: i2.NonNullableFormBuilder }] });
|
|
306
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtdGFibGUtZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zdC10YWJsZXMvc3JjL2xpYi9jb21wb25lbnRzL21hdGVyaWFsLXRhYmxlL21hdGVyaWFsLXRhYmxlLWNhcHRpb24vbWF0ZXJpYWwtdGFibGUtZmlsdGVyLWRpYWxvZy9tYXRlcmlhbC10YWJsZS1maWx0ZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFJTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7OztBQXFJcEUsTUFBTSxPQUFPLDRCQUNYLFNBQVEsMkJBQTJCO0lBdUJuQyxZQUNTLG1CQUFnRCxFQUMvQyxFQUEwQjtRQUVsQyxLQUFLLEVBQUUsQ0FBQztRQUhELHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBNkI7UUFDL0MsT0FBRSxHQUFGLEVBQUUsQ0FBd0I7UUF0QnBDLFdBQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFpQyxFQUFFLENBQUMsQ0FBQztRQUM1RCxnQkFBVyxHQUFHLEtBQUssQ0FBQyxFQUEyQixFQUFFO1lBQy9DLFNBQVMsRUFBRSxDQUFDLFdBQWtDLEVBQUUsRUFBRTtnQkFDaEQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDakMsT0FBTyxXQUFXLElBQUksRUFBRSxDQUFDO1lBQzNCLENBQUM7U0FDRixDQUFDLENBQUM7UUFFSCx1QkFBa0IsR0FBRyxNQUFNLEVBQXlCLENBQUM7UUFFckQsY0FBUyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDO1lBQ3hCLFNBQVMsRUFBRTtnQkFDVCxLQUFLLEVBQXNDLFVBQVU7Z0JBQ3JELFFBQVEsRUFBRSxJQUFJO2FBQ2Y7WUFDRCxLQUFLLEVBQTBCLEVBQUU7WUFDakMsUUFBUSxFQUFlLElBQUk7WUFDM0IsTUFBTSxFQUFlLElBQUk7U0FDMUIsQ0FBQyxDQUFDO1FBb0JLLDBCQUFxQixHQUFHLEtBQUssQ0FBQztJQWJ0QyxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDekMsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO2dCQUNoQyxJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztZQUNyQyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxnREFBZ0Q7UUFDaEQsMENBQTBDO1FBQzFDLE1BQU07SUFDUixDQUFDO0lBSU8sY0FBYyxDQUFDLGNBQXFDO1FBQzFELElBQUksY0FBYyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFO2dCQUNuRSxTQUFTLEVBQUUsS0FBSzthQUNqQixDQUFDLENBQUM7WUFFSCxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxVQUFVLEtBQUssTUFBTSxFQUFFLENBQUM7Z0JBQ3hDLE1BQU0sUUFBUSxHQUFHLGNBQWMsQ0FBQyxLQUF1QyxDQUFDO2dCQUN4RSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUN2QyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQzNDLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUNyQixDQUFDO2dCQUNGLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQ3JDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFDMUMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQ3JCLENBQUM7WUFDSixDQUFDO2lCQUFNLElBQ0wsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFVBQVUsS0FBSyxTQUFTO2dCQUN0QyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsVUFBVSxLQUFLLFFBQVEsRUFDckMsQ0FBQztnQkFDRCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUNuQyxjQUFjLENBQUMsS0FBZ0MsSUFBSSxJQUFJLEVBQ3hELEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUNyQixDQUFDO1lBQ0osQ0FBQztpQkFBTSxDQUFDO2dCQUNOLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQ25DLGNBQWMsQ0FBQyxLQUFnQyxJQUFJLEVBQUUsRUFDdEQsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQ3JCLENBQUM7WUFDSixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFTywyQkFBMkI7UUFDakMsSUFBSSxRQUFRLEdBQ1YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7UUFFNUMsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsVUFBVSxLQUFLLE1BQU0sRUFBRSxDQUFDO1lBQ3hDLFFBQVEsR0FBRztnQkFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSztvQkFDcEMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUU7b0JBQ2xPLENBQUMsQ0FBQyxJQUFJO2dCQUNSLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLO29CQUNsQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRTtvQkFDNU4sQ0FBQyxDQUFDLElBQUk7YUFDeUIsQ0FBQztRQUN0QyxDQUFDO1FBRUQsSUFDRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsVUFBVSxLQUFLLFNBQVM7WUFDdEMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFVBQVUsS0FBSyxRQUFRLEVBQ3JDLENBQUM7WUFDRCxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUM7UUFDekQsQ0FBQztRQUVELG9EQUFvRDtRQUVwRCxNQUFNLFNBQVMsR0FBMEI7WUFDdkMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLO1lBQ2xELEtBQUssRUFBRSxRQUFRO1NBQ2hCLENBQUM7UUFFRixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzFDLENBQUM7K0dBM0dVLDRCQUE0QjttR0FBNUIsNEJBQTRCLGthQTVIN0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwR1Q7OzRGQWtCVSw0QkFBNEI7a0JBOUh4QyxTQUFTOytCQUNFLDhCQUE4QixZQUM5Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTBHVCxtQkFnQmdCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBpbnB1dCxcclxuICBtb2RlbCxcclxuICBPbkluaXQsXHJcbiAgZWZmZWN0LFxyXG4gIG91dHB1dCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3RUYWJsZXNUcmFuc2xhdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvc3QtdGFibGVzLXRyYW5zbGF0aW9ucy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVmlld1N0TWF0ZXJpYWxUYWJsZUNvbHVtbk1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL3ZpZXcvdmlldy1zdC1tYXRlcmlhbC10YWJsZS1jb2x1bW4ubW9kZWwnO1xyXG5pbXBvcnQgeyBOb25OdWxsYWJsZUZvcm1CdWlsZGVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBTdFN1YnNjcmliZURlc3Ryb3lDb21wb25lbnQgfSBmcm9tICduZ3gtc3QtYmFzZS1mdW5jdGlvbnMnO1xyXG5pbXBvcnQge1xyXG4gIFN0TWF0ZXJpYWxUYWJsZUZpbHRlcixcclxuICBTdE1hdGVyaWFsVGFibGVGaWx0ZXJNYXRjaE1vZGVUeXBlLFxyXG4gIFN0TWF0ZXJpYWxUYWJsZUZpbHRlclZhbHVlVHlwZSxcclxufSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvbW9kZWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbmd4LXN0LW1hdGVyaWFsLXRhYmxlLWZpbHRlcicsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxmb3JtIGNsYXNzPVwicm93XCIgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIiBzdHlsZT1cIndpZHRoOiAxMDAlO1wiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sLWF1dG9cIj5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBzdHlsZT1cIndpZHRoOiAxMjBweFwiPlxyXG4gICAgICAgICAgPG1hdC1sYWJlbD5cclxuICAgICAgICAgICAge3sgc3RUYWJsZVRyYW5zbGF0aW9ucy5nZXRUcmFuc2xhdGlvbnMoKSgpLm1hdGNoTW9kZSB9fTwvbWF0LWxhYmVsXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgdHlwZT1cInRleHRcIiBbZm9ybUNvbnRyb2xOYW1lXT1cIidtYXRjaE1vZGUnXCIgLz5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIEBpZiAoXHJcbiAgICAgICAgY29sdW1uKCkuZmlsdGVyVHlwZSA9PT0gJ3N0cmluZycgfHwgY29sdW1uKCkuZmlsdGVyVHlwZSA9PT0gJ251bWJlcidcclxuICAgICAgKSB7XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbFwiPlxyXG4gICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgc3R5bGU9XCJ3aWR0aDogMTAwJVwiPlxyXG4gICAgICAgICAgICA8bWF0LWxhYmVsPnt7XHJcbiAgICAgICAgICAgICAgc3RUYWJsZVRyYW5zbGF0aW9ucy5nZXRUcmFuc2xhdGlvbnMoKSgpLnNlYXJjaEZpbHRlclxyXG4gICAgICAgICAgICB9fTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgICBtYXRJbnB1dFxyXG4gICAgICAgICAgICAgIFt0eXBlXT1cImNvbHVtbigpLmZpbHRlclR5cGUgPT09ICdzdHJpbmcnID8gJ3RleHQnIDogJ251bWJlcidcIlxyXG4gICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiJ3ZhbHVlJ1wiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICB9XHJcblxyXG4gICAgICBAaWYgKGNvbHVtbigpLmZpbHRlclR5cGUgPT09ICdkYXRlJykge1xyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2xcIj5cclxuICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIHN0eWxlPVwid2lkdGg6IDE3MHB4XCI+XHJcbiAgICAgICAgICAgIDxtYXQtbGFiZWw+e3tcclxuICAgICAgICAgICAgICBzdFRhYmxlVHJhbnNsYXRpb25zLmdldFRyYW5zbGF0aW9ucygpKCkuZGF0ZUZyb21cclxuICAgICAgICAgICAgfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgICAgICBbbWF0RGF0ZXBpY2tlcl09XCJwaWNrZXIxXCJcclxuICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cIidkYXRlRnJvbSdcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlXHJcbiAgICAgICAgICAgICAgbWF0SWNvblN1ZmZpeFxyXG4gICAgICAgICAgICAgIFtmb3JdPVwicGlja2VyMVwiXHJcbiAgICAgICAgICAgID48L21hdC1kYXRlcGlja2VyLXRvZ2dsZT5cclxuICAgICAgICAgICAgPG1hdC1kYXRlcGlja2VyICNwaWNrZXIxPjwvbWF0LWRhdGVwaWNrZXI+XHJcbiAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2xcIj5cclxuICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIHN0eWxlPVwid2lkdGg6IDE3MHB4XCI+XHJcbiAgICAgICAgICAgIDxtYXQtbGFiZWw+e3tcclxuICAgICAgICAgICAgICBzdFRhYmxlVHJhbnNsYXRpb25zLmdldFRyYW5zbGF0aW9ucygpKCkuZGF0ZVRvXHJcbiAgICAgICAgICAgIH19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgICAgW21hdERhdGVwaWNrZXJdPVwicGlja2VyMlwiXHJcbiAgICAgICAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCInZGF0ZVRvJ1wiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgIDxtYXQtZGF0ZXBpY2tlci10b2dnbGVcclxuICAgICAgICAgICAgICBtYXRJY29uU3VmZml4XHJcbiAgICAgICAgICAgICAgW2Zvcl09XCJwaWNrZXIyXCJcclxuICAgICAgICAgICAgPjwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxyXG4gICAgICAgICAgICA8bWF0LWRhdGVwaWNrZXIgI3BpY2tlcjI+PC9tYXQtZGF0ZXBpY2tlcj5cclxuICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpZiAoY29sdW1uKCkuZmlsdGVyVHlwZSA9PT0gJ2Jvb2xlYW4nKSB7XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbFwiPlxyXG4gICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgc3R5bGU9XCJ3aWR0aDogMTAwJVwiPlxyXG4gICAgICAgICAgICA8bWF0LWxhYmVsPnt7XHJcbiAgICAgICAgICAgICAgc3RUYWJsZVRyYW5zbGF0aW9ucy5nZXRUcmFuc2xhdGlvbnMoKSgpLmJvb2xlYW5QaWNrVmFsdWVcclxuICAgICAgICAgICAgfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgPG1hdC1zZWxlY3QgW2Zvcm1Db250cm9sTmFtZV09XCIndmFsdWUnXCI+XHJcbiAgICAgICAgICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJcIj57e1xyXG4gICAgICAgICAgICAgICAgc3RUYWJsZVRyYW5zbGF0aW9ucy5nZXRUcmFuc2xhdGlvbnMoKSgpLmJvb2xlYW5Ob25lXHJcbiAgICAgICAgICAgICAgfX08L21hdC1vcHRpb24+XHJcbiAgICAgICAgICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cInRydWVcIj57e1xyXG4gICAgICAgICAgICAgICAgc3RUYWJsZVRyYW5zbGF0aW9ucy5nZXRUcmFuc2xhdGlvbnMoKSgpLmJvb2xlYW5ZZXNcclxuICAgICAgICAgICAgICB9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgICAgICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwiZmFsc2VcIj57e1xyXG4gICAgICAgICAgICAgICAgc3RUYWJsZVRyYW5zbGF0aW9ucy5nZXRUcmFuc2xhdGlvbnMoKSgpLmJvb2xlYW5Ob1xyXG4gICAgICAgICAgICAgIH19PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICB9XHJcblxyXG4gICAgICBAaWYgKGNvbHVtbigpLmZpbHRlclR5cGUgPT09ICdjdXN0b20nKSB7XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbFwiPlxyXG4gICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgc3R5bGU9XCJ3aWR0aDogMTAwJVwiPlxyXG4gICAgICAgICAgICA8bWF0LWxhYmVsPnt7XHJcbiAgICAgICAgICAgICAgc3RUYWJsZVRyYW5zbGF0aW9ucy5nZXRUcmFuc2xhdGlvbnMoKSgpLmN1c3RvbVBpY2tWYWx1ZVxyXG4gICAgICAgICAgICB9fTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgICA8bWF0LXNlbGVjdCBbZm9ybUNvbnRyb2xOYW1lXT1cIid2YWx1ZSdcIj5cclxuICAgICAgICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIlwiPnt7XHJcbiAgICAgICAgICAgICAgICBzdFRhYmxlVHJhbnNsYXRpb25zLmdldFRyYW5zbGF0aW9ucygpKCkuY3VzdG9tTm9uZVxyXG4gICAgICAgICAgICAgIH19PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICAgIEBmb3IgKG9wdGlvbiBvZiBjb2x1bW4oKS5jdXN0b21GaWx0ZXJPcHRpb25zOyB0cmFjayBvcHRpb24pIHtcclxuICAgICAgICAgICAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJvcHRpb24udmFsdWVcIj5cclxuICAgICAgICAgICAgICAgICAge3sgb3B0aW9uLmxhYmVsIH19XHJcbiAgICAgICAgICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICB9XHJcbiAgICA8L2Zvcm0+XHJcbiAgYCxcclxuICBzdHlsZXM6IFtcclxuICAgIGBcclxuICAgICAgOmhvc3Qge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICAgIGZvcm0ucm93IHtcclxuICAgICAgICBnYXA6IDhweDtcclxuXHJcbiAgICAgICAgJiA+IC5jb2wtYXV0byxcclxuICAgICAgICAmID4gLmNvbCB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgYCxcclxuICBdLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0ZXJpYWxUYWJsZUZpbHRlckNvbXBvbmVudFxyXG4gIGV4dGVuZHMgU3RTdWJzY3JpYmVEZXN0cm95Q29tcG9uZW50XHJcbiAgaW1wbGVtZW50cyBPbkluaXRcclxue1xyXG4gIGNvbHVtbiA9IGlucHV0LnJlcXVpcmVkPFZpZXdTdE1hdGVyaWFsVGFibGVDb2x1bW5Nb2RlbD4oe30pO1xyXG4gIGZpbHRlclZhbHVlID0gaW5wdXQoe30gYXMgU3RNYXRlcmlhbFRhYmxlRmlsdGVyLCB7XHJcbiAgICB0cmFuc2Zvcm06IChmaWx0ZXJWYWx1ZTogU3RNYXRlcmlhbFRhYmxlRmlsdGVyKSA9PiB7XHJcbiAgICAgIHRoaXMuc2V0RmlsdGVyVmFsdWUoZmlsdGVyVmFsdWUpO1xyXG4gICAgICByZXR1cm4gZmlsdGVyVmFsdWUgfHwge307XHJcbiAgICB9LFxyXG4gIH0pO1xyXG5cclxuICBmaWx0ZXJWYWx1ZUNoYW5nZWQgPSBvdXRwdXQ8U3RNYXRlcmlhbFRhYmxlRmlsdGVyPigpO1xyXG5cclxuICBmb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgIG1hdGNoTW9kZToge1xyXG4gICAgICB2YWx1ZTogPFN0TWF0ZXJpYWxUYWJsZUZpbHRlck1hdGNoTW9kZVR5cGU+J2NvbnRhaW5zJyxcclxuICAgICAgZGlzYWJsZWQ6IHRydWUsXHJcbiAgICB9LFxyXG4gICAgdmFsdWU6IDxudWxsIHwgc3RyaW5nIHwgbnVtYmVyPicnLFxyXG4gICAgZGF0ZUZyb206IDxudWxsIHwgRGF0ZT5udWxsLFxyXG4gICAgZGF0ZVRvOiA8bnVsbCB8IERhdGU+bnVsbCxcclxuICB9KTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgc3RUYWJsZVRyYW5zbGF0aW9uczogU3RUYWJsZXNUcmFuc2xhdGlvbnNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBmYjogTm9uTnVsbGFibGVGb3JtQnVpbGRlclxyXG4gICkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5mb3JtR3JvdXAudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIGlmICghdGhpcy5pc1VwZGF0aW5nRnJvbU91dHNpZGUpIHtcclxuICAgICAgICB0aGlzLnVwZGF0ZUFmdGVyRm9ybVZhbHVlQ2hhbmdlZCgpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIC8vIHRoaXMuZmlsdGVyc1ZhbHVlLnN1YnNjcmliZShmaWx0ZXJzVmFsdWUgPT4ge1xyXG4gICAgLy8gICBjb25zb2xlLmxvZygnRmlsdGVycyB1cGRhdGVkIGNoaWxkJyk7XHJcbiAgICAvLyB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNVcGRhdGluZ0Zyb21PdXRzaWRlID0gZmFsc2U7XHJcblxyXG4gIHByaXZhdGUgc2V0RmlsdGVyVmFsdWUobmV3RmlsdGVyVmFsdWU6IFN0TWF0ZXJpYWxUYWJsZUZpbHRlcikge1xyXG4gICAgaWYgKG5ld0ZpbHRlclZhbHVlKSB7XHJcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLm1hdGNoTW9kZS5zZXRWYWx1ZShuZXdGaWx0ZXJWYWx1ZS5tYXRjaE1vZGUsIHtcclxuICAgICAgICBlbWl0RXZlbnQ6IGZhbHNlLFxyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIGlmICh0aGlzLmNvbHVtbigpLmZpbHRlclR5cGUgPT09ICdkYXRlJykge1xyXG4gICAgICAgIGNvbnN0IHRtcFZhbHVlID0gbmV3RmlsdGVyVmFsdWUudmFsdWUgYXMgW3N0cmluZyB8IG51bGwsIHN0cmluZyB8IG51bGxdO1xyXG4gICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLmRhdGVGcm9tLnNldFZhbHVlKFxyXG4gICAgICAgICAgdG1wVmFsdWVbMF0gPyBuZXcgRGF0ZSh0bXBWYWx1ZVswXSEpIDogbnVsbCxcclxuICAgICAgICAgIHsgZW1pdEV2ZW50OiBmYWxzZSB9XHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9scy5kYXRlVG8uc2V0VmFsdWUoXHJcbiAgICAgICAgICB0bXBWYWx1ZVsxXSA/IG5ldyBEYXRlKHRtcFZhbHVlWzFdKSA6IG51bGwsXHJcbiAgICAgICAgICB7IGVtaXRFdmVudDogZmFsc2UgfVxyXG4gICAgICAgICk7XHJcbiAgICAgIH0gZWxzZSBpZiAoXHJcbiAgICAgICAgdGhpcy5jb2x1bW4oKS5maWx0ZXJUeXBlID09PSAnYm9vbGVhbicgfHxcclxuICAgICAgICB0aGlzLmNvbHVtbigpLmZpbHRlclR5cGUgPT09ICdudW1iZXInXHJcbiAgICAgICkge1xyXG4gICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLnZhbHVlLnNldFZhbHVlKFxyXG4gICAgICAgICAgKG5ld0ZpbHRlclZhbHVlLnZhbHVlIGFzIHN0cmluZyB8IG51bWJlciB8IG51bGwpIHx8IG51bGwsXHJcbiAgICAgICAgICB7IGVtaXRFdmVudDogZmFsc2UgfVxyXG4gICAgICAgICk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHMudmFsdWUuc2V0VmFsdWUoXHJcbiAgICAgICAgICAobmV3RmlsdGVyVmFsdWUudmFsdWUgYXMgc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCkgfHwgJycsXHJcbiAgICAgICAgICB7IGVtaXRFdmVudDogZmFsc2UgfVxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlQWZ0ZXJGb3JtVmFsdWVDaGFuZ2VkKCkge1xyXG4gICAgbGV0IHRtcFZhbHVlOiBTdE1hdGVyaWFsVGFibGVGaWx0ZXJWYWx1ZVR5cGUgPVxyXG4gICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9scy52YWx1ZS52YWx1ZSB8fCAnJztcclxuXHJcbiAgICBpZiAodGhpcy5jb2x1bW4oKS5maWx0ZXJUeXBlID09PSAnZGF0ZScpIHtcclxuICAgICAgdG1wVmFsdWUgPSBbXHJcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHMuZGF0ZUZyb20udmFsdWVcclxuICAgICAgICAgID8gYCR7dGhpcy5mb3JtR3JvdXAuY29udHJvbHMuZGF0ZUZyb20udmFsdWUuZ2V0RnVsbFllYXIoKX0tJHsodGhpcy5mb3JtR3JvdXAuY29udHJvbHMuZGF0ZUZyb20udmFsdWUuZ2V0TW9udGgoKSArIDEpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKX0tJHt0aGlzLmZvcm1Hcm91cC5jb250cm9scy5kYXRlRnJvbS52YWx1ZS5nZXREYXRlKCkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpfWBcclxuICAgICAgICAgIDogbnVsbCxcclxuICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9scy5kYXRlVG8udmFsdWVcclxuICAgICAgICAgID8gYCR7dGhpcy5mb3JtR3JvdXAuY29udHJvbHMuZGF0ZVRvLnZhbHVlLmdldEZ1bGxZZWFyKCl9LSR7KHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLmRhdGVUby52YWx1ZS5nZXRNb250aCgpICsgMSkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpfS0ke3RoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLmRhdGVUby52YWx1ZS5nZXREYXRlKCkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpfWBcclxuICAgICAgICAgIDogbnVsbCxcclxuICAgICAgXSBhcyBbc3RyaW5nIHwgbnVsbCwgc3RyaW5nIHwgbnVsbF07XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLmNvbHVtbigpLmZpbHRlclR5cGUgPT09ICdib29sZWFuJyB8fFxyXG4gICAgICB0aGlzLmNvbHVtbigpLmZpbHRlclR5cGUgPT09ICdudW1iZXInXHJcbiAgICApIHtcclxuICAgICAgdG1wVmFsdWUgPSB0aGlzLmZvcm1Hcm91cC5jb250cm9scy52YWx1ZS52YWx1ZSB8fCBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLnZhbHVlLnNldFZhbHVlKHRtcFZhbHVlKTtcclxuXHJcbiAgICBjb25zdCBuZXdGaWx0ZXI6IFN0TWF0ZXJpYWxUYWJsZUZpbHRlciA9IHtcclxuICAgICAgbWF0Y2hNb2RlOiB0aGlzLmZvcm1Hcm91cC5jb250cm9scy5tYXRjaE1vZGUudmFsdWUsXHJcbiAgICAgIHZhbHVlOiB0bXBWYWx1ZSxcclxuICAgIH07XHJcblxyXG4gICAgdGhpcy5maWx0ZXJWYWx1ZUNoYW5nZWQuZW1pdChuZXdGaWx0ZXIpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
286
|
+
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{width:100%}form.row{gap:8px;width:100%}form.row>:is(.col-auto,.col){padding:0}.match-mode-field{width:120px}.date-field{width:170px}.full-width{width:100%}\n"] }]
|
|
287
|
+
}], ctorParameters: () => [{ type: i1.StTablesTranslationsService }, { type: i2.NonNullableFormBuilder }, { type: i0.ChangeDetectorRef }] });
|
|
288
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtdGFibGUtZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zdC10YWJsZXMvc3JjL2xpYi9jb21wb25lbnRzL21hdGVyaWFsLXRhYmxlL21hdGVyaWFsLXRhYmxlLWNhcHRpb24vbWF0ZXJpYWwtdGFibGUtZmlsdGVyLWRpYWxvZy9tYXRlcmlhbC10YWJsZS1maWx0ZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNOLFFBQVEsR0FFVCxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7O0FBeUl2QixNQUFNLE9BQU8sNEJBQTRCO0lBcUJ2QyxZQUNVLG1CQUFnRCxFQUNoRCxFQUEwQixFQUMxQixpQkFBb0M7UUFGcEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUE2QjtRQUNoRCxPQUFFLEdBQUYsRUFBRSxDQUF3QjtRQUMxQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBdkI5QyxXQUFNLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBa0MsQ0FBQztRQUMxRCxnQkFBVyxHQUFHLEtBQUssQ0FBd0IsRUFBMkIsQ0FBQyxDQUFDO1FBRXhFLHVCQUFrQixHQUFHLE1BQU0sRUFBeUIsQ0FBQztRQUVyRCx3Q0FBd0M7UUFDeEMsaUJBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUU1RSxjQUFTLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDeEIsU0FBUyxFQUFFO2dCQUNULEtBQUssRUFBc0MsVUFBVTtnQkFDckQsUUFBUSxFQUFFLElBQUk7YUFDZjtZQUNELEtBQUssRUFBMEIsRUFBRTtZQUNqQyxR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O1FBQ2hFLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBRXZELE9BQU8sR0FBRyxJQUFJLElBQUksS0FBSyxJQUFJLEdBQUcsRUFBRSxDQUFDO0lBQ25DLENBQUM7K0dBcEhVLDRCQUE0QjttR0FBNUIsNEJBQTRCLDJZQTdIN0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTZGVDs7NEZBZ0NVLDRCQUE0QjtrQkEvSHhDLFNBQVM7K0JBQ0UsOEJBQThCLFlBQzlCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E2RlQsbUJBOEJnQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDb21wb25lbnQsXHJcbiAgaW5wdXQsXHJcbiAgZWZmZWN0LFxyXG4gIG91dHB1dCxcclxuICBjb21wdXRlZCxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3RUYWJsZXNUcmFuc2xhdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvc3QtdGFibGVzLXRyYW5zbGF0aW9ucy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVmlld1N0TWF0ZXJpYWxUYWJsZUNvbHVtbk1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL3ZpZXcvdmlldy1zdC1tYXRlcmlhbC10YWJsZS1jb2x1bW4ubW9kZWwnO1xyXG5pbXBvcnQgeyBOb25OdWxsYWJsZUZvcm1CdWlsZGVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQge1xyXG4gIFN0TWF0ZXJpYWxUYWJsZUZpbHRlcixcclxuICBTdE1hdGVyaWFsVGFibGVGaWx0ZXJNYXRjaE1vZGVUeXBlLFxyXG4gIFN0TWF0ZXJpYWxUYWJsZUZpbHRlclZhbHVlVHlwZSxcclxufSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvbW9kZWxzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbmd4LXN0LW1hdGVyaWFsLXRhYmxlLWZpbHRlcicsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxmb3JtIGNsYXNzPVwicm93XCIgW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXBcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbC1hdXRvXCI+XHJcbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJtYXRjaC1tb2RlLWZpZWxkXCI+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPnt7IHRyYW5zbGF0aW9ucygpLm1hdGNoTW9kZSB9fTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgPGlucHV0IG1hdElucHV0IHR5cGU9XCJ0ZXh0XCIgZm9ybUNvbnRyb2xOYW1lPVwibWF0Y2hNb2RlXCIgLz5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIEBpZiAoXHJcbiAgICAgICAgY29sdW1uKCkuZmlsdGVyVHlwZSA9PT0gJ3N0cmluZycgfHwgY29sdW1uKCkuZmlsdGVyVHlwZSA9PT0gJ251bWJlcidcclxuICAgICAgKSB7XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbFwiPlxyXG4gICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJmdWxsLXdpZHRoXCI+XHJcbiAgICAgICAgICAgIDxtYXQtbGFiZWw+e3sgdHJhbnNsYXRpb25zKCkuc2VhcmNoRmlsdGVyIH19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgICAgW3R5cGVdPVwiY29sdW1uKCkuZmlsdGVyVHlwZSA9PT0gJ3N0cmluZycgPyAndGV4dCcgOiAnbnVtYmVyJ1wiXHJcbiAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidmFsdWVcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgfVxyXG5cclxuICAgICAgQGlmIChjb2x1bW4oKS5maWx0ZXJUeXBlID09PSAnZGF0ZScpIHtcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sXCI+XHJcbiAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cImRhdGUtZmllbGRcIj5cclxuICAgICAgICAgICAgPG1hdC1sYWJlbD57eyB0cmFuc2xhdGlvbnMoKS5kYXRlRnJvbSB9fTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgICBtYXRJbnB1dFxyXG4gICAgICAgICAgICAgIFttYXREYXRlcGlja2VyXT1cInBpY2tlcjFcIlxyXG4gICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImRhdGVGcm9tXCJcclxuICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZVxyXG4gICAgICAgICAgICAgIG1hdEljb25TdWZmaXhcclxuICAgICAgICAgICAgICBbZm9yXT1cInBpY2tlcjFcIlxyXG4gICAgICAgICAgICA+PC9tYXQtZGF0ZXBpY2tlci10b2dnbGU+XHJcbiAgICAgICAgICAgIDxtYXQtZGF0ZXBpY2tlciAjcGlja2VyMT48L21hdC1kYXRlcGlja2VyPlxyXG4gICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sXCI+XHJcbiAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cImRhdGUtZmllbGRcIj5cclxuICAgICAgICAgICAgPG1hdC1sYWJlbD57eyB0cmFuc2xhdGlvbnMoKS5kYXRlVG8gfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgICAgICBbbWF0RGF0ZXBpY2tlcl09XCJwaWNrZXIyXCJcclxuICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJkYXRlVG9cIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlXHJcbiAgICAgICAgICAgICAgbWF0SWNvblN1ZmZpeFxyXG4gICAgICAgICAgICAgIFtmb3JdPVwicGlja2VyMlwiXHJcbiAgICAgICAgICAgID48L21hdC1kYXRlcGlja2VyLXRvZ2dsZT5cclxuICAgICAgICAgICAgPG1hdC1kYXRlcGlja2VyICNwaWNrZXIyPjwvbWF0LWRhdGVwaWNrZXI+XHJcbiAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICB9XHJcblxyXG4gICAgICBAaWYgKGNvbHVtbigpLmZpbHRlclR5cGUgPT09ICdib29sZWFuJykge1xyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2xcIj5cclxuICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwiZnVsbC13aWR0aFwiPlxyXG4gICAgICAgICAgICA8bWF0LWxhYmVsPnt7IHRyYW5zbGF0aW9ucygpLmJvb2xlYW5QaWNrVmFsdWUgfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIlwiPnt7IHRyYW5zbGF0aW9ucygpLmJvb2xlYW5Ob25lIH19PC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJ0cnVlXCI+e3tcclxuICAgICAgICAgICAgICAgIHRyYW5zbGF0aW9ucygpLmJvb2xlYW5ZZXNcclxuICAgICAgICAgICAgICB9fTwvbWF0LW9wdGlvbj5cclxuICAgICAgICAgICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwiZmFsc2VcIj57e1xyXG4gICAgICAgICAgICAgICAgdHJhbnNsYXRpb25zKCkuYm9vbGVhbk5vXHJcbiAgICAgICAgICAgICAgfX08L21hdC1vcHRpb24+XHJcbiAgICAgICAgICAgIDwvbWF0LXNlbGVjdD5cclxuICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpZiAoY29sdW1uKCkuZmlsdGVyVHlwZSA9PT0gJ2N1c3RvbScpIHtcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sXCI+XHJcbiAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cImZ1bGwtd2lkdGhcIj5cclxuICAgICAgICAgICAgPG1hdC1sYWJlbD57eyB0cmFuc2xhdGlvbnMoKS5jdXN0b21QaWNrVmFsdWUgfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgPG1hdC1zZWxlY3QgZm9ybUNvbnRyb2xOYW1lPVwidmFsdWVcIj5cclxuICAgICAgICAgICAgICA8bWF0LW9wdGlvbiB2YWx1ZT1cIlwiPnt7IHRyYW5zbGF0aW9ucygpLmN1c3RvbU5vbmUgfX08L21hdC1vcHRpb24+XHJcbiAgICAgICAgICAgICAgQGZvciAoXHJcbiAgICAgICAgICAgICAgICBvcHRpb24gb2YgY29sdW1uKCkuY3VzdG9tRmlsdGVyT3B0aW9ucztcclxuICAgICAgICAgICAgICAgIHRyYWNrIG9wdGlvbi52YWx1ZVxyXG4gICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cIm9wdGlvbi52YWx1ZVwiPnt7XHJcbiAgICAgICAgICAgICAgICAgIG9wdGlvbi5sYWJlbFxyXG4gICAgICAgICAgICAgICAgfX08L21hdC1vcHRpb24+XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICB9XHJcbiAgICA8L2Zvcm0+XHJcbiAgYCxcclxuICBzdHlsZXM6IFtcclxuICAgIGBcclxuICAgICAgOmhvc3Qge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBmb3JtLnJvdyB7XHJcbiAgICAgICAgZ2FwOiA4cHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICYgPiAuY29sLWF1dG8sXHJcbiAgICAgICAgJiA+IC5jb2wge1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5tYXRjaC1tb2RlLWZpZWxkIHtcclxuICAgICAgICB3aWR0aDogMTIwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5kYXRlLWZpZWxkIHtcclxuICAgICAgICB3aWR0aDogMTcwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5mdWxsLXdpZHRoIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgYCxcclxuICBdLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0ZXJpYWxUYWJsZUZpbHRlckNvbXBvbmVudCB7XHJcbiAgY29sdW1uID0gaW5wdXQucmVxdWlyZWQ8Vmlld1N0TWF0ZXJpYWxUYWJsZUNvbHVtbk1vZGVsPigpO1xyXG4gIGZpbHRlclZhbHVlID0gaW5wdXQ8U3RNYXRlcmlhbFRhYmxlRmlsdGVyPih7fSBhcyBTdE1hdGVyaWFsVGFibGVGaWx0ZXIpO1xyXG5cclxuICBmaWx0ZXJWYWx1ZUNoYW5nZWQgPSBvdXRwdXQ8U3RNYXRlcmlhbFRhYmxlRmlsdGVyPigpO1xyXG5cclxuICAvLyBDYWNoZSB0cmFuc2xhdGlvbnMgYXMgY29tcHV0ZWQgc2lnbmFsXHJcbiAgdHJhbnNsYXRpb25zID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5zdFRhYmxlVHJhbnNsYXRpb25zLmdldFRyYW5zbGF0aW9ucygpKCkpO1xyXG5cclxuICBmb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgIG1hdGNoTW9kZToge1xyXG4gICAgICB2YWx1ZTogPFN0TWF0ZXJpYWxUYWJsZUZpbHRlck1hdGNoTW9kZVR5cGU+J2NvbnRhaW5zJyxcclxuICAgICAgZGlzYWJsZWQ6IHRydWUsXHJcbiAgICB9LFxyXG4gICAgdmFsdWU6IDxudWxsIHwgc3RyaW5nIHwgbnVtYmVyPicnLFxyXG4gICAgZGF0ZUZyb206IDxudWxsIHwgRGF0ZT5udWxsLFxyXG4gICAgZGF0ZVRvOiA8bnVsbCB8IERhdGU+bnVsbCxcclxuICB9KTtcclxuXHJcbiAgcHJpdmF0ZSBpc1VwZGF0aW5nRnJvbU91dHNpZGUgPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHN0VGFibGVUcmFuc2xhdGlvbnM6IFN0VGFibGVzVHJhbnNsYXRpb25zU2VydmljZSxcclxuICAgIHByaXZhdGUgZmI6IE5vbk51bGxhYmxlRm9ybUJ1aWxkZXIsXHJcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICkge1xyXG4gICAgLy8gUmVhY3QgdG8gZmlsdGVyVmFsdWUgY2hhbmdlc1xyXG4gICAgZWZmZWN0KCgpID0+IHtcclxuICAgICAgY29uc3QgZmlsdGVyID0gdGhpcy5maWx0ZXJWYWx1ZSgpO1xyXG4gICAgICBpZiAoZmlsdGVyICYmIE9iamVjdC5rZXlzKGZpbHRlcikubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIHRoaXMuaXNVcGRhdGluZ0Zyb21PdXRzaWRlID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnNldEZpbHRlclZhbHVlKGZpbHRlcik7XHJcbiAgICAgICAgdGhpcy5pc1VwZGF0aW5nRnJvbU91dHNpZGUgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gUmVhY3QgdG8gZm9ybSB2YWx1ZSBjaGFuZ2VzXHJcbiAgICBlZmZlY3QoKCkgPT4ge1xyXG4gICAgICAvLyBUcmFjayBmb3JtIGNoYW5nZXNcclxuICAgICAgdGhpcy5mb3JtR3JvdXAudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmlzVXBkYXRpbmdGcm9tT3V0c2lkZSkge1xyXG4gICAgICAgICAgdGhpcy51cGRhdGVBZnRlckZvcm1WYWx1ZUNoYW5nZWQoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldEZpbHRlclZhbHVlKG5ld0ZpbHRlclZhbHVlOiBTdE1hdGVyaWFsVGFibGVGaWx0ZXIpIHtcclxuICAgIGlmIChuZXdGaWx0ZXJWYWx1ZSkge1xyXG4gICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9scy5tYXRjaE1vZGUuc2V0VmFsdWUobmV3RmlsdGVyVmFsdWUubWF0Y2hNb2RlLCB7XHJcbiAgICAgICAgZW1pdEV2ZW50OiBmYWxzZSxcclxuICAgICAgfSk7XHJcblxyXG4gICAgICBpZiAodGhpcy5jb2x1bW4oKS5maWx0ZXJUeXBlID09PSAnZGF0ZScpIHtcclxuICAgICAgICBjb25zdCB0bXBWYWx1ZSA9IG5ld0ZpbHRlclZhbHVlLnZhbHVlIGFzIFtzdHJpbmcgfCBudWxsLCBzdHJpbmcgfCBudWxsXTtcclxuICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9scy5kYXRlRnJvbS5zZXRWYWx1ZShcclxuICAgICAgICAgIHRtcFZhbHVlWzBdID8gbmV3IERhdGUodG1wVmFsdWVbMF0hKSA6IG51bGwsXHJcbiAgICAgICAgICB7IGVtaXRFdmVudDogZmFsc2UgfVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHMuZGF0ZVRvLnNldFZhbHVlKFxyXG4gICAgICAgICAgdG1wVmFsdWVbMV0gPyBuZXcgRGF0ZSh0bXBWYWx1ZVsxXSkgOiBudWxsLFxyXG4gICAgICAgICAgeyBlbWl0RXZlbnQ6IGZhbHNlIH1cclxuICAgICAgICApO1xyXG4gICAgICB9IGVsc2UgaWYgKFxyXG4gICAgICAgIHRoaXMuY29sdW1uKCkuZmlsdGVyVHlwZSA9PT0gJ2Jvb2xlYW4nIHx8XHJcbiAgICAgICAgdGhpcy5jb2x1bW4oKS5maWx0ZXJUeXBlID09PSAnbnVtYmVyJ1xyXG4gICAgICApIHtcclxuICAgICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9scy52YWx1ZS5zZXRWYWx1ZShcclxuICAgICAgICAgIChuZXdGaWx0ZXJWYWx1ZS52YWx1ZSBhcyBzdHJpbmcgfCBudW1iZXIgfCBudWxsKSB8fCBudWxsLFxyXG4gICAgICAgICAgeyBlbWl0RXZlbnQ6IGZhbHNlIH1cclxuICAgICAgICApO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLnZhbHVlLnNldFZhbHVlKFxyXG4gICAgICAgICAgKG5ld0ZpbHRlclZhbHVlLnZhbHVlIGFzIHN0cmluZyB8IG51bWJlciB8IG51bGwpIHx8ICcnLFxyXG4gICAgICAgICAgeyBlbWl0RXZlbnQ6IGZhbHNlIH1cclxuICAgICAgICApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVBZnRlckZvcm1WYWx1ZUNoYW5nZWQoKSB7XHJcbiAgICBsZXQgdG1wVmFsdWU6IFN0TWF0ZXJpYWxUYWJsZUZpbHRlclZhbHVlVHlwZSA9XHJcbiAgICAgIHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLnZhbHVlLnZhbHVlIHx8ICcnO1xyXG5cclxuICAgIGlmICh0aGlzLmNvbHVtbigpLmZpbHRlclR5cGUgPT09ICdkYXRlJykge1xyXG4gICAgICB0bXBWYWx1ZSA9IFtcclxuICAgICAgICB0aGlzLmZvcm1hdERhdGVUb1N0cmluZyh0aGlzLmZvcm1Hcm91cC5jb250cm9scy5kYXRlRnJvbS52YWx1ZSksXHJcbiAgICAgICAgdGhpcy5mb3JtYXREYXRlVG9TdHJpbmcodGhpcy5mb3JtR3JvdXAuY29udHJvbHMuZGF0ZVRvLnZhbHVlKSxcclxuICAgICAgXSBhcyBbc3RyaW5nIHwgbnVsbCwgc3RyaW5nIHwgbnVsbF07XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLmNvbHVtbigpLmZpbHRlclR5cGUgPT09ICdib29sZWFuJyB8fFxyXG4gICAgICB0aGlzLmNvbHVtbigpLmZpbHRlclR5cGUgPT09ICdudW1iZXInXHJcbiAgICApIHtcclxuICAgICAgdG1wVmFsdWUgPSB0aGlzLmZvcm1Hcm91cC5jb250cm9scy52YWx1ZS52YWx1ZSB8fCBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IG5ld0ZpbHRlcjogU3RNYXRlcmlhbFRhYmxlRmlsdGVyID0ge1xyXG4gICAgICBtYXRjaE1vZGU6IHRoaXMuZm9ybUdyb3VwLmNvbnRyb2xzLm1hdGNoTW9kZS52YWx1ZSxcclxuICAgICAgdmFsdWU6IHRtcFZhbHVlLFxyXG4gICAgfTtcclxuXHJcbiAgICB0aGlzLmZpbHRlclZhbHVlQ2hhbmdlZC5lbWl0KG5ld0ZpbHRlcik7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZvcm1hdERhdGVUb1N0cmluZyhkYXRlOiBEYXRlIHwgbnVsbCk6IHN0cmluZyB8IG51bGwge1xyXG4gICAgaWYgKCFkYXRlKSByZXR1cm4gbnVsbDtcclxuXHJcbiAgICBjb25zdCB5ZWFyID0gZGF0ZS5nZXRGdWxsWWVhcigpO1xyXG4gICAgY29uc3QgbW9udGggPSAoZGF0ZS5nZXRNb250aCgpICsgMSkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpO1xyXG4gICAgY29uc3QgZGF5ID0gZGF0ZS5nZXREYXRlKCkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpO1xyXG5cclxuICAgIHJldHVybiBgJHt5ZWFyfS0ke21vbnRofS0ke2RheX1gO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,38 +1,37 @@
|
|
|
1
|
-
import { Component,
|
|
2
|
-
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, inject, signal, } from '@angular/core';
|
|
2
|
+
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
|
3
3
|
import { moveItemInArray } from '@angular/cdk/drag-drop';
|
|
4
|
+
import { StTablesTranslationsService } from '../../../../services/st-tables-translations.service';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/material/
|
|
6
|
-
import * as i2 from "
|
|
7
|
-
import * as i3 from "@angular/material/
|
|
8
|
-
import * as i4 from "@angular/
|
|
9
|
-
import * as i5 from "@angular/cdk/drag-drop";
|
|
6
|
+
import * as i1 from "@angular/material/button";
|
|
7
|
+
import * as i2 from "@angular/material/icon";
|
|
8
|
+
import * as i3 from "@angular/material/dialog";
|
|
9
|
+
import * as i4 from "@angular/cdk/drag-drop";
|
|
10
10
|
export class MaterialTableOrderColumnDialogComponent {
|
|
11
|
-
constructor(
|
|
12
|
-
this.dialogData =
|
|
13
|
-
this.dialogRef =
|
|
14
|
-
this.stTablesTranslations =
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
ngOnInit() {
|
|
18
|
-
this.columns = this.dialogData.columns.map(column => ({ ...column }));
|
|
11
|
+
constructor() {
|
|
12
|
+
this.dialogData = inject(MAT_DIALOG_DATA);
|
|
13
|
+
this.dialogRef = inject((MatDialogRef));
|
|
14
|
+
this.stTablesTranslations = inject(StTablesTranslationsService);
|
|
15
|
+
// Use signal for reactive columns array
|
|
16
|
+
this.columns = signal(this.dialogData.columns.map(column => ({ ...column })));
|
|
19
17
|
}
|
|
20
18
|
drop(event) {
|
|
21
|
-
|
|
19
|
+
this.columns.update(cols => {
|
|
20
|
+
const newCols = [...cols];
|
|
21
|
+
moveItemInArray(newCols, event.previousIndex, event.currentIndex);
|
|
22
|
+
return newCols;
|
|
23
|
+
});
|
|
22
24
|
}
|
|
23
25
|
saveOrder() {
|
|
24
26
|
this.dialogRef.close({
|
|
25
|
-
columnsOrder: this.columns.map(column => column.field),
|
|
27
|
+
columnsOrder: this.columns().map(column => column.field),
|
|
26
28
|
});
|
|
27
29
|
}
|
|
28
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MaterialTableOrderColumnDialogComponent, deps: [
|
|
29
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: MaterialTableOrderColumnDialogComponent, selector: "st-material-table-order-column-dialog", ngImport: i0, template: "<h3 mat-dialog-title>\r\n {{ stTablesTranslations.getTranslations()().reorderColumns }}\r\n</h3>\r\n<mat-dialog-content>\r\n <div\r\n cdkDropList\r\n class=\"reorder-column-list\"\r\n (cdkDropListDropped)=\"drop($event)\"\r\n >\r\n @for (column of columns; track column.field) {\r\n <div class=\"reorder-column-element\" cdkDrag>\r\n <div class=\"row\">\r\n <mat-icon>drag_indicator</mat-icon>\r\n <p>{{ column.selectColumnLabel || column.header }}</p>\r\n </div>\r\n @if (!column.visible) {\r\n <mat-icon class=\"column-hidden\">visibility_off</mat-icon>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <div class=\"row justify-content-between\" style=\"width: 100%\">\r\n <button type=\"button\" mat-flat-button mat-dialog-close>\r\n {{ stTablesTranslations.getTranslations()().close }}\r\n </button>\r\n <button type=\"button\" mat-flat-button color=\"accent\" (click)=\"saveOrder()\">\r\n {{ stTablesTranslations.getTranslations()().save }}\r\n </button>\r\n </div>\r\n</mat-dialog-actions>\r\n", styles: [".reorder-column-list{width:100%;border:solid 1px #ccc}.reorder-column-list .reorder-column-element{width:100%;padding:10px;border-bottom:solid 1px #ccc;color:#000000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;cursor:move;background:#fff}.reorder-column-list .reorder-column-element:last-child{border-bottom:none}.reorder-column-list .reorder-column-element .column-hidden{opacity:.3}.reorder-column-list .reorder-column-element p{margin-bottom:0;font-size:1.1rem}.cdk-drag-preview{overflow-y:hidden;padding:10px;border:none;box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-preview p{margin-top:5px}.cdk-drag-preview mat-icon{display:none}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.reorder-column-element:last-child{border:none}.reorder-column-list.cdk-drop-list-dragging .reorder-column-element:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "component", type:
|
|
30
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MaterialTableOrderColumnDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
31
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: MaterialTableOrderColumnDialogComponent, selector: "st-material-table-order-column-dialog", ngImport: i0, template: "<h3 mat-dialog-title>\r\n {{ stTablesTranslations.getTranslations()().reorderColumns }}\r\n</h3>\r\n<mat-dialog-content>\r\n <div\r\n cdkDropList\r\n class=\"reorder-column-list\"\r\n (cdkDropListDropped)=\"drop($event)\"\r\n >\r\n @for (column of columns(); track column.field) {\r\n <div class=\"reorder-column-element\" cdkDrag>\r\n <div class=\"row\">\r\n <mat-icon>drag_indicator</mat-icon>\r\n <p>{{ column.selectColumnLabel || column.header }}</p>\r\n </div>\r\n @if (!column.visible) {\r\n <mat-icon class=\"column-hidden\">visibility_off</mat-icon>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <div class=\"row justify-content-between\" style=\"width: 100%\">\r\n <button type=\"button\" mat-flat-button mat-dialog-close>\r\n {{ stTablesTranslations.getTranslations()().close }}\r\n </button>\r\n <button type=\"button\" mat-flat-button color=\"accent\" (click)=\"saveOrder()\">\r\n {{ stTablesTranslations.getTranslations()().save }}\r\n </button>\r\n </div>\r\n</mat-dialog-actions>\r\n", styles: [".reorder-column-list{width:100%;border:solid 1px #ccc}.reorder-column-list .reorder-column-element{width:100%;padding:10px;border-bottom:solid 1px #ccc;color:#000000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;cursor:move;background:#fff}.reorder-column-list .reorder-column-element:last-child{border-bottom:none}.reorder-column-list .reorder-column-element .column-hidden{opacity:.3}.reorder-column-list .reorder-column-element p{margin-bottom:0;font-size:1.1rem}.cdk-drag-preview{overflow-y:hidden;padding:10px;border:none;box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-preview p{margin-top:5px}.cdk-drag-preview mat-icon{display:none}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.reorder-column-element:last-child{border:none}.reorder-column-list.cdk-drop-list-dragging .reorder-column-element:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "component", type: i1.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i3.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i3.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i3.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i4.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
30
32
|
}
|
|
31
33
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MaterialTableOrderColumnDialogComponent, decorators: [{
|
|
32
34
|
type: Component,
|
|
33
|
-
args: [{ selector: 'st-material-table-order-column-dialog', template: "<h3 mat-dialog-title>\r\n {{ stTablesTranslations.getTranslations()().reorderColumns }}\r\n</h3>\r\n<mat-dialog-content>\r\n <div\r\n cdkDropList\r\n class=\"reorder-column-list\"\r\n (cdkDropListDropped)=\"drop($event)\"\r\n >\r\n @for (column of columns; track column.field) {\r\n <div class=\"reorder-column-element\" cdkDrag>\r\n <div class=\"row\">\r\n <mat-icon>drag_indicator</mat-icon>\r\n <p>{{ column.selectColumnLabel || column.header }}</p>\r\n </div>\r\n @if (!column.visible) {\r\n <mat-icon class=\"column-hidden\">visibility_off</mat-icon>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <div class=\"row justify-content-between\" style=\"width: 100%\">\r\n <button type=\"button\" mat-flat-button mat-dialog-close>\r\n {{ stTablesTranslations.getTranslations()().close }}\r\n </button>\r\n <button type=\"button\" mat-flat-button color=\"accent\" (click)=\"saveOrder()\">\r\n {{ stTablesTranslations.getTranslations()().save }}\r\n </button>\r\n </div>\r\n</mat-dialog-actions>\r\n", styles: [".reorder-column-list{width:100%;border:solid 1px #ccc}.reorder-column-list .reorder-column-element{width:100%;padding:10px;border-bottom:solid 1px #ccc;color:#000000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;cursor:move;background:#fff}.reorder-column-list .reorder-column-element:last-child{border-bottom:none}.reorder-column-list .reorder-column-element .column-hidden{opacity:.3}.reorder-column-list .reorder-column-element p{margin-bottom:0;font-size:1.1rem}.cdk-drag-preview{overflow-y:hidden;padding:10px;border:none;box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-preview p{margin-top:5px}.cdk-drag-preview mat-icon{display:none}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.reorder-column-element:last-child{border:none}.reorder-column-list.cdk-drop-list-dragging .reorder-column-element:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"] }]
|
|
34
|
-
}]
|
|
35
|
-
|
|
36
|
-
args: [MAT_DIALOG_DATA]
|
|
37
|
-
}] }, { type: i1.MatDialogRef }, { type: i2.StTablesTranslationsService }] });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtdGFibGUtb3JkZXItY29sdW1uLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc3QtdGFibGVzL3NyYy9saWIvY29tcG9uZW50cy9tYXRlcmlhbC10YWJsZS9tYXRlcmlhbC10YWJsZS1jYXB0aW9uL21hdGVyaWFsLXRhYmxlLW9yZGVyLWNvbHVtbi1kaWFsb2cvbWF0ZXJpYWwtdGFibGUtb3JkZXItY29sdW1uLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc3QtdGFibGVzL3NyYy9saWIvY29tcG9uZW50cy9tYXRlcmlhbC10YWJsZS9tYXRlcmlhbC10YWJsZS1jYXB0aW9uL21hdGVyaWFsLXRhYmxlLW9yZGVyLWNvbHVtbi1kaWFsb2cvbWF0ZXJpYWwtdGFibGUtb3JkZXItY29sdW1uLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFnQixNQUFNLDBCQUEwQixDQUFDO0FBQ3pFLE9BQU8sRUFBZSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7OztBQVN0RSxNQUFNLE9BQU8sdUNBQXVDO0lBR2xELFlBRVMsVUFBeUQsRUFDekQsU0FHTixFQUNNLG9CQUFpRDtRQUxqRCxlQUFVLEdBQVYsVUFBVSxDQUErQztRQUN6RCxjQUFTLEdBQVQsU0FBUyxDQUdmO1FBQ00seUJBQW9CLEdBQXBCLG9CQUFvQixDQUE2QjtRQVQxRCxZQUFPLEdBQXFDLEVBQUUsQ0FBQztJQVU1QyxDQUFDO0lBRUosUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFRCxJQUFJLENBQUMsS0FBNEI7UUFDL0IsZUFBZSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztZQUNuQixZQUFZLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1NBQ3ZELENBQUMsQ0FBQztJQUNMLENBQUM7K0dBekJVLHVDQUF1QyxrQkFJeEMsZUFBZTttR0FKZCx1Q0FBdUMsNkVDWHBELDJuQ0FnQ0E7OzRGRHJCYSx1Q0FBdUM7a0JBTG5ELFNBQVM7K0JBQ0UsdUNBQXVDOzswQkFROUMsTUFBTTsyQkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IENka0RyYWdEcm9wLCBtb3ZlSXRlbUluQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcclxuaW1wb3J0IHsgVmlld1N0TWF0ZXJpYWxUYWJsZUNvbHVtbk1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL3ZpZXcvdmlldy1zdC1tYXRlcmlhbC10YWJsZS1jb2x1bW4ubW9kZWwnO1xyXG5pbXBvcnQgeyBTdFRhYmxlc1RyYW5zbGF0aW9uc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9zdC10YWJsZXMtdHJhbnNsYXRpb25zLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzdC1tYXRlcmlhbC10YWJsZS1vcmRlci1jb2x1bW4tZGlhbG9nJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbWF0ZXJpYWwtdGFibGUtb3JkZXItY29sdW1uLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbWF0ZXJpYWwtdGFibGUtb3JkZXItY29sdW1uLWRpYWxvZy5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0ZXJpYWxUYWJsZU9yZGVyQ29sdW1uRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBjb2x1bW5zOiBWaWV3U3RNYXRlcmlhbFRhYmxlQ29sdW1uTW9kZWxbXSA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKVxyXG4gICAgcHVibGljIGRpYWxvZ0RhdGE6IHsgY29sdW1uczogVmlld1N0TWF0ZXJpYWxUYWJsZUNvbHVtbk1vZGVsW10gfSxcclxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxcclxuICAgICAgTWF0ZXJpYWxUYWJsZU9yZGVyQ29sdW1uRGlhbG9nQ29tcG9uZW50LFxyXG4gICAgICBNYXRlcmlhbFRhYmxlT3JkZXJDb2x1bW5EaWFsb2dSZXN1bHRcclxuICAgID4sXHJcbiAgICBwdWJsaWMgc3RUYWJsZXNUcmFuc2xhdGlvbnM6IFN0VGFibGVzVHJhbnNsYXRpb25zU2VydmljZVxyXG4gICkge31cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmNvbHVtbnMgPSB0aGlzLmRpYWxvZ0RhdGEuY29sdW1ucy5tYXAoY29sdW1uID0+ICh7IC4uLmNvbHVtbiB9KSk7XHJcbiAgfVxyXG5cclxuICBkcm9wKGV2ZW50OiBDZGtEcmFnRHJvcDxzdHJpbmdbXT4pIHtcclxuICAgIG1vdmVJdGVtSW5BcnJheSh0aGlzLmNvbHVtbnMsIGV2ZW50LnByZXZpb3VzSW5kZXgsIGV2ZW50LmN1cnJlbnRJbmRleCk7XHJcbiAgfVxyXG5cclxuICBzYXZlT3JkZXIoKSB7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh7XHJcbiAgICAgIGNvbHVtbnNPcmRlcjogdGhpcy5jb2x1bW5zLm1hcChjb2x1bW4gPT4gY29sdW1uLmZpZWxkKSxcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBNYXRlcmlhbFRhYmxlT3JkZXJDb2x1bW5EaWFsb2dSZXN1bHQge1xyXG4gIGNvbHVtbnNPcmRlcjogc3RyaW5nW107XHJcbn1cclxuIiwiPGgzIG1hdC1kaWFsb2ctdGl0bGU+XHJcbiAge3sgc3RUYWJsZXNUcmFuc2xhdGlvbnMuZ2V0VHJhbnNsYXRpb25zKCkoKS5yZW9yZGVyQ29sdW1ucyB9fVxyXG48L2gzPlxyXG48bWF0LWRpYWxvZy1jb250ZW50PlxyXG4gIDxkaXZcclxuICAgIGNka0Ryb3BMaXN0XHJcbiAgICBjbGFzcz1cInJlb3JkZXItY29sdW1uLWxpc3RcIlxyXG4gICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcm9wKCRldmVudClcIlxyXG4gID5cclxuICAgIEBmb3IgKGNvbHVtbiBvZiBjb2x1bW5zOyB0cmFjayBjb2x1bW4uZmllbGQpIHtcclxuICAgICAgPGRpdiBjbGFzcz1cInJlb3JkZXItY29sdW1uLWVsZW1lbnRcIiBjZGtEcmFnPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgIDxtYXQtaWNvbj5kcmFnX2luZGljYXRvcjwvbWF0LWljb24+XHJcbiAgICAgICAgICA8cD57eyBjb2x1bW4uc2VsZWN0Q29sdW1uTGFiZWwgfHwgY29sdW1uLmhlYWRlciB9fTwvcD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICBAaWYgKCFjb2x1bW4udmlzaWJsZSkge1xyXG4gICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiY29sdW1uLWhpZGRlblwiPnZpc2liaWxpdHlfb2ZmPC9tYXQtaWNvbj5cclxuICAgICAgICB9XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgfVxyXG4gIDwvZGl2PlxyXG48L21hdC1kaWFsb2ctY29udGVudD5cclxuPG1hdC1kaWFsb2ctYWN0aW9ucz5cclxuICA8ZGl2IGNsYXNzPVwicm93IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCIgc3R5bGU9XCJ3aWR0aDogMTAwJVwiPlxyXG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LWZsYXQtYnV0dG9uIG1hdC1kaWFsb2ctY2xvc2U+XHJcbiAgICAgIHt7IHN0VGFibGVzVHJhbnNsYXRpb25zLmdldFRyYW5zbGF0aW9ucygpKCkuY2xvc2UgfX1cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LWZsYXQtYnV0dG9uIGNvbG9yPVwiYWNjZW50XCIgKGNsaWNrKT1cInNhdmVPcmRlcigpXCI+XHJcbiAgICAgIHt7IHN0VGFibGVzVHJhbnNsYXRpb25zLmdldFRyYW5zbGF0aW9ucygpKCkuc2F2ZSB9fVxyXG4gICAgPC9idXR0b24+XHJcbiAgPC9kaXY+XHJcbjwvbWF0LWRpYWxvZy1hY3Rpb25zPlxyXG4iXX0=
|
|
35
|
+
args: [{ selector: 'st-material-table-order-column-dialog', changeDetection: ChangeDetectionStrategy.OnPush, template: "<h3 mat-dialog-title>\r\n {{ stTablesTranslations.getTranslations()().reorderColumns }}\r\n</h3>\r\n<mat-dialog-content>\r\n <div\r\n cdkDropList\r\n class=\"reorder-column-list\"\r\n (cdkDropListDropped)=\"drop($event)\"\r\n >\r\n @for (column of columns(); track column.field) {\r\n <div class=\"reorder-column-element\" cdkDrag>\r\n <div class=\"row\">\r\n <mat-icon>drag_indicator</mat-icon>\r\n <p>{{ column.selectColumnLabel || column.header }}</p>\r\n </div>\r\n @if (!column.visible) {\r\n <mat-icon class=\"column-hidden\">visibility_off</mat-icon>\r\n }\r\n </div>\r\n }\r\n </div>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n <div class=\"row justify-content-between\" style=\"width: 100%\">\r\n <button type=\"button\" mat-flat-button mat-dialog-close>\r\n {{ stTablesTranslations.getTranslations()().close }}\r\n </button>\r\n <button type=\"button\" mat-flat-button color=\"accent\" (click)=\"saveOrder()\">\r\n {{ stTablesTranslations.getTranslations()().save }}\r\n </button>\r\n </div>\r\n</mat-dialog-actions>\r\n", styles: [".reorder-column-list{width:100%;border:solid 1px #ccc}.reorder-column-list .reorder-column-element{width:100%;padding:10px;border-bottom:solid 1px #ccc;color:#000000de;display:flex;flex-direction:row;align-items:center;justify-content:space-between;box-sizing:border-box;cursor:move;background:#fff}.reorder-column-list .reorder-column-element:last-child{border-bottom:none}.reorder-column-list .reorder-column-element .column-hidden{opacity:.3}.reorder-column-list .reorder-column-element p{margin-bottom:0;font-size:1.1rem}.cdk-drag-preview{overflow-y:hidden;padding:10px;border:none;box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-preview p{margin-top:5px}.cdk-drag-preview mat-icon{display:none}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.reorder-column-element:last-child{border:none}.reorder-column-list.cdk-drop-list-dragging .reorder-column-element:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"] }]
|
|
36
|
+
}] });
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtdGFibGUtb3JkZXItY29sdW1uLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc3QtdGFibGVzL3NyYy9saWIvY29tcG9uZW50cy9tYXRlcmlhbC10YWJsZS9tYXRlcmlhbC10YWJsZS1jYXB0aW9uL21hdGVyaWFsLXRhYmxlLW9yZGVyLWNvbHVtbi1kaWFsb2cvbWF0ZXJpYWwtdGFibGUtb3JkZXItY29sdW1uLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc3QtdGFibGVzL3NyYy9saWIvY29tcG9uZW50cy9tYXRlcmlhbC10YWJsZS9tYXRlcmlhbC10YWJsZS1jYXB0aW9uL21hdGVyaWFsLXRhYmxlLW9yZGVyLWNvbHVtbi1kaWFsb2cvbWF0ZXJpYWwtdGFibGUtb3JkZXItY29sdW1uLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxNQUFNLEVBQ04sTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekUsT0FBTyxFQUFlLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXRFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDOzs7Ozs7QUFRbEcsTUFBTSxPQUFPLHVDQUF1QztJQU5wRDtRQU9TLGVBQVUsR0FBRyxNQUFNLENBRXZCLGVBQWUsQ0FBQyxDQUFDO1FBRWIsY0FBUyxHQUFHLE1BQU0sQ0FDdkIsQ0FBQSxZQUdDLENBQUEsQ0FDRixDQUFDO1FBRUsseUJBQW9CLEdBQUcsTUFBTSxDQUFDLDJCQUEyQixDQUFDLENBQUM7UUFFbEUsd0NBQXdDO1FBQ3hDLFlBQU8sR0FBRyxNQUFNLENBQ2QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUN2RCxDQUFDO0tBZUg7SUFiQyxJQUFJLENBQUMsS0FBNEI7UUFDL0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDekIsTUFBTSxPQUFPLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1lBQzFCLGVBQWUsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDbEUsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDO1lBQ25CLFlBQVksRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztTQUN6RCxDQUFDLENBQUM7SUFDTCxDQUFDOytHQS9CVSx1Q0FBdUM7bUdBQXZDLHVDQUF1Qyw2RUNqQnBELDZuQ0FnQ0E7OzRGRGZhLHVDQUF1QztrQkFObkQsU0FBUzsrQkFDRSx1Q0FBdUMsbUJBR2hDLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENvbXBvbmVudCxcclxuICBpbmplY3QsXHJcbiAgc2lnbmFsLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IENka0RyYWdEcm9wLCBtb3ZlSXRlbUluQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcclxuaW1wb3J0IHsgVmlld1N0TWF0ZXJpYWxUYWJsZUNvbHVtbk1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzL3ZpZXcvdmlldy1zdC1tYXRlcmlhbC10YWJsZS1jb2x1bW4ubW9kZWwnO1xyXG5pbXBvcnQgeyBTdFRhYmxlc1RyYW5zbGF0aW9uc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9zdC10YWJsZXMtdHJhbnNsYXRpb25zLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzdC1tYXRlcmlhbC10YWJsZS1vcmRlci1jb2x1bW4tZGlhbG9nJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbWF0ZXJpYWwtdGFibGUtb3JkZXItY29sdW1uLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vbWF0ZXJpYWwtdGFibGUtb3JkZXItY29sdW1uLWRpYWxvZy5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgTWF0ZXJpYWxUYWJsZU9yZGVyQ29sdW1uRGlhbG9nQ29tcG9uZW50IHtcclxuICBwdWJsaWMgZGlhbG9nRGF0YSA9IGluamVjdDx7XHJcbiAgICBjb2x1bW5zOiBWaWV3U3RNYXRlcmlhbFRhYmxlQ29sdW1uTW9kZWxbXTtcclxuICB9PihNQVRfRElBTE9HX0RBVEEpO1xyXG5cclxuICBwdWJsaWMgZGlhbG9nUmVmID0gaW5qZWN0KFxyXG4gICAgTWF0RGlhbG9nUmVmPFxyXG4gICAgICBNYXRlcmlhbFRhYmxlT3JkZXJDb2x1bW5EaWFsb2dDb21wb25lbnQsXHJcbiAgICAgIE1hdGVyaWFsVGFibGVPcmRlckNvbHVtbkRpYWxvZ1Jlc3VsdFxyXG4gICAgPlxyXG4gICk7XHJcblxyXG4gIHB1YmxpYyBzdFRhYmxlc1RyYW5zbGF0aW9ucyA9IGluamVjdChTdFRhYmxlc1RyYW5zbGF0aW9uc1NlcnZpY2UpO1xyXG5cclxuICAvLyBVc2Ugc2lnbmFsIGZvciByZWFjdGl2ZSBjb2x1bW5zIGFycmF5XHJcbiAgY29sdW1ucyA9IHNpZ25hbDxWaWV3U3RNYXRlcmlhbFRhYmxlQ29sdW1uTW9kZWxbXT4oXHJcbiAgICB0aGlzLmRpYWxvZ0RhdGEuY29sdW1ucy5tYXAoY29sdW1uID0+ICh7IC4uLmNvbHVtbiB9KSlcclxuICApO1xyXG5cclxuICBkcm9wKGV2ZW50OiBDZGtEcmFnRHJvcDxzdHJpbmdbXT4pIHtcclxuICAgIHRoaXMuY29sdW1ucy51cGRhdGUoY29scyA9PiB7XHJcbiAgICAgIGNvbnN0IG5ld0NvbHMgPSBbLi4uY29sc107XHJcbiAgICAgIG1vdmVJdGVtSW5BcnJheShuZXdDb2xzLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xyXG4gICAgICByZXR1cm4gbmV3Q29scztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2F2ZU9yZGVyKCkge1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2Uoe1xyXG4gICAgICBjb2x1bW5zT3JkZXI6IHRoaXMuY29sdW1ucygpLm1hcChjb2x1bW4gPT4gY29sdW1uLmZpZWxkKSxcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBNYXRlcmlhbFRhYmxlT3JkZXJDb2x1bW5EaWFsb2dSZXN1bHQge1xyXG4gIGNvbHVtbnNPcmRlcjogc3RyaW5nW107XHJcbn1cclxuIiwiPGgzIG1hdC1kaWFsb2ctdGl0bGU+XHJcbiAge3sgc3RUYWJsZXNUcmFuc2xhdGlvbnMuZ2V0VHJhbnNsYXRpb25zKCkoKS5yZW9yZGVyQ29sdW1ucyB9fVxyXG48L2gzPlxyXG48bWF0LWRpYWxvZy1jb250ZW50PlxyXG4gIDxkaXZcclxuICAgIGNka0Ryb3BMaXN0XHJcbiAgICBjbGFzcz1cInJlb3JkZXItY29sdW1uLWxpc3RcIlxyXG4gICAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcm9wKCRldmVudClcIlxyXG4gID5cclxuICAgIEBmb3IgKGNvbHVtbiBvZiBjb2x1bW5zKCk7IHRyYWNrIGNvbHVtbi5maWVsZCkge1xyXG4gICAgICA8ZGl2IGNsYXNzPVwicmVvcmRlci1jb2x1bW4tZWxlbWVudFwiIGNka0RyYWc+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgPG1hdC1pY29uPmRyYWdfaW5kaWNhdG9yPC9tYXQtaWNvbj5cclxuICAgICAgICAgIDxwPnt7IGNvbHVtbi5zZWxlY3RDb2x1bW5MYWJlbCB8fCBjb2x1bW4uaGVhZGVyIH19PC9wPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIEBpZiAoIWNvbHVtbi52aXNpYmxlKSB7XHJcbiAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJjb2x1bW4taGlkZGVuXCI+dmlzaWJpbGl0eV9vZmY8L21hdC1pY29uPlxyXG4gICAgICAgIH1cclxuICAgICAgPC9kaXY+XHJcbiAgICB9XHJcbiAgPC9kaXY+XHJcbjwvbWF0LWRpYWxvZy1jb250ZW50PlxyXG48bWF0LWRpYWxvZy1hY3Rpb25zPlxyXG4gIDxkaXYgY2xhc3M9XCJyb3cganVzdGlmeS1jb250ZW50LWJldHdlZW5cIiBzdHlsZT1cIndpZHRoOiAxMDAlXCI+XHJcbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBtYXQtZmxhdC1idXR0b24gbWF0LWRpYWxvZy1jbG9zZT5cclxuICAgICAge3sgc3RUYWJsZXNUcmFuc2xhdGlvbnMuZ2V0VHJhbnNsYXRpb25zKCkoKS5jbG9zZSB9fVxyXG4gICAgPC9idXR0b24+XHJcbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBtYXQtZmxhdC1idXR0b24gY29sb3I9XCJhY2NlbnRcIiAoY2xpY2spPVwic2F2ZU9yZGVyKClcIj5cclxuICAgICAge3sgc3RUYWJsZXNUcmFuc2xhdGlvbnMuZ2V0VHJhbnNsYXRpb25zKCkoKS5zYXZlIH19XHJcbiAgICA8L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuPC9tYXQtZGlhbG9nLWFjdGlvbnM+XHJcbiJdfQ==
|