@fusion.dev/helix 0.143.0 → 0.145.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/custom-elements.json +19817 -1238
- package/dist/accordion/item/accordion-item.css.js +14 -3
- package/dist/accordion/item/accordion-item.d.ts +2 -0
- package/dist/aura/palette.d.ts +38 -0
- package/dist/aura/palette.js +22 -0
- package/dist/aura/root/aura-root.css.js +24 -3
- package/dist/aura/root/aura-root.d.ts +42 -7
- package/dist/aura/root/aura-root.js +31 -25
- package/dist/badge/root/badge-root.css.js +35 -0
- package/dist/badge/root/badge-root.d.ts +16 -0
- package/dist/badge/root/badge-root.js +3 -0
- package/dist/blockquote/root/blockquote-root.css.js +5 -5
- package/dist/blockquote/root/blockquote-root.d.ts +5 -0
- package/dist/breadcrumbs/breadcrumb/breadcrumb.css.js +7 -7
- package/dist/breadcrumbs/breadcrumb/breadcrumb.d.ts +5 -0
- package/dist/breadcrumbs/root/breadcrumbs-root.css.js +1 -1
- package/dist/breadcrumbs/root/breadcrumbs-root.d.ts +3 -0
- package/dist/breadcrumbs/root/breadcrumbs-root.js +2 -0
- package/dist/button/root/button-root.css.js +38 -1
- package/dist/button/root/button-root.d.ts +5 -0
- package/dist/button/root/button-root.js +2 -1
- package/dist/button-group/root/button-group-root.d.ts +3 -0
- package/dist/callout/root/callout-root.css.js +69 -11
- package/dist/callout/root/callout-root.d.ts +25 -2
- package/dist/callout/root/callout-root.js +4 -0
- package/dist/canvas/root/canvas-root.css.js +1 -0
- package/dist/card/root/card-root.css.js +26 -1
- package/dist/card/root/card-root.d.ts +11 -0
- package/dist/carousel/root/carousel-root.css.js +17 -1
- package/dist/checkbox-group/root/checkbox-group-root.d.ts +2 -0
- package/dist/checkbox-group/root/checkbox-group-root.js +2 -0
- package/dist/code-block/root/code-block-root.css.js +23 -0
- package/dist/code-block/root/code-block-root.d.ts +15 -0
- package/dist/code-block/root/code-block-root.js +8 -0
- package/dist/color-picker/root/color-picker-root.css.js +64 -0
- package/dist/color-picker/root/color-picker-root.d.ts +2 -0
- package/dist/copy-button/root/copy-button-root.css.js +5 -0
- package/dist/data-table/root/data-table-root.css.js +63 -0
- package/dist/data-table/root/data-table-root.d.ts +1 -0
- package/dist/date-input/root/date-input-root.css.js +19 -0
- package/dist/date-input/root/date-input-root.d.ts +8 -0
- package/dist/date-input/root/date-input-root.js +2 -0
- package/dist/date-picker/root/date-picker-root.css.js +68 -0
- package/dist/date-picker/root/date-picker-root.d.ts +1 -0
- package/dist/description-list/item/description-list-item.css.js +11 -0
- package/dist/dialog/root/dialog-root.css.js +47 -0
- package/dist/divider/root/divider-root.css.js +8 -3
- package/dist/divider/root/divider-root.d.ts +17 -1
- package/dist/divider/root/divider-root.js +4 -0
- package/dist/drawer/root/drawer-root.css.js +28 -1
- package/dist/drilldown/item/drilldown-item.css.js +2 -1
- package/dist/drilldown/root/drilldown-root.css.js +2 -1
- package/dist/element-events.generated.js +66 -14
- package/dist/empty/root/empty-root.css.js +9 -9
- package/dist/empty/root/empty-root.d.ts +9 -0
- package/dist/file-input/root/file-input-root.js +2 -0
- package/dist/filter-input/root/filter-input-root.js +2 -0
- package/dist/flex/root/flex-root.css.js +134 -9
- package/dist/flex/root/flex-root.d.ts +51 -5
- package/dist/flex/root/flex-root.js +17 -1
- package/dist/grid/root/grid-root.css.js +114 -11
- package/dist/grid/root/grid-root.d.ts +37 -0
- package/dist/grid/root/grid-root.js +13 -1
- package/dist/heatmap/root/heatmap-root.css.js +33 -5
- package/dist/heatmap/root/heatmap-root.d.ts +4 -1
- package/dist/icon/index.d.ts +1 -0
- package/dist/icon/index.js +1 -0
- package/dist/icon/root/icon-root.d.ts +1 -1
- package/dist/icon/root/icon-root.js +1 -1
- package/dist/icon/root/index.d.ts +2 -0
- package/dist/icon/root/index.js +2 -0
- package/dist/icon-button/root/icon-button-root.css.js +37 -0
- package/dist/icon-button/root/icon-button-root.d.ts +4 -0
- package/dist/icon-button/root/icon-button-root.js +2 -1
- package/dist/input/root/input-root.css.js +3 -3
- package/dist/input/root/input-root.d.ts +3 -0
- package/dist/legend/root/legend-root.css.js +40 -13
- package/dist/legend/root/legend-root.d.ts +6 -0
- package/dist/legend/root/legend-root.js +1 -1
- package/dist/lightbox/root/lightbox-root.css.js +84 -0
- package/dist/lightbox/root/lightbox-root.d.ts +1 -0
- package/dist/list/item/list-item.css.js +21 -1
- package/dist/list/item/list-item.d.ts +3 -0
- package/dist/list/root/list-root.css.js +13 -1
- package/dist/loader/root/loader-root.css.js +10 -0
- package/dist/loader/root/loader-root.d.ts +3 -0
- package/dist/menu/index.d.ts +1 -0
- package/dist/menu/index.js +1 -0
- package/dist/menu/item/menu-item.css.js +15 -1
- package/dist/menu/item/menu-item.d.ts +3 -0
- package/dist/menu/item/menu-item.js +2 -0
- package/dist/menu/section/menu-section.css.d.ts +1 -0
- package/dist/menu/section/menu-section.css.js +14 -0
- package/dist/menu/section/menu-section.d.ts +24 -0
- package/dist/menu/section/menu-section.js +16 -0
- package/dist/meter/root/meter-root.css.js +23 -1
- package/dist/meter/root/meter-root.d.ts +5 -0
- package/dist/navigation/root/navigation-root.css.js +3 -2
- package/dist/navigation/root/navigation-root.d.ts +6 -0
- package/dist/notifications/notification/notification.css.js +5 -0
- package/dist/notifications/root/notifications-root.css.js +24 -1
- package/dist/notifications/root/notifications-root.d.ts +1 -0
- package/dist/number-input/root/number-input-root.css.js +3 -3
- package/dist/number-input/root/number-input-root.d.ts +3 -0
- package/dist/object-inspector/root/object-inspector-root.css.js +36 -1
- package/dist/object-inspector/root/object-inspector-root.d.ts +4 -1
- package/dist/object-inspector/root/object-inspector-root.js +2 -1
- package/dist/orb/index.d.ts +1 -1
- package/dist/orb/index.js +1 -1
- package/dist/orb/root/orb-root.d.ts +31 -5
- package/dist/orb/root/orb-root.js +33 -4
- package/dist/outline/root/outline-root.css.js +10 -0
- package/dist/outline/root/outline-root.d.ts +7 -0
- package/dist/pin-input/root/pin-input-root.css.js +12 -5
- package/dist/pin-input/root/pin-input-root.d.ts +5 -0
- package/dist/popover/root/popover-root.css.js +36 -0
- package/dist/popover/root/popover-root.d.ts +1 -0
- package/dist/progress/root/progress-root.css.js +22 -1
- package/dist/progress/root/progress-root.d.ts +5 -0
- package/dist/quote/root/quote-root.css.js +1 -1
- package/dist/quote/root/quote-root.d.ts +1 -0
- package/dist/sandbox/frame.d.ts +63 -0
- package/dist/sandbox/frame.js +132 -0
- package/dist/sandbox/index.d.ts +1 -0
- package/dist/sandbox/index.js +1 -0
- package/dist/sandbox/levels.d.ts +10 -0
- package/dist/sandbox/levels.js +5 -0
- package/dist/sandbox/root/sandbox-root.d.ts +3 -0
- package/dist/sandbox/root/sandbox-root.js +13 -3
- package/dist/sandbox/source/sandbox-source.d.ts +1 -0
- package/dist/sandbox/source/sandbox-source.js +7 -3
- package/dist/sandbox/terminal/sandbox-terminal.css.js +39 -0
- package/dist/sandbox/terminal/sandbox-terminal.d.ts +42 -1
- package/dist/sandbox/terminal/sandbox-terminal.js +47 -3
- package/dist/scroll-area/root/scroll-area-root.css.js +83 -1
- package/dist/scroll-area/root/scroll-area-root.d.ts +6 -0
- package/dist/shared/chart/tooltip.css.js +25 -2
- package/dist/shared/field/field-segments.css.d.ts +1 -0
- package/dist/shared/field/field-segments.css.js +40 -0
- package/dist/skeleton/root/skeleton-root.css.js +56 -5
- package/dist/skeleton/root/skeleton-root.d.ts +17 -1
- package/dist/skeleton/root/skeleton-root.js +3 -0
- package/dist/skip-link/root/skip-link-root.css.js +8 -8
- package/dist/skip-link/root/skip-link-root.d.ts +9 -0
- package/dist/speed-dial/item/speed-dial-item.css.js +11 -4
- package/dist/speed-dial/item/speed-dial-item.d.ts +4 -0
- package/dist/speed-dial/root/speed-dial-root.css.js +7 -3
- package/dist/speed-dial/root/speed-dial-root.d.ts +9 -0
- package/dist/speed-dial/root/speed-dial-root.js +4 -0
- package/dist/stat/root/stat-root.css.js +7 -7
- package/dist/stat/root/stat-root.d.ts +8 -0
- package/dist/steps/step/step.js +2 -1
- package/dist/switch/root/switch-root.css.js +13 -5
- package/dist/switch/root/switch-root.d.ts +25 -1
- package/dist/switch/root/switch-root.js +7 -0
- package/dist/table/root/table-root.css.js +18 -0
- package/dist/table/root/table-root.d.ts +6 -0
- package/dist/table/root/table-root.js +2 -0
- package/dist/table/row/table-row.css.js +18 -0
- package/dist/table/row/table-row.d.ts +2 -0
- package/dist/table/row/table-row.js +2 -0
- package/dist/tabs/panel/tab-panel.css.js +5 -1
- package/dist/tabs/root/tabs-root.css.js +56 -1
- package/dist/tabs/tab/tab.css.js +5 -1
- package/dist/tag/group/tag-group.css.d.ts +1 -0
- package/dist/tag/group/tag-group.css.js +6 -0
- package/dist/tag/group/tag-group.d.ts +25 -0
- package/dist/tag/group/tag-group.js +16 -0
- package/dist/tag/index.d.ts +1 -0
- package/dist/tag/index.js +1 -0
- package/dist/tag/root/tag-root.css.js +50 -0
- package/dist/tag/root/tag-root.d.ts +4 -0
- package/dist/text/clamp.d.ts +8 -0
- package/dist/text/clamp.js +1 -0
- package/dist/text/root/text-root.css.js +85 -45
- package/dist/text/root/text-root.d.ts +48 -7
- package/dist/text/root/text-root.js +17 -11
- package/dist/textarea/root/textarea-root.css.js +12 -4
- package/dist/textarea/root/textarea-root.d.ts +4 -0
- package/dist/time-input/root/time-input-root.css.js +19 -0
- package/dist/time-input/root/time-input-root.d.ts +8 -0
- package/dist/time-input/root/time-input-root.js +2 -0
- package/dist/timeline/group/timeline-group.css.d.ts +1 -0
- package/dist/timeline/group/timeline-group.css.js +32 -0
- package/dist/timeline/group/timeline-group.d.ts +25 -0
- package/dist/timeline/group/timeline-group.js +16 -0
- package/dist/timeline/index.d.ts +1 -0
- package/dist/timeline/index.js +1 -0
- package/dist/timeline/item/timeline-item.css.js +43 -16
- package/dist/timeline/root/timeline-root.css.js +56 -0
- package/dist/timeline/root/timeline-root.d.ts +26 -0
- package/dist/timeline/root/timeline-root.js +7 -0
- package/dist/toast/item/toast-item.css.js +16 -0
- package/dist/toggle/group/toggle-group.css.js +16 -0
- package/dist/toolbar/root/toolbar-root.css.js +3 -0
- package/dist/toolbar/root/toolbar-root.d.ts +3 -0
- package/dist/tour/root/tour-root.css.js +8 -0
- package/dist/tour/stop/tour-stop.css.js +32 -0
- package/dist/tree/item/tree-item.css.js +72 -0
- package/dist/tree/item/tree-item.d.ts +10 -0
- package/dist/trend/root/trend-root.css.js +12 -5
- package/dist/trend/root/trend-root.d.ts +6 -1
- package/dist/video/root/video-root.css.js +6 -0
- package/dist/video/root/video-root.d.ts +3 -0
- package/dist/virtual-list/root/virtual-list-root.css.js +5 -0
- package/dist/virtual-list/root/virtual-list-root.d.ts +4 -3
- package/lint.json +1 -1
- package/package.json +6 -6
- package/types/jsx.d.ts +8620 -813
- package/types/svelte.d.ts +3 -0
- package/types/vue.d.ts +2372 -213
package/types/vue.d.ts
CHANGED
|
@@ -82,6 +82,7 @@ import type {
|
|
|
82
82
|
HelixMegamenu,
|
|
83
83
|
HelixMenuItem,
|
|
84
84
|
HelixMenu,
|
|
85
|
+
HelixMenuSection,
|
|
85
86
|
HelixMeter,
|
|
86
87
|
HelixNavigation,
|
|
87
88
|
HelixNotificationGroup,
|
|
@@ -132,11 +133,13 @@ import type {
|
|
|
132
133
|
HelixTabPanel,
|
|
133
134
|
HelixTabs,
|
|
134
135
|
HelixTab,
|
|
136
|
+
HelixTagGroup,
|
|
135
137
|
HelixTag,
|
|
136
138
|
HelixText,
|
|
137
139
|
HelixTextarea,
|
|
138
140
|
HelixTimeInput,
|
|
139
141
|
HelixTimePicker,
|
|
142
|
+
HelixTimelineGroup,
|
|
140
143
|
HelixTimelineItem,
|
|
141
144
|
HelixTimeline,
|
|
142
145
|
HelixToastItem,
|
|
@@ -160,6 +163,7 @@ import type {
|
|
|
160
163
|
HelixBeforeOpenEvent,
|
|
161
164
|
HelixDismissEvent,
|
|
162
165
|
HelixScrolledEvent,
|
|
166
|
+
HelixAuraFallbackEvent,
|
|
163
167
|
HelixBeforeMoveEvent,
|
|
164
168
|
HelixBeforeReconnectEvent,
|
|
165
169
|
HelixBeforeRelabelEvent,
|
|
@@ -175,6 +179,7 @@ import type {
|
|
|
175
179
|
HelixSelectEvent,
|
|
176
180
|
HelixActivateEvent,
|
|
177
181
|
HelixSendEvent,
|
|
182
|
+
HelixTypingEvent,
|
|
178
183
|
HelixBeforePinEvent,
|
|
179
184
|
HelixHistoryEvent,
|
|
180
185
|
HelixPinEvent,
|
|
@@ -185,13 +190,17 @@ import type {
|
|
|
185
190
|
HelixSampleStartEvent,
|
|
186
191
|
HelixCreateEvent,
|
|
187
192
|
HelixFilterEvent,
|
|
193
|
+
HelixCopyErrorEvent,
|
|
194
|
+
HelixExpandEvent,
|
|
188
195
|
HelixFilteredEvent,
|
|
196
|
+
HelixLoadMoreEvent,
|
|
189
197
|
HelixNavigateEvent,
|
|
190
198
|
HelixReorderEvent,
|
|
191
199
|
HelixReorderedEvent,
|
|
192
200
|
HelixSelectedEvent,
|
|
193
201
|
HelixSortEvent,
|
|
194
202
|
HelixSortedEvent,
|
|
203
|
+
HelixRejectEvent,
|
|
195
204
|
HelixFacetEvent,
|
|
196
205
|
HelixBeforeActivateEvent,
|
|
197
206
|
HelixGraphFilterEvent,
|
|
@@ -202,7 +211,9 @@ import type {
|
|
|
202
211
|
HelixGraphSignalEvent,
|
|
203
212
|
HelixGraphZoomEvent,
|
|
204
213
|
HelixResizeEvent,
|
|
214
|
+
HelixClearEvent,
|
|
205
215
|
HelixShortcutEvent,
|
|
216
|
+
HelixActionEvent,
|
|
206
217
|
HelixMapPartChangeEvent,
|
|
207
218
|
HelixMapClusterEvent,
|
|
208
219
|
HelixMapPanEvent,
|
|
@@ -210,6 +221,7 @@ import type {
|
|
|
210
221
|
HelixMapRotateEvent,
|
|
211
222
|
HelixMapTiltEvent,
|
|
212
223
|
HelixMapZoomEvent,
|
|
224
|
+
HelixToggleEvent,
|
|
213
225
|
HelixReadEvent,
|
|
214
226
|
HelixCompleteEvent,
|
|
215
227
|
HelixConsoleEvent,
|
|
@@ -217,13 +229,19 @@ import type {
|
|
|
217
229
|
HelixBeforePanelResizeEvent,
|
|
218
230
|
HelixBeforeSplitEvent,
|
|
219
231
|
HelixCaretEvent,
|
|
232
|
+
HelixEditEvent,
|
|
233
|
+
HelixPanelResizeEvent,
|
|
234
|
+
HelixSplitEvent,
|
|
220
235
|
HelixBeforeCollapseEvent,
|
|
221
236
|
HelixBeforeResizeEvent,
|
|
222
237
|
HelixCollapseEvent,
|
|
223
238
|
HelixResizedEvent,
|
|
224
239
|
HelixTourAskEvent,
|
|
240
|
+
HelixLoadEvent,
|
|
241
|
+
HelixEndEvent,
|
|
225
242
|
HelixNextEvent,
|
|
226
243
|
HelixPreviousEvent,
|
|
244
|
+
HelixRangeChangeEvent,
|
|
227
245
|
} from "@fusion.dev/helix";
|
|
228
246
|
import type { HTMLAttributes, PublicProps, EmitFn, EmitsToProps } from "vue";
|
|
229
247
|
|
|
@@ -328,6 +346,22 @@ too. */
|
|
|
328
346
|
Unset takes the accordion's `heading-level`, and 3 where that is unset
|
|
329
347
|
too. */
|
|
330
348
|
headingLevel?: (HelixAccordionItem["headingLevel"]) | undefined;
|
|
349
|
+
/** Whether find in page searches the section while it is closed, and opens it
|
|
350
|
+
on a match.
|
|
351
|
+
|
|
352
|
+
Off by default. A closed section is then `hidden="until-found"`, which
|
|
353
|
+
hides through `content-visibility`, so a stylesheet that animates the
|
|
354
|
+
section closed shows an empty box for the length of that animation. The
|
|
355
|
+
accordion's own `hidden-until-found` turns it on for every section. */
|
|
356
|
+
"hidden-until-found"?: (HelixAccordionItem["hiddenUntilFound"]) | undefined;
|
|
357
|
+
/** Whether find in page searches the section while it is closed, and opens it
|
|
358
|
+
on a match.
|
|
359
|
+
|
|
360
|
+
Off by default. A closed section is then `hidden="until-found"`, which
|
|
361
|
+
hides through `content-visibility`, so a stylesheet that animates the
|
|
362
|
+
section closed shows an empty box for the length of that animation. The
|
|
363
|
+
accordion's own `hidden-until-found` turns it on for every section. */
|
|
364
|
+
hiddenUntilFound?: (HelixAccordionItem["hiddenUntilFound"]) | undefined;
|
|
331
365
|
/** A group name. Opening an item closes the other items with the same name,
|
|
332
366
|
as `<details name>` does.
|
|
333
367
|
|
|
@@ -388,6 +422,14 @@ Unset is 3. An item's own `heading-level` wins over this. */
|
|
|
388
422
|
|
|
389
423
|
Unset is 3. An item's own `heading-level` wins over this. */
|
|
390
424
|
headingLevel?: (HelixAccordion["headingLevel"]) | undefined;
|
|
425
|
+
/** Whether find in page searches every closed section, and opens the one it
|
|
426
|
+
matches in. Each item's own `hidden-until-found` turns it on for that item
|
|
427
|
+
alone. */
|
|
428
|
+
"hidden-until-found"?: (HelixAccordion["hiddenUntilFound"]) | undefined;
|
|
429
|
+
/** Whether find in page searches every closed section, and opens the one it
|
|
430
|
+
matches in. Each item's own `hidden-until-found` turns it on for that item
|
|
431
|
+
alone. */
|
|
432
|
+
hiddenUntilFound?: (HelixAccordion["hiddenUntilFound"]) | undefined;
|
|
391
433
|
/** How many sections may be open at once.
|
|
392
434
|
|
|
393
435
|
Absent is `multiple`, so nothing closes unexpectedly and the default costs
|
|
@@ -447,6 +489,12 @@ derive one rather than dash-casing it, so this would otherwise be
|
|
|
447
489
|
reachable only as `dismisslabel`, which nobody would guess and no linter
|
|
448
490
|
would catch. */
|
|
449
491
|
dismissLabel?: (HelixAnnouncement["dismissLabel"]) | undefined;
|
|
492
|
+
/** How long the announcement stays, in milliseconds, before it sends
|
|
493
|
+
`helix-dismiss`. When it is not set, it stays until it is dismissed.
|
|
494
|
+
|
|
495
|
+
Read once when the announcement is first rendered, as `Toast` reads its
|
|
496
|
+
own. The clock stops while the pointer or focus is on the announcement. */
|
|
497
|
+
duration?: (HelixAnnouncement["duration"]) | undefined;
|
|
450
498
|
/** The band's color.
|
|
451
499
|
|
|
452
500
|
Paint only: unlike `Callout`, no value here draws a mark, changes the label,
|
|
@@ -471,7 +519,7 @@ axes, which is the test the registry answers to. */
|
|
|
471
519
|
};
|
|
472
520
|
|
|
473
521
|
export type HelixAnnouncementVueEvents = {
|
|
474
|
-
/** The dismiss button was pressed. The announcement does not remove itself, so remove it in response. Cancelable. */
|
|
522
|
+
/** The dismiss button was pressed, or `duration` ran out. The announcement does not remove itself, so remove it in response. Cancelable. */
|
|
475
523
|
"helix-dismiss": HelixAnnouncementHelixDismissElementEvent;
|
|
476
524
|
};
|
|
477
525
|
|
|
@@ -634,6 +682,12 @@ fills the height and the bands are shares of it. */
|
|
|
634
682
|
|
|
635
683
|
export type HelixAreaChartVueEvents = {};
|
|
636
684
|
|
|
685
|
+
/** `HelixAura` component event */
|
|
686
|
+
export type HelixAuraElementEvent<E = Event> = TypedEvent<HelixAura, E>;
|
|
687
|
+
/** `helix-aura-fallback` event type */
|
|
688
|
+
export type HelixAuraHelixAuraFallbackElementEvent =
|
|
689
|
+
HelixAuraElementEvent<HelixAuraFallbackEvent>;
|
|
690
|
+
|
|
637
691
|
export type HelixAuraVueProps = {
|
|
638
692
|
/** How soft the falloff is, `0` tight and `1` diffuse. */
|
|
639
693
|
bloom?: (HelixAura["bloom"]) | undefined;
|
|
@@ -743,7 +797,10 @@ states. */
|
|
|
743
797
|
variant?: (HelixAura["variant"]) | undefined;
|
|
744
798
|
};
|
|
745
799
|
|
|
746
|
-
export type HelixAuraVueEvents = {
|
|
800
|
+
export type HelixAuraVueEvents = {
|
|
801
|
+
/** Fired each time the aura stops drawing its shader and shows its gradient, with the reason. */
|
|
802
|
+
"helix-aura-fallback": HelixAuraHelixAuraFallbackElementEvent;
|
|
803
|
+
};
|
|
747
804
|
|
|
748
805
|
export type HelixAvatarGroupVueProps = {
|
|
749
806
|
/** Accessible name for the set, such as "Reviewers". */
|
|
@@ -791,6 +848,24 @@ for it is the one the registry already has. */
|
|
|
791
848
|
shape?: (HelixAvatar["shape"]) | undefined;
|
|
792
849
|
/** Edge length of the avatar. */
|
|
793
850
|
size?: (HelixAvatar["size"]) | undefined;
|
|
851
|
+
/** How long, in milliseconds, a picture may take before the initials stand
|
|
852
|
+
in for it while it loads.
|
|
853
|
+
|
|
854
|
+
Absent keeps the picture's place empty until it arrives or fails. Set,
|
|
855
|
+
the initials show once the wait is over and the picture
|
|
856
|
+
replaces them when it arrives, so a slow connection shows who it is
|
|
857
|
+
without a cached picture flashing initials first. Radix's `delayMs` is the
|
|
858
|
+
same idea. */
|
|
859
|
+
"fallback-delay"?: (HelixAvatar["fallbackDelay"] | `${number}`) | undefined;
|
|
860
|
+
/** How long, in milliseconds, a picture may take before the initials stand
|
|
861
|
+
in for it while it loads.
|
|
862
|
+
|
|
863
|
+
Absent keeps the picture's place empty until it arrives or fails. Set,
|
|
864
|
+
the initials show once the wait is over and the picture
|
|
865
|
+
replaces them when it arrives, so a slow connection shows who it is
|
|
866
|
+
without a cached picture flashing initials first. Radix's `delayMs` is the
|
|
867
|
+
same idea. */
|
|
868
|
+
fallbackDelay?: (HelixAvatar["fallbackDelay"]) | undefined;
|
|
794
869
|
/** Name of the person or entity.
|
|
795
870
|
|
|
796
871
|
Used for the label and the initials. */
|
|
@@ -820,6 +895,13 @@ export type HelixAvatarVueEvents = {
|
|
|
820
895
|
};
|
|
821
896
|
|
|
822
897
|
export type HelixBadgeVueProps = {
|
|
898
|
+
/** Where the mark sits: a corner, `top-start`, `bottom-end` or `bottom-start`,
|
|
899
|
+
or `inline`, in the line after the content.
|
|
900
|
+
|
|
901
|
+
Absent is the top end, the corner a count is looked for in. `inline` is
|
|
902
|
+
for a badge inside a control, where its count is read as part of the
|
|
903
|
+
control's name. */
|
|
904
|
+
placement?: (HelixBadge["placement"]) | undefined;
|
|
823
905
|
/** What the mark means. The stylesheet picks the fill from it.
|
|
824
906
|
|
|
825
907
|
**`Tag`'s vocabulary, because a badge is the same kind of thing.** Both are
|
|
@@ -1122,6 +1204,12 @@ export type HelixBreadcrumbsVueProps = {
|
|
|
1122
1204
|
/** The landmark's name, read by screen readers. An `aria-label` on the host
|
|
1123
1205
|
wins over it. */
|
|
1124
1206
|
label?: (HelixBreadcrumbs["label"]) | undefined;
|
|
1207
|
+
/** The trail as data, drawn as crumbs before any you slot. The last item is the
|
|
1208
|
+
current page.
|
|
1209
|
+
|
|
1210
|
+
React Aria's `items`. A property only: a trail is built by script, and an
|
|
1211
|
+
attribute would put the whole path into the markup twice. */
|
|
1212
|
+
items?: (HelixBreadcrumbs["items"]) | undefined;
|
|
1125
1213
|
};
|
|
1126
1214
|
|
|
1127
1215
|
export type HelixBreadcrumbsVueEvents = {};
|
|
@@ -1285,6 +1373,22 @@ Lives here rather than only on `IconButton` so the two share one render.
|
|
|
1285
1373
|
An icon-only button without it is a control a screen reader announces as
|
|
1286
1374
|
"button" and nothing else. */
|
|
1287
1375
|
label?: (HelixButton["label"]) | undefined;
|
|
1376
|
+
/** Whether the action the button started is still running.
|
|
1377
|
+
|
|
1378
|
+
A pending button keeps focus and stays in the tab order, and refuses every
|
|
1379
|
+
press: a click, Enter and Space, and Enter in a field of its form. The
|
|
1380
|
+
click does not reach your listeners. The inner control carries
|
|
1381
|
+
`aria-busy` and `aria-disabled`, and when the button becomes pending while
|
|
1382
|
+
it has focus, a reader hears `pending-label`. The styled button draws a
|
|
1383
|
+
turning ring over its words.
|
|
1384
|
+
|
|
1385
|
+
`disabled` takes the button out of reach. Use `pending` for the wait after
|
|
1386
|
+
a press, so focus stays where the reader left it. */
|
|
1387
|
+
pending?: (HelixButton["pending"]) | undefined;
|
|
1388
|
+
/** What a reader hears when the button becomes pending while it has focus. */
|
|
1389
|
+
"pending-label"?: (HelixButton["pendingLabel"]) | undefined;
|
|
1390
|
+
/** What a reader hears when the button becomes pending while it has focus. */
|
|
1391
|
+
pendingLabel?: (HelixButton["pendingLabel"]) | undefined;
|
|
1288
1392
|
/** What activating the button does to its form. */
|
|
1289
1393
|
type?: (HelixButton["type"]) | undefined;
|
|
1290
1394
|
/** The value this button submits under its own `name`, as a native submit
|
|
@@ -1384,7 +1488,40 @@ invoker without an id in the same tree needs. */
|
|
|
1384
1488
|
|
|
1385
1489
|
export type HelixButtonVueEvents = {};
|
|
1386
1490
|
|
|
1491
|
+
/** `HelixCallout` component event */
|
|
1492
|
+
export type HelixCalloutElementEvent<E = Event> = TypedEvent<HelixCallout, E>;
|
|
1493
|
+
/** `helix-dismiss` event type */
|
|
1494
|
+
export type HelixCalloutHelixDismissElementEvent =
|
|
1495
|
+
HelixCalloutElementEvent<HelixDismissEvent>;
|
|
1496
|
+
|
|
1387
1497
|
export type HelixCalloutVueProps = {
|
|
1498
|
+
/** Where the callout's box ends, whatever its tone.
|
|
1499
|
+
|
|
1500
|
+
Absent, or `filled`, is the tint with the bar, the resting look.
|
|
1501
|
+
`outlined` draws the tone at the edge with no fill, and `plain` keeps only
|
|
1502
|
+
the bar and the mark, for an aside in running prose. The bar stays in
|
|
1503
|
+
every one, being what says the tone where the hue is not seen.
|
|
1504
|
+
|
|
1505
|
+
Web Awesome calls this `appearance`. It is `separation` here, as on
|
|
1506
|
+
`Announcement` and `Card`, since a box's edge and its meaning are two
|
|
1507
|
+
choices. */
|
|
1508
|
+
separation?: (HelixCallout["separation"]) | undefined;
|
|
1509
|
+
/** Whether the element shows a control that dismisses it. */
|
|
1510
|
+
dismissible?: (HelixCallout["dismissible"]) | undefined;
|
|
1511
|
+
/** The dismiss control's label, read by screen readers.
|
|
1512
|
+
|
|
1513
|
+
`attribute` is spelled out because Lit lowercases a property name to
|
|
1514
|
+
derive one rather than dash-casing it, so this would otherwise be
|
|
1515
|
+
reachable only as `dismisslabel`, which nobody would guess and no linter
|
|
1516
|
+
would catch. */
|
|
1517
|
+
"dismiss-label"?: (HelixCallout["dismissLabel"]) | undefined;
|
|
1518
|
+
/** The dismiss control's label, read by screen readers.
|
|
1519
|
+
|
|
1520
|
+
`attribute` is spelled out because Lit lowercases a property name to
|
|
1521
|
+
derive one rather than dash-casing it, so this would otherwise be
|
|
1522
|
+
reachable only as `dismisslabel`, which nobody would guess and no linter
|
|
1523
|
+
would catch. */
|
|
1524
|
+
dismissLabel?: (HelixCallout["dismissLabel"]) | undefined;
|
|
1388
1525
|
/** What kind of attention the passage needs.
|
|
1389
1526
|
|
|
1390
1527
|
`tone` is the axis for what a thing means, and this is a subset of it: a
|
|
@@ -1404,7 +1541,10 @@ Absent is the English for the tone: "Error", "Information", "Note",
|
|
|
1404
1541
|
toneLabel?: (HelixCallout["toneLabel"]) | undefined;
|
|
1405
1542
|
};
|
|
1406
1543
|
|
|
1407
|
-
export type HelixCalloutVueEvents = {
|
|
1544
|
+
export type HelixCalloutVueEvents = {
|
|
1545
|
+
/** The dismiss button was pressed. The callout does not remove itself, so remove it in response. Cancelable. */
|
|
1546
|
+
"helix-dismiss": HelixCalloutHelixDismissElementEvent;
|
|
1547
|
+
};
|
|
1408
1548
|
|
|
1409
1549
|
export type HelixCanvasEdgeVueProps = {
|
|
1410
1550
|
/** The name of the card the connection starts from. */
|
|
@@ -2048,6 +2188,10 @@ twice what this says once.
|
|
|
2048
2188
|
Reflected and undefaulted, so a card that has not asked reads as a card
|
|
2049
2189
|
with no attribute on it and the stylesheet only describes the departure. */
|
|
2050
2190
|
mediaPlacement?: (HelixCard["mediaPlacement"]) | undefined;
|
|
2191
|
+
/** */
|
|
2192
|
+
"aria-labelledby"?: unknown;
|
|
2193
|
+
/** */
|
|
2194
|
+
"aria-label"?: unknown;
|
|
2051
2195
|
};
|
|
2052
2196
|
|
|
2053
2197
|
export type HelixCardVueEvents = {};
|
|
@@ -2319,6 +2463,18 @@ read out in English. */
|
|
|
2319
2463
|
label?: (HelixCarousel["label"]) | undefined;
|
|
2320
2464
|
/** Whether moving past either end wraps to the other. */
|
|
2321
2465
|
loop?: (HelixCarousel["loop"]) | undefined;
|
|
2466
|
+
/** Whether a mouse can drag the track from slide to slide.
|
|
2467
|
+
|
|
2468
|
+
Off unless asked for, because a press on a slide is then the start of a
|
|
2469
|
+
drag, and text in a slide can no longer be selected with the mouse. A drag
|
|
2470
|
+
of a few pixels or less is still a press. */
|
|
2471
|
+
"mouse-drag"?: (HelixCarousel["mouseDrag"]) | undefined;
|
|
2472
|
+
/** Whether a mouse can drag the track from slide to slide.
|
|
2473
|
+
|
|
2474
|
+
Off unless asked for, because a press on a slide is then the start of a
|
|
2475
|
+
drag, and text in a slide can no longer be selected with the mouse. A drag
|
|
2476
|
+
of a few pixels or less is still a press. */
|
|
2477
|
+
mouseDrag?: (HelixCarousel["mouseDrag"]) | undefined;
|
|
2322
2478
|
/** The name of the control that moves to the next slide. */
|
|
2323
2479
|
"next-label"?: (HelixCarousel["nextLabel"]) | undefined;
|
|
2324
2480
|
/** The name of the control that moves to the next slide. */
|
|
@@ -2460,6 +2616,14 @@ case is the absent attribute, and the styles read it that way. */
|
|
|
2460
2616
|
"previous-label"?: (HelixCarousel["previousLabel"]) | undefined;
|
|
2461
2617
|
/** The name of the control that moves to the previous slide. */
|
|
2462
2618
|
previousLabel?: (HelixCarousel["previousLabel"]) | undefined;
|
|
2619
|
+
/** The word screen readers announce in place of the carousel's role, set as
|
|
2620
|
+
`aria-roledescription`. Translate it with the rest of your text, or empty
|
|
2621
|
+
it to leave the role as `group`. */
|
|
2622
|
+
"role-label"?: (HelixCarousel["roleLabel"]) | undefined;
|
|
2623
|
+
/** The word screen readers announce in place of the carousel's role, set as
|
|
2624
|
+
`aria-roledescription`. Translate it with the rest of your text, or empty
|
|
2625
|
+
it to leave the role as `group`. */
|
|
2626
|
+
roleLabel?: (HelixCarousel["roleLabel"]) | undefined;
|
|
2463
2627
|
/** The name of each slide, with `{index}` and `{count}` filled in. */
|
|
2464
2628
|
"slide-label"?: (HelixCarousel["slideLabel"]) | undefined;
|
|
2465
2629
|
/** The name of each slide, with `{index}` and `{count}` filled in. */
|
|
@@ -2495,10 +2659,11 @@ export type HelixChatComposerElementEvent<E = Event> = TypedEvent<
|
|
|
2495
2659
|
/** `helix-send` event type */
|
|
2496
2660
|
export type HelixChatComposerHelixSendElementEvent =
|
|
2497
2661
|
HelixChatComposerElementEvent<HelixSendEvent>;
|
|
2662
|
+
/** `helix-typing` event type */
|
|
2663
|
+
export type HelixChatComposerHelixTypingElementEvent =
|
|
2664
|
+
HelixChatComposerElementEvent<HelixTypingEvent>;
|
|
2498
2665
|
|
|
2499
2666
|
export type HelixChatComposerVueProps = {
|
|
2500
|
-
/** Whether the composer blocks input, such as while a turn is being sent. */
|
|
2501
|
-
disabled?: (HelixChatComposer["disabled"]) | undefined;
|
|
2502
2667
|
/** The field's name, read by screen readers. */
|
|
2503
2668
|
label?: (HelixChatComposer["label"]) | undefined;
|
|
2504
2669
|
/** Placeholder text shown in an empty field. */
|
|
@@ -2525,16 +2690,50 @@ button only.
|
|
|
2525
2690
|
`button` is what a composer holding several paragraphs wants, where Enter
|
|
2526
2691
|
has to mean a new line and nothing else. */
|
|
2527
2692
|
submitOn?: (HelixChatComposer["submitOn"]) | undefined;
|
|
2693
|
+
/** How long after the last keystroke the user still counts as typing, in
|
|
2694
|
+
milliseconds. */
|
|
2695
|
+
"typing-timeout"?: (HelixChatComposer["typingTimeout"] | `${number}`) | undefined;
|
|
2696
|
+
/** How long after the last keystroke the user still counts as typing, in
|
|
2697
|
+
milliseconds. */
|
|
2698
|
+
typingTimeout?: (HelixChatComposer["typingTimeout"]) | undefined;
|
|
2528
2699
|
/** The text the user has written.
|
|
2529
2700
|
|
|
2530
2701
|
It follows typing, so reading it gives the draft. Set it to seed a draft or
|
|
2531
2702
|
to replace the one in the field, and set it to `''` to clear it. */
|
|
2532
2703
|
value?: (HelixChatComposer["value"]) | undefined;
|
|
2704
|
+
/** Whether the control is disabled and cannot be used.
|
|
2705
|
+
|
|
2706
|
+
Reflected, because the styled tier selects on it, and mirrored to
|
|
2707
|
+
`aria-disabled` rather than removing the element from the accessibility
|
|
2708
|
+
tree, so a screen reader can still announce that the control exists.
|
|
2709
|
+
|
|
2710
|
+
The mirror itself is in `willUpdate` below, here rather than in each
|
|
2711
|
+
control, because here is where `disabled` is. */
|
|
2712
|
+
disabled?: (HelixChatComposer["disabled"]) | undefined;
|
|
2713
|
+
/** The name the control's value is submitted under.
|
|
2714
|
+
|
|
2715
|
+
**Reflected, and it is the exception to "reflect only what CSS selects
|
|
2716
|
+
on".** The platform builds a form's entry list from the `name` *content
|
|
2717
|
+
attribute*, not from the property, so a control named through the property
|
|
2718
|
+
submitted under no name at all and was silently dropped. Measured: two
|
|
2719
|
+
inputs in one form, one named by attribute and one by property, and the
|
|
2720
|
+
form carried a single entry.
|
|
2721
|
+
|
|
2722
|
+
Safe for a React consumer, which is what the rule is protecting: React
|
|
2723
|
+
renders a custom element's props as attributes on the server, so the name
|
|
2724
|
+
is already in the markup being hydrated and reflecting it writes what is
|
|
2725
|
+
there. It is only a change to the markup when a consumer assigns it
|
|
2726
|
+
imperatively later, and nothing is hydrating by then.
|
|
2727
|
+
|
|
2728
|
+
Here rather than on each control. */
|
|
2729
|
+
name?: (HelixChatComposer["name"]) | undefined;
|
|
2533
2730
|
};
|
|
2534
2731
|
|
|
2535
2732
|
export type HelixChatComposerVueEvents = {
|
|
2536
2733
|
/** Fired when the user sends their turn, and cancelable. */
|
|
2537
2734
|
"helix-send": HelixChatComposerHelixSendElementEvent;
|
|
2735
|
+
/** The user started or stopped writing, with `typing` saying which, as the composer's `typing` does. */
|
|
2736
|
+
"helix-typing": HelixChatComposerHelixTypingElementEvent;
|
|
2538
2737
|
/** The user changed the text. Read it from `value`, for a typing indicator or a saved draft. Sent on the composer and does not bubble. */
|
|
2539
2738
|
input: HelixChatComposerElementEvent;
|
|
2540
2739
|
};
|
|
@@ -2579,6 +2778,18 @@ participants is the ordinary case for anything worth building this for.
|
|
|
2579
2778
|
`me` and `them` are the conventional values and the stylesheet knows them;
|
|
2580
2779
|
anything else is a name the consumer styles. */
|
|
2581
2780
|
author?: (HelixChatMessage["author"]) | undefined;
|
|
2781
|
+
/** The author's name, as a screen reader says it at the start of the turn,
|
|
2782
|
+
such as "Support" or "Ada Lovelace".
|
|
2783
|
+
|
|
2784
|
+
Empty reads "You" for `me`, the `author` itself where it is a name, and
|
|
2785
|
+
nothing for `them`. */
|
|
2786
|
+
"author-label"?: (HelixChatMessage["authorLabel"]) | undefined;
|
|
2787
|
+
/** The author's name, as a screen reader says it at the start of the turn,
|
|
2788
|
+
such as "Support" or "Ada Lovelace".
|
|
2789
|
+
|
|
2790
|
+
Empty reads "You" for `me`, the `author` itself where it is a name, and
|
|
2791
|
+
nothing for `them`. */
|
|
2792
|
+
authorLabel?: (HelixChatMessage["authorLabel"]) | undefined;
|
|
2582
2793
|
/** Label for a message that did not send. */
|
|
2583
2794
|
"failed-label"?: (HelixChatMessage["failedLabel"]) | undefined;
|
|
2584
2795
|
/** Label for a message that did not send. */
|
|
@@ -2670,6 +2881,18 @@ only the consumer knows whether the server has anything older. */
|
|
|
2670
2881
|
historyText?: (HelixChat["historyText"]) | undefined;
|
|
2671
2882
|
/** The conversation's name, read by screen readers. */
|
|
2672
2883
|
label?: (HelixChat["label"]) | undefined;
|
|
2884
|
+
/** The word a screen reader says for `me` when it names a turn. */
|
|
2885
|
+
"me-label"?: (HelixChat["meLabel"]) | undefined;
|
|
2886
|
+
/** The word a screen reader says for `me` when it names a turn. */
|
|
2887
|
+
meLabel?: (HelixChat["meLabel"]) | undefined;
|
|
2888
|
+
/** The name a screen reader gives a turn with both an author and a time.
|
|
2889
|
+
`{author}` is who wrote it and `{time}` is when, as the turn shows it. A
|
|
2890
|
+
turn with only one of the two is named by that one. */
|
|
2891
|
+
"message-label"?: (HelixChat["messageLabel"]) | undefined;
|
|
2892
|
+
/** The name a screen reader gives a turn with both an author and a time.
|
|
2893
|
+
`{author}` is who wrote it and `{time}` is when, as the turn shows it. A
|
|
2894
|
+
turn with only one of the two is named by that one. */
|
|
2895
|
+
messageLabel?: (HelixChat["messageLabel"]) | undefined;
|
|
2673
2896
|
/** Whether the transcript follows new turns to the bottom.
|
|
2674
2897
|
|
|
2675
2898
|
The reader's scrolling asks first: `helix-before-pin` is cancelable, so a
|
|
@@ -2760,10 +2983,19 @@ and this one was the English a form in another language still spoke in
|
|
|
2760
2983
|
the bubble it raises on submit: `feedback` replaces the message under
|
|
2761
2984
|
the field and does not reach that one. */
|
|
2762
2985
|
valueMissingMessage?: (HelixCheckboxGroup["valueMissingMessage"]) | undefined;
|
|
2986
|
+
/** Whether a box above the set checks or unchecks every enabled box. */
|
|
2987
|
+
"select-all"?: (HelixCheckboxGroup["selectAll"]) | undefined;
|
|
2988
|
+
/** Whether a box above the set checks or unchecks every enabled box. */
|
|
2989
|
+
selectAll?: (HelixCheckboxGroup["selectAll"]) | undefined;
|
|
2990
|
+
/** The words beside the box `select-all` draws. */
|
|
2991
|
+
"select-all-label"?: (HelixCheckboxGroup["selectAllLabel"]) | undefined;
|
|
2992
|
+
/** The words beside the box `select-all` draws. */
|
|
2993
|
+
selectAllLabel?: (HelixCheckboxGroup["selectAllLabel"]) | undefined;
|
|
2763
2994
|
/** The checked values, comma separated.
|
|
2764
2995
|
|
|
2765
2996
|
Read from the boxes once they are known, so a box a script ticks directly
|
|
2766
|
-
is in it at once. Written, it is pushed onto the boxes.
|
|
2997
|
+
is in it at once. Written, it is pushed onto the boxes. A box whose value
|
|
2998
|
+
holds a comma cannot be named here: use `values`. */
|
|
2767
2999
|
value?: (HelixCheckboxGroup["value"]) | undefined;
|
|
2768
3000
|
/** Whether the control is disabled and cannot be used.
|
|
2769
3001
|
|
|
@@ -2791,6 +3023,11 @@ imperatively later, and nothing is hydrating by then.
|
|
|
2791
3023
|
|
|
2792
3024
|
Here rather than on each control. */
|
|
2793
3025
|
name?: (HelixCheckboxGroup["name"]) | undefined;
|
|
3026
|
+
/** The checked values, as a list, in the order the boxes are written.
|
|
3027
|
+
|
|
3028
|
+
The same set as `value`, and the one to use where a value may hold a
|
|
3029
|
+
comma. Written, it checks exactly those boxes and unchecks the rest. */
|
|
3030
|
+
values?: (HelixCheckboxGroup["values"]) | undefined;
|
|
2794
3031
|
};
|
|
2795
3032
|
|
|
2796
3033
|
export type HelixCheckboxGroupVueEvents = {
|
|
@@ -2848,6 +3085,28 @@ stylesheets. */
|
|
|
2848
3085
|
"default-checked"?: (HelixCheckbox["defaultChecked"]) | undefined;
|
|
2849
3086
|
/** Whether the control starts checked. A form reset returns it to this state. */
|
|
2850
3087
|
defaultChecked?: (HelixCheckbox["defaultChecked"]) | undefined;
|
|
3088
|
+
/** Whether a reader can see and focus the control and cannot change it. A
|
|
3089
|
+
read-only control still submits its value.
|
|
3090
|
+
|
|
3091
|
+
React Aria's `isReadOnly`. A native checkbox has no read-only state, so
|
|
3092
|
+
the press is refused at the inner control, which keeps its box as it
|
|
3093
|
+
was, and the control says `aria-readonly`. A script can still set
|
|
3094
|
+
`checked`, as it can set the value of a read-only text field.
|
|
3095
|
+
|
|
3096
|
+
The attribute is `readonly`, which is the platform's spelling for the
|
|
3097
|
+
text fields. */
|
|
3098
|
+
readonly?: (HelixCheckbox["readOnly"]) | undefined;
|
|
3099
|
+
/** Whether a reader can see and focus the control and cannot change it. A
|
|
3100
|
+
read-only control still submits its value.
|
|
3101
|
+
|
|
3102
|
+
React Aria's `isReadOnly`. A native checkbox has no read-only state, so
|
|
3103
|
+
the press is refused at the inner control, which keeps its box as it
|
|
3104
|
+
was, and the control says `aria-readonly`. A script can still set
|
|
3105
|
+
`checked`, as it can set the value of a read-only text field.
|
|
3106
|
+
|
|
3107
|
+
The attribute is `readonly`, which is the platform's spelling for the
|
|
3108
|
+
text fields. */
|
|
3109
|
+
readOnly?: (HelixCheckbox["readOnly"]) | undefined;
|
|
2851
3110
|
/** */
|
|
2852
3111
|
"aria-label"?: unknown;
|
|
2853
3112
|
/** The validation message shown under the control. It replaces the
|
|
@@ -2926,13 +3185,28 @@ export type HelixCheckboxVueEvents = {
|
|
|
2926
3185
|
};
|
|
2927
3186
|
|
|
2928
3187
|
export type HelixCodeBlockVueProps = {
|
|
3188
|
+
/** Whether long lines wrap.
|
|
3189
|
+
|
|
3190
|
+
Off by default, so long lines scroll, because a line break can be
|
|
3191
|
+
significant in code and a wrapped line reads as two. For prose-like code, such as a long command or
|
|
3192
|
+
a log line, a wrap reads better than a scroll. Line numbers keep the lines
|
|
3193
|
+
unwrapped, since a wrapped line would take one number and several rows. */
|
|
3194
|
+
wrap?: (HelixCodeBlock["wrap"]) | undefined;
|
|
2929
3195
|
/** The copy button's name and tooltip text after a copy. */
|
|
2930
3196
|
"copied-label"?: (HelixCodeBlock["copiedLabel"]) | undefined;
|
|
2931
3197
|
/** The copy button's name and tooltip text after a copy. */
|
|
2932
3198
|
copiedLabel?: (HelixCodeBlock["copiedLabel"]) | undefined;
|
|
2933
|
-
/** The copy button's name and tooltip text before a copy.
|
|
3199
|
+
/** The copy button's name and tooltip text before a copy.
|
|
3200
|
+
|
|
3201
|
+
Where the block has a name, the button says it too, such as "Copy code,
|
|
3202
|
+
app.ts", so each copy button on a page with several blocks is told apart.
|
|
3203
|
+
In a diff, that is each file's own name. */
|
|
2934
3204
|
"copy-label"?: (HelixCodeBlock["copyLabel"]) | undefined;
|
|
2935
|
-
/** The copy button's name and tooltip text before a copy.
|
|
3205
|
+
/** The copy button's name and tooltip text before a copy.
|
|
3206
|
+
|
|
3207
|
+
Where the block has a name, the button says it too, such as "Copy code,
|
|
3208
|
+
app.ts", so each copy button on a page with several blocks is told apart.
|
|
3209
|
+
In a diff, that is each file's own name. */
|
|
2936
3210
|
copyLabel?: (HelixCodeBlock["copyLabel"]) | undefined;
|
|
2937
3211
|
/** Whether the content is a unified diff, drawn as the lines it changed.
|
|
2938
3212
|
|
|
@@ -2944,6 +3218,20 @@ Reflected, because the stylesheet paints a diff differently from code, and
|
|
|
2944
3218
|
In a diff, each file is named from the patch, and this names a patch that
|
|
2945
3219
|
carries no name of its own. */
|
|
2946
3220
|
label?: (HelixCodeBlock["label"]) | undefined;
|
|
3221
|
+
/** Whether the lines are numbered in a gutter beside the code.
|
|
3222
|
+
|
|
3223
|
+
The numbers are hidden from the accessibility tree and are not part of a
|
|
3224
|
+
copy, which takes the code alone. Reflected, because the stylesheet lays
|
|
3225
|
+
the gutter out beside the code. A diff numbers its lines from its hunks
|
|
3226
|
+
whether or not this is set. */
|
|
3227
|
+
"line-numbers"?: (HelixCodeBlock["lineNumbers"]) | undefined;
|
|
3228
|
+
/** Whether the lines are numbered in a gutter beside the code.
|
|
3229
|
+
|
|
3230
|
+
The numbers are hidden from the accessibility tree and are not part of a
|
|
3231
|
+
copy, which takes the code alone. Reflected, because the stylesheet lays
|
|
3232
|
+
the gutter out beside the code. A diff numbers its lines from its hunks
|
|
3233
|
+
whether or not this is set. */
|
|
3234
|
+
lineNumbers?: (HelixCodeBlock["lineNumbers"]) | undefined;
|
|
2947
3235
|
/** Whether to leave the copy button off.
|
|
2948
3236
|
|
|
2949
3237
|
Negative, which is not a style choice. A boolean attribute is true whenever
|
|
@@ -2990,6 +3278,17 @@ Absent is unified, each removal above its replacement, which fits any
|
|
|
2990
3278
|
width. `split` sets the old version beside the new one. Optional rather
|
|
2991
3279
|
than defaulted, so the host carries no attribute the consumer did not write. */
|
|
2992
3280
|
variant?: (HelixCodeBlock["variant"]) | undefined;
|
|
3281
|
+
/** Turns the code into highlighted markup, which the block draws in place of
|
|
3282
|
+
the plain text.
|
|
3283
|
+
|
|
3284
|
+
Called with the code as written and returning HTML, such as the output of
|
|
3285
|
+
Shiki's `codeToHtml` or Prism's `highlight`. **The markup is drawn as
|
|
3286
|
+
given**, so it has to escape the code it was handed, which those
|
|
3287
|
+
highlighters do. Bind the language in the function you pass. The code
|
|
3288
|
+
stays in the slot, so the copy button copies it as written and a reader
|
|
3289
|
+
without the script still has it. Not called on a server, which has no code
|
|
3290
|
+
to read, nor for a diff. */
|
|
3291
|
+
highlight?: (HelixCodeBlock["highlight"]) | undefined;
|
|
2993
3292
|
};
|
|
2994
3293
|
|
|
2995
3294
|
export type HelixCodeBlockVueEvents = {};
|
|
@@ -3100,6 +3399,26 @@ point.** The field holds a color, so a browser offering to fill it with a
|
|
|
3100
3399
|
saved address is competing for the same keystrokes as the picker. A
|
|
3101
3400
|
consumer who wants autofill can still ask. */
|
|
3102
3401
|
autocomplete?: (HelixColorInput["autocomplete"]) | undefined;
|
|
3402
|
+
/** Whether the panel shows a number field for each channel of the color.
|
|
3403
|
+
Passed to the panel; see Color Picker's `channel-fields`. */
|
|
3404
|
+
"channel-fields"?: (HelixColorInput["channelFields"]) | undefined;
|
|
3405
|
+
/** Whether the panel shows a number field for each channel of the color.
|
|
3406
|
+
Passed to the panel; see Color Picker's `channel-fields`. */
|
|
3407
|
+
channelFields?: (HelixColorInput["channelFields"]) | undefined;
|
|
3408
|
+
/** The words a color's name is spoken in, as JSON keyed by their English,
|
|
3409
|
+
such as `{"red": "rot", "vibrant": "kräftiges"}`.
|
|
3410
|
+
|
|
3411
|
+
Passed to the panel, whose square, hue ramp and presets say the color's
|
|
3412
|
+
name, and read by the swatch in `swatch`, which says it before the value.
|
|
3413
|
+
Color Picker lists the keys. */
|
|
3414
|
+
"color-words"?: (HelixColorInput["colorWords"]) | undefined;
|
|
3415
|
+
/** The words a color's name is spoken in, as JSON keyed by their English,
|
|
3416
|
+
such as `{"red": "rot", "vibrant": "kräftiges"}`.
|
|
3417
|
+
|
|
3418
|
+
Passed to the panel, whose square, hue ramp and presets say the color's
|
|
3419
|
+
name, and read by the swatch in `swatch`, which says it before the value.
|
|
3420
|
+
Color Picker lists the keys. */
|
|
3421
|
+
colorWords?: (HelixColorInput["colorWords"]) | undefined;
|
|
3103
3422
|
/** The syntax the value is written in: `hex`, `rgb`, or `hsl`.
|
|
3104
3423
|
|
|
3105
3424
|
**Undefaulted, because it reflects.** The two together stamp an attribute
|
|
@@ -3237,6 +3556,10 @@ ramps. A consumer who wants autofill can still ask. */
|
|
|
3237
3556
|
"bad-input-message"?: (HelixColorPicker["badInputMessage"]) | undefined;
|
|
3238
3557
|
/** The message shown when the value is text that is not a color. */
|
|
3239
3558
|
badInputMessage?: (HelixColorPicker["badInputMessage"]) | undefined;
|
|
3559
|
+
/** What the blue channel's field is called, in `channel-fields`. */
|
|
3560
|
+
"blue-label"?: (HelixColorPicker["blueLabel"]) | undefined;
|
|
3561
|
+
/** What the blue channel's field is called, in `channel-fields`. */
|
|
3562
|
+
blueLabel?: (HelixColorPicker["blueLabel"]) | undefined;
|
|
3240
3563
|
/** What the square's vertical ramp is called.
|
|
3241
3564
|
|
|
3242
3565
|
**Every word the picker speaks is a property**, so a page in another
|
|
@@ -3247,6 +3570,50 @@ language hears its own rather than English between its own labels. */
|
|
|
3247
3570
|
**Every word the picker speaks is a property**, so a page in another
|
|
3248
3571
|
language hears its own rather than English between its own labels. */
|
|
3249
3572
|
brightnessLabel?: (HelixColorPicker["brightnessLabel"]) | undefined;
|
|
3573
|
+
/** Whether the picker shows a number field for each channel of the color, as
|
|
3574
|
+
React Aria's ColorField does with `channel`: red, green and blue for hex
|
|
3575
|
+
and rgb, hue, saturation and lightness for hsl, and the opacity with
|
|
3576
|
+
`alpha`.
|
|
3577
|
+
|
|
3578
|
+
For a reader who has the numbers from a brand guide, and for a keyboard,
|
|
3579
|
+
where typing 128 is quicker than holding an arrow key. The fields follow
|
|
3580
|
+
the syntax the format toggle sets. */
|
|
3581
|
+
"channel-fields"?: (HelixColorPicker["channelFields"]) | undefined;
|
|
3582
|
+
/** Whether the picker shows a number field for each channel of the color, as
|
|
3583
|
+
React Aria's ColorField does with `channel`: red, green and blue for hex
|
|
3584
|
+
and rgb, hue, saturation and lightness for hsl, and the opacity with
|
|
3585
|
+
`alpha`.
|
|
3586
|
+
|
|
3587
|
+
For a reader who has the numbers from a brand guide, and for a keyboard,
|
|
3588
|
+
where typing 128 is quicker than holding an arrow key. The fields follow
|
|
3589
|
+
the syntax the format toggle sets. */
|
|
3590
|
+
channelFields?: (HelixColorPicker["channelFields"]) | undefined;
|
|
3591
|
+
/** The words a color's name is spoken in, as JSON keyed by their English,
|
|
3592
|
+
such as `{"red": "rot", "vibrant": "kräftiges"}`.
|
|
3593
|
+
|
|
3594
|
+
**A color is named the way React Aria names one**, as "vibrant red" or
|
|
3595
|
+
"dark grayish blue", and the keys are the ones `@react-stately/color`
|
|
3596
|
+
translates, so a table a page already has for it can be handed over whole.
|
|
3597
|
+
`colorName` and `transparentColorName` are the two sentences that put the
|
|
3598
|
+
words together. A word left out is spoken in English.
|
|
3599
|
+
|
|
3600
|
+
The name follows the numbers on the square, follows the number on the hue
|
|
3601
|
+
ramp, and names each preset, so a reader who cannot see the color hears
|
|
3602
|
+
which one it is. */
|
|
3603
|
+
"color-words"?: (HelixColorPicker["colorWords"]) | undefined;
|
|
3604
|
+
/** The words a color's name is spoken in, as JSON keyed by their English,
|
|
3605
|
+
such as `{"red": "rot", "vibrant": "kräftiges"}`.
|
|
3606
|
+
|
|
3607
|
+
**A color is named the way React Aria names one**, as "vibrant red" or
|
|
3608
|
+
"dark grayish blue", and the keys are the ones `@react-stately/color`
|
|
3609
|
+
translates, so a table a page already has for it can be handed over whole.
|
|
3610
|
+
`colorName` and `transparentColorName` are the two sentences that put the
|
|
3611
|
+
words together. A word left out is spoken in English.
|
|
3612
|
+
|
|
3613
|
+
The name follows the numbers on the square, follows the number on the hue
|
|
3614
|
+
ramp, and names each preset, so a reader who cannot see the color hears
|
|
3615
|
+
which one it is. */
|
|
3616
|
+
colorWords?: (HelixColorPicker["colorWords"]) | undefined;
|
|
3250
3617
|
/** The text the sample shows for a moment after it copies the value. */
|
|
3251
3618
|
"copied-label"?: (HelixColorPicker["copiedLabel"]) | undefined;
|
|
3252
3619
|
/** The text the sample shows for a moment after it copies the value. */
|
|
@@ -3270,6 +3637,10 @@ Only what is written. Everything is read whatever this says, so a picker on
|
|
|
3270
3637
|
"format-label"?: (HelixColorPicker["formatLabel"]) | undefined;
|
|
3271
3638
|
/** What the syntax toggle is called, with `{format}` filled in. */
|
|
3272
3639
|
formatLabel?: (HelixColorPicker["formatLabel"]) | undefined;
|
|
3640
|
+
/** What the green channel's field is called, in `channel-fields`. */
|
|
3641
|
+
"green-label"?: (HelixColorPicker["greenLabel"]) | undefined;
|
|
3642
|
+
/** What the green channel's field is called, in `channel-fields`. */
|
|
3643
|
+
greenLabel?: (HelixColorPicker["greenLabel"]) | undefined;
|
|
3273
3644
|
/** What the hue channel is called. */
|
|
3274
3645
|
"hue-label"?: (HelixColorPicker["hueLabel"]) | undefined;
|
|
3275
3646
|
/** What the hue channel is called. */
|
|
@@ -3282,6 +3653,12 @@ the label, the hint and the feedback, and a second message inside the panel
|
|
|
3282
3653
|
would be the same error said twice. What is left for the picker is the one
|
|
3283
3654
|
thing the field cannot draw from outside, the mark on the answer itself. */
|
|
3284
3655
|
invalid?: (HelixColorPicker["invalid"]) | undefined;
|
|
3656
|
+
/** What the lightness channel's field is called, in `channel-fields` with
|
|
3657
|
+
hsl. */
|
|
3658
|
+
"lightness-label"?: (HelixColorPicker["lightnessLabel"]) | undefined;
|
|
3659
|
+
/** What the lightness channel's field is called, in `channel-fields` with
|
|
3660
|
+
hsl. */
|
|
3661
|
+
lightnessLabel?: (HelixColorPicker["lightnessLabel"]) | undefined;
|
|
3285
3662
|
/** Hides the eyedropper. Without it, the eyedropper appears in browsers that
|
|
3286
3663
|
support one. */
|
|
3287
3664
|
"no-eyedropper"?: (HelixColorPicker["noEyedropper"]) | undefined;
|
|
@@ -3378,6 +3755,10 @@ letting it move would show `rgb` over a hex it is no longer allowed to
|
|
|
3378
3755
|
restate. The eyedropper clears the screen and runs a system sampler, so
|
|
3379
3756
|
letting it open would take a color from the reader and drop it. */
|
|
3380
3757
|
readOnly?: (HelixColorPicker["readOnly"]) | undefined;
|
|
3758
|
+
/** What the red channel's field is called, in `channel-fields`. */
|
|
3759
|
+
"red-label"?: (HelixColorPicker["redLabel"]) | undefined;
|
|
3760
|
+
/** What the red channel's field is called, in `channel-fields`. */
|
|
3761
|
+
redLabel?: (HelixColorPicker["redLabel"]) | undefined;
|
|
3381
3762
|
/** Requires a color before the form can submit.
|
|
3382
3763
|
|
|
3383
3764
|
**A color is exactly as requirable as a date**, which is the comparison
|
|
@@ -3564,6 +3945,24 @@ and this one was the English a form in another language still spoke in
|
|
|
3564
3945
|
the bubble it raises on submit: `feedback` replaces the message under
|
|
3565
3946
|
the field and does not reach that one. */
|
|
3566
3947
|
valueMissingMessage?: (HelixCombobox["valueMissingMessage"]) | undefined;
|
|
3948
|
+
/** Whether text that names no option is taken as the value, as React Aria's
|
|
3949
|
+
`allowsCustomValue`.
|
|
3950
|
+
|
|
3951
|
+
For a field where the list is a help and not the whole of the answer, a
|
|
3952
|
+
city or a job title. What was typed becomes the value when the reader
|
|
3953
|
+
leaves the field or presses Enter with nothing highlighted, and text that
|
|
3954
|
+
names an option takes that option. Unlike `creatable`, no event asks
|
|
3955
|
+
first and no option is expected to be added: the value is the text. */
|
|
3956
|
+
"allows-custom-value"?: (HelixCombobox["allowsCustomValue"]) | undefined;
|
|
3957
|
+
/** Whether text that names no option is taken as the value, as React Aria's
|
|
3958
|
+
`allowsCustomValue`.
|
|
3959
|
+
|
|
3960
|
+
For a field where the list is a help and not the whole of the answer, a
|
|
3961
|
+
city or a job title. What was typed becomes the value when the reader
|
|
3962
|
+
leaves the field or presses Enter with nothing highlighted, and text that
|
|
3963
|
+
names an option takes that option. Unlike `creatable`, no event asks
|
|
3964
|
+
first and no option is expected to be added: the value is the text. */
|
|
3965
|
+
allowsCustomValue?: (HelixCombobox["allowsCustomValue"]) | undefined;
|
|
3567
3966
|
/** What the browser may autofill in the text field, as a platform token.
|
|
3568
3967
|
|
|
3569
3968
|
**Defaults to `off`, which is not the platform's default and is the
|
|
@@ -3642,6 +4041,20 @@ filled in.
|
|
|
3642
4041
|
**The name goes in**, so a row of them is heard as which one each
|
|
3643
4042
|
removes rather than as "Remove" said once per chosen option. */
|
|
3644
4043
|
removeLabel?: (HelixCombobox["removeLabel"]) | undefined;
|
|
4044
|
+
/** What a screen reader hears when typing leaves one option. `{count}` is
|
|
4045
|
+
the count. */
|
|
4046
|
+
"result-label"?: (HelixCombobox["resultLabel"]) | undefined;
|
|
4047
|
+
/** What a screen reader hears when typing leaves one option. `{count}` is
|
|
4048
|
+
the count. */
|
|
4049
|
+
resultLabel?: (HelixCombobox["resultLabel"]) | undefined;
|
|
4050
|
+
/** What a screen reader hears when typing leaves any other number of
|
|
4051
|
+
options. `{count}` is the count, and `Intl.PluralRules` picks between the
|
|
4052
|
+
two. */
|
|
4053
|
+
"results-label"?: (HelixCombobox["resultsLabel"]) | undefined;
|
|
4054
|
+
/** What a screen reader hears when typing leaves any other number of
|
|
4055
|
+
options. `{count}` is the count, and `Intl.PluralRules` picks between the
|
|
4056
|
+
two. */
|
|
4057
|
+
resultsLabel?: (HelixCombobox["resultsLabel"]) | undefined;
|
|
3645
4058
|
/** Whether the field completes the word as the user types.
|
|
3646
4059
|
|
|
3647
4060
|
`suggest` rather than `autocomplete`, which is a real HTML attribute this
|
|
@@ -3743,6 +4156,14 @@ the resolved state for stylesheets, which is what the mirror is for. */
|
|
|
3743
4156
|
"empty-text"?: (HelixCommand["emptyText"]) | undefined;
|
|
3744
4157
|
/** The text shown when the filter matches no commands. */
|
|
3745
4158
|
emptyText?: (HelixCommand["emptyText"]) | undefined;
|
|
4159
|
+
/** How long typing rests before the commands are filtered, in milliseconds,
|
|
4160
|
+
so a palette filtered on a server sends one `helix-filter` for a word.
|
|
4161
|
+
`0` filters on every keystroke. See Listbox's `filter-delay`. */
|
|
4162
|
+
"filter-delay"?: (HelixCommand["filterDelay"] | `${number}`) | undefined;
|
|
4163
|
+
/** How long typing rests before the commands are filtered, in milliseconds,
|
|
4164
|
+
so a palette filtered on a server sends one `helix-filter` for a word.
|
|
4165
|
+
`0` filters on every keystroke. See Listbox's `filter-delay`. */
|
|
4166
|
+
filterDelay?: (HelixCommand["filterDelay"]) | undefined;
|
|
3746
4167
|
/** The key that opens the palette, written as `mod+k`, `shift+p`, or `k`.
|
|
3747
4168
|
|
|
3748
4169
|
Empty turns it off, for a consumer who opens the palette from a button or
|
|
@@ -3762,6 +4183,20 @@ Passed to the list, which shows `loading-text` and tells screen readers. */
|
|
|
3762
4183
|
loadingText?: (HelixCommand["loadingText"]) | undefined;
|
|
3763
4184
|
/** The text shown in the filter field before anything is typed. */
|
|
3764
4185
|
placeholder?: (HelixCommand["placeholder"]) | undefined;
|
|
4186
|
+
/** What a screen reader hears when typing leaves one command. `{count}` is
|
|
4187
|
+
the count. */
|
|
4188
|
+
"result-label"?: (HelixCommand["resultLabel"]) | undefined;
|
|
4189
|
+
/** What a screen reader hears when typing leaves one command. `{count}` is
|
|
4190
|
+
the count. */
|
|
4191
|
+
resultLabel?: (HelixCommand["resultLabel"]) | undefined;
|
|
4192
|
+
/** What a screen reader hears when typing leaves any other number of
|
|
4193
|
+
commands. `{count}` is the count, and `Intl.PluralRules` picks between the
|
|
4194
|
+
two. */
|
|
4195
|
+
"results-label"?: (HelixCommand["resultsLabel"]) | undefined;
|
|
4196
|
+
/** What a screen reader hears when typing leaves any other number of
|
|
4197
|
+
commands. `{count}` is the count, and `Intl.PluralRules` picks between the
|
|
4198
|
+
two. */
|
|
4199
|
+
resultsLabel?: (HelixCommand["resultsLabel"]) | undefined;
|
|
3765
4200
|
};
|
|
3766
4201
|
|
|
3767
4202
|
export type HelixCommandVueEvents = {
|
|
@@ -3773,7 +4208,7 @@ export type HelixCommandVueEvents = {
|
|
|
3773
4208
|
"helix-before-open": HelixCommandHelixBeforeOpenElementEvent;
|
|
3774
4209
|
/** Fired as the user types, with the text the list is filtered by. Cancelable: cancel it to leave the list unfiltered and filter the commands yourself, for example on a server while `loading` is set. */
|
|
3775
4210
|
"helix-filter": HelixCommandHelixFilterElementEvent;
|
|
3776
|
-
/** A command was chosen. Cancelable: cancel it to keep the palette open. */
|
|
4211
|
+
/** A command was chosen, with its `href` where the option is a link. Cancelable: cancel it to keep the palette open, and to keep the browser from following the link. */
|
|
3777
4212
|
"helix-select": HelixCommandHelixSelectElementEvent;
|
|
3778
4213
|
};
|
|
3779
4214
|
|
|
@@ -3785,6 +4220,9 @@ export type HelixCopyButtonElementEvent<E = Event> = TypedEvent<
|
|
|
3785
4220
|
/** `helix-copy` event type */
|
|
3786
4221
|
export type HelixCopyButtonHelixCopyElementEvent =
|
|
3787
4222
|
HelixCopyButtonElementEvent<HelixCopyEvent>;
|
|
4223
|
+
/** `helix-copy-error` event type */
|
|
4224
|
+
export type HelixCopyButtonHelixCopyErrorElementEvent =
|
|
4225
|
+
HelixCopyButtonElementEvent<HelixCopyErrorEvent>;
|
|
3788
4226
|
|
|
3789
4227
|
export type HelixCopyButtonVueProps = {
|
|
3790
4228
|
/** How much fill the control is drawn with.
|
|
@@ -3820,6 +4258,17 @@ dash-casing it, and `copiedlabel` is not what anyone would type. */
|
|
|
3820
4258
|
`attribute` written out, because Lit lowercases a property name rather than
|
|
3821
4259
|
dash-casing it, and `copiedlabel` is not what anyone would type. */
|
|
3822
4260
|
copiedLabel?: (HelixCopyButton["copiedLabel"]) | undefined;
|
|
4261
|
+
/** The button's name and tooltip text after a press that put nothing on the
|
|
4262
|
+
clipboard. */
|
|
4263
|
+
"error-label"?: (HelixCopyButton["errorLabel"]) | undefined;
|
|
4264
|
+
/** The button's name and tooltip text after a press that put nothing on the
|
|
4265
|
+
clipboard. */
|
|
4266
|
+
errorLabel?: (HelixCopyButton["errorLabel"]) | undefined;
|
|
4267
|
+
/** The element to copy from, by its id: `key` for its text, `key[value]` for
|
|
4268
|
+
an attribute, and `key.value` for a property. Read at the press, and used
|
|
4269
|
+
in place of `value`. An element that is not there copies nothing, which is
|
|
4270
|
+
a failed copy. */
|
|
4271
|
+
from?: (HelixCopyButton["from"]) | undefined;
|
|
3823
4272
|
/** The button's name and tooltip text before a copy.
|
|
3824
4273
|
|
|
3825
4274
|
Defaulted rather than left empty. An icon-only control must be named, and
|
|
@@ -3833,74 +4282,22 @@ whatever its `type`. Declared here so its own page says what it holds. */
|
|
|
3833
4282
|
value?: (HelixCopyButton["value"]) | undefined;
|
|
3834
4283
|
/** */
|
|
3835
4284
|
"aria-label"?: unknown;
|
|
3836
|
-
/**
|
|
3837
|
-
|
|
3838
|
-
|
|
3839
|
-
|
|
3840
|
-
|
|
3841
|
-
|
|
3842
|
-
|
|
3843
|
-
|
|
3844
|
-
|
|
3845
|
-
|
|
3846
|
-
|
|
3847
|
-
|
|
3848
|
-
|
|
3849
|
-
|
|
3850
|
-
|
|
3851
|
-
|
|
3852
|
-
/** The id of the element the command is sent to. */
|
|
3853
|
-
commandfor?: (HelixCopyButton["commandFor"]) | undefined;
|
|
3854
|
-
/** The id of the element the command is sent to. */
|
|
3855
|
-
commandFor?: (HelixCopyButton["commandFor"]) | undefined;
|
|
3856
|
-
/** Where this button's submission goes, overriding the form's own.
|
|
3857
|
-
|
|
3858
|
-
**The five `form*` overrides work by writing the form and putting it back**,
|
|
3859
|
-
which is the only mechanism available and is closer to the platform than it
|
|
3860
|
-
sounds. `requestSubmit(submitter)` is how a native submitter carries these,
|
|
3861
|
-
and it refuses ours twice over: the inner `<button>` is `type="button"` so
|
|
3862
|
-
it is not a submit button, and it sits in this shadow root so its form owner
|
|
3863
|
-
is not the consumer's form. Both throw. So the submission is started with no
|
|
3864
|
-
submitter and the overrides are applied to the form for the duration of it.
|
|
3865
|
-
|
|
3866
|
-
The whole submit algorithm runs synchronously inside `requestSubmit()`, so
|
|
3867
|
-
the window is one call and a `finally` closes it whether or not a listener
|
|
3868
|
-
refused. What a `submit` handler observes during that window is the form a
|
|
3869
|
-
native submitter would have given it, which is the point. */
|
|
3870
|
-
formaction?: (HelixCopyButton["formAction"]) | undefined;
|
|
3871
|
-
/** Where this button's submission goes, overriding the form's own.
|
|
3872
|
-
|
|
3873
|
-
**The five `form*` overrides work by writing the form and putting it back**,
|
|
3874
|
-
which is the only mechanism available and is closer to the platform than it
|
|
3875
|
-
sounds. `requestSubmit(submitter)` is how a native submitter carries these,
|
|
3876
|
-
and it refuses ours twice over: the inner `<button>` is `type="button"` so
|
|
3877
|
-
it is not a submit button, and it sits in this shadow root so its form owner
|
|
3878
|
-
is not the consumer's form. Both throw. So the submission is started with no
|
|
3879
|
-
submitter and the overrides are applied to the form for the duration of it.
|
|
3880
|
-
|
|
3881
|
-
The whole submit algorithm runs synchronously inside `requestSubmit()`, so
|
|
3882
|
-
the window is one call and a `finally` closes it whether or not a listener
|
|
3883
|
-
refused. What a `submit` handler observes during that window is the form a
|
|
3884
|
-
native submitter would have given it, which is the point. */
|
|
3885
|
-
formAction?: (HelixCopyButton["formAction"]) | undefined;
|
|
3886
|
-
/** How the submission is encoded, overriding the form's own. */
|
|
3887
|
-
formenctype?: (HelixCopyButton["formEnctype"]) | undefined;
|
|
3888
|
-
/** How the submission is encoded, overriding the form's own. */
|
|
3889
|
-
formEnctype?: (HelixCopyButton["formEnctype"]) | undefined;
|
|
3890
|
-
/** Which HTTP method the submission uses, overriding the form's own. */
|
|
3891
|
-
formmethod?: (HelixCopyButton["formMethod"]) | undefined;
|
|
3892
|
-
/** Which HTTP method the submission uses, overriding the form's own. */
|
|
3893
|
-
formMethod?: (HelixCopyButton["formMethod"]) | undefined;
|
|
3894
|
-
/** Whether this submission skips the form's validation. */
|
|
3895
|
-
formnovalidate?: (HelixCopyButton["formNoValidate"]) | undefined;
|
|
3896
|
-
/** Whether this submission skips the form's validation. */
|
|
3897
|
-
formNoValidate?: (HelixCopyButton["formNoValidate"]) | undefined;
|
|
3898
|
-
/** Which browsing context the response lands in, overriding the form's own. */
|
|
3899
|
-
formtarget?: (HelixCopyButton["formTarget"]) | undefined;
|
|
3900
|
-
/** Which browsing context the response lands in, overriding the form's own. */
|
|
3901
|
-
formTarget?: (HelixCopyButton["formTarget"]) | undefined;
|
|
3902
|
-
/** What activating the button does to its form. */
|
|
3903
|
-
type?: (HelixCopyButton["type"]) | undefined;
|
|
4285
|
+
/** Whether the action the button started is still running.
|
|
4286
|
+
|
|
4287
|
+
A pending button keeps focus and stays in the tab order, and refuses every
|
|
4288
|
+
press: a click, Enter and Space, and Enter in a field of its form. The
|
|
4289
|
+
click does not reach your listeners. The inner control carries
|
|
4290
|
+
`aria-busy` and `aria-disabled`, and when the button becomes pending while
|
|
4291
|
+
it has focus, a reader hears `pending-label`. The styled button draws a
|
|
4292
|
+
turning ring over its words.
|
|
4293
|
+
|
|
4294
|
+
`disabled` takes the button out of reach. Use `pending` for the wait after
|
|
4295
|
+
a press, so focus stays where the reader left it. */
|
|
4296
|
+
pending?: (HelixCopyButton["pending"]) | undefined;
|
|
4297
|
+
/** What a reader hears when the button becomes pending while it has focus. */
|
|
4298
|
+
"pending-label"?: (HelixCopyButton["pendingLabel"]) | undefined;
|
|
4299
|
+
/** What a reader hears when the button becomes pending while it has focus. */
|
|
4300
|
+
pendingLabel?: (HelixCopyButton["pendingLabel"]) | undefined;
|
|
3904
4301
|
/** Whether the control is disabled and cannot be used.
|
|
3905
4302
|
|
|
3906
4303
|
Reflected, because the styled tier selects on it, and mirrored to
|
|
@@ -3927,31 +4324,6 @@ imperatively later, and nothing is hydrating by then.
|
|
|
3927
4324
|
|
|
3928
4325
|
Here rather than on each control. */
|
|
3929
4326
|
name?: (HelixCopyButton["name"]) | undefined;
|
|
3930
|
-
/** Whether this button is a disclosure trigger, and whether its panel is open.
|
|
3931
|
-
|
|
3932
|
-
**Set by whatever owns the panel, and a property rather than an attribute
|
|
3933
|
-
for the reason `Menu` already states about its items**: an attribute
|
|
3934
|
-
written onto a consumer's element after it upgrades is a hydration mismatch
|
|
3935
|
-
waiting to happen. Measured 28 Aug 2026 against React 19.2.8, server markup
|
|
3936
|
-
hydrated with the definitions loaded either side of `hydrateRoot`:
|
|
3937
|
-
`Megamenu` and `SpeedDial` wrote `aria-expanded` onto the slotted trigger
|
|
3938
|
-
and React reported "some attributes of the server rendered HTML didn't
|
|
3939
|
-
match the client properties. This won't be patched up" in both orders;
|
|
3940
|
-
`Popover` and `Menu`, which write nothing, were clean in both.
|
|
3941
|
-
|
|
3942
|
-
**A property crosses that gap because React never looks at one.** It diffs
|
|
3943
|
-
the attributes it rendered, and this one is `attribute: false`, so the state
|
|
3944
|
-
travels to the inner `<button>` and lands inside a shadow root React does
|
|
3945
|
-
not own and cannot compare. The consumer's own element is left exactly as
|
|
3946
|
-
they served it and the reader is still told what the control does.
|
|
3947
|
-
|
|
3948
|
-
`undefined` renders nothing at all, so a button that is not a trigger
|
|
3949
|
-
carries no `aria-expanded`: the resting state is the attribute's absence,
|
|
3950
|
-
which is the rule every reflected property here follows.
|
|
3951
|
-
|
|
3952
|
-
A consumer who wants to say this statically writes `aria-expanded` on the
|
|
3953
|
-
host instead, which `AriaForwardController` carries to the same place. */
|
|
3954
|
-
expanded?: (HelixCopyButton["expanded"]) | undefined;
|
|
3955
4327
|
/** Whether the button holds its group's tab stop.
|
|
3956
4328
|
|
|
3957
4329
|
A toolbar keeps one tab stop across its children, and the obvious way to do
|
|
@@ -3963,14 +4335,6 @@ and the stop lands on the inner control inside the shadow root.
|
|
|
3963
4335
|
No attribute, because it is coordination between elements rather than
|
|
3964
4336
|
anything a consumer sets. */
|
|
3965
4337
|
focusable?: (HelixCopyButton["focusable"]) | undefined;
|
|
3966
|
-
/** What kind of panel this button opens, where it opens one: `menu` for a
|
|
3967
|
-
`Menu`.
|
|
3968
|
-
|
|
3969
|
-
Set by the component that owns the panel, as a property for the reason
|
|
3970
|
-
`expanded` gives above. It is what makes a reader say the button opens a
|
|
3971
|
-
menu. Read from Chromium's tree, a Menu's trigger was a plain button that
|
|
3972
|
-
reported collapsed and expanded and no popup. */
|
|
3973
|
-
popup?: (HelixCopyButton["popup"]) | undefined;
|
|
3974
4338
|
/** The element this button's command is sent to, resolved.
|
|
3975
4339
|
|
|
3976
4340
|
The platform's own accessor, because the resolution is otherwise kept
|
|
@@ -3984,6 +4348,8 @@ invoker without an id in the same tree needs. */
|
|
|
3984
4348
|
export type HelixCopyButtonVueEvents = {
|
|
3985
4349
|
/** Fired after the clipboard write succeeds. */
|
|
3986
4350
|
"helix-copy": HelixCopyButtonHelixCopyElementEvent;
|
|
4351
|
+
/** Fired when a press put nothing on the clipboard: the browser did not allow the write, or there was nothing to copy. */
|
|
4352
|
+
"helix-copy-error": HelixCopyButtonHelixCopyErrorElementEvent;
|
|
3987
4353
|
};
|
|
3988
4354
|
|
|
3989
4355
|
/** `HelixDataTable` component event */
|
|
@@ -3994,12 +4360,18 @@ export type HelixDataTableElementEvent<E = Event> = TypedEvent<
|
|
|
3994
4360
|
/** `helix-activate` event type */
|
|
3995
4361
|
export type HelixDataTableHelixActivateElementEvent =
|
|
3996
4362
|
HelixDataTableElementEvent<HelixActivateEvent>;
|
|
4363
|
+
/** `helix-expand` event type */
|
|
4364
|
+
export type HelixDataTableHelixExpandElementEvent =
|
|
4365
|
+
HelixDataTableElementEvent<HelixExpandEvent>;
|
|
3997
4366
|
/** `helix-filter` event type */
|
|
3998
4367
|
export type HelixDataTableHelixFilterElementEvent =
|
|
3999
4368
|
HelixDataTableElementEvent<HelixFilterEvent>;
|
|
4000
4369
|
/** `helix-filtered` event type */
|
|
4001
4370
|
export type HelixDataTableHelixFilteredElementEvent =
|
|
4002
4371
|
HelixDataTableElementEvent<HelixFilteredEvent>;
|
|
4372
|
+
/** `helix-load-more` event type */
|
|
4373
|
+
export type HelixDataTableHelixLoadMoreElementEvent =
|
|
4374
|
+
HelixDataTableElementEvent<HelixLoadMoreEvent>;
|
|
4003
4375
|
/** `helix-navigate` event type */
|
|
4004
4376
|
export type HelixDataTableHelixNavigateElementEvent =
|
|
4005
4377
|
HelixDataTableElementEvent<HelixNavigateEvent>;
|
|
@@ -4041,6 +4413,24 @@ say that without the component knowing what a row looks like. */
|
|
|
4041
4413
|
"ascending-label"?: (HelixDataTable["ascendingLabel"]) | undefined;
|
|
4042
4414
|
/** The word for an ascending sort, in `sorted-label`. */
|
|
4043
4415
|
ascendingLabel?: (HelixDataTable["ascendingLabel"]) | undefined;
|
|
4416
|
+
/** The field that holds a row's child rows, as an array. Set it, and `row-key`,
|
|
4417
|
+
and the grid becomes a tree grid.
|
|
4418
|
+
|
|
4419
|
+
Reflected, because the styled tier indents a tree grid's row headers by
|
|
4420
|
+
it. No default, so a table that sets none writes nothing onto its host. */
|
|
4421
|
+
"child-field"?: (HelixDataTable["childField"]) | undefined;
|
|
4422
|
+
/** The field that holds a row's child rows, as an array. Set it, and `row-key`,
|
|
4423
|
+
and the grid becomes a tree grid.
|
|
4424
|
+
|
|
4425
|
+
Reflected, because the styled tier indents a tree grid's row headers by
|
|
4426
|
+
it. No default, so a table that sets none writes nothing onto its host. */
|
|
4427
|
+
childField?: (HelixDataTable["childField"]) | undefined;
|
|
4428
|
+
/** The keys of the rows open at the start, separated by commas. Used until
|
|
4429
|
+
`expanded` is set. */
|
|
4430
|
+
"default-expanded"?: (HelixDataTable["defaultExpanded"]) | undefined;
|
|
4431
|
+
/** The keys of the rows open at the start, separated by commas. Used until
|
|
4432
|
+
`expanded` is set. */
|
|
4433
|
+
defaultExpanded?: (HelixDataTable["defaultExpanded"]) | undefined;
|
|
4044
4434
|
/** The starting search query, used until `filter` is set. */
|
|
4045
4435
|
"default-filter"?: (HelixDataTable["defaultFilter"]) | undefined;
|
|
4046
4436
|
/** The starting search query, used until `filter` is set. */
|
|
@@ -4079,6 +4469,9 @@ replaces this with what each row came to as it draws. It still has to be
|
|
|
4079
4469
|
close, because it is what the scrollbar is built from before anything has
|
|
4080
4470
|
been measured. */
|
|
4081
4471
|
estimate?: (HelixDataTable["estimate"]) | undefined;
|
|
4472
|
+
/** The keys of the open rows in a tree grid, separated by commas, the shape of
|
|
4473
|
+
`selected`. A reader's press writes it and then sends `helix-expand`. */
|
|
4474
|
+
expanded?: (HelixDataTable["expanded"]) | undefined;
|
|
4082
4475
|
/** The search query. A row is shown when the query matches any of its columns.
|
|
4083
4476
|
|
|
4084
4477
|
One query rather than a predicate per column, which is what a reader means
|
|
@@ -4093,6 +4486,22 @@ replaced with the page it jumps to. */
|
|
|
4093
4486
|
gapLabel?: (HelixDataTable["gapLabel"]) | undefined;
|
|
4094
4487
|
/** The grid's name, read by screen readers. */
|
|
4095
4488
|
label?: (HelixDataTable["label"]) | undefined;
|
|
4489
|
+
/** Draws a row after the last one with a button that asks for more rows.
|
|
4490
|
+
|
|
4491
|
+
The button sends `helix-load-more`, and a `windowed` table sends it by
|
|
4492
|
+
itself once a reader scrolls within one screen of the end. Turn it off
|
|
4493
|
+
when there are no more rows to load. */
|
|
4494
|
+
"load-more"?: (HelixDataTable["loadMore"]) | undefined;
|
|
4495
|
+
/** Draws a row after the last one with a button that asks for more rows.
|
|
4496
|
+
|
|
4497
|
+
The button sends `helix-load-more`, and a `windowed` table sends it by
|
|
4498
|
+
itself once a reader scrolls within one screen of the end. Turn it off
|
|
4499
|
+
when there are no more rows to load. */
|
|
4500
|
+
loadMore?: (HelixDataTable["loadMore"]) | undefined;
|
|
4501
|
+
/** The words on the button in the `more` row. */
|
|
4502
|
+
"load-more-label"?: (HelixDataTable["loadMoreLabel"]) | undefined;
|
|
4503
|
+
/** The words on the button in the `more` row. */
|
|
4504
|
+
loadMoreLabel?: (HelixDataTable["loadMoreLabel"]) | undefined;
|
|
4096
4505
|
/** Where filtering, sorting, and paging happen. `client` does them in the
|
|
4097
4506
|
table, and `server` leaves them to your code.
|
|
4098
4507
|
|
|
@@ -4286,10 +4695,14 @@ holds and reordering it under them is a mutation they did not ask for. */
|
|
|
4286
4695
|
export type HelixDataTableVueEvents = {
|
|
4287
4696
|
/** Fired after the page changes, with the new page as a string in `detail.value`. */
|
|
4288
4697
|
"helix-activate": HelixDataTableHelixActivateElementEvent;
|
|
4698
|
+
/** Fired after a row opens or closes, with every open row's key, separated by commas, which `expanded` also holds. */
|
|
4699
|
+
"helix-expand": HelixDataTableHelixExpandElementEvent;
|
|
4289
4700
|
/** The search query is about to change. Cancelable: cancel it to keep the current query. */
|
|
4290
4701
|
"helix-filter": HelixDataTableHelixFilterElementEvent;
|
|
4291
4702
|
/** Fired after the search query changes, with the new query. */
|
|
4292
4703
|
"helix-filtered": HelixDataTableHelixFilteredElementEvent;
|
|
4704
|
+
/** Fired when a reader asks for more rows, by the `load-more` row's button or by scrolling a `windowed` table near its end. */
|
|
4705
|
+
"helix-load-more": HelixDataTableHelixLoadMoreElementEvent;
|
|
4293
4706
|
/** Another page was requested. Cancelable: cancel it to stay on the current page. */
|
|
4294
4707
|
"helix-navigate": HelixDataTableHelixNavigateElementEvent;
|
|
4295
4708
|
/** The columns are about to move. The event carries every field in the new order. Cancelable: cancel it to keep the current order. */
|
|
@@ -4325,6 +4738,20 @@ export type HelixDateInputHelixBeforeOpenElementEvent =
|
|
|
4325
4738
|
HelixDateInputElementEvent<HelixBeforeOpenEvent>;
|
|
4326
4739
|
|
|
4327
4740
|
export type HelixDateInputVueProps = {
|
|
4741
|
+
/** What a screen reader hears for a segment with nothing in it, which a
|
|
4742
|
+
sighted reader sees as dashes. */
|
|
4743
|
+
"empty-segment-label"?: (HelixDateInput["emptySegmentLabel"]) | undefined;
|
|
4744
|
+
/** What a screen reader hears for a segment with nothing in it, which a
|
|
4745
|
+
sighted reader sees as dashes. */
|
|
4746
|
+
emptySegmentLabel?: (HelixDateInput["emptySegmentLabel"]) | undefined;
|
|
4747
|
+
/** Whether the field is a row of segments, one for each part of the date or
|
|
4748
|
+
time, in place of a line of text.
|
|
4749
|
+
|
|
4750
|
+
Each segment is set with digits or the arrow keys, in the order the
|
|
4751
|
+
locale writes them, so a reader types a date the way they write one and
|
|
4752
|
+
no format has to be read back. The picker still opens from the trigger
|
|
4753
|
+
and with Alt+Down. */
|
|
4754
|
+
segmented?: (HelixDateInput["segmented"]) | undefined;
|
|
4328
4755
|
/** Whether the value is locked. A read-only control still submits its value.
|
|
4329
4756
|
|
|
4330
4757
|
**Enforced by refusing every request in one place**, which is the seam this
|
|
@@ -4523,6 +4950,12 @@ and is Sunday otherwise. */
|
|
|
4523
4950
|
locale?: (HelixDateInput["locale"]) | undefined;
|
|
4524
4951
|
/** The latest date that can be chosen, as `YYYY-MM-DD`. */
|
|
4525
4952
|
max?: (HelixDateInput["max"]) | undefined;
|
|
4953
|
+
/** How far the calendar's heading steps back from the days: `month` or
|
|
4954
|
+
`year`. Handed to the calendar; see Date Picker's `max-view`. */
|
|
4955
|
+
"max-view"?: (HelixDateInput["maxView"]) | undefined;
|
|
4956
|
+
/** How far the calendar's heading steps back from the days: `month` or
|
|
4957
|
+
`year`. Handed to the calendar; see Date Picker's `max-view`. */
|
|
4958
|
+
maxView?: (HelixDateInput["maxView"]) | undefined;
|
|
4526
4959
|
/** The earliest date that can be chosen, as `YYYY-MM-DD`. */
|
|
4527
4960
|
min?: (HelixDateInput["min"]) | undefined;
|
|
4528
4961
|
/** How many dates can be held at once.
|
|
@@ -4538,16 +4971,38 @@ an end in April otherwise means paging between them and losing sight of the
|
|
|
4538
4971
|
first. The panel is sized by its content, so this widens it, and where the
|
|
4539
4972
|
window has no room for that width it shows one month until there is. */
|
|
4540
4973
|
months?: (HelixDateInput["months"]) | undefined;
|
|
4974
|
+
/** The name of the calendar's heading where it shows the months, with
|
|
4975
|
+
`{heading}` filled in. */
|
|
4976
|
+
"month-view-label"?: (HelixDateInput["monthViewLabel"]) | undefined;
|
|
4977
|
+
/** The name of the calendar's heading where it shows the months, with
|
|
4978
|
+
`{heading}` filled in. */
|
|
4979
|
+
monthViewLabel?: (HelixDateInput["monthViewLabel"]) | undefined;
|
|
4541
4980
|
/** The name of the calendar's control that moves to the next month. */
|
|
4542
4981
|
"next-label"?: (HelixDateInput["nextLabel"]) | undefined;
|
|
4543
4982
|
/** The name of the calendar's control that moves to the next month. */
|
|
4544
4983
|
nextLabel?: (HelixDateInput["nextLabel"]) | undefined;
|
|
4984
|
+
/** The name of the calendar's control that moves forward a year. */
|
|
4985
|
+
"next-year-label"?: (HelixDateInput["nextYearLabel"]) | undefined;
|
|
4986
|
+
/** The name of the calendar's control that moves forward a year. */
|
|
4987
|
+
nextYearLabel?: (HelixDateInput["nextYearLabel"]) | undefined;
|
|
4988
|
+
/** The name of the calendar's control that moves forward a page of years. */
|
|
4989
|
+
"next-years-label"?: (HelixDateInput["nextYearsLabel"]) | undefined;
|
|
4990
|
+
/** The name of the calendar's control that moves forward a page of years. */
|
|
4991
|
+
nextYearsLabel?: (HelixDateInput["nextYearsLabel"]) | undefined;
|
|
4545
4992
|
/** The text the field shows before a date is entered. */
|
|
4546
4993
|
placeholder?: (HelixDateInput["placeholder"]) | undefined;
|
|
4547
4994
|
/** The name of the calendar's control that moves to the previous month. */
|
|
4548
4995
|
"previous-label"?: (HelixDateInput["previousLabel"]) | undefined;
|
|
4549
4996
|
/** The name of the calendar's control that moves to the previous month. */
|
|
4550
4997
|
previousLabel?: (HelixDateInput["previousLabel"]) | undefined;
|
|
4998
|
+
/** The name of the calendar's control that moves back a year. */
|
|
4999
|
+
"previous-year-label"?: (HelixDateInput["previousYearLabel"]) | undefined;
|
|
5000
|
+
/** The name of the calendar's control that moves back a year. */
|
|
5001
|
+
previousYearLabel?: (HelixDateInput["previousYearLabel"]) | undefined;
|
|
5002
|
+
/** The name of the calendar's control that moves back a page of years. */
|
|
5003
|
+
"previous-years-label"?: (HelixDateInput["previousYearsLabel"]) | undefined;
|
|
5004
|
+
/** The name of the calendar's control that moves back a page of years. */
|
|
5005
|
+
previousYearsLabel?: (HelixDateInput["previousYearsLabel"]) | undefined;
|
|
4551
5006
|
/** The message shown when a range holds more than two dates.
|
|
4552
5007
|
|
|
4553
5008
|
**Every sentence a control raises in the browser's bubble is a property**,
|
|
@@ -4603,6 +5058,12 @@ platform's base. */
|
|
|
4603
5058
|
"unavailable-message"?: (HelixDateInput["unavailableMessage"]) | undefined;
|
|
4604
5059
|
/** The message shown when `disable-dates` or `disable-days` bars a date. */
|
|
4605
5060
|
unavailableMessage?: (HelixDateInput["unavailableMessage"]) | undefined;
|
|
5061
|
+
/** The name of the calendar's heading where it shows a page of years, with
|
|
5062
|
+
`{heading}` filled in. */
|
|
5063
|
+
"year-view-label"?: (HelixDateInput["yearViewLabel"]) | undefined;
|
|
5064
|
+
/** The name of the calendar's heading where it shows a page of years, with
|
|
5065
|
+
`{heading}` filled in. */
|
|
5066
|
+
yearViewLabel?: (HelixDateInput["yearViewLabel"]) | undefined;
|
|
4606
5067
|
/** Whether the control is disabled and cannot be used.
|
|
4607
5068
|
|
|
4608
5069
|
Reflected, because the styled tier selects on it, and mirrored to
|
|
@@ -4629,6 +5090,14 @@ imperatively later, and nothing is hydrating by then.
|
|
|
4629
5090
|
|
|
4630
5091
|
Here rather than on each control. */
|
|
4631
5092
|
name?: (HelixDateInput["name"]) | undefined;
|
|
5093
|
+
/** What each day in the calendar shows, in place of its number: a function
|
|
5094
|
+
given the date as `YYYY-MM-DD`. Handed to the calendar; see Date Picker's
|
|
5095
|
+
`dayContent`. */
|
|
5096
|
+
dayContent?: (HelixDateInput["dayContent"]) | undefined;
|
|
5097
|
+
/** A rule for which dates cannot be chosen: a function given the date as
|
|
5098
|
+
`YYYY-MM-DD` that returns `true` to bar it. The calendar offers such a date
|
|
5099
|
+
as unavailable, and a typed one is invalid, as with `disable-dates`. */
|
|
5100
|
+
isDateUnavailable?: (HelixDateInput["isDateUnavailable"]) | undefined;
|
|
4632
5101
|
/** The value as a `Date`, at midnight UTC, or `null` while there is no date.
|
|
4633
5102
|
|
|
4634
5103
|
The platform's own pair on `<input type="date">`, and this control holds the
|
|
@@ -4732,6 +5201,24 @@ Absent uses the runtime's own. */
|
|
|
4732
5201
|
locale?: (HelixDatePicker["locale"]) | undefined;
|
|
4733
5202
|
/** Latest selectable date, as `YYYY-MM-DD`. */
|
|
4734
5203
|
max?: (HelixDatePicker["max"]) | undefined;
|
|
5204
|
+
/** How far the heading lets a reader step back from the days: `month` to a
|
|
5205
|
+
year's months, or `year` to a page of years and then its months.
|
|
5206
|
+
|
|
5207
|
+
Absent, the heading is text and the calendar moves a month at a time. Set,
|
|
5208
|
+
the heading is a button that shows the months, and from there the years,
|
|
5209
|
+
so a birth date forty years back is three presses rather than four hundred
|
|
5210
|
+
and eighty. Choosing a year shows its months, and choosing a month shows
|
|
5211
|
+
its days. */
|
|
5212
|
+
"max-view"?: (HelixDatePicker["maxView"]) | undefined;
|
|
5213
|
+
/** How far the heading lets a reader step back from the days: `month` to a
|
|
5214
|
+
year's months, or `year` to a page of years and then its months.
|
|
5215
|
+
|
|
5216
|
+
Absent, the heading is text and the calendar moves a month at a time. Set,
|
|
5217
|
+
the heading is a button that shows the months, and from there the years,
|
|
5218
|
+
so a birth date forty years back is three presses rather than four hundred
|
|
5219
|
+
and eighty. Choosing a year shows its months, and choosing a month shows
|
|
5220
|
+
its days. */
|
|
5221
|
+
maxView?: (HelixDatePicker["maxView"]) | undefined;
|
|
4735
5222
|
/** Earliest selectable date, as `YYYY-MM-DD`. */
|
|
4736
5223
|
min?: (HelixDatePicker["min"]) | undefined;
|
|
4737
5224
|
/** How many dates can be held at once. */
|
|
@@ -4745,10 +5232,24 @@ can drive the view. Reading gives the month on show; writing sets it, and
|
|
|
4745
5232
|
month?: (HelixDatePicker["month"]) | undefined;
|
|
4746
5233
|
/** How many months to show, side by side. */
|
|
4747
5234
|
months?: (HelixDatePicker["months"]) | undefined;
|
|
5235
|
+
/** The name of the heading where it shows the months, with `{heading}`
|
|
5236
|
+
filled in as the month on show. */
|
|
5237
|
+
"month-view-label"?: (HelixDatePicker["monthViewLabel"]) | undefined;
|
|
5238
|
+
/** The name of the heading where it shows the months, with `{heading}`
|
|
5239
|
+
filled in as the month on show. */
|
|
5240
|
+
monthViewLabel?: (HelixDatePicker["monthViewLabel"]) | undefined;
|
|
4748
5241
|
/** Accessible name for the control that pages forward. */
|
|
4749
5242
|
"next-label"?: (HelixDatePicker["nextLabel"]) | undefined;
|
|
4750
5243
|
/** Accessible name for the control that pages forward. */
|
|
4751
5244
|
nextLabel?: (HelixDatePicker["nextLabel"]) | undefined;
|
|
5245
|
+
/** Accessible name for the control that moves forward a year, in the months. */
|
|
5246
|
+
"next-year-label"?: (HelixDatePicker["nextYearLabel"]) | undefined;
|
|
5247
|
+
/** Accessible name for the control that moves forward a year, in the months. */
|
|
5248
|
+
nextYearLabel?: (HelixDatePicker["nextYearLabel"]) | undefined;
|
|
5249
|
+
/** Accessible name for the control that moves forward a page, in the years. */
|
|
5250
|
+
"next-years-label"?: (HelixDatePicker["nextYearsLabel"]) | undefined;
|
|
5251
|
+
/** Accessible name for the control that moves forward a page, in the years. */
|
|
5252
|
+
nextYearsLabel?: (HelixDatePicker["nextYearsLabel"]) | undefined;
|
|
4752
5253
|
/** Accessible name for the control that pages back.
|
|
4753
5254
|
|
|
4754
5255
|
A property because a calendar rendering its own month names from `locale`
|
|
@@ -4763,6 +5264,14 @@ would otherwise still announce its controls in English. `attribute:`
|
|
|
4763
5264
|
spelled out, since Lit lowercases a camelCase name rather than dash-casing
|
|
4764
5265
|
it. */
|
|
4765
5266
|
previousLabel?: (HelixDatePicker["previousLabel"]) | undefined;
|
|
5267
|
+
/** Accessible name for the control that moves back a year, in the months. */
|
|
5268
|
+
"previous-year-label"?: (HelixDatePicker["previousYearLabel"]) | undefined;
|
|
5269
|
+
/** Accessible name for the control that moves back a year, in the months. */
|
|
5270
|
+
previousYearLabel?: (HelixDatePicker["previousYearLabel"]) | undefined;
|
|
5271
|
+
/** Accessible name for the control that moves back a page, in the years. */
|
|
5272
|
+
"previous-years-label"?: (HelixDatePicker["previousYearsLabel"]) | undefined;
|
|
5273
|
+
/** Accessible name for the control that moves back a page, in the years. */
|
|
5274
|
+
previousYearsLabel?: (HelixDatePicker["previousYearsLabel"]) | undefined;
|
|
4766
5275
|
/** The validation message for a date after `max`. `{max}` is replaced with
|
|
4767
5276
|
`max`, written as a date in `locale`. */
|
|
4768
5277
|
"range-overflow-message"?: (HelixDatePicker["rangeOverflowMessage"]) | undefined;
|
|
@@ -4827,6 +5336,17 @@ bars. */
|
|
|
4827
5336
|
"value-missing-message"?: (HelixDatePicker["valueMissingMessage"]) | undefined;
|
|
4828
5337
|
/** The validation message for a required date picker with no date chosen. */
|
|
4829
5338
|
valueMissingMessage?: (HelixDatePicker["valueMissingMessage"]) | undefined;
|
|
5339
|
+
/** What the calendar shows: the days of a month, the months of a year, or a
|
|
5340
|
+
page of years. `day` unless `max-view` lets a reader step back.
|
|
5341
|
+
|
|
5342
|
+
Not reflected, being state. Set it to open on the months or the years. */
|
|
5343
|
+
view?: (HelixDatePicker["view"]) | undefined;
|
|
5344
|
+
/** The name of the heading where it shows a page of years, with `{heading}`
|
|
5345
|
+
filled in as the year on show. */
|
|
5346
|
+
"year-view-label"?: (HelixDatePicker["yearViewLabel"]) | undefined;
|
|
5347
|
+
/** The name of the heading where it shows a page of years, with `{heading}`
|
|
5348
|
+
filled in as the year on show. */
|
|
5349
|
+
yearViewLabel?: (HelixDatePicker["yearViewLabel"]) | undefined;
|
|
4830
5350
|
/** Whether the control is disabled and cannot be used.
|
|
4831
5351
|
|
|
4832
5352
|
Reflected, because the styled tier selects on it, and mirrored to
|
|
@@ -4853,6 +5373,24 @@ imperatively later, and nothing is hydrating by then.
|
|
|
4853
5373
|
|
|
4854
5374
|
Here rather than on each control. */
|
|
4855
5375
|
name?: (HelixDatePicker["name"]) | undefined;
|
|
5376
|
+
/** What each day shows, in place of its number: a function given the date as
|
|
5377
|
+
`YYYY-MM-DD` that returns text, an element or a Lit template.
|
|
5378
|
+
|
|
5379
|
+
For a price or a dot under the number, as React Aria's `CalendarCell`
|
|
5380
|
+
takes children. The cell is still named by its whole date, so what you
|
|
5381
|
+
draw here is for the eye; say anything a reader must hear in the date's
|
|
5382
|
+
description elsewhere. Return the day's number with it where it should
|
|
5383
|
+
still show. A property only, there being no way to write a function in
|
|
5384
|
+
markup. */
|
|
5385
|
+
dayContent?: (HelixDatePicker["dayContent"]) | undefined;
|
|
5386
|
+
/** A rule for which dates cannot be chosen: a function given the date as
|
|
5387
|
+
`YYYY-MM-DD` that returns `true` to bar it.
|
|
5388
|
+
|
|
5389
|
+
For what a list cannot say, such as the second Tuesday of each month or
|
|
5390
|
+
the days a server has fully booked. It bars a date as `disable-dates`
|
|
5391
|
+
does, in the grid and in validation. A property only, as React Aria's
|
|
5392
|
+
`isDateUnavailable` is a prop. */
|
|
5393
|
+
isDateUnavailable?: (HelixDatePicker["isDateUnavailable"]) | undefined;
|
|
4856
5394
|
/** The value as a `Date`, at midnight UTC, or `null` while there is no date.
|
|
4857
5395
|
|
|
4858
5396
|
The platform's own pair on `<input type="date">`, and this control holds the
|
|
@@ -4930,6 +5468,9 @@ labels line up, and lining up is a fact about all of them.
|
|
|
4930
5468
|
a reflecting default writes an attribute onto markup the consumer rendered,
|
|
4931
5469
|
and React reports that as a hydration mismatch. */
|
|
4932
5470
|
direction?: (HelixDescriptionList["direction"]) | undefined;
|
|
5471
|
+
/** The list's name, read by screen readers, such as "Server details". It
|
|
5472
|
+
makes the list a named group. */
|
|
5473
|
+
label?: (HelixDescriptionList["label"]) | undefined;
|
|
4933
5474
|
};
|
|
4934
5475
|
|
|
4935
5476
|
export type HelixDescriptionListVueEvents = {};
|
|
@@ -5022,6 +5563,16 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
5022
5563
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
5023
5564
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
5024
5565
|
open?: (HelixDialog["open"]) | undefined;
|
|
5566
|
+
/** Makes the dialog an alert dialog, for a message that interrupts to ask for
|
|
5567
|
+
an answer, such as a confirmation before something is deleted.
|
|
5568
|
+
|
|
5569
|
+
The `<dialog>` takes `role="alertdialog"`, so a screen reader announces the
|
|
5570
|
+
dialog and its description as it opens. Everything else stays the same:
|
|
5571
|
+
the dialog is modal, Escape asks to close it, and `persistent` still
|
|
5572
|
+
refuses that.
|
|
5573
|
+
|
|
5574
|
+
Not reflected, because no stylesheet selects on it. */
|
|
5575
|
+
alert?: (HelixDialog["alert"]) | undefined;
|
|
5025
5576
|
/** Which close requests the browser handles on its own.
|
|
5026
5577
|
|
|
5027
5578
|
`<dialog closedby>`, forwarded, and safe to forward because every path it
|
|
@@ -5044,6 +5595,17 @@ the property this component exists to keep.
|
|
|
5044
5595
|
Absent by default, which is the platform's `auto` and this library's rule
|
|
5045
5596
|
that a resting value is an attribute's absence. */
|
|
5046
5597
|
closedBy?: (HelixDialog["closedBy"]) | undefined;
|
|
5598
|
+
/** Draws a control that closes the dialog, in the corner where the title is.
|
|
5599
|
+
|
|
5600
|
+
Pressing it is `close()`, so it sends `helix-before-close` like every other
|
|
5601
|
+
way out, and `persistent` does not disable it. */
|
|
5602
|
+
dismissible?: (HelixDialog["dismissible"]) | undefined;
|
|
5603
|
+
/** The close control's accessible name. Translate it with the rest of your
|
|
5604
|
+
interface. */
|
|
5605
|
+
"dismiss-label"?: (HelixDialog["dismissLabel"]) | undefined;
|
|
5606
|
+
/** The close control's accessible name. Translate it with the rest of your
|
|
5607
|
+
interface. */
|
|
5608
|
+
dismissLabel?: (HelixDialog["dismissLabel"]) | undefined;
|
|
5047
5609
|
/** Accessible name for the dialog. When it is empty, the heading in the
|
|
5048
5610
|
`header` slot names the dialog. */
|
|
5049
5611
|
label?: (HelixDialog["label"]) | undefined;
|
|
@@ -5082,6 +5644,18 @@ export type HelixDialogVueEvents = {
|
|
|
5082
5644
|
};
|
|
5083
5645
|
|
|
5084
5646
|
export type HelixDividerVueProps = {
|
|
5647
|
+
/** Where content set into the line sits along it.
|
|
5648
|
+
|
|
5649
|
+
Absent is the middle. `start` and `end` move it toward one end, with a
|
|
5650
|
+
short length of line, `--divider-content-offset`, kept before or after it.
|
|
5651
|
+
A divider with nothing set into it is one line whatever this says. */
|
|
5652
|
+
"content-placement"?: (HelixDivider["contentPlacement"]) | undefined;
|
|
5653
|
+
/** Where content set into the line sits along it.
|
|
5654
|
+
|
|
5655
|
+
Absent is the middle. `start` and `end` move it toward one end, with a
|
|
5656
|
+
short length of line, `--divider-content-offset`, kept before or after it.
|
|
5657
|
+
A divider with nothing set into it is one line whatever this says. */
|
|
5658
|
+
contentPlacement?: (HelixDivider["contentPlacement"]) | undefined;
|
|
5085
5659
|
/** Whether screen readers announce the line as a separator.
|
|
5086
5660
|
|
|
5087
5661
|
Off by default, and out of the accessibility tree. Most rules on a page
|
|
@@ -5305,6 +5879,24 @@ default assigned to the property would reflect onto every host and put a
|
|
|
5305
5879
|
`placement="end"` into markup no consumer wrote. So what this tier
|
|
5306
5880
|
guarantees is the absence, and a sheet selects on it. */
|
|
5307
5881
|
placement?: (HelixDrawer["placement"]) | undefined;
|
|
5882
|
+
/** The fractions of the panel a reader can leave on screen, as a list such as
|
|
5883
|
+
`0.5 1`. The drawer opens at the smallest, and a swipe comes to rest at the
|
|
5884
|
+
nearest, or closes the drawer below the smallest.
|
|
5885
|
+
|
|
5886
|
+
Empty is `1`: the whole panel, and a swipe either closes it or puts it
|
|
5887
|
+
back. */
|
|
5888
|
+
"snap-points"?: (HelixDrawer["snapPoints"]) | undefined;
|
|
5889
|
+
/** The fractions of the panel a reader can leave on screen, as a list such as
|
|
5890
|
+
`0.5 1`. The drawer opens at the smallest, and a swipe comes to rest at the
|
|
5891
|
+
nearest, or closes the drawer below the smallest.
|
|
5892
|
+
|
|
5893
|
+
Empty is `1`: the whole panel, and a swipe either closes it or puts it
|
|
5894
|
+
back. */
|
|
5895
|
+
snapPoints?: (HelixDrawer["snapPoints"]) | undefined;
|
|
5896
|
+
/** Whether a touch or a pen can swipe the drawer away. `swipe="false"` turns
|
|
5897
|
+
it off, for a panel whose content has its own use for the gesture, such as
|
|
5898
|
+
a map. */
|
|
5899
|
+
swipe?: (HelixDrawer["swipe"]) | undefined;
|
|
5308
5900
|
/** What the dialog closed with, the way `<dialog>` reports it.
|
|
5309
5901
|
|
|
5310
5902
|
**The whole point of a `<dialog>` returning a value is lost behind a shadow
|
|
@@ -5359,14 +5951,6 @@ elements, and writing `tabindex` onto a host the consumer rendered is a
|
|
|
5359
5951
|
change a React consumer's hydration reports and does not patch up. The stop
|
|
5360
5952
|
lands inside this shadow root instead. */
|
|
5361
5953
|
focusable?: (HelixDrilldownItem["focusable"]) | undefined;
|
|
5362
|
-
/** Whether the page showing is the one this row is on.
|
|
5363
|
-
|
|
5364
|
-
Written by the stack. */
|
|
5365
|
-
onPage?: (HelixDrilldownItem["onPage"]) | undefined;
|
|
5366
|
-
/** Whether this row's own page is the one showing.
|
|
5367
|
-
|
|
5368
|
-
Written by the stack. */
|
|
5369
|
-
showingPage?: (HelixDrilldownItem["showingPage"]) | undefined;
|
|
5370
5954
|
};
|
|
5371
5955
|
|
|
5372
5956
|
export type HelixDrilldownItemVueEvents = {
|
|
@@ -5440,6 +6024,9 @@ export type HelixFileInputElementEvent<E = Event> = TypedEvent<
|
|
|
5440
6024
|
/** `helix-before-change` event type */
|
|
5441
6025
|
export type HelixFileInputHelixBeforeChangeElementEvent =
|
|
5442
6026
|
HelixFileInputElementEvent<HelixBeforeChangeEvent>;
|
|
6027
|
+
/** `helix-reject` event type */
|
|
6028
|
+
export type HelixFileInputHelixRejectElementEvent =
|
|
6029
|
+
HelixFileInputElementEvent<HelixRejectEvent>;
|
|
5443
6030
|
|
|
5444
6031
|
export type HelixFileInputVueProps = {
|
|
5445
6032
|
/** */
|
|
@@ -5479,12 +6066,31 @@ filter is the only check the platform makes and a drop never meets it. */
|
|
|
5479
6066
|
accept?: (HelixFileInput["accept"]) | undefined;
|
|
5480
6067
|
/** Which camera or microphone a mobile picker should offer, if any. */
|
|
5481
6068
|
capture?: (HelixFileInput["capture"]) | undefined;
|
|
6069
|
+
/** Whether the picker chooses a folder, and the field takes every file in
|
|
6070
|
+
it. The platform's `webkitdirectory`. */
|
|
6071
|
+
directory?: (HelixFileInput["directory"]) | undefined;
|
|
5482
6072
|
/** Language tag the sizes are written in.
|
|
5483
6073
|
|
|
5484
6074
|
Absent uses the runtime's own. */
|
|
5485
6075
|
locale?: (HelixFileInput["locale"]) | undefined;
|
|
6076
|
+
/** The most files the field holds, under `multiple`. Files past it are
|
|
6077
|
+
refused. */
|
|
6078
|
+
"max-files"?: (HelixFileInput["maxFiles"] | `${number}`) | undefined;
|
|
6079
|
+
/** The most files the field holds, under `multiple`. Files past it are
|
|
6080
|
+
refused. */
|
|
6081
|
+
maxFiles?: (HelixFileInput["maxFiles"]) | undefined;
|
|
6082
|
+
/** The most bytes one file may have. A larger one is refused. */
|
|
6083
|
+
"max-file-size"?: (HelixFileInput["maxFileSize"] | `${number}`) | undefined;
|
|
6084
|
+
/** The most bytes one file may have. A larger one is refused. */
|
|
6085
|
+
maxFileSize?: (HelixFileInput["maxFileSize"]) | undefined;
|
|
5486
6086
|
/** Whether more than one file can be chosen. */
|
|
5487
6087
|
multiple?: (HelixFileInput["multiple"]) | undefined;
|
|
6088
|
+
/** What a reader hears when files are refused, with `{count}` and `{names}`
|
|
6089
|
+
filled in. */
|
|
6090
|
+
"rejected-text"?: (HelixFileInput["rejectedText"]) | undefined;
|
|
6091
|
+
/** What a reader hears when files are refused, with `{count}` and `{names}`
|
|
6092
|
+
filled in. */
|
|
6093
|
+
rejectedText?: (HelixFileInput["rejectedText"]) | undefined;
|
|
5488
6094
|
/** The accessible name of the control that removes a file. `{name}` is
|
|
5489
6095
|
replaced with the file's name.
|
|
5490
6096
|
|
|
@@ -5529,6 +6135,9 @@ imperatively later, and nothing is hydrating by then.
|
|
|
5529
6135
|
|
|
5530
6136
|
Here rather than on each control. */
|
|
5531
6137
|
name?: (HelixFileInput["name"]) | undefined;
|
|
6138
|
+
/** Your own check on each arriving file, which returns why it is refused, or
|
|
6139
|
+
nothing to take it. A property, since a function cannot be an attribute. */
|
|
6140
|
+
validate?: (HelixFileInput["validate"]) | undefined;
|
|
5532
6141
|
};
|
|
5533
6142
|
|
|
5534
6143
|
export type HelixFileInputVueEvents = {
|
|
@@ -5536,6 +6145,8 @@ export type HelixFileInputVueEvents = {
|
|
|
5536
6145
|
change: HelixFileInputElementEvent;
|
|
5537
6146
|
/** Fired before the chosen files change, with their names, and cancelable. Canceling it keeps the files the field had, even when the browser has already written a new pick. */
|
|
5538
6147
|
"helix-before-change": HelixFileInputHelixBeforeChangeElementEvent;
|
|
6148
|
+
/** Fired when files arrive and some are left out. `detail.files` lists each with its `reason`: `type`, `size`, `count` or `invalid`, and your `validate` message. */
|
|
6149
|
+
"helix-reject": HelixFileInputHelixRejectElementEvent;
|
|
5539
6150
|
/** Fired after the value changes. */
|
|
5540
6151
|
input: HelixFileInputElementEvent;
|
|
5541
6152
|
};
|
|
@@ -5823,10 +6434,26 @@ an icon. */
|
|
|
5823
6434
|
/** The name of the clear button, read by screen readers. The button shows only
|
|
5824
6435
|
an icon. */
|
|
5825
6436
|
clearLabel?: (HelixFilterInput["clearLabel"]) | undefined;
|
|
6437
|
+
/** Whether the panel narrows itself to the suggestions that hold the term
|
|
6438
|
+
being typed, as React Aria's Autocomplete filters. Off, the panel shows
|
|
6439
|
+
what you slot and you narrow it. */
|
|
6440
|
+
"filter-suggestions"?: (HelixFilterInput["filterSuggestions"]) | undefined;
|
|
6441
|
+
/** Whether the panel narrows itself to the suggestions that hold the term
|
|
6442
|
+
being typed, as React Aria's Autocomplete filters. Off, the panel shows
|
|
6443
|
+
what you slot and you narrow it. */
|
|
6444
|
+
filterSuggestions?: (HelixFilterInput["filterSuggestions"]) | undefined;
|
|
5826
6445
|
/** The text shown while the field is empty.
|
|
5827
6446
|
|
|
5828
6447
|
Not a label: it goes when typing starts. */
|
|
5829
6448
|
placeholder?: (HelixFilterInput["placeholder"]) | undefined;
|
|
6449
|
+
/** What a reader hears for one suggestion, with `{count}` filled in. */
|
|
6450
|
+
"suggestion-label"?: (HelixFilterInput["suggestionLabel"]) | undefined;
|
|
6451
|
+
/** What a reader hears for one suggestion, with `{count}` filled in. */
|
|
6452
|
+
suggestionLabel?: (HelixFilterInput["suggestionLabel"]) | undefined;
|
|
6453
|
+
/** What a reader hears for any other number of suggestions, with `{count}` filled in. */
|
|
6454
|
+
"suggestions-label"?: (HelixFilterInput["suggestionsLabel"]) | undefined;
|
|
6455
|
+
/** What a reader hears for any other number of suggestions, with `{count}` filled in. */
|
|
6456
|
+
suggestionsLabel?: (HelixFilterInput["suggestionsLabel"]) | undefined;
|
|
5830
6457
|
/** Whether the control is disabled and cannot be used.
|
|
5831
6458
|
|
|
5832
6459
|
Reflected, because the styled tier selects on it, and mirrored to
|
|
@@ -5877,6 +6504,18 @@ export type HelixFilterInputVueEvents = {
|
|
|
5877
6504
|
};
|
|
5878
6505
|
|
|
5879
6506
|
export type HelixFlexVueProps = {
|
|
6507
|
+
/** How the lines of a wrapping row share the space across it, set as
|
|
6508
|
+
`align-content`.
|
|
6509
|
+
|
|
6510
|
+
Named for the CSS property it sets, the way `alignItems` is. It moves
|
|
6511
|
+
nothing in a row that does not wrap, which has one line. */
|
|
6512
|
+
"align-content"?: (HelixFlex["alignContent"]) | undefined;
|
|
6513
|
+
/** How the lines of a wrapping row share the space across it, set as
|
|
6514
|
+
`align-content`.
|
|
6515
|
+
|
|
6516
|
+
Named for the CSS property it sets, the way `alignItems` is. It moves
|
|
6517
|
+
nothing in a row that does not wrap, which has one line. */
|
|
6518
|
+
alignContent?: (HelixFlex["alignContent"]) | undefined;
|
|
5880
6519
|
/** How items align across the direction, set as `align-items`.
|
|
5881
6520
|
|
|
5882
6521
|
**Named for the CSS property it sets, because it is that property.** A flex
|
|
@@ -5911,7 +6550,17 @@ inside every field in it, through a hint no rule here declares and none can
|
|
|
5911
6550
|
see, and the fix is a name the platform has no opinion about rather than a
|
|
5912
6551
|
guard against the hint. */
|
|
5913
6552
|
alignItems?: (HelixFlex["alignItems"]) | undefined;
|
|
5914
|
-
/**
|
|
6553
|
+
/** Space between the items of a row, named on the space scale. Wins over
|
|
6554
|
+
`gap` across the row. */
|
|
6555
|
+
"column-gap"?: (HelixFlex["columnGap"]) | undefined;
|
|
6556
|
+
/** Space between the items of a row, named on the space scale. Wins over
|
|
6557
|
+
`gap` across the row. */
|
|
6558
|
+
columnGap?: (HelixFlex["columnGap"]) | undefined;
|
|
6559
|
+
/** Whether items run across or down, and from which end.
|
|
6560
|
+
|
|
6561
|
+
`row-reverse` and `column-reverse` change only where the items are drawn.
|
|
6562
|
+
Focus and a screen reader still follow the order of the markup, so use
|
|
6563
|
+
them for a visual order that reads the same either way. */
|
|
5915
6564
|
direction?: (HelixFlex["direction"]) | undefined;
|
|
5916
6565
|
/** Space between items, named on the space scale. */
|
|
5917
6566
|
gap?: (HelixFlex["gap"]) | undefined;
|
|
@@ -5929,7 +6578,20 @@ Named for the property it sets, the way `alignItems` is. `between` and
|
|
|
5929
6578
|
`around` drop the `space-` prefix and nothing else does, because those two
|
|
5930
6579
|
are the only values whose CSS spelling is two words. */
|
|
5931
6580
|
justifyContent?: (HelixFlex["justifyContent"]) | undefined;
|
|
5932
|
-
/**
|
|
6581
|
+
/** A common layout pattern: `cluster`, `split`, `flank` or `flank-end`.
|
|
6582
|
+
|
|
6583
|
+
Each sets the wrapping, alignment and spread it needs, and an attribute
|
|
6584
|
+
you write as well wins over it. `flank` holds the first item at its own
|
|
6585
|
+
width and gives the last one the rest, and `flank-end` does the reverse. */
|
|
6586
|
+
layout?: (HelixFlex["layout"]) | undefined;
|
|
6587
|
+
/** Space between the lines of a wrapping row, or between the items of a
|
|
6588
|
+
column, named on the space scale. Wins over `gap` down the column. */
|
|
6589
|
+
"row-gap"?: (HelixFlex["rowGap"]) | undefined;
|
|
6590
|
+
/** Space between the lines of a wrapping row, or between the items of a
|
|
6591
|
+
column, named on the space scale. Wins over `gap` down the column. */
|
|
6592
|
+
rowGap?: (HelixFlex["rowGap"]) | undefined;
|
|
6593
|
+
/** Whether items wrap onto more lines. `wrap="reverse"` wraps them upward,
|
|
6594
|
+
each new line above the one before. */
|
|
5933
6595
|
wrap?: (HelixFlex["wrap"]) | undefined;
|
|
5934
6596
|
};
|
|
5935
6597
|
|
|
@@ -5952,6 +6614,12 @@ Lit's server shim, `textContent`, `children`, `firstChild` and
|
|
|
5952
6614
|
it. An element rendered on a server needs the attribute; one rendered in a
|
|
5953
6615
|
browser may use either. */
|
|
5954
6616
|
date?: (HelixFormatDate["date"]) | undefined;
|
|
6617
|
+
/** The locale's own pattern for the date: `full`, `long`, `medium`, or
|
|
6618
|
+
`short`. Set, it stands in for `weekday`, `day`, `month`, `year` and `era`. */
|
|
6619
|
+
"date-style"?: (HelixFormatDate["dateStyle"]) | undefined;
|
|
6620
|
+
/** The locale's own pattern for the date: `full`, `long`, `medium`, or
|
|
6621
|
+
`short`. Set, it stands in for `weekday`, `day`, `month`, `year` and `era`. */
|
|
6622
|
+
dateStyle?: (HelixFormatDate["dateStyle"]) | undefined;
|
|
5955
6623
|
/** How the day of the month is written, where a date is shown. */
|
|
5956
6624
|
day?: (HelixFormatDate["day"]) | undefined;
|
|
5957
6625
|
/** Shows how long ago the timestamp was, in a compact form such as "3h", in
|
|
@@ -5961,8 +6629,22 @@ Reflected, because it is the one property that decides which of two readings
|
|
|
5961
6629
|
this is and a stylesheet has a reason to know: a compact reading is a fixed
|
|
5962
6630
|
few characters and a date is not. */
|
|
5963
6631
|
elapsed?: (HelixFormatDate["elapsed"]) | undefined;
|
|
6632
|
+
/** How the era is written, such as AD, where a date is shown. */
|
|
6633
|
+
era?: (HelixFormatDate["era"]) | undefined;
|
|
5964
6634
|
/** How the hour is written, where a time of day is shown. */
|
|
5965
6635
|
hour?: (HelixFormatDate["hour"]) | undefined;
|
|
6636
|
+
/** The clock a time of day is written on: `h12` or `h11` for twelve hours,
|
|
6637
|
+
`h23` or `h24` for twenty-four.
|
|
6638
|
+
|
|
6639
|
+
Absent is the locale's own, which is right unless your product shows every
|
|
6640
|
+
reader the same clock whatever their language. */
|
|
6641
|
+
"hour-cycle"?: (HelixFormatDate["hourCycle"]) | undefined;
|
|
6642
|
+
/** The clock a time of day is written on: `h12` or `h11` for twelve hours,
|
|
6643
|
+
`h23` or `h24` for twenty-four.
|
|
6644
|
+
|
|
6645
|
+
Absent is the locale's own, which is right unless your product shows every
|
|
6646
|
+
reader the same clock whatever their language. */
|
|
6647
|
+
hourCycle?: (HelixFormatDate["hourCycle"]) | undefined;
|
|
5966
6648
|
/** The locale to format the timestamp in.
|
|
5967
6649
|
|
|
5968
6650
|
Empty is the runtime's own. */
|
|
@@ -5971,8 +6653,26 @@ Empty is the runtime's own. */
|
|
|
5971
6653
|
minute?: (HelixFormatDate["minute"]) | undefined;
|
|
5972
6654
|
/** How the month is written, where a date is shown. */
|
|
5973
6655
|
month?: (HelixFormatDate["month"]) | undefined;
|
|
6656
|
+
/** Whether a `relative` reading may use a word for a number: `auto` says
|
|
6657
|
+
"yesterday" and "now", and `always` says "1 day ago" and "in 0 seconds". */
|
|
6658
|
+
numeric?: (HelixFormatDate["numeric"]) | undefined;
|
|
6659
|
+
/** Shows how long ago the timestamp was, or how long until it, in words, in
|
|
6660
|
+
place of the date: `long` ("3 hours ago"), `short` ("3 hr. ago") or
|
|
6661
|
+
`narrow` ("3h ago").
|
|
6662
|
+
|
|
6663
|
+
The reading refreshes as it goes stale, as `elapsed` does, and the whole
|
|
6664
|
+
date is its title. `elapsed` wins where both are set. */
|
|
6665
|
+
relative?: (HelixFormatDate["relative"]) | undefined;
|
|
5974
6666
|
/** How the second is written, where a time of day is shown. */
|
|
5975
6667
|
second?: (HelixFormatDate["second"]) | undefined;
|
|
6668
|
+
/** The locale's own pattern for the time of day: `full`, `long`, `medium`, or
|
|
6669
|
+
`short`. Set, it stands in for `hour`, `minute`, `second` and
|
|
6670
|
+
`time-zone-name`. */
|
|
6671
|
+
"time-style"?: (HelixFormatDate["timeStyle"]) | undefined;
|
|
6672
|
+
/** The locale's own pattern for the time of day: `full`, `long`, `medium`, or
|
|
6673
|
+
`short`. Set, it stands in for `hour`, `minute`, `second` and
|
|
6674
|
+
`time-zone-name`. */
|
|
6675
|
+
timeStyle?: (HelixFormatDate["timeStyle"]) | undefined;
|
|
5976
6676
|
/** The time zone to read the timestamp in.
|
|
5977
6677
|
|
|
5978
6678
|
Empty is the runtime's own. */
|
|
@@ -6320,6 +7020,28 @@ There is no `justifyContent` here for the same reason: the tracks are
|
|
|
6320
7020
|
distribute. `columns`, `min` and `--grid-columns` are how a grid says how
|
|
6321
7021
|
wide its tracks are. */
|
|
6322
7022
|
alignItems?: (HelixGrid["alignItems"]) | undefined;
|
|
7023
|
+
/** How cells fill the grid when no child places itself, set as
|
|
7024
|
+
`grid-auto-flow`.
|
|
7025
|
+
|
|
7026
|
+
`column` fills each column before the next. `dense` and `column-dense`
|
|
7027
|
+
also move a later small cell back into an earlier gap. Moving them changes
|
|
7028
|
+
only where they are drawn, so focus and a screen reader still follow the
|
|
7029
|
+
markup. */
|
|
7030
|
+
"auto-flow"?: (HelixGrid["autoFlow"]) | undefined;
|
|
7031
|
+
/** How cells fill the grid when no child places itself, set as
|
|
7032
|
+
`grid-auto-flow`.
|
|
7033
|
+
|
|
7034
|
+
`column` fills each column before the next. `dense` and `column-dense`
|
|
7035
|
+
also move a later small cell back into an earlier gap. Moving them changes
|
|
7036
|
+
only where they are drawn, so focus and a screen reader still follow the
|
|
7037
|
+
markup. */
|
|
7038
|
+
autoFlow?: (HelixGrid["autoFlow"]) | undefined;
|
|
7039
|
+
/** The space between columns, as a step on the space scale. Wins over `gap`
|
|
7040
|
+
across the row. */
|
|
7041
|
+
"column-gap"?: (HelixGrid["columnGap"]) | undefined;
|
|
7042
|
+
/** The space between columns, as a step on the space scale. Wins over `gap`
|
|
7043
|
+
across the row. */
|
|
7044
|
+
columnGap?: (HelixGrid["columnGap"]) | undefined;
|
|
6323
7045
|
/** A fixed number of equal columns.
|
|
6324
7046
|
|
|
6325
7047
|
Two to six are plain CSS. Any other count is written into the shadow
|
|
@@ -6327,6 +7049,16 @@ root's rule, which the server renders too. */
|
|
|
6327
7049
|
columns?: (HelixGrid["columns"]) | undefined;
|
|
6328
7050
|
/** The space between cells, as a step on the space scale. */
|
|
6329
7051
|
gap?: (HelixGrid["gap"]) | undefined;
|
|
7052
|
+
/** How each cell aligns within its column. Sets `justify-items`.
|
|
7053
|
+
|
|
7054
|
+
Named for the CSS property it sets, the way `alignItems` is. Absent, every
|
|
7055
|
+
cell stretches to the width of its column. */
|
|
7056
|
+
"justify-items"?: (HelixGrid["justifyItems"]) | undefined;
|
|
7057
|
+
/** How each cell aligns within its column. Sets `justify-items`.
|
|
7058
|
+
|
|
7059
|
+
Named for the CSS property it sets, the way `alignItems` is. Absent, every
|
|
7060
|
+
cell stretches to the width of its column. */
|
|
7061
|
+
justifyItems?: (HelixGrid["justifyItems"]) | undefined;
|
|
6330
7062
|
/** The minimum column width. The grid fits as many columns as the width allows.
|
|
6331
7063
|
|
|
6332
7064
|
A length, such as `12rem`, or `calc()`, `clamp()`, `min()`, `max()` and
|
|
@@ -6336,6 +7068,12 @@ lays out by `columns`.
|
|
|
6336
7068
|
Takes precedence over `columns`: a grid that both fixes a count and reflows
|
|
6337
7069
|
is two intentions in one element. */
|
|
6338
7070
|
min?: (HelixGrid["min"]) | undefined;
|
|
7071
|
+
/** The space between rows, as a step on the space scale. Wins over `gap` down
|
|
7072
|
+
the column. */
|
|
7073
|
+
"row-gap"?: (HelixGrid["rowGap"]) | undefined;
|
|
7074
|
+
/** The space between rows, as a step on the space scale. Wins over `gap` down
|
|
7075
|
+
the column. */
|
|
7076
|
+
rowGap?: (HelixGrid["rowGap"]) | undefined;
|
|
6339
7077
|
};
|
|
6340
7078
|
|
|
6341
7079
|
export type HelixGridVueEvents = {};
|
|
@@ -6568,6 +7306,22 @@ Lives here rather than only on `IconButton` so the two share one render.
|
|
|
6568
7306
|
An icon-only button without it is a control a screen reader announces as
|
|
6569
7307
|
"button" and nothing else. */
|
|
6570
7308
|
label?: (HelixIconButton["label"]) | undefined;
|
|
7309
|
+
/** Whether the action the button started is still running.
|
|
7310
|
+
|
|
7311
|
+
A pending button keeps focus and stays in the tab order, and refuses every
|
|
7312
|
+
press: a click, Enter and Space, and Enter in a field of its form. The
|
|
7313
|
+
click does not reach your listeners. The inner control carries
|
|
7314
|
+
`aria-busy` and `aria-disabled`, and when the button becomes pending while
|
|
7315
|
+
it has focus, a reader hears `pending-label`. The styled button draws a
|
|
7316
|
+
turning ring over its words.
|
|
7317
|
+
|
|
7318
|
+
`disabled` takes the button out of reach. Use `pending` for the wait after
|
|
7319
|
+
a press, so focus stays where the reader left it. */
|
|
7320
|
+
pending?: (HelixIconButton["pending"]) | undefined;
|
|
7321
|
+
/** What a reader hears when the button becomes pending while it has focus. */
|
|
7322
|
+
"pending-label"?: (HelixIconButton["pendingLabel"]) | undefined;
|
|
7323
|
+
/** What a reader hears when the button becomes pending while it has focus. */
|
|
7324
|
+
pendingLabel?: (HelixIconButton["pendingLabel"]) | undefined;
|
|
6571
7325
|
/** What activating the button does to its form. */
|
|
6572
7326
|
type?: (HelixIconButton["type"]) | undefined;
|
|
6573
7327
|
/** The value this button submits under its own `name`, as a native submit
|
|
@@ -6687,8 +7441,12 @@ disagreeing with its own name for every reader who meant the left. */
|
|
|
6687
7441
|
so it is what markup can carry, and resolving one means an index of the
|
|
6688
7442
|
whole set that no bundler can shake: 15 kB for a consumer who renders one
|
|
6689
7443
|
mark. An attribute is the only thing an HTML author can write, and that is
|
|
6690
|
-
worth the index; a consumer who would rather not pay it
|
|
6691
|
-
|
|
7444
|
+
worth the index; a consumer who would rather not pay it imports the
|
|
7445
|
+
element from `icon/root` and registers the glyphs it names, or hands over
|
|
7446
|
+
the value instead.
|
|
7447
|
+
|
|
7448
|
+
A name written `prefix:name` asks the library registered under that
|
|
7449
|
+
prefix. */
|
|
6692
7450
|
name?: (HelixIcon["name"]) | undefined;
|
|
6693
7451
|
/** The icon to draw, as an object you import.
|
|
6694
7452
|
|
|
@@ -6706,8 +7464,10 @@ for. Set both and this wins, the value being the more specific statement. */
|
|
|
6706
7464
|
};
|
|
6707
7465
|
|
|
6708
7466
|
export type HelixIconVueEvents = {
|
|
6709
|
-
/** `name` matches no icon
|
|
7467
|
+
/** `name` matches no registered icon and no library answers it, so nothing is drawn. */
|
|
6710
7468
|
error: HelixIconElementEvent;
|
|
7469
|
+
/** A glyph a library gave later for `name` is drawn. */
|
|
7470
|
+
load: HelixIconElementEvent;
|
|
6711
7471
|
};
|
|
6712
7472
|
|
|
6713
7473
|
/** `HelixImage` component event */
|
|
@@ -6766,6 +7526,18 @@ ninety-nine pictures. */
|
|
|
6766
7526
|
picture worth putting in a component is usually below the fold and the one
|
|
6767
7527
|
that is not is the exception worth writing down. */
|
|
6768
7528
|
loading?: (HelixImage["loading"]) | undefined;
|
|
7529
|
+
/** How long, in milliseconds, the placeholder waits before it shows.
|
|
7530
|
+
|
|
7531
|
+
Absent or `0` shows it at once. A picture that arrives inside
|
|
7532
|
+
the wait never shows a placeholder at all, so a cached or fast image does
|
|
7533
|
+
not flash one. Radix's `delayMs` on its avatar fallback is the same idea. */
|
|
7534
|
+
"placeholder-delay"?: (HelixImage["placeholderDelay"] | `${number}`) | undefined;
|
|
7535
|
+
/** How long, in milliseconds, the placeholder waits before it shows.
|
|
7536
|
+
|
|
7537
|
+
Absent or `0` shows it at once. A picture that arrives inside
|
|
7538
|
+
the wait never shows a placeholder at all, so a cached or fast image does
|
|
7539
|
+
not flash one. Radix's `delayMs` on its avatar fallback is the same idea. */
|
|
7540
|
+
placeholderDelay?: (HelixImage["placeholderDelay"]) | undefined;
|
|
6769
7541
|
/** How much of the referring URL to send with the request. */
|
|
6770
7542
|
referrerpolicy?: (HelixImage["referrerPolicy"]) | undefined;
|
|
6771
7543
|
/** How much of the referring URL to send with the request. */
|
|
@@ -6809,6 +7581,9 @@ export type HelixInputElementEvent<E = Event> = TypedEvent<HelixInput, E>;
|
|
|
6809
7581
|
/** `helix-before-change` event type */
|
|
6810
7582
|
export type HelixInputHelixBeforeChangeElementEvent =
|
|
6811
7583
|
HelixInputElementEvent<HelixBeforeChangeEvent>;
|
|
7584
|
+
/** `helix-clear` event type */
|
|
7585
|
+
export type HelixInputHelixClearElementEvent =
|
|
7586
|
+
HelixInputElementEvent<HelixClearEvent>;
|
|
6812
7587
|
|
|
6813
7588
|
export type HelixInputVueProps = {
|
|
6814
7589
|
/** The value the control starts with. A form reset returns it to this value. */
|
|
@@ -7011,6 +7786,8 @@ export type HelixInputVueEvents = {
|
|
|
7011
7786
|
change: HelixInputElementEvent;
|
|
7012
7787
|
/** The text is about to change. Cancelable: cancel it to keep the current text. */
|
|
7013
7788
|
"helix-before-change": HelixInputHelixBeforeChangeElementEvent;
|
|
7789
|
+
/** Fired after the clear button has emptied the field, after `input` and `change`. */
|
|
7790
|
+
"helix-clear": HelixInputHelixClearElementEvent;
|
|
7014
7791
|
/** Fired as the value changes. */
|
|
7015
7792
|
input: HelixInputElementEvent;
|
|
7016
7793
|
};
|
|
@@ -7022,6 +7799,13 @@ export type HelixKbdHelixShortcutElementEvent =
|
|
|
7022
7799
|
HelixKbdElementEvent<HelixShortcutEvent>;
|
|
7023
7800
|
|
|
7024
7801
|
export type HelixKbdVueProps = {
|
|
7802
|
+
/** The id of the control the shortcut works, which is given the chord as its
|
|
7803
|
+
`aria-keyshortcuts`.
|
|
7804
|
+
|
|
7805
|
+
Names an element in the same tree, the way `Tooltip.for` does. Separate
|
|
7806
|
+
from `within`, which says where the key listens: a key can describe a
|
|
7807
|
+
shortcut the page binds itself. */
|
|
7808
|
+
for?: (HelixKbd["for"]) | undefined;
|
|
7025
7809
|
/** The key or chord to show, such as `mod+k`, `?`, or `/`.
|
|
7026
7810
|
|
|
7027
7811
|
`mod` is the platform's own command modifier, which is the reason to write
|
|
@@ -7050,6 +7834,12 @@ export type HelixKbdVueEvents = {
|
|
|
7050
7834
|
"helix-shortcut": HelixKbdHelixShortcutElementEvent;
|
|
7051
7835
|
};
|
|
7052
7836
|
|
|
7837
|
+
/** `HelixLegend` component event */
|
|
7838
|
+
export type HelixLegendElementEvent<E = Event> = TypedEvent<HelixLegend, E>;
|
|
7839
|
+
/** `helix-before-change` event type */
|
|
7840
|
+
export type HelixLegendHelixBeforeChangeElementEvent =
|
|
7841
|
+
HelixLegendElementEvent<HelixBeforeChangeEvent>;
|
|
7842
|
+
|
|
7053
7843
|
export type HelixLegendVueProps = {
|
|
7054
7844
|
/** How the swatches are drawn: `outlined`, `subtle`, or `solid`.
|
|
7055
7845
|
|
|
@@ -7145,14 +7935,40 @@ shadow root reads a table in that root rather than one in the document.
|
|
|
7145
7935
|
**In React this arrives as a property and not as an attribute**, the way
|
|
7146
7936
|
`Tooltip.for` does, so it does not reflect and nothing styles on it. */
|
|
7147
7937
|
for?: (HelixLegend["for"]) | undefined;
|
|
7938
|
+
/** The series hidden on the table, by name, separated by commas: what
|
|
7939
|
+
`toggles` hides and shows.
|
|
7940
|
+
|
|
7941
|
+
Set it to start with series hidden. Every chart reading the same table
|
|
7942
|
+
draws without them. Commas only, because a column's heading may hold a
|
|
7943
|
+
space. For a ring the names are the rows. */
|
|
7944
|
+
"hidden-series"?: (HelixLegend["hiddenSeries"]) | undefined;
|
|
7945
|
+
/** The series hidden on the table, by name, separated by commas: what
|
|
7946
|
+
`toggles` hides and shows.
|
|
7947
|
+
|
|
7948
|
+
Set it to start with series hidden. Every chart reading the same table
|
|
7949
|
+
draws without them. Commas only, because a column's heading may hold a
|
|
7950
|
+
space. For a ring the names are the rows. */
|
|
7951
|
+
hiddenSeries?: (HelixLegend["hiddenSeries"]) | undefined;
|
|
7148
7952
|
/** The name of the list, which a screen reader announces before its entries.
|
|
7149
7953
|
|
|
7150
7954
|
Absent names the list after the table's caption, so a page with several
|
|
7151
7955
|
charts has a legend list for each that says which chart it keys. */
|
|
7152
7956
|
label?: (HelixLegend["label"]) | undefined;
|
|
7957
|
+
/** Makes each entry a button that hides or shows its series in every chart
|
|
7958
|
+
reading the same table.
|
|
7959
|
+
|
|
7960
|
+
Absent, the legend only displays, which is what it did before this
|
|
7961
|
+
existed. Reflected, because the styled tier draws a button differently
|
|
7962
|
+
from a plain entry. */
|
|
7963
|
+
toggles?: (HelixLegend["toggles"]) | undefined;
|
|
7153
7964
|
};
|
|
7154
7965
|
|
|
7155
|
-
export type HelixLegendVueEvents = {
|
|
7966
|
+
export type HelixLegendVueEvents = {
|
|
7967
|
+
/** Fired once a toggle has hidden or shown a series. */
|
|
7968
|
+
change: HelixLegendElementEvent;
|
|
7969
|
+
/** Fired before a toggle hides or shows a series, with the `hidden-series` it would leave. Cancelable. */
|
|
7970
|
+
"helix-before-change": HelixLegendHelixBeforeChangeElementEvent;
|
|
7971
|
+
};
|
|
7156
7972
|
|
|
7157
7973
|
export type HelixLightboxItemVueProps = {
|
|
7158
7974
|
/** Whether this item is the one shown.
|
|
@@ -7221,6 +8037,19 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
7221
8037
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
7222
8038
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
7223
8039
|
open?: (HelixLightbox["open"]) | undefined;
|
|
8040
|
+
/** Draws the viewer's own previous, next and close controls over the picture.
|
|
8041
|
+
|
|
8042
|
+
Off by default, for a viewer whose chrome you compose in the `header` and
|
|
8043
|
+
`footer` slots. The controls hide with the rest of the chrome while the
|
|
8044
|
+
reader is idle, and the previous and next ones say they are unavailable at
|
|
8045
|
+
either end of a set that does not `loop`. */
|
|
8046
|
+
controls?: (HelixLightbox["controls"]) | undefined;
|
|
8047
|
+
/** The close control's accessible name. Translate it with the rest of your
|
|
8048
|
+
interface. */
|
|
8049
|
+
"dismiss-label"?: (HelixLightbox["dismissLabel"]) | undefined;
|
|
8050
|
+
/** The close control's accessible name. Translate it with the rest of your
|
|
8051
|
+
interface. */
|
|
8052
|
+
dismissLabel?: (HelixLightbox["dismissLabel"]) | undefined;
|
|
7224
8053
|
/** How long the user can be idle before the header and footer hide, in
|
|
7225
8054
|
milliseconds.
|
|
7226
8055
|
|
|
@@ -7239,6 +8068,28 @@ keep the chrome up is the consumer's to decide with this. */
|
|
|
7239
8068
|
label?: (HelixLightbox["label"]) | undefined;
|
|
7240
8069
|
/** Whether moving past the last item returns to the first. */
|
|
7241
8070
|
loop?: (HelixLightbox["loop"]) | undefined;
|
|
8071
|
+
/** The next control's accessible name. */
|
|
8072
|
+
"next-label"?: (HelixLightbox["nextLabel"]) | undefined;
|
|
8073
|
+
/** The next control's accessible name. */
|
|
8074
|
+
nextLabel?: (HelixLightbox["nextLabel"]) | undefined;
|
|
8075
|
+
/** The previous control's accessible name. */
|
|
8076
|
+
"previous-label"?: (HelixLightbox["previousLabel"]) | undefined;
|
|
8077
|
+
/** The previous control's accessible name. */
|
|
8078
|
+
previousLabel?: (HelixLightbox["previousLabel"]) | undefined;
|
|
8079
|
+
/** The name of an item with no `label` of its own, with `{index}` and
|
|
8080
|
+
`{count}` filled in. */
|
|
8081
|
+
"slide-label"?: (HelixLightbox["slideLabel"]) | undefined;
|
|
8082
|
+
/** The name of an item with no `label` of its own, with `{index}` and
|
|
8083
|
+
`{count}` filled in. */
|
|
8084
|
+
slideLabel?: (HelixLightbox["slideLabel"]) | undefined;
|
|
8085
|
+
/** The word screen readers announce in place of an item's role, set as
|
|
8086
|
+
`aria-roledescription`. Translate it with the rest of your text, or empty
|
|
8087
|
+
it to leave the role as `group`. */
|
|
8088
|
+
"slide-role-label"?: (HelixLightbox["slideRoleLabel"]) | undefined;
|
|
8089
|
+
/** The word screen readers announce in place of an item's role, set as
|
|
8090
|
+
`aria-roledescription`. Translate it with the rest of your text, or empty
|
|
8091
|
+
it to leave the role as `group`. */
|
|
8092
|
+
slideRoleLabel?: (HelixLightbox["slideRoleLabel"]) | undefined;
|
|
7242
8093
|
/** The status text that says which item is shown, with `{index}`, `{count}`
|
|
7243
8094
|
and the item's `{label}` filled in.
|
|
7244
8095
|
|
|
@@ -7428,7 +8279,24 @@ near the top of the box. */
|
|
|
7428
8279
|
|
|
7429
8280
|
export type HelixLineChartVueEvents = {};
|
|
7430
8281
|
|
|
8282
|
+
/** `HelixListItem` component event */
|
|
8283
|
+
export type HelixListItemElementEvent<E = Event> = TypedEvent<HelixListItem, E>;
|
|
8284
|
+
/** `helix-action` event type */
|
|
8285
|
+
export type HelixListItemHelixActionElementEvent =
|
|
8286
|
+
HelixListItemElementEvent<HelixActionEvent>;
|
|
8287
|
+
|
|
7431
8288
|
export type HelixListItemVueProps = {
|
|
8289
|
+
/** Marks the row a reader is on: `page` for the page they are reading, `step`,
|
|
8290
|
+
`location`, `date` or `time` for those, and written bare for the current
|
|
8291
|
+
one of a set. It is `aria-current` on the row's link, or on the row where
|
|
8292
|
+
it has none.
|
|
8293
|
+
|
|
8294
|
+
Not reflected, as a state never is. `row-current` is the part a
|
|
8295
|
+
stylesheet draws it from. */
|
|
8296
|
+
current?: (HelixListItem["current"]) | undefined;
|
|
8297
|
+
/** Takes the row out of reach in a list with `selection-mode`: the arrow keys
|
|
8298
|
+
pass over it and it cannot be selected or acted on. */
|
|
8299
|
+
disabled?: (HelixListItem["disabled"]) | undefined;
|
|
7432
8300
|
/** The URL the row links to. Leave it empty for a row that is not a link.
|
|
7433
8301
|
|
|
7434
8302
|
Empty rather than optional, and unset by default: a list is not always a
|
|
@@ -7440,9 +8308,36 @@ to the current page on every row a consumer never asked to be one. */
|
|
|
7440
8308
|
rel?: (HelixListItem["rel"]) | undefined;
|
|
7441
8309
|
/** Where the link opens. Use it for a row that leaves the site. */
|
|
7442
8310
|
target?: (HelixListItem["target"]) | undefined;
|
|
8311
|
+
/** What the row stands for in its list's `value`.
|
|
8312
|
+
|
|
8313
|
+
Absent is the row's own words. */
|
|
8314
|
+
value?: (HelixListItem["value"]) | undefined;
|
|
8315
|
+
/** Whether the row holds its list's tab stop.
|
|
8316
|
+
|
|
8317
|
+
Written by a list with `selection-mode` on every row it holds, and unset
|
|
8318
|
+
otherwise, which is how a row knows it is a row of a grid. No attribute:
|
|
8319
|
+
it is coordination between elements, as `Tag.focusable` is. */
|
|
8320
|
+
focusable?: (HelixListItem["focusable"]) | undefined;
|
|
8321
|
+
/** Whether the row is selected, in a list that selects.
|
|
8322
|
+
|
|
8323
|
+
Written by the list from its own `value`, and unset where nothing can be
|
|
8324
|
+
selected, which keeps `aria-selected` off a list that does not select. */
|
|
8325
|
+
selected?: (HelixListItem["selected"]) | undefined;
|
|
7443
8326
|
};
|
|
7444
8327
|
|
|
7445
|
-
export type HelixListItemVueEvents = {
|
|
8328
|
+
export type HelixListItemVueEvents = {
|
|
8329
|
+
/** The reader pressed Enter on the row, or pressed the row in a list that selects nothing, in a list with `selection-mode`. Read the row from `target`. A row with `href` follows its link instead. */
|
|
8330
|
+
"helix-action": HelixListItemHelixActionElementEvent;
|
|
8331
|
+
};
|
|
8332
|
+
|
|
8333
|
+
/** `HelixList` component event */
|
|
8334
|
+
export type HelixListElementEvent<E = Event> = TypedEvent<HelixList, E>;
|
|
8335
|
+
/** `helix-action` event type */
|
|
8336
|
+
export type HelixListHelixActionElementEvent =
|
|
8337
|
+
HelixListElementEvent<HelixActionEvent>;
|
|
8338
|
+
/** `helix-before-change` event type */
|
|
8339
|
+
export type HelixListHelixBeforeChangeElementEvent =
|
|
8340
|
+
HelixListElementEvent<HelixBeforeChangeEvent>;
|
|
7446
8341
|
|
|
7447
8342
|
export type HelixListVueProps = {
|
|
7448
8343
|
/** Draws a line between rows. */
|
|
@@ -7485,6 +8380,20 @@ has to survive with the stylesheet turned off.
|
|
|
7485
8380
|
kind?: (HelixList["kind"]) | undefined;
|
|
7486
8381
|
/** The list's name, read by screen readers. */
|
|
7487
8382
|
label?: (HelixList["label"]) | undefined;
|
|
8383
|
+
/** Numbers an ordered list downward, so the count falls row by row and ends at
|
|
8384
|
+
its last row, as `<ol reversed>` does. */
|
|
8385
|
+
reversed?: (HelixList["reversed"]) | undefined;
|
|
8386
|
+
/** Makes the list interactive: `single` selects one row, `multiple` any
|
|
8387
|
+
number, and `none` moves and acts without selecting. Unset is a list a
|
|
8388
|
+
reader reads, with no tab stop of its own. */
|
|
8389
|
+
"selection-mode"?: (HelixList["selectionMode"]) | undefined;
|
|
8390
|
+
/** Makes the list interactive: `single` selects one row, `multiple` any
|
|
8391
|
+
number, and `none` moves and acts without selecting. Unset is a list a
|
|
8392
|
+
reader reads, with no tab stop of its own. */
|
|
8393
|
+
selectionMode?: (HelixList["selectionMode"]) | undefined;
|
|
8394
|
+
/** The number of an ordered list's first row, as `<ol start>` is. Unset counts
|
|
8395
|
+
from one, or down from the number of rows where `reversed`. */
|
|
8396
|
+
start?: (HelixList["start"]) | undefined;
|
|
7488
8397
|
/** The markers an ordered list draws. It takes the five values of `<ol type>`.
|
|
7489
8398
|
|
|
7490
8399
|
Reflected, because this is one of the things a stylesheet selects on, each
|
|
@@ -7492,18 +8401,24 @@ value mapping to a `list-style-type`. The platform's spellings rather than
|
|
|
7492
8401
|
the CSS ones, so `<helix-headless-list kind="ordered" type="i">` is what a
|
|
7493
8402
|
consumer would have written on an `<ol>`.
|
|
7494
8403
|
|
|
7495
|
-
|
|
7496
|
-
|
|
7497
|
-
`list-item` counter, and that counter is not author-resettable. Measured in
|
|
7498
|
-
Chrome 148, `counter-reset: list-item 4` moves nothing on a `<div>`, on a
|
|
7499
|
-
`<ul>`, or even on a real `<ol>`, while `<ol start="5">` does and a *named*
|
|
7500
|
-
counter with explicit `::before` content does. So the markers would have to
|
|
7501
|
-
be rebuilt out of generated content to gain a start, which is a different
|
|
7502
|
-
component. `type` is only `list-style-type` and works. */
|
|
8404
|
+
`type` is only `list-style-type`. `start` and `reversed` move the count
|
|
8405
|
+
itself. */
|
|
7503
8406
|
type?: (HelixList["type"]) | undefined;
|
|
8407
|
+
/** The selected rows' values, separated by commas, in a list that selects.
|
|
8408
|
+
|
|
8409
|
+
Set it to start with rows selected. A row's value is its `value`, or its
|
|
8410
|
+
words where it has none. */
|
|
8411
|
+
value?: (HelixList["value"]) | undefined;
|
|
7504
8412
|
};
|
|
7505
8413
|
|
|
7506
|
-
export type HelixListVueEvents = {
|
|
8414
|
+
export type HelixListVueEvents = {
|
|
8415
|
+
/** Fired once a press has changed which rows are selected. */
|
|
8416
|
+
change: HelixListElementEvent;
|
|
8417
|
+
/** Sent from a row when the reader acts on it: Enter, or a press in a list that selects nothing. Read the row from `target`. A row with `href` follows its link instead. */
|
|
8418
|
+
"helix-action": HelixListHelixActionElementEvent;
|
|
8419
|
+
/** Fired before a press changes which rows are selected, with the `value` it would leave. Cancelable. */
|
|
8420
|
+
"helix-before-change": HelixListHelixBeforeChangeElementEvent;
|
|
8421
|
+
};
|
|
7507
8422
|
|
|
7508
8423
|
/** `HelixListbox` component event */
|
|
7509
8424
|
export type HelixListboxElementEvent<E = Event> = TypedEvent<HelixListbox, E>;
|
|
@@ -7595,6 +8510,22 @@ filtering already does: `filter`, the empty state and the keyboard are all
|
|
|
7595
8510
|
this component's. A select, a combobox and a command palette drawing their
|
|
7596
8511
|
own search boxes would be three copies of one field. */
|
|
7597
8512
|
filterable?: (HelixListbox["filterable"]) | undefined;
|
|
8513
|
+
/** How long typing in the filter field rests before the list is filtered, in
|
|
8514
|
+
milliseconds. `0` filters on every keystroke.
|
|
8515
|
+
|
|
8516
|
+
For a list filtered on a server, where `helix-filter` starts a request: a
|
|
8517
|
+
reader typing a word sends one request for the word, not one for each
|
|
8518
|
+
letter. Enter and the arrow keys filter at once on what is typed, so they
|
|
8519
|
+
act on the list the reader expects. */
|
|
8520
|
+
"filter-delay"?: (HelixListbox["filterDelay"] | `${number}`) | undefined;
|
|
8521
|
+
/** How long typing in the filter field rests before the list is filtered, in
|
|
8522
|
+
milliseconds. `0` filters on every keystroke.
|
|
8523
|
+
|
|
8524
|
+
For a list filtered on a server, where `helix-filter` starts a request: a
|
|
8525
|
+
reader typing a word sends one request for the word, not one for each
|
|
8526
|
+
letter. Enter and the arrow keys filter at once on what is typed, so they
|
|
8527
|
+
act on the list the reader expects. */
|
|
8528
|
+
filterDelay?: (HelixListbox["filterDelay"]) | undefined;
|
|
7598
8529
|
/** Placeholder text for the filter field. */
|
|
7599
8530
|
"filter-label"?: (HelixListbox["filterLabel"]) | undefined;
|
|
7600
8531
|
/** Placeholder text for the filter field. */
|
|
@@ -7608,6 +8539,26 @@ a reader can move through the options before closing the panel on one. */
|
|
|
7608
8539
|
manual?: (HelixListbox["manual"]) | undefined;
|
|
7609
8540
|
/** Whether more than one option can be chosen. */
|
|
7610
8541
|
multiple?: (HelixListbox["multiple"]) | undefined;
|
|
8542
|
+
/** What a screen reader hears when a filter leaves one option. `{count}` is
|
|
8543
|
+
the count. */
|
|
8544
|
+
"result-label"?: (HelixListbox["resultLabel"]) | undefined;
|
|
8545
|
+
/** What a screen reader hears when a filter leaves one option. `{count}` is
|
|
8546
|
+
the count. */
|
|
8547
|
+
resultLabel?: (HelixListbox["resultLabel"]) | undefined;
|
|
8548
|
+
/** What a screen reader hears when a filter leaves any other number of
|
|
8549
|
+
options. `{count}` is the count.
|
|
8550
|
+
|
|
8551
|
+
**Two sentences, chosen by `Intl.PluralRules`**, which is Data Table's
|
|
8552
|
+
pair: a language with more forms than two picks the one for its `one` and
|
|
8553
|
+
writes the rest here. */
|
|
8554
|
+
"results-label"?: (HelixListbox["resultsLabel"]) | undefined;
|
|
8555
|
+
/** What a screen reader hears when a filter leaves any other number of
|
|
8556
|
+
options. `{count}` is the count.
|
|
8557
|
+
|
|
8558
|
+
**Two sentences, chosen by `Intl.PluralRules`**, which is Data Table's
|
|
8559
|
+
pair: a language with more forms than two picks the one for its `one` and
|
|
8560
|
+
writes the rest here. */
|
|
8561
|
+
resultsLabel?: (HelixListbox["resultsLabel"]) | undefined;
|
|
7611
8562
|
/** Whether the control is disabled and cannot be used.
|
|
7612
8563
|
|
|
7613
8564
|
Reflected, because the styled tier selects on it, and mirrored to
|
|
@@ -7671,6 +8622,18 @@ swells with it, in step. It is the shape for a wait that has a mark to
|
|
|
7671
8622
|
show, a splash or a first paint behind a wordmark, where a rotating rim
|
|
7672
8623
|
around a logo reads as chrome bolted to the brand. */
|
|
7673
8624
|
variant?: (HelixLoader["variant"]) | undefined;
|
|
8625
|
+
/** How long the loader waits before it shows, in milliseconds, so work that
|
|
8626
|
+
finishes quickly never flashes one.
|
|
8627
|
+
|
|
8628
|
+
Absent shows it at once. Hidden in the served markup too, so a page that
|
|
8629
|
+
loads quickly never draws it. */
|
|
8630
|
+
delay?: (HelixLoader["delay"]) | undefined;
|
|
8631
|
+
/** The id of the region being loaded, which is marked `aria-busy` while the
|
|
8632
|
+
loader is on the page.
|
|
8633
|
+
|
|
8634
|
+
Names an element in the same tree. In React it arrives as a property, the
|
|
8635
|
+
way `Tooltip.for` does. */
|
|
8636
|
+
for?: (HelixLoader["for"]) | undefined;
|
|
7674
8637
|
/** The loader's name, announced by screen readers while the work is in
|
|
7675
8638
|
progress. */
|
|
7676
8639
|
label?: (HelixLoader["label"]) | undefined;
|
|
@@ -8041,6 +9004,9 @@ export type HelixMapHelixMapTiltElementEvent =
|
|
|
8041
9004
|
/** `helix-map-zoom` event type */
|
|
8042
9005
|
export type HelixMapHelixMapZoomElementEvent =
|
|
8043
9006
|
HelixMapElementEvent<HelixMapZoomEvent>;
|
|
9007
|
+
/** `helix-toggle` event type */
|
|
9008
|
+
export type HelixMapHelixToggleElementEvent =
|
|
9009
|
+
HelixMapElementEvent<HelixToggleEvent>;
|
|
8044
9010
|
|
|
8045
9011
|
export type HelixMapVueProps = {
|
|
8046
9012
|
/** Where the map's credit is drawn. Unset, it is a strip under the map.
|
|
@@ -8366,6 +9332,8 @@ export type HelixMapVueEvents = {
|
|
|
8366
9332
|
"helix-map-tilt": HelixMapHelixMapTiltElementEvent;
|
|
8367
9333
|
/** A zoom button or key was pressed, with a direction. Zoom your map in response. */
|
|
8368
9334
|
"helix-map-zoom": HelixMapHelixMapZoomElementEvent;
|
|
9335
|
+
/** A layer's tile in the layers menu showed or hid it. Sent from the layer once its `hidden` attribute holds the choice, with `checked` true when it is shown. */
|
|
9336
|
+
"helix-toggle": HelixMapHelixToggleElementEvent;
|
|
8369
9337
|
};
|
|
8370
9338
|
|
|
8371
9339
|
/** `HelixMapRoute` component event */
|
|
@@ -8630,37 +9598,24 @@ So the anchor *is* the row, carrying `menuitem` and the `tabindex` the menu
|
|
|
8630
9598
|
roves, which is the same maneuver `Tree.Item` makes and the reason `href`
|
|
8631
9599
|
changes the markup rather than only adding an attribute.
|
|
8632
9600
|
|
|
8633
|
-
**`Option`
|
|
8634
|
-
|
|
8635
|
-
|
|
8636
|
-
option
|
|
8637
|
-
|
|
8638
|
-
|
|
8639
|
-
back `null`. So `role="option"` is pinned to the host, and an anchor under
|
|
8640
|
-
it hits the naming failure above. A menu has no such constraint because
|
|
8641
|
-
focus really moves to the row. */
|
|
9601
|
+
**`Option` takes an `href` too, and keeps its role a different way.** A
|
|
9602
|
+
listbox keeps focus somewhere else, in the text field for a combobox, and
|
|
9603
|
+
names the current option with `aria-activedescendant`, which can only point
|
|
9604
|
+
at the option's host. So an option stays `role="option"` on its host, draws
|
|
9605
|
+
no anchor, and follows its link through an anchor made for the moment. A
|
|
9606
|
+
menu has no such constraint, because focus really moves to the row. */
|
|
8642
9607
|
href?: (HelixMenuItem["href"]) | undefined;
|
|
8643
9608
|
/** The link's `rel`. Set it whenever you set `target="_blank"`. */
|
|
8644
9609
|
rel?: (HelixMenuItem["rel"]) | undefined;
|
|
9610
|
+
/** The row's keyboard shortcut as a chord, such as `mod+s`, shown after the
|
|
9611
|
+
label in the platform's glyphs and given to the row as
|
|
9612
|
+
`aria-keyshortcuts`. `mod` is Command on an Apple keyboard and Control
|
|
9613
|
+
elsewhere. Showing a shortcut does not bind it. */
|
|
9614
|
+
shortcut?: (HelixMenuItem["shortcut"]) | undefined;
|
|
8645
9615
|
/** Where the link opens, for rows that should open outside the current page. */
|
|
8646
9616
|
target?: (HelixMenuItem["target"]) | undefined;
|
|
8647
9617
|
/** The row's value, sent in `helix-select` when the row is chosen. */
|
|
8648
9618
|
value?: (HelixMenuItem["value"]) | undefined;
|
|
8649
|
-
/** Whether the row is on the menu page that is showing.
|
|
8650
|
-
|
|
8651
|
-
Set by the menu, and a property rather than an attribute for that reason.
|
|
8652
|
-
Public because the menu has to reach it, and not something a consumer
|
|
8653
|
-
writes: which page is open is the menu's business. */
|
|
8654
|
-
onPage?: (HelixMenuItem["onPage"]) | undefined;
|
|
8655
|
-
/** Whether the page showing is this row's submenu, or one below it.
|
|
8656
|
-
|
|
8657
|
-
Separate from `onPage`, and it has to be. A row that opened a page is not
|
|
8658
|
-
itself on that page, so both are false for it, and rendering nothing on
|
|
8659
|
-
that basis takes its `slot[name="submenu"]` with it: the rows inside have
|
|
8660
|
-
nowhere to be assigned and are never laid out. Every row on the way down to
|
|
8661
|
-
the open page has to keep its slot, not only the one directly above it.
|
|
8662
|
-
Three levels deep, the topmost row holds the slot the middle one lives in. */
|
|
8663
|
-
showingSubmenu?: (HelixMenuItem["showingSubmenu"]) | undefined;
|
|
8664
9619
|
};
|
|
8665
9620
|
|
|
8666
9621
|
export type HelixMenuItemVueEvents = {
|
|
@@ -8720,6 +9675,9 @@ the resolved state for stylesheets, which is what the mirror is for. */
|
|
|
8720
9675
|
"back-label"?: (HelixMenu["backLabel"]) | undefined;
|
|
8721
9676
|
/** The text of the row that returns from a submenu. */
|
|
8722
9677
|
backLabel?: (HelixMenu["backLabel"]) | undefined;
|
|
9678
|
+
/** Whether the menu is the trigger's context menu: it opens where the reader
|
|
9679
|
+
asks for one, with a right-click, a long press, Shift+F10 or the menu key. */
|
|
9680
|
+
context?: (HelixMenu["context"]) | undefined;
|
|
8723
9681
|
/** Accessible name for the surface.
|
|
8724
9682
|
|
|
8725
9683
|
Empty by default, which names the surface by its trigger, so a menu opened
|
|
@@ -8745,6 +9703,14 @@ export type HelixMenuVueEvents = {
|
|
|
8745
9703
|
"helix-select": HelixMenuHelixSelectElementEvent;
|
|
8746
9704
|
};
|
|
8747
9705
|
|
|
9706
|
+
export type HelixMenuSectionVueProps = {
|
|
9707
|
+
/** The heading's words, when they are plain text. Content in the `heading`
|
|
9708
|
+
slot replaces it. */
|
|
9709
|
+
label?: (HelixMenuSection["label"]) | undefined;
|
|
9710
|
+
};
|
|
9711
|
+
|
|
9712
|
+
export type HelixMenuSectionVueEvents = {};
|
|
9713
|
+
|
|
8748
9714
|
export type HelixMeterVueProps = {
|
|
8749
9715
|
/** How strongly the reading is drawn. `subtle` draws it as a wash of its color.
|
|
8750
9716
|
|
|
@@ -8797,7 +9763,10 @@ no reader. */
|
|
|
8797
9763
|
|
|
8798
9764
|
Absent leaves the range unbanded. */
|
|
8799
9765
|
high?: (HelixMeter["high"]) | undefined;
|
|
8800
|
-
/** Accessible name for the reading.
|
|
9766
|
+
/** Accessible name for the reading.
|
|
9767
|
+
|
|
9768
|
+
A visible label in the `label` slot names it instead, with the words it
|
|
9769
|
+
shows, so the name and the label cannot disagree. */
|
|
8801
9770
|
label?: (HelixMeter["label"]) | undefined;
|
|
8802
9771
|
/** The locale the percentage is written in, such as `fr` for `72 %`.
|
|
8803
9772
|
|
|
@@ -8867,6 +9836,11 @@ fair summary of a task and a poor one of a quantity. */
|
|
|
8867
9836
|
export type HelixMeterVueEvents = {};
|
|
8868
9837
|
|
|
8869
9838
|
export type HelixNavigationVueProps = {
|
|
9839
|
+
/** Whether the arrow keys move focus between the destinations.
|
|
9840
|
+
|
|
9841
|
+
Off by default, so a page whose readers scroll with the arrow keys while
|
|
9842
|
+
a link has focus keeps doing so. */
|
|
9843
|
+
arrows?: (HelixNavigation["arrows"]) | undefined;
|
|
8870
9844
|
/** The landmark's name, read by screen readers.
|
|
8871
9845
|
|
|
8872
9846
|
An `aria-label` or `aria-labelledby` on the host names the landmark too,
|
|
@@ -9046,6 +10020,9 @@ export type HelixNotificationsElementEvent<E = Event> = TypedEvent<
|
|
|
9046
10020
|
/** `helix-dismiss` event type */
|
|
9047
10021
|
export type HelixNotificationsHelixDismissElementEvent =
|
|
9048
10022
|
HelixNotificationsElementEvent<HelixDismissEvent>;
|
|
10023
|
+
/** `helix-load-more` event type */
|
|
10024
|
+
export type HelixNotificationsHelixLoadMoreElementEvent =
|
|
10025
|
+
HelixNotificationsElementEvent<HelixLoadMoreEvent>;
|
|
9049
10026
|
/** `helix-read` event type */
|
|
9050
10027
|
export type HelixNotificationsHelixReadElementEvent =
|
|
9051
10028
|
HelixNotificationsElementEvent<HelixReadEvent>;
|
|
@@ -9067,6 +10044,16 @@ say that without the component knowing what a row looks like. */
|
|
|
9067
10044
|
loadingText?: (HelixNotifications["loadingText"]) | undefined;
|
|
9068
10045
|
/** The feed's name, read by screen readers. */
|
|
9069
10046
|
label?: (HelixNotifications["label"]) | undefined;
|
|
10047
|
+
/** Whether to draw a button after the list that asks for the next page, by
|
|
10048
|
+
sending `helix-load-more`. Take it off once there is nothing more. */
|
|
10049
|
+
"load-more"?: (HelixNotifications["loadMore"]) | undefined;
|
|
10050
|
+
/** Whether to draw a button after the list that asks for the next page, by
|
|
10051
|
+
sending `helix-load-more`. Take it off once there is nothing more. */
|
|
10052
|
+
loadMore?: (HelixNotifications["loadMore"]) | undefined;
|
|
10053
|
+
/** The text of the `load-more` button. */
|
|
10054
|
+
"load-more-label"?: (HelixNotifications["loadMoreLabel"]) | undefined;
|
|
10055
|
+
/** The text of the `load-more` button. */
|
|
10056
|
+
loadMoreLabel?: (HelixNotifications["loadMoreLabel"]) | undefined;
|
|
9070
10057
|
/** Whether to draw a control that marks everything read. */
|
|
9071
10058
|
"mark-all"?: (HelixNotifications["markAll"]) | undefined;
|
|
9072
10059
|
/** Whether to draw a control that marks everything read. */
|
|
@@ -9075,11 +10062,19 @@ say that without the component knowing what a row looks like. */
|
|
|
9075
10062
|
"mark-all-label"?: (HelixNotifications["markAllLabel"]) | undefined;
|
|
9076
10063
|
/** Label for the mark-all control. */
|
|
9077
10064
|
markAllLabel?: (HelixNotifications["markAllLabel"]) | undefined;
|
|
10065
|
+
/** How many notifications there are in all, where the feed holds only some of
|
|
10066
|
+
them, read as each row's `aria-setsize`. `-1` says the count is unknown.
|
|
10067
|
+
|
|
10068
|
+
Unset, the browser counts the rows it can see, which is right for a feed
|
|
10069
|
+
that holds everything. */
|
|
10070
|
+
total?: (HelixNotifications["total"]) | undefined;
|
|
9078
10071
|
};
|
|
9079
10072
|
|
|
9080
10073
|
export type HelixNotificationsVueEvents = {
|
|
9081
10074
|
/** Fired when the user dismisses a row. The row dispatches it, and you can listen for it on the feed. Cancelable: cancel it to keep the row. */
|
|
9082
10075
|
"helix-dismiss": HelixNotificationsHelixDismissElementEvent;
|
|
10076
|
+
/** Fired when a reader presses the `load-more` button, asking for the next page of the feed. */
|
|
10077
|
+
"helix-load-more": HelixNotificationsHelixLoadMoreElementEvent;
|
|
9083
10078
|
/** Fired by an item when it is marked read or unread, and by the feed when everything is marked read. Cancelable. */
|
|
9084
10079
|
"helix-read": HelixNotificationsHelixReadElementEvent;
|
|
9085
10080
|
};
|
|
@@ -9162,6 +10157,22 @@ reach the bubble. Absent is the control's own sentence, in English. */
|
|
|
9162
10157
|
"decrement-label"?: (HelixNumberInput["decrementLabel"]) | undefined;
|
|
9163
10158
|
/** The name of the step down button, read by screen readers. */
|
|
9164
10159
|
decrementLabel?: (HelixNumberInput["decrementLabel"]) | undefined;
|
|
10160
|
+
/** `Intl.NumberFormat` options the number is shown with while the field is
|
|
10161
|
+
not being edited: a currency, a percent, a unit, or a number of decimals.
|
|
10162
|
+
Written as JSON in the attribute.
|
|
10163
|
+
|
|
10164
|
+
```html
|
|
10165
|
+
<helix-number-input format-options='{"style":"currency","currency":"EUR"}'></helix-number-input>
|
|
10166
|
+
``` */
|
|
10167
|
+
"format-options"?: (HelixNumberInput["formatOptions"]) | undefined;
|
|
10168
|
+
/** `Intl.NumberFormat` options the number is shown with while the field is
|
|
10169
|
+
not being edited: a currency, a percent, a unit, or a number of decimals.
|
|
10170
|
+
Written as JSON in the attribute.
|
|
10171
|
+
|
|
10172
|
+
```html
|
|
10173
|
+
<helix-number-input format-options='{"style":"currency","currency":"EUR"}'></helix-number-input>
|
|
10174
|
+
``` */
|
|
10175
|
+
formatOptions?: (HelixNumberInput["formatOptions"]) | undefined;
|
|
9165
10176
|
/** The name of the step up button, read by screen readers. */
|
|
9166
10177
|
"increment-label"?: (HelixNumberInput["incrementLabel"]) | undefined;
|
|
9167
10178
|
/** The name of the step up button, read by screen readers. */
|
|
@@ -9213,6 +10224,12 @@ filled in. */
|
|
|
9213
10224
|
readonly?: (HelixNumberInput["readOnly"]) | undefined;
|
|
9214
10225
|
/** Prevents editing. The value is still submitted with the form. */
|
|
9215
10226
|
readOnly?: (HelixNumberInput["readOnly"]) | undefined;
|
|
10227
|
+
/** What the field is described as on iOS and iPadOS, where it carries no
|
|
10228
|
+
spinbutton role. See the class description. */
|
|
10229
|
+
"role-description"?: (HelixNumberInput["roleDescription"]) | undefined;
|
|
10230
|
+
/** What the field is described as on iOS and iPadOS, where it carries no
|
|
10231
|
+
spinbutton role. See the class description. */
|
|
10232
|
+
roleDescription?: (HelixNumberInput["roleDescription"]) | undefined;
|
|
9216
10233
|
/** Makes the label a grip that changes the value when it is dragged.
|
|
9217
10234
|
|
|
9218
10235
|
The label is what is dragged, so this adds no chrome at all. Still opt-in,
|
|
@@ -9245,6 +10262,10 @@ A unit slotted into `end` is drawn beside the number and is not part of
|
|
|
9245
10262
|
what the spinbutton announces, so it goes here too. Empty announces the
|
|
9246
10263
|
number alone. */
|
|
9247
10264
|
valueText?: (HelixNumberInput["valueText"]) | undefined;
|
|
10265
|
+
/** Whether the mouse wheel steps the number while the field has focus, as
|
|
10266
|
+
React Aria's NumberField does unless told not to. Off, the wheel scrolls
|
|
10267
|
+
the page, which is what a reader passing over a form expects. */
|
|
10268
|
+
wheel?: (HelixNumberInput["wheel"]) | undefined;
|
|
9248
10269
|
/** Whether the control is disabled and cannot be used.
|
|
9249
10270
|
|
|
9250
10271
|
Reflected, because the styled tier selects on it, and mirrored to
|
|
@@ -9293,11 +10314,31 @@ export type HelixObjectInspectorElementEvent<E = Event> = TypedEvent<
|
|
|
9293
10314
|
HelixObjectInspector,
|
|
9294
10315
|
E
|
|
9295
10316
|
>;
|
|
10317
|
+
/** `helix-activate` event type */
|
|
10318
|
+
export type HelixObjectInspectorHelixActivateElementEvent =
|
|
10319
|
+
HelixObjectInspectorElementEvent<HelixActivateEvent>;
|
|
10320
|
+
/** `helix-before-activate` event type */
|
|
10321
|
+
export type HelixObjectInspectorHelixBeforeActivateElementEvent =
|
|
10322
|
+
HelixObjectInspectorElementEvent<HelixBeforeActivateEvent>;
|
|
9296
10323
|
/** `helix-copy` event type */
|
|
9297
10324
|
export type HelixObjectInspectorHelixCopyElementEvent =
|
|
9298
10325
|
HelixObjectInspectorElementEvent<HelixCopyEvent>;
|
|
10326
|
+
/** `helix-filter` event type */
|
|
10327
|
+
export type HelixObjectInspectorHelixFilterElementEvent =
|
|
10328
|
+
HelixObjectInspectorElementEvent<HelixFilterEvent>;
|
|
10329
|
+
/** `helix-filtered` event type */
|
|
10330
|
+
export type HelixObjectInspectorHelixFilteredElementEvent =
|
|
10331
|
+
HelixObjectInspectorElementEvent<HelixFilteredEvent>;
|
|
9299
10332
|
|
|
9300
10333
|
export type HelixObjectInspectorVueProps = {
|
|
10334
|
+
/** The active row's path, such as `/meta/tags/0`, and the empty string for the
|
|
10335
|
+
root.
|
|
10336
|
+
|
|
10337
|
+
Reading gives the row the keys are on. Writing moves there, opening the
|
|
10338
|
+
branches around it, and sends no event, the way a script's write to any
|
|
10339
|
+
current value sends none. A path the value does not hold moves to the
|
|
10340
|
+
nearest branch above it that it does. */
|
|
10341
|
+
active?: (HelixObjectInspector["active"]) | undefined;
|
|
9301
10342
|
/** The copy button's accessible name on a row with a key, with the key filled
|
|
9302
10343
|
in as `{name}`.
|
|
9303
10344
|
|
|
@@ -9328,6 +10369,15 @@ reader sees the shape of the value before its contents. `0` starts with the
|
|
|
9328
10369
|
root closed; a large number opens everything, which on a big value is the
|
|
9329
10370
|
wall of text this exists to avoid. */
|
|
9330
10371
|
defaultDepth?: (HelixObjectInspector["defaultDepth"]) | undefined;
|
|
10372
|
+
/** Text the tree is narrowed to: the entries whose key or value holds it,
|
|
10373
|
+
ignoring case, and the branches that lead to them. Empty shows everything. */
|
|
10374
|
+
filter?: (HelixObjectInspector["filter"]) | undefined;
|
|
10375
|
+
/** Whether to show a field that sets `filter`. */
|
|
10376
|
+
filterable?: (HelixObjectInspector["filterable"]) | undefined;
|
|
10377
|
+
/** The filter field's placeholder and accessible name. */
|
|
10378
|
+
"filter-label"?: (HelixObjectInspector["filterLabel"]) | undefined;
|
|
10379
|
+
/** The filter field's placeholder and accessible name. */
|
|
10380
|
+
filterLabel?: (HelixObjectInspector["filterLabel"]) | undefined;
|
|
9331
10381
|
/** The id of a `<script type="application/json">` holding the value.
|
|
9332
10382
|
|
|
9333
10383
|
Read once the document exists, and again whenever this changes. Text that
|
|
@@ -9376,6 +10426,16 @@ who set the property. This button is positioned out of the flow and takes no
|
|
|
9376
10426
|
room, so nothing selects on it, and reflection exists so that a selector can
|
|
9377
10427
|
reach a value. */
|
|
9378
10428
|
noCopy?: (HelixObjectInspector["noCopy"]) | undefined;
|
|
10429
|
+
/** What a screen reader hears when a filter matches one entry. `{count}` is the count. */
|
|
10430
|
+
"result-label"?: (HelixObjectInspector["resultLabel"]) | undefined;
|
|
10431
|
+
/** What a screen reader hears when a filter matches one entry. `{count}` is the count. */
|
|
10432
|
+
resultLabel?: (HelixObjectInspector["resultLabel"]) | undefined;
|
|
10433
|
+
/** What a screen reader hears when a filter matches any other number of
|
|
10434
|
+
entries. `{count}` is the count. The two are chosen by `Intl.PluralRules`. */
|
|
10435
|
+
"results-label"?: (HelixObjectInspector["resultsLabel"]) | undefined;
|
|
10436
|
+
/** What a screen reader hears when a filter matches any other number of
|
|
10437
|
+
entries. `{count}` is the count. The two are chosen by `Intl.PluralRules`. */
|
|
10438
|
+
resultsLabel?: (HelixObjectInspector["resultsLabel"]) | undefined;
|
|
9379
10439
|
/** The tree's accessible name when `label` is empty and the host names it
|
|
9380
10440
|
with neither `aria-label` nor `aria-labelledby`. */
|
|
9381
10441
|
"tree-label"?: (HelixObjectInspector["treeLabel"]) | undefined;
|
|
@@ -9387,6 +10447,11 @@ with neither `aria-label` nor `aria-labelledby`. */
|
|
|
9387
10447
|
For a value of thousands of entries. Reflected, because the box it scrolls
|
|
9388
10448
|
needs a height, which is a stylesheet rule reading this attribute. */
|
|
9389
10449
|
windowed?: (HelixObjectInspector["windowed"]) | undefined;
|
|
10450
|
+
/** The open branches, by path, in no set order.
|
|
10451
|
+
|
|
10452
|
+
Writing opens exactly these and closes every other, keeping the active row
|
|
10453
|
+
where it stays visible. A property, never an attribute. */
|
|
10454
|
+
expanded?: (HelixObjectInspector["expanded"]) | undefined;
|
|
9390
10455
|
/** The value to show, when your code already holds it as an object.
|
|
9391
10456
|
|
|
9392
10457
|
Takes precedence over `for`. Anything JSON can say is drawn; anything else
|
|
@@ -9395,8 +10460,16 @@ is shown as its string. */
|
|
|
9395
10460
|
};
|
|
9396
10461
|
|
|
9397
10462
|
export type HelixObjectInspectorVueEvents = {
|
|
10463
|
+
/** The active row moved, by a key or a click. The detail's `value` is its path. */
|
|
10464
|
+
"helix-activate": HelixObjectInspectorHelixActivateElementEvent;
|
|
10465
|
+
/** The active row is about to move, with its new path. Cancelable: cancel it to keep the row where it is. */
|
|
10466
|
+
"helix-before-activate": HelixObjectInspectorHelixBeforeActivateElementEvent;
|
|
9398
10467
|
/** A value was put on the clipboard, from the copy button or the keyboard. */
|
|
9399
10468
|
"helix-copy": HelixObjectInspectorHelixCopyElementEvent;
|
|
10469
|
+
/** Text was typed in the filter field, with what it now holds. Cancelable: cancel it to keep the filter as it was. */
|
|
10470
|
+
"helix-filter": HelixObjectInspectorHelixFilterElementEvent;
|
|
10471
|
+
/** The filter field changed `filter`, which now holds the text. */
|
|
10472
|
+
"helix-filtered": HelixObjectInspectorHelixFilteredElementEvent;
|
|
9400
10473
|
};
|
|
9401
10474
|
|
|
9402
10475
|
export type HelixOptionGroupVueProps = {
|
|
@@ -9479,6 +10552,24 @@ string is not a fact a selector needs. */
|
|
|
9479
10552
|
description?: (HelixOption["description"]) | undefined;
|
|
9480
10553
|
/** Prevents the option from being chosen. */
|
|
9481
10554
|
disabled?: (HelixOption["disabled"]) | undefined;
|
|
10555
|
+
/** Whether following the link downloads what it names. Only meaningful
|
|
10556
|
+
beside an `href`. */
|
|
10557
|
+
download?: (HelixOption["download"]) | undefined;
|
|
10558
|
+
/** The URL the option links to. Setting it makes the option a link: choosing
|
|
10559
|
+
it, with a press, Enter or a click, follows the link and selects nothing,
|
|
10560
|
+
as React Aria's items with `href` do. Command, Control and Shift open it
|
|
10561
|
+
where they open a link, in a new tab or a new window.
|
|
10562
|
+
|
|
10563
|
+
`helix-select` is said first with the `href` in it, and canceling it keeps
|
|
10564
|
+
the browser from following, so a client-side router follows it instead.
|
|
10565
|
+
|
|
10566
|
+
**The option stays an option**, and an anchor is never drawn inside it:
|
|
10567
|
+
`role="option"` sits on the host, where a listbox's
|
|
10568
|
+
`aria-activedescendant` can name it, and an `<a>` inside would be exposed
|
|
10569
|
+
as a link within the option and take its name (Menu Item's `href` records
|
|
10570
|
+
the measurement). The link is followed through an anchor made for the
|
|
10571
|
+
moment, which `followLink` describes. */
|
|
10572
|
+
href?: (HelixOption["href"]) | undefined;
|
|
9482
10573
|
/** A shorter name for this choice, for where the row does not fit.
|
|
9483
10574
|
|
|
9484
10575
|
`<option label>`'s own meaning: the text a chooser shows when it has less
|
|
@@ -9490,10 +10581,30 @@ simply the accessible name.
|
|
|
9490
10581
|
`<option label>` does: written the platform's way, a select listed a row of
|
|
9491
10582
|
nothing for every choice. */
|
|
9492
10583
|
label?: (HelixOption["label"]) | undefined;
|
|
10584
|
+
/** The link's `rel`. Set it whenever you set `target="_blank"`. */
|
|
10585
|
+
rel?: (HelixOption["rel"]) | undefined;
|
|
9493
10586
|
/** Whether this choice is currently chosen.
|
|
9494
10587
|
|
|
9495
10588
|
Written by the listbox. */
|
|
9496
10589
|
selected?: (HelixOption["selected"]) | undefined;
|
|
10590
|
+
/** Where the link opens, such as `_blank`, for an option with an `href`. */
|
|
10591
|
+
target?: (HelixOption["target"]) | undefined;
|
|
10592
|
+
/** The words a reader types to reach this choice, where the row's own words
|
|
10593
|
+
are not them: typeahead, a filter and a combobox match against it, and a
|
|
10594
|
+
select's trigger shows it.
|
|
10595
|
+
|
|
10596
|
+
For a row whose content is a picture, an avatar beside a name and a role,
|
|
10597
|
+
or a name written in another script, as React Aria's `textValue`. Empty
|
|
10598
|
+
reads the row's words, then `label`. */
|
|
10599
|
+
"text-value"?: (HelixOption["textValue"]) | undefined;
|
|
10600
|
+
/** The words a reader types to reach this choice, where the row's own words
|
|
10601
|
+
are not them: typeahead, a filter and a combobox match against it, and a
|
|
10602
|
+
select's trigger shows it.
|
|
10603
|
+
|
|
10604
|
+
For a row whose content is a picture, an avatar beside a name and a role,
|
|
10605
|
+
or a name written in another script, as React Aria's `textValue`. Empty
|
|
10606
|
+
reads the row's words, then `label`. */
|
|
10607
|
+
textValue?: (HelixOption["textValue"]) | undefined;
|
|
9497
10608
|
/** The value that identifies the option, and that a form submits. */
|
|
9498
10609
|
value?: (HelixOption["value"]) | undefined;
|
|
9499
10610
|
/** Whether the markup declares this option selected. A form reset returns to it.
|
|
@@ -9525,11 +10636,18 @@ change of its own rather than a property being added. */
|
|
|
9525
10636
|
};
|
|
9526
10637
|
|
|
9527
10638
|
export type HelixOptionVueEvents = {
|
|
9528
|
-
/** The option was chosen. Cancelable: canceling it leaves the selection as it was
|
|
10639
|
+
/** The option was chosen. Cancelable: canceling it leaves the selection as it was, and keeps the browser from following an option's `href`. */
|
|
9529
10640
|
"helix-select": HelixOptionHelixSelectElementEvent;
|
|
9530
10641
|
};
|
|
9531
10642
|
|
|
9532
10643
|
export type HelixOrbVueProps = {
|
|
10644
|
+
/** Says each new state through a polite live region, such as "Working" and
|
|
10645
|
+
then "Done".
|
|
10646
|
+
|
|
10647
|
+
Off by default, because the name and the busy state already change with
|
|
10648
|
+
the state, and an orb beside a stream of messages would otherwise talk
|
|
10649
|
+
over them. Set it on an orb that is the only sign of progress on the page. */
|
|
10650
|
+
announce?: (HelixOrb["announce"]) | undefined;
|
|
9533
10651
|
/** The name read by screen readers. Defaults to the name of the state, such
|
|
9534
10652
|
as "Thinking".
|
|
9535
10653
|
|
|
@@ -9557,14 +10675,23 @@ The set of things an agent can be doing grows faster than this list, and a
|
|
|
9557
10675
|
verb we have not made a shape for should cost a reader a less specific
|
|
9558
10676
|
indicator, not an empty box where the indicator was.
|
|
9559
10677
|
|
|
9560
|
-
Not reflected
|
|
9561
|
-
|
|
9562
|
-
|
|
10678
|
+
Not reflected, because a state set from script would then write an
|
|
10679
|
+
attribute onto the host after a server sent it without one. Each state is
|
|
10680
|
+
a custom state instead, such as `:state(working)`. */
|
|
9563
10681
|
state?: (HelixOrb["state"]) | undefined;
|
|
9564
10682
|
/** The word for each state, for a page in another language.
|
|
9565
10683
|
|
|
9566
|
-
A state left out keeps its English word, and `label` wins over both.
|
|
9567
|
-
|
|
10684
|
+
A state left out keeps its English word, and `label` wins over both.
|
|
10685
|
+
Keyed by state, such as `{ thinking: '…' }`. As an attribute it is that
|
|
10686
|
+
object as JSON, such as `state-labels='{"done":"Terminé"}'`, so server
|
|
10687
|
+
markup and plain HTML can carry the words too. */
|
|
10688
|
+
"state-labels"?: (HelixOrb["stateLabels"]) | undefined;
|
|
10689
|
+
/** The word for each state, for a page in another language.
|
|
10690
|
+
|
|
10691
|
+
A state left out keeps its English word, and `label` wins over both.
|
|
10692
|
+
Keyed by state, such as `{ thinking: '…' }`. As an attribute it is that
|
|
10693
|
+
object as JSON, such as `state-labels='{"done":"Terminé"}'`, so server
|
|
10694
|
+
markup and plain HTML can carry the words too. */
|
|
9568
10695
|
stateLabels?: (HelixOrb["stateLabels"]) | undefined;
|
|
9569
10696
|
};
|
|
9570
10697
|
|
|
@@ -9597,7 +10724,8 @@ read at the click rather than cached, because a reader can change it while
|
|
|
9597
10724
|
the page is open and this is the only motion in the component that
|
|
9598
10725
|
JavaScript rather than CSS decides. */
|
|
9599
10726
|
behavior?: (HelixOutline["behavior"]) | undefined;
|
|
9600
|
-
/** The navigation's name, read by screen readers.
|
|
10727
|
+
/** The navigation's name, read by screen readers. A heading in the `heading`
|
|
10728
|
+
slot names it in place of this. */
|
|
9601
10729
|
label?: (HelixOutline["label"]) | undefined;
|
|
9602
10730
|
/** How far below the top of the scroll container a heading counts as reached,
|
|
9603
10731
|
in pixels. The scroll container is the window or the panel the sections
|
|
@@ -9807,6 +10935,32 @@ Reading gives the real one; writing declares it the consumer's, and
|
|
|
9807
10935
|
`default-value` seeds one this element owns. Same accessor pair as
|
|
9808
10936
|
`Pagination.page` and the calendar's `month`. */
|
|
9809
10937
|
value?: (HelixPaginationSize["value"]) | undefined;
|
|
10938
|
+
/** Whether the control is disabled and cannot be used.
|
|
10939
|
+
|
|
10940
|
+
Reflected, because the styled tier selects on it, and mirrored to
|
|
10941
|
+
`aria-disabled` rather than removing the element from the accessibility
|
|
10942
|
+
tree, so a screen reader can still announce that the control exists.
|
|
10943
|
+
|
|
10944
|
+
The mirror itself is in `willUpdate` below, here rather than in each
|
|
10945
|
+
control, because here is where `disabled` is. */
|
|
10946
|
+
disabled?: (HelixPaginationSize["disabled"]) | undefined;
|
|
10947
|
+
/** The name the control's value is submitted under.
|
|
10948
|
+
|
|
10949
|
+
**Reflected, and it is the exception to "reflect only what CSS selects
|
|
10950
|
+
on".** The platform builds a form's entry list from the `name` *content
|
|
10951
|
+
attribute*, not from the property, so a control named through the property
|
|
10952
|
+
submitted under no name at all and was silently dropped. Measured: two
|
|
10953
|
+
inputs in one form, one named by attribute and one by property, and the
|
|
10954
|
+
form carried a single entry.
|
|
10955
|
+
|
|
10956
|
+
Safe for a React consumer, which is what the rule is protecting: React
|
|
10957
|
+
renders a custom element's props as attributes on the server, so the name
|
|
10958
|
+
is already in the markup being hydrated and reflecting it writes what is
|
|
10959
|
+
there. It is only a change to the markup when a consumer assigns it
|
|
10960
|
+
imperatively later, and nothing is hydrating by then.
|
|
10961
|
+
|
|
10962
|
+
Here rather than on each control. */
|
|
10963
|
+
name?: (HelixPaginationSize["name"]) | undefined;
|
|
9810
10964
|
};
|
|
9811
10965
|
|
|
9812
10966
|
export type HelixPaginationSizeVueEvents = {
|
|
@@ -9908,10 +11062,18 @@ that lets a phone offer the code out of a message. Later cells stay `off`
|
|
|
9908
11062
|
for the reason in the class comment above, that six cells each offering
|
|
9909
11063
|
the same code is one offer made six times. */
|
|
9910
11064
|
autocomplete?: (HelixPinInput["autocomplete"]) | undefined;
|
|
11065
|
+
/** Whether the form is submitted once the last box is filled, as Web
|
|
11066
|
+
Awesome's `autosubmit` and Radix's `autoSubmit`. Only for a code the field
|
|
11067
|
+
took: a refused last character submits nothing. */
|
|
11068
|
+
autosubmit?: (HelixPinInput["autosubmit"]) | undefined;
|
|
9911
11069
|
/** Accessible name for one box, with `{index}` and `{length}` filled in. */
|
|
9912
11070
|
"cell-label"?: (HelixPinInput["cellLabel"]) | undefined;
|
|
9913
11071
|
/** Accessible name for one box, with `{index}` and `{length}` filled in. */
|
|
9914
11072
|
cellLabel?: (HelixPinInput["cellLabel"]) | undefined;
|
|
11073
|
+
/** Separators drawn between the boxes: `#` or `*` for a box and anything
|
|
11074
|
+
else as it is written, so `###-###` draws a dash after the third. The
|
|
11075
|
+
separators are hidden from screen readers and are not part of the value. */
|
|
11076
|
+
format?: (HelixPinInput["format"]) | undefined;
|
|
9915
11077
|
/** How many characters the code has. */
|
|
9916
11078
|
length?: (HelixPinInput["length"]) | undefined;
|
|
9917
11079
|
/** Whether the characters are hidden, the way a password is. */
|
|
@@ -10037,8 +11199,17 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
10037
11199
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
10038
11200
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
10039
11201
|
open?: (HelixPopover["open"]) | undefined;
|
|
10040
|
-
/**
|
|
11202
|
+
/** Draws a point on the panel's edge facing the trigger.
|
|
11203
|
+
|
|
11204
|
+
Off by default, which is the house style: a panel that opens from its
|
|
11205
|
+
trigger already reads as belonging to it. */
|
|
11206
|
+
arrow?: (HelixPopover["arrow"]) | undefined;
|
|
11207
|
+
/** The panel's name, read by screen readers. Left at `Popover`, the first
|
|
11208
|
+
heading in the panel names it instead. */
|
|
10041
11209
|
label?: (HelixPopover["label"]) | undefined;
|
|
11210
|
+
/** Keeps `Tab` inside the panel while it is open, and marks the panel
|
|
11211
|
+
`aria-modal`. A press outside and Escape still close it. */
|
|
11212
|
+
modal?: (HelixPopover["modal"]) | undefined;
|
|
10042
11213
|
/** Space between the trigger and the panel, in pixels. */
|
|
10043
11214
|
offset?: (HelixPopover["offset"]) | undefined;
|
|
10044
11215
|
/** Preferred side.
|
|
@@ -10088,7 +11259,10 @@ Not `Loader`, which is the other thing this could be. A loader says the
|
|
|
10088
11259
|
page is busy; a bar says a named piece of work is running, and keeps its
|
|
10089
11260
|
place in the layout when the answer arrives and it becomes determinate. */
|
|
10090
11261
|
indeterminate?: (HelixProgress["indeterminate"]) | undefined;
|
|
10091
|
-
/** Accessible name for what is in progress.
|
|
11262
|
+
/** Accessible name for what is in progress.
|
|
11263
|
+
|
|
11264
|
+
A visible label in the `label` slot names it instead, with the words it
|
|
11265
|
+
shows, so the name and the label cannot disagree. */
|
|
10092
11266
|
label?: (HelixProgress["label"]) | undefined;
|
|
10093
11267
|
/** The locale the percentage is written in, such as `fr` for `72 %`.
|
|
10094
11268
|
|
|
@@ -10271,6 +11445,22 @@ not touch, and React reads that as a hydration mismatch. The absent
|
|
|
10271
11445
|
attribute *is* the column, which the stylesheet reads as the base rule, so
|
|
10272
11446
|
only `horizontal` has to be named. */
|
|
10273
11447
|
orientation?: (HelixRadioGroup["orientation"]) | undefined;
|
|
11448
|
+
/** Whether a reader can see and focus the answer and cannot change it. A
|
|
11449
|
+
read-only group still submits its value.
|
|
11450
|
+
|
|
11451
|
+
React Aria's `isReadOnly`. A press on a radio is refused. The arrow keys,
|
|
11452
|
+
Home and End move focus between the radios and choose nothing, so a reader
|
|
11453
|
+
can hear every choice, and Tab still reaches the answer. The group says
|
|
11454
|
+
`aria-readonly`. A script can still set `value`. */
|
|
11455
|
+
readonly?: (HelixRadioGroup["readOnly"]) | undefined;
|
|
11456
|
+
/** Whether a reader can see and focus the answer and cannot change it. A
|
|
11457
|
+
read-only group still submits its value.
|
|
11458
|
+
|
|
11459
|
+
React Aria's `isReadOnly`. A press on a radio is refused. The arrow keys,
|
|
11460
|
+
Home and End move focus between the radios and choose nothing, so a reader
|
|
11461
|
+
can hear every choice, and Tab still reaches the answer. The group says
|
|
11462
|
+
`aria-readonly`. A script can still set `value`. */
|
|
11463
|
+
readOnly?: (HelixRadioGroup["readOnly"]) | undefined;
|
|
10274
11464
|
/** Whether the control is disabled and cannot be used.
|
|
10275
11465
|
|
|
10276
11466
|
Reflected, because the styled tier selects on it, and mirrored to
|
|
@@ -10463,6 +11653,9 @@ export type HelixRatingElementEvent<E = Event> = TypedEvent<HelixRating, E>;
|
|
|
10463
11653
|
/** `helix-before-change` event type */
|
|
10464
11654
|
export type HelixRatingHelixBeforeChangeElementEvent =
|
|
10465
11655
|
HelixRatingElementEvent<HelixBeforeChangeEvent>;
|
|
11656
|
+
/** `helix-clear` event type */
|
|
11657
|
+
export type HelixRatingHelixClearElementEvent =
|
|
11658
|
+
HelixRatingElementEvent<HelixClearEvent>;
|
|
10466
11659
|
|
|
10467
11660
|
export type HelixRatingVueProps = {
|
|
10468
11661
|
/** The shape of each mark. `dots` draws plain circles.
|
|
@@ -10528,6 +11721,10 @@ and this one was the English a form in another language still spoke in
|
|
|
10528
11721
|
the bubble it raises on submit: `feedback` replaces the message under
|
|
10529
11722
|
the field and does not reach that one. */
|
|
10530
11723
|
valueMissingMessage?: (HelixRating["valueMissingMessage"]) | undefined;
|
|
11724
|
+
/** Whether a reader can take the rating back to unrated: by pressing the
|
|
11725
|
+
chosen score again, or with Backspace or Delete. Zag's rating group
|
|
11726
|
+
clears the same way. */
|
|
11727
|
+
clearable?: (HelixRating["clearable"]) | undefined;
|
|
10531
11728
|
/** How many marks there are. */
|
|
10532
11729
|
max?: (HelixRating["max"]) | undefined;
|
|
10533
11730
|
/** The lowest score that can be given. A cleared rating shows this score.
|
|
@@ -10673,6 +11870,8 @@ export type HelixRatingVueEvents = {
|
|
|
10673
11870
|
change: HelixRatingElementEvent;
|
|
10674
11871
|
/** The score is about to change. Cancelable: cancel it to keep the current score. */
|
|
10675
11872
|
"helix-before-change": HelixRatingHelixBeforeChangeElementEvent;
|
|
11873
|
+
/** The rating went back to unrated, under `clearable`. Sent after `input` and `change`. */
|
|
11874
|
+
"helix-clear": HelixRatingHelixClearElementEvent;
|
|
10676
11875
|
/** The score changed. */
|
|
10677
11876
|
input: HelixRatingElementEvent;
|
|
10678
11877
|
};
|
|
@@ -10771,9 +11970,18 @@ export type HelixSandboxHelixCaretElementEvent =
|
|
|
10771
11970
|
/** `helix-console` event type */
|
|
10772
11971
|
export type HelixSandboxHelixConsoleElementEvent =
|
|
10773
11972
|
HelixSandboxElementEvent<HelixConsoleEvent>;
|
|
11973
|
+
/** `helix-edit` event type */
|
|
11974
|
+
export type HelixSandboxHelixEditElementEvent =
|
|
11975
|
+
HelixSandboxElementEvent<HelixEditEvent>;
|
|
11976
|
+
/** `helix-panel-resize` event type */
|
|
11977
|
+
export type HelixSandboxHelixPanelResizeElementEvent =
|
|
11978
|
+
HelixSandboxElementEvent<HelixPanelResizeEvent>;
|
|
10774
11979
|
/** `helix-resize` event type */
|
|
10775
11980
|
export type HelixSandboxHelixResizeElementEvent =
|
|
10776
11981
|
HelixSandboxElementEvent<HelixResizeEvent>;
|
|
11982
|
+
/** `helix-split` event type */
|
|
11983
|
+
export type HelixSandboxHelixSplitElementEvent =
|
|
11984
|
+
HelixSandboxElementEvent<HelixSplitEvent>;
|
|
10777
11985
|
|
|
10778
11986
|
export type HelixSandboxVueProps = {
|
|
10779
11987
|
/** The name of the corner handle that moves both dividers at once, read by
|
|
@@ -10897,8 +12105,14 @@ export type HelixSandboxVueEvents = {
|
|
|
10897
12105
|
"helix-caret": HelixSandboxHelixCaretElementEvent;
|
|
10898
12106
|
/** Fired once per console call in the preview frame. The preview pane dispatches it. */
|
|
10899
12107
|
"helix-console": HelixSandboxHelixConsoleElementEvent;
|
|
12108
|
+
/** Fired after the source was edited, with the new source. The source pane dispatches it, and you can listen for it on the sandbox. */
|
|
12109
|
+
"helix-edit": HelixSandboxHelixEditElementEvent;
|
|
12110
|
+
/** Fired after the panel's divider settled at a new height, with the height in pixels. */
|
|
12111
|
+
"helix-panel-resize": HelixSandboxHelixPanelResizeElementEvent;
|
|
10900
12112
|
/** Fired by the preview pane when the height of the frame's content changes, with the new height. */
|
|
10901
12113
|
"helix-resize": HelixSandboxHelixResizeElementEvent;
|
|
12114
|
+
/** Fired after the panes' divider settled somewhere new, with the lead pane's share. */
|
|
12115
|
+
"helix-split": HelixSandboxHelixSplitElementEvent;
|
|
10902
12116
|
};
|
|
10903
12117
|
|
|
10904
12118
|
/** `HelixSandboxSource` component event */
|
|
@@ -10912,6 +12126,9 @@ export type HelixSandboxSourceHelixBeforeEditElementEvent =
|
|
|
10912
12126
|
/** `helix-caret` event type */
|
|
10913
12127
|
export type HelixSandboxSourceHelixCaretElementEvent =
|
|
10914
12128
|
HelixSandboxSourceElementEvent<HelixCaretEvent>;
|
|
12129
|
+
/** `helix-edit` event type */
|
|
12130
|
+
export type HelixSandboxSourceHelixEditElementEvent =
|
|
12131
|
+
HelixSandboxSourceElementEvent<HelixEditEvent>;
|
|
10915
12132
|
|
|
10916
12133
|
export type HelixSandboxSourceVueProps = {
|
|
10917
12134
|
/** The editable region's name, read by screen readers. */
|
|
@@ -10942,6 +12159,8 @@ export type HelixSandboxSourceVueEvents = {
|
|
|
10942
12159
|
"helix-before-edit": HelixSandboxSourceHelixBeforeEditElementEvent;
|
|
10943
12160
|
/** Fired when the cursor moves. */
|
|
10944
12161
|
"helix-caret": HelixSandboxSourceHelixCaretElementEvent;
|
|
12162
|
+
/** Fired after the source was edited, with the new source. */
|
|
12163
|
+
"helix-edit": HelixSandboxSourceHelixEditElementEvent;
|
|
10945
12164
|
};
|
|
10946
12165
|
|
|
10947
12166
|
export type HelixSandboxStatusBarVueProps = {
|
|
@@ -10960,12 +12179,39 @@ Absent shows no readout. */
|
|
|
10960
12179
|
export type HelixSandboxStatusBarVueEvents = {};
|
|
10961
12180
|
|
|
10962
12181
|
export type HelixSandboxTerminalVueProps = {
|
|
12182
|
+
/** The clear button's text, under `controls`. */
|
|
12183
|
+
"clear-label"?: (HelixSandboxTerminal["clearLabel"]) | undefined;
|
|
12184
|
+
/** The clear button's text, under `controls`. */
|
|
12185
|
+
clearLabel?: (HelixSandboxTerminal["clearLabel"]) | undefined;
|
|
12186
|
+
/** Shows a clear button and a level filter above the log.
|
|
12187
|
+
|
|
12188
|
+
Off by default, because a sandbox that puts the terminal in a panel often
|
|
12189
|
+
has a toolbar of its own for them. */
|
|
12190
|
+
controls?: (HelixSandboxTerminal["controls"]) | undefined;
|
|
10963
12191
|
/** Text shown before anything has been written. */
|
|
10964
12192
|
"empty-label"?: (HelixSandboxTerminal["emptyLabel"]) | undefined;
|
|
10965
12193
|
/** Text shown before anything has been written. */
|
|
10966
12194
|
emptyLabel?: (HelixSandboxTerminal["emptyLabel"]) | undefined;
|
|
10967
12195
|
/** The log's name, read by screen readers. */
|
|
10968
12196
|
label?: (HelixSandboxTerminal["label"]) | undefined;
|
|
12197
|
+
/** The quietest level shown: `info` hides plain logs, `warn` shows warnings
|
|
12198
|
+
and errors, and `error` shows errors only. Absent shows every line.
|
|
12199
|
+
|
|
12200
|
+
Lines it hides are kept, so lowering it shows them again. The filter under
|
|
12201
|
+
`controls` sets it. */
|
|
12202
|
+
level?: (HelixSandboxTerminal["level"]) | undefined;
|
|
12203
|
+
/** The level filter's name, read by screen readers, under `controls`. */
|
|
12204
|
+
"level-label"?: (HelixSandboxTerminal["levelLabel"]) | undefined;
|
|
12205
|
+
/** The level filter's name, read by screen readers, under `controls`. */
|
|
12206
|
+
levelLabel?: (HelixSandboxTerminal["levelLabel"]) | undefined;
|
|
12207
|
+
/** What each choice of the level filter reads, for a page in another
|
|
12208
|
+
language, keyed by level, such as `{ warn: '…' }`. A level left out keeps
|
|
12209
|
+
its English words. As an attribute it is that object as JSON. */
|
|
12210
|
+
"level-words"?: (HelixSandboxTerminal["levelWords"]) | undefined;
|
|
12211
|
+
/** What each choice of the level filter reads, for a page in another
|
|
12212
|
+
language, keyed by level, such as `{ warn: '…' }`. A level left out keeps
|
|
12213
|
+
its English words. As an attribute it is that object as JSON. */
|
|
12214
|
+
levelWords?: (HelixSandboxTerminal["levelWords"]) | undefined;
|
|
10969
12215
|
};
|
|
10970
12216
|
|
|
10971
12217
|
export type HelixSandboxTerminalVueEvents = {};
|
|
@@ -11014,14 +12260,44 @@ is read along. */
|
|
|
11014
12260
|
|
|
11015
12261
|
export type HelixScatterChartVueEvents = {};
|
|
11016
12262
|
|
|
12263
|
+
/** `HelixScrollArea` component event */
|
|
12264
|
+
export type HelixScrollAreaElementEvent<E = Event> = TypedEvent<
|
|
12265
|
+
HelixScrollArea,
|
|
12266
|
+
E
|
|
12267
|
+
>;
|
|
12268
|
+
|
|
11017
12269
|
export type HelixScrollAreaVueProps = {
|
|
12270
|
+
/** How long the scrollbars stay after the content stops moving, or the pointer
|
|
12271
|
+
leaves, in milliseconds. Read under `scrollbars="scroll"` and
|
|
12272
|
+
`scrollbars="hover"`. */
|
|
12273
|
+
"hide-delay"?: (HelixScrollArea["hideDelay"] | `${number}`) | undefined;
|
|
12274
|
+
/** How long the scrollbars stay after the content stops moving, or the pointer
|
|
12275
|
+
leaves, in milliseconds. Read under `scrollbars="scroll"` and
|
|
12276
|
+
`scrollbars="hover"`. */
|
|
12277
|
+
hideDelay?: (HelixScrollArea["hideDelay"]) | undefined;
|
|
11018
12278
|
/** The region's name, read by screen readers.
|
|
11019
12279
|
|
|
11020
12280
|
Without one there is no region: see the note on the class. */
|
|
11021
12281
|
label?: (HelixScrollArea["label"]) | undefined;
|
|
12282
|
+
/** Draws scrollbars of the component's own in place of the browser's, and
|
|
12283
|
+
says when they show.
|
|
12284
|
+
|
|
12285
|
+
- `auto`: on each axis that has content past it.
|
|
12286
|
+
- `always`: on each axis that can scroll, whether or not it has anything to
|
|
12287
|
+
scroll, so the scrollbar is there before the content grows.
|
|
12288
|
+
- `scroll`: while the content is moving, and for `hide-delay` after.
|
|
12289
|
+
- `hover`: as `scroll`, and while the pointer is over the scroll area.
|
|
12290
|
+
|
|
12291
|
+
Absent keeps the browser's scrollbars. */
|
|
12292
|
+
scrollbars?: (HelixScrollArea["scrollbars"]) | undefined;
|
|
11022
12293
|
};
|
|
11023
12294
|
|
|
11024
|
-
export type HelixScrollAreaVueEvents = {
|
|
12295
|
+
export type HelixScrollAreaVueEvents = {
|
|
12296
|
+
/** The content scrolled. Sent from the host, because the viewport's own does not leave the shadow root. Does not bubble. */
|
|
12297
|
+
scroll: HelixScrollAreaElementEvent;
|
|
12298
|
+
/** The content stopped scrolling. Sent from the host, as `scroll` is. Does not bubble. */
|
|
12299
|
+
scrollend: HelixScrollAreaElementEvent;
|
|
12300
|
+
};
|
|
11025
12301
|
|
|
11026
12302
|
/** `HelixSelect` component event */
|
|
11027
12303
|
export type HelixSelectElementEvent<E = Event> = TypedEvent<HelixSelect, E>;
|
|
@@ -11183,6 +12459,15 @@ imperatively later, and nothing is hydrating by then.
|
|
|
11183
12459
|
|
|
11184
12460
|
Here rather than on each control. */
|
|
11185
12461
|
name?: (HelixSelect["name"]) | undefined;
|
|
12462
|
+
/** What the trigger shows for the chosen options: a function given them, in
|
|
12463
|
+
the order they appear, that returns text, an element or a Lit template.
|
|
12464
|
+
|
|
12465
|
+
For a trigger that shows more than the words, an avatar beside a name or a
|
|
12466
|
+
count of a long set, as React Aria's `SelectValue` takes children. The
|
|
12467
|
+
trigger is named by what this draws, so keep the words in it. Nothing
|
|
12468
|
+
chosen still shows `placeholder`. A property only, there being no way to
|
|
12469
|
+
write a function in markup. */
|
|
12470
|
+
valueContent?: (HelixSelect["valueContent"]) | undefined;
|
|
11186
12471
|
/** Which option is chosen, as an index, or `-1` where none is.
|
|
11187
12472
|
|
|
11188
12473
|
Read off the listbox this renders, which owns the options and is where the
|
|
@@ -11210,6 +12495,11 @@ export type HelixSelectVueEvents = {
|
|
|
11210
12495
|
};
|
|
11211
12496
|
|
|
11212
12497
|
export type HelixSkeletonVueProps = {
|
|
12498
|
+
/** How the placeholder shows it is waiting: a sweep when unset, `pulse` to
|
|
12499
|
+
fade the fill in and out, or `none` to sit still.
|
|
12500
|
+
|
|
12501
|
+
Reduced motion stills both. */
|
|
12502
|
+
effect?: (HelixSkeleton["effect"]) | undefined;
|
|
11213
12503
|
/** The shape of the placeholder: `text`, `circle`, or a block when unset.
|
|
11214
12504
|
|
|
11215
12505
|
Unset is a block, which is what most missing things are. A block is the
|
|
@@ -11221,6 +12511,12 @@ profile".
|
|
|
11221
12511
|
|
|
11222
12512
|
Absent hides the placeholder from screen readers. */
|
|
11223
12513
|
label?: (HelixSkeleton["label"]) | undefined;
|
|
12514
|
+
/** Whether the content inside is still loading, which keeps it inert and
|
|
12515
|
+
draws the placeholder over it.
|
|
12516
|
+
|
|
12517
|
+
Absent shows the content. An empty skeleton is a placeholder whatever
|
|
12518
|
+
this says. Reflected, because the styled tier hides the content on it. */
|
|
12519
|
+
loading?: (HelixSkeleton["loading"]) | undefined;
|
|
11224
12520
|
};
|
|
11225
12521
|
|
|
11226
12522
|
export type HelixSkeletonVueEvents = {};
|
|
@@ -11290,6 +12586,25 @@ and this one was the English a form in another language still spoke in
|
|
|
11290
12586
|
the bubble it raises on submit: `feedback` replaces the message under
|
|
11291
12587
|
the field and does not reach that one. */
|
|
11292
12588
|
valueMissingMessage?: (HelixSlider["valueMissingMessage"]) | undefined;
|
|
12589
|
+
/** `Intl.NumberFormat` options the value is written with: a currency, a
|
|
12590
|
+
percent, a unit, or a number of decimals. Written as JSON in the
|
|
12591
|
+
attribute.
|
|
12592
|
+
|
|
12593
|
+
```html
|
|
12594
|
+
<helix-slider format-options='{"style":"currency","currency":"USD"}'></helix-slider>
|
|
12595
|
+
``` */
|
|
12596
|
+
"format-options"?: (HelixSlider["formatOptions"]) | undefined;
|
|
12597
|
+
/** `Intl.NumberFormat` options the value is written with: a currency, a
|
|
12598
|
+
percent, a unit, or a number of decimals. Written as JSON in the
|
|
12599
|
+
attribute.
|
|
12600
|
+
|
|
12601
|
+
```html
|
|
12602
|
+
<helix-slider format-options='{"style":"currency","currency":"USD"}'></helix-slider>
|
|
12603
|
+
``` */
|
|
12604
|
+
formatOptions?: (HelixSlider["formatOptions"]) | undefined;
|
|
12605
|
+
/** The locale `format-options` writes the value in, such as `de-DE`. Empty is
|
|
12606
|
+
the reader's own. */
|
|
12607
|
+
locale?: (HelixSlider["locale"]) | undefined;
|
|
11293
12608
|
/** Shows the value at each mark. */
|
|
11294
12609
|
"marker-labels"?: (HelixSlider["markerLabels"]) | undefined;
|
|
11295
12610
|
/** Shows the value at each mark. */
|
|
@@ -11332,6 +12647,12 @@ property, like every other word a control speaks. */
|
|
|
11332
12647
|
"minimum-label"?: (HelixSlider["minimumLabel"]) | undefined;
|
|
11333
12648
|
/** The name of a range's lower thumb, read after the slider's label. */
|
|
11334
12649
|
minimumLabel?: (HelixSlider["minimumLabel"]) | undefined;
|
|
12650
|
+
/** How many steps a range's two thumbs stay apart, as Zag's
|
|
12651
|
+
`minStepsBetweenThumbs`. A thumb pushed closer stops there. */
|
|
12652
|
+
"min-steps-between-thumbs"?: (HelixSlider["minStepsBetweenThumbs"] | `${number}`) | undefined;
|
|
12653
|
+
/** How many steps a range's two thumbs stay apart, as Zag's
|
|
12654
|
+
`minStepsBetweenThumbs`. A thumb pushed closer stops there. */
|
|
12655
|
+
minStepsBetweenThumbs?: (HelixSlider["minStepsBetweenThumbs"]) | undefined;
|
|
11335
12656
|
/** The direction the track runs. `vertical` stands it on end.
|
|
11336
12657
|
|
|
11337
12658
|
For a level rather than a quantity: a fader, a channel, anything a reader
|
|
@@ -11387,6 +12708,10 @@ imperatively later, and nothing is hydrating by then.
|
|
|
11387
12708
|
|
|
11388
12709
|
Here rather than on each control. */
|
|
11389
12710
|
name?: (HelixSlider["name"]) | undefined;
|
|
12711
|
+
/** Writes a value as text, in place of `format-options`: words for a scale,
|
|
12712
|
+
or anything `Intl.NumberFormat` cannot say. A property, since a function
|
|
12713
|
+
cannot be written in an attribute. */
|
|
12714
|
+
formatter?: (HelixSlider["formatter"]) | undefined;
|
|
11390
12715
|
};
|
|
11391
12716
|
|
|
11392
12717
|
export type HelixSliderVueEvents = {
|
|
@@ -11579,6 +12904,11 @@ export type HelixSpeedDialHelixSelectElementEvent =
|
|
|
11579
12904
|
HelixSpeedDialElementEvent<HelixSelectEvent>;
|
|
11580
12905
|
|
|
11581
12906
|
export type HelixSpeedDialVueProps = {
|
|
12907
|
+
/** When the actions' names show. Unset, always, beside each action. `hover`
|
|
12908
|
+
shows a name only while its action is under the pointer or has focus, as
|
|
12909
|
+
a tooltip does, for a dial whose icons speak for themselves. The names stay
|
|
12910
|
+
the actions' accessible names either way. */
|
|
12911
|
+
labels?: (HelixSpeedDial["labels"]) | undefined;
|
|
11582
12912
|
/** Whether the element starts open. Ignored once `open` is written. */
|
|
11583
12913
|
"default-open"?: (HelixSpeedDial["defaultOpen"]) | undefined;
|
|
11584
12914
|
/** Whether the element starts open. Ignored once `open` is written. */
|
|
@@ -11759,6 +13089,15 @@ Reading gives where it is; writing declares it the consumer's, and
|
|
|
11759
13089
|
`default-position` seeds one this element owns. The same accessor pair
|
|
11760
13090
|
`Pagination.page` and the calendar's `month` carry. */
|
|
11761
13091
|
position?: (HelixSplitter["position"]) | undefined;
|
|
13092
|
+
/** Where a dragged divider snaps, comma separated, as Web Awesome's split
|
|
13093
|
+
panel does: a bare number is a percentage and a length such as `240px` is
|
|
13094
|
+
measured along the splitter, so `snap="25, 50, 75"` or `snap="240px, 50"`.
|
|
13095
|
+
The arrow keys move by `step` and do not snap. */
|
|
13096
|
+
snap?: (HelixSplitter["snap"]) | undefined;
|
|
13097
|
+
/** How close a drag has to come to a snap point to land on it, in pixels. */
|
|
13098
|
+
"snap-threshold"?: (HelixSplitter["snapThreshold"] | `${number}`) | undefined;
|
|
13099
|
+
/** How close a drag has to come to a snap point to land on it, in pixels. */
|
|
13100
|
+
snapThreshold?: (HelixSplitter["snapThreshold"]) | undefined;
|
|
11762
13101
|
/** How far one arrow key press moves the divider, as a percentage. */
|
|
11763
13102
|
step?: (HelixSplitter["step"]) | undefined;
|
|
11764
13103
|
};
|
|
@@ -11857,6 +13196,9 @@ Ignored once `active` is written. */
|
|
|
11857
13196
|
A list of stages is a landmark a reader arrives at out of order, so it
|
|
11858
13197
|
needs a name of its own rather than borrowing the heading above it. */
|
|
11859
13198
|
label?: (HelixSteps["label"]) | undefined;
|
|
13199
|
+
/** Whether a reader has to finish each stage, or pass an `optional` one,
|
|
13200
|
+
before going on to the next. */
|
|
13201
|
+
linear?: (HelixSteps["linear"]) | undefined;
|
|
11860
13202
|
/** Which way the steps run.
|
|
11861
13203
|
|
|
11862
13204
|
Absent is a row, which is what a form header wants, with each name under
|
|
@@ -11900,10 +13242,19 @@ export type HelixStepHelixSelectElementEvent =
|
|
|
11900
13242
|
export type HelixStepVueProps = {
|
|
11901
13243
|
/** Whether this stage is finished. */
|
|
11902
13244
|
complete?: (HelixStep["complete"]) | undefined;
|
|
13245
|
+
/** The words that tell a screen reader the stage is finished. Translate it
|
|
13246
|
+
with the page. */
|
|
13247
|
+
"complete-label"?: (HelixStep["completeLabel"]) | undefined;
|
|
13248
|
+
/** The words that tell a screen reader the stage is finished. Translate it
|
|
13249
|
+
with the page. */
|
|
13250
|
+
completeLabel?: (HelixStep["completeLabel"]) | undefined;
|
|
11903
13251
|
/** Whether this is the current stage. */
|
|
11904
13252
|
current?: (HelixStep["current"]) | undefined;
|
|
11905
13253
|
/** Whether the stage is disabled, so the user cannot go to it. */
|
|
11906
13254
|
disabled?: (HelixStep["disabled"]) | undefined;
|
|
13255
|
+
/** Whether a reader may pass the stage without finishing it, in a sequence
|
|
13256
|
+
with `linear`. Ark UI's skippable step. */
|
|
13257
|
+
optional?: (HelixStep["optional"]) | undefined;
|
|
11907
13258
|
/** The value the step sends in `helix-select`. */
|
|
11908
13259
|
value?: (HelixStep["value"]) | undefined;
|
|
11909
13260
|
};
|
|
@@ -11933,6 +13284,28 @@ stylesheets. */
|
|
|
11933
13284
|
"default-checked"?: (HelixSwitch["defaultChecked"]) | undefined;
|
|
11934
13285
|
/** Whether the control starts checked. A form reset returns it to this state. */
|
|
11935
13286
|
defaultChecked?: (HelixSwitch["defaultChecked"]) | undefined;
|
|
13287
|
+
/** Whether a reader can see and focus the control and cannot change it. A
|
|
13288
|
+
read-only control still submits its value.
|
|
13289
|
+
|
|
13290
|
+
React Aria's `isReadOnly`. A native checkbox has no read-only state, so
|
|
13291
|
+
the press is refused at the inner control, which keeps its box as it
|
|
13292
|
+
was, and the control says `aria-readonly`. A script can still set
|
|
13293
|
+
`checked`, as it can set the value of a read-only text field.
|
|
13294
|
+
|
|
13295
|
+
The attribute is `readonly`, which is the platform's spelling for the
|
|
13296
|
+
text fields. */
|
|
13297
|
+
readonly?: (HelixSwitch["readOnly"]) | undefined;
|
|
13298
|
+
/** Whether a reader can see and focus the control and cannot change it. A
|
|
13299
|
+
read-only control still submits its value.
|
|
13300
|
+
|
|
13301
|
+
React Aria's `isReadOnly`. A native checkbox has no read-only state, so
|
|
13302
|
+
the press is refused at the inner control, which keeps its box as it
|
|
13303
|
+
was, and the control says `aria-readonly`. A script can still set
|
|
13304
|
+
`checked`, as it can set the value of a read-only text field.
|
|
13305
|
+
|
|
13306
|
+
The attribute is `readonly`, which is the platform's spelling for the
|
|
13307
|
+
text fields. */
|
|
13308
|
+
readOnly?: (HelixSwitch["readOnly"]) | undefined;
|
|
11936
13309
|
/** */
|
|
11937
13310
|
"aria-label"?: unknown;
|
|
11938
13311
|
/** The validation message shown under the control. It replaces the
|
|
@@ -12018,6 +13391,9 @@ export type HelixTableColumnElementEvent<E = Event> = TypedEvent<
|
|
|
12018
13391
|
/** `helix-before-resize` event type */
|
|
12019
13392
|
export type HelixTableColumnHelixBeforeResizeElementEvent =
|
|
12020
13393
|
HelixTableColumnElementEvent<HelixBeforeResizeEvent>;
|
|
13394
|
+
/** `helix-resized` event type */
|
|
13395
|
+
export type HelixTableColumnHelixResizedElementEvent =
|
|
13396
|
+
HelixTableColumnElementEvent<HelixResizedEvent>;
|
|
12021
13397
|
|
|
12022
13398
|
export type HelixTableColumnVueProps = {
|
|
12023
13399
|
/** The key this column reads out of a row.
|
|
@@ -12059,6 +13435,22 @@ replaced with the heading text. */
|
|
|
12059
13435
|
/** The accessible name of the separator that resizes the column. `{name}` is
|
|
12060
13436
|
replaced with the heading text. */
|
|
12061
13437
|
resizeLabel?: (HelixTableColumn["resizeLabel"]) | undefined;
|
|
13438
|
+
/** Makes this column's cells the headers of their rows, in `DataTable`.
|
|
13439
|
+
|
|
13440
|
+
A screen reader moving along a row or down a column names the row by its
|
|
13441
|
+
row header, so the cell that identifies a row, a file's name say, is the
|
|
13442
|
+
one to mark. Where no column sets it, `DataTable` makes the first column
|
|
13443
|
+
with a `field` the row header. A `Table`'s cells are your markup, so there
|
|
13444
|
+
a cell is a row header through its own `header` attribute. */
|
|
13445
|
+
"row-header"?: (HelixTableColumn["rowHeader"]) | undefined;
|
|
13446
|
+
/** Makes this column's cells the headers of their rows, in `DataTable`.
|
|
13447
|
+
|
|
13448
|
+
A screen reader moving along a row or down a column names the row by its
|
|
13449
|
+
row header, so the cell that identifies a row, a file's name say, is the
|
|
13450
|
+
one to mark. Where no column sets it, `DataTable` makes the first column
|
|
13451
|
+
with a `field` the row header. A `Table`'s cells are your markup, so there
|
|
13452
|
+
a cell is a row header through its own `header` attribute. */
|
|
13453
|
+
rowHeader?: (HelixTableColumn["rowHeader"]) | undefined;
|
|
12062
13454
|
/** Whether the table can be sorted by this column.
|
|
12063
13455
|
|
|
12064
13456
|
Ignored without a `field`, and silently: a column with nothing to sort by
|
|
@@ -12186,13 +13578,24 @@ correct default: the raw value is what an API sorted by. */
|
|
|
12186
13578
|
export type HelixTableColumnVueEvents = {
|
|
12187
13579
|
/** The column is about to be resized, with the requested width. Cancelable: cancel it to keep the current width. */
|
|
12188
13580
|
"helix-before-resize": HelixTableColumnHelixBeforeResizeElementEvent;
|
|
13581
|
+
/** Fired after the column is resized, with the new width. */
|
|
13582
|
+
"helix-resized": HelixTableColumnHelixResizedElementEvent;
|
|
12189
13583
|
};
|
|
12190
13584
|
|
|
12191
13585
|
/** `HelixTable` component event */
|
|
12192
13586
|
export type HelixTableElementEvent<E = Event> = TypedEvent<HelixTable, E>;
|
|
13587
|
+
/** `helix-select` event type */
|
|
13588
|
+
export type HelixTableHelixSelectElementEvent =
|
|
13589
|
+
HelixTableElementEvent<HelixSelectEvent>;
|
|
13590
|
+
/** `helix-selected` event type */
|
|
13591
|
+
export type HelixTableHelixSelectedElementEvent =
|
|
13592
|
+
HelixTableElementEvent<HelixSelectedEvent>;
|
|
12193
13593
|
/** `helix-sort` event type */
|
|
12194
13594
|
export type HelixTableHelixSortElementEvent =
|
|
12195
13595
|
HelixTableElementEvent<HelixSortEvent>;
|
|
13596
|
+
/** `helix-sorted` event type */
|
|
13597
|
+
export type HelixTableHelixSortedElementEvent =
|
|
13598
|
+
HelixTableElementEvent<HelixSortedEvent>;
|
|
12196
13599
|
|
|
12197
13600
|
export type HelixTableVueProps = {
|
|
12198
13601
|
/** The text shown and announced when there are no rows and none are loading. */
|
|
@@ -12242,6 +13645,12 @@ and a list here would be a second way to say what that says. This table's
|
|
|
12242
13645
|
cells are markup, and a table written as rows of cells with no column
|
|
12243
13646
|
declared in it has nowhere else to be sized from. */
|
|
12244
13647
|
columns?: (HelixTable["columns"]) | undefined;
|
|
13648
|
+
/** The keys selected at the start, separated by commas. Used until `selected`
|
|
13649
|
+
is set. */
|
|
13650
|
+
"default-selected"?: (HelixTable["defaultSelected"]) | undefined;
|
|
13651
|
+
/** The keys selected at the start, separated by commas. Used until `selected`
|
|
13652
|
+
is set. */
|
|
13653
|
+
defaultSelected?: (HelixTable["defaultSelected"]) | undefined;
|
|
12245
13654
|
/** The starting sort order, used until `sort` is set. */
|
|
12246
13655
|
"default-sort"?: (HelixTable["defaultSort"]) | undefined;
|
|
12247
13656
|
/** The starting sort order, used until `sort` is set. */
|
|
@@ -12255,6 +13664,31 @@ declared in it has nowhere else to be sized from. */
|
|
|
12255
13664
|
An `aria-label` or `aria-labelledby` on the host names the table too, and
|
|
12256
13665
|
wins over this. */
|
|
12257
13666
|
label?: (HelixTable["label"]) | undefined;
|
|
13667
|
+
/** Adds a column of checkboxes for selecting rows. Each row is known by its
|
|
13668
|
+
`value`, and by its place among the rows as written where it has none. */
|
|
13669
|
+
selectable?: (HelixTable["selectable"]) | undefined;
|
|
13670
|
+
/** The name of the checkbox in the heading that selects every row. */
|
|
13671
|
+
"select-all-label"?: (HelixTable["selectAllLabel"]) | undefined;
|
|
13672
|
+
/** The name of the checkbox in the heading that selects every row. */
|
|
13673
|
+
selectAllLabel?: (HelixTable["selectAllLabel"]) | undefined;
|
|
13674
|
+
/** The keys of the selected rows, separated by commas.
|
|
13675
|
+
|
|
13676
|
+
A reader's press fires `helix-select` first, and refusing it leaves the
|
|
13677
|
+
selection as it was. `default-selected` seeds a selection this element
|
|
13678
|
+
then owns. */
|
|
13679
|
+
selected?: (HelixTable["selected"]) | undefined;
|
|
13680
|
+
/** What screen readers hear when the chosen rows change. `{count}` is how many
|
|
13681
|
+
rows are chosen. */
|
|
13682
|
+
"selected-label"?: (HelixTable["selectedLabel"]) | undefined;
|
|
13683
|
+
/** What screen readers hear when the chosen rows change. `{count}` is how many
|
|
13684
|
+
rows are chosen. */
|
|
13685
|
+
selectedLabel?: (HelixTable["selectedLabel"]) | undefined;
|
|
13686
|
+
/** The name of a row's checkbox. `{row}` is replaced with the words of the
|
|
13687
|
+
row's first cell. */
|
|
13688
|
+
"select-row-label"?: (HelixTable["selectRowLabel"]) | undefined;
|
|
13689
|
+
/** The name of a row's checkbox. `{row}` is replaced with the words of the
|
|
13690
|
+
row's first cell. */
|
|
13691
|
+
selectRowLabel?: (HelixTable["selectRowLabel"]) | undefined;
|
|
12258
13692
|
/** The sort order, as `field:direction`, where `field` is a sortable column's
|
|
12259
13693
|
`field`.
|
|
12260
13694
|
|
|
@@ -12276,11 +13710,21 @@ column's heading and `{order}` is `ascending-label` or `descending-label`. */
|
|
|
12276
13710
|
};
|
|
12277
13711
|
|
|
12278
13712
|
export type HelixTableVueEvents = {
|
|
13713
|
+
/** The selection is about to change. The event carries every selected key, separated by commas. Cancelable: cancel it to keep the current selection. */
|
|
13714
|
+
"helix-select": HelixTableHelixSelectElementEvent;
|
|
13715
|
+
/** Fired after the selection changes, with every selected key, separated by commas. */
|
|
13716
|
+
"helix-selected": HelixTableHelixSelectedElementEvent;
|
|
12279
13717
|
/** A different sort order was requested, as `field:direction`, or empty for the order the rows were written in. Cancelable: cancel it to keep the current order. */
|
|
12280
13718
|
"helix-sort": HelixTableHelixSortElementEvent;
|
|
13719
|
+
/** Fired after the sort order changes, with the new order. */
|
|
13720
|
+
"helix-sorted": HelixTableHelixSortedElementEvent;
|
|
12281
13721
|
};
|
|
12282
13722
|
|
|
12283
|
-
export type HelixTableRowVueProps = {
|
|
13723
|
+
export type HelixTableRowVueProps = {
|
|
13724
|
+
/** The key the table's `selected` lists this row by. Left empty, the row is
|
|
13725
|
+
known by its place among the rows as written. */
|
|
13726
|
+
value?: (HelixTableRow["value"]) | undefined;
|
|
13727
|
+
};
|
|
12284
13728
|
|
|
12285
13729
|
export type HelixTableRowVueEvents = {};
|
|
12286
13730
|
|
|
@@ -12296,10 +13740,9 @@ because it is coordination between elements rather than anything a consumer
|
|
|
12296
13740
|
writes: the tab already says it.
|
|
12297
13741
|
|
|
12298
13742
|
A string and not a reference: an IDREF resolves only in the tree it is
|
|
12299
|
-
written in, and
|
|
12300
|
-
|
|
12301
|
-
|
|
12302
|
-
anyway. */
|
|
13743
|
+
written in, and the tab's control is inside the tab's shadow root, which no
|
|
13744
|
+
reference from the light DOM can reach. `aria-label` on a `tabpanel` is how
|
|
13745
|
+
the pattern names one anyway. */
|
|
12303
13746
|
label?: (HelixTabPanel["label"]) | undefined;
|
|
12304
13747
|
};
|
|
12305
13748
|
|
|
@@ -12347,6 +13790,11 @@ Automatic is the default because showing a panel is usually cheap. Set this
|
|
|
12347
13790
|
where it is not, so a reader arrowing past four tabs does not load four
|
|
12348
13791
|
panels on the way. */
|
|
12349
13792
|
manual?: (HelixTabs["manual"]) | undefined;
|
|
13793
|
+
/** The direction the tabs run. `vertical` sets them in a column beside the
|
|
13794
|
+
panels and tells a screen reader the list is vertical.
|
|
13795
|
+
|
|
13796
|
+
Optional, so the resting row writes no attribute onto the host. */
|
|
13797
|
+
orientation?: (HelixTabs["orientation"]) | undefined;
|
|
12350
13798
|
/** How the row of tabs is drawn.
|
|
12351
13799
|
|
|
12352
13800
|
Unset is a raised pill on the selected tab with nothing behind the row,
|
|
@@ -12399,6 +13847,13 @@ declares in markup carries `defaultSelected` of its own to say so. */
|
|
|
12399
13847
|
/** The item's value, which identifies it in its set and is what a form
|
|
12400
13848
|
submits. */
|
|
12401
13849
|
value?: (HelixTab["value"]) | undefined;
|
|
13850
|
+
/** The URL the tab links to. Setting it renders the tab as a link, for a set
|
|
13851
|
+
of tabs that are pages of a site. */
|
|
13852
|
+
href?: (HelixTab["href"]) | undefined;
|
|
13853
|
+
/** The link's `rel`, for a tab with an `href`. */
|
|
13854
|
+
rel?: (HelixTab["rel"]) | undefined;
|
|
13855
|
+
/** Where the link opens, such as `_blank`, for a tab with an `href`. */
|
|
13856
|
+
target?: (HelixTab["target"]) | undefined;
|
|
12402
13857
|
};
|
|
12403
13858
|
|
|
12404
13859
|
export type HelixTabVueEvents = {
|
|
@@ -12406,6 +13861,44 @@ export type HelixTabVueEvents = {
|
|
|
12406
13861
|
"helix-select": HelixTabHelixSelectElementEvent;
|
|
12407
13862
|
};
|
|
12408
13863
|
|
|
13864
|
+
/** `HelixTagGroup` component event */
|
|
13865
|
+
export type HelixTagGroupElementEvent<E = Event> = TypedEvent<HelixTagGroup, E>;
|
|
13866
|
+
/** `helix-before-change` event type */
|
|
13867
|
+
export type HelixTagGroupHelixBeforeChangeElementEvent =
|
|
13868
|
+
HelixTagGroupElementEvent<HelixBeforeChangeEvent>;
|
|
13869
|
+
/** `helix-dismiss` event type */
|
|
13870
|
+
export type HelixTagGroupHelixDismissElementEvent =
|
|
13871
|
+
HelixTagGroupElementEvent<HelixDismissEvent>;
|
|
13872
|
+
|
|
13873
|
+
export type HelixTagGroupVueProps = {
|
|
13874
|
+
/** The name of the set, such as "Filters", which a screen reader announces
|
|
13875
|
+
before its tags. */
|
|
13876
|
+
label?: (HelixTagGroup["label"]) | undefined;
|
|
13877
|
+
/** How many tags a reader can select: `single`, `multiple`, or none.
|
|
13878
|
+
|
|
13879
|
+
Absent selects nothing, and the tags carry no selected state at all. */
|
|
13880
|
+
"selection-mode"?: (HelixTagGroup["selectionMode"]) | undefined;
|
|
13881
|
+
/** How many tags a reader can select: `single`, `multiple`, or none.
|
|
13882
|
+
|
|
13883
|
+
Absent selects nothing, and the tags carry no selected state at all. */
|
|
13884
|
+
selectionMode?: (HelixTagGroup["selectionMode"]) | undefined;
|
|
13885
|
+
/** The selected tags' values, separated by commas, since a value may hold a
|
|
13886
|
+
space.
|
|
13887
|
+
|
|
13888
|
+
Set it to start with tags selected. A tag's value is its `value`, or its
|
|
13889
|
+
words where it has none. */
|
|
13890
|
+
value?: (HelixTagGroup["value"]) | undefined;
|
|
13891
|
+
};
|
|
13892
|
+
|
|
13893
|
+
export type HelixTagGroupVueEvents = {
|
|
13894
|
+
/** Fired once a press has changed which tags are selected. */
|
|
13895
|
+
change: HelixTagGroupElementEvent;
|
|
13896
|
+
/** Fired before a press changes which tags are selected, with the `value` it would leave. Cancelable. */
|
|
13897
|
+
"helix-before-change": HelixTagGroupHelixBeforeChangeElementEvent;
|
|
13898
|
+
/** A tag's remove button was pressed, or Delete or Backspace on the focused tag. Bubbles from that tag, which is its `target`; remove the tag in response. Cancelable. */
|
|
13899
|
+
"helix-dismiss": HelixTagGroupHelixDismissElementEvent;
|
|
13900
|
+
};
|
|
13901
|
+
|
|
12409
13902
|
/** `HelixTag` component event */
|
|
12410
13903
|
export type HelixTagElementEvent<E = Event> = TypedEvent<HelixTag, E>;
|
|
12411
13904
|
/** `helix-dismiss` event type */
|
|
@@ -12456,6 +13949,28 @@ derive one rather than dash-casing it, so this would otherwise be
|
|
|
12456
13949
|
reachable only as `dismisslabel`, which nobody would guess and no linter
|
|
12457
13950
|
would catch. */
|
|
12458
13951
|
dismissLabel?: (HelixTag["dismissLabel"]) | undefined;
|
|
13952
|
+
/** Takes the tag out of reach: its link and its remove button stop
|
|
13953
|
+
answering, and in a `Tag.Group` the arrow keys pass over it and it cannot
|
|
13954
|
+
be selected or removed. */
|
|
13955
|
+
disabled?: (HelixTag["disabled"]) | undefined;
|
|
13956
|
+
/** Makes the label a link to this address. */
|
|
13957
|
+
href?: (HelixTag["href"]) | undefined;
|
|
13958
|
+
/** What the tag stands for in its group's `value`.
|
|
13959
|
+
|
|
13960
|
+
Absent is the tag's own words, its category first. */
|
|
13961
|
+
value?: (HelixTag["value"]) | undefined;
|
|
13962
|
+
/** Whether the tag holds its group's tab stop.
|
|
13963
|
+
|
|
13964
|
+
Written by `Tag.Group` on every tag it holds, and unset outside one, which
|
|
13965
|
+
is how a tag knows it is a row. No attribute: it is coordination between
|
|
13966
|
+
elements, the same shape `Toggle.focusable` has. */
|
|
13967
|
+
focusable?: (HelixTag["focusable"]) | undefined;
|
|
13968
|
+
/** Whether the tag is selected, in a `Tag.Group` that selects.
|
|
13969
|
+
|
|
13970
|
+
Written by the group from its own `value`, and unset where nothing can be
|
|
13971
|
+
selected, which is what keeps `aria-selected` off a set that does not
|
|
13972
|
+
select. */
|
|
13973
|
+
selected?: (HelixTag["selected"]) | undefined;
|
|
12459
13974
|
};
|
|
12460
13975
|
|
|
12461
13976
|
export type HelixTagVueEvents = {
|
|
@@ -12468,10 +13983,12 @@ export type HelixTextVueProps = {
|
|
|
12468
13983
|
|
|
12469
13984
|
Decides the outline and the semantics.
|
|
12470
13985
|
|
|
12471
|
-
**`label`
|
|
12472
|
-
|
|
12473
|
-
|
|
12474
|
-
|
|
13986
|
+
**`label` is deprecated and no longer listed.** The element is in this
|
|
13987
|
+
one's shadow root, which neither `for` nor a wrapped control can reach, so
|
|
13988
|
+
it labeled nothing. Written anyway, it still renders a `<label>` in the
|
|
13989
|
+
label ramp and warns. Use `variant="label"` for the look, a native
|
|
13990
|
+
`<label data-text="label">` to label a native control, and a Helix field's
|
|
13991
|
+
own `label`. */
|
|
12475
13992
|
as?: (HelixText["as"]) | undefined;
|
|
12476
13993
|
/** Makes the text quieter: `muted`, or the quieter `subtle`.
|
|
12477
13994
|
|
|
@@ -12488,6 +14005,40 @@ rather than a second one that could not be read.
|
|
|
12488
14005
|
|
|
12489
14006
|
The resting case is the absent attribute, full strength. */
|
|
12490
14007
|
emphasis?: (HelixText["emphasis"]) | undefined;
|
|
14008
|
+
/** The most lines to show. Text past the last one is cut off with an
|
|
14009
|
+
ellipsis.
|
|
14010
|
+
|
|
14011
|
+
Lays the text out as a block, because a line count needs a width to break
|
|
14012
|
+
against. The whole text stays in the page, so a screen reader and a search
|
|
14013
|
+
still read all of it. Set it as an attribute, such as `lines="1"` for a
|
|
14014
|
+
single line. */
|
|
14015
|
+
lines?: (HelixText["lines"]) | undefined;
|
|
14016
|
+
/** How the lines align, set as `text-align`.
|
|
14017
|
+
|
|
14018
|
+
Named for the CSS property it sets. `align` alone is a legacy HTML
|
|
14019
|
+
attribute the browser maps to `text-align` by itself on any element, and
|
|
14020
|
+
it has no `start` or `end`. */
|
|
14021
|
+
"text-align"?: (HelixText["textAlign"]) | undefined;
|
|
14022
|
+
/** How the lines align, set as `text-align`.
|
|
14023
|
+
|
|
14024
|
+
Named for the CSS property it sets. `align` alone is a legacy HTML
|
|
14025
|
+
attribute the browser maps to `text-align` by itself on any element, and
|
|
14026
|
+
it has no `start` or `end`. */
|
|
14027
|
+
textAlign?: (HelixText["textAlign"]) | undefined;
|
|
14028
|
+
/** How the lines break, set as `text-wrap`.
|
|
14029
|
+
|
|
14030
|
+
`balance` evens out the length of every line, for a heading of a few
|
|
14031
|
+
lines. `pretty` avoids a last line of one short word, for a paragraph.
|
|
14032
|
+
`nowrap` keeps the text on one line. Absent, the lines break as the
|
|
14033
|
+
browser breaks them. */
|
|
14034
|
+
"text-wrap"?: (HelixText["textWrap"]) | undefined;
|
|
14035
|
+
/** How the lines break, set as `text-wrap`.
|
|
14036
|
+
|
|
14037
|
+
`balance` evens out the length of every line, for a heading of a few
|
|
14038
|
+
lines. `pretty` avoids a last line of one short word, for a paragraph.
|
|
14039
|
+
`nowrap` keeps the text on one line. Absent, the lines break as the
|
|
14040
|
+
browser breaks them. */
|
|
14041
|
+
textWrap?: (HelixText["textWrap"]) | undefined;
|
|
12491
14042
|
/** The meaning of the text, shown by its color, such as `danger` or `success`.
|
|
12492
14043
|
It is set separately from `variant`.
|
|
12493
14044
|
|
|
@@ -12596,6 +14147,12 @@ element sends two entries, and that is what this does. */
|
|
|
12596
14147
|
maxlength?: (HelixTextarea["maxLength"] | `${number}`) | undefined;
|
|
12597
14148
|
/** The most characters the value can have. */
|
|
12598
14149
|
maxLength?: (HelixTextarea["maxLength"]) | undefined;
|
|
14150
|
+
/** How many lines an `auto-grow` field grows to before it scrolls. Absent,
|
|
14151
|
+
it grows with all of its text. */
|
|
14152
|
+
"max-rows"?: (HelixTextarea["maxRows"] | `${number}`) | undefined;
|
|
14153
|
+
/** How many lines an `auto-grow` field grows to before it scrolls. Absent,
|
|
14154
|
+
it grows with all of its text. */
|
|
14155
|
+
maxRows?: (HelixTextarea["maxRows"]) | undefined;
|
|
12599
14156
|
/** The fewest characters the value can have.
|
|
12600
14157
|
|
|
12601
14158
|
Forwarded to the real `<textarea>` rather than checked here, which is what
|
|
@@ -12695,6 +14252,20 @@ export type HelixTimeInputHelixBeforeOpenElementEvent =
|
|
|
12695
14252
|
HelixTimeInputElementEvent<HelixBeforeOpenEvent>;
|
|
12696
14253
|
|
|
12697
14254
|
export type HelixTimeInputVueProps = {
|
|
14255
|
+
/** What a screen reader hears for a segment with nothing in it, which a
|
|
14256
|
+
sighted reader sees as dashes. */
|
|
14257
|
+
"empty-segment-label"?: (HelixTimeInput["emptySegmentLabel"]) | undefined;
|
|
14258
|
+
/** What a screen reader hears for a segment with nothing in it, which a
|
|
14259
|
+
sighted reader sees as dashes. */
|
|
14260
|
+
emptySegmentLabel?: (HelixTimeInput["emptySegmentLabel"]) | undefined;
|
|
14261
|
+
/** Whether the field is a row of segments, one for each part of the date or
|
|
14262
|
+
time, in place of a line of text.
|
|
14263
|
+
|
|
14264
|
+
Each segment is set with digits or the arrow keys, in the order the
|
|
14265
|
+
locale writes them, so a reader types a date the way they write one and
|
|
14266
|
+
no format has to be read back. The picker still opens from the trigger
|
|
14267
|
+
and with Alt+Down. */
|
|
14268
|
+
segmented?: (HelixTimeInput["segmented"]) | undefined;
|
|
12698
14269
|
/** Whether the value is locked. A read-only control still submits its value.
|
|
12699
14270
|
|
|
12700
14271
|
**Enforced by refusing every request in one place**, which is the seam this
|
|
@@ -12824,6 +14395,16 @@ a typed time, which is then invalid. */
|
|
|
12824
14395
|
Handed to the list, which offers them as unavailable, and checked against
|
|
12825
14396
|
a typed time, which is then invalid. */
|
|
12826
14397
|
disableTimes?: (HelixTimeInput["disableTimes"]) | undefined;
|
|
14398
|
+
/** The clock the times are written on: `h12` for twelve hours with a
|
|
14399
|
+
meridiem, `h23` for twenty-four. Absent is the locale's own.
|
|
14400
|
+
|
|
14401
|
+
Handed to the list. The value is `HH:mm` on twenty-four hours either way. */
|
|
14402
|
+
"hour-cycle"?: (HelixTimeInput["hourCycle"]) | undefined;
|
|
14403
|
+
/** The clock the times are written on: `h12` for twelve hours with a
|
|
14404
|
+
meridiem, `h23` for twenty-four. Absent is the locale's own.
|
|
14405
|
+
|
|
14406
|
+
Handed to the list. The value is `HH:mm` on twenty-four hours either way. */
|
|
14407
|
+
hourCycle?: (HelixTimeInput["hourCycle"]) | undefined;
|
|
12827
14408
|
/** Language tag the times are written in.
|
|
12828
14409
|
|
|
12829
14410
|
Absent uses the runtime's own. */
|
|
@@ -12875,7 +14456,12 @@ removes rather than as "Remove" said once per time. */
|
|
|
12875
14456
|
**The name goes in**, so a row of them is heard as which one each
|
|
12876
14457
|
removes rather than as "Remove" said once per time. */
|
|
12877
14458
|
removeLabel?: (HelixTimeInput["removeLabel"]) | undefined;
|
|
12878
|
-
/**
|
|
14459
|
+
/** Whether times carry their seconds: the value is `HH:mm:ss`, a typed time
|
|
14460
|
+
may give them, the field writes them, and the list's `step` counts seconds.
|
|
14461
|
+
See Time Picker's `seconds`. */
|
|
14462
|
+
seconds?: (HelixTimeInput["seconds"]) | undefined;
|
|
14463
|
+
/** How far apart the offered times are, in minutes, or in seconds with
|
|
14464
|
+
`seconds`. */
|
|
12879
14465
|
step?: (HelixTimeInput["step"]) | undefined;
|
|
12880
14466
|
/** Whether the field shows the time in the local style or as the value
|
|
12881
14467
|
itself.
|
|
@@ -13025,6 +14611,20 @@ A time not on the step is simply never offered, so it is not an error to
|
|
|
13025
14611
|
name one, and naming every time in the list is how the empty state is
|
|
13026
14612
|
reached honestly rather than by handing over an empty range. */
|
|
13027
14613
|
disableTimes?: (HelixTimePicker["disableTimes"]) | undefined;
|
|
14614
|
+
/** The clock the times are written on: `h12` for twelve hours with a
|
|
14615
|
+
meridiem, `h23` for twenty-four.
|
|
14616
|
+
|
|
14617
|
+
Absent is the locale's own, which is right for a reader's own form. Set it
|
|
14618
|
+
where every reader must see the same clock whatever their language, as a
|
|
14619
|
+
timetable does. The value is `HH:mm` on twenty-four hours either way. */
|
|
14620
|
+
"hour-cycle"?: (HelixTimePicker["hourCycle"]) | undefined;
|
|
14621
|
+
/** The clock the times are written on: `h12` for twelve hours with a
|
|
14622
|
+
meridiem, `h23` for twenty-four.
|
|
14623
|
+
|
|
14624
|
+
Absent is the locale's own, which is right for a reader's own form. Set it
|
|
14625
|
+
where every reader must see the same clock whatever their language, as a
|
|
14626
|
+
timetable does. The value is `HH:mm` on twenty-four hours either way. */
|
|
14627
|
+
hourCycle?: (HelixTimePicker["hourCycle"]) | undefined;
|
|
13028
14628
|
/** What the wheel of hours is called, read by screen readers. */
|
|
13029
14629
|
"hour-label"?: (HelixTimePicker["hourLabel"]) | undefined;
|
|
13030
14630
|
/** What the wheel of hours is called, read by screen readers. */
|
|
@@ -13121,7 +14721,20 @@ else set needs. */
|
|
|
13121
14721
|
readOnly?: (HelixTimePicker["readOnly"]) | undefined;
|
|
13122
14722
|
/** Stops the form from submitting while no time is chosen. */
|
|
13123
14723
|
required?: (HelixTimePicker["required"]) | undefined;
|
|
13124
|
-
/**
|
|
14724
|
+
/** What the wheel of seconds is called, read by screen readers. */
|
|
14725
|
+
"second-label"?: (HelixTimePicker["secondLabel"]) | undefined;
|
|
14726
|
+
/** What the wheel of seconds is called, read by screen readers. */
|
|
14727
|
+
secondLabel?: (HelixTimePicker["secondLabel"]) | undefined;
|
|
14728
|
+
/** Whether times carry their seconds.
|
|
14729
|
+
|
|
14730
|
+
The value becomes `HH:mm:ss`, each time is written with its seconds, the
|
|
14731
|
+
wheels take a column of seconds, and `step` counts seconds, the unit
|
|
14732
|
+
`<input type="time">` counts in. A list at a step of one second is 86,400
|
|
14733
|
+
rows, so give `seconds` a `step` and bounds that keep it a list, or use
|
|
14734
|
+
the wheels. */
|
|
14735
|
+
seconds?: (HelixTimePicker["seconds"]) | undefined;
|
|
14736
|
+
/** How far apart the offered times are, in minutes, or in seconds with
|
|
14737
|
+
`seconds`.
|
|
13125
14738
|
|
|
13126
14739
|
Fifteen, which is four rows an hour and ninety-six in a day: enough that a
|
|
13127
14740
|
reader scrolls rather than hunts, and few enough that the list is a list.
|
|
@@ -13212,6 +14825,19 @@ export type HelixTimePickerVueEvents = {
|
|
|
13212
14825
|
input: HelixTimePickerElementEvent;
|
|
13213
14826
|
};
|
|
13214
14827
|
|
|
14828
|
+
export type HelixTimelineGroupVueProps = {
|
|
14829
|
+
/** The level of the group's heading, from 1 to 6. */
|
|
14830
|
+
"heading-level"?: (HelixTimelineGroup["headingLevel"] | `${number}`) | undefined;
|
|
14831
|
+
/** The level of the group's heading, from 1 to 6. */
|
|
14832
|
+
headingLevel?: (HelixTimelineGroup["headingLevel"]) | undefined;
|
|
14833
|
+
/** The heading, when it is plain text, such as "Today".
|
|
14834
|
+
|
|
14835
|
+
The fallback of the `heading` slot, so slotted content replaces it. */
|
|
14836
|
+
label?: (HelixTimelineGroup["label"]) | undefined;
|
|
14837
|
+
};
|
|
14838
|
+
|
|
14839
|
+
export type HelixTimelineGroupVueEvents = {};
|
|
14840
|
+
|
|
13215
14841
|
export type HelixTimelineItemVueProps = {
|
|
13216
14842
|
/** When it happened, in machine-readable form. Setting it wraps the time in a
|
|
13217
14843
|
`<time>` element.
|
|
@@ -13227,6 +14853,15 @@ know what instant it names. */
|
|
|
13227
14853
|
export type HelixTimelineItemVueEvents = {};
|
|
13228
14854
|
|
|
13229
14855
|
export type HelixTimelineVueProps = {
|
|
14856
|
+
/** Where the entries sit beside the line: `opposite` puts the times on one
|
|
14857
|
+
side and what happened on the other, and `alternate` puts every other
|
|
14858
|
+
entry on the other side. Unset, the line runs down the start edge.
|
|
14859
|
+
|
|
14860
|
+
Down the page only: across the page it is set aside. */
|
|
14861
|
+
layout?: (HelixTimeline["layout"]) | undefined;
|
|
14862
|
+
/** Which way time runs: `horizontal` lays the entries across the page. Unset,
|
|
14863
|
+
they run down it. */
|
|
14864
|
+
orientation?: (HelixTimeline["orientation"]) | undefined;
|
|
13230
14865
|
/** Accessible name for the timeline, for people who reach it out of context. */
|
|
13231
14866
|
label?: (HelixTimeline["label"]) | undefined;
|
|
13232
14867
|
};
|
|
@@ -13295,7 +14930,11 @@ export type HelixToastHelixDismissElementEvent =
|
|
|
13295
14930
|
HelixToastElementEvent<HelixDismissEvent>;
|
|
13296
14931
|
|
|
13297
14932
|
export type HelixToastVueProps = {
|
|
13298
|
-
/**
|
|
14933
|
+
/** The key that takes focus to the stack and back, such as `F8` or `Alt+T`:
|
|
14934
|
+
keys joined by `+`, the last one the key. Empty turns it off. */
|
|
14935
|
+
hotkey?: (HelixToast["hotkey"]) | undefined;
|
|
14936
|
+
/** Accessible name for the region, with `{hotkey}` filled in. Translate it with
|
|
14937
|
+
the rest of your interface. */
|
|
13299
14938
|
label?: (HelixToast["label"]) | undefined;
|
|
13300
14939
|
/** Which corner or edge the stack sits at.
|
|
13301
14940
|
|
|
@@ -13428,6 +15067,21 @@ reader while looking correct to everybody else. Worse, setting both draws
|
|
|
13428
15067
|
it twice. One property moves the label the consumer already has to give,
|
|
13429
15068
|
and cannot be used to remove it. */
|
|
13430
15069
|
labelPlacement?: (HelixToggleGroup["labelPlacement"]) | undefined;
|
|
15070
|
+
/** The direction the items run. `vertical` puts them in a column, and the up
|
|
15071
|
+
and down arrows move between them.
|
|
15072
|
+
|
|
15073
|
+
Optional, so the attribute is absent until a consumer writes it. */
|
|
15074
|
+
orientation?: (HelixToggleGroup["orientation"]) | undefined;
|
|
15075
|
+
/** Whether one item is chosen, as a radio group, or several can be pressed,
|
|
15076
|
+
as a toolbar of buttons with `aria-pressed`.
|
|
15077
|
+
|
|
15078
|
+
Optional, so the attribute is absent until a consumer writes it. */
|
|
15079
|
+
"selection-mode"?: (HelixToggleGroup["selectionMode"]) | undefined;
|
|
15080
|
+
/** Whether one item is chosen, as a radio group, or several can be pressed,
|
|
15081
|
+
as a toolbar of buttons with `aria-pressed`.
|
|
15082
|
+
|
|
15083
|
+
Optional, so the attribute is absent until a consumer writes it. */
|
|
15084
|
+
selectionMode?: (HelixToggleGroup["selectionMode"]) | undefined;
|
|
13431
15085
|
/** Whether the control is disabled and cannot be used.
|
|
13432
15086
|
|
|
13433
15087
|
Reflected, because the styled tier selects on it, and mirrored to
|
|
@@ -13464,6 +15118,10 @@ work as before once focus is in it.
|
|
|
13464
15118
|
No attribute: it is coordination between elements, and a consumer has no
|
|
13465
15119
|
reason to set it. */
|
|
13466
15120
|
focusable?: (HelixToggleGroup["focusable"]) | undefined;
|
|
15121
|
+
/** The pressed values as a list, under `selection-mode="multiple"`, in the
|
|
15122
|
+
order the items are written. Written, it presses exactly those items.
|
|
15123
|
+
Where one item is chosen, it is that one value, or none. */
|
|
15124
|
+
values?: (HelixToggleGroup["values"]) | undefined;
|
|
13467
15125
|
};
|
|
13468
15126
|
|
|
13469
15127
|
export type HelixToggleGroupVueEvents = {
|
|
@@ -13531,6 +15189,11 @@ group sits in holds the stop. No attribute: it is coordination between
|
|
|
13531
15189
|
elements, and `tabindex` on a host the consumer rendered is the change a
|
|
13532
15190
|
React consumer's hydration reports and does not patch up. */
|
|
13533
15191
|
focusable?: (HelixToggle["focusable"]) | undefined;
|
|
15192
|
+
/** Whether the item is pressed, in a group where several can be, and
|
|
15193
|
+
`undefined` in a group where one is chosen.
|
|
15194
|
+
|
|
15195
|
+
Written by the group, like `selected`, so no attribute. */
|
|
15196
|
+
pressed?: (HelixToggle["pressed"]) | undefined;
|
|
13534
15197
|
};
|
|
13535
15198
|
|
|
13536
15199
|
export type HelixToggleVueEvents = {
|
|
@@ -13546,6 +15209,12 @@ and wins over this. */
|
|
|
13546
15209
|
label?: (HelixToolbar["label"]) | undefined;
|
|
13547
15210
|
/** The direction the arrow keys move focus in. */
|
|
13548
15211
|
orientation?: (HelixToolbar["orientation"]) | undefined;
|
|
15212
|
+
/** Whether the arrow keys stop at the first and the last control. Unset, they
|
|
15213
|
+
wrap around from one end to the other. */
|
|
15214
|
+
"stop-at-ends"?: (HelixToolbar["stopAtEnds"]) | undefined;
|
|
15215
|
+
/** Whether the arrow keys stop at the first and the last control. Unset, they
|
|
15216
|
+
wrap around from one end to the other. */
|
|
15217
|
+
stopAtEnds?: (HelixToolbar["stopAtEnds"]) | undefined;
|
|
13549
15218
|
};
|
|
13550
15219
|
|
|
13551
15220
|
export type HelixToolbarVueEvents = {};
|
|
@@ -13675,6 +15344,22 @@ worked. */
|
|
|
13675
15344
|
|
|
13676
15345
|
It moves if that side does not fit. */
|
|
13677
15346
|
placement?: (HelixTooltip["placement"]) | undefined;
|
|
15347
|
+
/** What shows the bubble. Unset, it is a pointer resting on the trigger and
|
|
15348
|
+
keyboard focus. `focus` is keyboard focus alone, for a hint a pointer does
|
|
15349
|
+
not need, such as a shortcut a mouse reader has no use for. */
|
|
15350
|
+
"show-on"?: (HelixTooltip["showOn"]) | undefined;
|
|
15351
|
+
/** What shows the bubble. Unset, it is a pointer resting on the trigger and
|
|
15352
|
+
keyboard focus. `focus` is keyboard focus alone, for a hint a pointer does
|
|
15353
|
+
not need, such as a shortcut a mouse reader has no use for. */
|
|
15354
|
+
showOn?: (HelixTooltip["showOn"]) | undefined;
|
|
15355
|
+
/** How long after a tooltip hides the next one still shows at once, with no
|
|
15356
|
+
`delay`, in milliseconds. The same skip delay Radix uses. Zero makes every
|
|
15357
|
+
tooltip wait. */
|
|
15358
|
+
"skip-delay"?: (HelixTooltip["skipDelay"] | `${number}`) | undefined;
|
|
15359
|
+
/** How long after a tooltip hides the next one still shows at once, with no
|
|
15360
|
+
`delay`, in milliseconds. The same skip delay Radix uses. Zero makes every
|
|
15361
|
+
tooltip wait. */
|
|
15362
|
+
skipDelay?: (HelixTooltip["skipDelay"]) | undefined;
|
|
13678
15363
|
/** The id of a box to keep the bubble inside. Defaults to the viewport.
|
|
13679
15364
|
|
|
13680
15365
|
Resolved the way `for` is, so an id in the same tree, which is what lets a
|
|
@@ -13768,6 +15453,14 @@ The shape is `Carousel`'s, which is the nearest thing in the library: a
|
|
|
13768
15453
|
"next-label"?: (HelixTour["nextLabel"]) | undefined;
|
|
13769
15454
|
/** Label for the control that goes on. */
|
|
13770
15455
|
nextLabel?: (HelixTour["nextLabel"]) | undefined;
|
|
15456
|
+
/** Draws each stop's place in the run in its panel, as well as saying it. */
|
|
15457
|
+
progress?: (HelixTour["progress"]) | undefined;
|
|
15458
|
+
/** Each stop's place in the run, with `{index}` and `{count}` filled in.
|
|
15459
|
+
Translate it with the rest of your text. */
|
|
15460
|
+
"progress-label"?: (HelixTour["progressLabel"]) | undefined;
|
|
15461
|
+
/** Each stop's place in the run, with `{index}` and `{count}` filled in.
|
|
15462
|
+
Translate it with the rest of your text. */
|
|
15463
|
+
progressLabel?: (HelixTour["progressLabel"]) | undefined;
|
|
13771
15464
|
/** Label for the control that leaves the tour. */
|
|
13772
15465
|
"skip-label"?: (HelixTour["skipLabel"]) | undefined;
|
|
13773
15466
|
/** Label for the control that leaves the tour. */
|
|
@@ -13822,6 +15515,9 @@ closed tour, a closed tour shows nothing, and nothing can disagree. */
|
|
|
13822
15515
|
first?: (HelixTourStop["first"]) | undefined;
|
|
13823
15516
|
/** The id of the element the stop points at. */
|
|
13824
15517
|
for?: (HelixTourStop["for"]) | undefined;
|
|
15518
|
+
/** The panel's name, where neither the `heading` slot nor the content holds a
|
|
15519
|
+
heading. */
|
|
15520
|
+
label?: (HelixTourStop["label"]) | undefined;
|
|
13825
15521
|
/** Whether the stop is the last one. Its next control then shows `doneLabel`. */
|
|
13826
15522
|
last?: (HelixTourStop["last"]) | undefined;
|
|
13827
15523
|
/** Label for the control that goes on. */
|
|
@@ -13834,6 +15530,15 @@ closed tour, a closed tour shows nothing, and nothing can disagree. */
|
|
|
13834
15530
|
"skip-label"?: (HelixTourStop["skipLabel"]) | undefined;
|
|
13835
15531
|
/** Label for the control that leaves the tour. */
|
|
13836
15532
|
skipLabel?: (HelixTourStop["skipLabel"]) | undefined;
|
|
15533
|
+
/** What kind of stop this is. Unset, it is a bubble pointing at its target.
|
|
15534
|
+
|
|
15535
|
+
- `dialog`: a panel in the middle of the window, over a backdrop
|
|
15536
|
+
- `floating`: a panel in a corner of the window
|
|
15537
|
+
- `wait`: nothing shown, while the tour waits for the target to be on the page
|
|
15538
|
+
|
|
15539
|
+
Reflected, because the styled tier places a dialog and a floating panel by
|
|
15540
|
+
it, and unset at rest, so no default is written onto the host. */
|
|
15541
|
+
type?: (HelixTourStop["type"]) | undefined;
|
|
13837
15542
|
};
|
|
13838
15543
|
|
|
13839
15544
|
export type HelixTourStopVueEvents = {
|
|
@@ -13855,6 +15560,9 @@ export type HelixTreeItemHelixBeforeCloseElementEvent =
|
|
|
13855
15560
|
/** `helix-before-open` event type */
|
|
13856
15561
|
export type HelixTreeItemHelixBeforeOpenElementEvent =
|
|
13857
15562
|
HelixTreeItemElementEvent<HelixBeforeOpenEvent>;
|
|
15563
|
+
/** `helix-load` event type */
|
|
15564
|
+
export type HelixTreeItemHelixLoadElementEvent =
|
|
15565
|
+
HelixTreeItemElementEvent<HelixLoadEvent>;
|
|
13858
15566
|
|
|
13859
15567
|
export type HelixTreeItemVueProps = {
|
|
13860
15568
|
/** Whether the element starts open. Ignored once `open` is written. */
|
|
@@ -13874,12 +15582,20 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
13874
15582
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
13875
15583
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
13876
15584
|
open?: (HelixTreeItem["open"]) | undefined;
|
|
15585
|
+
/** Whether the item cannot be chosen, opened or followed. The arrow keys still
|
|
15586
|
+
reach it, so a reader knows it is there. */
|
|
15587
|
+
disabled?: (HelixTreeItem["disabled"]) | undefined;
|
|
13877
15588
|
/** The URL this node links to. Setting it makes the row a link.
|
|
13878
15589
|
|
|
13879
15590
|
Unset by default, and unreflected: a tree of choosable nodes is not a tree
|
|
13880
15591
|
of links, and an empty `href` written onto every row would be a link to the
|
|
13881
15592
|
current page on every item a consumer never asked to be one. */
|
|
13882
15593
|
href?: (HelixTreeItem["href"]) | undefined;
|
|
15594
|
+
/** Whether the item is a branch whose children are loaded when it opens.
|
|
15595
|
+
|
|
15596
|
+
Opening it sends `helix-load`. Add the children to its `children` slot,
|
|
15597
|
+
and remove `lazy` once they are in, as Web Awesome's tree item does. */
|
|
15598
|
+
lazy?: (HelixTreeItem["lazy"]) | undefined;
|
|
13883
15599
|
/** The link's `rel` value, which describes how the linked page relates to this
|
|
13884
15600
|
one.
|
|
13885
15601
|
|
|
@@ -13934,6 +15650,8 @@ export type HelixTreeItemVueEvents = {
|
|
|
13934
15650
|
"helix-before-close": HelixTreeItemHelixBeforeCloseElementEvent;
|
|
13935
15651
|
/** Fired before a branch opens, and cancelable. */
|
|
13936
15652
|
"helix-before-open": HelixTreeItemHelixBeforeOpenElementEvent;
|
|
15653
|
+
/** Fired when a `lazy` item opens, so you can load its children. */
|
|
15654
|
+
"helix-load": HelixTreeItemHelixLoadElementEvent;
|
|
13937
15655
|
};
|
|
13938
15656
|
|
|
13939
15657
|
/** `HelixTree` component event */
|
|
@@ -14064,6 +15782,19 @@ branch as a label; a headless consumer reads the attribute and the
|
|
|
14064
15782
|
written here appears in the served markup of every tree anybody renders.
|
|
14065
15783
|
The resting state is the absence of the attribute, which is `peer`. */
|
|
14066
15784
|
nesting?: (HelixTree["nesting"]) | undefined;
|
|
15785
|
+
/** Whether a reader can check many items. Unset, one item is chosen at a
|
|
15786
|
+
time.
|
|
15787
|
+
|
|
15788
|
+
Optional, so a tree of one choice writes no attribute onto the host. */
|
|
15789
|
+
"selection-mode"?: (HelixTree["selectionMode"]) | undefined;
|
|
15790
|
+
/** Whether a reader can check many items. Unset, one item is chosen at a
|
|
15791
|
+
time.
|
|
15792
|
+
|
|
15793
|
+
Optional, so a tree of one choice writes no attribute onto the host. */
|
|
15794
|
+
selectionMode?: (HelixTree["selectionMode"]) | undefined;
|
|
15795
|
+
/** The checked values, as a list, under `selection-mode="multiple"`, and the
|
|
15796
|
+
chosen value alone otherwise. Writing it sets `active`. */
|
|
15797
|
+
values?: (HelixTree["values"]) | undefined;
|
|
14067
15798
|
};
|
|
14068
15799
|
|
|
14069
15800
|
export type HelixTreeVueEvents = {
|
|
@@ -14193,6 +15924,9 @@ export type HelixVideoPlaylistHelixActivateElementEvent =
|
|
|
14193
15924
|
/** `helix-before-activate` event type */
|
|
14194
15925
|
export type HelixVideoPlaylistHelixBeforeActivateElementEvent =
|
|
14195
15926
|
HelixVideoPlaylistElementEvent<HelixBeforeActivateEvent>;
|
|
15927
|
+
/** `helix-end` event type */
|
|
15928
|
+
export type HelixVideoPlaylistHelixEndElementEvent =
|
|
15929
|
+
HelixVideoPlaylistElementEvent<HelixEndEvent>;
|
|
14196
15930
|
|
|
14197
15931
|
export type HelixVideoPlaylistVueProps = {
|
|
14198
15932
|
/** The `value` of the current item.
|
|
@@ -14214,6 +15948,18 @@ Ignored once `active` is written. */
|
|
|
14214
15948
|
defaultActive?: (HelixVideoPlaylist["defaultActive"]) | undefined;
|
|
14215
15949
|
/** The list's name, read by screen readers. */
|
|
14216
15950
|
label?: (HelixVideoPlaylist["label"]) | undefined;
|
|
15951
|
+
/** What happens when an entry ends with no next one to go to. `one` plays the
|
|
15952
|
+
same entry again, and `all` goes from the last entry back to the first.
|
|
15953
|
+
Absent, the playlist stops on the last entry and sends `helix-end`.
|
|
15954
|
+
|
|
15955
|
+
`all` also lets the next and previous controls go round, so next on the
|
|
15956
|
+
last entry is the first. `one` changes only what an ending does: next and
|
|
15957
|
+
previous still move, being a reader asking for another entry. */
|
|
15958
|
+
repeat?: (HelixVideoPlaylist["repeat"]) | undefined;
|
|
15959
|
+
/** Whether the entries play in a random order. The order starts from the
|
|
15960
|
+
entry that is current, and holds until shuffle is turned off or an entry
|
|
15961
|
+
arrives or leaves, so previous goes back through what has played. */
|
|
15962
|
+
shuffle?: (HelixVideoPlaylist["shuffle"]) | undefined;
|
|
14217
15963
|
};
|
|
14218
15964
|
|
|
14219
15965
|
export type HelixVideoPlaylistVueEvents = {
|
|
@@ -14221,6 +15967,8 @@ export type HelixVideoPlaylistVueEvents = {
|
|
|
14221
15967
|
"helix-activate": HelixVideoPlaylistHelixActivateElementEvent;
|
|
14222
15968
|
/** The current entry is about to change. Cancelable: cancel it to keep the current entry. */
|
|
14223
15969
|
"helix-before-activate": HelixVideoPlaylistHelixBeforeActivateElementEvent;
|
|
15970
|
+
/** The last entry finished playing, and the playlist stopped there. Not sent while `repeat` is set. */
|
|
15971
|
+
"helix-end": HelixVideoPlaylistHelixEndElementEvent;
|
|
14224
15972
|
};
|
|
14225
15973
|
|
|
14226
15974
|
/** `HelixVideo` component event */
|
|
@@ -14266,10 +16014,10 @@ only the departure has to be named. */
|
|
|
14266
16014
|
/** Whether the video starts playing on its own. Browsers allow this only while
|
|
14267
16015
|
it is muted.
|
|
14268
16016
|
|
|
14269
|
-
Forwarded
|
|
14270
|
-
the browser's policy and
|
|
14271
|
-
|
|
14272
|
-
|
|
16017
|
+
Forwarded to the video, which decides. Whether an unprompted play is
|
|
16018
|
+
permitted is the browser's policy, and what follows a refused autoplay is a
|
|
16019
|
+
paused player showing its start control, which is the correct thing to be
|
|
16020
|
+
looking at. */
|
|
14273
16021
|
autoplay?: (HelixVideo["autoplay"]) | undefined;
|
|
14274
16022
|
/** The name of the captions control when the video has one track. The control
|
|
14275
16023
|
turns that track on and off.
|
|
@@ -14503,6 +16251,12 @@ bar: two of the same control is worse than either placement. */
|
|
|
14503
16251
|
"pip-label"?: (HelixVideo["pipLabel"]) | undefined;
|
|
14504
16252
|
/** What the control that floats the video over other windows is called. */
|
|
14505
16253
|
pipLabel?: (HelixVideo["pipLabel"]) | undefined;
|
|
16254
|
+
/** The name of the player when `label` is not set. The player is a group, and
|
|
16255
|
+
this is what a screen reader calls it on arriving. */
|
|
16256
|
+
"player-label"?: (HelixVideo["playerLabel"]) | undefined;
|
|
16257
|
+
/** The name of the player when `label` is not set. The player is a group, and
|
|
16258
|
+
this is what a screen reader calls it on arriving. */
|
|
16259
|
+
playerLabel?: (HelixVideo["playerLabel"]) | undefined;
|
|
14506
16260
|
/** The name of the play control while pressing it would start the video. */
|
|
14507
16261
|
"play-label"?: (HelixVideo["playLabel"]) | undefined;
|
|
14508
16262
|
/** The name of the play control while pressing it would start the video. */
|
|
@@ -14552,6 +16306,14 @@ nothing in it says "press to watch".
|
|
|
14552
16306
|
behind a hero, a grid of eight thumbnails, anything where the video is
|
|
14553
16307
|
decoration rather than something to start.
|
|
14554
16308
|
|
|
16309
|
+
**It is for the pointer, and the bar's Play is for everyone else.** Both
|
|
16310
|
+
play the video, so a keyboard met two stops called "Play" one after the
|
|
16311
|
+
other and a screen reader read the same button twice. The large one is out
|
|
16312
|
+
of the tab order and hidden from assistive technology while the bar is
|
|
16313
|
+
drawn, which is whenever it is: it shows only while the video is not
|
|
16314
|
+
playing, and the bar does not fade then. A press on it leaves focus on the
|
|
16315
|
+
player, so the keys go on working once it has gone.
|
|
16316
|
+
|
|
14555
16317
|
A value rather than a boolean, so the resting state is the attribute's
|
|
14556
16318
|
absence: a boolean defaulting to on would have to be spelled as its own
|
|
14557
16319
|
negation. */
|
|
@@ -14569,6 +16331,14 @@ nothing in it says "press to watch".
|
|
|
14569
16331
|
behind a hero, a grid of eight thumbnails, anything where the video is
|
|
14570
16332
|
decoration rather than something to start.
|
|
14571
16333
|
|
|
16334
|
+
**It is for the pointer, and the bar's Play is for everyone else.** Both
|
|
16335
|
+
play the video, so a keyboard met two stops called "Play" one after the
|
|
16336
|
+
other and a screen reader read the same button twice. The large one is out
|
|
16337
|
+
of the tab order and hidden from assistive technology while the bar is
|
|
16338
|
+
drawn, which is whenever it is: it shows only while the video is not
|
|
16339
|
+
playing, and the bar does not fade then. A press on it leaves focus on the
|
|
16340
|
+
player, so the keys go on working once it has gone.
|
|
16341
|
+
|
|
14572
16342
|
A value rather than a boolean, so the resting state is the attribute's
|
|
14573
16343
|
absence: a boolean defaulting to on would have to be spelled as its own
|
|
14574
16344
|
negation. */
|
|
@@ -14603,25 +16373,78 @@ past the end is the one write the platform answers with an exception. */
|
|
|
14603
16373
|
};
|
|
14604
16374
|
|
|
14605
16375
|
export type HelixVideoVueEvents = {
|
|
14606
|
-
/** The
|
|
16376
|
+
/** The media stopped loading before it finished, without an error. */
|
|
16377
|
+
abort: HelixVideoElementEvent;
|
|
16378
|
+
/** Enough has loaded to start playing. */
|
|
16379
|
+
canplay: HelixVideoElementEvent;
|
|
16380
|
+
/** Enough has loaded to play to the end without stopping, at the current rate. */
|
|
16381
|
+
canplaythrough: HelixVideoElementEvent;
|
|
16382
|
+
/** The duration changed, which it does once the metadata is in. */
|
|
16383
|
+
durationchange: HelixVideoElementEvent;
|
|
16384
|
+
/** The media was reset, as when `src` changes. */
|
|
16385
|
+
emptied: HelixVideoElementEvent;
|
|
16386
|
+
/** The video reached its end. */
|
|
14607
16387
|
ended: HelixVideoElementEvent;
|
|
16388
|
+
/** The source could not be loaded or played. The player shows `error-label` as well. */
|
|
16389
|
+
error: HelixVideoElementEvent;
|
|
14608
16390
|
/** The next video was requested. Load it in response. */
|
|
14609
16391
|
"helix-next": HelixVideoHelixNextElementEvent;
|
|
14610
16392
|
/** The previous video was requested. Load it in response. */
|
|
14611
16393
|
"helix-previous": HelixVideoHelixPreviousElementEvent;
|
|
14612
|
-
/**
|
|
16394
|
+
/** The frame at the current position has loaded. */
|
|
16395
|
+
loadeddata: HelixVideoElementEvent;
|
|
16396
|
+
/** The duration and the size of the video are known. */
|
|
16397
|
+
loadedmetadata: HelixVideoElementEvent;
|
|
16398
|
+
/** The video started looking for its media. */
|
|
16399
|
+
loadstart: HelixVideoElementEvent;
|
|
16400
|
+
/** Playback paused. */
|
|
14613
16401
|
pause: HelixVideoElementEvent;
|
|
14614
|
-
/** Playback
|
|
16402
|
+
/** Playback was asked to start. */
|
|
14615
16403
|
play: HelixVideoElementEvent;
|
|
16404
|
+
/** Playback started, or started again after waiting for data. */
|
|
16405
|
+
playing: HelixVideoElementEvent;
|
|
16406
|
+
/** More of the media has downloaded. */
|
|
16407
|
+
progress: HelixVideoElementEvent;
|
|
16408
|
+
/** The playback rate changed. Read `playbackRate`. */
|
|
16409
|
+
ratechange: HelixVideoElementEvent;
|
|
16410
|
+
/** The video's own width or height changed. Read `videoWidth` and `videoHeight`. */
|
|
16411
|
+
resize: HelixVideoElementEvent;
|
|
16412
|
+
/** A move to a new position finished. */
|
|
16413
|
+
seeked: HelixVideoElementEvent;
|
|
16414
|
+
/** A move to a new position started. */
|
|
16415
|
+
seeking: HelixVideoElementEvent;
|
|
16416
|
+
/** The browser is trying to load more data and none is arriving. */
|
|
16417
|
+
stalled: HelixVideoElementEvent;
|
|
16418
|
+
/** Loading paused on purpose, as when `preload` asks for no more. */
|
|
16419
|
+
suspend: HelixVideoElementEvent;
|
|
16420
|
+
/** The position changed. Read `currentTime`. */
|
|
16421
|
+
timeupdate: HelixVideoElementEvent;
|
|
16422
|
+
/** The volume or the mute changed. Read `volume` and `muted`. */
|
|
16423
|
+
volumechange: HelixVideoElementEvent;
|
|
16424
|
+
/** Playback stopped to wait for more data. */
|
|
16425
|
+
waiting: HelixVideoElementEvent;
|
|
14616
16426
|
};
|
|
14617
16427
|
|
|
16428
|
+
/** `HelixVirtualList` component event */
|
|
16429
|
+
export type HelixVirtualListElementEvent<E = Event> = TypedEvent<
|
|
16430
|
+
HelixVirtualList,
|
|
16431
|
+
E
|
|
16432
|
+
>;
|
|
16433
|
+
/** `helix-load-more` event type */
|
|
16434
|
+
export type HelixVirtualListHelixLoadMoreElementEvent =
|
|
16435
|
+
HelixVirtualListElementEvent<HelixLoadMoreEvent>;
|
|
16436
|
+
/** `helix-range-change` event type */
|
|
16437
|
+
export type HelixVirtualListHelixRangeChangeElementEvent =
|
|
16438
|
+
HelixVirtualListElementEvent<HelixRangeChangeEvent>;
|
|
16439
|
+
|
|
14618
16440
|
export type HelixVirtualListVueProps = {
|
|
14619
16441
|
/** The height of one row, in pixels, used to find the row at a scroll offset.
|
|
14620
16442
|
|
|
14621
16443
|
An estimate rather than a measurement while `measured` is off, which is
|
|
14622
16444
|
right whenever the rows really are one height and is the cheaper of the two. */
|
|
14623
16445
|
estimate?: (HelixVirtualList["estimate"]) | undefined;
|
|
14624
|
-
/** The id of the script element that holds the
|
|
16446
|
+
/** The id of the script element that holds the items as JSON. `items` wins
|
|
16447
|
+
where both are set. */
|
|
14625
16448
|
for?: (HelixVirtualList["for"]) | undefined;
|
|
14626
16449
|
/** The list's name, read by screen readers, because only some of its rows
|
|
14627
16450
|
are rendered at a time.
|
|
@@ -14638,9 +16461,27 @@ disagree with itself; measuring is what a set of genuinely different
|
|
|
14638
16461
|
heights needs and costs a read of each row as it renders. A list of
|
|
14639
16462
|
one-line rows should leave this alone. */
|
|
14640
16463
|
measured?: (HelixVirtualList["measured"]) | undefined;
|
|
16464
|
+
/** The items, as an array. Set it as a property.
|
|
16465
|
+
|
|
16466
|
+
Each item is drawn by `renderItem`, or into the row `<template>` by its
|
|
16467
|
+
fields. A new array draws the new rows, so replace the array to change it.
|
|
16468
|
+
Left unset, the list reads the script that `for` names. */
|
|
16469
|
+
items?: (HelixVirtualList["items"]) | undefined;
|
|
16470
|
+
/** Draws one item into its row, given the item and its index. Set it as a
|
|
16471
|
+
property.
|
|
16472
|
+
|
|
16473
|
+
It returns what Lit renders: a template from `html`, a string, or a DOM
|
|
16474
|
+
node. The list wraps each result in a `<div>` that carries the row's role
|
|
16475
|
+
and place in the set. Where it is unset, the row `<template>` is used. */
|
|
16476
|
+
renderItem?: (HelixVirtualList["renderItem"]) | undefined;
|
|
14641
16477
|
};
|
|
14642
16478
|
|
|
14643
|
-
export type HelixVirtualListVueEvents = {
|
|
16479
|
+
export type HelixVirtualListVueEvents = {
|
|
16480
|
+
/** Fired when a reader comes within one screen of the last item, once for each length of the set. */
|
|
16481
|
+
"helix-load-more": HelixVirtualListHelixLoadMoreElementEvent;
|
|
16482
|
+
/** Fired when the items on screen change, with the new `first` and `last`, which `range` also holds. */
|
|
16483
|
+
"helix-range-change": HelixVirtualListHelixRangeChangeElementEvent;
|
|
16484
|
+
};
|
|
14644
16485
|
|
|
14645
16486
|
export type CustomCssProperties = {
|
|
14646
16487
|
/** The padding of the trigger and the content. */
|
|
@@ -14683,6 +16524,14 @@ export type CustomCssProperties = {
|
|
|
14683
16524
|
"--area-chart-width"?: (string) | undefined;
|
|
14684
16525
|
/** Thickness of a band's top edge. Area Chart, Line Chart, and Bar Chart's `lines` all read this one property. `--area-chart-width` overrides it here. */
|
|
14685
16526
|
"--chart-stroke"?: (string) | undefined;
|
|
16527
|
+
/** The bright stop of the ramp. Defaults to `--helix-color-primary`. */
|
|
16528
|
+
"--aura-glow"?: (string) | undefined;
|
|
16529
|
+
/** The page the field fades into. Defaults to `--helix-color-background`. */
|
|
16530
|
+
"--aura-ground"?: (string) | undefined;
|
|
16531
|
+
/** The faint stop between the ground and the glow. Defaults to `--helix-color-primary-subtle`. */
|
|
16532
|
+
"--aura-haze"?: (string) | undefined;
|
|
16533
|
+
/** The hottest stop, at the center of a shape. Defaults to `--helix-color-primary-active` on a light page and `--helix-color-foreground` on a dark one. */
|
|
16534
|
+
"--aura-peak"?: (string) | undefined;
|
|
14686
16535
|
/** How far each avatar sits over the one before it. */
|
|
14687
16536
|
"--avatar-group-overlap"?: (string) | undefined;
|
|
14688
16537
|
/** Color of the ring that separates one avatar from the next. */
|
|
@@ -14695,6 +16544,8 @@ export type CustomCssProperties = {
|
|
|
14695
16544
|
"--badge-background-color"?: (string) | undefined;
|
|
14696
16545
|
/** The color of the count, to pair with a fill set through `--badge-background-color`. */
|
|
14697
16546
|
"--badge-color"?: (string) | undefined;
|
|
16547
|
+
/** The space between the content and the count under `placement="inline"`. */
|
|
16548
|
+
"--badge-gap"?: (string) | undefined;
|
|
14698
16549
|
/** Pulls the mark in from the corner, along both axes. */
|
|
14699
16550
|
"--badge-offset"?: (string) | undefined;
|
|
14700
16551
|
/** The color of the ring between the indicator and what is behind it. */
|
|
@@ -14721,16 +16572,36 @@ export type CustomCssProperties = {
|
|
|
14721
16572
|
"--bar-chart-secondary"?: (string) | undefined;
|
|
14722
16573
|
/** The gradient for a bar, named per bar so the styled tier can use it as the `fill`. It is always drawn, and used only when `wash="gradient"` is set. */
|
|
14723
16574
|
"--chart-bar-wash"?: (string) | undefined;
|
|
16575
|
+
/** The color of the attribution. */
|
|
16576
|
+
"--blockquote-attribution-color"?: (string) | undefined;
|
|
16577
|
+
/** The font size of the attribution. */
|
|
16578
|
+
"--blockquote-attribution-size"?: (string) | undefined;
|
|
16579
|
+
/** The color of the quoted passage. */
|
|
16580
|
+
"--blockquote-color"?: (string) | undefined;
|
|
16581
|
+
/** The typeface of the quoted passage, the display face by default. */
|
|
16582
|
+
"--blockquote-font-family"?: (string) | undefined;
|
|
16583
|
+
/** The space between the passage and its attribution. */
|
|
16584
|
+
"--blockquote-gap"?: (string) | undefined;
|
|
14724
16585
|
/** The font size of the quoted passage. */
|
|
14725
16586
|
"--blockquote-size"?: (string) | undefined;
|
|
14726
16587
|
/** Inline padding of a control slotted into a crumb, matching the steps either side of it. */
|
|
14727
16588
|
"--breadcrumbs-control-padding-inline"?: (string) | undefined;
|
|
14728
16589
|
/** How tall a control slotted into a crumb is. */
|
|
14729
16590
|
"--breadcrumbs-control-size"?: (string) | undefined;
|
|
16591
|
+
/** Text color of the current page's crumb. */
|
|
16592
|
+
"--breadcrumbs-current-color"?: (string) | undefined;
|
|
16593
|
+
/** Weight of every crumb's text. */
|
|
16594
|
+
"--breadcrumbs-font-weight"?: (string) | undefined;
|
|
14730
16595
|
/** Fill behind a step under the pointer. */
|
|
14731
16596
|
"--breadcrumbs-hover-color"?: (string) | undefined;
|
|
16597
|
+
/** Text color of a crumb that is not the current page. A link you slot inherits it unless your own styles set a color. */
|
|
16598
|
+
"--breadcrumbs-link-color"?: (string) | undefined;
|
|
16599
|
+
/** Corner radius of the fill behind a step under the pointer. */
|
|
16600
|
+
"--breadcrumbs-radius"?: (string) | undefined;
|
|
14732
16601
|
/** Color of the chevron. */
|
|
14733
16602
|
"--breadcrumbs-separator-color"?: (string) | undefined;
|
|
16603
|
+
/** Size of the trail's text. */
|
|
16604
|
+
"--breadcrumbs-font-size"?: (string) | undefined;
|
|
14734
16605
|
/** Space between items and separators. */
|
|
14735
16606
|
"--breadcrumbs-gap"?: (string) | undefined;
|
|
14736
16607
|
/** Space between the buttons, when `spaced`. */
|
|
@@ -14739,6 +16610,8 @@ export type CustomCssProperties = {
|
|
|
14739
16610
|
"--button-background-color"?: (string) | undefined;
|
|
14740
16611
|
/** Fill behind the button under the pointer. Without it, `--button-background-color` also applies on hover. */
|
|
14741
16612
|
"--button-background-color-hover"?: (string) | undefined;
|
|
16613
|
+
/** Edge color of an outlined button. The other emphases draw no edge. */
|
|
16614
|
+
"--button-border-color"?: (string) | undefined;
|
|
14742
16615
|
/** Label and icon color. */
|
|
14743
16616
|
"--button-foreground-color"?: (string) | undefined;
|
|
14744
16617
|
/** Space between the label and the content on either side of it. */
|
|
@@ -14763,8 +16636,20 @@ export type CustomCssProperties = {
|
|
|
14763
16636
|
"--button-radius-start-start"?: (string) | undefined;
|
|
14764
16637
|
/** Height of the control, for a row height outside the density steps. */
|
|
14765
16638
|
"--button-size"?: (string) | undefined;
|
|
16639
|
+
/** Size of the ring a pending button turns. Defaults to the size of its icons. */
|
|
16640
|
+
"--button-spinner-size"?: (string) | undefined;
|
|
16641
|
+
/** The color of the bar, the mark and the tint, in place of the tone's. */
|
|
16642
|
+
"--callout-accent-color"?: (string) | undefined;
|
|
14766
16643
|
/** The fill behind the callout. */
|
|
14767
16644
|
"--callout-background-color"?: (string) | undefined;
|
|
16645
|
+
/** The thickness of the bar on the inline start edge. */
|
|
16646
|
+
"--callout-bar-thickness"?: (string) | undefined;
|
|
16647
|
+
/** The size of the callout's text. */
|
|
16648
|
+
"--callout-font-size"?: (string) | undefined;
|
|
16649
|
+
/** The space between the mark and the content. */
|
|
16650
|
+
"--callout-gap"?: (string) | undefined;
|
|
16651
|
+
/** The inset around the content, to which the bar's width is added at the start. */
|
|
16652
|
+
"--callout-padding"?: (string) | undefined;
|
|
14768
16653
|
/** The corner radius of the callout. */
|
|
14769
16654
|
"--callout-radius"?: (string) | undefined;
|
|
14770
16655
|
/** The size of the corner handles that resize a selected card. */
|
|
@@ -14811,6 +16696,8 @@ export type CustomCssProperties = {
|
|
|
14811
16696
|
"--card-border-color"?: (string) | undefined;
|
|
14812
16697
|
/** Width of the surface's edge. Follows `--helix-border-surface`, which is a hairline unless your theme sets another width. The edge is what sets the surface apart. */
|
|
14813
16698
|
"--card-border-width"?: (string) | undefined;
|
|
16699
|
+
/** Space between the regions, and between a header or footer and its actions. */
|
|
16700
|
+
"--card-gap"?: (string) | undefined;
|
|
14814
16701
|
/** Height of the media region. Defaults to `auto`, which follows an image's own proportions. A chart has no height of its own, so set one here for a chart. */
|
|
14815
16702
|
"--card-media-block-size"?: (string) | undefined;
|
|
14816
16703
|
/** Width of the media column when horizontal. */
|
|
@@ -14889,8 +16776,12 @@ export type CustomCssProperties = {
|
|
|
14889
16776
|
"--code-block-background-color"?: (string) | undefined;
|
|
14890
16777
|
/** The line around the block and its header. */
|
|
14891
16778
|
"--code-block-border-color"?: (string) | undefined;
|
|
16779
|
+
/** The color of the line numbers. */
|
|
16780
|
+
"--code-block-gutter-color"?: (string) | undefined;
|
|
14892
16781
|
/** The background behind the name. The default is `surface-raised`. */
|
|
14893
16782
|
"--code-block-header-background-color"?: (string) | undefined;
|
|
16783
|
+
/** The tallest the code grows before it scrolls. The default is no limit. */
|
|
16784
|
+
"--code-block-max-block-size"?: (string) | undefined;
|
|
14894
16785
|
/** The corner radius of the header's top and the block's bottom, which form one shape. */
|
|
14895
16786
|
"--code-block-radius"?: (string) | undefined;
|
|
14896
16787
|
/** Fill behind the fragment. Defaults to the foreground color at 6%, which looks the same on a light page and a dark one. */
|
|
@@ -14917,6 +16808,10 @@ export type CustomCssProperties = {
|
|
|
14917
16808
|
"--color-input-swatch-size"?: (string) | undefined;
|
|
14918
16809
|
/** The chosen color, painted over the checkerboard that shows transparency. */
|
|
14919
16810
|
"--color-input-swatch"?: (string) | undefined;
|
|
16811
|
+
/** The color of the names above the channel number fields, in `channel-fields`. */
|
|
16812
|
+
"--color-picker-field-label-color"?: (string) | undefined;
|
|
16813
|
+
/** The space between the channel number fields, in `channel-fields`. */
|
|
16814
|
+
"--color-picker-fields-gap"?: (string) | undefined;
|
|
14920
16815
|
/** The corner radius of the square. */
|
|
14921
16816
|
"--color-picker-grid-radius"?: (string) | undefined;
|
|
14922
16817
|
/** The aspect ratio of the square. */
|
|
@@ -14963,6 +16858,8 @@ export type CustomCssProperties = {
|
|
|
14963
16858
|
"--icon-button-shadow"?: (string) | undefined;
|
|
14964
16859
|
/** Edge length of the control. */
|
|
14965
16860
|
"--icon-button-size"?: (string) | undefined;
|
|
16861
|
+
/** Size of the ring a pending button turns. */
|
|
16862
|
+
"--icon-button-spinner-size"?: (string) | undefined;
|
|
14966
16863
|
/** The height of the scrolling box while `windowed`. Ignored otherwise, where the grid is as tall as its rows. It is a fixed height, so a short result keeps the full box with space below it. */
|
|
14967
16864
|
"--data-table-block-size"?: (string) | undefined;
|
|
14968
16865
|
/** The text color of a cell. */
|
|
@@ -14973,6 +16870,8 @@ export type CustomCssProperties = {
|
|
|
14973
16870
|
"--data-table-heading-background-color"?: (string) | undefined;
|
|
14974
16871
|
/** The text color of a heading. */
|
|
14975
16872
|
"--data-table-heading-color"?: (string) | undefined;
|
|
16873
|
+
/** How far a tree grid's row header steps in for each level. It defaults to the width of the mark that opens a row. */
|
|
16874
|
+
"--data-table-indent"?: (string) | undefined;
|
|
14976
16875
|
/** The space above and below a cell's content. */
|
|
14977
16876
|
"--data-table-padding-block"?: (string) | undefined;
|
|
14978
16877
|
/** The space on either side of a cell's content. */
|
|
@@ -14983,6 +16882,8 @@ export type CustomCssProperties = {
|
|
|
14983
16882
|
"--data-table-text"?: (string) | undefined;
|
|
14984
16883
|
/** The alignment of the cell's column: `start`, `center`, or `end`. Unset when the column sets none. The component writes it on each cell it draws, and the stylesheet reads it. `Table` sets `--table-cell-align` for the same purpose. */
|
|
14985
16884
|
"--data-table-cell-align"?: (string) | undefined;
|
|
16885
|
+
/** How deep a row is in a tree grid, from 1. The component writes it on each row header cell, and the stylesheet indents by it. */
|
|
16886
|
+
"--data-table-level"?: (string) | undefined;
|
|
14986
16887
|
/** The column track list, worked out from the columns. The component writes it inline on the element that reads it, so setting it has no effect. Set a column's `width` to change it. */
|
|
14987
16888
|
"--data-table-template"?: (string) | undefined;
|
|
14988
16889
|
/** The fill behind the field. */
|
|
@@ -14991,12 +16892,22 @@ export type CustomCssProperties = {
|
|
|
14991
16892
|
"--date-input-border-color"?: (string) | undefined;
|
|
14992
16893
|
/** The width of the panel's border. It follows `--helix-border-floating`, which is `0`, so the panel stands out by its shadow unless a theme sets a border. */
|
|
14993
16894
|
"--date-input-border-width"?: (string) | undefined;
|
|
16895
|
+
/** The fill behind the segment with focus, in `segmented`. It follows `--helix-color-primary`. */
|
|
16896
|
+
"--date-input-segment-focus-background-color"?: (string) | undefined;
|
|
16897
|
+
/** The text of the segment with focus, in `segmented`. */
|
|
16898
|
+
"--date-input-segment-focus-color"?: (string) | undefined;
|
|
16899
|
+
/** The text the locale writes between two segments, in `segmented`. */
|
|
16900
|
+
"--date-input-segment-literal-color"?: (string) | undefined;
|
|
16901
|
+
/** The dashes of a segment with nothing in it, in `segmented`. It matches the text field's placeholder. */
|
|
16902
|
+
"--date-input-segment-placeholder-color"?: (string) | undefined;
|
|
14994
16903
|
/** The shadow under the panel. It follows `--helix-shadow-floating`. The panel can sit over any content, so it has a shadow by default. */
|
|
14995
16904
|
"--date-input-shadow"?: (string) | undefined;
|
|
14996
16905
|
/** Months per row. Two unless there is only one. */
|
|
14997
16906
|
"--date-picker-columns"?: (string) | undefined;
|
|
14998
16907
|
/** Width and height of a day. */
|
|
14999
16908
|
"--date-picker-day-size"?: (string) | undefined;
|
|
16909
|
+
/** Height of a month or a year in the months and years views, where `max-view` is set. */
|
|
16910
|
+
"--date-picker-period-size"?: (string) | undefined;
|
|
15000
16911
|
/** Band behind the days in a range. */
|
|
15001
16912
|
"--date-picker-range-color"?: (string) | undefined;
|
|
15002
16913
|
/** Height of a week row. */
|
|
@@ -15027,6 +16938,12 @@ export type CustomCssProperties = {
|
|
|
15027
16938
|
"--dialog-shadow"?: (string) | undefined;
|
|
15028
16939
|
/** The color of the line. */
|
|
15029
16940
|
"--divider-color"?: (string) | undefined;
|
|
16941
|
+
/** The color of the content set into the line. */
|
|
16942
|
+
"--divider-content-color"?: (string) | undefined;
|
|
16943
|
+
/** The space either side of the content set into the line. */
|
|
16944
|
+
"--divider-content-gap"?: (string) | undefined;
|
|
16945
|
+
/** The length of line before the content under `content-placement="start"`, or after it under `end`. */
|
|
16946
|
+
"--divider-content-offset"?: (string) | undefined;
|
|
15030
16947
|
/** The length of a vertical line. A horizontal line takes the divider's width. */
|
|
15031
16948
|
"--divider-length"?: (string) | undefined;
|
|
15032
16949
|
/** The space removed from both ends of the line. */
|
|
@@ -15065,12 +16982,34 @@ export type CustomCssProperties = {
|
|
|
15065
16982
|
"--drawer-shadow"?: (string) | undefined;
|
|
15066
16983
|
/** Width or height of the panel. */
|
|
15067
16984
|
"--drawer-size"?: (string) | undefined;
|
|
16985
|
+
/** How far a swipe, or a snap point, has moved the panel across, in pixels, toward the right. */
|
|
16986
|
+
"--drawer-swipe-x"?: (string) | undefined;
|
|
16987
|
+
/** How far a swipe, or a snap point, has moved the panel down, in pixels. */
|
|
16988
|
+
"--drawer-swipe-y"?: (string) | undefined;
|
|
15068
16989
|
/** Fill when a row is under the pointer. */
|
|
15069
16990
|
"--drilldown-item-hover-color"?: (string) | undefined;
|
|
15070
16991
|
/** Fill behind the pages. */
|
|
15071
16992
|
"--drilldown-background-color"?: (string) | undefined;
|
|
15072
16993
|
/** Width of the region. */
|
|
15073
16994
|
"--drilldown-inline-size"?: (string) | undefined;
|
|
16995
|
+
/** Space added above the actions. */
|
|
16996
|
+
"--empty-actions-gap"?: (string) | undefined;
|
|
16997
|
+
/** Space between the icon, the heading, the message and the actions. */
|
|
16998
|
+
"--empty-gap"?: (string) | undefined;
|
|
16999
|
+
/** Color of the heading. */
|
|
17000
|
+
"--empty-heading-color"?: (string) | undefined;
|
|
17001
|
+
/** Size of the heading. */
|
|
17002
|
+
"--empty-heading-size"?: (string) | undefined;
|
|
17003
|
+
/** Color of the icon. */
|
|
17004
|
+
"--empty-icon-color"?: (string) | undefined;
|
|
17005
|
+
/** Size of the icon. */
|
|
17006
|
+
"--empty-icon-size"?: (string) | undefined;
|
|
17007
|
+
/** Color of the message. */
|
|
17008
|
+
"--empty-message-color"?: (string) | undefined;
|
|
17009
|
+
/** Widest the message runs before it wraps. */
|
|
17010
|
+
"--empty-message-measure"?: (string) | undefined;
|
|
17011
|
+
/** Size of the message. */
|
|
17012
|
+
"--empty-message-size"?: (string) | undefined;
|
|
15074
17013
|
/** Space around the whole block. */
|
|
15075
17014
|
"--empty-padding"?: (string) | undefined;
|
|
15076
17015
|
/** Fill behind the field. */
|
|
@@ -15103,6 +17042,10 @@ export type CustomCssProperties = {
|
|
|
15103
17042
|
"--filter-input-shadow"?: (string) | undefined;
|
|
15104
17043
|
/** The height of the empty field. The field grows from this height. */
|
|
15105
17044
|
"--filter-input-size"?: (string) | undefined;
|
|
17045
|
+
/** The narrowest the growing item of a `flank` layout gets before the two stack, as a share of the row. Defaults to `50%`. */
|
|
17046
|
+
"--flex-flank-min"?: (string) | undefined;
|
|
17047
|
+
/** The width of the fixed item of a `flank` layout. Defaults to its own width. */
|
|
17048
|
+
"--flex-flank-size"?: (string) | undefined;
|
|
15106
17049
|
/** The color behind the drawing while it loads. */
|
|
15107
17050
|
"--graph-background-color"?: (string) | undefined;
|
|
15108
17051
|
/** The frame's height, as a length. */
|
|
@@ -15111,8 +17054,12 @@ export type CustomCssProperties = {
|
|
|
15111
17054
|
"--graph-border-color"?: (string) | undefined;
|
|
15112
17055
|
/** The list's width beside the drawing, or over it when opened with `no-panel`. */
|
|
15113
17056
|
"--graph-panel-size"?: (string) | undefined;
|
|
17057
|
+
/** The named areas, as `grid-template-areas` takes them, such as `"rail main"`. A child takes its area with `grid-area`. */
|
|
17058
|
+
"--grid-areas"?: (string) | undefined;
|
|
15114
17059
|
/** An explicit track list. It overrides `min` and `columns`. Use it for tracks of unequal widths, which neither attribute can set. */
|
|
15115
17060
|
"--grid-columns"?: (string) | undefined;
|
|
17061
|
+
/** An explicit row track list, such as `auto minmax(0, 1fr) auto`. Rows are sized by their content when it is unset. */
|
|
17062
|
+
"--grid-rows"?: (string) | undefined;
|
|
15116
17063
|
/** How tall a cell is. One row of tall, narrow cells looks like a status page. */
|
|
15117
17064
|
"--heatmap-cell-height"?: (string) | undefined;
|
|
15118
17065
|
/** How wide a cell is. The strip fits as many as the container allows. */
|
|
@@ -15165,6 +17112,12 @@ export type CustomCssProperties = {
|
|
|
15165
17112
|
"--image-radius"?: (string) | undefined;
|
|
15166
17113
|
/** Fill behind the text. */
|
|
15167
17114
|
"--input-background-color"?: (string) | undefined;
|
|
17115
|
+
/** Edge of the field at rest. Hover, focus and an error still draw their own. */
|
|
17116
|
+
"--input-border-color"?: (string) | undefined;
|
|
17117
|
+
/** Space between the edge of the field and what is inside it. */
|
|
17118
|
+
"--input-padding-inline"?: (string) | undefined;
|
|
17119
|
+
/** Corner radius of the field. */
|
|
17120
|
+
"--input-radius"?: (string) | undefined;
|
|
15168
17121
|
/** Height of the field. */
|
|
15169
17122
|
"--input-size"?: (string) | undefined;
|
|
15170
17123
|
/** The fill of the key. */
|
|
@@ -15173,8 +17126,14 @@ export type CustomCssProperties = {
|
|
|
15173
17126
|
"--kbd-border-color"?: (string) | undefined;
|
|
15174
17127
|
/** The direction the entries run: `row`, which wraps, or `column`. */
|
|
15175
17128
|
"--legend-direction"?: (string) | undefined;
|
|
17129
|
+
/** The space between a swatch and its name. */
|
|
17130
|
+
"--legend-entry-gap"?: (string) | undefined;
|
|
15176
17131
|
/** The space between entries. */
|
|
15177
17132
|
"--legend-gap"?: (string) | undefined;
|
|
17133
|
+
/** How strongly a hidden series' entry is drawn, under `toggles`. */
|
|
17134
|
+
"--legend-hidden-opacity"?: (string) | undefined;
|
|
17135
|
+
/** The corner of the color swatch. */
|
|
17136
|
+
"--legend-swatch-radius"?: (string) | undefined;
|
|
15178
17137
|
/** The size of the color swatch. */
|
|
15179
17138
|
"--legend-swatch-size"?: (string) | undefined;
|
|
15180
17139
|
/** The width of the edge an `outlined` or `subtle` swatch is drawn with. */
|
|
@@ -15183,6 +17142,8 @@ export type CustomCssProperties = {
|
|
|
15183
17142
|
"--lightbox-item-description-color"?: (string) | undefined;
|
|
15184
17143
|
/** Space between the content and the line under it. */
|
|
15185
17144
|
"--lightbox-item-gap"?: (string) | undefined;
|
|
17145
|
+
/** Size of the previous, next and close controls drawn with `controls`. */
|
|
17146
|
+
"--lightbox-control-size"?: (string) | undefined;
|
|
15186
17147
|
/** Color of the controls and text drawn over the content. */
|
|
15187
17148
|
"--lightbox-foreground"?: (string) | undefined;
|
|
15188
17149
|
/** Space between the header or footer and the content. */
|
|
@@ -15211,12 +17172,18 @@ export type CustomCssProperties = {
|
|
|
15211
17172
|
"--chart-terminus-x"?: (string) | undefined;
|
|
15212
17173
|
/** Where a series' last reading sits vertically, as a percentage. Written by the component. */
|
|
15213
17174
|
"--chart-terminus-y"?: (string) | undefined;
|
|
17175
|
+
/** The fill behind a row that is `current`. */
|
|
17176
|
+
"--list-item-current-background-color"?: (string) | undefined;
|
|
17177
|
+
/** The opacity of a `disabled` row. */
|
|
17178
|
+
"--list-item-disabled-opacity"?: (string) | undefined;
|
|
15214
17179
|
/** The padding inside the row. */
|
|
15215
17180
|
"--list-item-padding"?: (string) | undefined;
|
|
15216
17181
|
/** What the rail cell shows. The list sets it. */
|
|
15217
17182
|
"--list-item-rail-content"?: (string) | undefined;
|
|
15218
17183
|
/** Whether the row has a rail. The list sets it. */
|
|
15219
17184
|
"--list-item-rail-display"?: (string) | undefined;
|
|
17185
|
+
/** The fill behind a selected row, in a list that selects. */
|
|
17186
|
+
"--list-item-selected-background-color"?: (string) | undefined;
|
|
15220
17187
|
/** The font weight of a term in a description list. */
|
|
15221
17188
|
"--list-item-term-weight"?: (string) | undefined;
|
|
15222
17189
|
/** The space between rows. */
|
|
@@ -15227,6 +17194,10 @@ export type CustomCssProperties = {
|
|
|
15227
17194
|
"--list-rail-inline-size"?: (string) | undefined;
|
|
15228
17195
|
/** The counter style of the rail's numbers. Takes any `list-style-type`. */
|
|
15229
17196
|
"--list-rail-style"?: (string) | undefined;
|
|
17197
|
+
/** The number of the first row, written where `start` or `reversed` moves it. */
|
|
17198
|
+
"--list-first"?: (string) | undefined;
|
|
17199
|
+
/** What each row adds to the number before it: `1`, or `-1` where `reversed`. */
|
|
17200
|
+
"--list-step"?: (string) | undefined;
|
|
15230
17201
|
/** The panel's fill. Set it to `transparent` when the list is already inside a panel. */
|
|
15231
17202
|
"--listbox-background-color"?: (string) | undefined;
|
|
15232
17203
|
/** The panel's border, as a shorthand. Set it to `none` when the list is already inside a panel. */
|
|
@@ -15307,6 +17278,8 @@ export type CustomCssProperties = {
|
|
|
15307
17278
|
"--megamenu-size"?: (string) | undefined;
|
|
15308
17279
|
/** Where the panel starts, measured from the bar above it. */
|
|
15309
17280
|
"--megamenu-top"?: (string) | undefined;
|
|
17281
|
+
/** Color of the shortcut and the words in the `end` slot. */
|
|
17282
|
+
"--menu-item-detail-color"?: (string) | undefined;
|
|
15310
17283
|
/** Width of the trailing column, including the gap before it, which holds a check mark or a submenu caret. */
|
|
15311
17284
|
"--menu-item-end"?: (string) | undefined;
|
|
15312
17285
|
/** Fill under the pointer. */
|
|
@@ -15325,8 +17298,16 @@ export type CustomCssProperties = {
|
|
|
15325
17298
|
"--menu-min-inline-size"?: (string) | undefined;
|
|
15326
17299
|
/** Shadow under the panel. Defaults to `--helix-shadow-floating`, so the panel keeps a shadow over any content below it. */
|
|
15327
17300
|
"--menu-shadow"?: (string) | undefined;
|
|
17301
|
+
/** Color of the heading. */
|
|
17302
|
+
"--menu-section-heading-color"?: (string) | undefined;
|
|
15328
17303
|
/** The fill color. Overrides the band's tone. */
|
|
15329
17304
|
"--meter-color"?: (string) | undefined;
|
|
17305
|
+
/** The color of a slotted label. */
|
|
17306
|
+
"--meter-label-color"?: (string) | undefined;
|
|
17307
|
+
/** The space between a slotted label and the meter. */
|
|
17308
|
+
"--meter-label-gap"?: (string) | undefined;
|
|
17309
|
+
/** The type size of a slotted label. */
|
|
17310
|
+
"--meter-label-size"?: (string) | undefined;
|
|
15330
17311
|
/** The width and height of the drawing in `ring` and `arc`. */
|
|
15331
17312
|
"--meter-ring-size"?: (string) | undefined;
|
|
15332
17313
|
/** The thickness of the stroke in `ring` and `arc`. */
|
|
@@ -15345,10 +17326,20 @@ export type CustomCssProperties = {
|
|
|
15345
17326
|
"--meter-fraction"?: (string) | undefined;
|
|
15346
17327
|
/** How much of the circle the arc covers, as a path length. */
|
|
15347
17328
|
"--meter-sweep"?: (string) | undefined;
|
|
17329
|
+
/** Height of the bar in a row. Each destination fills it. */
|
|
17330
|
+
"--navigation-block-size"?: (string) | undefined;
|
|
15348
17331
|
/** Space between destinations. */
|
|
15349
17332
|
"--navigation-gap"?: (string) | undefined;
|
|
15350
17333
|
/** Fill of the marker on the current destination. */
|
|
15351
17334
|
"--navigation-indicator-color"?: (string) | undefined;
|
|
17335
|
+
/** Corner radius of the marker. */
|
|
17336
|
+
"--navigation-indicator-radius"?: (string) | undefined;
|
|
17337
|
+
/** Shadow under the marker, for a marker that sits raised on the bar. */
|
|
17338
|
+
"--navigation-indicator-shadow"?: (string) | undefined;
|
|
17339
|
+
/** Text color of a destination that is not the current one. Read by the page's stylesheet, which styles the links you slot. */
|
|
17340
|
+
"--navigation-item-color"?: (string) | undefined;
|
|
17341
|
+
/** Text color of the current destination, the one marked `aria-current="page"`. */
|
|
17342
|
+
"--navigation-item-current-color"?: (string) | undefined;
|
|
15352
17343
|
/** Text color in a read item. */
|
|
15353
17344
|
"--notifications-color"?: (string) | undefined;
|
|
15354
17345
|
/** Color of the dismiss control. It is `danger`, because dismissing an item removes it for good. */
|
|
@@ -15385,6 +17376,12 @@ export type CustomCssProperties = {
|
|
|
15385
17376
|
"--notifications-media-column"?: (string) | undefined;
|
|
15386
17377
|
/** The fill behind the number. */
|
|
15387
17378
|
"--number-input-background-color"?: (string) | undefined;
|
|
17379
|
+
/** Edge of the field at rest. Hover, focus and an error still draw their own. */
|
|
17380
|
+
"--number-input-border-color"?: (string) | undefined;
|
|
17381
|
+
/** Corner radius of the field. */
|
|
17382
|
+
"--number-input-radius"?: (string) | undefined;
|
|
17383
|
+
/** Height of the field. */
|
|
17384
|
+
"--number-input-size"?: (string) | undefined;
|
|
15388
17385
|
/** The background of the tree. */
|
|
15389
17386
|
"--object-inspector-background-color"?: (string) | undefined;
|
|
15390
17387
|
/** The height of the scrolling box when `windowed` is set. */
|
|
@@ -15393,6 +17390,8 @@ export type CustomCssProperties = {
|
|
|
15393
17390
|
"--object-inspector-border-color"?: (string) | undefined;
|
|
15394
17391
|
/** The background of the bar that holds the label. */
|
|
15395
17392
|
"--object-inspector-header-background-color"?: (string) | undefined;
|
|
17393
|
+
/** The background of an entry a filter matched. */
|
|
17394
|
+
"--object-inspector-match-background-color"?: (string) | undefined;
|
|
15396
17395
|
/** The corner radius of the tree. */
|
|
15397
17396
|
"--object-inspector-radius"?: (string) | undefined;
|
|
15398
17397
|
/** How deep a row is, from 0 at the root, for indenting it. */
|
|
@@ -15423,8 +17422,18 @@ export type CustomCssProperties = {
|
|
|
15423
17422
|
"--pagination-hover-color"?: (string) | undefined;
|
|
15424
17423
|
/** The box every control in the row takes. */
|
|
15425
17424
|
"--pagination-size"?: (string) | undefined;
|
|
17425
|
+
/** Fill behind each box. */
|
|
17426
|
+
"--pin-input-cell-background-color"?: (string) | undefined;
|
|
17427
|
+
/** Edge of each box at rest. Hover, focus and an error still draw their own. */
|
|
17428
|
+
"--pin-input-cell-border-color"?: (string) | undefined;
|
|
17429
|
+
/** Corner radius of each box. */
|
|
17430
|
+
"--pin-input-cell-radius"?: (string) | undefined;
|
|
17431
|
+
/** Width and height of each box. */
|
|
17432
|
+
"--pin-input-cell-size"?: (string) | undefined;
|
|
15426
17433
|
/** The space between one box and the next. */
|
|
15427
17434
|
"--pin-input-gap"?: (string) | undefined;
|
|
17435
|
+
/** Size of the point drawn with `arrow`. Tooltip's point is the same size. */
|
|
17436
|
+
"--popover-arrow-size"?: (string) | undefined;
|
|
15428
17437
|
/** Color of the panel's edge. */
|
|
15429
17438
|
"--popover-border-color"?: (string) | undefined;
|
|
15430
17439
|
/** Width of the panel's edge. Defaults to `--helix-border-floating`, which is `0`, so the panel stands out by its shadow unless your theme sets a width. */
|
|
@@ -15439,6 +17448,12 @@ export type CustomCssProperties = {
|
|
|
15439
17448
|
"--popover-shadow"?: (string) | undefined;
|
|
15440
17449
|
/** Fill of the part that is done. */
|
|
15441
17450
|
"--progress-color"?: (string) | undefined;
|
|
17451
|
+
/** Color of a slotted label. */
|
|
17452
|
+
"--progress-label-color"?: (string) | undefined;
|
|
17453
|
+
/** Space between a slotted label and the bar. */
|
|
17454
|
+
"--progress-label-gap"?: (string) | undefined;
|
|
17455
|
+
/** Type size of a slotted label. */
|
|
17456
|
+
"--progress-label-size"?: (string) | undefined;
|
|
15442
17457
|
/** Diameter of the ring. */
|
|
15443
17458
|
"--progress-ring-size"?: (string) | undefined;
|
|
15444
17459
|
/** Thickness of the ring's stroke. */
|
|
@@ -15463,6 +17478,8 @@ export type CustomCssProperties = {
|
|
|
15463
17478
|
"--qr-code-size"?: (string) | undefined;
|
|
15464
17479
|
/** Color of the quoted text. */
|
|
15465
17480
|
"--quote-color"?: (string) | undefined;
|
|
17481
|
+
/** The slant of the quoted text, `italic` by default. Set `normal` for a face whose italic is too loud, or `oblique` for one with no italic of its own. */
|
|
17482
|
+
"--quote-font-style"?: (string) | undefined;
|
|
15466
17483
|
/** The space between the choices. */
|
|
15467
17484
|
"--radio-group-gap"?: (string) | undefined;
|
|
15468
17485
|
/** The fill of an unselected circle. */
|
|
@@ -15549,10 +17566,20 @@ export type CustomCssProperties = {
|
|
|
15549
17566
|
"--scroll-area-fade-inline-start"?: (string) | undefined;
|
|
15550
17567
|
/** The scrollbar width, as a `scrollbar-width` keyword. */
|
|
15551
17568
|
"--scroll-area-scrollbar"?: (string) | undefined;
|
|
17569
|
+
/** The thickness of each scrollbar drawn under `scrollbars`, and the size of the corner. */
|
|
17570
|
+
"--scroll-area-scrollbar-size"?: (string) | undefined;
|
|
15552
17571
|
/** The color of the scrollbar's thumb. */
|
|
15553
17572
|
"--scroll-area-thumb-color"?: (string) | undefined;
|
|
17573
|
+
/** The color of a thumb drawn under `scrollbars` while the pointer is over it. */
|
|
17574
|
+
"--scroll-area-thumb-hover-color"?: (string) | undefined;
|
|
17575
|
+
/** The shortest a thumb drawn under `scrollbars` gets, however long the content. */
|
|
17576
|
+
"--scroll-area-thumb-min-size"?: (string) | undefined;
|
|
15554
17577
|
/** The color of the scrollbar's track. */
|
|
15555
17578
|
"--scroll-area-track-color"?: (string) | undefined;
|
|
17579
|
+
/** How far along its axis the content is scrolled, from 0 at the start to 1 at the end. Written on each `scrollbar` part, so its thumb inherits it. Counted from the right on a right-to-left page. */
|
|
17580
|
+
"--scroll-area-scroll-fraction"?: (string) | undefined;
|
|
17581
|
+
/** The share of the track the thumb covers, from 0 to 1, which is how much of the content is in view. Written on each `scrollbar` part. */
|
|
17582
|
+
"--scroll-area-thumb-fraction"?: (string) | undefined;
|
|
15556
17583
|
/** Color of the panel's edge. */
|
|
15557
17584
|
"--select-border-color"?: (string) | undefined;
|
|
15558
17585
|
/** Width of the panel's edge. Defaults to `--helix-border-floating`, which is `0`, so the panel stands out by its shadow unless your theme sets a width. */
|
|
@@ -15563,12 +17590,36 @@ export type CustomCssProperties = {
|
|
|
15563
17590
|
"--select-surface-max-block-size"?: (string) | undefined;
|
|
15564
17591
|
/** The height of the block shape, which is the shape when `shape` is unset. Defaults to the control height. */
|
|
15565
17592
|
"--skeleton-block-size"?: (string) | undefined;
|
|
17593
|
+
/** The placeholder's fill. */
|
|
17594
|
+
"--skeleton-color"?: (string) | undefined;
|
|
17595
|
+
/** How long one sweep or one pulse takes. */
|
|
17596
|
+
"--skeleton-duration"?: (string) | undefined;
|
|
17597
|
+
/** The corner of the block shape. */
|
|
17598
|
+
"--skeleton-radius"?: (string) | undefined;
|
|
17599
|
+
/** The highlight the sweep carries across the fill. */
|
|
17600
|
+
"--skeleton-sheen-color"?: (string) | undefined;
|
|
15566
17601
|
/** The diameter of the circle shape. */
|
|
15567
17602
|
"--skeleton-size"?: (string) | undefined;
|
|
17603
|
+
/** The background of the link while it is shown. */
|
|
17604
|
+
"--skip-link-background-color"?: (string) | undefined;
|
|
15568
17605
|
/** The border color of the link while it is shown. */
|
|
15569
17606
|
"--skip-link-border-color"?: (string) | undefined;
|
|
15570
17607
|
/** The border width of the link while it is shown. Follows `--helix-border-floating`, which is `0`, so the link is set apart by its shadow unless a theme sets a border. */
|
|
15571
17608
|
"--skip-link-border-width"?: (string) | undefined;
|
|
17609
|
+
/** The text color of the link while it is shown. */
|
|
17610
|
+
"--skip-link-color"?: (string) | undefined;
|
|
17611
|
+
/** The size of the link's text. */
|
|
17612
|
+
"--skip-link-font-size"?: (string) | undefined;
|
|
17613
|
+
/** How far the shown link sits from the top of the viewport. */
|
|
17614
|
+
"--skip-link-inset-block"?: (string) | undefined;
|
|
17615
|
+
/** How far the shown link sits from the start edge of the viewport. */
|
|
17616
|
+
"--skip-link-inset-inline"?: (string) | undefined;
|
|
17617
|
+
/** The space above and below the link's text. */
|
|
17618
|
+
"--skip-link-padding-block"?: (string) | undefined;
|
|
17619
|
+
/** The space either side of the link's text. */
|
|
17620
|
+
"--skip-link-padding-inline"?: (string) | undefined;
|
|
17621
|
+
/** The corner radius of the link. */
|
|
17622
|
+
"--skip-link-radius"?: (string) | undefined;
|
|
15572
17623
|
/** The shadow under the link while it is shown. Follows `--helix-shadow-floating`, because the link sits over the corner of the page. */
|
|
15573
17624
|
"--skip-link-shadow"?: (string) | undefined;
|
|
15574
17625
|
/** The color of the filled part of the track, behind the thumb. */
|
|
@@ -15615,10 +17666,22 @@ export type CustomCssProperties = {
|
|
|
15615
17666
|
"--sparkline-inline-size"?: (string) | undefined;
|
|
15616
17667
|
/** Thickness of the line, overriding `weight`. */
|
|
15617
17668
|
"--sparkline-width"?: (string) | undefined;
|
|
17669
|
+
/** Fill of the round icon. */
|
|
17670
|
+
"--speed-dial-item-background-color"?: (string) | undefined;
|
|
17671
|
+
/** Color of the icon. */
|
|
17672
|
+
"--speed-dial-item-color"?: (string) | undefined;
|
|
15618
17673
|
/** Edge length of the icon. */
|
|
15619
17674
|
"--speed-dial-item-size"?: (string) | undefined;
|
|
17675
|
+
/** Fill of the chip holding the action's name. */
|
|
17676
|
+
"--speed-dial-label-background-color"?: (string) | undefined;
|
|
17677
|
+
/** Color of the action's name. */
|
|
17678
|
+
"--speed-dial-label-color"?: (string) | undefined;
|
|
15620
17679
|
/** Space between the actions. */
|
|
15621
17680
|
"--speed-dial-gap"?: (string) | undefined;
|
|
17681
|
+
/** The wait between one action arriving and the next. */
|
|
17682
|
+
"--speed-dial-stagger"?: (string) | undefined;
|
|
17683
|
+
/** How far each action moves as it arrives. */
|
|
17684
|
+
"--speed-dial-travel"?: (string) | undefined;
|
|
15622
17685
|
/** Color of the line between the panes. */
|
|
15623
17686
|
"--splitter-color"?: (string) | undefined;
|
|
15624
17687
|
/** Width of the handle where two dividers cross. */
|
|
@@ -15641,6 +17704,18 @@ export type CustomCssProperties = {
|
|
|
15641
17704
|
"--stat-group-columns"?: (string) | undefined;
|
|
15642
17705
|
/** Space between figures. */
|
|
15643
17706
|
"--stat-group-gap"?: (string) | undefined;
|
|
17707
|
+
/** Space between the label and the value, and between the value and the unit in a row. */
|
|
17708
|
+
"--stat-gap"?: (string) | undefined;
|
|
17709
|
+
/** Color of the label. */
|
|
17710
|
+
"--stat-label-color"?: (string) | undefined;
|
|
17711
|
+
/** Size of the label. */
|
|
17712
|
+
"--stat-label-size"?: (string) | undefined;
|
|
17713
|
+
/** Color of the unit. */
|
|
17714
|
+
"--stat-unit-color"?: (string) | undefined;
|
|
17715
|
+
/** Size of the unit. */
|
|
17716
|
+
"--stat-unit-size"?: (string) | undefined;
|
|
17717
|
+
/** Color of the figure. */
|
|
17718
|
+
"--stat-value-color"?: (string) | undefined;
|
|
15644
17719
|
/** Size of the figure. */
|
|
15645
17720
|
"--stat-value-size"?: (string) | undefined;
|
|
15646
17721
|
/** Color of the mark on a finished step. */
|
|
@@ -15657,6 +17732,8 @@ export type CustomCssProperties = {
|
|
|
15657
17732
|
"--steps-marker-size"?: (string) | undefined;
|
|
15658
17733
|
/** Height of the track. The width follows it. */
|
|
15659
17734
|
"--switch-block-size"?: (string) | undefined;
|
|
17735
|
+
/** Color of the icon on the thumb. Without it, the icon is muted while off and takes the on color while on. */
|
|
17736
|
+
"--switch-icon-color"?: (string) | undefined;
|
|
15660
17737
|
/** Length of the track. Set it to override the length derived from the height. */
|
|
15661
17738
|
"--switch-inline-size"?: (string) | undefined;
|
|
15662
17739
|
/** Fill when the switch is on. */
|
|
@@ -15667,6 +17744,12 @@ export type CustomCssProperties = {
|
|
|
15667
17744
|
"--table-cell-align"?: (string) | undefined;
|
|
15668
17745
|
/** Track list for the columns. It overrides the track list worked out from the columns. */
|
|
15669
17746
|
"--table-columns"?: (string) | undefined;
|
|
17747
|
+
/** The color of the words in the `heading` slot. */
|
|
17748
|
+
"--table-title-color"?: (string) | undefined;
|
|
17749
|
+
/** The space between the `heading` slot and the grid. */
|
|
17750
|
+
"--table-title-gap"?: (string) | undefined;
|
|
17751
|
+
/** The font size of the words in the `heading` slot. */
|
|
17752
|
+
"--table-title-text"?: (string) | undefined;
|
|
15670
17753
|
/** The column track list the table works out from its columns. The component writes it inline on the element that reads it, so setting it has no effect. Set `columns` to change the tracks. */
|
|
15671
17754
|
"--table-template"?: (string) | undefined;
|
|
15672
17755
|
/** The space between the tab row and the panel's content. */
|
|
@@ -15687,22 +17770,52 @@ export type CustomCssProperties = {
|
|
|
15687
17770
|
"--tabs-tab-padding-inline"?: (string) | undefined;
|
|
15688
17771
|
/** The label color of the current tab. */
|
|
15689
17772
|
"--tabs-tab-selected-color"?: (string) | undefined;
|
|
17773
|
+
/** The space between tags, across and between rows. */
|
|
17774
|
+
"--tag-group-gap"?: (string) | undefined;
|
|
15690
17775
|
/** The fill behind the tag. */
|
|
15691
17776
|
"--tag-background-color"?: (string) | undefined;
|
|
15692
17777
|
/** The color of the tag's edge. */
|
|
15693
17778
|
"--tag-border-color"?: (string) | undefined;
|
|
17779
|
+
/** How strongly a `disabled` tag is drawn. */
|
|
17780
|
+
"--tag-disabled-opacity"?: (string) | undefined;
|
|
15694
17781
|
/** The label color. */
|
|
15695
17782
|
"--tag-foreground-color"?: (string) | undefined;
|
|
15696
17783
|
/** The corner radius of the tag. */
|
|
15697
17784
|
"--tag-radius"?: (string) | undefined;
|
|
17785
|
+
/** The typeface. Overrides the ramp's. */
|
|
17786
|
+
"--text-font-family"?: (string) | undefined;
|
|
17787
|
+
/** The size. Overrides the ramp's. */
|
|
17788
|
+
"--text-font-size"?: (string) | undefined;
|
|
17789
|
+
/** The weight. Overrides the ramp's. */
|
|
17790
|
+
"--text-font-weight"?: (string) | undefined;
|
|
17791
|
+
/** The tracking. Overrides the ramp's. */
|
|
17792
|
+
"--text-letter-spacing"?: (string) | undefined;
|
|
17793
|
+
/** The leading. Overrides the ramp's. */
|
|
17794
|
+
"--text-line-height"?: (string) | undefined;
|
|
15698
17795
|
/** Fill behind the text. */
|
|
15699
17796
|
"--textarea-background-color"?: (string) | undefined;
|
|
17797
|
+
/** Edge of the field at rest. Hover, focus and an error still draw their own. */
|
|
17798
|
+
"--textarea-border-color"?: (string) | undefined;
|
|
17799
|
+
/** Space between the edge of the field and the text. */
|
|
17800
|
+
"--textarea-padding"?: (string) | undefined;
|
|
17801
|
+
/** Corner radius of the field. */
|
|
17802
|
+
"--textarea-radius"?: (string) | undefined;
|
|
17803
|
+
/** Which way a reader can drag the field: `vertical` by default, `none`, `both` or `horizontal`. A field under `auto-grow` has nothing to drag. */
|
|
17804
|
+
"--textarea-resize"?: (string) | undefined;
|
|
15700
17805
|
/** Fill behind the field. */
|
|
15701
17806
|
"--time-input-background-color"?: (string) | undefined;
|
|
15702
17807
|
/** Color of the panel's edge. */
|
|
15703
17808
|
"--time-input-border-color"?: (string) | undefined;
|
|
15704
17809
|
/** Width of the panel's edge. Defaults to `--helix-border-floating`, which is `0`, so the panel stands out by its shadow unless your theme sets a width. */
|
|
15705
17810
|
"--time-input-border-width"?: (string) | undefined;
|
|
17811
|
+
/** The fill behind the segment with focus, in `segmented`. It follows `--helix-color-primary`. */
|
|
17812
|
+
"--time-input-segment-focus-background-color"?: (string) | undefined;
|
|
17813
|
+
/** The text of the segment with focus, in `segmented`. */
|
|
17814
|
+
"--time-input-segment-focus-color"?: (string) | undefined;
|
|
17815
|
+
/** The text the locale writes between two segments, in `segmented`. */
|
|
17816
|
+
"--time-input-segment-literal-color"?: (string) | undefined;
|
|
17817
|
+
/** The dashes of a segment with nothing in it, in `segmented`. It matches the text field's placeholder. */
|
|
17818
|
+
"--time-input-segment-placeholder-color"?: (string) | undefined;
|
|
15706
17819
|
/** Shadow under the panel. Defaults to `--helix-shadow-floating`, because the panel can sit over any content. */
|
|
15707
17820
|
"--time-input-shadow"?: (string) | undefined;
|
|
15708
17821
|
/** How tall the list is before it scrolls. */
|
|
@@ -15715,6 +17828,8 @@ export type CustomCssProperties = {
|
|
|
15715
17828
|
"--time-picker-selected-color"?: (string) | undefined;
|
|
15716
17829
|
/** How tall a wheel is. Five rows by default. */
|
|
15717
17830
|
"--time-picker-wheel-block-size"?: (string) | undefined;
|
|
17831
|
+
/** The color of the heading. */
|
|
17832
|
+
"--timeline-group-heading-color"?: (string) | undefined;
|
|
15718
17833
|
/** How round the mark is. Zero is a square, and half its size is a disc. */
|
|
15719
17834
|
"--timeline-marker-radius"?: (string) | undefined;
|
|
15720
17835
|
/** Edge length of the mark. */
|
|
@@ -15733,6 +17848,8 @@ export type CustomCssProperties = {
|
|
|
15733
17848
|
"--toast-shadow"?: (string) | undefined;
|
|
15734
17849
|
/** How long this message stays, in milliseconds, for a progress hint. */
|
|
15735
17850
|
"--toast-duration"?: (string) | undefined;
|
|
17851
|
+
/** How far a swipe has moved the message across, in pixels, toward the right. */
|
|
17852
|
+
"--toast-swipe-x"?: (string) | undefined;
|
|
15736
17853
|
/** Space between one message and the next. */
|
|
15737
17854
|
"--toast-gap"?: (string) | undefined;
|
|
15738
17855
|
/** Width of a message. */
|
|
@@ -15741,8 +17858,14 @@ export type CustomCssProperties = {
|
|
|
15741
17858
|
"--toast-inset"?: (string) | undefined;
|
|
15742
17859
|
/** The fill of the moving marker. */
|
|
15743
17860
|
"--toggle-group-indicator-color"?: (string) | undefined;
|
|
17861
|
+
/** The fill behind the controls. Transparent unless set. */
|
|
17862
|
+
"--toolbar-background-color"?: (string) | undefined;
|
|
15744
17863
|
/** The space between controls. */
|
|
15745
17864
|
"--toolbar-gap"?: (string) | undefined;
|
|
17865
|
+
/** The space between the toolbar's edge and its controls. */
|
|
17866
|
+
"--toolbar-padding"?: (string) | undefined;
|
|
17867
|
+
/** The corner radius of the toolbar's fill. */
|
|
17868
|
+
"--toolbar-radius"?: (string) | undefined;
|
|
15746
17869
|
/** The size of the arrow on the bubble's edge. */
|
|
15747
17870
|
"--tooltip-arrow-size"?: (string) | undefined;
|
|
15748
17871
|
/** The blur behind a `frosted` or `glass` bubble. */
|
|
@@ -15767,6 +17890,14 @@ export type CustomCssProperties = {
|
|
|
15767
17890
|
"--tour-shadow"?: (string) | undefined;
|
|
15768
17891
|
/** The color of the panel's surface. */
|
|
15769
17892
|
"--tour-surface-color"?: (string) | undefined;
|
|
17893
|
+
/** Fill of the check mark's box. */
|
|
17894
|
+
"--tree-checkbox-background-color"?: (string) | undefined;
|
|
17895
|
+
/** Border of the check mark's box. */
|
|
17896
|
+
"--tree-checkbox-border-color"?: (string) | undefined;
|
|
17897
|
+
/** Color of the check, and of the bar of a partly checked branch. */
|
|
17898
|
+
"--tree-checkbox-mark-color"?: (string) | undefined;
|
|
17899
|
+
/** Size of the check mark's box. Follows the chevron's size. */
|
|
17900
|
+
"--tree-checkbox-size"?: (string) | undefined;
|
|
15770
17901
|
/** Size of the chevron, and the gutter a leaf reserves. */
|
|
15771
17902
|
"--tree-chevron-size"?: (string) | undefined;
|
|
15772
17903
|
/** Space between rows. */
|
|
@@ -15781,10 +17912,20 @@ export type CustomCssProperties = {
|
|
|
15781
17912
|
"--tree-chevron-gap"?: (string) | undefined;
|
|
15782
17913
|
/** The chevron's order in the row. Set from `chevron-placement` and read by each item. */
|
|
15783
17914
|
"--tree-chevron-order"?: (string) | undefined;
|
|
17915
|
+
/** Color of a move that `good` says is an improvement. */
|
|
17916
|
+
"--trend-better-color"?: (string) | undefined;
|
|
15784
17917
|
/** Color of the arrow. Setting it overrides the color that `good` sets. */
|
|
15785
17918
|
"--trend-color"?: (string) | undefined;
|
|
15786
|
-
/**
|
|
17919
|
+
/** Space between the arrow, the metric and the label. */
|
|
17920
|
+
"--trend-gap"?: (string) | undefined;
|
|
17921
|
+
/** Size of the arrow, or of a glyph in the `icon` slot. */
|
|
15787
17922
|
"--trend-icon-size"?: (string) | undefined;
|
|
17923
|
+
/** Color of the label. */
|
|
17924
|
+
"--trend-label-color"?: (string) | undefined;
|
|
17925
|
+
/** Color of a trend that `good` does not judge, or one that did not move. */
|
|
17926
|
+
"--trend-neutral-color"?: (string) | undefined;
|
|
17927
|
+
/** Color of a move that `good` says is a setback. */
|
|
17928
|
+
"--trend-worse-color"?: (string) | undefined;
|
|
15788
17929
|
/** The fill behind a row. */
|
|
15789
17930
|
"--video-playlist-item-background-color"?: (string) | undefined;
|
|
15790
17931
|
/** The width of the thumbnail column. */
|
|
@@ -15857,7 +17998,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
15857
17998
|
HelixAreaChartVueProps,
|
|
15858
17999
|
HelixAreaChartVueEvents
|
|
15859
18000
|
>;
|
|
15860
|
-
/** One fragment shader draws over a full-screen triangle, and its palette comes from the tokens. A background built on '--helix-color-primary' changes when your brand color changes. Every shape ramps through four token stops, and the token layer inverts each one: the page background, 'primary-subtle', 'primary', and a peak. The peak is the foreground on a dark page and 'primary-active' on a light one, because mixing a saturated hue toward near-black removes its chroma. The component reads which way the page runs from the background's luminance, because the mode is a private token. The geometry is three vertices derived from 'gl_VertexID'. There is no dependency, scene graph, attribute, buffer, or upload. The shader stops drawing in these cases: - The element is off screen or in a background tab. - 'prefers-reduced-motion' is set. The element shows one still frame. - The browser takes back the drawing context, on a GPU reset or past its limit of about sixteen contexts. The gradient shows until the context returns. On a renderer that draws on the CPU, such as a headless browser or a machine with no usable GPU, the element shows the gradient. There the shader costs about 450ms for the first frame of each element, against 2ms on a GPU. Aura is styled only and has behavior, which the tier split does not otherwise allow. Its behavior is drawing to a canvas, so there is no structure for you to restyle and nothing for a headless version to hold. */
|
|
18001
|
+
/** One fragment shader draws over a full-screen triangle, and its palette comes from the tokens. A background built on '--helix-color-primary' changes when your brand color changes. Every shape ramps through four token stops, and the token layer inverts each one: the page background, 'primary-subtle', 'primary', and a peak. The peak is the foreground on a dark page and 'primary-active' on a light one, because mixing a saturated hue toward near-black removes its chroma. The component reads which way the page runs from the background's luminance, because the mode is a private token. The geometry is three vertices derived from 'gl_VertexID'. There is no dependency, scene graph, attribute, buffer, or upload. The shader stops drawing in these cases: - The element is off screen or in a background tab. - 'prefers-reduced-motion' is set. The element shows one still frame. - The browser takes back the drawing context, on a GPU reset or past its limit of about sixteen contexts. The gradient shows until the context returns. On a renderer that draws on the CPU, such as a headless browser or a machine with no usable GPU, the element shows the gradient. There the shader costs about 450ms for the first frame of each element, against 2ms on a GPU. Aura is styled only and has behavior, which the tier split does not otherwise allow. Its behavior is drawing to a canvas, so there is no structure for you to restyle and nothing for a headless version to hold. **Content placed inside sits over the field**, in a 'content' part that covers the aura, so an interactive aura answers the pointer over the content too. Clicks still reach the content. Style '::part(content)' to place it, such as centering a hero's heading. **The colors are the theme's, and each has a hook**: '--aura-ground', '--aura-haze', '--aura-glow' and '--aura-peak', read by the shader and by the fallback gradient alike, from wherever on the page you set them. Where the gradient shows in place of the shader, the aura matches ':state(fallback)' and sends 'helix-aura-fallback' with the reason. */
|
|
15861
18002
|
"helix-aura": DefineCustomElement<
|
|
15862
18003
|
HelixAura,
|
|
15863
18004
|
HelixAuraVueProps,
|
|
@@ -15875,7 +18016,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
15875
18016
|
HelixAvatarVueProps,
|
|
15876
18017
|
HelixAvatarVueEvents
|
|
15877
18018
|
>;
|
|
15878
|
-
/** The indicator has a ring in the page background color, so it stays legible where it overlaps the element it is pinned to, such as a dark badge on a dark icon. */
|
|
18019
|
+
/** The indicator has a ring in the page background color, so it stays legible where it overlaps the element it is pinned to, such as a dark badge on a dark icon. 'placement' pins it to another corner, or puts it in the line with 'inline'. **Inside a control, 'inline' puts the count in the control's name**: '<button>Inbox <helix-badge placement="inline" value="8" label="8 unread"></helix-badge></button>' is the button "Inbox 8 unread", kept current by the badge with no label of yours to update. */
|
|
15879
18020
|
"helix-badge": DefineCustomElement<
|
|
15880
18021
|
HelixBadge,
|
|
15881
18022
|
HelixBadgeVueProps,
|
|
@@ -15905,7 +18046,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
15905
18046
|
HelixBreadcrumbsVueProps,
|
|
15906
18047
|
HelixBreadcrumbsVueEvents
|
|
15907
18048
|
>;
|
|
15908
|
-
/** Joins the buttons into one shape: the outer corners keep their radius, the inner corners lose it, and adjacent borders collapse into one line. The joining rule is in the base layer, paired with 'data-button' like the button's own box, because the corner is on the control inside each button's shadow root, where this component's styles cannot reach. The same rule works for your own anchor styled as a button. */
|
|
18049
|
+
/** Joins the buttons into one shape: the outer corners keep their radius, the inner corners lose it, and adjacent borders collapse into one line. The joining rule is in the base layer, paired with 'data-button' like the button's own box, because the corner is on the control inside each button's shadow root, where this component's styles cannot reach. The same rule works for your own anchor styled as a button. The buttons take their height from the region, so set 'data-density' on the group to make every button in it smaller or larger together. */
|
|
15909
18050
|
"helix-button-group": DefineCustomElement<
|
|
15910
18051
|
HelixButtonGroup,
|
|
15911
18052
|
HelixButtonGroupVueProps,
|
|
@@ -15917,7 +18058,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
15917
18058
|
HelixButtonVueProps,
|
|
15918
18059
|
HelixButtonVueEvents
|
|
15919
18060
|
>;
|
|
15920
|
-
/** The background is a tint of the tone's color, mixed with 'color-mix'. A 'neutral' callout is drawn in the muted ink, for a note that reports no status, so it keeps to the palette whatever the brand. A bar on the inline start edge also marks the tone, so it still shows in grayscale and for people who do not distinguish the hues.
|
|
18061
|
+
/** The background is a tint of the tone's color, mixed with 'color-mix'. A 'neutral' callout is drawn in the muted ink, for a note that reports no status, so it keeps to the palette whatever the brand. A bar on the inline start edge also marks the tone, so it still shows in grayscale and for people who do not distinguish the hues. 'tone' is set on the headless tier and carries the meaning, and this tier draws it. 'separation' is where the box ends: absent is the tint with the bar, 'outlined' an edge with no fill, and 'plain' the bar and the mark alone. */
|
|
15921
18062
|
"helix-callout": DefineCustomElement<
|
|
15922
18063
|
HelixCallout,
|
|
15923
18064
|
HelixCalloutVueProps,
|
|
@@ -15941,7 +18082,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
15941
18082
|
HelixCanvasVueProps,
|
|
15942
18083
|
HelixCanvasVueEvents
|
|
15943
18084
|
>;
|
|
15944
|
-
/** The regions are the 'media', 'header', and 'footer' slots and the default slot for content. None of them has a wrapper element. A region you leave out takes no space, so a card with only content needs no extra markup. Style slotted content directly: a header is the element you slotted, so there is no part to target. 'media' runs edge to edge and clips to the card's corners, so an image needs no inset. Set 'orientation="horizontal"' to put the media beside the header, content, and footer. Set 'media-placement="end"' to put it below the content, for example for a chart that ends a card. */
|
|
18085
|
+
/** The regions are the 'media', 'header', and 'footer' slots and the default slot for content. None of them has a wrapper element. A region you leave out takes no space, so a card with only content needs no extra markup. Style slotted content directly: a header is the element you slotted, so there is no part to target. 'header-actions' and 'footer-actions' put controls at the end of the header's and the footer's line; the footer then moves to the start of its line. Put a header of more than one element in one wrapper, since the header and its actions share a line. 'media' runs edge to edge and clips to the card's corners, so an image needs no inset. Set 'orientation="horizontal"' to put the media beside the header, content, and footer. Set 'media-placement="end"' to put it below the content, for example for a chart that ends a card. */
|
|
15945
18086
|
"helix-card": DefineCustomElement<
|
|
15946
18087
|
HelixCard,
|
|
15947
18088
|
HelixCardVueProps,
|
|
@@ -15983,7 +18124,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
15983
18124
|
HelixCheckboxVueProps,
|
|
15984
18125
|
HelixCheckboxVueEvents
|
|
15985
18126
|
>;
|
|
15986
|
-
/** The header sits above the code with the copy button at its end, so the button never covers the first line. A block with no name has no header. The button then sits beside the code in space the block keeps clear: an end gutter for code, and a band above the first hunk for a diff. A diff draws one block per file in the same frame. Each changed line is tinted in its tone at Tag's resting strength, with its '+' or '-' in the tone's ink color, so you can see the change without comparing two pale backgrounds. A split diff stacks its two versions when the file is narrower than about 40rem. */
|
|
18127
|
+
/** The header sits above the code with the copy button at its end, so the button never covers the first line. A block with no name has no header. The button then sits beside the code in space the block keeps clear: an end gutter for code, and a band above the first hunk for a diff. A diff draws one block per file in the same frame. Each changed line is tinted in its tone at Tag's resting strength, with its '+' or '-' in the tone's ink color, so you can see the change without comparing two pale backgrounds. A split diff stacks its two versions when the file is narrower than about 40rem. Long lines scroll by default. Set 'wrap' to wrap them instead, for prose-like code such as a long command, and set '--code-block-max-block-size' to cap the height of a long file, which then scrolls. */
|
|
15987
18128
|
"helix-code-block": DefineCustomElement<
|
|
15988
18129
|
HelixCodeBlock,
|
|
15989
18130
|
HelixCodeBlockVueProps,
|
|
@@ -16061,7 +18202,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
16061
18202
|
HelixDialogVueProps,
|
|
16062
18203
|
HelixDialogVueEvents
|
|
16063
18204
|
>;
|
|
16064
|
-
/** A one-pixel rule in the border color that spans the full inline size by default. A vertical divider stretches to fit its flex parent, so it matches the height of what it sits beside. */
|
|
18205
|
+
/** A one-pixel rule in the border color that spans the full inline size by default. A vertical divider stretches to fit its flex parent, so it matches the height of what it sits beside. Content set into the line sits at its middle. 'content-placement' moves it toward the start or the end, leaving a short length of line before or after it, the way a section label sits in a form. */
|
|
16065
18206
|
"helix-divider": DefineCustomElement<
|
|
16066
18207
|
HelixDivider,
|
|
16067
18208
|
HelixDividerVueProps,
|
|
@@ -16133,7 +18274,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
16133
18274
|
HelixFilterInputVueProps,
|
|
16134
18275
|
HelixFilterInputVueEvents
|
|
16135
18276
|
>;
|
|
16136
|
-
/** The host is the flex container and its only child is a slot, so '<helix-flex>' adds no box beyond the '<div>' it replaces. There is no separate Stack component. For a stack, set 'direction="column"'. 'gap' takes a space token name, so spacing stays on the scale. Flex is presentation only, so it has no headless tier. */
|
|
18277
|
+
/** The host is the flex container and its only child is a slot, so '<helix-flex>' adds no box beyond the '<div>' it replaces. There is no separate Stack component. For a stack, set 'direction="column"'. 'gap' takes a space token name, so spacing stays on the scale. 'row-gap' and 'column-gap' set one axis each and win over 'gap' on theirs. 'layout' sets up one of three common patterns, and any attribute you also write wins over the pattern's own value: - 'cluster': items in a wrapping row, centered on one line, such as tags. - 'split': the first item at the start and the rest pushed to the end, such as a title and its actions. Wraps when there is no room. - 'flank' and 'flank-end': a fixed item beside one that takes the rest, such as an icon and its text, or a field and its button. The item that takes the rest stays at least '--flex-flank-min' wide, and the pair stacks once it cannot. Flex is presentation only, so it has no headless tier. */
|
|
16137
18278
|
"helix-flex": DefineCustomElement<
|
|
16138
18279
|
HelixFlex,
|
|
16139
18280
|
HelixFlexVueProps,
|
|
@@ -16151,7 +18292,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
16151
18292
|
HelixGraphVueProps,
|
|
16152
18293
|
HelixGraphVueEvents
|
|
16153
18294
|
>;
|
|
16154
|
-
/** Set columns in one of two ways: - 'columns' sets a fixed count. - 'min' fits as many equal columns as there is room for at that width, so the layout responds with no breakpoints to maintain. If you set both, 'min' wins. The grid is presentation only, so there is no headless tier. */
|
|
18295
|
+
/** Set columns in one of two ways: - 'columns' sets a fixed count. - 'min' fits as many equal columns as there is room for at that width, so the layout responds with no breakpoints to maintain. If you set both, 'min' wins. The grid is presentation only, so there is no headless tier. 'row-gap' and 'column-gap' set one axis each and win over 'gap' on theirs. '--grid-rows' and '--grid-areas' set the rows and named areas, and a child takes its place with 'grid-area' in your own stylesheet. **A child can span columns with 'data-grid-span'.** 'data-grid-span="full"' runs from the first column to the last, such as a heading across a set of cards, and a number from '2' to '6' spans that many columns. */
|
|
16155
18296
|
"helix-grid": DefineCustomElement<
|
|
16156
18297
|
HelixGrid,
|
|
16157
18298
|
HelixGridVueProps,
|
|
@@ -16193,7 +18334,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
16193
18334
|
HelixKbdVueProps,
|
|
16194
18335
|
HelixKbdVueEvents
|
|
16195
18336
|
>;
|
|
16196
|
-
/** Entries are laid out in a row that wraps, because a legend under a chart is as wide as the chart, and its names have to fit any width. Set '--legend-direction' to 'column' when the legend sits beside a chart. Series colors are mapped in this tier. The headless tier carries the index and holds no tokens. The mapping is in 'shared/chart/series.css', because an index in markup cannot select a token, and an inline custom property would put a color in the headless tier. Charts and legends share the file, so both use the same twenty-four color names. */
|
|
18337
|
+
/** Entries are laid out in a row that wraps, because a legend under a chart is as wide as the chart, and its names have to fit any width. Set '--legend-direction' to 'column' when the legend sits beside a chart. Series colors are mapped in this tier. The headless tier carries the index and holds no tokens. The mapping is in 'shared/chart/series.css', because an index in markup cannot select a token, and an inline custom property would put a color in the headless tier. Charts and legends share the file, so both use the same twenty-four color names. Under 'toggles', each name is a button. A hidden series' entry fades and its swatch empties to an outline, so the color stays readable. */
|
|
16197
18338
|
"helix-legend": DefineCustomElement<
|
|
16198
18339
|
HelixLegend,
|
|
16199
18340
|
HelixLegendVueProps,
|
|
@@ -16235,7 +18376,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
16235
18376
|
HelixListboxVueProps,
|
|
16236
18377
|
HelixListboxVueEvents
|
|
16237
18378
|
>;
|
|
16238
|
-
/** Sized from the loader size tokens, so a loader is the same size wherever it is placed and follows the density region it sits in. Set '--loader-size: 1em' to match the text beside it, as inside a button. The color is 'currentColor', so it matches the text color around it, including inside a primary button. */
|
|
18379
|
+
/** Sized from the loader size tokens, so a loader is the same size wherever it is placed and follows the density region it sits in. Set '--loader-size: 1em' to match the text beside it, as inside a button. The color is 'currentColor', so it matches the text color around it, including inside a primary button. While 'delay' runs, the loader keeps its size and draws nothing, so the line it sits in does not move when it appears. */
|
|
16239
18380
|
"helix-loader": DefineCustomElement<
|
|
16240
18381
|
HelixLoader,
|
|
16241
18382
|
HelixLoaderVueProps,
|
|
@@ -16325,6 +18466,12 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
16325
18466
|
HelixMenuVueProps,
|
|
16326
18467
|
HelixMenuVueEvents
|
|
16327
18468
|
>;
|
|
18469
|
+
/** The heading is set in the menu's small type, quieter than the rows, with the rows' own inset, so it reads as the name of what follows. */
|
|
18470
|
+
"helix-menu-section": DefineCustomElement<
|
|
18471
|
+
HelixMenuSection,
|
|
18472
|
+
HelixMenuSectionVueProps,
|
|
18473
|
+
HelixMenuSectionVueEvents
|
|
18474
|
+
>;
|
|
16328
18475
|
/** Draws the same bar as 'Progress', at twice the height, with the library's standard corner radius in place of the pill shape. The extra height makes a meter easy to tell apart from a progress bar and keeps the tick at each threshold visible. At eight pixels the ticks are hairlines. At sixteen they are clear. The ticks cut the fill into segments, which is why the corners are square: a pill-shaped bar would have round outer ends and square inner ends. Once you set thresholds, the fill takes the success, warning, or danger tone of the band the reading falls in. A meter with no thresholds is neutral. A tick marks each threshold, so the reading can be placed against the bands without relying on color. A reading past either end squares the corner on that side, the convention for a quantity that continues past its frame. The bar stops at the end, and the text and the accessible value give the actual reading. */
|
|
16329
18476
|
"helix-meter": DefineCustomElement<
|
|
16330
18477
|
HelixMeter,
|
|
@@ -16361,7 +18508,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
16361
18508
|
HelixNumberInputVueProps,
|
|
16362
18509
|
HelixNumberInputVueEvents
|
|
16363
18510
|
>;
|
|
16364
|
-
/** The styled tier draws the tree in the Code Block frame. Keys and each type of value take their colors from the syntax colors code blocks use. Each row is one line, and a long string ends in an ellipsis, so every row has the same height and a windowed tree does not measure rows one by one. */
|
|
18511
|
+
/** The styled tier draws the tree in the Code Block frame. Keys and each type of value take their colors from the syntax colors code blocks use. Each row is one line, and a long string ends in an ellipsis, so every row has the same height and a windowed tree does not measure rows one by one. A filter's matches take a tinted ground, and the filter field is a band of the same frame, under the label. */
|
|
16365
18512
|
"helix-object-inspector": DefineCustomElement<
|
|
16366
18513
|
HelixObjectInspector,
|
|
16367
18514
|
HelixObjectInspectorVueProps,
|
|
@@ -16379,13 +18526,13 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
16379
18526
|
HelixOptionVueProps,
|
|
16380
18527
|
HelixOptionVueEvents
|
|
16381
18528
|
>;
|
|
16382
|
-
/** A cloud of dots drawn to a canvas, with one shape per state: - 'connecting' and 'thinking': the same leaning sash, differing in how agitated it is. - 'waiting' and 'done': the same settled ball at different tempos. - 'fetching': a globe with a light moving around it. - 'listening': a closed sphere with a ripple crossing it. - 'working': a ring. Every state is the same banded grid with different parameters. Changing state interpolates the parameters, so every frame in between is a complete shape. A small change gets less time than a large one, such as a sash becoming a ring. The outline changes first, so the light starts orbiting only after the shape is round. The cloud does not rotate, and all movement happens inside it. The exception is the light, which travels because a ring of evenly spaced dots looks the same when rotated, so a turning state needs something fixed passing over it. Colors come from '--orb-color' and '--orb-ground'. Each dot's color is mixed toward the ground color by its depth, so depth holds when the theme changes. The animation stops when the orb is off screen or in a background tab. With 'prefers-reduced-motion', it draws one still frame. The orb is styled only and has behavior, which the tier split does not otherwise allow. Its role, name and busy state follow 'state', and the rest is drawing dots to a canvas, so there is no structure to restyle. For a drawing of your own, the headless 'Loader' holds the same busy progress bar and its name. */
|
|
18529
|
+
/** A cloud of dots drawn to a canvas, with one shape per state: - 'connecting' and 'thinking': the same leaning sash, differing in how agitated it is. - 'waiting' and 'done': the same settled ball at different tempos. - 'fetching': a globe with a light moving around it. - 'listening': a closed sphere with a ripple crossing it. - 'working': a ring. Every state is the same banded grid with different parameters. Changing state interpolates the parameters, so every frame in between is a complete shape. A small change gets less time than a large one, such as a sash becoming a ring. The outline changes first, so the light starts orbiting only after the shape is round. The cloud does not rotate, and all movement happens inside it. The exception is the light, which travels because a ring of evenly spaced dots looks the same when rotated, so a turning state needs something fixed passing over it. Colors come from '--orb-color' and '--orb-ground'. Each dot's color is mixed toward the ground color by its depth, so depth holds when the theme changes. The animation stops when the orb is off screen or in a background tab. With 'prefers-reduced-motion', it draws one still frame. The orb is styled only and has behavior, which the tier split does not otherwise allow. Its role, name and busy state follow 'state', and the rest is drawing dots to a canvas, so there is no structure to restyle. For a drawing of your own, the headless 'Loader' holds the same busy progress bar and its name. Each state is also a custom state, such as ':state(thinking)' or ':state(done)', so a page can style what sits around an orb by what it shows, whether the state was written as an attribute or set from script. */
|
|
16383
18530
|
"helix-orb": DefineCustomElement<
|
|
16384
18531
|
HelixOrb,
|
|
16385
18532
|
HelixOrbVueProps,
|
|
16386
18533
|
HelixOrbVueEvents
|
|
16387
18534
|
>;
|
|
16388
|
-
/** A rule runs down the leading edge, and the current section is highlighted along it. Set nesting with 'data-level' on each link, using the heading levels: '2' through '6' each add one step of '--outline-indent', and a link without 'data-level' is at the top level. The outline does not read heading levels from the document, because the headings are not always in the document. */
|
|
18535
|
+
/** A rule runs down the leading edge, and the current section is highlighted along it. Set nesting with 'data-level' on each link, using the heading levels: '2' through '6' each add one step of '--outline-indent', and a link without 'data-level' is at the top level. The outline does not read heading levels from the document, because the headings are not always in the document. Links in a nested '<ul>' take their indentation from your own stylesheet: the outline's styles reach the elements slotted into it and nothing inside them. Write the links flat with 'data-level' for the indentation drawn here, and screen readers still hear them as nested lists. A heading slotted into 'heading' is set above the links, lined up with them. */
|
|
16389
18536
|
"helix-outline": DefineCustomElement<
|
|
16390
18537
|
HelixOutline,
|
|
16391
18538
|
HelixOutlineVueProps,
|
|
@@ -16481,7 +18628,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
16481
18628
|
HelixSandboxStatusBarVueProps,
|
|
16482
18629
|
HelixSandboxStatusBarVueEvents
|
|
16483
18630
|
>;
|
|
16484
|
-
/** The sandbox receives 'helix-console' events from the preview and passes them to the terminal. The preview is a separate document, so messages cross 'postMessage' and arrive as text. **Repeats collapse.** Consecutive identical lines show as one line with a count, so an example with a render loop does not fill the panel with the same warning. Only consecutive repeats collapse, so the order of messages is kept. The panel has 'role="log"', the role for an append-only stream. Screen readers announce new output without reading the whole panel again. A line's level is read before it, except a plain 'log', so an error does not sound like any other line. */
|
|
18631
|
+
/** The sandbox receives 'helix-console' events from the preview and passes them to the terminal. The preview is a separate document, so messages cross 'postMessage' and arrive as text. **Repeats collapse.** Consecutive identical lines show as one line with a count, so an example with a render loop does not fill the panel with the same warning. Only consecutive repeats collapse, so the order of messages is kept. The panel has 'role="log"', the role for an append-only stream. Screen readers announce new output without reading the whole panel again. A line's level is read before it, except a plain 'log', so an error does not sound like any other line. **'controls' adds a clear button and a level filter** above the log. Both are also yours to drive without them: 'clear()' empties the log, and 'level' hides the quieter lines. */
|
|
16485
18632
|
"helix-sandbox-terminal": DefineCustomElement<
|
|
16486
18633
|
HelixSandboxTerminal,
|
|
16487
18634
|
HelixSandboxTerminalVueProps,
|
|
@@ -16499,7 +18646,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
16499
18646
|
HelixScatterChartVueProps,
|
|
16500
18647
|
HelixScatterChartVueEvents
|
|
16501
18648
|
>;
|
|
16502
|
-
/** Presentation only: fades on the edges the base class reports, and a scrollbar styled to match the design system. The base class measures which edges have content past them. */
|
|
18649
|
+
/** Presentation only: fades on the edges the base class reports, and a scrollbar styled to match the design system. The base class measures which edges have content past them. Under 'scrollbars', the browser's scrollbar is hidden and the component's own are drawn over the content at the edge, in the same colors. */
|
|
16503
18650
|
"helix-scroll-area": DefineCustomElement<
|
|
16504
18651
|
HelixScrollArea,
|
|
16505
18652
|
HelixScrollAreaVueProps,
|
|
@@ -16511,7 +18658,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
16511
18658
|
HelixSelectVueProps,
|
|
16512
18659
|
HelixSelectVueEvents
|
|
16513
18660
|
>;
|
|
16514
|
-
/** Animates a highlight sweeping across the block, which reads as work in progress. A block fading in and out can look broken. */
|
|
18661
|
+
/** Animates a highlight sweeping across the block, which reads as work in progress. A block fading in and out can look broken, so 'effect="pulse"' is a choice rather than the default. Around content with 'loading', the skeleton takes the content's box and paints over it, and the content is hidden until 'loading' is taken off. */
|
|
16515
18662
|
"helix-skeleton": DefineCustomElement<
|
|
16516
18663
|
HelixSkeleton,
|
|
16517
18664
|
HelixSkeletonVueProps,
|
|
@@ -16576,7 +18723,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
16576
18723
|
HelixStepVueProps,
|
|
16577
18724
|
HelixStepVueEvents
|
|
16578
18725
|
>;
|
|
16579
|
-
/** A thumb moves along a track. The switch is the one place in Helix where color means "on". A checkbox has a tick, and a switch has no mark, so the fill is what tells the two states apart. The input is the hit target. It is stretched over the track and made invisible, so the press, the focus, and the label forwarding come from the platform. The height is '--helix-size-switch', one step above the checkbox's at every density. At the checkbox's height the thumb has two pixels of track around it, and the control looks like a small dash. The width follows the height, so setting '--switch-block-size' widens the switch too and keeps the proportion. */
|
|
18726
|
+
/** A thumb moves along a track. The switch is the one place in Helix where color means "on". A checkbox has a tick, and a switch has no mark, so the fill is what tells the two states apart. The input is the hit target. It is stretched over the track and made invisible, so the press, the focus, and the label forwarding come from the platform. The height is '--helix-size-switch', one step above the checkbox's at every density. At the checkbox's height the thumb has two pixels of track around it, and the control looks like a small dash. The width follows the height, so setting '--switch-block-size' widens the switch too and keeps the proportion. The thumb is an element, the 'thumb' part, and holds an icon for each state: one in the 'on' slot shows while the switch is on, and one in the 'off' slot while it is off. */
|
|
16580
18727
|
"helix-switch": DefineCustomElement<
|
|
16581
18728
|
HelixSwitch,
|
|
16582
18729
|
HelixSwitchVueProps,
|
|
@@ -16624,13 +18771,19 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
16624
18771
|
HelixTabVueProps,
|
|
16625
18772
|
HelixTabVueEvents
|
|
16626
18773
|
>;
|
|
18774
|
+
/** The tags sit in a row that wraps. A selected tag is filled with its tone, as 'emphasis="solid"' draws one, and the focused tag takes the focus ring round its whole box. */
|
|
18775
|
+
"helix-tag-group": DefineCustomElement<
|
|
18776
|
+
HelixTagGroup,
|
|
18777
|
+
HelixTagGroupVueProps,
|
|
18778
|
+
HelixTagGroupVueEvents
|
|
18779
|
+
>;
|
|
16627
18780
|
/** Seven tones. The fill is a tint of the status color made with 'color-mix', so when a theme changes its status colors, the tints change with them. */
|
|
16628
18781
|
"helix-tag": DefineCustomElement<
|
|
16629
18782
|
HelixTag,
|
|
16630
18783
|
HelixTagVueProps,
|
|
16631
18784
|
HelixTagVueEvents
|
|
16632
18785
|
>;
|
|
16633
|
-
/** 'as' sets the element, which decides the document outline and what a screen reader announces. 'variant' sets the type ramp, which decides size, weight, leading, and tracking together. The two match by default, so usually you set only 'as', such as 'as="h2"'. Set 'variant' when the look and the element differ, such as a heading that looks smaller or a '<p>' styled as a caption. The pairing is resolved in CSS, so the element writes nothing to its host. 'as="h2"' picks up the heading ramp through a selector, and setting 'variant' overrides the pairing. Do not derive it in 'willUpdate', because that adds a host attribute the server markup does not have, which causes a hydration mismatch in React. Size, weight, and leading are not separate properties. Choose a named ramp with 'variant'. 'tone' and 'emphasis' are separate from 'variant', because color carries state. Combining them would need a variant for every pair, such as 'caption-danger' and 'label-muted'. */
|
|
18786
|
+
/** 'as' sets the element, which decides the document outline and what a screen reader announces. 'variant' sets the type ramp, which decides size, weight, leading, and tracking together. The two match by default, so usually you set only 'as', such as 'as="h2"'. Set 'variant' when the look and the element differ, such as a heading that looks smaller or a '<p>' styled as a caption. The pairing is resolved in CSS, so the element writes nothing to its host. 'as="h2"' picks up the heading ramp through a selector, and setting 'variant' overrides the pairing. Do not derive it in 'willUpdate', because that adds a host attribute the server markup does not have, which causes a hydration mismatch in React. Size, weight, and leading are not separate properties. Choose a named ramp with 'variant'. 'tone' and 'emphasis' are separate from 'variant', because color carries state. Combining them would need a variant for every pair, such as 'caption-danger' and 'label-muted'. 'lines' cuts the text off after that many lines and ends it with an ellipsis. 'text-wrap' balances or tidies the line breaks, and 'text-align' sets the alignment. Each '--text-*' property overrides one value of the ramp, for a text or for every text inside an element. **To label a control, write a native '<label data-text="label">'.** The base layer gives it the label ramp. A Helix field takes its own 'label'. */
|
|
16634
18787
|
"helix-text": DefineCustomElement<
|
|
16635
18788
|
HelixText,
|
|
16636
18789
|
HelixTextVueProps,
|
|
@@ -16654,13 +18807,19 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
16654
18807
|
HelixTimePickerVueProps,
|
|
16655
18808
|
HelixTimePickerVueEvents
|
|
16656
18809
|
>;
|
|
18810
|
+
/** The heading sits at the start edge, over the entries, in the small heavy type of a section label, and the space under one group is the space between two entries. */
|
|
18811
|
+
"helix-timeline-group": DefineCustomElement<
|
|
18812
|
+
HelixTimelineGroup,
|
|
18813
|
+
HelixTimelineGroupVueProps,
|
|
18814
|
+
HelixTimelineGroupVueEvents
|
|
18815
|
+
>;
|
|
16657
18816
|
/** Draws the rail down the side, the mark on it, and the line that arrives from the previous entry. */
|
|
16658
18817
|
"helix-timeline-item": DefineCustomElement<
|
|
16659
18818
|
HelixTimelineItem,
|
|
16660
18819
|
HelixTimelineItemVueProps,
|
|
16661
18820
|
HelixTimelineItemVueEvents
|
|
16662
18821
|
>;
|
|
16663
|
-
/** Sets the direction time runs in and the spacing between events. Each entry draws its own mark and line. */
|
|
18822
|
+
/** Sets the direction time runs in and the spacing between events. Each entry draws its own mark and line. 'layout' and 'orientation' move where the entries are drawn, and never the order they are read in, which is the order you write them in: - Unset, the line runs down the start edge, with each time over what happened. - 'layout="opposite"' runs the line down the middle, with each time on the start side and what happened on the end side. - 'layout="alternate"' runs the line down the middle, with the first entry on the end side, the second on the start side, and so on. - 'orientation="horizontal"' runs the line across the top, with the entries side by side in the order they are read, and the time over what happened under each mark. Use it for a few entries, since they share the width. */
|
|
16664
18823
|
"helix-timeline": DefineCustomElement<
|
|
16665
18824
|
HelixTimeline,
|
|
16666
18825
|
HelixTimelineVueProps,
|
|
@@ -16750,13 +18909,13 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
16750
18909
|
HelixVideoPlaylistVueProps,
|
|
16751
18910
|
HelixVideoPlaylistVueEvents
|
|
16752
18911
|
>;
|
|
16753
|
-
/** The player comes from the headless tier. This tier adds the control bar: where it sits, when it shows, and how the two ranges look. The bar sits over the picture, so the video keeps its own size and nothing below it moves. The bar hides once a playing video has gone 'idle-delay' without input. It shows again when the pointer moves, and whenever anything inside it has focus, so you can reach it with the keyboard. A paused video keeps its bar. */
|
|
18912
|
+
/** The player comes from the headless tier. This tier adds the control bar: where it sits, when it shows, and how the two ranges look. The bar sits over the picture, so the video keeps its own size and nothing below it moves. The bar hides once a playing video has gone 'idle-delay' without input. It shows again when the pointer moves, and whenever anything inside it has focus, so you can reach it with the keyboard. A paused video keeps its bar. An icon put in one of the '-icon' slots is drawn at the size of the glyph it replaces, and in the control's color. */
|
|
16754
18913
|
"helix-video": DefineCustomElement<
|
|
16755
18914
|
HelixVideo,
|
|
16756
18915
|
HelixVideoVueProps,
|
|
16757
18916
|
HelixVideoVueEvents
|
|
16758
18917
|
>;
|
|
16759
|
-
/** The styled tier styles
|
|
18918
|
+
/** The styled tier styles the scrolling box and draws the focus ring on the row holding focus. Rows are your markup in the light DOM, so your stylesheet styles them the same as any other content, and a rule of yours on a row wins over the ring. */
|
|
16760
18919
|
"helix-virtual-list": DefineCustomElement<
|
|
16761
18920
|
HelixVirtualList,
|
|
16762
18921
|
HelixVirtualListVueProps,
|