@angular/aria 22.0.0-next.7 → 22.0.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/fesm2022/_accordion-chunk.mjs +11 -1
  2. package/fesm2022/_accordion-chunk.mjs.map +1 -1
  3. package/fesm2022/_click-event-manager-chunk.mjs +1 -1
  4. package/fesm2022/_deferred-content-chunk.mjs +6 -6
  5. package/fesm2022/_list-chunk.mjs +4 -1
  6. package/fesm2022/_list-chunk.mjs.map +1 -1
  7. package/fesm2022/_list-navigation-chunk.mjs +1 -1
  8. package/fesm2022/_list-typeahead-chunk.mjs +1 -1
  9. package/fesm2022/_menu-chunk.mjs +10 -1
  10. package/fesm2022/_menu-chunk.mjs.map +1 -1
  11. package/fesm2022/{_combobox-listbox-chunk.mjs → _option-chunk.mjs} +13 -50
  12. package/fesm2022/_option-chunk.mjs.map +1 -0
  13. package/fesm2022/_tabs-chunk.mjs +1 -1
  14. package/fesm2022/_toolbar-widget-group-chunk.mjs +10 -1
  15. package/fesm2022/_toolbar-widget-group-chunk.mjs.map +1 -1
  16. package/fesm2022/_transforms-chunk.mjs +8 -0
  17. package/fesm2022/_transforms-chunk.mjs.map +1 -0
  18. package/fesm2022/{_combobox-tree-chunk.mjs → _tree-chunk.mjs} +8 -48
  19. package/fesm2022/_tree-chunk.mjs.map +1 -0
  20. package/fesm2022/{_signal-like-chunk.mjs → _violations-chunk.mjs} +60 -2
  21. package/fesm2022/_violations-chunk.mjs.map +1 -0
  22. package/fesm2022/_widget-chunk.mjs +46 -15
  23. package/fesm2022/_widget-chunk.mjs.map +1 -1
  24. package/fesm2022/accordion.mjs +116 -89
  25. package/fesm2022/accordion.mjs.map +1 -1
  26. package/fesm2022/aria.mjs +1 -1
  27. package/fesm2022/aria.mjs.map +1 -1
  28. package/fesm2022/combobox-testing.mjs +79 -0
  29. package/fesm2022/combobox-testing.mjs.map +1 -0
  30. package/fesm2022/combobox.mjs +273 -307
  31. package/fesm2022/combobox.mjs.map +1 -1
  32. package/fesm2022/grid-testing.mjs +8 -0
  33. package/fesm2022/grid-testing.mjs.map +1 -1
  34. package/fesm2022/grid.mjs +75 -87
  35. package/fesm2022/grid.mjs.map +1 -1
  36. package/fesm2022/listbox-testing.mjs +4 -0
  37. package/fesm2022/listbox-testing.mjs.map +1 -1
  38. package/fesm2022/listbox.mjs +192 -215
  39. package/fesm2022/listbox.mjs.map +1 -1
  40. package/fesm2022/menu-testing.mjs +11 -0
  41. package/fesm2022/menu-testing.mjs.map +1 -1
  42. package/fesm2022/menu.mjs +60 -66
  43. package/fesm2022/menu.mjs.map +1 -1
  44. package/fesm2022/private.mjs +19 -13
  45. package/fesm2022/private.mjs.map +1 -1
  46. package/fesm2022/tabs.mjs +172 -115
  47. package/fesm2022/tabs.mjs.map +1 -1
  48. package/fesm2022/toolbar-testing.mjs +5 -1
  49. package/fesm2022/toolbar-testing.mjs.map +1 -1
  50. package/fesm2022/toolbar.mjs +41 -30
  51. package/fesm2022/toolbar.mjs.map +1 -1
  52. package/fesm2022/tree-testing.mjs +12 -0
  53. package/fesm2022/tree-testing.mjs.map +1 -1
  54. package/fesm2022/tree.mjs +126 -156
  55. package/fesm2022/tree.mjs.map +1 -1
  56. package/package.json +6 -6
  57. package/types/_accordion-chunk.d.ts +4 -2
  58. package/types/_collection-chunk.d.ts +42 -0
  59. package/types/_expansion-chunk.d.ts +1 -1
  60. package/types/_grid-chunk.d.ts +11 -3
  61. package/types/_keyboard-event-manager-chunk.d.ts +1 -1
  62. package/types/_list-chunk.d.ts +1 -1
  63. package/types/_list-navigation-chunk.d.ts +1 -1
  64. package/types/_listbox-chunk.d.ts +1 -1
  65. package/types/_menu-chunk.d.ts +3 -1
  66. package/types/_tabs-chunk.d.ts +1 -1
  67. package/types/_toolbar-chunk.d.ts +3 -1
  68. package/types/_tree-chunk.d.ts +1 -1
  69. package/types/accordion.d.ts +10 -18
  70. package/types/combobox-testing.d.ts +63 -0
  71. package/types/combobox.d.ts +96 -193
  72. package/types/grid-testing.d.ts +4 -0
  73. package/types/grid.d.ts +99 -103
  74. package/types/listbox-testing.d.ts +25 -0
  75. package/types/listbox.d.ts +53 -62
  76. package/types/menu-testing.d.ts +6 -0
  77. package/types/menu.d.ts +17 -23
  78. package/types/private.d.ts +26 -137
  79. package/types/tabs.d.ts +69 -80
  80. package/types/toolbar-testing.d.ts +4 -0
  81. package/types/toolbar.d.ts +6 -12
  82. package/types/tree-testing.d.ts +8 -0
  83. package/types/tree.d.ts +7 -20
  84. package/fesm2022/_combobox-chunk.mjs +0 -478
  85. package/fesm2022/_combobox-chunk.mjs.map +0 -1
  86. package/fesm2022/_combobox-listbox-chunk.mjs.map +0 -1
  87. package/fesm2022/_combobox-tree-chunk.mjs.map +0 -1
  88. package/fesm2022/_element-chunk.mjs +0 -6
  89. package/fesm2022/_element-chunk.mjs.map +0 -1
  90. package/fesm2022/_signal-like-chunk.mjs.map +0 -1
  91. package/fesm2022/simple-combobox.mjs +0 -443
  92. package/fesm2022/simple-combobox.mjs.map +0 -1
  93. package/types/_combobox-chunk.d.ts +0 -224
  94. package/types/_element-chunk.d.ts +0 -10
  95. package/types/_signal-like-chunk.d.ts +0 -14
  96. package/types/simple-combobox.d.ts +0 -124
package/types/tabs.d.ts CHANGED
@@ -1,60 +1,14 @@
1
- import * as _angular_cdk_bidi from '@angular/cdk/bidi';
2
1
  import * as _angular_core from '@angular/core';
3
2
  import { OnInit, OnDestroy, WritableSignal } from '@angular/core';
4
- import { TabPattern, TabPanelPattern, TabListPattern } from './_tabs-chunk.js';
3
+ import * as _angular_cdk_bidi from '@angular/cdk/bidi';
4
+ import { TabPattern, TabListPattern, TabPanelPattern } from './_tabs-chunk.js';
5
+ import { HasElement, SortedCollection } from './_collection-chunk.js';
5
6
  import { DeferredContentAware, DeferredContent } from './_deferred-content-chunk.js';
6
- import { HasElement } from './_element-chunk.js';
7
7
  import './_keyboard-event-manager-chunk.js';
8
- import './_signal-like-chunk.js';
9
8
  import './_click-event-manager-chunk.js';
10
9
  import './_expansion-chunk.js';
11
10
  import './_list-navigation-chunk.js';
12
11
 
13
- /**
14
- * A TabPanel container for the resources of layered content associated with a tab.
15
- *
16
- * The `ngTabPanel` directive holds the content for a specific tab. It is linked to an
17
- * `ngTab` by a matching `value`. If a tab panel is hidden, the `inert` attribute will be
18
- * applied to remove it from the accessibility tree. Proper styling is required for visual hiding.
19
- *
20
- * ```html
21
- * <div ngTabPanel value="myTabId">
22
- * <ng-template ngTabContent>
23
- * <!-- Content for the tab panel -->
24
- * </ng-template>
25
- * </div>
26
- * ```
27
- *
28
- * @developerPreview 21.0
29
- *
30
- * @see [Tabs](guide/aria/tabs)
31
- */
32
- declare class TabPanel implements OnInit, OnDestroy {
33
- /** A reference to the host element. */
34
- private readonly _elementRef;
35
- /** A reference to the host element. */
36
- readonly element: HTMLElement;
37
- /** The DeferredContentAware host directive. */
38
- private readonly _deferredContentAware;
39
- /** The parent Tabs. */
40
- private readonly _tabs;
41
- /** A global unique identifier for the tab. */
42
- readonly id: _angular_core.InputSignal<string>;
43
- /** The Tab UIPattern associated with the tabpanel */
44
- readonly _tabPattern: WritableSignal<TabPattern | undefined>;
45
- /** A local unique identifier for the tabpanel. */
46
- readonly value: _angular_core.InputSignal<string>;
47
- /** Whether the tab panel is visible. */
48
- readonly visible: _angular_core.Signal<boolean>;
49
- /** The TabPanel UIPattern. */
50
- readonly _pattern: TabPanelPattern;
51
- constructor();
52
- ngOnInit(): void;
53
- ngOnDestroy(): void;
54
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabPanel, never>;
55
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<TabPanel, "[ngTabPanel]", ["ngTabPanel"], { "id": { "alias": "id"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": true; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof DeferredContentAware; inputs: { "preserveContent": "preserveContent"; }; outputs: {}; }]>;
56
- }
57
-
58
12
  /**
59
13
  * A selectable tab in a TabList.
60
14
  *
@@ -67,8 +21,6 @@ declare class TabPanel implements OnInit, OnDestroy {
67
21
  * </li>
68
22
  * ```
69
23
  *
70
- * @developerPreview 21.0
71
- *
72
24
  * @see [Tabs](guide/aria/tabs)
73
25
  */
74
26
  declare class Tab implements HasElement, OnInit, OnDestroy {
@@ -76,14 +28,12 @@ declare class Tab implements HasElement, OnInit, OnDestroy {
76
28
  private readonly _elementRef;
77
29
  /** A reference to the host element. */
78
30
  readonly element: HTMLElement;
79
- /** The parent Tabs wrapper. */
80
- private readonly _tabsWrapper;
81
31
  /** The parent TabList. */
82
32
  private readonly _tabList;
83
33
  /** A unique identifier for the widget. */
84
34
  readonly id: _angular_core.InputSignal<string>;
85
- /** The panel associated with this tab. */
86
- readonly panel: _angular_core.Signal<TabPanel | undefined>;
35
+ /** The TabPanel UIPattern associated with the tab */
36
+ private readonly _tabpanelPattern;
87
37
  /** Whether a tab is disabled. */
88
38
  readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
89
39
  /** The remote tabpanel unique identifier. */
@@ -96,6 +46,7 @@ declare class Tab implements HasElement, OnInit, OnDestroy {
96
46
  readonly _pattern: TabPattern;
97
47
  /** Opens this tab panel. */
98
48
  open(): void;
49
+ constructor();
99
50
  ngOnInit(): void;
100
51
  ngOnDestroy(): void;
101
52
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<Tab, never>;
@@ -116,8 +67,6 @@ declare class Tab implements HasElement, OnInit, OnDestroy {
116
67
  * </ul>
117
68
  * ```
118
69
  *
119
- * @developerPreview 21.0
120
- *
121
70
  * @see [Tabs](guide/aria/tabs)
122
71
  */
123
72
  declare class TabList implements OnInit, OnDestroy {
@@ -126,13 +75,11 @@ declare class TabList implements OnInit, OnDestroy {
126
75
  /** A reference to the host element. */
127
76
  readonly element: HTMLElement;
128
77
  /** The parent Tabs container. */
129
- private readonly _tabsParent;
130
- /** The Tabs registered for this TabList. */
131
- private readonly _tabs;
132
- /** The Tabs registered for this TabList. */
133
- readonly _sortedTabs: _angular_core.Signal<Tab[]>;
78
+ readonly _tabsParent: Tabs;
79
+ /** The collection of Tabs. */
80
+ readonly _collection: SortedCollection<Tab>;
134
81
  /** The Tab UIPatterns of the child Tabs. */
135
- private readonly _tabPatterns;
82
+ readonly _tabPatterns: _angular_core.Signal<TabPattern[]>;
136
83
  /** Whether the tablist is vertically or horizontally oriented. */
137
84
  readonly orientation: _angular_core.InputSignal<"vertical" | "horizontal">;
138
85
  /** Text direction. */
@@ -167,8 +114,6 @@ declare class TabList implements OnInit, OnDestroy {
167
114
  constructor();
168
115
  ngOnInit(): void;
169
116
  ngOnDestroy(): void;
170
- _registerTab(child: Tab): void;
171
- _unregisterTab(child: Tab): void;
172
117
  /** Opens the tab panel with the specified value. */
173
118
  open(value: string): boolean;
174
119
  findTab(value?: string): Tab | undefined;
@@ -176,6 +121,50 @@ declare class TabList implements OnInit, OnDestroy {
176
121
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<TabList, "[ngTabList]", ["ngTabList"], { "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "wrap": { "alias": "wrap"; "required": false; "isSignal": true; }; "softDisabled": { "alias": "softDisabled"; "required": false; "isSignal": true; }; "focusMode": { "alias": "focusMode"; "required": false; "isSignal": true; }; "selectionMode": { "alias": "selectionMode"; "required": false; "isSignal": true; }; "selectedTab": { "alias": "selectedTab"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "selectedTab": "selectedTabChange"; }, never, never, true, never>;
177
122
  }
178
123
 
124
+ /**
125
+ * A TabPanel container for the resources of layered content associated with a tab.
126
+ *
127
+ * The `ngTabPanel` directive holds the content for a specific tab. It is linked to an
128
+ * `ngTab` by a matching `value`. If a tab panel is hidden, the `inert` attribute will be
129
+ * applied to remove it from the accessibility tree. Proper styling is required for visual hiding.
130
+ *
131
+ * ```html
132
+ * <div ngTabPanel value="myTabId">
133
+ * <ng-template ngTabContent>
134
+ * <!-- Content for the tab panel -->
135
+ * </ng-template>
136
+ * </div>
137
+ * ```
138
+ *
139
+ * @see [Tabs](guide/aria/tabs)
140
+ */
141
+ declare class TabPanel implements OnInit, OnDestroy {
142
+ /** A reference to the host element. */
143
+ private readonly _elementRef;
144
+ /** A reference to the host element. */
145
+ readonly element: HTMLElement;
146
+ /** The DeferredContentAware host directive. */
147
+ private readonly _deferredContentAware;
148
+ /** The parent Tabs. */
149
+ private readonly _tabs;
150
+ /** A global unique identifier for the tab. */
151
+ readonly id: _angular_core.InputSignal<string>;
152
+ /** The Tab UIPattern associated with the tabpanel */
153
+ private readonly _tabPattern;
154
+ /** A local unique identifier for the tabpanel. */
155
+ readonly value: _angular_core.InputSignal<string>;
156
+ /** Whether the tab panel is visible. */
157
+ readonly visible: _angular_core.Signal<boolean>;
158
+ /** The TabPanel UIPattern. */
159
+ readonly _pattern: TabPanelPattern;
160
+ private readonly _tabContent;
161
+ constructor();
162
+ ngOnInit(): void;
163
+ ngOnDestroy(): void;
164
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabPanel, never>;
165
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<TabPanel, "[ngTabPanel]", ["ngTabPanel"], { "id": { "alias": "id"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": true; "isSignal": true; }; }, {}, ["_tabContent"], never, true, [{ directive: typeof DeferredContentAware; inputs: { "preserveContent": "preserveContent"; }; outputs: {}; }]>;
166
+ }
167
+
179
168
  /**
180
169
  * A Tabs container.
181
170
  *
@@ -203,27 +192,29 @@ declare class TabList implements OnInit, OnDestroy {
203
192
  * </div>
204
193
  * ```
205
194
  *
206
- * @developerPreview 21.0
207
- *
208
195
  * @see [Tabs](guide/aria/tabs)
209
196
  */
210
- declare class Tabs {
197
+ declare class Tabs implements OnDestroy {
211
198
  /** A reference to the host element. */
212
199
  private readonly _elementRef;
213
200
  /** A reference to the host element. */
214
201
  readonly element: HTMLElement;
215
202
  /** The TabList registered for this container. */
216
- private readonly _tabList;
217
- /** The TabPanels registered for this container. */
218
- private readonly _tabPanels;
219
- /** The TabPanels registered for this container. */
220
- private readonly _tabPanelsList;
203
+ readonly _tabList: _angular_core.WritableSignal<TabList | undefined>;
204
+ /** The collection of TabPanels. */
205
+ readonly _collection: SortedCollection<TabPanel>;
206
+ /** The Tab UIPattern of the child Tabs. */
207
+ readonly _tabPatterns: _angular_core.Signal<TabPattern[] | undefined>;
208
+ /** The TabPanel UIPattern of the child TabPanels. */
209
+ readonly _tabPanelPatterns: _angular_core.Signal<TabPanelPattern[]>;
210
+ /** A reactive map of tab values to their TabPanelPattern. */
211
+ readonly _panelMap: _angular_core.Signal<Map<string, TabPanelPattern>>;
212
+ /** A reactive map of tab values to their TabPattern. */
213
+ readonly _tabMap: _angular_core.Signal<Map<string, TabPattern>>;
221
214
  constructor();
222
- _registerList(list: TabList): void;
223
- _unregisterList(list: TabList): void;
224
- _registerPanel(panel: TabPanel): void;
225
- _unregisterPanel(panel: TabPanel): void;
226
- findTabPanel(value?: string): TabPanel | undefined;
215
+ ngOnDestroy(): void;
216
+ _register(child: TabList): void;
217
+ _unregister(): void;
227
218
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<Tabs, never>;
228
219
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<Tabs, "[ngTabs]", ["ngTabs"], {}, {}, never, never, true, never>;
229
220
  }
@@ -243,8 +234,6 @@ declare class Tabs {
243
234
  * </div>
244
235
  * ```
245
236
  *
246
- * @developerPreview 21.0
247
- *
248
237
  * @see [Tabs](guide/aria/tabs)
249
238
  */
250
239
  declare class TabContent {
@@ -12,6 +12,8 @@ interface ToolbarWidgetHarnessFilters extends BaseHarnessFilters {
12
12
  text?: string | RegExp;
13
13
  /** Active state that the widget should match. */
14
14
  active?: boolean;
15
+ /** Selected state that the widget should match. */
16
+ selected?: boolean;
15
17
  }
16
18
 
17
19
  /** Harness for interacting with an Aria toolbar widget in tests. */
@@ -32,6 +34,8 @@ declare class ToolbarWidgetHarness extends ContentContainerComponentHarness<stri
32
34
  isActive(): Promise<boolean>;
33
35
  /** Gets whether the widget is disabled. */
34
36
  isDisabled(): Promise<boolean>;
37
+ /** Gets whether the widget is selected. */
38
+ isSelected(): Promise<boolean>;
35
39
  }
36
40
 
37
41
  /** Harness for interacting with an Aria toolbar widget group in tests. */
@@ -2,7 +2,7 @@ import * as _angular_core from '@angular/core';
2
2
  import { OnInit, OnDestroy } from '@angular/core';
3
3
  import * as _angular_cdk_bidi from '@angular/cdk/bidi';
4
4
  import { ToolbarWidgetGroupPattern, ToolbarWidgetPattern, ToolbarPattern } from './_toolbar-chunk.js';
5
- import './_signal-like-chunk.js';
5
+ import { SortedCollection } from './_collection-chunk.js';
6
6
  import './_list-chunk.js';
7
7
  import './_list-navigation-chunk.js';
8
8
 
@@ -10,8 +10,6 @@ import './_list-navigation-chunk.js';
10
10
  * A directive that groups toolbar widgets, used for more complex widgets like radio groups
11
11
  * that have their own internal navigation.
12
12
  *
13
- * @developerPreview 21.0
14
- *
15
13
  * @see [Toolbar](guide/aria/toolbar)
16
14
  */
17
15
  declare class ToolbarWidgetGroup<V> {
@@ -33,6 +31,7 @@ declare class ToolbarWidgetGroup<V> {
33
31
  readonly multi: _angular_core.InputSignalWithTransform<boolean, unknown>;
34
32
  /** The ToolbarWidgetGroup UIPattern. */
35
33
  readonly _pattern: ToolbarWidgetGroupPattern<ToolbarWidgetPattern<V>, V>;
34
+ constructor();
36
35
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ToolbarWidgetGroup<any>, never>;
37
36
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ToolbarWidgetGroup<any>, "[ngToolbarWidgetGroup]", ["ngToolbarWidgetGroup"], { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "multi": { "alias": "multi"; "required": false; "isSignal": true; }; }, {}, ["_widgets"], never, true, never>;
38
37
  }
@@ -50,8 +49,6 @@ declare class ToolbarWidgetGroup<V> {
50
49
  * </button>
51
50
  * ```
52
51
  *
53
- * @developerPreview 21.0
54
- *
55
52
  * @see [Toolbar](guide/aria/toolbar)
56
53
  */
57
54
  declare class ToolbarWidget<V> implements OnInit, OnDestroy {
@@ -104,17 +101,15 @@ declare class ToolbarWidget<V> implements OnInit, OnDestroy {
104
101
  * </div>
105
102
  * ```
106
103
  *
107
- * @developerPreview 21.0
108
- *
109
104
  * @see [Toolbar](guide/aria/toolbar)
110
105
  */
111
- declare class Toolbar<V> {
106
+ declare class Toolbar<V> implements OnDestroy {
112
107
  /** A reference to the host element. */
113
108
  private readonly _elementRef;
114
109
  /** A reference to the host element. */
115
110
  readonly element: HTMLElement;
116
- /** The TabList nested inside of the container. */
117
- private readonly _widgets;
111
+ /** The collection of widgets in the toolbar. */
112
+ readonly _collection: SortedCollection<ToolbarWidget<V>>;
118
113
  /** Text direction. */
119
114
  readonly textDirection: _angular_core.WritableSignal<_angular_cdk_bidi.Direction>;
120
115
  /** Sorted UIPatterns of the child widgets */
@@ -135,8 +130,7 @@ declare class Toolbar<V> {
135
130
  /** The toolbar UIPattern. */
136
131
  readonly _pattern: ToolbarPattern<V>;
137
132
  constructor();
138
- _register(widget: ToolbarWidget<V>): void;
139
- _unregister(widget: ToolbarWidget<V>): void;
133
+ ngOnDestroy(): void;
140
134
  /** Finds the toolbar item associated with a given element. */
141
135
  private _getItem;
142
136
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<Toolbar<any>, never>;
@@ -38,6 +38,14 @@ declare class TreeItemHarness extends ContentContainerComponentHarness<string> {
38
38
  getText(): Promise<string>;
39
39
  /** Clicks the tree item. */
40
40
  click(): Promise<void>;
41
+ /** Focuses the tree item. */
42
+ focus(): Promise<void>;
43
+ /** Blurs the tree item. */
44
+ blur(): Promise<void>;
45
+ /** Whether the tree item is active. */
46
+ isActive(): Promise<boolean>;
47
+ /** Whether the tree item has focus. */
48
+ isFocused(): Promise<boolean>;
41
49
  private _getHostAttribute;
42
50
  }
43
51
 
package/types/tree.d.ts CHANGED
@@ -2,17 +2,13 @@ import * as _angular_cdk_bidi from '@angular/cdk/bidi';
2
2
  import * as _angular_core from '@angular/core';
3
3
  import { OnInit, OnDestroy, Signal } from '@angular/core';
4
4
  import { TreeItemPattern, TreePattern } from './_tree-chunk.js';
5
+ import { HasElement, SortedCollection } from './_collection-chunk.js';
5
6
  import { DeferredContent, DeferredContentAware } from './_deferred-content-chunk.js';
6
- import { HasElement } from './_element-chunk.js';
7
- import { ComboboxPopup } from './combobox.js';
8
- export { Combobox as ɵɵCombobox, ComboboxDialog as ɵɵComboboxDialog, ComboboxInput as ɵɵComboboxInput, ComboboxPopupContainer as ɵɵComboboxPopupContainer } from './combobox.js';
9
- import './_signal-like-chunk.js';
10
7
  import './_expansion-chunk.js';
11
8
  import './_list-navigation-chunk.js';
12
9
  import './_list-chunk.js';
13
10
  import './_keyboard-event-manager-chunk.js';
14
11
  import './_click-event-manager-chunk.js';
15
- import './_combobox-chunk.js';
16
12
 
17
13
  /**
18
14
  * Group that contains children tree items.
@@ -32,8 +28,6 @@ import './_combobox-chunk.js';
32
28
  * </li>
33
29
  * ```
34
30
  *
35
- * @developerPreview 21.0
36
- *
37
31
  * @see [Tree](guide/aria/tree)
38
32
  */
39
33
  declare class TreeItemGroup<V> implements OnInit, OnDestroy {
@@ -69,8 +63,6 @@ declare class TreeItemGroup<V> implements OnInit, OnDestroy {
69
63
  * Item Label
70
64
  * </li>
71
65
  * ```
72
- *
73
- * @developerPreview 21.0
74
66
  */
75
67
  declare class TreeItem<V> extends DeferredContentAware implements OnInit, OnDestroy, HasElement {
76
68
  /** A reference to the host element. */
@@ -150,19 +142,15 @@ declare class TreeItem<V> extends DeferredContentAware implements OnInit, OnDest
150
142
  * </ng-template>
151
143
  * ```
152
144
  *
153
- * @developerPreview 21.0
154
- *
155
145
  * @see [Tree](guide/aria/tree)
156
146
  */
157
- declare class Tree<V> {
147
+ declare class Tree<V> implements OnDestroy {
158
148
  /** A reference to the host element. */
159
149
  private readonly _elementRef;
160
150
  /** A reference to the host element. */
161
151
  readonly element: HTMLElement;
162
- /** A reference to the parent combobox popup, if one exists. */
163
- private readonly _popup;
164
- /** All TreeItem instances within this tree. */
165
- private readonly _unorderedItems;
152
+ /** The collection of tree items. */
153
+ readonly _collection: SortedCollection<TreeItem<V>>;
166
154
  /** A unique identifier for the tree. */
167
155
  readonly id: _angular_core.InputSignal<string>;
168
156
  /** Orientation of the tree. */
@@ -210,11 +198,10 @@ declare class Tree<V> {
210
198
  /** The ID of the active descendant in the tree. */
211
199
  readonly activeDescendant: Signal<string | undefined>;
212
200
  constructor();
213
- _register(child: TreeItem<V>): void;
214
- _unregister(child: TreeItem<V>): void;
201
+ ngOnDestroy(): void;
215
202
  scrollActiveItemIntoView(options?: ScrollIntoViewOptions): void;
216
203
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<Tree<any>, never>;
217
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<Tree<any>, "[ngTree]", ["ngTree"], { "id": { "alias": "id"; "required": false; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "multi": { "alias": "multi"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "selectionMode": { "alias": "selectionMode"; "required": false; "isSignal": true; }; "focusMode": { "alias": "focusMode"; "required": false; "isSignal": true; }; "wrap": { "alias": "wrap"; "required": false; "isSignal": true; }; "softDisabled": { "alias": "softDisabled"; "required": false; "isSignal": true; }; "typeaheadDelay": { "alias": "typeaheadDelay"; "required": false; "isSignal": true; }; "tabIndex": { "alias": "tabIndex"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "nav": { "alias": "nav"; "required": false; "isSignal": true; }; "currentType": { "alias": "currentType"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, [{ directive: typeof ComboboxPopup; inputs: {}; outputs: {}; }]>;
204
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<Tree<any>, "[ngTree]", ["ngTree"], { "id": { "alias": "id"; "required": false; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "multi": { "alias": "multi"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "selectionMode": { "alias": "selectionMode"; "required": false; "isSignal": true; }; "focusMode": { "alias": "focusMode"; "required": false; "isSignal": true; }; "wrap": { "alias": "wrap"; "required": false; "isSignal": true; }; "softDisabled": { "alias": "softDisabled"; "required": false; "isSignal": true; }; "typeaheadDelay": { "alias": "typeaheadDelay"; "required": false; "isSignal": true; }; "tabIndex": { "alias": "tabindex"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "nav": { "alias": "nav"; "required": false; "isSignal": true; }; "currentType": { "alias": "currentType"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
218
205
  }
219
206
 
220
- export { Tree, TreeItem, TreeItemGroup, ComboboxPopup as ɵɵComboboxPopup, DeferredContent as ɵɵDeferredContent };
207
+ export { Tree, TreeItem, TreeItemGroup, DeferredContent as ɵɵDeferredContent };