@@ -18,22 +18,23 @@ import { EventEmitter } from '@angular/core';
1818import { FocusMonitor } from ' @angular/cdk/a11y' ;
1919import { FocusOrigin } from ' @angular/cdk/a11y' ;
2020import * as i0 from ' @angular/core' ;
21- import * as i1 from ' @angular/cdk/overlay' ;
22- import * as i2 from ' @koobiq/components/icon' ;
23- import * as i3 from ' @angular/common' ;
2421import { IFocusableOption } from ' @koobiq/cdk/a11y' ;
2522import { InjectionToken } from ' @angular/core' ;
2623import { Injector } from ' @angular/core' ;
24+ import { InputSignal } from ' @angular/core' ;
2725import { KbqComponentColors } from ' @koobiq/components/core' ;
26+ import { KbqDropdownLocaleConfiguration } from ' @koobiq/components/core' ;
2827import { KbqIcon } from ' @koobiq/components/icon' ;
2928import { KbqTitleTextRef } from ' @koobiq/components/core' ;
3029import { NgZone } from ' @angular/core' ;
3130import { Observable } from ' rxjs' ;
3231import { OnDestroy } from ' @angular/core' ;
3332import { OnInit } from ' @angular/core' ;
3433import { Overlay } from ' @angular/cdk/overlay' ;
34+ import { Provider } from ' @angular/core' ;
3535import { QueryList } from ' @angular/core' ;
3636import { ScrollStrategy } from ' @angular/cdk/overlay' ;
37+ import { Signal } from ' @angular/core' ;
3738import { Subject } from ' rxjs' ;
3839import { TemplateRef } from ' @angular/core' ;
3940import { ViewContainerRef } from ' @angular/core' ;
@@ -56,6 +57,9 @@ export const KBQ_DROPDOWN_DEFAULT_OPTIONS: InjectionToken<KbqDropdownDefaultOpti
5657// @public
5758export function KBQ_DROPDOWN_DEFAULT_OPTIONS_FACTORY(): KbqDropdownDefaultOptions ;
5859
60+ // @public
61+ export const KBQ_DROPDOWN_LOCALE_CONFIGURATION: InjectionToken <KbqDropdownLocaleConfiguration >;
62+
5963// @public
6064export const KBQ_DROPDOWN_PANEL: InjectionToken <KbqDropdownPanel >;
6165
@@ -84,6 +88,8 @@ export class KbqDropdown implements AfterContentInit, KbqDropdownPanel, OnInit,
8488 close(): void ;
8589 readonly closed: EventEmitter <void | " click" | " keydown" | " tab" >;
8690 direction: Direction ;
91+ readonly filterableItems: QueryList <KbqDropdownItemFilterable >;
92+ readonly filterField: KbqDropdownFilterField ;
8793 focusFirstItem(origin ? : FocusOrigin ): void ;
8894 handleKeydown(event : KeyboardEvent ): void ;
8995 get hasBackdrop(): boolean ;
@@ -92,6 +98,7 @@ export class KbqDropdown implements AfterContentInit, KbqDropdownPanel, OnInit,
9298 isAnimating: boolean ;
9399 items: QueryList <KbqDropdownItem >;
94100 lazyContent: KbqDropdownContent ;
101+ protected readonly localeConfiguration: Signal <KbqDropdownLocaleConfiguration | undefined >;
95102 // (undocumented)
96103 navigationWithWrap: boolean ;
97104 // (undocumented)
@@ -100,6 +107,7 @@ export class KbqDropdown implements AfterContentInit, KbqDropdownPanel, OnInit,
100107 ngOnDestroy(): void ;
101108 // (undocumented)
102109 ngOnInit(): void ;
110+ protected get nothingFound(): boolean ;
103111 onAnimationDone(event : AnimationEvent_2 ): void ;
104112 // (undocumented)
105113 onAnimationStart(event : AnimationEvent_2 ): void ;
@@ -122,7 +130,7 @@ export class KbqDropdown implements AfterContentInit, KbqDropdownPanel, OnInit,
122130 get yPosition(): DropdownPositionY ;
123131 set yPosition(value : DropdownPositionY );
124132 // (undocumented)
125- static ɵcmp: i0 .ɵɵComponentDeclaration <KbqDropdown , " kbq-dropdown" , [" kbqDropdown" ], { " navigationWithWrap" : { " alias" : " navigationWithWrap" ; " required" : false ; }; " xPosition" : { " alias" : " xPosition" ; " required" : false ; }; " yPosition" : { " alias" : " yPosition" ; " required" : false ; }; " overlapTriggerY" : { " alias" : " overlapTriggerY" ; " required" : false ; }; " overlapTriggerX" : { " alias" : " overlapTriggerX" ; " required" : false ; }; " hasBackdrop" : { " alias" : " hasBackdrop" ; " required" : false ; }; " panelClass" : { " alias" : " class" ; " required" : false ; }; " backdropClass" : { " alias" : " backdropClass" ; " required" : false ; }; }, { " closed" : " closed" ; }, [" lazyContent" , " items" ], [" *" , " [kbqDropdownStaticContent]" ], true , never >;
133+ static ɵcmp: i0 .ɵɵComponentDeclaration <KbqDropdown , " kbq-dropdown" , [" kbqDropdown" ], { " navigationWithWrap" : { " alias" : " navigationWithWrap" ; " required" : false ; }; " xPosition" : { " alias" : " xPosition" ; " required" : false ; }; " yPosition" : { " alias" : " yPosition" ; " required" : false ; }; " overlapTriggerY" : { " alias" : " overlapTriggerY" ; " required" : false ; }; " overlapTriggerX" : { " alias" : " overlapTriggerX" ; " required" : false ; }; " hasBackdrop" : { " alias" : " hasBackdrop" ; " required" : false ; }; " panelClass" : { " alias" : " class" ; " required" : false ; }; " backdropClass" : { " alias" : " backdropClass" ; " required" : false ; }; }, { " closed" : " closed" ; }, [" lazyContent" , " filterField " , " items" , " filterableItems " ], [" [kbqDropdownFilterField] " , " *" , " [kbqDropdownStaticContent]" ], true , never >;
126134 // (undocumented)
127135 static ɵfac: i0 .ɵɵFactoryDeclaration <KbqDropdown , never >;
128136}
@@ -159,6 +167,18 @@ export interface KbqDropdownDefaultOptions {
159167 yPosition: DropdownPositionY ;
160168}
161169
170+ // @public
171+ export class KbqDropdownFilterField {
172+ constructor ();
173+ focus(): void ;
174+ protected handleKeydown(event : KeyboardEvent ): void ;
175+ reset(): void ;
176+ // (undocumented)
177+ static ɵdir: i0 .ɵɵDirectiveDeclaration <KbqDropdownFilterField , " [kbqDropdownFilterField]" , [" kbqDropdownFilterField" ], {}, {}, never , never , true , never >;
178+ // (undocumented)
179+ static ɵfac: i0 .ɵɵFactoryDeclaration <KbqDropdownFilterField , never >;
180+ }
181+
162182// @public
163183export class KbqDropdownItem implements KbqTitleTextRef , IFocusableOption , AfterViewInit , OnDestroy {
164184 constructor (elementRef : ElementRef <HTMLElement >, focusMonitor : FocusMonitor , parentDropdownPanel ? : KbqDropdownPanel | undefined );
@@ -167,6 +187,7 @@ export class KbqDropdownItem implements KbqTitleTextRef, IFocusableOption, After
167187 // (undocumented)
168188 get disabled(): boolean ;
169189 set disabled(value : boolean );
190+ readonly filterable: KbqDropdownItemFilterable | null ;
170191 focus(origin ? : FocusOrigin , options ? : FocusOptions ): void ;
171192 readonly focused: Subject <KbqDropdownItem >;
172193 getHostElement(): HTMLElement ;
@@ -198,19 +219,46 @@ export class KbqDropdownItem implements KbqTitleTextRef, IFocusableOption, After
198219 static ɵfac: i0 .ɵɵFactoryDeclaration <KbqDropdownItem , [null , null , { optional: true ; }]>;
199220}
200221
222+ // @public
223+ export class KbqDropdownItemFilterable {
224+ readonly hidden: Signal <boolean >;
225+ hide(): void ;
226+ show(): void ;
227+ readonly value: InputSignal <string >;
228+ // (undocumented)
229+ static ɵdir: i0 .ɵɵDirectiveDeclaration <KbqDropdownItemFilterable , " [kbqDropdownItemFilterable]" , [" kbqDropdownItemFilterable" ], { " value" : { " alias" : " kbqDropdownItemFilterable" ; " required" : false ; " isSignal" : true ; }; }, {}, never , never , true , never >;
230+ // (undocumented)
231+ static ɵfac: i0 .ɵɵFactoryDeclaration <KbqDropdownItemFilterable , never >;
232+ }
233+
234+ // @public (undocumented)
235+ export class KbqDropdownItemsGroup {
236+ readonly hidden: Signal <boolean >;
237+ // (undocumented)
238+ static ɵdir: i0 .ɵɵDirectiveDeclaration <KbqDropdownItemsGroup , " kbq-dropdown-items-group, [kbqDropdownItemsGroup]" , [" kbqDropdownItemsGroup" ], {}, {}, [" filterableItems" ], never , true , never >;
239+ // (undocumented)
240+ static ɵfac: i0 .ɵɵFactoryDeclaration <KbqDropdownItemsGroup , never >;
241+ }
242+
243+ // @public
244+ export const kbqDropdownLocaleConfigurationProvider: (configuration : KbqDropdownLocaleConfiguration ) => Provider ;
245+
201246// @public (undocumented)
202247export class KbqDropdownModule {
203248 // (undocumented)
204249 static ɵfac: i0 .ɵɵFactoryDeclaration <KbqDropdownModule , never >;
205250 // (undocumented)
206251 static ɵinj: i0 .ɵɵInjectorDeclaration <KbqDropdownModule >;
252+ // Warning: (ae-forgotten-export) The symbol "i1" needs to be exported by the entry point index.d.ts
253+ // Warning: (ae-forgotten-export) The symbol "i2" needs to be exported by the entry point index.d.ts
254+ // Warning: (ae-forgotten-export) The symbol "i3" needs to be exported by the entry point index.d.ts
207255 // Warning: (ae-forgotten-export) The symbol "i4" needs to be exported by the entry point index.d.ts
208256 // Warning: (ae-forgotten-export) The symbol "i5" needs to be exported by the entry point index.d.ts
209257 // Warning: (ae-forgotten-export) The symbol "i6" needs to be exported by the entry point index.d.ts
210258 // Warning: (ae-forgotten-export) The symbol "i7" needs to be exported by the entry point index.d.ts
211259 //
212260 // (undocumented)
213- static ɵmod: i0 .ɵɵNgModuleDeclaration <KbqDropdownModule , never , [typeof i1 .OverlayModule , typeof i2 .KbqIconModule , typeof i3 .NgClass , typeof i4 .KbqDropdownStaticContent , typeof i4 . KbqDropdown , typeof i5 .KbqDropdownItem , typeof i6 .KbqDropdownTrigger , typeof i7 .KbqDropdownContent ], [typeof i4 .KbqDropdown , typeof i5 .KbqDropdownItem , typeof i6 .KbqDropdownTrigger , typeof i7 .KbqDropdownContent , typeof i4 .KbqDropdownStaticContent ]>;
261+ static ɵmod: i0 .ɵɵNgModuleDeclaration <KbqDropdownModule , never , [typeof i1 .KbqDropdown , typeof i2 .KbqDropdownItem , typeof i3 .KbqDropdownTrigger , typeof i4 .KbqDropdownContent , typeof i1 . KbqDropdownStaticContent , typeof i5 .KbqDropdownFilterField , typeof i6 .KbqDropdownItemFilterable , typeof i7 .KbqDropdownItemsGroup ], [typeof i1 .KbqDropdown , typeof i2 .KbqDropdownItem , typeof i3 .KbqDropdownTrigger , typeof i4 .KbqDropdownContent , typeof i1 .KbqDropdownStaticContent , typeof i5 . KbqDropdownFilterField , typeof i6 . KbqDropdownItemFilterable , typeof i7 . KbqDropdownItemsGroup ]>;
214262}
215263
216264// @public
@@ -222,6 +270,10 @@ export interface KbqDropdownPanel {
222270 // (undocumented)
223271 direction? : Direction ;
224272 // (undocumented)
273+ filterableItems? : QueryList <KbqDropdownItemFilterable >;
274+ // (undocumented)
275+ filterField? : KbqDropdownFilterField ;
276+ // (undocumented)
225277 focusFirstItem(origin ? : FocusOrigin ): void ;
226278 // (undocumented)
227279 hasBackdrop? : boolean ;
0 commit comments