@radix-ng/primitives 1.0.0-beta.1 → 1.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/radix-ng-primitives-accordion.mjs +2 -2
- package/fesm2022/radix-ng-primitives-accordion.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-calendar.mjs +14 -1
- package/fesm2022/radix-ng-primitives-calendar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-checkbox.mjs +2 -2
- package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-collapsible.mjs +1 -1
- package/fesm2022/radix-ng-primitives-collapsible.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-combobox.mjs +1923 -0
- package/fesm2022/radix-ng-primitives-combobox.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-context-menu.mjs +1 -1
- package/fesm2022/radix-ng-primitives-context-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-core.mjs +480 -469
- package/fesm2022/radix-ng-primitives-core.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-cropper.mjs +1 -1
- package/fesm2022/radix-ng-primitives-cropper.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-date-field.mjs +11 -0
- package/fesm2022/radix-ng-primitives-date-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-dialog.mjs +1 -1
- package/fesm2022/radix-ng-primitives-dialog.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-drawer.mjs +1 -1
- package/fesm2022/radix-ng-primitives-drawer.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-editable.mjs +1 -1
- package/fesm2022/radix-ng-primitives-editable.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-field.mjs +86 -6
- package/fesm2022/radix-ng-primitives-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-fieldset.mjs +1 -1
- package/fesm2022/radix-ng-primitives-fieldset.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-focus-scope.mjs +1 -1
- package/fesm2022/radix-ng-primitives-focus-scope.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-form.mjs +207 -0
- package/fesm2022/radix-ng-primitives-form.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-input.mjs +85 -4
- package/fesm2022/radix-ng-primitives-input.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-menu.mjs +4 -4
- package/fesm2022/radix-ng-primitives-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-menubar.mjs +1 -1
- package/fesm2022/radix-ng-primitives-menubar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-meter.mjs +1 -1
- package/fesm2022/radix-ng-primitives-meter.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-navigation-menu.mjs +1 -1
- package/fesm2022/radix-ng-primitives-navigation-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-number-field.mjs +2 -2
- package/fesm2022/radix-ng-primitives-number-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-popover.mjs +1 -1
- package/fesm2022/radix-ng-primitives-popover.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-popper.mjs +1 -1
- package/fesm2022/radix-ng-primitives-popper.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-preview-card.mjs +1 -1
- package/fesm2022/radix-ng-primitives-preview-card.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-progress.mjs +1 -1
- package/fesm2022/radix-ng-primitives-progress.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-roving-focus.mjs +1 -1
- package/fesm2022/radix-ng-primitives-roving-focus.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-scroll-area.mjs +3 -3
- package/fesm2022/radix-ng-primitives-scroll-area.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-select.mjs +421 -224
- package/fesm2022/radix-ng-primitives-select.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-slider.mjs +1 -1
- package/fesm2022/radix-ng-primitives-slider.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-switch.mjs +3 -2
- package/fesm2022/radix-ng-primitives-switch.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-tabs.mjs +1 -1
- package/fesm2022/radix-ng-primitives-tabs.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-time-field.mjs +27 -3
- package/fesm2022/radix-ng-primitives-time-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toast.mjs +1 -1
- package/fesm2022/radix-ng-primitives-toast.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toggle-group.mjs +1 -1
- package/fesm2022/radix-ng-primitives-toggle-group.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toolbar.mjs +2 -2
- package/fesm2022/radix-ng-primitives-toolbar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-tooltip.mjs +2 -2
- package/fesm2022/radix-ng-primitives-tooltip.mjs.map +1 -1
- package/package.json +9 -1
- package/schematics/ng-add/index.js +57 -0
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/ng-add/schema.d.ts +1 -0
- package/schematics/ng-add/schema.json +6 -0
- package/types/radix-ng-primitives-combobox.d.ts +1265 -0
- package/types/radix-ng-primitives-core.d.ts +148 -56
- package/types/radix-ng-primitives-field.d.ts +71 -2
- package/types/radix-ng-primitives-form.d.ts +124 -0
- package/types/radix-ng-primitives-input.d.ts +75 -5
- package/types/radix-ng-primitives-select.d.ts +292 -132
|
@@ -0,0 +1,1265 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
import { Signal, ElementRef } from '@angular/core';
|
|
3
|
+
import * as i1 from '@radix-ng/primitives/popper';
|
|
4
|
+
import * as _radix_ng_primitives_core from '@radix-ng/primitives/core';
|
|
5
|
+
import { AcceptableValue, Direction, ItemValueComparator, BooleanInput } from '@radix-ng/primitives/core';
|
|
6
|
+
import { ControlValueAccessor } from '@angular/forms';
|
|
7
|
+
import * as _radix_ng_primitives_combobox from '@radix-ng/primitives/combobox';
|
|
8
|
+
import * as i1$1 from '@radix-ng/primitives/dismissable-layer';
|
|
9
|
+
import * as _radix_ng_primitives_types_radix_ng_primitives_core from '@radix-ng/primitives/types/radix-ng-primitives-core';
|
|
10
|
+
import * as i1$2 from '@radix-ng/primitives/portal';
|
|
11
|
+
import * as i1$3 from '@radix-ng/primitives/presence';
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Optional positioning anchor for the popup. Put it on the element the popup should align to — for
|
|
15
|
+
* example a control that wraps chips + input in `multiple` mode. When present it takes precedence
|
|
16
|
+
* over the input (the popper resolves the first `RdxPopperAnchor` in DOM order, and this part sits
|
|
17
|
+
* above the input). When absent, the input itself is the anchor, which is ideal when the input fills
|
|
18
|
+
* the control.
|
|
19
|
+
*
|
|
20
|
+
* @group Components
|
|
21
|
+
*/
|
|
22
|
+
declare class RdxComboboxAnchor {
|
|
23
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxAnchor, never>;
|
|
24
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxAnchor, "[rdxComboboxAnchor]", ["rdxComboboxAnchor"], {}, {}, never, never, true, [{ directive: typeof i1.RdxPopperAnchor; inputs: {}; outputs: {}; }]>;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/** The value a combobox can hold: a single value, an array (multiple mode), or nothing. */
|
|
28
|
+
type ComboboxValue = AcceptableValue | AcceptableValue[];
|
|
29
|
+
/**
|
|
30
|
+
* A combobox item, registered with the root so it participates in filtering, navigation, and
|
|
31
|
+
* selection. Implemented by `RdxComboboxItem`; the root only depends on this structural shape to
|
|
32
|
+
* avoid a circular import.
|
|
33
|
+
*/
|
|
34
|
+
interface ComboboxItemRef {
|
|
35
|
+
/** The option's element id, exposed via `aria-activedescendant` when highlighted. */
|
|
36
|
+
readonly id: string;
|
|
37
|
+
/** The option's host element, used for DOM-order sorting. */
|
|
38
|
+
readonly element: HTMLElement;
|
|
39
|
+
/** The option's value. */
|
|
40
|
+
readonly value: Signal<AcceptableValue>;
|
|
41
|
+
/** The text matched against the query and written to the input on selection. */
|
|
42
|
+
readonly textValue: Signal<string>;
|
|
43
|
+
/** Whether the option is disabled. */
|
|
44
|
+
readonly disabled: Signal<boolean>;
|
|
45
|
+
}
|
|
46
|
+
/** A custom filter predicate: `(itemText, query) => matches`. */
|
|
47
|
+
type ComboboxFilter = (itemText: string, query: string) => boolean;
|
|
48
|
+
/** Why the highlight moved: keyboard navigation, pointer hover, or a programmatic change. */
|
|
49
|
+
type ComboboxHighlightReason = 'keyboard' | 'pointer' | 'none';
|
|
50
|
+
/** Payload of {@link RdxComboboxRoot.onItemHighlighted}. */
|
|
51
|
+
interface ComboboxItemHighlightedDetails {
|
|
52
|
+
/** The highlighted item's value, or `null` when the highlight is cleared. */
|
|
53
|
+
value: AcceptableValue | null;
|
|
54
|
+
/**
|
|
55
|
+
* The highlighted item's index in the visible/filtered list (`-1` when cleared). In virtualized
|
|
56
|
+
* mode this is the index into {@link RdxComboboxRoot.filteredItems} — pass it to the virtualizer's
|
|
57
|
+
* `scrollToIndex` so the item mounts before it needs DOM focus.
|
|
58
|
+
*/
|
|
59
|
+
index: number;
|
|
60
|
+
/** What caused the highlight to move. */
|
|
61
|
+
reason: ComboboxHighlightReason;
|
|
62
|
+
}
|
|
63
|
+
declare const context: () => {
|
|
64
|
+
listId: string;
|
|
65
|
+
labelId: _angular_core.WritableSignal<string | undefined>;
|
|
66
|
+
setLabelId: (id: string | undefined) => void;
|
|
67
|
+
dir: _angular_core.InputSignal<Direction>;
|
|
68
|
+
value: _angular_core.ModelSignal<ComboboxValue>;
|
|
69
|
+
inputValue: _angular_core.ModelSignal<string>;
|
|
70
|
+
open: _angular_core.ModelSignal<boolean>;
|
|
71
|
+
multiple: Signal<boolean>;
|
|
72
|
+
selectionMode: Signal<"none" | "single" | "multiple">;
|
|
73
|
+
disabledState: Signal<boolean>;
|
|
74
|
+
readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
75
|
+
requiredState: Signal<boolean>;
|
|
76
|
+
openOnInputClick: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
77
|
+
modal: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
78
|
+
virtualized: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
79
|
+
filteredItems: Signal<readonly AcceptableValue[]>;
|
|
80
|
+
highlightedItem: Signal<ComboboxItemRef | null>;
|
|
81
|
+
highlightedIndex: Signal<number>;
|
|
82
|
+
activeId: Signal<string | undefined>;
|
|
83
|
+
itemId: (index: number) => string;
|
|
84
|
+
isKeyboardActive: () => boolean;
|
|
85
|
+
setKeyboardActive: (value: boolean) => void;
|
|
86
|
+
transitionStatus: Signal<_radix_ng_primitives_core.RdxTransitionStatus>;
|
|
87
|
+
registerTransitionElement: (element: HTMLElement) => () => void;
|
|
88
|
+
visibleCount: Signal<number>;
|
|
89
|
+
isVisible: (item: ComboboxItemRef) => boolean;
|
|
90
|
+
isSelected: (value: AcceptableValue) => boolean;
|
|
91
|
+
registerItem: (item: ComboboxItemRef) => void;
|
|
92
|
+
unregisterItem: (item: ComboboxItemRef) => void;
|
|
93
|
+
highlight: _radix_ng_primitives_core.ListHighlight<ComboboxItemRef>;
|
|
94
|
+
highlightNext: () => void;
|
|
95
|
+
highlightPrevious: () => void;
|
|
96
|
+
highlightFirst: () => void;
|
|
97
|
+
highlightLast: () => void;
|
|
98
|
+
highlightIndex: (index: number, reason: ComboboxHighlightReason) => void;
|
|
99
|
+
setHighlight: (item: ComboboxItemRef, reason: ComboboxHighlightReason) => void;
|
|
100
|
+
clearHighlight: () => void;
|
|
101
|
+
inputElement: Signal<HTMLInputElement | null>;
|
|
102
|
+
setInputElement: (el: HTMLInputElement | null) => void;
|
|
103
|
+
registerTrigger: (el: HTMLElement | null) => HTMLElement | null;
|
|
104
|
+
focusInput: () => void;
|
|
105
|
+
openPopup: () => void;
|
|
106
|
+
openForBrowse: () => void;
|
|
107
|
+
closePopup: (revert?: boolean) => void;
|
|
108
|
+
setInputValue: (value: string) => void;
|
|
109
|
+
openAndHighlight: (edge: "first" | "last") => void;
|
|
110
|
+
select: (item: ComboboxItemRef) => void;
|
|
111
|
+
selectIndex: (index: number) => void;
|
|
112
|
+
selectHighlighted: () => void;
|
|
113
|
+
clearSelection: () => void;
|
|
114
|
+
removeValue: (value: AcceptableValue) => void;
|
|
115
|
+
removeLastValue: () => void;
|
|
116
|
+
registerChipsNav: (fn: (() => boolean) | null) => void;
|
|
117
|
+
focusLastChip: () => boolean;
|
|
118
|
+
labelFor: (value: AcceptableValue) => string;
|
|
119
|
+
markAsTouched: () => void;
|
|
120
|
+
};
|
|
121
|
+
type RdxComboboxRootContext = ReturnType<typeof context>;
|
|
122
|
+
declare const injectComboboxRootContext: _radix_ng_primitives_core.InjectContext<{
|
|
123
|
+
listId: string;
|
|
124
|
+
labelId: _angular_core.WritableSignal<string | undefined>;
|
|
125
|
+
setLabelId: (id: string | undefined) => void;
|
|
126
|
+
dir: _angular_core.InputSignal<Direction>;
|
|
127
|
+
value: _angular_core.ModelSignal<ComboboxValue>;
|
|
128
|
+
inputValue: _angular_core.ModelSignal<string>;
|
|
129
|
+
open: _angular_core.ModelSignal<boolean>;
|
|
130
|
+
multiple: Signal<boolean>;
|
|
131
|
+
selectionMode: Signal<"none" | "single" | "multiple">;
|
|
132
|
+
disabledState: Signal<boolean>;
|
|
133
|
+
readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
134
|
+
requiredState: Signal<boolean>;
|
|
135
|
+
openOnInputClick: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
136
|
+
modal: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
137
|
+
virtualized: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
138
|
+
filteredItems: Signal<readonly AcceptableValue[]>;
|
|
139
|
+
highlightedItem: Signal<ComboboxItemRef | null>;
|
|
140
|
+
highlightedIndex: Signal<number>;
|
|
141
|
+
activeId: Signal<string | undefined>;
|
|
142
|
+
itemId: (index: number) => string;
|
|
143
|
+
isKeyboardActive: () => boolean;
|
|
144
|
+
setKeyboardActive: (value: boolean) => void;
|
|
145
|
+
transitionStatus: Signal<_radix_ng_primitives_core.RdxTransitionStatus>;
|
|
146
|
+
registerTransitionElement: (element: HTMLElement) => () => void;
|
|
147
|
+
visibleCount: Signal<number>;
|
|
148
|
+
isVisible: (item: ComboboxItemRef) => boolean;
|
|
149
|
+
isSelected: (value: AcceptableValue) => boolean;
|
|
150
|
+
registerItem: (item: ComboboxItemRef) => void;
|
|
151
|
+
unregisterItem: (item: ComboboxItemRef) => void;
|
|
152
|
+
highlight: _radix_ng_primitives_core.ListHighlight<ComboboxItemRef>;
|
|
153
|
+
highlightNext: () => void;
|
|
154
|
+
highlightPrevious: () => void;
|
|
155
|
+
highlightFirst: () => void;
|
|
156
|
+
highlightLast: () => void;
|
|
157
|
+
highlightIndex: (index: number, reason: ComboboxHighlightReason) => void;
|
|
158
|
+
setHighlight: (item: ComboboxItemRef, reason: ComboboxHighlightReason) => void;
|
|
159
|
+
clearHighlight: () => void;
|
|
160
|
+
inputElement: Signal<HTMLInputElement | null>;
|
|
161
|
+
setInputElement: (el: HTMLInputElement | null) => void;
|
|
162
|
+
registerTrigger: (el: HTMLElement | null) => HTMLElement | null;
|
|
163
|
+
focusInput: () => void;
|
|
164
|
+
openPopup: () => void;
|
|
165
|
+
openForBrowse: () => void;
|
|
166
|
+
closePopup: (revert?: boolean) => void;
|
|
167
|
+
setInputValue: (value: string) => void;
|
|
168
|
+
openAndHighlight: (edge: "first" | "last") => void;
|
|
169
|
+
select: (item: ComboboxItemRef) => void;
|
|
170
|
+
selectIndex: (index: number) => void;
|
|
171
|
+
selectHighlighted: () => void;
|
|
172
|
+
clearSelection: () => void;
|
|
173
|
+
removeValue: (value: AcceptableValue) => void;
|
|
174
|
+
removeLastValue: () => void;
|
|
175
|
+
registerChipsNav: (fn: (() => boolean) | null) => void;
|
|
176
|
+
focusLastChip: () => boolean;
|
|
177
|
+
labelFor: (value: AcceptableValue) => string;
|
|
178
|
+
markAsTouched: () => void;
|
|
179
|
+
}>;
|
|
180
|
+
declare const provideComboboxRootContext: (useFactory: () => {
|
|
181
|
+
listId: string;
|
|
182
|
+
labelId: _angular_core.WritableSignal<string | undefined>;
|
|
183
|
+
setLabelId: (id: string | undefined) => void;
|
|
184
|
+
dir: _angular_core.InputSignal<Direction>;
|
|
185
|
+
value: _angular_core.ModelSignal<ComboboxValue>;
|
|
186
|
+
inputValue: _angular_core.ModelSignal<string>;
|
|
187
|
+
open: _angular_core.ModelSignal<boolean>;
|
|
188
|
+
multiple: Signal<boolean>;
|
|
189
|
+
selectionMode: Signal<"none" | "single" | "multiple">;
|
|
190
|
+
disabledState: Signal<boolean>;
|
|
191
|
+
readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
192
|
+
requiredState: Signal<boolean>;
|
|
193
|
+
openOnInputClick: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
194
|
+
modal: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
195
|
+
virtualized: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
196
|
+
filteredItems: Signal<readonly AcceptableValue[]>;
|
|
197
|
+
highlightedItem: Signal<ComboboxItemRef | null>;
|
|
198
|
+
highlightedIndex: Signal<number>;
|
|
199
|
+
activeId: Signal<string | undefined>;
|
|
200
|
+
itemId: (index: number) => string;
|
|
201
|
+
isKeyboardActive: () => boolean;
|
|
202
|
+
setKeyboardActive: (value: boolean) => void;
|
|
203
|
+
transitionStatus: Signal<_radix_ng_primitives_core.RdxTransitionStatus>;
|
|
204
|
+
registerTransitionElement: (element: HTMLElement) => () => void;
|
|
205
|
+
visibleCount: Signal<number>;
|
|
206
|
+
isVisible: (item: ComboboxItemRef) => boolean;
|
|
207
|
+
isSelected: (value: AcceptableValue) => boolean;
|
|
208
|
+
registerItem: (item: ComboboxItemRef) => void;
|
|
209
|
+
unregisterItem: (item: ComboboxItemRef) => void;
|
|
210
|
+
highlight: _radix_ng_primitives_core.ListHighlight<ComboboxItemRef>;
|
|
211
|
+
highlightNext: () => void;
|
|
212
|
+
highlightPrevious: () => void;
|
|
213
|
+
highlightFirst: () => void;
|
|
214
|
+
highlightLast: () => void;
|
|
215
|
+
highlightIndex: (index: number, reason: ComboboxHighlightReason) => void;
|
|
216
|
+
setHighlight: (item: ComboboxItemRef, reason: ComboboxHighlightReason) => void;
|
|
217
|
+
clearHighlight: () => void;
|
|
218
|
+
inputElement: Signal<HTMLInputElement | null>;
|
|
219
|
+
setInputElement: (el: HTMLInputElement | null) => void;
|
|
220
|
+
registerTrigger: (el: HTMLElement | null) => HTMLElement | null;
|
|
221
|
+
focusInput: () => void;
|
|
222
|
+
openPopup: () => void;
|
|
223
|
+
openForBrowse: () => void;
|
|
224
|
+
closePopup: (revert?: boolean) => void;
|
|
225
|
+
setInputValue: (value: string) => void;
|
|
226
|
+
openAndHighlight: (edge: "first" | "last") => void;
|
|
227
|
+
select: (item: ComboboxItemRef) => void;
|
|
228
|
+
selectIndex: (index: number) => void;
|
|
229
|
+
selectHighlighted: () => void;
|
|
230
|
+
clearSelection: () => void;
|
|
231
|
+
removeValue: (value: AcceptableValue) => void;
|
|
232
|
+
removeLastValue: () => void;
|
|
233
|
+
registerChipsNav: (fn: (() => boolean) | null) => void;
|
|
234
|
+
focusLastChip: () => boolean;
|
|
235
|
+
labelFor: (value: AcceptableValue) => string;
|
|
236
|
+
markAsTouched: () => void;
|
|
237
|
+
}) => _angular_core.Provider;
|
|
238
|
+
/**
|
|
239
|
+
* Root of a Combobox — a filterable select. Owns selection, input text, open state, filtering, and
|
|
240
|
+
* highlight-model navigation, and exposes them to the parts through {@link RdxComboboxRootContext}.
|
|
241
|
+
* Implements `ControlValueAccessor` for forms.
|
|
242
|
+
*
|
|
243
|
+
* @group Components
|
|
244
|
+
*/
|
|
245
|
+
declare class RdxComboboxRoot implements ControlValueAccessor {
|
|
246
|
+
private readonly injector;
|
|
247
|
+
/** Selected value(s). A single value in single mode, an array in `multiple` mode. */
|
|
248
|
+
readonly value: _angular_core.ModelSignal<ComboboxValue>;
|
|
249
|
+
/** Initial value when uncontrolled. */
|
|
250
|
+
readonly defaultValue: _angular_core.InputSignal<ComboboxValue | undefined>;
|
|
251
|
+
/** The text currently in the input. */
|
|
252
|
+
readonly inputValue: _angular_core.ModelSignal<string>;
|
|
253
|
+
/** Whether the popup is open. */
|
|
254
|
+
readonly open: _angular_core.ModelSignal<boolean>;
|
|
255
|
+
/** Initial open state when uncontrolled. */
|
|
256
|
+
readonly defaultOpen: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
257
|
+
/** Whether multiple values can be selected. Shorthand for `selectionMode="multiple"`. */
|
|
258
|
+
readonly multipleInput: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
259
|
+
/**
|
|
260
|
+
* Selection behavior. `'single'` / `'multiple'` commit a value; `'none'` filters without
|
|
261
|
+
* selecting (a pure search/command UI). Defaults from the `multiple` shorthand.
|
|
262
|
+
*/
|
|
263
|
+
readonly selectionMode: _angular_core.InputSignal<"none" | "single" | "multiple" | undefined>;
|
|
264
|
+
/** Resolved selection mode. */
|
|
265
|
+
readonly mode: Signal<"none" | "single" | "multiple">;
|
|
266
|
+
/** Whether the combobox is in multiple-selection mode. */
|
|
267
|
+
readonly multiple: Signal<boolean>;
|
|
268
|
+
/** In `'none'` mode, whether pressing an item fills the input with its label. */
|
|
269
|
+
readonly fillInputOnItemPress: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
270
|
+
/** Text direction. */
|
|
271
|
+
readonly dir: _angular_core.InputSignal<Direction>;
|
|
272
|
+
/** Whether the combobox is disabled. */
|
|
273
|
+
readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
274
|
+
/** Whether the combobox is read-only. */
|
|
275
|
+
readonly readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
276
|
+
/** Whether a value is required (for forms). */
|
|
277
|
+
readonly required: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
278
|
+
/** Whether keyboard navigation wraps at the list boundaries. */
|
|
279
|
+
readonly loopFocus: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
280
|
+
/**
|
|
281
|
+
* Auto-highlight behavior:
|
|
282
|
+
* - `false` (default): never auto-highlight;
|
|
283
|
+
* - `true` / `'input-change'`: highlight the first match as the query changes;
|
|
284
|
+
* - `'always'`: keep the first navigable item highlighted whenever the popup is open.
|
|
285
|
+
*/
|
|
286
|
+
readonly autoHighlight: _angular_core.InputSignal<boolean | "always" | "input-change">;
|
|
287
|
+
/** Resolved auto-highlight mode. */
|
|
288
|
+
readonly autoHighlightMode: Signal<"always" | "input-change" | "off">;
|
|
289
|
+
/** Whether clicking the input opens the popup. */
|
|
290
|
+
readonly openOnInputClick: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
291
|
+
/** Whether the popup is modal: locks page scroll and makes outside content inert while open. */
|
|
292
|
+
readonly modal: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
293
|
+
/** Whether selecting an item requests submit of the closest form. */
|
|
294
|
+
readonly submitOnItemClick: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
295
|
+
/**
|
|
296
|
+
* Filter applied to items against the input query.
|
|
297
|
+
* - `undefined` (default): locale-aware "contains" via {@link useFilter};
|
|
298
|
+
* - a function: custom matching;
|
|
299
|
+
* - `null`: built-in filtering disabled (the consumer controls which items exist).
|
|
300
|
+
*/
|
|
301
|
+
readonly filter: _angular_core.InputSignal<ComboboxFilter | null | undefined>;
|
|
302
|
+
/** Maximum number of matching items to show. `-1` (default) means no limit. */
|
|
303
|
+
readonly limit: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
304
|
+
/**
|
|
305
|
+
* The full set of item values, used as the source of truth for filtering and navigation in
|
|
306
|
+
* {@link virtualized} mode (where only a window of `RdxComboboxItem` is mounted). The filtered
|
|
307
|
+
* subset is exposed as {@link filteredItems} for an external virtualizer to render.
|
|
308
|
+
*/
|
|
309
|
+
readonly items: _angular_core.InputSignal<readonly AcceptableValue[] | undefined>;
|
|
310
|
+
/**
|
|
311
|
+
* Whether the list is externally virtualized — only a window of items is rendered, so navigation
|
|
312
|
+
* runs over {@link items}/{@link filteredItems} by index instead of over mounted DOM elements.
|
|
313
|
+
* Requires {@link items}, and {@link itemToStringLabel} for selection labels/filter text. Disabled
|
|
314
|
+
* items outside the rendered window are not skipped by keyboard navigation.
|
|
315
|
+
*/
|
|
316
|
+
readonly virtualized: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
317
|
+
/** How item values are compared for equality (function or object key). */
|
|
318
|
+
readonly by: _angular_core.InputSignal<ItemValueComparator<AcceptableValue> | undefined>;
|
|
319
|
+
/** Converts a value to its display label. Defaults to the matching item's text. */
|
|
320
|
+
readonly itemToStringLabel: _angular_core.InputSignal<((value: AcceptableValue) => string) | undefined>;
|
|
321
|
+
/** Emits when the selection changes. */
|
|
322
|
+
readonly onValueChange: _angular_core.OutputEmitterRef<ComboboxValue>;
|
|
323
|
+
/** Emits when the input text changes. */
|
|
324
|
+
readonly onInputValueChange: _angular_core.OutputEmitterRef<string>;
|
|
325
|
+
/** Emits when the popup opens or closes. */
|
|
326
|
+
readonly onOpenChange: _angular_core.OutputEmitterRef<boolean>;
|
|
327
|
+
/**
|
|
328
|
+
* Emits as the highlight moves, with the item's value, its index in {@link filteredItems}, and the
|
|
329
|
+
* reason. In virtualized mode, use `index` to call the virtualizer's `scrollToIndex`.
|
|
330
|
+
*/
|
|
331
|
+
readonly onItemHighlighted: _angular_core.OutputEmitterRef<ComboboxItemHighlightedDetails>;
|
|
332
|
+
/** Emits after the open/close transition (including any exit animation) finishes. */
|
|
333
|
+
readonly onOpenChangeComplete: _angular_core.OutputEmitterRef<boolean>;
|
|
334
|
+
private readonly transition;
|
|
335
|
+
/** Open/close transition phase, for `data-starting-style` / `data-ending-style`. */
|
|
336
|
+
readonly transitionStatus: Signal<_radix_ng_primitives_core.RdxTransitionStatus>;
|
|
337
|
+
/** Registers the popup element whose animation determines transition completion. */
|
|
338
|
+
readonly registerTransitionElement: (element: HTMLElement) => () => void;
|
|
339
|
+
readonly listId: string;
|
|
340
|
+
readonly labelId: _angular_core.WritableSignal<string | undefined>;
|
|
341
|
+
readonly inputElement: _angular_core.WritableSignal<HTMLInputElement | null>;
|
|
342
|
+
private readonly cvaDisabled;
|
|
343
|
+
readonly disabledState: Signal<boolean>;
|
|
344
|
+
readonly requiredState: Signal<boolean>;
|
|
345
|
+
private readonly defaultFilter;
|
|
346
|
+
/**
|
|
347
|
+
* Whether the input text is a fresh user query rather than the current selection's label. While
|
|
348
|
+
* `false` (just opened, or showing a selected label), the list is unfiltered so the user can
|
|
349
|
+
* browse; it flips `true` on the first keystroke.
|
|
350
|
+
*/
|
|
351
|
+
private readonly typed;
|
|
352
|
+
private readonly _items;
|
|
353
|
+
/** Registered items, sorted into DOM order. */
|
|
354
|
+
readonly orderedItems: Signal<ComboboxItemRef[]>;
|
|
355
|
+
/** Matching items in DOM order, capped at `limit`. The set of items the list shows. */
|
|
356
|
+
readonly visibleItems: Signal<ComboboxItemRef[]>;
|
|
357
|
+
private readonly visibleSet;
|
|
358
|
+
/**
|
|
359
|
+
* The filtered item values an external virtualizer should render (the analogue of Base UI's
|
|
360
|
+
* `useFilteredItems`). Driven by {@link items} when provided (virtualized mode), capped by
|
|
361
|
+
* {@link limit}; otherwise mirrors the values of the mounted {@link visibleItems}.
|
|
362
|
+
*/
|
|
363
|
+
readonly filteredItems: Signal<readonly AcceptableValue[]>;
|
|
364
|
+
readonly visibleCount: Signal<number>;
|
|
365
|
+
readonly highlight: _radix_ng_primitives_core.ListHighlight<ComboboxItemRef>;
|
|
366
|
+
readonly highlightedItem: Signal<ComboboxItemRef | null>;
|
|
367
|
+
/** Highlighted index into {@link filteredItems} in virtualized mode (`-1` when cleared). */
|
|
368
|
+
readonly highlightedIndex: _angular_core.WritableSignal<number>;
|
|
369
|
+
/** Why the highlight last moved; read when emitting {@link onItemHighlighted}. */
|
|
370
|
+
private readonly highlightReason;
|
|
371
|
+
readonly activeId: Signal<string | undefined>;
|
|
372
|
+
/** Edge to highlight once the list has mounted (items register asynchronously after opening). */
|
|
373
|
+
private readonly pendingHighlightEdge;
|
|
374
|
+
private onChange?;
|
|
375
|
+
private onTouched?;
|
|
376
|
+
constructor();
|
|
377
|
+
/** Opens the popup for browsing (resets the query to "pristine" and selects the input text). */
|
|
378
|
+
openForBrowse(): void;
|
|
379
|
+
/** Opens the popup and highlights the given edge once the list mounts. */
|
|
380
|
+
openAndHighlight(edge: 'first' | 'last'): void;
|
|
381
|
+
/** Whether the item matches the active query (ignores the `limit` cap). */
|
|
382
|
+
private matchesFilter;
|
|
383
|
+
/** Whether the item is shown in the list (matches the query and is within `limit`). */
|
|
384
|
+
isVisible(item: ComboboxItemRef): boolean;
|
|
385
|
+
private keyboardActive;
|
|
386
|
+
isKeyboardActive(): boolean;
|
|
387
|
+
setKeyboardActive(value: boolean): void;
|
|
388
|
+
isSelected(value: AcceptableValue): boolean;
|
|
389
|
+
registerItem(item: ComboboxItemRef): void;
|
|
390
|
+
unregisterItem(item: ComboboxItemRef): void;
|
|
391
|
+
setOpen(open: boolean): void;
|
|
392
|
+
closePopup(revert?: boolean): void;
|
|
393
|
+
/** Updates the input text from user typing (marks the query as a fresh user query). */
|
|
394
|
+
setInputValue(value: string): void;
|
|
395
|
+
/** Sets the input text programmatically (a selection label / revert) — not a user query. */
|
|
396
|
+
private setLabel;
|
|
397
|
+
/** Selects all input text so the next keystroke replaces a stale selection label. */
|
|
398
|
+
selectInputText(): void;
|
|
399
|
+
/** Resets the input text to the current selection's label (single mode) or empty. */
|
|
400
|
+
private revertInputValue;
|
|
401
|
+
labelFor(value: AcceptableValue): string;
|
|
402
|
+
/** Filter/label text for a raw item value (virtualized mode, no DOM element to read from). */
|
|
403
|
+
private textFor;
|
|
404
|
+
/** Deterministic id for the item at `index` in virtualized mode (matches `aria-activedescendant`). */
|
|
405
|
+
itemId(index: number): string;
|
|
406
|
+
handleSelect(item: ComboboxItemRef): void;
|
|
407
|
+
/** Selects the filtered item at `index` (virtualized mode). The label comes from {@link labelFor}. */
|
|
408
|
+
selectIndex(index: number): void;
|
|
409
|
+
/** Commits a selection from a resolved value/label, independent of whether a DOM item exists. */
|
|
410
|
+
private handleSelectValue;
|
|
411
|
+
/** Requests submit of the closest form when `submitOnItemClick` is enabled. */
|
|
412
|
+
private maybeSubmit;
|
|
413
|
+
selectHighlighted(): void;
|
|
414
|
+
highlightNext(reason?: ComboboxHighlightReason): void;
|
|
415
|
+
highlightPrevious(reason?: ComboboxHighlightReason): void;
|
|
416
|
+
highlightFirst(reason?: ComboboxHighlightReason): void;
|
|
417
|
+
highlightLast(reason?: ComboboxHighlightReason): void;
|
|
418
|
+
/** Highlights a specific index in virtualized mode (e.g. pointer hover). Ignored if out of range. */
|
|
419
|
+
highlightIndex(index: number, reason: ComboboxHighlightReason): void;
|
|
420
|
+
/** Highlights a DOM-ref item (non-virtualized pointer hover). */
|
|
421
|
+
setHighlight(item: ComboboxItemRef, reason: ComboboxHighlightReason): void;
|
|
422
|
+
/** Clears whichever highlight model is active. */
|
|
423
|
+
clearHighlightState(): void;
|
|
424
|
+
/** Steps the virtualized highlight index by `direction`, wrapping when {@link loopFocus}. */
|
|
425
|
+
private stepIndex;
|
|
426
|
+
clearSelection(): void;
|
|
427
|
+
removeValue(value: AcceptableValue): void;
|
|
428
|
+
removeLastValue(): void;
|
|
429
|
+
/** The trigger element, used as a focus fallback when the input lives inside the popup. */
|
|
430
|
+
triggerElement: HTMLElement | null;
|
|
431
|
+
focusInput(): void;
|
|
432
|
+
/**
|
|
433
|
+
* Restores focus after a selection closes the popup, so the keyboard can reopen it. When the
|
|
434
|
+
* input lives inside the popup it is about to unmount, so focus goes to the trigger instead;
|
|
435
|
+
* otherwise it returns to the input. Done synchronously while the input is still in the DOM.
|
|
436
|
+
*/
|
|
437
|
+
restoreFocusAfterSelect(): void;
|
|
438
|
+
private chipsFocusLast;
|
|
439
|
+
/** Registered by `RdxComboboxChips` so the input can hand keyboard focus to the chips. */
|
|
440
|
+
registerChipsNav(fn: (() => boolean) | null): void;
|
|
441
|
+
/** Moves focus to the last chip, if any. Returns whether a chip was focused. */
|
|
442
|
+
focusLastChip(): boolean;
|
|
443
|
+
markAsTouched(): void;
|
|
444
|
+
private commitValue;
|
|
445
|
+
writeValue(value: ComboboxValue | null): void;
|
|
446
|
+
registerOnChange(fn: (value: ComboboxValue | null) => void): void;
|
|
447
|
+
registerOnTouched(fn: () => void): void;
|
|
448
|
+
setDisabledState(isDisabled: boolean): void;
|
|
449
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxRoot, never>;
|
|
450
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxRoot, "[rdxComboboxRoot]", ["rdxComboboxRoot"], { "value": { "alias": "value"; "required": false; "isSignal": true; }; "defaultValue": { "alias": "defaultValue"; "required": false; "isSignal": true; }; "inputValue": { "alias": "inputValue"; "required": false; "isSignal": true; }; "open": { "alias": "open"; "required": false; "isSignal": true; }; "defaultOpen": { "alias": "defaultOpen"; "required": false; "isSignal": true; }; "multipleInput": { "alias": "multiple"; "required": false; "isSignal": true; }; "selectionMode": { "alias": "selectionMode"; "required": false; "isSignal": true; }; "fillInputOnItemPress": { "alias": "fillInputOnItemPress"; "required": false; "isSignal": true; }; "dir": { "alias": "dir"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "loopFocus": { "alias": "loopFocus"; "required": false; "isSignal": true; }; "autoHighlight": { "alias": "autoHighlight"; "required": false; "isSignal": true; }; "openOnInputClick": { "alias": "openOnInputClick"; "required": false; "isSignal": true; }; "modal": { "alias": "modal"; "required": false; "isSignal": true; }; "submitOnItemClick": { "alias": "submitOnItemClick"; "required": false; "isSignal": true; }; "filter": { "alias": "filter"; "required": false; "isSignal": true; }; "limit": { "alias": "limit"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "virtualized": { "alias": "virtualized"; "required": false; "isSignal": true; }; "by": { "alias": "by"; "required": false; "isSignal": true; }; "itemToStringLabel": { "alias": "itemToStringLabel"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "inputValue": "inputValueChange"; "open": "openChange"; "onValueChange": "onValueChange"; "onInputValueChange": "onInputValueChange"; "onOpenChange": "onOpenChange"; "onItemHighlighted": "onItemHighlighted"; "onOpenChangeComplete": "onOpenChangeComplete"; }, never, never, true, [{ directive: typeof i1.RdxPopper; inputs: {}; outputs: {}; }]>;
|
|
451
|
+
}
|
|
452
|
+
|
|
453
|
+
/**
|
|
454
|
+
* An accessible label for the combobox. Registers its id so the input (and trigger) reference it via
|
|
455
|
+
* `aria-labelledby`.
|
|
456
|
+
*
|
|
457
|
+
* @group Components
|
|
458
|
+
*/
|
|
459
|
+
declare class RdxComboboxLabel {
|
|
460
|
+
private readonly rootContext;
|
|
461
|
+
readonly id: string;
|
|
462
|
+
constructor();
|
|
463
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxLabel, never>;
|
|
464
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxLabel, "[rdxComboboxLabel]", ["rdxComboboxLabel"], {}, {}, never, never, true, never>;
|
|
465
|
+
}
|
|
466
|
+
|
|
467
|
+
/**
|
|
468
|
+
* The combobox text input. Holds DOM focus at all times; the highlighted option is referenced via
|
|
469
|
+
* `aria-activedescendant`. Integrates with Field for labeling, description, and validation state.
|
|
470
|
+
*
|
|
471
|
+
* @group Components
|
|
472
|
+
*/
|
|
473
|
+
declare class RdxComboboxInput {
|
|
474
|
+
protected readonly rootContext: {
|
|
475
|
+
listId: string;
|
|
476
|
+
labelId: _angular_core.WritableSignal<string | undefined>;
|
|
477
|
+
setLabelId: (id: string | undefined) => void;
|
|
478
|
+
dir: _angular_core.InputSignal<_radix_ng_primitives_core.Direction>;
|
|
479
|
+
value: _angular_core.ModelSignal<_radix_ng_primitives_combobox.ComboboxValue>;
|
|
480
|
+
inputValue: _angular_core.ModelSignal<string>;
|
|
481
|
+
open: _angular_core.ModelSignal<boolean>;
|
|
482
|
+
multiple: _angular_core.Signal<boolean>;
|
|
483
|
+
selectionMode: _angular_core.Signal<"none" | "single" | "multiple">;
|
|
484
|
+
disabledState: _angular_core.Signal<boolean>;
|
|
485
|
+
readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
486
|
+
requiredState: _angular_core.Signal<boolean>;
|
|
487
|
+
openOnInputClick: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
488
|
+
modal: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
489
|
+
virtualized: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
490
|
+
filteredItems: _angular_core.Signal<readonly _radix_ng_primitives_core.AcceptableValue[]>;
|
|
491
|
+
highlightedItem: _angular_core.Signal<_radix_ng_primitives_combobox.ComboboxItemRef | null>;
|
|
492
|
+
highlightedIndex: _angular_core.Signal<number>;
|
|
493
|
+
activeId: _angular_core.Signal<string | undefined>;
|
|
494
|
+
itemId: (index: number) => string;
|
|
495
|
+
isKeyboardActive: () => boolean;
|
|
496
|
+
setKeyboardActive: (value: boolean) => void;
|
|
497
|
+
transitionStatus: _angular_core.Signal<_radix_ng_primitives_core.RdxTransitionStatus>;
|
|
498
|
+
registerTransitionElement: (element: HTMLElement) => () => void;
|
|
499
|
+
visibleCount: _angular_core.Signal<number>;
|
|
500
|
+
isVisible: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => boolean;
|
|
501
|
+
isSelected: (value: _radix_ng_primitives_core.AcceptableValue) => boolean;
|
|
502
|
+
registerItem: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
503
|
+
unregisterItem: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
504
|
+
highlight: _radix_ng_primitives_core.ListHighlight<_radix_ng_primitives_combobox.ComboboxItemRef>;
|
|
505
|
+
highlightNext: () => void;
|
|
506
|
+
highlightPrevious: () => void;
|
|
507
|
+
highlightFirst: () => void;
|
|
508
|
+
highlightLast: () => void;
|
|
509
|
+
highlightIndex: (index: number, reason: _radix_ng_primitives_combobox.ComboboxHighlightReason) => void;
|
|
510
|
+
setHighlight: (item: _radix_ng_primitives_combobox.ComboboxItemRef, reason: _radix_ng_primitives_combobox.ComboboxHighlightReason) => void;
|
|
511
|
+
clearHighlight: () => void;
|
|
512
|
+
inputElement: _angular_core.Signal<HTMLInputElement | null>;
|
|
513
|
+
setInputElement: (el: HTMLInputElement | null) => void;
|
|
514
|
+
registerTrigger: (el: HTMLElement | null) => HTMLElement | null;
|
|
515
|
+
focusInput: () => void;
|
|
516
|
+
openPopup: () => void;
|
|
517
|
+
openForBrowse: () => void;
|
|
518
|
+
closePopup: (revert?: boolean) => void;
|
|
519
|
+
setInputValue: (value: string) => void;
|
|
520
|
+
openAndHighlight: (edge: "first" | "last") => void;
|
|
521
|
+
select: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
522
|
+
selectIndex: (index: number) => void;
|
|
523
|
+
selectHighlighted: () => void;
|
|
524
|
+
clearSelection: () => void;
|
|
525
|
+
removeValue: (value: _radix_ng_primitives_core.AcceptableValue) => void;
|
|
526
|
+
removeLastValue: () => void;
|
|
527
|
+
registerChipsNav: (fn: (() => boolean) | null) => void;
|
|
528
|
+
focusLastChip: () => boolean;
|
|
529
|
+
labelFor: (value: _radix_ng_primitives_core.AcceptableValue) => string;
|
|
530
|
+
markAsTouched: () => void;
|
|
531
|
+
};
|
|
532
|
+
private readonly element;
|
|
533
|
+
private readonly fieldRootContext;
|
|
534
|
+
/** The input id; Field labels and descriptions reference it for accessible relationships. */
|
|
535
|
+
readonly id: _angular_core.InputSignal<string>;
|
|
536
|
+
/** Marks the input as invalid independently of any Field state. */
|
|
537
|
+
readonly invalid: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
|
|
538
|
+
protected readonly invalidState: _angular_core.Signal<boolean>;
|
|
539
|
+
protected readonly disabledState: _angular_core.Signal<boolean>;
|
|
540
|
+
protected readonly requiredState: _angular_core.Signal<boolean>;
|
|
541
|
+
protected readonly filledState: _angular_core.Signal<boolean>;
|
|
542
|
+
protected readonly focusedState: _angular_core.Signal<boolean>;
|
|
543
|
+
protected readonly isEmptyValue: _angular_core.Signal<boolean>;
|
|
544
|
+
protected readonly describedBy: _angular_core.Signal<string | undefined>;
|
|
545
|
+
constructor();
|
|
546
|
+
/** Whether an IME composition is in progress (CJK). While composing, don't filter or select. */
|
|
547
|
+
protected composing: boolean;
|
|
548
|
+
onInput(event: Event): void;
|
|
549
|
+
onCompositionEnd(event: CompositionEvent): void;
|
|
550
|
+
private commitInput;
|
|
551
|
+
onClick(): void;
|
|
552
|
+
onFocus(): void;
|
|
553
|
+
onBlur(): void;
|
|
554
|
+
onKeydown(event: KeyboardEvent): void;
|
|
555
|
+
protected readonly dataAttr: (value: boolean) => "" | undefined;
|
|
556
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxInput, never>;
|
|
557
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxInput, "input[rdxComboboxInput]", ["rdxComboboxInput"], { "id": { "alias": "id"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.RdxPopperAnchor; inputs: {}; outputs: {}; }, { directive: typeof i1$1.RdxDismissableLayerBranch; inputs: {}; outputs: {}; }]>;
|
|
558
|
+
}
|
|
559
|
+
|
|
560
|
+
/**
|
|
561
|
+
* Renders the current selection's label(s) — typically inside a {@link RdxComboboxTrigger} for a
|
|
562
|
+
* select-like control. Read `slotText()` in the template, or compose your own from `selectedLabels()`.
|
|
563
|
+
* Exposes `data-placeholder` while nothing is selected.
|
|
564
|
+
*
|
|
565
|
+
* @example
|
|
566
|
+
* <span #value="rdxComboboxValue" rdxComboboxValue placeholder="Select…">{{ value.slotText() }}</span>
|
|
567
|
+
*
|
|
568
|
+
* @group Components
|
|
569
|
+
*/
|
|
570
|
+
declare class RdxComboboxValue {
|
|
571
|
+
private readonly rootContext;
|
|
572
|
+
/** Text shown when there is no selection. */
|
|
573
|
+
readonly placeholder: _angular_core.InputSignal<string | undefined>;
|
|
574
|
+
/** The label(s) of the current selection, resolved via the root's `itemToStringLabel`/items. */
|
|
575
|
+
readonly selectedLabels: _angular_core.Signal<string[]>;
|
|
576
|
+
readonly isEmpty: _angular_core.Signal<boolean>;
|
|
577
|
+
/** The selection joined for display, or the `placeholder` when empty. */
|
|
578
|
+
readonly slotText: _angular_core.Signal<string>;
|
|
579
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxValue, never>;
|
|
580
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxValue, "[rdxComboboxValue]", ["rdxComboboxValue"], { "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
581
|
+
}
|
|
582
|
+
|
|
583
|
+
/**
|
|
584
|
+
* Toggles the combobox popup. Carries `tabindex="-1"` so it never steals focus from the input.
|
|
585
|
+
*
|
|
586
|
+
* @group Components
|
|
587
|
+
*/
|
|
588
|
+
declare class RdxComboboxTrigger {
|
|
589
|
+
protected readonly rootContext: {
|
|
590
|
+
listId: string;
|
|
591
|
+
labelId: _angular_core.WritableSignal<string | undefined>;
|
|
592
|
+
setLabelId: (id: string | undefined) => void;
|
|
593
|
+
dir: _angular_core.InputSignal<_radix_ng_primitives_types_radix_ng_primitives_core.Direction>;
|
|
594
|
+
value: _angular_core.ModelSignal<_radix_ng_primitives_combobox.ComboboxValue>;
|
|
595
|
+
inputValue: _angular_core.ModelSignal<string>;
|
|
596
|
+
open: _angular_core.ModelSignal<boolean>;
|
|
597
|
+
multiple: _angular_core.Signal<boolean>;
|
|
598
|
+
selectionMode: _angular_core.Signal<"none" | "single" | "multiple">;
|
|
599
|
+
disabledState: _angular_core.Signal<boolean>;
|
|
600
|
+
readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
601
|
+
requiredState: _angular_core.Signal<boolean>;
|
|
602
|
+
openOnInputClick: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
603
|
+
modal: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
604
|
+
virtualized: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
605
|
+
filteredItems: _angular_core.Signal<readonly _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue[]>;
|
|
606
|
+
highlightedItem: _angular_core.Signal<_radix_ng_primitives_combobox.ComboboxItemRef | null>;
|
|
607
|
+
highlightedIndex: _angular_core.Signal<number>;
|
|
608
|
+
activeId: _angular_core.Signal<string | undefined>;
|
|
609
|
+
itemId: (index: number) => string;
|
|
610
|
+
isKeyboardActive: () => boolean;
|
|
611
|
+
setKeyboardActive: (value: boolean) => void;
|
|
612
|
+
transitionStatus: _angular_core.Signal<_radix_ng_primitives_types_radix_ng_primitives_core.RdxTransitionStatus>;
|
|
613
|
+
registerTransitionElement: (element: HTMLElement) => () => void;
|
|
614
|
+
visibleCount: _angular_core.Signal<number>;
|
|
615
|
+
isVisible: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => boolean;
|
|
616
|
+
isSelected: (value: _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue) => boolean;
|
|
617
|
+
registerItem: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
618
|
+
unregisterItem: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
619
|
+
highlight: _radix_ng_primitives_types_radix_ng_primitives_core.ListHighlight<_radix_ng_primitives_combobox.ComboboxItemRef>;
|
|
620
|
+
highlightNext: () => void;
|
|
621
|
+
highlightPrevious: () => void;
|
|
622
|
+
highlightFirst: () => void;
|
|
623
|
+
highlightLast: () => void;
|
|
624
|
+
highlightIndex: (index: number, reason: _radix_ng_primitives_combobox.ComboboxHighlightReason) => void;
|
|
625
|
+
setHighlight: (item: _radix_ng_primitives_combobox.ComboboxItemRef, reason: _radix_ng_primitives_combobox.ComboboxHighlightReason) => void;
|
|
626
|
+
clearHighlight: () => void;
|
|
627
|
+
inputElement: _angular_core.Signal<HTMLInputElement | null>;
|
|
628
|
+
setInputElement: (el: HTMLInputElement | null) => void;
|
|
629
|
+
registerTrigger: (el: HTMLElement | null) => HTMLElement | null;
|
|
630
|
+
focusInput: () => void;
|
|
631
|
+
openPopup: () => void;
|
|
632
|
+
openForBrowse: () => void;
|
|
633
|
+
closePopup: (revert?: boolean) => void;
|
|
634
|
+
setInputValue: (value: string) => void;
|
|
635
|
+
openAndHighlight: (edge: "first" | "last") => void;
|
|
636
|
+
select: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
637
|
+
selectIndex: (index: number) => void;
|
|
638
|
+
selectHighlighted: () => void;
|
|
639
|
+
clearSelection: () => void;
|
|
640
|
+
removeValue: (value: _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue) => void;
|
|
641
|
+
removeLastValue: () => void;
|
|
642
|
+
registerChipsNav: (fn: (() => boolean) | null) => void;
|
|
643
|
+
focusLastChip: () => boolean;
|
|
644
|
+
labelFor: (value: _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue) => string;
|
|
645
|
+
markAsTouched: () => void;
|
|
646
|
+
};
|
|
647
|
+
private readonly element;
|
|
648
|
+
constructor();
|
|
649
|
+
onClick(): void;
|
|
650
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxTrigger, never>;
|
|
651
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxTrigger, "button[rdxComboboxTrigger]", ["rdxComboboxTrigger"], {}, {}, never, never, true, [{ directive: typeof i1$1.RdxDismissableLayerBranch; inputs: {}; outputs: {}; }]>;
|
|
652
|
+
}
|
|
653
|
+
|
|
654
|
+
/**
|
|
655
|
+
* Decorative icon inside the trigger. Hidden from assistive technology.
|
|
656
|
+
*
|
|
657
|
+
* @group Components
|
|
658
|
+
*/
|
|
659
|
+
declare class RdxComboboxIcon {
|
|
660
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxIcon, never>;
|
|
661
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxIcon, "[rdxComboboxIcon]", ["rdxComboboxIcon"], {}, {}, never, never, true, never>;
|
|
662
|
+
}
|
|
663
|
+
|
|
664
|
+
/**
|
|
665
|
+
* Clears the current selection and the input text. Hidden when there is nothing to clear.
|
|
666
|
+
*
|
|
667
|
+
* @group Components
|
|
668
|
+
*/
|
|
669
|
+
declare class RdxComboboxClear {
|
|
670
|
+
protected readonly rootContext: {
|
|
671
|
+
listId: string;
|
|
672
|
+
labelId: _angular_core.WritableSignal<string | undefined>;
|
|
673
|
+
setLabelId: (id: string | undefined) => void;
|
|
674
|
+
dir: _angular_core.InputSignal<_radix_ng_primitives_types_radix_ng_primitives_core.Direction>;
|
|
675
|
+
value: _angular_core.ModelSignal<_radix_ng_primitives_combobox.ComboboxValue>;
|
|
676
|
+
inputValue: _angular_core.ModelSignal<string>;
|
|
677
|
+
open: _angular_core.ModelSignal<boolean>;
|
|
678
|
+
multiple: _angular_core.Signal<boolean>;
|
|
679
|
+
selectionMode: _angular_core.Signal<"none" | "single" | "multiple">;
|
|
680
|
+
disabledState: _angular_core.Signal<boolean>;
|
|
681
|
+
readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
682
|
+
requiredState: _angular_core.Signal<boolean>;
|
|
683
|
+
openOnInputClick: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
684
|
+
modal: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
685
|
+
virtualized: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
686
|
+
filteredItems: _angular_core.Signal<readonly _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue[]>;
|
|
687
|
+
highlightedItem: _angular_core.Signal<_radix_ng_primitives_combobox.ComboboxItemRef | null>;
|
|
688
|
+
highlightedIndex: _angular_core.Signal<number>;
|
|
689
|
+
activeId: _angular_core.Signal<string | undefined>;
|
|
690
|
+
itemId: (index: number) => string;
|
|
691
|
+
isKeyboardActive: () => boolean;
|
|
692
|
+
setKeyboardActive: (value: boolean) => void;
|
|
693
|
+
transitionStatus: _angular_core.Signal<_radix_ng_primitives_types_radix_ng_primitives_core.RdxTransitionStatus>;
|
|
694
|
+
registerTransitionElement: (element: HTMLElement) => () => void;
|
|
695
|
+
visibleCount: _angular_core.Signal<number>;
|
|
696
|
+
isVisible: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => boolean;
|
|
697
|
+
isSelected: (value: _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue) => boolean;
|
|
698
|
+
registerItem: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
699
|
+
unregisterItem: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
700
|
+
highlight: _radix_ng_primitives_types_radix_ng_primitives_core.ListHighlight<_radix_ng_primitives_combobox.ComboboxItemRef>;
|
|
701
|
+
highlightNext: () => void;
|
|
702
|
+
highlightPrevious: () => void;
|
|
703
|
+
highlightFirst: () => void;
|
|
704
|
+
highlightLast: () => void;
|
|
705
|
+
highlightIndex: (index: number, reason: _radix_ng_primitives_combobox.ComboboxHighlightReason) => void;
|
|
706
|
+
setHighlight: (item: _radix_ng_primitives_combobox.ComboboxItemRef, reason: _radix_ng_primitives_combobox.ComboboxHighlightReason) => void;
|
|
707
|
+
clearHighlight: () => void;
|
|
708
|
+
inputElement: _angular_core.Signal<HTMLInputElement | null>;
|
|
709
|
+
setInputElement: (el: HTMLInputElement | null) => void;
|
|
710
|
+
registerTrigger: (el: HTMLElement | null) => HTMLElement | null;
|
|
711
|
+
focusInput: () => void;
|
|
712
|
+
openPopup: () => void;
|
|
713
|
+
openForBrowse: () => void;
|
|
714
|
+
closePopup: (revert?: boolean) => void;
|
|
715
|
+
setInputValue: (value: string) => void;
|
|
716
|
+
openAndHighlight: (edge: "first" | "last") => void;
|
|
717
|
+
select: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
718
|
+
selectIndex: (index: number) => void;
|
|
719
|
+
selectHighlighted: () => void;
|
|
720
|
+
clearSelection: () => void;
|
|
721
|
+
removeValue: (value: _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue) => void;
|
|
722
|
+
removeLastValue: () => void;
|
|
723
|
+
registerChipsNav: (fn: (() => boolean) | null) => void;
|
|
724
|
+
focusLastChip: () => boolean;
|
|
725
|
+
labelFor: (value: _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue) => string;
|
|
726
|
+
markAsTouched: () => void;
|
|
727
|
+
};
|
|
728
|
+
protected readonly isEmpty: _angular_core.Signal<boolean>;
|
|
729
|
+
onClick(): void;
|
|
730
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxClear, never>;
|
|
731
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxClear, "button[rdxComboboxClear]", ["rdxComboboxClear"], {}, {}, never, never, true, [{ directive: typeof i1$1.RdxDismissableLayerBranch; inputs: {}; outputs: {}; }]>;
|
|
732
|
+
}
|
|
733
|
+
|
|
734
|
+
/**
|
|
735
|
+
* Teleports the popup into a container (default `document.body`).
|
|
736
|
+
*
|
|
737
|
+
* @group Components
|
|
738
|
+
*/
|
|
739
|
+
declare class RdxComboboxPortal {
|
|
740
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxPortal, never>;
|
|
741
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxPortal, "[rdxComboboxPortal]", ["rdxComboboxPortal"], {}, {}, never, never, true, [{ directive: typeof i1$2.RdxPortal; inputs: { "container": "container"; }; outputs: {}; }]>;
|
|
742
|
+
}
|
|
743
|
+
|
|
744
|
+
/**
|
|
745
|
+
* Wraps the popup template in {@link RdxPresenceDirective} so it mounts/unmounts with the open state
|
|
746
|
+
* and can run enter/leave animations.
|
|
747
|
+
*
|
|
748
|
+
* @group Components
|
|
749
|
+
*/
|
|
750
|
+
declare class RdxComboboxPortalPresence {
|
|
751
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxPortalPresence, never>;
|
|
752
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxPortalPresence, "ng-template[rdxComboboxPortalPresence]", never, {}, {}, never, never, true, [{ directive: typeof i1$3.RdxPresenceDirective; inputs: {}; outputs: {}; }]>;
|
|
753
|
+
}
|
|
754
|
+
|
|
755
|
+
/**
|
|
756
|
+
* An overlay rendered beneath the popup in `modal` mode. Place it inside the portal/presence; style
|
|
757
|
+
* it `position: fixed; inset: 0`. Give it `pointer-events: auto` so a click on it dismisses the popup
|
|
758
|
+
* (with `modal`, the rest of the page is inert). Exposes `data-open` / `data-closed` for animation.
|
|
759
|
+
*
|
|
760
|
+
* @group Components
|
|
761
|
+
*/
|
|
762
|
+
declare class RdxComboboxBackdrop {
|
|
763
|
+
protected readonly rootContext: {
|
|
764
|
+
listId: string;
|
|
765
|
+
labelId: _angular_core.WritableSignal<string | undefined>;
|
|
766
|
+
setLabelId: (id: string | undefined) => void;
|
|
767
|
+
dir: _angular_core.InputSignal<_radix_ng_primitives_types_radix_ng_primitives_core.Direction>;
|
|
768
|
+
value: _angular_core.ModelSignal<_radix_ng_primitives_combobox.ComboboxValue>;
|
|
769
|
+
inputValue: _angular_core.ModelSignal<string>;
|
|
770
|
+
open: _angular_core.ModelSignal<boolean>;
|
|
771
|
+
multiple: _angular_core.Signal<boolean>;
|
|
772
|
+
selectionMode: _angular_core.Signal<"none" | "single" | "multiple">;
|
|
773
|
+
disabledState: _angular_core.Signal<boolean>;
|
|
774
|
+
readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
775
|
+
requiredState: _angular_core.Signal<boolean>;
|
|
776
|
+
openOnInputClick: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
777
|
+
modal: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
778
|
+
virtualized: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
779
|
+
filteredItems: _angular_core.Signal<readonly _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue[]>;
|
|
780
|
+
highlightedItem: _angular_core.Signal<_radix_ng_primitives_combobox.ComboboxItemRef | null>;
|
|
781
|
+
highlightedIndex: _angular_core.Signal<number>;
|
|
782
|
+
activeId: _angular_core.Signal<string | undefined>;
|
|
783
|
+
itemId: (index: number) => string;
|
|
784
|
+
isKeyboardActive: () => boolean;
|
|
785
|
+
setKeyboardActive: (value: boolean) => void;
|
|
786
|
+
transitionStatus: _angular_core.Signal<_radix_ng_primitives_types_radix_ng_primitives_core.RdxTransitionStatus>;
|
|
787
|
+
registerTransitionElement: (element: HTMLElement) => () => void;
|
|
788
|
+
visibleCount: _angular_core.Signal<number>;
|
|
789
|
+
isVisible: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => boolean;
|
|
790
|
+
isSelected: (value: _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue) => boolean;
|
|
791
|
+
registerItem: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
792
|
+
unregisterItem: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
793
|
+
highlight: _radix_ng_primitives_types_radix_ng_primitives_core.ListHighlight<_radix_ng_primitives_combobox.ComboboxItemRef>;
|
|
794
|
+
highlightNext: () => void;
|
|
795
|
+
highlightPrevious: () => void;
|
|
796
|
+
highlightFirst: () => void;
|
|
797
|
+
highlightLast: () => void;
|
|
798
|
+
highlightIndex: (index: number, reason: _radix_ng_primitives_combobox.ComboboxHighlightReason) => void;
|
|
799
|
+
setHighlight: (item: _radix_ng_primitives_combobox.ComboboxItemRef, reason: _radix_ng_primitives_combobox.ComboboxHighlightReason) => void;
|
|
800
|
+
clearHighlight: () => void;
|
|
801
|
+
inputElement: _angular_core.Signal<HTMLInputElement | null>;
|
|
802
|
+
setInputElement: (el: HTMLInputElement | null) => void;
|
|
803
|
+
registerTrigger: (el: HTMLElement | null) => HTMLElement | null;
|
|
804
|
+
focusInput: () => void;
|
|
805
|
+
openPopup: () => void;
|
|
806
|
+
openForBrowse: () => void;
|
|
807
|
+
closePopup: (revert?: boolean) => void;
|
|
808
|
+
setInputValue: (value: string) => void;
|
|
809
|
+
openAndHighlight: (edge: "first" | "last") => void;
|
|
810
|
+
select: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
811
|
+
selectIndex: (index: number) => void;
|
|
812
|
+
selectHighlighted: () => void;
|
|
813
|
+
clearSelection: () => void;
|
|
814
|
+
removeValue: (value: _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue) => void;
|
|
815
|
+
removeLastValue: () => void;
|
|
816
|
+
registerChipsNav: (fn: (() => boolean) | null) => void;
|
|
817
|
+
focusLastChip: () => boolean;
|
|
818
|
+
labelFor: (value: _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue) => string;
|
|
819
|
+
markAsTouched: () => void;
|
|
820
|
+
};
|
|
821
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxBackdrop, never>;
|
|
822
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxBackdrop, "[rdxComboboxBackdrop]", ["rdxComboboxBackdrop"], {}, {}, never, never, true, never>;
|
|
823
|
+
}
|
|
824
|
+
|
|
825
|
+
/**
|
|
826
|
+
* Positions the popup relative to the input anchor using the popper engine. Re-exposes the popper
|
|
827
|
+
* positioning inputs.
|
|
828
|
+
*
|
|
829
|
+
* @group Components
|
|
830
|
+
*/
|
|
831
|
+
declare class RdxComboboxPositioner {
|
|
832
|
+
readonly side: _angular_core.InputSignal<"top" | "right" | "bottom" | "left">;
|
|
833
|
+
readonly sideOffset: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
834
|
+
readonly align: _angular_core.InputSignal<"center" | "start" | "end">;
|
|
835
|
+
readonly alignOffset: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
836
|
+
readonly arrowPadding: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
837
|
+
readonly avoidCollisions: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
838
|
+
readonly collisionBoundary: _angular_core.InputSignal<ElementRef<HTMLElement> | ElementRef<HTMLElement>[] | undefined>;
|
|
839
|
+
readonly collisionPadding: _angular_core.InputSignal<number | Partial<Record<"top" | "right" | "bottom" | "left", number>>>;
|
|
840
|
+
readonly sticky: _angular_core.InputSignal<"always" | "partial">;
|
|
841
|
+
readonly hideWhenDetached: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
842
|
+
readonly updatePositionStrategy: _angular_core.InputSignal<"always" | "optimized">;
|
|
843
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxPositioner, never>;
|
|
844
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxPositioner, "[rdxComboboxPositioner]", ["rdxComboboxPositioner"], { "side": { "alias": "side"; "required": false; "isSignal": true; }; "sideOffset": { "alias": "sideOffset"; "required": false; "isSignal": true; }; "align": { "alias": "align"; "required": false; "isSignal": true; }; "alignOffset": { "alias": "alignOffset"; "required": false; "isSignal": true; }; "arrowPadding": { "alias": "arrowPadding"; "required": false; "isSignal": true; }; "avoidCollisions": { "alias": "avoidCollisions"; "required": false; "isSignal": true; }; "collisionBoundary": { "alias": "collisionBoundary"; "required": false; "isSignal": true; }; "collisionPadding": { "alias": "collisionPadding"; "required": false; "isSignal": true; }; "sticky": { "alias": "sticky"; "required": false; "isSignal": true; }; "hideWhenDetached": { "alias": "hideWhenDetached"; "required": false; "isSignal": true; }; "updatePositionStrategy": { "alias": "updatePositionStrategy"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.RdxPopperContentWrapper; inputs: { "side": "side"; "sideOffset": "sideOffset"; "align": "align"; "alignOffset": "alignOffset"; "arrowPadding": "arrowPadding"; "avoidCollisions": "avoidCollisions"; "collisionBoundary": "collisionBoundary"; "collisionPadding": "collisionPadding"; "sticky": "sticky"; "hideWhenDetached": "hideWhenDetached"; "updatePositionStrategy": "updatePositionStrategy"; }; outputs: {}; }]>;
|
|
845
|
+
}
|
|
846
|
+
|
|
847
|
+
/**
|
|
848
|
+
* The popup surface. Composes the popper content (for `data-side` / `data-align`) and a dismissable
|
|
849
|
+
* layer for outside-dismiss. It does **not** trap focus — focus stays in the input throughout.
|
|
850
|
+
*
|
|
851
|
+
* @group Components
|
|
852
|
+
*/
|
|
853
|
+
declare class RdxComboboxPopup {
|
|
854
|
+
protected readonly rootContext: {
|
|
855
|
+
listId: string;
|
|
856
|
+
labelId: _angular_core.WritableSignal<string | undefined>;
|
|
857
|
+
setLabelId: (id: string | undefined) => void;
|
|
858
|
+
dir: _angular_core.InputSignal<_radix_ng_primitives_core.Direction>;
|
|
859
|
+
value: _angular_core.ModelSignal<_radix_ng_primitives_combobox.ComboboxValue>;
|
|
860
|
+
inputValue: _angular_core.ModelSignal<string>;
|
|
861
|
+
open: _angular_core.ModelSignal<boolean>;
|
|
862
|
+
multiple: _angular_core.Signal<boolean>;
|
|
863
|
+
selectionMode: _angular_core.Signal<"none" | "single" | "multiple">;
|
|
864
|
+
disabledState: _angular_core.Signal<boolean>;
|
|
865
|
+
readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
866
|
+
requiredState: _angular_core.Signal<boolean>;
|
|
867
|
+
openOnInputClick: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
868
|
+
modal: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
869
|
+
virtualized: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
870
|
+
filteredItems: _angular_core.Signal<readonly _radix_ng_primitives_core.AcceptableValue[]>;
|
|
871
|
+
highlightedItem: _angular_core.Signal<_radix_ng_primitives_combobox.ComboboxItemRef | null>;
|
|
872
|
+
highlightedIndex: _angular_core.Signal<number>;
|
|
873
|
+
activeId: _angular_core.Signal<string | undefined>;
|
|
874
|
+
itemId: (index: number) => string;
|
|
875
|
+
isKeyboardActive: () => boolean;
|
|
876
|
+
setKeyboardActive: (value: boolean) => void;
|
|
877
|
+
transitionStatus: _angular_core.Signal<_radix_ng_primitives_core.RdxTransitionStatus>;
|
|
878
|
+
registerTransitionElement: (element: HTMLElement) => () => void;
|
|
879
|
+
visibleCount: _angular_core.Signal<number>;
|
|
880
|
+
isVisible: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => boolean;
|
|
881
|
+
isSelected: (value: _radix_ng_primitives_core.AcceptableValue) => boolean;
|
|
882
|
+
registerItem: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
883
|
+
unregisterItem: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
884
|
+
highlight: _radix_ng_primitives_core.ListHighlight<_radix_ng_primitives_combobox.ComboboxItemRef>;
|
|
885
|
+
highlightNext: () => void;
|
|
886
|
+
highlightPrevious: () => void;
|
|
887
|
+
highlightFirst: () => void;
|
|
888
|
+
highlightLast: () => void;
|
|
889
|
+
highlightIndex: (index: number, reason: _radix_ng_primitives_combobox.ComboboxHighlightReason) => void;
|
|
890
|
+
setHighlight: (item: _radix_ng_primitives_combobox.ComboboxItemRef, reason: _radix_ng_primitives_combobox.ComboboxHighlightReason) => void;
|
|
891
|
+
clearHighlight: () => void;
|
|
892
|
+
inputElement: _angular_core.Signal<HTMLInputElement | null>;
|
|
893
|
+
setInputElement: (el: HTMLInputElement | null) => void;
|
|
894
|
+
registerTrigger: (el: HTMLElement | null) => HTMLElement | null;
|
|
895
|
+
focusInput: () => void;
|
|
896
|
+
openPopup: () => void;
|
|
897
|
+
openForBrowse: () => void;
|
|
898
|
+
closePopup: (revert?: boolean) => void;
|
|
899
|
+
setInputValue: (value: string) => void;
|
|
900
|
+
openAndHighlight: (edge: "first" | "last") => void;
|
|
901
|
+
select: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
902
|
+
selectIndex: (index: number) => void;
|
|
903
|
+
selectHighlighted: () => void;
|
|
904
|
+
clearSelection: () => void;
|
|
905
|
+
removeValue: (value: _radix_ng_primitives_core.AcceptableValue) => void;
|
|
906
|
+
removeLastValue: () => void;
|
|
907
|
+
registerChipsNav: (fn: (() => boolean) | null) => void;
|
|
908
|
+
focusLastChip: () => boolean;
|
|
909
|
+
labelFor: (value: _radix_ng_primitives_core.AcceptableValue) => string;
|
|
910
|
+
markAsTouched: () => void;
|
|
911
|
+
};
|
|
912
|
+
private readonly dismissableLayer;
|
|
913
|
+
private readonly popper;
|
|
914
|
+
private readonly element;
|
|
915
|
+
constructor();
|
|
916
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxPopup, never>;
|
|
917
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxPopup, "[rdxComboboxPopup]", ["rdxComboboxPopup"], {}, {}, never, never, true, [{ directive: typeof i1.RdxPopperContent; inputs: {}; outputs: {}; }, { directive: typeof i1$1.RdxDismissableLayer; inputs: {}; outputs: {}; }]>;
|
|
918
|
+
}
|
|
919
|
+
|
|
920
|
+
/**
|
|
921
|
+
* An optional arrow that points from the popup to the anchor. Composes the popper arrow, which keeps
|
|
922
|
+
* it aligned as the popup flips sides.
|
|
923
|
+
*
|
|
924
|
+
* @group Components
|
|
925
|
+
*/
|
|
926
|
+
declare class RdxComboboxArrow {
|
|
927
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxArrow, never>;
|
|
928
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxArrow, "[rdxComboboxArrow]", ["rdxComboboxArrow"], {}, {}, never, never, true, [{ directive: typeof i1.RdxPopperArrow; inputs: { "width": "width"; "height": "height"; }; outputs: {}; }]>;
|
|
929
|
+
}
|
|
930
|
+
|
|
931
|
+
/**
|
|
932
|
+
* The listbox container for options. Carries the id referenced by the input's `aria-controls`.
|
|
933
|
+
*
|
|
934
|
+
* @group Components
|
|
935
|
+
*/
|
|
936
|
+
declare class RdxComboboxList {
|
|
937
|
+
protected readonly rootContext: {
|
|
938
|
+
listId: string;
|
|
939
|
+
labelId: _angular_core.WritableSignal<string | undefined>;
|
|
940
|
+
setLabelId: (id: string | undefined) => void;
|
|
941
|
+
dir: _angular_core.InputSignal<_radix_ng_primitives_types_radix_ng_primitives_core.Direction>;
|
|
942
|
+
value: _angular_core.ModelSignal<_radix_ng_primitives_combobox.ComboboxValue>;
|
|
943
|
+
inputValue: _angular_core.ModelSignal<string>;
|
|
944
|
+
open: _angular_core.ModelSignal<boolean>;
|
|
945
|
+
multiple: _angular_core.Signal<boolean>;
|
|
946
|
+
selectionMode: _angular_core.Signal<"none" | "single" | "multiple">;
|
|
947
|
+
disabledState: _angular_core.Signal<boolean>;
|
|
948
|
+
readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
949
|
+
requiredState: _angular_core.Signal<boolean>;
|
|
950
|
+
openOnInputClick: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
951
|
+
modal: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
952
|
+
virtualized: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
953
|
+
filteredItems: _angular_core.Signal<readonly _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue[]>;
|
|
954
|
+
highlightedItem: _angular_core.Signal<_radix_ng_primitives_combobox.ComboboxItemRef | null>;
|
|
955
|
+
highlightedIndex: _angular_core.Signal<number>;
|
|
956
|
+
activeId: _angular_core.Signal<string | undefined>;
|
|
957
|
+
itemId: (index: number) => string;
|
|
958
|
+
isKeyboardActive: () => boolean;
|
|
959
|
+
setKeyboardActive: (value: boolean) => void;
|
|
960
|
+
transitionStatus: _angular_core.Signal<_radix_ng_primitives_types_radix_ng_primitives_core.RdxTransitionStatus>;
|
|
961
|
+
registerTransitionElement: (element: HTMLElement) => () => void;
|
|
962
|
+
visibleCount: _angular_core.Signal<number>;
|
|
963
|
+
isVisible: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => boolean;
|
|
964
|
+
isSelected: (value: _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue) => boolean;
|
|
965
|
+
registerItem: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
966
|
+
unregisterItem: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
967
|
+
highlight: _radix_ng_primitives_types_radix_ng_primitives_core.ListHighlight<_radix_ng_primitives_combobox.ComboboxItemRef>;
|
|
968
|
+
highlightNext: () => void;
|
|
969
|
+
highlightPrevious: () => void;
|
|
970
|
+
highlightFirst: () => void;
|
|
971
|
+
highlightLast: () => void;
|
|
972
|
+
highlightIndex: (index: number, reason: _radix_ng_primitives_combobox.ComboboxHighlightReason) => void;
|
|
973
|
+
setHighlight: (item: _radix_ng_primitives_combobox.ComboboxItemRef, reason: _radix_ng_primitives_combobox.ComboboxHighlightReason) => void;
|
|
974
|
+
clearHighlight: () => void;
|
|
975
|
+
inputElement: _angular_core.Signal<HTMLInputElement | null>;
|
|
976
|
+
setInputElement: (el: HTMLInputElement | null) => void;
|
|
977
|
+
registerTrigger: (el: HTMLElement | null) => HTMLElement | null;
|
|
978
|
+
focusInput: () => void;
|
|
979
|
+
openPopup: () => void;
|
|
980
|
+
openForBrowse: () => void;
|
|
981
|
+
closePopup: (revert?: boolean) => void;
|
|
982
|
+
setInputValue: (value: string) => void;
|
|
983
|
+
openAndHighlight: (edge: "first" | "last") => void;
|
|
984
|
+
select: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
985
|
+
selectIndex: (index: number) => void;
|
|
986
|
+
selectHighlighted: () => void;
|
|
987
|
+
clearSelection: () => void;
|
|
988
|
+
removeValue: (value: _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue) => void;
|
|
989
|
+
removeLastValue: () => void;
|
|
990
|
+
registerChipsNav: (fn: (() => boolean) | null) => void;
|
|
991
|
+
focusLastChip: () => boolean;
|
|
992
|
+
labelFor: (value: _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue) => string;
|
|
993
|
+
markAsTouched: () => void;
|
|
994
|
+
};
|
|
995
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxList, never>;
|
|
996
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxList, "[rdxComboboxList]", ["rdxComboboxList"], {}, {}, never, never, true, never>;
|
|
997
|
+
}
|
|
998
|
+
|
|
999
|
+
declare const itemContext: () => {
|
|
1000
|
+
isSelected: _angular_core.Signal<boolean>;
|
|
1001
|
+
isHighlighted: _angular_core.Signal<boolean>;
|
|
1002
|
+
disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
1003
|
+
value: _angular_core.InputSignal<AcceptableValue>;
|
|
1004
|
+
};
|
|
1005
|
+
type RdxComboboxItemContext = ReturnType<typeof itemContext>;
|
|
1006
|
+
declare const injectComboboxItemContext: _radix_ng_primitives_core.InjectContext<{
|
|
1007
|
+
isSelected: _angular_core.Signal<boolean>;
|
|
1008
|
+
isHighlighted: _angular_core.Signal<boolean>;
|
|
1009
|
+
disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
1010
|
+
value: _angular_core.InputSignal<AcceptableValue>;
|
|
1011
|
+
}>;
|
|
1012
|
+
declare const provideComboboxItemContext: (useFactory: () => {
|
|
1013
|
+
isSelected: _angular_core.Signal<boolean>;
|
|
1014
|
+
isHighlighted: _angular_core.Signal<boolean>;
|
|
1015
|
+
disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
1016
|
+
value: _angular_core.InputSignal<AcceptableValue>;
|
|
1017
|
+
}) => _angular_core.Provider;
|
|
1018
|
+
/**
|
|
1019
|
+
* A selectable option. Registers itself with the root for filtering and navigation. Highlight is
|
|
1020
|
+
* virtual (`data-highlighted` + `aria-activedescendant` on the input) — items never take DOM focus.
|
|
1021
|
+
*
|
|
1022
|
+
* @group Components
|
|
1023
|
+
*/
|
|
1024
|
+
declare class RdxComboboxItem implements ComboboxItemRef {
|
|
1025
|
+
private readonly rootContext;
|
|
1026
|
+
readonly element: HTMLElement;
|
|
1027
|
+
readonly id: string;
|
|
1028
|
+
/** The option's value. */
|
|
1029
|
+
readonly value: _angular_core.InputSignal<AcceptableValue>;
|
|
1030
|
+
/** Explicit text matched against the query. Defaults to the element's text content. */
|
|
1031
|
+
readonly textValueInput: _angular_core.InputSignal<string>;
|
|
1032
|
+
/** Whether the option is disabled. */
|
|
1033
|
+
readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
1034
|
+
/**
|
|
1035
|
+
* The option's index in the list. Required in virtualized mode — it drives the deterministic id
|
|
1036
|
+
* (for `aria-activedescendant`), highlight matching, and selection when only a window is mounted.
|
|
1037
|
+
*/
|
|
1038
|
+
readonly index: _angular_core.InputSignal<number | undefined>;
|
|
1039
|
+
protected readonly virtualized: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
1040
|
+
private readonly autoTextValue;
|
|
1041
|
+
readonly textValue: _angular_core.Signal<string>;
|
|
1042
|
+
/** Host id: deterministic per-index in virtualized mode, otherwise a generated unique id. */
|
|
1043
|
+
protected readonly elementId: _angular_core.Signal<string>;
|
|
1044
|
+
protected readonly ariaSetSize: _angular_core.Signal<number | undefined>;
|
|
1045
|
+
protected readonly ariaPosInSet: _angular_core.Signal<number | undefined>;
|
|
1046
|
+
readonly isVisible: _angular_core.Signal<boolean>;
|
|
1047
|
+
readonly isSelected: _angular_core.Signal<boolean>;
|
|
1048
|
+
readonly isHighlighted: _angular_core.Signal<boolean>;
|
|
1049
|
+
private readonly group;
|
|
1050
|
+
constructor();
|
|
1051
|
+
onPointerDown(event: MouseEvent): void;
|
|
1052
|
+
onPointerUp(): void;
|
|
1053
|
+
onPointerMove(): void;
|
|
1054
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxItem, never>;
|
|
1055
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxItem, "[rdxComboboxItem]", ["rdxComboboxItem"], { "value": { "alias": "value"; "required": true; "isSignal": true; }; "textValueInput": { "alias": "textValue"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "index": { "alias": "index"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1056
|
+
}
|
|
1057
|
+
|
|
1058
|
+
/**
|
|
1059
|
+
* Renders only when its item is selected (e.g. a checkmark).
|
|
1060
|
+
*
|
|
1061
|
+
* @group Components
|
|
1062
|
+
*/
|
|
1063
|
+
declare class RdxComboboxItemIndicator {
|
|
1064
|
+
protected readonly itemContext: {
|
|
1065
|
+
isSelected: _angular_core.Signal<boolean>;
|
|
1066
|
+
isHighlighted: _angular_core.Signal<boolean>;
|
|
1067
|
+
disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
1068
|
+
value: _angular_core.InputSignal<_radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue>;
|
|
1069
|
+
};
|
|
1070
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxItemIndicator, never>;
|
|
1071
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxItemIndicator, "[rdxComboboxItemIndicator]", ["rdxComboboxItemIndicator"], {}, {}, never, never, true, never>;
|
|
1072
|
+
}
|
|
1073
|
+
|
|
1074
|
+
declare const groupContext: () => {
|
|
1075
|
+
labelId: _angular_core.WritableSignal<string | undefined>;
|
|
1076
|
+
registerItem: (item: ComboboxItemRef) => void;
|
|
1077
|
+
unregisterItem: (item: ComboboxItemRef) => void;
|
|
1078
|
+
};
|
|
1079
|
+
type RdxComboboxGroupContext = ReturnType<typeof groupContext>;
|
|
1080
|
+
declare const injectComboboxGroupContext: _radix_ng_primitives_core.InjectContext<{
|
|
1081
|
+
labelId: _angular_core.WritableSignal<string | undefined>;
|
|
1082
|
+
registerItem: (item: ComboboxItemRef) => void;
|
|
1083
|
+
unregisterItem: (item: ComboboxItemRef) => void;
|
|
1084
|
+
}>;
|
|
1085
|
+
declare const provideComboboxGroupContext: (useFactory: () => {
|
|
1086
|
+
labelId: _angular_core.WritableSignal<string | undefined>;
|
|
1087
|
+
registerItem: (item: ComboboxItemRef) => void;
|
|
1088
|
+
unregisterItem: (item: ComboboxItemRef) => void;
|
|
1089
|
+
}) => _angular_core.Provider;
|
|
1090
|
+
/**
|
|
1091
|
+
* Groups related options under a shared label. Hides itself when all of its items are filtered out,
|
|
1092
|
+
* so a group heading never lingers above an empty section.
|
|
1093
|
+
*
|
|
1094
|
+
* @group Components
|
|
1095
|
+
*/
|
|
1096
|
+
declare class RdxComboboxGroup {
|
|
1097
|
+
private readonly rootContext;
|
|
1098
|
+
readonly labelId: _angular_core.WritableSignal<string | undefined>;
|
|
1099
|
+
private readonly items;
|
|
1100
|
+
protected readonly hasItems: _angular_core.Signal<boolean>;
|
|
1101
|
+
protected readonly hasVisibleItems: _angular_core.Signal<boolean>;
|
|
1102
|
+
registerItem(item: ComboboxItemRef): void;
|
|
1103
|
+
unregisterItem(item: ComboboxItemRef): void;
|
|
1104
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxGroup, never>;
|
|
1105
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxGroup, "[rdxComboboxGroup]", ["rdxComboboxGroup"], {}, {}, never, never, true, never>;
|
|
1106
|
+
}
|
|
1107
|
+
|
|
1108
|
+
/**
|
|
1109
|
+
* Accessible label for a {@link RdxComboboxGroup}. Wires itself up via `aria-labelledby`.
|
|
1110
|
+
*
|
|
1111
|
+
* @group Components
|
|
1112
|
+
*/
|
|
1113
|
+
declare class RdxComboboxGroupLabel {
|
|
1114
|
+
private readonly groupContext;
|
|
1115
|
+
readonly id: string;
|
|
1116
|
+
constructor();
|
|
1117
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxGroupLabel, never>;
|
|
1118
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxGroupLabel, "[rdxComboboxGroupLabel]", ["rdxComboboxGroupLabel"], {}, {}, never, never, true, never>;
|
|
1119
|
+
}
|
|
1120
|
+
|
|
1121
|
+
/**
|
|
1122
|
+
* Shown only when no items match the current query.
|
|
1123
|
+
*
|
|
1124
|
+
* @group Components
|
|
1125
|
+
*/
|
|
1126
|
+
declare class RdxComboboxEmpty {
|
|
1127
|
+
protected readonly rootContext: {
|
|
1128
|
+
listId: string;
|
|
1129
|
+
labelId: _angular_core.WritableSignal<string | undefined>;
|
|
1130
|
+
setLabelId: (id: string | undefined) => void;
|
|
1131
|
+
dir: _angular_core.InputSignal<_radix_ng_primitives_types_radix_ng_primitives_core.Direction>;
|
|
1132
|
+
value: _angular_core.ModelSignal<_radix_ng_primitives_combobox.ComboboxValue>;
|
|
1133
|
+
inputValue: _angular_core.ModelSignal<string>;
|
|
1134
|
+
open: _angular_core.ModelSignal<boolean>;
|
|
1135
|
+
multiple: _angular_core.Signal<boolean>;
|
|
1136
|
+
selectionMode: _angular_core.Signal<"none" | "single" | "multiple">;
|
|
1137
|
+
disabledState: _angular_core.Signal<boolean>;
|
|
1138
|
+
readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
1139
|
+
requiredState: _angular_core.Signal<boolean>;
|
|
1140
|
+
openOnInputClick: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
1141
|
+
modal: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
1142
|
+
virtualized: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
1143
|
+
filteredItems: _angular_core.Signal<readonly _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue[]>;
|
|
1144
|
+
highlightedItem: _angular_core.Signal<_radix_ng_primitives_combobox.ComboboxItemRef | null>;
|
|
1145
|
+
highlightedIndex: _angular_core.Signal<number>;
|
|
1146
|
+
activeId: _angular_core.Signal<string | undefined>;
|
|
1147
|
+
itemId: (index: number) => string;
|
|
1148
|
+
isKeyboardActive: () => boolean;
|
|
1149
|
+
setKeyboardActive: (value: boolean) => void;
|
|
1150
|
+
transitionStatus: _angular_core.Signal<_radix_ng_primitives_types_radix_ng_primitives_core.RdxTransitionStatus>;
|
|
1151
|
+
registerTransitionElement: (element: HTMLElement) => () => void;
|
|
1152
|
+
visibleCount: _angular_core.Signal<number>;
|
|
1153
|
+
isVisible: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => boolean;
|
|
1154
|
+
isSelected: (value: _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue) => boolean;
|
|
1155
|
+
registerItem: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
1156
|
+
unregisterItem: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
1157
|
+
highlight: _radix_ng_primitives_types_radix_ng_primitives_core.ListHighlight<_radix_ng_primitives_combobox.ComboboxItemRef>;
|
|
1158
|
+
highlightNext: () => void;
|
|
1159
|
+
highlightPrevious: () => void;
|
|
1160
|
+
highlightFirst: () => void;
|
|
1161
|
+
highlightLast: () => void;
|
|
1162
|
+
highlightIndex: (index: number, reason: _radix_ng_primitives_combobox.ComboboxHighlightReason) => void;
|
|
1163
|
+
setHighlight: (item: _radix_ng_primitives_combobox.ComboboxItemRef, reason: _radix_ng_primitives_combobox.ComboboxHighlightReason) => void;
|
|
1164
|
+
clearHighlight: () => void;
|
|
1165
|
+
inputElement: _angular_core.Signal<HTMLInputElement | null>;
|
|
1166
|
+
setInputElement: (el: HTMLInputElement | null) => void;
|
|
1167
|
+
registerTrigger: (el: HTMLElement | null) => HTMLElement | null;
|
|
1168
|
+
focusInput: () => void;
|
|
1169
|
+
openPopup: () => void;
|
|
1170
|
+
openForBrowse: () => void;
|
|
1171
|
+
closePopup: (revert?: boolean) => void;
|
|
1172
|
+
setInputValue: (value: string) => void;
|
|
1173
|
+
openAndHighlight: (edge: "first" | "last") => void;
|
|
1174
|
+
select: (item: _radix_ng_primitives_combobox.ComboboxItemRef) => void;
|
|
1175
|
+
selectIndex: (index: number) => void;
|
|
1176
|
+
selectHighlighted: () => void;
|
|
1177
|
+
clearSelection: () => void;
|
|
1178
|
+
removeValue: (value: _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue) => void;
|
|
1179
|
+
removeLastValue: () => void;
|
|
1180
|
+
registerChipsNav: (fn: (() => boolean) | null) => void;
|
|
1181
|
+
focusLastChip: () => boolean;
|
|
1182
|
+
labelFor: (value: _radix_ng_primitives_types_radix_ng_primitives_core.AcceptableValue) => string;
|
|
1183
|
+
markAsTouched: () => void;
|
|
1184
|
+
};
|
|
1185
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxEmpty, never>;
|
|
1186
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxEmpty, "[rdxComboboxEmpty]", ["rdxComboboxEmpty"], {}, {}, never, never, true, never>;
|
|
1187
|
+
}
|
|
1188
|
+
|
|
1189
|
+
/**
|
|
1190
|
+
* A polite live region for async status (loading, result counts) announced without moving focus.
|
|
1191
|
+
*
|
|
1192
|
+
* @group Components
|
|
1193
|
+
*/
|
|
1194
|
+
declare class RdxComboboxStatus {
|
|
1195
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxStatus, never>;
|
|
1196
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxStatus, "[rdxComboboxStatus]", ["rdxComboboxStatus"], {}, {}, never, never, true, never>;
|
|
1197
|
+
}
|
|
1198
|
+
|
|
1199
|
+
/**
|
|
1200
|
+
* Container for the selected-value chips in `multiple` mode. Sits before the input and coordinates
|
|
1201
|
+
* arrow-key navigation across the chips (the chips themselves handle the key events).
|
|
1202
|
+
*
|
|
1203
|
+
* @group Components
|
|
1204
|
+
*/
|
|
1205
|
+
declare class RdxComboboxChips {
|
|
1206
|
+
private readonly host;
|
|
1207
|
+
private readonly rootContext;
|
|
1208
|
+
constructor();
|
|
1209
|
+
/** The chip elements in DOM order. */
|
|
1210
|
+
getChips(): HTMLElement[];
|
|
1211
|
+
/** Focuses the last chip. Returns whether there was one. */
|
|
1212
|
+
focusLast(): boolean;
|
|
1213
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxChips, never>;
|
|
1214
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxChips, "[rdxComboboxChips]", ["rdxComboboxChips"], {}, {}, never, never, true, [{ directive: typeof i1$1.RdxDismissableLayerBranch; inputs: {}; outputs: {}; }]>;
|
|
1215
|
+
}
|
|
1216
|
+
|
|
1217
|
+
declare const chipContext: () => {
|
|
1218
|
+
value: _angular_core.InputSignal<AcceptableValue>;
|
|
1219
|
+
};
|
|
1220
|
+
type RdxComboboxChipContext = ReturnType<typeof chipContext>;
|
|
1221
|
+
declare const injectComboboxChipContext: _radix_ng_primitives_core.InjectContext<{
|
|
1222
|
+
value: _angular_core.InputSignal<AcceptableValue>;
|
|
1223
|
+
}>;
|
|
1224
|
+
declare const provideComboboxChipContext: (useFactory: () => {
|
|
1225
|
+
value: _angular_core.InputSignal<AcceptableValue>;
|
|
1226
|
+
}) => _angular_core.Provider;
|
|
1227
|
+
/**
|
|
1228
|
+
* A single selected-value chip. Provide its `value` so {@link RdxComboboxChipRemove} can deselect it.
|
|
1229
|
+
* Chips are focusable and navigable with the arrow keys; Backspace / Delete removes the chip.
|
|
1230
|
+
*
|
|
1231
|
+
* @group Components
|
|
1232
|
+
*/
|
|
1233
|
+
declare class RdxComboboxChip {
|
|
1234
|
+
private readonly element;
|
|
1235
|
+
private readonly chips;
|
|
1236
|
+
private readonly rootContext;
|
|
1237
|
+
/** The value this chip represents. */
|
|
1238
|
+
readonly value: _angular_core.InputSignal<AcceptableValue>;
|
|
1239
|
+
onKeydown(event: KeyboardEvent): void;
|
|
1240
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxChip, never>;
|
|
1241
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxChip, "[rdxComboboxChip]", ["rdxComboboxChip"], { "value": { "alias": "value"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1242
|
+
}
|
|
1243
|
+
|
|
1244
|
+
/**
|
|
1245
|
+
* Removes its chip's value from the selection, keeping focus in the input.
|
|
1246
|
+
*
|
|
1247
|
+
* @group Components
|
|
1248
|
+
*/
|
|
1249
|
+
declare class RdxComboboxChipRemove {
|
|
1250
|
+
private readonly rootContext;
|
|
1251
|
+
private readonly chipContext;
|
|
1252
|
+
onClick(): void;
|
|
1253
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxChipRemove, never>;
|
|
1254
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxComboboxChipRemove, "button[rdxComboboxChipRemove]", ["rdxComboboxChipRemove"], {}, {}, never, never, true, never>;
|
|
1255
|
+
}
|
|
1256
|
+
|
|
1257
|
+
declare const _importsCombobox: (typeof RdxComboboxAnchor)[];
|
|
1258
|
+
declare class RdxComboboxModule {
|
|
1259
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxComboboxModule, never>;
|
|
1260
|
+
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<RdxComboboxModule, never, [typeof RdxComboboxRoot, typeof RdxComboboxAnchor, typeof RdxComboboxLabel, typeof RdxComboboxInput, typeof RdxComboboxValue, typeof RdxComboboxTrigger, typeof RdxComboboxIcon, typeof RdxComboboxClear, typeof RdxComboboxPortal, typeof RdxComboboxPortalPresence, typeof RdxComboboxBackdrop, typeof RdxComboboxPositioner, typeof RdxComboboxPopup, typeof RdxComboboxArrow, typeof RdxComboboxList, typeof RdxComboboxItem, typeof RdxComboboxItemIndicator, typeof RdxComboboxGroup, typeof RdxComboboxGroupLabel, typeof RdxComboboxEmpty, typeof RdxComboboxStatus, typeof RdxComboboxChips, typeof RdxComboboxChip, typeof RdxComboboxChipRemove], [typeof RdxComboboxRoot, typeof RdxComboboxAnchor, typeof RdxComboboxLabel, typeof RdxComboboxInput, typeof RdxComboboxValue, typeof RdxComboboxTrigger, typeof RdxComboboxIcon, typeof RdxComboboxClear, typeof RdxComboboxPortal, typeof RdxComboboxPortalPresence, typeof RdxComboboxBackdrop, typeof RdxComboboxPositioner, typeof RdxComboboxPopup, typeof RdxComboboxArrow, typeof RdxComboboxList, typeof RdxComboboxItem, typeof RdxComboboxItemIndicator, typeof RdxComboboxGroup, typeof RdxComboboxGroupLabel, typeof RdxComboboxEmpty, typeof RdxComboboxStatus, typeof RdxComboboxChips, typeof RdxComboboxChip, typeof RdxComboboxChipRemove]>;
|
|
1261
|
+
static ɵinj: _angular_core.ɵɵInjectorDeclaration<RdxComboboxModule>;
|
|
1262
|
+
}
|
|
1263
|
+
|
|
1264
|
+
export { RdxComboboxAnchor, RdxComboboxArrow, RdxComboboxBackdrop, RdxComboboxChip, RdxComboboxChipRemove, RdxComboboxChips, RdxComboboxClear, RdxComboboxEmpty, RdxComboboxGroup, RdxComboboxGroupLabel, RdxComboboxIcon, RdxComboboxInput, RdxComboboxItem, RdxComboboxItemIndicator, RdxComboboxLabel, RdxComboboxList, RdxComboboxModule, RdxComboboxPopup, RdxComboboxPortal, RdxComboboxPortalPresence, RdxComboboxPositioner, RdxComboboxRoot, RdxComboboxStatus, RdxComboboxTrigger, RdxComboboxValue, _importsCombobox, injectComboboxChipContext, injectComboboxGroupContext, injectComboboxItemContext, injectComboboxRootContext, provideComboboxChipContext, provideComboboxGroupContext, provideComboboxItemContext, provideComboboxRootContext };
|
|
1265
|
+
export type { ComboboxFilter, ComboboxHighlightReason, ComboboxItemHighlightedDetails, ComboboxItemRef, ComboboxValue, RdxComboboxChipContext, RdxComboboxGroupContext, RdxComboboxItemContext, RdxComboboxRootContext };
|