@fusion.dev/helix-headless 0.228.0 → 0.229.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/api.json +1 -1
  2. package/custom-elements.json +1 -1
  3. package/dist/announcement/root/announcement-root.d.ts +0 -23
  4. package/dist/announcement/root/announcement-root.js +0 -3
  5. package/dist/button-group/root/button-group-root.d.ts +2 -3
  6. package/dist/canvas/edge/canvas-edge.d.ts +9 -9
  7. package/dist/canvas/edge/canvas-edge.js +3 -3
  8. package/dist/canvas/node/canvas-node.d.ts +1 -1
  9. package/dist/canvas/node/canvas-node.js +1 -1
  10. package/dist/canvas/root/canvas-root.js +1 -1
  11. package/dist/code-block/root/code-block-root.d.ts +9 -9
  12. package/dist/code-block/root/code-block-root.js +4 -4
  13. package/dist/color-input/root/color-input-root.d.ts +7 -7
  14. package/dist/color-input/root/color-input-root.js +9 -9
  15. package/dist/filter-input/chip/filter-chip.js +1 -1
  16. package/dist/image/root/image-root.d.ts +3 -0
  17. package/dist/image/root/image-root.js +9 -6
  18. package/dist/list/root/list-root.d.ts +1 -1
  19. package/dist/list/root/list-root.js +2 -1
  20. package/dist/map/marker/map-marker.d.ts +1 -1
  21. package/dist/map/marker/map-marker.js +1 -1
  22. package/dist/megamenu/root/megamenu-root.d.ts +24 -24
  23. package/dist/megamenu/root/megamenu-root.js +4 -4
  24. package/dist/meter/segment/meter-segment.d.ts +0 -5
  25. package/dist/meter/segment/meter-segment.js +0 -3
  26. package/dist/navigation/root/navigation-root.d.ts +7 -7
  27. package/dist/navigation/root/navigation-root.js +2 -2
  28. package/dist/option/root/option-root.d.ts +1 -1
  29. package/dist/option/root/option-root.js +3 -3
  30. package/dist/outline/root/outline-root.d.ts +21 -21
  31. package/dist/outline/root/outline-root.js +6 -6
  32. package/dist/radio/root/radio-root.d.ts +1 -1
  33. package/dist/select/root/select-root.js +1 -1
  34. package/dist/spatial-bar-chart/root/spatial-bar-chart-root.d.ts +33 -33
  35. package/dist/spatial-bar-chart/root/spatial-bar-chart-root.js +5 -5
  36. package/dist/steps/root/steps-root.d.ts +17 -17
  37. package/dist/steps/root/steps-root.js +3 -3
  38. package/dist/switch/root/switch-root.d.ts +1 -0
  39. package/dist/switch/root/switch-root.js +4 -0
  40. package/dist/tabs/root/tabs-root.d.ts +13 -13
  41. package/dist/tabs/root/tabs-root.js +3 -3
  42. package/dist/time-input/root/time-input-root.d.ts +26 -26
  43. package/dist/time-input/root/time-input-root.js +10 -10
  44. package/dist/time-picker/root/time-picker-root.d.ts +40 -40
  45. package/dist/time-picker/root/time-picker-root.js +10 -10
  46. package/examples.json +1 -1
  47. package/lint.json +1 -1
  48. package/package.json +5 -5
  49. package/types/jsx.d.ts +207 -237
  50. package/types/vue.d.ts +159 -184
  51. package/types/words.d.ts +8 -1
package/types/jsx.d.ts CHANGED
@@ -478,27 +478,6 @@ before it in the same parent, showing when the last of them is removed.
478
478
 
479
479
  Off by default, so every announcement on a page shows at once. */
480
480
  "queued"?: HelixHeadlessAnnouncement["queued"] | undefined;
481
- /** The band's color.
482
-
483
- Paint only: unlike `Callout`, no value here draws a mark, changes the label,
484
- or moves the live region off polite. `neutral` is the resting value, said
485
- out loud so a consumer can put a band back to it from markup.
486
-
487
- **The set is `Tag`'s and `Badge`'s, and now actually is.** This doc claimed
488
- to match `Tag` while differing from it in both directions: it carried
489
- `surface`, which `Tag` does not, and lacked `accent`, which `Tag` has. Three
490
- components saying what a thing means, in three vocabularies, one of which
491
- described itself as a fourth.
492
-
493
- `accent` is the second emphasis, the second color a theme names, and the
494
- brand itself until one is named. `primary` is the brand.
495
-
496
- **`surface` was never a color and has moved to `separation`**, which is the
497
- axis that owns where a box sits relative to the page. It said the band rode
498
- the surface step instead of the sunken one, which is an elevation, and a
499
- band can be `info` and elevated at once: two values true together are two
500
- axes, which is the test the registry answers to. */
501
- "tone"?: HelixHeadlessAnnouncement["tone"] | undefined;
502
481
  /** Whether the element shows a control that dismisses it. */
503
482
  "dismissible"?: HelixHeadlessAnnouncement["dismissible"] | undefined;
504
483
  /** The dismiss control's label, read by screen readers.
@@ -531,8 +510,6 @@ export type HelixHeadlessAnnouncementSolidJsProps = {
531
510
  "prop:label"?: HelixHeadlessAnnouncement["label"] | undefined;
532
511
  /** Whether the announcement waits its turn behind the queued announcements before it in the same parent, showing when the last of them is removed. */
533
512
  "prop:queued"?: HelixHeadlessAnnouncement["queued"] | undefined;
534
- /** The band's color. */
535
- "prop:tone"?: HelixHeadlessAnnouncement["tone"] | undefined;
536
513
  /** Whether the element shows a control that dismisses it. */
537
514
  "prop:dismissible"?: HelixHeadlessAnnouncement["dismissible"] | undefined;
538
515
  /** The dismiss control's label, read by screen readers. */
@@ -1634,9 +1611,8 @@ it and nothing lands on the host that a consumer's markup did not have. */
1634
1611
  Unset is a row and stays unset, so a reflected default cannot appear on a
1635
1612
  host whose server output never had it.
1636
1613
 
1637
- **A property and not an `auto`, which the splitter and the carousel earned
1638
- and this has not.** Turning those two changes what they *do*: a drag axis,
1639
- arrow keys, how many slides a page holds. A group of buttons turning is
1614
+ **A property and not an `auto`, which the splitter earned and this has not.**
1615
+ Turning a splitter changes what it *does*: a drag axis and arrow keys. A group of buttons turning is
1640
1616
  paint, so there is no state to resolve and nothing to observe; what it needs
1641
1617
  is for a consumer who knows the column is narrow to be able to say so.
1642
1618
 
@@ -2057,6 +2033,13 @@ the board can draw. */
2057
2033
  "readonly"?: HelixHeadlessCanvasEdge["readOnly"] | undefined;
2058
2034
  /** Prevents the connection from being removed. */
2059
2035
  "readOnly"?: HelixHeadlessCanvasEdge["readOnly"] | undefined;
2036
+ /** How the line is drawn: `dashed` or `dotted`. Unset is solid.
2037
+
2038
+ **A stroke rather than an axis**, which is what the registry keeps it for:
2039
+ no other family draws a line whose stroke says something, and a dashed
2040
+ connection is the ordinary way to draw a weaker or an optional one. On the
2041
+ headless tier because the board that draws the line is. */
2042
+ "stroke"?: HelixHeadlessCanvasEdge["stroke"] | undefined;
2060
2043
  /** The name of the card the connection ends at. */
2061
2044
  "to"?: HelixHeadlessCanvasEdge["to"] | undefined;
2062
2045
  /** The marker at the end of the connection. Unset is an arrow, as JSON Canvas specifies. */
@@ -2074,13 +2057,6 @@ board carries the value across from where it was written. */
2074
2057
  "to-side"?: HelixHeadlessCanvasEdge["toSide"] | undefined;
2075
2058
  /** The side of the `to` card the connection arrives at, when the document sets one. */
2076
2059
  "toSide"?: HelixHeadlessCanvasEdge["toSide"] | undefined;
2077
- /** How the line is drawn: `dashed` or `dotted`. Unset is solid.
2078
-
2079
- **A variant rather than an axis**, which is what the registry keeps it for:
2080
- no other family draws a line whose stroke says something, and a dashed
2081
- connection is the ordinary way to draw a weaker or an optional one. On the
2082
- headless tier because the board that draws the line is. */
2083
- "variant"?: HelixHeadlessCanvasEdge["variant"] | undefined;
2084
2060
  };
2085
2061
 
2086
2062
  export type HelixHeadlessCanvasEdgeSolidJsProps = {
@@ -2104,6 +2080,8 @@ export type HelixHeadlessCanvasEdgeSolidJsProps = {
2104
2080
  "bool:readonly"?: HelixHeadlessCanvasEdge["readOnly"] | undefined;
2105
2081
  /** Prevents the connection from being removed. */
2106
2082
  "prop:readOnly"?: HelixHeadlessCanvasEdge["readOnly"] | undefined;
2083
+ /** How the line is drawn: `dashed` or `dotted`. Unset is solid. */
2084
+ "prop:stroke"?: HelixHeadlessCanvasEdge["stroke"] | undefined;
2107
2085
  /** The name of the card the connection ends at. */
2108
2086
  "prop:to"?: HelixHeadlessCanvasEdge["to"] | undefined;
2109
2087
  /** The marker at the end of the connection. Unset is an arrow, as JSON Canvas specifies. */
@@ -2116,8 +2094,6 @@ export type HelixHeadlessCanvasEdgeSolidJsProps = {
2116
2094
  "attr:to-side"?: HelixHeadlessCanvasEdge["toSide"] | undefined;
2117
2095
  /** The side of the `to` card the connection arrives at, when the document sets one. */
2118
2096
  "prop:toSide"?: HelixHeadlessCanvasEdge["toSide"] | undefined;
2119
- /** How the line is drawn: `dashed` or `dotted`. Unset is solid. */
2120
- "prop:variant"?: HelixHeadlessCanvasEdge["variant"] | undefined;
2121
2097
  /** Set the innerHTML of the element */
2122
2098
  innerHTML?: string | undefined;
2123
2099
  /** Set the textContent of the element */
@@ -4201,6 +4177,12 @@ A block with no `label` is named by it, in the header and on the copy
4201
4177
  button, as a docs site names a snippet by its language. Absent hands
4202
4178
  `highlight` an empty string and names nothing. */
4203
4179
  "language"?: HelixHeadlessCodeBlock["language"] | undefined;
4180
+ /** How a diff's two versions are arranged. It has no effect without `diff`.
4181
+
4182
+ Absent is unified, each removal above its replacement, which fits any
4183
+ width. `split` sets the old version beside the new one. Optional rather
4184
+ than defaulted, so the host carries no attribute the consumer did not write. */
4185
+ "layout"?: HelixHeadlessCodeBlock["layout"] | undefined;
4204
4186
  /** Whether the lines are numbered in a gutter beside the code.
4205
4187
 
4206
4188
  The numbers are hidden from the accessibility tree and are not part of a
@@ -4248,12 +4230,6 @@ diff with `context-lines`. `{count}` is how many. */
4248
4230
  "show-unchanged-label"?: HelixHeadlessCodeBlock["showUnchangedLabel"] | undefined;
4249
4231
  /** The words of a button that shows a folded run of unchanged lines, in a diff with `context-lines`. `{count}` is how many. */
4250
4232
  "showUnchangedLabel"?: HelixHeadlessCodeBlock["showUnchangedLabel"] | undefined;
4251
- /** How a diff's two versions are arranged. It has no effect without `diff`.
4252
-
4253
- Absent is unified, each removal above its replacement, which fits any
4254
- width. `split` sets the old version beside the new one. Optional rather
4255
- than defaulted, so the host carries no attribute the consumer did not write. */
4256
- "variant"?: HelixHeadlessCodeBlock["variant"] | undefined;
4257
4233
  /** Whether long lines wrap. Without it they scroll.
4258
4234
 
4259
4235
  Off by default, so long lines scroll, because a line break can be
@@ -4364,6 +4340,8 @@ export type HelixHeadlessCodeBlockSolidJsProps = {
4364
4340
  "prop:label"?: HelixHeadlessCodeBlock["label"] | undefined;
4365
4341
  /** The language the code is written in, such as `ts` or `css`, handed to `highlight` as its second argument. */
4366
4342
  "prop:language"?: HelixHeadlessCodeBlock["language"] | undefined;
4343
+ /** How a diff's two versions are arranged. It has no effect without `diff`. */
4344
+ "prop:layout"?: HelixHeadlessCodeBlock["layout"] | undefined;
4367
4345
  /** Whether the lines are numbered in a gutter beside the code. */
4368
4346
  "bool:line-numbers"?: HelixHeadlessCodeBlock["lineNumbers"] | undefined;
4369
4347
  /** Whether the lines are numbered in a gutter beside the code. */
@@ -4384,8 +4362,6 @@ export type HelixHeadlessCodeBlockSolidJsProps = {
4384
4362
  "attr:show-unchanged-label"?: HelixHeadlessCodeBlock["showUnchangedLabel"] | undefined;
4385
4363
  /** The words of a button that shows a folded run of unchanged lines, in a diff with `context-lines`. `{count}` is how many. */
4386
4364
  "prop:showUnchangedLabel"?: HelixHeadlessCodeBlock["showUnchangedLabel"] | undefined;
4387
- /** How a diff's two versions are arranged. It has no effect without `diff`. */
4388
- "prop:variant"?: HelixHeadlessCodeBlock["variant"] | undefined;
4389
4365
  /** Whether long lines wrap. Without it they scroll. */
4390
4366
  "prop:wrap"?: HelixHeadlessCodeBlock["wrap"] | undefined;
4391
4367
  /** The wrap button's name, which it keeps whether it is pressed or not. */
@@ -5174,16 +5150,12 @@ Date Input and Time Input. */
5174
5150
  "readOnly"?: HelixHeadlessColorInput["readOnly"] | undefined;
5175
5151
  /** Colors offered under the picker, as a comma-separated list. */
5176
5152
  "swatches"?: HelixHeadlessColorInput["swatches"] | undefined;
5177
- /** What the swatch says in `variant="swatch"`, after the field's label, once
5153
+ /** What the swatch says in `trigger="swatch"`, after the field's label, once
5178
5154
  there is a color. `{name}` is the color's name, such as "vibrant red", and
5179
5155
  `{value}` the value as written. */
5180
5156
  "swatch-label"?: HelixHeadlessColorInput["swatchLabel"] | undefined;
5181
- /** What the swatch says in `variant="swatch"`, after the field's label, once there is a color. `{name}` is the color's name, such as "vibrant red", and `{value}` the value as written. */
5157
+ /** What the swatch says in `trigger="swatch"`, after the field's label, once there is a color. `{name}` is the color's name, such as "vibrant red", and `{value}` the value as written. */
5182
5158
  "swatchLabel"?: HelixHeadlessColorInput["swatchLabel"] | undefined;
5183
- /** Accessible name for the control that opens the panel. */
5184
- "trigger-label"?: HelixHeadlessColorInput["triggerLabel"] | undefined;
5185
- /** Accessible name for the control that opens the panel. */
5186
- "triggerLabel"?: HelixHeadlessColorInput["triggerLabel"] | undefined;
5187
5159
  /** Whether the field is a text box with a swatch on it, or only the swatch.
5188
5160
 
5189
5161
  `swatch` is the native control's shape: a block of color that opens a
@@ -5199,7 +5171,11 @@ readable and typeable exactly once, in whichever of the two is present.
5199
5171
  The trade is real and is the reason this is not the default: a swatch cannot
5200
5172
  be read or pasted into without opening the panel, which is worse for a form
5201
5173
  where the color is the answer rather than a setting. */
5202
- "variant"?: HelixHeadlessColorInput["variant"] | undefined;
5174
+ "trigger"?: HelixHeadlessColorInput["trigger"] | undefined;
5175
+ /** Accessible name for the control that opens the panel. */
5176
+ "trigger-label"?: HelixHeadlessColorInput["triggerLabel"] | undefined;
5177
+ /** Accessible name for the control that opens the panel. */
5178
+ "triggerLabel"?: HelixHeadlessColorInput["triggerLabel"] | undefined;
5203
5179
  /** Draws the panel's hue as a wheel around the square, in place of the hue
5204
5180
  ramp. See Color Picker's `wheel`. */
5205
5181
  "wheel"?: HelixHeadlessColorInput["wheel"] | undefined;
@@ -5348,16 +5324,16 @@ export type HelixHeadlessColorInputSolidJsProps = {
5348
5324
  "prop:readOnly"?: HelixHeadlessColorInput["readOnly"] | undefined;
5349
5325
  /** Colors offered under the picker, as a comma-separated list. */
5350
5326
  "prop:swatches"?: HelixHeadlessColorInput["swatches"] | undefined;
5351
- /** What the swatch says in `variant="swatch"`, after the field's label, once there is a color. `{name}` is the color's name, such as "vibrant red", and `{value}` the value as written. */
5327
+ /** What the swatch says in `trigger="swatch"`, after the field's label, once there is a color. `{name}` is the color's name, such as "vibrant red", and `{value}` the value as written. */
5352
5328
  "attr:swatch-label"?: HelixHeadlessColorInput["swatchLabel"] | undefined;
5353
- /** What the swatch says in `variant="swatch"`, after the field's label, once there is a color. `{name}` is the color's name, such as "vibrant red", and `{value}` the value as written. */
5329
+ /** What the swatch says in `trigger="swatch"`, after the field's label, once there is a color. `{name}` is the color's name, such as "vibrant red", and `{value}` the value as written. */
5354
5330
  "prop:swatchLabel"?: HelixHeadlessColorInput["swatchLabel"] | undefined;
5331
+ /** Whether the field is a text box with a swatch on it, or only the swatch. */
5332
+ "prop:trigger"?: HelixHeadlessColorInput["trigger"] | undefined;
5355
5333
  /** Accessible name for the control that opens the panel. */
5356
5334
  "attr:trigger-label"?: HelixHeadlessColorInput["triggerLabel"] | undefined;
5357
5335
  /** Accessible name for the control that opens the panel. */
5358
5336
  "prop:triggerLabel"?: HelixHeadlessColorInput["triggerLabel"] | undefined;
5359
- /** Whether the field is a text box with a swatch on it, or only the swatch. */
5360
- "prop:variant"?: HelixHeadlessColorInput["variant"] | undefined;
5361
5337
  /** Draws the panel's hue as a wheel around the square, in place of the hue ramp. See Color Picker's `wheel`. */
5362
5338
  "prop:wheel"?: HelixHeadlessColorInput["wheel"] | undefined;
5363
5339
  /** The message shown when the field holds text the picker cannot read as a date, a time, or a color. */
@@ -13917,9 +13893,9 @@ Absent is `all`. */
13917
13893
  /** The old name of `empty-text`, read only where a page sets it. */
13918
13894
  "emptyLabel"?: HelixHeadlessList["emptyLabel"] | undefined;
13919
13895
  /** The text of the row shown while the list has no rows, where the `empty`
13920
- slot is empty. Empty, the default, shows no row. */
13896
+ slot is empty. An empty string shows no row. */
13921
13897
  "empty-text"?: HelixHeadlessList["emptyText"] | undefined;
13922
- /** The text of the row shown while the list has no rows, where the `empty` slot is empty. Empty, the default, shows no row. */
13898
+ /** The text of the row shown while the list has no rows, where the `empty` slot is empty. An empty string shows no row. */
13923
13899
  "emptyText"?: HelixHeadlessList["emptyText"] | undefined;
13924
13900
  /** The kind of list, which follows from the content.
13925
13901
 
@@ -14044,9 +14020,9 @@ export type HelixHeadlessListSolidJsProps = {
14044
14020
  "attr:empty-label"?: HelixHeadlessList["emptyLabel"] | undefined;
14045
14021
  /** The old name of `empty-text`, read only where a page sets it. */
14046
14022
  "prop:emptyLabel"?: HelixHeadlessList["emptyLabel"] | undefined;
14047
- /** The text of the row shown while the list has no rows, where the `empty` slot is empty. Empty, the default, shows no row. */
14023
+ /** The text of the row shown while the list has no rows, where the `empty` slot is empty. An empty string shows no row. */
14048
14024
  "attr:empty-text"?: HelixHeadlessList["emptyText"] | undefined;
14049
- /** The text of the row shown while the list has no rows, where the `empty` slot is empty. Empty, the default, shows no row. */
14025
+ /** The text of the row shown while the list has no rows, where the `empty` slot is empty. An empty string shows no row. */
14050
14026
  "prop:emptyText"?: HelixHeadlessList["emptyText"] | undefined;
14051
14027
  /** The kind of list, which follows from the content. */
14052
14028
  "prop:kind"?: HelixHeadlessList["kind"] | undefined;
@@ -16270,6 +16246,27 @@ trigger to the panel. The attribute also takes a CSS time, such as `0.2s`. */
16270
16246
  "closeDelay"?: HelixHeadlessMegamenu["closeDelay"] | undefined;
16271
16247
  /** The section's name, used for the default trigger and the panel. */
16272
16248
  "label"?: HelixHeadlessMegamenu["label"] | undefined;
16249
+ /** Whether the panel is a card under the trigger or a band across the page.
16250
+
16251
+ The resting one is the card, hanging off the trigger and as wide as it
16252
+ needs to be. `band` is the other shape navigations use: a run from edge to
16253
+ edge under the header, with its contents held to the page's own measure, so
16254
+ a set of destinations too wide to sit under one word gets the whole width
16255
+ to lay out in.
16256
+
16257
+ **A band and not a width, which is why the word is not `full`.** It changes
16258
+ where the panel goes as well as how wide it is, which is why this tier
16259
+ knows about it at all: a band spans the viewport, so there is nothing to
16260
+ measure it against and nothing to flip or shift to, and the placing pass is
16261
+ told not to run. Everything else the popover gives, the top layer and the
16262
+ dismissal, is exactly what such a band needs. `full` is the registry's word
16263
+ for a width, and `Button` and `Dialog` are the two families answering that
16264
+ question; borrowing it here would put a third meaning on it.
16265
+
16266
+ `layout` and not an axis, for the reason the registry gives: a card under
16267
+ a word and a band under a header are two arrangements this family has, and
16268
+ no other family is being asked the same question. */
16269
+ "layout"?: HelixHeadlessMegamenu["layout"] | undefined;
16273
16270
  /** How long a pointer rests on the trigger before the panel opens, in
16274
16271
  milliseconds, under `open-on="hover"`. A pointer crossing the bar on its
16275
16272
  way somewhere else opens nothing. The attribute also takes a CSS time, such
@@ -16291,27 +16288,6 @@ heavy enough that opening it on the way past is rude. */
16291
16288
  moves if that side does not fit. A band ignores it, since a band spans the
16292
16289
  page under its bar. */
16293
16290
  "placement"?: HelixHeadlessMegamenu["placement"] | undefined;
16294
- /** Whether the panel is a card under the trigger or a band across the page.
16295
-
16296
- The resting one is the card, hanging off the trigger and as wide as it
16297
- needs to be. `band` is the other shape navigations use: a run from edge to
16298
- edge under the header, with its contents held to the page's own measure, so
16299
- a set of destinations too wide to sit under one word gets the whole width
16300
- to lay out in.
16301
-
16302
- **A band and not a width, which is why the word is not `full`.** It changes
16303
- where the panel goes as well as how wide it is, which is why this tier
16304
- knows about it at all: a band spans the viewport, so there is nothing to
16305
- measure it against and nothing to flip or shift to, and the placing pass is
16306
- told not to run. Everything else the popover gives, the top layer and the
16307
- dismissal, is exactly what such a band needs. `full` is the registry's word
16308
- for a width, and `Button` and `Dialog` are the two families answering that
16309
- question; borrowing it here would put a third meaning on it.
16310
-
16311
- `variant` and not an axis, for the reason the registry gives: a card under
16312
- a word and a band under a header are two arrangements this family has, and
16313
- no other family is being asked the same question. */
16314
- "variant"?: HelixHeadlessMegamenu["variant"] | undefined;
16315
16291
  /** Whether the element starts open. Ignored once `open` is written. */
16316
16292
  "default-open"?: HelixHeadlessMegamenu["defaultOpen"] | undefined;
16317
16293
  /** Whether the element starts open. Ignored once `open` is written. */
@@ -16348,6 +16324,8 @@ export type HelixHeadlessMegamenuSolidJsProps = {
16348
16324
  "prop:closeDelay"?: HelixHeadlessMegamenu["closeDelay"] | undefined;
16349
16325
  /** The section's name, used for the default trigger and the panel. */
16350
16326
  "prop:label"?: HelixHeadlessMegamenu["label"] | undefined;
16327
+ /** Whether the panel is a card under the trigger or a band across the page. */
16328
+ "prop:layout"?: HelixHeadlessMegamenu["layout"] | undefined;
16351
16329
  /** How long a pointer rests on the trigger before the panel opens, in milliseconds, under `open-on="hover"`. A pointer crossing the bar on its way somewhere else opens nothing. The attribute also takes a CSS time, such as `0.1s`. */
16352
16330
  "attr:open-delay"?: HelixHeadlessMegamenu["openDelay"] | `${number}` | undefined;
16353
16331
  /** How long a pointer rests on the trigger before the panel opens, in milliseconds, under `open-on="hover"`. A pointer crossing the bar on its way somewhere else opens nothing. The attribute also takes a CSS time, such as `0.1s`. */
@@ -16358,8 +16336,6 @@ export type HelixHeadlessMegamenuSolidJsProps = {
16358
16336
  "prop:openOn"?: HelixHeadlessMegamenu["openOn"] | undefined;
16359
16337
  /** The side of the trigger a card panel opens on, when there is room. It moves if that side does not fit. A band ignores it, since a band spans the page under its bar. */
16360
16338
  "prop:placement"?: HelixHeadlessMegamenu["placement"] | undefined;
16361
- /** Whether the panel is a card under the trigger or a band across the page. */
16362
- "prop:variant"?: HelixHeadlessMegamenu["variant"] | undefined;
16363
16339
  /** Whether the element starts open. Ignored once `open` is written. */
16364
16340
  "bool:default-open"?: HelixHeadlessMegamenu["defaultOpen"] | undefined;
16365
16341
  /** Whether the element starts open. Ignored once `open` is written. */
@@ -16979,9 +16955,6 @@ rests on it.
16979
16955
 
16980
16956
  Not announced: see the note on a meter's children above. */
16981
16957
  "label"?: HelixHeadlessMeterSegment["label"] | undefined;
16982
- /** What the segment means, as it does on a callout. Takes the tone's color in
16983
- place of the next color in the series. */
16984
- "tone"?: HelixHeadlessMeterSegment["tone"] | undefined;
16985
16958
  /** How much of the meter's range the segment takes, in the units of the meter's
16986
16959
  `min` and `max`.
16987
16960
 
@@ -16992,8 +16965,6 @@ A value that is not a number, or is below zero, draws nothing. */
16992
16965
  export type HelixHeadlessMeterSegmentSolidJsProps = {
16993
16966
  /** What the segment is, such as "Tools", which names the slice when a pointer rests on it. */
16994
16967
  "prop:label"?: HelixHeadlessMeterSegment["label"] | undefined;
16995
- /** What the segment means, as it does on a callout. Takes the tone's color in place of the next color in the series. */
16996
- "prop:tone"?: HelixHeadlessMeterSegment["tone"] | undefined;
16997
16968
  /** How much of the meter's range the segment takes, in the units of the meter's `min` and `max`. */
16998
16969
  "prop:value"?: HelixHeadlessMeterSegment["value"] | undefined;
16999
16970
  /** Set the innerHTML of the element */
@@ -17052,10 +17023,6 @@ second "Main".
17052
17023
 
17053
17024
  Empty by default, which leaves the name to `fallbackLabel`. */
17054
17025
  "label"?: HelixHeadlessNavigation["label"] | undefined;
17055
- /** Stacks the destinations in a column, for a sidebar, where unset is a row
17056
- for a header or a footer. The marker follows the current destination down
17057
- the column as it does along the row. */
17058
- "orientation"?: HelixHeadlessNavigation["orientation"] | undefined;
17059
17026
  /** How the destinations are drawn, with `Tabs`' three values and for the same
17060
17027
  reasons.
17061
17028
 
@@ -17075,7 +17042,11 @@ column's inline end.
17075
17042
 
17076
17043
  Reflected and left unset by default, so the host carries nothing a
17077
17044
  consumer's server markup does not already have. */
17078
- "variant"?: HelixHeadlessNavigation["variant"] | undefined;
17045
+ "marker"?: HelixHeadlessNavigation["marker"] | undefined;
17046
+ /** Stacks the destinations in a column, for a sidebar, where unset is a row
17047
+ for a header or a footer. The marker follows the current destination down
17048
+ the column as it does along the row. */
17049
+ "orientation"?: HelixHeadlessNavigation["orientation"] | undefined;
17079
17050
  };
17080
17051
 
17081
17052
  export type HelixHeadlessNavigationSolidJsProps = {
@@ -17087,10 +17058,10 @@ export type HelixHeadlessNavigationSolidJsProps = {
17087
17058
  "prop:fallbackLabel"?: HelixHeadlessNavigation["fallbackLabel"] | undefined;
17088
17059
  /** The landmark's name, read by screen readers. */
17089
17060
  "prop:label"?: HelixHeadlessNavigation["label"] | undefined;
17061
+ /** How the destinations are drawn, with `Tabs`' three values and for the same reasons. */
17062
+ "prop:marker"?: HelixHeadlessNavigation["marker"] | undefined;
17090
17063
  /** Stacks the destinations in a column, for a sidebar, where unset is a row for a header or a footer. The marker follows the current destination down the column as it does along the row. */
17091
17064
  "prop:orientation"?: HelixHeadlessNavigation["orientation"] | undefined;
17092
- /** How the destinations are drawn, with `Tabs`' three values and for the same reasons. */
17093
- "prop:variant"?: HelixHeadlessNavigation["variant"] | undefined;
17094
17065
  /** Set the innerHTML of the element */
17095
17066
  innerHTML?: string | undefined;
17096
17067
  /** Set the textContent of the element */
@@ -18266,6 +18237,15 @@ slot names it in place of this.
18266
18237
 
18267
18238
  Empty by default, which leaves the name to `fallbackLabel`. */
18268
18239
  "label"?: HelixHeadlessOutline["label"] | undefined;
18240
+ /** The rail form: a slim column of ticks, one per link, that opens on hover,
18241
+ focus, or a tap into a surface holding the links.
18242
+
18243
+ A marker because no registered axis (emphasis, material, nesting,
18244
+ orientation, separation, shape, size, tone, width) has a value for it, and
18245
+ a rail is an arrangement of this family alone, as Megamenu's
18246
+ `marker="band"` is. It has no default: the outline without it is the list
18247
+ of links. */
18248
+ "marker"?: HelixHeadlessOutline["marker"] | undefined;
18269
18249
  /** Which links are marked. `reading` marks the one section being read, the
18270
18250
  last whose heading has passed the reading line. `visible` marks every
18271
18251
  section with part of it on screen, and the mark runs across their links. */
@@ -18278,15 +18258,6 @@ The reading line. A page with a sticky masthead sets this to its height, or
18278
18258
  a little more: without it the current section changes as a heading slides
18279
18259
  under the chrome rather than as it reaches the top of what can be seen. */
18280
18260
  "offset"?: HelixHeadlessOutline["offset"] | undefined;
18281
- /** The rail form: a slim column of ticks, one per link, that opens on hover,
18282
- focus, or a tap into a surface holding the links.
18283
-
18284
- A variant because no registered axis (emphasis, material, nesting,
18285
- orientation, separation, shape, size, tone, width) has a value for it, and
18286
- a rail is an arrangement of this family alone, as Megamenu's
18287
- `variant="band"` is. It has no default: the outline without it is the list
18288
- of links. */
18289
- "variant"?: HelixHeadlessOutline["variant"] | undefined;
18290
18261
  /** Fired when the section in view changes, with its id as the value. It reports the scroll position and cannot be prevented. */
18291
18262
  "onhelix-activate"?: ((e: HelixHeadlessOutlineHelixActivateElementEvent) => void) | undefined;
18292
18263
  };
@@ -18302,12 +18273,12 @@ export type HelixHeadlessOutlineSolidJsProps = {
18302
18273
  "prop:follow"?: HelixHeadlessOutline["follow"] | undefined;
18303
18274
  /** The navigation's name, read by screen readers. A heading in the `heading` slot names it in place of this. */
18304
18275
  "prop:label"?: HelixHeadlessOutline["label"] | undefined;
18276
+ /** The rail form: a slim column of ticks, one per link, that opens on hover, focus, or a tap into a surface holding the links. */
18277
+ "prop:marker"?: HelixHeadlessOutline["marker"] | undefined;
18305
18278
  /** Which links are marked. `reading` marks the one section being read, the last whose heading has passed the reading line. `visible` marks every section with part of it on screen, and the mark runs across their links. */
18306
18279
  "prop:marks"?: HelixHeadlessOutline["marks"] | undefined;
18307
18280
  /** How far below the top of the scroll container a heading counts as reached, in pixels. The scroll container is the window or the panel the sections scroll in. */
18308
18281
  "prop:offset"?: HelixHeadlessOutline["offset"] | undefined;
18309
- /** The rail form: a slim column of ticks, one per link, that opens on hover, focus, or a tap into a surface holding the links. */
18310
- "prop:variant"?: HelixHeadlessOutline["variant"] | undefined;
18311
18282
  /** Fired when the section in view changes, with its id as the value. It reports the scroll position and cannot be prevented. */
18312
18283
  "on:helix-activate"?: ((e: HelixHeadlessOutlineHelixActivateElementEvent) => void) | undefined;
18313
18284
  /** Set the innerHTML of the element */
@@ -21000,6 +20971,38 @@ height. */
21000
20971
  "grow-again"?: HelixHeadlessSpatialBarChart["growAgain"] | undefined;
21001
20972
  /** Grows the bars again each time the chart comes back into view after it left it, as a pane does when it is opened again, where `grow` alone grows them the first time only. Only a chart that grows takes it. */
21002
20973
  "growAgain"?: HelixHeadlessSpatialBarChart["growAgain"] | undefined;
20974
+ /** How the bars stand.
20975
+
20976
+ Unset, they stand on a grid of categories across and series in depth,
20977
+ in a box the camera looks at from a corner, so the grid recedes at an
20978
+ angle. `row` lays the categories in a straight line across the page and
20979
+ turns each bar to the camera, showing its top and two sides, for one row
20980
+ of readings in a small space such as a pane: turning the view turns each
20981
+ bar where it stands, and the row stays level. It is the chart's own
20982
+ drawing that lays the row: a renderer connected through
20983
+ `@fusion.dev/helix-plot` stands the bars on the grid.
20984
+
20985
+ `diagonal` is the same row climbing to the right as it recedes, each
20986
+ place a step further back than the one before, as a row of days on a
20987
+ product's page is drawn: the row rises one part in five across the page
20988
+ from any turn, and its floor and names climb with it. A row whose bars
20989
+ have a size climbs at most a quarter of the plot's height, so the bars
20990
+ of a long row keep theirs.
20991
+
20992
+ **A row draws its floor in place of a box**: each place as an outline a
20993
+ little wider than its bar, and each category's name under it, as many
20994
+ names as fit without touching. A name whose bar names a tone is written
20995
+ first, in that tone. `no-box` leaves the floor and the names out.
20996
+
20997
+ **A `column-gap` on the `fallback` part gives a row's bars one width**,
20998
+ which the styled tier sets from `--spatial-bar-chart-bar-size`: one bar
20999
+ stands as wide as each of twenty, the row is as long as its bars and
21000
+ centered, the tallest bar stands as high as the plot has room for and
21001
+ no taller than the row is long and a quarter again, so one bar stands
21002
+ as a block, and `fits` says how many bars the plot holds, so a page
21003
+ can give it the latest of a longer table. It is read when the plot's
21004
+ size changes. */
21005
+ "layout"?: HelixHeadlessSpatialBarChart["layout"] | undefined;
21003
21006
  /** Draws no box: no edges, grid, numbers, or names, and in a `row` no
21004
21007
  floor, so the readings stand alone and fill the plot, as a picture on a
21005
21008
  product's own page does. The
@@ -21032,38 +21035,6 @@ and `{low}` and `{high}` the lowest and the highest value. */
21032
21035
  "summary-label"?: HelixHeadlessSpatialBarChart["summaryLabel"] | undefined;
21033
21036
  /** The `summary` part's sentence. `{count}`, `{series}`, and `{categories}` are the number of bars, series, and categories, written in the locale, and `{low}` and `{high}` the lowest and the highest value. */
21034
21037
  "summaryLabel"?: HelixHeadlessSpatialBarChart["summaryLabel"] | undefined;
21035
- /** How the bars stand.
21036
-
21037
- Unset, they stand on a grid of categories across and series in depth,
21038
- in a box the camera looks at from a corner, so the grid recedes at an
21039
- angle. `row` lays the categories in a straight line across the page and
21040
- turns each bar to the camera, showing its top and two sides, for one row
21041
- of readings in a small space such as a pane: turning the view turns each
21042
- bar where it stands, and the row stays level. It is the chart's own
21043
- drawing that lays the row: a renderer connected through
21044
- `@fusion.dev/helix-plot` stands the bars on the grid.
21045
-
21046
- `diagonal` is the same row climbing to the right as it recedes, each
21047
- place a step further back than the one before, as a row of days on a
21048
- product's page is drawn: the row rises one part in five across the page
21049
- from any turn, and its floor and names climb with it. A row whose bars
21050
- have a size climbs at most a quarter of the plot's height, so the bars
21051
- of a long row keep theirs.
21052
-
21053
- **A row draws its floor in place of a box**: each place as an outline a
21054
- little wider than its bar, and each category's name under it, as many
21055
- names as fit without touching. A name whose bar names a tone is written
21056
- first, in that tone. `no-box` leaves the floor and the names out.
21057
-
21058
- **A `column-gap` on the `fallback` part gives a row's bars one width**,
21059
- which the styled tier sets from `--spatial-bar-chart-bar-size`: one bar
21060
- stands as wide as each of twenty, the row is as long as its bars and
21061
- centered, the tallest bar stands as high as the plot has room for and
21062
- no taller than the row is long and a quarter again, so one bar stands
21063
- as a block, and `fits` says how many bars the plot holds, so a page
21064
- can give it the latest of a longer table. It is read when the plot's
21065
- size changes. */
21066
- "variant"?: HelixHeadlessSpatialBarChart["variant"] | undefined;
21067
21038
  /** The words shown in place of the drawing when the table has no readings,
21068
21039
  and the fallback of the `empty` slot. */
21069
21040
  "empty-text"?: HelixHeadlessSpatialBarChart["emptyText"] | undefined;
@@ -21193,6 +21164,8 @@ export type HelixHeadlessSpatialBarChartSolidJsProps = {
21193
21164
  "bool:grow-again"?: HelixHeadlessSpatialBarChart["growAgain"] | undefined;
21194
21165
  /** Grows the bars again each time the chart comes back into view after it left it, as a pane does when it is opened again, where `grow` alone grows them the first time only. Only a chart that grows takes it. */
21195
21166
  "prop:growAgain"?: HelixHeadlessSpatialBarChart["growAgain"] | undefined;
21167
+ /** How the bars stand. */
21168
+ "prop:layout"?: HelixHeadlessSpatialBarChart["layout"] | undefined;
21196
21169
  /** Draws no box: no edges, grid, numbers, or names, and in a `row` no floor, so the readings stand alone and fill the plot, as a picture on a product's own page does. The table, the summary, the tooltip, and the keys still carry every value, and a renderer draws no box either. */
21197
21170
  "bool:no-box"?: HelixHeadlessSpatialBarChart["noBox"] | undefined;
21198
21171
  /** Draws no box: no edges, grid, numbers, or names, and in a `row` no floor, so the readings stand alone and fill the plot, as a picture on a product's own page does. The table, the summary, the tooltip, and the keys still carry every value, and a renderer draws no box either. */
@@ -21211,8 +21184,6 @@ export type HelixHeadlessSpatialBarChartSolidJsProps = {
21211
21184
  "attr:summary-label"?: HelixHeadlessSpatialBarChart["summaryLabel"] | undefined;
21212
21185
  /** The `summary` part's sentence. `{count}`, `{series}`, and `{categories}` are the number of bars, series, and categories, written in the locale, and `{low}` and `{high}` the lowest and the highest value. */
21213
21186
  "prop:summaryLabel"?: HelixHeadlessSpatialBarChart["summaryLabel"] | undefined;
21214
- /** How the bars stand. */
21215
- "prop:variant"?: HelixHeadlessSpatialBarChart["variant"] | undefined;
21216
21187
  /** The words shown in place of the drawing when the table has no readings, and the fallback of the `empty` slot. */
21217
21188
  "attr:empty-text"?: HelixHeadlessSpatialBarChart["emptyText"] | undefined;
21218
21189
  /** The words shown in place of the drawing when the table has no readings, and the fallback of the `empty` slot. */
@@ -23159,6 +23130,17 @@ Empty by default, which leaves the name to `fallbackLabel`. */
23159
23130
  /** Whether a reader has to finish each stage, or pass an `optional` one,
23160
23131
  before going on to the next. */
23161
23132
  "linear"?: HelixHeadlessSteps["linear"] | undefined;
23133
+ /** What each step is marked with.
23134
+
23135
+ Absent is the state itself: a check where a stage is done, a target where
23136
+ the reader is, an empty ring ahead of them. Three marks that need no
23137
+ legend, which a number does: "3" says where a stage sits in the order and
23138
+ nothing about whether it is finished.
23139
+
23140
+ `numeric` is the older convention and is still the right one where the
23141
+ order is the point, a form that says "step 3 of 5" beside it, or a sequence
23142
+ a reader is told to come back to by number. */
23143
+ "marker"?: HelixHeadlessSteps["marker"] | undefined;
23162
23144
  /** Which way the steps run.
23163
23145
 
23164
23146
  Absent is a row, which is what a form header wants, with each name under
@@ -23178,17 +23160,6 @@ number, for a sentence that places the sign itself. */
23178
23160
  "progress-label"?: HelixHeadlessSteps["progressLabel"] | undefined;
23179
23161
  /** What the `progress` part says to a screen reader. `{share, number, percent}` writes `progress` as a percentage the way the locale writes one, such as `40%`, or `40 %` in French. `{percent}` is `progress` as a whole number, for a sentence that places the sign itself. */
23180
23162
  "progressLabel"?: HelixHeadlessSteps["progressLabel"] | undefined;
23181
- /** What each step is marked with.
23182
-
23183
- Absent is the state itself: a check where a stage is done, a target where
23184
- the reader is, an empty ring ahead of them. Three marks that need no
23185
- legend, which a number does: "3" says where a stage sits in the order and
23186
- nothing about whether it is finished.
23187
-
23188
- `numeric` is the older convention and is still the right one where the
23189
- order is the point, a form that says "step 3 of 5" beside it, or a sequence
23190
- a reader is told to come back to by number. */
23191
- "variant"?: HelixHeadlessSteps["variant"] | undefined;
23192
23163
  /** The `value` of the current item.
23193
23164
 
23194
23165
  Not `option.active`, which is the option the keyboard is on: that is a
@@ -23229,14 +23200,14 @@ export type HelixHeadlessStepsSolidJsProps = {
23229
23200
  "prop:label"?: HelixHeadlessSteps["label"] | undefined;
23230
23201
  /** Whether a reader has to finish each stage, or pass an `optional` one, before going on to the next. */
23231
23202
  "prop:linear"?: HelixHeadlessSteps["linear"] | undefined;
23203
+ /** What each step is marked with. */
23204
+ "prop:marker"?: HelixHeadlessSteps["marker"] | undefined;
23232
23205
  /** Which way the steps run. */
23233
23206
  "prop:orientation"?: HelixHeadlessSteps["orientation"] | undefined;
23234
23207
  /** What the `progress` part says to a screen reader. `{share, number, percent}` writes `progress` as a percentage the way the locale writes one, such as `40%`, or `40 %` in French. `{percent}` is `progress` as a whole number, for a sentence that places the sign itself. */
23235
23208
  "attr:progress-label"?: HelixHeadlessSteps["progressLabel"] | undefined;
23236
23209
  /** What the `progress` part says to a screen reader. `{share, number, percent}` writes `progress` as a percentage the way the locale writes one, such as `40%`, or `40 %` in French. `{percent}` is `progress` as a whole number, for a sentence that places the sign itself. */
23237
23210
  "prop:progressLabel"?: HelixHeadlessSteps["progressLabel"] | undefined;
23238
- /** What each step is marked with. */
23239
- "prop:variant"?: HelixHeadlessSteps["variant"] | undefined;
23240
23211
  /** The `value` of the current item. */
23241
23212
  "prop:active"?: HelixHeadlessSteps["active"] | undefined;
23242
23213
  /** The `value` of the item declared current in markup. */
@@ -24178,16 +24149,6 @@ Automatic is the default because showing a panel is usually cheap. Set this
24178
24149
  where it is not, so a reader arrowing past four tabs does not load four
24179
24150
  panels on the way. */
24180
24151
  "manual"?: HelixHeadlessTabs["manual"] | undefined;
24181
- /** The direction the tabs run. `vertical` sets them in a column beside the
24182
- panels and tells a screen reader the list is vertical.
24183
-
24184
- Optional, so the resting row writes no attribute onto the host. */
24185
- "orientation"?: HelixHeadlessTabs["orientation"] | undefined;
24186
- /** Whether a strip with more tabs than fit shows a button at each end it can
24187
- scroll toward. */
24188
- "scroll-controls"?: HelixHeadlessTabs["scrollControls"] | undefined;
24189
- /** Whether a strip with more tabs than fit shows a button at each end it can scroll toward. */
24190
- "scrollControls"?: HelixHeadlessTabs["scrollControls"] | undefined;
24191
24152
  /** How the row of tabs is drawn.
24192
24153
 
24193
24154
  Unset is a raised pill on the selected tab with nothing behind the row,
@@ -24210,7 +24171,17 @@ away.
24210
24171
 
24211
24172
  Reflected and left unset by default, so the host carries nothing a
24212
24173
  consumer's server markup does not already have. */
24213
- "variant"?: HelixHeadlessTabs["variant"] | undefined;
24174
+ "marker"?: HelixHeadlessTabs["marker"] | undefined;
24175
+ /** The direction the tabs run. `vertical` sets them in a column beside the
24176
+ panels and tells a screen reader the list is vertical.
24177
+
24178
+ Optional, so the resting row writes no attribute onto the host. */
24179
+ "orientation"?: HelixHeadlessTabs["orientation"] | undefined;
24180
+ /** Whether a strip with more tabs than fit shows a button at each end it can
24181
+ scroll toward. */
24182
+ "scroll-controls"?: HelixHeadlessTabs["scrollControls"] | undefined;
24183
+ /** Whether a strip with more tabs than fit shows a button at each end it can scroll toward. */
24184
+ "scrollControls"?: HelixHeadlessTabs["scrollControls"] | undefined;
24214
24185
  /** The `value` of the current item.
24215
24186
 
24216
24187
  Not `option.active`, which is the option the keyboard is on: that is a
@@ -24239,14 +24210,14 @@ export type HelixHeadlessTabsSolidJsProps = {
24239
24210
  "prop:label"?: HelixHeadlessTabs["label"] | undefined;
24240
24211
  /** Stops the arrow keys from selecting each tab they move to. By default, arrowing to a tab also selects it. */
24241
24212
  "prop:manual"?: HelixHeadlessTabs["manual"] | undefined;
24213
+ /** How the row of tabs is drawn. */
24214
+ "prop:marker"?: HelixHeadlessTabs["marker"] | undefined;
24242
24215
  /** The direction the tabs run. `vertical` sets them in a column beside the panels and tells a screen reader the list is vertical. */
24243
24216
  "prop:orientation"?: HelixHeadlessTabs["orientation"] | undefined;
24244
24217
  /** Whether a strip with more tabs than fit shows a button at each end it can scroll toward. */
24245
24218
  "bool:scroll-controls"?: HelixHeadlessTabs["scrollControls"] | undefined;
24246
24219
  /** Whether a strip with more tabs than fit shows a button at each end it can scroll toward. */
24247
24220
  "prop:scrollControls"?: HelixHeadlessTabs["scrollControls"] | undefined;
24248
- /** How the row of tabs is drawn. */
24249
- "prop:variant"?: HelixHeadlessTabs["variant"] | undefined;
24250
24221
  /** The `value` of the current item. */
24251
24222
  "prop:active"?: HelixHeadlessTabs["active"] | undefined;
24252
24223
  /** The `value` of the item declared current in markup. */
@@ -25213,6 +25184,21 @@ on why a wheel cannot do either. */
25213
25184
  "now-label"?: HelixHeadlessTimeInput["nowLabel"] | undefined;
25214
25185
  /** The words on the list's button that chooses the current time, drawn with `show-now`. */
25215
25186
  "nowLabel"?: HelixHeadlessTimeInput["nowLabel"] | undefined;
25187
+ /** Whether the panel shows one list of times or a column for each part of the
25188
+ time.
25189
+
25190
+ `list` offers whole times, which is what a product with slots or opening
25191
+ hours has. `wheels` splits them into an hour, a minute and a meridiem where
25192
+ the locale uses one, which is the only way to reach `23:45` without
25193
+ scrolling most of a day. `TimePicker` carries the longer note on the trade.
25194
+
25195
+ **Optional rather than defaulted, which is not a style preference.** A
25196
+ reflecting property with a default writes its attribute onto every host the
25197
+ moment the element upgrades, including the ones a consumer rendered and did
25198
+ not touch, and React reads that as a hydration mismatch. The absent
25199
+ attribute *is* the list, which the stylesheet reads as the base rule, so
25200
+ only the departure has to be named. */
25201
+ "picker"?: HelixHeadlessTimeInput["picker"] | undefined;
25216
25202
  /** Placeholder text shown before a time is entered. */
25217
25203
  "placeholder"?: HelixHeadlessTimeInput["placeholder"] | undefined;
25218
25204
  /** The message shown when a range holds more than two times.
@@ -25282,21 +25268,6 @@ is words for a developer. */
25282
25268
  "unreadable-message"?: HelixHeadlessTimeInput["unreadableMessage"] | undefined;
25283
25269
  /** The message for text that is no time, where `bad-input-message` is not set. `{mode}` is `single`, `range`, or `multiple`, `{example}` is a time written as the field writes one, `2:30 PM` in `en-US` and `14:30` in `de-DE`, and `{shape}` is `HH:mm`, or `HH:mm:ss` with `seconds`. */
25284
25270
  "unreadableMessage"?: HelixHeadlessTimeInput["unreadableMessage"] | undefined;
25285
- /** Whether the panel shows one list of times or a column for each part of the
25286
- time.
25287
-
25288
- `list` offers whole times, which is what a product with slots or opening
25289
- hours has. `wheels` splits them into an hour, a minute and a meridiem where
25290
- the locale uses one, which is the only way to reach `23:45` without
25291
- scrolling most of a day. `TimePicker` carries the longer note on the trade.
25292
-
25293
- **Optional rather than defaulted, which is not a style preference.** A
25294
- reflecting property with a default writes its attribute onto every host the
25295
- moment the element upgrades, including the ones a consumer rendered and did
25296
- not touch, and React reads that as a hydration mismatch. The absent
25297
- attribute *is* the list, which the stylesheet reads as the base rule, so
25298
- only the departure has to be named. */
25299
- "variant"?: HelixHeadlessTimeInput["variant"] | undefined;
25300
25271
  /** What a row of segments reports when the field is required and every
25301
25272
  segment is empty, where `value-missing-message` is not set. `{kind}` is
25302
25273
  `date` or `time`. */
@@ -25526,6 +25497,8 @@ export type HelixHeadlessTimeInputSolidJsProps = {
25526
25497
  "attr:now-label"?: HelixHeadlessTimeInput["nowLabel"] | undefined;
25527
25498
  /** The words on the list's button that chooses the current time, drawn with `show-now`. */
25528
25499
  "prop:nowLabel"?: HelixHeadlessTimeInput["nowLabel"] | undefined;
25500
+ /** Whether the panel shows one list of times or a column for each part of the time. */
25501
+ "prop:picker"?: HelixHeadlessTimeInput["picker"] | undefined;
25529
25502
  /** Placeholder text shown before a time is entered. */
25530
25503
  "prop:placeholder"?: HelixHeadlessTimeInput["placeholder"] | undefined;
25531
25504
  /** The message shown when a range holds more than two times. */
@@ -25568,8 +25541,6 @@ export type HelixHeadlessTimeInputSolidJsProps = {
25568
25541
  "attr:unreadable-message"?: HelixHeadlessTimeInput["unreadableMessage"] | undefined;
25569
25542
  /** The message for text that is no time, where `bad-input-message` is not set. `{mode}` is `single`, `range`, or `multiple`, `{example}` is a time written as the field writes one, `2:30 PM` in `en-US` and `14:30` in `de-DE`, and `{shape}` is `HH:mm`, or `HH:mm:ss` with `seconds`. */
25570
25543
  "prop:unreadableMessage"?: HelixHeadlessTimeInput["unreadableMessage"] | undefined;
25571
- /** Whether the panel shows one list of times or a column for each part of the time. */
25572
- "prop:variant"?: HelixHeadlessTimeInput["variant"] | undefined;
25573
25544
  /** What a row of segments reports when the field is required and every segment is empty, where `value-missing-message` is not set. `{kind}` is `date` or `time`. */
25574
25545
  "attr:empty-message"?: HelixHeadlessTimeInput["emptyMessage"] | undefined;
25575
25546
  /** What a row of segments reports when the field is required and every segment is empty, where `value-missing-message` is not set. `{kind}` is `date` or `time`. */
@@ -25787,7 +25758,7 @@ behavior and a reader who has met one has met both. The alternative, a
25787
25758
  separate "from" and "to" control, is two answers to what a product asks as
25788
25759
  one, and it makes the between part impossible to show.
25789
25760
 
25790
- **Neither works on wheels and the variant falls back.** A range on
25761
+ **Neither works on wheels and the picker falls back.** A range on
25791
25762
  wheels is two sets of wheels, which is two controls; a multiple is a set,
25792
25763
  and a wheel has exactly one value by construction. Rather than draw
25793
25764
  something that cannot say what it holds, `wheels` renders as a list
@@ -25798,6 +25769,32 @@ whenever a mode is set. */
25798
25769
  "now-label"?: HelixHeadlessTimePicker["nowLabel"] | undefined;
25799
25770
  /** The words on the button that chooses the current time, drawn with `show-now`. */
25800
25771
  "nowLabel"?: HelixHeadlessTimePicker["nowLabel"] | undefined;
25772
+ /** Shows the times as one `list`, or as `wheels` with a column for each part
25773
+ of the time.
25774
+
25775
+ `list` is the default and offers whole times, which is what a product with
25776
+ opening hours or slots actually has. `wheels` splits them into an hour, a
25777
+ minute and, where the locale uses one, a meridiem: three short columns
25778
+ instead of ninety-six rows, and the only way to reach `23:45` without
25779
+ scrolling most of a day.
25780
+
25781
+ The trade is that a wheel cannot say which *combinations* are on offer. A
25782
+ list of half hours from nine to five is seventeen rows and every one of them
25783
+ is a time the product has; the same thing as columns is an hour column and a
25784
+ minute column, and nothing in either says the two are only valid together.
25785
+ The bounds are still enforced, so a reader can be refused after the fact,
25786
+ which is worse than not being offered it.
25787
+
25788
+ So: `list` where the set is the point, `wheels` where any time is allowed
25789
+ and the range is a whole day.
25790
+
25791
+ **Optional rather than defaulted, which is not a style preference.** A
25792
+ reflecting property with a default writes its attribute onto every host the
25793
+ moment the element upgrades, including the ones a consumer rendered and did
25794
+ not touch, and React reads that as a hydration mismatch. The absent
25795
+ attribute *is* the list, which the stylesheet reads as the base rule, so
25796
+ only the departure has to be named. */
25797
+ "picker"?: HelixHeadlessTimePicker["picker"] | undefined;
25801
25798
  /** The validation message for a time after `max`. `{max}` is replaced with
25802
25799
  `max`, written in `locale`. */
25803
25800
  "range-overflow-message"?: HelixHeadlessTimePicker["rangeOverflowMessage"] | undefined;
@@ -25868,32 +25865,6 @@ Anything under five is a thousand rows and wants a field instead. */
25868
25865
  "value-missing-message"?: HelixHeadlessTimePicker["valueMissingMessage"] | undefined;
25869
25866
  /** The validation message for a required time picker with no time chosen. */
25870
25867
  "valueMissingMessage"?: HelixHeadlessTimePicker["valueMissingMessage"] | undefined;
25871
- /** Shows the times as one `list`, or as `wheels` with a column for each part
25872
- of the time.
25873
-
25874
- `list` is the default and offers whole times, which is what a product with
25875
- opening hours or slots actually has. `wheels` splits them into an hour, a
25876
- minute and, where the locale uses one, a meridiem: three short columns
25877
- instead of ninety-six rows, and the only way to reach `23:45` without
25878
- scrolling most of a day.
25879
-
25880
- The trade is that a wheel cannot say which *combinations* are on offer. A
25881
- list of half hours from nine to five is seventeen rows and every one of them
25882
- is a time the product has; the same thing as columns is an hour column and a
25883
- minute column, and nothing in either says the two are only valid together.
25884
- The bounds are still enforced, so a reader can be refused after the fact,
25885
- which is worse than not being offered it.
25886
-
25887
- So: `list` where the set is the point, `wheels` where any time is allowed
25888
- and the range is a whole day.
25889
-
25890
- **Optional rather than defaulted, which is not a style preference.** A
25891
- reflecting property with a default writes its attribute onto every host the
25892
- moment the element upgrades, including the ones a consumer rendered and did
25893
- not touch, and React reads that as a hydration mismatch. The absent
25894
- attribute *is* the list, which the stylesheet reads as the base rule, so
25895
- only the departure has to be named. */
25896
- "variant"?: HelixHeadlessTimePicker["variant"] | undefined;
25897
25868
  /** A message under the picker, such as what is wrong with the answer.
25898
25869
 
25899
25870
  While set, the picker is invalid and does not submit, as a field's
@@ -26027,6 +25998,8 @@ export type HelixHeadlessTimePickerSolidJsProps = {
26027
25998
  "attr:now-label"?: HelixHeadlessTimePicker["nowLabel"] | undefined;
26028
25999
  /** The words on the button that chooses the current time, drawn with `show-now`. */
26029
26000
  "prop:nowLabel"?: HelixHeadlessTimePicker["nowLabel"] | undefined;
26001
+ /** Shows the times as one `list`, or as `wheels` with a column for each part of the time. */
26002
+ "prop:picker"?: HelixHeadlessTimePicker["picker"] | undefined;
26030
26003
  /** The validation message for a time after `max`. `{max}` is replaced with `max`, written in `locale`. */
26031
26004
  "attr:range-overflow-message"?: HelixHeadlessTimePicker["rangeOverflowMessage"] | undefined;
26032
26005
  /** The validation message for a time after `max`. `{max}` is replaced with `max`, written in `locale`. */
@@ -26065,8 +26038,6 @@ export type HelixHeadlessTimePickerSolidJsProps = {
26065
26038
  "attr:value-missing-message"?: HelixHeadlessTimePicker["valueMissingMessage"] | undefined;
26066
26039
  /** The validation message for a required time picker with no time chosen. */
26067
26040
  "prop:valueMissingMessage"?: HelixHeadlessTimePicker["valueMissingMessage"] | undefined;
26068
- /** Shows the times as one `list`, or as `wheels` with a column for each part of the time. */
26069
- "prop:variant"?: HelixHeadlessTimePicker["variant"] | undefined;
26070
26041
  /** A message under the picker, such as what is wrong with the answer. */
26071
26042
  "prop:feedback"?: HelixHeadlessTimePicker["feedback"] | undefined;
26072
26043
  /** Whether the answer fails validation, marked on the controls a reader answers with and as `:state(invalid)`. */
@@ -28976,7 +28947,6 @@ interface Tags {
28976
28947
  * - `hotkey`: The key that moves focus to the announcement's first control, and back to where it was, written as keys joined by `+`, such as `F6` or `Alt+A`.
28977
28948
  * - `label`: The name of the announcement's region, which screen readers list among the page's landmarks.
28978
28949
  * - `queued`: Whether the announcement waits its turn behind the queued announcements before it in the same parent, showing when the last of them is removed.
28979
- * - `tone`: The band's color.
28980
28950
  * - `dismissible`: Whether the element shows a control that dismisses it.
28981
28951
  * - `dismiss-label`/`dismissLabel`: The dismiss control's label, read by screen readers.
28982
28952
  *
@@ -30055,11 +30025,11 @@ interface Tags {
30055
30025
  * - `name`: The connection's name, unique on its board, which events use to refer to it.
30056
30026
  * - `path`: The route the line takes: `straight`, or `step` for right angles.
30057
30027
  * - `readonly`/`readOnly`: Prevents the connection from being removed.
30028
+ * - `stroke`: How the line is drawn: `dashed` or `dotted`. Unset is solid.
30058
30029
  * - `to`: The name of the card the connection ends at.
30059
30030
  * - `to-end`/`toEnd`: The marker at the end of the connection. Unset is an arrow, as JSON Canvas specifies.
30060
30031
  * - `tone`: The meaning of the connection, shown by its color, in the same tones as other Helix components.
30061
30032
  * - `to-side`/`toSide`: The side of the `to` card the connection arrives at, when the document sets one.
30062
- * - `variant`: How the line is drawn: `dashed` or `dotted`. Unset is solid.
30063
30033
  *
30064
30034
  * ## CSS States
30065
30035
  *
@@ -30135,8 +30105,8 @@ interface Tags {
30135
30105
  *
30136
30106
  * ## CSS States
30137
30107
  *
30108
+ * - `active`: The card that receives focus when you tab into the board.
30138
30109
  * - `candidate`: While a connection is being drawn and this card is somewhere it could arrive.
30139
- * - `current`: The card that receives focus when you tab into the board.
30140
30110
  * - `placed`: Placed on the board.
30141
30111
  * - `selected`: The card is selected.
30142
30112
  * - `target`: A connection being drawn would end here if you released it.
@@ -31333,7 +31303,7 @@ interface Tags {
31333
31303
  * depend on color. Where a removed line is paired with the added line that
31334
31304
  * replaced it, the words each does not share with the other are the `changed`
31335
31305
  * part, so the eye goes to what changed within the line. Each file in the patch is its own block under its own name,
31336
- * and its copy button copies the new version of the file. `variant="split"`
31306
+ * and its copy button copies the new version of the file. `layout="split"`
31337
31307
  * shows the old version beside the new, each removal opposite its replacement.
31338
31308
  * `context-lines` folds each long run of unchanged lines, keeping that many
31339
31309
  * beside each change, behind a button that shows them and hides them again,
@@ -31386,12 +31356,12 @@ interface Tags {
31386
31356
  * - `hide-unchanged-label`/`hideUnchangedLabel`: The words of a button that hides a run of unchanged lines it showed, in a diff with `context-lines`. `{count}` is how many, and each language writes the forms it has.
31387
31357
  * - `label`: The block's name, usually a file name, drawn in the header.
31388
31358
  * - `language`: The language the code is written in, such as `ts` or `css`, handed to `highlight` as its second argument.
31359
+ * - `layout`: How a diff's two versions are arranged. It has no effect without `diff`.
31389
31360
  * - `line-numbers`/`lineNumbers`: Whether the lines are numbered in a gutter beside the code.
31390
31361
  * - `mark-lines`/`markLines`: The lines to mark, as numbers and ranges counted from 1, such as `2, 4-6`. Each run is drawn as a band behind its lines. Not for a diff, which marks its own changes.
31391
31362
  * - `no-copy`/`noCopy`: Whether to leave the copy button off.
31392
31363
  * - `removed-lines`/`removedLines`: The lines to mark as deleted, as numbers and ranges counted from 1. Drawn as `mark-lines` is, in the removed color. Not for a diff.
31393
31364
  * - `show-unchanged-label`/`showUnchangedLabel`: The words of a button that shows a folded run of unchanged lines, in a diff with `context-lines`. `{count}` is how many.
31394
- * - `variant`: How a diff's two versions are arranged. It has no effect without `diff`.
31395
31365
  * - `wrap`: Whether long lines wrap. Without it they scroll.
31396
31366
  * - `wrap-label`/`wrapLabel`: The wrap button's name, which it keeps whether it is pressed or not.
31397
31367
  * - `wrappable`: Whether the header has a button that wraps the lines and unwraps them. The block draws a header for it even with no name.
@@ -31871,9 +31841,9 @@ interface Tags {
31871
31841
  * - `placeholder`: The text the field shows before a color is entered.
31872
31842
  * - `readonly`/`readOnly`: Whether the color is locked. A read-only field still submits its value.
31873
31843
  * - `swatches`: Colors offered under the picker, as a comma-separated list.
31874
- * - `swatch-label`/`swatchLabel`: What the swatch says in `variant="swatch"`, after the field's label, once there is a color. `{name}` is the color's name, such as "vibrant red", and `{value}` the value as written.
31844
+ * - `swatch-label`/`swatchLabel`: What the swatch says in `trigger="swatch"`, after the field's label, once there is a color. `{name}` is the color's name, such as "vibrant red", and `{value}` the value as written.
31845
+ * - `trigger`: Whether the field is a text box with a swatch on it, or only the swatch.
31875
31846
  * - `trigger-label`/`triggerLabel`: Accessible name for the control that opens the panel.
31876
- * - `variant`: Whether the field is a text box with a swatch on it, or only the swatch.
31877
31847
  * - `wheel`: Draws the panel's hue as a wheel around the square, in place of the hue ramp. See Color Picker's `wheel`.
31878
31848
  * - `bad-input-message`/`badInputMessage`: The message shown when the field holds text the picker cannot read as a date, a time, or a color.
31879
31849
  * - `default-open`/`defaultOpen`: Whether the element starts open. Ignored once `open` is written.
@@ -31929,7 +31899,7 @@ interface Tags {
31929
31899
  *
31930
31900
  * ## CSS Parts
31931
31901
  *
31932
- * - `control`: The text input that holds the value. Absent in the `swatch` variant.
31902
+ * - `control`: The text input that holds the value. Absent in the `swatch` trigger.
31933
31903
  * - `feedback`: The message that says what is wrong with the value.
31934
31904
  * - `field`: The box holding the text and the trigger.
31935
31905
  * - `hint`: Help text under the field, shown while there is no feedback.
@@ -36147,6 +36117,7 @@ interface Tags {
36147
36117
  * ## CSS Parts
36148
36118
  *
36149
36119
  * - `fallback`: The fallback, shown when the image fails to load.
36120
+ * - `fallback-mark`: The mark drawn where a failed image has no `fallback` slot.
36150
36121
  * - `image`: The image itself.
36151
36122
  * - `placeholder`: The placeholder, shown until the image loads.
36152
36123
  *
@@ -36942,7 +36913,7 @@ interface Tags {
36942
36913
  * - `disabled-behavior`/`disabledBehavior`: What `disabled` takes from a row, in a list that selects: `all`, which passes over the row, or `selection`, which keeps the row out of the selection and lets the keys reach it and Enter or a press act on it, as React Aria's GridList takes `disabledBehavior`.
36943
36914
  * - `dropped-label`/`droppedLabel`: What screen readers hear when a row is dropped, in a `reorderable` list.
36944
36915
  * - `empty-label`/`emptyLabel`: The old name of `empty-text`, read only where a page sets it.
36945
- * - `empty-text`/`emptyText`: The text of the row shown while the list has no rows, where the `empty` slot is empty. Empty, the default, shows no row.
36916
+ * - `empty-text`/`emptyText`: The text of the row shown while the list has no rows, where the `empty` slot is empty. An empty string shows no row.
36946
36917
  * - `kind`: The kind of list, which follows from the content.
36947
36918
  * - `label`: The list's name, read by screen readers.
36948
36919
  * - `loading`: Marks the list as busy fetching more rows, and draws a row after the last that says so. The list asks for no more while it is set.
@@ -37735,10 +37706,10 @@ interface Tags {
37735
37706
  *
37736
37707
  * ## CSS States
37737
37708
  *
37709
+ * - `active`: Holds the map's tab stop.
37738
37710
  * - `behind`: On the far side of a globe, out of sight until the globe turns it into view.
37739
37711
  * - `cluster`: Shows several markers as one count.
37740
37712
  * - `clustered`: Hidden inside another marker's cluster.
37741
- * - `current`: Holds the map's tab stop.
37742
37713
  * - `fanned`: Spread out from a location it shares with other markers, after their cluster was pressed.
37743
37714
  * - `icon`: Has content in the icon slot.
37744
37715
  * - `passed`: Marked as passed.
@@ -38330,10 +38301,10 @@ interface Tags {
38330
38301
  * - `band-below`/`bandBelow`: The page width, in pixels, below which a card panel is shown as a band. At zero, it never is.
38331
38302
  * - `close-delay`/`closeDelay`: How long a pointer leaving the trigger and the panel waits before the panel closes, in milliseconds. The pointer needs the time to cross from the trigger to the panel. The attribute also takes a CSS time, such as `0.2s`.
38332
38303
  * - `label`: The section's name, used for the default trigger and the panel.
38304
+ * - `layout`: Whether the panel is a card under the trigger or a band across the page.
38333
38305
  * - `open-delay`/`openDelay`: How long a pointer rests on the trigger before the panel opens, in milliseconds, under `open-on="hover"`. A pointer crossing the bar on its way somewhere else opens nothing. The attribute also takes a CSS time, such as `0.1s`.
38334
38306
  * - `open-on`/`openOn`: Whether hovering over the trigger opens the panel (`hover`), or only a press does (`click`).
38335
38307
  * - `placement`: The side of the trigger a card panel opens on, when there is room. It moves if that side does not fit. A band ignores it, since a band spans the page under its bar.
38336
- * - `variant`: Whether the panel is a card under the trigger or a band across the page.
38337
38308
  * - `default-open`/`defaultOpen`: Whether the element starts open. Ignored once `open` is written.
38338
38309
  * - `open`: Whether the element is open.
38339
38310
  *
@@ -38374,7 +38345,7 @@ interface Tags {
38374
38345
  * - `current`: A link in the panel carries `aria-current="page"`, so the trigger can show the section you are in.
38375
38346
  * - `from-end`: The panel opened in place of one earlier in the bar, so it can enter from the end side.
38376
38347
  * - `from-start`: The panel opened in place of one later in the bar, so it can enter from the start side.
38377
- * - `narrow`: The page is narrower than `band-below`, so the panel is shown as a band whatever its variant.
38348
+ * - `narrow`: The page is narrower than `band-below`, so the panel is shown as a band whatever its layout.
38378
38349
  * - `open`: The panel is open, and the trigger is shown as current.
38379
38350
  * - `to-end`: The panel closed because one earlier in the bar opened, so it can leave toward the end.
38380
38351
  * - `to-start`: The panel closed because one later in the bar opened, so it can leave toward the start.
@@ -38811,7 +38782,6 @@ interface Tags {
38811
38782
  * ## Attributes & Properties
38812
38783
  *
38813
38784
  * - `label`: What the segment is, such as "Tools", which names the slice when a pointer rests on it.
38814
- * - `tone`: What the segment means, as it does on a callout. Takes the tone's color in place of the next color in the series.
38815
38785
  * - `value`: How much of the meter's range the segment takes, in the units of the meter's `min` and `max`.
38816
38786
  *
38817
38787
  * ## Slots
@@ -38929,8 +38899,8 @@ interface Tags {
38929
38899
  * - `arrows`: Whether the arrow keys move focus between the destinations.
38930
38900
  * - `fallback-label`/`fallbackLabel`: The name the element gives itself where `label` is empty.
38931
38901
  * - `label`: The landmark's name, read by screen readers.
38902
+ * - `marker`: How the destinations are drawn, with `Tabs`' three values and for the same reasons.
38932
38903
  * - `orientation`: Stacks the destinations in a column, for a sidebar, where unset is a row for a header or a footer. The marker follows the current destination down the column as it does along the row.
38933
- * - `variant`: How the destinations are drawn, with `Tabs`' three values and for the same reasons.
38934
38904
  *
38935
38905
  * ## Slots
38936
38906
  *
@@ -39603,7 +39573,7 @@ interface Tags {
39603
39573
  * - `disabled`: While the option cannot be chosen.
39604
39574
  * - `has-indicator`: An icon is slotted into `indicator`.
39605
39575
  * - `hovered`: While a mouse or a pen is over the option. A touch sets no hover, as React Aria's `data-hovered` does not.
39606
- * - `pressed`: While a pointer presses the option, from the press to the release.
39576
+ * - `pressing`: While a pointer presses the option, from the press to the release.
39607
39577
  * - `selected`: While the option is chosen.
39608
39578
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
39609
39579
  */
@@ -39676,7 +39646,7 @@ interface Tags {
39676
39646
  * marked, so `a[aria-current]` and `a[data-depth="2"]` are the hooks for a
39677
39647
  * rule of yours.
39678
39648
  *
39679
- * **The rail.** `variant="rail"` draws a slim column of ticks at the edge of a
39649
+ * **The rail.** `marker="rail"` draws a slim column of ticks at the edge of a
39680
39650
  * long scroll, one per link, with the section in view drawn longer and a deeper
39681
39651
  * level shorter. Hovering or focusing the rail opens a surface holding the
39682
39652
  * links, each on one line, and Escape closes it. A tap opens it too, and it stays
@@ -39690,9 +39660,9 @@ interface Tags {
39690
39660
  * - `fallback-label`/`fallbackLabel`: The name the element gives itself where `label` is empty.
39691
39661
  * - `follow`: Keeps the link of the section in view in view itself, in an outline longer than the box it scrolls in, such as a contents rail with a scrollbar of its own. Only that box moves: never the page, and never the box the sections scroll in.
39692
39662
  * - `label`: The navigation's name, read by screen readers. A heading in the `heading` slot names it in place of this.
39663
+ * - `marker`: The rail form: a slim column of ticks, one per link, that opens on hover, focus, or a tap into a surface holding the links.
39693
39664
  * - `marks`: Which links are marked. `reading` marks the one section being read, the last whose heading has passed the reading line. `visible` marks every section with part of it on screen, and the mark runs across their links.
39694
39665
  * - `offset`: How far below the top of the scroll container a heading counts as reached, in pixels. The scroll container is the window or the panel the sections scroll in.
39695
- * - `variant`: The rail form: a slim column of ticks, one per link, that opens on hover, focus, or a tap into a surface holding the links.
39696
39666
  *
39697
39667
  * ## Events
39698
39668
  *
@@ -39717,9 +39687,9 @@ interface Tags {
39717
39687
  * - `heading`: The box holding the `heading` slot, above the navigation.
39718
39688
  * - `indicator`: The mark that moves to the link of the section in view. It carries that link's place and size as `--indicator-x`, `--indicator-y`, `--indicator-inline-size` and `--indicator-block-size`, and `data-placed` once it has been placed, for a mark you draw and animate yourself.
39719
39689
  * - `nav`: The navigation landmark.
39720
- * - `surface`: The box holding the heading and the navigation under `variant="rail"`, which opens over the ticks.
39690
+ * - `surface`: The box holding the heading and the navigation under `marker="rail"`, which opens over the ticks.
39721
39691
  * - `tick`: One tick of the rail, for one link, with `data-current` while its section is in view. It carries the link's depth as `--outline-depth`.
39722
- * - `ticks`: The column of ticks under `variant="rail"`, hidden from assistive technology.
39692
+ * - `ticks`: The column of ticks under `marker="rail"`, hidden from assistive technology.
39723
39693
  *
39724
39694
  * ## CSS States
39725
39695
  *
@@ -40496,7 +40466,7 @@ interface Tags {
40496
40466
  * ## Slots
40497
40467
  *
40498
40468
  * - `(default)`: The radio's label.
40499
- * - `icon`: An icon shown beside the label. With `variant="chip"`, the icon replaces the visible label, and the label becomes the name read by screen readers. The icon has its own slot so the chip can hide the label and show the icon.
40469
+ * - `icon`: An icon shown beside the label. With `chip`, the icon replaces the visible label, and the label becomes the name read by screen readers. The icon has its own slot so the chip can hide the label and show the icon.
40500
40470
  * - `indicator`: An icon drawn inside the circle in place of the dot, such as a check mark.
40501
40471
  *
40502
40472
  * ## Methods
@@ -41514,12 +41484,12 @@ interface Tags {
41514
41484
  *
41515
41485
  * - `grow`: Grows the bars up from the floor the first time the chart comes into view with readings, each category a little after the one before it, so the drawing arrives the way a page's own picture does. The growth is fast at first, slows to rest, and never passes a bar's value.
41516
41486
  * - `grow-again`/`growAgain`: Grows the bars again each time the chart comes back into view after it left it, as a pane does when it is opened again, where `grow` alone grows them the first time only. Only a chart that grows takes it.
41487
+ * - `layout`: How the bars stand.
41517
41488
  * - `no-box`/`noBox`: Draws no box: no edges, grid, numbers, or names, and in a `row` no floor, so the readings stand alone and fill the plot, as a picture on a product's own page does. The table, the summary, the tooltip, and the keys still carry every value, and a renderer draws no box either.
41518
41489
  * - `open-label`/`openLabel`: What the readout says for a place with no value. `{category}` and `{series}` name the place.
41519
41490
  * - `plot-label`/`plotLabel`: The plot's name where the chart has none: no `aria-label`, `label`, or table caption.
41520
41491
  * - `stacked`: Stacks a category's series into one column, each block standing on the ones before it, so the column is as tall as the category's total, as a flat `Bar Chart` stacks them.
41521
41492
  * - `summary-label`/`summaryLabel`: The `summary` part's sentence. `{count}`, `{series}`, and `{categories}` are the number of bars, series, and categories, written in the locale, and `{low}` and `{high}` the lowest and the highest value.
41522
- * - `variant`: How the bars stand.
41523
41493
  * - `empty-text`/`emptyText`: The words shown in place of the drawing when the table has no readings, and the fallback of the `empty` slot.
41524
41494
  * - `loading`: Whether the readings are still on their way. The chart shows `loading-text` in place of an empty drawing until it has readings.
41525
41495
  * - `loading-text`/`loadingText`: The words shown in place of the drawing while `loading` is set and there are no readings yet, and the fallback of the `loading` slot.
@@ -42875,9 +42845,9 @@ interface Tags {
42875
42845
  * - `fallback-label`/`fallbackLabel`: The name the element gives itself where `label` is empty.
42876
42846
  * - `label`: The sequence's name, read by screen readers.
42877
42847
  * - `linear`: Whether a reader has to finish each stage, or pass an `optional` one, before going on to the next.
42848
+ * - `marker`: What each step is marked with.
42878
42849
  * - `orientation`: Which way the steps run.
42879
42850
  * - `progress-label`/`progressLabel`: What the `progress` part says to a screen reader. `{share, number, percent}` writes `progress` as a percentage the way the locale writes one, such as `40%`, or `40 %` in French. `{percent}` is `progress` as a whole number, for a sentence that places the sign itself.
42880
- * - `variant`: What each step is marked with.
42881
42851
  * - `active`: The `value` of the current item.
42882
42852
  * - `default-active`/`defaultActive`: The `value` of the item declared current in markup.
42883
42853
  * - `validate`: A function that answers whether a stage is valid, asked about the stage a reader is on before they move forward from it. Return `false` to keep them there. Not asked of an `optional` stage, nor for a move back. (property only)
@@ -43624,9 +43594,9 @@ interface Tags {
43624
43594
  *
43625
43595
  * - `label`: The tab list's name, read by screen readers.
43626
43596
  * - `manual`: Stops the arrow keys from selecting each tab they move to. By default, arrowing to a tab also selects it.
43597
+ * - `marker`: How the row of tabs is drawn.
43627
43598
  * - `orientation`: The direction the tabs run. `vertical` sets them in a column beside the panels and tells a screen reader the list is vertical.
43628
43599
  * - `scroll-controls`/`scrollControls`: Whether a strip with more tabs than fit shows a button at each end it can scroll toward.
43629
- * - `variant`: How the row of tabs is drawn.
43630
43600
  * - `active`: The `value` of the current item.
43631
43601
  * - `default-active`/`defaultActive`: The `value` of the item declared current in markup.
43632
43602
  *
@@ -44269,7 +44239,7 @@ interface Tags {
44269
44239
  * with `aria-haspopup="dialog"`, `aria-expanded`, and `aria-controls`, since
44270
44240
  * Down opens the list from it. In the list, the arrow keys, typed digits and PageUp and PageDown
44271
44241
  * move through the times, and Enter, Space or a click chooses one and closes
44272
- * the panel. With `variant="wheels"` each wheel moves the time as you turn it,
44242
+ * the panel. With `picker="wheels"` each wheel moves the time as you turn it,
44273
44243
  * the panel stays open, and Enter or Escape closes it.
44274
44244
  *
44275
44245
  * With `segmented`, the field is a row of segments in place of the text: an
@@ -44312,6 +44282,7 @@ interface Tags {
44312
44282
  * - `min`: Earliest time that can be chosen, as `HH:mm`.
44313
44283
  * - `mode`: How many times the field holds at once.
44314
44284
  * - `now-label`/`nowLabel`: The words on the list's button that chooses the current time, drawn with `show-now`.
44285
+ * - `picker`: Whether the panel shows one list of times or a column for each part of the time.
44315
44286
  * - `placeholder`: Placeholder text shown before a time is entered.
44316
44287
  * - `range-length-message`/`rangeLengthMessage`: The message shown when a range holds more than two times.
44317
44288
  * - `range-overflow-message`/`rangeOverflowMessage`: The message shown when a time is after `max`, with `{max}` filled in as the field displays it.
@@ -44324,7 +44295,6 @@ interface Tags {
44324
44295
  * - `trigger-label`/`triggerLabel`: The name of the button that opens the list, read by screen readers.
44325
44296
  * - `unavailable-message`/`unavailableMessage`: The message shown when `disable-times` bars a time.
44326
44297
  * - `unreadable-message`/`unreadableMessage`: The message for text that is no time, where `bad-input-message` is not set. `{mode}` is `single`, `range`, or `multiple`, `{example}` is a time written as the field writes one, `2:30 PM` in `en-US` and `14:30` in `de-DE`, and `{shape}` is `HH:mm`, or `HH:mm:ss` with `seconds`.
44327
- * - `variant`: Whether the panel shows one list of times or a column for each part of the time.
44328
44298
  * - `empty-message`/`emptyMessage`: What a row of segments reports when the field is required and every segment is empty, where `value-missing-message` is not set. `{kind}` is `date` or `time`.
44329
44299
  * - `empty-segment-label`/`emptySegmentLabel`: What a screen reader hears for a segment with nothing in it, which a sighted reader sees as dashes.
44330
44300
  * - `incomplete-message`/`incompleteMessage`: What a row of segments reports while some segments are set and others are not, where `bad-input-message` is not set. `{kind}` is `date` or `time`.
@@ -44476,7 +44446,7 @@ interface Tags {
44476
44446
  /**
44477
44447
  * Shows the times at each `step` as a `Listbox`, which provides the keyboard
44478
44448
  * behavior, typeahead, scrolling into view, and announcements for a set of
44479
- * options. `variant="wheels"` shows a column each for the hour, the minute, and
44449
+ * options. `picker="wheels"` shows a column each for the hour, the minute, and
44480
44450
  * the meridiem, and one for the second with `seconds`. Left and Right move
44481
44451
  * between the wheels, and Tab does too.
44482
44452
  *
@@ -44546,6 +44516,7 @@ interface Tags {
44546
44516
  * - `minute-label`/`minuteLabel`: What the wheel of minutes is called, read by screen readers.
44547
44517
  * - `mode`: How many times can be held at once.
44548
44518
  * - `now-label`/`nowLabel`: The words on the button that chooses the current time, drawn with `show-now`.
44519
+ * - `picker`: Shows the times as one `list`, or as `wheels` with a column for each part of the time.
44549
44520
  * - `range-overflow-message`/`rangeOverflowMessage`: The validation message for a time after `max`. `{max}` is replaced with `max`, written in `locale`.
44550
44521
  * - `range-underflow-message`/`rangeUnderflowMessage`: The validation message for a time before `min`. `{min}` is replaced with `min`, written in `locale`.
44551
44522
  * - `readonly`/`readOnly`: Blocks changes to the time. The value is still submitted with the form.
@@ -44557,7 +44528,6 @@ interface Tags {
44557
44528
  * - `step-mismatch-message`/`stepMismatchMessage`: The validation message for a time that `step` skips.
44558
44529
  * - `unavailable-message`/`unavailableMessage`: The validation message for a time that `disable-times` bars.
44559
44530
  * - `value-missing-message`/`valueMissingMessage`: The validation message for a required time picker with no time chosen.
44560
- * - `variant`: Shows the times as one `list`, or as `wheels` with a column for each part of the time.
44561
44531
  * - `feedback`: A message under the picker, such as what is wrong with the answer.
44562
44532
  * - `invalid`: Whether the answer fails validation, marked on the controls a reader answers with and as `:state(invalid)`.
44563
44533
  * - `default-value`/`defaultValue`: The value the control starts with. A form reset returns it to this value, and to the `value` attribute where this one is not written, as a native control resets to the `value` it declares.