nexheal-lib 0.0.68 → 0.0.70
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/fesm2022/nexheal-lib.mjs +11 -76
- package/fesm2022/nexheal-lib.mjs.map +1 -1
- package/index.d.ts +1 -10
- package/package.json +1 -1
package/fesm2022/nexheal-lib.mjs
CHANGED
|
@@ -3061,7 +3061,6 @@ class PaginatedAutocompleteControl {
|
|
|
3061
3061
|
required = false;
|
|
3062
3062
|
placeholder = "";
|
|
3063
3063
|
customClass = '';
|
|
3064
|
-
showSearchIcon = true;
|
|
3065
3064
|
clearVal = true;
|
|
3066
3065
|
error = false;
|
|
3067
3066
|
errorMessage = "";
|
|
@@ -3074,8 +3073,6 @@ class PaginatedAutocompleteControl {
|
|
|
3074
3073
|
paginationType = 'scroll';
|
|
3075
3074
|
pageSize = 10;
|
|
3076
3075
|
searchDebounce = 300;
|
|
3077
|
-
/** Min trimmed characters before page-1 search / pageChange (0 = no minimum). Empty search always allowed. */
|
|
3078
|
-
minSearchLength = 0;
|
|
3079
3076
|
/** Re-fetch page 1 every time the dropdown opens, instead of reusing cached results */
|
|
3080
3077
|
refreshOnOpen = false;
|
|
3081
3078
|
/** Total record count for the current search, from the API response */
|
|
@@ -3130,15 +3127,12 @@ class PaginatedAutocompleteControl {
|
|
|
3130
3127
|
this._disabled = value;
|
|
3131
3128
|
if (this.inputControl) {
|
|
3132
3129
|
if (value) {
|
|
3133
|
-
this.inputControl.disable(
|
|
3130
|
+
this.inputControl.disable();
|
|
3134
3131
|
}
|
|
3135
3132
|
else {
|
|
3136
|
-
this.inputControl.enable(
|
|
3133
|
+
this.inputControl.enable();
|
|
3137
3134
|
}
|
|
3138
3135
|
}
|
|
3139
|
-
if (value) {
|
|
3140
|
-
this.onControlDisabled();
|
|
3141
|
-
}
|
|
3142
3136
|
}
|
|
3143
3137
|
pageChange = new EventEmitter();
|
|
3144
3138
|
optionSelected = new EventEmitter();
|
|
@@ -3180,10 +3174,6 @@ class PaginatedAutocompleteControl {
|
|
|
3180
3174
|
get pageRangeEnd() {
|
|
3181
3175
|
return Math.min((this.currentPage - 1) * this.pageSize + this._displayedOptions.length, this.totalCount);
|
|
3182
3176
|
}
|
|
3183
|
-
/** Disabled via @Input or reactive forms (ControlValueAccessor). */
|
|
3184
|
-
get controlDisabled() {
|
|
3185
|
-
return this._disabled || this.inputControl.disabled;
|
|
3186
|
-
}
|
|
3187
3177
|
constructor() { }
|
|
3188
3178
|
ngOnInit() {
|
|
3189
3179
|
this.inputControl.markAsPristine();
|
|
@@ -3195,7 +3185,7 @@ class PaginatedAutocompleteControl {
|
|
|
3195
3185
|
// A selection happened after this keystroke — drop the search
|
|
3196
3186
|
if (this.cancelPendingSearch)
|
|
3197
3187
|
return;
|
|
3198
|
-
if (this.readonly ||
|
|
3188
|
+
if (this.readonly || !this.hasFocus)
|
|
3199
3189
|
return;
|
|
3200
3190
|
this.loadPage(1, value);
|
|
3201
3191
|
}));
|
|
@@ -3244,51 +3234,15 @@ class PaginatedAutocompleteControl {
|
|
|
3244
3234
|
this.onTouched = fn;
|
|
3245
3235
|
}
|
|
3246
3236
|
setDisabledState(isDisabled) {
|
|
3247
|
-
this._disabled = isDisabled;
|
|
3248
3237
|
if (isDisabled) {
|
|
3249
|
-
this.inputControl.disable(
|
|
3250
|
-
this.onControlDisabled();
|
|
3238
|
+
this.inputControl.disable();
|
|
3251
3239
|
}
|
|
3252
3240
|
else {
|
|
3253
|
-
this.inputControl.enable(
|
|
3241
|
+
this.inputControl.enable();
|
|
3254
3242
|
}
|
|
3255
3243
|
}
|
|
3256
|
-
onControlDisabled() {
|
|
3257
|
-
this.isPageLoading = false;
|
|
3258
|
-
this.isDropdownOpen = false;
|
|
3259
|
-
this.hasFocus = false;
|
|
3260
|
-
}
|
|
3261
3244
|
// paging
|
|
3262
|
-
isSearchAllowed(search) {
|
|
3263
|
-
if (this.minSearchLength <= 0) {
|
|
3264
|
-
return true;
|
|
3265
|
-
}
|
|
3266
|
-
const trimmed = search.trim();
|
|
3267
|
-
if (trimmed.length === 0) {
|
|
3268
|
-
return true;
|
|
3269
|
-
}
|
|
3270
|
-
return trimmed.length >= this.minSearchLength;
|
|
3271
|
-
}
|
|
3272
|
-
handleSearchBelowMinLength() {
|
|
3273
|
-
this.isPageLoading = false;
|
|
3274
|
-
this.isDropdownOpen = false;
|
|
3275
|
-
this.loadErrorMessage = null;
|
|
3276
|
-
this.failedPage = null;
|
|
3277
|
-
this._displayedOptions = [];
|
|
3278
|
-
this.currentPage = 1;
|
|
3279
|
-
this._pendingPage = 1;
|
|
3280
|
-
this.pageCache.clear();
|
|
3281
|
-
this.highlightedIndex = null;
|
|
3282
|
-
}
|
|
3283
3245
|
loadPage(page, search) {
|
|
3284
|
-
if (this.readonly || this.controlDisabled) {
|
|
3285
|
-
this.isPageLoading = false;
|
|
3286
|
-
return;
|
|
3287
|
-
}
|
|
3288
|
-
if (page === 1 && !this.isSearchAllowed(search)) {
|
|
3289
|
-
this.handleSearchBelowMinLength();
|
|
3290
|
-
return;
|
|
3291
|
-
}
|
|
3292
3246
|
this.currentPage = page;
|
|
3293
3247
|
this._pendingPage = page;
|
|
3294
3248
|
if (page === 1) {
|
|
@@ -3404,7 +3358,7 @@ class PaginatedAutocompleteControl {
|
|
|
3404
3358
|
}
|
|
3405
3359
|
// events
|
|
3406
3360
|
onUserType(event) {
|
|
3407
|
-
if (this.readonly
|
|
3361
|
+
if (this.readonly)
|
|
3408
3362
|
return;
|
|
3409
3363
|
// A real keystroke re-arms searching after any selection cancelled it
|
|
3410
3364
|
this.cancelPendingSearch = false;
|
|
@@ -3412,28 +3366,17 @@ class PaginatedAutocompleteControl {
|
|
|
3412
3366
|
}
|
|
3413
3367
|
onFocus() {
|
|
3414
3368
|
this.hasFocus = true;
|
|
3415
|
-
if (this.readonly || this.
|
|
3369
|
+
if (this.readonly || this.isDropdownOpen)
|
|
3416
3370
|
return;
|
|
3417
3371
|
this.openWithSearch();
|
|
3418
3372
|
}
|
|
3419
3373
|
onInputClick() {
|
|
3420
|
-
if (this.readonly || this.
|
|
3374
|
+
if (this.readonly || this.isDropdownOpen)
|
|
3421
3375
|
return;
|
|
3422
3376
|
if (this.hasFocus) {
|
|
3423
3377
|
this.openWithSearch();
|
|
3424
3378
|
}
|
|
3425
3379
|
}
|
|
3426
|
-
onSearchIconClick(event) {
|
|
3427
|
-
event.preventDefault();
|
|
3428
|
-
event.stopPropagation();
|
|
3429
|
-
if (this.readonly || this.controlDisabled) {
|
|
3430
|
-
return;
|
|
3431
|
-
}
|
|
3432
|
-
this.cancelPendingSearch = false;
|
|
3433
|
-
this.hasFocus = true;
|
|
3434
|
-
this.inputElement?.nativeElement.focus();
|
|
3435
|
-
this.loadPage(1, this.openSearchTerm());
|
|
3436
|
-
}
|
|
3437
3380
|
/** Text to search with when the dropdown opens: if the input just holds the
|
|
3438
3381
|
* selected item's display text, open with the full list instead. */
|
|
3439
3382
|
openSearchTerm() {
|
|
@@ -3445,15 +3388,11 @@ class PaginatedAutocompleteControl {
|
|
|
3445
3388
|
return value;
|
|
3446
3389
|
}
|
|
3447
3390
|
openWithSearch() {
|
|
3448
|
-
if (this.readonly || this.controlDisabled) {
|
|
3449
|
-
return;
|
|
3450
|
-
}
|
|
3451
3391
|
const term = this.openSearchTerm();
|
|
3452
3392
|
// Reuse cached results when reopening with the same search term
|
|
3453
3393
|
if (!this.refreshOnOpen &&
|
|
3454
3394
|
this.lastLoadedSearch === term &&
|
|
3455
3395
|
this._displayedOptions.length > 0) {
|
|
3456
|
-
this.isPageLoading = false;
|
|
3457
3396
|
this.openDropdown();
|
|
3458
3397
|
if (this.paginationType === 'arrow') {
|
|
3459
3398
|
this.showCachedPage(1);
|
|
@@ -3634,13 +3573,13 @@ class PaginatedAutocompleteControl {
|
|
|
3634
3573
|
}
|
|
3635
3574
|
}
|
|
3636
3575
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PaginatedAutocompleteControl, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3637
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: PaginatedAutocompleteControl, isStandalone: true, selector: "paginated-autocomplete-control", inputs: { title: "title", required: "required", placeholder: "placeholder", customClass: "customClass",
|
|
3576
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: PaginatedAutocompleteControl, isStandalone: true, selector: "paginated-autocomplete-control", inputs: { title: "title", required: "required", placeholder: "placeholder", customClass: "customClass", clearVal: "clearVal", error: "error", errorMessage: "errorMessage", autocomplete: "autocomplete", inputLoader: "inputLoader", readonly: "readonly", isAddNewItem: "isAddNewItem", optionDisplayProperty: "optionDisplayProperty", paginationType: "paginationType", pageSize: "pageSize", searchDebounce: "searchDebounce", refreshOnOpen: "refreshOnOpen", totalCount: "totalCount", options: "options", disabled: "disabled" }, outputs: { pageChange: "pageChange", optionSelected: "optionSelected", selectionCleared: "selectionCleared", blurEvent: "blurEvent", optionPatched: "optionPatched", addNewItemClicked: "addNewItemClicked" }, providers: [
|
|
3638
3577
|
{
|
|
3639
3578
|
provide: NG_VALUE_ACCESSOR,
|
|
3640
3579
|
useExisting: PaginatedAutocompleteControl,
|
|
3641
3580
|
multi: true,
|
|
3642
3581
|
},
|
|
3643
|
-
], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true }, { propertyName: "dropdownElement", first: true, predicate: ["dropdownElement"], descendants: true }], ngImport: i0, template: "<div class=\"form-group auto-complete
|
|
3582
|
+
], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true }, { propertyName: "dropdownElement", first: true, predicate: ["dropdownElement"], descendants: true }], ngImport: i0, template: "<div class=\"form-group auto-complete\" [ngClass]=\"customClass\" [class.readonly]=\"readonly\">\r\n @if (title) {\r\n <label class=\"inp-label\" [ngClass]=\"{ 'required': required }\">{{ title }}</label>\r\n }\r\n\r\n <input #inputElement type=\"text\" class=\"form-control\" [placeholder]=\"placeholder\" [formControl]=\"inputControl\"\r\n (input)=\"onUserType($event)\" (blur)=\"onBlur()\" (keydown)=\"onKeyDown($event)\" (focus)=\"onFocus()\" (click)=\"onInputClick()\"\r\n [ngClass]=\"{'is-invalid': error}\" [attr.autocomplete]=\"autocomplete || null\" [readonly]=\"readonly\" />\r\n\r\n <span class=\"focus-border\"></span>\r\n\r\n @if (!inputLoader && inputControl.value && clearVal && hasFocus) {\r\n <label class=\"clear\" (mousedown)=\"onOptionMouseDown()\" (click)=\"resetInput()\">\r\n <i class=\"he he-close\"></i>\r\n </label>\r\n }\r\n\r\n @if (true) {\r\n <div #dropdownElement class=\"option-list\" [class.fixed-height]=\"paginationType === 'arrow' && totalPages > 1\"\r\n (mousedown)=\"onOptionMouseDown()\" (scroll)=\"onListScroll($event)\">\r\n @if (options.length === 0 && !isPageLoading && !loadErrorMessage) {\r\n <div class=\"no-results\">\r\n <div>No results found</div>\r\n @if (isAddNewItem) {\r\n <div (click)=\"onAddNewItemClick()\" class=\"btn-new\">\r\n Add New Item\r\n </div>\r\n }\r\n </div>\r\n } @else {\r\n @for (suggestion of options; track suggestion.id; let i = $index) {\r\n <div class=\"list-item\" [ngClass]=\"{\r\n 'active': suggestion === selectedItems,\r\n 'highlighted': highlightedIndex === i\r\n }\" (click)=\"selectSuggestion(suggestion)\" (mouseover)=\"onMouseOver(i)\">\r\n {{ suggestion[optionDisplayProperty] }}\r\n </div>\r\n }\r\n\r\n @if (isPageLoading) {\r\n <div class=\"list-loading\">Loading...</div>\r\n }\r\n\r\n @if (loadErrorMessage) {\r\n <div class=\"load-error\" (click)=\"retryLoad($event)\">\r\n {{ loadErrorMessage }} \u00B7 <span class=\"retry\">Retry</span>\r\n </div>\r\n }\r\n\r\n @if (paginationType === 'click' && hasMore && !isPageLoading && !loadErrorMessage) {\r\n <div class=\"load-more\" (click)=\"onLoadMoreClick($event)\">\r\n Load more ({{ options.length }} of {{ totalCount }})\r\n </div>\r\n }\r\n\r\n @if (totalCount > 0 && options.length > 0 && !loadErrorMessage && !(paginationType === 'click' && hasMore)) {\r\n <div class=\"list-footer\" [class.pager-footer]=\"paginationType === 'arrow'\">\r\n @if (paginationType === 'arrow') {\r\n <span class=\"range\">{{ pageRangeStart }} - {{ pageRangeEnd }} of {{ totalCount }}</span>\r\n <span class=\"pager-nav\">\r\n <span class=\"pager-btn\" [class.disabled]=\"currentPage <= 1\" (click)=\"prevArrowPage()\">\r\n <i class=\"he he-chevron-left\"></i>\r\n </span>\r\n <span class=\"pager-btn\" [class.disabled]=\"currentPage >= totalPages\" (click)=\"nextArrowPage()\">\r\n <i class=\"he he-chevron-right\"></i>\r\n </span>\r\n </span>\r\n } @else {\r\n {{ options.length }} of {{ totalCount }}\r\n @if (hasMore && paginationType === 'scroll') {\r\n <span> \u00B7 scroll for more</span>\r\n }\r\n }\r\n </div>\r\n }\r\n }\r\n </div>\r\n }\r\n\r\n @if (inputLoader) {\r\n <label class=\"loader input-loader\"></label>\r\n }\r\n\r\n @if (error) {\r\n <div class=\"val-msg\">{{ errorMessage }}</div>\r\n }\r\n</div>\r\n", styles: [".form-group.auto-complete .form-control{padding-right:unset}.form-group.auto-complete .clear{right:7px}.form-group.auto-complete .option-list{max-height:220px;overflow-y:auto}.form-group.auto-complete .option-list.fixed-height{height:220px;display:flex;flex-direction:column}.form-group.auto-complete .option-list.fixed-height .list-item,.form-group.auto-complete .option-list.fixed-height .no-results,.form-group.auto-complete .option-list.fixed-height .list-loading,.form-group.auto-complete .option-list.fixed-height .load-error{flex-shrink:0}.form-group.auto-complete .option-list.fixed-height .list-footer{margin-top:auto}.form-group.auto-complete .option-list .no-results{padding:10px;color:#9b9b9b;text-align:center}.form-group.auto-complete .option-list .list-loading{padding:8px 10px;color:#9b9b9b;text-align:center;font-size:12px}.form-group.auto-complete .option-list .load-more{padding:8px 10px;text-align:center;cursor:pointer;color:#0d6efd;font-size:13px;border-top:1px solid #eee;-webkit-user-select:none;user-select:none}.form-group.auto-complete .option-list .load-more:hover{background-color:#f5f5f5}.form-group.auto-complete .option-list .load-error{padding:8px 10px;text-align:center;font-size:12px;color:#dc3545;cursor:pointer;border-top:1px solid #eee;-webkit-user-select:none;user-select:none}.form-group.auto-complete .option-list .load-error .retry{color:#0d6efd;text-decoration:underline}.form-group.auto-complete .option-list .load-error:hover{background-color:#f5f5f5}.form-group.auto-complete .option-list .list-footer{position:sticky;bottom:0;padding:4px 10px;text-align:center;font-size:11px;color:#9b9b9b;background-color:#fff;border-top:1px solid #eee;-webkit-user-select:none;user-select:none}.form-group.auto-complete .option-list .list-footer .pager-nav{display:inline-flex;align-items:center;gap:6px}.form-group.auto-complete .option-list .list-footer .range{color:#5f6368;font-size:12px}.form-group.auto-complete .option-list .list-footer .pager-btn{width:24px;height:24px;border-radius:4px;border:1px solid #dadce0;display:inline-flex;align-items:center;justify-content:center;line-height:1;cursor:pointer;background-color:#fff}.form-group.auto-complete .option-list .list-footer .pager-btn .he{font-size:13px;color:#2ba599;font-weight:600}.form-group.auto-complete .option-list .list-footer .pager-btn:hover{background-color:#f5f5f5}.form-group.auto-complete .option-list .list-footer .pager-btn.disabled{border-color:transparent;cursor:default;pointer-events:none}.form-group.auto-complete .option-list .list-footer .pager-btn.disabled .he{color:#ccc}.form-group.auto-complete .option-list .list-footer.pager-footer{display:flex;justify-content:space-between;align-items:center;padding:4px 8px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { 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.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
|
|
3644
3583
|
}
|
|
3645
3584
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: PaginatedAutocompleteControl, decorators: [{
|
|
3646
3585
|
type: Component,
|
|
@@ -3650,7 +3589,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImpo
|
|
|
3650
3589
|
useExisting: PaginatedAutocompleteControl,
|
|
3651
3590
|
multi: true,
|
|
3652
3591
|
},
|
|
3653
|
-
], template: "<div class=\"form-group auto-complete
|
|
3592
|
+
], template: "<div class=\"form-group auto-complete\" [ngClass]=\"customClass\" [class.readonly]=\"readonly\">\r\n @if (title) {\r\n <label class=\"inp-label\" [ngClass]=\"{ 'required': required }\">{{ title }}</label>\r\n }\r\n\r\n <input #inputElement type=\"text\" class=\"form-control\" [placeholder]=\"placeholder\" [formControl]=\"inputControl\"\r\n (input)=\"onUserType($event)\" (blur)=\"onBlur()\" (keydown)=\"onKeyDown($event)\" (focus)=\"onFocus()\" (click)=\"onInputClick()\"\r\n [ngClass]=\"{'is-invalid': error}\" [attr.autocomplete]=\"autocomplete || null\" [readonly]=\"readonly\" />\r\n\r\n <span class=\"focus-border\"></span>\r\n\r\n @if (!inputLoader && inputControl.value && clearVal && hasFocus) {\r\n <label class=\"clear\" (mousedown)=\"onOptionMouseDown()\" (click)=\"resetInput()\">\r\n <i class=\"he he-close\"></i>\r\n </label>\r\n }\r\n\r\n @if (true) {\r\n <div #dropdownElement class=\"option-list\" [class.fixed-height]=\"paginationType === 'arrow' && totalPages > 1\"\r\n (mousedown)=\"onOptionMouseDown()\" (scroll)=\"onListScroll($event)\">\r\n @if (options.length === 0 && !isPageLoading && !loadErrorMessage) {\r\n <div class=\"no-results\">\r\n <div>No results found</div>\r\n @if (isAddNewItem) {\r\n <div (click)=\"onAddNewItemClick()\" class=\"btn-new\">\r\n Add New Item\r\n </div>\r\n }\r\n </div>\r\n } @else {\r\n @for (suggestion of options; track suggestion.id; let i = $index) {\r\n <div class=\"list-item\" [ngClass]=\"{\r\n 'active': suggestion === selectedItems,\r\n 'highlighted': highlightedIndex === i\r\n }\" (click)=\"selectSuggestion(suggestion)\" (mouseover)=\"onMouseOver(i)\">\r\n {{ suggestion[optionDisplayProperty] }}\r\n </div>\r\n }\r\n\r\n @if (isPageLoading) {\r\n <div class=\"list-loading\">Loading...</div>\r\n }\r\n\r\n @if (loadErrorMessage) {\r\n <div class=\"load-error\" (click)=\"retryLoad($event)\">\r\n {{ loadErrorMessage }} \u00B7 <span class=\"retry\">Retry</span>\r\n </div>\r\n }\r\n\r\n @if (paginationType === 'click' && hasMore && !isPageLoading && !loadErrorMessage) {\r\n <div class=\"load-more\" (click)=\"onLoadMoreClick($event)\">\r\n Load more ({{ options.length }} of {{ totalCount }})\r\n </div>\r\n }\r\n\r\n @if (totalCount > 0 && options.length > 0 && !loadErrorMessage && !(paginationType === 'click' && hasMore)) {\r\n <div class=\"list-footer\" [class.pager-footer]=\"paginationType === 'arrow'\">\r\n @if (paginationType === 'arrow') {\r\n <span class=\"range\">{{ pageRangeStart }} - {{ pageRangeEnd }} of {{ totalCount }}</span>\r\n <span class=\"pager-nav\">\r\n <span class=\"pager-btn\" [class.disabled]=\"currentPage <= 1\" (click)=\"prevArrowPage()\">\r\n <i class=\"he he-chevron-left\"></i>\r\n </span>\r\n <span class=\"pager-btn\" [class.disabled]=\"currentPage >= totalPages\" (click)=\"nextArrowPage()\">\r\n <i class=\"he he-chevron-right\"></i>\r\n </span>\r\n </span>\r\n } @else {\r\n {{ options.length }} of {{ totalCount }}\r\n @if (hasMore && paginationType === 'scroll') {\r\n <span> \u00B7 scroll for more</span>\r\n }\r\n }\r\n </div>\r\n }\r\n }\r\n </div>\r\n }\r\n\r\n @if (inputLoader) {\r\n <label class=\"loader input-loader\"></label>\r\n }\r\n\r\n @if (error) {\r\n <div class=\"val-msg\">{{ errorMessage }}</div>\r\n }\r\n</div>\r\n", styles: [".form-group.auto-complete .form-control{padding-right:unset}.form-group.auto-complete .clear{right:7px}.form-group.auto-complete .option-list{max-height:220px;overflow-y:auto}.form-group.auto-complete .option-list.fixed-height{height:220px;display:flex;flex-direction:column}.form-group.auto-complete .option-list.fixed-height .list-item,.form-group.auto-complete .option-list.fixed-height .no-results,.form-group.auto-complete .option-list.fixed-height .list-loading,.form-group.auto-complete .option-list.fixed-height .load-error{flex-shrink:0}.form-group.auto-complete .option-list.fixed-height .list-footer{margin-top:auto}.form-group.auto-complete .option-list .no-results{padding:10px;color:#9b9b9b;text-align:center}.form-group.auto-complete .option-list .list-loading{padding:8px 10px;color:#9b9b9b;text-align:center;font-size:12px}.form-group.auto-complete .option-list .load-more{padding:8px 10px;text-align:center;cursor:pointer;color:#0d6efd;font-size:13px;border-top:1px solid #eee;-webkit-user-select:none;user-select:none}.form-group.auto-complete .option-list .load-more:hover{background-color:#f5f5f5}.form-group.auto-complete .option-list .load-error{padding:8px 10px;text-align:center;font-size:12px;color:#dc3545;cursor:pointer;border-top:1px solid #eee;-webkit-user-select:none;user-select:none}.form-group.auto-complete .option-list .load-error .retry{color:#0d6efd;text-decoration:underline}.form-group.auto-complete .option-list .load-error:hover{background-color:#f5f5f5}.form-group.auto-complete .option-list .list-footer{position:sticky;bottom:0;padding:4px 10px;text-align:center;font-size:11px;color:#9b9b9b;background-color:#fff;border-top:1px solid #eee;-webkit-user-select:none;user-select:none}.form-group.auto-complete .option-list .list-footer .pager-nav{display:inline-flex;align-items:center;gap:6px}.form-group.auto-complete .option-list .list-footer .range{color:#5f6368;font-size:12px}.form-group.auto-complete .option-list .list-footer .pager-btn{width:24px;height:24px;border-radius:4px;border:1px solid #dadce0;display:inline-flex;align-items:center;justify-content:center;line-height:1;cursor:pointer;background-color:#fff}.form-group.auto-complete .option-list .list-footer .pager-btn .he{font-size:13px;color:#2ba599;font-weight:600}.form-group.auto-complete .option-list .list-footer .pager-btn:hover{background-color:#f5f5f5}.form-group.auto-complete .option-list .list-footer .pager-btn.disabled{border-color:transparent;cursor:default;pointer-events:none}.form-group.auto-complete .option-list .list-footer .pager-btn.disabled .he{color:#ccc}.form-group.auto-complete .option-list .list-footer.pager-footer{display:flex;justify-content:space-between;align-items:center;padding:4px 8px}\n"] }]
|
|
3654
3593
|
}], ctorParameters: () => [], propDecorators: { title: [{
|
|
3655
3594
|
type: Input
|
|
3656
3595
|
}], required: [{
|
|
@@ -3659,8 +3598,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImpo
|
|
|
3659
3598
|
type: Input
|
|
3660
3599
|
}], customClass: [{
|
|
3661
3600
|
type: Input
|
|
3662
|
-
}], showSearchIcon: [{
|
|
3663
|
-
type: Input
|
|
3664
3601
|
}], clearVal: [{
|
|
3665
3602
|
type: Input
|
|
3666
3603
|
}], error: [{
|
|
@@ -3683,8 +3620,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImpo
|
|
|
3683
3620
|
type: Input
|
|
3684
3621
|
}], searchDebounce: [{
|
|
3685
3622
|
type: Input
|
|
3686
|
-
}], minSearchLength: [{
|
|
3687
|
-
type: Input
|
|
3688
3623
|
}], refreshOnOpen: [{
|
|
3689
3624
|
type: Input
|
|
3690
3625
|
}], totalCount: [{
|