@carefirst/library 1.3.1 → 1.3.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -17,6 +17,7 @@ export class FormInputComponent {
17
17
  min = 'none';
18
18
  max = 'none';
19
19
  labelPlacement;
20
+ placeholder;
20
21
  inputmode;
21
22
  autoCapitalize;
22
23
  type;
@@ -25,9 +26,8 @@ export class FormInputComponent {
25
26
  textCenter;
26
27
  maxLength;
27
28
  greyBackground;
28
- ionInputEvent = new EventEmitter();
29
- ngModelValue;
30
- ngModelValueChange = new EventEmitter();
29
+ value;
30
+ valueChange = new EventEmitter();
31
31
  inputLabelPlacement;
32
32
  localInputMode;
33
33
  inputClear = false;
@@ -48,11 +48,11 @@ export class FormInputComponent {
48
48
  this.inputGreyBackground = checkTruthAttribute(changes, 'greyBackground', this.inputGreyBackground);
49
49
  }
50
50
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: FormInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
51
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: FormInputComponent, selector: "cf-form-input", inputs: { label: "label", min: "min", max: "max", labelPlacement: "labelPlacement", inputmode: "inputmode", autoCapitalize: "autoCapitalize", type: "type", noClearButton: "noClearButton", control: "control", textCenter: "textCenter", maxLength: "maxLength", greyBackground: "greyBackground", ngModelValue: "ngModelValue" }, outputs: { ionInputEvent: "ionInputEvent", ngModelValueChange: "ngModelValueChange" }, usesOnChanges: true, ngImport: i0, template: "<!-- ngModel -->\n<ion-input\n *ngIf=\"!control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"ngModelValueChange.emit($event.detail.value ?? undefined); ionInputEvent.emit($event.detail.value ?? undefined)\"></ion-input>\n<!-- Form Control -->\n<ion-input\n *ngIf=\"control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [formControl]=\"control\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"ionInputEvent.emit($event.detail.value ?? undefined)\"></ion-input>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-input{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-input.text-center{text-align:center}ion-input.grey-background{--background: var(--cf-app-system-color-outline)}\n"], dependencies: [{ kind: "component", type: i1.IonInput, selector: "ion-input", inputs: ["accept", "autocapitalize", "autocomplete", "autocorrect", "autofocus", "clearInput", "clearOnEdit", "color", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "legacy", "max", "maxlength", "min", "minlength", "mode", "multiple", "name", "pattern", "placeholder", "readonly", "required", "shape", "size", "spellcheck", "step", "type", "value"] }, { kind: "directive", type: i1.TextValueAccessor, selector: "ion-input:not([type=number]),ion-textarea,ion-searchbar,ion-range" }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.FormValidationComponent, selector: "cf-form-validation", inputs: ["control"] }] });
51
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: FormInputComponent, selector: "cf-form-input", inputs: { label: "label", min: "min", max: "max", labelPlacement: "labelPlacement", placeholder: "placeholder", inputmode: "inputmode", autoCapitalize: "autoCapitalize", type: "type", noClearButton: "noClearButton", control: "control", textCenter: "textCenter", maxLength: "maxLength", greyBackground: "greyBackground", value: "value" }, outputs: { valueChange: "valueChange" }, usesOnChanges: true, ngImport: i0, template: "<!-- ngModel -->\n<ion-input\n *ngIf=\"!control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-input>\n<!-- Form Control -->\n<ion-input\n *ngIf=\"control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [formControl]=\"control\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-input>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-input{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-input.text-center{text-align:center}ion-input.grey-background{--background: var(--cf-app-system-color-outline)}\n"], dependencies: [{ kind: "component", type: i1.IonInput, selector: "ion-input", inputs: ["accept", "autocapitalize", "autocomplete", "autocorrect", "autofocus", "clearInput", "clearOnEdit", "color", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "legacy", "max", "maxlength", "min", "minlength", "mode", "multiple", "name", "pattern", "placeholder", "readonly", "required", "shape", "size", "spellcheck", "step", "type", "value"] }, { kind: "directive", type: i1.TextValueAccessor, selector: "ion-input:not([type=number]),ion-textarea,ion-searchbar,ion-range" }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.FormValidationComponent, selector: "cf-form-validation", inputs: ["control"] }] });
52
52
  }
53
53
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: FormInputComponent, decorators: [{
54
54
  type: Component,
55
- args: [{ selector: 'cf-form-input', template: "<!-- ngModel -->\n<ion-input\n *ngIf=\"!control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"ngModelValueChange.emit($event.detail.value ?? undefined); ionInputEvent.emit($event.detail.value ?? undefined)\"></ion-input>\n<!-- Form Control -->\n<ion-input\n *ngIf=\"control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [formControl]=\"control\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"ionInputEvent.emit($event.detail.value ?? undefined)\"></ion-input>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-input{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-input.text-center{text-align:center}ion-input.grey-background{--background: var(--cf-app-system-color-outline)}\n"] }]
55
+ args: [{ selector: 'cf-form-input', template: "<!-- ngModel -->\n<ion-input\n *ngIf=\"!control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-input>\n<!-- Form Control -->\n<ion-input\n *ngIf=\"control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [formControl]=\"control\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-input>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-input{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-input.text-center{text-align:center}ion-input.grey-background{--background: var(--cf-app-system-color-outline)}\n"] }]
56
56
  }], propDecorators: { label: [{
57
57
  type: Input
58
58
  }], min: [{
@@ -61,6 +61,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImpor
61
61
  type: Input
62
62
  }], labelPlacement: [{
63
63
  type: Input
64
+ }], placeholder: [{
65
+ type: Input
64
66
  }], inputmode: [{
65
67
  type: Input
66
68
  }], autoCapitalize: [{
@@ -77,11 +79,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImpor
77
79
  type: Input
78
80
  }], greyBackground: [{
79
81
  type: Input
80
- }], ionInputEvent: [{
81
- type: Output
82
- }], ngModelValue: [{
82
+ }], value: [{
83
83
  type: Input
84
- }], ngModelValueChange: [{
84
+ }], valueChange: [{
85
85
  type: Output
86
86
  }] } });
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYXJlZmlyc3QvbGlicmFyeS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS1pbnB1dC9mb3JtLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhcmVmaXJzdC9saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWlucHV0L2Zvcm0taW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBV0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFzQyxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0csT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7QUFNdEYsTUFBTSxPQUFPLEdBQUc7SUFDZCxjQUFjLEVBQUUsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsQ0FBQztJQUNoRCxTQUFTLEVBQUUsQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUM7SUFDMUUsY0FBYyxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxZQUFZLENBQUM7SUFDekUsSUFBSSxFQUFFLENBQUMsTUFBTSxFQUFFLGdCQUFnQixFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQztDQUNoSCxDQUFDO0FBT1gsTUFBTSxPQUFPLGtCQUFrQjtJQUNwQixLQUFLLENBQVU7SUFDZixHQUFHLEdBQW9CLE1BQU0sQ0FBQztJQUM5QixHQUFHLEdBQW9CLE1BQU0sQ0FBQztJQUM5QixjQUFjLENBQTJDO0lBQ3pELFNBQVMsQ0FBc0M7SUFDL0MsY0FBYyxDQUEyQztJQUN6RCxJQUFJLENBQWlDO0lBQ3JDLGFBQWEsQ0FBZ0M7SUFDN0MsT0FBTyxDQUFzQjtJQUM3QixVQUFVLENBQWdDO0lBQzFDLFNBQVMsQ0FBbUI7SUFDNUIsY0FBYyxDQUFnQztJQUM3QyxhQUFhLEdBQUcsSUFBSSxZQUFZLEVBQXNCLENBQUM7SUFHeEQsWUFBWSxDQUFxQjtJQUNoQyxrQkFBa0IsR0FBRyxJQUFJLFlBQVksRUFBNEIsQ0FBQztJQUc1RSxtQkFBbUIsQ0FBNkI7SUFDaEQsY0FBYyxDQUF3QjtJQUN0QyxVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQ25CLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDeEIsU0FBUyxDQUFtQjtJQUM1QixtQkFBbUIsQ0FBNkI7SUFDaEQsbUJBQW1CLEdBQUcsS0FBSyxDQUFDO0lBTzVCLFdBQVcsQ0FBQyxPQUFzQjtRQUVoQyxJQUFJLENBQUMsbUJBQW1CO1lBQ3RCLG1CQUFtQixDQUNqQixPQUFPLEVBQ1AsZ0JBQWdCLEVBQ2hCLE9BQU8sQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLEVBQzlCLElBQUksQ0FBQyxtQkFBbUIsQ0FDekIsSUFBSSxVQUFVLENBQUM7UUFFbEIsSUFBSSxDQUFDLGNBQWM7WUFDakIsbUJBQW1CLENBQXFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksTUFBTSxDQUFDO1FBRTFJLElBQUksQ0FBQyxVQUFVLEdBQUcsbUJBQW1CLENBQUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFakYsSUFBSSxDQUFDLGVBQWUsR0FBRyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUV4RixJQUFJLENBQUMsU0FBUyxHQUFHLG1CQUFtQixDQUFnQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLE1BQU0sQ0FBQztRQUVySSxJQUFJLENBQUMsbUJBQW1CO1lBQ3RCLG1CQUFtQixDQUNqQixPQUFPLEVBQ1AsZ0JBQWdCLEVBQ2hCLE9BQU8sQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLEVBQzlCLElBQUksQ0FBQyxtQkFBbUIsQ0FDekIsSUFBSSxNQUFNLENBQUM7UUFFZCxJQUFJLENBQUMsbUJBQW1CLEdBQUcsbUJBQW1CLENBQUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQ3RHLENBQUM7dUdBN0RVLGtCQUFrQjsyRkFBbEIsa0JBQWtCLHFlQ2hDL0IsdXNDQWtDQTs7MkZERmEsa0JBQWtCO2tCQUw5QixTQUFTOytCQUNFLGVBQWU7OEJBS2hCLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDSSxhQUFhO3NCQUF0QixNQUFNO2dCQUdFLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDYXJlZmlyc3QgTGlicmFyeSBGb3JtIElucHV0XG4gKlxuICogQGZpbGUgICAgICAgICAgZm9ybS1pbnB1dC5jb21wb25lbnRcbiAqIEBkZXNjcmlwdGlvbiAgIENvbnRhaW5zIGFsbCB0aGUgbG9naWMgZm9yIGdlbmVyYXRpbmcgYSBDYXJlRmlyc3QgRm9ybSBJbnB1dCBGaWVsZFxuICogQGF1dGhvciAgICAgICAgQXJubyBKYW5zZW4gdmFuIFZ1dXJlblxuICogQHNpbmNlICAgICAgICAgMjAyMyAtIDEyIC0gMTRcbiAqIEB1c2FnZSAgICAgICAgIDxjZi1mb3JtLWlucHV0IGxhYmVsPVwiTGFiZWwgTmFtZVwiICVsYWJlbFBsYWNlbWVudCUgJWlucHV0TW9kZSUgJW5vQ2xlYXJCdXR0b24lICV0ZXh0Q2VudGVyJSAlbWluJSAlbWF4JSAlYXV0b0NhcGl0YWxpemUlICV0eXBlJSAlWyhuZ01vZGVsVmFsdWUpXT1cInR3b1dheUNvbXNcIiUgJShpb25JbnB1dEV2ZW50KT1cImN1cnJlbnRWYWx1ZUV2ZW50XCIlICVbY29udHJvbF0lPVwiZm9ybU5hbWUuY29udHJvbHMuY29udHJvbE5hbWVcIj48L2NmLWZvcm0taW5wdXQ+XG4gKiAgICAgICAgICAgICAgICBkaXNhYmxlIGlucHV0IGJ5IGRpc2FibGluZyB0aGUgZm9ybSBjb250cm9sXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCB0eXBlIE9uQ2hhbmdlcywgdHlwZSBTaW1wbGVDaGFuZ2VzLCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuLy8tLS0gVXRpbHNcbmltcG9ydCB7IGNoZWNrVHJ1dGhBdHRyaWJ1dGUsIHZhbGlkYXRlU3RyaW5nVmFsdWUgfSBmcm9tICcuLi8uLi91dGlscy9hdHRyaWJ1dGUudXRpbCc7XG5cbi8qKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAqIEBpbnRlcmZhY2UgICAgIGlucHV0Q1xuICogQGRlc2NyaXB0aW9uICAgRGVmaW5lIGF2YWlsYWJsZSBpbnB1dCB2YWx1ZXNcbiAqL1xuY29uc3QgaW5wdXRzQyA9IHtcbiAgbGFiZWxQbGFjZW1lbnQ6IFsnZml4ZWQnLCAnZmxvYXRpbmcnLCAnc3RhY2tlZCddLFxuICBpbnB1dE1vZGU6IFsndGV4dCcsICdlbWFpbCcsICdudW1lcmljJywgJ3RlbCcsICdkZWNpbWFsJywgJ3VybCcsICdzZWFyY2gnXSxcbiAgYXV0b0NhcGl0YWxpemU6IFsnb2ZmJywgJ25vbmUnLCAnb24nLCAnc2VudGVuY2VzJywgJ3dvcmRzJywgJ2NoYXJhY3RlcnMnXSxcbiAgdHlwZTogWydkYXRlJywgJ2RhdGV0aW1lLWxvY2FsJywgJ2VtYWlsJywgJ21vbnRoJywgJ251bWJlcicsICdwYXNzd29yZCcsICdzZWFyY2gnLCAndGVsJywgJ3RleHQnLCAndGltZScsICd1cmwnLCAnd2VlayddLFxufSBhcyBjb25zdDtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY2YtZm9ybS1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9mb3JtLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2Zvcm0taW5wdXQuY29tcG9uZW50LnNjc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBsYWJlbCE6IHN0cmluZztcbiAgQElucHV0KCkgbWluOiBudW1iZXIgfCBzdHJpbmcgPSAnbm9uZSc7XG4gIEBJbnB1dCgpIG1heDogbnVtYmVyIHwgc3RyaW5nID0gJ25vbmUnO1xuICBASW5wdXQoKSBsYWJlbFBsYWNlbWVudD86ICh0eXBlb2YgaW5wdXRzQy5sYWJlbFBsYWNlbWVudClbbnVtYmVyXTtcbiAgQElucHV0KCkgaW5wdXRtb2RlPzogKHR5cGVvZiBpbnB1dHNDLmlucHV0TW9kZSlbbnVtYmVyXTtcbiAgQElucHV0KCkgYXV0b0NhcGl0YWxpemU/OiAodHlwZW9mIGlucHV0c0MuYXV0b0NhcGl0YWxpemUpW251bWJlcl07XG4gIEBJbnB1dCgpIHR5cGU/OiAodHlwZW9mIGlucHV0c0MudHlwZSlbbnVtYmVyXTtcbiAgQElucHV0KCkgbm9DbGVhckJ1dHRvbj86IGJvb2xlYW4gfCBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGNvbnRyb2w/OiBGb3JtQ29udHJvbCB8IG51bGw7XG4gIEBJbnB1dCgpIHRleHRDZW50ZXI/OiBib29sZWFuIHwgc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBtYXhMZW5ndGg/OiBudW1iZXIgfCBzdHJpbmc7XG4gIEBJbnB1dCgpIGdyZXlCYWNrZ3JvdW5kPzogYm9vbGVhbiB8IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgQE91dHB1dCgpIGlvbklucHV0RXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZyB8IHVuZGVmaW5lZD4oKTtcblxuICAvLy0tLSBuZ01vZGVsXG4gIEBJbnB1dCgpIG5nTW9kZWxWYWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBAT3V0cHV0KCkgbmdNb2RlbFZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjx0eXBlb2YgdGhpcy5uZ01vZGVsVmFsdWU+KCk7XG5cbiAgLy8tLS0gTG9jYWwgdmFyaWFibGVzXG4gIGlucHV0TGFiZWxQbGFjZW1lbnQ6IHR5cGVvZiB0aGlzLmxhYmVsUGxhY2VtZW50O1xuICBsb2NhbElucHV0TW9kZTogdHlwZW9mIHRoaXMuaW5wdXRtb2RlO1xuICBpbnB1dENsZWFyID0gZmFsc2U7XG4gIGlucHV0VGV4dENlbnRlciA9IGZhbHNlO1xuICBpbnB1dFR5cGU6IHR5cGVvZiB0aGlzLnR5cGU7XG4gIGlucHV0QXV0b0NhcGl0YWxpemU6IHR5cGVvZiB0aGlzLmF1dG9DYXBpdGFsaXplO1xuICBpbnB1dEdyZXlCYWNrZ3JvdW5kID0gZmFsc2U7XG5cbiAgLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgKiBAbmFtZSAgICAgICAgICBuZ09uQ2hhbmdlc1xuICAgKiBAZGVzY3JpcHRpb24gICBEZXRlY3QgY2hhbmdlcyB0byBpbnB1dCB2YWx1ZXNcbiAgICogQHBhcmFtICAgICAgICAge1NpbXBsZUNoYW5nZXN9IGNoYW5nZXNcbiAgICovXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAvLy0tLSBMYWJlbCBQbGFjZW1lbnRcbiAgICB0aGlzLmlucHV0TGFiZWxQbGFjZW1lbnQgPVxuICAgICAgdmFsaWRhdGVTdHJpbmdWYWx1ZTwodHlwZW9mIGlucHV0c0MubGFiZWxQbGFjZW1lbnQpW251bWJlcl0+KFxuICAgICAgICBjaGFuZ2VzLFxuICAgICAgICAnbGFiZWxQbGFjZW1lbnQnLFxuICAgICAgICBpbnB1dHNDLmxhYmVsUGxhY2VtZW50LnNsaWNlKCksXG4gICAgICAgIHRoaXMuaW5wdXRMYWJlbFBsYWNlbWVudFxuICAgICAgKSB8fCAnZmxvYXRpbmcnO1xuICAgIC8vLS0tIElucHV0IFR5cGUgKGtleWJvYXJkKVxuICAgIHRoaXMubG9jYWxJbnB1dE1vZGUgPVxuICAgICAgdmFsaWRhdGVTdHJpbmdWYWx1ZTwodHlwZW9mIGlucHV0c0MuaW5wdXRNb2RlKVtudW1iZXJdPihjaGFuZ2VzLCAnaW5wdXRtb2RlJywgaW5wdXRzQy5pbnB1dE1vZGUuc2xpY2UoKSwgdGhpcy5sb2NhbElucHV0TW9kZSkgfHwgJ3RleHQnO1xuICAgIC8vLS0tIENsZWFyIEJ1dHRvblxuICAgIHRoaXMuaW5wdXRDbGVhciA9IGNoZWNrVHJ1dGhBdHRyaWJ1dGUoY2hhbmdlcywgJ25vQ2xlYXJCdXR0b24nLCB0aGlzLmlucHV0Q2xlYXIpO1xuICAgIC8vLS0tIFRleHQgQ2VudGVyXG4gICAgdGhpcy5pbnB1dFRleHRDZW50ZXIgPSBjaGVja1RydXRoQXR0cmlidXRlKGNoYW5nZXMsICd0ZXh0Q2VudGVyJywgdGhpcy5pbnB1dFRleHRDZW50ZXIpO1xuICAgIC8vLS0tIFR5cGVcbiAgICB0aGlzLmlucHV0VHlwZSA9IHZhbGlkYXRlU3RyaW5nVmFsdWU8KHR5cGVvZiBpbnB1dHNDLnR5cGUpW251bWJlcl0+KGNoYW5nZXMsICd0eXBlJywgaW5wdXRzQy50eXBlLnNsaWNlKCksIHRoaXMuaW5wdXRUeXBlKSB8fCAndGV4dCc7XG4gICAgLy8tLS0gQXV0byBDYXBpdGFsaXplXG4gICAgdGhpcy5pbnB1dEF1dG9DYXBpdGFsaXplID1cbiAgICAgIHZhbGlkYXRlU3RyaW5nVmFsdWU8KHR5cGVvZiBpbnB1dHNDLmF1dG9DYXBpdGFsaXplKVtudW1iZXJdPihcbiAgICAgICAgY2hhbmdlcyxcbiAgICAgICAgJ2F1dG9DYXBpdGFsaXplJyxcbiAgICAgICAgaW5wdXRzQy5hdXRvQ2FwaXRhbGl6ZS5zbGljZSgpLFxuICAgICAgICB0aGlzLmlucHV0QXV0b0NhcGl0YWxpemVcbiAgICAgICkgfHwgJ25vbmUnO1xuICAgIC8vLS0tIEdyZXkgQmFja2dyb3VuZFxuICAgIHRoaXMuaW5wdXRHcmV5QmFja2dyb3VuZCA9IGNoZWNrVHJ1dGhBdHRyaWJ1dGUoY2hhbmdlcywgJ2dyZXlCYWNrZ3JvdW5kJywgdGhpcy5pbnB1dEdyZXlCYWNrZ3JvdW5kKTtcbiAgfVxufVxuIiwiPCEtLSBuZ01vZGVsIC0tPlxuPGlvbi1pbnB1dFxuICAqbmdJZj1cIiFjb250cm9sXCJcbiAgW25nQ2xhc3NdPVwieyAndGV4dC1jZW50ZXInOiBpbnB1dFRleHRDZW50ZXIsICdncmV5LWJhY2tncm91bmQnOiBpbnB1dEdyZXlCYWNrZ3JvdW5kIH1cIlxuICBbbGFiZWxdPVwibGFiZWxcIlxuICBbbGFiZWxQbGFjZW1lbnRdPVwiaW5wdXRMYWJlbFBsYWNlbWVudFwiXG4gIGZpbGw9XCJvdXRsaW5lXCJcbiAgW2NsZWFySW5wdXRdPVwiIWlucHV0Q2xlYXJcIlxuICBbYXV0b2NhcGl0YWxpemVdPVwiYXV0b0NhcGl0YWxpemVcIlxuICBtb2RlPVwibWRcIlxuICBbaW5wdXRtb2RlXT1cImxvY2FsSW5wdXRNb2RlXCJcbiAgW21pbl09XCJtaW5cIlxuICBbbWF4XT1cIm1heFwiXG4gIFttYXhsZW5ndGhdPVwibWF4TGVuZ3RoIHx8IG51bGxcIlxuICBbdHlwZV09XCJ0eXBlXCJcbiAgKGlvbklucHV0KT1cIm5nTW9kZWxWYWx1ZUNoYW5nZS5lbWl0KCRldmVudC5kZXRhaWwudmFsdWUgPz8gdW5kZWZpbmVkKTsgaW9uSW5wdXRFdmVudC5lbWl0KCRldmVudC5kZXRhaWwudmFsdWUgPz8gdW5kZWZpbmVkKVwiPjwvaW9uLWlucHV0PlxuPCEtLSBGb3JtIENvbnRyb2wgLS0+XG48aW9uLWlucHV0XG4gICpuZ0lmPVwiY29udHJvbFwiXG4gIFtuZ0NsYXNzXT1cInsgJ3RleHQtY2VudGVyJzogaW5wdXRUZXh0Q2VudGVyLCAnZ3JleS1iYWNrZ3JvdW5kJzogaW5wdXRHcmV5QmFja2dyb3VuZCB9XCJcbiAgW2xhYmVsXT1cImxhYmVsXCJcbiAgW2xhYmVsUGxhY2VtZW50XT1cImlucHV0TGFiZWxQbGFjZW1lbnRcIlxuICBmaWxsPVwib3V0bGluZVwiXG4gIFtjbGVhcklucHV0XT1cIiFpbnB1dENsZWFyXCJcbiAgW2F1dG9jYXBpdGFsaXplXT1cImF1dG9DYXBpdGFsaXplXCJcbiAgbW9kZT1cIm1kXCJcbiAgW2lucHV0bW9kZV09XCJsb2NhbElucHV0TW9kZVwiXG4gIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCJcbiAgW21pbl09XCJtaW5cIlxuICBbbWF4XT1cIm1heFwiXG4gIFttYXhsZW5ndGhdPVwibWF4TGVuZ3RoIHx8IG51bGxcIlxuICBbdHlwZV09XCJ0eXBlXCJcbiAgKGlvbklucHV0KT1cImlvbklucHV0RXZlbnQuZW1pdCgkZXZlbnQuZGV0YWlsLnZhbHVlID8/IHVuZGVmaW5lZClcIj48L2lvbi1pbnB1dD5cbjxjZi1mb3JtLXZhbGlkYXRpb24gKm5nSWY9XCJjb250cm9sXCIgW2NvbnRyb2xdPVwiY29udHJvbFwiPjwvY2YtZm9ybS12YWxpZGF0aW9uPlxuIl19
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jYXJlZmlyc3QvbGlicmFyeS9zcmMvbGliL2NvbXBvbmVudHMvZm9ybS1pbnB1dC9mb3JtLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhcmVmaXJzdC9saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWlucHV0L2Zvcm0taW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBV0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFzQyxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0csT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7QUFNdEYsTUFBTSxPQUFPLEdBQUc7SUFDZCxjQUFjLEVBQUUsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsQ0FBQztJQUNoRCxTQUFTLEVBQUUsQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUM7SUFDMUUsY0FBYyxFQUFFLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLE9BQU8sRUFBRSxZQUFZLENBQUM7SUFDekUsSUFBSSxFQUFFLENBQUMsTUFBTSxFQUFFLGdCQUFnQixFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQztDQUNoSCxDQUFDO0FBT1gsTUFBTSxPQUFPLGtCQUFrQjtJQUNwQixLQUFLLENBQVU7SUFDZixHQUFHLEdBQW9CLE1BQU0sQ0FBQztJQUM5QixHQUFHLEdBQW9CLE1BQU0sQ0FBQztJQUM5QixjQUFjLENBQTJDO0lBQ3pELFdBQVcsQ0FBc0I7SUFDakMsU0FBUyxDQUFzQztJQUMvQyxjQUFjLENBQTJDO0lBQ3pELElBQUksQ0FBaUM7SUFDckMsYUFBYSxDQUFnQztJQUM3QyxPQUFPLENBQXNCO0lBQzdCLFVBQVUsQ0FBZ0M7SUFDMUMsU0FBUyxDQUFtQjtJQUM1QixjQUFjLENBQWdDO0lBRzlDLEtBQUssQ0FBcUI7SUFDekIsV0FBVyxHQUFHLElBQUksWUFBWSxFQUFxQixDQUFDO0lBRzlELG1CQUFtQixDQUE2QjtJQUNoRCxjQUFjLENBQXdCO0lBQ3RDLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDbkIsZUFBZSxHQUFHLEtBQUssQ0FBQztJQUN4QixTQUFTLENBQW1CO0lBQzVCLG1CQUFtQixDQUE2QjtJQUNoRCxtQkFBbUIsR0FBRyxLQUFLLENBQUM7SUFPNUIsV0FBVyxDQUFDLE9BQXNCO1FBRWhDLElBQUksQ0FBQyxtQkFBbUI7WUFDdEIsbUJBQW1CLENBQ2pCLE9BQU8sRUFDUCxnQkFBZ0IsRUFDaEIsT0FBTyxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsRUFDOUIsSUFBSSxDQUFDLG1CQUFtQixDQUN6QixJQUFJLFVBQVUsQ0FBQztRQUVsQixJQUFJLENBQUMsY0FBYztZQUNqQixtQkFBbUIsQ0FBcUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxNQUFNLENBQUM7UUFFMUksSUFBSSxDQUFDLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsZUFBZSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVqRixJQUFJLENBQUMsZUFBZSxHQUFHLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRXhGLElBQUksQ0FBQyxTQUFTLEdBQUcsbUJBQW1CLENBQWdDLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksTUFBTSxDQUFDO1FBRXJJLElBQUksQ0FBQyxtQkFBbUI7WUFDdEIsbUJBQW1CLENBQ2pCLE9BQU8sRUFDUCxnQkFBZ0IsRUFDaEIsT0FBTyxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsRUFDOUIsSUFBSSxDQUFDLG1CQUFtQixDQUN6QixJQUFJLE1BQU0sQ0FBQztRQUVkLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDdEcsQ0FBQzt1R0E3RFUsa0JBQWtCOzJGQUFsQixrQkFBa0IscWNDaEMvQiwwc0NBb0NBOzsyRkRKYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0UsZUFBZTs4QkFLaEIsS0FBSztzQkFBYixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBR0csS0FBSztzQkFBYixLQUFLO2dCQUNJLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENhcmVmaXJzdCBMaWJyYXJ5IEZvcm0gSW5wdXRcbiAqXG4gKiBAZmlsZSAgICAgICAgICBmb3JtLWlucHV0LmNvbXBvbmVudFxuICogQGRlc2NyaXB0aW9uICAgQ29udGFpbnMgYWxsIHRoZSBsb2dpYyBmb3IgZ2VuZXJhdGluZyBhIENhcmVGaXJzdCBGb3JtIElucHV0IEZpZWxkXG4gKiBAYXV0aG9yICAgICAgICBBcm5vIEphbnNlbiB2YW4gVnV1cmVuXG4gKiBAc2luY2UgICAgICAgICAyMDIzIC0gMTIgLSAxNFxuICogQHVzYWdlICAgICAgICAgPGNmLWZvcm0taW5wdXQgbGFiZWw9XCJMYWJlbCBOYW1lXCIgJWxhYmVsUGxhY2VtZW50JSAlaW5wdXRNb2RlJSAlbm9DbGVhckJ1dHRvbiUgJXRleHRDZW50ZXIlICVtaW4lICVtYXglICVhdXRvQ2FwaXRhbGl6ZSUgJXR5cGUlICVbKHZhbHVlKV09XCJ0d29XYXlDb21zXCIlICUodmFsdWVDaGFuZ2UpPVwiY3VycmVudFZhbHVlRXZlbnRcIiUgJVtjb250cm9sXSU9XCJmb3JtTmFtZS5jb250cm9scy5jb250cm9sTmFtZVwiPjwvY2YtZm9ybS1pbnB1dD5cbiAqICAgICAgICAgICAgICAgIGRpc2FibGUgaW5wdXQgYnkgZGlzYWJsaW5nIHRoZSBmb3JtIGNvbnRyb2xcbiAqL1xuXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIHR5cGUgT25DaGFuZ2VzLCB0eXBlIFNpbXBsZUNoYW5nZXMsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG4vLy0tLSBVdGlsc1xuaW1wb3J0IHsgY2hlY2tUcnV0aEF0dHJpYnV0ZSwgdmFsaWRhdGVTdHJpbmdWYWx1ZSB9IGZyb20gJy4uLy4uL3V0aWxzL2F0dHJpYnV0ZS51dGlsJztcblxuLyoqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICogQGludGVyZmFjZSAgICAgaW5wdXRDXG4gKiBAZGVzY3JpcHRpb24gICBEZWZpbmUgYXZhaWxhYmxlIGlucHV0IHZhbHVlc1xuICovXG5jb25zdCBpbnB1dHNDID0ge1xuICBsYWJlbFBsYWNlbWVudDogWydmaXhlZCcsICdmbG9hdGluZycsICdzdGFja2VkJ10sXG4gIGlucHV0TW9kZTogWyd0ZXh0JywgJ2VtYWlsJywgJ251bWVyaWMnLCAndGVsJywgJ2RlY2ltYWwnLCAndXJsJywgJ3NlYXJjaCddLFxuICBhdXRvQ2FwaXRhbGl6ZTogWydvZmYnLCAnbm9uZScsICdvbicsICdzZW50ZW5jZXMnLCAnd29yZHMnLCAnY2hhcmFjdGVycyddLFxuICB0eXBlOiBbJ2RhdGUnLCAnZGF0ZXRpbWUtbG9jYWwnLCAnZW1haWwnLCAnbW9udGgnLCAnbnVtYmVyJywgJ3Bhc3N3b3JkJywgJ3NlYXJjaCcsICd0ZWwnLCAndGV4dCcsICd0aW1lJywgJ3VybCcsICd3ZWVrJ10sXG59IGFzIGNvbnN0O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjZi1mb3JtLWlucHV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0taW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZm9ybS1pbnB1dC5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1JbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIGxhYmVsITogc3RyaW5nO1xuICBASW5wdXQoKSBtaW46IG51bWJlciB8IHN0cmluZyA9ICdub25lJztcbiAgQElucHV0KCkgbWF4OiBudW1iZXIgfCBzdHJpbmcgPSAnbm9uZSc7XG4gIEBJbnB1dCgpIGxhYmVsUGxhY2VtZW50PzogKHR5cGVvZiBpbnB1dHNDLmxhYmVsUGxhY2VtZW50KVtudW1iZXJdO1xuICBASW5wdXQoKSBwbGFjZWhvbGRlcj86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgaW5wdXRtb2RlPzogKHR5cGVvZiBpbnB1dHNDLmlucHV0TW9kZSlbbnVtYmVyXTtcbiAgQElucHV0KCkgYXV0b0NhcGl0YWxpemU/OiAodHlwZW9mIGlucHV0c0MuYXV0b0NhcGl0YWxpemUpW251bWJlcl07XG4gIEBJbnB1dCgpIHR5cGU/OiAodHlwZW9mIGlucHV0c0MudHlwZSlbbnVtYmVyXTtcbiAgQElucHV0KCkgbm9DbGVhckJ1dHRvbj86IGJvb2xlYW4gfCBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGNvbnRyb2w/OiBGb3JtQ29udHJvbCB8IG51bGw7XG4gIEBJbnB1dCgpIHRleHRDZW50ZXI/OiBib29sZWFuIHwgc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBtYXhMZW5ndGg/OiBudW1iZXIgfCBzdHJpbmc7XG4gIEBJbnB1dCgpIGdyZXlCYWNrZ3JvdW5kPzogYm9vbGVhbiB8IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvLy0tLSBuZ01vZGVsXG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8dHlwZW9mIHRoaXMudmFsdWU+KCk7XG5cbiAgLy8tLS0gTG9jYWwgdmFyaWFibGVzXG4gIGlucHV0TGFiZWxQbGFjZW1lbnQ6IHR5cGVvZiB0aGlzLmxhYmVsUGxhY2VtZW50O1xuICBsb2NhbElucHV0TW9kZTogdHlwZW9mIHRoaXMuaW5wdXRtb2RlO1xuICBpbnB1dENsZWFyID0gZmFsc2U7XG4gIGlucHV0VGV4dENlbnRlciA9IGZhbHNlO1xuICBpbnB1dFR5cGU6IHR5cGVvZiB0aGlzLnR5cGU7XG4gIGlucHV0QXV0b0NhcGl0YWxpemU6IHR5cGVvZiB0aGlzLmF1dG9DYXBpdGFsaXplO1xuICBpbnB1dEdyZXlCYWNrZ3JvdW5kID0gZmFsc2U7XG5cbiAgLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgKiBAbmFtZSAgICAgICAgICBuZ09uQ2hhbmdlc1xuICAgKiBAZGVzY3JpcHRpb24gICBEZXRlY3QgY2hhbmdlcyB0byBpbnB1dCB2YWx1ZXNcbiAgICogQHBhcmFtICAgICAgICAge1NpbXBsZUNoYW5nZXN9IGNoYW5nZXNcbiAgICovXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAvLy0tLSBMYWJlbCBQbGFjZW1lbnRcbiAgICB0aGlzLmlucHV0TGFiZWxQbGFjZW1lbnQgPVxuICAgICAgdmFsaWRhdGVTdHJpbmdWYWx1ZTwodHlwZW9mIGlucHV0c0MubGFiZWxQbGFjZW1lbnQpW251bWJlcl0+KFxuICAgICAgICBjaGFuZ2VzLFxuICAgICAgICAnbGFiZWxQbGFjZW1lbnQnLFxuICAgICAgICBpbnB1dHNDLmxhYmVsUGxhY2VtZW50LnNsaWNlKCksXG4gICAgICAgIHRoaXMuaW5wdXRMYWJlbFBsYWNlbWVudFxuICAgICAgKSB8fCAnZmxvYXRpbmcnO1xuICAgIC8vLS0tIElucHV0IFR5cGUgKGtleWJvYXJkKVxuICAgIHRoaXMubG9jYWxJbnB1dE1vZGUgPVxuICAgICAgdmFsaWRhdGVTdHJpbmdWYWx1ZTwodHlwZW9mIGlucHV0c0MuaW5wdXRNb2RlKVtudW1iZXJdPihjaGFuZ2VzLCAnaW5wdXRtb2RlJywgaW5wdXRzQy5pbnB1dE1vZGUuc2xpY2UoKSwgdGhpcy5sb2NhbElucHV0TW9kZSkgfHwgJ3RleHQnO1xuICAgIC8vLS0tIENsZWFyIEJ1dHRvblxuICAgIHRoaXMuaW5wdXRDbGVhciA9IGNoZWNrVHJ1dGhBdHRyaWJ1dGUoY2hhbmdlcywgJ25vQ2xlYXJCdXR0b24nLCB0aGlzLmlucHV0Q2xlYXIpO1xuICAgIC8vLS0tIFRleHQgQ2VudGVyXG4gICAgdGhpcy5pbnB1dFRleHRDZW50ZXIgPSBjaGVja1RydXRoQXR0cmlidXRlKGNoYW5nZXMsICd0ZXh0Q2VudGVyJywgdGhpcy5pbnB1dFRleHRDZW50ZXIpO1xuICAgIC8vLS0tIFR5cGVcbiAgICB0aGlzLmlucHV0VHlwZSA9IHZhbGlkYXRlU3RyaW5nVmFsdWU8KHR5cGVvZiBpbnB1dHNDLnR5cGUpW251bWJlcl0+KGNoYW5nZXMsICd0eXBlJywgaW5wdXRzQy50eXBlLnNsaWNlKCksIHRoaXMuaW5wdXRUeXBlKSB8fCAndGV4dCc7XG4gICAgLy8tLS0gQXV0byBDYXBpdGFsaXplXG4gICAgdGhpcy5pbnB1dEF1dG9DYXBpdGFsaXplID1cbiAgICAgIHZhbGlkYXRlU3RyaW5nVmFsdWU8KHR5cGVvZiBpbnB1dHNDLmF1dG9DYXBpdGFsaXplKVtudW1iZXJdPihcbiAgICAgICAgY2hhbmdlcyxcbiAgICAgICAgJ2F1dG9DYXBpdGFsaXplJyxcbiAgICAgICAgaW5wdXRzQy5hdXRvQ2FwaXRhbGl6ZS5zbGljZSgpLFxuICAgICAgICB0aGlzLmlucHV0QXV0b0NhcGl0YWxpemVcbiAgICAgICkgfHwgJ25vbmUnO1xuICAgIC8vLS0tIEdyZXkgQmFja2dyb3VuZFxuICAgIHRoaXMuaW5wdXRHcmV5QmFja2dyb3VuZCA9IGNoZWNrVHJ1dGhBdHRyaWJ1dGUoY2hhbmdlcywgJ2dyZXlCYWNrZ3JvdW5kJywgdGhpcy5pbnB1dEdyZXlCYWNrZ3JvdW5kKTtcbiAgfVxufVxuIiwiPCEtLSBuZ01vZGVsIC0tPlxuPGlvbi1pbnB1dFxuICAqbmdJZj1cIiFjb250cm9sXCJcbiAgW25nQ2xhc3NdPVwieyAndGV4dC1jZW50ZXInOiBpbnB1dFRleHRDZW50ZXIsICdncmV5LWJhY2tncm91bmQnOiBpbnB1dEdyZXlCYWNrZ3JvdW5kIH1cIlxuICBbbGFiZWxdPVwibGFiZWxcIlxuICBbbGFiZWxQbGFjZW1lbnRdPVwiaW5wdXRMYWJlbFBsYWNlbWVudFwiXG4gIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gIGZpbGw9XCJvdXRsaW5lXCJcbiAgW2NsZWFySW5wdXRdPVwiIWlucHV0Q2xlYXJcIlxuICBbYXV0b2NhcGl0YWxpemVdPVwiYXV0b0NhcGl0YWxpemVcIlxuICBtb2RlPVwibWRcIlxuICBbaW5wdXRtb2RlXT1cImxvY2FsSW5wdXRNb2RlXCJcbiAgW21pbl09XCJtaW5cIlxuICBbbWF4XT1cIm1heFwiXG4gIFttYXhsZW5ndGhdPVwibWF4TGVuZ3RoIHx8IG51bGxcIlxuICBbdHlwZV09XCJ0eXBlXCJcbiAgKGlvbklucHV0KT1cInZhbHVlQ2hhbmdlLmVtaXQoJGV2ZW50LmRldGFpbC52YWx1ZSA/PyB1bmRlZmluZWQpXCI+PC9pb24taW5wdXQ+XG48IS0tIEZvcm0gQ29udHJvbCAtLT5cbjxpb24taW5wdXRcbiAgKm5nSWY9XCJjb250cm9sXCJcbiAgW25nQ2xhc3NdPVwieyAndGV4dC1jZW50ZXInOiBpbnB1dFRleHRDZW50ZXIsICdncmV5LWJhY2tncm91bmQnOiBpbnB1dEdyZXlCYWNrZ3JvdW5kIH1cIlxuICBbbGFiZWxdPVwibGFiZWxcIlxuICBbbGFiZWxQbGFjZW1lbnRdPVwiaW5wdXRMYWJlbFBsYWNlbWVudFwiXG4gIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gIGZpbGw9XCJvdXRsaW5lXCJcbiAgW2NsZWFySW5wdXRdPVwiIWlucHV0Q2xlYXJcIlxuICBbYXV0b2NhcGl0YWxpemVdPVwiYXV0b0NhcGl0YWxpemVcIlxuICBtb2RlPVwibWRcIlxuICBbaW5wdXRtb2RlXT1cImxvY2FsSW5wdXRNb2RlXCJcbiAgW2Zvcm1Db250cm9sXT1cImNvbnRyb2xcIlxuICBbbWluXT1cIm1pblwiXG4gIFttYXhdPVwibWF4XCJcbiAgW21heGxlbmd0aF09XCJtYXhMZW5ndGggfHwgbnVsbFwiXG4gIFt0eXBlXT1cInR5cGVcIlxuICAoaW9uSW5wdXQpPVwidmFsdWVDaGFuZ2UuZW1pdCgkZXZlbnQuZGV0YWlsLnZhbHVlID8/IHVuZGVmaW5lZClcIj48L2lvbi1pbnB1dD5cbjxjZi1mb3JtLXZhbGlkYXRpb24gKm5nSWY9XCJjb250cm9sXCIgW2NvbnRyb2xdPVwiY29udHJvbFwiPjwvY2YtZm9ybS12YWxpZGF0aW9uPlxuIl19
@@ -10,10 +10,10 @@ export class FormInputSelectComponent {
10
10
  label;
11
11
  options;
12
12
  labelPlacement;
13
+ placeholder;
13
14
  control;
14
- ionInputEvent = new EventEmitter();
15
- ngModelValue;
16
- ngModelValueChange = new EventEmitter();
15
+ value;
16
+ valueChange = new EventEmitter();
17
17
  inputLabelPlacement;
18
18
  ngOnChanges(changes) {
19
19
  this.inputLabelPlacement =
@@ -21,24 +21,24 @@ export class FormInputSelectComponent {
21
21
  'floating';
22
22
  }
23
23
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: FormInputSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
24
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: FormInputSelectComponent, selector: "cf-form-input-select", inputs: { label: "label", options: "options", labelPlacement: "labelPlacement", control: "control", ngModelValue: "ngModelValue" }, outputs: { ionInputEvent: "ionInputEvent", ngModelValueChange: "ngModelValueChange" }, usesOnChanges: true, ngImport: i0, template: "<!-- ngModel -->\n<ion-select\n *ngIf=\"!control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n (ionChange)=\"ionInputEvent.emit($event.detail.value ?? undefined); ngModelValueChange.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<!-- Form Control -->\n<ion-select\n *ngIf=\"control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n [formControl]=\"control\"\n (ionChange)=\"ionInputEvent.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-select{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}::ng-deep ion-select-popover ion-list[class*=popover]{background:var(--cf-app-background-light)}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover]{--background: transparent;--border-radius: 8px;--background-focused: var(--cf-app-color-accent);--background-focused-opacity: .5;--background-hover: var(--cf-app-color-primary);--background-hover-opacity: .1}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover] ion-radio{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start}\n"], dependencies: [{ kind: "component", type: i1.IonSelect, selector: "ion-select", inputs: ["cancelText", "color", "compareWith", "disabled", "expandedIcon", "fill", "interface", "interfaceOptions", "justify", "label", "labelPlacement", "legacy", "mode", "multiple", "name", "okText", "placeholder", "selectedText", "shape", "toggleIcon", "value"] }, { kind: "component", type: i1.IonSelectOption, selector: "ion-select-option", inputs: ["disabled", "value"] }, { kind: "directive", type: i1.SelectValueAccessor, selector: "ion-select, ion-radio-group, ion-segment, ion-datetime" }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.FormValidationComponent, selector: "cf-form-validation", inputs: ["control"] }] });
24
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: FormInputSelectComponent, selector: "cf-form-input-select", inputs: { label: "label", options: "options", labelPlacement: "labelPlacement", placeholder: "placeholder", control: "control", value: "value" }, outputs: { valueChange: "valueChange" }, usesOnChanges: true, ngImport: i0, template: "<!-- ngModel -->\n<ion-select\n *ngIf=\"!control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n (ionChange)=\"valueChange.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<!-- Form Control -->\n<ion-select\n *ngIf=\"control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n [formControl]=\"control\"\n (ionChange)=\"valueChange.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-select{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}::ng-deep ion-select-popover ion-list[class*=popover]{background:var(--cf-app-background-light)}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover]{--background: transparent;--border-radius: 8px;--background-focused: var(--cf-app-color-accent);--background-focused-opacity: .5;--background-hover: var(--cf-app-color-primary);--background-hover-opacity: .1}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover] ion-radio{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start}\n"], dependencies: [{ kind: "component", type: i1.IonSelect, selector: "ion-select", inputs: ["cancelText", "color", "compareWith", "disabled", "expandedIcon", "fill", "interface", "interfaceOptions", "justify", "label", "labelPlacement", "legacy", "mode", "multiple", "name", "okText", "placeholder", "selectedText", "shape", "toggleIcon", "value"] }, { kind: "component", type: i1.IonSelectOption, selector: "ion-select-option", inputs: ["disabled", "value"] }, { kind: "directive", type: i1.SelectValueAccessor, selector: "ion-select, ion-radio-group, ion-segment, ion-datetime" }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.FormValidationComponent, selector: "cf-form-validation", inputs: ["control"] }] });
25
25
  }
26
26
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: FormInputSelectComponent, decorators: [{
27
27
  type: Component,
28
- args: [{ selector: 'cf-form-input-select', template: "<!-- ngModel -->\n<ion-select\n *ngIf=\"!control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n (ionChange)=\"ionInputEvent.emit($event.detail.value ?? undefined); ngModelValueChange.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<!-- Form Control -->\n<ion-select\n *ngIf=\"control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n [formControl]=\"control\"\n (ionChange)=\"ionInputEvent.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-select{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}::ng-deep ion-select-popover ion-list[class*=popover]{background:var(--cf-app-background-light)}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover]{--background: transparent;--border-radius: 8px;--background-focused: var(--cf-app-color-accent);--background-focused-opacity: .5;--background-hover: var(--cf-app-color-primary);--background-hover-opacity: .1}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover] ion-radio{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start}\n"] }]
28
+ args: [{ selector: 'cf-form-input-select', template: "<!-- ngModel -->\n<ion-select\n *ngIf=\"!control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n (ionChange)=\"valueChange.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<!-- Form Control -->\n<ion-select\n *ngIf=\"control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n [formControl]=\"control\"\n (ionChange)=\"valueChange.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-select{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}::ng-deep ion-select-popover ion-list[class*=popover]{background:var(--cf-app-background-light)}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover]{--background: transparent;--border-radius: 8px;--background-focused: var(--cf-app-color-accent);--background-focused-opacity: .5;--background-hover: var(--cf-app-color-primary);--background-hover-opacity: .1}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover] ion-radio{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start}\n"] }]
29
29
  }], propDecorators: { label: [{
30
30
  type: Input
31
31
  }], options: [{
32
32
  type: Input
33
33
  }], labelPlacement: [{
34
34
  type: Input
35
+ }], placeholder: [{
36
+ type: Input
35
37
  }], control: [{
36
38
  type: Input
37
- }], ionInputEvent: [{
38
- type: Output
39
- }], ngModelValue: [{
39
+ }], value: [{
40
40
  type: Input
41
- }], ngModelValueChange: [{
41
+ }], valueChange: [{
42
42
  type: Output
43
43
  }] } });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1pbnB1dC1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2FyZWZpcnN0L2xpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0taW5wdXQtc2VsZWN0L2Zvcm0taW5wdXQtc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhcmVmaXJzdC9saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWlucHV0LXNlbGVjdC9mb3JtLWlucHV0LXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFXQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFzQyxNQUFNLGVBQWUsQ0FBQztBQUMzRyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7OztBQVNqRSxNQUFNLE9BQU8sd0JBQXdCO0lBQzFCLEtBQUssQ0FBVTtJQUNmLE9BQU8sQ0FBZ0M7SUFDdkMsY0FBYyxDQUFvQztJQUNsRCxPQUFPLENBQXNCO0lBQzVCLGFBQWEsR0FBRyxJQUFJLFlBQVksRUFBbUQsQ0FBQztJQUdyRixZQUFZLENBQWtEO0lBQzdELGtCQUFrQixHQUFHLElBQUksWUFBWSxFQUE0QixDQUFDO0lBRzVFLG1CQUFtQixDQUE2QjtJQU9oRCxXQUFXLENBQUMsT0FBc0I7UUFFaEMsSUFBSSxDQUFDLG1CQUFtQjtZQUN0QixtQkFBbUIsQ0FBbUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxDQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDO2dCQUN2SSxVQUFVLENBQUM7SUFDZixDQUFDO3VHQXhCVSx3QkFBd0I7MkZBQXhCLHdCQUF3Qiw0U0N2QnJDLCs3QkF3QkE7OzJGRERhLHdCQUF3QjtrQkFMcEMsU0FBUzsrQkFDRSxzQkFBc0I7OEJBS3ZCLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0ksYUFBYTtzQkFBdEIsTUFBTTtnQkFHRSxZQUFZO3NCQUFwQixLQUFLO2dCQUNJLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ2FyZWZpcnN0IExpYnJhcnkgRm9ybSBJbnB1dCBTZWxlY3RcbiAqXG4gKiBAZmlsZSAgICAgICAgICBmb3JtLWlucHV0LXNlbGVjdC5jb21wb25lbnRcbiAqIEBkZXNjcmlwdGlvbiAgIENvbnRhaW5zIGFsbCB0aGUgbG9naWMgZm9yIGdlbmVyYXRpbmcgYSBDYXJlRmlyc3QgU2VsZWN0XG4gKiBAYXV0aG9yICAgICAgICBBcm5vIEphbnNlbiB2YW4gVnV1cmVuXG4gKiBAc2luY2UgICAgICAgICAyMDIzIC0gMTIgLSAxNFxuICogQHVzYWdlICAgICAgICAgPGNmLWZvcm0taW5wdXQtc2VsZWN0IGxhYmVsPVwiTGFiZWwgTmFtZVwiIFtvcHRpb25zXT1cIlt7IGRpc3BsYXlOYW1lOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgbnVsbCB8IHVuZGVmaW5lZCB9XVwiICVsYWJlbFBsYWNlbWVudCUgJShpb25JbnB1dEV2ZW50KT1cImN1cnJlbnRWYWx1ZVwiJSAlWyhuZ01vZGVsVmFsdWUpXT1cInR3b1dheUNvbXNcIiUgJVtjb250cm9sXSU9XCJmb3JtTmFtZS5jb250cm9scy5jb250cm9sTmFtZVwiPjwvY2YtZm9ybS1pbnB1dC1zZWxlY3Q+XG4gKiAgICAgICAgICAgICAgICBkaXNhYmxlIGlucHV0IGJ5IGRpc2FibGluZyB0aGUgZm9ybSBjb250cm9sXG4gKi9cblxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIHR5cGUgT25DaGFuZ2VzLCB0eXBlIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuLy8tLS0gVXRpbHNcbmltcG9ydCB7IHZhbGlkYXRlU3RyaW5nVmFsdWUgfSBmcm9tICcuLi8uLi91dGlscy9hdHRyaWJ1dGUudXRpbCc7XG4vLy0tLSBJbnRlcmZhY2VzXG5pbXBvcnQgdHlwZSB7IEZvcm1JbnB1dFNlbGVjdE9wdGlvbnNJIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9pbnB1dC5pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjZi1mb3JtLWlucHV0LXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9mb3JtLWlucHV0LXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9mb3JtLWlucHV0LXNlbGVjdC5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1JbnB1dFNlbGVjdENvbXBvbmVudDxUPiBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIGxhYmVsITogc3RyaW5nO1xuICBASW5wdXQoKSBvcHRpb25zITogRm9ybUlucHV0U2VsZWN0T3B0aW9uc0k8VD5bXTtcbiAgQElucHV0KCkgbGFiZWxQbGFjZW1lbnQ/OiAnZml4ZWQnIHwgJ2Zsb2F0aW5nJyB8ICdzdGFja2VkJztcbiAgQElucHV0KCkgY29udHJvbD86IEZvcm1Db250cm9sIHwgbnVsbDtcbiAgQE91dHB1dCgpIGlvbklucHV0RXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPEZvcm1JbnB1dFNlbGVjdE9wdGlvbnNJPFQ+Wyd2YWx1ZSddIHwgdW5kZWZpbmVkPigpO1xuXG4gIC8vLS0tIG5nTW9kZWxcbiAgQElucHV0KCkgbmdNb2RlbFZhbHVlOiBGb3JtSW5wdXRTZWxlY3RPcHRpb25zSTxUPlsndmFsdWUnXSB8IHVuZGVmaW5lZDtcbiAgQE91dHB1dCgpIG5nTW9kZWxWYWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8dHlwZW9mIHRoaXMubmdNb2RlbFZhbHVlPigpO1xuXG4gIC8vLS0tIExvY2FsIHZhcmlhYmxlc1xuICBpbnB1dExhYmVsUGxhY2VtZW50OiB0eXBlb2YgdGhpcy5sYWJlbFBsYWNlbWVudDtcblxuICAvKiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAqIEBuYW1lICAgICAgICAgIG5nT25DaGFuZ2VzXG4gICAqIEBkZXNjcmlwdGlvbiAgIERldGVjdCBjaGFuZ2VzIHRvIGlucHV0IHZhbHVlc1xuICAgKiBAcGFyYW0gICAgICAgICB7U2ltcGxlQ2hhbmdlc30gY2hhbmdlc1xuICAgKi9cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIC8vLS0tIExhYmVsIFBsYWNlbWVudFxuICAgIHRoaXMuaW5wdXRMYWJlbFBsYWNlbWVudCA9XG4gICAgICB2YWxpZGF0ZVN0cmluZ1ZhbHVlPCdmaXhlZCcgfCAnZmxvYXRpbmcnIHwgJ3N0YWNrZWQnPihjaGFuZ2VzLCAnaW5wdXRUeXBlJywgWydmaXhlZCcsICdmbG9hdGluZycsICdzdGFja2VkJ10sIHRoaXMuaW5wdXRMYWJlbFBsYWNlbWVudCkgfHxcbiAgICAgICdmbG9hdGluZyc7XG4gIH1cbn1cbiIsIjwhLS0gbmdNb2RlbCAtLT5cbjxpb24tc2VsZWN0XG4gICpuZ0lmPVwiIWNvbnRyb2xcIlxuICBbbGFiZWxdPVwibGFiZWxcIlxuICBbbGFiZWxQbGFjZW1lbnRdPVwiaW5wdXRMYWJlbFBsYWNlbWVudFwiXG4gIGZpbGw9XCJvdXRsaW5lXCJcbiAgbW9kZT1cIm1kXCJcbiAgaW50ZXJmYWNlPVwicG9wb3ZlclwiXG4gIChpb25DaGFuZ2UpPVwiaW9uSW5wdXRFdmVudC5lbWl0KCRldmVudC5kZXRhaWwudmFsdWUgPz8gdW5kZWZpbmVkKTsgbmdNb2RlbFZhbHVlQ2hhbmdlLmVtaXQoJGV2ZW50LmRldGFpbC52YWx1ZSA/PyB1bmRlZmluZWQpXCI+XG4gIDxpb24tc2VsZWN0LW9wdGlvbiAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIG9wdGlvbnNcIiBbdmFsdWVdPVwib3B0aW9uLnZhbHVlXCI+e3sgb3B0aW9uLmRpc3BsYXlOYW1lIH19PC9pb24tc2VsZWN0LW9wdGlvbj5cbjwvaW9uLXNlbGVjdD5cbjwhLS0gRm9ybSBDb250cm9sIC0tPlxuPGlvbi1zZWxlY3RcbiAgKm5nSWY9XCJjb250cm9sXCJcbiAgW2xhYmVsXT1cImxhYmVsXCJcbiAgW2xhYmVsUGxhY2VtZW50XT1cImlucHV0TGFiZWxQbGFjZW1lbnRcIlxuICBmaWxsPVwib3V0bGluZVwiXG4gIG1vZGU9XCJtZFwiXG4gIGludGVyZmFjZT1cInBvcG92ZXJcIlxuICBbZm9ybUNvbnRyb2xdPVwiY29udHJvbFwiXG4gIChpb25DaGFuZ2UpPVwiaW9uSW5wdXRFdmVudC5lbWl0KCRldmVudC5kZXRhaWwudmFsdWUgPz8gdW5kZWZpbmVkKVwiPlxuICA8aW9uLXNlbGVjdC1vcHRpb24gKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBvcHRpb25zXCIgW3ZhbHVlXT1cIm9wdGlvbi52YWx1ZVwiPnt7IG9wdGlvbi5kaXNwbGF5TmFtZSB9fTwvaW9uLXNlbGVjdC1vcHRpb24+XG48L2lvbi1zZWxlY3Q+XG48Y2YtZm9ybS12YWxpZGF0aW9uICpuZ0lmPVwiY29udHJvbFwiIFtjb250cm9sXT1cImNvbnRyb2xcIj48L2NmLWZvcm0tdmFsaWRhdGlvbj5cbiJdfQ==
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1pbnB1dC1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2FyZWZpcnN0L2xpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0taW5wdXQtc2VsZWN0L2Zvcm0taW5wdXQtc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhcmVmaXJzdC9saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWlucHV0LXNlbGVjdC9mb3JtLWlucHV0LXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFXQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFzQyxNQUFNLGVBQWUsQ0FBQztBQUMzRyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7OztBQVNqRSxNQUFNLE9BQU8sd0JBQXdCO0lBQzFCLEtBQUssQ0FBVTtJQUNmLE9BQU8sQ0FBZ0M7SUFDdkMsY0FBYyxDQUFvQztJQUNsRCxXQUFXLENBQXNCO0lBQ2pDLE9BQU8sQ0FBc0I7SUFHN0IsS0FBSyxDQUFrRDtJQUN0RCxXQUFXLEdBQUcsSUFBSSxZQUFZLEVBQXFCLENBQUM7SUFHOUQsbUJBQW1CLENBQTZCO0lBT2hELFdBQVcsQ0FBQyxPQUFzQjtRQUVoQyxJQUFJLENBQUMsbUJBQW1CO1lBQ3RCLG1CQUFtQixDQUFtQyxPQUFPLEVBQUUsV0FBVyxFQUFFLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUMsRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUM7Z0JBQ3ZJLFVBQVUsQ0FBQztJQUNmLENBQUM7dUdBeEJVLHdCQUF3QjsyRkFBeEIsd0JBQXdCLDRRQ3ZCckMsazhCQTBCQTs7MkZESGEsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLHNCQUFzQjs4QkFLdkIsS0FBSztzQkFBYixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUdHLEtBQUs7c0JBQWIsS0FBSztnQkFDSSxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDYXJlZmlyc3QgTGlicmFyeSBGb3JtIElucHV0IFNlbGVjdFxuICpcbiAqIEBmaWxlICAgICAgICAgIGZvcm0taW5wdXQtc2VsZWN0LmNvbXBvbmVudFxuICogQGRlc2NyaXB0aW9uICAgQ29udGFpbnMgYWxsIHRoZSBsb2dpYyBmb3IgZ2VuZXJhdGluZyBhIENhcmVGaXJzdCBTZWxlY3RcbiAqIEBhdXRob3IgICAgICAgIEFybm8gSmFuc2VuIHZhbiBWdXVyZW5cbiAqIEBzaW5jZSAgICAgICAgIDIwMjMgLSAxMiAtIDE0XG4gKiBAdXNhZ2UgICAgICAgICA8Y2YtZm9ybS1pbnB1dC1zZWxlY3QgbGFiZWw9XCJMYWJlbCBOYW1lXCIgW29wdGlvbnNdPVwiW3sgZGlzcGxheU5hbWU6IHN0cmluZzsgdmFsdWU6IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBudWxsIHwgdW5kZWZpbmVkIH1dXCIgJWxhYmVsUGxhY2VtZW50JSAlKHZhbHVlQ2hhbmdlKT1cImN1cnJlbnRWYWx1ZVwiJSAlWyh2YWx1ZSldPVwidHdvV2F5Q29tc1wiJSAlW2NvbnRyb2xdJT1cImZvcm1OYW1lLmNvbnRyb2xzLmNvbnRyb2xOYW1lXCI+PC9jZi1mb3JtLWlucHV0LXNlbGVjdD5cbiAqICAgICAgICAgICAgICAgIGRpc2FibGUgaW5wdXQgYnkgZGlzYWJsaW5nIHRoZSBmb3JtIGNvbnRyb2xcbiAqL1xuXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgdHlwZSBPbkNoYW5nZXMsIHR5cGUgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG4vLy0tLSBVdGlsc1xuaW1wb3J0IHsgdmFsaWRhdGVTdHJpbmdWYWx1ZSB9IGZyb20gJy4uLy4uL3V0aWxzL2F0dHJpYnV0ZS51dGlsJztcbi8vLS0tIEludGVyZmFjZXNcbmltcG9ydCB0eXBlIHsgRm9ybUlucHV0U2VsZWN0T3B0aW9uc0kgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2lucHV0LmludGVyZmFjZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NmLWZvcm0taW5wdXQtc2VsZWN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0taW5wdXQtc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2Zvcm0taW5wdXQtc2VsZWN0LmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUlucHV0U2VsZWN0Q29tcG9uZW50PFQ+IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgbGFiZWwhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIG9wdGlvbnMhOiBGb3JtSW5wdXRTZWxlY3RPcHRpb25zSTxUPltdO1xuICBASW5wdXQoKSBsYWJlbFBsYWNlbWVudD86ICdmaXhlZCcgfCAnZmxvYXRpbmcnIHwgJ3N0YWNrZWQnO1xuICBASW5wdXQoKSBwbGFjZWhvbGRlcj86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgY29udHJvbD86IEZvcm1Db250cm9sIHwgbnVsbDtcblxuICAvLy0tLSBuZ01vZGVsXG4gIEBJbnB1dCgpIHZhbHVlOiBGb3JtSW5wdXRTZWxlY3RPcHRpb25zSTxUPlsndmFsdWUnXSB8IHVuZGVmaW5lZDtcbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjx0eXBlb2YgdGhpcy52YWx1ZT4oKTtcblxuICAvLy0tLSBMb2NhbCB2YXJpYWJsZXNcbiAgaW5wdXRMYWJlbFBsYWNlbWVudDogdHlwZW9mIHRoaXMubGFiZWxQbGFjZW1lbnQ7XG5cbiAgLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgKiBAbmFtZSAgICAgICAgICBuZ09uQ2hhbmdlc1xuICAgKiBAZGVzY3JpcHRpb24gICBEZXRlY3QgY2hhbmdlcyB0byBpbnB1dCB2YWx1ZXNcbiAgICogQHBhcmFtICAgICAgICAge1NpbXBsZUNoYW5nZXN9IGNoYW5nZXNcbiAgICovXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAvLy0tLSBMYWJlbCBQbGFjZW1lbnRcbiAgICB0aGlzLmlucHV0TGFiZWxQbGFjZW1lbnQgPVxuICAgICAgdmFsaWRhdGVTdHJpbmdWYWx1ZTwnZml4ZWQnIHwgJ2Zsb2F0aW5nJyB8ICdzdGFja2VkJz4oY2hhbmdlcywgJ2lucHV0VHlwZScsIFsnZml4ZWQnLCAnZmxvYXRpbmcnLCAnc3RhY2tlZCddLCB0aGlzLmlucHV0TGFiZWxQbGFjZW1lbnQpIHx8XG4gICAgICAnZmxvYXRpbmcnO1xuICB9XG59XG4iLCI8IS0tIG5nTW9kZWwgLS0+XG48aW9uLXNlbGVjdFxuICAqbmdJZj1cIiFjb250cm9sXCJcbiAgW2xhYmVsXT1cImxhYmVsXCJcbiAgW2xhYmVsUGxhY2VtZW50XT1cImlucHV0TGFiZWxQbGFjZW1lbnRcIlxuICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICBmaWxsPVwib3V0bGluZVwiXG4gIG1vZGU9XCJtZFwiXG4gIGludGVyZmFjZT1cInBvcG92ZXJcIlxuICAoaW9uQ2hhbmdlKT1cInZhbHVlQ2hhbmdlLmVtaXQoJGV2ZW50LmRldGFpbC52YWx1ZSA/PyB1bmRlZmluZWQpXCI+XG4gIDxpb24tc2VsZWN0LW9wdGlvbiAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIG9wdGlvbnNcIiBbdmFsdWVdPVwib3B0aW9uLnZhbHVlXCI+e3sgb3B0aW9uLmRpc3BsYXlOYW1lIH19PC9pb24tc2VsZWN0LW9wdGlvbj5cbjwvaW9uLXNlbGVjdD5cbjwhLS0gRm9ybSBDb250cm9sIC0tPlxuPGlvbi1zZWxlY3RcbiAgKm5nSWY9XCJjb250cm9sXCJcbiAgW2xhYmVsXT1cImxhYmVsXCJcbiAgW2xhYmVsUGxhY2VtZW50XT1cImlucHV0TGFiZWxQbGFjZW1lbnRcIlxuICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICBmaWxsPVwib3V0bGluZVwiXG4gIG1vZGU9XCJtZFwiXG4gIGludGVyZmFjZT1cInBvcG92ZXJcIlxuICBbZm9ybUNvbnRyb2xdPVwiY29udHJvbFwiXG4gIChpb25DaGFuZ2UpPVwidmFsdWVDaGFuZ2UuZW1pdCgkZXZlbnQuZGV0YWlsLnZhbHVlID8/IHVuZGVmaW5lZClcIj5cbiAgPGlvbi1zZWxlY3Qtb3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2Ygb3B0aW9uc1wiIFt2YWx1ZV09XCJvcHRpb24udmFsdWVcIj57eyBvcHRpb24uZGlzcGxheU5hbWUgfX08L2lvbi1zZWxlY3Qtb3B0aW9uPlxuPC9pb24tc2VsZWN0PlxuPGNmLWZvcm0tdmFsaWRhdGlvbiAqbmdJZj1cImNvbnRyb2xcIiBbY29udHJvbF09XCJjb250cm9sXCI+PC9jZi1mb3JtLXZhbGlkYXRpb24+XG4iXX0=
@@ -8,12 +8,14 @@ import * as i4 from "../form-validation/form-validation.component";
8
8
  export class FormInputTextAreaComponent {
9
9
  label;
10
10
  labelPlacement;
11
+ placeholder;
11
12
  autoCapitalize;
12
13
  control;
13
14
  textCenter;
14
- ionInputEvent = new EventEmitter();
15
- ngModelValue;
16
- ngModelValueChange = new EventEmitter();
15
+ minHeight = 'none';
16
+ maxHeight = 'none';
17
+ value;
18
+ valueChange = new EventEmitter();
17
19
  inputLabelPlacement;
18
20
  inputClear = true;
19
21
  inputTextCenter = false;
@@ -27,26 +29,30 @@ export class FormInputTextAreaComponent {
27
29
  validateStringValue(changes, 'type', ['off', 'none', 'on', 'sentences', 'words', 'characters'], this.inputAutoCapitalize) || 'none';
28
30
  }
29
31
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: FormInputTextAreaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
30
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: FormInputTextAreaComponent, selector: "cf-form-input-text-area", inputs: { label: "label", labelPlacement: "labelPlacement", autoCapitalize: "autoCapitalize", control: "control", textCenter: "textCenter", ngModelValue: "ngModelValue" }, outputs: { ionInputEvent: "ionInputEvent", ngModelValueChange: "ngModelValueChange" }, usesOnChanges: true, ngImport: i0, template: "<!-- ngModel -->\n<ion-textarea\n *ngIf=\"!control\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n (ionInput)=\"ionInputEvent.emit($event.detail.value ?? undefined); ngModelValueChange.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<!-- Form Control -->\n<ion-textarea\n *ngIf=\"control\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [formControl]=\"control\"\n (ionInput)=\"ionInputEvent.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-textarea{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-textarea.text-center{text-align:center}\n"], dependencies: [{ kind: "component", type: i1.IonTextarea, selector: "ion-textarea", inputs: ["autoGrow", "autocapitalize", "autofocus", "clearOnEdit", "color", "cols", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "legacy", "maxlength", "minlength", "mode", "name", "placeholder", "readonly", "required", "rows", "shape", "spellcheck", "value", "wrap"] }, { kind: "directive", type: i1.TextValueAccessor, selector: "ion-input:not([type=number]),ion-textarea,ion-searchbar,ion-range" }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.FormValidationComponent, selector: "cf-form-validation", inputs: ["control"] }] });
32
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: FormInputTextAreaComponent, selector: "cf-form-input-text-area", inputs: { label: "label", labelPlacement: "labelPlacement", placeholder: "placeholder", autoCapitalize: "autoCapitalize", control: "control", textCenter: "textCenter", minHeight: "minHeight", maxHeight: "maxHeight", value: "value" }, outputs: { valueChange: "valueChange" }, usesOnChanges: true, ngImport: i0, template: "<!-- ngModel -->\n<ion-textarea\n [style]=\"'min-height: ' + minHeight + '; max-height: ' + maxHeight\"\n *ngIf=\"!control\"\n [placeholder]=\"placeholder\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n [autoGrow]=\"true\"\n mode=\"md\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<!-- Form Control -->\n<ion-textarea\n [style]=\"'min-height: ' + minHeight + '; max-height: ' + maxHeight\"\n *ngIf=\"control\"\n [placeholder]=\"placeholder\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n [autoGrow]=\"true\"\n mode=\"md\"\n [formControl]=\"control\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-textarea{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-textarea.text-center{text-align:center}\n"], dependencies: [{ kind: "component", type: i1.IonTextarea, selector: "ion-textarea", inputs: ["autoGrow", "autocapitalize", "autofocus", "clearOnEdit", "color", "cols", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "legacy", "maxlength", "minlength", "mode", "name", "placeholder", "readonly", "required", "rows", "shape", "spellcheck", "value", "wrap"] }, { kind: "directive", type: i1.TextValueAccessor, selector: "ion-input:not([type=number]),ion-textarea,ion-searchbar,ion-range" }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i4.FormValidationComponent, selector: "cf-form-validation", inputs: ["control"] }] });
31
33
  }
32
34
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: FormInputTextAreaComponent, decorators: [{
33
35
  type: Component,
34
- args: [{ selector: 'cf-form-input-text-area', template: "<!-- ngModel -->\n<ion-textarea\n *ngIf=\"!control\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n (ionInput)=\"ionInputEvent.emit($event.detail.value ?? undefined); ngModelValueChange.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<!-- Form Control -->\n<ion-textarea\n *ngIf=\"control\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [formControl]=\"control\"\n (ionInput)=\"ionInputEvent.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-textarea{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-textarea.text-center{text-align:center}\n"] }]
36
+ args: [{ selector: 'cf-form-input-text-area', template: "<!-- ngModel -->\n<ion-textarea\n [style]=\"'min-height: ' + minHeight + '; max-height: ' + maxHeight\"\n *ngIf=\"!control\"\n [placeholder]=\"placeholder\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n [autoGrow]=\"true\"\n mode=\"md\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<!-- Form Control -->\n<ion-textarea\n [style]=\"'min-height: ' + minHeight + '; max-height: ' + maxHeight\"\n *ngIf=\"control\"\n [placeholder]=\"placeholder\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n [autoGrow]=\"true\"\n mode=\"md\"\n [formControl]=\"control\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-textarea{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-textarea.text-center{text-align:center}\n"] }]
35
37
  }], propDecorators: { label: [{
36
38
  type: Input
37
39
  }], labelPlacement: [{
38
40
  type: Input
41
+ }], placeholder: [{
42
+ type: Input
39
43
  }], autoCapitalize: [{
40
44
  type: Input
41
45
  }], control: [{
42
46
  type: Input
43
47
  }], textCenter: [{
44
48
  type: Input
45
- }], ionInputEvent: [{
46
- type: Output
47
- }], ngModelValue: [{
49
+ }], minHeight: [{
50
+ type: Input
51
+ }], maxHeight: [{
52
+ type: Input
53
+ }], value: [{
48
54
  type: Input
49
- }], ngModelValueChange: [{
55
+ }], valueChange: [{
50
56
  type: Output
51
57
  }] } });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1pbnB1dC10ZXh0LWFyZWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2FyZWZpcnN0L2xpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0taW5wdXQtdGV4dC1hcmVhL2Zvcm0taW5wdXQtdGV4dC1hcmVhLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhcmVmaXJzdC9saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWlucHV0LXRleHQtYXJlYS9mb3JtLWlucHV0LXRleHQtYXJlYS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFXQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFzQyxNQUFNLGVBQWUsQ0FBQztBQUczRyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7O0FBT3RGLE1BQU0sT0FBTywwQkFBMEI7SUFDNUIsS0FBSyxDQUFVO0lBQ2YsY0FBYyxDQUFvQztJQUNsRCxjQUFjLENBQWdFO0lBQzlFLE9BQU8sQ0FBc0I7SUFDN0IsVUFBVSxDQUFnQztJQUN6QyxhQUFhLEdBQUcsSUFBSSxZQUFZLEVBQXNCLENBQUM7SUFHeEQsWUFBWSxDQUFxQjtJQUNoQyxrQkFBa0IsR0FBRyxJQUFJLFlBQVksRUFBNEIsQ0FBQztJQUc1RSxtQkFBbUIsQ0FBNkI7SUFDaEQsVUFBVSxHQUFHLElBQUksQ0FBQztJQUNsQixlQUFlLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLG1CQUFtQixDQUE2QjtJQU9oRCxXQUFXLENBQUMsT0FBc0I7UUFFaEMsSUFBSSxDQUFDLG1CQUFtQjtZQUN0QixtQkFBbUIsQ0FBbUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxDQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDO2dCQUN2SSxVQUFVLENBQUM7UUFFYixJQUFJLENBQUMsZUFBZSxHQUFHLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRXhGLElBQUksQ0FBQyxtQkFBbUI7WUFDdEIsbUJBQW1CLENBQ2pCLE9BQU8sRUFDUCxNQUFNLEVBQ04sQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLFlBQVksQ0FBQyxFQUN6RCxJQUFJLENBQUMsbUJBQW1CLENBQ3pCLElBQUksTUFBTSxDQUFDO0lBQ2hCLENBQUM7dUdBdENVLDBCQUEwQjsyRkFBMUIsMEJBQTBCLHVWQ3JCdkMsMjBCQXNCQTs7MkZERGEsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNFLHlCQUF5Qjs4QkFLMUIsS0FBSztzQkFBYixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDSSxhQUFhO3NCQUF0QixNQUFNO2dCQUdFLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0ksa0JBQWtCO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDYXJlZmlyc3QgTGlicmFyeSBGb3JtIElucHV0IFRleHQgQXJlYVxuICpcbiAqIEBmaWxlICAgICAgICAgIGZvcm0taW5wdXQtdGV4dC1hcmVhLmNvbXBvbmVudFxuICogQGRlc2NyaXB0aW9uICAgQ29udGFpbnMgYWxsIHRoZSBsb2dpYyBmb3IgZ2VuZXJhdGluZyBhIENhcmVGaXJzdCBGb3JtIElucHV0IFRleHQgQXJlYVxuICogQGF1dGhvciAgICAgICAgQXJubyBKYW5zZW4gdmFuIFZ1dXJlblxuICogQHNpbmNlICAgICAgICAgMjAyMyAtIDEyIC0gMThcbiAqIEB1c2FnZSAgICAgICAgIDxjZi1mb3JtLWlucHV0LXRleHQtYXJlYSBsYWJlbD1cIkxhYmVsIE5hbWVcIiAlbGFiZWxQbGFjZW1lbnQlICV0ZXh0Q2VudGVyJSAlYXV0b0NhcGl0YWxpemUlICUoaW9uSW5wdXRFdmVudCk9XCJjdXJyZW50VmFsdWVcIiUgJVsobmdNb2RlbFZhbHVlKV09XCJ0d29XYXlDb21zXCIlICVbY29udHJvbF0lPVwiZm9ybU5hbWUuY29udHJvbHMuY29udHJvbE5hbWVcIj48L2NmLWZvcm0taW5wdXQtdGV4dC1hcmVhPlxuICogICAgICAgICAgICAgICAgZGlzYWJsZSBpbnB1dCBieSBkaXNhYmxpbmcgdGhlIGZvcm0gY29udHJvbFxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCB0eXBlIE9uQ2hhbmdlcywgdHlwZSBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuLy8tLS0gVXRpbHNcbmltcG9ydCB7IHZhbGlkYXRlU3RyaW5nVmFsdWUsIGNoZWNrVHJ1dGhBdHRyaWJ1dGUgfSBmcm9tICcuLi8uLi91dGlscy9hdHRyaWJ1dGUudXRpbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NmLWZvcm0taW5wdXQtdGV4dC1hcmVhJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0taW5wdXQtdGV4dC1hcmVhLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2Zvcm0taW5wdXQtdGV4dC1hcmVhLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUlucHV0VGV4dEFyZWFDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBsYWJlbCE6IHN0cmluZztcbiAgQElucHV0KCkgbGFiZWxQbGFjZW1lbnQ/OiAnZml4ZWQnIHwgJ2Zsb2F0aW5nJyB8ICdzdGFja2VkJztcbiAgQElucHV0KCkgYXV0b0NhcGl0YWxpemU/OiAnb2ZmJyB8ICdub25lJyB8ICdvbicgfCAnc2VudGVuY2VzJyB8ICd3b3JkcycgfCAnY2hhcmFjdGVycyc7XG4gIEBJbnB1dCgpIGNvbnRyb2w/OiBGb3JtQ29udHJvbCB8IG51bGw7XG4gIEBJbnB1dCgpIHRleHRDZW50ZXI/OiBib29sZWFuIHwgc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBAT3V0cHV0KCkgaW9uSW5wdXRFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuXG4gIC8vLS0tIG5nTW9kZWxcbiAgQElucHV0KCkgbmdNb2RlbFZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBPdXRwdXQoKSBuZ01vZGVsVmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHR5cGVvZiB0aGlzLm5nTW9kZWxWYWx1ZT4oKTtcblxuICAvLy0tLSBMb2NhbCB2YXJpYWJsZXNcbiAgaW5wdXRMYWJlbFBsYWNlbWVudDogdHlwZW9mIHRoaXMubGFiZWxQbGFjZW1lbnQ7XG4gIGlucHV0Q2xlYXIgPSB0cnVlO1xuICBpbnB1dFRleHRDZW50ZXIgPSBmYWxzZTtcbiAgaW5wdXRBdXRvQ2FwaXRhbGl6ZTogdHlwZW9mIHRoaXMuYXV0b0NhcGl0YWxpemU7XG5cbiAgLyoqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgKiBAbmFtZSAgICAgICAgICBuZ09uQ2hhbmdlc1xuICAgKiBAZGVzY3JpcHRpb24gICBEZXRlY3QgY2hhbmdlcyB0byBpbnB1dCB2YWx1ZXNcbiAgICogQHBhcmFtICAgICAgICAge1NpbXBsZUNoYW5nZXN9IGNoYW5nZXNcbiAgICovXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAvLy0tLSBMYWJlbCBQbGFjZW1lbnRcbiAgICB0aGlzLmlucHV0TGFiZWxQbGFjZW1lbnQgPVxuICAgICAgdmFsaWRhdGVTdHJpbmdWYWx1ZTwnZml4ZWQnIHwgJ2Zsb2F0aW5nJyB8ICdzdGFja2VkJz4oY2hhbmdlcywgJ2lucHV0VHlwZScsIFsnZml4ZWQnLCAnZmxvYXRpbmcnLCAnc3RhY2tlZCddLCB0aGlzLmlucHV0TGFiZWxQbGFjZW1lbnQpIHx8XG4gICAgICAnZmxvYXRpbmcnO1xuICAgIC8vLS0tIFRleHQgQ2VudGVyXG4gICAgdGhpcy5pbnB1dFRleHRDZW50ZXIgPSBjaGVja1RydXRoQXR0cmlidXRlKGNoYW5nZXMsICd0ZXh0Q2VudGVyJywgdGhpcy5pbnB1dFRleHRDZW50ZXIpO1xuICAgIC8vLS0tIEF1dG8gQ2FwaXRhbGl6ZVxuICAgIHRoaXMuaW5wdXRBdXRvQ2FwaXRhbGl6ZSA9XG4gICAgICB2YWxpZGF0ZVN0cmluZ1ZhbHVlPCdvZmYnIHwgJ25vbmUnIHwgJ29uJyB8ICdzZW50ZW5jZXMnIHwgJ3dvcmRzJyB8ICdjaGFyYWN0ZXJzJz4oXG4gICAgICAgIGNoYW5nZXMsXG4gICAgICAgICd0eXBlJyxcbiAgICAgICAgWydvZmYnLCAnbm9uZScsICdvbicsICdzZW50ZW5jZXMnLCAnd29yZHMnLCAnY2hhcmFjdGVycyddLFxuICAgICAgICB0aGlzLmlucHV0QXV0b0NhcGl0YWxpemVcbiAgICAgICkgfHwgJ25vbmUnO1xuICB9XG59XG4iLCI8IS0tIG5nTW9kZWwgLS0+XG48aW9uLXRleHRhcmVhXG4gICpuZ0lmPVwiIWNvbnRyb2xcIlxuICBbbmdDbGFzc109XCJ7ICd0ZXh0LWNlbnRlcic6IGlucHV0VGV4dENlbnRlciB9XCJcbiAgW2xhYmVsXT1cImxhYmVsXCJcbiAgW2xhYmVsUGxhY2VtZW50XT1cImlucHV0TGFiZWxQbGFjZW1lbnRcIlxuICBmaWxsPVwib3V0bGluZVwiXG4gIFthdXRvY2FwaXRhbGl6ZV09XCJhdXRvQ2FwaXRhbGl6ZVwiXG4gIG1vZGU9XCJtZFwiXG4gIChpb25JbnB1dCk9XCJpb25JbnB1dEV2ZW50LmVtaXQoJGV2ZW50LmRldGFpbC52YWx1ZSA/PyB1bmRlZmluZWQpOyBuZ01vZGVsVmFsdWVDaGFuZ2UuZW1pdCgkZXZlbnQuZGV0YWlsLnZhbHVlID8/IHVuZGVmaW5lZClcIj48L2lvbi10ZXh0YXJlYT5cbjwhLS0gRm9ybSBDb250cm9sIC0tPlxuPGlvbi10ZXh0YXJlYVxuICAqbmdJZj1cImNvbnRyb2xcIlxuICBbbmdDbGFzc109XCJ7ICd0ZXh0LWNlbnRlcic6IGlucHV0VGV4dENlbnRlciB9XCJcbiAgW2xhYmVsXT1cImxhYmVsXCJcbiAgW2xhYmVsUGxhY2VtZW50XT1cImlucHV0TGFiZWxQbGFjZW1lbnRcIlxuICBmaWxsPVwib3V0bGluZVwiXG4gIFthdXRvY2FwaXRhbGl6ZV09XCJhdXRvQ2FwaXRhbGl6ZVwiXG4gIG1vZGU9XCJtZFwiXG4gIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCJcbiAgKGlvbklucHV0KT1cImlvbklucHV0RXZlbnQuZW1pdCgkZXZlbnQuZGV0YWlsLnZhbHVlID8/IHVuZGVmaW5lZClcIj48L2lvbi10ZXh0YXJlYT5cbjxjZi1mb3JtLXZhbGlkYXRpb24gKm5nSWY9XCJjb250cm9sXCIgW2NvbnRyb2xdPVwiY29udHJvbFwiPjwvY2YtZm9ybS12YWxpZGF0aW9uPlxuIl19
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1pbnB1dC10ZXh0LWFyZWEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2FyZWZpcnN0L2xpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm0taW5wdXQtdGV4dC1hcmVhL2Zvcm0taW5wdXQtdGV4dC1hcmVhLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NhcmVmaXJzdC9saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9mb3JtLWlucHV0LXRleHQtYXJlYS9mb3JtLWlucHV0LXRleHQtYXJlYS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFXQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFzQyxNQUFNLGVBQWUsQ0FBQztBQUczRyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7O0FBT3RGLE1BQU0sT0FBTywwQkFBMEI7SUFDNUIsS0FBSyxDQUFVO0lBQ2YsY0FBYyxDQUFvQztJQUNsRCxXQUFXLENBQXNCO0lBQ2pDLGNBQWMsQ0FBZ0U7SUFDOUUsT0FBTyxDQUFzQjtJQUM3QixVQUFVLENBQWdDO0lBQzFDLFNBQVMsR0FBcUIsTUFBTSxDQUFDO0lBQ3JDLFNBQVMsR0FBcUIsTUFBTSxDQUFDO0lBR3JDLEtBQUssQ0FBcUI7SUFDekIsV0FBVyxHQUFHLElBQUksWUFBWSxFQUFxQixDQUFDO0lBRzlELG1CQUFtQixDQUE2QjtJQUNoRCxVQUFVLEdBQUcsSUFBSSxDQUFDO0lBQ2xCLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDeEIsbUJBQW1CLENBQTZCO0lBT2hELFdBQVcsQ0FBQyxPQUFzQjtRQUVoQyxJQUFJLENBQUMsbUJBQW1CO1lBQ3RCLG1CQUFtQixDQUFtQyxPQUFPLEVBQUUsV0FBVyxFQUFFLENBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUMsRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUM7Z0JBQ3ZJLFVBQVUsQ0FBQztRQUViLElBQUksQ0FBQyxlQUFlLEdBQUcsbUJBQW1CLENBQUMsT0FBTyxFQUFFLFlBQVksRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFFeEYsSUFBSSxDQUFDLG1CQUFtQjtZQUN0QixtQkFBbUIsQ0FDakIsT0FBTyxFQUNQLE1BQU0sRUFDTixDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsWUFBWSxDQUFDLEVBQ3pELElBQUksQ0FBQyxtQkFBbUIsQ0FDekIsSUFBSSxNQUFNLENBQUM7SUFDaEIsQ0FBQzt1R0F4Q1UsMEJBQTBCOzJGQUExQiwwQkFBMEIsdVdDckJ2Qyw4Z0NBNEJBOzsyRkRQYSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0UseUJBQXlCOzhCQUsxQixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUdHLEtBQUs7c0JBQWIsS0FBSztnQkFDSSxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDYXJlZmlyc3QgTGlicmFyeSBGb3JtIElucHV0IFRleHQgQXJlYVxuICpcbiAqIEBmaWxlICAgICAgICAgIGZvcm0taW5wdXQtdGV4dC1hcmVhLmNvbXBvbmVudFxuICogQGRlc2NyaXB0aW9uICAgQ29udGFpbnMgYWxsIHRoZSBsb2dpYyBmb3IgZ2VuZXJhdGluZyBhIENhcmVGaXJzdCBGb3JtIElucHV0IFRleHQgQXJlYVxuICogQGF1dGhvciAgICAgICAgQXJubyBKYW5zZW4gdmFuIFZ1dXJlblxuICogQHNpbmNlICAgICAgICAgMjAyMyAtIDEyIC0gMThcbiAqIEB1c2FnZSAgICAgICAgIDxjZi1mb3JtLWlucHV0LXRleHQtYXJlYSBsYWJlbD1cIkxhYmVsIE5hbWVcIiAlbGFiZWxQbGFjZW1lbnQlICV0ZXh0Q2VudGVyJSAlYXV0b0NhcGl0YWxpemUlICUodmFsdWVDaGFuZ2UpPVwiY3VycmVudFZhbHVlXCIlICVbKHZhbHVlKV09XCJ0d29XYXlDb21zXCIlICVbY29udHJvbF0lPVwiZm9ybU5hbWUuY29udHJvbHMuY29udHJvbE5hbWVcIj48L2NmLWZvcm0taW5wdXQtdGV4dC1hcmVhPlxuICogICAgICAgICAgICAgICAgZGlzYWJsZSBpbnB1dCBieSBkaXNhYmxpbmcgdGhlIGZvcm0gY29udHJvbFxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCB0eXBlIE9uQ2hhbmdlcywgdHlwZSBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuLy8tLS0gVXRpbHNcbmltcG9ydCB7IHZhbGlkYXRlU3RyaW5nVmFsdWUsIGNoZWNrVHJ1dGhBdHRyaWJ1dGUgfSBmcm9tICcuLi8uLi91dGlscy9hdHRyaWJ1dGUudXRpbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NmLWZvcm0taW5wdXQtdGV4dC1hcmVhJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0taW5wdXQtdGV4dC1hcmVhLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2Zvcm0taW5wdXQtdGV4dC1hcmVhLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUlucHV0VGV4dEFyZWFDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBsYWJlbCE6IHN0cmluZztcbiAgQElucHV0KCkgbGFiZWxQbGFjZW1lbnQ/OiAnZml4ZWQnIHwgJ2Zsb2F0aW5nJyB8ICdzdGFja2VkJztcbiAgQElucHV0KCkgcGxhY2Vob2xkZXI/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGF1dG9DYXBpdGFsaXplPzogJ29mZicgfCAnbm9uZScgfCAnb24nIHwgJ3NlbnRlbmNlcycgfCAnd29yZHMnIHwgJ2NoYXJhY3RlcnMnO1xuICBASW5wdXQoKSBjb250cm9sPzogRm9ybUNvbnRyb2wgfCBudWxsO1xuICBASW5wdXQoKSB0ZXh0Q2VudGVyPzogYm9vbGVhbiB8IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgbWluSGVpZ2h0Pzogc3RyaW5nIHwgJ25vbmUnID0gJ25vbmUnO1xuICBASW5wdXQoKSBtYXhIZWlnaHQ/OiBzdHJpbmcgfCAnbm9uZScgPSAnbm9uZSc7XG5cbiAgLy8tLS0gbmdNb2RlbFxuICBASW5wdXQoKSB2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHR5cGVvZiB0aGlzLnZhbHVlPigpO1xuXG4gIC8vLS0tIExvY2FsIHZhcmlhYmxlc1xuICBpbnB1dExhYmVsUGxhY2VtZW50OiB0eXBlb2YgdGhpcy5sYWJlbFBsYWNlbWVudDtcbiAgaW5wdXRDbGVhciA9IHRydWU7XG4gIGlucHV0VGV4dENlbnRlciA9IGZhbHNlO1xuICBpbnB1dEF1dG9DYXBpdGFsaXplOiB0eXBlb2YgdGhpcy5hdXRvQ2FwaXRhbGl6ZTtcblxuICAvKiotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAqIEBuYW1lICAgICAgICAgIG5nT25DaGFuZ2VzXG4gICAqIEBkZXNjcmlwdGlvbiAgIERldGVjdCBjaGFuZ2VzIHRvIGlucHV0IHZhbHVlc1xuICAgKiBAcGFyYW0gICAgICAgICB7U2ltcGxlQ2hhbmdlc30gY2hhbmdlc1xuICAgKi9cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIC8vLS0tIExhYmVsIFBsYWNlbWVudFxuICAgIHRoaXMuaW5wdXRMYWJlbFBsYWNlbWVudCA9XG4gICAgICB2YWxpZGF0ZVN0cmluZ1ZhbHVlPCdmaXhlZCcgfCAnZmxvYXRpbmcnIHwgJ3N0YWNrZWQnPihjaGFuZ2VzLCAnaW5wdXRUeXBlJywgWydmaXhlZCcsICdmbG9hdGluZycsICdzdGFja2VkJ10sIHRoaXMuaW5wdXRMYWJlbFBsYWNlbWVudCkgfHxcbiAgICAgICdmbG9hdGluZyc7XG4gICAgLy8tLS0gVGV4dCBDZW50ZXJcbiAgICB0aGlzLmlucHV0VGV4dENlbnRlciA9IGNoZWNrVHJ1dGhBdHRyaWJ1dGUoY2hhbmdlcywgJ3RleHRDZW50ZXInLCB0aGlzLmlucHV0VGV4dENlbnRlcik7XG4gICAgLy8tLS0gQXV0byBDYXBpdGFsaXplXG4gICAgdGhpcy5pbnB1dEF1dG9DYXBpdGFsaXplID1cbiAgICAgIHZhbGlkYXRlU3RyaW5nVmFsdWU8J29mZicgfCAnbm9uZScgfCAnb24nIHwgJ3NlbnRlbmNlcycgfCAnd29yZHMnIHwgJ2NoYXJhY3RlcnMnPihcbiAgICAgICAgY2hhbmdlcyxcbiAgICAgICAgJ3R5cGUnLFxuICAgICAgICBbJ29mZicsICdub25lJywgJ29uJywgJ3NlbnRlbmNlcycsICd3b3JkcycsICdjaGFyYWN0ZXJzJ10sXG4gICAgICAgIHRoaXMuaW5wdXRBdXRvQ2FwaXRhbGl6ZVxuICAgICAgKSB8fCAnbm9uZSc7XG4gIH1cbn1cbiIsIjwhLS0gbmdNb2RlbCAtLT5cbjxpb24tdGV4dGFyZWFcbiAgW3N0eWxlXT1cIidtaW4taGVpZ2h0OiAnICsgbWluSGVpZ2h0ICsgJzsgbWF4LWhlaWdodDogJyArIG1heEhlaWdodFwiXG4gICpuZ0lmPVwiIWNvbnRyb2xcIlxuICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICBbbmdDbGFzc109XCJ7ICd0ZXh0LWNlbnRlcic6IGlucHV0VGV4dENlbnRlciB9XCJcbiAgW2xhYmVsXT1cImxhYmVsXCJcbiAgW2xhYmVsUGxhY2VtZW50XT1cImlucHV0TGFiZWxQbGFjZW1lbnRcIlxuICBmaWxsPVwib3V0bGluZVwiXG4gIFthdXRvY2FwaXRhbGl6ZV09XCJhdXRvQ2FwaXRhbGl6ZVwiXG4gIFthdXRvR3Jvd109XCJ0cnVlXCJcbiAgbW9kZT1cIm1kXCJcbiAgKGlvbklucHV0KT1cInZhbHVlQ2hhbmdlLmVtaXQoJGV2ZW50LmRldGFpbC52YWx1ZSA/PyB1bmRlZmluZWQpXCI+PC9pb24tdGV4dGFyZWE+XG48IS0tIEZvcm0gQ29udHJvbCAtLT5cbjxpb24tdGV4dGFyZWFcbiAgW3N0eWxlXT1cIidtaW4taGVpZ2h0OiAnICsgbWluSGVpZ2h0ICsgJzsgbWF4LWhlaWdodDogJyArIG1heEhlaWdodFwiXG4gICpuZ0lmPVwiY29udHJvbFwiXG4gIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gIFtuZ0NsYXNzXT1cInsgJ3RleHQtY2VudGVyJzogaW5wdXRUZXh0Q2VudGVyIH1cIlxuICBbbGFiZWxdPVwibGFiZWxcIlxuICBbbGFiZWxQbGFjZW1lbnRdPVwiaW5wdXRMYWJlbFBsYWNlbWVudFwiXG4gIGZpbGw9XCJvdXRsaW5lXCJcbiAgW2F1dG9jYXBpdGFsaXplXT1cImF1dG9DYXBpdGFsaXplXCJcbiAgW2F1dG9Hcm93XT1cInRydWVcIlxuICBtb2RlPVwibWRcIlxuICBbZm9ybUNvbnRyb2xdPVwiY29udHJvbFwiXG4gIChpb25JbnB1dCk9XCJ2YWx1ZUNoYW5nZS5lbWl0KCRldmVudC5kZXRhaWwudmFsdWUgPz8gdW5kZWZpbmVkKVwiPjwvaW9uLXRleHRhcmVhPlxuPGNmLWZvcm0tdmFsaWRhdGlvbiAqbmdJZj1cImNvbnRyb2xcIiBbY29udHJvbF09XCJjb250cm9sXCI+PC9jZi1mb3JtLXZhbGlkYXRpb24+XG4iXX0=
@@ -427,6 +427,7 @@ class FormInputComponent {
427
427
  min = 'none';
428
428
  max = 'none';
429
429
  labelPlacement;
430
+ placeholder;
430
431
  inputmode;
431
432
  autoCapitalize;
432
433
  type;
@@ -435,9 +436,8 @@ class FormInputComponent {
435
436
  textCenter;
436
437
  maxLength;
437
438
  greyBackground;
438
- ionInputEvent = new EventEmitter();
439
- ngModelValue;
440
- ngModelValueChange = new EventEmitter();
439
+ value;
440
+ valueChange = new EventEmitter();
441
441
  inputLabelPlacement;
442
442
  localInputMode;
443
443
  inputClear = false;
@@ -458,11 +458,11 @@ class FormInputComponent {
458
458
  this.inputGreyBackground = checkTruthAttribute(changes, 'greyBackground', this.inputGreyBackground);
459
459
  }
460
460
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: FormInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
461
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: FormInputComponent, selector: "cf-form-input", inputs: { label: "label", min: "min", max: "max", labelPlacement: "labelPlacement", inputmode: "inputmode", autoCapitalize: "autoCapitalize", type: "type", noClearButton: "noClearButton", control: "control", textCenter: "textCenter", maxLength: "maxLength", greyBackground: "greyBackground", ngModelValue: "ngModelValue" }, outputs: { ionInputEvent: "ionInputEvent", ngModelValueChange: "ngModelValueChange" }, usesOnChanges: true, ngImport: i0, template: "<!-- ngModel -->\n<ion-input\n *ngIf=\"!control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"ngModelValueChange.emit($event.detail.value ?? undefined); ionInputEvent.emit($event.detail.value ?? undefined)\"></ion-input>\n<!-- Form Control -->\n<ion-input\n *ngIf=\"control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [formControl]=\"control\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"ionInputEvent.emit($event.detail.value ?? undefined)\"></ion-input>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-input{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-input.text-center{text-align:center}ion-input.grey-background{--background: var(--cf-app-system-color-outline)}\n"], dependencies: [{ kind: "component", type: i1.IonInput, selector: "ion-input", inputs: ["accept", "autocapitalize", "autocomplete", "autocorrect", "autofocus", "clearInput", "clearOnEdit", "color", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "legacy", "max", "maxlength", "min", "minlength", "mode", "multiple", "name", "pattern", "placeholder", "readonly", "required", "shape", "size", "spellcheck", "step", "type", "value"] }, { kind: "directive", type: i1.TextValueAccessor, selector: "ion-input:not([type=number]),ion-textarea,ion-searchbar,ion-range" }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: FormValidationComponent, selector: "cf-form-validation", inputs: ["control"] }] });
461
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: FormInputComponent, selector: "cf-form-input", inputs: { label: "label", min: "min", max: "max", labelPlacement: "labelPlacement", placeholder: "placeholder", inputmode: "inputmode", autoCapitalize: "autoCapitalize", type: "type", noClearButton: "noClearButton", control: "control", textCenter: "textCenter", maxLength: "maxLength", greyBackground: "greyBackground", value: "value" }, outputs: { valueChange: "valueChange" }, usesOnChanges: true, ngImport: i0, template: "<!-- ngModel -->\n<ion-input\n *ngIf=\"!control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-input>\n<!-- Form Control -->\n<ion-input\n *ngIf=\"control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [formControl]=\"control\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-input>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-input{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-input.text-center{text-align:center}ion-input.grey-background{--background: var(--cf-app-system-color-outline)}\n"], dependencies: [{ kind: "component", type: i1.IonInput, selector: "ion-input", inputs: ["accept", "autocapitalize", "autocomplete", "autocorrect", "autofocus", "clearInput", "clearOnEdit", "color", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "legacy", "max", "maxlength", "min", "minlength", "mode", "multiple", "name", "pattern", "placeholder", "readonly", "required", "shape", "size", "spellcheck", "step", "type", "value"] }, { kind: "directive", type: i1.TextValueAccessor, selector: "ion-input:not([type=number]),ion-textarea,ion-searchbar,ion-range" }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: FormValidationComponent, selector: "cf-form-validation", inputs: ["control"] }] });
462
462
  }
463
463
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: FormInputComponent, decorators: [{
464
464
  type: Component,
465
- args: [{ selector: 'cf-form-input', template: "<!-- ngModel -->\n<ion-input\n *ngIf=\"!control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"ngModelValueChange.emit($event.detail.value ?? undefined); ionInputEvent.emit($event.detail.value ?? undefined)\"></ion-input>\n<!-- Form Control -->\n<ion-input\n *ngIf=\"control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [formControl]=\"control\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"ionInputEvent.emit($event.detail.value ?? undefined)\"></ion-input>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-input{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-input.text-center{text-align:center}ion-input.grey-background{--background: var(--cf-app-system-color-outline)}\n"] }]
465
+ args: [{ selector: 'cf-form-input', template: "<!-- ngModel -->\n<ion-input\n *ngIf=\"!control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-input>\n<!-- Form Control -->\n<ion-input\n *ngIf=\"control\"\n [ngClass]=\"{ 'text-center': inputTextCenter, 'grey-background': inputGreyBackground }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n [clearInput]=\"!inputClear\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [inputmode]=\"localInputMode\"\n [formControl]=\"control\"\n [min]=\"min\"\n [max]=\"max\"\n [maxlength]=\"maxLength || null\"\n [type]=\"type\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-input>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-input{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-input.text-center{text-align:center}ion-input.grey-background{--background: var(--cf-app-system-color-outline)}\n"] }]
466
466
  }], propDecorators: { label: [{
467
467
  type: Input
468
468
  }], min: [{
@@ -471,6 +471,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImpor
471
471
  type: Input
472
472
  }], labelPlacement: [{
473
473
  type: Input
474
+ }], placeholder: [{
475
+ type: Input
474
476
  }], inputmode: [{
475
477
  type: Input
476
478
  }], autoCapitalize: [{
@@ -487,11 +489,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImpor
487
489
  type: Input
488
490
  }], greyBackground: [{
489
491
  type: Input
490
- }], ionInputEvent: [{
491
- type: Output
492
- }], ngModelValue: [{
492
+ }], value: [{
493
493
  type: Input
494
- }], ngModelValueChange: [{
494
+ }], valueChange: [{
495
495
  type: Output
496
496
  }] } });
497
497
 
@@ -499,10 +499,10 @@ class FormInputSelectComponent {
499
499
  label;
500
500
  options;
501
501
  labelPlacement;
502
+ placeholder;
502
503
  control;
503
- ionInputEvent = new EventEmitter();
504
- ngModelValue;
505
- ngModelValueChange = new EventEmitter();
504
+ value;
505
+ valueChange = new EventEmitter();
506
506
  inputLabelPlacement;
507
507
  ngOnChanges(changes) {
508
508
  this.inputLabelPlacement =
@@ -510,36 +510,38 @@ class FormInputSelectComponent {
510
510
  'floating';
511
511
  }
512
512
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: FormInputSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
513
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: FormInputSelectComponent, selector: "cf-form-input-select", inputs: { label: "label", options: "options", labelPlacement: "labelPlacement", control: "control", ngModelValue: "ngModelValue" }, outputs: { ionInputEvent: "ionInputEvent", ngModelValueChange: "ngModelValueChange" }, usesOnChanges: true, ngImport: i0, template: "<!-- ngModel -->\n<ion-select\n *ngIf=\"!control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n (ionChange)=\"ionInputEvent.emit($event.detail.value ?? undefined); ngModelValueChange.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<!-- Form Control -->\n<ion-select\n *ngIf=\"control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n [formControl]=\"control\"\n (ionChange)=\"ionInputEvent.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-select{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}::ng-deep ion-select-popover ion-list[class*=popover]{background:var(--cf-app-background-light)}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover]{--background: transparent;--border-radius: 8px;--background-focused: var(--cf-app-color-accent);--background-focused-opacity: .5;--background-hover: var(--cf-app-color-primary);--background-hover-opacity: .1}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover] ion-radio{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start}\n"], dependencies: [{ kind: "component", type: i1.IonSelect, selector: "ion-select", inputs: ["cancelText", "color", "compareWith", "disabled", "expandedIcon", "fill", "interface", "interfaceOptions", "justify", "label", "labelPlacement", "legacy", "mode", "multiple", "name", "okText", "placeholder", "selectedText", "shape", "toggleIcon", "value"] }, { kind: "component", type: i1.IonSelectOption, selector: "ion-select-option", inputs: ["disabled", "value"] }, { kind: "directive", type: i1.SelectValueAccessor, selector: "ion-select, ion-radio-group, ion-segment, ion-datetime" }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: FormValidationComponent, selector: "cf-form-validation", inputs: ["control"] }] });
513
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: FormInputSelectComponent, selector: "cf-form-input-select", inputs: { label: "label", options: "options", labelPlacement: "labelPlacement", placeholder: "placeholder", control: "control", value: "value" }, outputs: { valueChange: "valueChange" }, usesOnChanges: true, ngImport: i0, template: "<!-- ngModel -->\n<ion-select\n *ngIf=\"!control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n (ionChange)=\"valueChange.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<!-- Form Control -->\n<ion-select\n *ngIf=\"control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n [formControl]=\"control\"\n (ionChange)=\"valueChange.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-select{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}::ng-deep ion-select-popover ion-list[class*=popover]{background:var(--cf-app-background-light)}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover]{--background: transparent;--border-radius: 8px;--background-focused: var(--cf-app-color-accent);--background-focused-opacity: .5;--background-hover: var(--cf-app-color-primary);--background-hover-opacity: .1}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover] ion-radio{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start}\n"], dependencies: [{ kind: "component", type: i1.IonSelect, selector: "ion-select", inputs: ["cancelText", "color", "compareWith", "disabled", "expandedIcon", "fill", "interface", "interfaceOptions", "justify", "label", "labelPlacement", "legacy", "mode", "multiple", "name", "okText", "placeholder", "selectedText", "shape", "toggleIcon", "value"] }, { kind: "component", type: i1.IonSelectOption, selector: "ion-select-option", inputs: ["disabled", "value"] }, { kind: "directive", type: i1.SelectValueAccessor, selector: "ion-select, ion-radio-group, ion-segment, ion-datetime" }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: FormValidationComponent, selector: "cf-form-validation", inputs: ["control"] }] });
514
514
  }
515
515
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: FormInputSelectComponent, decorators: [{
516
516
  type: Component,
517
- args: [{ selector: 'cf-form-input-select', template: "<!-- ngModel -->\n<ion-select\n *ngIf=\"!control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n (ionChange)=\"ionInputEvent.emit($event.detail.value ?? undefined); ngModelValueChange.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<!-- Form Control -->\n<ion-select\n *ngIf=\"control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n [formControl]=\"control\"\n (ionChange)=\"ionInputEvent.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-select{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}::ng-deep ion-select-popover ion-list[class*=popover]{background:var(--cf-app-background-light)}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover]{--background: transparent;--border-radius: 8px;--background-focused: var(--cf-app-color-accent);--background-focused-opacity: .5;--background-hover: var(--cf-app-color-primary);--background-hover-opacity: .1}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover] ion-radio{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start}\n"] }]
517
+ args: [{ selector: 'cf-form-input-select', template: "<!-- ngModel -->\n<ion-select\n *ngIf=\"!control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n (ionChange)=\"valueChange.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<!-- Form Control -->\n<ion-select\n *ngIf=\"control\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n [placeholder]=\"placeholder\"\n fill=\"outline\"\n mode=\"md\"\n interface=\"popover\"\n [formControl]=\"control\"\n (ionChange)=\"valueChange.emit($event.detail.value ?? undefined)\">\n <ion-select-option *ngFor=\"let option of options\" [value]=\"option.value\">{{ option.displayName }}</ion-select-option>\n</ion-select>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-select{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}::ng-deep ion-select-popover ion-list[class*=popover]{background:var(--cf-app-background-light)}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover]{--background: transparent;--border-radius: 8px;--background-focused: var(--cf-app-color-accent);--background-focused-opacity: .5;--background-hover: var(--cf-app-color-primary);--background-hover-opacity: .1}::ng-deep ion-select-popover ion-list[class*=popover] ion-item[class*=popover] ion-radio{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start}\n"] }]
518
518
  }], propDecorators: { label: [{
519
519
  type: Input
520
520
  }], options: [{
521
521
  type: Input
522
522
  }], labelPlacement: [{
523
523
  type: Input
524
+ }], placeholder: [{
525
+ type: Input
524
526
  }], control: [{
525
527
  type: Input
526
- }], ionInputEvent: [{
527
- type: Output
528
- }], ngModelValue: [{
528
+ }], value: [{
529
529
  type: Input
530
- }], ngModelValueChange: [{
530
+ }], valueChange: [{
531
531
  type: Output
532
532
  }] } });
533
533
 
534
534
  class FormInputTextAreaComponent {
535
535
  label;
536
536
  labelPlacement;
537
+ placeholder;
537
538
  autoCapitalize;
538
539
  control;
539
540
  textCenter;
540
- ionInputEvent = new EventEmitter();
541
- ngModelValue;
542
- ngModelValueChange = new EventEmitter();
541
+ minHeight = 'none';
542
+ maxHeight = 'none';
543
+ value;
544
+ valueChange = new EventEmitter();
543
545
  inputLabelPlacement;
544
546
  inputClear = true;
545
547
  inputTextCenter = false;
@@ -553,26 +555,30 @@ class FormInputTextAreaComponent {
553
555
  validateStringValue(changes, 'type', ['off', 'none', 'on', 'sentences', 'words', 'characters'], this.inputAutoCapitalize) || 'none';
554
556
  }
555
557
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: FormInputTextAreaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
556
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: FormInputTextAreaComponent, selector: "cf-form-input-text-area", inputs: { label: "label", labelPlacement: "labelPlacement", autoCapitalize: "autoCapitalize", control: "control", textCenter: "textCenter", ngModelValue: "ngModelValue" }, outputs: { ionInputEvent: "ionInputEvent", ngModelValueChange: "ngModelValueChange" }, usesOnChanges: true, ngImport: i0, template: "<!-- ngModel -->\n<ion-textarea\n *ngIf=\"!control\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n (ionInput)=\"ionInputEvent.emit($event.detail.value ?? undefined); ngModelValueChange.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<!-- Form Control -->\n<ion-textarea\n *ngIf=\"control\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [formControl]=\"control\"\n (ionInput)=\"ionInputEvent.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-textarea{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-textarea.text-center{text-align:center}\n"], dependencies: [{ kind: "component", type: i1.IonTextarea, selector: "ion-textarea", inputs: ["autoGrow", "autocapitalize", "autofocus", "clearOnEdit", "color", "cols", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "legacy", "maxlength", "minlength", "mode", "name", "placeholder", "readonly", "required", "rows", "shape", "spellcheck", "value", "wrap"] }, { kind: "directive", type: i1.TextValueAccessor, selector: "ion-input:not([type=number]),ion-textarea,ion-searchbar,ion-range" }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: FormValidationComponent, selector: "cf-form-validation", inputs: ["control"] }] });
558
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: FormInputTextAreaComponent, selector: "cf-form-input-text-area", inputs: { label: "label", labelPlacement: "labelPlacement", placeholder: "placeholder", autoCapitalize: "autoCapitalize", control: "control", textCenter: "textCenter", minHeight: "minHeight", maxHeight: "maxHeight", value: "value" }, outputs: { valueChange: "valueChange" }, usesOnChanges: true, ngImport: i0, template: "<!-- ngModel -->\n<ion-textarea\n [style]=\"'min-height: ' + minHeight + '; max-height: ' + maxHeight\"\n *ngIf=\"!control\"\n [placeholder]=\"placeholder\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n [autoGrow]=\"true\"\n mode=\"md\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<!-- Form Control -->\n<ion-textarea\n [style]=\"'min-height: ' + minHeight + '; max-height: ' + maxHeight\"\n *ngIf=\"control\"\n [placeholder]=\"placeholder\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n [autoGrow]=\"true\"\n mode=\"md\"\n [formControl]=\"control\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-textarea{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-textarea.text-center{text-align:center}\n"], dependencies: [{ kind: "component", type: i1.IonTextarea, selector: "ion-textarea", inputs: ["autoGrow", "autocapitalize", "autofocus", "clearOnEdit", "color", "cols", "counter", "counterFormatter", "debounce", "disabled", "enterkeyhint", "errorText", "fill", "helperText", "inputmode", "label", "labelPlacement", "legacy", "maxlength", "minlength", "mode", "name", "placeholder", "readonly", "required", "rows", "shape", "spellcheck", "value", "wrap"] }, { kind: "directive", type: i1.TextValueAccessor, selector: "ion-input:not([type=number]),ion-textarea,ion-searchbar,ion-range" }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: FormValidationComponent, selector: "cf-form-validation", inputs: ["control"] }] });
557
559
  }
558
560
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: FormInputTextAreaComponent, decorators: [{
559
561
  type: Component,
560
- args: [{ selector: 'cf-form-input-text-area', template: "<!-- ngModel -->\n<ion-textarea\n *ngIf=\"!control\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n (ionInput)=\"ionInputEvent.emit($event.detail.value ?? undefined); ngModelValueChange.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<!-- Form Control -->\n<ion-textarea\n *ngIf=\"control\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n mode=\"md\"\n [formControl]=\"control\"\n (ionInput)=\"ionInputEvent.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-textarea{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-textarea.text-center{text-align:center}\n"] }]
562
+ args: [{ selector: 'cf-form-input-text-area', template: "<!-- ngModel -->\n<ion-textarea\n [style]=\"'min-height: ' + minHeight + '; max-height: ' + maxHeight\"\n *ngIf=\"!control\"\n [placeholder]=\"placeholder\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n [autoGrow]=\"true\"\n mode=\"md\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<!-- Form Control -->\n<ion-textarea\n [style]=\"'min-height: ' + minHeight + '; max-height: ' + maxHeight\"\n *ngIf=\"control\"\n [placeholder]=\"placeholder\"\n [ngClass]=\"{ 'text-center': inputTextCenter }\"\n [label]=\"label\"\n [labelPlacement]=\"inputLabelPlacement\"\n fill=\"outline\"\n [autocapitalize]=\"autoCapitalize\"\n [autoGrow]=\"true\"\n mode=\"md\"\n [formControl]=\"control\"\n (ionInput)=\"valueChange.emit($event.detail.value ?? undefined)\"></ion-textarea>\n<cf-form-validation *ngIf=\"control\" [control]=\"control\"></cf-form-validation>\n", styles: ["ion-textarea{font-family:Roboto,sans-serif;font-weight:400;font-style:normal;font-size:1.6rem;color:var(--cf-app-color-primary);text-align:start;--border-radius: 8px !important;--highlight-color-focused: var(--cf-app-color-primary);--highlight-color-invalid: var(--cf-app-system-color-error);--highlight-color-valid: var(--cf-app-color-primary)}ion-textarea.text-center{text-align:center}\n"] }]
561
563
  }], propDecorators: { label: [{
562
564
  type: Input
563
565
  }], labelPlacement: [{
564
566
  type: Input
567
+ }], placeholder: [{
568
+ type: Input
565
569
  }], autoCapitalize: [{
566
570
  type: Input
567
571
  }], control: [{
568
572
  type: Input
569
573
  }], textCenter: [{
570
574
  type: Input
571
- }], ionInputEvent: [{
572
- type: Output
573
- }], ngModelValue: [{
575
+ }], minHeight: [{
576
+ type: Input
577
+ }], maxHeight: [{
578
+ type: Input
579
+ }], value: [{
574
580
  type: Input
575
- }], ngModelValueChange: [{
581
+ }], valueChange: [{
576
582
  type: Output
577
583
  }] } });
578
584