@ng-select/ng-select 21.7.0 → 21.8.0
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.
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject, ElementRef, input, effect, Directive, TemplateRef, Injectable, booleanAttribute, output, Renderer2, NgZone, DestroyRef, viewChild, computed, ViewEncapsulation, ChangeDetectionStrategy, Component, signal, afterEveryRender, InjectionToken, HostAttributeToken, ChangeDetectorRef, numberAttribute, model, contentChild, contentChildren, forwardRef, Injector, HostListener, NgModule } from '@angular/core';
|
|
2
|
+
import { inject, ElementRef, input, effect, Directive, TemplateRef, Injectable, booleanAttribute, output, Renderer2, NgZone, DestroyRef, viewChild, computed, ViewEncapsulation, ChangeDetectionStrategy, Component, signal, afterEveryRender, InjectionToken, HostAttributeToken, ChangeDetectorRef, linkedSignal, numberAttribute, model, contentChild, contentChildren, forwardRef, Injector, HostListener, NgModule } from '@angular/core';
|
|
3
3
|
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
4
4
|
import { animationFrameScheduler, asapScheduler, fromEvent, Subject } from 'rxjs';
|
|
5
5
|
import { auditTime, tap, debounceTime, filter, map } from 'rxjs/operators';
|
|
@@ -2126,61 +2126,111 @@ class NgSelectComponent {
|
|
|
2126
2126
|
this._destroyRef = inject(DestroyRef);
|
|
2127
2127
|
// signals
|
|
2128
2128
|
this._disabled = signal(false, ...(ngDevMode ? [{ debugName: "_disabled" }] : /* istanbul ignore next */ []));
|
|
2129
|
-
// inputs
|
|
2130
|
-
this.
|
|
2131
|
-
this.
|
|
2132
|
-
this.
|
|
2133
|
-
this.
|
|
2134
|
-
this.
|
|
2135
|
-
this.
|
|
2136
|
-
this.
|
|
2137
|
-
this.
|
|
2138
|
-
this.
|
|
2139
|
-
this.
|
|
2140
|
-
this.
|
|
2141
|
-
this.
|
|
2142
|
-
this.
|
|
2143
|
-
this.
|
|
2144
|
-
this.
|
|
2145
|
-
this.
|
|
2146
|
-
this.
|
|
2147
|
-
this.
|
|
2148
|
-
this.
|
|
2149
|
-
this.
|
|
2150
|
-
this.
|
|
2151
|
-
this.
|
|
2152
|
-
this.
|
|
2153
|
-
this.
|
|
2154
|
-
this.
|
|
2155
|
-
this.
|
|
2156
|
-
this.
|
|
2157
|
-
this.
|
|
2158
|
-
this.
|
|
2159
|
-
this.
|
|
2160
|
-
this.
|
|
2161
|
-
this.
|
|
2162
|
-
this.
|
|
2163
|
-
this.
|
|
2164
|
-
this.
|
|
2165
|
-
this.
|
|
2166
|
-
this.
|
|
2167
|
-
this.
|
|
2168
|
-
this.
|
|
2169
|
-
this.
|
|
2170
|
-
this.
|
|
2171
|
-
this.
|
|
2172
|
-
this.
|
|
2173
|
-
this.
|
|
2174
|
-
this.
|
|
2175
|
-
this.
|
|
2176
|
-
this.
|
|
2129
|
+
// inputs: underscored input() + alias + linkedSignal() for stable public names (back compat)
|
|
2130
|
+
this._ariaLabelDropdown = input(undefined, { ...(ngDevMode ? { debugName: "_ariaLabelDropdown" } : /* istanbul ignore next */ {}), alias: 'ariaLabelDropdown' });
|
|
2131
|
+
this.ariaLabelDropdown = linkedSignal(() => this._ariaLabelDropdown(), ...(ngDevMode ? [{ debugName: "ariaLabelDropdown" }] : /* istanbul ignore next */ []));
|
|
2132
|
+
this._ariaLabel = input(undefined, { ...(ngDevMode ? { debugName: "_ariaLabel" } : /* istanbul ignore next */ {}), alias: 'ariaLabel' });
|
|
2133
|
+
this.ariaLabel = linkedSignal(() => this._ariaLabel(), ...(ngDevMode ? [{ debugName: "ariaLabel" }] : /* istanbul ignore next */ []));
|
|
2134
|
+
this._markFirst = input(true, { ...(ngDevMode ? { debugName: "_markFirst" } : /* istanbul ignore next */ {}), alias: 'markFirst', transform: booleanAttribute });
|
|
2135
|
+
this.markFirst = linkedSignal(() => this._markFirst(), ...(ngDevMode ? [{ debugName: "markFirst" }] : /* istanbul ignore next */ []));
|
|
2136
|
+
this._placeholder = input(this.config.placeholder, { ...(ngDevMode ? { debugName: "_placeholder" } : /* istanbul ignore next */ {}), alias: 'placeholder' });
|
|
2137
|
+
this.placeholder = linkedSignal(() => this._placeholder(), ...(ngDevMode ? [{ debugName: "placeholder" }] : /* istanbul ignore next */ []));
|
|
2138
|
+
this._fixedPlaceholder = input(true, { ...(ngDevMode ? { debugName: "_fixedPlaceholder" } : /* istanbul ignore next */ {}), alias: 'fixedPlaceholder' });
|
|
2139
|
+
this.fixedPlaceholder = linkedSignal(() => this._fixedPlaceholder(), ...(ngDevMode ? [{ debugName: "fixedPlaceholder" }] : /* istanbul ignore next */ []));
|
|
2140
|
+
this._notFoundText = input(undefined, { ...(ngDevMode ? { debugName: "_notFoundText" } : /* istanbul ignore next */ {}), alias: 'notFoundText' });
|
|
2141
|
+
this.notFoundText = linkedSignal(() => this._notFoundText(), ...(ngDevMode ? [{ debugName: "notFoundText" }] : /* istanbul ignore next */ []));
|
|
2142
|
+
this._typeToSearchText = input(undefined, { ...(ngDevMode ? { debugName: "_typeToSearchText" } : /* istanbul ignore next */ {}), alias: 'typeToSearchText' });
|
|
2143
|
+
this.typeToSearchText = linkedSignal(() => this._typeToSearchText(), ...(ngDevMode ? [{ debugName: "typeToSearchText" }] : /* istanbul ignore next */ []));
|
|
2144
|
+
this._preventToggleOnRightClick = input(false, { ...(ngDevMode ? { debugName: "_preventToggleOnRightClick" } : /* istanbul ignore next */ {}), alias: 'preventToggleOnRightClick' });
|
|
2145
|
+
this.preventToggleOnRightClick = linkedSignal(() => this._preventToggleOnRightClick(), ...(ngDevMode ? [{ debugName: "preventToggleOnRightClick" }] : /* istanbul ignore next */ []));
|
|
2146
|
+
this._addTagText = input(undefined, { ...(ngDevMode ? { debugName: "_addTagText" } : /* istanbul ignore next */ {}), alias: 'addTagText' });
|
|
2147
|
+
this.addTagText = linkedSignal(() => this._addTagText(), ...(ngDevMode ? [{ debugName: "addTagText" }] : /* istanbul ignore next */ []));
|
|
2148
|
+
this._loadingText = input(undefined, { ...(ngDevMode ? { debugName: "_loadingText" } : /* istanbul ignore next */ {}), alias: 'loadingText' });
|
|
2149
|
+
this.loadingText = linkedSignal(() => this._loadingText(), ...(ngDevMode ? [{ debugName: "loadingText" }] : /* istanbul ignore next */ []));
|
|
2150
|
+
this._clearAllText = input(undefined, { ...(ngDevMode ? { debugName: "_clearAllText" } : /* istanbul ignore next */ {}), alias: 'clearAllText' });
|
|
2151
|
+
this.clearAllText = linkedSignal(() => this._clearAllText(), ...(ngDevMode ? [{ debugName: "clearAllText" }] : /* istanbul ignore next */ []));
|
|
2152
|
+
this._dropdownPosition = input('auto', { ...(ngDevMode ? { debugName: "_dropdownPosition" } : /* istanbul ignore next */ {}), alias: 'dropdownPosition' });
|
|
2153
|
+
this.dropdownPosition = linkedSignal(() => this._dropdownPosition(), ...(ngDevMode ? [{ debugName: "dropdownPosition" }] : /* istanbul ignore next */ []));
|
|
2154
|
+
this._appendTo = input(undefined, { ...(ngDevMode ? { debugName: "_appendTo" } : /* istanbul ignore next */ {}), alias: 'appendTo' });
|
|
2155
|
+
this.appendTo = linkedSignal(() => this._appendTo(), ...(ngDevMode ? [{ debugName: "appendTo" }] : /* istanbul ignore next */ []));
|
|
2156
|
+
this._outsideClickEvent = input(this.config.outsideClickEvent, { ...(ngDevMode ? { debugName: "_outsideClickEvent" } : /* istanbul ignore next */ {}), alias: 'outsideClickEvent' });
|
|
2157
|
+
this.outsideClickEvent = linkedSignal(() => this._outsideClickEvent(), ...(ngDevMode ? [{ debugName: "outsideClickEvent" }] : /* istanbul ignore next */ []));
|
|
2158
|
+
this._loading = input(false, { ...(ngDevMode ? { debugName: "_loading" } : /* istanbul ignore next */ {}), alias: 'loading', transform: booleanAttribute });
|
|
2159
|
+
this.loading = linkedSignal(() => this._loading(), ...(ngDevMode ? [{ debugName: "loading" }] : /* istanbul ignore next */ []));
|
|
2160
|
+
this._closeOnSelect = input(true, { ...(ngDevMode ? { debugName: "_closeOnSelect" } : /* istanbul ignore next */ {}), alias: 'closeOnSelect', transform: booleanAttribute });
|
|
2161
|
+
this.closeOnSelect = linkedSignal(() => this._closeOnSelect(), ...(ngDevMode ? [{ debugName: "closeOnSelect" }] : /* istanbul ignore next */ []));
|
|
2162
|
+
this._hideSelected = input(false, { ...(ngDevMode ? { debugName: "_hideSelected" } : /* istanbul ignore next */ {}), alias: 'hideSelected', transform: booleanAttribute });
|
|
2163
|
+
this.hideSelected = linkedSignal(() => this._hideSelected(), ...(ngDevMode ? [{ debugName: "hideSelected" }] : /* istanbul ignore next */ []));
|
|
2164
|
+
this._selectOnTab = input(false, { ...(ngDevMode ? { debugName: "_selectOnTab" } : /* istanbul ignore next */ {}), alias: 'selectOnTab', transform: booleanAttribute });
|
|
2165
|
+
this.selectOnTab = linkedSignal(() => this._selectOnTab(), ...(ngDevMode ? [{ debugName: "selectOnTab" }] : /* istanbul ignore next */ []));
|
|
2166
|
+
this._openOnEnter = input(undefined, { ...(ngDevMode ? { debugName: "_openOnEnter" } : /* istanbul ignore next */ {}), alias: 'openOnEnter', transform: booleanAttribute });
|
|
2167
|
+
this.openOnEnter = linkedSignal(() => this._openOnEnter(), ...(ngDevMode ? [{ debugName: "openOnEnter" }] : /* istanbul ignore next */ []));
|
|
2168
|
+
this._maxSelectedItems = input(undefined, { ...(ngDevMode ? { debugName: "_maxSelectedItems" } : /* istanbul ignore next */ {}), alias: 'maxSelectedItems', transform: numberAttribute });
|
|
2169
|
+
this.maxSelectedItems = linkedSignal(() => this._maxSelectedItems(), ...(ngDevMode ? [{ debugName: "maxSelectedItems" }] : /* istanbul ignore next */ []));
|
|
2170
|
+
this._groupBy = input(undefined, { ...(ngDevMode ? { debugName: "_groupBy" } : /* istanbul ignore next */ {}), alias: 'groupBy' });
|
|
2171
|
+
this.groupBy = linkedSignal(() => this._groupBy(), ...(ngDevMode ? [{ debugName: "groupBy" }] : /* istanbul ignore next */ []));
|
|
2172
|
+
this._groupValue = input(undefined, { ...(ngDevMode ? { debugName: "_groupValue" } : /* istanbul ignore next */ {}), alias: 'groupValue' });
|
|
2173
|
+
this.groupValue = linkedSignal(() => this._groupValue(), ...(ngDevMode ? [{ debugName: "groupValue" }] : /* istanbul ignore next */ []));
|
|
2174
|
+
this._bufferAmount = input(4, { ...(ngDevMode ? { debugName: "_bufferAmount" } : /* istanbul ignore next */ {}), alias: 'bufferAmount', transform: numberAttribute });
|
|
2175
|
+
this.bufferAmount = linkedSignal(() => this._bufferAmount(), ...(ngDevMode ? [{ debugName: "bufferAmount" }] : /* istanbul ignore next */ []));
|
|
2176
|
+
this._virtualScroll = input(undefined, { ...(ngDevMode ? { debugName: "_virtualScroll" } : /* istanbul ignore next */ {}), alias: 'virtualScroll', transform: booleanAttribute });
|
|
2177
|
+
this.virtualScroll = linkedSignal(() => this._virtualScroll(), ...(ngDevMode ? [{ debugName: "virtualScroll" }] : /* istanbul ignore next */ []));
|
|
2178
|
+
this._selectableGroup = input(false, { ...(ngDevMode ? { debugName: "_selectableGroup" } : /* istanbul ignore next */ {}), alias: 'selectableGroup', transform: booleanAttribute });
|
|
2179
|
+
this.selectableGroup = linkedSignal(() => this._selectableGroup(), ...(ngDevMode ? [{ debugName: "selectableGroup" }] : /* istanbul ignore next */ []));
|
|
2180
|
+
this._tabFocusOnClearButton = input(undefined, { ...(ngDevMode ? { debugName: "_tabFocusOnClearButton" } : /* istanbul ignore next */ {}), alias: 'tabFocusOnClearButton' });
|
|
2181
|
+
this.tabFocusOnClearButton = linkedSignal(() => this._tabFocusOnClearButton(), ...(ngDevMode ? [{ debugName: "tabFocusOnClearButton" }] : /* istanbul ignore next */ []));
|
|
2182
|
+
this._selectableGroupAsModel = input(true, { ...(ngDevMode ? { debugName: "_selectableGroupAsModel" } : /* istanbul ignore next */ {}), alias: 'selectableGroupAsModel', transform: booleanAttribute });
|
|
2183
|
+
this.selectableGroupAsModel = linkedSignal(() => this._selectableGroupAsModel(), ...(ngDevMode ? [{ debugName: "selectableGroupAsModel" }] : /* istanbul ignore next */ []));
|
|
2184
|
+
this._searchFn = input(null, { ...(ngDevMode ? { debugName: "_searchFn" } : /* istanbul ignore next */ {}), alias: 'searchFn' });
|
|
2185
|
+
this.searchFn = linkedSignal(() => this._searchFn(), ...(ngDevMode ? [{ debugName: "searchFn" }] : /* istanbul ignore next */ []));
|
|
2186
|
+
this._trackByFn = input(null, { ...(ngDevMode ? { debugName: "_trackByFn" } : /* istanbul ignore next */ {}), alias: 'trackByFn' });
|
|
2187
|
+
this.trackByFn = linkedSignal(() => this._trackByFn(), ...(ngDevMode ? [{ debugName: "trackByFn" }] : /* istanbul ignore next */ []));
|
|
2188
|
+
this._clearOnBackspace = input(true, { ...(ngDevMode ? { debugName: "_clearOnBackspace" } : /* istanbul ignore next */ {}), alias: 'clearOnBackspace', transform: booleanAttribute });
|
|
2189
|
+
this.clearOnBackspace = linkedSignal(() => this._clearOnBackspace(), ...(ngDevMode ? [{ debugName: "clearOnBackspace" }] : /* istanbul ignore next */ []));
|
|
2190
|
+
this._labelForId = input(null, { ...(ngDevMode ? { debugName: "_labelForId" } : /* istanbul ignore next */ {}), alias: 'labelForId' });
|
|
2191
|
+
this.labelForId = linkedSignal(() => this._labelForId(), ...(ngDevMode ? [{ debugName: "labelForId" }] : /* istanbul ignore next */ []));
|
|
2192
|
+
this._inputAttrs = input({}, { ...(ngDevMode ? { debugName: "_inputAttrs" } : /* istanbul ignore next */ {}), alias: 'inputAttrs' });
|
|
2193
|
+
this.inputAttrs = linkedSignal(() => this._inputAttrs(), ...(ngDevMode ? [{ debugName: "inputAttrs" }] : /* istanbul ignore next */ []));
|
|
2194
|
+
this._tabIndex = input(undefined, { ...(ngDevMode ? { debugName: "_tabIndex" } : /* istanbul ignore next */ {}), alias: 'tabIndex', transform: numberAttribute });
|
|
2195
|
+
this.tabIndex = linkedSignal(() => this._tabIndex(), ...(ngDevMode ? [{ debugName: "tabIndex" }] : /* istanbul ignore next */ []));
|
|
2196
|
+
this._readonly = input(false, { ...(ngDevMode ? { debugName: "_readonly" } : /* istanbul ignore next */ {}), alias: 'readonly', transform: booleanAttribute });
|
|
2197
|
+
this.readonly = linkedSignal(() => this._readonly(), ...(ngDevMode ? [{ debugName: "readonly" }] : /* istanbul ignore next */ []));
|
|
2198
|
+
this._searchWhileComposing = input(true, { ...(ngDevMode ? { debugName: "_searchWhileComposing" } : /* istanbul ignore next */ {}), alias: 'searchWhileComposing', transform: booleanAttribute });
|
|
2199
|
+
this.searchWhileComposing = linkedSignal(() => this._searchWhileComposing(), ...(ngDevMode ? [{ debugName: "searchWhileComposing" }] : /* istanbul ignore next */ []));
|
|
2200
|
+
this._minTermLength = input(0, { ...(ngDevMode ? { debugName: "_minTermLength" } : /* istanbul ignore next */ {}), alias: 'minTermLength', transform: numberAttribute });
|
|
2201
|
+
this.minTermLength = linkedSignal(() => this._minTermLength(), ...(ngDevMode ? [{ debugName: "minTermLength" }] : /* istanbul ignore next */ []));
|
|
2202
|
+
this._editableSearchTerm = input(false, { ...(ngDevMode ? { debugName: "_editableSearchTerm" } : /* istanbul ignore next */ {}), alias: 'editableSearchTerm', transform: booleanAttribute });
|
|
2203
|
+
this.editableSearchTerm = linkedSignal(() => this._editableSearchTerm(), ...(ngDevMode ? [{ debugName: "editableSearchTerm" }] : /* istanbul ignore next */ []));
|
|
2204
|
+
this._ngClass = input(null, { ...(ngDevMode ? { debugName: "_ngClass" } : /* istanbul ignore next */ {}), alias: 'ngClass' });
|
|
2205
|
+
this.ngClass = linkedSignal(() => this._ngClass(), ...(ngDevMode ? [{ debugName: "ngClass" }] : /* istanbul ignore next */ []));
|
|
2206
|
+
this._typeahead = input(undefined, { ...(ngDevMode ? { debugName: "_typeahead" } : /* istanbul ignore next */ {}), alias: 'typeahead' });
|
|
2207
|
+
this.typeahead = linkedSignal(() => this._typeahead(), ...(ngDevMode ? [{ debugName: "typeahead" }] : /* istanbul ignore next */ []));
|
|
2208
|
+
this._multiple = input(false, { ...(ngDevMode ? { debugName: "_multiple" } : /* istanbul ignore next */ {}), alias: 'multiple', transform: booleanAttribute });
|
|
2209
|
+
this.multiple = linkedSignal(() => this._multiple(), ...(ngDevMode ? [{ debugName: "multiple" }] : /* istanbul ignore next */ []));
|
|
2210
|
+
this._addTag = input(false, { ...(ngDevMode ? { debugName: "_addTag" } : /* istanbul ignore next */ {}), alias: 'addTag' });
|
|
2211
|
+
this.addTag = linkedSignal(() => this._addTag(), ...(ngDevMode ? [{ debugName: "addTag" }] : /* istanbul ignore next */ []));
|
|
2212
|
+
this._searchable = input(true, { ...(ngDevMode ? { debugName: "_searchable" } : /* istanbul ignore next */ {}), alias: 'searchable', transform: booleanAttribute });
|
|
2213
|
+
this.searchable = linkedSignal(() => this._searchable(), ...(ngDevMode ? [{ debugName: "searchable" }] : /* istanbul ignore next */ []));
|
|
2214
|
+
this._clearable = input(true, { ...(ngDevMode ? { debugName: "_clearable" } : /* istanbul ignore next */ {}), alias: 'clearable', transform: booleanAttribute });
|
|
2215
|
+
this.clearable = linkedSignal(() => this._clearable(), ...(ngDevMode ? [{ debugName: "clearable" }] : /* istanbul ignore next */ []));
|
|
2216
|
+
this._clearKeepsDisabledOptions = input(true, { ...(ngDevMode ? { debugName: "_clearKeepsDisabledOptions" } : /* istanbul ignore next */ {}), alias: 'clearKeepsDisabledOptions', transform: booleanAttribute });
|
|
2217
|
+
this.clearKeepsDisabledOptions = linkedSignal(() => this._clearKeepsDisabledOptions(), ...(ngDevMode ? [{ debugName: "clearKeepsDisabledOptions" }] : /* istanbul ignore next */ []));
|
|
2218
|
+
this._deselectOnClick = input(undefined, { ...(ngDevMode ? { debugName: "_deselectOnClick" } : /* istanbul ignore next */ {}), alias: 'deselectOnClick' });
|
|
2219
|
+
this.deselectOnClick = linkedSignal(() => this._deselectOnClick(), ...(ngDevMode ? [{ debugName: "deselectOnClick" }] : /* istanbul ignore next */ []));
|
|
2220
|
+
this._clearSearchOnAdd = input(undefined, { ...(ngDevMode ? { debugName: "_clearSearchOnAdd" } : /* istanbul ignore next */ {}), alias: 'clearSearchOnAdd' });
|
|
2221
|
+
this.clearSearchOnAdd = linkedSignal(() => this._clearSearchOnAdd(), ...(ngDevMode ? [{ debugName: "clearSearchOnAdd" }] : /* istanbul ignore next */ []));
|
|
2222
|
+
this._compareWith = input(undefined, { ...(ngDevMode ? { debugName: "_compareWith" } : /* istanbul ignore next */ {}), alias: 'compareWith',
|
|
2223
|
+
transform: (fn) => {
|
|
2177
2224
|
if (fn !== undefined && fn !== null && !isFunction(fn)) {
|
|
2178
2225
|
throw Error('`compareWith` must be a function.');
|
|
2179
2226
|
}
|
|
2180
2227
|
return fn;
|
|
2181
2228
|
} });
|
|
2182
|
-
this.
|
|
2183
|
-
this.
|
|
2229
|
+
this.compareWith = linkedSignal(() => this._compareWith(), ...(ngDevMode ? [{ debugName: "compareWith" }] : /* istanbul ignore next */ []));
|
|
2230
|
+
this._keyDownFn = input((_) => true, { ...(ngDevMode ? { debugName: "_keyDownFn" } : /* istanbul ignore next */ {}), alias: 'keyDownFn' });
|
|
2231
|
+
this.keyDownFn = linkedSignal(() => this._keyDownFn(), ...(ngDevMode ? [{ debugName: "keyDownFn" }] : /* istanbul ignore next */ []));
|
|
2232
|
+
this._popover = input(false, { ...(ngDevMode ? { debugName: "_popover" } : /* istanbul ignore next */ {}), alias: 'popover', transform: booleanAttribute });
|
|
2233
|
+
this.popover = linkedSignal(() => this._popover(), ...(ngDevMode ? [{ debugName: "popover" }] : /* istanbul ignore next */ []));
|
|
2184
2234
|
// models
|
|
2185
2235
|
this.bindLabel = model(undefined, ...(ngDevMode ? [{ debugName: "bindLabel" }] : /* istanbul ignore next */ []));
|
|
2186
2236
|
this.bindValue = model(undefined, ...(ngDevMode ? [{ debugName: "bindValue" }] : /* istanbul ignore next */ []));
|
|
@@ -2247,7 +2297,7 @@ class NgSelectComponent {
|
|
|
2247
2297
|
this.autoFocus = inject(new HostAttributeToken('autofocus'), { optional: true });
|
|
2248
2298
|
// private variables
|
|
2249
2299
|
this._defaultLabel = 'label';
|
|
2250
|
-
this.
|
|
2300
|
+
this._editableSearchTermActive = computed(() => this.editableSearchTerm() && !this.multiple(), ...(ngDevMode ? [{ debugName: "_editableSearchTermActive" }] : /* istanbul ignore next */ []));
|
|
2251
2301
|
this._injector = inject(Injector);
|
|
2252
2302
|
this._isComposing = false;
|
|
2253
2303
|
this._keyPress$ = new Subject();
|
|
@@ -2459,7 +2509,7 @@ class NgSelectComponent {
|
|
|
2459
2509
|
writeValue(value) {
|
|
2460
2510
|
this.itemsList.clearSelected(false);
|
|
2461
2511
|
this._handleWriteValue(value);
|
|
2462
|
-
if (this.
|
|
2512
|
+
if (this._editableSearchTermActive()) {
|
|
2463
2513
|
this._setSearchTermFromItems();
|
|
2464
2514
|
}
|
|
2465
2515
|
this._cd.markForCheck();
|
|
@@ -2503,7 +2553,7 @@ class NgSelectComponent {
|
|
|
2503
2553
|
}
|
|
2504
2554
|
this.isOpen.set(false);
|
|
2505
2555
|
this._isComposing = false;
|
|
2506
|
-
if (!this.
|
|
2556
|
+
if (!this._editableSearchTermActive()) {
|
|
2507
2557
|
this._clearSearch();
|
|
2508
2558
|
}
|
|
2509
2559
|
else {
|
|
@@ -2524,14 +2574,14 @@ class NgSelectComponent {
|
|
|
2524
2574
|
else {
|
|
2525
2575
|
this.select(item);
|
|
2526
2576
|
}
|
|
2527
|
-
if (this.
|
|
2577
|
+
if (this._editableSearchTermActive()) {
|
|
2528
2578
|
this._setSearchTermFromItems();
|
|
2529
2579
|
}
|
|
2530
2580
|
}
|
|
2531
2581
|
select(item) {
|
|
2532
2582
|
if (!item.selected) {
|
|
2533
2583
|
this.itemsList.select(item);
|
|
2534
|
-
if (this.clearSearchOnAddValue() && !this.
|
|
2584
|
+
if (this.clearSearchOnAddValue() && !this._editableSearchTermActive()) {
|
|
2535
2585
|
this._clearSearch();
|
|
2536
2586
|
}
|
|
2537
2587
|
this._updateNgModel();
|
|
@@ -2626,7 +2676,7 @@ class NgSelectComponent {
|
|
|
2626
2676
|
if (this._focused) {
|
|
2627
2677
|
return;
|
|
2628
2678
|
}
|
|
2629
|
-
if (this.
|
|
2679
|
+
if (this._editableSearchTermActive()) {
|
|
2630
2680
|
this._setSearchTermFromItems();
|
|
2631
2681
|
}
|
|
2632
2682
|
this.element.classList.add('ng-select-focused');
|
|
@@ -2639,7 +2689,7 @@ class NgSelectComponent {
|
|
|
2639
2689
|
if (!this.isOpen() && !this.disabled()) {
|
|
2640
2690
|
this._onTouched();
|
|
2641
2691
|
}
|
|
2642
|
-
if (this.
|
|
2692
|
+
if (this._editableSearchTermActive()) {
|
|
2643
2693
|
this._setSearchTermFromItems();
|
|
2644
2694
|
}
|
|
2645
2695
|
this._focused = false;
|
|
@@ -2983,7 +3033,7 @@ class NgSelectComponent {
|
|
|
2983
3033
|
return isDefined(config.disableVirtualScroll) ? !config.disableVirtualScroll : false;
|
|
2984
3034
|
}
|
|
2985
3035
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: NgSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2986
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: NgSelectComponent, isStandalone: true, selector: "ng-select", inputs: {
|
|
3036
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: NgSelectComponent, isStandalone: true, selector: "ng-select", inputs: { _ariaLabelDropdown: { classPropertyName: "_ariaLabelDropdown", publicName: "ariaLabelDropdown", isSignal: true, isRequired: false, transformFunction: null }, _ariaLabel: { classPropertyName: "_ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, _markFirst: { classPropertyName: "_markFirst", publicName: "markFirst", isSignal: true, isRequired: false, transformFunction: null }, _placeholder: { classPropertyName: "_placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, _fixedPlaceholder: { classPropertyName: "_fixedPlaceholder", publicName: "fixedPlaceholder", isSignal: true, isRequired: false, transformFunction: null }, _notFoundText: { classPropertyName: "_notFoundText", publicName: "notFoundText", isSignal: true, isRequired: false, transformFunction: null }, _typeToSearchText: { classPropertyName: "_typeToSearchText", publicName: "typeToSearchText", isSignal: true, isRequired: false, transformFunction: null }, _preventToggleOnRightClick: { classPropertyName: "_preventToggleOnRightClick", publicName: "preventToggleOnRightClick", isSignal: true, isRequired: false, transformFunction: null }, _addTagText: { classPropertyName: "_addTagText", publicName: "addTagText", isSignal: true, isRequired: false, transformFunction: null }, _loadingText: { classPropertyName: "_loadingText", publicName: "loadingText", isSignal: true, isRequired: false, transformFunction: null }, _clearAllText: { classPropertyName: "_clearAllText", publicName: "clearAllText", isSignal: true, isRequired: false, transformFunction: null }, _dropdownPosition: { classPropertyName: "_dropdownPosition", publicName: "dropdownPosition", isSignal: true, isRequired: false, transformFunction: null }, _appendTo: { classPropertyName: "_appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null }, _outsideClickEvent: { classPropertyName: "_outsideClickEvent", publicName: "outsideClickEvent", isSignal: true, isRequired: false, transformFunction: null }, _loading: { classPropertyName: "_loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, _closeOnSelect: { classPropertyName: "_closeOnSelect", publicName: "closeOnSelect", isSignal: true, isRequired: false, transformFunction: null }, _hideSelected: { classPropertyName: "_hideSelected", publicName: "hideSelected", isSignal: true, isRequired: false, transformFunction: null }, _selectOnTab: { classPropertyName: "_selectOnTab", publicName: "selectOnTab", isSignal: true, isRequired: false, transformFunction: null }, _openOnEnter: { classPropertyName: "_openOnEnter", publicName: "openOnEnter", isSignal: true, isRequired: false, transformFunction: null }, _maxSelectedItems: { classPropertyName: "_maxSelectedItems", publicName: "maxSelectedItems", isSignal: true, isRequired: false, transformFunction: null }, _groupBy: { classPropertyName: "_groupBy", publicName: "groupBy", isSignal: true, isRequired: false, transformFunction: null }, _groupValue: { classPropertyName: "_groupValue", publicName: "groupValue", isSignal: true, isRequired: false, transformFunction: null }, _bufferAmount: { classPropertyName: "_bufferAmount", publicName: "bufferAmount", isSignal: true, isRequired: false, transformFunction: null }, _virtualScroll: { classPropertyName: "_virtualScroll", publicName: "virtualScroll", isSignal: true, isRequired: false, transformFunction: null }, _selectableGroup: { classPropertyName: "_selectableGroup", publicName: "selectableGroup", isSignal: true, isRequired: false, transformFunction: null }, _tabFocusOnClearButton: { classPropertyName: "_tabFocusOnClearButton", publicName: "tabFocusOnClearButton", isSignal: true, isRequired: false, transformFunction: null }, _selectableGroupAsModel: { classPropertyName: "_selectableGroupAsModel", publicName: "selectableGroupAsModel", isSignal: true, isRequired: false, transformFunction: null }, _searchFn: { classPropertyName: "_searchFn", publicName: "searchFn", isSignal: true, isRequired: false, transformFunction: null }, _trackByFn: { classPropertyName: "_trackByFn", publicName: "trackByFn", isSignal: true, isRequired: false, transformFunction: null }, _clearOnBackspace: { classPropertyName: "_clearOnBackspace", publicName: "clearOnBackspace", isSignal: true, isRequired: false, transformFunction: null }, _labelForId: { classPropertyName: "_labelForId", publicName: "labelForId", isSignal: true, isRequired: false, transformFunction: null }, _inputAttrs: { classPropertyName: "_inputAttrs", publicName: "inputAttrs", isSignal: true, isRequired: false, transformFunction: null }, _tabIndex: { classPropertyName: "_tabIndex", publicName: "tabIndex", isSignal: true, isRequired: false, transformFunction: null }, _readonly: { classPropertyName: "_readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, _searchWhileComposing: { classPropertyName: "_searchWhileComposing", publicName: "searchWhileComposing", isSignal: true, isRequired: false, transformFunction: null }, _minTermLength: { classPropertyName: "_minTermLength", publicName: "minTermLength", isSignal: true, isRequired: false, transformFunction: null }, _editableSearchTerm: { classPropertyName: "_editableSearchTerm", publicName: "editableSearchTerm", isSignal: true, isRequired: false, transformFunction: null }, _ngClass: { classPropertyName: "_ngClass", publicName: "ngClass", isSignal: true, isRequired: false, transformFunction: null }, _typeahead: { classPropertyName: "_typeahead", publicName: "typeahead", isSignal: true, isRequired: false, transformFunction: null }, _multiple: { classPropertyName: "_multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null }, _addTag: { classPropertyName: "_addTag", publicName: "addTag", isSignal: true, isRequired: false, transformFunction: null }, _searchable: { classPropertyName: "_searchable", publicName: "searchable", isSignal: true, isRequired: false, transformFunction: null }, _clearable: { classPropertyName: "_clearable", publicName: "clearable", isSignal: true, isRequired: false, transformFunction: null }, _clearKeepsDisabledOptions: { classPropertyName: "_clearKeepsDisabledOptions", publicName: "clearKeepsDisabledOptions", isSignal: true, isRequired: false, transformFunction: null }, _deselectOnClick: { classPropertyName: "_deselectOnClick", publicName: "deselectOnClick", isSignal: true, isRequired: false, transformFunction: null }, _clearSearchOnAdd: { classPropertyName: "_clearSearchOnAdd", publicName: "clearSearchOnAdd", isSignal: true, isRequired: false, transformFunction: null }, _compareWith: { classPropertyName: "_compareWith", publicName: "compareWith", isSignal: true, isRequired: false, transformFunction: null }, _keyDownFn: { classPropertyName: "_keyDownFn", publicName: "keyDownFn", isSignal: true, isRequired: false, transformFunction: null }, _popover: { classPropertyName: "_popover", publicName: "popover", isSignal: true, isRequired: false, transformFunction: null }, bindLabel: { classPropertyName: "bindLabel", publicName: "bindLabel", isSignal: true, isRequired: false, transformFunction: null }, bindValue: { classPropertyName: "bindValue", publicName: "bindValue", isSignal: true, isRequired: false, transformFunction: null }, appearance: { classPropertyName: "appearance", publicName: "appearance", isSignal: true, isRequired: false, transformFunction: null }, isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { bindLabel: "bindLabelChange", bindValue: "bindValueChange", appearance: "appearanceChange", isOpen: "isOpenChange", items: "itemsChange", blurEvent: "blur", focusEvent: "focus", changeEvent: "change", openEvent: "open", closeEvent: "close", searchEvent: "search", clearEvent: "clear", addEvent: "add", removeEvent: "remove", scroll: "scroll", scrollToEnd: "scrollToEnd" }, host: { listeners: { "keydown": "handleKeyDown($event)" }, properties: { "class.ng-select": "true", "class.ng-select-single": "!multiple()", "class.ng-select-typeahead": "typeahead()", "class.ng-select-multiple": "multiple()", "class.ng-select-taggable": "addTag()", "class.ng-select-searchable": "searchable()", "class.ng-select-clearable": "clearable()", "class.ng-select-opened": "isOpen()", "class.ng-select-filtered": "filtered", "class.ng-select-disabled": "disabled()" } }, providers: [
|
|
2987
3037
|
{
|
|
2988
3038
|
provide: NG_VALUE_ACCESSOR,
|
|
2989
3039
|
useExisting: forwardRef(() => NgSelectComponent),
|
|
@@ -3013,7 +3063,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImpor
|
|
|
3013
3063
|
'[class.ng-select-filtered]': 'filtered',
|
|
3014
3064
|
'[class.ng-select-disabled]': 'disabled()',
|
|
3015
3065
|
}, template: "<div\n\t(mousedown)=\"handleMousedown($event)\"\n\t[class.ng-appearance-outline]=\"appearance() === 'outline'\"\n\t[class.ng-appearance-fill]=\"appearance() === 'fill'\"\n\t[class.ng-has-value]=\"hasValue\"\n\tclass=\"ng-select-container\">\n\t<div class=\"ng-value-container\">\n\t\t@if ((selectedItems.length === 0 && !searchTerm) || (fixedPlaceholder() ?? config.fixedPlaceholder)) {\n\t\t\t<ng-template #defaultPlaceholderTemplate>\n\t\t\t\t<div class=\"ng-placeholder\">{{ placeholder() ?? config.placeholder }}</div>\n\t\t\t</ng-template>\n\t\t\t<ng-template [ngTemplateOutlet]=\"placeholderTemplate() || defaultPlaceholderTemplate\"> </ng-template>\n\t\t}\n\n\t\t@if ((!multiLabelTemplate() || !multiple()) && selectedItems.length > 0) {\n\t\t\t@for (item of selectedItems; track trackByOption($index, item)) {\n\t\t\t\t<div [class.ng-value-disabled]=\"item.disabled\" class=\"ng-value\">\n\t\t\t\t\t<ng-template #defaultLabelTemplate>\n\t\t\t\t\t\t<span class=\"ng-value-icon left\" (click)=\"unselect(item)\" aria-hidden=\"true\">\u00D7</span>\n\t\t\t\t\t\t<span class=\"ng-value-label\" [ngItemLabel]=\"item.label\" [escape]=\"escapeHTML\"></span>\n\t\t\t\t\t</ng-template>\n\t\t\t\t\t<ng-template\n\t\t\t\t\t\t[ngTemplateOutlet]=\"labelTemplate() || defaultLabelTemplate\"\n\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ item: item.value, clear: clearItem, label: item.label }\">\n\t\t\t\t\t</ng-template>\n\t\t\t\t</div>\n\t\t\t}\n\t\t}\n\n\t\t@if (multiple() && multiLabelTemplate() && selectedValues.length > 0) {\n\t\t\t<ng-template [ngTemplateOutlet]=\"multiLabelTemplate()\" [ngTemplateOutletContext]=\"{ items: selectedValues, clear: clearItem }\">\n\t\t\t</ng-template>\n\t\t}\n\n\t\t<div class=\"ng-input\">\n\t\t\t<input\n\t\t\t\t#searchInput\n\t\t\t\t(blur)=\"onInputBlur($event)\"\n\t\t\t\t(change)=\"$event.stopPropagation()\"\n\t\t\t\t(compositionend)=\"onCompositionEnd(searchInput.value)\"\n\t\t\t\t(compositionstart)=\"onCompositionStart()\"\n\t\t\t\t(focus)=\"onInputFocus($event)\"\n\t\t\t\t(input)=\"filter(searchInput.value)\"\n\t\t\t\t[attr.aria-activedescendant]=\"isOpen() ? itemsList?.markedItem?.htmlId : null\"\n\t\t\t\t[attr.aria-controls]=\"isOpen() ? dropdownId : null\"\n\t\t\t\t[attr.aria-expanded]=\"isOpen()\"\n\t\t\t\t[attr.aria-label]=\"ariaLabel()\"\n\t\t\t\t[attr.id]=\"labelForId()\"\n\t\t\t\t[attr.tabindex]=\"tabIndex()\"\n\t\t\t\t[disabled]=\"disabled()\"\n\t\t\t\t[readOnly]=\"!searchable() || itemsList.maxItemsSelected\"\n\t\t\t\t[value]=\"searchTerm ?? ''\"\n\t\t\t\taria-autocomplete=\"list\"\n\t\t\t\trole=\"combobox\" />\n\t\t</div>\n\t</div>\n\n\t@if (loading()) {\n\t\t<ng-template #defaultLoadingSpinnerTemplate>\n\t\t\t<div class=\"ng-spinner-loader\"></div>\n\t\t</ng-template>\n\t\t<ng-template [ngTemplateOutlet]=\"loadingSpinnerTemplate() || defaultLoadingSpinnerTemplate\"></ng-template>\n\t}\n\n\t@if (showClear()) {\n\t\t<span\n\t\t\tclass=\"ng-clear-wrapper\"\n\t\t\trole=\"button\"\n\t\t\ttabindex=\"0\"\n\t\t\t[attr.tabindex]=\"tabFocusOnClear() ? 0 : -1\"\n\t\t\ttitle=\"{{ clearAllText() || config.clearAllText }}\"\n\t\t\t#clearButton\n\t\t\t(click)=\"handleClearClick($event)\">\n\t\t\t@if (clearButtonTemplate()) {\n\t\t\t\t<ng-container [ngTemplateOutlet]=\"clearButtonTemplate()\"></ng-container>\n\t\t\t} @else {\n\t\t\t\t<span class=\"ng-clear\" aria-hidden=\"true\">\u00D7</span>\n\t\t\t}\n\t\t</span>\n\t}\n\n\t<span class=\"ng-arrow-wrapper\">\n\t\t<span class=\"ng-arrow\"></span>\n\t</span>\n</div>\n\n@if (isOpen()) {\n\t@let appendToValue = appendTo() || config.appendTo;\n\t<ng-dropdown-panel\n\t\tclass=\"ng-dropdown-panel\"\n\t\t[virtualScroll]=\"virtualScroll() ?? !config.disableVirtualScroll ?? false\"\n\t\t[bufferAmount]=\"bufferAmount()\"\n\t\t[appendTo]=\"appendToValue\"\n\t\t[position]=\"dropdownPosition()\"\n\t\t[outsideClickEvent]=\"outsideClickEvent()\"\n\t\t[headerTemplate]=\"headerTemplate()\"\n\t\t[footerTemplate]=\"footerTemplate()\"\n\t\t[filterValue]=\"searchTerm\"\n\t\t[items]=\"itemsList.filteredItems\"\n\t\t[showAddTag]=\"showAddTag\"\n\t\t[markedItem]=\"itemsList.markedItem\"\n\t\t(update)=\"viewPortItems = $event\"\n\t\t(scroll)=\"scroll.emit($event)\"\n\t\t(scrollToEnd)=\"scrollToEnd.emit($event)\"\n\t\t(outsideClick)=\"close()\"\n\t\t[class.ng-select-multiple]=\"multiple()\"\n\t\t[class]=\"appendToValue ? (ngClass() ? ngClass() : classes) : null\"\n\t\t[id]=\"dropdownId\"\n\t\t[ariaLabelDropdown]=\"ariaLabelDropdown() ?? config.ariaLabelDropdown\"\n\t\t[popover]=\"popover()\">\n\t\t<ng-container>\n\t\t\t@for (item of viewPortItems; track trackByOption($index, item)) {\n\t\t\t\t<!-- eslint-disable-next-line @angular-eslint/template/click-events-have-key-events, @angular-eslint/template/interactive-supports-focus, @angular-eslint/template/mouse-events-have-key-events -->\n\t\t\t\t<div\n\t\t\t\t\tclass=\"ng-option\"\n\t\t\t\t\t[attr.role]=\"item.children ? 'group' : 'option'\"\n\t\t\t\t\t(click)=\"toggleItem(item)\"\n\t\t\t\t\t(mouseover)=\"onItemHover(item)\"\n\t\t\t\t\t[class.ng-option-disabled]=\"item.disabled\"\n\t\t\t\t\t[class.ng-option-selected]=\"item.selected\"\n\t\t\t\t\t[class.ng-optgroup]=\"item.children\"\n\t\t\t\t\t[class.ng-option]=\"!item.children\"\n\t\t\t\t\t[class.ng-option-child]=\"!!item.parent\"\n\t\t\t\t\t[class.ng-option-marked]=\"item === itemsList.markedItem\"\n\t\t\t\t\t[attr.aria-selected]=\"item.selected\"\n\t\t\t\t\t[attr.id]=\"item?.htmlId\"\n\t\t\t\t\t[attr.aria-setsize]=\"itemsList.filteredItems.length\"\n\t\t\t\t\t[attr.aria-posinset]=\"item.index + 1\">\n\t\t\t\t\t<ng-template #defaultOptionTemplate>\n\t\t\t\t\t\t<span class=\"ng-option-label\" [ngItemLabel]=\"item.label\" [escape]=\"escapeHTML\"></span>\n\t\t\t\t\t</ng-template>\n\t\t\t\t\t<ng-template\n\t\t\t\t\t\t[ngTemplateOutlet]=\"\n\t\t\t\t\t\t\titem.children ? optgroupTemplate() || defaultOptionTemplate : optionTemplate() || defaultOptionTemplate\n\t\t\t\t\t\t\"\n\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ item: item.value, item$: item, index: item.index, searchTerm: searchTerm }\">\n\t\t\t\t\t</ng-template>\n\t\t\t\t</div>\n\t\t\t}\n\t\t\t@if (showAddTag) {\n\t\t\t\t<!-- eslint-disable-next-line @angular-eslint/template/click-events-have-key-events, @angular-eslint/template/interactive-supports-focus, @angular-eslint/template/mouse-events-have-key-events -->\n\t\t\t\t<div\n\t\t\t\t\tclass=\"ng-option\"\n\t\t\t\t\t[class.ng-option-marked]=\"!itemsList.markedItem\"\n\t\t\t\t\t(mouseover)=\"itemsList.unmarkItem()\"\n\t\t\t\t\trole=\"option\"\n\t\t\t\t\t[attr.aria-selected]=\"false\"\n\t\t\t\t\t(click)=\"selectTag()\">\n\t\t\t\t\t<ng-template #defaultTagTemplate>\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t><span class=\"ng-tag-label\">{{ addTagText() || config.addTagText }}</span\n\t\t\t\t\t\t\t>\"{{ searchTerm }}\"</span\n\t\t\t\t\t\t>\n\t\t\t\t\t</ng-template>\n\t\t\t\t\t<ng-template\n\t\t\t\t\t\t[ngTemplateOutlet]=\"tagTemplate() || defaultTagTemplate\"\n\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ searchTerm: searchTerm }\">\n\t\t\t\t\t</ng-template>\n\t\t\t\t</div>\n\t\t\t}\n\t\t</ng-container>\n\t\t@if (showNoItemsFound()) {\n\t\t\t<ng-template #defaultNotFoundTemplate>\n\t\t\t\t<div class=\"ng-option ng-option-disabled\">{{ notFoundText() ?? config.notFoundText }}</div>\n\t\t\t</ng-template>\n\t\t\t<ng-template\n\t\t\t\t[ngTemplateOutlet]=\"notFoundTemplate() || defaultNotFoundTemplate\"\n\t\t\t\t[ngTemplateOutletContext]=\"{ searchTerm: searchTerm }\">\n\t\t\t</ng-template>\n\t\t}\n\t\t@if (showTypeToSearch()) {\n\t\t\t<ng-template #defaultTypeToSearchTemplate>\n\t\t\t\t<div class=\"ng-option ng-option-disabled\">{{ typeToSearchText() || config.typeToSearchText }}</div>\n\t\t\t</ng-template>\n\t\t\t<ng-template [ngTemplateOutlet]=\"typeToSearchTemplate() || defaultTypeToSearchTemplate\"></ng-template>\n\t\t}\n\t\t@if (loading() && itemsList.filteredItems.length === 0) {\n\t\t\t<ng-template #defaultLoadingTextTemplate>\n\t\t\t\t<div class=\"ng-option ng-option-disabled\">{{ loadingText() || config.loadingText }}</div>\n\t\t\t</ng-template>\n\t\t\t<ng-template\n\t\t\t\t[ngTemplateOutlet]=\"loadingTextTemplate() || defaultLoadingTextTemplate\"\n\t\t\t\t[ngTemplateOutletContext]=\"{ searchTerm: searchTerm }\">\n\t\t\t</ng-template>\n\t\t}\n\t</ng-dropdown-panel>\n}\n\n<!-- Always present aria-live region -->\n<div aria-atomic=\"true\" aria-live=\"polite\" class=\"ng-visually-hidden\" role=\"status\">\n\t@if (isOpen() && showNoItemsFound()) {\n\t\t{{ notFoundText() ?? config.notFoundText }}\n\t}\n</div>\n", styles: ["@charset \"UTF-8\";.ng-select{position:relative;display:block;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.ng-select div,.ng-select input,.ng-select span{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.ng-select [hidden]{display:none}.ng-select.ng-select-searchable .ng-select-container .ng-value-container .ng-input{opacity:1}.ng-select.ng-select-opened .ng-select-container{z-index:1001}.ng-select.ng-select-disabled .ng-select-container .ng-value-container .ng-placeholder,.ng-select.ng-select-disabled .ng-select-container .ng-value-container .ng-value{-webkit-user-select:none;user-select:none;cursor:default}.ng-select.ng-select-disabled .ng-arrow-wrapper{cursor:default}.ng-select.ng-select-filtered .ng-placeholder{display:none}.ng-select .ng-select-container{cursor:default;display:flex;outline:none;overflow:hidden;position:relative;width:100%}.ng-select .ng-select-container .ng-value-container{display:flex;flex:1}.ng-select .ng-select-container .ng-value-container .ng-input{opacity:0}.ng-select .ng-select-container .ng-value-container .ng-input>input{box-sizing:content-box;background:none transparent;border:0 none;box-shadow:none;outline:none;padding:0;cursor:default;width:100%}.ng-select .ng-select-container .ng-value-container .ng-input>input::-ms-clear{display:none}.ng-select .ng-select-container .ng-value-container .ng-input>input[readonly]{-webkit-user-select:unset;user-select:unset;width:0;padding:0}.ng-select.ng-select-single.ng-select-filtered .ng-select-container .ng-value-container .ng-value{visibility:hidden}.ng-select.ng-select-single .ng-select-container .ng-value-container,.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-value{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-value .ng-value-icon{display:none}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{position:absolute;left:0;width:100%}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value .ng-value-icon{display:none}.ng-select.ng-select-multiple .ng-select-container .ng-value-container{flex-wrap:wrap}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{position:absolute}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{white-space:nowrap}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-icon{display:none}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon{cursor:pointer}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{flex:1;z-index:2}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{z-index:1}.ng-select .ng-clear-wrapper{cursor:pointer;position:relative;width:17px;-webkit-user-select:none;user-select:none}.ng-select .ng-clear-wrapper .ng-clear{display:inline-block;font-size:18px;line-height:1;pointer-events:none}.ng-select .ng-spinner-loader{border-radius:50%;width:17px;height:17px;margin-right:5px;font-size:10px;position:relative;text-indent:-9999em;border-top:2px solid rgba(66,66,66,.2);border-right:2px solid rgba(66,66,66,.2);border-bottom:2px solid rgba(66,66,66,.2);border-left:2px solid #424242;transform:translateZ(0);animation:load8 .8s infinite linear}.ng-select .ng-spinner-loader:after{border-radius:50%;width:17px;height:17px}@-webkit-keyframes load8{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes load8{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.ng-select .ng-arrow-wrapper{cursor:pointer;position:relative;text-align:center;-webkit-user-select:none;user-select:none}.ng-select .ng-arrow-wrapper .ng-arrow{pointer-events:none;display:inline-block;height:0;width:0;position:relative}.ng-dropdown-panel{box-sizing:border-box;position:absolute;opacity:0;width:100%;z-index:1050;-webkit-overflow-scrolling:touch}.ng-dropdown-panel .ng-dropdown-panel-items{display:block;height:auto;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;max-height:240px;overflow-y:auto}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{box-sizing:border-box;cursor:pointer;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-option-label:empty:before{content:\"\\200b\"}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .highlighted{font-weight:700;text-decoration:underline}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.disabled{cursor:default}.ng-dropdown-panel .scroll-host{overflow:hidden;overflow-y:auto;position:relative;display:block;-webkit-overflow-scrolling:touch}.ng-dropdown-panel .scrollable-content{top:0;left:0;width:100%;height:100%;position:absolute}.ng-dropdown-panel .total-padding{width:1px;opacity:0}.ng-visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0;white-space:nowrap}\n"] }]
|
|
3016
|
-
}], ctorParameters: () => [], propDecorators: {
|
|
3066
|
+
}], ctorParameters: () => [], propDecorators: { _ariaLabelDropdown: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabelDropdown", required: false }] }], _ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "ariaLabel", required: false }] }], _markFirst: [{ type: i0.Input, args: [{ isSignal: true, alias: "markFirst", required: false }] }], _placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], _fixedPlaceholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "fixedPlaceholder", required: false }] }], _notFoundText: [{ type: i0.Input, args: [{ isSignal: true, alias: "notFoundText", required: false }] }], _typeToSearchText: [{ type: i0.Input, args: [{ isSignal: true, alias: "typeToSearchText", required: false }] }], _preventToggleOnRightClick: [{ type: i0.Input, args: [{ isSignal: true, alias: "preventToggleOnRightClick", required: false }] }], _addTagText: [{ type: i0.Input, args: [{ isSignal: true, alias: "addTagText", required: false }] }], _loadingText: [{ type: i0.Input, args: [{ isSignal: true, alias: "loadingText", required: false }] }], _clearAllText: [{ type: i0.Input, args: [{ isSignal: true, alias: "clearAllText", required: false }] }], _dropdownPosition: [{ type: i0.Input, args: [{ isSignal: true, alias: "dropdownPosition", required: false }] }], _appendTo: [{ type: i0.Input, args: [{ isSignal: true, alias: "appendTo", required: false }] }], _outsideClickEvent: [{ type: i0.Input, args: [{ isSignal: true, alias: "outsideClickEvent", required: false }] }], _loading: [{ type: i0.Input, args: [{ isSignal: true, alias: "loading", required: false }] }], _closeOnSelect: [{ type: i0.Input, args: [{ isSignal: true, alias: "closeOnSelect", required: false }] }], _hideSelected: [{ type: i0.Input, args: [{ isSignal: true, alias: "hideSelected", required: false }] }], _selectOnTab: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectOnTab", required: false }] }], _openOnEnter: [{ type: i0.Input, args: [{ isSignal: true, alias: "openOnEnter", required: false }] }], _maxSelectedItems: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxSelectedItems", required: false }] }], _groupBy: [{ type: i0.Input, args: [{ isSignal: true, alias: "groupBy", required: false }] }], _groupValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "groupValue", required: false }] }], _bufferAmount: [{ type: i0.Input, args: [{ isSignal: true, alias: "bufferAmount", required: false }] }], _virtualScroll: [{ type: i0.Input, args: [{ isSignal: true, alias: "virtualScroll", required: false }] }], _selectableGroup: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectableGroup", required: false }] }], _tabFocusOnClearButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "tabFocusOnClearButton", required: false }] }], _selectableGroupAsModel: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectableGroupAsModel", required: false }] }], _searchFn: [{ type: i0.Input, args: [{ isSignal: true, alias: "searchFn", required: false }] }], _trackByFn: [{ type: i0.Input, args: [{ isSignal: true, alias: "trackByFn", required: false }] }], _clearOnBackspace: [{ type: i0.Input, args: [{ isSignal: true, alias: "clearOnBackspace", required: false }] }], _labelForId: [{ type: i0.Input, args: [{ isSignal: true, alias: "labelForId", required: false }] }], _inputAttrs: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputAttrs", required: false }] }], _tabIndex: [{ type: i0.Input, args: [{ isSignal: true, alias: "tabIndex", required: false }] }], _readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], _searchWhileComposing: [{ type: i0.Input, args: [{ isSignal: true, alias: "searchWhileComposing", required: false }] }], _minTermLength: [{ type: i0.Input, args: [{ isSignal: true, alias: "minTermLength", required: false }] }], _editableSearchTerm: [{ type: i0.Input, args: [{ isSignal: true, alias: "editableSearchTerm", required: false }] }], _ngClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "ngClass", required: false }] }], _typeahead: [{ type: i0.Input, args: [{ isSignal: true, alias: "typeahead", required: false }] }], _multiple: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiple", required: false }] }], _addTag: [{ type: i0.Input, args: [{ isSignal: true, alias: "addTag", required: false }] }], _searchable: [{ type: i0.Input, args: [{ isSignal: true, alias: "searchable", required: false }] }], _clearable: [{ type: i0.Input, args: [{ isSignal: true, alias: "clearable", required: false }] }], _clearKeepsDisabledOptions: [{ type: i0.Input, args: [{ isSignal: true, alias: "clearKeepsDisabledOptions", required: false }] }], _deselectOnClick: [{ type: i0.Input, args: [{ isSignal: true, alias: "deselectOnClick", required: false }] }], _clearSearchOnAdd: [{ type: i0.Input, args: [{ isSignal: true, alias: "clearSearchOnAdd", required: false }] }], _compareWith: [{ type: i0.Input, args: [{ isSignal: true, alias: "compareWith", required: false }] }], _keyDownFn: [{ type: i0.Input, args: [{ isSignal: true, alias: "keyDownFn", required: false }] }], _popover: [{ type: i0.Input, args: [{ isSignal: true, alias: "popover", required: false }] }], bindLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "bindLabel", required: false }] }, { type: i0.Output, args: ["bindLabelChange"] }], bindValue: [{ type: i0.Input, args: [{ isSignal: true, alias: "bindValue", required: false }] }, { type: i0.Output, args: ["bindValueChange"] }], appearance: [{ type: i0.Input, args: [{ isSignal: true, alias: "appearance", required: false }] }, { type: i0.Output, args: ["appearanceChange"] }], isOpen: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOpen", required: false }] }, { type: i0.Output, args: ["isOpenChange"] }], items: [{ type: i0.Input, args: [{ isSignal: true, alias: "items", required: false }] }, { type: i0.Output, args: ["itemsChange"] }], blurEvent: [{ type: i0.Output, args: ["blur"] }], focusEvent: [{ type: i0.Output, args: ["focus"] }], changeEvent: [{ type: i0.Output, args: ["change"] }], openEvent: [{ type: i0.Output, args: ["open"] }], closeEvent: [{ type: i0.Output, args: ["close"] }], searchEvent: [{ type: i0.Output, args: ["search"] }], clearEvent: [{ type: i0.Output, args: ["clear"] }], addEvent: [{ type: i0.Output, args: ["add"] }], removeEvent: [{ type: i0.Output, args: ["remove"] }], scroll: [{ type: i0.Output, args: ["scroll"] }], scrollToEnd: [{ type: i0.Output, args: ["scrollToEnd"] }], optionTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => NgOptionTemplateDirective), { ...{ read: TemplateRef }, isSignal: true }] }], optgroupTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => NgOptgroupTemplateDirective), { ...{ read: TemplateRef }, isSignal: true }] }], labelTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => NgLabelTemplateDirective), { ...{ read: TemplateRef }, isSignal: true }] }], multiLabelTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => NgMultiLabelTemplateDirective), { ...{ read: TemplateRef }, isSignal: true }] }], headerTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => NgHeaderTemplateDirective), { ...{ read: TemplateRef }, isSignal: true }] }], footerTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => NgFooterTemplateDirective), { ...{ read: TemplateRef }, isSignal: true }] }], notFoundTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => NgNotFoundTemplateDirective), { ...{ read: TemplateRef }, isSignal: true }] }], placeholderTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => NgPlaceholderTemplateDirective), { ...{ read: TemplateRef }, isSignal: true }] }], typeToSearchTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => NgTypeToSearchTemplateDirective), { ...{ read: TemplateRef }, isSignal: true }] }], loadingTextTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => NgLoadingTextTemplateDirective), { ...{ read: TemplateRef }, isSignal: true }] }], tagTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => NgTagTemplateDirective), { ...{ read: TemplateRef }, isSignal: true }] }], loadingSpinnerTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => NgLoadingSpinnerTemplateDirective), { ...{ read: TemplateRef }, isSignal: true }] }], clearButtonTemplate: [{ type: i0.ContentChild, args: [i0.forwardRef(() => NgClearButtonTemplateDirective), { ...{ read: TemplateRef }, isSignal: true }] }], ngOptions: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => NgOptionComponent), { ...{ descendants: true }, isSignal: true }] }], dropdownPanel: [{ type: i0.ViewChild, args: [forwardRef(() => NgDropdownPanelComponent), { isSignal: true }] }], searchInput: [{ type: i0.ViewChild, args: ['searchInput', { isSignal: true }] }], clearButton: [{ type: i0.ViewChild, args: ['clearButton', { isSignal: true }] }], handleKeyDown: [{
|
|
3017
3067
|
type: HostListener,
|
|
3018
3068
|
args: ['keydown', ['$event']]
|
|
3019
3069
|
}] } });
|