@apipass/inputs 1.0.128 → 1.0.130

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -258,7 +258,7 @@ field-render .info-label {
258
258
 
259
259
  .apipass-input-text-slim {
260
260
  .mat-mdc-form-field-infix {
261
- padding-top: 5px !important;
261
+ padding-top: 3px !important;
262
262
  padding-bottom: 5px !important;
263
263
  min-height: 30px !important;
264
264
  max-height: 30px !important;
@@ -3,36 +3,61 @@ import * as i0 from "@angular/core";
3
3
  import * as i1 from "@angular/common";
4
4
  import * as i2 from "@angular/forms";
5
5
  import * as i3 from "@angular/material/icon";
6
- import * as i4 from "../input-text/input-text.component";
6
+ import * as i4 from "@angular/material/tooltip";
7
+ import * as i5 from "../input-text/input-text.component";
7
8
  class InputKeyValueComponent {
9
+ initialized;
8
10
  _model;
9
- showOptions = false;
11
+ temporaryItem = {};
12
+ size = 'DEFAULT';
13
+ keyField = 'key';
14
+ valueField = 'value';
10
15
  labelKey = 'Key';
11
16
  labelValue = 'Value';
17
+ removeLabel = 'Remove';
12
18
  widthPercentageInputOptions;
13
19
  inputOptionsInitSelected = null;
14
20
  inputOptions = [];
15
21
  set model(model) {
22
+ this.initializeModel(model);
23
+ }
24
+ get model() {
25
+ return this._model;
26
+ }
27
+ initializeModel(model) {
16
28
  if (model?.length > 0) {
17
29
  this._model = [...model];
18
30
  const lastModel = model[model.length - 1];
19
- if (lastModel?.key || lastModel?.value) {
20
- this._model.push({ key: '', value: '' });
31
+ if (lastModel?.[this.keyField] || lastModel?.[this.valueField]) {
32
+ this._model.push(this.getNewModel());
33
+ this.model = this._model;
21
34
  }
22
35
  }
23
- else {
24
- this._model = [{ key: '', value: '' }];
36
+ else if (this.initialized) {
37
+ this.model = [this.getNewModel()];
25
38
  }
26
39
  }
27
- get model() {
28
- return this._model;
29
- }
30
40
  modelChange = new EventEmitter();
31
41
  ngOnInit() {
42
+ this.temporaryItem = this.getNewModel();
43
+ if (!this.model?.length) {
44
+ this._model = [this.getNewModel()];
45
+ this.model = this._model;
46
+ }
47
+ this.initialized = true;
32
48
  }
33
- onChangeValues(last, $event) {
49
+ getNewModel() {
50
+ const value = {};
51
+ value[this.keyField] = '';
52
+ value[this.valueField] = '';
53
+ return value;
54
+ }
55
+ onChangeValues(last) {
34
56
  if (last) {
35
- this.model.push({ key: '', value: '' });
57
+ if (this.temporaryItem?.[this.keyField] || this.temporaryItem?.[this.valueField]) {
58
+ this.model.push({ ...this.temporaryItem });
59
+ this.temporaryItem = this.getNewModel();
60
+ }
36
61
  }
37
62
  this.modelChange.emit(this.model);
38
63
  }
@@ -42,18 +67,27 @@ class InputKeyValueComponent {
42
67
  }
43
68
  inputOptionChanged(event, index) {
44
69
  this.model[index].type = event;
70
+ this.modelChange.emit(this.model);
45
71
  }
46
72
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputKeyValueComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
47
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: InputKeyValueComponent, selector: "input-key-value", inputs: { labelKey: "labelKey", labelValue: "labelValue", widthPercentageInputOptions: "widthPercentageInputOptions", inputOptionsInitSelected: "inputOptionsInitSelected", inputOptions: "inputOptions", model: "model" }, outputs: { modelChange: "modelChange" }, ngImport: i0, template: " <div class=\"key-value-item\" *ngFor=\"let item of model; let last = last; let index = index\">\n <div class=\"div-input\">\n <input-text \n [label]=\"labelKey\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"inputOptionsInitSelected\"\n [widthPercentageInputOptions]=\"widthPercentageInputOptions\"\n [(ngModel)]=\"item.key\"\n (ngModelChange)=\"onChangeValues(last, $event)\"\n (optionChanged)=\"inputOptionChanged($event, index)\">\n </input-text>\n </div>\n <div class=\"div-input\">\n <input-text \n class=\"text-input-value\"\n [label]=\"labelValue\"\n [(ngModel)]=\"item.value\"\n >\n </input-text>\n </div>\n <div class=\"div-button\">\n <button class=\"delete-button\" type=\"button\" *ngIf=\"!last\" (click)=\"removeItem(index)\">\n <mat-icon>delete</mat-icon>\n </button>\n </div>\n </div>\n\n", styles: [".key-value-item{display:flex;margin-bottom:10px;width:100%}.key-value-item .div-input{width:40%}.key-value-item .div-input .text-input-value{margin-left:30px}.key-value-item .div-button{margin-left:50px;display:flex}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.InputTextComponent, selector: "input-text", inputs: ["label", "disabled", "iconSuffix", "iconPrefix", "autoComplete", "size", "debounceTime", "widthPercentageInputOptions", "inputOptions", "inputOptionsInitSelected"], outputs: ["suffixIconClick", "prefixIconClick", "onDebounce", "optionChanged"] }] });
73
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: InputKeyValueComponent, selector: "input-key-value", inputs: { size: "size", keyField: "keyField", valueField: "valueField", labelKey: "labelKey", labelValue: "labelValue", removeLabel: "removeLabel", widthPercentageInputOptions: "widthPercentageInputOptions", inputOptionsInitSelected: "inputOptionsInitSelected", inputOptions: "inputOptions", model: "model" }, outputs: { modelChange: "modelChange" }, ngImport: i0, template: "<div class=\"key-value-item\" *ngFor=\"let item of model; let last = last; let index = index\">\n <input-text\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"labelKey\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"inputOptionsInitSelected\"\n [widthPercentageInputOptions]=\"widthPercentageInputOptions\"\n [(ngModel)]=\"item[keyField]\"\n (ngModelChange)=\"onChangeValues(last)\"\n (optionChanged)=\"inputOptionChanged($event, index)\">\n </input-text>\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"labelValue\"\n [(ngModel)]=\"item[valueField]\">\n </input-text>\n <button class=\"delete-button\" [matTooltip]=\"removeLabel\" [ngClass]=\"{'delete-button-slim': size === 'SLIM'}\" type=\"button\" *ngIf=\"!last\"\n (click)=\"removeItem(index)\">\n <mat-icon>delete</mat-icon>\n </button>\n</div>\n\n", styles: [".key-value-item{display:flex;gap:10px;margin-bottom:10px;width:100%}.key-value-item .input-key{width:50%}.key-value-item .input-key ::ng-deep input{padding-left:10px!important;padding-right:10px!important}.key-value-item .input-value{width:calc(50% - 60px)}.key-value-item .input-value ::ng-deep input{padding-left:10px!important;padding-right:10px!important}.key-value-item .delete-button{display:flex;justify-content:center;align-items:center;cursor:pointer;background:#FFF;color:#c40606;border-radius:5px;border:1px solid var(--color-fonts-tertiary)}.key-value-item .delete-button.delete-button-slim{width:30px;height:30px}.key-value-item .delete-button.delete-button-slim ::ng-deep .mat-icon{width:auto!important;height:auto!important;font-size:22px!important;margin-left:-2.5px;padding:0!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i5.InputTextComponent, selector: "input-text", inputs: ["label", "disabled", "iconSuffix", "iconPrefix", "autoComplete", "size", "debounceTime", "widthPercentageInputOptions", "inputOptions", "inputOptionsInitSelected"], outputs: ["suffixIconClick", "prefixIconClick", "onDebounce", "optionChanged"] }] });
48
74
  }
49
75
  export { InputKeyValueComponent };
50
76
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputKeyValueComponent, decorators: [{
51
77
  type: Component,
52
- args: [{ selector: 'input-key-value', template: " <div class=\"key-value-item\" *ngFor=\"let item of model; let last = last; let index = index\">\n <div class=\"div-input\">\n <input-text \n [label]=\"labelKey\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"inputOptionsInitSelected\"\n [widthPercentageInputOptions]=\"widthPercentageInputOptions\"\n [(ngModel)]=\"item.key\"\n (ngModelChange)=\"onChangeValues(last, $event)\"\n (optionChanged)=\"inputOptionChanged($event, index)\">\n </input-text>\n </div>\n <div class=\"div-input\">\n <input-text \n class=\"text-input-value\"\n [label]=\"labelValue\"\n [(ngModel)]=\"item.value\"\n >\n </input-text>\n </div>\n <div class=\"div-button\">\n <button class=\"delete-button\" type=\"button\" *ngIf=\"!last\" (click)=\"removeItem(index)\">\n <mat-icon>delete</mat-icon>\n </button>\n </div>\n </div>\n\n", styles: [".key-value-item{display:flex;margin-bottom:10px;width:100%}.key-value-item .div-input{width:40%}.key-value-item .div-input .text-input-value{margin-left:30px}.key-value-item .div-button{margin-left:50px;display:flex}\n"] }]
53
- }], propDecorators: { labelKey: [{
78
+ args: [{ selector: 'input-key-value', template: "<div class=\"key-value-item\" *ngFor=\"let item of model; let last = last; let index = index\">\n <input-text\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"labelKey\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"inputOptionsInitSelected\"\n [widthPercentageInputOptions]=\"widthPercentageInputOptions\"\n [(ngModel)]=\"item[keyField]\"\n (ngModelChange)=\"onChangeValues(last)\"\n (optionChanged)=\"inputOptionChanged($event, index)\">\n </input-text>\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"labelValue\"\n [(ngModel)]=\"item[valueField]\">\n </input-text>\n <button class=\"delete-button\" [matTooltip]=\"removeLabel\" [ngClass]=\"{'delete-button-slim': size === 'SLIM'}\" type=\"button\" *ngIf=\"!last\"\n (click)=\"removeItem(index)\">\n <mat-icon>delete</mat-icon>\n </button>\n</div>\n\n", styles: [".key-value-item{display:flex;gap:10px;margin-bottom:10px;width:100%}.key-value-item .input-key{width:50%}.key-value-item .input-key ::ng-deep input{padding-left:10px!important;padding-right:10px!important}.key-value-item .input-value{width:calc(50% - 60px)}.key-value-item .input-value ::ng-deep input{padding-left:10px!important;padding-right:10px!important}.key-value-item .delete-button{display:flex;justify-content:center;align-items:center;cursor:pointer;background:#FFF;color:#c40606;border-radius:5px;border:1px solid var(--color-fonts-tertiary)}.key-value-item .delete-button.delete-button-slim{width:30px;height:30px}.key-value-item .delete-button.delete-button-slim ::ng-deep .mat-icon{width:auto!important;height:auto!important;font-size:22px!important;margin-left:-2.5px;padding:0!important}\n"] }]
79
+ }], propDecorators: { size: [{
80
+ type: Input
81
+ }], keyField: [{
82
+ type: Input
83
+ }], valueField: [{
84
+ type: Input
85
+ }], labelKey: [{
54
86
  type: Input
55
87
  }], labelValue: [{
56
88
  type: Input
89
+ }], removeLabel: [{
90
+ type: Input
57
91
  }], widthPercentageInputOptions: [{
58
92
  type: Input
59
93
  }], inputOptionsInitSelected: [{
@@ -65,4 +99,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
65
99
  }], modelChange: [{
66
100
  type: Output
67
101
  }] } });
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQta2V5LXZhbHVlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvaW5wdXQta2V5LXZhbHVlL2lucHV0LWtleS12YWx1ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2lucHV0LWtleS12YWx1ZS9pbnB1dC1rZXktdmFsdWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBUS9FLE1BS2Esc0JBQXNCO0lBRXpCLE1BQU0sQ0FBcUI7SUFFbkMsV0FBVyxHQUFZLEtBQUssQ0FBQztJQUVwQixRQUFRLEdBQVcsS0FBSyxDQUFBO0lBQ3hCLFVBQVUsR0FBVyxPQUFPLENBQUE7SUFDNUIsMkJBQTJCLENBQVE7SUFDbkMsd0JBQXdCLEdBQVcsSUFBSSxDQUFBO0lBQ3ZDLFlBQVksR0FBRyxFQUFFLENBQUE7SUFFMUIsSUFDSSxLQUFLLENBQUMsS0FBMEI7UUFDbEMsSUFBSSxLQUFLLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQTtZQUN4QixNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQTtZQUN6QyxJQUFJLFNBQVMsRUFBRSxHQUFHLElBQUksU0FBUyxFQUFFLEtBQUssRUFBRTtnQkFDdEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFBO2FBQ3pDO1NBQ0Y7YUFBTTtZQUNMLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUE7U0FDdkM7SUFDSCxDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFHTSxXQUFXLEdBQXNDLElBQUksWUFBWSxFQUF1QixDQUFBO0lBRXhGLFFBQVE7SUFDZixDQUFDO0lBRU0sY0FBYyxDQUFDLElBQWEsRUFBRSxNQUFjO1FBQ2pELElBQUksSUFBSSxFQUFFO1lBQ1IsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFBO1NBQ3hDO1FBQ0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ25DLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBSztRQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQTtRQUMzQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDbkMsQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQWEsRUFBRSxLQUFhO1FBQzdDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQTtJQUNoQyxDQUFDO3VHQWpEVSxzQkFBc0I7MkZBQXRCLHNCQUFzQiw0VENibkMsaTdCQTJCQTs7U0RkYSxzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxpQkFBaUI7OEJBVWxCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRywyQkFBMkI7c0JBQW5DLEtBQUs7Z0JBQ0csd0JBQXdCO3NCQUFoQyxLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBR0YsS0FBSztzQkFEUixLQUFLO2dCQWtCQyxXQUFXO3NCQURqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElucHV0S2V5VmFsdWVUeXBlIHtcbiAga2V5OiBzdHJpbmdcbiAgdmFsdWU6IHN0cmluZ1xuICB0eXBlPzogc3RyaW5nXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lucHV0LWtleS12YWx1ZScsXG4gIHRlbXBsYXRlVXJsOiAnaW5wdXQta2V5LXZhbHVlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ2lucHV0LWtleS12YWx1ZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIElucHV0S2V5VmFsdWVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIHByaXZhdGUgX21vZGVsOiBJbnB1dEtleVZhbHVlVHlwZVtdXG5cbiAgc2hvd09wdGlvbnM6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKSBsYWJlbEtleTogc3RyaW5nID0gJ0tleSdcbiAgQElucHV0KCkgbGFiZWxWYWx1ZTogc3RyaW5nID0gJ1ZhbHVlJ1xuICBASW5wdXQoKSB3aWR0aFBlcmNlbnRhZ2VJbnB1dE9wdGlvbnM6IG51bWJlclxuICBASW5wdXQoKSBpbnB1dE9wdGlvbnNJbml0U2VsZWN0ZWQ6IHN0cmluZyA9IG51bGxcbiAgQElucHV0KCkgaW5wdXRPcHRpb25zID0gW11cblxuICBASW5wdXQoKVxuICBzZXQgbW9kZWwobW9kZWw6IElucHV0S2V5VmFsdWVUeXBlW10pIHtcbiAgICBpZiAobW9kZWw/Lmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuX21vZGVsID0gWy4uLm1vZGVsXVxuICAgICAgY29uc3QgbGFzdE1vZGVsID0gbW9kZWxbbW9kZWwubGVuZ3RoIC0gMV1cbiAgICAgIGlmIChsYXN0TW9kZWw/LmtleSB8fCBsYXN0TW9kZWw/LnZhbHVlKSB7XG4gICAgICAgIHRoaXMuX21vZGVsLnB1c2goeyBrZXk6ICcnLCB2YWx1ZTogJycgfSlcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fbW9kZWwgPSBbeyBrZXk6ICcnLCB2YWx1ZTogJycgfV1cbiAgICB9XG4gIH1cblxuICBnZXQgbW9kZWwoKTogSW5wdXRLZXlWYWx1ZVR5cGVbXSB7XG4gICAgcmV0dXJuIHRoaXMuX21vZGVsO1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBtb2RlbENoYW5nZTogRXZlbnRFbWl0dGVyPElucHV0S2V5VmFsdWVUeXBlW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxJbnB1dEtleVZhbHVlVHlwZVtdPigpXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbiAgcHVibGljIG9uQ2hhbmdlVmFsdWVzKGxhc3Q6IGJvb2xlYW4sICRldmVudDogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKGxhc3QpIHtcbiAgICAgIHRoaXMubW9kZWwucHVzaCh7IGtleTogJycsIHZhbHVlOiAnJyB9KVxuICAgIH1cbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQodGhpcy5tb2RlbClcbiAgfVxuXG4gIHJlbW92ZUl0ZW0oaW5kZXgpOiB2b2lkIHtcbiAgICB0aGlzLm1vZGVsLnNwbGljZShpbmRleCwgMSlcbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQodGhpcy5tb2RlbClcbiAgfVxuXG4gIGlucHV0T3B0aW9uQ2hhbmdlZChldmVudDogc3RyaW5nLCBpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5tb2RlbFtpbmRleF0udHlwZSA9IGV2ZW50XG4gIH1cblxufVxuIiwiICA8ZGl2IGNsYXNzPVwia2V5LXZhbHVlLWl0ZW1cIiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBtb2RlbDsgbGV0IGxhc3QgPSBsYXN0OyBsZXQgaW5kZXggPSBpbmRleFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkaXYtaW5wdXRcIj5cbiAgICAgIDxpbnB1dC10ZXh0ICBcbiAgICAgIFtsYWJlbF09XCJsYWJlbEtleVwiXG4gICAgICBbaW5wdXRPcHRpb25zXT1cImlucHV0T3B0aW9uc1wiXG4gICAgICBbaW5wdXRPcHRpb25zSW5pdFNlbGVjdGVkXT1cImlucHV0T3B0aW9uc0luaXRTZWxlY3RlZFwiXG4gICAgICBbd2lkdGhQZXJjZW50YWdlSW5wdXRPcHRpb25zXT1cIndpZHRoUGVyY2VudGFnZUlucHV0T3B0aW9uc1wiXG4gICAgICBbKG5nTW9kZWwpXT1cIml0ZW0ua2V5XCJcbiAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uQ2hhbmdlVmFsdWVzKGxhc3QsICRldmVudClcIlxuICAgICAgKG9wdGlvbkNoYW5nZWQpPVwiaW5wdXRPcHRpb25DaGFuZ2VkKCRldmVudCwgaW5kZXgpXCI+XG4gICAgICA8L2lucHV0LXRleHQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImRpdi1pbnB1dFwiPlxuICAgICAgPGlucHV0LXRleHQgXG4gICAgICAgIGNsYXNzPVwidGV4dC1pbnB1dC12YWx1ZVwiXG4gICAgICAgIFtsYWJlbF09XCJsYWJlbFZhbHVlXCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJpdGVtLnZhbHVlXCJcbiAgICAgICA+XG4gICAgICA8L2lucHV0LXRleHQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImRpdi1idXR0b25cIj5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJkZWxldGUtYnV0dG9uXCIgdHlwZT1cImJ1dHRvblwiICpuZ0lmPVwiIWxhc3RcIiAoY2xpY2spPVwicmVtb3ZlSXRlbShpbmRleClcIj5cbiAgICAgICAgPG1hdC1pY29uPmRlbGV0ZTwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiJdfQ==
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQta2V5LXZhbHVlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvaW5wdXQta2V5LXZhbHVlL2lucHV0LWtleS12YWx1ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2lucHV0LWtleS12YWx1ZS9pbnB1dC1rZXktdmFsdWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQVMvRSxNQUthLHNCQUFzQjtJQUV6QixXQUFXLENBQVU7SUFDckIsTUFBTSxDQUFxQjtJQUMzQixhQUFhLEdBQXNCLEVBQUUsQ0FBQTtJQUVwQyxJQUFJLEdBQXVCLFNBQVMsQ0FBQTtJQUNwQyxRQUFRLEdBQVcsS0FBSyxDQUFBO0lBQ3hCLFVBQVUsR0FBVyxPQUFPLENBQUE7SUFDNUIsUUFBUSxHQUFXLEtBQUssQ0FBQTtJQUN4QixVQUFVLEdBQVcsT0FBTyxDQUFBO0lBQzVCLFdBQVcsR0FBVyxRQUFRLENBQUE7SUFDOUIsMkJBQTJCLENBQVE7SUFDbkMsd0JBQXdCLEdBQVcsSUFBSSxDQUFBO0lBQ3ZDLFlBQVksR0FBRyxFQUFFLENBQUE7SUFFMUIsSUFDSSxLQUFLLENBQUMsS0FBMEI7UUFDbEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFTyxlQUFlLENBQUMsS0FBMEI7UUFDaEQsSUFBSSxLQUFLLEVBQUUsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQTtZQUN4QixNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQTtZQUN6QyxJQUFJLFNBQVMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7Z0JBQzlELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFBO2dCQUNwQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUE7YUFDekI7U0FDRjthQUFNLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUMzQixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUE7U0FDbEM7SUFDSCxDQUFDO0lBR00sV0FBVyxHQUFzQyxJQUFJLFlBQVksRUFBdUIsQ0FBQTtJQUV4RixRQUFRO1FBQ2IsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDeEMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFO1lBQ3ZCLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQTtZQUNsQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUE7U0FDekI7UUFDRCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztJQUMxQixDQUFDO0lBRU0sV0FBVztRQUNoQixNQUFNLEtBQUssR0FBc0IsRUFBRSxDQUFDO1FBQ3BDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQzFCLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFBO1FBQzNCLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVNLGNBQWMsQ0FBQyxJQUFhO1FBQ2pDLElBQUksSUFBSSxFQUFFO1lBQ1IsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUU7Z0JBQ2hGLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQztnQkFDM0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7YUFDekM7U0FDRjtRQUNELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU0sVUFBVSxDQUFDLEtBQWE7UUFDN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU0sa0JBQWtCLENBQUMsS0FBYSxFQUFFLEtBQWE7UUFDcEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQy9CLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQyxDQUFDO3VHQTNFVSxzQkFBc0I7MkZBQXRCLHNCQUFzQixzWkNkbkMseTRCQXdCQTs7U0RWYSxzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxpQkFBaUI7OEJBVWxCLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csMkJBQTJCO3NCQUFuQyxLQUFLO2dCQUNHLHdCQUF3QjtzQkFBaEMsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUdGLEtBQUs7c0JBRFIsS0FBSztnQkF1QkMsV0FBVztzQkFEakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBJbnB1dEtleVZhbHVlVHlwZSB7XG4gIFtrZXk6IHN0cmluZ106IGFueVxuICBrZXk/OiBzdHJpbmdcbiAgdmFsdWU/OiBzdHJpbmdcbiAgdHlwZT86IHN0cmluZ1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpbnB1dC1rZXktdmFsdWUnLFxuICB0ZW1wbGF0ZVVybDogJ2lucHV0LWtleS12YWx1ZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydpbnB1dC1rZXktdmFsdWUuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dEtleVZhbHVlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBwcml2YXRlIGluaXRpYWxpemVkOiBib29sZWFuO1xuICBwcml2YXRlIF9tb2RlbDogSW5wdXRLZXlWYWx1ZVR5cGVbXVxuICBwcml2YXRlIHRlbXBvcmFyeUl0ZW06IElucHV0S2V5VmFsdWVUeXBlID0ge31cblxuICBASW5wdXQoKSBzaXplOiAnREVGQVVMVCcgfCAnU0xJTScgPSAnREVGQVVMVCdcbiAgQElucHV0KCkga2V5RmllbGQ6IHN0cmluZyA9ICdrZXknXG4gIEBJbnB1dCgpIHZhbHVlRmllbGQ6IHN0cmluZyA9ICd2YWx1ZSdcbiAgQElucHV0KCkgbGFiZWxLZXk6IHN0cmluZyA9ICdLZXknXG4gIEBJbnB1dCgpIGxhYmVsVmFsdWU6IHN0cmluZyA9ICdWYWx1ZSdcbiAgQElucHV0KCkgcmVtb3ZlTGFiZWw6IHN0cmluZyA9ICdSZW1vdmUnXG4gIEBJbnB1dCgpIHdpZHRoUGVyY2VudGFnZUlucHV0T3B0aW9uczogbnVtYmVyXG4gIEBJbnB1dCgpIGlucHV0T3B0aW9uc0luaXRTZWxlY3RlZDogc3RyaW5nID0gbnVsbFxuICBASW5wdXQoKSBpbnB1dE9wdGlvbnMgPSBbXVxuXG4gIEBJbnB1dCgpXG4gIHNldCBtb2RlbChtb2RlbDogSW5wdXRLZXlWYWx1ZVR5cGVbXSkge1xuICAgIHRoaXMuaW5pdGlhbGl6ZU1vZGVsKG1vZGVsKTtcbiAgfVxuXG4gIGdldCBtb2RlbCgpOiBJbnB1dEtleVZhbHVlVHlwZVtdIHtcbiAgICByZXR1cm4gdGhpcy5fbW9kZWw7XG4gIH1cblxuICBwcml2YXRlIGluaXRpYWxpemVNb2RlbChtb2RlbDogSW5wdXRLZXlWYWx1ZVR5cGVbXSk6IHZvaWQge1xuICAgIGlmIChtb2RlbD8ubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5fbW9kZWwgPSBbLi4ubW9kZWxdXG4gICAgICBjb25zdCBsYXN0TW9kZWwgPSBtb2RlbFttb2RlbC5sZW5ndGggLSAxXVxuICAgICAgaWYgKGxhc3RNb2RlbD8uW3RoaXMua2V5RmllbGRdIHx8IGxhc3RNb2RlbD8uW3RoaXMudmFsdWVGaWVsZF0pIHtcbiAgICAgICAgdGhpcy5fbW9kZWwucHVzaCh0aGlzLmdldE5ld01vZGVsKCkpXG4gICAgICAgIHRoaXMubW9kZWwgPSB0aGlzLl9tb2RlbFxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgdGhpcy5tb2RlbCA9IFt0aGlzLmdldE5ld01vZGVsKCldXG4gICAgfVxuICB9XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBtb2RlbENoYW5nZTogRXZlbnRFbWl0dGVyPElucHV0S2V5VmFsdWVUeXBlW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxJbnB1dEtleVZhbHVlVHlwZVtdPigpXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMudGVtcG9yYXJ5SXRlbSA9IHRoaXMuZ2V0TmV3TW9kZWwoKTtcbiAgICBpZiAoIXRoaXMubW9kZWw/Lmxlbmd0aCkge1xuICAgICAgdGhpcy5fbW9kZWwgPSBbdGhpcy5nZXROZXdNb2RlbCgpXVxuICAgICAgdGhpcy5tb2RlbCA9IHRoaXMuX21vZGVsXG4gICAgfVxuICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSB0cnVlO1xuICB9XG5cbiAgcHVibGljIGdldE5ld01vZGVsKCk6IElucHV0S2V5VmFsdWVUeXBlIHtcbiAgICBjb25zdCB2YWx1ZTogSW5wdXRLZXlWYWx1ZVR5cGUgPSB7fTtcbiAgICB2YWx1ZVt0aGlzLmtleUZpZWxkXSA9ICcnO1xuICAgIHZhbHVlW3RoaXMudmFsdWVGaWVsZF0gPSAnJ1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHB1YmxpYyBvbkNoYW5nZVZhbHVlcyhsYXN0OiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKGxhc3QpIHtcbiAgICAgIGlmICh0aGlzLnRlbXBvcmFyeUl0ZW0/Llt0aGlzLmtleUZpZWxkXSB8fCB0aGlzLnRlbXBvcmFyeUl0ZW0/Llt0aGlzLnZhbHVlRmllbGRdKSB7XG4gICAgICAgIHRoaXMubW9kZWwucHVzaCh7IC4uLnRoaXMudGVtcG9yYXJ5SXRlbSB9KTtcbiAgICAgICAgdGhpcy50ZW1wb3JhcnlJdGVtID0gdGhpcy5nZXROZXdNb2RlbCgpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQodGhpcy5tb2RlbCk7XG4gIH1cblxuICBwdWJsaWMgcmVtb3ZlSXRlbShpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5tb2RlbC5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIHRoaXMubW9kZWxDaGFuZ2UuZW1pdCh0aGlzLm1vZGVsKTtcbiAgfVxuXG4gIHB1YmxpYyBpbnB1dE9wdGlvbkNoYW5nZWQoZXZlbnQ6IHN0cmluZywgaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIHRoaXMubW9kZWxbaW5kZXhdLnR5cGUgPSBldmVudDtcbiAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQodGhpcy5tb2RlbCk7XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cImtleS12YWx1ZS1pdGVtXCIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgbW9kZWw7IGxldCBsYXN0ID0gbGFzdDsgbGV0IGluZGV4ID0gaW5kZXhcIj5cbiAgPGlucHV0LXRleHRcbiAgICBjbGFzcz1cImlucHV0LWtleVwiXG4gICAgW3NpemVdPVwic2l6ZVwiXG4gICAgW2xhYmVsXT1cImxhYmVsS2V5XCJcbiAgICBbaW5wdXRPcHRpb25zXT1cImlucHV0T3B0aW9uc1wiXG4gICAgW2lucHV0T3B0aW9uc0luaXRTZWxlY3RlZF09XCJpbnB1dE9wdGlvbnNJbml0U2VsZWN0ZWRcIlxuICAgIFt3aWR0aFBlcmNlbnRhZ2VJbnB1dE9wdGlvbnNdPVwid2lkdGhQZXJjZW50YWdlSW5wdXRPcHRpb25zXCJcbiAgICBbKG5nTW9kZWwpXT1cIml0ZW1ba2V5RmllbGRdXCJcbiAgICAobmdNb2RlbENoYW5nZSk9XCJvbkNoYW5nZVZhbHVlcyhsYXN0KVwiXG4gICAgKG9wdGlvbkNoYW5nZWQpPVwiaW5wdXRPcHRpb25DaGFuZ2VkKCRldmVudCwgaW5kZXgpXCI+XG4gIDwvaW5wdXQtdGV4dD5cbiAgPGlucHV0LXRleHRcbiAgICBjbGFzcz1cImlucHV0LXZhbHVlXCJcbiAgICBbc2l6ZV09XCJzaXplXCJcbiAgICBbbGFiZWxdPVwibGFiZWxWYWx1ZVwiXG4gICAgWyhuZ01vZGVsKV09XCJpdGVtW3ZhbHVlRmllbGRdXCI+XG4gIDwvaW5wdXQtdGV4dD5cbiAgPGJ1dHRvbiBjbGFzcz1cImRlbGV0ZS1idXR0b25cIiBbbWF0VG9vbHRpcF09XCJyZW1vdmVMYWJlbFwiIFtuZ0NsYXNzXT1cInsnZGVsZXRlLWJ1dHRvbi1zbGltJzogc2l6ZSA9PT0gJ1NMSU0nfVwiIHR5cGU9XCJidXR0b25cIiAqbmdJZj1cIiFsYXN0XCJcbiAgICAgICAgICAoY2xpY2spPVwicmVtb3ZlSXRlbShpbmRleClcIj5cbiAgICA8bWF0LWljb24+ZGVsZXRlPC9tYXQtaWNvbj5cbiAgPC9idXR0b24+XG48L2Rpdj5cblxuIl19
@@ -3,6 +3,7 @@ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
3
  import { ValueAccessorBase } from '../value-acessor-base';
4
4
  import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
5
5
  import { Subject } from 'rxjs';
6
+ import { isNumber } from 'lodash';
6
7
  import * as i0 from "@angular/core";
7
8
  import * as i1 from "@angular/common";
8
9
  import * as i2 from "@angular/forms";
@@ -12,6 +13,8 @@ import * as i5 from "@angular/material/select";
12
13
  import * as i6 from "@angular/material/core";
13
14
  import * as i7 from "@angular/material/icon";
14
15
  class InputTextComponent extends ValueAccessorBase {
16
+ _inputOptionsInitSelected;
17
+ _inputOptions = [];
15
18
  label = '';
16
19
  disabled = false;
17
20
  iconSuffix = '';
@@ -20,8 +23,18 @@ class InputTextComponent extends ValueAccessorBase {
20
23
  size = 'DEFAULT';
21
24
  debounceTime = 0;
22
25
  widthPercentageInputOptions = 10;
23
- inputOptions = [];
24
- inputOptionsInitSelected;
26
+ set inputOptions(inputOptions) {
27
+ this._inputOptions = inputOptions;
28
+ }
29
+ get inputOptions() {
30
+ return this._inputOptions;
31
+ }
32
+ set inputOptionsInitSelected(inputOptionsInitSelected) {
33
+ this._inputOptionsInitSelected = inputOptionsInitSelected;
34
+ }
35
+ get inputOptionsInitSelected() {
36
+ return this._inputOptionsInitSelected;
37
+ }
25
38
  suffixIconClick = new EventEmitter();
26
39
  prefixIconClick = new EventEmitter();
27
40
  onDebounce = new EventEmitter();
@@ -57,17 +70,26 @@ class InputTextComponent extends ValueAccessorBase {
57
70
  return this.size === 'DEFAULT';
58
71
  }
59
72
  widthInput() {
60
- return this.inputOptions.length > 0 ? 100 - this.widthPercentageInputOptions : 100;
73
+ if (isNumber(this.widthPercentageInputOptions)) {
74
+ return this.inputOptions.length > 0 ? 100 - this.widthPercentageInputOptions : 100;
75
+ }
76
+ return 100;
61
77
  }
62
78
  onOptionSelected(event) {
63
79
  this.optionChanged.emit(event.value);
64
80
  }
81
+ getSelectWidth() {
82
+ if (isNumber(this.widthPercentageInputOptions)) {
83
+ return `${this.widthPercentageInputOptions}%`;
84
+ }
85
+ return this.widthPercentageInputOptions;
86
+ }
65
87
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputTextComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
66
88
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: InputTextComponent, selector: "input-text", inputs: { label: "label", disabled: "disabled", iconSuffix: "iconSuffix", iconPrefix: "iconPrefix", autoComplete: "autoComplete", size: "size", debounceTime: "debounceTime", widthPercentageInputOptions: "widthPercentageInputOptions", inputOptions: "inputOptions", inputOptionsInitSelected: "inputOptionsInitSelected" }, outputs: { suffixIconClick: "suffixIconClick", prefixIconClick: "prefixIconClick", onDebounce: "onDebounce", optionChanged: "optionChanged" }, providers: [{
67
89
  provide: NG_VALUE_ACCESSOR,
68
90
  useExisting: forwardRef(() => InputTextComponent),
69
91
  multi: true
70
- }], usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"apipass-input-text\" [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\" appearance=\"outline\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-icon class=\"mat-icon-prefix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matPrefix *ngIf=\"iconPrefix\" (click)=\"prefixClick()\">{{iconPrefix}}</mat-icon>\n <input matInput type=\"text\" class=\"input-text\" [ngStyle]=\"{ width: widthInput() + '%' }\" [(ngModel)]=\"value\"\n [disabled]=\"disabled\" [autocomplete]=\"autoComplete\"\n (input)=\"onSearchInput()\" />\n <div *ngIf=\"this.inputOptions.length > 0\" class=\"select-container\"\n [ngStyle]=\"{ width: widthPercentageInputOptions + '%' }\" [ngClass]=\"{ 'select-container': isDefault(),\n 'select-container-slim':isSlim()}\">\n <mat-form-field [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\">\n <mat-select [(value)]=\"inputOptionsInitSelected\" (selectionChange)=\"onOptionSelected($event)\">\n <mat-option *ngFor=\"let item of inputOptions\" [value]=\"item.value\">{{item.title}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n <mat-icon class=\"mat-icon-suffix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matSuffix *ngIf=\"iconSuffix\" (click)=\"suffixClick()\">{{iconSuffix}}</mat-icon>\n</mat-form-field>\n", styles: [".apipass-input-text,.apipass-input-text-slim{width:100%}.apipass-input-text .mdc-text-field--outlined,.apipass-input-text-slim .mdc-text-field--outlined{padding-right:5px}.apipass-input-text .select-container,.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container,.apipass-input-text-slim .select-container-slim{position:absolute;right:0;top:50%;transform:translateY(-50%)}.apipass-input-text .select-container .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-notched-outline{height:80%;margin-top:5px}.apipass-input-text .select-container .mdc-notched-outline__leading,.apipass-input-text .select-container .mdc-notched-outline__notch,.apipass-input-text .select-container .mdc-notched-outline__trailing,.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container .mdc-notched-outline__leading,.apipass-input-text-slim .select-container .mdc-notched-outline__notch,.apipass-input-text-slim .select-container .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{border-top:none!important;border-bottom:none!important;border-right:none!important;border-radius:0!important;height:43px}.apipass-input-text .select-container .mat-mdc-select-value,.apipass-input-text .select-container-slim .mat-mdc-select-value,.apipass-input-text-slim .select-container .mat-mdc-select-value,.apipass-input-text-slim .select-container-slim .mat-mdc-select-value{text-align:center}.apipass-input-text .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-text-field--outlined .mdc-notched-outline{margin-top:1px!important}.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container-slim{top:50%!important}.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{height:29px}.apipass-input-text .mdc-text-field,.apipass-input-text-slim .mdc-text-field{padding:0 5px!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None });
92
+ }], usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"apipass-input-text\" [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\" appearance=\"outline\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-icon class=\"mat-icon-prefix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matPrefix *ngIf=\"iconPrefix\" (click)=\"prefixClick()\">{{iconPrefix}}</mat-icon>\n <input matInput type=\"text\" class=\"input-text\" [ngStyle]=\"{ width: widthInput() + '%' }\" [(ngModel)]=\"value\"\n [disabled]=\"disabled\" [autocomplete]=\"autoComplete\"\n (input)=\"onSearchInput()\" />\n <div *ngIf=\"this.inputOptions.length > 0\" class=\"select-container\"\n [ngStyle]=\"{ width: getSelectWidth() }\" [ngClass]=\"{ 'select-container': isDefault(),\n 'select-container-slim':isSlim()}\">\n <mat-form-field [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\">\n <mat-select [(value)]=\"inputOptionsInitSelected\" (selectionChange)=\"onOptionSelected($event)\">\n <mat-option *ngFor=\"let item of inputOptions\" [value]=\"item.value\">{{item.title}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n <mat-icon class=\"mat-icon-suffix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matSuffix *ngIf=\"iconSuffix\" (click)=\"suffixClick()\">{{iconSuffix}}</mat-icon>\n</mat-form-field>\n", styles: [".apipass-input-text,.apipass-input-text-slim{width:100%}.apipass-input-text .mdc-text-field--outlined,.apipass-input-text-slim .mdc-text-field--outlined{padding-right:5px}.apipass-input-text .select-container,.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container,.apipass-input-text-slim .select-container-slim{position:absolute;right:0;top:50%;transform:translateY(-50%)}.apipass-input-text .select-container .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-notched-outline{height:80%;margin-top:5px}.apipass-input-text .select-container .mdc-notched-outline__leading,.apipass-input-text .select-container .mdc-notched-outline__notch,.apipass-input-text .select-container .mdc-notched-outline__trailing,.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container .mdc-notched-outline__leading,.apipass-input-text-slim .select-container .mdc-notched-outline__notch,.apipass-input-text-slim .select-container .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{border-top:none!important;border-bottom:none!important;border-right:none!important;border-radius:0!important;height:43px}.apipass-input-text .select-container .mat-mdc-select-value,.apipass-input-text .select-container-slim .mat-mdc-select-value,.apipass-input-text-slim .select-container .mat-mdc-select-value,.apipass-input-text-slim .select-container-slim .mat-mdc-select-value{text-align:left;padding-left:5px}.apipass-input-text .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-text-field--outlined .mdc-notched-outline{margin-top:1px!important}.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container-slim{top:50%!important}.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{height:29px}.apipass-input-text .mdc-text-field,.apipass-input-text-slim .mdc-text-field{padding:0 5px!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None });
71
93
  }
72
94
  export { InputTextComponent };
73
95
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputTextComponent, decorators: [{
@@ -76,7 +98,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
76
98
  provide: NG_VALUE_ACCESSOR,
77
99
  useExisting: forwardRef(() => InputTextComponent),
78
100
  multi: true
79
- }], encapsulation: ViewEncapsulation.None, template: "<mat-form-field class=\"apipass-input-text\" [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\" appearance=\"outline\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-icon class=\"mat-icon-prefix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matPrefix *ngIf=\"iconPrefix\" (click)=\"prefixClick()\">{{iconPrefix}}</mat-icon>\n <input matInput type=\"text\" class=\"input-text\" [ngStyle]=\"{ width: widthInput() + '%' }\" [(ngModel)]=\"value\"\n [disabled]=\"disabled\" [autocomplete]=\"autoComplete\"\n (input)=\"onSearchInput()\" />\n <div *ngIf=\"this.inputOptions.length > 0\" class=\"select-container\"\n [ngStyle]=\"{ width: widthPercentageInputOptions + '%' }\" [ngClass]=\"{ 'select-container': isDefault(),\n 'select-container-slim':isSlim()}\">\n <mat-form-field [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\">\n <mat-select [(value)]=\"inputOptionsInitSelected\" (selectionChange)=\"onOptionSelected($event)\">\n <mat-option *ngFor=\"let item of inputOptions\" [value]=\"item.value\">{{item.title}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n <mat-icon class=\"mat-icon-suffix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matSuffix *ngIf=\"iconSuffix\" (click)=\"suffixClick()\">{{iconSuffix}}</mat-icon>\n</mat-form-field>\n", styles: [".apipass-input-text,.apipass-input-text-slim{width:100%}.apipass-input-text .mdc-text-field--outlined,.apipass-input-text-slim .mdc-text-field--outlined{padding-right:5px}.apipass-input-text .select-container,.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container,.apipass-input-text-slim .select-container-slim{position:absolute;right:0;top:50%;transform:translateY(-50%)}.apipass-input-text .select-container .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-notched-outline{height:80%;margin-top:5px}.apipass-input-text .select-container .mdc-notched-outline__leading,.apipass-input-text .select-container .mdc-notched-outline__notch,.apipass-input-text .select-container .mdc-notched-outline__trailing,.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container .mdc-notched-outline__leading,.apipass-input-text-slim .select-container .mdc-notched-outline__notch,.apipass-input-text-slim .select-container .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{border-top:none!important;border-bottom:none!important;border-right:none!important;border-radius:0!important;height:43px}.apipass-input-text .select-container .mat-mdc-select-value,.apipass-input-text .select-container-slim .mat-mdc-select-value,.apipass-input-text-slim .select-container .mat-mdc-select-value,.apipass-input-text-slim .select-container-slim .mat-mdc-select-value{text-align:center}.apipass-input-text .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-text-field--outlined .mdc-notched-outline{margin-top:1px!important}.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container-slim{top:50%!important}.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{height:29px}.apipass-input-text .mdc-text-field,.apipass-input-text-slim .mdc-text-field{padding:0 5px!important}\n"] }]
101
+ }], encapsulation: ViewEncapsulation.None, template: "<mat-form-field class=\"apipass-input-text\" [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\" appearance=\"outline\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-icon class=\"mat-icon-prefix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matPrefix *ngIf=\"iconPrefix\" (click)=\"prefixClick()\">{{iconPrefix}}</mat-icon>\n <input matInput type=\"text\" class=\"input-text\" [ngStyle]=\"{ width: widthInput() + '%' }\" [(ngModel)]=\"value\"\n [disabled]=\"disabled\" [autocomplete]=\"autoComplete\"\n (input)=\"onSearchInput()\" />\n <div *ngIf=\"this.inputOptions.length > 0\" class=\"select-container\"\n [ngStyle]=\"{ width: getSelectWidth() }\" [ngClass]=\"{ 'select-container': isDefault(),\n 'select-container-slim':isSlim()}\">\n <mat-form-field [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\">\n <mat-select [(value)]=\"inputOptionsInitSelected\" (selectionChange)=\"onOptionSelected($event)\">\n <mat-option *ngFor=\"let item of inputOptions\" [value]=\"item.value\">{{item.title}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n <mat-icon class=\"mat-icon-suffix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matSuffix *ngIf=\"iconSuffix\" (click)=\"suffixClick()\">{{iconSuffix}}</mat-icon>\n</mat-form-field>\n", styles: [".apipass-input-text,.apipass-input-text-slim{width:100%}.apipass-input-text .mdc-text-field--outlined,.apipass-input-text-slim .mdc-text-field--outlined{padding-right:5px}.apipass-input-text .select-container,.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container,.apipass-input-text-slim .select-container-slim{position:absolute;right:0;top:50%;transform:translateY(-50%)}.apipass-input-text .select-container .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-notched-outline{height:80%;margin-top:5px}.apipass-input-text .select-container .mdc-notched-outline__leading,.apipass-input-text .select-container .mdc-notched-outline__notch,.apipass-input-text .select-container .mdc-notched-outline__trailing,.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container .mdc-notched-outline__leading,.apipass-input-text-slim .select-container .mdc-notched-outline__notch,.apipass-input-text-slim .select-container .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{border-top:none!important;border-bottom:none!important;border-right:none!important;border-radius:0!important;height:43px}.apipass-input-text .select-container .mat-mdc-select-value,.apipass-input-text .select-container-slim .mat-mdc-select-value,.apipass-input-text-slim .select-container .mat-mdc-select-value,.apipass-input-text-slim .select-container-slim .mat-mdc-select-value{text-align:left;padding-left:5px}.apipass-input-text .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-text-field--outlined .mdc-notched-outline{margin-top:1px!important}.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container-slim{top:50%!important}.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{height:29px}.apipass-input-text .mdc-text-field,.apipass-input-text-slim .mdc-text-field{padding:0 5px!important}\n"] }]
80
102
  }], propDecorators: { label: [{
81
103
  type: Input
82
104
  }], disabled: [{
@@ -106,4 +128,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
106
128
  }], optionChanged: [{
107
129
  type: Output
108
130
  }] } });
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2lucHV0LXRleHQvaW5wdXQtdGV4dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2lucHV0LXRleHQvaW5wdXQtdGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNyRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7O0FBTy9CLE1BV2Esa0JBQW1CLFNBQVEsaUJBQXlCO0lBRXRELEtBQUssR0FBRyxFQUFFLENBQUE7SUFDVixRQUFRLEdBQUcsS0FBSyxDQUFBO0lBQ2hCLFVBQVUsR0FBRyxFQUFFLENBQUE7SUFDZixVQUFVLEdBQUcsRUFBRSxDQUFBO0lBQ2YsWUFBWSxHQUFHLElBQUksQ0FBQTtJQUNuQixJQUFJLEdBQXVCLFNBQVMsQ0FBQTtJQUNwQyxZQUFZLEdBQVcsQ0FBQyxDQUFBO0lBQ3hCLDJCQUEyQixHQUFXLEVBQUUsQ0FBQTtJQUN4QyxZQUFZLEdBQXVCLEVBQUUsQ0FBQTtJQUNyQyx3QkFBd0IsQ0FBUTtJQUV4QixlQUFlLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQTtJQUM3QyxlQUFlLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQTtJQUM3QyxVQUFVLEdBQXlCLElBQUks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O2dCQUNVLGFBQWE7c0JBQTdCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgZm9yd2FyZFJlZiwgSW5wdXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IFZhbHVlQWNjZXNzb3JCYXNlIH0gZnJvbSAnLi4vdmFsdWUtYWNlc3Nvci1iYXNlJ1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBJbnB1dE9wdGlvbnNUeXBlIHtcbiAgdmFsdWU6IHN0cmluZ1xuICB0aXRsZTogc3RyaW5nXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lucHV0LXRleHQnLFxuICB0ZW1wbGF0ZVVybDogJ2lucHV0LXRleHQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnaW5wdXQtdGV4dC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFt7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5wdXRUZXh0Q29tcG9uZW50KSxcbiAgICBtdWx0aTogdHJ1ZVxuICB9XSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dFRleHRDb21wb25lbnQgZXh0ZW5kcyBWYWx1ZUFjY2Vzc29yQmFzZTxzdHJpbmc+IHtcblxuICBASW5wdXQoKSBsYWJlbCA9ICcnXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2VcbiAgQElucHV0KCkgaWNvblN1ZmZpeCA9ICcnXG4gIEBJbnB1dCgpIGljb25QcmVmaXggPSAnJ1xuICBASW5wdXQoKSBhdXRvQ29tcGxldGUgPSAnb24nXG4gIEBJbnB1dCgpIHNpemU6ICdERUZBVUxUJyB8ICdTTElNJyA9ICdERUZBVUxUJ1xuICBASW5wdXQoKSBkZWJvdW5jZVRpbWU6IG51bWJlciA9IDBcbiAgQElucHV0KCkgd2lkdGhQZXJjZW50YWdlSW5wdXRPcHRpb25zOiBudW1iZXIgPSAxMFxuICBASW5wdXQoKSBpbnB1dE9wdGlvbnM6IElucHV0T3B0aW9uc1R5cGVbXSA9IFtdXG4gIEBJbnB1dCgpIGlucHV0T3B0aW9uc0luaXRTZWxlY3RlZDogc3RyaW5nXG5cbiAgQE91dHB1dCgpIHB1YmxpYyBzdWZmaXhJY29uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KClcbiAgQE91dHB1dCgpIHB1YmxpYyBwcmVmaXhJY29uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KClcbiAgQE91dHB1dCgpIHB1YmxpYyBvbkRlYm91bmNlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpXG4gIEBPdXRwdXQoKSBwdWJsaWMgb3B0aW9uQ2hhbmdlZDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgc2VhcmNoVGVybXM6IFN1YmplY3Q8c3RyaW5nPiA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoVGVybXMucGlwZShcbiAgICAgIGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlVGltZSksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG4gICAgKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICB0aGlzLm9uRGVib3VuY2UuZW1pdCh2YWx1ZSlcbiAgICB9KTtcbiAgICB0aGlzLmlucHV0T3B0aW9uc0luaXRTZWxlY3RlZCB8fD0gdGhpcy5pbnB1dE9wdGlvbnM/LlswXT8udmFsdWVcbiAgfVxuXG4gIG9uU2VhcmNoSW5wdXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGVib3VuY2VUaW1lKSB7XG4gICAgICB0aGlzLnNlYXJjaFRlcm1zLm5leHQodGhpcy52YWx1ZSlcbiAgICB9XG4gIH1cblxuICBvbktleURvd24oZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIGlmIChldmVudC53aGljaCA9PT0gMzIpIHtcbiAgICAgIGV2ZW50LnRhcmdldC52YWx1ZSArPSAnICdcbiAgICB9XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgfVxuXG4gIHByZWZpeENsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMucHJlZml4SWNvbkNsaWNrLmVtaXQodHJ1ZSlcbiAgfVxuXG4gIHN1ZmZpeENsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMuc3VmZml4SWNvbkNsaWNrLmVtaXQodHJ1ZSlcbiAgfVxuXG4gIGlzU2xpbSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaXplID09PSAnU0xJTSdcbiAgfVxuXG4gIGlzRGVmYXVsdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaXplID09PSAnREVGQVVMVCdcbiAgfVxuXG4gIHdpZHRoSW5wdXQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pbnB1dE9wdGlvbnMubGVuZ3RoID4gMCA/IDEwMCAtIHRoaXMud2lkdGhQZXJjZW50YWdlSW5wdXRPcHRpb25zIDogMTAwXG4gIH1cblxuICBvbk9wdGlvblNlbGVjdGVkKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9wdGlvbkNoYW5nZWQuZW1pdChldmVudC52YWx1ZSlcbiAgfVxuXG59XG4iLCI8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJhcGlwYXNzLWlucHV0LXRleHRcIiBbbmdDbGFzc109XCJ7J2FwaXBhc3MtaW5wdXQtdGV4dC1zbGltJzogaXNTbGltKCksICdhcGlwYXNzLWlucHV0LXRleHQnOiBpc0RlZmF1bHQoKX1cIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxuICA8bWF0LWxhYmVsICpuZ0lmPVwibGFiZWxcIj57e2xhYmVsfX08L21hdC1sYWJlbD5cbiAgPG1hdC1pY29uIGNsYXNzPVwibWF0LWljb24tcHJlZml4XCIgW25nQ2xhc3NdPVwieydtYXQtaWNvbi1zbGltJzogaXNTbGltKCl9XCIgbWF0UHJlZml4ICpuZ0lmPVwiaWNvblByZWZpeFwiIChjbGljayk9XCJwcmVmaXhDbGljaygpXCI+e3tpY29uUHJlZml4fX08L21hdC1pY29uPlxuICA8aW5wdXQgbWF0SW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImlucHV0LXRleHRcIiBbbmdTdHlsZV09XCJ7IHdpZHRoOiB3aWR0aElucHV0KCkgKyAnJScgfVwiIFsobmdNb2RlbCldPVwidmFsdWVcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiIFthdXRvY29tcGxldGVdPVwiYXV0b0NvbXBsZXRlXCJcbiAgICAoaW5wdXQpPVwib25TZWFyY2hJbnB1dCgpXCIgLz5cbiAgPGRpdiAqbmdJZj1cInRoaXMuaW5wdXRPcHRpb25zLmxlbmd0aCA+IDBcIiBjbGFzcz1cInNlbGVjdC1jb250YWluZXJcIlxuICAgIFtuZ1N0eWxlXT1cInsgd2lkdGg6IHdpZHRoUGVyY2VudGFnZUlucHV0T3B0aW9ucyArICclJyB9XCIgW25nQ2xhc3NdPVwieyAnc2VsZWN0LWNvbnRhaW5lcic6IGlzRGVmYXVsdCgpLFxuICAgICdzZWxlY3QtY29udGFpbmVyLXNsaW0nOmlzU2xpbSgpfVwiPlxuICAgIDxtYXQtZm9ybS1maWVsZCBbbmdDbGFzc109XCJ7J2FwaXBhc3MtaW5wdXQtdGV4dC1zbGltJzogaXNTbGltKCksICdhcGlwYXNzLWlucHV0LXRleHQnOiBpc0RlZmF1bHQoKX1cIj5cbiAgICAgIDxtYXQtc2VsZWN0IFsodmFsdWUpXT1cImlucHV0T3B0aW9uc0luaXRTZWxlY3RlZFwiIChzZWxlY3Rpb25DaGFuZ2UpPVwib25PcHRpb25TZWxlY3RlZCgkZXZlbnQpXCI+XG4gICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBpdGVtIG9mIGlucHV0T3B0aW9uc1wiIFt2YWx1ZV09XCJpdGVtLnZhbHVlXCI+e3tpdGVtLnRpdGxlfX08L21hdC1vcHRpb24+XG4gICAgICA8L21hdC1zZWxlY3Q+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgPC9kaXY+XG4gIDxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uLXN1ZmZpeFwiIFtuZ0NsYXNzXT1cInsnbWF0LWljb24tc2xpbSc6IGlzU2xpbSgpfVwiIG1hdFN1ZmZpeCAqbmdJZj1cImljb25TdWZmaXhcIiAoY2xpY2spPVwic3VmZml4Q2xpY2soKVwiPnt7aWNvblN1ZmZpeH19PC9tYXQtaWNvbj5cbjwvbWF0LWZvcm0tZmllbGQ+XG4iXX0=
131
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2lucHV0LXRleHQvaW5wdXQtdGV4dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2lucHV0LXRleHQvaW5wdXQtdGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNyRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sUUFBUSxDQUFDOzs7Ozs7Ozs7QUFPbEMsTUFXYSxrQkFBbUIsU0FBUSxpQkFBeUI7SUFFdkQseUJBQXlCLENBQVE7SUFDakMsYUFBYSxHQUF1QixFQUFFLENBQUE7SUFFckMsS0FBSyxHQUFHLEVBQUUsQ0FBQTtJQUNWLFFBQVEsR0FBRyxLQUFLLENBQUE7SUFDaEIsVUFBVSxHQUFHLEVBQUUsQ0FBQTtJQUNmLFVBQVUsR0FBRyxFQUFFLENBQUE7SUFDZixZQUFZLEdBQUcsSUFBSSxDQUFBO0lBQ25CLElBQUksR0FBdUIsU0FBUyxDQUFBO0lBQ3BDLFlBQVksR0FBVyxDQUFDLENBQUE7SUFDeEIsMkJBQTJCLEdBQVEsRUFBRSxDQUFBO0lBRTlDLElBQ0ksWUFBWSxDQUFDLFlBQWdDO1FBQy9DLElBQUksQ0FBQyxhQUFhLEdBQUcs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QUNqRCxLQUFLLEVBQUUsSUFBSTthQUNaLENBQUMsaURDcEJKLGsxQ0FpQkE7O1NETWEsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBWDlCLFNBQVM7K0JBQ0UsWUFBWSxhQUdYLENBQUM7NEJBQ1YsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsbUJBQW1CLENBQUM7NEJBQ2pELEtBQUssRUFBRSxJQUFJO3lCQUNaLENBQUMsaUJBQ2EsaUJBQWlCLENBQUMsSUFBSTs4QkFPNUIsS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csMkJBQTJCO3NCQUFuQyxLQUFLO2dCQUdGLFlBQVk7c0JBRGYsS0FBSztnQkFVRix3QkFBd0I7c0JBRDNCLEtBQUs7Z0JBU1csZUFBZTtzQkFBL0IsTUFBTTtnQkFDVSxlQUFlO3NCQUEvQixNQUFNO2dCQUNVLFVBQVU7c0JBQTFCLE1BQU07Z0JBQ1UsYUFBYTtzQkFBN0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgVmFsdWVBY2Nlc3NvckJhc2UgfSBmcm9tICcuLi92YWx1ZS1hY2Vzc29yLWJhc2UnXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgaXNOdW1iZXIgfSBmcm9tICdsb2Rhc2gnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElucHV0T3B0aW9uc1R5cGUge1xuICB2YWx1ZTogc3RyaW5nXG4gIHRpdGxlOiBzdHJpbmdcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW5wdXQtdGV4dCcsXG4gIHRlbXBsYXRlVXJsOiAnaW5wdXQtdGV4dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydpbnB1dC10ZXh0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dFRleHRDb21wb25lbnQpLFxuICAgIG11bHRpOiB0cnVlXG4gIH1dLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIElucHV0VGV4dENvbXBvbmVudCBleHRlbmRzIFZhbHVlQWNjZXNzb3JCYXNlPHN0cmluZz4ge1xuXG4gIHByaXZhdGUgX2lucHV0T3B0aW9uc0luaXRTZWxlY3RlZDogc3RyaW5nXG4gIHByaXZhdGUgX2lucHV0T3B0aW9uczogSW5wdXRPcHRpb25zVHlwZVtdID0gW11cblxuICBASW5wdXQoKSBsYWJlbCA9ICcnXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2VcbiAgQElucHV0KCkgaWNvblN1ZmZpeCA9ICcnXG4gIEBJbnB1dCgpIGljb25QcmVmaXggPSAnJ1xuICBASW5wdXQoKSBhdXRvQ29tcGxldGUgPSAnb24nXG4gIEBJbnB1dCgpIHNpemU6ICdERUZBVUxUJyB8ICdTTElNJyA9ICdERUZBVUxUJ1xuICBASW5wdXQoKSBkZWJvdW5jZVRpbWU6IG51bWJlciA9IDBcbiAgQElucHV0KCkgd2lkdGhQZXJjZW50YWdlSW5wdXRPcHRpb25zOiBhbnkgPSAxMFxuXG4gIEBJbnB1dCgpXG4gIHNldCBpbnB1dE9wdGlvbnMoaW5wdXRPcHRpb25zOiBJbnB1dE9wdGlvbnNUeXBlW10pIHtcbiAgICB0aGlzLl9pbnB1dE9wdGlvbnMgPSBpbnB1dE9wdGlvbnNcbiAgfVxuXG4gIGdldCBpbnB1dE9wdGlvbnMoKTogSW5wdXRPcHRpb25zVHlwZVtdIHtcbiAgICByZXR1cm4gdGhpcy5faW5wdXRPcHRpb25zXG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgaW5wdXRPcHRpb25zSW5pdFNlbGVjdGVkKGlucHV0T3B0aW9uc0luaXRTZWxlY3RlZDogc3RyaW5nKSB7XG4gICAgdGhpcy5faW5wdXRPcHRpb25zSW5pdFNlbGVjdGVkID0gaW5wdXRPcHRpb25zSW5pdFNlbGVjdGVkXG4gIH1cblxuICBnZXQgaW5wdXRPcHRpb25zSW5pdFNlbGVjdGVkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX2lucHV0T3B0aW9uc0luaXRTZWxlY3RlZFxuICB9XG5cbiAgQE91dHB1dCgpIHB1YmxpYyBzdWZmaXhJY29uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KClcbiAgQE91dHB1dCgpIHB1YmxpYyBwcmVmaXhJY29uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KClcbiAgQE91dHB1dCgpIHB1YmxpYyBvbkRlYm91bmNlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpXG4gIEBPdXRwdXQoKSBwdWJsaWMgb3B0aW9uQ2hhbmdlZDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgc2VhcmNoVGVybXM6IFN1YmplY3Q8c3RyaW5nPiA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoVGVybXMucGlwZShcbiAgICAgIGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlVGltZSksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG4gICAgKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICB0aGlzLm9uRGVib3VuY2UuZW1pdCh2YWx1ZSlcbiAgICB9KTtcbiAgICB0aGlzLmlucHV0T3B0aW9uc0luaXRTZWxlY3RlZCB8fD0gdGhpcy5pbnB1dE9wdGlvbnM/LlswXT8udmFsdWVcbiAgfVxuXG4gIG9uU2VhcmNoSW5wdXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGVib3VuY2VUaW1lKSB7XG4gICAgICB0aGlzLnNlYXJjaFRlcm1zLm5leHQodGhpcy52YWx1ZSlcbiAgICB9XG4gIH1cblxuICBvbktleURvd24oZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIGlmIChldmVudC53aGljaCA9PT0gMzIpIHtcbiAgICAgIGV2ZW50LnRhcmdldC52YWx1ZSArPSAnICdcbiAgICB9XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgfVxuXG4gIHByZWZpeENsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMucHJlZml4SWNvbkNsaWNrLmVtaXQodHJ1ZSlcbiAgfVxuXG4gIHN1ZmZpeENsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMuc3VmZml4SWNvbkNsaWNrLmVtaXQodHJ1ZSlcbiAgfVxuXG4gIGlzU2xpbSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaXplID09PSAnU0xJTSdcbiAgfVxuXG4gIGlzRGVmYXVsdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaXplID09PSAnREVGQVVMVCdcbiAgfVxuXG4gIHdpZHRoSW5wdXQoKTogbnVtYmVyIHtcbiAgICBpZiAoaXNOdW1iZXIodGhpcy53aWR0aFBlcmNlbnRhZ2VJbnB1dE9wdGlvbnMpKSB7XG4gICAgICByZXR1cm4gdGhpcy5pbnB1dE9wdGlvbnMubGVuZ3RoID4gMCA/IDEwMCAtIHRoaXMud2lkdGhQZXJjZW50YWdlSW5wdXRPcHRpb25zIDogMTAwXG4gICAgfVxuICAgIHJldHVybiAxMDBcbiAgfVxuXG4gIG9uT3B0aW9uU2VsZWN0ZWQoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMub3B0aW9uQ2hhbmdlZC5lbWl0KGV2ZW50LnZhbHVlKVxuICB9XG5cbiAgZ2V0U2VsZWN0V2lkdGgoKTogc3RyaW5nIHtcbiAgICBpZiAoaXNOdW1iZXIodGhpcy53aWR0aFBlcmNlbnRhZ2VJbnB1dE9wdGlvbnMpKSB7XG4gICAgICByZXR1cm4gYCR7dGhpcy53aWR0aFBlcmNlbnRhZ2VJbnB1dE9wdGlvbnN9JWBcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMud2lkdGhQZXJjZW50YWdlSW5wdXRPcHRpb25zO1xuICB9XG5cbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImFwaXBhc3MtaW5wdXQtdGV4dFwiIFtuZ0NsYXNzXT1cInsnYXBpcGFzcy1pbnB1dC10ZXh0LXNsaW0nOiBpc1NsaW0oKSwgJ2FwaXBhc3MtaW5wdXQtdGV4dCc6IGlzRGVmYXVsdCgpfVwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XG4gIDxtYXQtbGFiZWwgKm5nSWY9XCJsYWJlbFwiPnt7bGFiZWx9fTwvbWF0LWxhYmVsPlxuICA8bWF0LWljb24gY2xhc3M9XCJtYXQtaWNvbi1wcmVmaXhcIiBbbmdDbGFzc109XCJ7J21hdC1pY29uLXNsaW0nOiBpc1NsaW0oKX1cIiBtYXRQcmVmaXggKm5nSWY9XCJpY29uUHJlZml4XCIgKGNsaWNrKT1cInByZWZpeENsaWNrKClcIj57e2ljb25QcmVmaXh9fTwvbWF0LWljb24+XG4gIDxpbnB1dCBtYXRJbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiaW5wdXQtdGV4dFwiIFtuZ1N0eWxlXT1cInsgd2lkdGg6IHdpZHRoSW5wdXQoKSArICclJyB9XCIgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgW2F1dG9jb21wbGV0ZV09XCJhdXRvQ29tcGxldGVcIlxuICAgIChpbnB1dCk9XCJvblNlYXJjaElucHV0KClcIiAvPlxuICA8ZGl2ICpuZ0lmPVwidGhpcy5pbnB1dE9wdGlvbnMubGVuZ3RoID4gMFwiIGNsYXNzPVwic2VsZWN0LWNvbnRhaW5lclwiXG4gICAgW25nU3R5bGVdPVwieyB3aWR0aDogZ2V0U2VsZWN0V2lkdGgoKSB9XCIgW25nQ2xhc3NdPVwieyAnc2VsZWN0LWNvbnRhaW5lcic6IGlzRGVmYXVsdCgpLFxuICAgICdzZWxlY3QtY29udGFpbmVyLXNsaW0nOmlzU2xpbSgpfVwiPlxuICAgIDxtYXQtZm9ybS1maWVsZCBbbmdDbGFzc109XCJ7J2FwaXBhc3MtaW5wdXQtdGV4dC1zbGltJzogaXNTbGltKCksICdhcGlwYXNzLWlucHV0LXRleHQnOiBpc0RlZmF1bHQoKX1cIj5cbiAgICAgIDxtYXQtc2VsZWN0IFsodmFsdWUpXT1cImlucHV0T3B0aW9uc0luaXRTZWxlY3RlZFwiIChzZWxlY3Rpb25DaGFuZ2UpPVwib25PcHRpb25TZWxlY3RlZCgkZXZlbnQpXCI+XG4gICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBpdGVtIG9mIGlucHV0T3B0aW9uc1wiIFt2YWx1ZV09XCJpdGVtLnZhbHVlXCI+e3tpdGVtLnRpdGxlfX08L21hdC1vcHRpb24+XG4gICAgICA8L21hdC1zZWxlY3Q+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgPC9kaXY+XG4gIDxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uLXN1ZmZpeFwiIFtuZ0NsYXNzXT1cInsnbWF0LWljb24tc2xpbSc6IGlzU2xpbSgpfVwiIG1hdFN1ZmZpeCAqbmdJZj1cImljb25TdWZmaXhcIiAoY2xpY2spPVwic3VmZml4Q2xpY2soKVwiPnt7aWNvblN1ZmZpeH19PC9tYXQtaWNvbj5cbjwvbWF0LWZvcm0tZmllbGQ+XG4iXX0=
@@ -23,6 +23,7 @@ import * as i3$1 from '@angular/material/tooltip';
23
23
  import { MatTooltipModule } from '@angular/material/tooltip';
24
24
  import { debounceTime, distinctUntilChanged, takeUntil, tap, skip } from 'rxjs/operators';
25
25
  import { Subject, fromEvent } from 'rxjs';
26
+ import { isNumber } from 'lodash';
26
27
  import * as i2$1 from '@apipass/icons';
27
28
  import { IconsModule } from '@apipass/icons';
28
29
  import * as i3$2 from '@ng-select/ng-select';
@@ -123,6 +124,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
123
124
  }] } });
124
125
 
125
126
  class InputTextComponent extends ValueAccessorBase {
127
+ _inputOptionsInitSelected;
128
+ _inputOptions = [];
126
129
  label = '';
127
130
  disabled = false;
128
131
  iconSuffix = '';
@@ -131,8 +134,18 @@ class InputTextComponent extends ValueAccessorBase {
131
134
  size = 'DEFAULT';
132
135
  debounceTime = 0;
133
136
  widthPercentageInputOptions = 10;
134
- inputOptions = [];
135
- inputOptionsInitSelected;
137
+ set inputOptions(inputOptions) {
138
+ this._inputOptions = inputOptions;
139
+ }
140
+ get inputOptions() {
141
+ return this._inputOptions;
142
+ }
143
+ set inputOptionsInitSelected(inputOptionsInitSelected) {
144
+ this._inputOptionsInitSelected = inputOptionsInitSelected;
145
+ }
146
+ get inputOptionsInitSelected() {
147
+ return this._inputOptionsInitSelected;
148
+ }
136
149
  suffixIconClick = new EventEmitter();
137
150
  prefixIconClick = new EventEmitter();
138
151
  onDebounce = new EventEmitter();
@@ -168,17 +181,26 @@ class InputTextComponent extends ValueAccessorBase {
168
181
  return this.size === 'DEFAULT';
169
182
  }
170
183
  widthInput() {
171
- return this.inputOptions.length > 0 ? 100 - this.widthPercentageInputOptions : 100;
184
+ if (isNumber(this.widthPercentageInputOptions)) {
185
+ return this.inputOptions.length > 0 ? 100 - this.widthPercentageInputOptions : 100;
186
+ }
187
+ return 100;
172
188
  }
173
189
  onOptionSelected(event) {
174
190
  this.optionChanged.emit(event.value);
175
191
  }
192
+ getSelectWidth() {
193
+ if (isNumber(this.widthPercentageInputOptions)) {
194
+ return `${this.widthPercentageInputOptions}%`;
195
+ }
196
+ return this.widthPercentageInputOptions;
197
+ }
176
198
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputTextComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
177
199
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: InputTextComponent, selector: "input-text", inputs: { label: "label", disabled: "disabled", iconSuffix: "iconSuffix", iconPrefix: "iconPrefix", autoComplete: "autoComplete", size: "size", debounceTime: "debounceTime", widthPercentageInputOptions: "widthPercentageInputOptions", inputOptions: "inputOptions", inputOptionsInitSelected: "inputOptionsInitSelected" }, outputs: { suffixIconClick: "suffixIconClick", prefixIconClick: "prefixIconClick", onDebounce: "onDebounce", optionChanged: "optionChanged" }, providers: [{
178
200
  provide: NG_VALUE_ACCESSOR,
179
201
  useExisting: forwardRef(() => InputTextComponent),
180
202
  multi: true
181
- }], usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"apipass-input-text\" [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\" appearance=\"outline\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-icon class=\"mat-icon-prefix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matPrefix *ngIf=\"iconPrefix\" (click)=\"prefixClick()\">{{iconPrefix}}</mat-icon>\n <input matInput type=\"text\" class=\"input-text\" [ngStyle]=\"{ width: widthInput() + '%' }\" [(ngModel)]=\"value\"\n [disabled]=\"disabled\" [autocomplete]=\"autoComplete\"\n (input)=\"onSearchInput()\" />\n <div *ngIf=\"this.inputOptions.length > 0\" class=\"select-container\"\n [ngStyle]=\"{ width: widthPercentageInputOptions + '%' }\" [ngClass]=\"{ 'select-container': isDefault(),\n 'select-container-slim':isSlim()}\">\n <mat-form-field [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\">\n <mat-select [(value)]=\"inputOptionsInitSelected\" (selectionChange)=\"onOptionSelected($event)\">\n <mat-option *ngFor=\"let item of inputOptions\" [value]=\"item.value\">{{item.title}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n <mat-icon class=\"mat-icon-suffix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matSuffix *ngIf=\"iconSuffix\" (click)=\"suffixClick()\">{{iconSuffix}}</mat-icon>\n</mat-form-field>\n", styles: [".apipass-input-text,.apipass-input-text-slim{width:100%}.apipass-input-text .mdc-text-field--outlined,.apipass-input-text-slim .mdc-text-field--outlined{padding-right:5px}.apipass-input-text .select-container,.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container,.apipass-input-text-slim .select-container-slim{position:absolute;right:0;top:50%;transform:translateY(-50%)}.apipass-input-text .select-container .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-notched-outline{height:80%;margin-top:5px}.apipass-input-text .select-container .mdc-notched-outline__leading,.apipass-input-text .select-container .mdc-notched-outline__notch,.apipass-input-text .select-container .mdc-notched-outline__trailing,.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container .mdc-notched-outline__leading,.apipass-input-text-slim .select-container .mdc-notched-outline__notch,.apipass-input-text-slim .select-container .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{border-top:none!important;border-bottom:none!important;border-right:none!important;border-radius:0!important;height:43px}.apipass-input-text .select-container .mat-mdc-select-value,.apipass-input-text .select-container-slim .mat-mdc-select-value,.apipass-input-text-slim .select-container .mat-mdc-select-value,.apipass-input-text-slim .select-container-slim .mat-mdc-select-value{text-align:center}.apipass-input-text .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-text-field--outlined .mdc-notched-outline{margin-top:1px!important}.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container-slim{top:50%!important}.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{height:29px}.apipass-input-text .mdc-text-field,.apipass-input-text-slim .mdc-text-field{padding:0 5px!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i7$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None });
203
+ }], usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"apipass-input-text\" [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\" appearance=\"outline\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-icon class=\"mat-icon-prefix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matPrefix *ngIf=\"iconPrefix\" (click)=\"prefixClick()\">{{iconPrefix}}</mat-icon>\n <input matInput type=\"text\" class=\"input-text\" [ngStyle]=\"{ width: widthInput() + '%' }\" [(ngModel)]=\"value\"\n [disabled]=\"disabled\" [autocomplete]=\"autoComplete\"\n (input)=\"onSearchInput()\" />\n <div *ngIf=\"this.inputOptions.length > 0\" class=\"select-container\"\n [ngStyle]=\"{ width: getSelectWidth() }\" [ngClass]=\"{ 'select-container': isDefault(),\n 'select-container-slim':isSlim()}\">\n <mat-form-field [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\">\n <mat-select [(value)]=\"inputOptionsInitSelected\" (selectionChange)=\"onOptionSelected($event)\">\n <mat-option *ngFor=\"let item of inputOptions\" [value]=\"item.value\">{{item.title}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n <mat-icon class=\"mat-icon-suffix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matSuffix *ngIf=\"iconSuffix\" (click)=\"suffixClick()\">{{iconSuffix}}</mat-icon>\n</mat-form-field>\n", styles: [".apipass-input-text,.apipass-input-text-slim{width:100%}.apipass-input-text .mdc-text-field--outlined,.apipass-input-text-slim .mdc-text-field--outlined{padding-right:5px}.apipass-input-text .select-container,.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container,.apipass-input-text-slim .select-container-slim{position:absolute;right:0;top:50%;transform:translateY(-50%)}.apipass-input-text .select-container .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-notched-outline{height:80%;margin-top:5px}.apipass-input-text .select-container .mdc-notched-outline__leading,.apipass-input-text .select-container .mdc-notched-outline__notch,.apipass-input-text .select-container .mdc-notched-outline__trailing,.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container .mdc-notched-outline__leading,.apipass-input-text-slim .select-container .mdc-notched-outline__notch,.apipass-input-text-slim .select-container .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{border-top:none!important;border-bottom:none!important;border-right:none!important;border-radius:0!important;height:43px}.apipass-input-text .select-container .mat-mdc-select-value,.apipass-input-text .select-container-slim .mat-mdc-select-value,.apipass-input-text-slim .select-container .mat-mdc-select-value,.apipass-input-text-slim .select-container-slim .mat-mdc-select-value{text-align:left;padding-left:5px}.apipass-input-text .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-text-field--outlined .mdc-notched-outline{margin-top:1px!important}.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container-slim{top:50%!important}.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{height:29px}.apipass-input-text .mdc-text-field,.apipass-input-text-slim .mdc-text-field{padding:0 5px!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i7$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None });
182
204
  }
183
205
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputTextComponent, decorators: [{
184
206
  type: Component,
@@ -186,7 +208,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
186
208
  provide: NG_VALUE_ACCESSOR,
187
209
  useExisting: forwardRef(() => InputTextComponent),
188
210
  multi: true
189
- }], encapsulation: ViewEncapsulation.None, template: "<mat-form-field class=\"apipass-input-text\" [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\" appearance=\"outline\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-icon class=\"mat-icon-prefix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matPrefix *ngIf=\"iconPrefix\" (click)=\"prefixClick()\">{{iconPrefix}}</mat-icon>\n <input matInput type=\"text\" class=\"input-text\" [ngStyle]=\"{ width: widthInput() + '%' }\" [(ngModel)]=\"value\"\n [disabled]=\"disabled\" [autocomplete]=\"autoComplete\"\n (input)=\"onSearchInput()\" />\n <div *ngIf=\"this.inputOptions.length > 0\" class=\"select-container\"\n [ngStyle]=\"{ width: widthPercentageInputOptions + '%' }\" [ngClass]=\"{ 'select-container': isDefault(),\n 'select-container-slim':isSlim()}\">\n <mat-form-field [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\">\n <mat-select [(value)]=\"inputOptionsInitSelected\" (selectionChange)=\"onOptionSelected($event)\">\n <mat-option *ngFor=\"let item of inputOptions\" [value]=\"item.value\">{{item.title}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n <mat-icon class=\"mat-icon-suffix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matSuffix *ngIf=\"iconSuffix\" (click)=\"suffixClick()\">{{iconSuffix}}</mat-icon>\n</mat-form-field>\n", styles: [".apipass-input-text,.apipass-input-text-slim{width:100%}.apipass-input-text .mdc-text-field--outlined,.apipass-input-text-slim .mdc-text-field--outlined{padding-right:5px}.apipass-input-text .select-container,.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container,.apipass-input-text-slim .select-container-slim{position:absolute;right:0;top:50%;transform:translateY(-50%)}.apipass-input-text .select-container .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-notched-outline{height:80%;margin-top:5px}.apipass-input-text .select-container .mdc-notched-outline__leading,.apipass-input-text .select-container .mdc-notched-outline__notch,.apipass-input-text .select-container .mdc-notched-outline__trailing,.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container .mdc-notched-outline__leading,.apipass-input-text-slim .select-container .mdc-notched-outline__notch,.apipass-input-text-slim .select-container .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{border-top:none!important;border-bottom:none!important;border-right:none!important;border-radius:0!important;height:43px}.apipass-input-text .select-container .mat-mdc-select-value,.apipass-input-text .select-container-slim .mat-mdc-select-value,.apipass-input-text-slim .select-container .mat-mdc-select-value,.apipass-input-text-slim .select-container-slim .mat-mdc-select-value{text-align:center}.apipass-input-text .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-text-field--outlined .mdc-notched-outline{margin-top:1px!important}.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container-slim{top:50%!important}.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{height:29px}.apipass-input-text .mdc-text-field,.apipass-input-text-slim .mdc-text-field{padding:0 5px!important}\n"] }]
211
+ }], encapsulation: ViewEncapsulation.None, template: "<mat-form-field class=\"apipass-input-text\" [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\" appearance=\"outline\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-icon class=\"mat-icon-prefix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matPrefix *ngIf=\"iconPrefix\" (click)=\"prefixClick()\">{{iconPrefix}}</mat-icon>\n <input matInput type=\"text\" class=\"input-text\" [ngStyle]=\"{ width: widthInput() + '%' }\" [(ngModel)]=\"value\"\n [disabled]=\"disabled\" [autocomplete]=\"autoComplete\"\n (input)=\"onSearchInput()\" />\n <div *ngIf=\"this.inputOptions.length > 0\" class=\"select-container\"\n [ngStyle]=\"{ width: getSelectWidth() }\" [ngClass]=\"{ 'select-container': isDefault(),\n 'select-container-slim':isSlim()}\">\n <mat-form-field [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\">\n <mat-select [(value)]=\"inputOptionsInitSelected\" (selectionChange)=\"onOptionSelected($event)\">\n <mat-option *ngFor=\"let item of inputOptions\" [value]=\"item.value\">{{item.title}}</mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n <mat-icon class=\"mat-icon-suffix\" [ngClass]=\"{'mat-icon-slim': isSlim()}\" matSuffix *ngIf=\"iconSuffix\" (click)=\"suffixClick()\">{{iconSuffix}}</mat-icon>\n</mat-form-field>\n", styles: [".apipass-input-text,.apipass-input-text-slim{width:100%}.apipass-input-text .mdc-text-field--outlined,.apipass-input-text-slim .mdc-text-field--outlined{padding-right:5px}.apipass-input-text .select-container,.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container,.apipass-input-text-slim .select-container-slim{position:absolute;right:0;top:50%;transform:translateY(-50%)}.apipass-input-text .select-container .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-notched-outline{height:80%;margin-top:5px}.apipass-input-text .select-container .mdc-notched-outline__leading,.apipass-input-text .select-container .mdc-notched-outline__notch,.apipass-input-text .select-container .mdc-notched-outline__trailing,.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container .mdc-notched-outline__leading,.apipass-input-text-slim .select-container .mdc-notched-outline__notch,.apipass-input-text-slim .select-container .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{border-top:none!important;border-bottom:none!important;border-right:none!important;border-radius:0!important;height:43px}.apipass-input-text .select-container .mat-mdc-select-value,.apipass-input-text .select-container-slim .mat-mdc-select-value,.apipass-input-text-slim .select-container .mat-mdc-select-value,.apipass-input-text-slim .select-container-slim .mat-mdc-select-value{text-align:left;padding-left:5px}.apipass-input-text .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text .select-container-slim .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container .mdc-text-field--outlined .mdc-notched-outline,.apipass-input-text-slim .select-container-slim .mdc-text-field--outlined .mdc-notched-outline{margin-top:1px!important}.apipass-input-text .select-container-slim,.apipass-input-text-slim .select-container-slim{top:50%!important}.apipass-input-text .select-container-slim .mdc-notched-outline__leading,.apipass-input-text .select-container-slim .mdc-notched-outline__notch,.apipass-input-text .select-container-slim .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__leading,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__notch,.apipass-input-text-slim .select-container-slim .mdc-notched-outline__trailing{height:29px}.apipass-input-text .mdc-text-field,.apipass-input-text-slim .mdc-text-field{padding:0 5px!important}\n"] }]
190
212
  }], propDecorators: { label: [{
191
213
  type: Input
192
214
  }], disabled: [{
@@ -2112,34 +2134,58 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
2112
2134
  }] } });
2113
2135
 
2114
2136
  class InputKeyValueComponent {
2137
+ initialized;
2115
2138
  _model;
2116
- showOptions = false;
2139
+ temporaryItem = {};
2140
+ size = 'DEFAULT';
2141
+ keyField = 'key';
2142
+ valueField = 'value';
2117
2143
  labelKey = 'Key';
2118
2144
  labelValue = 'Value';
2145
+ removeLabel = 'Remove';
2119
2146
  widthPercentageInputOptions;
2120
2147
  inputOptionsInitSelected = null;
2121
2148
  inputOptions = [];
2122
2149
  set model(model) {
2150
+ this.initializeModel(model);
2151
+ }
2152
+ get model() {
2153
+ return this._model;
2154
+ }
2155
+ initializeModel(model) {
2123
2156
  if (model?.length > 0) {
2124
2157
  this._model = [...model];
2125
2158
  const lastModel = model[model.length - 1];
2126
- if (lastModel?.key || lastModel?.value) {
2127
- this._model.push({ key: '', value: '' });
2159
+ if (lastModel?.[this.keyField] || lastModel?.[this.valueField]) {
2160
+ this._model.push(this.getNewModel());
2161
+ this.model = this._model;
2128
2162
  }
2129
2163
  }
2130
- else {
2131
- this._model = [{ key: '', value: '' }];
2164
+ else if (this.initialized) {
2165
+ this.model = [this.getNewModel()];
2132
2166
  }
2133
2167
  }
2134
- get model() {
2135
- return this._model;
2136
- }
2137
2168
  modelChange = new EventEmitter();
2138
2169
  ngOnInit() {
2170
+ this.temporaryItem = this.getNewModel();
2171
+ if (!this.model?.length) {
2172
+ this._model = [this.getNewModel()];
2173
+ this.model = this._model;
2174
+ }
2175
+ this.initialized = true;
2176
+ }
2177
+ getNewModel() {
2178
+ const value = {};
2179
+ value[this.keyField] = '';
2180
+ value[this.valueField] = '';
2181
+ return value;
2139
2182
  }
2140
- onChangeValues(last, $event) {
2183
+ onChangeValues(last) {
2141
2184
  if (last) {
2142
- this.model.push({ key: '', value: '' });
2185
+ if (this.temporaryItem?.[this.keyField] || this.temporaryItem?.[this.valueField]) {
2186
+ this.model.push({ ...this.temporaryItem });
2187
+ this.temporaryItem = this.getNewModel();
2188
+ }
2143
2189
  }
2144
2190
  this.modelChange.emit(this.model);
2145
2191
  }
@@ -2149,17 +2195,26 @@ class InputKeyValueComponent {
2149
2195
  }
2150
2196
  inputOptionChanged(event, index) {
2151
2197
  this.model[index].type = event;
2198
+ this.modelChange.emit(this.model);
2152
2199
  }
2153
2200
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputKeyValueComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2154
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: InputKeyValueComponent, selector: "input-key-value", inputs: { labelKey: "labelKey", labelValue: "labelValue", widthPercentageInputOptions: "widthPercentageInputOptions", inputOptionsInitSelected: "inputOptionsInitSelected", inputOptions: "inputOptions", model: "model" }, outputs: { modelChange: "modelChange" }, ngImport: i0, template: " <div class=\"key-value-item\" *ngFor=\"let item of model; let last = last; let index = index\">\n <div class=\"div-input\">\n <input-text \n [label]=\"labelKey\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"inputOptionsInitSelected\"\n [widthPercentageInputOptions]=\"widthPercentageInputOptions\"\n [(ngModel)]=\"item.key\"\n (ngModelChange)=\"onChangeValues(last, $event)\"\n (optionChanged)=\"inputOptionChanged($event, index)\">\n </input-text>\n </div>\n <div class=\"div-input\">\n <input-text \n class=\"text-input-value\"\n [label]=\"labelValue\"\n [(ngModel)]=\"item.value\"\n >\n </input-text>\n </div>\n <div class=\"div-button\">\n <button class=\"delete-button\" type=\"button\" *ngIf=\"!last\" (click)=\"removeItem(index)\">\n <mat-icon>delete</mat-icon>\n </button>\n </div>\n </div>\n\n", styles: [".key-value-item{display:flex;margin-bottom:10px;width:100%}.key-value-item .div-input{width:40%}.key-value-item .div-input .text-input-value{margin-left:30px}.key-value-item .div-button{margin-left:50px;display:flex}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: InputTextComponent, selector: "input-text", inputs: ["label", "disabled", "iconSuffix", "iconPrefix", "autoComplete", "size", "debounceTime", "widthPercentageInputOptions", "inputOptions", "inputOptionsInitSelected"], outputs: ["suffixIconClick", "prefixIconClick", "onDebounce", "optionChanged"] }] });
2201
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: InputKeyValueComponent, selector: "input-key-value", inputs: { size: "size", keyField: "keyField", valueField: "valueField", labelKey: "labelKey", labelValue: "labelValue", removeLabel: "removeLabel", widthPercentageInputOptions: "widthPercentageInputOptions", inputOptionsInitSelected: "inputOptionsInitSelected", inputOptions: "inputOptions", model: "model" }, outputs: { modelChange: "modelChange" }, ngImport: i0, template: "<div class=\"key-value-item\" *ngFor=\"let item of model; let last = last; let index = index\">\n <input-text\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"labelKey\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"inputOptionsInitSelected\"\n [widthPercentageInputOptions]=\"widthPercentageInputOptions\"\n [(ngModel)]=\"item[keyField]\"\n (ngModelChange)=\"onChangeValues(last)\"\n (optionChanged)=\"inputOptionChanged($event, index)\">\n </input-text>\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"labelValue\"\n [(ngModel)]=\"item[valueField]\">\n </input-text>\n <button class=\"delete-button\" [matTooltip]=\"removeLabel\" [ngClass]=\"{'delete-button-slim': size === 'SLIM'}\" type=\"button\" *ngIf=\"!last\"\n (click)=\"removeItem(index)\">\n <mat-icon>delete</mat-icon>\n </button>\n</div>\n\n", styles: [".key-value-item{display:flex;gap:10px;margin-bottom:10px;width:100%}.key-value-item .input-key{width:50%}.key-value-item .input-key ::ng-deep input{padding-left:10px!important;padding-right:10px!important}.key-value-item .input-value{width:calc(50% - 60px)}.key-value-item .input-value ::ng-deep input{padding-left:10px!important;padding-right:10px!important}.key-value-item .delete-button{display:flex;justify-content:center;align-items:center;cursor:pointer;background:#FFF;color:#c40606;border-radius:5px;border:1px solid var(--color-fonts-tertiary)}.key-value-item .delete-button.delete-button-slim{width:30px;height:30px}.key-value-item .delete-button.delete-button-slim ::ng-deep .mat-icon{width:auto!important;height:auto!important;font-size:22px!important;margin-left:-2.5px;padding:0!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3$1.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: InputTextComponent, selector: "input-text", inputs: ["label", "disabled", "iconSuffix", "iconPrefix", "autoComplete", "size", "debounceTime", "widthPercentageInputOptions", "inputOptions", "inputOptionsInitSelected"], outputs: ["suffixIconClick", "prefixIconClick", "onDebounce", "optionChanged"] }] });
2155
2202
  }
2156
2203
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputKeyValueComponent, decorators: [{
2157
2204
  type: Component,
2158
- args: [{ selector: 'input-key-value', template: " <div class=\"key-value-item\" *ngFor=\"let item of model; let last = last; let index = index\">\n <div class=\"div-input\">\n <input-text \n [label]=\"labelKey\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"inputOptionsInitSelected\"\n [widthPercentageInputOptions]=\"widthPercentageInputOptions\"\n [(ngModel)]=\"item.key\"\n (ngModelChange)=\"onChangeValues(last, $event)\"\n (optionChanged)=\"inputOptionChanged($event, index)\">\n </input-text>\n </div>\n <div class=\"div-input\">\n <input-text \n class=\"text-input-value\"\n [label]=\"labelValue\"\n [(ngModel)]=\"item.value\"\n >\n </input-text>\n </div>\n <div class=\"div-button\">\n <button class=\"delete-button\" type=\"button\" *ngIf=\"!last\" (click)=\"removeItem(index)\">\n <mat-icon>delete</mat-icon>\n </button>\n </div>\n </div>\n\n", styles: [".key-value-item{display:flex;margin-bottom:10px;width:100%}.key-value-item .div-input{width:40%}.key-value-item .div-input .text-input-value{margin-left:30px}.key-value-item .div-button{margin-left:50px;display:flex}\n"] }]
2159
- }], propDecorators: { labelKey: [{
2205
+ args: [{ selector: 'input-key-value', template: "<div class=\"key-value-item\" *ngFor=\"let item of model; let last = last; let index = index\">\n <input-text\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"labelKey\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"inputOptionsInitSelected\"\n [widthPercentageInputOptions]=\"widthPercentageInputOptions\"\n [(ngModel)]=\"item[keyField]\"\n (ngModelChange)=\"onChangeValues(last)\"\n (optionChanged)=\"inputOptionChanged($event, index)\">\n </input-text>\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"labelValue\"\n [(ngModel)]=\"item[valueField]\">\n </input-text>\n <button class=\"delete-button\" [matTooltip]=\"removeLabel\" [ngClass]=\"{'delete-button-slim': size === 'SLIM'}\" type=\"button\" *ngIf=\"!last\"\n (click)=\"removeItem(index)\">\n <mat-icon>delete</mat-icon>\n </button>\n</div>\n\n", styles: [".key-value-item{display:flex;gap:10px;margin-bottom:10px;width:100%}.key-value-item .input-key{width:50%}.key-value-item .input-key ::ng-deep input{padding-left:10px!important;padding-right:10px!important}.key-value-item .input-value{width:calc(50% - 60px)}.key-value-item .input-value ::ng-deep input{padding-left:10px!important;padding-right:10px!important}.key-value-item .delete-button{display:flex;justify-content:center;align-items:center;cursor:pointer;background:#FFF;color:#c40606;border-radius:5px;border:1px solid var(--color-fonts-tertiary)}.key-value-item .delete-button.delete-button-slim{width:30px;height:30px}.key-value-item .delete-button.delete-button-slim ::ng-deep .mat-icon{width:auto!important;height:auto!important;font-size:22px!important;margin-left:-2.5px;padding:0!important}\n"] }]
2206
+ }], propDecorators: { size: [{
2207
+ type: Input
2208
+ }], keyField: [{
2209
+ type: Input
2210
+ }], valueField: [{
2211
+ type: Input
2212
+ }], labelKey: [{
2160
2213
  type: Input
2161
2214
  }], labelValue: [{
2162
2215
  type: Input
2216
+ }], removeLabel: [{
2217
+ type: Input
2163
2218
  }], widthPercentageInputOptions: [{
2164
2219
  type: Input
2165
2220
  }], inputOptionsInitSelected: [{