@3kles/kles-material-dynamicforms 16.1.5 → 17.1.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.
Files changed (71) hide show
  1. package/esm2022/lib/directive/dynamic-component.directive.mjs +5 -5
  2. package/esm2022/lib/directive/dynamic-field.directive.mjs +5 -5
  3. package/esm2022/lib/dynamic-form.component.mjs +20 -17
  4. package/esm2022/lib/enums/button-attribute.enum.mjs +8 -0
  5. package/esm2022/lib/fields/array.component.mjs +25 -21
  6. package/esm2022/lib/fields/badge.component.mjs +5 -5
  7. package/esm2022/lib/fields/button-fab.component.mjs +48 -0
  8. package/esm2022/lib/fields/button-form.component.mjs +7 -5
  9. package/esm2022/lib/fields/button-icon.component.mjs +48 -0
  10. package/esm2022/lib/fields/button-mini-fab.component.mjs +48 -0
  11. package/esm2022/lib/fields/button-toogle-group.component.mjs +17 -15
  12. package/esm2022/lib/fields/buttonchecker-form.component.mjs +3 -3
  13. package/esm2022/lib/fields/buttonfile-form.component.mjs +3 -3
  14. package/esm2022/lib/fields/checkbox.component.mjs +33 -17
  15. package/esm2022/lib/fields/chip.component.mjs +11 -7
  16. package/esm2022/lib/fields/clear.component.mjs +4 -4
  17. package/esm2022/lib/fields/color.component.mjs +43 -23
  18. package/esm2022/lib/fields/date-time.component.mjs +39 -19
  19. package/esm2022/lib/fields/date.component.mjs +39 -19
  20. package/esm2022/lib/fields/field.abstract.mjs +5 -5
  21. package/esm2022/lib/fields/group.component.mjs +17 -13
  22. package/esm2022/lib/fields/icon.component.mjs +4 -4
  23. package/esm2022/lib/fields/input.clearable.component.mjs +97 -63
  24. package/esm2022/lib/fields/input.component.mjs +95 -61
  25. package/esm2022/lib/fields/label.component.mjs +4 -4
  26. package/esm2022/lib/fields/line-break.component.mjs +4 -4
  27. package/esm2022/lib/fields/link.component.mjs +4 -4
  28. package/esm2022/lib/fields/list-field.component.mjs +59 -38
  29. package/esm2022/lib/fields/radio.component.mjs +48 -16
  30. package/esm2022/lib/fields/range.component.mjs +33 -17
  31. package/esm2022/lib/fields/select.component.mjs +192 -136
  32. package/esm2022/lib/fields/select.lazy-search.component.mjs +194 -144
  33. package/esm2022/lib/fields/select.search.component.mjs +196 -138
  34. package/esm2022/lib/fields/selection-list.component.mjs +33 -27
  35. package/esm2022/lib/fields/slide-toggle.component.mjs +35 -17
  36. package/esm2022/lib/fields/text.component.mjs +5 -5
  37. package/esm2022/lib/fields/textarea.component.mjs +51 -25
  38. package/esm2022/lib/forms/button-control-base.mjs +82 -0
  39. package/esm2022/lib/forms/button-control.component.mjs +54 -83
  40. package/esm2022/lib/forms/buttonchecker-control.component.mjs +59 -46
  41. package/esm2022/lib/forms/buttonfile-control.component.mjs +7 -7
  42. package/esm2022/lib/forms/fab-control.component.mjs +60 -0
  43. package/esm2022/lib/forms/icon-button-control.component.mjs +55 -0
  44. package/esm2022/lib/forms/mini-fab-control.component.mjs +60 -0
  45. package/esm2022/lib/interfaces/field.config.interface.mjs +1 -1
  46. package/esm2022/lib/kles-material-dynamicforms.module.mjs +32 -12
  47. package/esm2022/lib/matcher/form-error.matcher.mjs +4 -4
  48. package/esm2022/lib/modules/material.module.mjs +4 -4
  49. package/esm2022/lib/pipe/array.pipe.mjs +3 -3
  50. package/esm2022/lib/pipe/transform.pipe.mjs +3 -3
  51. package/esm2022/public-api.mjs +9 -2
  52. package/fesm2022/3kles-kles-material-dynamicforms.mjs +1792 -1007
  53. package/fesm2022/3kles-kles-material-dynamicforms.mjs.map +1 -1
  54. package/lib/enums/button-attribute.enum.d.ts +6 -0
  55. package/lib/fields/button-fab.component.d.ts +9 -0
  56. package/lib/fields/button-icon.component.d.ts +9 -0
  57. package/lib/fields/button-mini-fab.component.d.ts +9 -0
  58. package/lib/fields/radio.component.d.ts +2 -0
  59. package/lib/forms/button-control-base.d.ts +39 -0
  60. package/lib/forms/button-control.component.d.ts +6 -35
  61. package/lib/forms/buttonchecker-control.component.d.ts +2 -2
  62. package/lib/forms/buttonfile-control.component.d.ts +2 -3
  63. package/lib/forms/fab-control.component.d.ts +7 -0
  64. package/lib/forms/icon-button-control.component.d.ts +7 -0
  65. package/lib/forms/mini-fab-control.component.d.ts +7 -0
  66. package/lib/interfaces/field.config.interface.d.ts +2 -0
  67. package/lib/kles-material-dynamicforms.module.d.ts +49 -44
  68. package/package.json +12 -12
  69. package/public-api.d.ts +8 -1
  70. package/esm2022/lib/fields/button-submit.component.mjs +0 -37
  71. package/lib/fields/button-submit.component.d.ts +0 -9
@@ -17,95 +17,129 @@ export class KlesFormInputClearableComponent extends KlesFormInputComponent {
17
17
  ngOnDestroy() {
18
18
  super.ngOnDestroy();
19
19
  }
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: KlesFormInputClearableComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
21
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: KlesFormInputClearableComponent, selector: "kles-form-input-clearable", usesInheritance: true, ngImport: i0, template: `
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: KlesFormInputClearableComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
21
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.4", type: KlesFormInputClearableComponent, selector: "kles-form-input-clearable", usesInheritance: true, ngImport: i0, template: `
22
22
  <mat-form-field [formGroup]="group" [color]="field.color" class="form-element">
23
- <mat-label *ngIf="field.label">{{field.label}}</mat-label>
24
- <ng-container *ngIf="field.autocomplete; else notAutoComplete">
23
+ @if (field.label) {
24
+ <mat-label>{{field.label}}</mat-label>
25
+ }
26
+
27
+ @if (field.autocomplete) {
25
28
  <input matInput matTooltip="{{field.tooltip}}" [attr.id]="field.id" [ngClass]="field.ngClass" [formControlName]="field.name" [placeholder]="field.placeholder | translate" [type]="field.inputType"
26
29
  [maxLength]="field.maxLength" [min]="field.min" [max]="field.max" [step]="field.step"
27
30
  [matAutocomplete]="auto">
28
31
 
29
32
  <mat-autocomplete #auto="matAutocomplete" [displayWith]="displayFn.bind(this)" [panelWidth]="this.field.panelWidth">
30
- <ng-container *ngIf="!field.autocompleteComponent">
31
- <mat-option *ngFor="let option of filteredOption | async" [value]="option">
32
- {{field.property ? option[field.property] : option}}
33
- </mat-option>
34
- </ng-container>
35
-
36
- <ng-container *ngIf="field.autocompleteComponent">
37
- <mat-option *ngFor="let option of filteredOption | async" [value]="option">
38
- <ng-container klesComponent [component]="field.autocompleteComponent" [value]="option" [field]="field">
39
- </ng-container>
40
- </mat-option>
41
- </ng-container>
33
+ @if (!field.autocompleteComponent) {
34
+ @for (option of filteredOption | async; track option) {
35
+ <mat-option [value]="option">
36
+ {{field.property ? option[field.property] : option}}
37
+ </mat-option>
38
+ }
39
+ }
40
+ @else {
41
+ @for (option of filteredOption | async; track option) {
42
+ <mat-option [value]="option">
43
+ <ng-container klesComponent [component]="field.autocompleteComponent" [value]="option" [field]="field">
44
+ </ng-container>
45
+ </mat-option>
46
+ }
47
+ }
42
48
  </mat-autocomplete>
43
- </ng-container>
44
-
45
- <ng-template #notAutoComplete>
49
+ }
50
+ @else {
46
51
  <input matInput matTooltip="{{field.tooltip}}" [attr.id]="field.id" [ngClass]="field.ngClass" [formControlName]="field.name" [placeholder]="field.placeholder | translate" [type]="field.inputType"
47
52
  [maxLength]="field.maxLength" [min]="field.min" [max]="field.max" [step]="field.step">
48
- </ng-template>
49
- <button *ngIf="!group.get(field.name).disabled" matSuffix mat-icon-button aria-label="Clear" type="button"
50
- (click)="group.controls[field.name].reset();">
51
- <mat-icon>close</mat-icon>
52
- </button>
53
+ }
54
+
55
+ @if (!group.get(field.name).disabled) {
56
+ <button matSuffix mat-icon-button aria-label="Clear" type="button" (click)="group.controls[field.name].reset();">
57
+ <mat-icon>close</mat-icon>
58
+ </button>
59
+ }
53
60
 
54
- <mat-spinner matSuffix mode="indeterminate" *ngIf="isPending()" diameter="17"></mat-spinner>
61
+ @if (isPending()) {
62
+ <mat-spinner matSuffix mode="indeterminate" diameter="17"></mat-spinner>
63
+ }
55
64
 
56
- <ng-container *ngFor="let validation of field.validations;" ngProjectAs="mat-error">
57
- <mat-error *ngIf="group.get(field.name).hasError(validation.name)">{{validation.message | translate}}</mat-error>
58
- </ng-container>
59
- <ng-container *ngFor="let validation of field.asyncValidations;" ngProjectAs="mat-error">
60
- <mat-error *ngIf="group.get(field.name).hasError(validation.name)">{{validation.message | translate}}</mat-error>
61
- </ng-container>
65
+ @for (validation of field.validations; track validation.name) {
66
+ <ng-container ngProjectAs="mat-error">
67
+ @if (group.get(field.name).hasError(validation.name)) {
68
+ <mat-error>{{validation.message | translate}}</mat-error>
69
+ }
70
+ </ng-container>
71
+ }
72
+ @for (validation of field.asyncValidations; track validation.name) {
73
+ <ng-container ngProjectAs="mat-error">
74
+ @if (group.get(field.name).hasError(validation.name)) {
75
+ <mat-error>{{validation.message | translate}}</mat-error>
76
+ }
77
+ </ng-container>
78
+ }
62
79
  </mat-form-field>
63
- `, isInline: true, styles: ["mat-form-field{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.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: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i6.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i7.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i8.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i9.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i10.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple", "hideSingleSelectionIndicator"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i10.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i11.KlesComponentDirective, selector: "[klesComponent]", inputs: ["component", "value", "field"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i12.TranslatePipe, name: "translate" }] }); }
80
+ `, isInline: true, styles: ["mat-form-field{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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: i3.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.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: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatLabel, selector: "mat-label" }, { kind: "directive", type: i6.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i6.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i7.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i8.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i9.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i10.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i10.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i11.KlesComponentDirective, selector: "[klesComponent]", inputs: ["component", "value", "field"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i12.TranslatePipe, name: "translate" }] }); }
64
81
  }
65
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: KlesFormInputClearableComponent, decorators: [{
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: KlesFormInputClearableComponent, decorators: [{
66
83
  type: Component,
67
84
  args: [{ selector: 'kles-form-input-clearable', template: `
68
85
  <mat-form-field [formGroup]="group" [color]="field.color" class="form-element">
69
- <mat-label *ngIf="field.label">{{field.label}}</mat-label>
70
- <ng-container *ngIf="field.autocomplete; else notAutoComplete">
86
+ @if (field.label) {
87
+ <mat-label>{{field.label}}</mat-label>
88
+ }
89
+
90
+ @if (field.autocomplete) {
71
91
  <input matInput matTooltip="{{field.tooltip}}" [attr.id]="field.id" [ngClass]="field.ngClass" [formControlName]="field.name" [placeholder]="field.placeholder | translate" [type]="field.inputType"
72
92
  [maxLength]="field.maxLength" [min]="field.min" [max]="field.max" [step]="field.step"
73
93
  [matAutocomplete]="auto">
74
94
 
75
95
  <mat-autocomplete #auto="matAutocomplete" [displayWith]="displayFn.bind(this)" [panelWidth]="this.field.panelWidth">
76
- <ng-container *ngIf="!field.autocompleteComponent">
77
- <mat-option *ngFor="let option of filteredOption | async" [value]="option">
78
- {{field.property ? option[field.property] : option}}
79
- </mat-option>
80
- </ng-container>
81
-
82
- <ng-container *ngIf="field.autocompleteComponent">
83
- <mat-option *ngFor="let option of filteredOption | async" [value]="option">
84
- <ng-container klesComponent [component]="field.autocompleteComponent" [value]="option" [field]="field">
85
- </ng-container>
86
- </mat-option>
87
- </ng-container>
96
+ @if (!field.autocompleteComponent) {
97
+ @for (option of filteredOption | async; track option) {
98
+ <mat-option [value]="option">
99
+ {{field.property ? option[field.property] : option}}
100
+ </mat-option>
101
+ }
102
+ }
103
+ @else {
104
+ @for (option of filteredOption | async; track option) {
105
+ <mat-option [value]="option">
106
+ <ng-container klesComponent [component]="field.autocompleteComponent" [value]="option" [field]="field">
107
+ </ng-container>
108
+ </mat-option>
109
+ }
110
+ }
88
111
  </mat-autocomplete>
89
- </ng-container>
90
-
91
- <ng-template #notAutoComplete>
112
+ }
113
+ @else {
92
114
  <input matInput matTooltip="{{field.tooltip}}" [attr.id]="field.id" [ngClass]="field.ngClass" [formControlName]="field.name" [placeholder]="field.placeholder | translate" [type]="field.inputType"
93
115
  [maxLength]="field.maxLength" [min]="field.min" [max]="field.max" [step]="field.step">
94
- </ng-template>
95
- <button *ngIf="!group.get(field.name).disabled" matSuffix mat-icon-button aria-label="Clear" type="button"
96
- (click)="group.controls[field.name].reset();">
97
- <mat-icon>close</mat-icon>
98
- </button>
116
+ }
117
+
118
+ @if (!group.get(field.name).disabled) {
119
+ <button matSuffix mat-icon-button aria-label="Clear" type="button" (click)="group.controls[field.name].reset();">
120
+ <mat-icon>close</mat-icon>
121
+ </button>
122
+ }
99
123
 
100
- <mat-spinner matSuffix mode="indeterminate" *ngIf="isPending()" diameter="17"></mat-spinner>
124
+ @if (isPending()) {
125
+ <mat-spinner matSuffix mode="indeterminate" diameter="17"></mat-spinner>
126
+ }
101
127
 
102
- <ng-container *ngFor="let validation of field.validations;" ngProjectAs="mat-error">
103
- <mat-error *ngIf="group.get(field.name).hasError(validation.name)">{{validation.message | translate}}</mat-error>
104
- </ng-container>
105
- <ng-container *ngFor="let validation of field.asyncValidations;" ngProjectAs="mat-error">
106
- <mat-error *ngIf="group.get(field.name).hasError(validation.name)">{{validation.message | translate}}</mat-error>
107
- </ng-container>
128
+ @for (validation of field.validations; track validation.name) {
129
+ <ng-container ngProjectAs="mat-error">
130
+ @if (group.get(field.name).hasError(validation.name)) {
131
+ <mat-error>{{validation.message | translate}}</mat-error>
132
+ }
133
+ </ng-container>
134
+ }
135
+ @for (validation of field.asyncValidations; track validation.name) {
136
+ <ng-container ngProjectAs="mat-error">
137
+ @if (group.get(field.name).hasError(validation.name)) {
138
+ <mat-error>{{validation.message | translate}}</mat-error>
139
+ }
140
+ </ng-container>
141
+ }
108
142
  </mat-form-field>
109
143
  `, styles: ["mat-form-field{width:100%}\n"] }]
110
144
  }] });
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY2xlYXJhYmxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tsZXMtbWF0ZXJpYWwtZHluYW1pY2Zvcm1zL3NyYy9saWIvZmllbGRzL2lucHV0LmNsZWFyYWJsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFVLFNBQVMsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFpRDNELE1BQU0sT0FBTywrQkFBZ0MsU0FBUSxzQkFBc0I7SUFFdkUsV0FBVztRQUNQLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4QixDQUFDOzhHQUpRLCtCQUErQjtrR0FBL0IsK0JBQStCLHdGQTdDOUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQTBDVDs7MkZBR1EsK0JBQStCO2tCQS9DM0MsU0FBUzsrQkFDSSwyQkFBMkIsWUFDM0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQTBDVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9uSW5pdCwgQ29tcG9uZW50LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEtsZXNGb3JtSW5wdXRDb21wb25lbnQgfSBmcm9tICcuL2lucHV0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAna2xlcy1mb3JtLWlucHV0LWNsZWFyYWJsZScsXG4gICAgdGVtcGxhdGU6IGBcbiAgICA8bWF0LWZvcm0tZmllbGQgW2Zvcm1Hcm91cF09XCJncm91cFwiIFtjb2xvcl09XCJmaWVsZC5jb2xvclwiIGNsYXNzPVwiZm9ybS1lbGVtZW50XCI+XG4gICAgICAgIDxtYXQtbGFiZWwgKm5nSWY9XCJmaWVsZC5sYWJlbFwiPnt7ZmllbGQubGFiZWx9fTwvbWF0LWxhYmVsPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmllbGQuYXV0b2NvbXBsZXRlOyBlbHNlIG5vdEF1dG9Db21wbGV0ZVwiPlxuICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IG1hdFRvb2x0aXA9XCJ7e2ZpZWxkLnRvb2x0aXB9fVwiIFthdHRyLmlkXT1cImZpZWxkLmlkXCIgW25nQ2xhc3NdPVwiZmllbGQubmdDbGFzc1wiIFtmb3JtQ29udHJvbE5hbWVdPVwiZmllbGQubmFtZVwiIFtwbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlciB8IHRyYW5zbGF0ZVwiIFt0eXBlXT1cImZpZWxkLmlucHV0VHlwZVwiXG4gICAgICAgICAgICBbbWF4TGVuZ3RoXT1cImZpZWxkLm1heExlbmd0aFwiIFttaW5dPVwiZmllbGQubWluXCIgW21heF09XCJmaWVsZC5tYXhcIiBbc3RlcF09XCJmaWVsZC5zdGVwXCJcbiAgICAgICAgICAgIFttYXRBdXRvY29tcGxldGVdPVwiYXV0b1wiPlxuXG4gICAgICAgICAgICA8bWF0LWF1dG9jb21wbGV0ZSAjYXV0bz1cIm1hdEF1dG9jb21wbGV0ZVwiIFtkaXNwbGF5V2l0aF09XCJkaXNwbGF5Rm4uYmluZCh0aGlzKVwiIFtwYW5lbFdpZHRoXT1cInRoaXMuZmllbGQucGFuZWxXaWR0aFwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhZmllbGQuYXV0b2NvbXBsZXRlQ29tcG9uZW50XCI+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgZmlsdGVyZWRPcHRpb24gfCBhc3luY1wiIFt2YWx1ZV09XCJvcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7ZmllbGQucHJvcGVydHkgPyBvcHRpb25bZmllbGQucHJvcGVydHldIDogb3B0aW9ufX1cbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZpZWxkLmF1dG9jb21wbGV0ZUNvbXBvbmVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIGZpbHRlcmVkT3B0aW9uIHwgYXN5bmNcIiBbdmFsdWVdPVwib3B0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIGtsZXNDb21wb25lbnQgW2NvbXBvbmVudF09XCJmaWVsZC5hdXRvY29tcGxldGVDb21wb25lbnRcIiBbdmFsdWVdPVwib3B0aW9uXCIgW2ZpZWxkXT1cImZpZWxkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC9tYXQtYXV0b2NvbXBsZXRlPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8bmctdGVtcGxhdGUgI25vdEF1dG9Db21wbGV0ZT5cbiAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBtYXRUb29sdGlwPVwie3tmaWVsZC50b29sdGlwfX1cIiBbYXR0ci5pZF09XCJmaWVsZC5pZFwiIFtuZ0NsYXNzXT1cImZpZWxkLm5nQ2xhc3NcIiBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLm5hbWVcIiBbcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXIgfCB0cmFuc2xhdGVcIiBbdHlwZV09XCJmaWVsZC5pbnB1dFR5cGVcIlxuICAgICAgICAgICAgW21heExlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIiBbbWluXT1cImZpZWxkLm1pblwiIFttYXhdPVwiZmllbGQubWF4XCIgW3N0ZXBdPVwiZmllbGQuc3RlcFwiPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8YnV0dG9uICpuZ0lmPVwiIWdyb3VwLmdldChmaWVsZC5uYW1lKS5kaXNhYmxlZFwiIG1hdFN1ZmZpeCBtYXQtaWNvbi1idXR0b24gYXJpYS1sYWJlbD1cIkNsZWFyXCIgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAoY2xpY2spPVwiZ3JvdXAuY29udHJvbHNbZmllbGQubmFtZV0ucmVzZXQoKTtcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgIDxtYXQtc3Bpbm5lciBtYXRTdWZmaXggbW9kZT1cImluZGV0ZXJtaW5hdGVcIiAqbmdJZj1cImlzUGVuZGluZygpXCIgZGlhbWV0ZXI9XCIxN1wiPjwvbWF0LXNwaW5uZXI+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdmFsaWRhdGlvbiBvZiBmaWVsZC52YWxpZGF0aW9ucztcIiBuZ1Byb2plY3RBcz1cIm1hdC1lcnJvclwiPlxuICAgICAgICAgICAgPG1hdC1lcnJvciAqbmdJZj1cImdyb3VwLmdldChmaWVsZC5uYW1lKS5oYXNFcnJvcih2YWxpZGF0aW9uLm5hbWUpXCI+e3t2YWxpZGF0aW9uLm1lc3NhZ2UgfCB0cmFuc2xhdGV9fTwvbWF0LWVycm9yPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdmFsaWRhdGlvbiBvZiBmaWVsZC5hc3luY1ZhbGlkYXRpb25zO1wiIG5nUHJvamVjdEFzPVwibWF0LWVycm9yXCI+XG4gICAgICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiZ3JvdXAuZ2V0KGZpZWxkLm5hbWUpLmhhc0Vycm9yKHZhbGlkYXRpb24ubmFtZSlcIj57e3ZhbGlkYXRpb24ubWVzc2FnZSB8IHRyYW5zbGF0ZX19PC9tYXQtZXJyb3I+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgYCxcbiAgICBzdHlsZXM6IFsnbWF0LWZvcm0tZmllbGQge3dpZHRoOiBjYWxjKDEwMCUpfSddXG59KVxuZXhwb3J0IGNsYXNzIEtsZXNGb3JtSW5wdXRDbGVhcmFibGVDb21wb25lbnQgZXh0ZW5kcyBLbGVzRm9ybUlucHV0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgfVxufVxuIl19
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY2xlYXJhYmxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tsZXMtbWF0ZXJpYWwtZHluYW1pY2Zvcm1zL3NyYy9saWIvZmllbGRzL2lucHV0LmNsZWFyYWJsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFVLFNBQVMsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7QUFrRTNELE1BQU0sT0FBTywrQkFBZ0MsU0FBUSxzQkFBc0I7SUFFdkUsV0FBVztRQUNQLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4QixDQUFDOzhHQUpRLCtCQUErQjtrR0FBL0IsK0JBQStCLHdGQTlEOUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBMkRUOzsyRkFHUSwrQkFBK0I7a0JBaEUzQyxTQUFTOytCQUNJLDJCQUEyQixZQUMzQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0EyRFQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPbkluaXQsIENvbXBvbmVudCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBLbGVzRm9ybUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9pbnB1dC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2tsZXMtZm9ybS1pbnB1dC1jbGVhcmFibGUnLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgPG1hdC1mb3JtLWZpZWxkIFtmb3JtR3JvdXBdPVwiZ3JvdXBcIiBbY29sb3JdPVwiZmllbGQuY29sb3JcIiBjbGFzcz1cImZvcm0tZWxlbWVudFwiPlxuICAgICAgICBAaWYgKGZpZWxkLmxhYmVsKSB7XG4gICAgICAgICAgICA8bWF0LWxhYmVsPnt7ZmllbGQubGFiZWx9fTwvbWF0LWxhYmVsPlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChmaWVsZC5hdXRvY29tcGxldGUpIHtcbiAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBtYXRUb29sdGlwPVwie3tmaWVsZC50b29sdGlwfX1cIiBbYXR0ci5pZF09XCJmaWVsZC5pZFwiIFtuZ0NsYXNzXT1cImZpZWxkLm5nQ2xhc3NcIiBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLm5hbWVcIiBbcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXIgfCB0cmFuc2xhdGVcIiBbdHlwZV09XCJmaWVsZC5pbnB1dFR5cGVcIlxuICAgICAgICAgICAgW21heExlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIiBbbWluXT1cImZpZWxkLm1pblwiIFttYXhdPVwiZmllbGQubWF4XCIgW3N0ZXBdPVwiZmllbGQuc3RlcFwiXG4gICAgICAgICAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIj5cblxuICAgICAgICAgICAgPG1hdC1hdXRvY29tcGxldGUgI2F1dG89XCJtYXRBdXRvY29tcGxldGVcIiBbZGlzcGxheVdpdGhdPVwiZGlzcGxheUZuLmJpbmQodGhpcylcIiBbcGFuZWxXaWR0aF09XCJ0aGlzLmZpZWxkLnBhbmVsV2lkdGhcIj5cbiAgICAgICAgICAgICAgICBAaWYgKCFmaWVsZC5hdXRvY29tcGxldGVDb21wb25lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgQGZvciAob3B0aW9uIG9mIGZpbHRlcmVkT3B0aW9uIHwgYXN5bmM7IHRyYWNrIG9wdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cIm9wdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7ZmllbGQucHJvcGVydHkgPyBvcHRpb25bZmllbGQucHJvcGVydHldIDogb3B0aW9ufX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIEBmb3IgKG9wdGlvbiBvZiBmaWx0ZXJlZE9wdGlvbiB8IGFzeW5jOyB0cmFjayBvcHRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJvcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIGtsZXNDb21wb25lbnQgW2NvbXBvbmVudF09XCJmaWVsZC5hdXRvY29tcGxldGVDb21wb25lbnRcIiBbdmFsdWVdPVwib3B0aW9uXCIgW2ZpZWxkXT1cImZpZWxkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L21hdC1hdXRvY29tcGxldGU+XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IG1hdFRvb2x0aXA9XCJ7e2ZpZWxkLnRvb2x0aXB9fVwiIFthdHRyLmlkXT1cImZpZWxkLmlkXCIgW25nQ2xhc3NdPVwiZmllbGQubmdDbGFzc1wiIFtmb3JtQ29udHJvbE5hbWVdPVwiZmllbGQubmFtZVwiIFtwbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlciB8IHRyYW5zbGF0ZVwiIFt0eXBlXT1cImZpZWxkLmlucHV0VHlwZVwiXG4gICAgICAgICAgICBbbWF4TGVuZ3RoXT1cImZpZWxkLm1heExlbmd0aFwiIFttaW5dPVwiZmllbGQubWluXCIgW21heF09XCJmaWVsZC5tYXhcIiBbc3RlcF09XCJmaWVsZC5zdGVwXCI+XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKCFncm91cC5nZXQoZmllbGQubmFtZSkuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIDxidXR0b24gbWF0U3VmZml4IG1hdC1pY29uLWJ1dHRvbiBhcmlhLWxhYmVsPVwiQ2xlYXJcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImdyb3VwLmNvbnRyb2xzW2ZpZWxkLm5hbWVdLnJlc2V0KCk7XCI+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uPmNsb3NlPC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChpc1BlbmRpbmcoKSkge1xuICAgICAgICAgICAgPG1hdC1zcGlubmVyIG1hdFN1ZmZpeCBtb2RlPVwiaW5kZXRlcm1pbmF0ZVwiIGRpYW1ldGVyPVwiMTdcIj48L21hdC1zcGlubmVyPlxuICAgICAgICB9XG5cbiAgICAgICAgQGZvciAodmFsaWRhdGlvbiBvZiBmaWVsZC52YWxpZGF0aW9uczsgdHJhY2sgdmFsaWRhdGlvbi5uYW1lKSB7XG4gICAgICAgICAgICA8bmctY29udGFpbmVyIG5nUHJvamVjdEFzPVwibWF0LWVycm9yXCI+XG4gICAgICAgICAgICAgICAgQGlmIChncm91cC5nZXQoZmllbGQubmFtZSkuaGFzRXJyb3IodmFsaWRhdGlvbi5uYW1lKSkge1xuICAgICAgICAgICAgICAgICAgICA8bWF0LWVycm9yPnt7dmFsaWRhdGlvbi5tZXNzYWdlIHwgdHJhbnNsYXRlfX08L21hdC1lcnJvcj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgfVxuICAgICAgICBAZm9yICh2YWxpZGF0aW9uIG9mIGZpZWxkLmFzeW5jVmFsaWRhdGlvbnM7IHRyYWNrIHZhbGlkYXRpb24ubmFtZSkge1xuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBuZ1Byb2plY3RBcz1cIm1hdC1lcnJvclwiPlxuICAgICAgICAgICAgICAgIEBpZiAoZ3JvdXAuZ2V0KGZpZWxkLm5hbWUpLmhhc0Vycm9yKHZhbGlkYXRpb24ubmFtZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1lcnJvcj57e3ZhbGlkYXRpb24ubWVzc2FnZSB8IHRyYW5zbGF0ZX19PC9tYXQtZXJyb3I+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIH1cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgIGAsXG4gICAgc3R5bGVzOiBbJ21hdC1mb3JtLWZpZWxkIHt3aWR0aDogY2FsYygxMDAlKX0nXVxufSlcbmV4cG9ydCBjbGFzcyBLbGVzRm9ybUlucHV0Q2xlYXJhYmxlQ29tcG9uZW50IGV4dGVuZHMgS2xlc0Zvcm1JbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIH1cbn1cbiJdfQ==
@@ -70,99 +70,133 @@ let KlesFormInputComponent = class KlesFormInputComponent extends KlesFieldAbstr
70
70
  ngOnDestroy() {
71
71
  super.ngOnDestroy();
72
72
  }
73
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: KlesFormInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
74
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: KlesFormInputComponent, selector: "kles-form-input", usesInheritance: true, ngImport: i0, template: `
73
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: KlesFormInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
74
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.4", type: KlesFormInputComponent, selector: "kles-form-input", usesInheritance: true, ngImport: i0, template: `
75
75
  <mat-form-field [formGroup]="group" [color]="field.color" class="form-element">
76
- <mat-label *ngIf="field.label">{{field.label}}</mat-label>
77
- <ng-container *ngIf="field.autocomplete; else notAutoComplete">
76
+ @if (field.label) {
77
+ <mat-label>{{field.label}}</mat-label>
78
+ }
79
+
80
+ @if (field.autocomplete) {
78
81
  <input matInput matTooltip="{{field.tooltip}}" [attr.id]="field.id" [ngClass]="field.ngClass" [formControlName]="field.name" [placeholder]="field.placeholder | translate" [type]="field.inputType"
79
82
  [maxLength]="field.maxLength" [min]="field.min" [max]="field.max" [step]="field.step"
80
83
  [matAutocomplete]="auto">
81
84
 
82
85
  <mat-autocomplete #auto="matAutocomplete" [displayWith]="displayFn.bind(this)" [panelWidth]="this.field.panelWidth">
83
- <ng-container *ngIf="!field.autocompleteComponent">
84
- <mat-option *ngFor="let option of filteredOption | async" [value]="option">
85
- {{field.property ? option[field.property] : option}}
86
- </mat-option>
87
- </ng-container>
88
-
89
- <ng-container *ngIf="field.autocompleteComponent">
90
- <mat-option *ngFor="let option of filteredOption | async" [value]="option">
91
- <ng-container klesComponent [component]="field.autocompleteComponent" [value]="option" [field]="field">
92
- </ng-container>
93
- </mat-option>
94
- </ng-container>
86
+ @if (!field.autocompleteComponent) {
87
+ @for (option of filteredOption | async; track option) {
88
+ <mat-option [value]="option">
89
+ {{field.property ? option[field.property] : option}}
90
+ </mat-option>
91
+ }
92
+ }
93
+ @else {
94
+ @for (option of filteredOption | async; track option) {
95
+ <mat-option [value]="option">
96
+ <ng-container klesComponent [component]="field.autocompleteComponent" [value]="option" [field]="field">
97
+ </ng-container>
98
+ </mat-option>
99
+ }
100
+ }
95
101
  </mat-autocomplete>
96
- </ng-container>
97
-
98
- <ng-template #notAutoComplete>
102
+ }
103
+ @else {
99
104
  <input matInput matTooltip="{{field.tooltip}}" [attr.id]="field.id" [ngClass]="field.ngClass" [formControlName]="field.name" [placeholder]="field.placeholder | translate" [type]="field.inputType"
100
105
  [maxLength]="field.maxLength" [min]="field.min" [max]="field.max" [step]="field.step">
101
- </ng-template>
106
+ }
102
107
 
103
- <mat-spinner matSuffix mode="indeterminate" *ngIf="isPending()" diameter="17"></mat-spinner>
108
+ @if (isPending()) {
109
+ <mat-spinner matSuffix mode="indeterminate" diameter="17"></mat-spinner>
110
+ }
104
111
 
105
- <div matSuffix *ngIf="field.subComponents || field.clearable">
106
- <ng-content></ng-content>
107
- </div>
112
+ @if (field.subComponents || field.clearable) {
113
+ <div matSuffix>
114
+ <ng-content></ng-content>
115
+ </div>
116
+ }
108
117
 
109
- <ng-container *ngFor="let validation of field.validations;" ngProjectAs="mat-error">
110
- <mat-error *ngIf="group.get(field.name).hasError(validation.name)">{{validation.message | translate}}</mat-error>
111
- </ng-container>
112
- <ng-container *ngFor="let validation of field.asyncValidations;" ngProjectAs="mat-error">
113
- <mat-error *ngIf="group.get(field.name).hasError(validation.name)">{{validation.message | translate}}</mat-error>
114
- </ng-container>
118
+ @for (validation of field.validations; track validation.name) {
119
+ <ng-container ngProjectAs="mat-error">
120
+ @if (group.get(field.name).hasError(validation.name)) {
121
+ <mat-error>{{validation.message | translate}}</mat-error>
122
+ }
123
+ </ng-container>
124
+ }
125
+ @for (validation of field.asyncValidations; track validation.name) {
126
+ <ng-container ngProjectAs="mat-error">
127
+ @if (group.get(field.name).hasError(validation.name)) {
128
+ <mat-error>{{validation.message | translate}}</mat-error>
129
+ }
130
+ </ng-container>
131
+ }
115
132
  </mat-form-field>
116
- `, isInline: true, styles: ["mat-form-field{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { 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: "directive", type: i3.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: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i7.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i8.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple", "hideSingleSelectionIndicator"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i8.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i9.KlesComponentDirective, selector: "[klesComponent]", inputs: ["component", "value", "field"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }] }); }
133
+ `, isInline: true, styles: ["mat-form-field{width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { 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: "directive", type: i3.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: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i7.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i8.MatAutocomplete, selector: "mat-autocomplete", inputs: ["aria-label", "aria-labelledby", "displayWith", "autoActiveFirstOption", "autoSelectActiveOption", "requireSelection", "panelWidth", "disableRipple", "class", "hideSingleSelectionIndicator"], outputs: ["optionSelected", "opened", "closed", "optionActivated"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i8.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", inputs: ["matAutocomplete", "matAutocompletePosition", "matAutocompleteConnectedTo", "autocomplete", "matAutocompleteDisabled"], exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i9.KlesComponentDirective, selector: "[klesComponent]", inputs: ["component", "value", "field"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }] }); }
117
134
  };
118
135
  KlesFormInputComponent = __decorate([
119
136
  FieldMapper({ type: EnumType.input })
120
137
  ], KlesFormInputComponent);
121
138
  export { KlesFormInputComponent };
122
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: KlesFormInputComponent, decorators: [{
139
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: KlesFormInputComponent, decorators: [{
123
140
  type: Component,
124
141
  args: [{ selector: 'kles-form-input', template: `
125
142
  <mat-form-field [formGroup]="group" [color]="field.color" class="form-element">
126
- <mat-label *ngIf="field.label">{{field.label}}</mat-label>
127
- <ng-container *ngIf="field.autocomplete; else notAutoComplete">
143
+ @if (field.label) {
144
+ <mat-label>{{field.label}}</mat-label>
145
+ }
146
+
147
+ @if (field.autocomplete) {
128
148
  <input matInput matTooltip="{{field.tooltip}}" [attr.id]="field.id" [ngClass]="field.ngClass" [formControlName]="field.name" [placeholder]="field.placeholder | translate" [type]="field.inputType"
129
149
  [maxLength]="field.maxLength" [min]="field.min" [max]="field.max" [step]="field.step"
130
150
  [matAutocomplete]="auto">
131
151
 
132
152
  <mat-autocomplete #auto="matAutocomplete" [displayWith]="displayFn.bind(this)" [panelWidth]="this.field.panelWidth">
133
- <ng-container *ngIf="!field.autocompleteComponent">
134
- <mat-option *ngFor="let option of filteredOption | async" [value]="option">
135
- {{field.property ? option[field.property] : option}}
136
- </mat-option>
137
- </ng-container>
138
-
139
- <ng-container *ngIf="field.autocompleteComponent">
140
- <mat-option *ngFor="let option of filteredOption | async" [value]="option">
141
- <ng-container klesComponent [component]="field.autocompleteComponent" [value]="option" [field]="field">
142
- </ng-container>
143
- </mat-option>
144
- </ng-container>
153
+ @if (!field.autocompleteComponent) {
154
+ @for (option of filteredOption | async; track option) {
155
+ <mat-option [value]="option">
156
+ {{field.property ? option[field.property] : option}}
157
+ </mat-option>
158
+ }
159
+ }
160
+ @else {
161
+ @for (option of filteredOption | async; track option) {
162
+ <mat-option [value]="option">
163
+ <ng-container klesComponent [component]="field.autocompleteComponent" [value]="option" [field]="field">
164
+ </ng-container>
165
+ </mat-option>
166
+ }
167
+ }
145
168
  </mat-autocomplete>
146
- </ng-container>
147
-
148
- <ng-template #notAutoComplete>
169
+ }
170
+ @else {
149
171
  <input matInput matTooltip="{{field.tooltip}}" [attr.id]="field.id" [ngClass]="field.ngClass" [formControlName]="field.name" [placeholder]="field.placeholder | translate" [type]="field.inputType"
150
172
  [maxLength]="field.maxLength" [min]="field.min" [max]="field.max" [step]="field.step">
151
- </ng-template>
173
+ }
152
174
 
153
- <mat-spinner matSuffix mode="indeterminate" *ngIf="isPending()" diameter="17"></mat-spinner>
175
+ @if (isPending()) {
176
+ <mat-spinner matSuffix mode="indeterminate" diameter="17"></mat-spinner>
177
+ }
154
178
 
155
- <div matSuffix *ngIf="field.subComponents || field.clearable">
156
- <ng-content></ng-content>
157
- </div>
179
+ @if (field.subComponents || field.clearable) {
180
+ <div matSuffix>
181
+ <ng-content></ng-content>
182
+ </div>
183
+ }
158
184
 
159
- <ng-container *ngFor="let validation of field.validations;" ngProjectAs="mat-error">
160
- <mat-error *ngIf="group.get(field.name).hasError(validation.name)">{{validation.message | translate}}</mat-error>
161
- </ng-container>
162
- <ng-container *ngFor="let validation of field.asyncValidations;" ngProjectAs="mat-error">
163
- <mat-error *ngIf="group.get(field.name).hasError(validation.name)">{{validation.message | translate}}</mat-error>
164
- </ng-container>
185
+ @for (validation of field.validations; track validation.name) {
186
+ <ng-container ngProjectAs="mat-error">
187
+ @if (group.get(field.name).hasError(validation.name)) {
188
+ <mat-error>{{validation.message | translate}}</mat-error>
189
+ }
190
+ </ng-container>
191
+ }
192
+ @for (validation of field.asyncValidations; track validation.name) {
193
+ <ng-container ngProjectAs="mat-error">
194
+ @if (group.get(field.name).hasError(validation.name)) {
195
+ <mat-error>{{validation.message | translate}}</mat-error>
196
+ }
197
+ </ng-container>
198
+ }
165
199
  </mat-form-field>
166
200
  `, styles: ["mat-form-field{width:100%}\n"] }]
167
201
  }] });
168
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2xlcy1tYXRlcmlhbC1keW5hbWljZm9ybXMvc3JjL2xpYi9maWVsZHMvaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyRCxPQUFPLEVBQVUsU0FBUyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7Ozs7Ozs7Ozs7OztBQWtEekQsSUFBTSxzQkFBc0IsR0FBNUIsTUFBTSxzQkFBdUIsU0FBUSxpQkFBaUI7SUFLekQsUUFBUTtRQUVKLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLFlBQVksVUFBVSxFQUFFO1lBQzFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7U0FDdEM7YUFDSSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxZQUFZLFFBQVEsRUFBRTtZQUM3QyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDeEM7YUFDSTtZQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDMUM7UUFHRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFD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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBMENUOztBQUdRLHNCQUFzQjtJQWhEbEMsV0FBVyxDQUFDLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztHQWdEekIsc0JBQXNCLENBbUVsQztTQW5FWSxzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkEvQ2xDLFNBQVM7K0JBQ0ksaUJBQWlCLFlBQ2pCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0EwQ1QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBLbGVzRmllbGRBYnN0cmFjdCB9IGZyb20gJy4vZmllbGQuYWJzdHJhY3QnO1xuaW1wb3J0IHsgT25Jbml0LCBDb21wb25lbnQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHN0YXJ0V2l0aCwgbWFwLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBFbnVtVHlwZSB9IGZyb20gJy4uL2VudW1zL3R5cGUuZW51bSc7XG5pbXBvcnQgeyBGaWVsZE1hcHBlciB9IGZyb20gJy4uL2RlY29yYXRvcnMvY29tcG9uZW50LmRlY29yYXRvcic7XG5cbkBGaWVsZE1hcHBlcih7IHR5cGU6IEVudW1UeXBlLmlucHV0IH0pXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2tsZXMtZm9ybS1pbnB1dCcsXG4gICAgdGVtcGxhdGU6IGBcbiAgICA8bWF0LWZvcm0tZmllbGQgW2Zvcm1Hcm91cF09XCJncm91cFwiIFtjb2xvcl09XCJmaWVsZC5jb2xvclwiIGNsYXNzPVwiZm9ybS1lbGVtZW50XCI+XG4gICAgICAgIDxtYXQtbGFiZWwgKm5nSWY9XCJmaWVsZC5sYWJlbFwiPnt7ZmllbGQubGFiZWx9fTwvbWF0LWxhYmVsPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmllbGQuYXV0b2NvbXBsZXRlOyBlbHNlIG5vdEF1dG9Db21wbGV0ZVwiPlxuICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IG1hdFRvb2x0aXA9XCJ7e2ZpZWxkLnRvb2x0aXB9fVwiIFthdHRyLmlkXT1cImZpZWxkLmlkXCIgW25nQ2xhc3NdPVwiZmllbGQubmdDbGFzc1wiIFtmb3JtQ29udHJvbE5hbWVdPVwiZmllbGQubmFtZVwiIFtwbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlciB8IHRyYW5zbGF0ZVwiIFt0eXBlXT1cImZpZWxkLmlucHV0VHlwZVwiIFxuICAgICAgICAgICAgW21heExlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIiBbbWluXT1cImZpZWxkLm1pblwiIFttYXhdPVwiZmllbGQubWF4XCIgW3N0ZXBdPVwiZmllbGQuc3RlcFwiXG4gICAgICAgICAgICBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIj5cblxuICAgICAgICAgICAgPG1hdC1hdXRvY29tcGxldGUgI2F1dG89XCJtYXRBdXRvY29tcGxldGVcIiBbZGlzcGxheVdpdGhdPVwiZGlzcGxheUZuLmJpbmQodGhpcylcIiBbcGFuZWxXaWR0aF09XCJ0aGlzLmZpZWxkLnBhbmVsV2lkdGhcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWZpZWxkLmF1dG9jb21wbGV0ZUNvbXBvbmVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIGZpbHRlcmVkT3B0aW9uIHwgYXN5bmNcIiBbdmFsdWVdPVwib3B0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7e2ZpZWxkLnByb3BlcnR5ID8gb3B0aW9uW2ZpZWxkLnByb3BlcnR5XSA6IG9wdGlvbn19XG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmaWVsZC5hdXRvY29tcGxldGVDb21wb25lbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBmaWx0ZXJlZE9wdGlvbiB8IGFzeW5jXCIgW3ZhbHVlXT1cIm9wdGlvblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBrbGVzQ29tcG9uZW50IFtjb21wb25lbnRdPVwiZmllbGQuYXV0b2NvbXBsZXRlQ29tcG9uZW50XCIgW3ZhbHVlXT1cIm9wdGlvblwiIFtmaWVsZF09XCJmaWVsZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvbWF0LWF1dG9jb21wbGV0ZT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNub3RBdXRvQ29tcGxldGU+XG4gICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgbWF0VG9vbHRpcD1cInt7ZmllbGQudG9vbHRpcH19XCIgW2F0dHIuaWRdPVwiZmllbGQuaWRcIiBbbmdDbGFzc109XCJmaWVsZC5uZ0NsYXNzXCIgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5uYW1lXCIgW3BsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyIHwgdHJhbnNsYXRlXCIgW3R5cGVdPVwiZmllbGQuaW5wdXRUeXBlXCJcbiAgICAgICAgICAgIFttYXhMZW5ndGhdPVwiZmllbGQubWF4TGVuZ3RoXCIgW21pbl09XCJmaWVsZC5taW5cIiBbbWF4XT1cImZpZWxkLm1heFwiIFtzdGVwXT1cImZpZWxkLnN0ZXBcIj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICA8bWF0LXNwaW5uZXIgbWF0U3VmZml4IG1vZGU9XCJpbmRldGVybWluYXRlXCIgKm5nSWY9XCJpc1BlbmRpbmcoKVwiIGRpYW1ldGVyPVwiMTdcIj48L21hdC1zcGlubmVyPlxuXG4gICAgICAgIDxkaXYgbWF0U3VmZml4ICpuZ0lmPVwiZmllbGQuc3ViQ29tcG9uZW50cyB8fCBmaWVsZC5jbGVhcmFibGVcIj5cbiAgICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdmFsaWRhdGlvbiBvZiBmaWVsZC52YWxpZGF0aW9ucztcIiBuZ1Byb2plY3RBcz1cIm1hdC1lcnJvclwiPlxuICAgICAgICAgICAgPG1hdC1lcnJvciAqbmdJZj1cImdyb3VwLmdldChmaWVsZC5uYW1lKS5oYXNFcnJvcih2YWxpZGF0aW9uLm5hbWUpXCI+e3t2YWxpZGF0aW9uLm1lc3NhZ2UgfCB0cmFuc2xhdGV9fTwvbWF0LWVycm9yPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdmFsaWRhdGlvbiBvZiBmaWVsZC5hc3luY1ZhbGlkYXRpb25zO1wiIG5nUHJvamVjdEFzPVwibWF0LWVycm9yXCI+XG4gICAgICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwiZ3JvdXAuZ2V0KGZpZWxkLm5hbWUpLmhhc0Vycm9yKHZhbGlkYXRpb24ubmFtZSlcIj57e3ZhbGlkYXRpb24ubWVzc2FnZSB8IHRyYW5zbGF0ZX19PC9tYXQtZXJyb3I+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgYCxcbiAgICBzdHlsZXM6IFsnbWF0LWZvcm0tZmllbGQge3dpZHRoOiBjYWxjKDEwMCUpfSddXG59KVxuZXhwb3J0IGNsYXNzIEtsZXNGb3JtSW5wdXRDb21wb25lbnQgZXh0ZW5kcyBLbGVzRmllbGRBYnN0cmFjdCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAgIGZpbHRlcmVkT3B0aW9uOiBPYnNlcnZhYmxlPGFueVtdPjtcbiAgICBvcHRpb25zJDogT2JzZXJ2YWJsZTxhbnlbXT47XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcblxuICAgICAgICBpZiAodGhpcy5maWVsZC5vcHRpb25zIGluc3RhbmNlb2YgT2JzZXJ2YWJsZSkge1xuICAgICAgICAgICAgdGhpcy5vcHRpb25zJCA9IHRoaXMuZmllbGQub3B0aW9ucztcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICh0aGlzLmZpZWxkLm9wdGlvbnMgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xuICAgICAgICAgICAgdGhpcy5vcHRpb25zJCA9IHRoaXMuZmllbGQub3B0aW9ucygpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vcHRpb25zJCA9IG9mKHRoaXMuZmllbGQub3B0aW9ucyk7XG4gICAgICAgIH1cblxuXG4gICAgICAgIHRoaXMuZmlsdGVyZWRPcHRpb24gPSB0aGlzLmdyb3VwLmdldCh0aGlzLmZpZWxkLm5hbWUpLnZhbHVlQ2hhbmdlc1xuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgc3RhcnRXaXRoKCcnKSxcbiAgICAgICAgICAgICAgICAvLyBtYXAoZGF0YSA9PiBkYXRhID8gdGhpcy5maWx0ZXJEYXRhKGRhdGEpIDogdGhpcy5maWVsZC5vcHRpb25zLnNsaWNlKCkpXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKGRhdGEgPT4gZGF0YSA/IHRoaXMuZmlsdGVyRGF0YShkYXRhKSA6IHRoaXMub3B0aW9ucyQpXG4gICAgICAgICAgICApO1xuICAgICAgICBpZiAoIXRoaXMuZmllbGQubWF4TGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmZpZWxkLm1heExlbmd0aCA9IDUyNDI4ODsgLy8gTWF4IGRlZmF1bHQgaW5wdXQgVzNDXG4gICAgICAgIH1cbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICB9XG5cbiAgICBpc1BlbmRpbmcoKSB7XG4gICAgICAgIHJldHVybiAodGhpcy5ncm91cC5jb250cm9sc1t0aGlzLmZpZWxkLm5hbWVdLnBlbmRpbmcgfHwgdGhpcy5maWVsZC5wZW5kaW5nKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZpbHRlckRhdGEodmFsdWU6IGFueSk6IE9ic2VydmFibGU8YW55W10+IHtcbiAgICAgICAgbGV0IGZpbHRlclZhbHVlO1xuXG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh2YWx1ZSkgPT09ICdbb2JqZWN0IFN0cmluZ10nKSB7XG4gICAgICAgICAgICBmaWx0ZXJWYWx1ZSA9IHZhbHVlLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBmaWx0ZXJWYWx1ZSA9IHZhbHVlW3RoaXMuZmllbGQucHJvcGVydHldLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5maWVsZC5wcm9wZXJ0eSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucyRcbiAgICAgICAgICAgICAgICAucGlwZShtYXAob3B0aW9ucyA9PiBvcHRpb25zLmZpbHRlcihvcHRpb24gPT4gb3B0aW9uW3RoaXMuZmllbGQucHJvcGVydHldLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihmaWx0ZXJWYWx1ZSkgPT09IDApKSk7XG4gICAgICAgICAgICAvLyByZXR1cm4gdGhpcy5maWVsZC5vcHRpb25zXG4gICAgICAgICAgICAvLyAgICAgLmZpbHRlcihkYXRhID0+IGRhdGFbdGhpcy5maWVsZC5wcm9wZXJ0eV0udG9Mb3dlckNhc2UoKS5pbmRleE9mKGZpbHRlclZhbHVlKSA9PT0gMCk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gcmV0dXJuIHRoaXMuZmllbGQub3B0aW9ucy5maWx0ZXIoZGF0YSA9PiBkYXRhLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihmaWx0ZXJWYWx1ZSkgPT09IDApO1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zJC5waXBlKG1hcChvcHRpb25zID0+IG9wdGlvbnMuZmlsdGVyKG9wdGlvbiA9PiBvcHRpb24udG9Mb3dlckNhc2UoKS5pbmRleE9mKGZpbHRlclZhbHVlKSA9PT0gMCkpKTtcbiAgICB9XG5cbiAgICBkaXNwbGF5Rm4odmFsdWU6IGFueSkge1xuICAgICAgICBpZiAodGhpcy5maWVsZC5kaXNwbGF5V2l0aCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZmllbGQuZGlzcGxheVdpdGgodmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKHZhbHVlICYmIHRoaXMuZmllbGQgJiYgdGhpcy5maWVsZC5wcm9wZXJ0eSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB2YWx1ZVt0aGlzLmZpZWxkLnByb3BlcnR5XSA/IHZhbHVlW3RoaXMuZmllbGQucHJvcGVydHldIDogJyc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUgPyB2YWx1ZSA6ICcnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgfVxufVxuIl19
202
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2xlcy1tYXRlcmlhbC1keW5hbWljZm9ybXMvc3JjL2xpYi9maWVsZHMvaW5wdXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNyRCxPQUFPLEVBQVUsU0FBUyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7Ozs7Ozs7Ozs7OztBQW1FekQsSUFBTSxzQkFBc0IsR0FBNUIsTUFBTSxzQkFBdUIsU0FBUSxpQkFBaUI7SUFLekQsUUFBUTtRQUVKLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLFlBQVksVUFBVSxFQUFFO1lBQzFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUM7U0FDdEM7YUFDSSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxZQUFZLFFBQVEsRUFBRTtZQUM3QyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDeEM7YUFDSTtZQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDMUM7UUFHRCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFD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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0EyRFQ7O0FBR1Esc0JBQXNCO0lBakVsQyxXQUFXLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO0dBaUV6QixzQkFBc0IsQ0FtRWxDOzsyRkFuRVksc0JBQXNCO2tCQWhFbEMsU0FBUzsrQkFDSSxpQkFBaUIsWUFDakI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBMkRUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgS2xlc0ZpZWxkQWJzdHJhY3QgfSBmcm9tICcuL2ZpZWxkLmFic3RyYWN0JztcbmltcG9ydCB7IE9uSW5pdCwgQ29tcG9uZW50LCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBzdGFydFdpdGgsIG1hcCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRW51bVR5cGUgfSBmcm9tICcuLi9lbnVtcy90eXBlLmVudW0nO1xuaW1wb3J0IHsgRmllbGRNYXBwZXIgfSBmcm9tICcuLi9kZWNvcmF0b3JzL2NvbXBvbmVudC5kZWNvcmF0b3InO1xuXG5ARmllbGRNYXBwZXIoeyB0eXBlOiBFbnVtVHlwZS5pbnB1dCB9KVxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdrbGVzLWZvcm0taW5wdXQnLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgPG1hdC1mb3JtLWZpZWxkIFtmb3JtR3JvdXBdPVwiZ3JvdXBcIiBbY29sb3JdPVwiZmllbGQuY29sb3JcIiBjbGFzcz1cImZvcm0tZWxlbWVudFwiPlxuICAgICAgICBAaWYgKGZpZWxkLmxhYmVsKSB7XG4gICAgICAgICAgICA8bWF0LWxhYmVsPnt7ZmllbGQubGFiZWx9fTwvbWF0LWxhYmVsPlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChmaWVsZC5hdXRvY29tcGxldGUpIHtcbiAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBtYXRUb29sdGlwPVwie3tmaWVsZC50b29sdGlwfX1cIiBbYXR0ci5pZF09XCJmaWVsZC5pZFwiIFtuZ0NsYXNzXT1cImZpZWxkLm5nQ2xhc3NcIiBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLm5hbWVcIiBbcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXIgfCB0cmFuc2xhdGVcIiBbdHlwZV09XCJmaWVsZC5pbnB1dFR5cGVcIiBcbiAgICAgICAgICAgIFttYXhMZW5ndGhdPVwiZmllbGQubWF4TGVuZ3RoXCIgW21pbl09XCJmaWVsZC5taW5cIiBbbWF4XT1cImZpZWxkLm1heFwiIFtzdGVwXT1cImZpZWxkLnN0ZXBcIlxuICAgICAgICAgICAgW21hdEF1dG9jb21wbGV0ZV09XCJhdXRvXCI+XG5cbiAgICAgICAgICAgIDxtYXQtYXV0b2NvbXBsZXRlICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCIgW2Rpc3BsYXlXaXRoXT1cImRpc3BsYXlGbi5iaW5kKHRoaXMpXCIgW3BhbmVsV2lkdGhdPVwidGhpcy5maWVsZC5wYW5lbFdpZHRoXCI+XG4gICAgICAgICAgICAgICAgQGlmICghZmllbGQuYXV0b2NvbXBsZXRlQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIEBmb3IgKG9wdGlvbiBvZiBmaWx0ZXJlZE9wdGlvbiB8IGFzeW5jOyB0cmFjayBvcHRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJvcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2ZpZWxkLnByb3BlcnR5ID8gb3B0aW9uW2ZpZWxkLnByb3BlcnR5XSA6IG9wdGlvbn19XG4gICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBAZm9yIChvcHRpb24gb2YgZmlsdGVyZWRPcHRpb24gfCBhc3luYzsgdHJhY2sgb3B0aW9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwib3B0aW9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBrbGVzQ29tcG9uZW50IFtjb21wb25lbnRdPVwiZmllbGQuYXV0b2NvbXBsZXRlQ29tcG9uZW50XCIgW3ZhbHVlXT1cIm9wdGlvblwiIFtmaWVsZF09XCJmaWVsZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9tYXQtYXV0b2NvbXBsZXRlPlxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dCBtYXRUb29sdGlwPVwie3tmaWVsZC50b29sdGlwfX1cIiBbYXR0ci5pZF09XCJmaWVsZC5pZFwiIFtuZ0NsYXNzXT1cImZpZWxkLm5nQ2xhc3NcIiBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLm5hbWVcIiBbcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXIgfCB0cmFuc2xhdGVcIiBbdHlwZV09XCJmaWVsZC5pbnB1dFR5cGVcIlxuICAgICAgICAgICAgW21heExlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIiBbbWluXT1cImZpZWxkLm1pblwiIFttYXhdPVwiZmllbGQubWF4XCIgW3N0ZXBdPVwiZmllbGQuc3RlcFwiPlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChpc1BlbmRpbmcoKSkge1xuICAgICAgICAgICAgPG1hdC1zcGlubmVyIG1hdFN1ZmZpeCBtb2RlPVwiaW5kZXRlcm1pbmF0ZVwiIGRpYW1ldGVyPVwiMTdcIj48L21hdC1zcGlubmVyPlxuICAgICAgICB9XG5cbiAgICAgICAgQGlmIChmaWVsZC5zdWJDb21wb25lbnRzIHx8IGZpZWxkLmNsZWFyYWJsZSkge1xuICAgICAgICAgICAgPGRpdiBtYXRTdWZmaXg+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cblxuICAgICAgICBAZm9yICh2YWxpZGF0aW9uIG9mIGZpZWxkLnZhbGlkYXRpb25zOyB0cmFjayB2YWxpZGF0aW9uLm5hbWUpIHtcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgbmdQcm9qZWN0QXM9XCJtYXQtZXJyb3JcIj5cbiAgICAgICAgICAgICAgICBAaWYgKGdyb3VwLmdldChmaWVsZC5uYW1lKS5oYXNFcnJvcih2YWxpZGF0aW9uLm5hbWUpKSB7XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtZXJyb3I+e3t2YWxpZGF0aW9uLm1lc3NhZ2UgfCB0cmFuc2xhdGV9fTwvbWF0LWVycm9yPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICB9XG4gICAgICAgIEBmb3IgKHZhbGlkYXRpb24gb2YgZmllbGQuYXN5bmNWYWxpZGF0aW9uczsgdHJhY2sgdmFsaWRhdGlvbi5uYW1lKSB7XG4gICAgICAgICAgICA8bmctY29udGFpbmVyIG5nUHJvamVjdEFzPVwibWF0LWVycm9yXCI+XG4gICAgICAgICAgICAgICAgQGlmIChncm91cC5nZXQoZmllbGQubmFtZSkuaGFzRXJyb3IodmFsaWRhdGlvbi5uYW1lKSkge1xuICAgICAgICAgICAgICAgICAgICA8bWF0LWVycm9yPnt7dmFsaWRhdGlvbi5tZXNzYWdlIHwgdHJhbnNsYXRlfX08L21hdC1lcnJvcj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgfVxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgYCxcbiAgICBzdHlsZXM6IFsnbWF0LWZvcm0tZmllbGQge3dpZHRoOiBjYWxjKDEwMCUpfSddXG59KVxuZXhwb3J0IGNsYXNzIEtsZXNGb3JtSW5wdXRDb21wb25lbnQgZXh0ZW5kcyBLbGVzRmllbGRBYnN0cmFjdCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAgIGZpbHRlcmVkT3B0aW9uOiBPYnNlcnZhYmxlPGFueVtdPjtcbiAgICBvcHRpb25zJDogT2JzZXJ2YWJsZTxhbnlbXT47XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcblxuICAgICAgICBpZiAodGhpcy5maWVsZC5vcHRpb25zIGluc3RhbmNlb2YgT2JzZXJ2YWJsZSkge1xuICAgICAgICAgICAgdGhpcy5vcHRpb25zJCA9IHRoaXMuZmllbGQub3B0aW9ucztcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICh0aGlzLmZpZWxkLm9wdGlvbnMgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xuICAgICAgICAgICAgdGhpcy5vcHRpb25zJCA9IHRoaXMuZmllbGQub3B0aW9ucygpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vcHRpb25zJCA9IG9mKHRoaXMuZmllbGQub3B0aW9ucyk7XG4gICAgICAgIH1cblxuXG4gICAgICAgIHRoaXMuZmlsdGVyZWRPcHRpb24gPSB0aGlzLmdyb3VwLmdldCh0aGlzLmZpZWxkLm5hbWUpLnZhbHVlQ2hhbmdlc1xuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgc3RhcnRXaXRoKCcnKSxcbiAgICAgICAgICAgICAgICAvLyBtYXAoZGF0YSA9PiBkYXRhID8gdGhpcy5maWx0ZXJEYXRhKGRhdGEpIDogdGhpcy5maWVsZC5vcHRpb25zLnNsaWNlKCkpXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKGRhdGEgPT4gZGF0YSA/IHRoaXMuZmlsdGVyRGF0YShkYXRhKSA6IHRoaXMub3B0aW9ucyQpXG4gICAgICAgICAgICApO1xuICAgICAgICBpZiAoIXRoaXMuZmllbGQubWF4TGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLmZpZWxkLm1heExlbmd0aCA9IDUyNDI4ODsgLy8gTWF4IGRlZmF1bHQgaW5wdXQgVzNDXG4gICAgICAgIH1cbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICB9XG5cbiAgICBpc1BlbmRpbmcoKSB7XG4gICAgICAgIHJldHVybiAodGhpcy5ncm91cC5jb250cm9sc1t0aGlzLmZpZWxkLm5hbWVdLnBlbmRpbmcgfHwgdGhpcy5maWVsZC5wZW5kaW5nKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZpbHRlckRhdGEodmFsdWU6IGFueSk6IE9ic2VydmFibGU8YW55W10+IHtcbiAgICAgICAgbGV0IGZpbHRlclZhbHVlO1xuXG4gICAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnICYmIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh2YWx1ZSkgPT09ICdbb2JqZWN0IFN0cmluZ10nKSB7XG4gICAgICAgICAgICBmaWx0ZXJWYWx1ZSA9IHZhbHVlLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBmaWx0ZXJWYWx1ZSA9IHZhbHVlW3RoaXMuZmllbGQucHJvcGVydHldLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5maWVsZC5wcm9wZXJ0eSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucyRcbiAgICAgICAgICAgICAgICAucGlwZShtYXAob3B0aW9ucyA9PiBvcHRpb25zLmZpbHRlcihvcHRpb24gPT4gb3B0aW9uW3RoaXMuZmllbGQucHJvcGVydHldLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihmaWx0ZXJWYWx1ZSkgPT09IDApKSk7XG4gICAgICAgICAgICAvLyByZXR1cm4gdGhpcy5maWVsZC5vcHRpb25zXG4gICAgICAgICAgICAvLyAgICAgLmZpbHRlcihkYXRhID0+IGRhdGFbdGhpcy5maWVsZC5wcm9wZXJ0eV0udG9Mb3dlckNhc2UoKS5pbmRleE9mKGZpbHRlclZhbHVlKSA9PT0gMCk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gcmV0dXJuIHRoaXMuZmllbGQub3B0aW9ucy5maWx0ZXIoZGF0YSA9PiBkYXRhLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihmaWx0ZXJWYWx1ZSkgPT09IDApO1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zJC5waXBlKG1hcChvcHRpb25zID0+IG9wdGlvbnMuZmlsdGVyKG9wdGlvbiA9PiBvcHRpb24udG9Mb3dlckNhc2UoKS5pbmRleE9mKGZpbHRlclZhbHVlKSA9PT0gMCkpKTtcbiAgICB9XG5cbiAgICBkaXNwbGF5Rm4odmFsdWU6IGFueSkge1xuICAgICAgICBpZiAodGhpcy5maWVsZC5kaXNwbGF5V2l0aCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZmllbGQuZGlzcGxheVdpdGgodmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKHZhbHVlICYmIHRoaXMuZmllbGQgJiYgdGhpcy5maWVsZC5wcm9wZXJ0eSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB2YWx1ZVt0aGlzLmZpZWxkLnByb3BlcnR5XSA/IHZhbHVlW3RoaXMuZmllbGQucHJvcGVydHldIDogJyc7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUgPyB2YWx1ZSA6ICcnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgfVxufVxuIl19
@@ -14,16 +14,16 @@ export class KlesFormLabelComponent extends KlesFieldAbstract {
14
14
  ngOnDestroy() {
15
15
  super.ngOnDestroy();
16
16
  }
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: KlesFormLabelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
18
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: KlesFormLabelComponent, selector: "kles-form-label", usesInheritance: true, ngImport: i0, template: `
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: KlesFormLabelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
18
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: KlesFormLabelComponent, selector: "kles-form-label", usesInheritance: true, ngImport: i0, template: `
19
19
  <div [formGroup]="group" >
20
20
  <input matInput matTooltip="{{field.tooltip}}" [attr.id]="field.id"
21
21
  [ngClass]="field.ngClass"
22
22
  [ngStyle]="{'color':'inherit'}" [formControlName]="field.name" [placeholder]="field.placeholder | translate" [type]="field.inputType">
23
23
  </div>
24
- `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { 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: "directive", type: i3.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: i4.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] }); }
24
+ `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { 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: "directive", type: i3.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: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] }); }
25
25
  }
26
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: KlesFormLabelComponent, decorators: [{
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: KlesFormLabelComponent, decorators: [{
27
27
  type: Component,
28
28
  args: [{
29
29
  selector: "kles-form-label",
@@ -9,15 +9,15 @@ let KlesFormLineBreakComponent = class KlesFormLineBreakComponent extends KlesFi
9
9
  ngOnDestroy() {
10
10
  super.ngOnDestroy();
11
11
  }
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: KlesFormLineBreakComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
13
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: KlesFormLineBreakComponent, selector: "kles-form-line-break", usesInheritance: true, ngImport: i0, template: ``, isInline: true, styles: [":host{flex-basis:100%;display:flex;height:0}\n"] }); }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: KlesFormLineBreakComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
13
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: KlesFormLineBreakComponent, selector: "kles-form-line-break", usesInheritance: true, ngImport: i0, template: ``, isInline: true, styles: [":host{flex-basis:100%;display:flex;height:0}\n"] }); }
14
14
  };
15
15
  KlesFormLineBreakComponent = __decorate([
16
16
  FieldMapper({ type: EnumType.lineBreak })
17
17
  ], KlesFormLineBreakComponent);
18
18
  export { KlesFormLineBreakComponent };
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: KlesFormLineBreakComponent, decorators: [{
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: KlesFormLineBreakComponent, decorators: [{
20
20
  type: Component,
21
21
  args: [{ selector: 'kles-form-line-break', template: ``, styles: [":host{flex-basis:100%;display:flex;height:0}\n"] }]
22
22
  }] });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1icmVhay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbGVzLW1hdGVyaWFsLWR5bmFtaWNmb3Jtcy9zcmMvbGliL2ZpZWxkcy9saW5lLWJyZWFrLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFjOUMsSUFBTSwwQkFBMEIsR0FBaEMsTUFBTSwwQkFBMkIsU0FBUSxpQkFBaUI7SUFDN0QsUUFBUSxLQUFLLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDaEMsV0FBVztRQUNQLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4QixDQUFDOzhHQUpRLDBCQUEwQjtrR0FBMUIsMEJBQTBCLG1GQVR6QixFQUFFOztBQVNILDBCQUEwQjtJQVp0QyxXQUFXLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO0dBWTdCLDBCQUEwQixDQUt0QztTQUxZLDBCQUEwQjsyRkFBMUIsMEJBQTBCO2tCQVh0QyxTQUFTOytCQUNJLHNCQUFzQixZQUN0QixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRNYXBwZXIgfSBmcm9tICcuLi9kZWNvcmF0b3JzL2NvbXBvbmVudC5kZWNvcmF0b3InO1xuaW1wb3J0IHsgRW51bVR5cGUgfSBmcm9tICcuLi9lbnVtcy90eXBlLmVudW0nO1xuaW1wb3J0IHsgS2xlc0ZpZWxkQWJzdHJhY3QgfSBmcm9tICcuL2ZpZWxkLmFic3RyYWN0JztcblxuQEZpZWxkTWFwcGVyKHsgdHlwZTogRW51bVR5cGUubGluZUJyZWFrIH0pXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2tsZXMtZm9ybS1saW5lLWJyZWFrJyxcbiAgICB0ZW1wbGF0ZTogYGAsXG4gICAgc3R5bGVzOiBbXG4gICAgICAgIGA6aG9zdHtcbiAgICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjA7XG4gICAgICAgICAgICAgICAgIH1gXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBLbGVzRm9ybUxpbmVCcmVha0NvbXBvbmVudCBleHRlbmRzIEtsZXNGaWVsZEFic3RyYWN0IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIG5nT25Jbml0KCkgeyBzdXBlci5uZ09uSW5pdCgpOyB9XG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgfVxufVxuIl19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1icmVhay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbGVzLW1hdGVyaWFsLWR5bmFtaWNmb3Jtcy9zcmMvbGliL2ZpZWxkcy9saW5lLWJyZWFrLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFjOUMsSUFBTSwwQkFBMEIsR0FBaEMsTUFBTSwwQkFBMkIsU0FBUSxpQkFBaUI7SUFDN0QsUUFBUSxLQUFLLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDaEMsV0FBVztRQUNQLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4QixDQUFDOzhHQUpRLDBCQUEwQjtrR0FBMUIsMEJBQTBCLG1GQVR6QixFQUFFOztBQVNILDBCQUEwQjtJQVp0QyxXQUFXLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDO0dBWTdCLDBCQUEwQixDQUt0Qzs7MkZBTFksMEJBQTBCO2tCQVh0QyxTQUFTOytCQUNJLHNCQUFzQixZQUN0QixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRNYXBwZXIgfSBmcm9tICcuLi9kZWNvcmF0b3JzL2NvbXBvbmVudC5kZWNvcmF0b3InO1xuaW1wb3J0IHsgRW51bVR5cGUgfSBmcm9tICcuLi9lbnVtcy90eXBlLmVudW0nO1xuaW1wb3J0IHsgS2xlc0ZpZWxkQWJzdHJhY3QgfSBmcm9tICcuL2ZpZWxkLmFic3RyYWN0JztcblxuQEZpZWxkTWFwcGVyKHsgdHlwZTogRW51bVR5cGUubGluZUJyZWFrIH0pXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2tsZXMtZm9ybS1saW5lLWJyZWFrJyxcbiAgICB0ZW1wbGF0ZTogYGAsXG4gICAgc3R5bGVzOiBbXG4gICAgICAgIGA6aG9zdHtcbiAgICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OjA7XG4gICAgICAgICAgICAgICAgIH1gXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBLbGVzRm9ybUxpbmVCcmVha0NvbXBvbmVudCBleHRlbmRzIEtsZXNGaWVsZEFic3RyYWN0IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIG5nT25Jbml0KCkgeyBzdXBlci5uZ09uSW5pdCgpOyB9XG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgfVxufVxuIl19
@@ -10,14 +10,14 @@ export class KlesFormLinkComponent extends KlesFieldAbstract {
10
10
  ngOnDestroy() {
11
11
  super.ngOnDestroy();
12
12
  }
13
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: KlesFormLinkComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
14
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: KlesFormLinkComponent, selector: "kles-form-link", usesInheritance: true, ngImport: i0, template: `
13
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: KlesFormLinkComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
14
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.4", type: KlesFormLinkComponent, selector: "kles-form-link", usesInheritance: true, ngImport: i0, template: `
15
15
  <a [href]="group.controls[field.name].value" matTooltip="{{field.tooltip}}" [attr.id]="field.id" [ngClass]="field.ngClass">
16
16
  {{field.label}}
17
17
  </a>
18
- `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] }); }
18
+ `, isInline: true, dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
19
19
  }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: KlesFormLinkComponent, decorators: [{
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: KlesFormLinkComponent, decorators: [{
21
21
  type: Component,
22
22
  args: [{
23
23
  selector: 'kles-form-link',