@fusion.dev/helix-headless 0.150.0 → 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 (40) hide show
  1. package/custom-elements.json +741 -66
  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/callout/root/callout-root.d.ts +20 -0
  7. package/dist/callout/root/callout-root.js +19 -4
  8. package/dist/chat/composer/chat-composer.d.ts +30 -0
  9. package/dist/chat/composer/chat-composer.js +47 -2
  10. package/dist/chat/root/chat-root.d.ts +10 -0
  11. package/dist/chat/root/chat-root.js +14 -0
  12. package/dist/data-table/root/data-table-root.d.ts +34 -2
  13. package/dist/data-table/root/data-table-root.js +63 -2
  14. package/dist/divider/root/divider-root.d.ts +8 -6
  15. package/dist/divider/root/divider-root.js +10 -2
  16. package/dist/element-events.generated.js +4 -0
  17. package/dist/kbd/root/kbd-root.d.ts +7 -1
  18. package/dist/kbd/root/kbd-root.js +8 -4
  19. package/dist/line-chart/root/line-chart-root.d.ts +36 -0
  20. package/dist/line-chart/root/line-chart-root.js +15 -2
  21. package/dist/scatter-chart/root/scatter-chart-root.d.ts +18 -0
  22. package/dist/scatter-chart/root/scatter-chart-root.js +38 -15
  23. package/dist/table/column/table-column.js +3 -2
  24. package/dist/table/grid-controller.d.ts +14 -2
  25. package/dist/table/grid-controller.js +27 -1
  26. package/dist/table/root/table-root.d.ts +30 -4
  27. package/dist/table/root/table-root.js +45 -7
  28. package/dist/table/row/table-row.d.ts +12 -2
  29. package/dist/table/row/table-row.js +8 -2
  30. package/dist/video/root/video-root.d.ts +6 -0
  31. package/dist/video/root/video-root.js +5 -1
  32. package/dist/video-playlist/root/video-playlist-root.d.ts +4 -0
  33. package/dist/video-playlist/root/video-playlist-root.js +4 -1
  34. package/dist/virtual-list/root/virtual-list-root.d.ts +23 -1
  35. package/dist/virtual-list/root/virtual-list-root.js +21 -2
  36. package/lint.json +1 -1
  37. package/package.json +5 -5
  38. package/types/jsx.d.ts +648 -98
  39. package/types/vue.d.ts +195 -43
  40. 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;
@@ -23233,6 +23436,18 @@ form would submit it. */
23233
23436
  textContent?: (string | number) | undefined;
23234
23437
  };
23235
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
+
23236
23451
  export type HelixHeadlessScatterChartProps = {
23237
23452
  /** The word for the strength of the relation, `{correlationLabel}` in
23238
23453
  `series-label`. */
@@ -23329,6 +23544,15 @@ Set it to the words of the page's language, such as `{position} von
23329
23544
  {count}`, or to nothing to say no position. A slice or a series a
23330
23545
  legend hid is not counted. */
23331
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;
23332
23556
  };
23333
23557
 
23334
23558
  export type HelixHeadlessScatterChartSolidJsProps = {
@@ -23427,6 +23651,14 @@ Set it to the words of the page's language, such as `{position} von
23427
23651
  {count}`, or to nothing to say no position. A slice or a series a
23428
23652
  legend hid is not counted. */
23429
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;
23430
23662
 
23431
23663
  /** Set the innerHTML of the element */
23432
23664
  innerHTML?: (string) | undefined;
@@ -26559,6 +26791,13 @@ say that without the component knowing what a row looks like. */
26559
26791
  };
26560
26792
 
26561
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;
26562
26801
  /** The URL a press on the row follows, which makes the whole row a link.
26563
26802
  Empty, the default, leaves presses to the row's cells. */
26564
26803
  href?: (HelixHeadlessTableRow["href"]) | undefined;
@@ -26572,6 +26811,13 @@ known by its place among the rows as written. */
26572
26811
  };
26573
26812
 
26574
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;
26575
26821
  /** The URL a press on the row follows, which makes the whole row a link.
26576
26822
  Empty, the default, leaves presses to the row's cells. */
26577
26823
  "prop:href"?: (HelixHeadlessTableRow["href"]) | undefined;
@@ -31304,6 +31550,14 @@ regardless, because a reader who stopped it is deciding what to do next. */
31304
31550
  loadingLabel?: (HelixHeadlessVideo["loadingLabel"]) | undefined;
31305
31551
  /** Whether the video starts again at the end. */
31306
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;
31307
31561
  /** What the button that opens `overflow-controls` is called. */
31308
31562
  "more-label"?: (HelixHeadlessVideo["moreLabel"]) | undefined;
31309
31563
  /** What the button that opens `overflow-controls` is called. */
@@ -31733,6 +31987,14 @@ regardless, because a reader who stopped it is deciding what to do next. */
31733
31987
  "prop:loadingLabel"?: (HelixHeadlessVideo["loadingLabel"]) | undefined;
31734
31988
  /** Whether the video starts again at the end. */
31735
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;
31736
31998
  /** What the button that opens `overflow-controls` is called. */
31737
31999
  "attr:more-label"?: (HelixHeadlessVideo["moreLabel"]) | undefined;
31738
32000
  /** What the button that opens `overflow-controls` is called. */
@@ -31995,6 +32257,12 @@ export type HelixHeadlessVirtualListProps = {
31995
32257
  items out as a grid of that many equal columns, windowed a line at a
31996
32258
  time, with Left and Right moving along a line. */
31997
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;
31998
32266
  /** The height of one row, in pixels, used to find the row at a scroll offset.
31999
32267
 
32000
32268
  An estimate rather than a measurement while `measured` is off, which is
@@ -32094,6 +32362,12 @@ export type HelixHeadlessVirtualListSolidJsProps = {
32094
32362
  items out as a grid of that many equal columns, windowed a line at a
32095
32363
  time, with Left and Right moving along a line. */
32096
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;
32097
32371
  /** The height of one row, in pixels, used to find the row at a scroll offset.
32098
32372
 
32099
32373
  An estimate rather than a measurement while `measured` is off, which is
@@ -32748,6 +33022,9 @@ export type CustomElements = {
32748
33022
  * compare the parts with each other; the scale then fits the largest part
32749
33023
  * rather than the total.
32750
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
+ *
32751
33028
  * The drawing is hidden from screen readers. The text summary gives the latest
32752
33029
  * reading's total and each part's share of it, and the table beside the chart
32753
33030
  * has every number.
@@ -32761,6 +33038,11 @@ export type CustomElements = {
32761
33038
  * Every numeric column is a part, so leave a total column out of the table the
32762
33039
  * chart reads, or it is counted twice. A negative reading is drawn as zero.
32763
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
+ *
32764
33046
  * ## Attributes & Properties
32765
33047
  *
32766
33048
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -32802,6 +33084,11 @@ export type CustomElements = {
32802
33084
  * `{totalLabel}` the name for the sum, `{total}` the sum, written in the
32803
33085
  * locale, and `{shares}` each part's share, listed as the locale lists.
32804
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.
32805
33092
  * - `for`: The id of the table to read.
32806
33093
  *
32807
33094
  * Names a table in the same tree, so a chart inside another component's
@@ -32887,6 +33174,13 @@ export type CustomElements = {
32887
33174
  * browser harness's awaits it alone: a browser always runs the frame, and a
32888
33175
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
32889
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
+ *
32890
33184
  * ## Methods
32891
33185
  *
32892
33186
  * Methods that can be called to access component functionality.
@@ -32923,11 +33217,18 @@ export type CustomElements = {
32923
33217
  * column's heading, read from the first row that has a cell there, so a
32924
33218
  * short first row does not lose the heading. `''` where no row has one.
32925
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
+ *
32926
33226
  * ## CSS Parts
32927
33227
  *
32928
33228
  * Custom selectors for styling elements within the component.
32929
33229
  *
32930
33230
  * - `area`: One part's band.
33231
+ * - `axis`: The numbers of the scale beside the plot, under `value-axis`.
32931
33232
  * - `baseline`: The rule at zero, which is the floor of the drawing.
32932
33233
  * - `gridline`: One rule across the plot, under `gridlines`.
32933
33234
  * - `guide`: A rule down the reading a pointer is resting on.
@@ -32939,6 +33240,7 @@ export type CustomElements = {
32939
33240
  * - `plot`: The drawing, which takes focus to be read by key.
32940
33241
  * - `summary`: The total and each part's share at the latest reading, written as a sentence for screen readers.
32941
33242
  * - `svg`: The drawing surface the bands sit on.
33243
+ * - `tick`: One number on the axis, placed with `inset-block-start` at its level.
32942
33244
  * - `tooltip`: The bubble, forwarded from `Tooltip`.
32943
33245
  * - `tooltip-anchor`: The `Tooltip` element itself.
32944
33246
  * - `tooltip-arrow`: The bubble's point, forwarded from `Tooltip`.
@@ -33314,6 +33616,11 @@ export type CustomElements = {
33314
33616
  * The component writes the custom properties below with numbers it computes,
33315
33617
  * and the stylesheet that draws the chart reads them. Do not set them yourself.
33316
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
+ *
33317
33624
  * ## Attributes & Properties
33318
33625
  *
33319
33626
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -33413,6 +33720,12 @@ export type CustomElements = {
33413
33720
  * - `summary-label`/`summaryLabel`: The summary's sentence. `{highestLabel}` is `highest-label`, and
33414
33721
  * `{readings}` each series' highest reading: the series, the category and
33415
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.
33416
33729
  * - `for`: The id of the table to read.
33417
33730
  *
33418
33731
  * Names a table in the same tree, so a chart inside another component's
@@ -33498,6 +33811,13 @@ export type CustomElements = {
33498
33811
  * browser harness's awaits it alone: a browser always runs the frame, and a
33499
33812
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
33500
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
+ *
33501
33821
  * ## Methods
33502
33822
  *
33503
33823
  * Methods that can be called to access component functionality.
@@ -33546,7 +33866,7 @@ export type CustomElements = {
33546
33866
  *
33547
33867
  * Custom selectors for styling elements within the component.
33548
33868
  *
33549
- * - `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.
33550
33870
  * - `band`: The category band under the pointer.
33551
33871
  * - `bar`: One column.
33552
33872
  * - `bar-wash-end`: The far stop of a bar's gradient, where one is used.
@@ -34322,6 +34642,13 @@ export type CustomElements = {
34322
34642
  *
34323
34643
  * Component attributes and properties that can be applied to the element or by using JavaScript.
34324
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.
34325
34652
  * - `tone`: What kind of attention the passage needs.
34326
34653
  *
34327
34654
  * `tone` is the axis for what a thing means, and this is a subset of it: a
@@ -34339,16 +34666,6 @@ export type CustomElements = {
34339
34666
  * `danger` is said as "Error", the word a reader understands, and
34340
34667
  * `neutral` as "Note", for what the passage is.
34341
34668
  * - `dismissible`: Whether the element shows a control that dismisses it.
34342
- * - `dismiss-label`/`dismissLabel`: The dismiss control's label, read by screen readers.
34343
- *
34344
- * `attribute` is spelled out because Lit lowercases a property name to
34345
- * derive one rather than dash-casing it, so this would otherwise be
34346
- * reachable only as `dismisslabel`, which nobody would guess and no linter
34347
- * would catch.
34348
- *
34349
- * A word property: register it for a locale under the host's key. A family
34350
- * that names the control otherwise, such as Tag's `Remove {label}`,
34351
- * declares its own English with `@words` above the override.
34352
34669
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
34353
34670
  *
34354
34671
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -35501,6 +35818,13 @@ export type CustomElements = {
35501
35818
  * disabled>` turns the composer off. Sending is still `helix-send`, and it
35502
35819
  * does not submit the form.
35503
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
+ *
35504
35828
  * **`typing` says whether the user is writing**, and `helix-typing` is sent
35505
35829
  * each time it changes: when they start, and when they send or stop for
35506
35830
  * `typing-timeout` milliseconds. Pass it on to show "is typing" to the other
@@ -35511,7 +35835,12 @@ export type CustomElements = {
35511
35835
  * Component attributes and properties that can be applied to the element or by using JavaScript.
35512
35836
  *
35513
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>`.
35514
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.
35515
35844
  * - `rows`: How many rows the field opens at.
35516
35845
  *
35517
35846
  * It grows from there.
@@ -35663,6 +35992,7 @@ export type CustomElements = {
35663
35992
  *
35664
35993
  * These can be used to apply styling when a component is in a given state.
35665
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.
35666
35996
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
35667
35997
  */
35668
35998
  "helix-headless-chat-composer": Partial<
@@ -38280,6 +38610,10 @@ export type CustomElements = {
38280
38610
  * and shows a dash while only some are chosen.
38281
38611
  * - Shift with a press on a checkbox selects every row between it and the row
38282
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.
38283
38617
  *
38284
38618
  * To act on a single row, such as opening it, put a link or a button in a cell.
38285
38619
  *
@@ -38296,7 +38630,8 @@ export type CustomElements = {
38296
38630
  * | Enter, F2 | Moves into the cell's controls. Escape moves back to the cell, and Tab moves between the controls of one cell. |
38297
38631
  * | Enter, Space on a sortable heading | Sorts by the column. |
38298
38632
  * | Enter, Space on the `load-more` row | Sends `helix-load-more`. |
38299
- * | 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. |
38300
38635
  * | Shift with Down or Up | Selects the rows it moves across, in a `selectable` table. |
38301
38636
  * | Shift with Space | Selects every row from the one last chosen, in a `selectable` table. |
38302
38637
  * | Control or Command with A | Selects every row, in a `selectable` table. |
@@ -38492,6 +38827,12 @@ export type CustomElements = {
38492
38827
  * rows are chosen, written in the locale, and a language that needs plural
38493
38828
  * forms writes them: `{count, plural, one {# wybrany} few {# wybrane} many
38494
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.
38495
38836
  * - `select-row-label`/`selectRowLabel`: The name of a row's checkbox. `{row}` is replaced with the row's value in
38496
38837
  * the first column that has a field, or with its key.
38497
38838
  * - `sort`: The sort order, as `field:direction`.
@@ -38595,7 +38936,9 @@ export type CustomElements = {
38595
38936
  * Areas where markup can be added to the component.
38596
38937
  *
38597
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.
38598
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.
38599
38942
  * - `toolbar`: Content above the grid, such as a search field or actions.
38600
38943
  *
38601
38944
  * ## Methods
@@ -39863,9 +40206,10 @@ export type CustomElements = {
39863
40206
  * **The line is a separator**, as `<hr>` is, and as Radix Separator, React
39864
40207
  * Aria Separator, and Web Awesome's divider are. It is named by any content
39865
40208
  * set into it, so a screen reader says "Or, separator" where you wrote "Or" on
39866
- * the line. Set `decorative` on a rule that separates nothing, such as one
39867
- * under a heading or between the facts of a byline, and it leaves the
39868
- * 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.
39869
40213
  *
39870
40214
  * Use `orientation="vertical"` between items on one line. A vertical divider
39871
40215
  * stretches to fit its flex parent and sets no height of its own.
@@ -39883,10 +40227,6 @@ export type CustomElements = {
39883
40227
  *
39884
40228
  * - `announced`: Whether screen readers announce the line as a separator, which they now do
39885
40229
  * by default.
39886
- *
39887
- * It dates from when the line was decorative by default. It is still read,
39888
- * and it wins over `decorative`, so a divider written with it stays a
39889
- * separator.
39890
40230
  * - `decorative`: Takes the line out of the accessibility tree, for a rule that separates
39891
40231
  * nothing: one under a heading, or between the facts of a byline.
39892
40232
  *
@@ -43617,6 +43957,11 @@ export type CustomElements = {
43617
43957
  * the shortcut with the control. A chord the page wrote there itself is left
43618
43958
  * alone, and the key takes back only what it added.
43619
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
+ *
43620
43965
  * `caps` draws a chord as a key per key: each is a `key` part and the `+`
43621
43966
  * between two a `separator` part, so a sheet can draw a cap for each.
43622
43967
  * `key-labels` renames any key, on every platform, such as
@@ -44180,6 +44525,9 @@ export type CustomElements = {
44180
44525
  * `<svg>` that fills its box scales with the box, so the same `font-size` can
44181
44526
  * render at 10px in a narrow chart and 43px in a wide one.
44182
44527
  *
44528
+ * `value-axis` draws the scale's numbers beside the plot, at the levels
44529
+ * `gridlines` rules, written in `locale`.
44530
+ *
44183
44531
  * The table is the accessible representation, and the drawing is hidden from
44184
44532
  * screen readers, who get the numbers. The `summary` part names the chart, from
44185
44533
  * `label` or the table's caption, and gives each series' latest reading.
@@ -44190,6 +44538,11 @@ export type CustomElements = {
44190
44538
  * a reading. The tooltip follows, the `live` part says the reading in words,
44191
44539
  * and Escape puts the tooltip away.
44192
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
+ *
44193
44546
  * ## Attributes & Properties
44194
44547
  *
44195
44548
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -44288,6 +44641,12 @@ export type CustomElements = {
44288
44641
  * masked with one disc per series and every stroke stops at its own ring's
44289
44642
  * inner edge. `mask-composite: intersect` is what makes N holes out of N
44290
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.
44291
44650
  * - `zero`: Whether the range always includes zero.
44292
44651
  *
44293
44652
  * Absent measures from the data's own extent, which is what a line is for.
@@ -44379,6 +44738,13 @@ export type CustomElements = {
44379
44738
  * browser harness's awaits it alone: a browser always runs the frame, and a
44380
44739
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
44381
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
+ *
44382
44748
  * ## Methods
44383
44749
  *
44384
44750
  * Methods that can be called to access component functionality.
@@ -44421,12 +44787,14 @@ export type CustomElements = {
44421
44787
  *
44422
44788
  * - `--chart-terminus-x`: Where a series' last reading sits horizontally, as a percentage. Written by the component.
44423
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.
44424
44791
  *
44425
44792
  * ## CSS Parts
44426
44793
  *
44427
44794
  * Custom selectors for styling elements within the component.
44428
44795
  *
44429
44796
  * - `area`: The wash under one line, where `area` is set.
44797
+ * - `axis`: The numbers of the scale beside the plot, under `value-axis`.
44430
44798
  * - `band`: The band around the reading under the pointer.
44431
44799
  * - `baseline`: The rule at zero, where zero is inside the range.
44432
44800
  * - `gridline`: One rule across the plot, under `gridlines`.
@@ -44443,6 +44811,7 @@ export type CustomElements = {
44443
44811
  * - `summary`: The chart's name and each series' latest reading, written as a sentence for screen readers. Hide it visually.
44444
44812
  * - `svg`: The drawing surface the lines and areas sit on.
44445
44813
  * - `terminus`: The mark on one series' last reading.
44814
+ * - `tick`: One number on the axis, placed with `inset-block-start` at its level.
44446
44815
  * - `tooltip`: The bubble, forwarded from `Tooltip`.
44447
44816
  * - `tooltip-anchor`: The `Tooltip` element itself.
44448
44817
  * - `tooltip-arrow`: The bubble's point, forwarded from `Tooltip`.
@@ -50760,6 +51129,11 @@ export type CustomElements = {
50760
51129
  * reads in its own direction. The summary and the tooltip bubble follow the
50761
51130
  * page's direction.
50762
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
+ *
50763
51137
  * ## Attributes & Properties
50764
51138
  *
50765
51139
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -50880,6 +51254,13 @@ export type CustomElements = {
50880
51254
  * browser harness's awaits it alone: a browser always runs the frame, and a
50881
51255
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
50882
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
+ *
50883
51264
  * ## Methods
50884
51265
  *
50885
51266
  * Methods that can be called to access component functionality.
@@ -53647,7 +54028,7 @@ export type CustomElements = {
53647
54028
  * through cell by cell, the headings included, as React Aria's table is. The
53648
54029
  * table is then a `grid` and each value a `gridcell`, and the table gives
53649
54030
  * every cell a `tabindex` so focus can rest on it: set `grid` only where the
53650
- * cells may carry one. For typeahead and range selection, use `DataTable`.
54031
+ * cells may carry one.
53651
54032
  *
53652
54033
  * | Key | What it does |
53653
54034
  * |---|---|
@@ -53661,7 +54042,10 @@ export type CustomElements = {
53661
54042
  * | Enter, Space on a sortable heading | Sorts by the column. |
53662
54043
  * | Space on a row, Enter or Space on its checkbox cell | Selects the row, in a `selectable` table. |
53663
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. |
53664
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. |
53665
54049
  * | Tab | Leaves the table. |
53666
54050
  *
53667
54051
  * The CSS custom properties listed for this component are written by it and
@@ -53803,7 +54187,9 @@ export type CustomElements = {
53803
54187
  * Areas where markup can be added to the component.
53804
54188
  *
53805
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.
53806
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.
53807
54193
  *
53808
54194
  * ## Methods
53809
54195
  *
@@ -53862,7 +54248,8 @@ export type CustomElements = {
53862
54248
  * it, or make it interactive.
53863
54249
  *
53864
54250
  * In a `selectable` table the row draws a checkbox cell before its own cells,
53865
- * 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.
53866
54253
  *
53867
54254
  * In a `reorderable` table the row draws a grip cell before those, holding a
53868
54255
  * button named by the table's `move-row-label`, and `value` is the key
@@ -53882,6 +54269,12 @@ export type CustomElements = {
53882
54269
  *
53883
54270
  * Component attributes and properties that can be applied to the element or by using JavaScript.
53884
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.
53885
54278
  * - `href`: The URL a press on the row follows, which makes the whole row a link.
53886
54279
  * Empty, the default, leaves presses to the row's cells.
53887
54280
  * - `rel`: The `rel` of the row's link. You set it yourself, as on an anchor.
@@ -53943,7 +54336,7 @@ export type CustomElements = {
53943
54336
  * - `dragging`: The row is being moved, in a `reorderable` table.
53944
54337
  * - `drop-after`: The row being moved goes after this one when it is dropped.
53945
54338
  * - `drop-before`: The row being moved goes before this one when it is dropped.
53946
- * - `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.
53947
54340
  * - `selected`: While the row is selected, in a `selectable` table.
53948
54341
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
53949
54342
  */
@@ -57866,6 +58259,10 @@ export type CustomElements = {
57866
58259
  * sends `helix-end`. `shuffle` plays the entries in a random order, starting
57867
58260
  * from the one that is current, and `previous` retraces that order.
57868
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
+ *
57869
58266
  * **Keyboard.** Each entry is a button in the tab order, and Enter or Space
57870
58267
  * plays it. The current entry carries `aria-current`. While focus is on the
57871
58268
  * player, the player's own keys work, and `Video` lists them. Its previous
@@ -58110,6 +58507,9 @@ export type CustomElements = {
58110
58507
  * - `label`: Accessible name for the video, which its filename does not provide.
58111
58508
  * - `loading-label`/`loadingLabel`: The text announced while the video waits for more data.
58112
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.
58113
58513
  * - `more-label`/`moreLabel`: What the button that opens `overflow-controls` is called.
58114
58514
  * - `mute-label`/`muteLabel`: The name of the mute control. The control shows as pressed while the video
58115
58515
  * is muted.
@@ -58460,6 +58860,12 @@ export type CustomElements = {
58460
58860
  * the last item says "Loading more" (`loading-label`, or your own content in
58461
58861
  * the `loading` slot). `scrollToIndex` takes a reader to an item.
58462
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
+ *
58463
58869
  * **Row height.** Rows are placed by `estimate` until they are drawn. Then the
58464
58870
  * list reads the drawn rows' height once and places every row by it, so a
58465
58871
  * wrong estimate still reaches the last item. Set `measured` for rows of
@@ -58482,6 +58888,8 @@ export type CustomElements = {
58482
58888
  * - `columns`: How many items a line holds. One, the default, is a list; more lays the
58483
58889
  * items out as a grid of that many equal columns, windowed a line at a
58484
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.
58485
58893
  * - `estimate`: The height of one row, in pixels, used to find the row at a scroll offset.
58486
58894
  *
58487
58895
  * An estimate rather than a measurement while `measured` is off, which is
@@ -58571,6 +58979,7 @@ export type CustomElements = {
58571
58979
  * Areas where markup can be added to the component.
58572
58980
  *
58573
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`.
58574
58983
  * - `loading`: Content for the row after the last item while `loading` is set. Falls back to `loading-label`.
58575
58984
  *
58576
58985
  * ## Methods
@@ -58589,6 +58998,7 @@ export type CustomElements = {
58589
58998
  *
58590
58999
  * - `after`: The space that stands in for the rows below the rendered ones.
58591
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.
58592
59002
  * - `loading`: The row after the last item while `loading` is set.
58593
59003
  * - `viewport`: The scrolling box. On this tier, it needs only a block size.
58594
59004
  *
@@ -59169,6 +59579,9 @@ export type CustomElementsSolidJs = {
59169
59579
  * compare the parts with each other; the scale then fits the largest part
59170
59580
  * rather than the total.
59171
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
+ *
59172
59585
  * The drawing is hidden from screen readers. The text summary gives the latest
59173
59586
  * reading's total and each part's share of it, and the table beside the chart
59174
59587
  * has every number.
@@ -59182,6 +59595,11 @@ export type CustomElementsSolidJs = {
59182
59595
  * Every numeric column is a part, so leave a total column out of the table the
59183
59596
  * chart reads, or it is counted twice. A negative reading is drawn as zero.
59184
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
+ *
59185
59603
  * ## Attributes & Properties
59186
59604
  *
59187
59605
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -59223,6 +59641,11 @@ export type CustomElementsSolidJs = {
59223
59641
  * `{totalLabel}` the name for the sum, `{total}` the sum, written in the
59224
59642
  * locale, and `{shares}` each part's share, listed as the locale lists.
59225
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.
59226
59649
  * - `for`: The id of the table to read.
59227
59650
  *
59228
59651
  * Names a table in the same tree, so a chart inside another component's
@@ -59308,6 +59731,13 @@ export type CustomElementsSolidJs = {
59308
59731
  * browser harness's awaits it alone: a browser always runs the frame, and a
59309
59732
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
59310
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
+ *
59311
59741
  * ## Methods
59312
59742
  *
59313
59743
  * Methods that can be called to access component functionality.
@@ -59344,11 +59774,18 @@ export type CustomElementsSolidJs = {
59344
59774
  * column's heading, read from the first row that has a cell there, so a
59345
59775
  * short first row does not lose the heading. `''` where no row has one.
59346
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
+ *
59347
59783
  * ## CSS Parts
59348
59784
  *
59349
59785
  * Custom selectors for styling elements within the component.
59350
59786
  *
59351
59787
  * - `area`: One part's band.
59788
+ * - `axis`: The numbers of the scale beside the plot, under `value-axis`.
59352
59789
  * - `baseline`: The rule at zero, which is the floor of the drawing.
59353
59790
  * - `gridline`: One rule across the plot, under `gridlines`.
59354
59791
  * - `guide`: A rule down the reading a pointer is resting on.
@@ -59360,6 +59797,7 @@ export type CustomElementsSolidJs = {
59360
59797
  * - `plot`: The drawing, which takes focus to be read by key.
59361
59798
  * - `summary`: The total and each part's share at the latest reading, written as a sentence for screen readers.
59362
59799
  * - `svg`: The drawing surface the bands sit on.
59800
+ * - `tick`: One number on the axis, placed with `inset-block-start` at its level.
59363
59801
  * - `tooltip`: The bubble, forwarded from `Tooltip`.
59364
59802
  * - `tooltip-anchor`: The `Tooltip` element itself.
59365
59803
  * - `tooltip-arrow`: The bubble's point, forwarded from `Tooltip`.
@@ -59745,6 +60183,11 @@ export type CustomElementsSolidJs = {
59745
60183
  * The component writes the custom properties below with numbers it computes,
59746
60184
  * and the stylesheet that draws the chart reads them. Do not set them yourself.
59747
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
+ *
59748
60191
  * ## Attributes & Properties
59749
60192
  *
59750
60193
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -59844,6 +60287,12 @@ export type CustomElementsSolidJs = {
59844
60287
  * - `summary-label`/`summaryLabel`: The summary's sentence. `{highestLabel}` is `highest-label`, and
59845
60288
  * `{readings}` each series' highest reading: the series, the category and
59846
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.
59847
60296
  * - `for`: The id of the table to read.
59848
60297
  *
59849
60298
  * Names a table in the same tree, so a chart inside another component's
@@ -59929,6 +60378,13 @@ export type CustomElementsSolidJs = {
59929
60378
  * browser harness's awaits it alone: a browser always runs the frame, and a
59930
60379
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
59931
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
+ *
59932
60388
  * ## Methods
59933
60389
  *
59934
60390
  * Methods that can be called to access component functionality.
@@ -59977,7 +60433,7 @@ export type CustomElementsSolidJs = {
59977
60433
  *
59978
60434
  * Custom selectors for styling elements within the component.
59979
60435
  *
59980
- * - `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.
59981
60437
  * - `band`: The category band under the pointer.
59982
60438
  * - `bar`: One column.
59983
60439
  * - `bar-wash-end`: The far stop of a bar's gradient, where one is used.
@@ -60763,6 +61219,13 @@ export type CustomElementsSolidJs = {
60763
61219
  *
60764
61220
  * Component attributes and properties that can be applied to the element or by using JavaScript.
60765
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.
60766
61229
  * - `tone`: What kind of attention the passage needs.
60767
61230
  *
60768
61231
  * `tone` is the axis for what a thing means, and this is a subset of it: a
@@ -60780,16 +61243,6 @@ export type CustomElementsSolidJs = {
60780
61243
  * `danger` is said as "Error", the word a reader understands, and
60781
61244
  * `neutral` as "Note", for what the passage is.
60782
61245
  * - `dismissible`: Whether the element shows a control that dismisses it.
60783
- * - `dismiss-label`/`dismissLabel`: The dismiss control's label, read by screen readers.
60784
- *
60785
- * `attribute` is spelled out because Lit lowercases a property name to
60786
- * derive one rather than dash-casing it, so this would otherwise be
60787
- * reachable only as `dismisslabel`, which nobody would guess and no linter
60788
- * would catch.
60789
- *
60790
- * A word property: register it for a locale under the host's key. A family
60791
- * that names the control otherwise, such as Tag's `Remove {label}`,
60792
- * declares its own English with `@words` above the override.
60793
61246
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
60794
61247
  *
60795
61248
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -61956,6 +62409,13 @@ export type CustomElementsSolidJs = {
61956
62409
  * disabled>` turns the composer off. Sending is still `helix-send`, and it
61957
62410
  * does not submit the form.
61958
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
+ *
61959
62419
  * **`typing` says whether the user is writing**, and `helix-typing` is sent
61960
62420
  * each time it changes: when they start, and when they send or stop for
61961
62421
  * `typing-timeout` milliseconds. Pass it on to show "is typing" to the other
@@ -61966,7 +62426,12 @@ export type CustomElementsSolidJs = {
61966
62426
  * Component attributes and properties that can be applied to the element or by using JavaScript.
61967
62427
  *
61968
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>`.
61969
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.
61970
62435
  * - `rows`: How many rows the field opens at.
61971
62436
  *
61972
62437
  * It grows from there.
@@ -62118,6 +62583,7 @@ export type CustomElementsSolidJs = {
62118
62583
  *
62119
62584
  * These can be used to apply styling when a component is in a given state.
62120
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.
62121
62587
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
62122
62588
  */
62123
62589
  "helix-headless-chat-composer": Partial<
@@ -64759,6 +65225,10 @@ export type CustomElementsSolidJs = {
64759
65225
  * and shows a dash while only some are chosen.
64760
65226
  * - Shift with a press on a checkbox selects every row between it and the row
64761
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.
64762
65232
  *
64763
65233
  * To act on a single row, such as opening it, put a link or a button in a cell.
64764
65234
  *
@@ -64775,7 +65245,8 @@ export type CustomElementsSolidJs = {
64775
65245
  * | Enter, F2 | Moves into the cell's controls. Escape moves back to the cell, and Tab moves between the controls of one cell. |
64776
65246
  * | Enter, Space on a sortable heading | Sorts by the column. |
64777
65247
  * | Enter, Space on the `load-more` row | Sends `helix-load-more`. |
64778
- * | 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. |
64779
65250
  * | Shift with Down or Up | Selects the rows it moves across, in a `selectable` table. |
64780
65251
  * | Shift with Space | Selects every row from the one last chosen, in a `selectable` table. |
64781
65252
  * | Control or Command with A | Selects every row, in a `selectable` table. |
@@ -64971,6 +65442,12 @@ export type CustomElementsSolidJs = {
64971
65442
  * rows are chosen, written in the locale, and a language that needs plural
64972
65443
  * forms writes them: `{count, plural, one {# wybrany} few {# wybrane} many
64973
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.
64974
65451
  * - `select-row-label`/`selectRowLabel`: The name of a row's checkbox. `{row}` is replaced with the row's value in
64975
65452
  * the first column that has a field, or with its key.
64976
65453
  * - `sort`: The sort order, as `field:direction`.
@@ -65074,7 +65551,9 @@ export type CustomElementsSolidJs = {
65074
65551
  * Areas where markup can be added to the component.
65075
65552
  *
65076
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.
65077
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.
65078
65557
  * - `toolbar`: Content above the grid, such as a search field or actions.
65079
65558
  *
65080
65559
  * ## Methods
@@ -66354,9 +66833,10 @@ export type CustomElementsSolidJs = {
66354
66833
  * **The line is a separator**, as `<hr>` is, and as Radix Separator, React
66355
66834
  * Aria Separator, and Web Awesome's divider are. It is named by any content
66356
66835
  * set into it, so a screen reader says "Or, separator" where you wrote "Or" on
66357
- * the line. Set `decorative` on a rule that separates nothing, such as one
66358
- * under a heading or between the facts of a byline, and it leaves the
66359
- * 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.
66360
66840
  *
66361
66841
  * Use `orientation="vertical"` between items on one line. A vertical divider
66362
66842
  * stretches to fit its flex parent and sets no height of its own.
@@ -66374,10 +66854,6 @@ export type CustomElementsSolidJs = {
66374
66854
  *
66375
66855
  * - `announced`: Whether screen readers announce the line as a separator, which they now do
66376
66856
  * by default.
66377
- *
66378
- * It dates from when the line was decorative by default. It is still read,
66379
- * and it wins over `decorative`, so a divider written with it stays a
66380
- * separator.
66381
66857
  * - `decorative`: Takes the line out of the accessibility tree, for a rule that separates
66382
66858
  * nothing: one under a heading, or between the facts of a byline.
66383
66859
  *
@@ -70147,6 +70623,11 @@ export type CustomElementsSolidJs = {
70147
70623
  * the shortcut with the control. A chord the page wrote there itself is left
70148
70624
  * alone, and the key takes back only what it added.
70149
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
+ *
70150
70631
  * `caps` draws a chord as a key per key: each is a `key` part and the `+`
70151
70632
  * between two a `separator` part, so a sheet can draw a cap for each.
70152
70633
  * `key-labels` renames any key, on every platform, such as
@@ -70720,6 +71201,9 @@ export type CustomElementsSolidJs = {
70720
71201
  * `<svg>` that fills its box scales with the box, so the same `font-size` can
70721
71202
  * render at 10px in a narrow chart and 43px in a wide one.
70722
71203
  *
71204
+ * `value-axis` draws the scale's numbers beside the plot, at the levels
71205
+ * `gridlines` rules, written in `locale`.
71206
+ *
70723
71207
  * The table is the accessible representation, and the drawing is hidden from
70724
71208
  * screen readers, who get the numbers. The `summary` part names the chart, from
70725
71209
  * `label` or the table's caption, and gives each series' latest reading.
@@ -70730,6 +71214,11 @@ export type CustomElementsSolidJs = {
70730
71214
  * a reading. The tooltip follows, the `live` part says the reading in words,
70731
71215
  * and Escape puts the tooltip away.
70732
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
+ *
70733
71222
  * ## Attributes & Properties
70734
71223
  *
70735
71224
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -70828,6 +71317,12 @@ export type CustomElementsSolidJs = {
70828
71317
  * masked with one disc per series and every stroke stops at its own ring's
70829
71318
  * inner edge. `mask-composite: intersect` is what makes N holes out of N
70830
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.
70831
71326
  * - `zero`: Whether the range always includes zero.
70832
71327
  *
70833
71328
  * Absent measures from the data's own extent, which is what a line is for.
@@ -70919,6 +71414,13 @@ export type CustomElementsSolidJs = {
70919
71414
  * browser harness's awaits it alone: a browser always runs the frame, and a
70920
71415
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
70921
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
+ *
70922
71424
  * ## Methods
70923
71425
  *
70924
71426
  * Methods that can be called to access component functionality.
@@ -70961,12 +71463,14 @@ export type CustomElementsSolidJs = {
70961
71463
  *
70962
71464
  * - `--chart-terminus-x`: Where a series' last reading sits horizontally, as a percentage. Written by the component.
70963
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.
70964
71467
  *
70965
71468
  * ## CSS Parts
70966
71469
  *
70967
71470
  * Custom selectors for styling elements within the component.
70968
71471
  *
70969
71472
  * - `area`: The wash under one line, where `area` is set.
71473
+ * - `axis`: The numbers of the scale beside the plot, under `value-axis`.
70970
71474
  * - `band`: The band around the reading under the pointer.
70971
71475
  * - `baseline`: The rule at zero, where zero is inside the range.
70972
71476
  * - `gridline`: One rule across the plot, under `gridlines`.
@@ -70983,6 +71487,7 @@ export type CustomElementsSolidJs = {
70983
71487
  * - `summary`: The chart's name and each series' latest reading, written as a sentence for screen readers. Hide it visually.
70984
71488
  * - `svg`: The drawing surface the lines and areas sit on.
70985
71489
  * - `terminus`: The mark on one series' last reading.
71490
+ * - `tick`: One number on the axis, placed with `inset-block-start` at its level.
70986
71491
  * - `tooltip`: The bubble, forwarded from `Tooltip`.
70987
71492
  * - `tooltip-anchor`: The `Tooltip` element itself.
70988
71493
  * - `tooltip-arrow`: The bubble's point, forwarded from `Tooltip`.
@@ -77390,6 +77895,11 @@ export type CustomElementsSolidJs = {
77390
77895
  * reads in its own direction. The summary and the tooltip bubble follow the
77391
77896
  * page's direction.
77392
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
+ *
77393
77903
  * ## Attributes & Properties
77394
77904
  *
77395
77905
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -77510,6 +78020,13 @@ export type CustomElementsSolidJs = {
77510
78020
  * browser harness's awaits it alone: a browser always runs the frame, and a
77511
78021
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
77512
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
+ *
77513
78030
  * ## Methods
77514
78031
  *
77515
78032
  * Methods that can be called to access component functionality.
@@ -80321,7 +80838,7 @@ export type CustomElementsSolidJs = {
80321
80838
  * through cell by cell, the headings included, as React Aria's table is. The
80322
80839
  * table is then a `grid` and each value a `gridcell`, and the table gives
80323
80840
  * every cell a `tabindex` so focus can rest on it: set `grid` only where the
80324
- * cells may carry one. For typeahead and range selection, use `DataTable`.
80841
+ * cells may carry one.
80325
80842
  *
80326
80843
  * | Key | What it does |
80327
80844
  * |---|---|
@@ -80335,7 +80852,10 @@ export type CustomElementsSolidJs = {
80335
80852
  * | Enter, Space on a sortable heading | Sorts by the column. |
80336
80853
  * | Space on a row, Enter or Space on its checkbox cell | Selects the row, in a `selectable` table. |
80337
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. |
80338
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. |
80339
80859
  * | Tab | Leaves the table. |
80340
80860
  *
80341
80861
  * The CSS custom properties listed for this component are written by it and
@@ -80477,7 +80997,9 @@ export type CustomElementsSolidJs = {
80477
80997
  * Areas where markup can be added to the component.
80478
80998
  *
80479
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.
80480
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.
80481
81003
  *
80482
81004
  * ## Methods
80483
81005
  *
@@ -80539,7 +81061,8 @@ export type CustomElementsSolidJs = {
80539
81061
  * it, or make it interactive.
80540
81062
  *
80541
81063
  * In a `selectable` table the row draws a checkbox cell before its own cells,
80542
- * 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.
80543
81066
  *
80544
81067
  * In a `reorderable` table the row draws a grip cell before those, holding a
80545
81068
  * button named by the table's `move-row-label`, and `value` is the key
@@ -80559,6 +81082,12 @@ export type CustomElementsSolidJs = {
80559
81082
  *
80560
81083
  * Component attributes and properties that can be applied to the element or by using JavaScript.
80561
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.
80562
81091
  * - `href`: The URL a press on the row follows, which makes the whole row a link.
80563
81092
  * Empty, the default, leaves presses to the row's cells.
80564
81093
  * - `rel`: The `rel` of the row's link. You set it yourself, as on an anchor.
@@ -80620,7 +81149,7 @@ export type CustomElementsSolidJs = {
80620
81149
  * - `dragging`: The row is being moved, in a `reorderable` table.
80621
81150
  * - `drop-after`: The row being moved goes after this one when it is dropped.
80622
81151
  * - `drop-before`: The row being moved goes before this one when it is dropped.
80623
- * - `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.
80624
81153
  * - `selected`: While the row is selected, in a `selectable` table.
80625
81154
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
80626
81155
  */
@@ -84606,6 +85135,10 @@ export type CustomElementsSolidJs = {
84606
85135
  * sends `helix-end`. `shuffle` plays the entries in a random order, starting
84607
85136
  * from the one that is current, and `previous` retraces that order.
84608
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
+ *
84609
85142
  * **Keyboard.** Each entry is a button in the tab order, and Enter or Space
84610
85143
  * plays it. The current entry carries `aria-current`. While focus is on the
84611
85144
  * player, the player's own keys work, and `Video` lists them. Its previous
@@ -84851,6 +85384,9 @@ export type CustomElementsSolidJs = {
84851
85384
  * - `label`: Accessible name for the video, which its filename does not provide.
84852
85385
  * - `loading-label`/`loadingLabel`: The text announced while the video waits for more data.
84853
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.
84854
85390
  * - `more-label`/`moreLabel`: What the button that opens `overflow-controls` is called.
84855
85391
  * - `mute-label`/`muteLabel`: The name of the mute control. The control shows as pressed while the video
84856
85392
  * is muted.
@@ -85204,6 +85740,12 @@ export type CustomElementsSolidJs = {
85204
85740
  * the last item says "Loading more" (`loading-label`, or your own content in
85205
85741
  * the `loading` slot). `scrollToIndex` takes a reader to an item.
85206
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
+ *
85207
85749
  * **Row height.** Rows are placed by `estimate` until they are drawn. Then the
85208
85750
  * list reads the drawn rows' height once and places every row by it, so a
85209
85751
  * wrong estimate still reaches the last item. Set `measured` for rows of
@@ -85226,6 +85768,8 @@ export type CustomElementsSolidJs = {
85226
85768
  * - `columns`: How many items a line holds. One, the default, is a list; more lays the
85227
85769
  * items out as a grid of that many equal columns, windowed a line at a
85228
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.
85229
85773
  * - `estimate`: The height of one row, in pixels, used to find the row at a scroll offset.
85230
85774
  *
85231
85775
  * An estimate rather than a measurement while `measured` is off, which is
@@ -85315,6 +85859,7 @@ export type CustomElementsSolidJs = {
85315
85859
  * Areas where markup can be added to the component.
85316
85860
  *
85317
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`.
85318
85863
  * - `loading`: Content for the row after the last item while `loading` is set. Falls back to `loading-label`.
85319
85864
  *
85320
85865
  * ## Methods
@@ -85333,6 +85878,7 @@ export type CustomElementsSolidJs = {
85333
85878
  *
85334
85879
  * - `after`: The space that stands in for the rows below the rendered ones.
85335
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.
85336
85882
  * - `loading`: The row after the last item while `loading` is set.
85337
85883
  * - `viewport`: The scrolling box. On this tier, it needs only a block size.
85338
85884
  *
@@ -85353,6 +85899,8 @@ export type CustomElementsSolidJs = {
85353
85899
  export type CustomCssProperties = {
85354
85900
  /** The height of the content, in pixels, written on the `content` part while the section is open. */
85355
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;
85356
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. */
85357
85905
  "--bar-chart-axis"?: (string) | undefined;
85358
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. */
@@ -85433,6 +85981,8 @@ export type CustomCssProperties = {
85433
85981
  "--chart-terminus-x"?: (string) | undefined;
85434
85982
  /** Where a series' last reading sits vertically, as a percentage. Written by the component. */
85435
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;
85436
85986
  /** The number of the first row, written where `start` or `reversed` moves it. */
85437
85987
  "--list-first"?: (string) | undefined;
85438
85988
  /** What each row adds to the number before it: `1`, or `-1` where `reversed`. */