@typed/ui 1.0.0-beta.5 → 1.0.0-beta.7
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/dist/Alert.d.ts +35 -41
- package/dist/Alert.d.ts.map +1 -1
- package/dist/Alert.js +23 -20
- package/dist/Button.d.ts +34 -78
- package/dist/Button.d.ts.map +1 -1
- package/dist/Button.js +16 -12
- package/dist/Carousel.d.ts +35 -236
- package/dist/Carousel.d.ts.map +1 -1
- package/dist/Carousel.js +13 -136
- package/dist/Checkbox.d.ts +55 -90
- package/dist/Checkbox.d.ts.map +1 -1
- package/dist/Checkbox.js +44 -38
- package/dist/Collection.d.ts +15 -15
- package/dist/Collection.js +7 -7
- package/dist/Combobox.d.ts +38 -187
- package/dist/Combobox.d.ts.map +1 -1
- package/dist/Combobox.js +9 -80
- package/dist/Component.d.ts +30 -24
- package/dist/Component.d.ts.map +1 -1
- package/dist/Component.js +23 -12
- package/dist/Composite.d.ts +50 -50
- package/dist/Composite.js +20 -20
- package/dist/Dialog.d.ts +34 -34
- package/dist/Dialog.d.ts.map +1 -1
- package/dist/Dialog.js +16 -14
- package/dist/Disclosure.d.ts +15 -15
- package/dist/Disclosure.js +6 -6
- package/dist/Dom/Events.d.ts +4 -4
- package/dist/Dom/Events.js +4 -4
- package/dist/Dom/Props.d.ts +9 -9
- package/dist/Dom/Props.js +4 -4
- package/dist/Dom/Refs.d.ts +2 -2
- package/dist/Dom/Refs.js +1 -1
- package/dist/Dom/Render.d.ts +2 -2
- package/dist/Dom/Render.js +2 -2
- package/dist/Dom/Types.d.ts +33 -33
- package/dist/Dom/index.d.ts +5 -5
- package/dist/Dom/index.d.ts.map +1 -1
- package/dist/Dom/index.js +4 -4
- package/dist/Dom.d.ts +1 -1
- package/dist/Dom.js +1 -1
- package/dist/Focusable.d.ts +5 -5
- package/dist/Focusable.js +1 -1
- package/dist/Form.d.ts +565 -533
- package/dist/Form.d.ts.map +1 -1
- package/dist/Form.js +350 -195
- package/dist/Grid.d.ts +39 -220
- package/dist/Grid.d.ts.map +1 -1
- package/dist/Grid.js +12 -107
- package/dist/Group.d.ts +50 -69
- package/dist/Group.d.ts.map +1 -1
- package/dist/Group.js +33 -25
- package/dist/Heading.d.ts +41 -40
- package/dist/Heading.d.ts.map +1 -1
- package/dist/Heading.js +26 -16
- package/dist/Hovercard.d.ts +18 -18
- package/dist/Hovercard.js +6 -6
- package/dist/HttpRouter.d.ts +3 -3
- package/dist/HttpRouter.js +5 -5
- package/dist/Link.d.ts +17 -21
- package/dist/Link.d.ts.map +1 -1
- package/dist/Link.js +11 -0
- package/dist/Listbox.d.ts +31 -163
- package/dist/Listbox.d.ts.map +1 -1
- package/dist/Listbox.js +9 -80
- package/dist/Menu.d.ts +67 -376
- package/dist/Menu.d.ts.map +1 -1
- package/dist/Menu.js +17 -179
- package/dist/Menubar.d.ts +24 -142
- package/dist/Menubar.d.ts.map +1 -1
- package/dist/Menubar.js +8 -66
- package/dist/Meter.d.ts +72 -132
- package/dist/Meter.d.ts.map +1 -1
- package/dist/Meter.js +35 -42
- package/dist/NativeDetails.d.ts +1 -1
- package/dist/NativeDetails.js +1 -1
- package/dist/NativeDialog.d.ts +7 -5
- package/dist/NativeDialog.d.ts.map +1 -1
- package/dist/NativeDialog.js +42 -4
- package/dist/NativePopover.d.ts +6 -4
- package/dist/NativePopover.d.ts.map +1 -1
- package/dist/NativePopover.js +43 -5
- package/dist/Popover.d.ts +18 -19
- package/dist/Popover.d.ts.map +1 -1
- package/dist/Popover.js +7 -8
- package/dist/RadioGroup.d.ts +86 -188
- package/dist/RadioGroup.d.ts.map +1 -1
- package/dist/RadioGroup.js +55 -105
- package/dist/Role.d.ts +4 -4
- package/dist/Role.js +1 -1
- package/dist/Select.d.ts +109 -220
- package/dist/Select.d.ts.map +1 -1
- package/dist/Select.js +67 -117
- package/dist/Separator.d.ts +30 -26
- package/dist/Separator.d.ts.map +1 -1
- package/dist/Separator.js +16 -10
- package/dist/Slider.d.ts +64 -111
- package/dist/Slider.d.ts.map +1 -1
- package/dist/Slider.js +47 -42
- package/dist/SpinButton.d.ts +64 -111
- package/dist/SpinButton.d.ts.map +1 -1
- package/dist/SpinButton.js +47 -42
- package/dist/Storybook.d.ts +2 -2
- package/dist/Storybook.js +1 -1
- package/dist/Switch.d.ts +52 -91
- package/dist/Switch.d.ts.map +1 -1
- package/dist/Switch.js +30 -36
- package/dist/Tabs.d.ts +44 -224
- package/dist/Tabs.d.ts.map +1 -1
- package/dist/Tabs.js +10 -94
- package/dist/Toolbar.d.ts +24 -142
- package/dist/Toolbar.d.ts.map +1 -1
- package/dist/Toolbar.js +8 -66
- package/dist/Tooltip.d.ts +20 -20
- package/dist/Tooltip.js +6 -6
- package/dist/Tree.d.ts +43 -229
- package/dist/Tree.d.ts.map +1 -1
- package/dist/Tree.js +12 -113
- package/dist/TreeGrid.d.ts +45 -264
- package/dist/TreeGrid.d.ts.map +1 -1
- package/dist/TreeGrid.js +13 -125
- package/dist/VisuallyHidden.d.ts +41 -27
- package/dist/VisuallyHidden.d.ts.map +1 -1
- package/dist/VisuallyHidden.js +27 -10
- package/dist/WindowSplitter.d.ts +68 -108
- package/dist/WindowSplitter.d.ts.map +1 -1
- package/dist/WindowSplitter.js +106 -23
- package/package.json +9 -8
package/dist/Tree.d.ts
CHANGED
|
@@ -8,6 +8,8 @@
|
|
|
8
8
|
* the state and pure operations without mounting UI, or supply custom hosts without replacing native
|
|
9
9
|
* events and browser-owned focus.
|
|
10
10
|
*
|
|
11
|
+
* Learn the interaction in the [Tree guide](/explore/ui-tree).
|
|
12
|
+
*
|
|
11
13
|
* @since 1.0.0
|
|
12
14
|
* @category modules
|
|
13
15
|
* @packageDocumentation
|
|
@@ -22,84 +24,55 @@ import * as Collection from "./Collection.js";
|
|
|
22
24
|
import * as Dom from "./Dom.js";
|
|
23
25
|
import type { HostResult } from "./Dom/Types.js";
|
|
24
26
|
/**
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
* @remarks
|
|
28
|
-
* ## Why
|
|
29
|
-
*
|
|
30
|
-
* Applications can inspect, update, and test Tree behavior without mounting or coupling the state
|
|
31
|
-
* to a renderer.
|
|
32
|
-
*
|
|
33
|
-
* ## Ownership and lifetime
|
|
27
|
+
* The focused node and expanded parent identities.
|
|
28
|
+
* Expansion controls visible traversal; file selection or opening is a separate application action.
|
|
34
29
|
*
|
|
35
|
-
* This declaration is data or schema metadata and acquires no resources.
|
|
36
|
-
*
|
|
37
|
-
* ## Example
|
|
38
|
-
*
|
|
39
|
-
* Import with `import type { State } from "@typed/ui/Tree";` Extend the [Tree.makeState runnable
|
|
40
|
-
* setup](/reference/%40typed%2Fui%2FTree%23makeState). Inside the linked program,
|
|
41
|
-
* `const snapshot: State = yield* state` exposes active and expanded ids independently.
|
|
42
30
|
* @since 1.0.0
|
|
43
|
-
* @category
|
|
31
|
+
* @category Hierarchy state
|
|
44
32
|
*/
|
|
45
33
|
export interface State {
|
|
46
34
|
/**
|
|
47
35
|
* Id currently active for keyboard navigation; null means no active item.
|
|
48
36
|
* @since 1.0.0
|
|
49
|
-
* @category
|
|
37
|
+
* @category Keyboard focus
|
|
50
38
|
*/
|
|
51
39
|
readonly activeId: string | null;
|
|
52
40
|
/**
|
|
53
41
|
* Ids whose child tree groups are currently visible.
|
|
54
42
|
* @since 1.0.0
|
|
55
|
-
* @category
|
|
43
|
+
* @category Expansion
|
|
56
44
|
*/
|
|
57
45
|
readonly expandedIds: readonly string[];
|
|
58
46
|
/**
|
|
59
47
|
* Whether movement wraps between the first and last enabled items.
|
|
60
48
|
* @since 1.0.0
|
|
61
|
-
* @category
|
|
49
|
+
* @category Keyboard navigation
|
|
62
50
|
*/
|
|
63
51
|
readonly loop: boolean;
|
|
64
52
|
}
|
|
65
53
|
/**
|
|
66
54
|
* Initial Tree values. activeId defaults null and expandedIds defaults empty.
|
|
67
55
|
*
|
|
68
|
-
* @remarks
|
|
69
|
-
* ## Why
|
|
70
|
-
*
|
|
71
|
-
* Making initialization explicit documents hydration-sensitive defaults and lets servers and
|
|
72
|
-
* clients construct matching state.
|
|
73
|
-
*
|
|
74
|
-
* ## Ownership and lifetime
|
|
75
|
-
*
|
|
76
|
-
* This declaration is data or schema metadata and acquires no resources.
|
|
77
|
-
*
|
|
78
|
-
* ## Example
|
|
79
|
-
*
|
|
80
|
-
* Import with `import type { InitialState } from "@typed/ui/Tree";` Extend the [Tree.makeState
|
|
81
|
-
* runnable setup](/reference/%40typed%2Fui%2FTree%23makeState). Construct an expanded branch with
|
|
82
|
-
* `const initial: InitialState = { activeId: "src", expandedIds: ["src"] }; const state = yield* Tree.makeState(initial)`.
|
|
83
56
|
* @since 1.0.0
|
|
84
|
-
* @category
|
|
57
|
+
* @category Hierarchy state
|
|
85
58
|
*/
|
|
86
59
|
export interface InitialState {
|
|
87
60
|
/**
|
|
88
61
|
* Id currently active for keyboard navigation; null means no active item.
|
|
89
62
|
* @since 1.0.0
|
|
90
|
-
* @category
|
|
63
|
+
* @category Keyboard focus
|
|
91
64
|
*/
|
|
92
65
|
readonly activeId?: string | null;
|
|
93
66
|
/**
|
|
94
67
|
* Ids whose child tree groups are currently visible.
|
|
95
68
|
* @since 1.0.0
|
|
96
|
-
* @category
|
|
69
|
+
* @category Expansion
|
|
97
70
|
*/
|
|
98
71
|
readonly expandedIds?: readonly string[];
|
|
99
72
|
/**
|
|
100
73
|
* Whether movement wraps between the first and last enabled items.
|
|
101
74
|
* @since 1.0.0
|
|
102
|
-
* @category
|
|
75
|
+
* @category Keyboard navigation
|
|
103
76
|
*/
|
|
104
77
|
readonly loop?: boolean;
|
|
105
78
|
}
|
|
@@ -107,15 +80,6 @@ export interface InitialState {
|
|
|
107
80
|
* Effect Schema used by makeState to encode, decode, and hydrate Tree state.
|
|
108
81
|
*
|
|
109
82
|
* @remarks
|
|
110
|
-
* ## Why
|
|
111
|
-
*
|
|
112
|
-
* A public schema makes hydration and serialized state use the same runtime validation as direct
|
|
113
|
-
* construction.
|
|
114
|
-
*
|
|
115
|
-
* ## Ownership and lifetime
|
|
116
|
-
*
|
|
117
|
-
* This declaration is data or schema metadata and acquires no resources.
|
|
118
|
-
*
|
|
119
83
|
* @example
|
|
120
84
|
* ```ts
|
|
121
85
|
* import * as Schema from "effect/Schema";
|
|
@@ -124,7 +88,7 @@ export interface InitialState {
|
|
|
124
88
|
* const decodeState = Schema.decodeUnknownEffect(Tree.StateSchema);
|
|
125
89
|
* ```
|
|
126
90
|
* @since 1.0.0
|
|
127
|
-
* @category
|
|
91
|
+
* @category Hierarchy state
|
|
128
92
|
*/
|
|
129
93
|
export declare const StateSchema: Schema.Struct<{
|
|
130
94
|
readonly activeId: Schema.NullOr<Schema.String>;
|
|
@@ -135,12 +99,6 @@ export declare const StateSchema: Schema.Struct<{
|
|
|
135
99
|
* Creates hydrated Tree state. activeId defaults null and expandedIds defaults empty.
|
|
136
100
|
*
|
|
137
101
|
* @remarks
|
|
138
|
-
* ## Why
|
|
139
|
-
*
|
|
140
|
-
* State and collection ownership can be composed and tested independently from any renderer.
|
|
141
|
-
*
|
|
142
|
-
* ## Ownership and lifetime
|
|
143
|
-
*
|
|
144
102
|
* The returned Effect creates the RefSubject when run. That state is renderer-independent;
|
|
145
103
|
* collection registrations belong to the separate Scope that runs register or ref, not to state
|
|
146
104
|
* creation.
|
|
@@ -159,7 +117,7 @@ export declare const StateSchema: Schema.Struct<{
|
|
|
159
117
|
* );
|
|
160
118
|
* ```
|
|
161
119
|
* @since 1.0.0
|
|
162
|
-
* @category
|
|
120
|
+
* @category Hierarchy state
|
|
163
121
|
*/
|
|
164
122
|
export declare function makeState(initial?: InitialState): Effect.Effect<RefSubject.HydratedRefSubject<{
|
|
165
123
|
readonly activeId: string | null;
|
|
@@ -170,34 +128,23 @@ export declare function makeState(initial?: InitialState): Effect.Effect<RefSubj
|
|
|
170
128
|
* Tree collection value recording an item's parent relationship.
|
|
171
129
|
*
|
|
172
130
|
* @remarks
|
|
173
|
-
* ## Why
|
|
174
|
-
*
|
|
175
131
|
* The public model lets custom composites reuse Tree's deterministic policy without copying an
|
|
176
132
|
* internal shape.
|
|
177
133
|
*
|
|
178
|
-
* ## Ownership and lifetime
|
|
179
|
-
*
|
|
180
|
-
* This declaration is data or schema metadata and acquires no resources.
|
|
181
|
-
*
|
|
182
|
-
* ## Example
|
|
183
|
-
*
|
|
184
|
-
* Import with `import type { ItemValue } from "@typed/ui/Tree";` Extend the [Tree.makeState
|
|
185
|
-
* runnable setup](/reference/%40typed%2Fui%2FTree%23makeState). A hierarchical collection value
|
|
186
|
-
* identifies child capability: `const value: ItemValue = { parentId: "root", hasChildren: true }`.
|
|
187
134
|
* @since 1.0.0
|
|
188
|
-
* @category
|
|
135
|
+
* @category Node registration
|
|
189
136
|
*/
|
|
190
137
|
export interface ItemValue {
|
|
191
138
|
/**
|
|
192
139
|
* Id whose expansion controls this descendant group.
|
|
193
140
|
* @since 1.0.0
|
|
194
|
-
* @category
|
|
141
|
+
* @category Hierarchy
|
|
195
142
|
*/
|
|
196
143
|
readonly parentId?: string;
|
|
197
144
|
/**
|
|
198
145
|
* Whether aria-expanded is emitted and hierarchical keys may open descendants.
|
|
199
146
|
* @since 1.0.0
|
|
200
|
-
* @category
|
|
147
|
+
* @category Hierarchy
|
|
201
148
|
*/
|
|
202
149
|
readonly hasChildren: boolean;
|
|
203
150
|
}
|
|
@@ -205,12 +152,6 @@ export interface ItemValue {
|
|
|
205
152
|
* Creates a scoped Collection for Tree items.
|
|
206
153
|
*
|
|
207
154
|
* @remarks
|
|
208
|
-
* ## Why
|
|
209
|
-
*
|
|
210
|
-
* State and collection ownership can be composed and tested independently from any renderer.
|
|
211
|
-
*
|
|
212
|
-
* ## Ownership and lifetime
|
|
213
|
-
*
|
|
214
155
|
* The returned Effect allocates the RefSubject in the caller's Scope. Each later registration is
|
|
215
156
|
* owned by the Scope that runs register, independently of this construction Effect.
|
|
216
157
|
*
|
|
@@ -227,20 +168,16 @@ export interface ItemValue {
|
|
|
227
168
|
* );
|
|
228
169
|
* ```
|
|
229
170
|
* @since 1.0.0
|
|
230
|
-
* @category
|
|
171
|
+
* @category Node registration
|
|
231
172
|
*/
|
|
232
173
|
export declare const makeCollection: (initial?: Collection.State<ItemValue, Element>) => Effect.Effect<RefSubject.RefSubject<Collection.State<ItemValue, Element>, never, never>, never, Scope.Scope>;
|
|
233
174
|
/**
|
|
234
175
|
* Tests membership in expandedIds without touching the DOM.
|
|
235
176
|
*
|
|
236
177
|
* @remarks
|
|
237
|
-
* ## Why
|
|
238
|
-
*
|
|
239
178
|
* Separating this deterministic policy from event wiring lets applications test it directly and
|
|
240
179
|
* reuse it in custom composites.
|
|
241
180
|
*
|
|
242
|
-
* ## Ownership and lifetime
|
|
243
|
-
*
|
|
244
181
|
* This is a synchronous calculation. It acquires no resources and does not mutate the input array,
|
|
245
182
|
* state, event, or DOM.
|
|
246
183
|
*
|
|
@@ -251,125 +188,71 @@ export declare const makeCollection: (initial?: Collection.State<ItemValue, Elem
|
|
|
251
188
|
* const expanded = Tree.isExpanded({ activeId: null, expandedIds: ["parent"], loop: true }, "parent");
|
|
252
189
|
* ```
|
|
253
190
|
* @since 1.0.0
|
|
254
|
-
* @category
|
|
191
|
+
* @category Expansion
|
|
255
192
|
*/
|
|
256
193
|
export declare function isExpanded(state: State, id: string): boolean;
|
|
257
194
|
/**
|
|
258
195
|
* Adds an id once to expandedIds.
|
|
259
196
|
*
|
|
260
197
|
* @remarks
|
|
261
|
-
* ## Why
|
|
262
|
-
*
|
|
263
198
|
* The operation exposes Tree's transition directly so callers can compose it in Effect programs
|
|
264
199
|
* and native event handlers.
|
|
265
200
|
*
|
|
266
|
-
* ## Ownership and lifetime
|
|
267
|
-
*
|
|
268
|
-
* The returned Effect performs the update or DOM side effect only when run, preserves the declared
|
|
269
|
-
* error and service channels, and retains no resources after completion.
|
|
270
|
-
*
|
|
271
|
-
* ## Example
|
|
272
|
-
*
|
|
273
|
-
* Import with `import { expand } from "@typed/ui/Tree";` Extend the [Tree.makeState runnable
|
|
274
|
-
* setup](/reference/%40typed%2Fui%2FTree%23makeState). Inside the linked Effect program invoke
|
|
275
|
-
* `yield* expand(state, "item-2")`, then read the state snapshot to observe the transition
|
|
276
|
-
* described above.
|
|
277
201
|
* @since 1.0.0
|
|
278
|
-
* @category
|
|
202
|
+
* @category Expansion
|
|
279
203
|
*/
|
|
280
204
|
export declare function expand<E, R>(state: RefSubject.RefSubject<State, E, R>, id: string): Effect.Effect<State, E, R>;
|
|
281
205
|
/**
|
|
282
206
|
* Removes an id from expandedIds.
|
|
283
207
|
*
|
|
284
208
|
* @remarks
|
|
285
|
-
* ## Why
|
|
286
|
-
*
|
|
287
209
|
* The operation exposes Tree's transition directly so callers can compose it in Effect programs
|
|
288
210
|
* and native event handlers.
|
|
289
211
|
*
|
|
290
|
-
* ## Ownership and lifetime
|
|
291
|
-
*
|
|
292
|
-
* The returned Effect performs the update or DOM side effect only when run, preserves the declared
|
|
293
|
-
* error and service channels, and retains no resources after completion.
|
|
294
|
-
*
|
|
295
|
-
* ## Example
|
|
296
|
-
*
|
|
297
|
-
* Import with `import { collapse } from "@typed/ui/Tree";` Extend the [Tree.makeState runnable
|
|
298
|
-
* setup](/reference/%40typed%2Fui%2FTree%23makeState). Inside the linked Effect program invoke
|
|
299
|
-
* `yield* collapse(state, "item-2")`, then read the state snapshot to observe the transition
|
|
300
|
-
* described above.
|
|
301
212
|
* @since 1.0.0
|
|
302
|
-
* @category
|
|
213
|
+
* @category Expansion
|
|
303
214
|
*/
|
|
304
215
|
export declare function collapse<E, R>(state: RefSubject.RefSubject<State, E, R>, id: string): Effect.Effect<State, E, R>;
|
|
305
216
|
/**
|
|
306
217
|
* Sets the active tree item id without changing expansion.
|
|
307
218
|
*
|
|
308
219
|
* @remarks
|
|
309
|
-
* ## Why
|
|
310
|
-
*
|
|
311
220
|
* The operation exposes Tree's transition directly so callers can compose it in Effect programs
|
|
312
221
|
* and native event handlers.
|
|
313
222
|
*
|
|
314
|
-
* ## Ownership and lifetime
|
|
315
|
-
*
|
|
316
|
-
* The returned Effect performs the update or DOM side effect only when run, preserves the declared
|
|
317
|
-
* error and service channels, and retains no resources after completion.
|
|
318
|
-
*
|
|
319
|
-
* ## Example
|
|
320
|
-
*
|
|
321
|
-
* Import with `import { activate } from "@typed/ui/Tree";` Extend the [Tree.makeState runnable
|
|
322
|
-
* setup](/reference/%40typed%2Fui%2FTree%23makeState). Inside the linked Effect program invoke
|
|
323
|
-
* `yield* activate(state, "item-2")`, then read the state snapshot to observe the transition
|
|
324
|
-
* described above.
|
|
325
223
|
* @since 1.0.0
|
|
326
|
-
* @category
|
|
224
|
+
* @category Node focus
|
|
327
225
|
*/
|
|
328
226
|
export declare function activate<E, R>(state: RefSubject.RefSubject<State, E, R>, activeId: string | null): Effect.Effect<State, E, R>;
|
|
329
227
|
/**
|
|
330
228
|
* Inputs accepted by Tree.Root in addition to the shared DOM host options.
|
|
331
229
|
*
|
|
332
|
-
* @remarks
|
|
333
|
-
* ## Why
|
|
334
|
-
*
|
|
335
|
-
* The options type makes required state, content, accessible relationships, and custom-host inputs
|
|
336
|
-
* visible before rendering.
|
|
337
|
-
*
|
|
338
|
-
* ## Ownership and lifetime
|
|
339
|
-
*
|
|
340
|
-
* This declaration is data or schema metadata and acquires no resources.
|
|
341
|
-
*
|
|
342
|
-
* ## Example
|
|
343
|
-
*
|
|
344
|
-
* Import with `import type { RootOptions } from "@typed/ui/Tree";` Extend the [Tree.makeState
|
|
345
|
-
* runnable setup](/reference/%40typed%2Fui%2FTree%23makeState). Enable tree navigation with
|
|
346
|
-
* `const options: RootOptions = { state, collection, label: "Files", content: "Items" }`.
|
|
347
230
|
* @since 1.0.0
|
|
348
|
-
* @category
|
|
231
|
+
* @category Tree surface
|
|
349
232
|
*/
|
|
350
233
|
export interface RootOptions extends Dom.HostOptions<HTMLDivElement> {
|
|
351
234
|
/**
|
|
352
235
|
* Renderer-independent RefSubject state consumed by this component or operation.
|
|
353
236
|
* @since 1.0.0
|
|
354
|
-
* @category
|
|
237
|
+
* @category State connection
|
|
355
238
|
*/
|
|
356
239
|
readonly state: RefSubject.HydratedRefSubject<State, Schema.SchemaError>;
|
|
357
240
|
/**
|
|
358
241
|
* Item registry used for collection-driven keyboard behavior and mounted ordering.
|
|
359
242
|
* @since 1.0.0
|
|
360
|
-
* @category
|
|
243
|
+
* @category Item registration
|
|
361
244
|
*/
|
|
362
245
|
readonly collection?: RefSubject.RefSubject<Collection.State<ItemValue>>;
|
|
363
246
|
/**
|
|
364
247
|
* Accessible label rendered through aria-label.
|
|
365
248
|
* @since 1.0.0
|
|
366
|
-
* @category
|
|
249
|
+
* @category Accessible naming
|
|
367
250
|
*/
|
|
368
251
|
readonly label: Renderable.Any<string | null | undefined>;
|
|
369
252
|
/**
|
|
370
253
|
* Renderable child content for the component host.
|
|
371
254
|
* @since 1.0.0
|
|
372
|
-
* @category
|
|
255
|
+
* @category Rendered content
|
|
373
256
|
*/
|
|
374
257
|
readonly content: Renderable.Any;
|
|
375
258
|
}
|
|
@@ -386,95 +269,67 @@ type RootInternalProps<Options extends RootOptions> = ReturnType<ReturnType<type
|
|
|
386
269
|
* Renders the tree root and applies hierarchy-aware keyboard navigation to registered items.
|
|
387
270
|
*
|
|
388
271
|
* @remarks
|
|
389
|
-
* ## Why
|
|
390
|
-
*
|
|
391
|
-
* The component applies the family behavior while leaving callers free to supply a custom host
|
|
392
|
-
* through the shared DOM boundary.
|
|
393
|
-
*
|
|
394
|
-
* ## Ownership and lifetime
|
|
395
|
-
*
|
|
396
272
|
* The returned Fx installs DOM refs, native listeners, state subscriptions, and optional
|
|
397
273
|
* collection registrations only when rendered. The rendering Scope removes those resources;
|
|
398
274
|
* unrelated nodes and attributes remain caller-owned.
|
|
399
275
|
*
|
|
400
|
-
* ## Example
|
|
401
|
-
*
|
|
402
|
-
* Import with `import { Root } from "@typed/ui/Tree";` Extend the [Tree.makeState runnable
|
|
403
|
-
* setup](/reference/%40typed%2Fui%2FTree%23makeState). Replace the linked program's final snapshot
|
|
404
|
-
* read with `Root({ state, label: "Files", content: "Items" })`; render that Fx before the same
|
|
405
|
-
* Scope closes.
|
|
406
276
|
* @since 1.0.0
|
|
407
|
-
* @category
|
|
277
|
+
* @category Tree surface
|
|
408
278
|
*/
|
|
409
279
|
export declare function Root<const Options extends RootOptions, const Host extends HostResult = never>(options: Options, host?: Dom.HostOverride<Dom.RenderHostProps<Options, RootInternalProps<Options>>, Options["content"], Host>): Fx<RenderEvent, Renderable.Error<Options | Host>, Renderable.Services<Options | Host> | Scope.Scope | RenderTemplate>;
|
|
410
280
|
/**
|
|
411
281
|
* Inputs accepted by Tree.Item in addition to the shared DOM host options.
|
|
412
282
|
*
|
|
413
|
-
* @remarks
|
|
414
|
-
* ## Why
|
|
415
|
-
*
|
|
416
|
-
* The options type makes required state, content, accessible relationships, and custom-host inputs
|
|
417
|
-
* visible before rendering.
|
|
418
|
-
*
|
|
419
|
-
* ## Ownership and lifetime
|
|
420
|
-
*
|
|
421
|
-
* This declaration is data or schema metadata and acquires no resources.
|
|
422
|
-
*
|
|
423
|
-
* ## Example
|
|
424
|
-
*
|
|
425
|
-
* Import with `import type { ItemOptions } from "@typed/ui/Tree";` Extend the [Tree.makeState
|
|
426
|
-
* runnable setup](/reference/%40typed%2Fui%2FTree%23makeState). A branch item is
|
|
427
|
-
* `const options: ItemOptions = { state, collection, id: "src", level: 1, hasChildren: true, content: "src" }`.
|
|
428
283
|
* @since 1.0.0
|
|
429
|
-
* @category
|
|
284
|
+
* @category Tree nodes
|
|
430
285
|
*/
|
|
431
286
|
export interface ItemOptions extends Dom.HostOptions<HTMLDivElement> {
|
|
432
287
|
/**
|
|
433
288
|
* Renderer-independent RefSubject state consumed by this component or operation.
|
|
434
289
|
* @since 1.0.0
|
|
435
|
-
* @category
|
|
290
|
+
* @category State connection
|
|
436
291
|
*/
|
|
437
292
|
readonly state: RefSubject.HydratedRefSubject<State, Schema.SchemaError>;
|
|
438
293
|
/**
|
|
439
294
|
* Item registry used for collection-driven keyboard behavior and mounted ordering.
|
|
440
295
|
* @since 1.0.0
|
|
441
|
-
* @category
|
|
296
|
+
* @category Item registration
|
|
442
297
|
*/
|
|
443
298
|
readonly collection?: RefSubject.RefSubject<Collection.State<ItemValue>>;
|
|
444
299
|
/**
|
|
445
300
|
* Stable id used for collection identity and ARIA relationships.
|
|
446
301
|
* @since 1.0.0
|
|
447
|
-
* @category
|
|
302
|
+
* @category Identity and relationships
|
|
448
303
|
*/
|
|
449
304
|
readonly id: string;
|
|
450
305
|
/**
|
|
451
306
|
* Id whose expansion controls this descendant group.
|
|
452
307
|
* @since 1.0.0
|
|
453
|
-
* @category
|
|
308
|
+
* @category Hierarchy
|
|
454
309
|
*/
|
|
455
310
|
readonly parentId?: string;
|
|
456
311
|
/**
|
|
457
312
|
* One-based hierarchy level exposed through aria-level.
|
|
458
313
|
* @since 1.0.0
|
|
459
|
-
* @category
|
|
314
|
+
* @category Hierarchy
|
|
460
315
|
*/
|
|
461
316
|
readonly level?: number;
|
|
462
317
|
/**
|
|
463
318
|
* Whether aria-expanded is emitted and hierarchical keys may open descendants.
|
|
464
319
|
* @since 1.0.0
|
|
465
|
-
* @category
|
|
320
|
+
* @category Hierarchy
|
|
466
321
|
*/
|
|
467
322
|
readonly hasChildren?: boolean;
|
|
468
323
|
/**
|
|
469
324
|
* Flag used by collection movement and widget handlers to skip activation by default.
|
|
470
325
|
* @since 1.0.0
|
|
471
|
-
* @category
|
|
326
|
+
* @category Availability
|
|
472
327
|
*/
|
|
473
328
|
readonly disabled?: boolean;
|
|
474
329
|
/**
|
|
475
330
|
* Renderable child content for the component host.
|
|
476
331
|
* @since 1.0.0
|
|
477
|
-
* @category
|
|
332
|
+
* @category Rendered content
|
|
478
333
|
*/
|
|
479
334
|
readonly content: Renderable.Any;
|
|
480
335
|
}
|
|
@@ -495,65 +350,37 @@ type ItemInternalProps<Options extends ItemOptions> = ReturnType<ReturnType<type
|
|
|
495
350
|
* state.
|
|
496
351
|
*
|
|
497
352
|
* @remarks
|
|
498
|
-
* ## Why
|
|
499
|
-
*
|
|
500
|
-
* The component applies the family behavior while leaving callers free to supply a custom host
|
|
501
|
-
* through the shared DOM boundary.
|
|
502
|
-
*
|
|
503
|
-
* ## Ownership and lifetime
|
|
504
|
-
*
|
|
505
353
|
* The returned Fx installs DOM refs, native listeners, state subscriptions, and optional
|
|
506
354
|
* collection registrations only when rendered. The rendering Scope removes those resources;
|
|
507
355
|
* unrelated nodes and attributes remain caller-owned.
|
|
508
356
|
*
|
|
509
|
-
* ## Example
|
|
510
|
-
*
|
|
511
|
-
* Import with `import { Item } from "@typed/ui/Tree";` Extend the [Tree.makeState runnable
|
|
512
|
-
* setup](/reference/%40typed%2Fui%2FTree%23makeState). Replace the linked program's final snapshot
|
|
513
|
-
* read with `Item({ state, id: "src", hasChildren: true, content: "src" })`; render that Fx before
|
|
514
|
-
* the same Scope closes.
|
|
515
357
|
* @since 1.0.0
|
|
516
|
-
* @category
|
|
358
|
+
* @category Tree nodes
|
|
517
359
|
*/
|
|
518
360
|
export declare function Item<const Options extends ItemOptions, const Host extends HostResult = never>(options: Options, host?: Dom.HostOverride<Dom.RenderHostProps<Options, ItemInternalProps<Options>>, Options["content"], Host>): Fx<RenderEvent, Renderable.Error<Options | Host>, Renderable.Services<Options | Host> | Scope.Scope | RenderTemplate>;
|
|
519
361
|
/**
|
|
520
362
|
* Inputs accepted by Tree.Group in addition to the shared DOM host options.
|
|
521
363
|
*
|
|
522
|
-
* @remarks
|
|
523
|
-
* ## Why
|
|
524
|
-
*
|
|
525
|
-
* The options type makes required state, content, accessible relationships, and custom-host inputs
|
|
526
|
-
* visible before rendering.
|
|
527
|
-
*
|
|
528
|
-
* ## Ownership and lifetime
|
|
529
|
-
*
|
|
530
|
-
* This declaration is data or schema metadata and acquires no resources.
|
|
531
|
-
*
|
|
532
|
-
* ## Example
|
|
533
|
-
*
|
|
534
|
-
* Import with `import type { GroupOptions } from "@typed/ui/Tree";` Extend the [Tree.makeState
|
|
535
|
-
* runnable setup](/reference/%40typed%2Fui%2FTree%23makeState). Relate descendants to their branch
|
|
536
|
-
* with `const options: GroupOptions = { state, parentId: "src", content: "Children" }`.
|
|
537
364
|
* @since 1.0.0
|
|
538
|
-
* @category
|
|
365
|
+
* @category Child visibility
|
|
539
366
|
*/
|
|
540
367
|
export interface GroupOptions extends Dom.HostOptions<HTMLDivElement> {
|
|
541
368
|
/**
|
|
542
369
|
* Renderer-independent RefSubject state consumed by this component or operation.
|
|
543
370
|
* @since 1.0.0
|
|
544
|
-
* @category
|
|
371
|
+
* @category State connection
|
|
545
372
|
*/
|
|
546
373
|
readonly state: RefSubject.HydratedRefSubject<State, Schema.SchemaError>;
|
|
547
374
|
/**
|
|
548
375
|
* Id whose expansion controls this descendant group.
|
|
549
376
|
* @since 1.0.0
|
|
550
|
-
* @category
|
|
377
|
+
* @category Hierarchy
|
|
551
378
|
*/
|
|
552
379
|
readonly parentId: string;
|
|
553
380
|
/**
|
|
554
381
|
* Renderable child content for the component host.
|
|
555
382
|
* @since 1.0.0
|
|
556
|
-
* @category
|
|
383
|
+
* @category Rendered content
|
|
557
384
|
*/
|
|
558
385
|
readonly content: Renderable.Any;
|
|
559
386
|
}
|
|
@@ -566,25 +393,12 @@ type GroupInternalProps<Options extends GroupOptions> = ReturnType<ReturnType<ty
|
|
|
566
393
|
* Renders a child group and hides it while its parent id is not expanded.
|
|
567
394
|
*
|
|
568
395
|
* @remarks
|
|
569
|
-
* ## Why
|
|
570
|
-
*
|
|
571
|
-
* The component applies the family behavior while leaving callers free to supply a custom host
|
|
572
|
-
* through the shared DOM boundary.
|
|
573
|
-
*
|
|
574
|
-
* ## Ownership and lifetime
|
|
575
|
-
*
|
|
576
396
|
* The returned Fx installs DOM refs, native listeners, state subscriptions, and optional
|
|
577
397
|
* collection registrations only when rendered. The rendering Scope removes those resources;
|
|
578
398
|
* unrelated nodes and attributes remain caller-owned.
|
|
579
399
|
*
|
|
580
|
-
* ## Example
|
|
581
|
-
*
|
|
582
|
-
* Import with `import { Group } from "@typed/ui/Tree";` Extend the [Tree.makeState runnable
|
|
583
|
-
* setup](/reference/%40typed%2Fui%2FTree%23makeState). Replace the linked program's final snapshot
|
|
584
|
-
* read with `Group({ state, parentId: "src", content: "Children" })`; render that Fx before the
|
|
585
|
-
* same Scope closes.
|
|
586
400
|
* @since 1.0.0
|
|
587
|
-
* @category
|
|
401
|
+
* @category Child visibility
|
|
588
402
|
*/
|
|
589
403
|
export declare function Group<const Options extends GroupOptions, const Host extends HostResult = never>(options: Options, host?: Dom.HostOverride<Dom.RenderHostProps<Options, GroupInternalProps<Options>>, Options["content"], Host>): Fx<RenderEvent, Renderable.Error<Options | Host>, Renderable.Services<Options | Host> | Scope.Scope | RenderTemplate>;
|
|
590
404
|
export {};
|
package/dist/Tree.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tree.d.ts","sourceRoot":"","sources":["../src/Tree.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"Tree.d.ts","sourceRoot":"","sources":["../src/Tree.ts"],"names":[],"mappings":"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"}
|