@typed/ui 1.0.0-beta.6 → 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.
Files changed (128) hide show
  1. package/dist/Alert.d.ts +35 -41
  2. package/dist/Alert.d.ts.map +1 -1
  3. package/dist/Alert.js +23 -20
  4. package/dist/Button.d.ts +34 -78
  5. package/dist/Button.d.ts.map +1 -1
  6. package/dist/Button.js +16 -12
  7. package/dist/Carousel.d.ts +35 -236
  8. package/dist/Carousel.d.ts.map +1 -1
  9. package/dist/Carousel.js +13 -136
  10. package/dist/Checkbox.d.ts +55 -90
  11. package/dist/Checkbox.d.ts.map +1 -1
  12. package/dist/Checkbox.js +44 -38
  13. package/dist/Collection.d.ts +15 -15
  14. package/dist/Collection.js +7 -7
  15. package/dist/Combobox.d.ts +38 -187
  16. package/dist/Combobox.d.ts.map +1 -1
  17. package/dist/Combobox.js +9 -80
  18. package/dist/Component.d.ts +30 -24
  19. package/dist/Component.d.ts.map +1 -1
  20. package/dist/Component.js +23 -12
  21. package/dist/Composite.d.ts +50 -50
  22. package/dist/Composite.js +20 -20
  23. package/dist/Dialog.d.ts +34 -34
  24. package/dist/Dialog.d.ts.map +1 -1
  25. package/dist/Dialog.js +16 -14
  26. package/dist/Disclosure.d.ts +15 -15
  27. package/dist/Disclosure.js +6 -6
  28. package/dist/Dom/Events.d.ts +4 -4
  29. package/dist/Dom/Events.js +4 -4
  30. package/dist/Dom/Props.d.ts +9 -9
  31. package/dist/Dom/Props.js +4 -4
  32. package/dist/Dom/Refs.d.ts +2 -2
  33. package/dist/Dom/Refs.js +1 -1
  34. package/dist/Dom/Render.d.ts +2 -2
  35. package/dist/Dom/Render.js +2 -2
  36. package/dist/Dom/Types.d.ts +33 -33
  37. package/dist/Dom/index.d.ts +5 -5
  38. package/dist/Dom/index.d.ts.map +1 -1
  39. package/dist/Dom/index.js +4 -4
  40. package/dist/Dom.d.ts +1 -1
  41. package/dist/Dom.js +1 -1
  42. package/dist/Focusable.d.ts +5 -5
  43. package/dist/Focusable.js +1 -1
  44. package/dist/Form.d.ts +565 -533
  45. package/dist/Form.d.ts.map +1 -1
  46. package/dist/Form.js +350 -195
  47. package/dist/Grid.d.ts +39 -220
  48. package/dist/Grid.d.ts.map +1 -1
  49. package/dist/Grid.js +12 -107
  50. package/dist/Group.d.ts +50 -69
  51. package/dist/Group.d.ts.map +1 -1
  52. package/dist/Group.js +33 -25
  53. package/dist/Heading.d.ts +41 -40
  54. package/dist/Heading.d.ts.map +1 -1
  55. package/dist/Heading.js +26 -16
  56. package/dist/Hovercard.d.ts +18 -18
  57. package/dist/Hovercard.js +6 -6
  58. package/dist/HttpRouter.d.ts +3 -3
  59. package/dist/HttpRouter.js +5 -5
  60. package/dist/Link.d.ts +17 -21
  61. package/dist/Link.d.ts.map +1 -1
  62. package/dist/Link.js +11 -0
  63. package/dist/Listbox.d.ts +31 -163
  64. package/dist/Listbox.d.ts.map +1 -1
  65. package/dist/Listbox.js +9 -80
  66. package/dist/Menu.d.ts +67 -376
  67. package/dist/Menu.d.ts.map +1 -1
  68. package/dist/Menu.js +17 -179
  69. package/dist/Menubar.d.ts +24 -142
  70. package/dist/Menubar.d.ts.map +1 -1
  71. package/dist/Menubar.js +8 -66
  72. package/dist/Meter.d.ts +72 -132
  73. package/dist/Meter.d.ts.map +1 -1
  74. package/dist/Meter.js +35 -42
  75. package/dist/NativeDetails.d.ts +1 -1
  76. package/dist/NativeDetails.js +1 -1
  77. package/dist/NativeDialog.d.ts +7 -5
  78. package/dist/NativeDialog.d.ts.map +1 -1
  79. package/dist/NativeDialog.js +42 -4
  80. package/dist/NativePopover.d.ts +6 -4
  81. package/dist/NativePopover.d.ts.map +1 -1
  82. package/dist/NativePopover.js +43 -5
  83. package/dist/Popover.d.ts +18 -19
  84. package/dist/Popover.d.ts.map +1 -1
  85. package/dist/Popover.js +7 -8
  86. package/dist/RadioGroup.d.ts +86 -188
  87. package/dist/RadioGroup.d.ts.map +1 -1
  88. package/dist/RadioGroup.js +55 -105
  89. package/dist/Role.d.ts +4 -4
  90. package/dist/Role.js +1 -1
  91. package/dist/Select.d.ts +109 -220
  92. package/dist/Select.d.ts.map +1 -1
  93. package/dist/Select.js +67 -117
  94. package/dist/Separator.d.ts +30 -26
  95. package/dist/Separator.d.ts.map +1 -1
  96. package/dist/Separator.js +16 -10
  97. package/dist/Slider.d.ts +64 -111
  98. package/dist/Slider.d.ts.map +1 -1
  99. package/dist/Slider.js +47 -42
  100. package/dist/SpinButton.d.ts +64 -111
  101. package/dist/SpinButton.d.ts.map +1 -1
  102. package/dist/SpinButton.js +47 -42
  103. package/dist/Storybook.d.ts +2 -2
  104. package/dist/Storybook.js +1 -1
  105. package/dist/Switch.d.ts +52 -91
  106. package/dist/Switch.d.ts.map +1 -1
  107. package/dist/Switch.js +30 -36
  108. package/dist/Tabs.d.ts +44 -224
  109. package/dist/Tabs.d.ts.map +1 -1
  110. package/dist/Tabs.js +10 -94
  111. package/dist/Toolbar.d.ts +24 -142
  112. package/dist/Toolbar.d.ts.map +1 -1
  113. package/dist/Toolbar.js +8 -66
  114. package/dist/Tooltip.d.ts +20 -20
  115. package/dist/Tooltip.js +6 -6
  116. package/dist/Tree.d.ts +43 -229
  117. package/dist/Tree.d.ts.map +1 -1
  118. package/dist/Tree.js +12 -113
  119. package/dist/TreeGrid.d.ts +45 -264
  120. package/dist/TreeGrid.d.ts.map +1 -1
  121. package/dist/TreeGrid.js +13 -125
  122. package/dist/VisuallyHidden.d.ts +41 -27
  123. package/dist/VisuallyHidden.d.ts.map +1 -1
  124. package/dist/VisuallyHidden.js +27 -10
  125. package/dist/WindowSplitter.d.ts +68 -108
  126. package/dist/WindowSplitter.d.ts.map +1 -1
  127. package/dist/WindowSplitter.js +106 -23
  128. 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
- * Complete renderer-independent state for Tree.
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 models
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 models
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 models
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 models
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 models
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 models
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 models
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 models
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 schemas
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 constructors
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 models
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 models
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 models
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 constructors
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 combinators
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 combinators
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 combinators
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 combinators
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 models
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 models
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 models
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 models
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 models
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 components
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 models
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 models
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 models
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 models
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 models
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 models
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 models
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 models
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 models
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 components
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 models
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 models
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 models
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 models
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 components
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 {};
@@ -1 +1 @@
1
- {"version":3,"file":"Tree.d.ts","sourceRoot":"","sources":["../src/Tree.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EACL,YAAY,EAEZ,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,cAAc,EACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAE9C,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAChC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,KAAK;IACpB;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC;;;;OAIG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,WAAW;;;;EAItB,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,SAAS,CAAC,OAAO,GAAE,YAAiB;;;;0DAMnD;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,SAAS;IACxB;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,cAAc,kKAAkC,CAAC;AAE9D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,EACzB,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,EACzC,EAAE,EAAE,MAAM,GACT,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAI5B;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAC3B,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,EACzC,EAAE,EAAE,MAAM,GACT,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAK5B;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAC3B,KAAK,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,EACzC,QAAQ,EAAE,MAAM,GAAG,IAAI,GACtB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAE5B;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,WAAY,SAAQ,GAAG,CAAC,WAAW,CAAC,cAAc,CAAC;IAClE;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IACzE;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IACzE;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;IAC1D;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC;CAClC;AAED,iBAAS,iBAAiB,CAAC,KAAK,CAAC,OAAO,SAAS,WAAW,EAAE,OAAO,EAAE,OAAO,kBAsBtD,GAAG,CAAC,oBAAoB,CAAC,OAAO,CAAC;mBAE7C,MAAM;;;;;;EAOjB;AACD,KAAK,iBAAiB,CAAC,OAAO,SAAS,WAAW,IAAI,UAAU,CAC9D,UAAU,CAAC,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAC9C,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,IAAI,CAAC,KAAK,CAAC,OAAO,SAAS,WAAW,EAAE,KAAK,CAAC,IAAI,SAAS,UAAU,GAAG,KAAK,EAC3F,OAAO,EAAE,OAAO,EAChB,IAAI,CAAC,EAAE,GAAG,CAAC,YAAY,CACrB,GAAG,CAAC,eAAe,CAAC,OAAO,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC,EACxD,OAAO,CAAC,SAAS,CAAC,EAClB,IAAI,CACL,GACA,EAAE,CACH,WAAW,EACX,UAAU,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,EAChC,UAAU,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,cAAc,CACnE,CAUA;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,WAAY,SAAQ,GAAG,CAAC,WAAW,CAAC,cAAc,CAAC;IAClE;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IACzE;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IACzE;;;;OAIG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC;CAClC;AAED,iBAAS,iBAAiB,CAAC,KAAK,CAAC,OAAO,SAAS,WAAW,EAAE,OAAO,EAAE,OAAO,kBAWtD,GAAG,CAAC,oBAAoB,CAAC,OAAO,CAAC;aAEnD,EAAE;aACF,IAAI,EAAE,UAAU;aAChB,YAAY;aACZ,eAAe;aAGf,eAAe;aACf,QAAQ;aACR,OAAO;aACP,OAAO;aACP,GAAG;EAER;AACD,KAAK,iBAAiB,CAAC,OAAO,SAAS,WAAW,IAAI,UAAU,CAC9D,UAAU,CAAC,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAC9C,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,IAAI,CAAC,KAAK,CAAC,OAAO,SAAS,WAAW,EAAE,KAAK,CAAC,IAAI,SAAS,UAAU,GAAG,KAAK,EAC3F,OAAO,EAAE,OAAO,EAChB,IAAI,CAAC,EAAE,GAAG,CAAC,YAAY,CACrB,GAAG,CAAC,eAAe,CAAC,OAAO,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC,EACxD,OAAO,CAAC,SAAS,CAAC,EAClB,IAAI,CACL,GACA,EAAE,CACH,WAAW,EACX,UAAU,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,EAChC,UAAU,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,cAAc,CACnE,CAUA;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,YAAa,SAAQ,GAAG,CAAC,WAAW,CAAC,cAAc,CAAC;IACnE;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IACzE;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC;CAClC;AAED,iBAAS,kBAAkB,CAAC,KAAK,CAAC,OAAO,SAAS,YAAY,EAAE,OAAO,EAAE,OAAO;aAG1E,IAAI,EAAE,OAAO;aACb,SAAS;EAEd;AACD,KAAK,kBAAkB,CAAC,OAAO,SAAS,YAAY,IAAI,UAAU,CAChE,UAAU,CAAC,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAC/C,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,KAAK,CAAC,KAAK,CAAC,OAAO,SAAS,YAAY,EAAE,KAAK,CAAC,IAAI,SAAS,UAAU,GAAG,KAAK,EAC7F,OAAO,EAAE,OAAO,EAChB,IAAI,CAAC,EAAE,GAAG,CAAC,YAAY,CACrB,GAAG,CAAC,eAAe,CAAC,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC,EACzD,OAAO,CAAC,SAAS,CAAC,EAClB,IAAI,CACL,GACA,EAAE,CACH,WAAW,EACX,UAAU,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,EAChC,UAAU,CAAC,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,cAAc,CACnE,CAcA"}
1
+ {"version":3,"file":"Tree.d.ts","sourceRoot":"","sources":["../src/Tree.ts"],"names":[],"mappings":"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"}