@apipass/inputs 1.0.1 → 1.0.8

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 (66) hide show
  1. package/ace-editor/component.d.ts +52 -52
  2. package/ace-editor/directive.d.ts +39 -39
  3. package/custom-select/custom-select-item.d.ts +5 -5
  4. package/custom-select/custom-select.component.d.ts +51 -51
  5. package/debounce-model-directive/debouceInput.directive.d.ts +14 -14
  6. package/esm2022/ace-editor/component.mjs +200 -0
  7. package/esm2022/ace-editor/directive.mjs +153 -0
  8. package/{esm2020 → esm2022}/apipass-inputs.mjs +4 -4
  9. package/esm2022/custom-select/custom-select-item.mjs +9 -0
  10. package/esm2022/custom-select/custom-select.component.mjs +213 -0
  11. package/esm2022/debounce-model-directive/debouceInput.directive.mjs +34 -0
  12. package/esm2022/field/field.component.mjs +56 -0
  13. package/esm2022/input-avatar/input-avatar.component.mjs +91 -0
  14. package/esm2022/input-boolean/input-boolean.component.mjs +54 -0
  15. package/esm2022/input-file/input-file.component.mjs +82 -0
  16. package/esm2022/input-number/input-number.component.mjs +60 -0
  17. package/esm2022/input-password/input-password.component.mjs +94 -0
  18. package/esm2022/input-text/input-text.component.mjs +60 -0
  19. package/esm2022/inputs.module.mjs +150 -0
  20. package/esm2022/public-api.mjs +17 -0
  21. package/esm2022/select-box/mat-select-infinite-scroll.directive.mjs +91 -0
  22. package/esm2022/select-box/select-box.component.mjs +226 -0
  23. package/esm2022/select-enum/select-enum.component.mjs +47 -0
  24. package/esm2022/select-interpolation/select-interpolation.component.mjs +177 -0
  25. package/esm2022/value-acessor-base.mjs +30 -0
  26. package/fesm2022/apipass-inputs.mjs +1711 -0
  27. package/fesm2022/apipass-inputs.mjs.map +1 -0
  28. package/field/field.component.d.ts +15 -15
  29. package/index.d.ts +5 -5
  30. package/input-avatar/input-avatar.component.d.ts +29 -29
  31. package/input-boolean/input-boolean.component.d.ts +15 -15
  32. package/input-file/input-file.component.d.ts +31 -31
  33. package/input-number/input-number.component.d.ts +17 -17
  34. package/input-password/input-password.component.d.ts +28 -29
  35. package/input-text/input-text.component.d.ts +17 -17
  36. package/inputs.module.d.ts +36 -36
  37. package/package.json +18 -24
  38. package/public-api.d.ts +16 -16
  39. package/select-box/mat-select-infinite-scroll.directive.d.ts +26 -26
  40. package/select-box/select-box.component.d.ts +57 -57
  41. package/select-enum/select-enum.component.d.ts +12 -12
  42. package/select-interpolation/select-interpolation.component.d.ts +44 -44
  43. package/value-acessor-base.d.ts +13 -13
  44. package/esm2020/ace-editor/component.mjs +0 -199
  45. package/esm2020/ace-editor/directive.mjs +0 -150
  46. package/esm2020/custom-select/custom-select-item.mjs +0 -7
  47. package/esm2020/custom-select/custom-select.component.mjs +0 -204
  48. package/esm2020/debounce-model-directive/debouceInput.directive.mjs +0 -31
  49. package/esm2020/field/field.component.mjs +0 -51
  50. package/esm2020/input-avatar/input-avatar.component.mjs +0 -92
  51. package/esm2020/input-boolean/input-boolean.component.mjs +0 -56
  52. package/esm2020/input-file/input-file.component.mjs +0 -82
  53. package/esm2020/input-number/input-number.component.mjs +0 -62
  54. package/esm2020/input-password/input-password.component.mjs +0 -96
  55. package/esm2020/input-text/input-text.component.mjs +0 -62
  56. package/esm2020/inputs.module.mjs +0 -149
  57. package/esm2020/public-api.mjs +0 -17
  58. package/esm2020/select-box/mat-select-infinite-scroll.directive.mjs +0 -86
  59. package/esm2020/select-box/select-box.component.mjs +0 -220
  60. package/esm2020/select-enum/select-enum.component.mjs +0 -48
  61. package/esm2020/select-interpolation/select-interpolation.component.mjs +0 -169
  62. package/esm2020/value-acessor-base.mjs +0 -31
  63. package/fesm2015/apipass-inputs.mjs +0 -1704
  64. package/fesm2015/apipass-inputs.mjs.map +0 -1
  65. package/fesm2020/apipass-inputs.mjs +0 -1697
  66. package/fesm2020/apipass-inputs.mjs.map +0 -1
@@ -0,0 +1,177 @@
1
+ import { Component, ElementRef, EventEmitter, forwardRef, HostBinding, HostListener, Input, Output, ViewChild } from '@angular/core';
2
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
+ import { CustomSelectItem } from '../custom-select/custom-select-item';
4
+ import { ScrollStrategyOptions } from '@angular/cdk/overlay';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/cdk/overlay";
7
+ import * as i2 from "@angular/common";
8
+ import * as i3 from "@angular/forms";
9
+ import * as i4 from "@angular/material/form-field";
10
+ import * as i5 from "@angular/material/input";
11
+ import * as i6 from "ngx-drag-drop";
12
+ import * as i7 from "@apipass/pipes";
13
+ class SelectInterpolationComponent {
14
+ sso;
15
+ innerValue;
16
+ edited = false;
17
+ scrollStrategy;
18
+ _triggerRect;
19
+ selectedItem;
20
+ selectedItemLabel = '';
21
+ searchText = '';
22
+ opened = false;
23
+ disabled = false;
24
+ items = [];
25
+ placeHolder = 'Select';
26
+ findPlaceHolder = 'Find item';
27
+ onSelect = new EventEmitter();
28
+ trigger;
29
+ input;
30
+ constructor(sso) {
31
+ this.sso = sso;
32
+ this.scrollStrategy = this.sso.block();
33
+ }
34
+ tabindex = '0';
35
+ onBlur(target) {
36
+ if (this.selectedItemLabel) {
37
+ if (this.edited) {
38
+ this.writeValue(this.selectedItemLabel);
39
+ this.selectedItem = new CustomSelectItem(this.selectedItemLabel, this.selectedItemLabel);
40
+ this.onSelect.next(this.selectedItem);
41
+ }
42
+ }
43
+ else {
44
+ this.writeValue(undefined);
45
+ this.onSelect.next(undefined);
46
+ }
47
+ if (target?.relatedTarget?.classList.contains('search-input-item')) {
48
+ return;
49
+ }
50
+ this.setTriggerRect();
51
+ this.opened = false;
52
+ }
53
+ ngAfterViewInit() {
54
+ setTimeout(() => {
55
+ this.setInitialState();
56
+ this.setTriggerRect();
57
+ }, 300);
58
+ }
59
+ setInitialState() {
60
+ setTimeout(() => {
61
+ if (this.value && this.items) {
62
+ const selectedItem = this.items.find(item => item.id === this.value);
63
+ this.selectedItemLabel = selectedItem?.text || this.value;
64
+ }
65
+ });
66
+ }
67
+ setTriggerRect() {
68
+ setTimeout(() => {
69
+ this._triggerRect = this.trigger?.nativeElement.getBoundingClientRect();
70
+ });
71
+ }
72
+ selectItem(item) {
73
+ this.opened = false;
74
+ this.edited = false;
75
+ this.selectedItem = item;
76
+ this.value = item.id;
77
+ this.selectedItemLabel = item.text;
78
+ this.searchText = '';
79
+ this.onSelect.next(item);
80
+ }
81
+ keyPress() {
82
+ this.setTriggerRect();
83
+ this.opened = false;
84
+ this.edited = true;
85
+ this.searchText = '';
86
+ }
87
+ clicked() {
88
+ this.setTriggerRect();
89
+ this.opened = true;
90
+ this.searchText = '';
91
+ }
92
+ onTouchedCallback = () => {
93
+ };
94
+ onChangeCallback = () => {
95
+ };
96
+ get value() {
97
+ return this.innerValue;
98
+ }
99
+ set value(value) {
100
+ this.innerValue = value;
101
+ this.onChangeCallback(value);
102
+ }
103
+ writeValue(value) {
104
+ if (value !== this.value) {
105
+ this.value = value;
106
+ }
107
+ }
108
+ registerOnChange(fn) {
109
+ this.onChangeCallback = fn;
110
+ }
111
+ registerOnTouched(fn) {
112
+ this.onTouchedCallback = fn;
113
+ }
114
+ setDisabledState(isDisabled) {
115
+ this.disabled = isDisabled;
116
+ }
117
+ arrowClick(event) {
118
+ event.stopPropagation();
119
+ this.setTriggerRect();
120
+ if (this.opened) {
121
+ this.opened = false;
122
+ }
123
+ else {
124
+ this.opened = true;
125
+ this.searchText = '';
126
+ this.input?.nativeElement.focus();
127
+ }
128
+ }
129
+ onDrop($event) {
130
+ this.searchText = '';
131
+ if (!this.value) {
132
+ this.value = '';
133
+ }
134
+ this.edited = true;
135
+ this.value += `{{${$event.data}}}`;
136
+ this.selectedItemLabel = this.value;
137
+ this.onBlur(undefined);
138
+ }
139
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: SelectInterpolationComponent, deps: [{ token: i1.ScrollStrategyOptions }], target: i0.ɵɵFactoryTarget.Component });
140
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: SelectInterpolationComponent, selector: "select-interpolation", inputs: { disabled: "disabled", items: "items", placeHolder: "placeHolder", findPlaceHolder: "findPlaceHolder" }, outputs: { onSelect: "onSelect" }, host: { listeners: { "blur": "onBlur($event.target)" }, properties: { "attr.tabindex": "this.tabindex" } }, providers: [{
141
+ provide: NG_VALUE_ACCESSOR,
142
+ useExisting: forwardRef(() => SelectInterpolationComponent),
143
+ multi: true
144
+ }], viewQueries: [{ propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true }, { propertyName: "input", first: true, predicate: ["input"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"custom-select-input\" #trigger>\r\n <mat-form-field cdkOverlayOrigin #origin=\"cdkOverlayOrigin\" class=\"custom-select-component\" [ngClass]=\"{'select-open' : opened}\" appearance=\"fill\" autocomplete=\"off\">\r\n <input matInput #input\r\n [placeholder]=\"placeHolder\"\r\n (focus)=\"opened = true\"\r\n (blur)=\"onBlur($event)\"\r\n [(ngModel)]=\"selectedItemLabel\"\r\n [ngModelOptions]=\"{standalone: true}\"\r\n [disabled]=\"disabled\"\r\n (keyup)=keyPress()\r\n (click)=\"clicked()\"\r\n dndDropzone\r\n (dndDrop)=\"onDrop($event)\"\r\n autocomplete=\"off\"\r\n />\r\n <span class=\"open-icon\" (click)=\"arrowClick($event)\">\r\n <i class=\"fas\" [ngClass]=\"{'fa-caret-down' : !opened, 'fa-caret-up' : opened}\"></i>\r\n </span>\r\n </mat-form-field>\r\n</div>\r\n<div class=\"custom-select-component\">\r\n\r\n <ng-template cdkConnectedOverlay\r\n [cdkConnectedOverlayPanelClass]=\"'custom-select-overlay-panel'\"\r\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\r\n [cdkConnectedOverlayOrigin]=\"origin\"\r\n [cdkConnectedOverlayOpen]=\"opened\"\r\n [cdkConnectedOverlayMinWidth]=\"_triggerRect?.width!\">\r\n <ul class=\"ul-ac\">\r\n <li class=\"li-search search-input-item\">\r\n <mat-form-field class=\"apipass-input-text search-input-item\" appearance=\"fill\">\r\n <input matInput class=\"search-input-item\"\r\n [placeholder]=\"findPlaceHolder\"\r\n [(ngModel)]=\"searchText\"\r\n (blur)=\"onBlur($event)\"\r\n aria-autocomplete=\"none\"\r\n autocomplete=\"off\"\r\n />\r\n </mat-form-field>\r\n </li>\r\n\r\n <li class=\"clickable\" *ngFor=\"let i of items | selectFilter:searchText:'text'\"\r\n (click)=\"selectItem(i)\"\r\n (mousedown)=\"selectItem(i)\">\r\n {{i.text}}\r\n </li>\r\n\r\n </ul>\r\n </ng-template>\r\n</div>\r\n", styles: ["::ng-deep .custom-select-overlay-panel,.custom-select-input,.custom-select-component{cursor:pointer}::ng-deep .custom-select-overlay-panel input,.custom-select-input input,.custom-select-component input{background:#FFF!important;height:48px}::ng-deep .custom-select-overlay-panel .ul-ac,.custom-select-input .ul-ac,.custom-select-component .ul-ac{max-height:16rem;overflow:auto;background:#fff;border:1px solid #ccc;box-sizing:border-box;list-style:none;padding:0;width:100%;position:relative;margin-top:-1px}::ng-deep .custom-select-overlay-panel .ul-ac li,.custom-select-input .ul-ac li,.custom-select-component .ul-ac li{text-align:left;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:10px;font-size:12px}::ng-deep .custom-select-overlay-panel .ul-ac li:hover,.custom-select-input .ul-ac li:hover,.custom-select-component .ul-ac li:hover{background:#bbbcbc}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex,.custom-select-input .ul-ac li .mat-form-field-flex,.custom-select-component .ul-ac li .mat-form-field-flex{height:37px!important}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex input,.custom-select-input .ul-ac li .mat-form-field-flex input,.custom-select-component .ul-ac li .mat-form-field-flex input{height:auto}::ng-deep .custom-select-overlay-panel .selected,.custom-select-input .selected,.custom-select-component .selected{background-color:#898a8a!important}::ng-deep .custom-select-overlay-panel .selected .fa,.custom-select-input .selected .fa,.custom-select-component .selected .fa{color:#fff!important}::ng-deep .custom-select-overlay-panel .remove-icon i,.custom-select-input .remove-icon i,.custom-select-component .remove-icon i{color:red;margin-right:10px}::ng-deep .custom-select-overlay-panel .open-icon,.custom-select-input .open-icon,.custom-select-component .open-icon{cursor:pointer}::ng-deep .custom-select-overlay-panel .open-icon i,.custom-select-input .open-icon i,.custom-select-component .open-icon i{color:#0000008a}::ng-deep .custom-select-overlay-panel .li-search,.custom-select-input .li-search,.custom-select-component .li-search{cursor:default!important;border-bottom:1px solid #CCC!important}::ng-deep .custom-select-overlay-panel .li-search:hover,.custom-select-input .li-search:hover,.custom-select-component .li-search:hover{background:#FFF!important}::ng-deep .custom-select-overlay-panel .select-open .mat-form-field-flex,.custom-select-input .select-open .mat-form-field-flex,.custom-select-component .select-open .mat-form-field-flex{border-radius:6px 6px 0 0!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { 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: "directive", type: i6.DndDropzoneDirective, selector: "[dndDropzone]", inputs: ["dndDropzone", "dndEffectAllowed", "dndAllowExternal", "dndHorizontal", "dndDragoverClass", "dndDropzoneDisabledClass", "dndDisableIf", "dndDisableDropIf"], outputs: ["dndDragover", "dndDrop"] }, { kind: "directive", type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i1.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "pipe", type: i7.SelectFilterPipe, name: "selectFilter" }] });
145
+ }
146
+ export { SelectInterpolationComponent };
147
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: SelectInterpolationComponent, decorators: [{
148
+ type: Component,
149
+ args: [{ selector: 'select-interpolation', providers: [{
150
+ provide: NG_VALUE_ACCESSOR,
151
+ useExisting: forwardRef(() => SelectInterpolationComponent),
152
+ multi: true
153
+ }], template: "<div class=\"custom-select-input\" #trigger>\r\n <mat-form-field cdkOverlayOrigin #origin=\"cdkOverlayOrigin\" class=\"custom-select-component\" [ngClass]=\"{'select-open' : opened}\" appearance=\"fill\" autocomplete=\"off\">\r\n <input matInput #input\r\n [placeholder]=\"placeHolder\"\r\n (focus)=\"opened = true\"\r\n (blur)=\"onBlur($event)\"\r\n [(ngModel)]=\"selectedItemLabel\"\r\n [ngModelOptions]=\"{standalone: true}\"\r\n [disabled]=\"disabled\"\r\n (keyup)=keyPress()\r\n (click)=\"clicked()\"\r\n dndDropzone\r\n (dndDrop)=\"onDrop($event)\"\r\n autocomplete=\"off\"\r\n />\r\n <span class=\"open-icon\" (click)=\"arrowClick($event)\">\r\n <i class=\"fas\" [ngClass]=\"{'fa-caret-down' : !opened, 'fa-caret-up' : opened}\"></i>\r\n </span>\r\n </mat-form-field>\r\n</div>\r\n<div class=\"custom-select-component\">\r\n\r\n <ng-template cdkConnectedOverlay\r\n [cdkConnectedOverlayPanelClass]=\"'custom-select-overlay-panel'\"\r\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\r\n [cdkConnectedOverlayOrigin]=\"origin\"\r\n [cdkConnectedOverlayOpen]=\"opened\"\r\n [cdkConnectedOverlayMinWidth]=\"_triggerRect?.width!\">\r\n <ul class=\"ul-ac\">\r\n <li class=\"li-search search-input-item\">\r\n <mat-form-field class=\"apipass-input-text search-input-item\" appearance=\"fill\">\r\n <input matInput class=\"search-input-item\"\r\n [placeholder]=\"findPlaceHolder\"\r\n [(ngModel)]=\"searchText\"\r\n (blur)=\"onBlur($event)\"\r\n aria-autocomplete=\"none\"\r\n autocomplete=\"off\"\r\n />\r\n </mat-form-field>\r\n </li>\r\n\r\n <li class=\"clickable\" *ngFor=\"let i of items | selectFilter:searchText:'text'\"\r\n (click)=\"selectItem(i)\"\r\n (mousedown)=\"selectItem(i)\">\r\n {{i.text}}\r\n </li>\r\n\r\n </ul>\r\n </ng-template>\r\n</div>\r\n", styles: ["::ng-deep .custom-select-overlay-panel,.custom-select-input,.custom-select-component{cursor:pointer}::ng-deep .custom-select-overlay-panel input,.custom-select-input input,.custom-select-component input{background:#FFF!important;height:48px}::ng-deep .custom-select-overlay-panel .ul-ac,.custom-select-input .ul-ac,.custom-select-component .ul-ac{max-height:16rem;overflow:auto;background:#fff;border:1px solid #ccc;box-sizing:border-box;list-style:none;padding:0;width:100%;position:relative;margin-top:-1px}::ng-deep .custom-select-overlay-panel .ul-ac li,.custom-select-input .ul-ac li,.custom-select-component .ul-ac li{text-align:left;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:10px;font-size:12px}::ng-deep .custom-select-overlay-panel .ul-ac li:hover,.custom-select-input .ul-ac li:hover,.custom-select-component .ul-ac li:hover{background:#bbbcbc}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex,.custom-select-input .ul-ac li .mat-form-field-flex,.custom-select-component .ul-ac li .mat-form-field-flex{height:37px!important}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex input,.custom-select-input .ul-ac li .mat-form-field-flex input,.custom-select-component .ul-ac li .mat-form-field-flex input{height:auto}::ng-deep .custom-select-overlay-panel .selected,.custom-select-input .selected,.custom-select-component .selected{background-color:#898a8a!important}::ng-deep .custom-select-overlay-panel .selected .fa,.custom-select-input .selected .fa,.custom-select-component .selected .fa{color:#fff!important}::ng-deep .custom-select-overlay-panel .remove-icon i,.custom-select-input .remove-icon i,.custom-select-component .remove-icon i{color:red;margin-right:10px}::ng-deep .custom-select-overlay-panel .open-icon,.custom-select-input .open-icon,.custom-select-component .open-icon{cursor:pointer}::ng-deep .custom-select-overlay-panel .open-icon i,.custom-select-input .open-icon i,.custom-select-component .open-icon i{color:#0000008a}::ng-deep .custom-select-overlay-panel .li-search,.custom-select-input .li-search,.custom-select-component .li-search{cursor:default!important;border-bottom:1px solid #CCC!important}::ng-deep .custom-select-overlay-panel .li-search:hover,.custom-select-input .li-search:hover,.custom-select-component .li-search:hover{background:#FFF!important}::ng-deep .custom-select-overlay-panel .select-open .mat-form-field-flex,.custom-select-input .select-open .mat-form-field-flex,.custom-select-component .select-open .mat-form-field-flex{border-radius:6px 6px 0 0!important}\n"] }]
154
+ }], ctorParameters: function () { return [{ type: i1.ScrollStrategyOptions }]; }, propDecorators: { disabled: [{
155
+ type: Input
156
+ }], items: [{
157
+ type: Input
158
+ }], placeHolder: [{
159
+ type: Input
160
+ }], findPlaceHolder: [{
161
+ type: Input
162
+ }], onSelect: [{
163
+ type: Output
164
+ }], trigger: [{
165
+ type: ViewChild,
166
+ args: ['trigger']
167
+ }], input: [{
168
+ type: ViewChild,
169
+ args: ['input', { read: ElementRef }]
170
+ }], tabindex: [{
171
+ type: HostBinding,
172
+ args: ['attr.tabindex']
173
+ }], onBlur: [{
174
+ type: HostListener,
175
+ args: ['blur', ['$event.target']]
176
+ }] } });
177
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWludGVycG9sYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy9zZWxlY3QtaW50ZXJwb2xhdGlvbi9zZWxlY3QtaW50ZXJwb2xhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL3NlbGVjdC1pbnRlcnBvbGF0aW9uL3NlbGVjdC1pbnRlcnBvbGF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDeEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDdEUsT0FBTyxFQUFrQixxQkFBcUIsRUFBRSxNQUFNLHNCQUFzQixDQUFBOzs7Ozs7Ozs7QUFFNUUsTUFVYSw0QkFBNEI7SUF3QlQ7SUF2QnRCLFVBQVUsQ0FBSztJQUNmLE1BQU0sR0FBRyxLQUFLLENBQUE7SUFFZixjQUFjLENBQWdCO0lBQzlCLFlBQVksQ0FBd0I7SUFDcEMsWUFBWSxDQUE4QjtJQUMxQyxpQkFBaUIsR0FBRyxFQUFFLENBQUE7SUFDdEIsVUFBVSxHQUFHLEVBQUUsQ0FBQTtJQUNmLE1BQU0sR0FBRyxLQUFLLENBQUE7SUFFTCxRQUFRLEdBQUcsS0FBSyxDQUFBO0lBQ2hCLEtBQUssR0FBdUIsRUFBRSxDQUFBO0lBQzlCLFdBQVcsR0FBRyxRQUFRLENBQUE7SUFDdEIsZUFBZSxHQUFHLFdBQVcsQ0FBQTtJQUU1QixRQUFRLEdBQUcsSUFBSSxZQUFZLEVBQW9CLENBQUE7SUFHekQsT0FBTyxD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U0FBUzt1QkFBQyxTQUFTO2dCQUliLEtBQUs7c0JBRFgsU0FBUzt1QkFBQyxPQUFPLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQU9WLFFBQVE7c0JBQXJDLFdBQVc7dUJBQUMsZUFBZTtnQkFDYSxNQUFNO3NCQUE5QyxZQUFZO3VCQUFDLE1BQU0sRUFBRSxDQUFDLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgdHlwZSBBZnRlclZpZXdJbml0LFxyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBmb3J3YXJkUmVmLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXHJcbmltcG9ydCB7IEN1c3RvbVNlbGVjdEl0ZW0gfSBmcm9tICcuLi9jdXN0b20tc2VsZWN0L2N1c3RvbS1zZWxlY3QtaXRlbSdcclxuaW1wb3J0IHsgU2Nyb2xsU3RyYXRlZ3ksIFNjcm9sbFN0cmF0ZWd5T3B0aW9ucyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5J1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZWxlY3QtaW50ZXJwb2xhdGlvbicsXHJcbiAgdGVtcGxhdGVVcmw6ICdzZWxlY3QtaW50ZXJwb2xhdGlvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJ3NlbGVjdC1pbnRlcnBvbGF0aW9uLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbe1xyXG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTZWxlY3RJbnRlcnBvbGF0aW9uQ29tcG9uZW50KSxcclxuICAgIG11bHRpOiB0cnVlXHJcbiAgfV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFNlbGVjdEludGVycG9sYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgcHJpdmF0ZSBpbm5lclZhbHVlOiBhbnlcclxuICBwcml2YXRlIGVkaXRlZCA9IGZhbHNlXHJcblxyXG4gIHB1YmxpYyBzY3JvbGxTdHJhdGVneTogU2Nyb2xsU3RyYXRlZ3lcclxuICBwdWJsaWMgX3RyaWdnZXJSZWN0OiBDbGllbnRSZWN0IHwgdW5kZWZpbmVkXHJcbiAgcHVibGljIHNlbGVjdGVkSXRlbTogQ3VzdG9tU2VsZWN0SXRlbSB8IHVuZGVmaW5lZFxyXG4gIHB1YmxpYyBzZWxlY3RlZEl0ZW1MYWJlbCA9ICcnXHJcbiAgcHVibGljIHNlYXJjaFRleHQgPSAnJ1xyXG4gIHB1YmxpYyBvcGVuZWQgPSBmYWxzZVxyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZVxyXG4gIEBJbnB1dCgpIHB1YmxpYyBpdGVtczogQ3VzdG9tU2VsZWN0SXRlbVtdID0gW11cclxuICBASW5wdXQoKSBwdWJsaWMgcGxhY2VIb2xkZXIgPSAnU2VsZWN0J1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBmaW5kUGxhY2VIb2xkZXIgPSAnRmluZCBpdGVtJ1xyXG5cclxuICBAT3V0cHV0KCkgcHVibGljIG9uU2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxDdXN0b21TZWxlY3RJdGVtPigpXHJcblxyXG4gIEBWaWV3Q2hpbGQoJ3RyaWdnZXInKVxyXG4gIHB1YmxpYyB0cmlnZ2VyOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkXHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2lucHV0JywgeyByZWFkOiBFbGVtZW50UmVmIH0pXHJcbiAgcHVibGljIGlucHV0OiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkXHJcblxyXG4gIGNvbnN0cnVjdG9yIChwcml2YXRlIHJlYWRvbmx5IHNzbzogU2Nyb2xsU3RyYXRlZ3lPcHRpb25zKSB7XHJcbiAgICB0aGlzLnNjcm9sbFN0cmF0ZWd5ID0gdGhpcy5zc28uYmxvY2soKVxyXG4gIH1cclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnRhYmluZGV4JykgdGFiaW5kZXggPSAnMCdcclxuICBASG9zdExpc3RlbmVyKCdibHVyJywgWyckZXZlbnQudGFyZ2V0J10pIG9uQmx1ciAodGFyZ2V0OiBhbnkpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnNlbGVjdGVkSXRlbUxhYmVsKSB7XHJcbiAgICAgIGlmICh0aGlzLmVkaXRlZCkge1xyXG4gICAgICAgIHRoaXMud3JpdGVWYWx1ZSh0aGlzLnNlbGVjdGVkSXRlbUxhYmVsKVxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gbmV3IEN1c3RvbVNlbGVjdEl0ZW0odGhpcy5zZWxlY3RlZEl0ZW1MYWJlbCwgdGhpcy5zZWxlY3RlZEl0ZW1MYWJlbClcclxuICAgICAgICB0aGlzLm9uU2VsZWN0Lm5leHQodGhpcy5zZWxlY3RlZEl0ZW0pXHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMud3JpdGVWYWx1ZSh1bmRlZmluZWQpXHJcbiAgICAgIHRoaXMub25TZWxlY3QubmV4dCh1bmRlZmluZWQpXHJcbiAgICB9XHJcbiAgICBpZiAodGFyZ2V0Py5yZWxhdGVkVGFyZ2V0Py5jbGFzc0xpc3QuY29udGFpbnMoJ3NlYXJjaC1pbnB1dC1pdGVtJykpIHtcclxuICAgICAgcmV0dXJuXHJcbiAgICB9XHJcbiAgICB0aGlzLnNldFRyaWdnZXJSZWN0KClcclxuICAgIHRoaXMub3BlbmVkID0gZmFsc2VcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCAoKTogdm9pZCB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5zZXRJbml0aWFsU3RhdGUoKVxyXG4gICAgICB0aGlzLnNldFRyaWdnZXJSZWN0KClcclxuICAgIH0sIDMwMClcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRJbml0aWFsU3RhdGUgKCk6IHZvaWQge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLnZhbHVlICYmIHRoaXMuaXRlbXMpIHtcclxuICAgICAgICBjb25zdCBzZWxlY3RlZEl0ZW0gPSB0aGlzLml0ZW1zLmZpbmQoaXRlbSA9PiBpdGVtLmlkID09PSB0aGlzLnZhbHVlKVxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtTGFiZWwgPSBzZWxlY3RlZEl0ZW0/LnRleHQgfHwgdGhpcy52YWx1ZVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRUcmlnZ2VyUmVjdCAoKTogdm9pZCB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGhpcy5fdHJpZ2dlclJlY3QgPSB0aGlzLnRyaWdnZXI/Lm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KClcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2VsZWN0SXRlbSAoaXRlbTogQ3VzdG9tU2VsZWN0SXRlbSk6IHZvaWQge1xyXG4gICAgdGhpcy5vcGVuZWQgPSBmYWxzZVxyXG4gICAgdGhpcy5lZGl0ZWQgPSBmYWxzZVxyXG4gICAgdGhpcy5zZWxlY3RlZEl0ZW0gPSBpdGVtXHJcbiAgICB0aGlzLnZhbHVlID0gaXRlbS5pZFxyXG4gICAgdGhpcy5zZWxlY3RlZEl0ZW1MYWJlbCA9IGl0ZW0udGV4dFxyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gJydcclxuICAgIHRoaXMub25TZWxlY3QubmV4dChpdGVtKVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGtleVByZXNzICgpOiBhbnkge1xyXG4gICAgdGhpcy5zZXRUcmlnZ2VyUmVjdCgpXHJcbiAgICB0aGlzLm9wZW5lZCA9IGZhbHNlXHJcbiAgICB0aGlzLmVkaXRlZCA9IHRydWVcclxuICAgIHRoaXMuc2VhcmNoVGV4dCA9ICcnXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2xpY2tlZCAoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNldFRyaWdnZXJSZWN0KClcclxuICAgIHRoaXMub3BlbmVkID0gdHJ1ZVxyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gJydcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25Ub3VjaGVkQ2FsbGJhY2s6ICgpID0+IHZvaWQgPSAoKSA9PiB7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9uQ2hhbmdlQ2FsbGJhY2s6IChfOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB7XHJcbiAgfVxyXG5cclxuICBnZXQgdmFsdWUgKCk6IGFueSB7XHJcbiAgICByZXR1cm4gdGhpcy5pbm5lclZhbHVlXHJcbiAgfVxyXG5cclxuICBzZXQgdmFsdWUgKHZhbHVlOiBhbnkpIHtcclxuICAgIHRoaXMuaW5uZXJWYWx1ZSA9IHZhbHVlXHJcbiAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sodmFsdWUpXHJcbiAgfVxyXG5cclxuICB3cml0ZVZhbHVlICh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICBpZiAodmFsdWUgIT09IHRoaXMudmFsdWUpIHtcclxuICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlIChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sgPSBmblxyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQgKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2sgPSBmblxyXG4gIH1cclxuXHJcbiAgc2V0RGlzYWJsZWRTdGF0ZSAoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWRcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhcnJvd0NsaWNrIChldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKVxyXG4gICAgdGhpcy5zZXRUcmlnZ2VyUmVjdCgpXHJcbiAgICBpZiAodGhpcy5vcGVuZWQpIHtcclxuICAgICAgdGhpcy5vcGVuZWQgPSBmYWxzZVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5vcGVuZWQgPSB0cnVlXHJcbiAgICAgIHRoaXMuc2VhcmNoVGV4dCA9ICcnXHJcbiAgICAgIHRoaXMuaW5wdXQ/Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uRHJvcCAoJGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMuc2VhcmNoVGV4dCA9ICcnXHJcbiAgICBpZiAoIXRoaXMudmFsdWUpIHtcclxuICAgICAgdGhpcy52YWx1ZSA9ICcnXHJcbiAgICB9XHJcbiAgICB0aGlzLmVkaXRlZCA9IHRydWVcclxuICAgIHRoaXMudmFsdWUgKz0gYHt7JHskZXZlbnQuZGF0YX19fWBcclxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtTGFiZWwgPSB0aGlzLnZhbHVlXHJcbiAgICB0aGlzLm9uQmx1cih1bmRlZmluZWQpXHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjdXN0b20tc2VsZWN0LWlucHV0XCIgI3RyaWdnZXI+XHJcbiAgPG1hdC1mb3JtLWZpZWxkIGNka092ZXJsYXlPcmlnaW4gI29yaWdpbj1cImNka092ZXJsYXlPcmlnaW5cIiBjbGFzcz1cImN1c3RvbS1zZWxlY3QtY29tcG9uZW50XCIgW25nQ2xhc3NdPVwieydzZWxlY3Qtb3BlbicgOiBvcGVuZWR9XCIgYXBwZWFyYW5jZT1cImZpbGxcIiBhdXRvY29tcGxldGU9XCJvZmZcIj5cclxuICAgIDxpbnB1dCBtYXRJbnB1dCAjaW5wdXRcclxuICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2VIb2xkZXJcIlxyXG4gICAgICAgICAgIChmb2N1cyk9XCJvcGVuZWQgPSB0cnVlXCJcclxuICAgICAgICAgICAoYmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZEl0ZW1MYWJlbFwiXHJcbiAgICAgICAgICAgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOiB0cnVlfVwiXHJcbiAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICAgICAoa2V5dXApPWtleVByZXNzKClcclxuICAgICAgICAgICAoY2xpY2spPVwiY2xpY2tlZCgpXCJcclxuICAgICAgICAgICBkbmREcm9wem9uZVxyXG4gICAgICAgICAgIChkbmREcm9wKT1cIm9uRHJvcCgkZXZlbnQpXCJcclxuICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxyXG4gICAgLz5cclxuICAgIDxzcGFuIGNsYXNzPVwib3Blbi1pY29uXCIgKGNsaWNrKT1cImFycm93Q2xpY2soJGV2ZW50KVwiPlxyXG4gICAgICAgIDxpIGNsYXNzPVwiZmFzXCIgW25nQ2xhc3NdPVwieydmYS1jYXJldC1kb3duJyA6ICFvcGVuZWQsICdmYS1jYXJldC11cCcgOiBvcGVuZWR9XCI+PC9pPlxyXG4gICAgPC9zcGFuPlxyXG4gIDwvbWF0LWZvcm0tZmllbGQ+XHJcbjwvZGl2PlxyXG48ZGl2IGNsYXNzPVwiY3VzdG9tLXNlbGVjdC1jb21wb25lbnRcIj5cclxuXHJcbiAgPG5nLXRlbXBsYXRlIGNka0Nvbm5lY3RlZE92ZXJsYXlcclxuICAgICAgICAgICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlQYW5lbENsYXNzXT1cIidjdXN0b20tc2VsZWN0LW92ZXJsYXktcGFuZWwnXCJcclxuICAgICAgICAgICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlTY3JvbGxTdHJhdGVneV09XCJzY3JvbGxTdHJhdGVneVwiXHJcbiAgICAgICAgICAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5T3JpZ2luXT1cIm9yaWdpblwiXHJcbiAgICAgICAgICAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5T3Blbl09XCJvcGVuZWRcIlxyXG4gICAgICAgICAgICAgICBbY2RrQ29ubmVjdGVkT3ZlcmxheU1pbldpZHRoXT1cIl90cmlnZ2VyUmVjdD8ud2lkdGghXCI+XHJcbiAgICA8dWwgY2xhc3M9XCJ1bC1hY1wiPlxyXG4gICAgICA8bGkgY2xhc3M9XCJsaS1zZWFyY2ggc2VhcmNoLWlucHV0LWl0ZW1cIj5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJhcGlwYXNzLWlucHV0LXRleHQgc2VhcmNoLWlucHV0LWl0ZW1cIiBhcHBlYXJhbmNlPVwiZmlsbFwiPlxyXG4gICAgICAgICAgPGlucHV0IG1hdElucHV0IGNsYXNzPVwic2VhcmNoLWlucHV0LWl0ZW1cIlxyXG4gICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJmaW5kUGxhY2VIb2xkZXJcIlxyXG4gICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgIGFyaWEtYXV0b2NvbXBsZXRlPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgPC9saT5cclxuXHJcbiAgICAgIDxsaSBjbGFzcz1cImNsaWNrYWJsZVwiICpuZ0Zvcj1cImxldCBpIG9mIGl0ZW1zIHwgc2VsZWN0RmlsdGVyOnNlYXJjaFRleHQ6J3RleHQnXCJcclxuICAgICAgICAgIChjbGljayk9XCJzZWxlY3RJdGVtKGkpXCJcclxuICAgICAgICAgIChtb3VzZWRvd24pPVwic2VsZWN0SXRlbShpKVwiPlxyXG4gICAgICAgIHt7aS50ZXh0fX1cclxuICAgICAgPC9saT5cclxuXHJcbiAgICA8L3VsPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvZGl2PlxyXG4iXX0=
@@ -0,0 +1,30 @@
1
+ export class ValueAccessorBase {
2
+ innerValue;
3
+ onChange = () => { };
4
+ onTouched = () => { };
5
+ get value() {
6
+ return this.innerValue;
7
+ }
8
+ set value(value) {
9
+ value = this.changeValue(value);
10
+ this.innerValue = value;
11
+ this.onChange(value);
12
+ this.onTouched();
13
+ }
14
+ changeValue(value) {
15
+ return value;
16
+ }
17
+ writeValue(value) {
18
+ this.innerValue = value;
19
+ }
20
+ registerOnChange(fn) {
21
+ this.onChange = fn;
22
+ }
23
+ registerOnTouched(fn) {
24
+ this.onTouched = fn;
25
+ }
26
+ touch() {
27
+ this.onTouched.forEach((f) => f());
28
+ }
29
+ }
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtYWNlc3Nvci1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy92YWx1ZS1hY2Vzc29yLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFnQixpQkFBaUI7SUFDN0IsVUFBVSxDQUFLO0lBRWhCLFFBQVEsR0FBUSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUE7SUFDeEIsU0FBUyxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQTtJQUVoQyxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUE7SUFDeEIsQ0FBQztJQUVELElBQUksS0FBSyxDQUFFLEtBQVE7UUFDakIsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDL0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUE7UUFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNwQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUE7SUFDbEIsQ0FBQztJQUVTLFdBQVcsQ0FBRSxLQUFRO1FBQzdCLE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztJQUVELFVBQVUsQ0FBRSxLQUFRO1FBQ2xCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFBO0lBQ3pCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBRSxFQUFPO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFBO0lBQ3BCLENBQUM7SUFFRCxpQkFBaUIsQ0FBRSxFQUFPO1FBQ3hCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFBO0lBQ3JCLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFZLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDL0MsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcclxuXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBWYWx1ZUFjY2Vzc29yQmFzZTxUPiBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICBwcml2YXRlIGlubmVyVmFsdWU6IGFueVxyXG5cclxuICBwdWJsaWMgb25DaGFuZ2U6IGFueSA9ICgpID0+IHt9XHJcbiAgcHVibGljIG9uVG91Y2hlZDogYW55ID0gKCkgPT4ge31cclxuXHJcbiAgZ2V0IHZhbHVlICgpOiBUIHtcclxuICAgIHJldHVybiB0aGlzLmlubmVyVmFsdWVcclxuICB9XHJcblxyXG4gIHNldCB2YWx1ZSAodmFsdWU6IFQpIHtcclxuICAgIHZhbHVlID0gdGhpcy5jaGFuZ2VWYWx1ZSh2YWx1ZSlcclxuICAgIHRoaXMuaW5uZXJWYWx1ZSA9IHZhbHVlXHJcbiAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKVxyXG4gICAgdGhpcy5vblRvdWNoZWQoKVxyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGNoYW5nZVZhbHVlICh2YWx1ZTogVCk6IFQge1xyXG4gICAgcmV0dXJuIHZhbHVlXHJcbiAgfVxyXG5cclxuICB3cml0ZVZhbHVlICh2YWx1ZTogVCk6IHZvaWQge1xyXG4gICAgdGhpcy5pbm5lclZhbHVlID0gdmFsdWVcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UgKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmblxyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQgKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkID0gZm5cclxuICB9XHJcblxyXG4gIHRvdWNoICgpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkLmZvckVhY2goKGY6ICgpID0+IGFueSkgPT4gZigpKVxyXG4gIH1cclxufVxyXG4iXX0=