@fusion.dev/helix-headless 0.149.1 → 0.151.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.
Files changed (69) hide show
  1. package/custom-elements.json +1211 -110
  2. package/dist/area-chart/root/area-chart-root.d.ts +36 -0
  3. package/dist/area-chart/root/area-chart-root.js +17 -2
  4. package/dist/bar-chart/root/bar-chart-root.d.ts +28 -4
  5. package/dist/bar-chart/root/bar-chart-root.js +17 -4
  6. package/dist/button/root/button-root.d.ts +5 -0
  7. package/dist/button/root/button-root.js +3 -0
  8. package/dist/callout/root/callout-root.d.ts +20 -0
  9. package/dist/callout/root/callout-root.js +19 -4
  10. package/dist/chat/composer/chat-composer.d.ts +30 -0
  11. package/dist/chat/composer/chat-composer.js +47 -2
  12. package/dist/chat/root/chat-root.d.ts +10 -0
  13. package/dist/chat/root/chat-root.js +14 -0
  14. package/dist/color-input/root/color-input-root.d.ts +1 -0
  15. package/dist/color-picker/root/color-picker-root.js +1 -0
  16. package/dist/combobox/root/combobox-root.d.ts +12 -1
  17. package/dist/combobox/root/combobox-root.js +8 -0
  18. package/dist/copy-button/root/copy-button-root.d.ts +4 -3
  19. package/dist/copy-button/root/copy-button-root.js +5 -1
  20. package/dist/data-table/root/data-table-root.d.ts +34 -2
  21. package/dist/data-table/root/data-table-root.js +63 -2
  22. package/dist/date-input/root/date-input-root.d.ts +1 -0
  23. package/dist/divider/root/divider-root.d.ts +8 -6
  24. package/dist/divider/root/divider-root.js +10 -2
  25. package/dist/element-events.generated.js +5 -1
  26. package/dist/filter-input/chip/filter-chip.d.ts +2 -1
  27. package/dist/filter-input/root/filter-input-root.d.ts +5 -0
  28. package/dist/filter-input/root/filter-input-root.js +7 -0
  29. package/dist/kbd/root/kbd-root.d.ts +7 -1
  30. package/dist/kbd/root/kbd-root.js +8 -4
  31. package/dist/line-chart/root/line-chart-root.d.ts +36 -0
  32. package/dist/line-chart/root/line-chart-root.js +15 -2
  33. package/dist/number-input/root/number-input-root.d.ts +6 -0
  34. package/dist/number-input/root/number-input-root.js +14 -3
  35. package/dist/option/root/option-root.d.ts +17 -8
  36. package/dist/option/root/option-root.js +18 -4
  37. package/dist/radio/group/radio-group.d.ts +8 -1
  38. package/dist/radio/group/radio-group.js +15 -1
  39. package/dist/scatter-chart/root/scatter-chart-root.d.ts +18 -0
  40. package/dist/scatter-chart/root/scatter-chart-root.js +38 -15
  41. package/dist/slider/root/slider-root.d.ts +8 -0
  42. package/dist/slider/root/slider-root.js +6 -3
  43. package/dist/table/column/table-column.js +3 -2
  44. package/dist/table/grid-controller.d.ts +14 -2
  45. package/dist/table/grid-controller.js +27 -1
  46. package/dist/table/root/table-root.d.ts +30 -4
  47. package/dist/table/root/table-root.js +45 -7
  48. package/dist/table/row/table-row.d.ts +12 -2
  49. package/dist/table/row/table-row.js +8 -2
  50. package/dist/tag/group/tag-group.d.ts +22 -1
  51. package/dist/tag/group/tag-group.js +63 -3
  52. package/dist/tag/root/tag-root.d.ts +9 -0
  53. package/dist/tag/root/tag-root.js +5 -1
  54. package/dist/time-input/root/time-input-root.d.ts +1 -0
  55. package/dist/toggle/group/toggle-group.d.ts +6 -0
  56. package/dist/toggle/group/toggle-group.js +16 -1
  57. package/dist/toggle/root/toggle-root.d.ts +21 -3
  58. package/dist/toggle/root/toggle-root.js +22 -5
  59. package/dist/video/root/video-root.d.ts +6 -0
  60. package/dist/video/root/video-root.js +5 -1
  61. package/dist/video-playlist/root/video-playlist-root.d.ts +4 -0
  62. package/dist/video-playlist/root/video-playlist-root.js +4 -1
  63. package/dist/virtual-list/root/virtual-list-root.d.ts +23 -1
  64. package/dist/virtual-list/root/virtual-list-root.js +21 -2
  65. package/lint.json +1 -1
  66. package/package.json +5 -5
  67. package/types/jsx.d.ts +808 -156
  68. package/types/vue.d.ts +223 -59
  69. package/types/words.d.ts +4 -2
package/types/jsx.d.ts CHANGED
@@ -207,6 +207,8 @@ import type {
207
207
  HelixPreviousEvent,
208
208
  HelixRangeChangeEvent,
209
209
  HelixReadEvent,
210
+ HelixReadingChangeEvent,
211
+ HelixReadingPressEvent,
210
212
  HelixReconnectEvent,
211
213
  HelixRejectEvent,
212
214
  HelixRelabelEvent,
@@ -1020,6 +1022,18 @@ scrolls a container instead of the window. Unset is the window. */
1020
1022
  textContent?: (string | number) | undefined;
1021
1023
  };
1022
1024
 
1025
+ /** `HelixHeadlessAreaChart` component event */
1026
+ export type HelixHeadlessAreaChartElementEvent<E = Event> = TypedEvent<
1027
+ HelixHeadlessAreaChart,
1028
+ E
1029
+ >;
1030
+ /** `helix-reading-change` event type */
1031
+ export type HelixHeadlessAreaChartHelixReadingChangeElementEvent =
1032
+ HelixHeadlessAreaChartElementEvent<HelixReadingChangeEvent>;
1033
+ /** `helix-reading-press` event type */
1034
+ export type HelixHeadlessAreaChartHelixReadingPressElementEvent =
1035
+ HelixHeadlessAreaChartElementEvent<HelixReadingPressEvent>;
1036
+
1023
1037
  export type HelixHeadlessAreaChartProps = {
1024
1038
  /** How a band's edge gets from one reading to the next.
1025
1039
 
@@ -1070,6 +1084,18 @@ locale, and `{shares}` each part's share, listed as the locale lists. */
1070
1084
  "total-label"?: (HelixHeadlessAreaChart["totalLabel"]) | undefined;
1071
1085
  /** The name for the sum of the parts, shown in the tooltip and the summary. */
1072
1086
  totalLabel?: (HelixHeadlessAreaChart["totalLabel"]) | undefined;
1087
+ /** Draws the scale's numbers beside the plot, the `axis` part, at the levels
1088
+ `gridlines` rules: amounts, or percentages under `share`.
1089
+
1090
+ Absent draws none: bands read as a composition need no numbers beside
1091
+ them, and the tooltip and the table hold every reading. */
1092
+ "value-axis"?: (HelixHeadlessAreaChart["valueAxis"]) | undefined;
1093
+ /** Draws the scale's numbers beside the plot, the `axis` part, at the levels
1094
+ `gridlines` rules: amounts, or percentages under `share`.
1095
+
1096
+ Absent draws none: bands read as a composition need no numbers beside
1097
+ them, and the tooltip and the table hold every reading. */
1098
+ valueAxis?: (HelixHeadlessAreaChart["valueAxis"]) | undefined;
1073
1099
  /** The id of the table to read.
1074
1100
 
1075
1101
  Names a table in the same tree, so a chart inside another component's
@@ -1106,6 +1132,15 @@ Set it to the words of the page's language, such as `{position} von
1106
1132
  {count}`, or to nothing to say no position. A slice or a series a
1107
1133
  legend hid is not counted. */
1108
1134
  positionLabel?: (HelixHeadlessAreaChart["positionLabel"]) | undefined;
1135
+
1136
+ /** The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it. */
1137
+ "onhelix-reading-change"?: ((
1138
+ e: HelixHeadlessAreaChartHelixReadingChangeElementEvent,
1139
+ ) => void) | undefined;
1140
+ /** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
1141
+ "onhelix-reading-press"?: ((
1142
+ e: HelixHeadlessAreaChartHelixReadingPressElementEvent,
1143
+ ) => void) | undefined;
1109
1144
  };
1110
1145
 
1111
1146
  export type HelixHeadlessAreaChartSolidJsProps = {
@@ -1158,6 +1193,18 @@ locale, and `{shares}` each part's share, listed as the locale lists. */
1158
1193
  "attr:total-label"?: (HelixHeadlessAreaChart["totalLabel"]) | undefined;
1159
1194
  /** The name for the sum of the parts, shown in the tooltip and the summary. */
1160
1195
  "prop:totalLabel"?: (HelixHeadlessAreaChart["totalLabel"]) | undefined;
1196
+ /** Draws the scale's numbers beside the plot, the `axis` part, at the levels
1197
+ `gridlines` rules: amounts, or percentages under `share`.
1198
+
1199
+ Absent draws none: bands read as a composition need no numbers beside
1200
+ them, and the tooltip and the table hold every reading. */
1201
+ "bool:value-axis"?: (HelixHeadlessAreaChart["valueAxis"]) | undefined;
1202
+ /** Draws the scale's numbers beside the plot, the `axis` part, at the levels
1203
+ `gridlines` rules: amounts, or percentages under `share`.
1204
+
1205
+ Absent draws none: bands read as a composition need no numbers beside
1206
+ them, and the tooltip and the table hold every reading. */
1207
+ "prop:valueAxis"?: (HelixHeadlessAreaChart["valueAxis"]) | undefined;
1161
1208
  /** The id of the table to read.
1162
1209
 
1163
1210
  Names a table in the same tree, so a chart inside another component's
@@ -1194,6 +1241,14 @@ Set it to the words of the page's language, such as `{position} von
1194
1241
  {count}`, or to nothing to say no position. A slice or a series a
1195
1242
  legend hid is not counted. */
1196
1243
  "prop:positionLabel"?: (HelixHeadlessAreaChart["positionLabel"]) | undefined;
1244
+ /** The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it. */
1245
+ "on:helix-reading-change"?: ((
1246
+ e: HelixHeadlessAreaChartHelixReadingChangeElementEvent,
1247
+ ) => void) | undefined;
1248
+ /** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
1249
+ "on:helix-reading-press"?: ((
1250
+ e: HelixHeadlessAreaChartHelixReadingPressElementEvent,
1251
+ ) => void) | undefined;
1197
1252
 
1198
1253
  /** Set the innerHTML of the element */
1199
1254
  innerHTML?: (string) | undefined;
@@ -1511,6 +1566,18 @@ is showing a count must not lose the count for being handed one. */
1511
1566
  textContent?: (string | number) | undefined;
1512
1567
  };
1513
1568
 
1569
+ /** `HelixHeadlessBarChart` component event */
1570
+ export type HelixHeadlessBarChartElementEvent<E = Event> = TypedEvent<
1571
+ HelixHeadlessBarChart,
1572
+ E
1573
+ >;
1574
+ /** `helix-reading-change` event type */
1575
+ export type HelixHeadlessBarChartHelixReadingChangeElementEvent =
1576
+ HelixHeadlessBarChartElementEvent<HelixReadingChangeEvent>;
1577
+ /** `helix-reading-press` event type */
1578
+ export type HelixHeadlessBarChartHelixReadingPressElementEvent =
1579
+ HelixHeadlessBarChartElementEvent<HelixReadingPressEvent>;
1580
+
1514
1581
  export type HelixHeadlessBarChartProps = {
1515
1582
  /** Which gridlines are drawn across the plot, if any.
1516
1583
 
@@ -1621,6 +1688,20 @@ the reading as the table writes it. */
1621
1688
  `{readings}` each series' highest reading: the series, the category and
1622
1689
  the reading as the table writes it. */
1623
1690
  summaryLabel?: (HelixHeadlessBarChart["summaryLabel"]) | undefined;
1691
+ /** Draws the numbers of the scale the bars are measured on, the `axis` part,
1692
+ at the levels `gridlines` rules: down the side of columns, and along the
1693
+ bottom of bars under `orientation="horizontal"`.
1694
+
1695
+ Absent draws none with one scale, since bars compared with each other need
1696
+ no numbers. With `secondary` both scales are drawn whatever this says. */
1697
+ "value-axis"?: (HelixHeadlessBarChart["valueAxis"]) | undefined;
1698
+ /** Draws the numbers of the scale the bars are measured on, the `axis` part,
1699
+ at the levels `gridlines` rules: down the side of columns, and along the
1700
+ bottom of bars under `orientation="horizontal"`.
1701
+
1702
+ Absent draws none with one scale, since bars compared with each other need
1703
+ no numbers. With `secondary` both scales are drawn whatever this says. */
1704
+ valueAxis?: (HelixHeadlessBarChart["valueAxis"]) | undefined;
1624
1705
  /** The id of the table to read.
1625
1706
 
1626
1707
  Names a table in the same tree, so a chart inside another component's
@@ -1657,6 +1738,15 @@ Set it to the words of the page's language, such as `{position} von
1657
1738
  {count}`, or to nothing to say no position. A slice or a series a
1658
1739
  legend hid is not counted. */
1659
1740
  positionLabel?: (HelixHeadlessBarChart["positionLabel"]) | undefined;
1741
+
1742
+ /** The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it. */
1743
+ "onhelix-reading-change"?: ((
1744
+ e: HelixHeadlessBarChartHelixReadingChangeElementEvent,
1745
+ ) => void) | undefined;
1746
+ /** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
1747
+ "onhelix-reading-press"?: ((
1748
+ e: HelixHeadlessBarChartHelixReadingPressElementEvent,
1749
+ ) => void) | undefined;
1660
1750
  };
1661
1751
 
1662
1752
  export type HelixHeadlessBarChartSolidJsProps = {
@@ -1769,6 +1859,20 @@ the reading as the table writes it. */
1769
1859
  `{readings}` each series' highest reading: the series, the category and
1770
1860
  the reading as the table writes it. */
1771
1861
  "prop:summaryLabel"?: (HelixHeadlessBarChart["summaryLabel"]) | undefined;
1862
+ /** Draws the numbers of the scale the bars are measured on, the `axis` part,
1863
+ at the levels `gridlines` rules: down the side of columns, and along the
1864
+ bottom of bars under `orientation="horizontal"`.
1865
+
1866
+ Absent draws none with one scale, since bars compared with each other need
1867
+ no numbers. With `secondary` both scales are drawn whatever this says. */
1868
+ "bool:value-axis"?: (HelixHeadlessBarChart["valueAxis"]) | undefined;
1869
+ /** Draws the numbers of the scale the bars are measured on, the `axis` part,
1870
+ at the levels `gridlines` rules: down the side of columns, and along the
1871
+ bottom of bars under `orientation="horizontal"`.
1872
+
1873
+ Absent draws none with one scale, since bars compared with each other need
1874
+ no numbers. With `secondary` both scales are drawn whatever this says. */
1875
+ "prop:valueAxis"?: (HelixHeadlessBarChart["valueAxis"]) | undefined;
1772
1876
  /** The id of the table to read.
1773
1877
 
1774
1878
  Names a table in the same tree, so a chart inside another component's
@@ -1805,6 +1909,14 @@ Set it to the words of the page's language, such as `{position} von
1805
1909
  {count}`, or to nothing to say no position. A slice or a series a
1806
1910
  legend hid is not counted. */
1807
1911
  "prop:positionLabel"?: (HelixHeadlessBarChart["positionLabel"]) | undefined;
1912
+ /** The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it. */
1913
+ "on:helix-reading-change"?: ((
1914
+ e: HelixHeadlessBarChartHelixReadingChangeElementEvent,
1915
+ ) => void) | undefined;
1916
+ /** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
1917
+ "on:helix-reading-press"?: ((
1918
+ e: HelixHeadlessBarChartHelixReadingPressElementEvent,
1919
+ ) => void) | undefined;
1808
1920
 
1809
1921
  /** Set the innerHTML of the element */
1810
1922
  innerHTML?: (string) | undefined;
@@ -2477,6 +2589,22 @@ export type HelixHeadlessCalloutHelixDismissElementEvent =
2477
2589
  HelixHeadlessCalloutElementEvent<HelixDismissEvent>;
2478
2590
 
2479
2591
  export type HelixHeadlessCalloutProps = {
2592
+ /** The dismiss button's name, read by screen readers, with `{label}` for
2593
+ what the callout is called: its heading, or the tone's name where it has
2594
+ none.
2595
+
2596
+ "Dismiss Scheduled maintenance" says which of several callouts the button
2597
+ takes away, where every button was "Dismiss". A label without `{label}` is
2598
+ read as written. */
2599
+ "dismiss-label"?: (HelixHeadlessCallout["dismissLabel"]) | undefined;
2600
+ /** The dismiss button's name, read by screen readers, with `{label}` for
2601
+ what the callout is called: its heading, or the tone's name where it has
2602
+ none.
2603
+
2604
+ "Dismiss Scheduled maintenance" says which of several callouts the button
2605
+ takes away, where every button was "Dismiss". A label without `{label}` is
2606
+ read as written. */
2607
+ dismissLabel?: (HelixHeadlessCallout["dismissLabel"]) | undefined;
2480
2608
  /** What kind of attention the passage needs.
2481
2609
 
2482
2610
  `tone` is the axis for what a thing means, and this is a subset of it: a
@@ -2510,34 +2638,28 @@ out keeps its English, and `tone-label` wins over both.
2510
2638
  toneLabels?: (HelixHeadlessCallout["toneLabels"]) | undefined;
2511
2639
  /** Whether the element shows a control that dismisses it. */
2512
2640
  dismissible?: (HelixHeadlessCallout["dismissible"]) | undefined;
2513
- /** The dismiss control's label, read by screen readers.
2514
-
2515
- `attribute` is spelled out because Lit lowercases a property name to
2516
- derive one rather than dash-casing it, so this would otherwise be
2517
- reachable only as `dismisslabel`, which nobody would guess and no linter
2518
- would catch.
2519
-
2520
- A word property: register it for a locale under the host's key. A family
2521
- that names the control otherwise, such as Tag's `Remove {label}`,
2522
- declares its own English with `@words` above the override. */
2523
- "dismiss-label"?: (HelixHeadlessCallout["dismissLabel"]) | undefined;
2524
- /** The dismiss control's label, read by screen readers.
2525
-
2526
- `attribute` is spelled out because Lit lowercases a property name to
2527
- derive one rather than dash-casing it, so this would otherwise be
2528
- reachable only as `dismisslabel`, which nobody would guess and no linter
2529
- would catch.
2530
-
2531
- A word property: register it for a locale under the host's key. A family
2532
- that names the control otherwise, such as Tag's `Remove {label}`,
2533
- declares its own English with `@words` above the override. */
2534
- dismissLabel?: (HelixHeadlessCallout["dismissLabel"]) | undefined;
2535
2641
 
2536
2642
  /** The dismiss button was pressed. The callout does not remove itself, so remove it in response. Cancelable. */
2537
2643
  "onhelix-dismiss"?: ((e: HelixHeadlessCalloutHelixDismissElementEvent) => void) | undefined;
2538
2644
  };
2539
2645
 
2540
2646
  export type HelixHeadlessCalloutSolidJsProps = {
2647
+ /** The dismiss button's name, read by screen readers, with `{label}` for
2648
+ what the callout is called: its heading, or the tone's name where it has
2649
+ none.
2650
+
2651
+ "Dismiss Scheduled maintenance" says which of several callouts the button
2652
+ takes away, where every button was "Dismiss". A label without `{label}` is
2653
+ read as written. */
2654
+ "attr:dismiss-label"?: (HelixHeadlessCallout["dismissLabel"]) | undefined;
2655
+ /** The dismiss button's name, read by screen readers, with `{label}` for
2656
+ what the callout is called: its heading, or the tone's name where it has
2657
+ none.
2658
+
2659
+ "Dismiss Scheduled maintenance" says which of several callouts the button
2660
+ takes away, where every button was "Dismiss". A label without `{label}` is
2661
+ read as written. */
2662
+ "prop:dismissLabel"?: (HelixHeadlessCallout["dismissLabel"]) | undefined;
2541
2663
  /** What kind of attention the passage needs.
2542
2664
 
2543
2665
  `tone` is the axis for what a thing means, and this is a subset of it: a
@@ -2571,28 +2693,6 @@ out keeps its English, and `tone-label` wins over both.
2571
2693
  "prop:toneLabels"?: (HelixHeadlessCallout["toneLabels"]) | undefined;
2572
2694
  /** Whether the element shows a control that dismisses it. */
2573
2695
  "prop:dismissible"?: (HelixHeadlessCallout["dismissible"]) | undefined;
2574
- /** The dismiss control's label, read by screen readers.
2575
-
2576
- `attribute` is spelled out because Lit lowercases a property name to
2577
- derive one rather than dash-casing it, so this would otherwise be
2578
- reachable only as `dismisslabel`, which nobody would guess and no linter
2579
- would catch.
2580
-
2581
- A word property: register it for a locale under the host's key. A family
2582
- that names the control otherwise, such as Tag's `Remove {label}`,
2583
- declares its own English with `@words` above the override. */
2584
- "attr:dismiss-label"?: (HelixHeadlessCallout["dismissLabel"]) | undefined;
2585
- /** The dismiss control's label, read by screen readers.
2586
-
2587
- `attribute` is spelled out because Lit lowercases a property name to
2588
- derive one rather than dash-casing it, so this would otherwise be
2589
- reachable only as `dismisslabel`, which nobody would guess and no linter
2590
- would catch.
2591
-
2592
- A word property: register it for a locale under the host's key. A family
2593
- that names the control otherwise, such as Tag's `Remove {label}`,
2594
- declares its own English with `@words` above the override. */
2595
- "prop:dismissLabel"?: (HelixHeadlessCallout["dismissLabel"]) | undefined;
2596
2696
  /** The dismiss button was pressed. The callout does not remove itself, so remove it in response. Cancelable. */
2597
2697
  "on:helix-dismiss"?: ((
2598
2698
  e: HelixHeadlessCalloutHelixDismissElementEvent,
@@ -4437,8 +4537,21 @@ export type HelixHeadlessChatComposerHelixTypingElementEvent =
4437
4537
  export type HelixHeadlessChatComposerProps = {
4438
4538
  /** The field's name, read by screen readers. */
4439
4539
  label?: (HelixHeadlessChatComposer["label"]) | undefined;
4540
+ /** The most characters a draft can have. The field stops taking more. */
4541
+ maxlength?: (HelixHeadlessChatComposer["maxLength"] | `${number}`) | undefined;
4542
+ /** The most characters a draft can have. The field stops taking more. */
4543
+ maxLength?: (HelixHeadlessChatComposer["maxLength"]) | undefined;
4544
+ /** The fewest characters a draft can have, once the reader has written in
4545
+ the field, as on a `<textarea>`. */
4546
+ minlength?: (HelixHeadlessChatComposer["minLength"] | `${number}`) | undefined;
4547
+ /** The fewest characters a draft can have, once the reader has written in
4548
+ the field, as on a `<textarea>`. */
4549
+ minLength?: (HelixHeadlessChatComposer["minLength"]) | undefined;
4440
4550
  /** Placeholder text shown in an empty field. */
4441
4551
  placeholder?: (HelixHeadlessChatComposer["placeholder"]) | undefined;
4552
+ /** Whether the form needs a draft to submit. An empty draft never sends,
4553
+ required or not. */
4554
+ required?: (HelixHeadlessChatComposer["required"]) | undefined;
4442
4555
  /** How many rows the field opens at.
4443
4556
 
4444
4557
  It grows from there. */
@@ -4512,8 +4625,21 @@ Here rather than on each control. */
4512
4625
  export type HelixHeadlessChatComposerSolidJsProps = {
4513
4626
  /** The field's name, read by screen readers. */
4514
4627
  "prop:label"?: (HelixHeadlessChatComposer["label"]) | undefined;
4628
+ /** The most characters a draft can have. The field stops taking more. */
4629
+ "attr:maxlength"?: (HelixHeadlessChatComposer["maxLength"] | `${number}`) | undefined;
4630
+ /** The most characters a draft can have. The field stops taking more. */
4631
+ "prop:maxLength"?: (HelixHeadlessChatComposer["maxLength"]) | undefined;
4632
+ /** The fewest characters a draft can have, once the reader has written in
4633
+ the field, as on a `<textarea>`. */
4634
+ "attr:minlength"?: (HelixHeadlessChatComposer["minLength"] | `${number}`) | undefined;
4635
+ /** The fewest characters a draft can have, once the reader has written in
4636
+ the field, as on a `<textarea>`. */
4637
+ "prop:minLength"?: (HelixHeadlessChatComposer["minLength"]) | undefined;
4515
4638
  /** Placeholder text shown in an empty field. */
4516
4639
  "prop:placeholder"?: (HelixHeadlessChatComposer["placeholder"]) | undefined;
4640
+ /** Whether the form needs a draft to submit. An empty draft never sends,
4641
+ required or not. */
4642
+ "prop:required"?: (HelixHeadlessChatComposer["required"]) | undefined;
4517
4643
  /** How many rows the field opens at.
4518
4644
 
4519
4645
  It grows from there. */
@@ -8419,6 +8545,20 @@ rows are chosen, written in the locale, and a language that needs plural
8419
8545
  forms writes them: `{count, plural, one {# wybrany} few {# wybrane} many
8420
8546
  {# wybranych} other {# wybranego}}`. */
8421
8547
  selectedLabel?: (HelixHeadlessDataTable["selectedLabel"]) | undefined;
8548
+ /** What a key or a press on a row does to the rows already selected, in a
8549
+ `selectable` table. `toggle`, the default, keeps them: Space adds or takes
8550
+ out the row. `replace` selects the row alone, as a file list does: Down and
8551
+ Up carry the selection with them, and a press on a row selects it. Control
8552
+ or Command with a press or Space adds or takes out one row, and with a move
8553
+ goes without selecting. The checkboxes add or take out one row either way. */
8554
+ "selection-behavior"?: (HelixHeadlessDataTable["selectionBehavior"]) | undefined;
8555
+ /** What a key or a press on a row does to the rows already selected, in a
8556
+ `selectable` table. `toggle`, the default, keeps them: Space adds or takes
8557
+ out the row. `replace` selects the row alone, as a file list does: Down and
8558
+ Up carry the selection with them, and a press on a row selects it. Control
8559
+ or Command with a press or Space adds or takes out one row, and with a move
8560
+ goes without selecting. The checkboxes add or take out one row either way. */
8561
+ selectionBehavior?: (HelixHeadlessDataTable["selectionBehavior"]) | undefined;
8422
8562
  /** The name of a row's checkbox. `{row}` is replaced with the row's value in
8423
8563
  the first column that has a field, or with its key. */
8424
8564
  "select-row-label"?: (HelixHeadlessDataTable["selectRowLabel"]) | undefined;
@@ -8818,6 +8958,20 @@ rows are chosen, written in the locale, and a language that needs plural
8818
8958
  forms writes them: `{count, plural, one {# wybrany} few {# wybrane} many
8819
8959
  {# wybranych} other {# wybranego}}`. */
8820
8960
  "prop:selectedLabel"?: (HelixHeadlessDataTable["selectedLabel"]) | undefined;
8961
+ /** What a key or a press on a row does to the rows already selected, in a
8962
+ `selectable` table. `toggle`, the default, keeps them: Space adds or takes
8963
+ out the row. `replace` selects the row alone, as a file list does: Down and
8964
+ Up carry the selection with them, and a press on a row selects it. Control
8965
+ or Command with a press or Space adds or takes out one row, and with a move
8966
+ goes without selecting. The checkboxes add or take out one row either way. */
8967
+ "attr:selection-behavior"?: (HelixHeadlessDataTable["selectionBehavior"]) | undefined;
8968
+ /** What a key or a press on a row does to the rows already selected, in a
8969
+ `selectable` table. `toggle`, the default, keeps them: Space adds or takes
8970
+ out the row. `replace` selects the row alone, as a file list does: Down and
8971
+ Up carry the selection with them, and a press on a row selects it. Control
8972
+ or Command with a press or Space adds or takes out one row, and with a move
8973
+ goes without selecting. The checkboxes add or take out one row either way. */
8974
+ "prop:selectionBehavior"?: (HelixHeadlessDataTable["selectionBehavior"]) | undefined;
8821
8975
  /** The name of a row's checkbox. `{row}` is replaced with the row's value in
8822
8976
  the first column that has a field, or with its key. */
8823
8977
  "attr:select-row-label"?: (HelixHeadlessDataTable["selectRowLabel"]) | undefined;
@@ -10799,11 +10953,7 @@ survives to it and a consumer reading one back gets what they wrote. */
10799
10953
 
10800
10954
  export type HelixHeadlessDividerProps = {
10801
10955
  /** Whether screen readers announce the line as a separator, which they now do
10802
- by default.
10803
-
10804
- It dates from when the line was decorative by default. It is still read,
10805
- and it wins over `decorative`, so a divider written with it stays a
10806
- separator. */
10956
+ by default. */
10807
10957
  announced?: (HelixHeadlessDivider["announced"]) | undefined;
10808
10958
  /** Takes the line out of the accessibility tree, for a rule that separates
10809
10959
  nothing: one under a heading, or between the facts of a byline.
@@ -10820,11 +10970,7 @@ Unset is horizontal, or across the toolbar the divider sits in. */
10820
10970
 
10821
10971
  export type HelixHeadlessDividerSolidJsProps = {
10822
10972
  /** Whether screen readers announce the line as a separator, which they now do
10823
- by default.
10824
-
10825
- It dates from when the line was decorative by default. It is still read,
10826
- and it wins over `decorative`, so a divider written with it stays a
10827
- separator. */
10973
+ by default. */
10828
10974
  "prop:announced"?: (HelixHeadlessDivider["announced"]) | undefined;
10829
10975
  /** Takes the line out of the accessibility tree, for a rule that separates
10830
10976
  nothing: one under a heading, or between the facts of a byline.
@@ -15683,6 +15829,18 @@ the resolved state for stylesheets, which is what the mirror is for. */
15683
15829
  textContent?: (string | number) | undefined;
15684
15830
  };
15685
15831
 
15832
+ /** `HelixHeadlessLineChart` component event */
15833
+ export type HelixHeadlessLineChartElementEvent<E = Event> = TypedEvent<
15834
+ HelixHeadlessLineChart,
15835
+ E
15836
+ >;
15837
+ /** `helix-reading-change` event type */
15838
+ export type HelixHeadlessLineChartHelixReadingChangeElementEvent =
15839
+ HelixHeadlessLineChartElementEvent<HelixReadingChangeEvent>;
15840
+ /** `helix-reading-press` event type */
15841
+ export type HelixHeadlessLineChartHelixReadingPressElementEvent =
15842
+ HelixHeadlessLineChartElementEvent<HelixReadingPressEvent>;
15843
+
15686
15844
  export type HelixHeadlessLineChartProps = {
15687
15845
  /** Draws a wash under each line, down to the floor of the plot. The washes
15688
15846
  overlap and do not add up, so for parts that make a total, use
@@ -15784,6 +15942,20 @@ masked with one disc per series and every stroke stops at its own ring's
15784
15942
  inner edge. `mask-composite: intersect` is what makes N holes out of N
15785
15943
  layers; a single `mask-image` would only ever cut the last one. */
15786
15944
  terminus?: (HelixHeadlessLineChart["terminus"]) | undefined;
15945
+ /** Draws the scale's numbers beside the plot, the `axis` part, at the levels
15946
+ `gridlines` rules, so a reading can be measured off the drawing as well
15947
+ as read from the tooltip.
15948
+
15949
+ Absent draws none: a line read for its shape needs no numbers beside it,
15950
+ and the tooltip and the table hold every reading. */
15951
+ "value-axis"?: (HelixHeadlessLineChart["valueAxis"]) | undefined;
15952
+ /** Draws the scale's numbers beside the plot, the `axis` part, at the levels
15953
+ `gridlines` rules, so a reading can be measured off the drawing as well
15954
+ as read from the tooltip.
15955
+
15956
+ Absent draws none: a line read for its shape needs no numbers beside it,
15957
+ and the tooltip and the table hold every reading. */
15958
+ valueAxis?: (HelixHeadlessLineChart["valueAxis"]) | undefined;
15787
15959
  /** Whether the range always includes zero.
15788
15960
 
15789
15961
  Absent measures from the data's own extent, which is what a line is for.
@@ -15827,6 +15999,15 @@ Set it to the words of the page's language, such as `{position} von
15827
15999
  {count}`, or to nothing to say no position. A slice or a series a
15828
16000
  legend hid is not counted. */
15829
16001
  positionLabel?: (HelixHeadlessLineChart["positionLabel"]) | undefined;
16002
+
16003
+ /** The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it. */
16004
+ "onhelix-reading-change"?: ((
16005
+ e: HelixHeadlessLineChartHelixReadingChangeElementEvent,
16006
+ ) => void) | undefined;
16007
+ /** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
16008
+ "onhelix-reading-press"?: ((
16009
+ e: HelixHeadlessLineChartHelixReadingPressElementEvent,
16010
+ ) => void) | undefined;
15830
16011
  };
15831
16012
 
15832
16013
  export type HelixHeadlessLineChartSolidJsProps = {
@@ -15930,6 +16111,20 @@ masked with one disc per series and every stroke stops at its own ring's
15930
16111
  inner edge. `mask-composite: intersect` is what makes N holes out of N
15931
16112
  layers; a single `mask-image` would only ever cut the last one. */
15932
16113
  "prop:terminus"?: (HelixHeadlessLineChart["terminus"]) | undefined;
16114
+ /** Draws the scale's numbers beside the plot, the `axis` part, at the levels
16115
+ `gridlines` rules, so a reading can be measured off the drawing as well
16116
+ as read from the tooltip.
16117
+
16118
+ Absent draws none: a line read for its shape needs no numbers beside it,
16119
+ and the tooltip and the table hold every reading. */
16120
+ "bool:value-axis"?: (HelixHeadlessLineChart["valueAxis"]) | undefined;
16121
+ /** Draws the scale's numbers beside the plot, the `axis` part, at the levels
16122
+ `gridlines` rules, so a reading can be measured off the drawing as well
16123
+ as read from the tooltip.
16124
+
16125
+ Absent draws none: a line read for its shape needs no numbers beside it,
16126
+ and the tooltip and the table hold every reading. */
16127
+ "prop:valueAxis"?: (HelixHeadlessLineChart["valueAxis"]) | undefined;
15933
16128
  /** Whether the range always includes zero.
15934
16129
 
15935
16130
  Absent measures from the data's own extent, which is what a line is for.
@@ -15973,6 +16168,14 @@ Set it to the words of the page's language, such as `{position} von
15973
16168
  {count}`, or to nothing to say no position. A slice or a series a
15974
16169
  legend hid is not counted. */
15975
16170
  "prop:positionLabel"?: (HelixHeadlessLineChart["positionLabel"]) | undefined;
16171
+ /** The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it. */
16172
+ "on:helix-reading-change"?: ((
16173
+ e: HelixHeadlessLineChartHelixReadingChangeElementEvent,
16174
+ ) => void) | undefined;
16175
+ /** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
16176
+ "on:helix-reading-press"?: ((
16177
+ e: HelixHeadlessLineChartHelixReadingPressElementEvent,
16178
+ ) => void) | undefined;
15976
16179
 
15977
16180
  /** Set the innerHTML of the element */
15978
16181
  innerHTML?: (string) | undefined;
@@ -20693,14 +20896,10 @@ between them makes a reader parse the punctuation to find where the name
20693
20896
  ends. Matching still reads the label, so what somebody types is matched
20694
20897
  against the name rather than against prose about it.
20695
20898
 
20696
- **A property and not a slot, which is the departure worth explaining.** The
20697
- area rules say a content property is its slot's fallback, and that holds for
20698
- a region always drawn: `Avatar`'s initials, `Tooltip`'s text. This one is
20699
- usually absent, and a wrapped slot generates a box whether or not it is
20700
- filled, so every option without a caption would carry an empty line. The
20701
- detection that would avoid it does not exist, `:host(:has())` being invalid
20702
- and the server having no children to inspect. A property is known at render
20703
- time, so the component can decline to draw the box at all.
20899
+ For a caption richer than a string, slot it into `description`. The
20900
+ property is that slot's fallback inside the `description` part. With no
20901
+ property the slot is drawn bare, which takes no box while it is empty, so
20902
+ an option without a caption carries no empty line.
20704
20903
 
20705
20904
  It does not reflect, per the rule that payload state stays off the host: a
20706
20905
  string is not a fact a selector needs. */
@@ -20788,6 +20987,13 @@ name is the fault `TreeItem` avoids by mirroring to `data-selected`.
20788
20987
  Splitting them means moving what every stylesheet selects on, which is a
20789
20988
  change of its own rather than a property being added. */
20790
20989
  defaultSelected?: (HelixHeadlessOption["defaultSelected"]) | undefined;
20990
+ /** Whether the option says it is selected while the keyboard is on it.
20991
+
20992
+ Written by a control whose list holds suggestions, such as `FilterInput`:
20993
+ nothing there stays chosen, so the row the keyboard is on is the
20994
+ selection, as the APG combobox's list with selection that follows focus
20995
+ says. No attribute: it is coordination between elements. */
20996
+ selectionFollowsActive?: (HelixHeadlessOption["selectionFollowsActive"]) | undefined;
20791
20997
 
20792
20998
  /** The option was chosen. Cancelable: canceling it leaves the selection as it was, and keeps the browser from following an option's `href`. */
20793
20999
  "onhelix-select"?: ((e: HelixHeadlessOptionHelixSelectElementEvent) => void) | undefined;
@@ -20850,14 +21056,10 @@ between them makes a reader parse the punctuation to find where the name
20850
21056
  ends. Matching still reads the label, so what somebody types is matched
20851
21057
  against the name rather than against prose about it.
20852
21058
 
20853
- **A property and not a slot, which is the departure worth explaining.** The
20854
- area rules say a content property is its slot's fallback, and that holds for
20855
- a region always drawn: `Avatar`'s initials, `Tooltip`'s text. This one is
20856
- usually absent, and a wrapped slot generates a box whether or not it is
20857
- filled, so every option without a caption would carry an empty line. The
20858
- detection that would avoid it does not exist, `:host(:has())` being invalid
20859
- and the server having no children to inspect. A property is known at render
20860
- time, so the component can decline to draw the box at all.
21059
+ For a caption richer than a string, slot it into `description`. The
21060
+ property is that slot's fallback inside the `description` part. With no
21061
+ property the slot is drawn bare, which takes no box while it is empty, so
21062
+ an option without a caption carries no empty line.
20861
21063
 
20862
21064
  It does not reflect, per the rule that payload state stays off the host: a
20863
21065
  string is not a fact a selector needs. */
@@ -20945,6 +21147,13 @@ name is the fault `TreeItem` avoids by mirroring to `data-selected`.
20945
21147
  Splitting them means moving what every stylesheet selects on, which is a
20946
21148
  change of its own rather than a property being added. */
20947
21149
  "prop:defaultSelected"?: (HelixHeadlessOption["defaultSelected"]) | undefined;
21150
+ /** Whether the option says it is selected while the keyboard is on it.
21151
+
21152
+ Written by a control whose list holds suggestions, such as `FilterInput`:
21153
+ nothing there stays chosen, so the row the keyboard is on is the
21154
+ selection, as the APG combobox's list with selection that follows focus
21155
+ says. No attribute: it is coordination between elements. */
21156
+ "prop:selectionFollowsActive"?: (HelixHeadlessOption["selectionFollowsActive"]) | undefined;
20948
21157
  /** The option was chosen. Cancelable: canceling it leaves the selection as it was, and keeps the browser from following an option's `href`. */
20949
21158
  "on:helix-select"?: ((e: HelixHeadlessOptionHelixSelectElementEvent) => void) | undefined;
20950
21159
 
@@ -23227,6 +23436,18 @@ form would submit it. */
23227
23436
  textContent?: (string | number) | undefined;
23228
23437
  };
23229
23438
 
23439
+ /** `HelixHeadlessScatterChart` component event */
23440
+ export type HelixHeadlessScatterChartElementEvent<E = Event> = TypedEvent<
23441
+ HelixHeadlessScatterChart,
23442
+ E
23443
+ >;
23444
+ /** `helix-reading-change` event type */
23445
+ export type HelixHeadlessScatterChartHelixReadingChangeElementEvent =
23446
+ HelixHeadlessScatterChartElementEvent<HelixReadingChangeEvent>;
23447
+ /** `helix-reading-press` event type */
23448
+ export type HelixHeadlessScatterChartHelixReadingPressElementEvent =
23449
+ HelixHeadlessScatterChartElementEvent<HelixReadingPressEvent>;
23450
+
23230
23451
  export type HelixHeadlessScatterChartProps = {
23231
23452
  /** The word for the strength of the relation, `{correlationLabel}` in
23232
23453
  `series-label`. */
@@ -23323,6 +23544,15 @@ Set it to the words of the page's language, such as `{position} von
23323
23544
  {count}`, or to nothing to say no position. A slice or a series a
23324
23545
  legend hid is not counted. */
23325
23546
  positionLabel?: (HelixHeadlessScatterChart["positionLabel"]) | undefined;
23547
+
23548
+ /** The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it. */
23549
+ "onhelix-reading-change"?: ((
23550
+ e: HelixHeadlessScatterChartHelixReadingChangeElementEvent,
23551
+ ) => void) | undefined;
23552
+ /** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
23553
+ "onhelix-reading-press"?: ((
23554
+ e: HelixHeadlessScatterChartHelixReadingPressElementEvent,
23555
+ ) => void) | undefined;
23326
23556
  };
23327
23557
 
23328
23558
  export type HelixHeadlessScatterChartSolidJsProps = {
@@ -23421,6 +23651,14 @@ Set it to the words of the page's language, such as `{position} von
23421
23651
  {count}`, or to nothing to say no position. A slice or a series a
23422
23652
  legend hid is not counted. */
23423
23653
  "prop:positionLabel"?: (HelixHeadlessScatterChart["positionLabel"]) | undefined;
23654
+ /** The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it. */
23655
+ "on:helix-reading-change"?: ((
23656
+ e: HelixHeadlessScatterChartHelixReadingChangeElementEvent,
23657
+ ) => void) | undefined;
23658
+ /** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
23659
+ "on:helix-reading-press"?: ((
23660
+ e: HelixHeadlessScatterChartHelixReadingPressElementEvent,
23661
+ ) => void) | undefined;
23424
23662
 
23425
23663
  /** Set the innerHTML of the element */
23426
23664
  innerHTML?: (string) | undefined;
@@ -26553,6 +26791,13 @@ say that without the component knowing what a row looks like. */
26553
26791
  };
26554
26792
 
26555
26793
  export type HelixHeadlessTableRowProps = {
26794
+ /** Takes the row out of the table's selection and out of its link: the row's
26795
+ checkbox is disabled, Space, Shift ranges, and the checkbox in the heading
26796
+ pass over it, and a press does not follow `href`. A row already selected
26797
+ stays selected. A screen reader hears it as unavailable, and in a `grid`
26798
+ table the arrow keys still reach it, as a disabled cell in a grid is
26799
+ reached. */
26800
+ disabled?: (HelixHeadlessTableRow["disabled"]) | undefined;
26556
26801
  /** The URL a press on the row follows, which makes the whole row a link.
26557
26802
  Empty, the default, leaves presses to the row's cells. */
26558
26803
  href?: (HelixHeadlessTableRow["href"]) | undefined;
@@ -26566,6 +26811,13 @@ known by its place among the rows as written. */
26566
26811
  };
26567
26812
 
26568
26813
  export type HelixHeadlessTableRowSolidJsProps = {
26814
+ /** Takes the row out of the table's selection and out of its link: the row's
26815
+ checkbox is disabled, Space, Shift ranges, and the checkbox in the heading
26816
+ pass over it, and a press does not follow `href`. A row already selected
26817
+ stays selected. A screen reader hears it as unavailable, and in a `grid`
26818
+ table the arrow keys still reach it, as a disabled cell in a grid is
26819
+ reached. */
26820
+ "prop:disabled"?: (HelixHeadlessTableRow["disabled"]) | undefined;
26569
26821
  /** The URL a press on the row follows, which makes the whole row a link.
26570
26822
  Empty, the default, leaves presses to the row's cells. */
26571
26823
  "prop:href"?: (HelixHeadlessTableRow["href"]) | undefined;
@@ -26968,6 +27220,13 @@ Absent is the tag's own words, its category first. */
26968
27220
  value?: (HelixHeadlessTag["value"]) | undefined;
26969
27221
  /** Whether the element shows a control that dismisses it. */
26970
27222
  dismissible?: (HelixHeadlessTag["dismissible"]) | undefined;
27223
+ /** Whether the remove button is a tab stop of its own, outside a `Tag.Group`.
27224
+
27225
+ A field that holds tags as its tokens, such as a `multiple` Combobox,
27226
+ writes `false`: the field's text is its one tab stop, and the arrow keys
27227
+ move from the text to the tags. No attribute: it is coordination between
27228
+ elements, as `focusable` is. */
27229
+ dismissTabStop?: (HelixHeadlessTag["dismissTabStop"]) | undefined;
26971
27230
  /** Whether the tag holds its group's tab stop.
26972
27231
 
26973
27232
  Written by `Tag.Group` on every tag it holds, and unset outside one, which
@@ -27012,6 +27271,13 @@ Absent is the tag's own words, its category first. */
27012
27271
  "prop:value"?: (HelixHeadlessTag["value"]) | undefined;
27013
27272
  /** Whether the element shows a control that dismisses it. */
27014
27273
  "prop:dismissible"?: (HelixHeadlessTag["dismissible"]) | undefined;
27274
+ /** Whether the remove button is a tab stop of its own, outside a `Tag.Group`.
27275
+
27276
+ A field that holds tags as its tokens, such as a `multiple` Combobox,
27277
+ writes `false`: the field's text is its one tab stop, and the arrow keys
27278
+ move from the text to the tags. No attribute: it is coordination between
27279
+ elements, as `focusable` is. */
27280
+ "prop:dismissTabStop"?: (HelixHeadlessTag["dismissTabStop"]) | undefined;
27015
27281
  /** Whether the tag holds its group's tab stop.
27016
27282
 
27017
27283
  Written by `Tag.Group` on every tag it holds, and unset outside one, which
@@ -29400,8 +29666,8 @@ name is the fault `TreeItem` avoids by mirroring to `data-selected`.
29400
29666
  Splitting them means moving what every stylesheet selects on, which is a
29401
29667
  change of its own rather than a property being added. */
29402
29668
  defaultSelected?: (HelixHeadlessToggle["defaultSelected"]) | undefined;
29403
- /** Whether the item holds the group's tab stop. Unset, the chosen item holds
29404
- it.
29669
+ /** Whether the item holds the group's tab stop. Unset, no group holds the
29670
+ item, and it is a toggle button with a tab stop of its own.
29405
29671
 
29406
29672
  Written by the group on every item: `true` for the chosen item, or for the
29407
29673
  first item that can be chosen while there is no selection to carry the
@@ -29416,6 +29682,8 @@ React consumer's hydration reports and does not patch up. */
29416
29682
  Written by the group, like `selected`, so no attribute. */
29417
29683
  pressed?: (HelixHeadlessToggle["pressed"]) | undefined;
29418
29684
 
29685
+ /** Fired after a toggle button on its own is pressed or released. */
29686
+ onchange?: ((e: HelixHeadlessToggleElementEvent) => void) | undefined;
29419
29687
  /** Fired when the item is chosen. Cancelable: call `preventDefault()` to keep the current choice. */
29420
29688
  "onhelix-select"?: ((e: HelixHeadlessToggleHelixSelectElementEvent) => void) | undefined;
29421
29689
  };
@@ -29458,8 +29726,8 @@ name is the fault `TreeItem` avoids by mirroring to `data-selected`.
29458
29726
  Splitting them means moving what every stylesheet selects on, which is a
29459
29727
  change of its own rather than a property being added. */
29460
29728
  "prop:defaultSelected"?: (HelixHeadlessToggle["defaultSelected"]) | undefined;
29461
- /** Whether the item holds the group's tab stop. Unset, the chosen item holds
29462
- it.
29729
+ /** Whether the item holds the group's tab stop. Unset, no group holds the
29730
+ item, and it is a toggle button with a tab stop of its own.
29463
29731
 
29464
29732
  Written by the group on every item: `true` for the chosen item, or for the
29465
29733
  first item that can be chosen while there is no selection to carry the
@@ -29473,6 +29741,8 @@ React consumer's hydration reports and does not patch up. */
29473
29741
 
29474
29742
  Written by the group, like `selected`, so no attribute. */
29475
29743
  "prop:pressed"?: (HelixHeadlessToggle["pressed"]) | undefined;
29744
+ /** Fired after a toggle button on its own is pressed or released. */
29745
+ "on:change"?: ((e: HelixHeadlessToggleElementEvent) => void) | undefined;
29476
29746
  /** Fired when the item is chosen. Cancelable: call `preventDefault()` to keep the current choice. */
29477
29747
  "on:helix-select"?: ((e: HelixHeadlessToggleHelixSelectElementEvent) => void) | undefined;
29478
29748
 
@@ -31280,6 +31550,14 @@ regardless, because a reader who stopped it is deciding what to do next. */
31280
31550
  loadingLabel?: (HelixHeadlessVideo["loadingLabel"]) | undefined;
31281
31551
  /** Whether the video starts again at the end. */
31282
31552
  loop?: (HelixHeadlessVideo["loop"]) | undefined;
31553
+ /** The title the device's own media controls show while the video plays,
31554
+ such as on a lock screen. Empty, the default, shows `label`. A playlist
31555
+ writes the current entry's name here. */
31556
+ "media-title"?: (HelixHeadlessVideo["mediaTitle"]) | undefined;
31557
+ /** The title the device's own media controls show while the video plays,
31558
+ such as on a lock screen. Empty, the default, shows `label`. A playlist
31559
+ writes the current entry's name here. */
31560
+ mediaTitle?: (HelixHeadlessVideo["mediaTitle"]) | undefined;
31283
31561
  /** What the button that opens `overflow-controls` is called. */
31284
31562
  "more-label"?: (HelixHeadlessVideo["moreLabel"]) | undefined;
31285
31563
  /** What the button that opens `overflow-controls` is called. */
@@ -31709,6 +31987,14 @@ regardless, because a reader who stopped it is deciding what to do next. */
31709
31987
  "prop:loadingLabel"?: (HelixHeadlessVideo["loadingLabel"]) | undefined;
31710
31988
  /** Whether the video starts again at the end. */
31711
31989
  "prop:loop"?: (HelixHeadlessVideo["loop"]) | undefined;
31990
+ /** The title the device's own media controls show while the video plays,
31991
+ such as on a lock screen. Empty, the default, shows `label`. A playlist
31992
+ writes the current entry's name here. */
31993
+ "attr:media-title"?: (HelixHeadlessVideo["mediaTitle"]) | undefined;
31994
+ /** The title the device's own media controls show while the video plays,
31995
+ such as on a lock screen. Empty, the default, shows `label`. A playlist
31996
+ writes the current entry's name here. */
31997
+ "prop:mediaTitle"?: (HelixHeadlessVideo["mediaTitle"]) | undefined;
31712
31998
  /** What the button that opens `overflow-controls` is called. */
31713
31999
  "attr:more-label"?: (HelixHeadlessVideo["moreLabel"]) | undefined;
31714
32000
  /** What the button that opens `overflow-controls` is called. */
@@ -31971,6 +32257,12 @@ export type HelixHeadlessVirtualListProps = {
31971
32257
  items out as a grid of that many equal columns, windowed a line at a
31972
32258
  time, with Left and Right moving along a line. */
31973
32259
  columns?: (HelixHeadlessVirtualList["columns"]) | undefined;
32260
+ /** The text of the row shown when there are no items and none are loading,
32261
+ where the `empty` slot is empty. Empty, the default, shows no row. */
32262
+ "empty-label"?: (HelixHeadlessVirtualList["emptyLabel"]) | undefined;
32263
+ /** The text of the row shown when there are no items and none are loading,
32264
+ where the `empty` slot is empty. Empty, the default, shows no row. */
32265
+ emptyLabel?: (HelixHeadlessVirtualList["emptyLabel"]) | undefined;
31974
32266
  /** The height of one row, in pixels, used to find the row at a scroll offset.
31975
32267
 
31976
32268
  An estimate rather than a measurement while `measured` is off, which is
@@ -32070,6 +32362,12 @@ export type HelixHeadlessVirtualListSolidJsProps = {
32070
32362
  items out as a grid of that many equal columns, windowed a line at a
32071
32363
  time, with Left and Right moving along a line. */
32072
32364
  "prop:columns"?: (HelixHeadlessVirtualList["columns"]) | undefined;
32365
+ /** The text of the row shown when there are no items and none are loading,
32366
+ where the `empty` slot is empty. Empty, the default, shows no row. */
32367
+ "attr:empty-label"?: (HelixHeadlessVirtualList["emptyLabel"]) | undefined;
32368
+ /** The text of the row shown when there are no items and none are loading,
32369
+ where the `empty` slot is empty. Empty, the default, shows no row. */
32370
+ "prop:emptyLabel"?: (HelixHeadlessVirtualList["emptyLabel"]) | undefined;
32073
32371
  /** The height of one row, in pixels, used to find the row at a scroll offset.
32074
32372
 
32075
32373
  An estimate rather than a measurement while `measured` is off, which is
@@ -32724,6 +33022,9 @@ export type CustomElements = {
32724
33022
  * compare the parts with each other; the scale then fits the largest part
32725
33023
  * rather than the total.
32726
33024
  *
33025
+ * `value-axis` draws the scale's numbers beside the plot, at the levels
33026
+ * `gridlines` rules: amounts in `locale`, or percentages under `share`.
33027
+ *
32727
33028
  * The drawing is hidden from screen readers. The text summary gives the latest
32728
33029
  * reading's total and each part's share of it, and the table beside the chart
32729
33030
  * has every number.
@@ -32737,6 +33038,11 @@ export type CustomElements = {
32737
33038
  * Every numeric column is a part, so leave a total column out of the table the
32738
33039
  * chart reads, or it is counted twice. A negative reading is drawn as zero.
32739
33040
  *
33041
+ * **A tap shows the reading under it**, and keeps it until a tap lands
33042
+ * elsewhere. `helix-reading-change` says each move of the reading, by pointer,
33043
+ * tap or key, and `helix-reading-press` says a reading was clicked, tapped, or
33044
+ * pressed with Enter or Space, for a page that opens what a reading stands for.
33045
+ *
32740
33046
  * ## Attributes & Properties
32741
33047
  *
32742
33048
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -32778,6 +33084,11 @@ export type CustomElements = {
32778
33084
  * `{totalLabel}` the name for the sum, `{total}` the sum, written in the
32779
33085
  * locale, and `{shares}` each part's share, listed as the locale lists.
32780
33086
  * - `total-label`/`totalLabel`: The name for the sum of the parts, shown in the tooltip and the summary.
33087
+ * - `value-axis`/`valueAxis`: Draws the scale's numbers beside the plot, the `axis` part, at the levels
33088
+ * `gridlines` rules: amounts, or percentages under `share`.
33089
+ *
33090
+ * Absent draws none: bands read as a composition need no numbers beside
33091
+ * them, and the tooltip and the table hold every reading.
32781
33092
  * - `for`: The id of the table to read.
32782
33093
  *
32783
33094
  * Names a table in the same tree, so a chart inside another component's
@@ -32863,6 +33174,13 @@ export type CustomElements = {
32863
33174
  * browser harness's awaits it alone: a browser always runs the frame, and a
32864
33175
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
32865
33176
  *
33177
+ * ## Events
33178
+ *
33179
+ * Events that will be emitted by the component.
33180
+ *
33181
+ * - `helix-reading-change`: The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it.
33182
+ * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
33183
+ *
32866
33184
  * ## Methods
32867
33185
  *
32868
33186
  * Methods that can be called to access component functionality.
@@ -32899,11 +33217,18 @@ export type CustomElements = {
32899
33217
  * column's heading, read from the first row that has a cell there, so a
32900
33218
  * short first row does not lose the heading. `''` where no row has one.
32901
33219
  *
33220
+ * ## CSS Custom Properties
33221
+ *
33222
+ * CSS variables available for styling the component.
33223
+ *
33224
+ * - `--area-chart-axis`: The width of the axis, in `ch`, set from the widest number on it. Written by the component on the axis.
33225
+ *
32902
33226
  * ## CSS Parts
32903
33227
  *
32904
33228
  * Custom selectors for styling elements within the component.
32905
33229
  *
32906
33230
  * - `area`: One part's band.
33231
+ * - `axis`: The numbers of the scale beside the plot, under `value-axis`.
32907
33232
  * - `baseline`: The rule at zero, which is the floor of the drawing.
32908
33233
  * - `gridline`: One rule across the plot, under `gridlines`.
32909
33234
  * - `guide`: A rule down the reading a pointer is resting on.
@@ -32915,6 +33240,7 @@ export type CustomElements = {
32915
33240
  * - `plot`: The drawing, which takes focus to be read by key.
32916
33241
  * - `summary`: The total and each part's share at the latest reading, written as a sentence for screen readers.
32917
33242
  * - `svg`: The drawing surface the bands sit on.
33243
+ * - `tick`: One number on the axis, placed with `inset-block-start` at its level.
32918
33244
  * - `tooltip`: The bubble, forwarded from `Tooltip`.
32919
33245
  * - `tooltip-anchor`: The `Tooltip` element itself.
32920
33246
  * - `tooltip-arrow`: The bubble's point, forwarded from `Tooltip`.
@@ -33290,6 +33616,11 @@ export type CustomElements = {
33290
33616
  * The component writes the custom properties below with numbers it computes,
33291
33617
  * and the stylesheet that draws the chart reads them. Do not set them yourself.
33292
33618
  *
33619
+ * **A tap shows the reading under it**, and keeps it until a tap lands
33620
+ * elsewhere. `helix-reading-change` says each move of the reading, by pointer,
33621
+ * tap or key, and `helix-reading-press` says a reading was clicked, tapped, or
33622
+ * pressed with Enter or Space, for a page that opens what a reading stands for.
33623
+ *
33293
33624
  * ## Attributes & Properties
33294
33625
  *
33295
33626
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -33389,6 +33720,12 @@ export type CustomElements = {
33389
33720
  * - `summary-label`/`summaryLabel`: The summary's sentence. `{highestLabel}` is `highest-label`, and
33390
33721
  * `{readings}` each series' highest reading: the series, the category and
33391
33722
  * the reading as the table writes it.
33723
+ * - `value-axis`/`valueAxis`: Draws the numbers of the scale the bars are measured on, the `axis` part,
33724
+ * at the levels `gridlines` rules: down the side of columns, and along the
33725
+ * bottom of bars under `orientation="horizontal"`.
33726
+ *
33727
+ * Absent draws none with one scale, since bars compared with each other need
33728
+ * no numbers. With `secondary` both scales are drawn whatever this says.
33392
33729
  * - `for`: The id of the table to read.
33393
33730
  *
33394
33731
  * Names a table in the same tree, so a chart inside another component's
@@ -33474,6 +33811,13 @@ export type CustomElements = {
33474
33811
  * browser harness's awaits it alone: a browser always runs the frame, and a
33475
33812
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
33476
33813
  *
33814
+ * ## Events
33815
+ *
33816
+ * Events that will be emitted by the component.
33817
+ *
33818
+ * - `helix-reading-change`: The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it.
33819
+ * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
33820
+ *
33477
33821
  * ## Methods
33478
33822
  *
33479
33823
  * Methods that can be called to access component functionality.
@@ -33522,7 +33866,7 @@ export type CustomElements = {
33522
33866
  *
33523
33867
  * Custom selectors for styling elements within the component.
33524
33868
  *
33525
- * - `axis`: The numbers of one scale, drawn only when `secondary` splits the chart into two scales.
33869
+ * - `axis`: The numbers of one scale: the primary under `value-axis`, and both when `secondary` splits the chart into two scales.
33526
33870
  * - `band`: The category band under the pointer.
33527
33871
  * - `bar`: One column.
33528
33872
  * - `bar-wash-end`: The far stop of a bar's gradient, where one is used.
@@ -34298,6 +34642,13 @@ export type CustomElements = {
34298
34642
  *
34299
34643
  * Component attributes and properties that can be applied to the element or by using JavaScript.
34300
34644
  *
34645
+ * - `dismiss-label`/`dismissLabel`: The dismiss button's name, read by screen readers, with `{label}` for
34646
+ * what the callout is called: its heading, or the tone's name where it has
34647
+ * none.
34648
+ *
34649
+ * "Dismiss Scheduled maintenance" says which of several callouts the button
34650
+ * takes away, where every button was "Dismiss". A label without `{label}` is
34651
+ * read as written.
34301
34652
  * - `tone`: What kind of attention the passage needs.
34302
34653
  *
34303
34654
  * `tone` is the axis for what a thing means, and this is a subset of it: a
@@ -34315,16 +34666,6 @@ export type CustomElements = {
34315
34666
  * `danger` is said as "Error", the word a reader understands, and
34316
34667
  * `neutral` as "Note", for what the passage is.
34317
34668
  * - `dismissible`: Whether the element shows a control that dismisses it.
34318
- * - `dismiss-label`/`dismissLabel`: The dismiss control's label, read by screen readers.
34319
- *
34320
- * `attribute` is spelled out because Lit lowercases a property name to
34321
- * derive one rather than dash-casing it, so this would otherwise be
34322
- * reachable only as `dismisslabel`, which nobody would guess and no linter
34323
- * would catch.
34324
- *
34325
- * A word property: register it for a locale under the host's key. A family
34326
- * that names the control otherwise, such as Tag's `Remove {label}`,
34327
- * declares its own English with `@words` above the override.
34328
34669
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
34329
34670
  *
34330
34671
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -35477,6 +35818,13 @@ export type CustomElements = {
35477
35818
  * disabled>` turns the composer off. Sending is still `helix-send`, and it
35478
35819
  * does not submit the form.
35479
35820
  *
35821
+ * **`required`, `minlength` and `maxlength` are checked by the browser**, as
35822
+ * on a `<textarea>`, and the message is the browser's. `maxlength` stops the
35823
+ * field taking more. A draft that fails them does not send, and the composer
35824
+ * takes `:state(invalid)` and `aria-invalid` once the reader has tried to send
35825
+ * it, the form was submitted, or the reader edited the field and left it.
35826
+ * Tabbing past an empty composer marks nothing.
35827
+ *
35480
35828
  * **`typing` says whether the user is writing**, and `helix-typing` is sent
35481
35829
  * each time it changes: when they start, and when they send or stop for
35482
35830
  * `typing-timeout` milliseconds. Pass it on to show "is typing" to the other
@@ -35487,7 +35835,12 @@ export type CustomElements = {
35487
35835
  * Component attributes and properties that can be applied to the element or by using JavaScript.
35488
35836
  *
35489
35837
  * - `label`: The field's name, read by screen readers.
35838
+ * - `maxlength`/`maxLength`: The most characters a draft can have. The field stops taking more.
35839
+ * - `minlength`/`minLength`: The fewest characters a draft can have, once the reader has written in
35840
+ * the field, as on a `<textarea>`.
35490
35841
  * - `placeholder`: Placeholder text shown in an empty field.
35842
+ * - `required`: Whether the form needs a draft to submit. An empty draft never sends,
35843
+ * required or not.
35491
35844
  * - `rows`: How many rows the field opens at.
35492
35845
  *
35493
35846
  * It grows from there.
@@ -35639,6 +35992,7 @@ export type CustomElements = {
35639
35992
  *
35640
35993
  * These can be used to apply styling when a component is in a given state.
35641
35994
  *
35995
+ * - `invalid`: The draft fails `required`, `minlength`, `maxlength`, or a custom error, and the reader has tried to send or submit it, or edited the field and left it.
35642
35996
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
35643
35997
  */
35644
35998
  "helix-headless-chat-composer": Partial<
@@ -36909,6 +37263,7 @@ export type CustomElements = {
36909
37263
  * - `end`: Content at the trailing end, before the trigger.
36910
37264
  * - `feedback`: The message that says what is wrong with the value.
36911
37265
  * - `hint`: Help text under the field.
37266
+ * - `label`: The label, for content richer than the `label` text.
36912
37267
  * - `panel-footer`: Content in the panel under the picker, such as a note or an action.
36913
37268
  * - `panel-header`: Content in the panel above the picker, such as a heading or a shortcut.
36914
37269
  * - `start`: Content at the leading end of the field, inside its border.
@@ -37455,6 +37810,9 @@ export type CustomElements = {
37455
37810
  * | Escape | Closes the list and puts the chosen words back. On a closed field, a second Escape clears a single choice. |
37456
37811
  * | Tab | Closes the list and moves on. |
37457
37812
  * | Backspace | With `multiple`, on an empty field, removes the last tag. |
37813
+ * | Left | With `multiple`, with the caret at the start of the text, moves to the last tag's remove button. Right on a right-to-left page. |
37814
+ * | Left, Right on a tag | Move between the tags, and past the last back to the text. |
37815
+ * | Delete, Backspace on a tag | Removes the tag. |
37458
37816
  * | Space, Home, End, letters | Edit the text. |
37459
37817
  *
37460
37818
  * **ARIA.** The input is the `combobox`, named by the label, with
@@ -37470,7 +37828,8 @@ export type CustomElements = {
37470
37828
  * Set `autocomplete` to let a browser's autofill choose an option.
37471
37829
  *
37472
37830
  * With `multiple`, each chosen option is a tag in the field with its own remove
37473
- * control. The panel stays open and the filter clears after each choice, so the
37831
+ * control. The text is the field's one tab stop, and the arrow keys reach the
37832
+ * tags from it. The panel stays open and the filter clears after each choice, so the
37474
37833
  * next choice starts from the whole list.
37475
37834
  *
37476
37835
  * With `creatable`, the combobox offers a create row and fires `helix-create`.
@@ -38006,8 +38365,9 @@ export type CustomElements = {
38006
38365
  * **Keyboard.** Enter and Space copy, as they press a native button.
38007
38366
  *
38008
38367
  * The button is named `label`, or the host's `aria-label`, and its name
38009
- * changes to `copied-label` or `error-label` for the moment after a press,
38010
- * which is what a screen reader on it hears. The tooltip shows the same words.
38368
+ * changes to `copied-label` or `error-label` for the moment after a press. The
38369
+ * same words are said in a live region, so a screen reader hears the result,
38370
+ * and the tooltip shows them.
38011
38371
  *
38012
38372
  * ## Attributes & Properties
38013
38373
  *
@@ -38188,7 +38548,7 @@ export type CustomElements = {
38188
38548
  * Custom selectors for styling elements within the component.
38189
38549
  *
38190
38550
  * - `button`: The inner button.
38191
- * - `live`: The live region that says `pending-label` when the button becomes pending under focus. It is rendered from the first time the button is pending.
38551
+ * - `live`: The live region that says `copied-label` or `error-label` after a press, and `pending-label` when the button becomes pending under focus. It is rendered from the first time it says anything.
38192
38552
  * - `mark`: The clipboard icon, and the confirmation icon that replaces it.
38193
38553
  * - `spinner`: The ring a pending button turns, an empty element the styled button draws over the icon. It is rendered only while the button is pending.
38194
38554
  * - `tooltip`: The tooltip bubble, forwarded from the tooltip inside the button.
@@ -38250,6 +38610,10 @@ export type CustomElements = {
38250
38610
  * and shows a dash while only some are chosen.
38251
38611
  * - Shift with a press on a checkbox selects every row between it and the row
38252
38612
  * last chosen.
38613
+ * - `selection-behavior="replace"` makes a press or a move select the row
38614
+ * alone, as a file list does. Control or Command with a press adds or takes
38615
+ * out one row, and Shift with a press selects every row from the one last
38616
+ * chosen.
38253
38617
  *
38254
38618
  * To act on a single row, such as opening it, put a link or a button in a cell.
38255
38619
  *
@@ -38266,7 +38630,8 @@ export type CustomElements = {
38266
38630
  * | Enter, F2 | Moves into the cell's controls. Escape moves back to the cell, and Tab moves between the controls of one cell. |
38267
38631
  * | Enter, Space on a sortable heading | Sorts by the column. |
38268
38632
  * | Enter, Space on the `load-more` row | Sends `helix-load-more`. |
38269
- * | Space on a row | Selects the row, in a `selectable` table. |
38633
+ * | Space on a row | Selects the row, in a `selectable` table. Under `selection-behavior="replace"`, selects it alone, and Control or Command with Space adds or takes out the row. |
38634
+ * | Down, Up, Page Down, Page Up under `selection-behavior="replace"` | Selects the row it moves to alone. Control or Command with the key moves without selecting. |
38270
38635
  * | Shift with Down or Up | Selects the rows it moves across, in a `selectable` table. |
38271
38636
  * | Shift with Space | Selects every row from the one last chosen, in a `selectable` table. |
38272
38637
  * | Control or Command with A | Selects every row, in a `selectable` table. |
@@ -38462,6 +38827,12 @@ export type CustomElements = {
38462
38827
  * rows are chosen, written in the locale, and a language that needs plural
38463
38828
  * forms writes them: `{count, plural, one {# wybrany} few {# wybrane} many
38464
38829
  * {# wybranych} other {# wybranego}}`.
38830
+ * - `selection-behavior`/`selectionBehavior`: What a key or a press on a row does to the rows already selected, in a
38831
+ * `selectable` table. `toggle`, the default, keeps them: Space adds or takes
38832
+ * out the row. `replace` selects the row alone, as a file list does: Down and
38833
+ * Up carry the selection with them, and a press on a row selects it. Control
38834
+ * or Command with a press or Space adds or takes out one row, and with a move
38835
+ * goes without selecting. The checkboxes add or take out one row either way.
38465
38836
  * - `select-row-label`/`selectRowLabel`: The name of a row's checkbox. `{row}` is replaced with the row's value in
38466
38837
  * the first column that has a field, or with its key.
38467
38838
  * - `sort`: The sort order, as `field:direction`.
@@ -38565,7 +38936,9 @@ export type CustomElements = {
38565
38936
  * Areas where markup can be added to the component.
38566
38937
  *
38567
38938
  * - `(default)`: The columns, as `TableColumn` elements.
38939
+ * - `empty`: Content shown when there are no rows to show and none are loading, such as a picture and a link. Falls back to `empty-text`, which the live region still says.
38568
38940
  * - `footer`: Content below the grid. It replaces the built-in pagination.
38941
+ * - `loading`: Content shown while the rows load, such as a spinner. Falls back to `loading-text`, which the live region still says.
38569
38942
  * - `toolbar`: Content above the grid, such as a search field or actions.
38570
38943
  *
38571
38944
  * ## Methods
@@ -38961,6 +39334,7 @@ export type CustomElements = {
38961
39334
  *
38962
39335
  * - `feedback`: The error message under the field.
38963
39336
  * - `hint`: The help text under the field.
39337
+ * - `label`: The label, for content richer than the `label` text.
38964
39338
  * - `next-icon`: The icon on the calendar's next month control.
38965
39339
  * - `panel-footer`: Content in the panel under the calendar, such as a note or an action.
38966
39340
  * - `panel-header`: Content in the panel above the calendar, such as a heading or a shortcut.
@@ -39832,9 +40206,10 @@ export type CustomElements = {
39832
40206
  * **The line is a separator**, as `<hr>` is, and as Radix Separator, React
39833
40207
  * Aria Separator, and Web Awesome's divider are. It is named by any content
39834
40208
  * set into it, so a screen reader says "Or, separator" where you wrote "Or" on
39835
- * the line. Set `decorative` on a rule that separates nothing, such as one
39836
- * under a heading or between the facts of a byline, and it leaves the
39837
- * accessibility tree.
40209
+ * the line, and the words are read once, as that name. Set words into a
40210
+ * separator and no controls, which are hidden with them. Set `decorative` on
40211
+ * a rule that separates nothing, such as one under a heading or between the
40212
+ * facts of a byline, and it leaves the accessibility tree.
39838
40213
  *
39839
40214
  * Use `orientation="vertical"` between items on one line. A vertical divider
39840
40215
  * stretches to fit its flex parent and sets no height of its own.
@@ -39852,10 +40227,6 @@ export type CustomElements = {
39852
40227
  *
39853
40228
  * - `announced`: Whether screen readers announce the line as a separator, which they now do
39854
40229
  * by default.
39855
- *
39856
- * It dates from when the line was decorative by default. It is still read,
39857
- * and it wins over `decorative`, so a divider written with it stays a
39858
- * separator.
39859
40230
  * - `decorative`: Takes the line out of the accessibility tree, for a rule that separates
39860
40231
  * nothing: one under a heading, or between the facts of a byline.
39861
40232
  *
@@ -41029,7 +41400,8 @@ export type CustomElements = {
41029
41400
  *
41030
41401
  * **Keyboard.** The remove button is a tab stop of its own, and Enter or Space
41031
41402
  * on it asks to remove the filter. In a `FilterInput`, Backspace in the empty
41032
- * field asks to remove the last chip.
41403
+ * field asks to remove the last chip, the arrow keys move between the field
41404
+ * and the chips, and Delete or Backspace on a chip asks to remove it.
41033
41405
  *
41034
41406
  * The remove button is named `dismiss-label` followed by the chip's words,
41035
41407
  * such as "Remove filter Status is not open", so a row of chips says which
@@ -41560,6 +41932,9 @@ export type CustomElements = {
41560
41932
  * | Home, End | Highlights the first or the last suggestion while the panel is open. |
41561
41933
  * | Escape | Closes the panel and stops there, so a dialog around the field stays open. |
41562
41934
  * | Backspace | In an empty field, asks the last token to go. |
41935
+ * | Left | With the caret at the start of the text, moves to the last token's remove button. Right on a right-to-left page. |
41936
+ * | Left, Right on a token | Move between the tokens, and past the last back to the text. |
41937
+ * | Delete, Backspace on a token | Asks the token to go. |
41563
41938
  *
41564
41939
  * **Typed filters.** The field parses only the fields you declare. Write
41565
41940
  * `FilterField` elements, usually inside the `FilterMenu` slotted into `start`,
@@ -43582,6 +43957,11 @@ export type CustomElements = {
43582
43957
  * the shortcut with the control. A chord the page wrote there itself is left
43583
43958
  * alone, and the key takes back only what it added.
43584
43959
  *
43960
+ * A chord is drawn with the platform's modifiers first, in its order, so one
43961
+ * `keys` value is right everywhere: `mod+shift+p` is `⇧⌘P` on an Apple
43962
+ * keyboard and `Ctrl+Shift+P` elsewhere. Where it is drawn in glyphs, it is
43963
+ * read in words, such as `Shift Command P`.
43964
+ *
43585
43965
  * `caps` draws a chord as a key per key: each is a `key` part and the `+`
43586
43966
  * between two a `separator` part, so a sheet can draw a cap for each.
43587
43967
  * `key-labels` renames any key, on every platform, such as
@@ -44145,6 +44525,9 @@ export type CustomElements = {
44145
44525
  * `<svg>` that fills its box scales with the box, so the same `font-size` can
44146
44526
  * render at 10px in a narrow chart and 43px in a wide one.
44147
44527
  *
44528
+ * `value-axis` draws the scale's numbers beside the plot, at the levels
44529
+ * `gridlines` rules, written in `locale`.
44530
+ *
44148
44531
  * The table is the accessible representation, and the drawing is hidden from
44149
44532
  * screen readers, who get the numbers. The `summary` part names the chart, from
44150
44533
  * `label` or the table's caption, and gives each series' latest reading.
@@ -44155,6 +44538,11 @@ export type CustomElements = {
44155
44538
  * a reading. The tooltip follows, the `live` part says the reading in words,
44156
44539
  * and Escape puts the tooltip away.
44157
44540
  *
44541
+ * **A tap shows the reading under it**, and keeps it until a tap lands
44542
+ * elsewhere. `helix-reading-change` says each move of the reading, by pointer,
44543
+ * tap or key, and `helix-reading-press` says a reading was clicked, tapped, or
44544
+ * pressed with Enter or Space, for a page that opens what a reading stands for.
44545
+ *
44158
44546
  * ## Attributes & Properties
44159
44547
  *
44160
44548
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -44253,6 +44641,12 @@ export type CustomElements = {
44253
44641
  * masked with one disc per series and every stroke stops at its own ring's
44254
44642
  * inner edge. `mask-composite: intersect` is what makes N holes out of N
44255
44643
  * layers; a single `mask-image` would only ever cut the last one.
44644
+ * - `value-axis`/`valueAxis`: Draws the scale's numbers beside the plot, the `axis` part, at the levels
44645
+ * `gridlines` rules, so a reading can be measured off the drawing as well
44646
+ * as read from the tooltip.
44647
+ *
44648
+ * Absent draws none: a line read for its shape needs no numbers beside it,
44649
+ * and the tooltip and the table hold every reading.
44256
44650
  * - `zero`: Whether the range always includes zero.
44257
44651
  *
44258
44652
  * Absent measures from the data's own extent, which is what a line is for.
@@ -44344,6 +44738,13 @@ export type CustomElements = {
44344
44738
  * browser harness's awaits it alone: a browser always runs the frame, and a
44345
44739
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
44346
44740
  *
44741
+ * ## Events
44742
+ *
44743
+ * Events that will be emitted by the component.
44744
+ *
44745
+ * - `helix-reading-change`: The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it.
44746
+ * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
44747
+ *
44347
44748
  * ## Methods
44348
44749
  *
44349
44750
  * Methods that can be called to access component functionality.
@@ -44386,12 +44787,14 @@ export type CustomElements = {
44386
44787
  *
44387
44788
  * - `--chart-terminus-x`: Where a series' last reading sits horizontally, as a percentage. Written by the component.
44388
44789
  * - `--chart-terminus-y`: Where a series' last reading sits vertically, as a percentage. Written by the component.
44790
+ * - `--line-chart-axis`: The width of the axis, in `ch`, set from the widest number on it. Written by the component on the axis.
44389
44791
  *
44390
44792
  * ## CSS Parts
44391
44793
  *
44392
44794
  * Custom selectors for styling elements within the component.
44393
44795
  *
44394
44796
  * - `area`: The wash under one line, where `area` is set.
44797
+ * - `axis`: The numbers of the scale beside the plot, under `value-axis`.
44395
44798
  * - `band`: The band around the reading under the pointer.
44396
44799
  * - `baseline`: The rule at zero, where zero is inside the range.
44397
44800
  * - `gridline`: One rule across the plot, under `gridlines`.
@@ -44408,6 +44811,7 @@ export type CustomElements = {
44408
44811
  * - `summary`: The chart's name and each series' latest reading, written as a sentence for screen readers. Hide it visually.
44409
44812
  * - `svg`: The drawing surface the lines and areas sit on.
44410
44813
  * - `terminus`: The mark on one series' last reading.
44814
+ * - `tick`: One number on the axis, placed with `inset-block-start` at its level.
44411
44815
  * - `tooltip`: The bubble, forwarded from `Tooltip`.
44412
44816
  * - `tooltip-anchor`: The `Tooltip` element itself.
44413
44817
  * - `tooltip-arrow`: The bubble's point, forwarded from `Tooltip`.
@@ -48375,14 +48779,10 @@ export type CustomElements = {
48375
48779
  * ends. Matching still reads the label, so what somebody types is matched
48376
48780
  * against the name rather than against prose about it.
48377
48781
  *
48378
- * **A property and not a slot, which is the departure worth explaining.** The
48379
- * area rules say a content property is its slot's fallback, and that holds for
48380
- * a region always drawn: `Avatar`'s initials, `Tooltip`'s text. This one is
48381
- * usually absent, and a wrapped slot generates a box whether or not it is
48382
- * filled, so every option without a caption would carry an empty line. The
48383
- * detection that would avoid it does not exist, `:host(:has())` being invalid
48384
- * and the server having no children to inspect. A property is known at render
48385
- * time, so the component can decline to draw the box at all.
48782
+ * For a caption richer than a string, slot it into `description`. The
48783
+ * property is that slot's fallback inside the `description` part. With no
48784
+ * property the slot is drawn bare, which takes no box while it is empty, so
48785
+ * an option without a caption carries no empty line.
48386
48786
  *
48387
48787
  * It does not reflect, per the rule that payload state stays off the host: a
48388
48788
  * string is not a fact a selector needs.
@@ -48451,6 +48851,12 @@ export type CustomElements = {
48451
48851
  * name is the fault `TreeItem` avoids by mirroring to `data-selected`.
48452
48852
  * Splitting them means moving what every stylesheet selects on, which is a
48453
48853
  * change of its own rather than a property being added. (property only)
48854
+ * - `selectionFollowsActive`: Whether the option says it is selected while the keyboard is on it.
48855
+ *
48856
+ * Written by a control whose list holds suggestions, such as `FilterInput`:
48857
+ * nothing there stays chosen, so the row the keyboard is on is the
48858
+ * selection, as the APG combobox's list with selection that follows focus
48859
+ * says. No attribute: it is coordination between elements. (property only)
48454
48860
  * - `text`: The option's text, which a listbox matches typed text against.
48455
48861
  *
48456
48862
  * Read from the rendered content rather than required as a property, because
@@ -48523,7 +48929,9 @@ export type CustomElements = {
48523
48929
  * Areas where markup can be added to the component.
48524
48930
  *
48525
48931
  * - `(default)`: The option's label.
48932
+ * - `description`: A second line under the label, for content richer than the `description` text.
48526
48933
  * - `end`: Content after the label, such as a shortcut or a count.
48934
+ * - `indicator`: An icon shown while the option is chosen, in place of the check the styled option draws.
48527
48935
  * - `start`: Content before the label, such as an icon or an avatar.
48528
48936
  *
48529
48937
  * ## Methods
@@ -48551,6 +48959,8 @@ export type CustomElements = {
48551
48959
  * These can be used to apply styling when a component is in a given state.
48552
48960
  *
48553
48961
  * - `active`: While the keyboard is on the option, which is the option `aria-activedescendant` names.
48962
+ * - `disabled`: While the option cannot be chosen.
48963
+ * - `has-indicator`: An icon is slotted into `indicator`.
48554
48964
  * - `selected`: While the option is chosen.
48555
48965
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
48556
48966
  */
@@ -50114,7 +50524,11 @@ export type CustomElements = {
50114
50524
  *
50115
50525
  * No attribute: it is coordination between elements, and a consumer has no
50116
50526
  * reason to set it. (property only)
50117
- * - `items`: The radios, in light-DOM order. Client only: the server has no tree. (property only) (readonly)
50527
+ * - `items`: The radios, in light-DOM order. Client only: the server has no tree.
50528
+ *
50529
+ * Descendants, as `Checkbox.Group` reads its boxes, so a radio inside a
50530
+ * layout wrapper of yours is one of the group's. A radio held by a group
50531
+ * nested inside this one is that group's. (property only) (readonly)
50118
50532
  * - `validity`: Whether the control meets its constraints, and why not. (property only) (readonly)
50119
50533
  * - `validationMessage`: The message the browser would show for the control, or an empty string. (property only) (readonly)
50120
50534
  * - `willValidate`: Whether the control is checked when its form is submitted. (property only) (readonly)
@@ -50715,6 +51129,11 @@ export type CustomElements = {
50715
51129
  * reads in its own direction. The summary and the tooltip bubble follow the
50716
51130
  * page's direction.
50717
51131
  *
51132
+ * **A tap shows the reading under it**, and keeps it until a tap lands
51133
+ * elsewhere. `helix-reading-change` says each move of the reading, by pointer,
51134
+ * tap or key, and `helix-reading-press` says a reading was clicked, tapped, or
51135
+ * pressed with Enter or Space, for a page that opens what a reading stands for.
51136
+ *
50718
51137
  * ## Attributes & Properties
50719
51138
  *
50720
51139
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -50835,6 +51254,13 @@ export type CustomElements = {
50835
51254
  * browser harness's awaits it alone: a browser always runs the frame, and a
50836
51255
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
50837
51256
  *
51257
+ * ## Events
51258
+ *
51259
+ * Events that will be emitted by the component.
51260
+ *
51261
+ * - `helix-reading-change`: The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it.
51262
+ * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
51263
+ *
50838
51264
  * ## Methods
50839
51265
  *
50840
51266
  * Methods that can be called to access component functionality.
@@ -53602,7 +54028,7 @@ export type CustomElements = {
53602
54028
  * through cell by cell, the headings included, as React Aria's table is. The
53603
54029
  * table is then a `grid` and each value a `gridcell`, and the table gives
53604
54030
  * every cell a `tabindex` so focus can rest on it: set `grid` only where the
53605
- * cells may carry one. For typeahead and range selection, use `DataTable`.
54031
+ * cells may carry one.
53606
54032
  *
53607
54033
  * | Key | What it does |
53608
54034
  * |---|---|
@@ -53616,7 +54042,10 @@ export type CustomElements = {
53616
54042
  * | Enter, Space on a sortable heading | Sorts by the column. |
53617
54043
  * | Space on a row, Enter or Space on its checkbox cell | Selects the row, in a `selectable` table. |
53618
54044
  * | Enter or Space on a grip cell | Picks the row up, or drops it, in a `reorderable` table. Up, Down, Home, and End move a row picked up, and Escape puts it back. |
54045
+ * | Shift with Down or Up | Selects the rows it moves across, in a `selectable` table. |
54046
+ * | Shift with Space | Selects every row from the one last chosen, in a `selectable` table. |
53619
54047
  * | Control or Command with A | Selects every row, in a `selectable` table. |
54048
+ * | A letter or a word | Moves to the next row whose first cell starts with what you typed. |
53620
54049
  * | Tab | Leaves the table. |
53621
54050
  *
53622
54051
  * The CSS custom properties listed for this component are written by it and
@@ -53758,7 +54187,9 @@ export type CustomElements = {
53758
54187
  * Areas where markup can be added to the component.
53759
54188
  *
53760
54189
  * - `(default)`: The table's rows.
54190
+ * - `empty`: Content shown when there are no rows and none are loading, such as a picture and a link. Falls back to `empty-text`, which the live region still says.
53761
54191
  * - `heading`: Words that name the table, shown above it, such as a heading.
54192
+ * - `loading`: Content shown while the rows load, such as a spinner. Falls back to `loading-text`, which the live region still says.
53762
54193
  *
53763
54194
  * ## Methods
53764
54195
  *
@@ -53817,7 +54248,8 @@ export type CustomElements = {
53817
54248
  * it, or make it interactive.
53818
54249
  *
53819
54250
  * In a `selectable` table the row draws a checkbox cell before its own cells,
53820
- * and `value` is the key the table's `selected` lists it by.
54251
+ * and `value` is the key the table's `selected` lists it by. `disabled` keeps
54252
+ * the row out of the selection and out of its link.
53821
54253
  *
53822
54254
  * In a `reorderable` table the row draws a grip cell before those, holding a
53823
54255
  * button named by the table's `move-row-label`, and `value` is the key
@@ -53837,6 +54269,12 @@ export type CustomElements = {
53837
54269
  *
53838
54270
  * Component attributes and properties that can be applied to the element or by using JavaScript.
53839
54271
  *
54272
+ * - `disabled`: Takes the row out of the table's selection and out of its link: the row's
54273
+ * checkbox is disabled, Space, Shift ranges, and the checkbox in the heading
54274
+ * pass over it, and a press does not follow `href`. A row already selected
54275
+ * stays selected. A screen reader hears it as unavailable, and in a `grid`
54276
+ * table the arrow keys still reach it, as a disabled cell in a grid is
54277
+ * reached.
53840
54278
  * - `href`: The URL a press on the row follows, which makes the whole row a link.
53841
54279
  * Empty, the default, leaves presses to the row's cells.
53842
54280
  * - `rel`: The `rel` of the row's link. You set it yourself, as on an anchor.
@@ -53898,7 +54336,7 @@ export type CustomElements = {
53898
54336
  * - `dragging`: The row is being moved, in a `reorderable` table.
53899
54337
  * - `drop-after`: The row being moved goes after this one when it is dropped.
53900
54338
  * - `drop-before`: The row being moved goes before this one when it is dropped.
53901
- * - `link`: While the row has `href`, so a press on it follows the link.
54339
+ * - `link`: While the row has `href` and is not `disabled`, so a press on it follows the link.
53902
54340
  * - `selected`: While the row is selected, in a `selectable` table.
53903
54341
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
53904
54342
  */
@@ -54231,7 +54669,10 @@ export type CustomElements = {
54231
54669
  * focus moves to the next tag, or the previous one after the last.
54232
54670
  *
54233
54671
  * `selection-mode` lets a reader select tags, with Space, Enter or a press:
54234
- * `single` selects one at a time and `multiple` any number. `value` holds the
54672
+ * `single` selects one at a time and `multiple` any number. In `multiple`,
54673
+ * Shift with an arrow, Home or End selects the range from the tag last
54674
+ * pressed to the tag focus moves to, and Control or Command with A selects
54675
+ * every tag that is not disabled. `value` holds the
54235
54676
  * selected tags' values, separated by commas, and a change asks with
54236
54677
  * `helix-before-change` and tells with `change`. Enter on a tag with an
54237
54678
  * `href` follows its link. A `disabled` tag is passed over. A selected tag
@@ -54246,6 +54687,8 @@ export type CustomElements = {
54246
54687
  * set is a `group`, and focus moves to its `empty` part,
54247
54688
  * which holds the `empty` slot: put words there such as "No filters" for a
54248
54689
  * reader to hear. With nothing slotted it says `empty-label`, "No tags".
54690
+ * Where only disabled tags are left, the first of them holds the tab stop and
54691
+ * takes focus, so the reader stays in the set.
54249
54692
  *
54250
54693
  * ## Attributes & Properties
54251
54694
  *
@@ -54358,6 +54801,12 @@ export type CustomElements = {
54358
54801
  *
54359
54802
  * Absent is the tag's own words, its category first.
54360
54803
  * - `dismissible`: Whether the element shows a control that dismisses it.
54804
+ * - `dismissTabStop`: Whether the remove button is a tab stop of its own, outside a `Tag.Group`.
54805
+ *
54806
+ * A field that holds tags as its tokens, such as a `multiple` Combobox,
54807
+ * writes `false`: the field's text is its one tab stop, and the arrow keys
54808
+ * move from the text to the tags. No attribute: it is coordination between
54809
+ * elements, as `focusable` is. (property only)
54361
54810
  * - `focusable`: Whether the tag holds its group's tab stop.
54362
54811
  *
54363
54812
  * Written by `Tag.Group` on every tag it holds, and unset outside one, which
@@ -54964,6 +55413,7 @@ export type CustomElements = {
54964
55413
  *
54965
55414
  * - `feedback`: The message that says what is wrong with the value.
54966
55415
  * - `hint`: Help under the field.
55416
+ * - `label`: The label, for content richer than the `label` text.
54967
55417
  * - `panel-footer`: Content in the panel under the times, such as a note or an action.
54968
55418
  * - `panel-header`: Content in the panel above the times, such as a heading or a shortcut.
54969
55419
  * - `trigger`: The icon on the field that shows a list opens.
@@ -56252,6 +56702,11 @@ export type CustomElements = {
56252
56702
  * `selection-mode="multiple"` it is a `<button>` that says whether it is
56253
56703
  * pressed with `aria-pressed`.
56254
56704
  *
56705
+ * **On its own, outside a `Toggle.Group`, it is a toggle button**, as React
56706
+ * Aria's `ToggleButton`: a `<button>` with `aria-pressed`. A press, Enter or
56707
+ * Space sends `helix-select`, which you can cancel, then flips `selected` and
56708
+ * sends `change`. Write `selected` in the markup to start it pressed.
56709
+ *
56255
56710
  * Do not use it for navigation. For navigation, use links marked with
56256
56711
  * `aria-current` and styled by the `data-navigation-item` recipe in the base
56257
56712
  * layer. The recipe has the same look, and links are not announced as choices.
@@ -56293,8 +56748,8 @@ export type CustomElements = {
56293
56748
  * name is the fault `TreeItem` avoids by mirroring to `data-selected`.
56294
56749
  * Splitting them means moving what every stylesheet selects on, which is a
56295
56750
  * change of its own rather than a property being added. (property only)
56296
- * - `focusable`: Whether the item holds the group's tab stop. Unset, the chosen item holds
56297
- * it.
56751
+ * - `focusable`: Whether the item holds the group's tab stop. Unset, no group holds the
56752
+ * item, and it is a toggle button with a tab stop of its own.
56298
56753
  *
56299
56754
  * Written by the group on every item: `true` for the chosen item, or for the
56300
56755
  * first item that can be chosen while there is no selection to carry the
@@ -56331,6 +56786,7 @@ export type CustomElements = {
56331
56786
  *
56332
56787
  * Events that will be emitted by the component.
56333
56788
  *
56789
+ * - `change`: Fired after a toggle button on its own is pressed or released.
56334
56790
  * - `helix-select`: Fired when the item is chosen. Cancelable: call `preventDefault()` to keep the current choice.
56335
56791
  *
56336
56792
  * ## Slots
@@ -56343,13 +56799,13 @@ export type CustomElements = {
56343
56799
  *
56344
56800
  * Methods that can be called to access component functionality.
56345
56801
  *
56802
+ * - `select() => boolean`: Chooses the item in its group, or, on its own, flips `selected` once
56803
+ * `helix-select` stands and sends `change`.
56346
56804
  * - `focusItem() => void`: Moves focus to the item's control, for the set's arrow keys.
56347
56805
  *
56348
56806
  * The set drives the keys and cannot reach the control itself, which is
56349
56807
  * inside this shadow root, so the intent is a method and the internals stay
56350
56808
  * the item's.
56351
- * - `select() => boolean`: Selects the item and fires `helix-select`. Returns `false` if the item is
56352
- * disabled or a listener cancels the event.
56353
56809
  *
56354
56810
  * ## CSS Parts
56355
56811
  *
@@ -57803,6 +58259,10 @@ export type CustomElements = {
57803
58259
  * sends `helix-end`. `shuffle` plays the entries in a random order, starting
57804
58260
  * from the one that is current, and `previous` retraces that order.
57805
58261
  *
58262
+ * **The player is named by the current entry**, and the device's own media
58263
+ * controls show the entry as the title. A player you gave a `label` keeps
58264
+ * your name, and only the title follows the entry.
58265
+ *
57806
58266
  * **Keyboard.** Each entry is a button in the tab order, and Enter or Space
57807
58267
  * plays it. The current entry carries `aria-current`. While focus is on the
57808
58268
  * player, the player's own keys work, and `Video` lists them. Its previous
@@ -58047,6 +58507,9 @@ export type CustomElements = {
58047
58507
  * - `label`: Accessible name for the video, which its filename does not provide.
58048
58508
  * - `loading-label`/`loadingLabel`: The text announced while the video waits for more data.
58049
58509
  * - `loop`: Whether the video starts again at the end.
58510
+ * - `media-title`/`mediaTitle`: The title the device's own media controls show while the video plays,
58511
+ * such as on a lock screen. Empty, the default, shows `label`. A playlist
58512
+ * writes the current entry's name here.
58050
58513
  * - `more-label`/`moreLabel`: What the button that opens `overflow-controls` is called.
58051
58514
  * - `mute-label`/`muteLabel`: The name of the mute control. The control shows as pressed while the video
58052
58515
  * is muted.
@@ -58397,6 +58860,12 @@ export type CustomElements = {
58397
58860
  * the last item says "Loading more" (`loading-label`, or your own content in
58398
58861
  * the `loading` slot). `scrollToIndex` takes a reader to an item.
58399
58862
  *
58863
+ * **An empty list.** Set `empty-label`, or put your own content in the `empty`
58864
+ * slot, for a row shown when there are no items and none are loading, such as
58865
+ * "No messages yet" and a link to write one. Without either, an empty list
58866
+ * shows nothing, since a list whose items have not arrived yet has not said
58867
+ * it has none.
58868
+ *
58400
58869
  * **Row height.** Rows are placed by `estimate` until they are drawn. Then the
58401
58870
  * list reads the drawn rows' height once and places every row by it, so a
58402
58871
  * wrong estimate still reaches the last item. Set `measured` for rows of
@@ -58419,6 +58888,8 @@ export type CustomElements = {
58419
58888
  * - `columns`: How many items a line holds. One, the default, is a list; more lays the
58420
58889
  * items out as a grid of that many equal columns, windowed a line at a
58421
58890
  * time, with Left and Right moving along a line.
58891
+ * - `empty-label`/`emptyLabel`: The text of the row shown when there are no items and none are loading,
58892
+ * where the `empty` slot is empty. Empty, the default, shows no row.
58422
58893
  * - `estimate`: The height of one row, in pixels, used to find the row at a scroll offset.
58423
58894
  *
58424
58895
  * An estimate rather than a measurement while `measured` is off, which is
@@ -58508,6 +58979,7 @@ export type CustomElements = {
58508
58979
  * Areas where markup can be added to the component.
58509
58980
  *
58510
58981
  * - `(default)`: The `<template>` that defines one row. The list writes the rows it renders beside it, and this slot shows them between the two spacers.
58982
+ * - `empty`: Content for the row shown when there are no items and none are loading. Falls back to `empty-label`.
58511
58983
  * - `loading`: Content for the row after the last item while `loading` is set. Falls back to `loading-label`.
58512
58984
  *
58513
58985
  * ## Methods
@@ -58526,6 +58998,7 @@ export type CustomElements = {
58526
58998
  *
58527
58999
  * - `after`: The space that stands in for the rows below the rendered ones.
58528
59000
  * - `before`: The space that stands in for the rows above the rendered ones.
59001
+ * - `empty`: The row shown when there are no items and none are loading, where `empty-label` or the `empty` slot gives it content.
58529
59002
  * - `loading`: The row after the last item while `loading` is set.
58530
59003
  * - `viewport`: The scrolling box. On this tier, it needs only a block size.
58531
59004
  *
@@ -59106,6 +59579,9 @@ export type CustomElementsSolidJs = {
59106
59579
  * compare the parts with each other; the scale then fits the largest part
59107
59580
  * rather than the total.
59108
59581
  *
59582
+ * `value-axis` draws the scale's numbers beside the plot, at the levels
59583
+ * `gridlines` rules: amounts in `locale`, or percentages under `share`.
59584
+ *
59109
59585
  * The drawing is hidden from screen readers. The text summary gives the latest
59110
59586
  * reading's total and each part's share of it, and the table beside the chart
59111
59587
  * has every number.
@@ -59119,6 +59595,11 @@ export type CustomElementsSolidJs = {
59119
59595
  * Every numeric column is a part, so leave a total column out of the table the
59120
59596
  * chart reads, or it is counted twice. A negative reading is drawn as zero.
59121
59597
  *
59598
+ * **A tap shows the reading under it**, and keeps it until a tap lands
59599
+ * elsewhere. `helix-reading-change` says each move of the reading, by pointer,
59600
+ * tap or key, and `helix-reading-press` says a reading was clicked, tapped, or
59601
+ * pressed with Enter or Space, for a page that opens what a reading stands for.
59602
+ *
59122
59603
  * ## Attributes & Properties
59123
59604
  *
59124
59605
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -59160,6 +59641,11 @@ export type CustomElementsSolidJs = {
59160
59641
  * `{totalLabel}` the name for the sum, `{total}` the sum, written in the
59161
59642
  * locale, and `{shares}` each part's share, listed as the locale lists.
59162
59643
  * - `total-label`/`totalLabel`: The name for the sum of the parts, shown in the tooltip and the summary.
59644
+ * - `value-axis`/`valueAxis`: Draws the scale's numbers beside the plot, the `axis` part, at the levels
59645
+ * `gridlines` rules: amounts, or percentages under `share`.
59646
+ *
59647
+ * Absent draws none: bands read as a composition need no numbers beside
59648
+ * them, and the tooltip and the table hold every reading.
59163
59649
  * - `for`: The id of the table to read.
59164
59650
  *
59165
59651
  * Names a table in the same tree, so a chart inside another component's
@@ -59245,6 +59731,13 @@ export type CustomElementsSolidJs = {
59245
59731
  * browser harness's awaits it alone: a browser always runs the frame, and a
59246
59732
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
59247
59733
  *
59734
+ * ## Events
59735
+ *
59736
+ * Events that will be emitted by the component.
59737
+ *
59738
+ * - `helix-reading-change`: The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it.
59739
+ * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
59740
+ *
59248
59741
  * ## Methods
59249
59742
  *
59250
59743
  * Methods that can be called to access component functionality.
@@ -59281,11 +59774,18 @@ export type CustomElementsSolidJs = {
59281
59774
  * column's heading, read from the first row that has a cell there, so a
59282
59775
  * short first row does not lose the heading. `''` where no row has one.
59283
59776
  *
59777
+ * ## CSS Custom Properties
59778
+ *
59779
+ * CSS variables available for styling the component.
59780
+ *
59781
+ * - `--area-chart-axis`: The width of the axis, in `ch`, set from the widest number on it. Written by the component on the axis.
59782
+ *
59284
59783
  * ## CSS Parts
59285
59784
  *
59286
59785
  * Custom selectors for styling elements within the component.
59287
59786
  *
59288
59787
  * - `area`: One part's band.
59788
+ * - `axis`: The numbers of the scale beside the plot, under `value-axis`.
59289
59789
  * - `baseline`: The rule at zero, which is the floor of the drawing.
59290
59790
  * - `gridline`: One rule across the plot, under `gridlines`.
59291
59791
  * - `guide`: A rule down the reading a pointer is resting on.
@@ -59297,6 +59797,7 @@ export type CustomElementsSolidJs = {
59297
59797
  * - `plot`: The drawing, which takes focus to be read by key.
59298
59798
  * - `summary`: The total and each part's share at the latest reading, written as a sentence for screen readers.
59299
59799
  * - `svg`: The drawing surface the bands sit on.
59800
+ * - `tick`: One number on the axis, placed with `inset-block-start` at its level.
59300
59801
  * - `tooltip`: The bubble, forwarded from `Tooltip`.
59301
59802
  * - `tooltip-anchor`: The `Tooltip` element itself.
59302
59803
  * - `tooltip-arrow`: The bubble's point, forwarded from `Tooltip`.
@@ -59682,6 +60183,11 @@ export type CustomElementsSolidJs = {
59682
60183
  * The component writes the custom properties below with numbers it computes,
59683
60184
  * and the stylesheet that draws the chart reads them. Do not set them yourself.
59684
60185
  *
60186
+ * **A tap shows the reading under it**, and keeps it until a tap lands
60187
+ * elsewhere. `helix-reading-change` says each move of the reading, by pointer,
60188
+ * tap or key, and `helix-reading-press` says a reading was clicked, tapped, or
60189
+ * pressed with Enter or Space, for a page that opens what a reading stands for.
60190
+ *
59685
60191
  * ## Attributes & Properties
59686
60192
  *
59687
60193
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -59781,6 +60287,12 @@ export type CustomElementsSolidJs = {
59781
60287
  * - `summary-label`/`summaryLabel`: The summary's sentence. `{highestLabel}` is `highest-label`, and
59782
60288
  * `{readings}` each series' highest reading: the series, the category and
59783
60289
  * the reading as the table writes it.
60290
+ * - `value-axis`/`valueAxis`: Draws the numbers of the scale the bars are measured on, the `axis` part,
60291
+ * at the levels `gridlines` rules: down the side of columns, and along the
60292
+ * bottom of bars under `orientation="horizontal"`.
60293
+ *
60294
+ * Absent draws none with one scale, since bars compared with each other need
60295
+ * no numbers. With `secondary` both scales are drawn whatever this says.
59784
60296
  * - `for`: The id of the table to read.
59785
60297
  *
59786
60298
  * Names a table in the same tree, so a chart inside another component's
@@ -59866,6 +60378,13 @@ export type CustomElementsSolidJs = {
59866
60378
  * browser harness's awaits it alone: a browser always runs the frame, and a
59867
60379
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
59868
60380
  *
60381
+ * ## Events
60382
+ *
60383
+ * Events that will be emitted by the component.
60384
+ *
60385
+ * - `helix-reading-change`: The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it.
60386
+ * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
60387
+ *
59869
60388
  * ## Methods
59870
60389
  *
59871
60390
  * Methods that can be called to access component functionality.
@@ -59914,7 +60433,7 @@ export type CustomElementsSolidJs = {
59914
60433
  *
59915
60434
  * Custom selectors for styling elements within the component.
59916
60435
  *
59917
- * - `axis`: The numbers of one scale, drawn only when `secondary` splits the chart into two scales.
60436
+ * - `axis`: The numbers of one scale: the primary under `value-axis`, and both when `secondary` splits the chart into two scales.
59918
60437
  * - `band`: The category band under the pointer.
59919
60438
  * - `bar`: One column.
59920
60439
  * - `bar-wash-end`: The far stop of a bar's gradient, where one is used.
@@ -60700,6 +61219,13 @@ export type CustomElementsSolidJs = {
60700
61219
  *
60701
61220
  * Component attributes and properties that can be applied to the element or by using JavaScript.
60702
61221
  *
61222
+ * - `dismiss-label`/`dismissLabel`: The dismiss button's name, read by screen readers, with `{label}` for
61223
+ * what the callout is called: its heading, or the tone's name where it has
61224
+ * none.
61225
+ *
61226
+ * "Dismiss Scheduled maintenance" says which of several callouts the button
61227
+ * takes away, where every button was "Dismiss". A label without `{label}` is
61228
+ * read as written.
60703
61229
  * - `tone`: What kind of attention the passage needs.
60704
61230
  *
60705
61231
  * `tone` is the axis for what a thing means, and this is a subset of it: a
@@ -60717,16 +61243,6 @@ export type CustomElementsSolidJs = {
60717
61243
  * `danger` is said as "Error", the word a reader understands, and
60718
61244
  * `neutral` as "Note", for what the passage is.
60719
61245
  * - `dismissible`: Whether the element shows a control that dismisses it.
60720
- * - `dismiss-label`/`dismissLabel`: The dismiss control's label, read by screen readers.
60721
- *
60722
- * `attribute` is spelled out because Lit lowercases a property name to
60723
- * derive one rather than dash-casing it, so this would otherwise be
60724
- * reachable only as `dismisslabel`, which nobody would guess and no linter
60725
- * would catch.
60726
- *
60727
- * A word property: register it for a locale under the host's key. A family
60728
- * that names the control otherwise, such as Tag's `Remove {label}`,
60729
- * declares its own English with `@words` above the override.
60730
61246
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
60731
61247
  *
60732
61248
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -61893,6 +62409,13 @@ export type CustomElementsSolidJs = {
61893
62409
  * disabled>` turns the composer off. Sending is still `helix-send`, and it
61894
62410
  * does not submit the form.
61895
62411
  *
62412
+ * **`required`, `minlength` and `maxlength` are checked by the browser**, as
62413
+ * on a `<textarea>`, and the message is the browser's. `maxlength` stops the
62414
+ * field taking more. A draft that fails them does not send, and the composer
62415
+ * takes `:state(invalid)` and `aria-invalid` once the reader has tried to send
62416
+ * it, the form was submitted, or the reader edited the field and left it.
62417
+ * Tabbing past an empty composer marks nothing.
62418
+ *
61896
62419
  * **`typing` says whether the user is writing**, and `helix-typing` is sent
61897
62420
  * each time it changes: when they start, and when they send or stop for
61898
62421
  * `typing-timeout` milliseconds. Pass it on to show "is typing" to the other
@@ -61903,7 +62426,12 @@ export type CustomElementsSolidJs = {
61903
62426
  * Component attributes and properties that can be applied to the element or by using JavaScript.
61904
62427
  *
61905
62428
  * - `label`: The field's name, read by screen readers.
62429
+ * - `maxlength`/`maxLength`: The most characters a draft can have. The field stops taking more.
62430
+ * - `minlength`/`minLength`: The fewest characters a draft can have, once the reader has written in
62431
+ * the field, as on a `<textarea>`.
61906
62432
  * - `placeholder`: Placeholder text shown in an empty field.
62433
+ * - `required`: Whether the form needs a draft to submit. An empty draft never sends,
62434
+ * required or not.
61907
62435
  * - `rows`: How many rows the field opens at.
61908
62436
  *
61909
62437
  * It grows from there.
@@ -62055,6 +62583,7 @@ export type CustomElementsSolidJs = {
62055
62583
  *
62056
62584
  * These can be used to apply styling when a component is in a given state.
62057
62585
  *
62586
+ * - `invalid`: The draft fails `required`, `minlength`, `maxlength`, or a custom error, and the reader has tried to send or submit it, or edited the field and left it.
62058
62587
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
62059
62588
  */
62060
62589
  "helix-headless-chat-composer": Partial<
@@ -63340,6 +63869,7 @@ export type CustomElementsSolidJs = {
63340
63869
  * - `end`: Content at the trailing end, before the trigger.
63341
63870
  * - `feedback`: The message that says what is wrong with the value.
63342
63871
  * - `hint`: Help text under the field.
63872
+ * - `label`: The label, for content richer than the `label` text.
63343
63873
  * - `panel-footer`: Content in the panel under the picker, such as a note or an action.
63344
63874
  * - `panel-header`: Content in the panel above the picker, such as a heading or a shortcut.
63345
63875
  * - `start`: Content at the leading end of the field, inside its border.
@@ -63888,6 +64418,9 @@ export type CustomElementsSolidJs = {
63888
64418
  * | Escape | Closes the list and puts the chosen words back. On a closed field, a second Escape clears a single choice. |
63889
64419
  * | Tab | Closes the list and moves on. |
63890
64420
  * | Backspace | With `multiple`, on an empty field, removes the last tag. |
64421
+ * | Left | With `multiple`, with the caret at the start of the text, moves to the last tag's remove button. Right on a right-to-left page. |
64422
+ * | Left, Right on a tag | Move between the tags, and past the last back to the text. |
64423
+ * | Delete, Backspace on a tag | Removes the tag. |
63891
64424
  * | Space, Home, End, letters | Edit the text. |
63892
64425
  *
63893
64426
  * **ARIA.** The input is the `combobox`, named by the label, with
@@ -63903,7 +64436,8 @@ export type CustomElementsSolidJs = {
63903
64436
  * Set `autocomplete` to let a browser's autofill choose an option.
63904
64437
  *
63905
64438
  * With `multiple`, each chosen option is a tag in the field with its own remove
63906
- * control. The panel stays open and the filter clears after each choice, so the
64439
+ * control. The text is the field's one tab stop, and the arrow keys reach the
64440
+ * tags from it. The panel stays open and the filter clears after each choice, so the
63907
64441
  * next choice starts from the whole list.
63908
64442
  *
63909
64443
  * With `creatable`, the combobox offers a create row and fires `helix-create`.
@@ -64445,8 +64979,9 @@ export type CustomElementsSolidJs = {
64445
64979
  * **Keyboard.** Enter and Space copy, as they press a native button.
64446
64980
  *
64447
64981
  * The button is named `label`, or the host's `aria-label`, and its name
64448
- * changes to `copied-label` or `error-label` for the moment after a press,
64449
- * which is what a screen reader on it hears. The tooltip shows the same words.
64982
+ * changes to `copied-label` or `error-label` for the moment after a press. The
64983
+ * same words are said in a live region, so a screen reader hears the result,
64984
+ * and the tooltip shows them.
64450
64985
  *
64451
64986
  * ## Attributes & Properties
64452
64987
  *
@@ -64627,7 +65162,7 @@ export type CustomElementsSolidJs = {
64627
65162
  * Custom selectors for styling elements within the component.
64628
65163
  *
64629
65164
  * - `button`: The inner button.
64630
- * - `live`: The live region that says `pending-label` when the button becomes pending under focus. It is rendered from the first time the button is pending.
65165
+ * - `live`: The live region that says `copied-label` or `error-label` after a press, and `pending-label` when the button becomes pending under focus. It is rendered from the first time it says anything.
64631
65166
  * - `mark`: The clipboard icon, and the confirmation icon that replaces it.
64632
65167
  * - `spinner`: The ring a pending button turns, an empty element the styled button draws over the icon. It is rendered only while the button is pending.
64633
65168
  * - `tooltip`: The tooltip bubble, forwarded from the tooltip inside the button.
@@ -64690,6 +65225,10 @@ export type CustomElementsSolidJs = {
64690
65225
  * and shows a dash while only some are chosen.
64691
65226
  * - Shift with a press on a checkbox selects every row between it and the row
64692
65227
  * last chosen.
65228
+ * - `selection-behavior="replace"` makes a press or a move select the row
65229
+ * alone, as a file list does. Control or Command with a press adds or takes
65230
+ * out one row, and Shift with a press selects every row from the one last
65231
+ * chosen.
64693
65232
  *
64694
65233
  * To act on a single row, such as opening it, put a link or a button in a cell.
64695
65234
  *
@@ -64706,7 +65245,8 @@ export type CustomElementsSolidJs = {
64706
65245
  * | Enter, F2 | Moves into the cell's controls. Escape moves back to the cell, and Tab moves between the controls of one cell. |
64707
65246
  * | Enter, Space on a sortable heading | Sorts by the column. |
64708
65247
  * | Enter, Space on the `load-more` row | Sends `helix-load-more`. |
64709
- * | Space on a row | Selects the row, in a `selectable` table. |
65248
+ * | Space on a row | Selects the row, in a `selectable` table. Under `selection-behavior="replace"`, selects it alone, and Control or Command with Space adds or takes out the row. |
65249
+ * | Down, Up, Page Down, Page Up under `selection-behavior="replace"` | Selects the row it moves to alone. Control or Command with the key moves without selecting. |
64710
65250
  * | Shift with Down or Up | Selects the rows it moves across, in a `selectable` table. |
64711
65251
  * | Shift with Space | Selects every row from the one last chosen, in a `selectable` table. |
64712
65252
  * | Control or Command with A | Selects every row, in a `selectable` table. |
@@ -64902,6 +65442,12 @@ export type CustomElementsSolidJs = {
64902
65442
  * rows are chosen, written in the locale, and a language that needs plural
64903
65443
  * forms writes them: `{count, plural, one {# wybrany} few {# wybrane} many
64904
65444
  * {# wybranych} other {# wybranego}}`.
65445
+ * - `selection-behavior`/`selectionBehavior`: What a key or a press on a row does to the rows already selected, in a
65446
+ * `selectable` table. `toggle`, the default, keeps them: Space adds or takes
65447
+ * out the row. `replace` selects the row alone, as a file list does: Down and
65448
+ * Up carry the selection with them, and a press on a row selects it. Control
65449
+ * or Command with a press or Space adds or takes out one row, and with a move
65450
+ * goes without selecting. The checkboxes add or take out one row either way.
64905
65451
  * - `select-row-label`/`selectRowLabel`: The name of a row's checkbox. `{row}` is replaced with the row's value in
64906
65452
  * the first column that has a field, or with its key.
64907
65453
  * - `sort`: The sort order, as `field:direction`.
@@ -65005,7 +65551,9 @@ export type CustomElementsSolidJs = {
65005
65551
  * Areas where markup can be added to the component.
65006
65552
  *
65007
65553
  * - `(default)`: The columns, as `TableColumn` elements.
65554
+ * - `empty`: Content shown when there are no rows to show and none are loading, such as a picture and a link. Falls back to `empty-text`, which the live region still says.
65008
65555
  * - `footer`: Content below the grid. It replaces the built-in pagination.
65556
+ * - `loading`: Content shown while the rows load, such as a spinner. Falls back to `loading-text`, which the live region still says.
65009
65557
  * - `toolbar`: Content above the grid, such as a search field or actions.
65010
65558
  *
65011
65559
  * ## Methods
@@ -65404,6 +65952,7 @@ export type CustomElementsSolidJs = {
65404
65952
  *
65405
65953
  * - `feedback`: The error message under the field.
65406
65954
  * - `hint`: The help text under the field.
65955
+ * - `label`: The label, for content richer than the `label` text.
65407
65956
  * - `next-icon`: The icon on the calendar's next month control.
65408
65957
  * - `panel-footer`: Content in the panel under the calendar, such as a note or an action.
65409
65958
  * - `panel-header`: Content in the panel above the calendar, such as a heading or a shortcut.
@@ -66284,9 +66833,10 @@ export type CustomElementsSolidJs = {
66284
66833
  * **The line is a separator**, as `<hr>` is, and as Radix Separator, React
66285
66834
  * Aria Separator, and Web Awesome's divider are. It is named by any content
66286
66835
  * set into it, so a screen reader says "Or, separator" where you wrote "Or" on
66287
- * the line. Set `decorative` on a rule that separates nothing, such as one
66288
- * under a heading or between the facts of a byline, and it leaves the
66289
- * accessibility tree.
66836
+ * the line, and the words are read once, as that name. Set words into a
66837
+ * separator and no controls, which are hidden with them. Set `decorative` on
66838
+ * a rule that separates nothing, such as one under a heading or between the
66839
+ * facts of a byline, and it leaves the accessibility tree.
66290
66840
  *
66291
66841
  * Use `orientation="vertical"` between items on one line. A vertical divider
66292
66842
  * stretches to fit its flex parent and sets no height of its own.
@@ -66304,10 +66854,6 @@ export type CustomElementsSolidJs = {
66304
66854
  *
66305
66855
  * - `announced`: Whether screen readers announce the line as a separator, which they now do
66306
66856
  * by default.
66307
- *
66308
- * It dates from when the line was decorative by default. It is still read,
66309
- * and it wins over `decorative`, so a divider written with it stays a
66310
- * separator.
66311
66857
  * - `decorative`: Takes the line out of the accessibility tree, for a rule that separates
66312
66858
  * nothing: one under a heading, or between the facts of a byline.
66313
66859
  *
@@ -67498,7 +68044,8 @@ export type CustomElementsSolidJs = {
67498
68044
  *
67499
68045
  * **Keyboard.** The remove button is a tab stop of its own, and Enter or Space
67500
68046
  * on it asks to remove the filter. In a `FilterInput`, Backspace in the empty
67501
- * field asks to remove the last chip.
68047
+ * field asks to remove the last chip, the arrow keys move between the field
68048
+ * and the chips, and Delete or Backspace on a chip asks to remove it.
67502
68049
  *
67503
68050
  * The remove button is named `dismiss-label` followed by the chip's words,
67504
68051
  * such as "Remove filter Status is not open", so a row of chips says which
@@ -68033,6 +68580,9 @@ export type CustomElementsSolidJs = {
68033
68580
  * | Home, End | Highlights the first or the last suggestion while the panel is open. |
68034
68581
  * | Escape | Closes the panel and stops there, so a dialog around the field stays open. |
68035
68582
  * | Backspace | In an empty field, asks the last token to go. |
68583
+ * | Left | With the caret at the start of the text, moves to the last token's remove button. Right on a right-to-left page. |
68584
+ * | Left, Right on a token | Move between the tokens, and past the last back to the text. |
68585
+ * | Delete, Backspace on a token | Asks the token to go. |
68036
68586
  *
68037
68587
  * **Typed filters.** The field parses only the fields you declare. Write
68038
68588
  * `FilterField` elements, usually inside the `FilterMenu` slotted into `start`,
@@ -70073,6 +70623,11 @@ export type CustomElementsSolidJs = {
70073
70623
  * the shortcut with the control. A chord the page wrote there itself is left
70074
70624
  * alone, and the key takes back only what it added.
70075
70625
  *
70626
+ * A chord is drawn with the platform's modifiers first, in its order, so one
70627
+ * `keys` value is right everywhere: `mod+shift+p` is `⇧⌘P` on an Apple
70628
+ * keyboard and `Ctrl+Shift+P` elsewhere. Where it is drawn in glyphs, it is
70629
+ * read in words, such as `Shift Command P`.
70630
+ *
70076
70631
  * `caps` draws a chord as a key per key: each is a `key` part and the `+`
70077
70632
  * between two a `separator` part, so a sheet can draw a cap for each.
70078
70633
  * `key-labels` renames any key, on every platform, such as
@@ -70646,6 +71201,9 @@ export type CustomElementsSolidJs = {
70646
71201
  * `<svg>` that fills its box scales with the box, so the same `font-size` can
70647
71202
  * render at 10px in a narrow chart and 43px in a wide one.
70648
71203
  *
71204
+ * `value-axis` draws the scale's numbers beside the plot, at the levels
71205
+ * `gridlines` rules, written in `locale`.
71206
+ *
70649
71207
  * The table is the accessible representation, and the drawing is hidden from
70650
71208
  * screen readers, who get the numbers. The `summary` part names the chart, from
70651
71209
  * `label` or the table's caption, and gives each series' latest reading.
@@ -70656,6 +71214,11 @@ export type CustomElementsSolidJs = {
70656
71214
  * a reading. The tooltip follows, the `live` part says the reading in words,
70657
71215
  * and Escape puts the tooltip away.
70658
71216
  *
71217
+ * **A tap shows the reading under it**, and keeps it until a tap lands
71218
+ * elsewhere. `helix-reading-change` says each move of the reading, by pointer,
71219
+ * tap or key, and `helix-reading-press` says a reading was clicked, tapped, or
71220
+ * pressed with Enter or Space, for a page that opens what a reading stands for.
71221
+ *
70659
71222
  * ## Attributes & Properties
70660
71223
  *
70661
71224
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -70754,6 +71317,12 @@ export type CustomElementsSolidJs = {
70754
71317
  * masked with one disc per series and every stroke stops at its own ring's
70755
71318
  * inner edge. `mask-composite: intersect` is what makes N holes out of N
70756
71319
  * layers; a single `mask-image` would only ever cut the last one.
71320
+ * - `value-axis`/`valueAxis`: Draws the scale's numbers beside the plot, the `axis` part, at the levels
71321
+ * `gridlines` rules, so a reading can be measured off the drawing as well
71322
+ * as read from the tooltip.
71323
+ *
71324
+ * Absent draws none: a line read for its shape needs no numbers beside it,
71325
+ * and the tooltip and the table hold every reading.
70757
71326
  * - `zero`: Whether the range always includes zero.
70758
71327
  *
70759
71328
  * Absent measures from the data's own extent, which is what a line is for.
@@ -70845,6 +71414,13 @@ export type CustomElementsSolidJs = {
70845
71414
  * browser harness's awaits it alone: a browser always runs the frame, and a
70846
71415
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
70847
71416
  *
71417
+ * ## Events
71418
+ *
71419
+ * Events that will be emitted by the component.
71420
+ *
71421
+ * - `helix-reading-change`: The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it.
71422
+ * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
71423
+ *
70848
71424
  * ## Methods
70849
71425
  *
70850
71426
  * Methods that can be called to access component functionality.
@@ -70887,12 +71463,14 @@ export type CustomElementsSolidJs = {
70887
71463
  *
70888
71464
  * - `--chart-terminus-x`: Where a series' last reading sits horizontally, as a percentage. Written by the component.
70889
71465
  * - `--chart-terminus-y`: Where a series' last reading sits vertically, as a percentage. Written by the component.
71466
+ * - `--line-chart-axis`: The width of the axis, in `ch`, set from the widest number on it. Written by the component on the axis.
70890
71467
  *
70891
71468
  * ## CSS Parts
70892
71469
  *
70893
71470
  * Custom selectors for styling elements within the component.
70894
71471
  *
70895
71472
  * - `area`: The wash under one line, where `area` is set.
71473
+ * - `axis`: The numbers of the scale beside the plot, under `value-axis`.
70896
71474
  * - `band`: The band around the reading under the pointer.
70897
71475
  * - `baseline`: The rule at zero, where zero is inside the range.
70898
71476
  * - `gridline`: One rule across the plot, under `gridlines`.
@@ -70909,6 +71487,7 @@ export type CustomElementsSolidJs = {
70909
71487
  * - `summary`: The chart's name and each series' latest reading, written as a sentence for screen readers. Hide it visually.
70910
71488
  * - `svg`: The drawing surface the lines and areas sit on.
70911
71489
  * - `terminus`: The mark on one series' last reading.
71490
+ * - `tick`: One number on the axis, placed with `inset-block-start` at its level.
70912
71491
  * - `tooltip`: The bubble, forwarded from `Tooltip`.
70913
71492
  * - `tooltip-anchor`: The `Tooltip` element itself.
70914
71493
  * - `tooltip-arrow`: The bubble's point, forwarded from `Tooltip`.
@@ -74934,14 +75513,10 @@ export type CustomElementsSolidJs = {
74934
75513
  * ends. Matching still reads the label, so what somebody types is matched
74935
75514
  * against the name rather than against prose about it.
74936
75515
  *
74937
- * **A property and not a slot, which is the departure worth explaining.** The
74938
- * area rules say a content property is its slot's fallback, and that holds for
74939
- * a region always drawn: `Avatar`'s initials, `Tooltip`'s text. This one is
74940
- * usually absent, and a wrapped slot generates a box whether or not it is
74941
- * filled, so every option without a caption would carry an empty line. The
74942
- * detection that would avoid it does not exist, `:host(:has())` being invalid
74943
- * and the server having no children to inspect. A property is known at render
74944
- * time, so the component can decline to draw the box at all.
75516
+ * For a caption richer than a string, slot it into `description`. The
75517
+ * property is that slot's fallback inside the `description` part. With no
75518
+ * property the slot is drawn bare, which takes no box while it is empty, so
75519
+ * an option without a caption carries no empty line.
74945
75520
  *
74946
75521
  * It does not reflect, per the rule that payload state stays off the host: a
74947
75522
  * string is not a fact a selector needs.
@@ -75010,6 +75585,12 @@ export type CustomElementsSolidJs = {
75010
75585
  * name is the fault `TreeItem` avoids by mirroring to `data-selected`.
75011
75586
  * Splitting them means moving what every stylesheet selects on, which is a
75012
75587
  * change of its own rather than a property being added. (property only)
75588
+ * - `selectionFollowsActive`: Whether the option says it is selected while the keyboard is on it.
75589
+ *
75590
+ * Written by a control whose list holds suggestions, such as `FilterInput`:
75591
+ * nothing there stays chosen, so the row the keyboard is on is the
75592
+ * selection, as the APG combobox's list with selection that follows focus
75593
+ * says. No attribute: it is coordination between elements. (property only)
75013
75594
  * - `text`: The option's text, which a listbox matches typed text against.
75014
75595
  *
75015
75596
  * Read from the rendered content rather than required as a property, because
@@ -75082,7 +75663,9 @@ export type CustomElementsSolidJs = {
75082
75663
  * Areas where markup can be added to the component.
75083
75664
  *
75084
75665
  * - `(default)`: The option's label.
75666
+ * - `description`: A second line under the label, for content richer than the `description` text.
75085
75667
  * - `end`: Content after the label, such as a shortcut or a count.
75668
+ * - `indicator`: An icon shown while the option is chosen, in place of the check the styled option draws.
75086
75669
  * - `start`: Content before the label, such as an icon or an avatar.
75087
75670
  *
75088
75671
  * ## Methods
@@ -75110,6 +75693,8 @@ export type CustomElementsSolidJs = {
75110
75693
  * These can be used to apply styling when a component is in a given state.
75111
75694
  *
75112
75695
  * - `active`: While the keyboard is on the option, which is the option `aria-activedescendant` names.
75696
+ * - `disabled`: While the option cannot be chosen.
75697
+ * - `has-indicator`: An icon is slotted into `indicator`.
75113
75698
  * - `selected`: While the option is chosen.
75114
75699
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
75115
75700
  */
@@ -76698,7 +77283,11 @@ export type CustomElementsSolidJs = {
76698
77283
  *
76699
77284
  * No attribute: it is coordination between elements, and a consumer has no
76700
77285
  * reason to set it. (property only)
76701
- * - `items`: The radios, in light-DOM order. Client only: the server has no tree. (property only) (readonly)
77286
+ * - `items`: The radios, in light-DOM order. Client only: the server has no tree.
77287
+ *
77288
+ * Descendants, as `Checkbox.Group` reads its boxes, so a radio inside a
77289
+ * layout wrapper of yours is one of the group's. A radio held by a group
77290
+ * nested inside this one is that group's. (property only) (readonly)
76702
77291
  * - `validity`: Whether the control meets its constraints, and why not. (property only) (readonly)
76703
77292
  * - `validationMessage`: The message the browser would show for the control, or an empty string. (property only) (readonly)
76704
77293
  * - `willValidate`: Whether the control is checked when its form is submitted. (property only) (readonly)
@@ -77306,6 +77895,11 @@ export type CustomElementsSolidJs = {
77306
77895
  * reads in its own direction. The summary and the tooltip bubble follow the
77307
77896
  * page's direction.
77308
77897
  *
77898
+ * **A tap shows the reading under it**, and keeps it until a tap lands
77899
+ * elsewhere. `helix-reading-change` says each move of the reading, by pointer,
77900
+ * tap or key, and `helix-reading-press` says a reading was clicked, tapped, or
77901
+ * pressed with Enter or Space, for a page that opens what a reading stands for.
77902
+ *
77309
77903
  * ## Attributes & Properties
77310
77904
  *
77311
77905
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -77426,6 +78020,13 @@ export type CustomElementsSolidJs = {
77426
78020
  * browser harness's awaits it alone: a browser always runs the frame, and a
77427
78021
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
77428
78022
  *
78023
+ * ## Events
78024
+ *
78025
+ * Events that will be emitted by the component.
78026
+ *
78027
+ * - `helix-reading-change`: The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it.
78028
+ * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
78029
+ *
77429
78030
  * ## Methods
77430
78031
  *
77431
78032
  * Methods that can be called to access component functionality.
@@ -80237,7 +80838,7 @@ export type CustomElementsSolidJs = {
80237
80838
  * through cell by cell, the headings included, as React Aria's table is. The
80238
80839
  * table is then a `grid` and each value a `gridcell`, and the table gives
80239
80840
  * every cell a `tabindex` so focus can rest on it: set `grid` only where the
80240
- * cells may carry one. For typeahead and range selection, use `DataTable`.
80841
+ * cells may carry one.
80241
80842
  *
80242
80843
  * | Key | What it does |
80243
80844
  * |---|---|
@@ -80251,7 +80852,10 @@ export type CustomElementsSolidJs = {
80251
80852
  * | Enter, Space on a sortable heading | Sorts by the column. |
80252
80853
  * | Space on a row, Enter or Space on its checkbox cell | Selects the row, in a `selectable` table. |
80253
80854
  * | Enter or Space on a grip cell | Picks the row up, or drops it, in a `reorderable` table. Up, Down, Home, and End move a row picked up, and Escape puts it back. |
80855
+ * | Shift with Down or Up | Selects the rows it moves across, in a `selectable` table. |
80856
+ * | Shift with Space | Selects every row from the one last chosen, in a `selectable` table. |
80254
80857
  * | Control or Command with A | Selects every row, in a `selectable` table. |
80858
+ * | A letter or a word | Moves to the next row whose first cell starts with what you typed. |
80255
80859
  * | Tab | Leaves the table. |
80256
80860
  *
80257
80861
  * The CSS custom properties listed for this component are written by it and
@@ -80393,7 +80997,9 @@ export type CustomElementsSolidJs = {
80393
80997
  * Areas where markup can be added to the component.
80394
80998
  *
80395
80999
  * - `(default)`: The table's rows.
81000
+ * - `empty`: Content shown when there are no rows and none are loading, such as a picture and a link. Falls back to `empty-text`, which the live region still says.
80396
81001
  * - `heading`: Words that name the table, shown above it, such as a heading.
81002
+ * - `loading`: Content shown while the rows load, such as a spinner. Falls back to `loading-text`, which the live region still says.
80397
81003
  *
80398
81004
  * ## Methods
80399
81005
  *
@@ -80455,7 +81061,8 @@ export type CustomElementsSolidJs = {
80455
81061
  * it, or make it interactive.
80456
81062
  *
80457
81063
  * In a `selectable` table the row draws a checkbox cell before its own cells,
80458
- * and `value` is the key the table's `selected` lists it by.
81064
+ * and `value` is the key the table's `selected` lists it by. `disabled` keeps
81065
+ * the row out of the selection and out of its link.
80459
81066
  *
80460
81067
  * In a `reorderable` table the row draws a grip cell before those, holding a
80461
81068
  * button named by the table's `move-row-label`, and `value` is the key
@@ -80475,6 +81082,12 @@ export type CustomElementsSolidJs = {
80475
81082
  *
80476
81083
  * Component attributes and properties that can be applied to the element or by using JavaScript.
80477
81084
  *
81085
+ * - `disabled`: Takes the row out of the table's selection and out of its link: the row's
81086
+ * checkbox is disabled, Space, Shift ranges, and the checkbox in the heading
81087
+ * pass over it, and a press does not follow `href`. A row already selected
81088
+ * stays selected. A screen reader hears it as unavailable, and in a `grid`
81089
+ * table the arrow keys still reach it, as a disabled cell in a grid is
81090
+ * reached.
80478
81091
  * - `href`: The URL a press on the row follows, which makes the whole row a link.
80479
81092
  * Empty, the default, leaves presses to the row's cells.
80480
81093
  * - `rel`: The `rel` of the row's link. You set it yourself, as on an anchor.
@@ -80536,7 +81149,7 @@ export type CustomElementsSolidJs = {
80536
81149
  * - `dragging`: The row is being moved, in a `reorderable` table.
80537
81150
  * - `drop-after`: The row being moved goes after this one when it is dropped.
80538
81151
  * - `drop-before`: The row being moved goes before this one when it is dropped.
80539
- * - `link`: While the row has `href`, so a press on it follows the link.
81152
+ * - `link`: While the row has `href` and is not `disabled`, so a press on it follows the link.
80540
81153
  * - `selected`: While the row is selected, in a `selectable` table.
80541
81154
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
80542
81155
  */
@@ -80881,7 +81494,10 @@ export type CustomElementsSolidJs = {
80881
81494
  * focus moves to the next tag, or the previous one after the last.
80882
81495
  *
80883
81496
  * `selection-mode` lets a reader select tags, with Space, Enter or a press:
80884
- * `single` selects one at a time and `multiple` any number. `value` holds the
81497
+ * `single` selects one at a time and `multiple` any number. In `multiple`,
81498
+ * Shift with an arrow, Home or End selects the range from the tag last
81499
+ * pressed to the tag focus moves to, and Control or Command with A selects
81500
+ * every tag that is not disabled. `value` holds the
80885
81501
  * selected tags' values, separated by commas, and a change asks with
80886
81502
  * `helix-before-change` and tells with `change`. Enter on a tag with an
80887
81503
  * `href` follows its link. A `disabled` tag is passed over. A selected tag
@@ -80896,6 +81512,8 @@ export type CustomElementsSolidJs = {
80896
81512
  * set is a `group`, and focus moves to its `empty` part,
80897
81513
  * which holds the `empty` slot: put words there such as "No filters" for a
80898
81514
  * reader to hear. With nothing slotted it says `empty-label`, "No tags".
81515
+ * Where only disabled tags are left, the first of them holds the tab stop and
81516
+ * takes focus, so the reader stays in the set.
80899
81517
  *
80900
81518
  * ## Attributes & Properties
80901
81519
  *
@@ -81011,6 +81629,12 @@ export type CustomElementsSolidJs = {
81011
81629
  *
81012
81630
  * Absent is the tag's own words, its category first.
81013
81631
  * - `dismissible`: Whether the element shows a control that dismisses it.
81632
+ * - `dismissTabStop`: Whether the remove button is a tab stop of its own, outside a `Tag.Group`.
81633
+ *
81634
+ * A field that holds tags as its tokens, such as a `multiple` Combobox,
81635
+ * writes `false`: the field's text is its one tab stop, and the arrow keys
81636
+ * move from the text to the tags. No attribute: it is coordination between
81637
+ * elements, as `focusable` is. (property only)
81014
81638
  * - `focusable`: Whether the tag holds its group's tab stop.
81015
81639
  *
81016
81640
  * Written by `Tag.Group` on every tag it holds, and unset outside one, which
@@ -81623,6 +82247,7 @@ export type CustomElementsSolidJs = {
81623
82247
  *
81624
82248
  * - `feedback`: The message that says what is wrong with the value.
81625
82249
  * - `hint`: Help under the field.
82250
+ * - `label`: The label, for content richer than the `label` text.
81626
82251
  * - `panel-footer`: Content in the panel under the times, such as a note or an action.
81627
82252
  * - `panel-header`: Content in the panel above the times, such as a heading or a shortcut.
81628
82253
  * - `trigger`: The icon on the field that shows a list opens.
@@ -82927,6 +83552,11 @@ export type CustomElementsSolidJs = {
82927
83552
  * `selection-mode="multiple"` it is a `<button>` that says whether it is
82928
83553
  * pressed with `aria-pressed`.
82929
83554
  *
83555
+ * **On its own, outside a `Toggle.Group`, it is a toggle button**, as React
83556
+ * Aria's `ToggleButton`: a `<button>` with `aria-pressed`. A press, Enter or
83557
+ * Space sends `helix-select`, which you can cancel, then flips `selected` and
83558
+ * sends `change`. Write `selected` in the markup to start it pressed.
83559
+ *
82930
83560
  * Do not use it for navigation. For navigation, use links marked with
82931
83561
  * `aria-current` and styled by the `data-navigation-item` recipe in the base
82932
83562
  * layer. The recipe has the same look, and links are not announced as choices.
@@ -82968,8 +83598,8 @@ export type CustomElementsSolidJs = {
82968
83598
  * name is the fault `TreeItem` avoids by mirroring to `data-selected`.
82969
83599
  * Splitting them means moving what every stylesheet selects on, which is a
82970
83600
  * change of its own rather than a property being added. (property only)
82971
- * - `focusable`: Whether the item holds the group's tab stop. Unset, the chosen item holds
82972
- * it.
83601
+ * - `focusable`: Whether the item holds the group's tab stop. Unset, no group holds the
83602
+ * item, and it is a toggle button with a tab stop of its own.
82973
83603
  *
82974
83604
  * Written by the group on every item: `true` for the chosen item, or for the
82975
83605
  * first item that can be chosen while there is no selection to carry the
@@ -83006,6 +83636,7 @@ export type CustomElementsSolidJs = {
83006
83636
  *
83007
83637
  * Events that will be emitted by the component.
83008
83638
  *
83639
+ * - `change`: Fired after a toggle button on its own is pressed or released.
83009
83640
  * - `helix-select`: Fired when the item is chosen. Cancelable: call `preventDefault()` to keep the current choice.
83010
83641
  *
83011
83642
  * ## Slots
@@ -83018,13 +83649,13 @@ export type CustomElementsSolidJs = {
83018
83649
  *
83019
83650
  * Methods that can be called to access component functionality.
83020
83651
  *
83652
+ * - `select() => boolean`: Chooses the item in its group, or, on its own, flips `selected` once
83653
+ * `helix-select` stands and sends `change`.
83021
83654
  * - `focusItem() => void`: Moves focus to the item's control, for the set's arrow keys.
83022
83655
  *
83023
83656
  * The set drives the keys and cannot reach the control itself, which is
83024
83657
  * inside this shadow root, so the intent is a method and the internals stay
83025
83658
  * the item's.
83026
- * - `select() => boolean`: Selects the item and fires `helix-select`. Returns `false` if the item is
83027
- * disabled or a listener cancels the event.
83028
83659
  *
83029
83660
  * ## CSS Parts
83030
83661
  *
@@ -84504,6 +85135,10 @@ export type CustomElementsSolidJs = {
84504
85135
  * sends `helix-end`. `shuffle` plays the entries in a random order, starting
84505
85136
  * from the one that is current, and `previous` retraces that order.
84506
85137
  *
85138
+ * **The player is named by the current entry**, and the device's own media
85139
+ * controls show the entry as the title. A player you gave a `label` keeps
85140
+ * your name, and only the title follows the entry.
85141
+ *
84507
85142
  * **Keyboard.** Each entry is a button in the tab order, and Enter or Space
84508
85143
  * plays it. The current entry carries `aria-current`. While focus is on the
84509
85144
  * player, the player's own keys work, and `Video` lists them. Its previous
@@ -84749,6 +85384,9 @@ export type CustomElementsSolidJs = {
84749
85384
  * - `label`: Accessible name for the video, which its filename does not provide.
84750
85385
  * - `loading-label`/`loadingLabel`: The text announced while the video waits for more data.
84751
85386
  * - `loop`: Whether the video starts again at the end.
85387
+ * - `media-title`/`mediaTitle`: The title the device's own media controls show while the video plays,
85388
+ * such as on a lock screen. Empty, the default, shows `label`. A playlist
85389
+ * writes the current entry's name here.
84752
85390
  * - `more-label`/`moreLabel`: What the button that opens `overflow-controls` is called.
84753
85391
  * - `mute-label`/`muteLabel`: The name of the mute control. The control shows as pressed while the video
84754
85392
  * is muted.
@@ -85102,6 +85740,12 @@ export type CustomElementsSolidJs = {
85102
85740
  * the last item says "Loading more" (`loading-label`, or your own content in
85103
85741
  * the `loading` slot). `scrollToIndex` takes a reader to an item.
85104
85742
  *
85743
+ * **An empty list.** Set `empty-label`, or put your own content in the `empty`
85744
+ * slot, for a row shown when there are no items and none are loading, such as
85745
+ * "No messages yet" and a link to write one. Without either, an empty list
85746
+ * shows nothing, since a list whose items have not arrived yet has not said
85747
+ * it has none.
85748
+ *
85105
85749
  * **Row height.** Rows are placed by `estimate` until they are drawn. Then the
85106
85750
  * list reads the drawn rows' height once and places every row by it, so a
85107
85751
  * wrong estimate still reaches the last item. Set `measured` for rows of
@@ -85124,6 +85768,8 @@ export type CustomElementsSolidJs = {
85124
85768
  * - `columns`: How many items a line holds. One, the default, is a list; more lays the
85125
85769
  * items out as a grid of that many equal columns, windowed a line at a
85126
85770
  * time, with Left and Right moving along a line.
85771
+ * - `empty-label`/`emptyLabel`: The text of the row shown when there are no items and none are loading,
85772
+ * where the `empty` slot is empty. Empty, the default, shows no row.
85127
85773
  * - `estimate`: The height of one row, in pixels, used to find the row at a scroll offset.
85128
85774
  *
85129
85775
  * An estimate rather than a measurement while `measured` is off, which is
@@ -85213,6 +85859,7 @@ export type CustomElementsSolidJs = {
85213
85859
  * Areas where markup can be added to the component.
85214
85860
  *
85215
85861
  * - `(default)`: The `<template>` that defines one row. The list writes the rows it renders beside it, and this slot shows them between the two spacers.
85862
+ * - `empty`: Content for the row shown when there are no items and none are loading. Falls back to `empty-label`.
85216
85863
  * - `loading`: Content for the row after the last item while `loading` is set. Falls back to `loading-label`.
85217
85864
  *
85218
85865
  * ## Methods
@@ -85231,6 +85878,7 @@ export type CustomElementsSolidJs = {
85231
85878
  *
85232
85879
  * - `after`: The space that stands in for the rows below the rendered ones.
85233
85880
  * - `before`: The space that stands in for the rows above the rendered ones.
85881
+ * - `empty`: The row shown when there are no items and none are loading, where `empty-label` or the `empty` slot gives it content.
85234
85882
  * - `loading`: The row after the last item while `loading` is set.
85235
85883
  * - `viewport`: The scrolling box. On this tier, it needs only a block size.
85236
85884
  *
@@ -85251,6 +85899,8 @@ export type CustomElementsSolidJs = {
85251
85899
  export type CustomCssProperties = {
85252
85900
  /** The height of the content, in pixels, written on the `content` part while the section is open. */
85253
85901
  "--accordion-content-height"?: (string) | undefined;
85902
+ /** The width of the axis, in `ch`, set from the widest number on it. Written by the component on the axis. */
85903
+ "--area-chart-axis"?: (string) | undefined;
85254
85904
  /** The width of an axis, in `ch`, set from the widest number on it. The chart sets it on the axis itself, and only when the categories run along the bottom. In a horizontal chart the axis is a row, one line high. */
85255
85905
  "--bar-chart-axis"?: (string) | undefined;
85256
85906
  /** The color of the secondary axis, when one series is on it. The chart sets it from that series' `--chart-series-*` property, so the axis is drawn in whatever color that property resolves to. */
@@ -85331,6 +85981,8 @@ export type CustomCssProperties = {
85331
85981
  "--chart-terminus-x"?: (string) | undefined;
85332
85982
  /** Where a series' last reading sits vertically, as a percentage. Written by the component. */
85333
85983
  "--chart-terminus-y"?: (string) | undefined;
85984
+ /** The width of the axis, in `ch`, set from the widest number on it. Written by the component on the axis. */
85985
+ "--line-chart-axis"?: (string) | undefined;
85334
85986
  /** The number of the first row, written where `start` or `reversed` moves it. */
85335
85987
  "--list-first"?: (string) | undefined;
85336
85988
  /** What each row adds to the number before it: `1`, or `-1` where `reversed`. */