@ng-select/ng-select 20.1.2 → 20.2.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.
package/index.d.ts CHANGED
@@ -1,7 +1,8 @@
1
- import * as i0 from '@angular/core';
2
- import { OnInit, OnChanges, OnDestroy, TemplateRef, EventEmitter, ElementRef, Renderer2, NgZone, SimpleChanges, AfterViewChecked, AfterViewInit, QueryList, ChangeDetectorRef, InjectionToken } from '@angular/core';
3
- import { ControlValueAccessor } from '@angular/forms';
1
+ import * as rxjs from 'rxjs';
4
2
  import { Subject } from 'rxjs';
3
+ import * as _angular_core from '@angular/core';
4
+ import { ElementRef, OnDestroy, OnChanges, OnInit, AfterViewInit, TemplateRef, SimpleChanges, InjectionToken } from '@angular/core';
5
+ import { ControlValueAccessor } from '@angular/forms';
5
6
 
6
7
  declare class NgSelectConfig {
7
8
  placeholder: string;
@@ -20,14 +21,8 @@ declare class NgSelectConfig {
20
21
  clearSearchOnAdd: boolean;
21
22
  deselectOnClick: boolean;
22
23
  tabFocusOnClear: boolean;
23
- static ɵfac: i0.ɵɵFactoryDeclaration<NgSelectConfig, never>;
24
- static ɵprov: i0.ɵɵInjectableDeclaration<NgSelectConfig>;
25
- }
26
-
27
- declare class ConsoleService {
28
- warn(message: string): void;
29
- static ɵfac: i0.ɵɵFactoryDeclaration<ConsoleService, never>;
30
- static ɵprov: i0.ɵɵInjectableDeclaration<ConsoleService>;
24
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgSelectConfig, never>;
25
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<NgSelectConfig>;
31
26
  }
32
27
 
33
28
  interface NgOption {
@@ -107,118 +102,22 @@ declare class ItemsList {
107
102
  private _flatten;
108
103
  }
109
104
 
110
- interface ItemsRangeResult {
111
- scrollHeight: number;
112
- topPadding: number;
113
- start: number;
114
- end: number;
115
- }
116
- interface PanelDimensions {
117
- itemHeight: number;
118
- panelHeight: number;
119
- itemsPerViewport: number;
120
- }
121
- declare class NgDropdownPanelService {
122
- private _dimensions;
123
- get dimensions(): PanelDimensions;
124
- calculateItems(scrollPos: number, itemsLength: number, buffer: number): ItemsRangeResult;
125
- setDimensions(itemHeight: number, panelHeight: number): void;
126
- getScrollTo(itemTop: number, itemHeight: number, lastScroll: number): number;
127
- static ɵfac: i0.ɵɵFactoryDeclaration<NgDropdownPanelService, never>;
128
- static ɵprov: i0.ɵɵInjectableDeclaration<NgDropdownPanelService>;
129
- }
130
-
131
- declare class NgDropdownPanelComponent implements OnInit, OnChanges, OnDestroy {
132
- private _renderer;
133
- private _zone;
134
- private _panelService;
135
- private _document;
136
- items: NgOption[];
137
- markedItem: NgOption;
138
- position: DropdownPosition;
139
- appendTo: string;
140
- bufferAmount: number;
141
- virtualScroll: boolean;
142
- headerTemplate: TemplateRef<any>;
143
- footerTemplate: TemplateRef<any>;
144
- filterValue: string;
145
- ariaLabelDropdown: i0.InputSignal<string>;
146
- update: EventEmitter<any[]>;
147
- scroll: EventEmitter<{
148
- start: number;
149
- end: number;
150
- }>;
151
- scrollToEnd: EventEmitter<void>;
152
- outsideClick: EventEmitter<void>;
153
- contentElementRef: ElementRef;
154
- scrollElementRef: ElementRef;
155
- paddingElementRef: ElementRef;
156
- private readonly _destroy$;
157
- private readonly _dropdown;
158
- private _virtualPadding;
159
- private _scrollablePanel;
160
- private _contentPanel;
161
- private _select;
162
- private _parent;
163
- private _scrollToEndFired;
164
- private _updateScrollHeight;
165
- private _lastScrollPosition;
166
- constructor(_renderer: Renderer2, _zone: NgZone, _panelService: NgDropdownPanelService, _elementRef: ElementRef, _document: any);
167
- private _currentPosition;
168
- get currentPosition(): DropdownPosition;
169
- private _itemsLength;
170
- private get itemsLength();
171
- private set itemsLength(value);
172
- private get _startOffset();
173
- ngOnInit(): void;
174
- ngOnChanges(changes: SimpleChanges): void;
175
- ngOnDestroy(): void;
176
- scrollTo(option: NgOption, startFromOption?: boolean): void;
177
- scrollToTag(): void;
178
- adjustPosition(): void;
179
- private _handleDropdownPosition;
180
- private _updateDropdownClass;
181
- private _handleScroll;
182
- private _handleOutsideClick;
183
- private _checkToClose;
184
- private _onItemsChange;
185
- private _updateItems;
186
- private _updateItemsRange;
187
- private _onContentScrolled;
188
- private _updateVirtualHeight;
189
- private _setVirtualHeight;
190
- private _onItemsLengthChanged;
191
- private _renderItemsRange;
192
- private _measureDimensions;
193
- private _fireScrollToEnd;
194
- private _calculateCurrentPosition;
195
- private _appendDropdown;
196
- private _updateXPosition;
197
- private _updateYPosition;
198
- private _setupMousedownListener;
199
- static ɵfac: i0.ɵɵFactoryDeclaration<NgDropdownPanelComponent, [null, null, null, null, { optional: true; }]>;
200
- static ɵcmp: i0.ɵɵComponentDeclaration<NgDropdownPanelComponent, "ng-dropdown-panel", never, { "items": { "alias": "items"; "required": false; }; "markedItem": { "alias": "markedItem"; "required": false; }; "position": { "alias": "position"; "required": false; }; "appendTo": { "alias": "appendTo"; "required": false; }; "bufferAmount": { "alias": "bufferAmount"; "required": false; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; }; "headerTemplate": { "alias": "headerTemplate"; "required": false; }; "footerTemplate": { "alias": "footerTemplate"; "required": false; }; "filterValue": { "alias": "filterValue"; "required": false; }; "ariaLabelDropdown": { "alias": "ariaLabelDropdown"; "required": false; "isSignal": true; }; }, { "update": "update"; "scroll": "scroll"; "scrollToEnd": "scrollToEnd"; "outsideClick": "outsideClick"; }, never, ["*"], true, never>;
201
- static ngAcceptInputType_virtualScroll: unknown;
202
- }
203
-
204
- declare class NgOptionComponent implements OnChanges, AfterViewChecked, OnDestroy {
205
- elementRef: ElementRef<HTMLElement>;
105
+ type StateChange = {
206
106
  value: any;
207
107
  disabled: boolean;
208
- readonly stateChange$: Subject<{
209
- value: any;
210
- disabled: boolean;
211
- label?: string;
212
- }>;
213
- private _previousLabel;
214
- constructor(elementRef: ElementRef<HTMLElement>);
215
- get label(): string;
216
- ngOnChanges(changes: SimpleChanges): void;
217
- ngAfterViewChecked(): void;
218
- ngOnDestroy(): void;
219
- static ɵfac: i0.ɵɵFactoryDeclaration<NgOptionComponent, never>;
220
- static ɵcmp: i0.ɵɵComponentDeclaration<NgOptionComponent, "ng-option", never, { "value": { "alias": "value"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, {}, never, ["*"], true, never>;
221
- static ngAcceptInputType_disabled: unknown;
108
+ label?: string;
109
+ };
110
+ declare class NgOptionComponent {
111
+ readonly value: _angular_core.InputSignal<any>;
112
+ readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
113
+ readonly elementRef: ElementRef<any>;
114
+ readonly label: _angular_core.WritableSignal<string>;
115
+ constructor();
116
+ readonly stateChange: _angular_core.Signal<StateChange>;
117
+ readonly stateChange$: rxjs.Observable<StateChange>;
118
+ private get _label();
119
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgOptionComponent, never>;
120
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgOptionComponent, "ng-option", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
222
121
  }
223
122
 
224
123
  declare const SELECTION_MODEL_FACTORY: InjectionToken<SelectionModelFactory>;
@@ -226,94 +125,102 @@ type AddTagFn = (term: string) => any | Promise<any>;
226
125
  type CompareWithFn = (a: any, b: any) => boolean;
227
126
  type GroupValueFn = (key: string | any, children: any[]) => string | any;
228
127
  declare class NgSelectComponent implements OnDestroy, OnChanges, OnInit, AfterViewInit, ControlValueAccessor {
229
- classes: string;
128
+ readonly classes: string;
230
129
  private readonly autoFocus;
231
- config: NgSelectConfig;
130
+ readonly config: NgSelectConfig;
232
131
  private readonly _cd;
233
132
  private readonly _console;
234
- ariaLabelDropdown: string;
235
- bindLabel: string;
236
- bindValue: string;
237
- ariaLabel: string | undefined;
238
- markFirst: boolean;
239
- placeholder: string;
240
- fixedPlaceholder: boolean;
241
- notFoundText: string;
242
- typeToSearchText: string;
243
- preventToggleOnRightClick: boolean;
244
- addTagText: string;
245
- loadingText: string;
246
- clearAllText: string;
247
- appearance: string;
248
- dropdownPosition: DropdownPosition;
249
- appendTo: string;
250
- loading: boolean;
251
- closeOnSelect: boolean;
252
- hideSelected: boolean;
253
- selectOnTab: boolean;
254
- openOnEnter: boolean;
255
- maxSelectedItems: number;
256
- groupBy: string | ((value: any) => any);
257
- groupValue: GroupValueFn;
258
- bufferAmount: number;
259
- virtualScroll: boolean;
260
- selectableGroup: boolean;
261
- selectableGroupAsModel: boolean;
262
- searchFn: any;
263
- trackByFn: any;
264
- clearOnBackspace: boolean;
265
- labelForId: any;
266
- inputAttrs: {
133
+ readonly _disabled: _angular_core.WritableSignal<boolean>;
134
+ readonly ariaLabelDropdown: _angular_core.InputSignal<string>;
135
+ readonly ariaLabel: _angular_core.InputSignal<string>;
136
+ readonly markFirst: _angular_core.InputSignalWithTransform<boolean, unknown>;
137
+ readonly placeholder: _angular_core.InputSignal<string>;
138
+ readonly fixedPlaceholder: _angular_core.InputSignal<boolean>;
139
+ readonly notFoundText: _angular_core.InputSignal<string>;
140
+ readonly typeToSearchText: _angular_core.InputSignal<string>;
141
+ readonly preventToggleOnRightClick: _angular_core.InputSignal<boolean>;
142
+ readonly addTagText: _angular_core.InputSignal<string>;
143
+ readonly loadingText: _angular_core.InputSignal<string>;
144
+ readonly clearAllText: _angular_core.InputSignal<string>;
145
+ readonly dropdownPosition: _angular_core.InputSignal<DropdownPosition>;
146
+ readonly appendTo: _angular_core.InputSignal<string>;
147
+ readonly loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
148
+ readonly closeOnSelect: _angular_core.InputSignalWithTransform<boolean, unknown>;
149
+ readonly hideSelected: _angular_core.InputSignalWithTransform<boolean, unknown>;
150
+ readonly selectOnTab: _angular_core.InputSignalWithTransform<boolean, unknown>;
151
+ readonly openOnEnter: _angular_core.InputSignalWithTransform<boolean, unknown>;
152
+ readonly maxSelectedItems: _angular_core.InputSignalWithTransform<number, unknown>;
153
+ readonly groupBy: _angular_core.InputSignal<string | ((value: any) => any)>;
154
+ readonly groupValue: _angular_core.InputSignal<GroupValueFn>;
155
+ readonly bufferAmount: _angular_core.InputSignalWithTransform<number, unknown>;
156
+ readonly virtualScroll: _angular_core.InputSignalWithTransform<boolean, unknown>;
157
+ readonly selectableGroup: _angular_core.InputSignalWithTransform<boolean, unknown>;
158
+ readonly tabFocusOnClearButton: _angular_core.InputSignal<boolean>;
159
+ readonly selectableGroupAsModel: _angular_core.InputSignalWithTransform<boolean, unknown>;
160
+ readonly searchFn: _angular_core.InputSignal<any>;
161
+ readonly trackByFn: _angular_core.InputSignal<any>;
162
+ readonly clearOnBackspace: _angular_core.InputSignalWithTransform<boolean, unknown>;
163
+ readonly labelForId: _angular_core.InputSignal<any>;
164
+ readonly inputAttrs: _angular_core.InputSignal<{
267
165
  [key: string]: string;
268
- };
269
- tabIndex: number;
270
- tabFocusOnClearButton: i0.InputSignal<boolean>;
271
- readonly: boolean;
272
- searchWhileComposing: boolean;
273
- minTermLength: number;
274
- editableSearchTerm: boolean;
275
- ngClass: any;
276
- typeahead: Subject<string>;
277
- multiple: boolean;
278
- addTag: boolean | AddTagFn;
279
- searchable: boolean;
280
- clearable: boolean;
281
- isOpen?: boolean;
282
- blurEvent: EventEmitter<any>;
283
- focusEvent: EventEmitter<any>;
284
- changeEvent: EventEmitter<any>;
285
- openEvent: EventEmitter<any>;
286
- closeEvent: EventEmitter<any>;
287
- searchEvent: EventEmitter<{
166
+ }>;
167
+ readonly tabIndex: _angular_core.InputSignalWithTransform<number, unknown>;
168
+ readonly readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
169
+ readonly searchWhileComposing: _angular_core.InputSignalWithTransform<boolean, unknown>;
170
+ readonly minTermLength: _angular_core.InputSignalWithTransform<number, unknown>;
171
+ readonly editableSearchTerm: _angular_core.InputSignalWithTransform<boolean, unknown>;
172
+ readonly ngClass: _angular_core.InputSignal<any>;
173
+ readonly typeahead: _angular_core.InputSignal<Subject<string>>;
174
+ readonly multiple: _angular_core.InputSignalWithTransform<boolean, unknown>;
175
+ readonly addTag: _angular_core.InputSignal<boolean | AddTagFn>;
176
+ readonly searchable: _angular_core.InputSignalWithTransform<boolean, unknown>;
177
+ readonly clearable: _angular_core.InputSignalWithTransform<boolean, unknown>;
178
+ readonly deselectOnClick: _angular_core.InputSignal<boolean>;
179
+ readonly clearSearchOnAdd: _angular_core.InputSignal<any>;
180
+ readonly compareWith: _angular_core.InputSignalWithTransform<CompareWithFn, CompareWithFn>;
181
+ readonly bindLabel: _angular_core.ModelSignal<string>;
182
+ readonly bindValue: _angular_core.ModelSignal<string>;
183
+ readonly appearance: _angular_core.ModelSignal<string>;
184
+ readonly isOpen: _angular_core.ModelSignal<boolean>;
185
+ readonly items: _angular_core.ModelSignal<any[]>;
186
+ readonly blurEvent: _angular_core.OutputEmitterRef<any>;
187
+ readonly focusEvent: _angular_core.OutputEmitterRef<any>;
188
+ readonly changeEvent: _angular_core.OutputEmitterRef<any>;
189
+ readonly openEvent: _angular_core.OutputEmitterRef<void>;
190
+ readonly closeEvent: _angular_core.OutputEmitterRef<void>;
191
+ readonly searchEvent: _angular_core.OutputEmitterRef<{
288
192
  term: string;
289
193
  items: any[];
290
194
  }>;
291
- clearEvent: EventEmitter<any>;
292
- addEvent: EventEmitter<any>;
293
- removeEvent: EventEmitter<any>;
294
- scroll: EventEmitter<{
195
+ readonly clearEvent: _angular_core.OutputEmitterRef<void>;
196
+ readonly addEvent: _angular_core.OutputEmitterRef<any>;
197
+ readonly removeEvent: _angular_core.OutputEmitterRef<any>;
198
+ readonly scroll: _angular_core.OutputEmitterRef<{
295
199
  start: number;
296
200
  end: number;
297
201
  }>;
298
- scrollToEnd: EventEmitter<any>;
299
- optionTemplate: TemplateRef<any>;
300
- optgroupTemplate: TemplateRef<any>;
301
- labelTemplate: TemplateRef<any>;
302
- multiLabelTemplate: TemplateRef<any>;
303
- headerTemplate: TemplateRef<any>;
304
- footerTemplate: TemplateRef<any>;
305
- notFoundTemplate: TemplateRef<any>;
306
- placeholderTemplate: TemplateRef<any>;
307
- typeToSearchTemplate: TemplateRef<any>;
308
- loadingTextTemplate: TemplateRef<any>;
309
- tagTemplate: TemplateRef<any>;
310
- loadingSpinnerTemplate: TemplateRef<any>;
311
- clearButtonTemplate: TemplateRef<any>;
312
- dropdownPanel: NgDropdownPanelComponent;
313
- searchInput: ElementRef<HTMLInputElement>;
314
- clearButton: ElementRef<HTMLSpanElement>;
315
- ngOptions: QueryList<NgOptionComponent>;
316
- useDefaultClass: boolean;
202
+ readonly scrollToEnd: _angular_core.OutputEmitterRef<any>;
203
+ readonly disabled: _angular_core.Signal<boolean>;
204
+ readonly clearSearchOnAddValue: _angular_core.Signal<any>;
205
+ readonly deselectOnClickValue: _angular_core.Signal<boolean>;
206
+ readonly optionTemplate: _angular_core.Signal<TemplateRef<any>>;
207
+ readonly optgroupTemplate: _angular_core.Signal<TemplateRef<any>>;
208
+ readonly labelTemplate: _angular_core.Signal<TemplateRef<any>>;
209
+ readonly multiLabelTemplate: _angular_core.Signal<TemplateRef<any>>;
210
+ readonly headerTemplate: _angular_core.Signal<TemplateRef<any>>;
211
+ readonly footerTemplate: _angular_core.Signal<TemplateRef<any>>;
212
+ readonly notFoundTemplate: _angular_core.Signal<TemplateRef<any>>;
213
+ readonly placeholderTemplate: _angular_core.Signal<TemplateRef<any>>;
214
+ readonly typeToSearchTemplate: _angular_core.Signal<TemplateRef<any>>;
215
+ readonly loadingTextTemplate: _angular_core.Signal<TemplateRef<any>>;
216
+ readonly tagTemplate: _angular_core.Signal<TemplateRef<any>>;
217
+ readonly loadingSpinnerTemplate: _angular_core.Signal<TemplateRef<any>>;
218
+ readonly clearButtonTemplate: _angular_core.Signal<TemplateRef<any>>;
219
+ readonly dropdownPanel: _angular_core.Signal<any>;
220
+ readonly searchInput: _angular_core.Signal<ElementRef<HTMLInputElement>>;
221
+ readonly clearButton: _angular_core.Signal<ElementRef<HTMLSpanElement>>;
222
+ ngOptions: _angular_core.Signal<readonly NgOptionComponent[]>;
223
+ ngOptionsObservable: rxjs.Observable<readonly NgOptionComponent[]>;
317
224
  itemsList: ItemsList;
318
225
  viewPortItems: NgOption[];
319
226
  searchTerm: string;
@@ -321,7 +228,7 @@ declare class NgSelectComponent implements OnDestroy, OnChanges, OnInit, AfterVi
321
228
  element: HTMLElement;
322
229
  focused: boolean;
323
230
  escapeHTML: boolean;
324
- tabFocusOnClear: i0.WritableSignal<boolean>;
231
+ tabFocusOnClear: _angular_core.WritableSignal<boolean>;
325
232
  private _itemsAreUsed;
326
233
  private readonly _defaultLabel;
327
234
  private _primitive;
@@ -330,23 +237,8 @@ declare class NgSelectComponent implements OnDestroy, OnChanges, OnInit, AfterVi
330
237
  private _isComposing;
331
238
  private readonly _destroy$;
332
239
  private readonly _keyPress$;
333
- constructor(classes: string, autoFocus: any, config: NgSelectConfig, newSelectionModel: SelectionModelFactory | undefined, _elementRef: ElementRef<HTMLElement>, _cd: ChangeDetectorRef, _console: ConsoleService);
240
+ constructor();
334
241
  get filtered(): boolean;
335
- get single(): boolean;
336
- private _items;
337
- get items(): readonly any[] | null | undefined;
338
- set items(value: readonly any[] | null | undefined);
339
- private _disabled;
340
- get disabled(): boolean;
341
- private _compareWith;
342
- get compareWith(): CompareWithFn;
343
- set compareWith(fn: CompareWithFn);
344
- private _clearSearchOnAdd;
345
- get clearSearchOnAdd(): boolean;
346
- set clearSearchOnAdd(value: boolean);
347
- private _deselectOnClick;
348
- get deselectOnClick(): boolean;
349
- set deselectOnClick(value: boolean);
350
242
  get selectedItems(): NgOption[];
351
243
  get selectedValues(): any[];
352
244
  get hasValue(): boolean;
@@ -355,7 +247,7 @@ declare class NgSelectComponent implements OnDestroy, OnChanges, OnInit, AfterVi
355
247
  private get _editableSearchTerm();
356
248
  private get _isTypeahead();
357
249
  private get _validTerm();
358
- keyDownFn: (_: KeyboardEvent) => boolean;
250
+ readonly keyDownFn: _angular_core.InputSignal<(_: KeyboardEvent) => boolean>;
359
251
  clearItem: (item: any) => void;
360
252
  ngOnInit(): void;
361
253
  ngOnChanges(changes: SimpleChanges): void;
@@ -434,122 +326,186 @@ declare class NgSelectComponent implements OnDestroy, OnChanges, OnInit, AfterVi
434
326
  * @returns `true` if disableVirtualScroll is enabled, `false` otherwise
435
327
  */
436
328
  private isVirtualScrollDisabled;
437
- static ɵfac: i0.ɵɵFactoryDeclaration<NgSelectComponent, [{ attribute: "class"; }, { attribute: "autofocus"; }, null, { optional: true; }, null, null, null]>;
438
- static ɵcmp: i0.ɵɵComponentDeclaration<NgSelectComponent, "ng-select", never, { "ariaLabelDropdown": { "alias": "ariaLabelDropdown"; "required": false; }; "bindLabel": { "alias": "bindLabel"; "required": false; }; "bindValue": { "alias": "bindValue"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "markFirst": { "alias": "markFirst"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "fixedPlaceholder": { "alias": "fixedPlaceholder"; "required": false; }; "notFoundText": { "alias": "notFoundText"; "required": false; }; "typeToSearchText": { "alias": "typeToSearchText"; "required": false; }; "preventToggleOnRightClick": { "alias": "preventToggleOnRightClick"; "required": false; }; "addTagText": { "alias": "addTagText"; "required": false; }; "loadingText": { "alias": "loadingText"; "required": false; }; "clearAllText": { "alias": "clearAllText"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "dropdownPosition": { "alias": "dropdownPosition"; "required": false; }; "appendTo": { "alias": "appendTo"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "closeOnSelect": { "alias": "closeOnSelect"; "required": false; }; "hideSelected": { "alias": "hideSelected"; "required": false; }; "selectOnTab": { "alias": "selectOnTab"; "required": false; }; "openOnEnter": { "alias": "openOnEnter"; "required": false; }; "maxSelectedItems": { "alias": "maxSelectedItems"; "required": false; }; "groupBy": { "alias": "groupBy"; "required": false; }; "groupValue": { "alias": "groupValue"; "required": false; }; "bufferAmount": { "alias": "bufferAmount"; "required": false; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; }; "selectableGroup": { "alias": "selectableGroup"; "required": false; }; "selectableGroupAsModel": { "alias": "selectableGroupAsModel"; "required": false; }; "searchFn": { "alias": "searchFn"; "required": false; }; "trackByFn": { "alias": "trackByFn"; "required": false; }; "clearOnBackspace": { "alias": "clearOnBackspace"; "required": false; }; "labelForId": { "alias": "labelForId"; "required": false; }; "inputAttrs": { "alias": "inputAttrs"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "tabFocusOnClearButton": { "alias": "tabFocusOnClearButton"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; }; "searchWhileComposing": { "alias": "searchWhileComposing"; "required": false; }; "minTermLength": { "alias": "minTermLength"; "required": false; }; "editableSearchTerm": { "alias": "editableSearchTerm"; "required": false; }; "ngClass": { "alias": "ngClass"; "required": false; }; "typeahead": { "alias": "typeahead"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "addTag": { "alias": "addTag"; "required": false; }; "searchable": { "alias": "searchable"; "required": false; }; "clearable": { "alias": "clearable"; "required": false; }; "isOpen": { "alias": "isOpen"; "required": false; }; "items": { "alias": "items"; "required": false; }; "compareWith": { "alias": "compareWith"; "required": false; }; "clearSearchOnAdd": { "alias": "clearSearchOnAdd"; "required": false; }; "deselectOnClick": { "alias": "deselectOnClick"; "required": false; }; "keyDownFn": { "alias": "keyDownFn"; "required": false; }; }, { "blurEvent": "blur"; "focusEvent": "focus"; "changeEvent": "change"; "openEvent": "open"; "closeEvent": "close"; "searchEvent": "search"; "clearEvent": "clear"; "addEvent": "add"; "removeEvent": "remove"; "scroll": "scroll"; "scrollToEnd": "scrollToEnd"; }, ["optionTemplate", "optgroupTemplate", "labelTemplate", "multiLabelTemplate", "headerTemplate", "footerTemplate", "notFoundTemplate", "placeholderTemplate", "typeToSearchTemplate", "loadingTextTemplate", "tagTemplate", "loadingSpinnerTemplate", "clearButtonTemplate", "ngOptions"], never, true, never>;
439
- static ngAcceptInputType_markFirst: unknown;
440
- static ngAcceptInputType_loading: unknown;
441
- static ngAcceptInputType_closeOnSelect: unknown;
442
- static ngAcceptInputType_hideSelected: unknown;
443
- static ngAcceptInputType_selectOnTab: unknown;
444
- static ngAcceptInputType_openOnEnter: unknown;
445
- static ngAcceptInputType_maxSelectedItems: unknown;
446
- static ngAcceptInputType_bufferAmount: unknown;
447
- static ngAcceptInputType_virtualScroll: unknown;
448
- static ngAcceptInputType_selectableGroup: unknown;
449
- static ngAcceptInputType_selectableGroupAsModel: unknown;
450
- static ngAcceptInputType_clearOnBackspace: unknown;
451
- static ngAcceptInputType_tabIndex: unknown;
452
- static ngAcceptInputType_readonly: unknown;
453
- static ngAcceptInputType_searchWhileComposing: unknown;
454
- static ngAcceptInputType_minTermLength: unknown;
455
- static ngAcceptInputType_editableSearchTerm: unknown;
456
- static ngAcceptInputType_multiple: unknown;
457
- static ngAcceptInputType_searchable: unknown;
458
- static ngAcceptInputType_clearable: unknown;
329
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgSelectComponent, never>;
330
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgSelectComponent, "ng-select", never, { "ariaLabelDropdown": { "alias": "ariaLabelDropdown"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "markFirst": { "alias": "markFirst"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "fixedPlaceholder": { "alias": "fixedPlaceholder"; "required": false; "isSignal": true; }; "notFoundText": { "alias": "notFoundText"; "required": false; "isSignal": true; }; "typeToSearchText": { "alias": "typeToSearchText"; "required": false; "isSignal": true; }; "preventToggleOnRightClick": { "alias": "preventToggleOnRightClick"; "required": false; "isSignal": true; }; "addTagText": { "alias": "addTagText"; "required": false; "isSignal": true; }; "loadingText": { "alias": "loadingText"; "required": false; "isSignal": true; }; "clearAllText": { "alias": "clearAllText"; "required": false; "isSignal": true; }; "dropdownPosition": { "alias": "dropdownPosition"; "required": false; "isSignal": true; }; "appendTo": { "alias": "appendTo"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "closeOnSelect": { "alias": "closeOnSelect"; "required": false; "isSignal": true; }; "hideSelected": { "alias": "hideSelected"; "required": false; "isSignal": true; }; "selectOnTab": { "alias": "selectOnTab"; "required": false; "isSignal": true; }; "openOnEnter": { "alias": "openOnEnter"; "required": false; "isSignal": true; }; "maxSelectedItems": { "alias": "maxSelectedItems"; "required": false; "isSignal": true; }; "groupBy": { "alias": "groupBy"; "required": false; "isSignal": true; }; "groupValue": { "alias": "groupValue"; "required": false; "isSignal": true; }; "bufferAmount": { "alias": "bufferAmount"; "required": false; "isSignal": true; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; "isSignal": true; }; "selectableGroup": { "alias": "selectableGroup"; "required": false; "isSignal": true; }; "tabFocusOnClearButton": { "alias": "tabFocusOnClearButton"; "required": false; "isSignal": true; }; "selectableGroupAsModel": { "alias": "selectableGroupAsModel"; "required": false; "isSignal": true; }; "searchFn": { "alias": "searchFn"; "required": false; "isSignal": true; }; "trackByFn": { "alias": "trackByFn"; "required": false; "isSignal": true; }; "clearOnBackspace": { "alias": "clearOnBackspace"; "required": false; "isSignal": true; }; "labelForId": { "alias": "labelForId"; "required": false; "isSignal": true; }; "inputAttrs": { "alias": "inputAttrs"; "required": false; "isSignal": true; }; "tabIndex": { "alias": "tabIndex"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "searchWhileComposing": { "alias": "searchWhileComposing"; "required": false; "isSignal": true; }; "minTermLength": { "alias": "minTermLength"; "required": false; "isSignal": true; }; "editableSearchTerm": { "alias": "editableSearchTerm"; "required": false; "isSignal": true; }; "ngClass": { "alias": "ngClass"; "required": false; "isSignal": true; }; "typeahead": { "alias": "typeahead"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "addTag": { "alias": "addTag"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "deselectOnClick": { "alias": "deselectOnClick"; "required": false; "isSignal": true; }; "clearSearchOnAdd": { "alias": "clearSearchOnAdd"; "required": false; "isSignal": true; }; "compareWith": { "alias": "compareWith"; "required": false; "isSignal": true; }; "bindLabel": { "alias": "bindLabel"; "required": false; "isSignal": true; }; "bindValue": { "alias": "bindValue"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "keyDownFn": { "alias": "keyDownFn"; "required": false; "isSignal": true; }; }, { "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"; }, ["optionTemplate", "optgroupTemplate", "labelTemplate", "multiLabelTemplate", "headerTemplate", "footerTemplate", "notFoundTemplate", "placeholderTemplate", "typeToSearchTemplate", "loadingTextTemplate", "tagTemplate", "loadingSpinnerTemplate", "clearButtonTemplate", "ngOptions"], never, true, never>;
459
331
  }
460
332
 
461
- declare class NgItemLabelDirective implements OnChanges {
462
- private element;
463
- ngItemLabel: string;
464
- escape: boolean;
465
- constructor(element: ElementRef<HTMLElement>);
333
+ declare class NgDropdownPanelComponent implements OnInit, OnChanges, OnDestroy {
334
+ private _renderer;
335
+ private _zone;
336
+ private _panelService;
337
+ private _document;
338
+ private _dropdown;
339
+ readonly items: _angular_core.InputSignal<NgOption[]>;
340
+ readonly markedItem: _angular_core.InputSignal<NgOption>;
341
+ readonly position: _angular_core.InputSignal<DropdownPosition>;
342
+ readonly appendTo: _angular_core.InputSignal<string>;
343
+ readonly bufferAmount: _angular_core.InputSignal<number>;
344
+ readonly virtualScroll: _angular_core.InputSignalWithTransform<boolean, unknown>;
345
+ readonly headerTemplate: _angular_core.InputSignal<TemplateRef<any>>;
346
+ readonly footerTemplate: _angular_core.InputSignal<TemplateRef<any>>;
347
+ readonly filterValue: _angular_core.InputSignal<string>;
348
+ readonly ariaLabelDropdown: _angular_core.InputSignal<string>;
349
+ readonly update: _angular_core.OutputEmitterRef<any[]>;
350
+ readonly scroll: _angular_core.OutputEmitterRef<{
351
+ start: number;
352
+ end: number;
353
+ }>;
354
+ readonly scrollToEnd: _angular_core.OutputEmitterRef<void>;
355
+ readonly outsideClick: _angular_core.OutputEmitterRef<void>;
356
+ private readonly contentElementRef;
357
+ private readonly scrollElementRef;
358
+ private readonly paddingElementRef;
359
+ private readonly _destroy$;
360
+ private readonly _virtualPadding;
361
+ private readonly _scrollablePanel;
362
+ private readonly _contentPanel;
363
+ private _select;
364
+ private _parent;
365
+ private _scrollToEndFired;
366
+ private _updateScrollHeight;
367
+ private _lastScrollPosition;
368
+ private _currentPosition;
369
+ get currentPosition(): DropdownPosition;
370
+ private _itemsLength;
371
+ private get itemsLength();
372
+ private set itemsLength(value);
373
+ private get _startOffset();
374
+ ngOnInit(): void;
466
375
  ngOnChanges(changes: SimpleChanges): void;
467
- static ɵfac: i0.ɵɵFactoryDeclaration<NgItemLabelDirective, never>;
468
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgItemLabelDirective, "[ngItemLabel]", never, { "ngItemLabel": { "alias": "ngItemLabel"; "required": false; }; "escape": { "alias": "escape"; "required": false; }; }, {}, never, never, true, never>;
376
+ ngOnDestroy(): void;
377
+ scrollTo(option: NgOption, startFromOption?: boolean): void;
378
+ scrollToTag(): void;
379
+ adjustPosition(): void;
380
+ private _handleDropdownPosition;
381
+ private _updateDropdownClass;
382
+ private _handleScroll;
383
+ private _handleOutsideClick;
384
+ private _checkToClose;
385
+ private _onItemsChange;
386
+ private _updateItems;
387
+ private _updateItemsRange;
388
+ private _onContentScrolled;
389
+ private _updateVirtualHeight;
390
+ private _setVirtualHeight;
391
+ private _onItemsLengthChanged;
392
+ private _renderItemsRange;
393
+ private _measureDimensions;
394
+ private _fireScrollToEnd;
395
+ private _calculateCurrentPosition;
396
+ private _appendDropdown;
397
+ private _updateXPosition;
398
+ private _updateYPosition;
399
+ private _setupMousedownListener;
400
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgDropdownPanelComponent, never>;
401
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgDropdownPanelComponent, "ng-dropdown-panel", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "markedItem": { "alias": "markedItem"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "appendTo": { "alias": "appendTo"; "required": false; "isSignal": true; }; "bufferAmount": { "alias": "bufferAmount"; "required": false; "isSignal": true; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; "isSignal": true; }; "headerTemplate": { "alias": "headerTemplate"; "required": false; "isSignal": true; }; "footerTemplate": { "alias": "footerTemplate"; "required": false; "isSignal": true; }; "filterValue": { "alias": "filterValue"; "required": false; "isSignal": true; }; "ariaLabelDropdown": { "alias": "ariaLabelDropdown"; "required": false; "isSignal": true; }; }, { "update": "update"; "scroll": "scroll"; "scrollToEnd": "scrollToEnd"; "outsideClick": "outsideClick"; }, never, ["*"], true, never>;
402
+ }
403
+
404
+ declare class NgItemLabelDirective {
405
+ private element;
406
+ ngItemLabel: _angular_core.InputSignal<string>;
407
+ escape: _angular_core.InputSignal<boolean>;
408
+ constructor();
409
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgItemLabelDirective, never>;
410
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgItemLabelDirective, "[ngItemLabel]", never, { "ngItemLabel": { "alias": "ngItemLabel"; "required": false; "isSignal": true; }; "escape": { "alias": "escape"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
469
411
  }
470
412
  declare class NgOptionTemplateDirective {
471
- template: TemplateRef<any>;
472
- constructor(template: TemplateRef<any>);
473
- static ɵfac: i0.ɵɵFactoryDeclaration<NgOptionTemplateDirective, never>;
474
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgOptionTemplateDirective, "[ng-option-tmp]", never, {}, {}, never, never, true, never>;
413
+ readonly template: TemplateRef<any>;
414
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgOptionTemplateDirective, never>;
415
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgOptionTemplateDirective, "[ng-option-tmp]", never, {}, {}, never, never, true, never>;
475
416
  }
476
417
  declare class NgOptgroupTemplateDirective {
477
- template: TemplateRef<any>;
478
- constructor(template: TemplateRef<any>);
479
- static ɵfac: i0.ɵɵFactoryDeclaration<NgOptgroupTemplateDirective, never>;
480
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgOptgroupTemplateDirective, "[ng-optgroup-tmp]", never, {}, {}, never, never, true, never>;
418
+ readonly template: TemplateRef<any>;
419
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgOptgroupTemplateDirective, never>;
420
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgOptgroupTemplateDirective, "[ng-optgroup-tmp]", never, {}, {}, never, never, true, never>;
481
421
  }
482
422
  declare class NgLabelTemplateDirective {
483
- template: TemplateRef<any>;
484
- constructor(template: TemplateRef<any>);
485
- static ɵfac: i0.ɵɵFactoryDeclaration<NgLabelTemplateDirective, never>;
486
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgLabelTemplateDirective, "[ng-label-tmp]", never, {}, {}, never, never, true, never>;
423
+ readonly template: TemplateRef<any>;
424
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgLabelTemplateDirective, never>;
425
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgLabelTemplateDirective, "[ng-label-tmp]", never, {}, {}, never, never, true, never>;
487
426
  }
488
427
  declare class NgMultiLabelTemplateDirective {
489
- template: TemplateRef<any>;
490
- constructor(template: TemplateRef<any>);
491
- static ɵfac: i0.ɵɵFactoryDeclaration<NgMultiLabelTemplateDirective, never>;
492
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgMultiLabelTemplateDirective, "[ng-multi-label-tmp]", never, {}, {}, never, never, true, never>;
428
+ readonly template: TemplateRef<any>;
429
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgMultiLabelTemplateDirective, never>;
430
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgMultiLabelTemplateDirective, "[ng-multi-label-tmp]", never, {}, {}, never, never, true, never>;
493
431
  }
494
432
  declare class NgHeaderTemplateDirective {
495
- template: TemplateRef<any>;
496
- constructor(template: TemplateRef<any>);
497
- static ɵfac: i0.ɵɵFactoryDeclaration<NgHeaderTemplateDirective, never>;
498
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgHeaderTemplateDirective, "[ng-header-tmp]", never, {}, {}, never, never, true, never>;
433
+ readonly template: TemplateRef<any>;
434
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgHeaderTemplateDirective, never>;
435
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgHeaderTemplateDirective, "[ng-header-tmp]", never, {}, {}, never, never, true, never>;
499
436
  }
500
437
  declare class NgFooterTemplateDirective {
501
- template: TemplateRef<any>;
502
- constructor(template: TemplateRef<any>);
503
- static ɵfac: i0.ɵɵFactoryDeclaration<NgFooterTemplateDirective, never>;
504
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgFooterTemplateDirective, "[ng-footer-tmp]", never, {}, {}, never, never, true, never>;
438
+ readonly template: TemplateRef<any>;
439
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgFooterTemplateDirective, never>;
440
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgFooterTemplateDirective, "[ng-footer-tmp]", never, {}, {}, never, never, true, never>;
505
441
  }
506
442
  declare class NgNotFoundTemplateDirective {
507
- template: TemplateRef<any>;
508
- constructor(template: TemplateRef<any>);
509
- static ɵfac: i0.ɵɵFactoryDeclaration<NgNotFoundTemplateDirective, never>;
510
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgNotFoundTemplateDirective, "[ng-notfound-tmp]", never, {}, {}, never, never, true, never>;
443
+ readonly template: TemplateRef<any>;
444
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgNotFoundTemplateDirective, never>;
445
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgNotFoundTemplateDirective, "[ng-notfound-tmp]", never, {}, {}, never, never, true, never>;
511
446
  }
512
447
  declare class NgPlaceholderTemplateDirective {
513
- template: TemplateRef<any>;
514
- constructor(template: TemplateRef<any>);
515
- static ɵfac: i0.ɵɵFactoryDeclaration<NgPlaceholderTemplateDirective, never>;
516
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgPlaceholderTemplateDirective, "[ng-placeholder-tmp]", never, {}, {}, never, never, true, never>;
448
+ readonly template: TemplateRef<any>;
449
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgPlaceholderTemplateDirective, never>;
450
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgPlaceholderTemplateDirective, "[ng-placeholder-tmp]", never, {}, {}, never, never, true, never>;
517
451
  }
518
452
  declare class NgTypeToSearchTemplateDirective {
519
- template: TemplateRef<any>;
520
- constructor(template: TemplateRef<any>);
521
- static ɵfac: i0.ɵɵFactoryDeclaration<NgTypeToSearchTemplateDirective, never>;
522
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgTypeToSearchTemplateDirective, "[ng-typetosearch-tmp]", never, {}, {}, never, never, true, never>;
453
+ readonly template: TemplateRef<any>;
454
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgTypeToSearchTemplateDirective, never>;
455
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgTypeToSearchTemplateDirective, "[ng-typetosearch-tmp]", never, {}, {}, never, never, true, never>;
523
456
  }
524
457
  declare class NgLoadingTextTemplateDirective {
525
- template: TemplateRef<any>;
526
- constructor(template: TemplateRef<any>);
527
- static ɵfac: i0.ɵɵFactoryDeclaration<NgLoadingTextTemplateDirective, never>;
528
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgLoadingTextTemplateDirective, "[ng-loadingtext-tmp]", never, {}, {}, never, never, true, never>;
458
+ readonly template: TemplateRef<any>;
459
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgLoadingTextTemplateDirective, never>;
460
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgLoadingTextTemplateDirective, "[ng-loadingtext-tmp]", never, {}, {}, never, never, true, never>;
529
461
  }
530
462
  declare class NgTagTemplateDirective {
531
- template: TemplateRef<any>;
532
- constructor(template: TemplateRef<any>);
533
- static ɵfac: i0.ɵɵFactoryDeclaration<NgTagTemplateDirective, never>;
534
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgTagTemplateDirective, "[ng-tag-tmp]", never, {}, {}, never, never, true, never>;
463
+ readonly template: TemplateRef<any>;
464
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgTagTemplateDirective, never>;
465
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgTagTemplateDirective, "[ng-tag-tmp]", never, {}, {}, never, never, true, never>;
535
466
  }
536
467
  declare class NgLoadingSpinnerTemplateDirective {
537
- template: TemplateRef<any>;
538
- constructor(template: TemplateRef<any>);
539
- static ɵfac: i0.ɵɵFactoryDeclaration<NgLoadingSpinnerTemplateDirective, never>;
540
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgLoadingSpinnerTemplateDirective, "[ng-loadingspinner-tmp]", never, {}, {}, never, never, true, never>;
468
+ readonly template: TemplateRef<any>;
469
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgLoadingSpinnerTemplateDirective, never>;
470
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgLoadingSpinnerTemplateDirective, "[ng-loadingspinner-tmp]", never, {}, {}, never, never, true, never>;
541
471
  }
542
472
  declare class NgClearButtonTemplateDirective {
543
- template: TemplateRef<any>;
544
- constructor(template: TemplateRef<any>);
545
- static ɵfac: i0.ɵɵFactoryDeclaration<NgClearButtonTemplateDirective, never>;
546
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgClearButtonTemplateDirective, "[ng-clearbutton-tmp]", never, {}, {}, never, never, true, never>;
473
+ readonly template: TemplateRef<any>;
474
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgClearButtonTemplateDirective, never>;
475
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgClearButtonTemplateDirective, "[ng-clearbutton-tmp]", never, {}, {}, never, never, true, never>;
547
476
  }
548
477
 
549
478
  declare class NgSelectModule {
550
- static ɵfac: i0.ɵɵFactoryDeclaration<NgSelectModule, never>;
551
- static ɵmod: i0.ɵɵNgModuleDeclaration<NgSelectModule, never, [typeof NgDropdownPanelComponent, typeof NgOptionComponent, typeof NgSelectComponent, typeof NgOptgroupTemplateDirective, typeof NgOptionTemplateDirective, typeof NgLabelTemplateDirective, typeof NgMultiLabelTemplateDirective, typeof NgHeaderTemplateDirective, typeof NgFooterTemplateDirective, typeof NgPlaceholderTemplateDirective, typeof NgClearButtonTemplateDirective, typeof NgNotFoundTemplateDirective, typeof NgTypeToSearchTemplateDirective, typeof NgLoadingTextTemplateDirective, typeof NgTagTemplateDirective, typeof NgLoadingSpinnerTemplateDirective, typeof NgItemLabelDirective], [typeof NgSelectComponent, typeof NgOptionComponent, typeof NgOptgroupTemplateDirective, typeof NgOptionTemplateDirective, typeof NgLabelTemplateDirective, typeof NgMultiLabelTemplateDirective, typeof NgHeaderTemplateDirective, typeof NgFooterTemplateDirective, typeof NgPlaceholderTemplateDirective, typeof NgNotFoundTemplateDirective, typeof NgTypeToSearchTemplateDirective, typeof NgLoadingTextTemplateDirective, typeof NgTagTemplateDirective, typeof NgLoadingSpinnerTemplateDirective, typeof NgClearButtonTemplateDirective]>;
552
- static ɵinj: i0.ɵɵInjectorDeclaration<NgSelectModule>;
479
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgSelectModule, never>;
480
+ static ɵmod: _angular_core.ɵɵNgModuleDeclaration<NgSelectModule, never, [typeof NgDropdownPanelComponent, typeof NgOptionComponent, typeof NgSelectComponent, typeof NgOptgroupTemplateDirective, typeof NgOptionTemplateDirective, typeof NgLabelTemplateDirective, typeof NgMultiLabelTemplateDirective, typeof NgHeaderTemplateDirective, typeof NgFooterTemplateDirective, typeof NgPlaceholderTemplateDirective, typeof NgClearButtonTemplateDirective, typeof NgNotFoundTemplateDirective, typeof NgTypeToSearchTemplateDirective, typeof NgLoadingTextTemplateDirective, typeof NgTagTemplateDirective, typeof NgLoadingSpinnerTemplateDirective, typeof NgItemLabelDirective], [typeof NgSelectComponent, typeof NgOptionComponent, typeof NgOptgroupTemplateDirective, typeof NgOptionTemplateDirective, typeof NgLabelTemplateDirective, typeof NgMultiLabelTemplateDirective, typeof NgHeaderTemplateDirective, typeof NgFooterTemplateDirective, typeof NgPlaceholderTemplateDirective, typeof NgNotFoundTemplateDirective, typeof NgTypeToSearchTemplateDirective, typeof NgLoadingTextTemplateDirective, typeof NgTagTemplateDirective, typeof NgLoadingSpinnerTemplateDirective, typeof NgClearButtonTemplateDirective]>;
481
+ static ɵinj: _angular_core.ɵɵInjectorDeclaration<NgSelectModule>;
482
+ }
483
+
484
+ declare class ConsoleService {
485
+ warn(message: string): void;
486
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<ConsoleService, never>;
487
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<ConsoleService>;
488
+ }
489
+
490
+ interface ItemsRangeResult {
491
+ scrollHeight: number;
492
+ topPadding: number;
493
+ start: number;
494
+ end: number;
495
+ }
496
+ interface PanelDimensions {
497
+ itemHeight: number;
498
+ panelHeight: number;
499
+ itemsPerViewport: number;
500
+ }
501
+ declare class NgDropdownPanelService {
502
+ private _dimensions;
503
+ get dimensions(): PanelDimensions;
504
+ calculateItems(scrollPos: number, itemsLength: number, buffer: number): ItemsRangeResult;
505
+ setDimensions(itemHeight: number, panelHeight: number): void;
506
+ getScrollTo(itemTop: number, itemHeight: number, lastScroll: number): number;
507
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgDropdownPanelService, never>;
508
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<NgDropdownPanelService>;
553
509
  }
554
510
 
555
511
  export { ConsoleService, DefaultSelectionModel, DefaultSelectionModelFactory, NgClearButtonTemplateDirective, NgDropdownPanelComponent, NgDropdownPanelService, NgFooterTemplateDirective, NgHeaderTemplateDirective, NgItemLabelDirective, NgLabelTemplateDirective, NgLoadingSpinnerTemplateDirective, NgLoadingTextTemplateDirective, NgMultiLabelTemplateDirective, NgNotFoundTemplateDirective, NgOptgroupTemplateDirective, NgOptionComponent, NgOptionTemplateDirective, NgPlaceholderTemplateDirective, NgSelectComponent, NgSelectConfig, NgSelectModule, NgTagTemplateDirective, NgTypeToSearchTemplateDirective, SELECTION_MODEL_FACTORY };