@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.
- 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/Grid.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 [Grid guide](/explore/ui-grid).
|
|
12
|
+
*
|
|
11
13
|
* @since 1.0.0
|
|
12
14
|
* @category modules
|
|
13
15
|
* @packageDocumentation
|
|
@@ -22,60 +24,31 @@ 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 Grid behavior without mounting or coupling the state
|
|
31
|
-
* to a renderer.
|
|
32
|
-
*
|
|
33
|
-
* ## Ownership and lifetime
|
|
27
|
+
* The cell ID exposed by the root through `aria-activedescendant`.
|
|
28
|
+
* Native focus stays on the root; selected cells and editing state are not stored here.
|
|
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/Grid";` Extend the [Grid.makeState runnable
|
|
40
|
-
* setup](/reference/%40typed%2Fui%2FGrid%23makeState). Inside the linked program,
|
|
41
|
-
* `const snapshot: State = yield* state` exposes the active grid-cell id.
|
|
42
30
|
* @since 1.0.0
|
|
43
|
-
* @category
|
|
31
|
+
* @category Cell focus
|
|
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
|
/**
|
|
54
42
|
* Initial Grid values. activeId defaults to null.
|
|
55
43
|
*
|
|
56
|
-
* @remarks
|
|
57
|
-
* ## Why
|
|
58
|
-
*
|
|
59
|
-
* Making initialization explicit documents hydration-sensitive defaults and lets servers and
|
|
60
|
-
* clients construct matching state.
|
|
61
|
-
*
|
|
62
|
-
* ## Ownership and lifetime
|
|
63
|
-
*
|
|
64
|
-
* This declaration is data or schema metadata and acquires no resources.
|
|
65
|
-
*
|
|
66
|
-
* ## Example
|
|
67
|
-
*
|
|
68
|
-
* Import with `import type { InitialState } from "@typed/ui/Grid";` Extend the [Grid.makeState
|
|
69
|
-
* runnable setup](/reference/%40typed%2Fui%2FGrid%23makeState). Construct state with
|
|
70
|
-
* `const initial: InitialState = { activeId: "r1c1" }; const state = yield* Grid.makeState(initial)`.
|
|
71
44
|
* @since 1.0.0
|
|
72
|
-
* @category
|
|
45
|
+
* @category Cell focus
|
|
73
46
|
*/
|
|
74
47
|
export interface InitialState {
|
|
75
48
|
/**
|
|
76
49
|
* Id currently active for keyboard navigation; null means no active item.
|
|
77
50
|
* @since 1.0.0
|
|
78
|
-
* @category
|
|
51
|
+
* @category Keyboard focus
|
|
79
52
|
*/
|
|
80
53
|
readonly activeId?: string | null;
|
|
81
54
|
}
|
|
@@ -83,15 +56,6 @@ export interface InitialState {
|
|
|
83
56
|
* Effect Schema used by makeState to encode, decode, and hydrate Grid state.
|
|
84
57
|
*
|
|
85
58
|
* @remarks
|
|
86
|
-
* ## Why
|
|
87
|
-
*
|
|
88
|
-
* A public schema makes hydration and serialized state use the same runtime validation as direct
|
|
89
|
-
* construction.
|
|
90
|
-
*
|
|
91
|
-
* ## Ownership and lifetime
|
|
92
|
-
*
|
|
93
|
-
* This declaration is data or schema metadata and acquires no resources.
|
|
94
|
-
*
|
|
95
59
|
* @example
|
|
96
60
|
* ```ts
|
|
97
61
|
* import * as Schema from "effect/Schema";
|
|
@@ -100,7 +64,7 @@ export interface InitialState {
|
|
|
100
64
|
* const decodeState = Schema.decodeUnknownEffect(Grid.StateSchema);
|
|
101
65
|
* ```
|
|
102
66
|
* @since 1.0.0
|
|
103
|
-
* @category
|
|
67
|
+
* @category Cell focus
|
|
104
68
|
*/
|
|
105
69
|
export declare const StateSchema: Schema.Struct<{
|
|
106
70
|
readonly activeId: Schema.NullOr<Schema.String>;
|
|
@@ -109,12 +73,6 @@ export declare const StateSchema: Schema.Struct<{
|
|
|
109
73
|
* Creates hydrated Grid state. activeId defaults to null.
|
|
110
74
|
*
|
|
111
75
|
* @remarks
|
|
112
|
-
* ## Why
|
|
113
|
-
*
|
|
114
|
-
* State and collection ownership can be composed and tested independently from any renderer.
|
|
115
|
-
*
|
|
116
|
-
* ## Ownership and lifetime
|
|
117
|
-
*
|
|
118
76
|
* The returned Effect creates the RefSubject when run. That state is renderer-independent;
|
|
119
77
|
* collection registrations belong to the separate Scope that runs register or ref, not to state
|
|
120
78
|
* creation.
|
|
@@ -133,7 +91,7 @@ export declare const StateSchema: Schema.Struct<{
|
|
|
133
91
|
* );
|
|
134
92
|
* ```
|
|
135
93
|
* @since 1.0.0
|
|
136
|
-
* @category
|
|
94
|
+
* @category Cell focus
|
|
137
95
|
*/
|
|
138
96
|
export declare function makeState(initial?: InitialState): Effect.Effect<RefSubject.HydratedRefSubject<{
|
|
139
97
|
readonly activeId: string | null;
|
|
@@ -142,36 +100,24 @@ export declare function makeState(initial?: InitialState): Effect.Effect<RefSubj
|
|
|
142
100
|
* Logical coordinates stored with each registered Grid cell.
|
|
143
101
|
*
|
|
144
102
|
* @remarks
|
|
145
|
-
* ## Why
|
|
146
|
-
*
|
|
147
103
|
* The public model lets custom composites reuse Grid's deterministic policy without copying an
|
|
148
104
|
* internal shape.
|
|
149
105
|
*
|
|
150
|
-
* ## Ownership and lifetime
|
|
151
|
-
*
|
|
152
|
-
* This declaration is data or schema metadata and acquires no resources.
|
|
153
|
-
*
|
|
154
|
-
* ## Example
|
|
155
|
-
*
|
|
156
|
-
* Import with `import type { CellPosition } from "@typed/ui/Grid";` Extend the [Grid.makeState
|
|
157
|
-
* runnable setup](/reference/%40typed%2Fui%2FGrid%23makeState). A registered cell identifies its
|
|
158
|
-
* logical row and one-based column:
|
|
159
|
-
* `const position: CellPosition = { rowId: "r1", columnIndex: 1 }`.
|
|
160
106
|
* @since 1.0.0
|
|
161
|
-
* @category
|
|
107
|
+
* @category Cell registration
|
|
162
108
|
*/
|
|
163
109
|
export interface CellPosition {
|
|
164
110
|
/**
|
|
165
111
|
* Stable logical row identity used by vertical grid movement.
|
|
166
112
|
* @since 1.0.0
|
|
167
|
-
* @category
|
|
113
|
+
* @category Row identity
|
|
168
114
|
*/
|
|
169
115
|
readonly rowId: string;
|
|
170
116
|
/**
|
|
171
117
|
* Caller-supplied column index used for movement and emitted unchanged as aria-colindex; ARIA
|
|
172
118
|
* indexes are one-based.
|
|
173
119
|
* @since 1.0.0
|
|
174
|
-
* @category
|
|
120
|
+
* @category Cell position
|
|
175
121
|
*/
|
|
176
122
|
readonly columnIndex: number;
|
|
177
123
|
}
|
|
@@ -179,12 +125,6 @@ export interface CellPosition {
|
|
|
179
125
|
* Creates a scoped Collection for Grid items.
|
|
180
126
|
*
|
|
181
127
|
* @remarks
|
|
182
|
-
* ## Why
|
|
183
|
-
*
|
|
184
|
-
* State and collection ownership can be composed and tested independently from any renderer.
|
|
185
|
-
*
|
|
186
|
-
* ## Ownership and lifetime
|
|
187
|
-
*
|
|
188
128
|
* The returned Effect allocates the RefSubject in the caller's Scope. Each later registration is
|
|
189
129
|
* owned by the Scope that runs register, independently of this construction Effect.
|
|
190
130
|
*
|
|
@@ -201,83 +141,55 @@ export interface CellPosition {
|
|
|
201
141
|
* );
|
|
202
142
|
* ```
|
|
203
143
|
* @since 1.0.0
|
|
204
|
-
* @category
|
|
144
|
+
* @category Cell registration
|
|
205
145
|
*/
|
|
206
146
|
export declare const makeCollection: (initial?: Collection.State<CellPosition, Element>) => Effect.Effect<RefSubject.RefSubject<Collection.State<CellPosition, Element>, never, never>, never, Scope.Scope>;
|
|
207
147
|
/**
|
|
208
148
|
* Sets activeId, including null to clear virtual focus.
|
|
209
149
|
*
|
|
210
150
|
* @remarks
|
|
211
|
-
* ## Why
|
|
212
|
-
*
|
|
213
151
|
* The operation exposes Grid's transition directly so callers can compose it in Effect programs
|
|
214
152
|
* and native event handlers.
|
|
215
153
|
*
|
|
216
|
-
* ## Ownership and lifetime
|
|
217
|
-
*
|
|
218
|
-
* The returned Effect performs the update or DOM side effect only when run, preserves the declared
|
|
219
|
-
* error and service channels, and retains no resources after completion.
|
|
220
|
-
*
|
|
221
|
-
* ## Example
|
|
222
|
-
*
|
|
223
|
-
* Import with `import { activate } from "@typed/ui/Grid";` Extend the [Grid.makeState runnable
|
|
224
|
-
* setup](/reference/%40typed%2Fui%2FGrid%23makeState). Inside the linked Effect program invoke
|
|
225
|
-
* `yield* activate(state, "item-2")`, then read the state snapshot to observe the transition
|
|
226
|
-
* described above.
|
|
227
154
|
* @since 1.0.0
|
|
228
|
-
* @category
|
|
155
|
+
* @category Cell focus
|
|
229
156
|
*/
|
|
230
157
|
export declare function activate<E, R>(state: RefSubject.RefSubject<State, E, R>, activeId: string | null): Effect.Effect<State, E, R>;
|
|
231
158
|
/**
|
|
232
159
|
* Inputs accepted by Grid.Root in addition to the shared DOM host options.
|
|
233
160
|
*
|
|
234
|
-
* @remarks
|
|
235
|
-
* ## Why
|
|
236
|
-
*
|
|
237
|
-
* The options type makes required state, content, accessible relationships, and custom-host inputs
|
|
238
|
-
* visible before rendering.
|
|
239
|
-
*
|
|
240
|
-
* ## Ownership and lifetime
|
|
241
|
-
*
|
|
242
|
-
* This declaration is data or schema metadata and acquires no resources.
|
|
243
|
-
*
|
|
244
|
-
* ## Example
|
|
245
|
-
*
|
|
246
|
-
* Import with `import type { RootOptions } from "@typed/ui/Grid";` Extend the [Grid.makeState
|
|
247
|
-
* runnable setup](/reference/%40typed%2Fui%2FGrid%23makeState). Wire keyboard navigation with
|
|
248
|
-
* `const options: RootOptions = { state, collection, label: "Schedule", content: "Rows" }`.
|
|
249
161
|
* @since 1.0.0
|
|
250
|
-
* @category
|
|
162
|
+
* @category Grid surface
|
|
251
163
|
*/
|
|
252
164
|
export interface RootOptions extends Dom.HostOptions<HTMLDivElement> {
|
|
253
165
|
/**
|
|
254
166
|
* Renderer-independent RefSubject state consumed by this component or operation.
|
|
255
167
|
* @since 1.0.0
|
|
256
|
-
* @category
|
|
168
|
+
* @category State connection
|
|
257
169
|
*/
|
|
258
170
|
readonly state: RefSubject.HydratedRefSubject<State, Schema.SchemaError>;
|
|
259
171
|
/**
|
|
260
172
|
* Item registry used for collection-driven keyboard behavior and mounted ordering.
|
|
261
173
|
* @since 1.0.0
|
|
262
|
-
* @category
|
|
174
|
+
* @category Item registration
|
|
263
175
|
*/
|
|
264
176
|
readonly collection?: RefSubject.RefSubject<Collection.State<CellPosition>>;
|
|
265
177
|
/**
|
|
266
178
|
* Accessible label rendered through aria-label.
|
|
267
179
|
* @since 1.0.0
|
|
268
|
-
* @category
|
|
180
|
+
* @category Accessible naming
|
|
269
181
|
*/
|
|
270
182
|
readonly label: Renderable.Any<string | null | undefined>;
|
|
271
183
|
/**
|
|
272
184
|
* Renderable child content for the component host.
|
|
273
185
|
* @since 1.0.0
|
|
274
|
-
* @category
|
|
186
|
+
* @category Rendered content
|
|
275
187
|
*/
|
|
276
188
|
readonly content: Renderable.Any;
|
|
277
189
|
/**
|
|
278
190
|
* Whether aria-multiselectable is announced on the grid.
|
|
279
191
|
* @since 1.0.0
|
|
280
|
-
* @category
|
|
192
|
+
* @category Selection state
|
|
281
193
|
*/
|
|
282
194
|
readonly multiselectable?: Renderable.Any<boolean | null | undefined>;
|
|
283
195
|
}
|
|
@@ -297,59 +209,31 @@ type RootInternalProps<Options extends RootOptions> = ReturnType<ReturnType<type
|
|
|
297
209
|
* focus.
|
|
298
210
|
*
|
|
299
211
|
* @remarks
|
|
300
|
-
* ## Why
|
|
301
|
-
*
|
|
302
|
-
* The component applies the family behavior while leaving callers free to supply a custom host
|
|
303
|
-
* through the shared DOM boundary.
|
|
304
|
-
*
|
|
305
|
-
* ## Ownership and lifetime
|
|
306
|
-
*
|
|
307
212
|
* The returned Fx installs DOM refs, native listeners, state subscriptions, and optional
|
|
308
213
|
* collection registrations only when rendered. The rendering Scope removes those resources;
|
|
309
214
|
* unrelated nodes and attributes remain caller-owned.
|
|
310
215
|
*
|
|
311
|
-
* ## Example
|
|
312
|
-
*
|
|
313
|
-
* Import with `import { Root } from "@typed/ui/Grid";` Extend the [Grid.makeState runnable
|
|
314
|
-
* setup](/reference/%40typed%2Fui%2FGrid%23makeState). Replace the linked program's final snapshot
|
|
315
|
-
* read with `Root({ state, label: "Schedule", content: "Rows" })`; render that Fx before the same
|
|
316
|
-
* Scope closes.
|
|
317
216
|
* @since 1.0.0
|
|
318
|
-
* @category
|
|
217
|
+
* @category Grid surface
|
|
319
218
|
*/
|
|
320
219
|
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>;
|
|
321
220
|
/**
|
|
322
221
|
* Inputs accepted by Grid.Row in addition to the shared DOM host options.
|
|
323
222
|
*
|
|
324
|
-
* @remarks
|
|
325
|
-
* ## Why
|
|
326
|
-
*
|
|
327
|
-
* The options type makes required state, content, accessible relationships, and custom-host inputs
|
|
328
|
-
* visible before rendering.
|
|
329
|
-
*
|
|
330
|
-
* ## Ownership and lifetime
|
|
331
|
-
*
|
|
332
|
-
* This declaration is data or schema metadata and acquires no resources.
|
|
333
|
-
*
|
|
334
|
-
* ## Example
|
|
335
|
-
*
|
|
336
|
-
* Import with `import type { RowOptions } from "@typed/ui/Grid";` Extend the [Grid.makeState
|
|
337
|
-
* runnable setup](/reference/%40typed%2Fui%2FGrid%23makeState). Expose optional ARIA position with
|
|
338
|
-
* `const options: RowOptions = { rowIndex: 1, content: "Cells" }`.
|
|
339
223
|
* @since 1.0.0
|
|
340
|
-
* @category
|
|
224
|
+
* @category Rows
|
|
341
225
|
*/
|
|
342
226
|
export interface RowOptions extends Dom.HostOptions<HTMLDivElement> {
|
|
343
227
|
/**
|
|
344
228
|
* Renderable child content for the component host.
|
|
345
229
|
* @since 1.0.0
|
|
346
|
-
* @category
|
|
230
|
+
* @category Rendered content
|
|
347
231
|
*/
|
|
348
232
|
readonly content: Renderable.Any;
|
|
349
233
|
/**
|
|
350
234
|
* Optional one-based aria-rowindex value supplied by the caller.
|
|
351
235
|
* @since 1.0.0
|
|
352
|
-
* @category
|
|
236
|
+
* @category Cell position
|
|
353
237
|
*/
|
|
354
238
|
readonly rowIndex?: Renderable.Any<number | null | undefined>;
|
|
355
239
|
}
|
|
@@ -362,13 +246,6 @@ type RowInternalProps<Options extends RowOptions> = ReturnType<typeof rowInterna
|
|
|
362
246
|
* Renders an ARIA row and forwards an optional one-based aria-rowindex.
|
|
363
247
|
*
|
|
364
248
|
* @remarks
|
|
365
|
-
* ## Why
|
|
366
|
-
*
|
|
367
|
-
* The component applies the family behavior while leaving callers free to supply a custom host
|
|
368
|
-
* through the shared DOM boundary.
|
|
369
|
-
*
|
|
370
|
-
* ## Ownership and lifetime
|
|
371
|
-
*
|
|
372
249
|
* The returned Fx installs DOM refs, native listeners, state subscriptions, and optional
|
|
373
250
|
* collection registrations only when rendered. The rendering Scope removes those resources;
|
|
374
251
|
* unrelated nodes and attributes remain caller-owned.
|
|
@@ -380,78 +257,63 @@ type RowInternalProps<Options extends RowOptions> = ReturnType<typeof rowInterna
|
|
|
380
257
|
* const view = Grid.Row({ rowIndex: 1, content: "Cells" });
|
|
381
258
|
* ```
|
|
382
259
|
* @since 1.0.0
|
|
383
|
-
* @category
|
|
260
|
+
* @category Rows
|
|
384
261
|
*/
|
|
385
262
|
export declare function Row<const Options extends RowOptions, const Host extends HostResult = never>(options: Options, host?: Dom.HostOverride<Dom.RenderHostProps<Options, RowInternalProps<Options>>, Options["content"], Host>): Fx<RenderEvent, Renderable.Error<Options | Host>, Renderable.Services<Options | Host> | Scope.Scope | RenderTemplate>;
|
|
386
263
|
/**
|
|
387
264
|
* Inputs accepted by Grid.Cell in addition to the shared DOM host options.
|
|
388
265
|
*
|
|
389
|
-
* @remarks
|
|
390
|
-
* ## Why
|
|
391
|
-
*
|
|
392
|
-
* The options type makes required state, content, accessible relationships, and custom-host inputs
|
|
393
|
-
* visible before rendering.
|
|
394
|
-
*
|
|
395
|
-
* ## Ownership and lifetime
|
|
396
|
-
*
|
|
397
|
-
* This declaration is data or schema metadata and acquires no resources.
|
|
398
|
-
*
|
|
399
|
-
* ## Example
|
|
400
|
-
*
|
|
401
|
-
* Import with `import type { CellOptions } from "@typed/ui/Grid";` Extend the [Grid.makeState
|
|
402
|
-
* runnable setup](/reference/%40typed%2Fui%2FGrid%23makeState). A navigable cell is
|
|
403
|
-
* `const options: CellOptions = { state, collection, id: "r1c1", rowId: "r1", columnIndex: 1, content: "Monday" }`.
|
|
404
266
|
* @since 1.0.0
|
|
405
|
-
* @category
|
|
267
|
+
* @category Cells and headers
|
|
406
268
|
*/
|
|
407
269
|
export interface CellOptions extends Dom.HostOptions<HTMLDivElement> {
|
|
408
270
|
/**
|
|
409
271
|
* Renderer-independent RefSubject state consumed by this component or operation.
|
|
410
272
|
* @since 1.0.0
|
|
411
|
-
* @category
|
|
273
|
+
* @category State connection
|
|
412
274
|
*/
|
|
413
275
|
readonly state: RefSubject.HydratedRefSubject<State, Schema.SchemaError>;
|
|
414
276
|
/**
|
|
415
277
|
* Item registry used for collection-driven keyboard behavior and mounted ordering.
|
|
416
278
|
* @since 1.0.0
|
|
417
|
-
* @category
|
|
279
|
+
* @category Item registration
|
|
418
280
|
*/
|
|
419
281
|
readonly collection?: RefSubject.RefSubject<Collection.State<CellPosition>>;
|
|
420
282
|
/**
|
|
421
283
|
* Stable id used for collection identity and ARIA relationships.
|
|
422
284
|
* @since 1.0.0
|
|
423
|
-
* @category
|
|
285
|
+
* @category Identity and relationships
|
|
424
286
|
*/
|
|
425
287
|
readonly id: string;
|
|
426
288
|
/**
|
|
427
289
|
* Stable logical row identity used by vertical grid movement.
|
|
428
290
|
* @since 1.0.0
|
|
429
|
-
* @category
|
|
291
|
+
* @category Row identity
|
|
430
292
|
*/
|
|
431
293
|
readonly rowId: string;
|
|
432
294
|
/**
|
|
433
295
|
* Caller-supplied column index used for movement and emitted unchanged as aria-colindex; ARIA
|
|
434
296
|
* indexes are one-based.
|
|
435
297
|
* @since 1.0.0
|
|
436
|
-
* @category
|
|
298
|
+
* @category Cell position
|
|
437
299
|
*/
|
|
438
300
|
readonly columnIndex: number;
|
|
439
301
|
/**
|
|
440
302
|
* Optional one-based aria-rowindex value supplied by the caller.
|
|
441
303
|
* @since 1.0.0
|
|
442
|
-
* @category
|
|
304
|
+
* @category Cell position
|
|
443
305
|
*/
|
|
444
306
|
readonly rowIndex?: number;
|
|
445
307
|
/**
|
|
446
308
|
* Optional selected state exposed through aria-selected.
|
|
447
309
|
* @since 1.0.0
|
|
448
|
-
* @category
|
|
310
|
+
* @category Selection state
|
|
449
311
|
*/
|
|
450
312
|
readonly selected?: Renderable.Any<boolean | null | undefined>;
|
|
451
313
|
/**
|
|
452
314
|
* Renderable child content for the component host.
|
|
453
315
|
* @since 1.0.0
|
|
454
|
-
* @category
|
|
316
|
+
* @category Rendered content
|
|
455
317
|
*/
|
|
456
318
|
readonly content: Renderable.Any;
|
|
457
319
|
}
|
|
@@ -469,75 +331,36 @@ type CellInternalProps<Options extends CellOptions> = ReturnType<ReturnType<type
|
|
|
469
331
|
* Renders and optionally registers a gridcell with row and column coordinates.
|
|
470
332
|
*
|
|
471
333
|
* @remarks
|
|
472
|
-
* ## Why
|
|
473
|
-
*
|
|
474
|
-
* The component applies the family behavior while leaving callers free to supply a custom host
|
|
475
|
-
* through the shared DOM boundary.
|
|
476
|
-
*
|
|
477
|
-
* ## Ownership and lifetime
|
|
478
|
-
*
|
|
479
334
|
* The returned Fx installs DOM refs, native listeners, state subscriptions, and optional
|
|
480
335
|
* collection registrations only when rendered. The rendering Scope removes those resources;
|
|
481
336
|
* unrelated nodes and attributes remain caller-owned.
|
|
482
337
|
*
|
|
483
|
-
* ## Example
|
|
484
|
-
*
|
|
485
|
-
* Import with `import { Cell } from "@typed/ui/Grid";` Extend the [Grid.makeState runnable
|
|
486
|
-
* setup](/reference/%40typed%2Fui%2FGrid%23makeState). Replace the linked program's final snapshot
|
|
487
|
-
* read with `Cell({ state, id: "r1c1", rowId: "r1", columnIndex: 1, content: "Monday" })`; render
|
|
488
|
-
* that Fx before the same Scope closes.
|
|
489
338
|
* @since 1.0.0
|
|
490
|
-
* @category
|
|
339
|
+
* @category Cells and headers
|
|
491
340
|
*/
|
|
492
341
|
export declare function Cell<const Options extends CellOptions, const Host extends HostResult = never>(options: Options, host?: Dom.HostOverride<Dom.RenderHostProps<Options, CellInternalProps<Options>>, Options["content"], Host>): import("./Dom/Types.js").HostComponent<Host | Options>;
|
|
493
342
|
/**
|
|
494
343
|
* Renders the Cell contract with the columnheader role.
|
|
495
344
|
*
|
|
496
345
|
* @remarks
|
|
497
|
-
* ## Why
|
|
498
|
-
*
|
|
499
|
-
* The component applies the family behavior while leaving callers free to supply a custom host
|
|
500
|
-
* through the shared DOM boundary.
|
|
501
|
-
*
|
|
502
|
-
* ## Ownership and lifetime
|
|
503
|
-
*
|
|
504
346
|
* The returned Fx installs DOM refs, native listeners, state subscriptions, and optional
|
|
505
347
|
* collection registrations only when rendered. The rendering Scope removes those resources;
|
|
506
348
|
* unrelated nodes and attributes remain caller-owned.
|
|
507
349
|
*
|
|
508
|
-
* ## Example
|
|
509
|
-
*
|
|
510
|
-
* Import with `import { ColumnHeader } from "@typed/ui/Grid";` Extend the [Grid.makeState runnable
|
|
511
|
-
* setup](/reference/%40typed%2Fui%2FGrid%23makeState). Replace the linked program's final snapshot
|
|
512
|
-
* read with `ColumnHeader({ state, id: "day", rowId: "headers", columnIndex: 1, content: "Day" })`;
|
|
513
|
-
* render that Fx before the same Scope closes.
|
|
514
350
|
* @since 1.0.0
|
|
515
|
-
* @category
|
|
351
|
+
* @category Cells and headers
|
|
516
352
|
*/
|
|
517
353
|
export declare function ColumnHeader<const Options extends CellOptions, const Host extends HostResult = never>(options: Options, host?: Dom.HostOverride<Dom.RenderHostProps<Options, CellInternalProps<Options>>, Options["content"], Host>): import("./Dom/Types.js").HostComponent<Host | Options>;
|
|
518
354
|
/**
|
|
519
355
|
* Renders the Cell contract with the rowheader role.
|
|
520
356
|
*
|
|
521
357
|
* @remarks
|
|
522
|
-
* ## Why
|
|
523
|
-
*
|
|
524
|
-
* The component applies the family behavior while leaving callers free to supply a custom host
|
|
525
|
-
* through the shared DOM boundary.
|
|
526
|
-
*
|
|
527
|
-
* ## Ownership and lifetime
|
|
528
|
-
*
|
|
529
358
|
* The returned Fx installs DOM refs, native listeners, state subscriptions, and optional
|
|
530
359
|
* collection registrations only when rendered. The rendering Scope removes those resources;
|
|
531
360
|
* unrelated nodes and attributes remain caller-owned.
|
|
532
361
|
*
|
|
533
|
-
* ## Example
|
|
534
|
-
*
|
|
535
|
-
* Import with `import { RowHeader } from "@typed/ui/Grid";` Extend the [Grid.makeState runnable
|
|
536
|
-
* setup](/reference/%40typed%2Fui%2FGrid%23makeState). Replace the linked program's final snapshot
|
|
537
|
-
* read with `RowHeader({ state, id: "week-1", rowId: "week-1", columnIndex: 1, content: "Week 1"
|
|
538
|
-
* })`; render that Fx before the same Scope closes.
|
|
539
362
|
* @since 1.0.0
|
|
540
|
-
* @category
|
|
363
|
+
* @category Cells and headers
|
|
541
364
|
*/
|
|
542
365
|
export declare function RowHeader<const Options extends CellOptions, const Host extends HostResult = never>(options: Options, host?: Dom.HostOverride<Dom.RenderHostProps<Options, CellInternalProps<Options>>, Options["content"], Host>): import("./Dom/Types.js").HostComponent<Host | Options>;
|
|
543
366
|
/**
|
|
@@ -545,13 +368,9 @@ export declare function RowHeader<const Options extends CellOptions, const Host
|
|
|
545
368
|
* in-column, and Ctrl+Home/End reaches grid endpoints.
|
|
546
369
|
*
|
|
547
370
|
* @remarks
|
|
548
|
-
* ## Why
|
|
549
|
-
*
|
|
550
371
|
* Separating this deterministic policy from event wiring lets applications test it directly and
|
|
551
372
|
* reuse it in custom composites.
|
|
552
373
|
*
|
|
553
|
-
* ## Ownership and lifetime
|
|
554
|
-
*
|
|
555
374
|
* This is a synchronous calculation. It acquires no resources and does not mutate the input array,
|
|
556
375
|
* state, event, or DOM.
|
|
557
376
|
*
|
|
@@ -562,7 +381,7 @@ export declare function RowHeader<const Options extends CellOptions, const Host
|
|
|
562
381
|
* const nextId = Grid.moveActiveId([{ id: "a", value: { rowId: "r1", columnIndex: 1 } }], "a", { key: "ArrowRight", ctrlKey: false });
|
|
563
382
|
* ```
|
|
564
383
|
* @since 1.0.0
|
|
565
|
-
* @category
|
|
384
|
+
* @category Spatial navigation
|
|
566
385
|
*/
|
|
567
386
|
export declare function moveActiveId(items: readonly Collection.Item<CellPosition>[], activeId: string | null, event: Pick<KeyboardEvent, "key" | "ctrlKey">): string | undefined;
|
|
568
387
|
export {};
|
package/dist/Grid.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Grid.d.ts","sourceRoot":"","sources":["../src/Grid.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"Grid.d.ts","sourceRoot":"","sources":["../src/Grid.ts"],"names":[],"mappings":"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"}
|