@apipass/inputs 1.0.180 → 1.0.181
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/input-key-value/key-value-input.component.mjs +12 -3
- package/esm2022/input-text/input-text.component.mjs +13 -4
- package/fesm2022/apipass-inputs.mjs +23 -5
- package/fesm2022/apipass-inputs.mjs.map +1 -1
- package/input-key-value/key-value-input.component.d.ts +4 -1
- package/input-text/input-text.component.d.ts +2 -1
- package/package.json +1 -1
|
@@ -18,6 +18,7 @@ class KeyValueInputComponent {
|
|
|
18
18
|
inputOptionsWidthPercentage;
|
|
19
19
|
inputOptionsDefaultSelected;
|
|
20
20
|
inputOptions = [];
|
|
21
|
+
valueOptions = [];
|
|
21
22
|
blockNewItem = false;
|
|
22
23
|
blockEditLabel = false;
|
|
23
24
|
onDropFn;
|
|
@@ -51,6 +52,9 @@ class KeyValueInputComponent {
|
|
|
51
52
|
inputOptionChanged(event, index) {
|
|
52
53
|
this.items[index].type = event;
|
|
53
54
|
}
|
|
55
|
+
valueOptionChanged(event, index) {
|
|
56
|
+
this.items[index][this.valueAttributeName] = event;
|
|
57
|
+
}
|
|
54
58
|
onKeyDrop(model, $event) {
|
|
55
59
|
model[this.keyAttributeName] = this.onDropFn($event, model[this.keyAttributeName]);
|
|
56
60
|
}
|
|
@@ -78,16 +82,19 @@ class KeyValueInputComponent {
|
|
|
78
82
|
temporaryItemOptionChanged(event) {
|
|
79
83
|
this.temporaryItem.type = event;
|
|
80
84
|
}
|
|
85
|
+
temporaryValueOptionChanged(event) {
|
|
86
|
+
this.temporaryItem[this.valueAttributeName] = event;
|
|
87
|
+
}
|
|
81
88
|
getComponentId(id, index) {
|
|
82
89
|
return this.componentId ? `${this.componentId}-${id}-${index}` : `${id}-${index}`;
|
|
83
90
|
}
|
|
84
91
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: KeyValueInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
85
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: KeyValueInputComponent, selector: "key-value-input", inputs: { componentId: "componentId", items: "items", size: "size", keyAttributeName: "keyAttributeName", valueAttributeName: "valueAttributeName", keyLabel: "keyLabel", valueLabel: "valueLabel", removeLabel: "removeLabel", inputOptionsWidthPercentage: "inputOptionsWidthPercentage", inputOptionsDefaultSelected: "inputOptionsDefaultSelected", inputOptions: "inputOptions", blockNewItem: "blockNewItem", blockEditLabel: "blockEditLabel", onDropFn: "onDropFn" }, outputs: { itemsChange: "itemsChange" }, ngImport: i0, template: "<div class=\"key-value-item\" *ngFor=\"let item of items; let index = index\">\n <input-text\n [componentId]=\"getComponentId('key', index)\"\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"keyLabel\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"item.type\"\n [widthPercentageInputOptions]=\"inputOptionsWidthPercentage\"\n [disabled]=\"blockEditLabel\"\n [(ngModel)]=\"item[keyAttributeName]\"\n (optionChanged)=\"inputOptionChanged($event, index)\"\n (onDropEvent)=\"onKeyDrop(item, $event)\">\n </input-text>\n <input-text\n
|
|
92
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: KeyValueInputComponent, selector: "key-value-input", inputs: { componentId: "componentId", items: "items", size: "size", keyAttributeName: "keyAttributeName", valueAttributeName: "valueAttributeName", keyLabel: "keyLabel", valueLabel: "valueLabel", removeLabel: "removeLabel", inputOptionsWidthPercentage: "inputOptionsWidthPercentage", inputOptionsDefaultSelected: "inputOptionsDefaultSelected", inputOptions: "inputOptions", valueOptions: "valueOptions", blockNewItem: "blockNewItem", blockEditLabel: "blockEditLabel", onDropFn: "onDropFn" }, outputs: { itemsChange: "itemsChange" }, ngImport: i0, template: "<div class=\"key-value-item\" *ngFor=\"let item of items; let index = index\">\n <input-text\n [componentId]=\"getComponentId('key', index)\"\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"keyLabel\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"item.type\"\n [widthPercentageInputOptions]=\"inputOptionsWidthPercentage\"\n [disabled]=\"blockEditLabel\"\n [(ngModel)]=\"item[keyAttributeName]\"\n (optionChanged)=\"inputOptionChanged($event, index)\"\n (onDropEvent)=\"onKeyDrop(item, $event)\">\n </input-text>\n <ng-container *ngIf=\"valueOptions?.length; else valueTextItem\">\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [optionsOnly]=\"true\"\n [inputOptions]=\"valueOptions\"\n [inputOptionsInitSelected]=\"item[valueAttributeName]\"\n (optionChanged)=\"valueOptionChanged($event, index)\"\n [(ngModel)]=\"item[valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(item, $event)\">\n </input-text>\n </ng-container>\n <ng-template #valueTextItem>\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [(ngModel)]=\"item[valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(item, $event)\">\n </input-text>\n </ng-template>\n <button class=\"delete-button\" (click)=\"removeItem(index)\" [matTooltip]=\"removeLabel\" type=\"button\">\n <i class=\"far fa-trash-alt fa-lg\"></i>\n </button>\n</div>\n<div class=\"key-value-item\" *ngIf=\"!blockNewItem\">\n <input-text\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"keyLabel\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"inputOptionsDefaultSelected\"\n [widthPercentageInputOptions]=\"inputOptionsWidthPercentage\"\n (input)=\"onKeyPressedTemporaryKeyFn()\"\n (optionChanged)=\"temporaryItemOptionChanged($event)\"\n [(ngModel)]=\"temporaryItem[this.keyAttributeName]\"\n (onDropEvent)=\"onKeyDropTemporaryItem(temporaryItem, $event)\">\n </input-text>\n <ng-container *ngIf=\"valueOptions?.length; else valueTextTemp\">\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [optionsOnly]=\"true\"\n [inputOptions]=\"valueOptions\"\n [inputOptionsInitSelected]=\"temporaryItem[this.valueAttributeName]\"\n (optionChanged)=\"temporaryValueOptionChanged($event)\"\n [(ngModel)]=\"temporaryItem[this.valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(temporaryItem, $event)\">\n </input-text>\n </ng-container>\n <ng-template #valueTextTemp>\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [(ngModel)]=\"temporaryItem[this.valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(temporaryItem, $event)\">\n </input-text>\n </ng-template>\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;color:var(--color-fonts-tertiary);border:none!important;background:none!important}\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: "directive", type: i3.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i4.InputTextComponent, selector: "input-text", inputs: ["componentId", "label", "disabled", "iconSuffix", "iconPrefix", "autoComplete", "size", "debounceTime", "widthPercentageInputOptions", "optionsOnly", "inputOptions", "inputOptionsInitSelected"], outputs: ["suffixIconClick", "prefixIconClick", "onDebounce", "optionChanged", "onDropEvent"] }] });
|
|
86
93
|
}
|
|
87
94
|
export { KeyValueInputComponent };
|
|
88
95
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: KeyValueInputComponent, decorators: [{
|
|
89
96
|
type: Component,
|
|
90
|
-
args: [{ selector: 'key-value-input', template: "<div class=\"key-value-item\" *ngFor=\"let item of items; let index = index\">\n <input-text\n [componentId]=\"getComponentId('key', index)\"\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"keyLabel\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"item.type\"\n [widthPercentageInputOptions]=\"inputOptionsWidthPercentage\"\n [disabled]=\"blockEditLabel\"\n [(ngModel)]=\"item[keyAttributeName]\"\n (optionChanged)=\"inputOptionChanged($event, index)\"\n (onDropEvent)=\"onKeyDrop(item, $event)\">\n </input-text>\n <input-text\n
|
|
97
|
+
args: [{ selector: 'key-value-input', template: "<div class=\"key-value-item\" *ngFor=\"let item of items; let index = index\">\n <input-text\n [componentId]=\"getComponentId('key', index)\"\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"keyLabel\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"item.type\"\n [widthPercentageInputOptions]=\"inputOptionsWidthPercentage\"\n [disabled]=\"blockEditLabel\"\n [(ngModel)]=\"item[keyAttributeName]\"\n (optionChanged)=\"inputOptionChanged($event, index)\"\n (onDropEvent)=\"onKeyDrop(item, $event)\">\n </input-text>\n <ng-container *ngIf=\"valueOptions?.length; else valueTextItem\">\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [optionsOnly]=\"true\"\n [inputOptions]=\"valueOptions\"\n [inputOptionsInitSelected]=\"item[valueAttributeName]\"\n (optionChanged)=\"valueOptionChanged($event, index)\"\n [(ngModel)]=\"item[valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(item, $event)\">\n </input-text>\n </ng-container>\n <ng-template #valueTextItem>\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [(ngModel)]=\"item[valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(item, $event)\">\n </input-text>\n </ng-template>\n <button class=\"delete-button\" (click)=\"removeItem(index)\" [matTooltip]=\"removeLabel\" type=\"button\">\n <i class=\"far fa-trash-alt fa-lg\"></i>\n </button>\n</div>\n<div class=\"key-value-item\" *ngIf=\"!blockNewItem\">\n <input-text\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"keyLabel\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"inputOptionsDefaultSelected\"\n [widthPercentageInputOptions]=\"inputOptionsWidthPercentage\"\n (input)=\"onKeyPressedTemporaryKeyFn()\"\n (optionChanged)=\"temporaryItemOptionChanged($event)\"\n [(ngModel)]=\"temporaryItem[this.keyAttributeName]\"\n (onDropEvent)=\"onKeyDropTemporaryItem(temporaryItem, $event)\">\n </input-text>\n <ng-container *ngIf=\"valueOptions?.length; else valueTextTemp\">\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [optionsOnly]=\"true\"\n [inputOptions]=\"valueOptions\"\n [inputOptionsInitSelected]=\"temporaryItem[this.valueAttributeName]\"\n (optionChanged)=\"temporaryValueOptionChanged($event)\"\n [(ngModel)]=\"temporaryItem[this.valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(temporaryItem, $event)\">\n </input-text>\n </ng-container>\n <ng-template #valueTextTemp>\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [(ngModel)]=\"temporaryItem[this.valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(temporaryItem, $event)\">\n </input-text>\n </ng-template>\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;color:var(--color-fonts-tertiary);border:none!important;background:none!important}\n"] }]
|
|
91
98
|
}], propDecorators: { componentId: [{
|
|
92
99
|
type: Input
|
|
93
100
|
}], items: [{
|
|
@@ -110,6 +117,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
110
117
|
type: Input
|
|
111
118
|
}], inputOptions: [{
|
|
112
119
|
type: Input
|
|
120
|
+
}], valueOptions: [{
|
|
121
|
+
type: Input
|
|
113
122
|
}], blockNewItem: [{
|
|
114
123
|
type: Input
|
|
115
124
|
}], blockEditLabel: [{
|
|
@@ -119,4 +128,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
119
128
|
}], itemsChange: [{
|
|
120
129
|
type: Output
|
|
121
130
|
}] } });
|
|
122
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5LXZhbHVlLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvaW5wdXQta2V5LXZhbHVlL2tleS12YWx1ZS1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2lucHV0LWtleS12YWx1ZS9rZXktdmFsdWUtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBTzlDLE1BS2Esc0JBQXNCO0lBRXhCLFdBQVcsQ0FBUTtJQUNuQixLQUFLLEdBQXdCLEVBQUUsQ0FBQTtJQUMvQixJQUFJLEdBQXVCLFNBQVMsQ0FBQTtJQUNwQyxnQkFBZ0IsR0FBVyxLQUFLLENBQUE7SUFDaEMsa0JBQWtCLEdBQVcsT0FBTyxDQUFBO0lBQ3BDLFFBQVEsR0FBVyxLQUFLLENBQUE7SUFDeEIsVUFBVSxHQUFXLE9BQU8sQ0FBQTtJQUM1QixXQUFXLEdBQVcsUUFBUSxDQUFBO0lBQzlCLDJCQUEyQixDQUFRO0lBQ25DLDJCQUEyQixDQUFRO0lBQ25DLFlBQVksR0FBRyxFQUFFLENBQUE7SUFDakIsWUFBWSxHQUFHLEtBQUssQ0FBQTtJQUNwQixjQUFjLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLFFBQVEsQ0FBcUQ7SUFDNUQsV0FBVyxHQUFzQyxJQUFJLFlBQVksRUFBdUIsQ0FBQTtJQUUzRixhQUFhLENBQW1CO0lBQ3RCLHdCQUF3QixHQUFrQixJQUFJLE9BQU8sRUFBUSxDQUFBO0lBRXRFLDBCQUEwQjtRQUNoQyxPQUFPO1lBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQywyQkFBMkI7WUFDdEMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxFQUFFO1lBQzNCLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsRUFBRTtTQUM5QixDQUFDO0lBQ0osQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFBO1FBQ3RELElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2YsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUE7WUFDZixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7U0FDbEM7UUFDRCxJQUFJLENBQUMsMkJBQTJCLEtBQUssSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQTtRQUNsRSxJQUFJLENBQUMsd0JBQXdCO2FBQzFCLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDdkIsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxDQUFBO1lBQ25DLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQTtRQUN4QixDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFFTSxVQUFVLENBQUMsS0FBYTtRQUM3QixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVNLGtCQUFrQixDQUFDLEtBQWEsRUFBRSxLQUFhO1FBQ3BELElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztJQUNqQyxDQUFDO0lBRU0sU0FBUyxDQUFDLEtBQXdCLEVBQUUsTUFBb0I7UUFDN0QsS0FBSyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFBO0lBQ3BGLENBQUM7SUFFTSxzQkFBc0IsQ0FBQyxLQUF3QixFQUFFLE1BQW9CO1FBQzFFLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQTtRQUNsRixJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQTtJQUNyQyxDQUFDO0lBRU0sV0FBVyxDQUFDLEtBQXdCLEVBQUUsTUFBb0I7UUFDL0QsS0FBSyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFBO0lBQ3hGLENBQUM7SUFFTSw0QkFBNEI7UUFDakMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFBO1FBQzFDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUE7SUFDeEQsQ0FBQztJQUVNLGVBQWU7UUFDcEIsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQTtZQUNuQyxNQUFNLE9BQU8sR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUE7WUFDNUQsUUFBUSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtRQUMxQyxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFTSwwQkFBMEI7UUFDL0IsSUFBSSxDQUFDLHdCQUF3QixDQUFDLElBQUksRUFBRSxDQUFBO0lBQ3RDLENBQUM7SUFFTSwwQkFBMEIsQ0FBQyxLQUFhO1FBQzdDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQTtJQUNqQyxDQUFDO0lBRU0sY0FBYyxDQUFDLEVBQVUsRUFBRSxLQUFhO1FBQzdDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLEVBQUUsSUFBSSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksS0FBSyxFQUFFLENBQUE7SUFDbkYsQ0FBQzt1R0F4RlUsc0JBQXNCOzJGQUF0QixzQkFBc0IsOGlCQ2ZuQywydERBK0NBOztTRGhDYSxzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxpQkFBaUI7OEJBTWxCLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLDJCQUEyQjtzQkFBbkMsS0FBSztnQkFDRywyQkFBMkI7c0JBQW5DLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDSSxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG5kRHJvcEV2ZW50IH0gZnJvbSAnbmd4LWRyYWctZHJvcCc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgS2V5VmFsdWVJbnB1dFR5cGUge1xuICBbeDogc3RyaW5nXTogYW55XG4gIHR5cGU6IHN0cmluZ1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdrZXktdmFsdWUtaW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJ2tleS12YWx1ZS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydrZXktdmFsdWUtaW5wdXQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBLZXlWYWx1ZUlucHV0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSBjb21wb25lbnRJZDogc3RyaW5nXG4gIEBJbnB1dCgpIGl0ZW1zOiBLZXlWYWx1ZUlucHV0VHlwZVtdID0gW11cbiAgQElucHV0KCkgc2l6ZTogJ0RFRkFVTFQnIHwgJ1NMSU0nID0gJ0RFRkFVTFQnXG4gIEBJbnB1dCgpIGtleUF0dHJpYnV0ZU5hbWU6IHN0cmluZyA9ICdrZXknXG4gIEBJbnB1dCgpIHZhbHVlQXR0cmlidXRlTmFtZTogc3RyaW5nID0gJ3ZhbHVlJ1xuICBASW5wdXQoKSBrZXlMYWJlbDogc3RyaW5nID0gJ0tleSdcbiAgQElucHV0KCkgdmFsdWVMYWJlbDogc3RyaW5nID0gJ1ZhbHVlJ1xuICBASW5wdXQoKSByZW1vdmVMYWJlbDogc3RyaW5nID0gJ1JlbW92ZSdcbiAgQElucHV0KCkgaW5wdXRPcHRpb25zV2lkdGhQZXJjZW50YWdlOiBudW1iZXJcbiAgQElucHV0KCkgaW5wdXRPcHRpb25zRGVmYXVsdFNlbGVjdGVkOiBzdHJpbmdcbiAgQElucHV0KCkgaW5wdXRPcHRpb25zID0gW11cbiAgQElucHV0KCkgYmxvY2tOZXdJdGVtID0gZmFsc2VcbiAgQElucHV0KCkgYmxvY2tFZGl0TGFiZWwgPSBmYWxzZTtcbiAgQElucHV0KCkgb25Ecm9wRm46ICgkZXZlbnQ6IERuZERyb3BFdmVudCwgYXR0cmlidXRlOiBzdHJpbmcpID0+IHN0cmluZ1xuICBAT3V0cHV0KCkgaXRlbXNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxLZXlWYWx1ZUlucHV0VHlwZVtdPiA9IG5ldyBFdmVudEVtaXR0ZXI8S2V5VmFsdWVJbnB1dFR5cGVbXT4oKVxuXG4gIHB1YmxpYyB0ZW1wb3JhcnlJdGVtOiBLZXlWYWx1ZUlucHV0VHlwZVxuICBwcml2YXRlIHJlYWRvbmx5IG9uS2V5UHJlc3NlZFRlbXBvcmFyeUtleTogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KClcblxuICBwcml2YXRlIGNyZWF0ZURlZmF1bHRUZW1wb3JhcnlJdGVtKCk6IEtleVZhbHVlSW5wdXRUeXBlIHtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogdGhpcy5pbnB1dE9wdGlvbnNEZWZhdWx0U2VsZWN0ZWQsXG4gICAgICBbdGhpcy5rZXlBdHRyaWJ1dGVOYW1lXTogJycsXG4gICAgICBbdGhpcy52YWx1ZUF0dHJpYnV0ZU5hbWVdOiAnJ1xuICAgIH07XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy50ZW1wb3JhcnlJdGVtID0gdGhpcy5jcmVhdGVEZWZhdWx0VGVtcG9yYXJ5SXRlbSgpXG4gICAgaWYgKCF0aGlzLml0ZW1zKSB7XG4gICAgICB0aGlzLml0ZW1zID0gW11cbiAgICAgIHRoaXMuaXRlbXNDaGFuZ2UuZW1pdCh0aGlzLml0ZW1zKVxuICAgIH1cbiAgICB0aGlzLmlucHV0T3B0aW9uc0RlZmF1bHRTZWxlY3RlZCB8fD0gdGhpcy5pbnB1dE9wdGlvbnM/LlswXT8udmFsdWVcbiAgICB0aGlzLm9uS2V5UHJlc3NlZFRlbXBvcmFyeUtleVxuICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDMwMCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5hZGRUZW1wb3JhcnlBdHRyaWJ1dGVUb0l0ZW1zKClcbiAgICAgICAgdGhpcy5mb2N1c09uTGFzdEl0ZW0oKVxuICAgICAgfSlcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVJdGVtKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLml0ZW1zLnNwbGljZShpbmRleCwgMSk7XG4gIH1cblxuICBwdWJsaWMgaW5wdXRPcHRpb25DaGFuZ2VkKGV2ZW50OiBzdHJpbmcsIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLml0ZW1zW2luZGV4XS50eXBlID0gZXZlbnQ7XG4gIH1cblxuICBwdWJsaWMgb25LZXlEcm9wKG1vZGVsOiBLZXlWYWx1ZUlucHV0VHlwZSwgJGV2ZW50OiBEbmREcm9wRXZlbnQpOiB2b2lkIHtcbiAgICBtb2RlbFt0aGlzLmtleUF0dHJpYnV0ZU5hbWVdID0gdGhpcy5vbkRyb3BGbigkZXZlbnQsIG1vZGVsW3RoaXMua2V5QXR0cmlidXRlTmFtZV0pXG4gIH1cblxuICBwdWJsaWMgb25LZXlEcm9wVGVtcG9yYXJ5SXRlbShtb2RlbDogS2V5VmFsdWVJbnB1dFR5cGUsICRldmVudDogRG5kRHJvcEV2ZW50KTogdm9pZCB7XG4gICAgbW9kZWxbdGhpcy5rZXlBdHRyaWJ1dGVOYW1lXSA9IHRoaXMub25Ecm9wRm4oJGV2ZW50LCBtb2RlbFt0aGlzLmtleUF0dHJpYnV0ZU5hbWVdKVxuICAgIHRoaXMuYWRkVGVtcG9yYXJ5QXR0cmlidXRlVG9JdGVtcygpXG4gIH1cblxuICBwdWJsaWMgb25WYWx1ZURyb3AobW9kZWw6IEtleVZhbHVlSW5wdXRUeXBlLCAkZXZlbnQ6IERuZERyb3BFdmVudCk6IHZvaWQge1xuICAgIG1vZGVsW3RoaXMudmFsdWVBdHRyaWJ1dGVOYW1lXSA9IHRoaXMub25Ecm9wRm4oJGV2ZW50LCBtb2RlbFt0aGlzLnZhbHVlQXR0cmlidXRlTmFtZV0pXG4gIH1cblxuICBwdWJsaWMgYWRkVGVtcG9yYXJ5QXR0cmlidXRlVG9JdGVtcygpOiB2b2lkIHtcbiAgICB0aGlzLml0ZW1zLnB1c2goeyAuLi50aGlzLnRlbXBvcmFyeUl0ZW0gfSlcbiAgICB0aGlzLnRlbXBvcmFyeUl0ZW0gPSB0aGlzLmNyZWF0ZURlZmF1bHRUZW1wb3JhcnlJdGVtKClcbiAgfVxuXG4gIHB1YmxpYyBmb2N1c09uTGFzdEl0ZW0oKTogdm9pZCB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBjb25zdCBpbmRleCA9IHRoaXMuaXRlbXMubGVuZ3RoIC0gMVxuICAgICAgY29uc3QgZm9jdXNJZCA9IGAke3RoaXMuZ2V0Q29tcG9uZW50SWQoJ2tleScsIGluZGV4KX0taW5wdXRgXG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChmb2N1c0lkKS5mb2N1cygpXG4gICAgfSlcbiAgfVxuXG4gIHB1YmxpYyBvbktleVByZXNzZWRUZW1wb3JhcnlLZXlGbigpOiB2b2lkIHtcbiAgICB0aGlzLm9uS2V5UHJlc3NlZFRlbXBvcmFyeUtleS5uZXh0KClcbiAgfVxuXG4gIHB1YmxpYyB0ZW1wb3JhcnlJdGVtT3B0aW9uQ2hhbmdlZChldmVudDogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy50ZW1wb3JhcnlJdGVtLnR5cGUgPSBldmVudFxuICB9XG5cbiAgcHVibGljIGdldENvbXBvbmVudElkKGlkOiBzdHJpbmcsIGluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudElkID8gYCR7dGhpcy5jb21wb25lbnRJZH0tJHtpZH0tJHtpbmRleH1gIDogYCR7aWR9LSR7aW5kZXh9YFxuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJrZXktdmFsdWUtaXRlbVwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zOyBsZXQgaW5kZXggPSBpbmRleFwiPlxuICA8aW5wdXQtdGV4dFxuICAgIFtjb21wb25lbnRJZF09XCJnZXRDb21wb25lbnRJZCgna2V5JywgaW5kZXgpXCJcbiAgICBjbGFzcz1cImlucHV0LWtleVwiXG4gICAgW3NpemVdPVwic2l6ZVwiXG4gICAgW2xhYmVsXT1cImtleUxhYmVsXCJcbiAgICBbaW5wdXRPcHRpb25zXT1cImlucHV0T3B0aW9uc1wiXG4gICAgW2lucHV0T3B0aW9uc0luaXRTZWxlY3RlZF09XCJpdGVtLnR5cGVcIlxuICAgIFt3aWR0aFBlcmNlbnRhZ2VJbnB1dE9wdGlvbnNdPVwiaW5wdXRPcHRpb25zV2lkdGhQZXJjZW50YWdlXCJcbiAgICBbZGlzYWJsZWRdPVwiYmxvY2tFZGl0TGFiZWxcIlxuICAgIFsobmdNb2RlbCldPVwiaXRlbVtrZXlBdHRyaWJ1dGVOYW1lXVwiXG4gICAgKG9wdGlvbkNoYW5nZWQpPVwiaW5wdXRPcHRpb25DaGFuZ2VkKCRldmVudCwgaW5kZXgpXCJcbiAgICAob25Ecm9wRXZlbnQpPVwib25LZXlEcm9wKGl0ZW0sICRldmVudClcIj5cbiAgPC9pbnB1dC10ZXh0PlxuICA8aW5wdXQtdGV4dFxuICAgIGNsYXNzPVwiaW5wdXQtdmFsdWVcIlxuICAgIFtzaXplXT1cInNpemVcIlxuICAgIFtsYWJlbF09XCJ2YWx1ZUxhYmVsXCJcbiAgICBbKG5nTW9kZWwpXT1cIml0ZW1bdmFsdWVBdHRyaWJ1dGVOYW1lXVwiXG4gICAgKG9uRHJvcEV2ZW50KT1cIm9uVmFsdWVEcm9wKGl0ZW0sICRldmVudClcIj5cbiAgPC9pbnB1dC10ZXh0PlxuICA8YnV0dG9uIGNsYXNzPVwiZGVsZXRlLWJ1dHRvblwiIChjbGljayk9XCJyZW1vdmVJdGVtKGluZGV4KVwiIFttYXRUb29sdGlwXT1cInJlbW92ZUxhYmVsXCIgdHlwZT1cImJ1dHRvblwiPlxuICAgIDxpIGNsYXNzPVwiZmFyIGZhLXRyYXNoLWFsdCBmYS1sZ1wiPjwvaT5cbiAgPC9idXR0b24+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJrZXktdmFsdWUtaXRlbVwiICpuZ0lmPVwiIWJsb2NrTmV3SXRlbVwiPlxuICA8aW5wdXQtdGV4dFxuICAgIGNsYXNzPVwiaW5wdXQta2V5XCJcbiAgICBbc2l6ZV09XCJzaXplXCJcbiAgICBbbGFiZWxdPVwia2V5TGFiZWxcIlxuICAgIFtpbnB1dE9wdGlvbnNdPVwiaW5wdXRPcHRpb25zXCJcbiAgICBbaW5wdXRPcHRpb25zSW5pdFNlbGVjdGVkXT1cImlucHV0T3B0aW9uc0RlZmF1bHRTZWxlY3RlZFwiXG4gICAgW3dpZHRoUGVyY2VudGFnZUlucHV0T3B0aW9uc109XCJpbnB1dE9wdGlvbnNXaWR0aFBlcmNlbnRhZ2VcIlxuICAgIChpbnB1dCk9XCJvbktleVByZXNzZWRUZW1wb3JhcnlLZXlGbigpXCJcbiAgICAob3B0aW9uQ2hhbmdlZCk9XCJ0ZW1wb3JhcnlJdGVtT3B0aW9uQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICBbKG5nTW9kZWwpXT1cInRlbXBvcmFyeUl0ZW1bdGhpcy5rZXlBdHRyaWJ1dGVOYW1lXVwiXG4gICAgKG9uRHJvcEV2ZW50KT1cIm9uS2V5RHJvcFRlbXBvcmFyeUl0ZW0odGVtcG9yYXJ5SXRlbSwgJGV2ZW50KVwiPlxuICA8L2lucHV0LXRleHQ+XG4gIDxpbnB1dC10ZXh0XG4gICAgY2xhc3M9XCJpbnB1dC12YWx1ZVwiXG4gICAgW3NpemVdPVwic2l6ZVwiXG4gICAgW2xhYmVsXT1cInZhbHVlTGFiZWxcIlxuICAgIFsobmdNb2RlbCldPVwidGVtcG9yYXJ5SXRlbVt0aGlzLnZhbHVlQXR0cmlidXRlTmFtZV1cIlxuICAgIChvbkRyb3BFdmVudCk9XCJvblZhbHVlRHJvcCh0ZW1wb3JhcnlJdGVtLCAkZXZlbnQpXCI+XG4gIDwvaW5wdXQtdGV4dD5cbjwvZGl2PlxuXG4iXX0=
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5LXZhbHVlLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2lucHV0cy9zcmMvaW5wdXQta2V5LXZhbHVlL2tleS12YWx1ZS1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2lucHV0LWtleS12YWx1ZS9rZXktdmFsdWUtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7O0FBTzlDLE1BS2Esc0JBQXNCO0lBRXhCLFdBQVcsQ0FBUTtJQUNuQixLQUFLLEdBQXdCLEVBQUUsQ0FBQTtJQUMvQixJQUFJLEdBQXVCLFNBQVMsQ0FBQTtJQUNwQyxnQkFBZ0IsR0FBVyxLQUFLLENBQUE7SUFDaEMsa0JBQWtCLEdBQVcsT0FBTyxDQUFBO0lBQ3BDLFFBQVEsR0FBVyxLQUFLLENBQUE7SUFDeEIsVUFBVSxHQUFXLE9BQU8sQ0FBQTtJQUM1QixXQUFXLEdBQVcsUUFBUSxDQUFBO0lBQzlCLDJCQUEyQixDQUFRO0lBQ25DLDJCQUEyQixDQUFRO0lBQ25DLFlBQVksR0FBRyxFQUFFLENBQUE7SUFDakIsWUFBWSxHQUFVLEVBQUUsQ0FBQTtJQUN4QixZQUFZLEdBQUcsS0FBSyxDQUFBO0lBQ3BCLGNBQWMsR0FBRyxLQUFLLENBQUM7SUFDdkIsUUFBUSxDQUFxRDtJQUM1RCxXQUFXLEdBQXNDLElBQUksWUFBWSxFQUF1QixDQUFBO0lBRTNGLGFBQWEsQ0FBbUI7SUFDdEIsd0JBQXdCLEdBQWtCLElBQUksT0FBTyxFQUFRLENBQUE7SUFFdEUs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QUFRO3NCQUFoQixLQUFLO2dCQUNJLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEbmREcm9wRXZlbnQgfSBmcm9tICduZ3gtZHJhZy1kcm9wJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuZXhwb3J0IGludGVyZmFjZSBLZXlWYWx1ZUlucHV0VHlwZSB7XG4gIFt4OiBzdHJpbmddOiBhbnlcbiAgdHlwZTogc3RyaW5nXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2tleS12YWx1ZS1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAna2V5LXZhbHVlLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ2tleS12YWx1ZS1pbnB1dC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEtleVZhbHVlSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIEBJbnB1dCgpIGNvbXBvbmVudElkOiBzdHJpbmdcbiAgQElucHV0KCkgaXRlbXM6IEtleVZhbHVlSW5wdXRUeXBlW10gPSBbXVxuICBASW5wdXQoKSBzaXplOiAnREVGQVVMVCcgfCAnU0xJTScgPSAnREVGQVVMVCdcbiAgQElucHV0KCkga2V5QXR0cmlidXRlTmFtZTogc3RyaW5nID0gJ2tleSdcbiAgQElucHV0KCkgdmFsdWVBdHRyaWJ1dGVOYW1lOiBzdHJpbmcgPSAndmFsdWUnXG4gIEBJbnB1dCgpIGtleUxhYmVsOiBzdHJpbmcgPSAnS2V5J1xuICBASW5wdXQoKSB2YWx1ZUxhYmVsOiBzdHJpbmcgPSAnVmFsdWUnXG4gIEBJbnB1dCgpIHJlbW92ZUxhYmVsOiBzdHJpbmcgPSAnUmVtb3ZlJ1xuICBASW5wdXQoKSBpbnB1dE9wdGlvbnNXaWR0aFBlcmNlbnRhZ2U6IG51bWJlclxuICBASW5wdXQoKSBpbnB1dE9wdGlvbnNEZWZhdWx0U2VsZWN0ZWQ6IHN0cmluZ1xuICBASW5wdXQoKSBpbnB1dE9wdGlvbnMgPSBbXVxuICBASW5wdXQoKSB2YWx1ZU9wdGlvbnM6IGFueVtdID0gW11cbiAgQElucHV0KCkgYmxvY2tOZXdJdGVtID0gZmFsc2VcbiAgQElucHV0KCkgYmxvY2tFZGl0TGFiZWwgPSBmYWxzZTtcbiAgQElucHV0KCkgb25Ecm9wRm46ICgkZXZlbnQ6IERuZERyb3BFdmVudCwgYXR0cmlidXRlOiBzdHJpbmcpID0+IHN0cmluZ1xuICBAT3V0cHV0KCkgaXRlbXNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxLZXlWYWx1ZUlucHV0VHlwZVtdPiA9IG5ldyBFdmVudEVtaXR0ZXI8S2V5VmFsdWVJbnB1dFR5cGVbXT4oKVxuXG4gIHB1YmxpYyB0ZW1wb3JhcnlJdGVtOiBLZXlWYWx1ZUlucHV0VHlwZVxuICBwcml2YXRlIHJlYWRvbmx5IG9uS2V5UHJlc3NlZFRlbXBvcmFyeUtleTogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KClcblxuICBwcml2YXRlIGNyZWF0ZURlZmF1bHRUZW1wb3JhcnlJdGVtKCk6IEtleVZhbHVlSW5wdXRUeXBlIHtcbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogdGhpcy5pbnB1dE9wdGlvbnNEZWZhdWx0U2VsZWN0ZWQsXG4gICAgICBbdGhpcy5rZXlBdHRyaWJ1dGVOYW1lXTogJycsXG4gICAgICBbdGhpcy52YWx1ZUF0dHJpYnV0ZU5hbWVdOiAnJ1xuICAgIH07XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy50ZW1wb3JhcnlJdGVtID0gdGhpcy5jcmVhdGVEZWZhdWx0VGVtcG9yYXJ5SXRlbSgpXG4gICAgaWYgKCF0aGlzLml0ZW1zKSB7XG4gICAgICB0aGlzLml0ZW1zID0gW11cbiAgICAgIHRoaXMuaXRlbXNDaGFuZ2UuZW1pdCh0aGlzLml0ZW1zKVxuICAgIH1cbiAgICB0aGlzLmlucHV0T3B0aW9uc0RlZmF1bHRTZWxlY3RlZCB8fD0gdGhpcy5pbnB1dE9wdGlvbnM/LlswXT8udmFsdWVcbiAgICB0aGlzLm9uS2V5UHJlc3NlZFRlbXBvcmFyeUtleVxuICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDMwMCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5hZGRUZW1wb3JhcnlBdHRyaWJ1dGVUb0l0ZW1zKClcbiAgICAgICAgdGhpcy5mb2N1c09uTGFzdEl0ZW0oKVxuICAgICAgfSlcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVJdGVtKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLml0ZW1zLnNwbGljZShpbmRleCwgMSk7XG4gIH1cblxuICBwdWJsaWMgaW5wdXRPcHRpb25DaGFuZ2VkKGV2ZW50OiBzdHJpbmcsIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLml0ZW1zW2luZGV4XS50eXBlID0gZXZlbnQ7XG4gIH1cblxuICBwdWJsaWMgdmFsdWVPcHRpb25DaGFuZ2VkKGV2ZW50OiBzdHJpbmcsIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLml0ZW1zW2luZGV4XVt0aGlzLnZhbHVlQXR0cmlidXRlTmFtZV0gPSBldmVudFxuICB9XG5cbiAgcHVibGljIG9uS2V5RHJvcChtb2RlbDogS2V5VmFsdWVJbnB1dFR5cGUsICRldmVudDogRG5kRHJvcEV2ZW50KTogdm9pZCB7XG4gICAgbW9kZWxbdGhpcy5rZXlBdHRyaWJ1dGVOYW1lXSA9IHRoaXMub25Ecm9wRm4oJGV2ZW50LCBtb2RlbFt0aGlzLmtleUF0dHJpYnV0ZU5hbWVdKVxuICB9XG5cbiAgcHVibGljIG9uS2V5RHJvcFRlbXBvcmFyeUl0ZW0obW9kZWw6IEtleVZhbHVlSW5wdXRUeXBlLCAkZXZlbnQ6IERuZERyb3BFdmVudCk6IHZvaWQge1xuICAgIG1vZGVsW3RoaXMua2V5QXR0cmlidXRlTmFtZV0gPSB0aGlzLm9uRHJvcEZuKCRldmVudCwgbW9kZWxbdGhpcy5rZXlBdHRyaWJ1dGVOYW1lXSlcbiAgICB0aGlzLmFkZFRlbXBvcmFyeUF0dHJpYnV0ZVRvSXRlbXMoKVxuICB9XG5cbiAgcHVibGljIG9uVmFsdWVEcm9wKG1vZGVsOiBLZXlWYWx1ZUlucHV0VHlwZSwgJGV2ZW50OiBEbmREcm9wRXZlbnQpOiB2b2lkIHtcbiAgICBtb2RlbFt0aGlzLnZhbHVlQXR0cmlidXRlTmFtZV0gPSB0aGlzLm9uRHJvcEZuKCRldmVudCwgbW9kZWxbdGhpcy52YWx1ZUF0dHJpYnV0ZU5hbWVdKVxuICB9XG5cbiAgcHVibGljIGFkZFRlbXBvcmFyeUF0dHJpYnV0ZVRvSXRlbXMoKTogdm9pZCB7XG4gICAgdGhpcy5pdGVtcy5wdXNoKHsgLi4udGhpcy50ZW1wb3JhcnlJdGVtIH0pXG4gICAgdGhpcy50ZW1wb3JhcnlJdGVtID0gdGhpcy5jcmVhdGVEZWZhdWx0VGVtcG9yYXJ5SXRlbSgpXG4gIH1cblxuICBwdWJsaWMgZm9jdXNPbkxhc3RJdGVtKCk6IHZvaWQge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgY29uc3QgaW5kZXggPSB0aGlzLml0ZW1zLmxlbmd0aCAtIDFcbiAgICAgIGNvbnN0IGZvY3VzSWQgPSBgJHt0aGlzLmdldENvbXBvbmVudElkKCdrZXknLCBpbmRleCl9LWlucHV0YFxuICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZm9jdXNJZCkuZm9jdXMoKVxuICAgIH0pXG4gIH1cblxuICBwdWJsaWMgb25LZXlQcmVzc2VkVGVtcG9yYXJ5S2V5Rm4oKTogdm9pZCB7XG4gICAgdGhpcy5vbktleVByZXNzZWRUZW1wb3JhcnlLZXkubmV4dCgpXG4gIH1cblxuICBwdWJsaWMgdGVtcG9yYXJ5SXRlbU9wdGlvbkNoYW5nZWQoZXZlbnQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudGVtcG9yYXJ5SXRlbS50eXBlID0gZXZlbnRcbiAgfVxuXG4gIHB1YmxpYyB0ZW1wb3JhcnlWYWx1ZU9wdGlvbkNoYW5nZWQoZXZlbnQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMudGVtcG9yYXJ5SXRlbVt0aGlzLnZhbHVlQXR0cmlidXRlTmFtZV0gPSBldmVudFxuICB9XG5cbiAgcHVibGljIGdldENvbXBvbmVudElkKGlkOiBzdHJpbmcsIGluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudElkID8gYCR7dGhpcy5jb21wb25lbnRJZH0tJHtpZH0tJHtpbmRleH1gIDogYCR7aWR9LSR7aW5kZXh9YFxuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJrZXktdmFsdWUtaXRlbVwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zOyBsZXQgaW5kZXggPSBpbmRleFwiPlxuICA8aW5wdXQtdGV4dFxuICAgIFtjb21wb25lbnRJZF09XCJnZXRDb21wb25lbnRJZCgna2V5JywgaW5kZXgpXCJcbiAgICBjbGFzcz1cImlucHV0LWtleVwiXG4gICAgW3NpemVdPVwic2l6ZVwiXG4gICAgW2xhYmVsXT1cImtleUxhYmVsXCJcbiAgICBbaW5wdXRPcHRpb25zXT1cImlucHV0T3B0aW9uc1wiXG4gICAgW2lucHV0T3B0aW9uc0luaXRTZWxlY3RlZF09XCJpdGVtLnR5cGVcIlxuICAgIFt3aWR0aFBlcmNlbnRhZ2VJbnB1dE9wdGlvbnNdPVwiaW5wdXRPcHRpb25zV2lkdGhQZXJjZW50YWdlXCJcbiAgICBbZGlzYWJsZWRdPVwiYmxvY2tFZGl0TGFiZWxcIlxuICAgIFsobmdNb2RlbCldPVwiaXRlbVtrZXlBdHRyaWJ1dGVOYW1lXVwiXG4gICAgKG9wdGlvbkNoYW5nZWQpPVwiaW5wdXRPcHRpb25DaGFuZ2VkKCRldmVudCwgaW5kZXgpXCJcbiAgICAob25Ecm9wRXZlbnQpPVwib25LZXlEcm9wKGl0ZW0sICRldmVudClcIj5cbiAgPC9pbnB1dC10ZXh0PlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwidmFsdWVPcHRpb25zPy5sZW5ndGg7IGVsc2UgdmFsdWVUZXh0SXRlbVwiPlxuICAgIDxpbnB1dC10ZXh0XG4gICAgICBjbGFzcz1cImlucHV0LXZhbHVlXCJcbiAgICAgIFtzaXplXT1cInNpemVcIlxuICAgICAgW2xhYmVsXT1cInZhbHVlTGFiZWxcIlxuICAgICAgW29wdGlvbnNPbmx5XT1cInRydWVcIlxuICAgICAgW2lucHV0T3B0aW9uc109XCJ2YWx1ZU9wdGlvbnNcIlxuICAgICAgW2lucHV0T3B0aW9uc0luaXRTZWxlY3RlZF09XCJpdGVtW3ZhbHVlQXR0cmlidXRlTmFtZV1cIlxuICAgICAgKG9wdGlvbkNoYW5nZWQpPVwidmFsdWVPcHRpb25DaGFuZ2VkKCRldmVudCwgaW5kZXgpXCJcbiAgICAgIFsobmdNb2RlbCldPVwiaXRlbVt2YWx1ZUF0dHJpYnV0ZU5hbWVdXCJcbiAgICAgIChvbkRyb3BFdmVudCk9XCJvblZhbHVlRHJvcChpdGVtLCAkZXZlbnQpXCI+XG4gICAgPC9pbnB1dC10ZXh0PlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLXRlbXBsYXRlICN2YWx1ZVRleHRJdGVtPlxuICAgIDxpbnB1dC10ZXh0XG4gICAgICBjbGFzcz1cImlucHV0LXZhbHVlXCJcbiAgICAgIFtzaXplXT1cInNpemVcIlxuICAgICAgW2xhYmVsXT1cInZhbHVlTGFiZWxcIlxuICAgICAgWyhuZ01vZGVsKV09XCJpdGVtW3ZhbHVlQXR0cmlidXRlTmFtZV1cIlxuICAgICAgKG9uRHJvcEV2ZW50KT1cIm9uVmFsdWVEcm9wKGl0ZW0sICRldmVudClcIj5cbiAgICA8L2lucHV0LXRleHQ+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxidXR0b24gY2xhc3M9XCJkZWxldGUtYnV0dG9uXCIgKGNsaWNrKT1cInJlbW92ZUl0ZW0oaW5kZXgpXCIgW21hdFRvb2x0aXBdPVwicmVtb3ZlTGFiZWxcIiB0eXBlPVwiYnV0dG9uXCI+XG4gICAgPGkgY2xhc3M9XCJmYXIgZmEtdHJhc2gtYWx0IGZhLWxnXCI+PC9pPlxuICA8L2J1dHRvbj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cImtleS12YWx1ZS1pdGVtXCIgKm5nSWY9XCIhYmxvY2tOZXdJdGVtXCI+XG4gIDxpbnB1dC10ZXh0XG4gICAgY2xhc3M9XCJpbnB1dC1rZXlcIlxuICAgIFtzaXplXT1cInNpemVcIlxuICAgIFtsYWJlbF09XCJrZXlMYWJlbFwiXG4gICAgW2lucHV0T3B0aW9uc109XCJpbnB1dE9wdGlvbnNcIlxuICAgIFtpbnB1dE9wdGlvbnNJbml0U2VsZWN0ZWRdPVwiaW5wdXRPcHRpb25zRGVmYXVsdFNlbGVjdGVkXCJcbiAgICBbd2lkdGhQZXJjZW50YWdlSW5wdXRPcHRpb25zXT1cImlucHV0T3B0aW9uc1dpZHRoUGVyY2VudGFnZVwiXG4gICAgKGlucHV0KT1cIm9uS2V5UHJlc3NlZFRlbXBvcmFyeUtleUZuKClcIlxuICAgIChvcHRpb25DaGFuZ2VkKT1cInRlbXBvcmFyeUl0ZW1PcHRpb25DaGFuZ2VkKCRldmVudClcIlxuICAgIFsobmdNb2RlbCldPVwidGVtcG9yYXJ5SXRlbVt0aGlzLmtleUF0dHJpYnV0ZU5hbWVdXCJcbiAgICAob25Ecm9wRXZlbnQpPVwib25LZXlEcm9wVGVtcG9yYXJ5SXRlbSh0ZW1wb3JhcnlJdGVtLCAkZXZlbnQpXCI+XG4gIDwvaW5wdXQtdGV4dD5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInZhbHVlT3B0aW9ucz8ubGVuZ3RoOyBlbHNlIHZhbHVlVGV4dFRlbXBcIj5cbiAgICA8aW5wdXQtdGV4dFxuICAgICAgY2xhc3M9XCJpbnB1dC12YWx1ZVwiXG4gICAgICBbc2l6ZV09XCJzaXplXCJcbiAgICAgIFtsYWJlbF09XCJ2YWx1ZUxhYmVsXCJcbiAgICAgIFtvcHRpb25zT25seV09XCJ0cnVlXCJcbiAgICAgIFtpbnB1dE9wdGlvbnNdPVwidmFsdWVPcHRpb25zXCJcbiAgICAgIFtpbnB1dE9wdGlvbnNJbml0U2VsZWN0ZWRdPVwidGVtcG9yYXJ5SXRlbVt0aGlzLnZhbHVlQXR0cmlidXRlTmFtZV1cIlxuICAgICAgKG9wdGlvbkNoYW5nZWQpPVwidGVtcG9yYXJ5VmFsdWVPcHRpb25DaGFuZ2VkKCRldmVudClcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ0ZW1wb3JhcnlJdGVtW3RoaXMudmFsdWVBdHRyaWJ1dGVOYW1lXVwiXG4gICAgICAob25Ecm9wRXZlbnQpPVwib25WYWx1ZURyb3AodGVtcG9yYXJ5SXRlbSwgJGV2ZW50KVwiPlxuICAgIDwvaW5wdXQtdGV4dD5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy10ZW1wbGF0ZSAjdmFsdWVUZXh0VGVtcD5cbiAgICA8aW5wdXQtdGV4dFxuICAgICAgY2xhc3M9XCJpbnB1dC12YWx1ZVwiXG4gICAgICBbc2l6ZV09XCJzaXplXCJcbiAgICAgIFtsYWJlbF09XCJ2YWx1ZUxhYmVsXCJcbiAgICAgIFsobmdNb2RlbCldPVwidGVtcG9yYXJ5SXRlbVt0aGlzLnZhbHVlQXR0cmlidXRlTmFtZV1cIlxuICAgICAgKG9uRHJvcEV2ZW50KT1cIm9uVmFsdWVEcm9wKHRlbXBvcmFyeUl0ZW0sICRldmVudClcIj5cbiAgICA8L2lucHV0LXRleHQ+XG4gIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cblxuIl19
|
|
@@ -25,6 +25,7 @@ class InputTextComponent extends ValueAccessorBase {
|
|
|
25
25
|
size = 'DEFAULT';
|
|
26
26
|
debounceTime = 0;
|
|
27
27
|
widthPercentageInputOptions = 10;
|
|
28
|
+
optionsOnly = false;
|
|
28
29
|
set inputOptions(inputOptions) {
|
|
29
30
|
this._inputOptions = inputOptions;
|
|
30
31
|
}
|
|
@@ -67,6 +68,9 @@ class InputTextComponent extends ValueAccessorBase {
|
|
|
67
68
|
return this.size === 'DEFAULT';
|
|
68
69
|
}
|
|
69
70
|
widthInput() {
|
|
71
|
+
if (this.optionsOnly && this.inputOptions.length > 0) {
|
|
72
|
+
return 0;
|
|
73
|
+
}
|
|
70
74
|
if (isNumber(this.widthPercentageInputOptions)) {
|
|
71
75
|
return this.inputOptions.length > 0 ? 100 - this.widthPercentageInputOptions : 100;
|
|
72
76
|
}
|
|
@@ -76,6 +80,9 @@ class InputTextComponent extends ValueAccessorBase {
|
|
|
76
80
|
this.optionChanged.emit(event.value);
|
|
77
81
|
}
|
|
78
82
|
getSelectWidth() {
|
|
83
|
+
if (this.optionsOnly && this.inputOptions.length > 0) {
|
|
84
|
+
return '100%';
|
|
85
|
+
}
|
|
79
86
|
if (isNumber(this.widthPercentageInputOptions)) {
|
|
80
87
|
return `${this.widthPercentageInputOptions}%`;
|
|
81
88
|
}
|
|
@@ -88,11 +95,11 @@ class InputTextComponent extends ValueAccessorBase {
|
|
|
88
95
|
return this.componentId ? `${this.componentId}-${suffix}` : undefined;
|
|
89
96
|
}
|
|
90
97
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputTextComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
91
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: InputTextComponent, selector: "input-text", inputs: { componentId: "componentId", 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", onDropEvent: "onDropEvent" }, providers: [{
|
|
98
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: InputTextComponent, selector: "input-text", inputs: { componentId: "componentId", label: "label", disabled: "disabled", iconSuffix: "iconSuffix", iconPrefix: "iconPrefix", autoComplete: "autoComplete", size: "size", debounceTime: "debounceTime", widthPercentageInputOptions: "widthPercentageInputOptions", optionsOnly: "optionsOnly", inputOptions: "inputOptions", inputOptionsInitSelected: "inputOptionsInitSelected" }, outputs: { suffixIconClick: "suffixIconClick", prefixIconClick: "prefixIconClick", onDebounce: "onDebounce", optionChanged: "optionChanged", onDropEvent: "onDropEvent" }, providers: [{
|
|
92
99
|
provide: NG_VALUE_ACCESSOR,
|
|
93
100
|
useExisting: forwardRef(() => InputTextComponent),
|
|
94
101
|
multi: true
|
|
95
|
-
}], usesInheritance: true, ngImport: i0, template: "<mat-form-field\n class=\"apipass-input-text\"\n [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\"\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDrop($event)\"\n 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 [id]=\"getComponentId('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 [id]=\"getComponentId('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"] }, { kind: "directive", type: i8.DndDropzoneDirective, selector: "[dndDropzone]", inputs: ["dndDropzone", "dndEffectAllowed", "dndAllowExternal", "dndHorizontal", "dndDragoverClass", "dndDropzoneDisabledClass", "dndDisableIf", "dndDisableDropIf"], outputs: ["dndDragover", "dndDrop"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
102
|
+
}], usesInheritance: true, ngImport: i0, template: "<mat-form-field\n class=\"apipass-input-text\"\n [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault(), 'outer-options-only': (optionsOnly && inputOptions.length > 0)}\"\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDrop($event)\"\n 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 *ngIf=\"!(optionsOnly && inputOptions.length > 0)\"\n [id]=\"getComponentId('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(), 'options-only': (optionsOnly && inputOptions.length > 0) }\">\n <mat-form-field [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\">\n <mat-select [id]=\"getComponentId('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.options-only,.apipass-input-text-slim .select-container.options-only{left:0;right:0}.apipass-input-text .select-container.options-only .mdc-notched-outline__leading,.apipass-input-text .select-container.options-only .mdc-notched-outline__notch,.apipass-input-text .select-container.options-only .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline__leading,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline__notch,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline__trailing,.apipass-input-text .select-container.options-only .mdc-notched-outline,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline{border:none!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"] }, { kind: "directive", type: i8.DndDropzoneDirective, selector: "[dndDropzone]", inputs: ["dndDropzone", "dndEffectAllowed", "dndAllowExternal", "dndHorizontal", "dndDragoverClass", "dndDropzoneDisabledClass", "dndDisableIf", "dndDisableDropIf"], outputs: ["dndDragover", "dndDrop"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
96
103
|
}
|
|
97
104
|
export { InputTextComponent };
|
|
98
105
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputTextComponent, decorators: [{
|
|
@@ -101,7 +108,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
101
108
|
provide: NG_VALUE_ACCESSOR,
|
|
102
109
|
useExisting: forwardRef(() => InputTextComponent),
|
|
103
110
|
multi: true
|
|
104
|
-
}], encapsulation: ViewEncapsulation.None, template: "<mat-form-field\n class=\"apipass-input-text\"\n [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\"\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDrop($event)\"\n 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 [id]=\"getComponentId('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 [id]=\"getComponentId('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"] }]
|
|
111
|
+
}], encapsulation: ViewEncapsulation.None, template: "<mat-form-field\n class=\"apipass-input-text\"\n [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault(), 'outer-options-only': (optionsOnly && inputOptions.length > 0)}\"\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDrop($event)\"\n 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 *ngIf=\"!(optionsOnly && inputOptions.length > 0)\"\n [id]=\"getComponentId('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(), 'options-only': (optionsOnly && inputOptions.length > 0) }\">\n <mat-form-field [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\">\n <mat-select [id]=\"getComponentId('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.options-only,.apipass-input-text-slim .select-container.options-only{left:0;right:0}.apipass-input-text .select-container.options-only .mdc-notched-outline__leading,.apipass-input-text .select-container.options-only .mdc-notched-outline__notch,.apipass-input-text .select-container.options-only .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline__leading,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline__notch,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline__trailing,.apipass-input-text .select-container.options-only .mdc-notched-outline,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline{border:none!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"] }]
|
|
105
112
|
}], propDecorators: { componentId: [{
|
|
106
113
|
type: Input
|
|
107
114
|
}], label: [{
|
|
@@ -120,6 +127,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
120
127
|
type: Input
|
|
121
128
|
}], widthPercentageInputOptions: [{
|
|
122
129
|
type: Input
|
|
130
|
+
}], optionsOnly: [{
|
|
131
|
+
type: Input
|
|
123
132
|
}], inputOptions: [{
|
|
124
133
|
type: Input
|
|
125
134
|
}], inputOptionsInitSelected: [{
|
|
@@ -135,4 +144,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
135
144
|
}], onDropEvent: [{
|
|
136
145
|
type: Output
|
|
137
146
|
}] } });
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2lucHV0LXRleHQvaW5wdXQtdGV4dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2lucHV0LXRleHQvaW5wdXQtdGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNyRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sUUFBUSxDQUFDOzs7Ozs7Ozs7O0FBUWxDLE1BV2Esa0JBQW1CLFNBQVEsaUJBQXlCO0lBRXZELHlCQUF5QixDQUFRO0lBQ2pDLGFBQWEsR0FBdUIsRUFBRSxDQUFBO0lBRXJDLFdBQVcsQ0FBUTtJQUNuQixLQUFLLEdBQUcsRUFBRSxDQUFBO0lBQ1YsUUFBUSxHQUFHLEtBQUssQ0FBQTtJQUNoQixVQUFVLEdBQUcsRUFBRSxDQUFBO0lBQ2YsVUFBVSxHQUFHLEVBQUUsQ0FBQTtJQUNmLFlBQVksR0FBRyxJQUFJLENBQUE7SUFDbkIsSUFBSSxHQUF1QixTQUFTLENBQUE7SUFDcEMsWUFBWSxHQUFXLENBQUMsQ0FBQTtJQUN4QiwyQkFBMkIsR0FBUSxFQUFFLENBQUE7SUFFOUMsSUFDSSxZQUFZLENBQUMsWUFBZ0M7UUFDL0MsSUFB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QUM7dUdBakdVLGtCQUFrQjsyRkFBbEIsa0JBQWtCLDRpQkFQbEIsQ0FBQztnQkFDVixPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDO2dCQUNqRCxLQUFLLEVBQUUsSUFBSTthQUNaLENBQUMsaURDckJKLHMrQ0FxQkE7O1NER2Esa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBWDlCLFNBQVM7K0JBQ0UsWUFBWSxhQUdYLENBQUM7NEJBQ1YsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsbUJBQW1CLENBQUM7NEJBQ2pELEtBQUssRUFBRSxJQUFJO3lCQUNaLENBQUMsaUJBQ2EsaUJBQWlCLENBQUMsSUFBSTs4QkFPNUIsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRywyQkFBMkI7c0JBQW5DLEtBQUs7Z0JBR0YsWUFBWTtzQkFEZixLQUFLO2dCQVVGLHdCQUF3QjtzQkFEM0IsS0FBSztnQkFTVyxlQUFlO3NCQUEvQixNQUFNO2dCQUNVLGVBQWU7c0JBQS9CLE1BQU07Z0JBQ1UsVUFBVTtzQkFBMUIsTUFBTTtnQkFDVSxhQUFhO3NCQUE3QixNQUFNO2dCQUNVLFdBQVc7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgZm9yd2FyZFJlZiwgSW5wdXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IFZhbHVlQWNjZXNzb3JCYXNlIH0gZnJvbSAnLi4vdmFsdWUtYWNlc3Nvci1iYXNlJ1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGlzTnVtYmVyIH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IERuZERyb3BFdmVudCB9IGZyb20gJ25neC1kcmFnLWRyb3AnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElucHV0T3B0aW9uc1R5cGUge1xuICB2YWx1ZTogc3RyaW5nXG4gIHRpdGxlOiBzdHJpbmdcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaW5wdXQtdGV4dCcsXG4gIHRlbXBsYXRlVXJsOiAnaW5wdXQtdGV4dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydpbnB1dC10ZXh0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbnB1dFRleHRDb21wb25lbnQpLFxuICAgIG11bHRpOiB0cnVlXG4gIH1dLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIElucHV0VGV4dENvbXBvbmVudCBleHRlbmRzIFZhbHVlQWNjZXNzb3JCYXNlPHN0cmluZz4ge1xuXG4gIHByaXZhdGUgX2lucHV0T3B0aW9uc0luaXRTZWxlY3RlZDogc3RyaW5nXG4gIHByaXZhdGUgX2lucHV0T3B0aW9uczogSW5wdXRPcHRpb25zVHlwZVtdID0gW11cblxuICBASW5wdXQoKSBjb21wb25lbnRJZDogc3RyaW5nXG4gIEBJbnB1dCgpIGxhYmVsID0gJydcbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZVxuICBASW5wdXQoKSBpY29uU3VmZml4ID0gJydcbiAgQElucHV0KCkgaWNvblByZWZpeCA9ICcnXG4gIEBJbnB1dCgpIGF1dG9Db21wbGV0ZSA9ICdvbidcbiAgQElucHV0KCkgc2l6ZTogJ0RFRkFVTFQnIHwgJ1NMSU0nID0gJ0RFRkFVTFQnXG4gIEBJbnB1dCgpIGRlYm91bmNlVGltZTogbnVtYmVyID0gMFxuICBASW5wdXQoKSB3aWR0aFBlcmNlbnRhZ2VJbnB1dE9wdGlvbnM6IGFueSA9IDEwXG5cbiAgQElucHV0KClcbiAgc2V0IGlucHV0T3B0aW9ucyhpbnB1dE9wdGlvbnM6IElucHV0T3B0aW9uc1R5cGVbXSkge1xuICAgIHRoaXMuX2lucHV0T3B0aW9ucyA9IGlucHV0T3B0aW9uc1xuICB9XG5cbiAgZ2V0IGlucHV0T3B0aW9ucygpOiBJbnB1dE9wdGlvbnNUeXBlW10ge1xuICAgIHJldHVybiB0aGlzLl9pbnB1dE9wdGlvbnNcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBpbnB1dE9wdGlvbnNJbml0U2VsZWN0ZWQoaW5wdXRPcHRpb25zSW5pdFNlbGVjdGVkOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9pbnB1dE9wdGlvbnNJbml0U2VsZWN0ZWQgPSBpbnB1dE9wdGlvbnNJbml0U2VsZWN0ZWRcbiAgfVxuXG4gIGdldCBpbnB1dE9wdGlvbnNJbml0U2VsZWN0ZWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5faW5wdXRPcHRpb25zSW5pdFNlbGVjdGVkXG4gIH1cblxuICBAT3V0cHV0KCkgcHVibGljIHN1ZmZpeEljb25DbGljazogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpXG4gIEBPdXRwdXQoKSBwdWJsaWMgcHJlZml4SWNvbkNsaWNrOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KClcbiAgQE91dHB1dCgpIHB1YmxpYyBvbkRlYm91bmNlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpXG4gIEBPdXRwdXQoKSBwdWJsaWMgb3B0aW9uQ2hhbmdlZDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKVxuICBAT3V0cHV0KCkgcHVibGljIG9uRHJvcEV2ZW50OiBFdmVudEVtaXR0ZXI8RG5kRHJvcEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RG5kRHJvcEV2ZW50PigpXG5cbiAgcHJpdmF0ZSByZWFkb25seSBzZWFyY2hUZXJtczogU3ViamVjdDxzdHJpbmc+ID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoVGVybXMucGlwZShcbiAgICAgIGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlVGltZSksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG4gICAgKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICB0aGlzLm9uRGVib3VuY2UuZW1pdCh2YWx1ZSlcbiAgICB9KTtcbiAgICB0aGlzLmlucHV0T3B0aW9uc0luaXRTZWxlY3RlZCB8fD0gdGhpcy5pbnB1dE9wdGlvbnM/LlswXT8udmFsdWVcbiAgfVxuXG4gIHB1YmxpYyBvblNlYXJjaElucHV0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRlYm91bmNlVGltZSkge1xuICAgICAgdGhpcy5zZWFyY2hUZXJtcy5uZXh0KHRoaXMudmFsdWUpXG4gICAgfVxuICB9XG5cbiAgcHVibGljIHByZWZpeENsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMucHJlZml4SWNvbkNsaWNrLmVtaXQodHJ1ZSlcbiAgfVxuXG4gIHB1YmxpYyBzdWZmaXhDbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLnN1ZmZpeEljb25DbGljay5lbWl0KHRydWUpXG4gIH1cblxuICBwdWJsaWMgaXNTbGltKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNpemUgPT09ICdTTElNJ1xuICB9XG5cbiAgcHVibGljIGlzRGVmYXVsdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaXplID09PSAnREVGQVVMVCdcbiAgfVxuXG4gIHB1YmxpYyB3aWR0aElucHV0KCk6IG51bWJlciB7XG4gICAgaWYgKGlzTnVtYmVyKHRoaXMud2lkdGhQZXJjZW50YWdlSW5wdXRPcHRpb25zKSkge1xuICAgICAgcmV0dXJuIHRoaXMuaW5wdXRPcHRpb25zLmxlbmd0aCA+IDAgPyAxMDAgLSB0aGlzLndpZHRoUGVyY2VudGFnZUlucHV0T3B0aW9ucyA6IDEwMFxuICAgIH1cbiAgICByZXR1cm4gMTAwXG4gIH1cblxuICBwdWJsaWMgb25PcHRpb25TZWxlY3RlZChldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vcHRpb25DaGFuZ2VkLmVtaXQoZXZlbnQudmFsdWUpXG4gIH1cblxuICBwdWJsaWMgZ2V0U2VsZWN0V2lkdGgoKTogc3RyaW5nIHtcbiAgICBpZiAoaXNOdW1iZXIodGhpcy53aWR0aFBlcmNlbnRhZ2VJbnB1dE9wdGlvbnMpKSB7XG4gICAgICByZXR1cm4gYCR7dGhpcy53aWR0aFBlcmNlbnRhZ2VJbnB1dE9wdGlvbnN9JWBcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMud2lkdGhQZXJjZW50YWdlSW5wdXRPcHRpb25zO1xuICB9XG5cbiAgcHVibGljIG9uRHJvcCgkZXZlbnQ6IERuZERyb3BFdmVudCk6IHZvaWQge1xuICAgIHRoaXMub25Ecm9wRXZlbnQuZW1pdCgkZXZlbnQpXG4gIH1cblxuICBwdWJsaWMgZ2V0Q29tcG9uZW50SWQoc3VmZml4OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudElkID8gYCR7dGhpcy5jb21wb25lbnRJZH0tJHtzdWZmaXh9YCA6IHVuZGVmaW5lZFxuICB9XG5cbn1cbiIsIjxtYXQtZm9ybS1maWVsZFxuICBjbGFzcz1cImFwaXBhc3MtaW5wdXQtdGV4dFwiXG4gIFtuZ0NsYXNzXT1cInsnYXBpcGFzcy1pbnB1dC10ZXh0LXNsaW0nOiBpc1NsaW0oKSwgJ2FwaXBhc3MtaW5wdXQtdGV4dCc6IGlzRGVmYXVsdCgpfVwiXG4gIGRuZERyb3B6b25lIFtkbmRBbGxvd0V4dGVybmFsXT1cInRydWVcIiAoZG5kRHJvcCk9XCJvbkRyb3AoJGV2ZW50KVwiXG4gIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XG4gIDxtYXQtbGFiZWwgKm5nSWY9XCJsYWJlbFwiPnt7bGFiZWx9fTwvbWF0LWxhYmVsPlxuICA8bWF0LWljb24gY2xhc3M9XCJtYXQtaWNvbi1wcmVmaXhcIiBbbmdDbGFzc109XCJ7J21hdC1pY29uLXNsaW0nOiBpc1NsaW0oKX1cIiBtYXRQcmVmaXggKm5nSWY9XCJpY29uUHJlZml4XCIgKGNsaWNrKT1cInByZWZpeENsaWNrKClcIj57e2ljb25QcmVmaXh9fTwvbWF0LWljb24+XG4gIDxpbnB1dCBbaWRdPVwiZ2V0Q29tcG9uZW50SWQoJ2lucHV0JylcIiBtYXRJbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiaW5wdXQtdGV4dFwiIFtuZ1N0eWxlXT1cInsgd2lkdGg6IHdpZHRoSW5wdXQoKSArICclJyB9XCIgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgW2F1dG9jb21wbGV0ZV09XCJhdXRvQ29tcGxldGVcIlxuICAgIChpbnB1dCk9XCJvblNlYXJjaElucHV0KClcIiAvPlxuICA8ZGl2ICpuZ0lmPVwidGhpcy5pbnB1dE9wdGlvbnMubGVuZ3RoID4gMFwiIGNsYXNzPVwic2VsZWN0LWNvbnRhaW5lclwiXG4gICAgW25nU3R5bGVdPVwieyB3aWR0aDogZ2V0U2VsZWN0V2lkdGgoKSB9XCIgW25nQ2xhc3NdPVwieyAnc2VsZWN0LWNvbnRhaW5lcic6IGlzRGVmYXVsdCgpLFxuICAgICdzZWxlY3QtY29udGFpbmVyLXNsaW0nOmlzU2xpbSgpfVwiPlxuICAgIDxtYXQtZm9ybS1maWVsZCBbbmdDbGFzc109XCJ7J2FwaXBhc3MtaW5wdXQtdGV4dC1zbGltJzogaXNTbGltKCksICdhcGlwYXNzLWlucHV0LXRleHQnOiBpc0RlZmF1bHQoKX1cIj5cbiAgICAgIDxtYXQtc2VsZWN0IFtpZF09XCJnZXRDb21wb25lbnRJZCgnc2VsZWN0JylcIiBbKHZhbHVlKV09XCJpbnB1dE9wdGlvbnNJbml0U2VsZWN0ZWRcIiAoc2VsZWN0aW9uQ2hhbmdlKT1cIm9uT3B0aW9uU2VsZWN0ZWQoJGV2ZW50KVwiPlxuICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpbnB1dE9wdGlvbnNcIiBbdmFsdWVdPVwiaXRlbS52YWx1ZVwiPnt7aXRlbS50aXRsZX19PC9tYXQtb3B0aW9uPlxuICAgICAgPC9tYXQtc2VsZWN0PlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gIDwvZGl2PlxuICA8bWF0LWljb24gY2xhc3M9XCJtYXQtaWNvbi1zdWZmaXhcIiBbbmdDbGFzc109XCJ7J21hdC1pY29uLXNsaW0nOiBpc1NsaW0oKX1cIiBtYXRTdWZmaXggKm5nSWY9XCJpY29uU3VmZml4XCIgKGNsaWNrKT1cInN1ZmZpeENsaWNrKClcIj57e2ljb25TdWZmaXh9fTwvbWF0LWljb24+XG48L21hdC1mb3JtLWZpZWxkPlxuIl19
|
|
147
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2lucHV0LXRleHQvaW5wdXQtdGV4dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL2lucHV0LXRleHQvaW5wdXQtdGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNyRyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sUUFBUSxDQUFDOzs7Ozs7Ozs7O0FBUWxDLE1BV2Esa0JBQW1CLFNBQVEsaUJBQXlCO0lBRXZELHlCQUF5QixDQUFRO0lBQ2pDLGFBQWEsR0FBdUIsRUFBRSxDQUFBO0lBRXJDLFdBQVcsQ0FBUTtJQUNuQixLQUFLLEdBQUcsRUFBRSxDQUFBO0lBQ1YsUUFBUSxHQUFHLEtBQUssQ0FBQTtJQUNoQixVQUFVLEdBQUcsRUFBRSxDQUFBO0lBQ2YsVUFBVSxHQUFHLEVBQUUsQ0FBQTtJQUNmLFlBQVksR0FBRyxJQUFJLENBQUE7SUFDbkIsSUFBSSxHQUF1QixTQUFTLENBQUE7SUFDcEMsWUFBWSxHQUFXLENBQUMsQ0FBQTtJQUN4QiwyQkFBMkIsR0FBUSxFQUFFLENBQUE7SUFDckMsV0FBVyxHQUFZLEtBQUssQ0FBQTtJQUVyQyxJQUNJ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QUNVLFVBQVU7c0JBQTFCLE1BQU07Z0JBQ1UsYUFBYTtzQkFBN0IsTUFBTTtnQkFDVSxXQUFXO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBWYWx1ZUFjY2Vzc29yQmFzZSB9IGZyb20gJy4uL3ZhbHVlLWFjZXNzb3ItYmFzZSdcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBpc051bWJlciB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBEbmREcm9wRXZlbnQgfSBmcm9tICduZ3gtZHJhZy1kcm9wJztcblxuZXhwb3J0IGludGVyZmFjZSBJbnB1dE9wdGlvbnNUeXBlIHtcbiAgdmFsdWU6IHN0cmluZ1xuICB0aXRsZTogc3RyaW5nXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lucHV0LXRleHQnLFxuICB0ZW1wbGF0ZVVybDogJ2lucHV0LXRleHQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnaW5wdXQtdGV4dC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFt7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5wdXRUZXh0Q29tcG9uZW50KSxcbiAgICBtdWx0aTogdHJ1ZVxuICB9XSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxufSlcbmV4cG9ydCBjbGFzcyBJbnB1dFRleHRDb21wb25lbnQgZXh0ZW5kcyBWYWx1ZUFjY2Vzc29yQmFzZTxzdHJpbmc+IHtcblxuICBwcml2YXRlIF9pbnB1dE9wdGlvbnNJbml0U2VsZWN0ZWQ6IHN0cmluZ1xuICBwcml2YXRlIF9pbnB1dE9wdGlvbnM6IElucHV0T3B0aW9uc1R5cGVbXSA9IFtdXG5cbiAgQElucHV0KCkgY29tcG9uZW50SWQ6IHN0cmluZ1xuICBASW5wdXQoKSBsYWJlbCA9ICcnXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2VcbiAgQElucHV0KCkgaWNvblN1ZmZpeCA9ICcnXG4gIEBJbnB1dCgpIGljb25QcmVmaXggPSAnJ1xuICBASW5wdXQoKSBhdXRvQ29tcGxldGUgPSAnb24nXG4gIEBJbnB1dCgpIHNpemU6ICdERUZBVUxUJyB8ICdTTElNJyA9ICdERUZBVUxUJ1xuICBASW5wdXQoKSBkZWJvdW5jZVRpbWU6IG51bWJlciA9IDBcbiAgQElucHV0KCkgd2lkdGhQZXJjZW50YWdlSW5wdXRPcHRpb25zOiBhbnkgPSAxMFxuICBASW5wdXQoKSBvcHRpb25zT25seTogYm9vbGVhbiA9IGZhbHNlXG5cbiAgQElucHV0KClcbiAgc2V0IGlucHV0T3B0aW9ucyhpbnB1dE9wdGlvbnM6IElucHV0T3B0aW9uc1R5cGVbXSkge1xuICAgIHRoaXMuX2lucHV0T3B0aW9ucyA9IGlucHV0T3B0aW9uc1xuICB9XG5cbiAgZ2V0IGlucHV0T3B0aW9ucygpOiBJbnB1dE9wdGlvbnNUeXBlW10ge1xuICAgIHJldHVybiB0aGlzLl9pbnB1dE9wdGlvbnNcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBpbnB1dE9wdGlvbnNJbml0U2VsZWN0ZWQoaW5wdXRPcHRpb25zSW5pdFNlbGVjdGVkOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9pbnB1dE9wdGlvbnNJbml0U2VsZWN0ZWQgPSBpbnB1dE9wdGlvbnNJbml0U2VsZWN0ZWRcbiAgfVxuXG4gIGdldCBpbnB1dE9wdGlvbnNJbml0U2VsZWN0ZWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5faW5wdXRPcHRpb25zSW5pdFNlbGVjdGVkXG4gIH1cblxuICBAT3V0cHV0KCkgcHVibGljIHN1ZmZpeEljb25DbGljazogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpXG4gIEBPdXRwdXQoKSBwdWJsaWMgcHJlZml4SWNvbkNsaWNrOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KClcbiAgQE91dHB1dCgpIHB1YmxpYyBvbkRlYm91bmNlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpXG4gIEBPdXRwdXQoKSBwdWJsaWMgb3B0aW9uQ2hhbmdlZDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKVxuICBAT3V0cHV0KCkgcHVibGljIG9uRHJvcEV2ZW50OiBFdmVudEVtaXR0ZXI8RG5kRHJvcEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RG5kRHJvcEV2ZW50PigpXG5cbiAgcHJpdmF0ZSByZWFkb25seSBzZWFyY2hUZXJtczogU3ViamVjdDxzdHJpbmc+ID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoVGVybXMucGlwZShcbiAgICAgIGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlVGltZSksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG4gICAgKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICB0aGlzLm9uRGVib3VuY2UuZW1pdCh2YWx1ZSlcbiAgICB9KTtcbiAgICB0aGlzLmlucHV0T3B0aW9uc0luaXRTZWxlY3RlZCB8fD0gdGhpcy5pbnB1dE9wdGlvbnM/LlswXT8udmFsdWVcbiAgfVxuXG4gIHB1YmxpYyBvblNlYXJjaElucHV0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRlYm91bmNlVGltZSkge1xuICAgICAgdGhpcy5zZWFyY2hUZXJtcy5uZXh0KHRoaXMudmFsdWUpXG4gICAgfVxuICB9XG5cbiAgcHVibGljIHByZWZpeENsaWNrKCk6IHZvaWQge1xuICAgIHRoaXMucHJlZml4SWNvbkNsaWNrLmVtaXQodHJ1ZSlcbiAgfVxuXG4gIHB1YmxpYyBzdWZmaXhDbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLnN1ZmZpeEljb25DbGljay5lbWl0KHRydWUpXG4gIH1cblxuICBwdWJsaWMgaXNTbGltKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNpemUgPT09ICdTTElNJ1xuICB9XG5cbiAgcHVibGljIGlzRGVmYXVsdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zaXplID09PSAnREVGQVVMVCdcbiAgfVxuXG4gIHB1YmxpYyB3aWR0aElucHV0KCk6IG51bWJlciB7XG4gICAgaWYgKHRoaXMub3B0aW9uc09ubHkgJiYgdGhpcy5pbnB1dE9wdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIDBcbiAgICB9XG4gICAgaWYgKGlzTnVtYmVyKHRoaXMud2lkdGhQZXJjZW50YWdlSW5wdXRPcHRpb25zKSkge1xuICAgICAgcmV0dXJuIHRoaXMuaW5wdXRPcHRpb25zLmxlbmd0aCA+IDAgPyAxMDAgLSB0aGlzLndpZHRoUGVyY2VudGFnZUlucHV0T3B0aW9ucyA6IDEwMFxuICAgIH1cbiAgICByZXR1cm4gMTAwXG4gIH1cblxuICBwdWJsaWMgb25PcHRpb25TZWxlY3RlZChldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vcHRpb25DaGFuZ2VkLmVtaXQoZXZlbnQudmFsdWUpXG4gIH1cblxuICBwdWJsaWMgZ2V0U2VsZWN0V2lkdGgoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5vcHRpb25zT25seSAmJiB0aGlzLmlucHV0T3B0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gJzEwMCUnXG4gICAgfVxuICAgIGlmIChpc051bWJlcih0aGlzLndpZHRoUGVyY2VudGFnZUlucHV0T3B0aW9ucykpIHtcbiAgICAgIHJldHVybiBgJHt0aGlzLndpZHRoUGVyY2VudGFnZUlucHV0T3B0aW9uc30lYFxuICAgIH1cbiAgICByZXR1cm4gdGhpcy53aWR0aFBlcmNlbnRhZ2VJbnB1dE9wdGlvbnM7XG4gIH1cblxuICBwdWJsaWMgb25Ecm9wKCRldmVudDogRG5kRHJvcEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5vbkRyb3BFdmVudC5lbWl0KCRldmVudClcbiAgfVxuXG4gIHB1YmxpYyBnZXRDb21wb25lbnRJZChzdWZmaXg6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50SWQgPyBgJHt0aGlzLmNvbXBvbmVudElkfS0ke3N1ZmZpeH1gIDogdW5kZWZpbmVkXG4gIH1cblxufVxuIiwiPG1hdC1mb3JtLWZpZWxkXG4gIGNsYXNzPVwiYXBpcGFzcy1pbnB1dC10ZXh0XCJcbiAgW25nQ2xhc3NdPVwieydhcGlwYXNzLWlucHV0LXRleHQtc2xpbSc6IGlzU2xpbSgpLCAnYXBpcGFzcy1pbnB1dC10ZXh0JzogaXNEZWZhdWx0KCksICdvdXRlci1vcHRpb25zLW9ubHknOiAob3B0aW9uc09ubHkgJiYgaW5wdXRPcHRpb25zLmxlbmd0aCA+IDApfVwiXG4gIGRuZERyb3B6b25lIFtkbmRBbGxvd0V4dGVybmFsXT1cInRydWVcIiAoZG5kRHJvcCk9XCJvbkRyb3AoJGV2ZW50KVwiXG4gIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XG4gIDxtYXQtbGFiZWwgKm5nSWY9XCJsYWJlbFwiPnt7bGFiZWx9fTwvbWF0LWxhYmVsPlxuICA8bWF0LWljb24gY2xhc3M9XCJtYXQtaWNvbi1wcmVmaXhcIiBbbmdDbGFzc109XCJ7J21hdC1pY29uLXNsaW0nOiBpc1NsaW0oKX1cIiBtYXRQcmVmaXggKm5nSWY9XCJpY29uUHJlZml4XCIgKGNsaWNrKT1cInByZWZpeENsaWNrKClcIj57e2ljb25QcmVmaXh9fTwvbWF0LWljb24+XG4gIDxpbnB1dCAqbmdJZj1cIiEob3B0aW9uc09ubHkgJiYgaW5wdXRPcHRpb25zLmxlbmd0aCA+IDApXCJcbiAgICAgICAgIFtpZF09XCJnZXRDb21wb25lbnRJZCgnaW5wdXQnKVwiIG1hdElucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJpbnB1dC10ZXh0XCIgW25nU3R5bGVdPVwieyB3aWR0aDogd2lkdGhJbnB1dCgpICsgJyUnIH1cIiBbKG5nTW9kZWwpXT1cInZhbHVlXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbYXV0b2NvbXBsZXRlXT1cImF1dG9Db21wbGV0ZVwiXG4gICAgKGlucHV0KT1cIm9uU2VhcmNoSW5wdXQoKVwiIC8+XG4gIDxkaXYgKm5nSWY9XCJ0aGlzLmlucHV0T3B0aW9ucy5sZW5ndGggPiAwXCIgY2xhc3M9XCJzZWxlY3QtY29udGFpbmVyXCJcbiAgICBbbmdTdHlsZV09XCJ7IHdpZHRoOiBnZXRTZWxlY3RXaWR0aCgpIH1cIiBbbmdDbGFzc109XCJ7ICdzZWxlY3QtY29udGFpbmVyJzogaXNEZWZhdWx0KCksXG4gICAgJ3NlbGVjdC1jb250YWluZXItc2xpbSc6aXNTbGltKCksICdvcHRpb25zLW9ubHknOiAob3B0aW9uc09ubHkgJiYgaW5wdXRPcHRpb25zLmxlbmd0aCA+IDApIH1cIj5cbiAgICA8bWF0LWZvcm0tZmllbGQgW25nQ2xhc3NdPVwieydhcGlwYXNzLWlucHV0LXRleHQtc2xpbSc6IGlzU2xpbSgpLCAnYXBpcGFzcy1pbnB1dC10ZXh0JzogaXNEZWZhdWx0KCl9XCI+XG4gICAgICA8bWF0LXNlbGVjdCBbaWRdPVwiZ2V0Q29tcG9uZW50SWQoJ3NlbGVjdCcpXCIgWyh2YWx1ZSldPVwiaW5wdXRPcHRpb25zSW5pdFNlbGVjdGVkXCIgKHNlbGVjdGlvbkNoYW5nZSk9XCJvbk9wdGlvblNlbGVjdGVkKCRldmVudClcIj5cbiAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IGl0ZW0gb2YgaW5wdXRPcHRpb25zXCIgW3ZhbHVlXT1cIml0ZW0udmFsdWVcIj57e2l0ZW0udGl0bGV9fTwvbWF0LW9wdGlvbj5cbiAgICAgIDwvbWF0LXNlbGVjdD5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICA8L2Rpdj5cbiAgPG1hdC1pY29uIGNsYXNzPVwibWF0LWljb24tc3VmZml4XCIgW25nQ2xhc3NdPVwieydtYXQtaWNvbi1zbGltJzogaXNTbGltKCl9XCIgbWF0U3VmZml4ICpuZ0lmPVwiaWNvblN1ZmZpeFwiIChjbGljayk9XCJzdWZmaXhDbGljaygpXCI+e3tpY29uU3VmZml4fX08L21hdC1pY29uPlxuPC9tYXQtZm9ybS1maWVsZD5cbiJdfQ==
|
|
@@ -137,6 +137,7 @@ class InputTextComponent extends ValueAccessorBase {
|
|
|
137
137
|
size = 'DEFAULT';
|
|
138
138
|
debounceTime = 0;
|
|
139
139
|
widthPercentageInputOptions = 10;
|
|
140
|
+
optionsOnly = false;
|
|
140
141
|
set inputOptions(inputOptions) {
|
|
141
142
|
this._inputOptions = inputOptions;
|
|
142
143
|
}
|
|
@@ -179,6 +180,9 @@ class InputTextComponent extends ValueAccessorBase {
|
|
|
179
180
|
return this.size === 'DEFAULT';
|
|
180
181
|
}
|
|
181
182
|
widthInput() {
|
|
183
|
+
if (this.optionsOnly && this.inputOptions.length > 0) {
|
|
184
|
+
return 0;
|
|
185
|
+
}
|
|
182
186
|
if (isNumber(this.widthPercentageInputOptions)) {
|
|
183
187
|
return this.inputOptions.length > 0 ? 100 - this.widthPercentageInputOptions : 100;
|
|
184
188
|
}
|
|
@@ -188,6 +192,9 @@ class InputTextComponent extends ValueAccessorBase {
|
|
|
188
192
|
this.optionChanged.emit(event.value);
|
|
189
193
|
}
|
|
190
194
|
getSelectWidth() {
|
|
195
|
+
if (this.optionsOnly && this.inputOptions.length > 0) {
|
|
196
|
+
return '100%';
|
|
197
|
+
}
|
|
191
198
|
if (isNumber(this.widthPercentageInputOptions)) {
|
|
192
199
|
return `${this.widthPercentageInputOptions}%`;
|
|
193
200
|
}
|
|
@@ -200,11 +207,11 @@ class InputTextComponent extends ValueAccessorBase {
|
|
|
200
207
|
return this.componentId ? `${this.componentId}-${suffix}` : undefined;
|
|
201
208
|
}
|
|
202
209
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputTextComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
203
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: InputTextComponent, selector: "input-text", inputs: { componentId: "componentId", 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", onDropEvent: "onDropEvent" }, providers: [{
|
|
210
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: InputTextComponent, selector: "input-text", inputs: { componentId: "componentId", label: "label", disabled: "disabled", iconSuffix: "iconSuffix", iconPrefix: "iconPrefix", autoComplete: "autoComplete", size: "size", debounceTime: "debounceTime", widthPercentageInputOptions: "widthPercentageInputOptions", optionsOnly: "optionsOnly", inputOptions: "inputOptions", inputOptionsInitSelected: "inputOptionsInitSelected" }, outputs: { suffixIconClick: "suffixIconClick", prefixIconClick: "prefixIconClick", onDebounce: "onDebounce", optionChanged: "optionChanged", onDropEvent: "onDropEvent" }, providers: [{
|
|
204
211
|
provide: NG_VALUE_ACCESSOR,
|
|
205
212
|
useExisting: forwardRef(() => InputTextComponent),
|
|
206
213
|
multi: true
|
|
207
|
-
}], usesInheritance: true, ngImport: i0, template: "<mat-form-field\n class=\"apipass-input-text\"\n [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\"\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDrop($event)\"\n 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 [id]=\"getComponentId('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 [id]=\"getComponentId('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"] }, { kind: "directive", type: i6$1.DndDropzoneDirective, selector: "[dndDropzone]", inputs: ["dndDropzone", "dndEffectAllowed", "dndAllowExternal", "dndHorizontal", "dndDragoverClass", "dndDropzoneDisabledClass", "dndDisableIf", "dndDisableDropIf"], outputs: ["dndDragover", "dndDrop"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
214
|
+
}], usesInheritance: true, ngImport: i0, template: "<mat-form-field\n class=\"apipass-input-text\"\n [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault(), 'outer-options-only': (optionsOnly && inputOptions.length > 0)}\"\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDrop($event)\"\n 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 *ngIf=\"!(optionsOnly && inputOptions.length > 0)\"\n [id]=\"getComponentId('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(), 'options-only': (optionsOnly && inputOptions.length > 0) }\">\n <mat-form-field [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\">\n <mat-select [id]=\"getComponentId('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.options-only,.apipass-input-text-slim .select-container.options-only{left:0;right:0}.apipass-input-text .select-container.options-only .mdc-notched-outline__leading,.apipass-input-text .select-container.options-only .mdc-notched-outline__notch,.apipass-input-text .select-container.options-only .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline__leading,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline__notch,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline__trailing,.apipass-input-text .select-container.options-only .mdc-notched-outline,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline{border:none!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"] }, { kind: "directive", type: i6$1.DndDropzoneDirective, selector: "[dndDropzone]", inputs: ["dndDropzone", "dndEffectAllowed", "dndAllowExternal", "dndHorizontal", "dndDragoverClass", "dndDropzoneDisabledClass", "dndDisableIf", "dndDisableDropIf"], outputs: ["dndDragover", "dndDrop"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
208
215
|
}
|
|
209
216
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: InputTextComponent, decorators: [{
|
|
210
217
|
type: Component,
|
|
@@ -212,7 +219,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
212
219
|
provide: NG_VALUE_ACCESSOR,
|
|
213
220
|
useExisting: forwardRef(() => InputTextComponent),
|
|
214
221
|
multi: true
|
|
215
|
-
}], encapsulation: ViewEncapsulation.None, template: "<mat-form-field\n class=\"apipass-input-text\"\n [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\"\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDrop($event)\"\n 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 [id]=\"getComponentId('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 [id]=\"getComponentId('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"] }]
|
|
222
|
+
}], encapsulation: ViewEncapsulation.None, template: "<mat-form-field\n class=\"apipass-input-text\"\n [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault(), 'outer-options-only': (optionsOnly && inputOptions.length > 0)}\"\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDrop($event)\"\n 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 *ngIf=\"!(optionsOnly && inputOptions.length > 0)\"\n [id]=\"getComponentId('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(), 'options-only': (optionsOnly && inputOptions.length > 0) }\">\n <mat-form-field [ngClass]=\"{'apipass-input-text-slim': isSlim(), 'apipass-input-text': isDefault()}\">\n <mat-select [id]=\"getComponentId('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.options-only,.apipass-input-text-slim .select-container.options-only{left:0;right:0}.apipass-input-text .select-container.options-only .mdc-notched-outline__leading,.apipass-input-text .select-container.options-only .mdc-notched-outline__notch,.apipass-input-text .select-container.options-only .mdc-notched-outline__trailing,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline__leading,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline__notch,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline__trailing,.apipass-input-text .select-container.options-only .mdc-notched-outline,.apipass-input-text-slim .select-container.options-only .mdc-notched-outline{border:none!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"] }]
|
|
216
223
|
}], propDecorators: { componentId: [{
|
|
217
224
|
type: Input
|
|
218
225
|
}], label: [{
|
|
@@ -231,6 +238,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
231
238
|
type: Input
|
|
232
239
|
}], widthPercentageInputOptions: [{
|
|
233
240
|
type: Input
|
|
241
|
+
}], optionsOnly: [{
|
|
242
|
+
type: Input
|
|
234
243
|
}], inputOptions: [{
|
|
235
244
|
type: Input
|
|
236
245
|
}], inputOptionsInitSelected: [{
|
|
@@ -2202,6 +2211,7 @@ class KeyValueInputComponent {
|
|
|
2202
2211
|
inputOptionsWidthPercentage;
|
|
2203
2212
|
inputOptionsDefaultSelected;
|
|
2204
2213
|
inputOptions = [];
|
|
2214
|
+
valueOptions = [];
|
|
2205
2215
|
blockNewItem = false;
|
|
2206
2216
|
blockEditLabel = false;
|
|
2207
2217
|
onDropFn;
|
|
@@ -2235,6 +2245,9 @@ class KeyValueInputComponent {
|
|
|
2235
2245
|
inputOptionChanged(event, index) {
|
|
2236
2246
|
this.items[index].type = event;
|
|
2237
2247
|
}
|
|
2248
|
+
valueOptionChanged(event, index) {
|
|
2249
|
+
this.items[index][this.valueAttributeName] = event;
|
|
2250
|
+
}
|
|
2238
2251
|
onKeyDrop(model, $event) {
|
|
2239
2252
|
model[this.keyAttributeName] = this.onDropFn($event, model[this.keyAttributeName]);
|
|
2240
2253
|
}
|
|
@@ -2262,15 +2275,18 @@ class KeyValueInputComponent {
|
|
|
2262
2275
|
temporaryItemOptionChanged(event) {
|
|
2263
2276
|
this.temporaryItem.type = event;
|
|
2264
2277
|
}
|
|
2278
|
+
temporaryValueOptionChanged(event) {
|
|
2279
|
+
this.temporaryItem[this.valueAttributeName] = event;
|
|
2280
|
+
}
|
|
2265
2281
|
getComponentId(id, index) {
|
|
2266
2282
|
return this.componentId ? `${this.componentId}-${id}-${index}` : `${id}-${index}`;
|
|
2267
2283
|
}
|
|
2268
2284
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: KeyValueInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2269
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: KeyValueInputComponent, selector: "key-value-input", inputs: { componentId: "componentId", items: "items", size: "size", keyAttributeName: "keyAttributeName", valueAttributeName: "valueAttributeName", keyLabel: "keyLabel", valueLabel: "valueLabel", removeLabel: "removeLabel", inputOptionsWidthPercentage: "inputOptionsWidthPercentage", inputOptionsDefaultSelected: "inputOptionsDefaultSelected", inputOptions: "inputOptions", blockNewItem: "blockNewItem", blockEditLabel: "blockEditLabel", onDropFn: "onDropFn" }, outputs: { itemsChange: "itemsChange" }, ngImport: i0, template: "<div class=\"key-value-item\" *ngFor=\"let item of items; let index = index\">\n <input-text\n [componentId]=\"getComponentId('key', index)\"\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"keyLabel\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"item.type\"\n [widthPercentageInputOptions]=\"inputOptionsWidthPercentage\"\n [disabled]=\"blockEditLabel\"\n [(ngModel)]=\"item[keyAttributeName]\"\n (optionChanged)=\"inputOptionChanged($event, index)\"\n (onDropEvent)=\"onKeyDrop(item, $event)\">\n </input-text>\n <input-text\n
|
|
2285
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.2", type: KeyValueInputComponent, selector: "key-value-input", inputs: { componentId: "componentId", items: "items", size: "size", keyAttributeName: "keyAttributeName", valueAttributeName: "valueAttributeName", keyLabel: "keyLabel", valueLabel: "valueLabel", removeLabel: "removeLabel", inputOptionsWidthPercentage: "inputOptionsWidthPercentage", inputOptionsDefaultSelected: "inputOptionsDefaultSelected", inputOptions: "inputOptions", valueOptions: "valueOptions", blockNewItem: "blockNewItem", blockEditLabel: "blockEditLabel", onDropFn: "onDropFn" }, outputs: { itemsChange: "itemsChange" }, ngImport: i0, template: "<div class=\"key-value-item\" *ngFor=\"let item of items; let index = index\">\n <input-text\n [componentId]=\"getComponentId('key', index)\"\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"keyLabel\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"item.type\"\n [widthPercentageInputOptions]=\"inputOptionsWidthPercentage\"\n [disabled]=\"blockEditLabel\"\n [(ngModel)]=\"item[keyAttributeName]\"\n (optionChanged)=\"inputOptionChanged($event, index)\"\n (onDropEvent)=\"onKeyDrop(item, $event)\">\n </input-text>\n <ng-container *ngIf=\"valueOptions?.length; else valueTextItem\">\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [optionsOnly]=\"true\"\n [inputOptions]=\"valueOptions\"\n [inputOptionsInitSelected]=\"item[valueAttributeName]\"\n (optionChanged)=\"valueOptionChanged($event, index)\"\n [(ngModel)]=\"item[valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(item, $event)\">\n </input-text>\n </ng-container>\n <ng-template #valueTextItem>\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [(ngModel)]=\"item[valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(item, $event)\">\n </input-text>\n </ng-template>\n <button class=\"delete-button\" (click)=\"removeItem(index)\" [matTooltip]=\"removeLabel\" type=\"button\">\n <i class=\"far fa-trash-alt fa-lg\"></i>\n </button>\n</div>\n<div class=\"key-value-item\" *ngIf=\"!blockNewItem\">\n <input-text\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"keyLabel\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"inputOptionsDefaultSelected\"\n [widthPercentageInputOptions]=\"inputOptionsWidthPercentage\"\n (input)=\"onKeyPressedTemporaryKeyFn()\"\n (optionChanged)=\"temporaryItemOptionChanged($event)\"\n [(ngModel)]=\"temporaryItem[this.keyAttributeName]\"\n (onDropEvent)=\"onKeyDropTemporaryItem(temporaryItem, $event)\">\n </input-text>\n <ng-container *ngIf=\"valueOptions?.length; else valueTextTemp\">\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [optionsOnly]=\"true\"\n [inputOptions]=\"valueOptions\"\n [inputOptionsInitSelected]=\"temporaryItem[this.valueAttributeName]\"\n (optionChanged)=\"temporaryValueOptionChanged($event)\"\n [(ngModel)]=\"temporaryItem[this.valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(temporaryItem, $event)\">\n </input-text>\n </ng-container>\n <ng-template #valueTextTemp>\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [(ngModel)]=\"temporaryItem[this.valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(temporaryItem, $event)\">\n </input-text>\n </ng-template>\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;color:var(--color-fonts-tertiary);border:none!important;background:none!important}\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: "directive", type: i3$1.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: InputTextComponent, selector: "input-text", inputs: ["componentId", "label", "disabled", "iconSuffix", "iconPrefix", "autoComplete", "size", "debounceTime", "widthPercentageInputOptions", "optionsOnly", "inputOptions", "inputOptionsInitSelected"], outputs: ["suffixIconClick", "prefixIconClick", "onDebounce", "optionChanged", "onDropEvent"] }] });
|
|
2270
2286
|
}
|
|
2271
2287
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: KeyValueInputComponent, decorators: [{
|
|
2272
2288
|
type: Component,
|
|
2273
|
-
args: [{ selector: 'key-value-input', template: "<div class=\"key-value-item\" *ngFor=\"let item of items; let index = index\">\n <input-text\n [componentId]=\"getComponentId('key', index)\"\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"keyLabel\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"item.type\"\n [widthPercentageInputOptions]=\"inputOptionsWidthPercentage\"\n [disabled]=\"blockEditLabel\"\n [(ngModel)]=\"item[keyAttributeName]\"\n (optionChanged)=\"inputOptionChanged($event, index)\"\n (onDropEvent)=\"onKeyDrop(item, $event)\">\n </input-text>\n <input-text\n
|
|
2289
|
+
args: [{ selector: 'key-value-input', template: "<div class=\"key-value-item\" *ngFor=\"let item of items; let index = index\">\n <input-text\n [componentId]=\"getComponentId('key', index)\"\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"keyLabel\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"item.type\"\n [widthPercentageInputOptions]=\"inputOptionsWidthPercentage\"\n [disabled]=\"blockEditLabel\"\n [(ngModel)]=\"item[keyAttributeName]\"\n (optionChanged)=\"inputOptionChanged($event, index)\"\n (onDropEvent)=\"onKeyDrop(item, $event)\">\n </input-text>\n <ng-container *ngIf=\"valueOptions?.length; else valueTextItem\">\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [optionsOnly]=\"true\"\n [inputOptions]=\"valueOptions\"\n [inputOptionsInitSelected]=\"item[valueAttributeName]\"\n (optionChanged)=\"valueOptionChanged($event, index)\"\n [(ngModel)]=\"item[valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(item, $event)\">\n </input-text>\n </ng-container>\n <ng-template #valueTextItem>\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [(ngModel)]=\"item[valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(item, $event)\">\n </input-text>\n </ng-template>\n <button class=\"delete-button\" (click)=\"removeItem(index)\" [matTooltip]=\"removeLabel\" type=\"button\">\n <i class=\"far fa-trash-alt fa-lg\"></i>\n </button>\n</div>\n<div class=\"key-value-item\" *ngIf=\"!blockNewItem\">\n <input-text\n class=\"input-key\"\n [size]=\"size\"\n [label]=\"keyLabel\"\n [inputOptions]=\"inputOptions\"\n [inputOptionsInitSelected]=\"inputOptionsDefaultSelected\"\n [widthPercentageInputOptions]=\"inputOptionsWidthPercentage\"\n (input)=\"onKeyPressedTemporaryKeyFn()\"\n (optionChanged)=\"temporaryItemOptionChanged($event)\"\n [(ngModel)]=\"temporaryItem[this.keyAttributeName]\"\n (onDropEvent)=\"onKeyDropTemporaryItem(temporaryItem, $event)\">\n </input-text>\n <ng-container *ngIf=\"valueOptions?.length; else valueTextTemp\">\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [optionsOnly]=\"true\"\n [inputOptions]=\"valueOptions\"\n [inputOptionsInitSelected]=\"temporaryItem[this.valueAttributeName]\"\n (optionChanged)=\"temporaryValueOptionChanged($event)\"\n [(ngModel)]=\"temporaryItem[this.valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(temporaryItem, $event)\">\n </input-text>\n </ng-container>\n <ng-template #valueTextTemp>\n <input-text\n class=\"input-value\"\n [size]=\"size\"\n [label]=\"valueLabel\"\n [(ngModel)]=\"temporaryItem[this.valueAttributeName]\"\n (onDropEvent)=\"onValueDrop(temporaryItem, $event)\">\n </input-text>\n </ng-template>\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;color:var(--color-fonts-tertiary);border:none!important;background:none!important}\n"] }]
|
|
2274
2290
|
}], propDecorators: { componentId: [{
|
|
2275
2291
|
type: Input
|
|
2276
2292
|
}], items: [{
|
|
@@ -2293,6 +2309,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
|
|
|
2293
2309
|
type: Input
|
|
2294
2310
|
}], inputOptions: [{
|
|
2295
2311
|
type: Input
|
|
2312
|
+
}], valueOptions: [{
|
|
2313
|
+
type: Input
|
|
2296
2314
|
}], blockNewItem: [{
|
|
2297
2315
|
type: Input
|
|
2298
2316
|
}], blockEditLabel: [{
|