primekit 0.0.82 → 0.0.83
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.
|
@@ -59,7 +59,6 @@ export class AtomixSearchDropdownComponent {
|
|
|
59
59
|
onSearchInput(event) {
|
|
60
60
|
const input = event.target;
|
|
61
61
|
this.searchValue = input.value;
|
|
62
|
-
this.searchValueChange.emit(this.searchValue);
|
|
63
62
|
}
|
|
64
63
|
onSearchEnter() {
|
|
65
64
|
this.searchValueChange.emit(this.searchValue);
|
|
@@ -78,11 +77,11 @@ export class AtomixSearchDropdownComponent {
|
|
|
78
77
|
this.searchInputEl?.nativeElement?.focus();
|
|
79
78
|
}
|
|
80
79
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AtomixSearchDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
81
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AtomixSearchDropdownComponent, selector: "atomix-search-dropdown", inputs: { searchValue: "searchValue", searchPlaceholder: "searchPlaceholder", searchType: "searchType", searchDisabled: "searchDisabled", searchLabel: "searchLabel", searchIsLabelRequired: "searchIsLabelRequired", searchClass: "searchClass", searchIsCrossRequired: "searchIsCrossRequired", searchName: "searchName", dropdownOptions: "dropdownOptions", dropdownSelected: "dropdownSelected", dropdownPlaceholder: "dropdownPlaceholder", dropdownOptionLabel: "dropdownOptionLabel", dropdownOptionValue: "dropdownOptionValue", dropdownDisabled: "dropdownDisabled", dropdownShowClear: "dropdownShowClear", dropdownFilter: "dropdownFilter", dropdownLabel: "dropdownLabel", dropdownIsLabelRequired: "dropdownIsLabelRequired", dropdownStyleClass: "dropdownStyleClass", dropdownName: "dropdownName", label: "label", isLabelRequired: "isLabelRequired", containerClass: "containerClass" }, outputs: { searchValueChange: "searchValueChange", dropdownValueChange: "dropdownValueChange", dropdownFilterChange: "dropdownFilterChange" }, viewQueries: [{ propertyName: "searchInputEl", first: true, predicate: ["searchInputEl"], descendants: true }], ngImport: i0, template: "<label *ngIf=\"label\" for=\"searchName\">\n {{ label }}\n <span *ngIf=\"isLabelRequired\" class=\"lib-error-asterisk\">*</span>\n</label>\n\n<div [ngClass]=\"containerClass\">\n <div class=\"search-dropdown-container\">\n <input\n [id]=\"searchName\"\n type=\"text\"\n pInputText\n [value]=\"searchValue\"\n [attr.placeholder]=\"searchPlaceholder\"\n (keydown.enter)=\"onSearchEnter()\"\n [ngClass]=\"searchClass + ' lib-input-field'\"\n autocomplete=\"new-password\"\n [disabled]=\"searchDisabled\"\n [type]=\"searchType\"\n #searchInputEl\n class=\"search-input\"\n />\n <span>\n \n <i\n class=\"pi pi-times filter-dropdown-icon\"\n style=\"cursor: pointer\"\n (click)=\"clearSearchValue()\"\n *ngIf=\"searchIsCrossRequired && searchValue !== ''\"\n ></i>\n </span>\n </div>\n\n <p-dropdown\n [options]=\"dropdownOptions\"\n [(ngModel)]=\"dropdownSelected\"\n (onChange)=\"onDropdownChange($event)\"\n [name]=\"dropdownName\"\n [optionValue]=\"dropdownOptionValue\"\n [optionLabel]=\"dropdownOptionLabel\"\n [showClear]=\"dropdownShowClear\"\n [filter]=\"dropdownFilter\"\n [filterBy]=\"dropdownOptionLabel\"\n appendTo=\"body\"\n [disabled]=\"dropdownDisabled\"\n [styleClass]=\"dropdownStyleClass\"\n (onFilter)=\"onDropdownFilter($event)\"\n [placeholder]=\"dropdownPlaceholder\"\n class=\"search-dropdown\"\n >\n <ng-template let-option pTemplate=\"item\">\n <div class=\"custom-item\">\n <i\n [ngClass]=\"option.dropdownIcon\"\n class=\"dropdown-logo\"\n *ngIf=\"option.dropdownIcon\"\n ></i>\n <img\n [alt]=\"option.dropdownImage\"\n [src]=\"option.dropdownImage\"\n *ngIf=\"option.dropdownImage\"\n class=\"dropdown-image\"\n />\n\n <span>{{ option[dropdownOptionLabel] }}</span>\n </div>\n </ng-template>\n </p-dropdown>\n</div>", styles: ["input[type=search]::-webkit-search-cancel-button{display:none}input[type=search]::-moz-search-cancel-button{display:none}input[type=search]::-ms-clear{display:none}.lib-error-asterisk{color:red}.billing-input-column-container{display:flex}.filter-dropdown-icon{position:absolute;top:50%;transform:translateY(-50%);z-index:1;cursor:pointer;color:#6c757d;right:10px}.search-dropdown{border-top-left-radius:0!important;border-bottom-left-radius:0!important;width:max-content!important}.search-input{margin-top:0!important;border-right:none!important;padding-right:30px}.search-dropdown-container{position:relative;flex:1}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i3.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "component", type: i4.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "autoShowPanelOnPrintableCharacterKeyDown", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
80
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AtomixSearchDropdownComponent, selector: "atomix-search-dropdown", inputs: { searchValue: "searchValue", searchPlaceholder: "searchPlaceholder", searchType: "searchType", searchDisabled: "searchDisabled", searchLabel: "searchLabel", searchIsLabelRequired: "searchIsLabelRequired", searchClass: "searchClass", searchIsCrossRequired: "searchIsCrossRequired", searchName: "searchName", dropdownOptions: "dropdownOptions", dropdownSelected: "dropdownSelected", dropdownPlaceholder: "dropdownPlaceholder", dropdownOptionLabel: "dropdownOptionLabel", dropdownOptionValue: "dropdownOptionValue", dropdownDisabled: "dropdownDisabled", dropdownShowClear: "dropdownShowClear", dropdownFilter: "dropdownFilter", dropdownLabel: "dropdownLabel", dropdownIsLabelRequired: "dropdownIsLabelRequired", dropdownStyleClass: "dropdownStyleClass", dropdownName: "dropdownName", label: "label", isLabelRequired: "isLabelRequired", containerClass: "containerClass" }, outputs: { searchValueChange: "searchValueChange", dropdownValueChange: "dropdownValueChange", dropdownFilterChange: "dropdownFilterChange" }, viewQueries: [{ propertyName: "searchInputEl", first: true, predicate: ["searchInputEl"], descendants: true }], ngImport: i0, template: "<label *ngIf=\"label\" for=\"searchName\">\n {{ label }}\n <span *ngIf=\"isLabelRequired\" class=\"lib-error-asterisk\">*</span>\n</label>\n\n<div [ngClass]=\"containerClass\">\n <div class=\"search-dropdown-container\">\n <input\n [id]=\"searchName\"\n type=\"text\"\n pInputText\n [value]=\"searchValue\"\n [attr.placeholder]=\"searchPlaceholder\"\n (input)=\"onSearchInput($event)\"\n (keydown.enter)=\"onSearchEnter()\"\n [ngClass]=\"searchClass + ' lib-input-field'\"\n autocomplete=\"new-password\"\n [disabled]=\"searchDisabled\"\n [type]=\"searchType\"\n #searchInputEl\n class=\"search-input\"\n />\n <span>\n \n <i\n class=\"pi pi-times filter-dropdown-icon\"\n style=\"cursor: pointer\"\n (click)=\"clearSearchValue()\"\n *ngIf=\"searchIsCrossRequired && searchValue !== ''\"\n ></i>\n </span>\n </div>\n\n <p-dropdown\n [options]=\"dropdownOptions\"\n [(ngModel)]=\"dropdownSelected\"\n (onChange)=\"onDropdownChange($event)\"\n [name]=\"dropdownName\"\n [optionValue]=\"dropdownOptionValue\"\n [optionLabel]=\"dropdownOptionLabel\"\n [showClear]=\"dropdownShowClear\"\n [filter]=\"dropdownFilter\"\n [filterBy]=\"dropdownOptionLabel\"\n appendTo=\"body\"\n [disabled]=\"dropdownDisabled\"\n [styleClass]=\"dropdownStyleClass\"\n (onFilter)=\"onDropdownFilter($event)\"\n [placeholder]=\"dropdownPlaceholder\"\n class=\"search-dropdown\"\n >\n <ng-template let-option pTemplate=\"item\">\n <div class=\"custom-item\">\n <i\n [ngClass]=\"option.dropdownIcon\"\n class=\"dropdown-logo\"\n *ngIf=\"option.dropdownIcon\"\n ></i>\n <img\n [alt]=\"option.dropdownImage\"\n [src]=\"option.dropdownImage\"\n *ngIf=\"option.dropdownImage\"\n class=\"dropdown-image\"\n />\n\n <span>{{ option[dropdownOptionLabel] }}</span>\n </div>\n </ng-template>\n </p-dropdown>\n</div>", styles: ["input[type=search]::-webkit-search-cancel-button{display:none}input[type=search]::-moz-search-cancel-button{display:none}input[type=search]::-ms-clear{display:none}.lib-error-asterisk{color:red}.billing-input-column-container{display:flex}.filter-dropdown-icon{position:absolute;top:50%;transform:translateY(-50%);z-index:1;cursor:pointer;color:#6c757d;right:10px}.search-dropdown{border-top-left-radius:0!important;border-bottom-left-radius:0!important;width:max-content!important}.search-input{margin-top:0!important;border-right:none!important;padding-right:30px}.search-dropdown-container{position:relative;flex:1}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i3.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "component", type: i4.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "autoShowPanelOnPrintableCharacterKeyDown", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
82
81
|
}
|
|
83
82
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AtomixSearchDropdownComponent, decorators: [{
|
|
84
83
|
type: Component,
|
|
85
|
-
args: [{ selector: 'atomix-search-dropdown', template: "<label *ngIf=\"label\" for=\"searchName\">\n {{ label }}\n <span *ngIf=\"isLabelRequired\" class=\"lib-error-asterisk\">*</span>\n</label>\n\n<div [ngClass]=\"containerClass\">\n <div class=\"search-dropdown-container\">\n <input\n [id]=\"searchName\"\n type=\"text\"\n pInputText\n [value]=\"searchValue\"\n [attr.placeholder]=\"searchPlaceholder\"\n (keydown.enter)=\"onSearchEnter()\"\n [ngClass]=\"searchClass + ' lib-input-field'\"\n autocomplete=\"new-password\"\n [disabled]=\"searchDisabled\"\n [type]=\"searchType\"\n #searchInputEl\n class=\"search-input\"\n />\n <span>\n \n <i\n class=\"pi pi-times filter-dropdown-icon\"\n style=\"cursor: pointer\"\n (click)=\"clearSearchValue()\"\n *ngIf=\"searchIsCrossRequired && searchValue !== ''\"\n ></i>\n </span>\n </div>\n\n <p-dropdown\n [options]=\"dropdownOptions\"\n [(ngModel)]=\"dropdownSelected\"\n (onChange)=\"onDropdownChange($event)\"\n [name]=\"dropdownName\"\n [optionValue]=\"dropdownOptionValue\"\n [optionLabel]=\"dropdownOptionLabel\"\n [showClear]=\"dropdownShowClear\"\n [filter]=\"dropdownFilter\"\n [filterBy]=\"dropdownOptionLabel\"\n appendTo=\"body\"\n [disabled]=\"dropdownDisabled\"\n [styleClass]=\"dropdownStyleClass\"\n (onFilter)=\"onDropdownFilter($event)\"\n [placeholder]=\"dropdownPlaceholder\"\n class=\"search-dropdown\"\n >\n <ng-template let-option pTemplate=\"item\">\n <div class=\"custom-item\">\n <i\n [ngClass]=\"option.dropdownIcon\"\n class=\"dropdown-logo\"\n *ngIf=\"option.dropdownIcon\"\n ></i>\n <img\n [alt]=\"option.dropdownImage\"\n [src]=\"option.dropdownImage\"\n *ngIf=\"option.dropdownImage\"\n class=\"dropdown-image\"\n />\n\n <span>{{ option[dropdownOptionLabel] }}</span>\n </div>\n </ng-template>\n </p-dropdown>\n</div>", styles: ["input[type=search]::-webkit-search-cancel-button{display:none}input[type=search]::-moz-search-cancel-button{display:none}input[type=search]::-ms-clear{display:none}.lib-error-asterisk{color:red}.billing-input-column-container{display:flex}.filter-dropdown-icon{position:absolute;top:50%;transform:translateY(-50%);z-index:1;cursor:pointer;color:#6c757d;right:10px}.search-dropdown{border-top-left-radius:0!important;border-bottom-left-radius:0!important;width:max-content!important}.search-input{margin-top:0!important;border-right:none!important;padding-right:30px}.search-dropdown-container{position:relative;flex:1}\n"] }]
|
|
84
|
+
args: [{ selector: 'atomix-search-dropdown', template: "<label *ngIf=\"label\" for=\"searchName\">\n {{ label }}\n <span *ngIf=\"isLabelRequired\" class=\"lib-error-asterisk\">*</span>\n</label>\n\n<div [ngClass]=\"containerClass\">\n <div class=\"search-dropdown-container\">\n <input\n [id]=\"searchName\"\n type=\"text\"\n pInputText\n [value]=\"searchValue\"\n [attr.placeholder]=\"searchPlaceholder\"\n (input)=\"onSearchInput($event)\"\n (keydown.enter)=\"onSearchEnter()\"\n [ngClass]=\"searchClass + ' lib-input-field'\"\n autocomplete=\"new-password\"\n [disabled]=\"searchDisabled\"\n [type]=\"searchType\"\n #searchInputEl\n class=\"search-input\"\n />\n <span>\n \n <i\n class=\"pi pi-times filter-dropdown-icon\"\n style=\"cursor: pointer\"\n (click)=\"clearSearchValue()\"\n *ngIf=\"searchIsCrossRequired && searchValue !== ''\"\n ></i>\n </span>\n </div>\n\n <p-dropdown\n [options]=\"dropdownOptions\"\n [(ngModel)]=\"dropdownSelected\"\n (onChange)=\"onDropdownChange($event)\"\n [name]=\"dropdownName\"\n [optionValue]=\"dropdownOptionValue\"\n [optionLabel]=\"dropdownOptionLabel\"\n [showClear]=\"dropdownShowClear\"\n [filter]=\"dropdownFilter\"\n [filterBy]=\"dropdownOptionLabel\"\n appendTo=\"body\"\n [disabled]=\"dropdownDisabled\"\n [styleClass]=\"dropdownStyleClass\"\n (onFilter)=\"onDropdownFilter($event)\"\n [placeholder]=\"dropdownPlaceholder\"\n class=\"search-dropdown\"\n >\n <ng-template let-option pTemplate=\"item\">\n <div class=\"custom-item\">\n <i\n [ngClass]=\"option.dropdownIcon\"\n class=\"dropdown-logo\"\n *ngIf=\"option.dropdownIcon\"\n ></i>\n <img\n [alt]=\"option.dropdownImage\"\n [src]=\"option.dropdownImage\"\n *ngIf=\"option.dropdownImage\"\n class=\"dropdown-image\"\n />\n\n <span>{{ option[dropdownOptionLabel] }}</span>\n </div>\n </ng-template>\n </p-dropdown>\n</div>", styles: ["input[type=search]::-webkit-search-cancel-button{display:none}input[type=search]::-moz-search-cancel-button{display:none}input[type=search]::-ms-clear{display:none}.lib-error-asterisk{color:red}.billing-input-column-container{display:flex}.filter-dropdown-icon{position:absolute;top:50%;transform:translateY(-50%);z-index:1;cursor:pointer;color:#6c757d;right:10px}.search-dropdown{border-top-left-radius:0!important;border-bottom-left-radius:0!important;width:max-content!important}.search-input{margin-top:0!important;border-right:none!important;padding-right:30px}.search-dropdown-container{position:relative;flex:1}\n"] }]
|
|
86
85
|
}], ctorParameters: () => [], propDecorators: { searchInputEl: [{
|
|
87
86
|
type: ViewChild,
|
|
88
87
|
args: ['searchInputEl']
|
|
@@ -141,4 +140,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
141
140
|
}], dropdownFilterChange: [{
|
|
142
141
|
type: Output
|
|
143
142
|
}] } });
|
|
144
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRvbWl4LXNlYXJjaC1kcm9wZG93bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmltZWtpdC9zcmMvbGliL2xpYi9hdG9taXgtc2VhcmNoLWRyb3Bkb3duL2F0b21peC1zZWFyY2gtZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJpbWVraXQvc3JjL2xpYi9saWIvYXRvbWl4LXNlYXJjaC1kcm9wZG93bi9hdG9taXgtc2VhcmNoLWRyb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQWMsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTlGLE9BQU8sRUFDTCxZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLE9BQU8sRUFDUCxZQUFZLEdBQ2IsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7QUFPZCxNQUFNLE9BQU8sNkJBQTZCO0lBQ1osYUFBYSxDQUFnQztJQUVoRSxXQUFXLEdBQVcsRUFBRSxDQUFDO0lBQ3pCLGlCQUFpQixHQUFXLFFBQVEsQ0FBQztJQUNyQyxVQUFVLEdBQVcsUUFBUSxDQUFDO0lBQzlCLGNBQWMsR0FBWSxLQUFLLENBQUM7SUFDaEMsV0FBVyxHQUFXLEVBQUUsQ0FBQztJQUN6QixxQkFBcUIsR0FBWSxLQUFLLENBQUM7SUFDdkMsV0FBVyxHQUFXLEVBQUUsQ0FBQztJQUN6QixxQkFBcUIsR0FBWSxJQUFJLENBQUM7SUFDdEMsVUFBVSxHQUFXLEVBQUUsQ0FBQztJQUV4QixlQUFlLEdBQVUsRUFBRSxDQUFDO0lBQzVCLGdCQUFnQixDQUFNO0lBQ3RCLG1CQUFtQixHQUFXLFFBQVEsQ0FBQztJQUN2QyxtQkFBbUIsR0FBVyxTQUFTLENBQUM7SUFDeEMsbUJBQW1CLEdBQVcsRUFBRSxDQUFDO0lBQ2pD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Q0csVUFBVTtzQkFBbEIsS0FBSztnQkFFRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBQ0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyx1QkFBdUI7c0JBQS9CLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRUcsY0FBYztzQkFBdEIsS0FBSztnQkFFSSxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csbUJBQW1CO3NCQUE1QixNQUFNO2dCQUNHLG9CQUFvQjtzQkFBN0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBFbGVtZW50UmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERyb3Bkb3duRmlsdGVyRXZlbnQgfSBmcm9tICdwcmltZW5nL2Ryb3Bkb3duJztcbmltcG9ydCB7XG4gIGRlYm91bmNlVGltZSxcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIFN1YmplY3QsXG4gIFN1YnNjcmlwdGlvbixcbn0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F0b21peC1zZWFyY2gtZHJvcGRvd24nLFxuICB0ZW1wbGF0ZVVybDogJy4vYXRvbWl4LXNlYXJjaC1kcm9wZG93bi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2F0b21peC1zZWFyY2gtZHJvcGRvd24uY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBBdG9taXhTZWFyY2hEcm9wZG93bkNvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoJ3NlYXJjaElucHV0RWwnKSBzZWFyY2hJbnB1dEVsITogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICBASW5wdXQoKSBzZWFyY2hWYWx1ZTogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIHNlYXJjaFBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnU2VhcmNoJztcbiAgQElucHV0KCkgc2VhcmNoVHlwZTogc3RyaW5nID0gJ3NlYXJjaCc7XG4gIEBJbnB1dCgpIHNlYXJjaERpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNlYXJjaExhYmVsOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgc2VhcmNoSXNMYWJlbFJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNlYXJjaENsYXNzOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgc2VhcmNoSXNDcm9zc1JlcXVpcmVkOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgc2VhcmNoTmFtZTogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KCkgZHJvcGRvd25PcHRpb25zOiBhbnlbXSA9IFtdO1xuICBASW5wdXQoKSBkcm9wZG93blNlbGVjdGVkOiBhbnk7XG4gIEBJbnB1dCgpIGRyb3Bkb3duUGxhY2Vob2xkZXI6IHN0cmluZyA9ICdDb2x1bW4nO1xuICBASW5wdXQoKSBkcm9wZG93bk9wdGlvbkxhYmVsOiBzdHJpbmcgPSAnZGlzcGxheSc7XG4gIEBJbnB1dCgpIGRyb3Bkb3duT3B0aW9uVmFsdWU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBkcm9wZG93bkRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGRyb3Bkb3duU2hvd0NsZWFyOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgZHJvcGRvd25GaWx0ZXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgZHJvcGRvd25MYWJlbDogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGRyb3Bkb3duSXNMYWJlbFJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGRyb3Bkb3duU3R5bGVDbGFzczogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGRyb3Bkb3duTmFtZTogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBpc0xhYmVsUmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKSBjb250YWluZXJDbGFzczogc3RyaW5nID0gJ2JpbGxpbmctaW5wdXQtY29sdW1uLWNvbnRhaW5lciBzZWFyY2gtZmlsdGVyLWNvbnRhaW5lcic7XG5cbiAgQE91dHB1dCgpIHNlYXJjaFZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKSBkcm9wZG93blZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSBkcm9wZG93bkZpbHRlckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RHJvcGRvd25GaWx0ZXJFdmVudD4oKTtcblxuICAvKipcbiAgICogVGhlIGlucHV0IGZyb20gdGhlIHVzZXIgdXNlZCB0byBzZWFyY2ggZHJvcGRvd24gbGlzdFxuICAgKi9cbiAgZHJvcGRvd25GaWx0ZXJWYWx1ZSA9IG5ldyBTdWJqZWN0PERyb3Bkb3duRmlsdGVyRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFRoZSB0aW1lIGluIG1zIHRoYXQgaXQgdGFrZXMgdG8gcmVnaXN0ZXIgd2hlbiB1c2VyIGlzIGRvbmUgdHlwaW5nXG4gICAqL1xuICBkZWJvdW5jZVRpbWUgPSAzMDA7XG5cbiAgLyoqXG4gICAqIFRoZSB0cmlnZ2VyIHRoYXQgdXNlcyB0aGUgZGVib3VuY2UgdGltZSB0byBjcmVhdGUgZGVsYXkgb2Ygd2hlbiB1c2VyIHR5cGVzIHRvIGFjdHVhbCBmaWx0ZXJpbmdcbiAgICovXG4gIGRyb3Bkb3duRmlsdGVyVHJpZ2dlciA9IHRoaXMuZHJvcGRvd25GaWx0ZXJWYWx1ZS5waXBlKFxuICAgIGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlVGltZSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICApO1xuXG4gIC8qKlxuICAgKiBTdWJzY3JpcHRpb24gdG8gdHJpZ2dlclxuICAgKi9cbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKFxuICAgICAgdGhpcy5kcm9wZG93bkZpbHRlclRyaWdnZXIuc3Vic2NyaWJlKCgkZXZlbnQpID0+IHtcbiAgICAgICAgdGhpcy5kcm9wZG93bkZpbHRlckNoYW5nZS5lbWl0KCRldmVudCk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBvblNlYXJjaElucHV0KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGlucHV0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgdGhpcy5zZWFyY2hWYWx1ZSA9IGlucHV0LnZhbHVlO1xuICAgIHRoaXMuc2VhcmNoVmFsdWVDaGFuZ2UuZW1pdCh0aGlzLnNlYXJjaFZhbHVlKTtcbiAgfVxuXG4gIG9uU2VhcmNoRW50ZXIoKTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2hWYWx1ZUNoYW5nZS5lbWl0KHRoaXMuc2VhcmNoVmFsdWUpO1xuICB9XG5cbiAgY2xlYXJTZWFyY2hWYWx1ZSgpOiB2b2lkIHtcbiAgICB0aGlzLnNlYXJjaFZhbHVlID0gJyc7XG4gICAgdGhpcy5zZWFyY2hWYWx1ZUNoYW5nZS5lbWl0KHRoaXMuc2VhcmNoVmFsdWUpO1xuICB9XG5cbiAgb25Ecm9wZG93bkNoYW5nZShldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5kcm9wZG93blZhbHVlQ2hhbmdlLmVtaXQoW2V2ZW50LnZhbHVlLCB0aGlzLmRyb3Bkb3duTmFtZV0pO1xuICB9XG5cbiAgb25Ecm9wZG93bkZpbHRlcihldmVudDogRHJvcGRvd25GaWx0ZXJFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuZHJvcGRvd25GaWx0ZXJWYWx1ZS5uZXh0KGV2ZW50KTtcbiAgfVxuXG4gIGZvY3VzU2VhcmNoKCk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoSW5wdXRFbD8ubmF0aXZlRWxlbWVudD8uZm9jdXMoKTtcbiAgfVxufSIsIjxsYWJlbCAqbmdJZj1cImxhYmVsXCIgZm9yPVwic2VhcmNoTmFtZVwiPlxuICB7eyBsYWJlbCB9fVxuICA8c3BhbiAqbmdJZj1cImlzTGFiZWxSZXF1aXJlZFwiIGNsYXNzPVwibGliLWVycm9yLWFzdGVyaXNrXCI+Kjwvc3Bhbj5cbjwvbGFiZWw+XG5cbjxkaXYgW25nQ2xhc3NdPVwiY29udGFpbmVyQ2xhc3NcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLWRyb3Bkb3duLWNvbnRhaW5lclwiPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICBbaWRdPVwic2VhcmNoTmFtZVwiXG4gICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgIHBJbnB1dFRleHRcbiAgICAgICAgICBbdmFsdWVdPVwic2VhcmNoVmFsdWVcIlxuICAgICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInNlYXJjaFBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAoa2V5ZG93bi5lbnRlcik9XCJvblNlYXJjaEVudGVyKClcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cInNlYXJjaENsYXNzICsgJyBsaWItaW5wdXQtZmllbGQnXCJcbiAgICAgICAgICBhdXRvY29tcGxldGU9XCJuZXctcGFzc3dvcmRcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCJzZWFyY2hEaXNhYmxlZFwiXG4gICAgICAgICAgW3R5cGVdPVwic2VhcmNoVHlwZVwiXG4gICAgICAgICAgI3NlYXJjaElucHV0RWxcbiAgICAgICAgICBjbGFzcz1cInNlYXJjaC1pbnB1dFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxzcGFuPlxuICAgICAgXG4gICAgICAgICAgICA8aVxuICAgICAgICAgICAgICBjbGFzcz1cInBpIHBpLXRpbWVzIGZpbHRlci1kcm9wZG93bi1pY29uXCJcbiAgICAgICAgICAgICAgc3R5bGU9XCJjdXJzb3I6IHBvaW50ZXJcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiY2xlYXJTZWFyY2hWYWx1ZSgpXCJcbiAgICAgICAgICAgICAgKm5nSWY9XCJzZWFyY2hJc0Nyb3NzUmVxdWlyZWQgJiYgc2VhcmNoVmFsdWUgIT09ICcnXCJcbiAgICAgICAgICAgID48L2k+XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cblxuICA8cC1kcm9wZG93blxuICAgIFtvcHRpb25zXT1cImRyb3Bkb3duT3B0aW9uc1wiXG4gICAgWyhuZ01vZGVsKV09XCJkcm9wZG93blNlbGVjdGVkXCJcbiAgICAob25DaGFuZ2UpPVwib25Ecm9wZG93bkNoYW5nZSgkZXZlbnQpXCJcbiAgICBbbmFtZV09XCJkcm9wZG93bk5hbWVcIlxuICAgIFtvcHRpb25WYWx1ZV09XCJkcm9wZG93bk9wdGlvblZhbHVlXCJcbiAgICBbb3B0aW9uTGFiZWxdPVwiZHJvcGRvd25PcHRpb25MYWJlbFwiXG4gICAgW3Nob3dDbGVhcl09XCJkcm9wZG93blNob3dDbGVhclwiXG4gICAgW2ZpbHRlcl09XCJkcm9wZG93bkZpbHRlclwiXG4gICAgW2ZpbHRlckJ5XT1cImRyb3Bkb3duT3B0aW9uTGFiZWxcIlxuICAgIGFwcGVuZFRvPVwiYm9keVwiXG4gICAgW2Rpc2FibGVkXT1cImRyb3Bkb3duRGlzYWJsZWRcIlxuICAgIFtzdHlsZUNsYXNzXT1cImRyb3Bkb3duU3R5bGVDbGFzc1wiXG4gICAgKG9uRmlsdGVyKT1cIm9uRHJvcGRvd25GaWx0ZXIoJGV2ZW50KVwiXG4gICAgW3BsYWNlaG9sZGVyXT1cImRyb3Bkb3duUGxhY2Vob2xkZXJcIlxuICAgIGNsYXNzPVwic2VhcmNoLWRyb3Bkb3duXCJcbiAgPlxuICAgIDxuZy10ZW1wbGF0ZSBsZXQtb3B0aW9uIHBUZW1wbGF0ZT1cIml0ZW1cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjdXN0b20taXRlbVwiPlxuICAgICAgICA8aVxuICAgICAgICAgIFtuZ0NsYXNzXT1cIm9wdGlvbi5kcm9wZG93bkljb25cIlxuICAgICAgICAgIGNsYXNzPVwiZHJvcGRvd24tbG9nb1wiXG4gICAgICAgICAgKm5nSWY9XCJvcHRpb24uZHJvcGRvd25JY29uXCJcbiAgICAgICAgPjwvaT5cbiAgICAgICAgPGltZ1xuICAgICAgICAgIFthbHRdPVwib3B0aW9uLmRyb3Bkb3duSW1hZ2VcIlxuICAgICAgICAgIFtzcmNdPVwib3B0aW9uLmRyb3Bkb3duSW1hZ2VcIlxuICAgICAgICAgICpuZ0lmPVwib3B0aW9uLmRyb3Bkb3duSW1hZ2VcIlxuICAgICAgICAgIGNsYXNzPVwiZHJvcGRvd24taW1hZ2VcIlxuICAgICAgICAvPlxuXG4gICAgICAgIDxzcGFuPnt7IG9wdGlvbltkcm9wZG93bk9wdGlvbkxhYmVsXSB9fTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvcC1kcm9wZG93bj5cbjwvZGl2PiJdfQ==
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXRvbWl4LXNlYXJjaC1kcm9wZG93bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcmltZWtpdC9zcmMvbGliL2xpYi9hdG9taXgtc2VhcmNoLWRyb3Bkb3duL2F0b21peC1zZWFyY2gtZHJvcGRvd24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJpbWVraXQvc3JjL2xpYi9saWIvYXRvbWl4LXNlYXJjaC1kcm9wZG93bi9hdG9taXgtc2VhcmNoLWRyb3Bkb3duLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQWMsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTlGLE9BQU8sRUFDTCxZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLE9BQU8sRUFDUCxZQUFZLEdBQ2IsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7QUFPZCxNQUFNLE9BQU8sNkJBQTZCO0lBQ1osYUFBYSxDQUFnQztJQUVoRSxXQUFXLEdBQVcsRUFBRSxDQUFDO0lBQ3pCLGlCQUFpQixHQUFXLFFBQVEsQ0FBQztJQUNyQyxVQUFVLEdBQVcsUUFBUSxDQUFDO0lBQzlCLGNBQWMsR0FBWSxLQUFLLENBQUM7SUFDaEMsV0FBVyxHQUFXLEVBQUUsQ0FBQztJQUN6QixxQkFBcUIsR0FBWSxLQUFLLENBQUM7SUFDdkMsV0FBVyxHQUFXLEVBQUUsQ0FBQztJQUN6QixxQkFBcUIsR0FBWSxJQUFJLENBQUM7SUFDdEMsVUFBVSxHQUFXLEVBQUUsQ0FBQztJQUV4QixlQUFlLEdBQVUsRUFBRSxDQUFDO0lBQzVCLGdCQUFnQixDQUFNO0lBQ3RCLG1CQUFtQixHQUFXLFFBQVEsQ0FBQztJQUN2QyxtQkFBbUIsR0FBVyxTQUFTLENBQUM7SUFDeEMsbUJBQW1CLEdBQVcsRUFBRSxDQUFDO0lBQ2pD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S0FBSztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBQ0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUNHLG1CQUFtQjtzQkFBM0IsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyx1QkFBdUI7c0JBQS9CLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRUcsS0FBSztzQkFBYixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRUcsY0FBYztzQkFBdEIsS0FBSztnQkFFSSxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csbUJBQW1CO3NCQUE1QixNQUFNO2dCQUNHLG9CQUFvQjtzQkFBN0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBFbGVtZW50UmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERyb3Bkb3duRmlsdGVyRXZlbnQgfSBmcm9tICdwcmltZW5nL2Ryb3Bkb3duJztcbmltcG9ydCB7XG4gIGRlYm91bmNlVGltZSxcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIFN1YmplY3QsXG4gIFN1YnNjcmlwdGlvbixcbn0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F0b21peC1zZWFyY2gtZHJvcGRvd24nLFxuICB0ZW1wbGF0ZVVybDogJy4vYXRvbWl4LXNlYXJjaC1kcm9wZG93bi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2F0b21peC1zZWFyY2gtZHJvcGRvd24uY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBBdG9taXhTZWFyY2hEcm9wZG93bkNvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoJ3NlYXJjaElucHV0RWwnKSBzZWFyY2hJbnB1dEVsITogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICBASW5wdXQoKSBzZWFyY2hWYWx1ZTogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIHNlYXJjaFBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnU2VhcmNoJztcbiAgQElucHV0KCkgc2VhcmNoVHlwZTogc3RyaW5nID0gJ3NlYXJjaCc7XG4gIEBJbnB1dCgpIHNlYXJjaERpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNlYXJjaExhYmVsOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgc2VhcmNoSXNMYWJlbFJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNlYXJjaENsYXNzOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgc2VhcmNoSXNDcm9zc1JlcXVpcmVkOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgc2VhcmNoTmFtZTogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KCkgZHJvcGRvd25PcHRpb25zOiBhbnlbXSA9IFtdO1xuICBASW5wdXQoKSBkcm9wZG93blNlbGVjdGVkOiBhbnk7XG4gIEBJbnB1dCgpIGRyb3Bkb3duUGxhY2Vob2xkZXI6IHN0cmluZyA9ICdDb2x1bW4nO1xuICBASW5wdXQoKSBkcm9wZG93bk9wdGlvbkxhYmVsOiBzdHJpbmcgPSAnZGlzcGxheSc7XG4gIEBJbnB1dCgpIGRyb3Bkb3duT3B0aW9uVmFsdWU6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBkcm9wZG93bkRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGRyb3Bkb3duU2hvd0NsZWFyOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgZHJvcGRvd25GaWx0ZXI6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgZHJvcGRvd25MYWJlbDogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGRyb3Bkb3duSXNMYWJlbFJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGRyb3Bkb3duU3R5bGVDbGFzczogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGRyb3Bkb3duTmFtZTogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBpc0xhYmVsUmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKSBjb250YWluZXJDbGFzczogc3RyaW5nID0gJ2JpbGxpbmctaW5wdXQtY29sdW1uLWNvbnRhaW5lciBzZWFyY2gtZmlsdGVyLWNvbnRhaW5lcic7XG5cbiAgQE91dHB1dCgpIHNlYXJjaFZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG4gIEBPdXRwdXQoKSBkcm9wZG93blZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSBkcm9wZG93bkZpbHRlckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RHJvcGRvd25GaWx0ZXJFdmVudD4oKTtcblxuICAvKipcbiAgICogVGhlIGlucHV0IGZyb20gdGhlIHVzZXIgdXNlZCB0byBzZWFyY2ggZHJvcGRvd24gbGlzdFxuICAgKi9cbiAgZHJvcGRvd25GaWx0ZXJWYWx1ZSA9IG5ldyBTdWJqZWN0PERyb3Bkb3duRmlsdGVyRXZlbnQ+KCk7XG5cbiAgLyoqXG4gICAqIFRoZSB0aW1lIGluIG1zIHRoYXQgaXQgdGFrZXMgdG8gcmVnaXN0ZXIgd2hlbiB1c2VyIGlzIGRvbmUgdHlwaW5nXG4gICAqL1xuICBkZWJvdW5jZVRpbWUgPSAzMDA7XG5cbiAgLyoqXG4gICAqIFRoZSB0cmlnZ2VyIHRoYXQgdXNlcyB0aGUgZGVib3VuY2UgdGltZSB0byBjcmVhdGUgZGVsYXkgb2Ygd2hlbiB1c2VyIHR5cGVzIHRvIGFjdHVhbCBmaWx0ZXJpbmdcbiAgICovXG4gIGRyb3Bkb3duRmlsdGVyVHJpZ2dlciA9IHRoaXMuZHJvcGRvd25GaWx0ZXJWYWx1ZS5waXBlKFxuICAgIGRlYm91bmNlVGltZSh0aGlzLmRlYm91bmNlVGltZSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICApO1xuXG4gIC8qKlxuICAgKiBTdWJzY3JpcHRpb24gdG8gdHJpZ2dlclxuICAgKi9cbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKFxuICAgICAgdGhpcy5kcm9wZG93bkZpbHRlclRyaWdnZXIuc3Vic2NyaWJlKCgkZXZlbnQpID0+IHtcbiAgICAgICAgdGhpcy5kcm9wZG93bkZpbHRlckNoYW5nZS5lbWl0KCRldmVudCk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBvblNlYXJjaElucHV0KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGlucHV0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgdGhpcy5zZWFyY2hWYWx1ZSA9IGlucHV0LnZhbHVlO1xuICB9XG5cbiAgb25TZWFyY2hFbnRlcigpOiB2b2lkIHtcbiAgICB0aGlzLnNlYXJjaFZhbHVlQ2hhbmdlLmVtaXQodGhpcy5zZWFyY2hWYWx1ZSk7XG4gIH1cblxuICBjbGVhclNlYXJjaFZhbHVlKCk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoVmFsdWUgPSAnJztcbiAgICB0aGlzLnNlYXJjaFZhbHVlQ2hhbmdlLmVtaXQodGhpcy5zZWFyY2hWYWx1ZSk7XG4gIH1cblxuICBvbkRyb3Bkb3duQ2hhbmdlKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmRyb3Bkb3duVmFsdWVDaGFuZ2UuZW1pdChbZXZlbnQudmFsdWUsIHRoaXMuZHJvcGRvd25OYW1lXSk7XG4gIH1cblxuICBvbkRyb3Bkb3duRmlsdGVyKGV2ZW50OiBEcm9wZG93bkZpbHRlckV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5kcm9wZG93bkZpbHRlclZhbHVlLm5leHQoZXZlbnQpO1xuICB9XG5cbiAgZm9jdXNTZWFyY2goKTogdm9pZCB7XG4gICAgdGhpcy5zZWFyY2hJbnB1dEVsPy5uYXRpdmVFbGVtZW50Py5mb2N1cygpO1xuICB9XG59IiwiPGxhYmVsICpuZ0lmPVwibGFiZWxcIiBmb3I9XCJzZWFyY2hOYW1lXCI+XG4gIHt7IGxhYmVsIH19XG4gIDxzcGFuICpuZ0lmPVwiaXNMYWJlbFJlcXVpcmVkXCIgY2xhc3M9XCJsaWItZXJyb3ItYXN0ZXJpc2tcIj4qPC9zcGFuPlxuPC9sYWJlbD5cblxuPGRpdiBbbmdDbGFzc109XCJjb250YWluZXJDbGFzc1wiPlxuICAgIDxkaXYgY2xhc3M9XCJzZWFyY2gtZHJvcGRvd24tY29udGFpbmVyXCI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIFtpZF09XCJzZWFyY2hOYW1lXCJcbiAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgcElucHV0VGV4dFxuICAgICAgICAgIFt2YWx1ZV09XCJzZWFyY2hWYWx1ZVwiXG4gICAgICAgICAgW2F0dHIucGxhY2Vob2xkZXJdPVwic2VhcmNoUGxhY2Vob2xkZXJcIlxuICAgICAgICAgIChpbnB1dCk9XCJvblNlYXJjaElucHV0KCRldmVudClcIlxuICAgICAgICAgIChrZXlkb3duLmVudGVyKT1cIm9uU2VhcmNoRW50ZXIoKVwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwic2VhcmNoQ2xhc3MgKyAnIGxpYi1pbnB1dC1maWVsZCdcIlxuICAgICAgICAgIGF1dG9jb21wbGV0ZT1cIm5ldy1wYXNzd29yZFwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cInNlYXJjaERpc2FibGVkXCJcbiAgICAgICAgICBbdHlwZV09XCJzZWFyY2hUeXBlXCJcbiAgICAgICAgICAjc2VhcmNoSW5wdXRFbFxuICAgICAgICAgIGNsYXNzPVwic2VhcmNoLWlucHV0XCJcbiAgICAgICAgLz5cbiAgICAgICAgPHNwYW4+XG4gICAgICBcbiAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgIGNsYXNzPVwicGkgcGktdGltZXMgZmlsdGVyLWRyb3Bkb3duLWljb25cIlxuICAgICAgICAgICAgICBzdHlsZT1cImN1cnNvcjogcG9pbnRlclwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJjbGVhclNlYXJjaFZhbHVlKClcIlxuICAgICAgICAgICAgICAqbmdJZj1cInNlYXJjaElzQ3Jvc3NSZXF1aXJlZCAmJiBzZWFyY2hWYWx1ZSAhPT0gJydcIlxuICAgICAgICAgICAgPjwvaT5cbiAgICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuXG4gIDxwLWRyb3Bkb3duXG4gICAgW29wdGlvbnNdPVwiZHJvcGRvd25PcHRpb25zXCJcbiAgICBbKG5nTW9kZWwpXT1cImRyb3Bkb3duU2VsZWN0ZWRcIlxuICAgIChvbkNoYW5nZSk9XCJvbkRyb3Bkb3duQ2hhbmdlKCRldmVudClcIlxuICAgIFtuYW1lXT1cImRyb3Bkb3duTmFtZVwiXG4gICAgW29wdGlvblZhbHVlXT1cImRyb3Bkb3duT3B0aW9uVmFsdWVcIlxuICAgIFtvcHRpb25MYWJlbF09XCJkcm9wZG93bk9wdGlvbkxhYmVsXCJcbiAgICBbc2hvd0NsZWFyXT1cImRyb3Bkb3duU2hvd0NsZWFyXCJcbiAgICBbZmlsdGVyXT1cImRyb3Bkb3duRmlsdGVyXCJcbiAgICBbZmlsdGVyQnldPVwiZHJvcGRvd25PcHRpb25MYWJlbFwiXG4gICAgYXBwZW5kVG89XCJib2R5XCJcbiAgICBbZGlzYWJsZWRdPVwiZHJvcGRvd25EaXNhYmxlZFwiXG4gICAgW3N0eWxlQ2xhc3NdPVwiZHJvcGRvd25TdHlsZUNsYXNzXCJcbiAgICAob25GaWx0ZXIpPVwib25Ecm9wZG93bkZpbHRlcigkZXZlbnQpXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwiZHJvcGRvd25QbGFjZWhvbGRlclwiXG4gICAgY2xhc3M9XCJzZWFyY2gtZHJvcGRvd25cIlxuICA+XG4gICAgPG5nLXRlbXBsYXRlIGxldC1vcHRpb24gcFRlbXBsYXRlPVwiaXRlbVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImN1c3RvbS1pdGVtXCI+XG4gICAgICAgIDxpXG4gICAgICAgICAgW25nQ2xhc3NdPVwib3B0aW9uLmRyb3Bkb3duSWNvblwiXG4gICAgICAgICAgY2xhc3M9XCJkcm9wZG93bi1sb2dvXCJcbiAgICAgICAgICAqbmdJZj1cIm9wdGlvbi5kcm9wZG93bkljb25cIlxuICAgICAgICA+PC9pPlxuICAgICAgICA8aW1nXG4gICAgICAgICAgW2FsdF09XCJvcHRpb24uZHJvcGRvd25JbWFnZVwiXG4gICAgICAgICAgW3NyY109XCJvcHRpb24uZHJvcGRvd25JbWFnZVwiXG4gICAgICAgICAgKm5nSWY9XCJvcHRpb24uZHJvcGRvd25JbWFnZVwiXG4gICAgICAgICAgY2xhc3M9XCJkcm9wZG93bi1pbWFnZVwiXG4gICAgICAgIC8+XG5cbiAgICAgICAgPHNwYW4+e3sgb3B0aW9uW2Ryb3Bkb3duT3B0aW9uTGFiZWxdIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9wLWRyb3Bkb3duPlxuPC9kaXY+Il19
|
package/fesm2022/primekit.mjs
CHANGED
|
@@ -2332,7 +2332,6 @@ class AtomixSearchDropdownComponent {
|
|
|
2332
2332
|
onSearchInput(event) {
|
|
2333
2333
|
const input = event.target;
|
|
2334
2334
|
this.searchValue = input.value;
|
|
2335
|
-
this.searchValueChange.emit(this.searchValue);
|
|
2336
2335
|
}
|
|
2337
2336
|
onSearchEnter() {
|
|
2338
2337
|
this.searchValueChange.emit(this.searchValue);
|
|
@@ -2351,11 +2350,11 @@ class AtomixSearchDropdownComponent {
|
|
|
2351
2350
|
this.searchInputEl?.nativeElement?.focus();
|
|
2352
2351
|
}
|
|
2353
2352
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AtomixSearchDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2354
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AtomixSearchDropdownComponent, selector: "atomix-search-dropdown", inputs: { searchValue: "searchValue", searchPlaceholder: "searchPlaceholder", searchType: "searchType", searchDisabled: "searchDisabled", searchLabel: "searchLabel", searchIsLabelRequired: "searchIsLabelRequired", searchClass: "searchClass", searchIsCrossRequired: "searchIsCrossRequired", searchName: "searchName", dropdownOptions: "dropdownOptions", dropdownSelected: "dropdownSelected", dropdownPlaceholder: "dropdownPlaceholder", dropdownOptionLabel: "dropdownOptionLabel", dropdownOptionValue: "dropdownOptionValue", dropdownDisabled: "dropdownDisabled", dropdownShowClear: "dropdownShowClear", dropdownFilter: "dropdownFilter", dropdownLabel: "dropdownLabel", dropdownIsLabelRequired: "dropdownIsLabelRequired", dropdownStyleClass: "dropdownStyleClass", dropdownName: "dropdownName", label: "label", isLabelRequired: "isLabelRequired", containerClass: "containerClass" }, outputs: { searchValueChange: "searchValueChange", dropdownValueChange: "dropdownValueChange", dropdownFilterChange: "dropdownFilterChange" }, viewQueries: [{ propertyName: "searchInputEl", first: true, predicate: ["searchInputEl"], descendants: true }], ngImport: i0, template: "<label *ngIf=\"label\" for=\"searchName\">\n {{ label }}\n <span *ngIf=\"isLabelRequired\" class=\"lib-error-asterisk\">*</span>\n</label>\n\n<div [ngClass]=\"containerClass\">\n <div class=\"search-dropdown-container\">\n <input\n [id]=\"searchName\"\n type=\"text\"\n pInputText\n [value]=\"searchValue\"\n [attr.placeholder]=\"searchPlaceholder\"\n (keydown.enter)=\"onSearchEnter()\"\n [ngClass]=\"searchClass + ' lib-input-field'\"\n autocomplete=\"new-password\"\n [disabled]=\"searchDisabled\"\n [type]=\"searchType\"\n #searchInputEl\n class=\"search-input\"\n />\n <span>\n \n <i\n class=\"pi pi-times filter-dropdown-icon\"\n style=\"cursor: pointer\"\n (click)=\"clearSearchValue()\"\n *ngIf=\"searchIsCrossRequired && searchValue !== ''\"\n ></i>\n </span>\n </div>\n\n <p-dropdown\n [options]=\"dropdownOptions\"\n [(ngModel)]=\"dropdownSelected\"\n (onChange)=\"onDropdownChange($event)\"\n [name]=\"dropdownName\"\n [optionValue]=\"dropdownOptionValue\"\n [optionLabel]=\"dropdownOptionLabel\"\n [showClear]=\"dropdownShowClear\"\n [filter]=\"dropdownFilter\"\n [filterBy]=\"dropdownOptionLabel\"\n appendTo=\"body\"\n [disabled]=\"dropdownDisabled\"\n [styleClass]=\"dropdownStyleClass\"\n (onFilter)=\"onDropdownFilter($event)\"\n [placeholder]=\"dropdownPlaceholder\"\n class=\"search-dropdown\"\n >\n <ng-template let-option pTemplate=\"item\">\n <div class=\"custom-item\">\n <i\n [ngClass]=\"option.dropdownIcon\"\n class=\"dropdown-logo\"\n *ngIf=\"option.dropdownIcon\"\n ></i>\n <img\n [alt]=\"option.dropdownImage\"\n [src]=\"option.dropdownImage\"\n *ngIf=\"option.dropdownImage\"\n class=\"dropdown-image\"\n />\n\n <span>{{ option[dropdownOptionLabel] }}</span>\n </div>\n </ng-template>\n </p-dropdown>\n</div>", styles: ["input[type=search]::-webkit-search-cancel-button{display:none}input[type=search]::-moz-search-cancel-button{display:none}input[type=search]::-ms-clear{display:none}.lib-error-asterisk{color:red}.billing-input-column-container{display:flex}.filter-dropdown-icon{position:absolute;top:50%;transform:translateY(-50%);z-index:1;cursor:pointer;color:#6c757d;right:10px}.search-dropdown{border-top-left-radius:0!important;border-bottom-left-radius:0!important;width:max-content!important}.search-input{margin-top:0!important;border-right:none!important;padding-right:30px}.search-dropdown-container{position:relative;flex:1}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i2$1.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "component", type: i2$3.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "autoShowPanelOnPrintableCharacterKeyDown", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
2353
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AtomixSearchDropdownComponent, selector: "atomix-search-dropdown", inputs: { searchValue: "searchValue", searchPlaceholder: "searchPlaceholder", searchType: "searchType", searchDisabled: "searchDisabled", searchLabel: "searchLabel", searchIsLabelRequired: "searchIsLabelRequired", searchClass: "searchClass", searchIsCrossRequired: "searchIsCrossRequired", searchName: "searchName", dropdownOptions: "dropdownOptions", dropdownSelected: "dropdownSelected", dropdownPlaceholder: "dropdownPlaceholder", dropdownOptionLabel: "dropdownOptionLabel", dropdownOptionValue: "dropdownOptionValue", dropdownDisabled: "dropdownDisabled", dropdownShowClear: "dropdownShowClear", dropdownFilter: "dropdownFilter", dropdownLabel: "dropdownLabel", dropdownIsLabelRequired: "dropdownIsLabelRequired", dropdownStyleClass: "dropdownStyleClass", dropdownName: "dropdownName", label: "label", isLabelRequired: "isLabelRequired", containerClass: "containerClass" }, outputs: { searchValueChange: "searchValueChange", dropdownValueChange: "dropdownValueChange", dropdownFilterChange: "dropdownFilterChange" }, viewQueries: [{ propertyName: "searchInputEl", first: true, predicate: ["searchInputEl"], descendants: true }], ngImport: i0, template: "<label *ngIf=\"label\" for=\"searchName\">\n {{ label }}\n <span *ngIf=\"isLabelRequired\" class=\"lib-error-asterisk\">*</span>\n</label>\n\n<div [ngClass]=\"containerClass\">\n <div class=\"search-dropdown-container\">\n <input\n [id]=\"searchName\"\n type=\"text\"\n pInputText\n [value]=\"searchValue\"\n [attr.placeholder]=\"searchPlaceholder\"\n (input)=\"onSearchInput($event)\"\n (keydown.enter)=\"onSearchEnter()\"\n [ngClass]=\"searchClass + ' lib-input-field'\"\n autocomplete=\"new-password\"\n [disabled]=\"searchDisabled\"\n [type]=\"searchType\"\n #searchInputEl\n class=\"search-input\"\n />\n <span>\n \n <i\n class=\"pi pi-times filter-dropdown-icon\"\n style=\"cursor: pointer\"\n (click)=\"clearSearchValue()\"\n *ngIf=\"searchIsCrossRequired && searchValue !== ''\"\n ></i>\n </span>\n </div>\n\n <p-dropdown\n [options]=\"dropdownOptions\"\n [(ngModel)]=\"dropdownSelected\"\n (onChange)=\"onDropdownChange($event)\"\n [name]=\"dropdownName\"\n [optionValue]=\"dropdownOptionValue\"\n [optionLabel]=\"dropdownOptionLabel\"\n [showClear]=\"dropdownShowClear\"\n [filter]=\"dropdownFilter\"\n [filterBy]=\"dropdownOptionLabel\"\n appendTo=\"body\"\n [disabled]=\"dropdownDisabled\"\n [styleClass]=\"dropdownStyleClass\"\n (onFilter)=\"onDropdownFilter($event)\"\n [placeholder]=\"dropdownPlaceholder\"\n class=\"search-dropdown\"\n >\n <ng-template let-option pTemplate=\"item\">\n <div class=\"custom-item\">\n <i\n [ngClass]=\"option.dropdownIcon\"\n class=\"dropdown-logo\"\n *ngIf=\"option.dropdownIcon\"\n ></i>\n <img\n [alt]=\"option.dropdownImage\"\n [src]=\"option.dropdownImage\"\n *ngIf=\"option.dropdownImage\"\n class=\"dropdown-image\"\n />\n\n <span>{{ option[dropdownOptionLabel] }}</span>\n </div>\n </ng-template>\n </p-dropdown>\n</div>", styles: ["input[type=search]::-webkit-search-cancel-button{display:none}input[type=search]::-moz-search-cancel-button{display:none}input[type=search]::-ms-clear{display:none}.lib-error-asterisk{color:red}.billing-input-column-container{display:flex}.filter-dropdown-icon{position:absolute;top:50%;transform:translateY(-50%);z-index:1;cursor:pointer;color:#6c757d;right:10px}.search-dropdown{border-top-left-radius:0!important;border-bottom-left-radius:0!important;width:max-content!important}.search-input{margin-top:0!important;border-right:none!important;padding-right:30px}.search-dropdown-container{position:relative;flex:1}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i2$1.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "component", type: i2$3.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "autoShowPanelOnPrintableCharacterKeyDown", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "directive", type: i2$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
2355
2354
|
}
|
|
2356
2355
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AtomixSearchDropdownComponent, decorators: [{
|
|
2357
2356
|
type: Component,
|
|
2358
|
-
args: [{ selector: 'atomix-search-dropdown', template: "<label *ngIf=\"label\" for=\"searchName\">\n {{ label }}\n <span *ngIf=\"isLabelRequired\" class=\"lib-error-asterisk\">*</span>\n</label>\n\n<div [ngClass]=\"containerClass\">\n <div class=\"search-dropdown-container\">\n <input\n [id]=\"searchName\"\n type=\"text\"\n pInputText\n [value]=\"searchValue\"\n [attr.placeholder]=\"searchPlaceholder\"\n (keydown.enter)=\"onSearchEnter()\"\n [ngClass]=\"searchClass + ' lib-input-field'\"\n autocomplete=\"new-password\"\n [disabled]=\"searchDisabled\"\n [type]=\"searchType\"\n #searchInputEl\n class=\"search-input\"\n />\n <span>\n \n <i\n class=\"pi pi-times filter-dropdown-icon\"\n style=\"cursor: pointer\"\n (click)=\"clearSearchValue()\"\n *ngIf=\"searchIsCrossRequired && searchValue !== ''\"\n ></i>\n </span>\n </div>\n\n <p-dropdown\n [options]=\"dropdownOptions\"\n [(ngModel)]=\"dropdownSelected\"\n (onChange)=\"onDropdownChange($event)\"\n [name]=\"dropdownName\"\n [optionValue]=\"dropdownOptionValue\"\n [optionLabel]=\"dropdownOptionLabel\"\n [showClear]=\"dropdownShowClear\"\n [filter]=\"dropdownFilter\"\n [filterBy]=\"dropdownOptionLabel\"\n appendTo=\"body\"\n [disabled]=\"dropdownDisabled\"\n [styleClass]=\"dropdownStyleClass\"\n (onFilter)=\"onDropdownFilter($event)\"\n [placeholder]=\"dropdownPlaceholder\"\n class=\"search-dropdown\"\n >\n <ng-template let-option pTemplate=\"item\">\n <div class=\"custom-item\">\n <i\n [ngClass]=\"option.dropdownIcon\"\n class=\"dropdown-logo\"\n *ngIf=\"option.dropdownIcon\"\n ></i>\n <img\n [alt]=\"option.dropdownImage\"\n [src]=\"option.dropdownImage\"\n *ngIf=\"option.dropdownImage\"\n class=\"dropdown-image\"\n />\n\n <span>{{ option[dropdownOptionLabel] }}</span>\n </div>\n </ng-template>\n </p-dropdown>\n</div>", styles: ["input[type=search]::-webkit-search-cancel-button{display:none}input[type=search]::-moz-search-cancel-button{display:none}input[type=search]::-ms-clear{display:none}.lib-error-asterisk{color:red}.billing-input-column-container{display:flex}.filter-dropdown-icon{position:absolute;top:50%;transform:translateY(-50%);z-index:1;cursor:pointer;color:#6c757d;right:10px}.search-dropdown{border-top-left-radius:0!important;border-bottom-left-radius:0!important;width:max-content!important}.search-input{margin-top:0!important;border-right:none!important;padding-right:30px}.search-dropdown-container{position:relative;flex:1}\n"] }]
|
|
2357
|
+
args: [{ selector: 'atomix-search-dropdown', template: "<label *ngIf=\"label\" for=\"searchName\">\n {{ label }}\n <span *ngIf=\"isLabelRequired\" class=\"lib-error-asterisk\">*</span>\n</label>\n\n<div [ngClass]=\"containerClass\">\n <div class=\"search-dropdown-container\">\n <input\n [id]=\"searchName\"\n type=\"text\"\n pInputText\n [value]=\"searchValue\"\n [attr.placeholder]=\"searchPlaceholder\"\n (input)=\"onSearchInput($event)\"\n (keydown.enter)=\"onSearchEnter()\"\n [ngClass]=\"searchClass + ' lib-input-field'\"\n autocomplete=\"new-password\"\n [disabled]=\"searchDisabled\"\n [type]=\"searchType\"\n #searchInputEl\n class=\"search-input\"\n />\n <span>\n \n <i\n class=\"pi pi-times filter-dropdown-icon\"\n style=\"cursor: pointer\"\n (click)=\"clearSearchValue()\"\n *ngIf=\"searchIsCrossRequired && searchValue !== ''\"\n ></i>\n </span>\n </div>\n\n <p-dropdown\n [options]=\"dropdownOptions\"\n [(ngModel)]=\"dropdownSelected\"\n (onChange)=\"onDropdownChange($event)\"\n [name]=\"dropdownName\"\n [optionValue]=\"dropdownOptionValue\"\n [optionLabel]=\"dropdownOptionLabel\"\n [showClear]=\"dropdownShowClear\"\n [filter]=\"dropdownFilter\"\n [filterBy]=\"dropdownOptionLabel\"\n appendTo=\"body\"\n [disabled]=\"dropdownDisabled\"\n [styleClass]=\"dropdownStyleClass\"\n (onFilter)=\"onDropdownFilter($event)\"\n [placeholder]=\"dropdownPlaceholder\"\n class=\"search-dropdown\"\n >\n <ng-template let-option pTemplate=\"item\">\n <div class=\"custom-item\">\n <i\n [ngClass]=\"option.dropdownIcon\"\n class=\"dropdown-logo\"\n *ngIf=\"option.dropdownIcon\"\n ></i>\n <img\n [alt]=\"option.dropdownImage\"\n [src]=\"option.dropdownImage\"\n *ngIf=\"option.dropdownImage\"\n class=\"dropdown-image\"\n />\n\n <span>{{ option[dropdownOptionLabel] }}</span>\n </div>\n </ng-template>\n </p-dropdown>\n</div>", styles: ["input[type=search]::-webkit-search-cancel-button{display:none}input[type=search]::-moz-search-cancel-button{display:none}input[type=search]::-ms-clear{display:none}.lib-error-asterisk{color:red}.billing-input-column-container{display:flex}.filter-dropdown-icon{position:absolute;top:50%;transform:translateY(-50%);z-index:1;cursor:pointer;color:#6c757d;right:10px}.search-dropdown{border-top-left-radius:0!important;border-bottom-left-radius:0!important;width:max-content!important}.search-input{margin-top:0!important;border-right:none!important;padding-right:30px}.search-dropdown-container{position:relative;flex:1}\n"] }]
|
|
2359
2358
|
}], ctorParameters: () => [], propDecorators: { searchInputEl: [{
|
|
2360
2359
|
type: ViewChild,
|
|
2361
2360
|
args: ['searchInputEl']
|