@fusion.dev/helix 0.152.0 → 0.154.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 (33) hide show
  1. package/custom-elements.json +1563 -117
  2. package/dist/area-chart/root/area-chart-root.js +2 -1
  3. package/dist/badge/root/badge-root.css.js +1 -1
  4. package/dist/badge/root/badge-root.d.ts +1 -0
  5. package/dist/bar-chart/root/bar-chart-root.js +2 -1
  6. package/dist/blockquote/root/blockquote-root.css.js +2 -1
  7. package/dist/blockquote/root/blockquote-root.d.ts +27 -0
  8. package/dist/blockquote/root/blockquote-root.js +7 -0
  9. package/dist/card/root/card-root.css.js +3 -1
  10. package/dist/code/root/code-root.css.js +2 -2
  11. package/dist/code/root/code-root.d.ts +1 -0
  12. package/dist/code-block/root/code-block-root.css.js +4 -1
  13. package/dist/code-block/root/code-block-root.d.ts +1 -0
  14. package/dist/icon/root/icon-root.css.js +8 -1
  15. package/dist/icon/root/icon-root.d.ts +38 -1
  16. package/dist/icon/root/icon-root.js +17 -0
  17. package/dist/line-chart/root/line-chart-root.js +8 -1
  18. package/dist/orb/root/orb-root.d.ts +6 -0
  19. package/dist/progress/root/progress-root.css.js +12 -3
  20. package/dist/progress/root/progress-root.d.ts +4 -0
  21. package/dist/quote/root/quote-root.css.js +1 -1
  22. package/dist/scatter-chart/root/scatter-chart-root.js +2 -1
  23. package/dist/shared/chart/status.css.d.ts +1 -0
  24. package/dist/shared/chart/status.css.js +3 -0
  25. package/dist/skeleton/root/skeleton-root.css.js +11 -7
  26. package/dist/skeleton/root/skeleton-root.d.ts +18 -2
  27. package/dist/skeleton/root/skeleton-root.js +11 -0
  28. package/dist/stat/root/stat-root.css.js +1 -1
  29. package/lint.json +1 -1
  30. package/package.json +6 -6
  31. package/types/jsx.d.ts +1463 -45
  32. package/types/vue.d.ts +373 -14
  33. package/types/words.d.ts +19 -4
package/types/jsx.d.ts CHANGED
@@ -1255,6 +1255,25 @@ export type HelixAreaChartHelixReadingPressElementEvent =
1255
1255
  HelixAreaChartElementEvent<HelixReadingPressEvent>;
1256
1256
 
1257
1257
  export type HelixAreaChartProps = {
1258
+ /** The words shown in place of the drawing when the table has no readings,
1259
+ and the fallback of the `empty` slot. */
1260
+ "empty-text"?: (HelixAreaChart["emptyText"]) | undefined;
1261
+ /** The words shown in place of the drawing when the table has no readings,
1262
+ and the fallback of the `empty` slot. */
1263
+ emptyText?: (HelixAreaChart["emptyText"]) | undefined;
1264
+ /** Whether the readings are still on their way. The chart shows
1265
+ `loading-text` in place of an empty drawing until it has readings.
1266
+
1267
+ Reflected, so a stylesheet can treat the chart while it waits. A chart
1268
+ that already has readings keeps drawing them, so a refresh does not
1269
+ blank it. */
1270
+ loading?: (HelixAreaChart["loading"]) | undefined;
1271
+ /** The words shown in place of the drawing while `loading` is set and
1272
+ there are no readings yet, and the fallback of the `loading` slot. */
1273
+ "loading-text"?: (HelixAreaChart["loadingText"]) | undefined;
1274
+ /** The words shown in place of the drawing while `loading` is set and
1275
+ there are no readings yet, and the fallback of the `loading` slot. */
1276
+ loadingText?: (HelixAreaChart["loadingText"]) | undefined;
1258
1277
  /** The id of the table to read.
1259
1278
 
1260
1279
  Names a table in the same tree, so a chart inside another component's
@@ -1352,6 +1371,29 @@ them, and the tooltip and the table hold every reading. */
1352
1371
  Absent draws none: bands read as a composition need no numbers beside
1353
1372
  them, and the tooltip and the table hold every reading. */
1354
1373
  valueAxis?: (HelixAreaChart["valueAxis"]) | undefined;
1374
+ /** The readings as data, in the shape of a table, where the page has no
1375
+ table to point `for` at. `for` wins where both are set.
1376
+
1377
+ ```js
1378
+ chart.data = {
1379
+ caption: 'Sessions by channel',
1380
+ columns: ['Month', 'Direct', 'Referral'],
1381
+ rows: [['Jan', 10, 4], ['Feb', 20, 8]],
1382
+ }
1383
+ ```
1384
+
1385
+ The first column holds each row's label and every column after it a
1386
+ series, as in a table. A cell is a number, words, `null` for a blank,
1387
+ or `{ value, text }` for a number shown as words, such as `$128k`. A
1388
+ number is shown in `locale`.
1389
+
1390
+ **A table is still the better source where the page can show one**:
1391
+ it reads with no script and before hydration, and a reader can sort and
1392
+ copy it. Data is drawn on the client only, so a server serves the
1393
+ frame, and the summary, the keys and the readout are then the whole of
1394
+ what a screen reader is given. Set a new object to redraw: the chart
1395
+ does not look inside the one it has. */
1396
+ data?: (HelixAreaChart["data"]) | undefined;
1355
1397
 
1356
1398
  /** 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. */
1357
1399
  "onhelix-reading-change"?: ((
@@ -1364,6 +1406,25 @@ them, and the tooltip and the table hold every reading. */
1364
1406
  };
1365
1407
 
1366
1408
  export type HelixAreaChartSolidJsProps = {
1409
+ /** The words shown in place of the drawing when the table has no readings,
1410
+ and the fallback of the `empty` slot. */
1411
+ "attr:empty-text"?: (HelixAreaChart["emptyText"]) | undefined;
1412
+ /** The words shown in place of the drawing when the table has no readings,
1413
+ and the fallback of the `empty` slot. */
1414
+ "prop:emptyText"?: (HelixAreaChart["emptyText"]) | undefined;
1415
+ /** Whether the readings are still on their way. The chart shows
1416
+ `loading-text` in place of an empty drawing until it has readings.
1417
+
1418
+ Reflected, so a stylesheet can treat the chart while it waits. A chart
1419
+ that already has readings keeps drawing them, so a refresh does not
1420
+ blank it. */
1421
+ "prop:loading"?: (HelixAreaChart["loading"]) | undefined;
1422
+ /** The words shown in place of the drawing while `loading` is set and
1423
+ there are no readings yet, and the fallback of the `loading` slot. */
1424
+ "attr:loading-text"?: (HelixAreaChart["loadingText"]) | undefined;
1425
+ /** The words shown in place of the drawing while `loading` is set and
1426
+ there are no readings yet, and the fallback of the `loading` slot. */
1427
+ "prop:loadingText"?: (HelixAreaChart["loadingText"]) | undefined;
1367
1428
  /** The id of the table to read.
1368
1429
 
1369
1430
  Names a table in the same tree, so a chart inside another component's
@@ -1461,6 +1522,29 @@ them, and the tooltip and the table hold every reading. */
1461
1522
  Absent draws none: bands read as a composition need no numbers beside
1462
1523
  them, and the tooltip and the table hold every reading. */
1463
1524
  "prop:valueAxis"?: (HelixAreaChart["valueAxis"]) | undefined;
1525
+ /** The readings as data, in the shape of a table, where the page has no
1526
+ table to point `for` at. `for` wins where both are set.
1527
+
1528
+ ```js
1529
+ chart.data = {
1530
+ caption: 'Sessions by channel',
1531
+ columns: ['Month', 'Direct', 'Referral'],
1532
+ rows: [['Jan', 10, 4], ['Feb', 20, 8]],
1533
+ }
1534
+ ```
1535
+
1536
+ The first column holds each row's label and every column after it a
1537
+ series, as in a table. A cell is a number, words, `null` for a blank,
1538
+ or `{ value, text }` for a number shown as words, such as `$128k`. A
1539
+ number is shown in `locale`.
1540
+
1541
+ **A table is still the better source where the page can show one**:
1542
+ it reads with no script and before hydration, and a reader can sort and
1543
+ copy it. Data is drawn on the client only, so a server serves the
1544
+ frame, and the summary, the keys and the readout are then the whole of
1545
+ what a screen reader is given. Set a new object to redraw: the chart
1546
+ does not look inside the one it has. */
1547
+ "prop:data"?: (HelixAreaChart["data"]) | undefined;
1464
1548
  /** 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. */
1465
1549
  "on:helix-reading-change"?: ((
1466
1550
  e: HelixAreaChartHelixReadingChangeElementEvent,
@@ -2218,6 +2302,25 @@ every component in the library and mean something on one. `wash` because
2218
2302
  that is what the tier below already calls it, in `--chart-bar-wash` and in
2219
2303
  the `bar-wash-start` and `bar-wash-end` stops. */
2220
2304
  wash?: (HelixBarChart["wash"]) | undefined;
2305
+ /** The words shown in place of the drawing when the table has no readings,
2306
+ and the fallback of the `empty` slot. */
2307
+ "empty-text"?: (HelixBarChart["emptyText"]) | undefined;
2308
+ /** The words shown in place of the drawing when the table has no readings,
2309
+ and the fallback of the `empty` slot. */
2310
+ emptyText?: (HelixBarChart["emptyText"]) | undefined;
2311
+ /** Whether the readings are still on their way. The chart shows
2312
+ `loading-text` in place of an empty drawing until it has readings.
2313
+
2314
+ Reflected, so a stylesheet can treat the chart while it waits. A chart
2315
+ that already has readings keeps drawing them, so a refresh does not
2316
+ blank it. */
2317
+ loading?: (HelixBarChart["loading"]) | undefined;
2318
+ /** The words shown in place of the drawing while `loading` is set and
2319
+ there are no readings yet, and the fallback of the `loading` slot. */
2320
+ "loading-text"?: (HelixBarChart["loadingText"]) | undefined;
2321
+ /** The words shown in place of the drawing while `loading` is set and
2322
+ there are no readings yet, and the fallback of the `loading` slot. */
2323
+ loadingText?: (HelixBarChart["loadingText"]) | undefined;
2221
2324
  /** The id of the table to read.
2222
2325
 
2223
2326
  Names a table in the same tree, so a chart inside another component's
@@ -2377,6 +2480,29 @@ bottom of bars under `orientation="horizontal"`.
2377
2480
  Absent draws none with one scale, since bars compared with each other need
2378
2481
  no numbers. With `secondary` both scales are drawn whatever this says. */
2379
2482
  valueAxis?: (HelixBarChart["valueAxis"]) | undefined;
2483
+ /** The readings as data, in the shape of a table, where the page has no
2484
+ table to point `for` at. `for` wins where both are set.
2485
+
2486
+ ```js
2487
+ chart.data = {
2488
+ caption: 'Sessions by channel',
2489
+ columns: ['Month', 'Direct', 'Referral'],
2490
+ rows: [['Jan', 10, 4], ['Feb', 20, 8]],
2491
+ }
2492
+ ```
2493
+
2494
+ The first column holds each row's label and every column after it a
2495
+ series, as in a table. A cell is a number, words, `null` for a blank,
2496
+ or `{ value, text }` for a number shown as words, such as `$128k`. A
2497
+ number is shown in `locale`.
2498
+
2499
+ **A table is still the better source where the page can show one**:
2500
+ it reads with no script and before hydration, and a reader can sort and
2501
+ copy it. Data is drawn on the client only, so a server serves the
2502
+ frame, and the summary, the keys and the readout are then the whole of
2503
+ what a screen reader is given. Set a new object to redraw: the chart
2504
+ does not look inside the one it has. */
2505
+ data?: (HelixBarChart["data"]) | undefined;
2380
2506
 
2381
2507
  /** 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. */
2382
2508
  "onhelix-reading-change"?: ((
@@ -2494,6 +2620,25 @@ every component in the library and mean something on one. `wash` because
2494
2620
  that is what the tier below already calls it, in `--chart-bar-wash` and in
2495
2621
  the `bar-wash-start` and `bar-wash-end` stops. */
2496
2622
  "prop:wash"?: (HelixBarChart["wash"]) | undefined;
2623
+ /** The words shown in place of the drawing when the table has no readings,
2624
+ and the fallback of the `empty` slot. */
2625
+ "attr:empty-text"?: (HelixBarChart["emptyText"]) | undefined;
2626
+ /** The words shown in place of the drawing when the table has no readings,
2627
+ and the fallback of the `empty` slot. */
2628
+ "prop:emptyText"?: (HelixBarChart["emptyText"]) | undefined;
2629
+ /** Whether the readings are still on their way. The chart shows
2630
+ `loading-text` in place of an empty drawing until it has readings.
2631
+
2632
+ Reflected, so a stylesheet can treat the chart while it waits. A chart
2633
+ that already has readings keeps drawing them, so a refresh does not
2634
+ blank it. */
2635
+ "prop:loading"?: (HelixBarChart["loading"]) | undefined;
2636
+ /** The words shown in place of the drawing while `loading` is set and
2637
+ there are no readings yet, and the fallback of the `loading` slot. */
2638
+ "attr:loading-text"?: (HelixBarChart["loadingText"]) | undefined;
2639
+ /** The words shown in place of the drawing while `loading` is set and
2640
+ there are no readings yet, and the fallback of the `loading` slot. */
2641
+ "prop:loadingText"?: (HelixBarChart["loadingText"]) | undefined;
2497
2642
  /** The id of the table to read.
2498
2643
 
2499
2644
  Names a table in the same tree, so a chart inside another component's
@@ -2653,6 +2798,29 @@ bottom of bars under `orientation="horizontal"`.
2653
2798
  Absent draws none with one scale, since bars compared with each other need
2654
2799
  no numbers. With `secondary` both scales are drawn whatever this says. */
2655
2800
  "prop:valueAxis"?: (HelixBarChart["valueAxis"]) | undefined;
2801
+ /** The readings as data, in the shape of a table, where the page has no
2802
+ table to point `for` at. `for` wins where both are set.
2803
+
2804
+ ```js
2805
+ chart.data = {
2806
+ caption: 'Sessions by channel',
2807
+ columns: ['Month', 'Direct', 'Referral'],
2808
+ rows: [['Jan', 10, 4], ['Feb', 20, 8]],
2809
+ }
2810
+ ```
2811
+
2812
+ The first column holds each row's label and every column after it a
2813
+ series, as in a table. A cell is a number, words, `null` for a blank,
2814
+ or `{ value, text }` for a number shown as words, such as `$128k`. A
2815
+ number is shown in `locale`.
2816
+
2817
+ **A table is still the better source where the page can show one**:
2818
+ it reads with no script and before hydration, and a reader can sort and
2819
+ copy it. Data is drawn on the client only, so a server serves the
2820
+ frame, and the summary, the keys and the readout are then the whole of
2821
+ what a screen reader is given. Set a new object to redraw: the chart
2822
+ does not look inside the one it has. */
2823
+ "prop:data"?: (HelixBarChart["data"]) | undefined;
2656
2824
  /** 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. */
2657
2825
  "on:helix-reading-change"?: ((
2658
2826
  e: HelixBarChartHelixReadingChangeElementEvent,
@@ -2669,6 +2837,42 @@ no numbers. With `secondary` both scales are drawn whatever this says. */
2669
2837
  };
2670
2838
 
2671
2839
  export type HelixBlockquoteProps = {
2840
+ /** How the passage and its attribution align, set as `text-align`.
2841
+
2842
+ `center` for a pull quote in the middle of a column and `end` for one
2843
+ against its far edge. Under either, the mark `marks` draws stands over
2844
+ the first line. Absent aligns as the prose around it does.
2845
+
2846
+ Named for the CSS property it sets, as `Text.textAlign` is: `align` alone
2847
+ is a legacy HTML attribute the browser maps to `text-align` by itself,
2848
+ and it has no `start` or `end`. */
2849
+ "text-align"?: (HelixBlockquote["textAlign"]) | undefined;
2850
+ /** How the passage and its attribution align, set as `text-align`.
2851
+
2852
+ `center` for a pull quote in the middle of a column and `end` for one
2853
+ against its far edge. Under either, the mark `marks` draws stands over
2854
+ the first line. Absent aligns as the prose around it does.
2855
+
2856
+ Named for the CSS property it sets, as `Text.textAlign` is: `align` alone
2857
+ is a legacy HTML attribute the browser maps to `text-align` by itself,
2858
+ and it has no `start` or `end`. */
2859
+ textAlign?: (HelixBlockquote["textAlign"]) | undefined;
2860
+ /** How the passage's lines break, set as `text-wrap`.
2861
+
2862
+ `balance` evens out the length of every line, which suits a pull quote of
2863
+ a few lines in display type. `pretty` avoids a last line of one short
2864
+ word, for a longer passage. Absent, the lines break as the browser breaks
2865
+ them. The same name and values `Text` takes, but `nowrap`, a passage being
2866
+ more than one line. */
2867
+ "text-wrap"?: (HelixBlockquote["textWrap"]) | undefined;
2868
+ /** How the passage's lines break, set as `text-wrap`.
2869
+
2870
+ `balance` evens out the length of every line, which suits a pull quote of
2871
+ a few lines in display type. `pretty` avoids a last line of one short
2872
+ word, for a longer passage. Absent, the lines break as the browser breaks
2873
+ them. The same name and values `Text` takes, but `nowrap`, a passage being
2874
+ more than one line. */
2875
+ textWrap?: (HelixBlockquote["textWrap"]) | undefined;
2672
2876
  /** Who said it, and where, as words, such as "Maria Lopez, operations
2673
2877
  manager". The `attribution` slot replaces them, for markup such as a link.
2674
2878
 
@@ -2685,6 +2889,42 @@ element's language. Leave the marks out of the text. */
2685
2889
  };
2686
2890
 
2687
2891
  export type HelixBlockquoteSolidJsProps = {
2892
+ /** How the passage and its attribution align, set as `text-align`.
2893
+
2894
+ `center` for a pull quote in the middle of a column and `end` for one
2895
+ against its far edge. Under either, the mark `marks` draws stands over
2896
+ the first line. Absent aligns as the prose around it does.
2897
+
2898
+ Named for the CSS property it sets, as `Text.textAlign` is: `align` alone
2899
+ is a legacy HTML attribute the browser maps to `text-align` by itself,
2900
+ and it has no `start` or `end`. */
2901
+ "attr:text-align"?: (HelixBlockquote["textAlign"]) | undefined;
2902
+ /** How the passage and its attribution align, set as `text-align`.
2903
+
2904
+ `center` for a pull quote in the middle of a column and `end` for one
2905
+ against its far edge. Under either, the mark `marks` draws stands over
2906
+ the first line. Absent aligns as the prose around it does.
2907
+
2908
+ Named for the CSS property it sets, as `Text.textAlign` is: `align` alone
2909
+ is a legacy HTML attribute the browser maps to `text-align` by itself,
2910
+ and it has no `start` or `end`. */
2911
+ "prop:textAlign"?: (HelixBlockquote["textAlign"]) | undefined;
2912
+ /** How the passage's lines break, set as `text-wrap`.
2913
+
2914
+ `balance` evens out the length of every line, which suits a pull quote of
2915
+ a few lines in display type. `pretty` avoids a last line of one short
2916
+ word, for a longer passage. Absent, the lines break as the browser breaks
2917
+ them. The same name and values `Text` takes, but `nowrap`, a passage being
2918
+ more than one line. */
2919
+ "attr:text-wrap"?: (HelixBlockquote["textWrap"]) | undefined;
2920
+ /** How the passage's lines break, set as `text-wrap`.
2921
+
2922
+ `balance` evens out the length of every line, which suits a pull quote of
2923
+ a few lines in display type. `pretty` avoids a last line of one short
2924
+ word, for a longer passage. Absent, the lines break as the browser breaks
2925
+ them. The same name and values `Text` takes, but `nowrap`, a passage being
2926
+ more than one line. */
2927
+ "prop:textWrap"?: (HelixBlockquote["textWrap"]) | undefined;
2688
2928
  /** Who said it, and where, as words, such as "Maria Lopez, operations
2689
2929
  manager". The `attribution` slot replaces them, for markup such as a link.
2690
2930
 
@@ -4930,12 +5170,6 @@ twice what this says once.
4930
5170
  Reflected and undefaulted, so a card that has not asked reads as a card
4931
5171
  with no attribute on it and the stylesheet only describes the departure. */
4932
5172
  mediaPlacement?: (HelixCard["mediaPlacement"]) | undefined;
4933
- /** */
4934
- "aria-labelledby"?: unknown;
4935
- /** */
4936
- undefined?: unknown;
4937
- /** */
4938
- "aria-label"?: unknown;
4939
5173
  };
4940
5174
 
4941
5175
  export type HelixCardSolidJsProps = {
@@ -5018,12 +5252,6 @@ twice what this says once.
5018
5252
  Reflected and undefaulted, so a card that has not asked reads as a card
5019
5253
  with no attribute on it and the stylesheet only describes the departure. */
5020
5254
  "prop:mediaPlacement"?: (HelixCard["mediaPlacement"]) | undefined;
5021
- /** */
5022
- "attr:aria-labelledby"?: unknown;
5023
- /** */
5024
- "prop:undefined"?: unknown;
5025
- /** */
5026
- "attr:aria-label"?: unknown;
5027
5255
 
5028
5256
  /** Set the innerHTML of the element */
5029
5257
  innerHTML?: (string) | undefined;
@@ -7137,6 +7365,22 @@ significant in code and a wrapped line reads as two. For prose-like code, such a
7137
7365
  a log line, a wrap reads better than a scroll. Line numbers keep the lines
7138
7366
  unwrapped, since a wrapped line would take one number and several rows. */
7139
7367
  wrap?: (HelixCodeBlock["wrap"]) | undefined;
7368
+ /** The name of a block that scrolls, which is a tab stop while it does.
7369
+
7370
+ Where the block has a name, the scroller says it too, such as "Code,
7371
+ app.ts", as `code-name-label` puts it. */
7372
+ "code-label"?: (HelixCodeBlock["codeLabel"]) | undefined;
7373
+ /** The name of a block that scrolls, which is a tab stop while it does.
7374
+
7375
+ Where the block has a name, the scroller says it too, such as "Code,
7376
+ app.ts", as `code-name-label` puts it. */
7377
+ codeLabel?: (HelixCodeBlock["codeLabel"]) | undefined;
7378
+ /** The name of a block that scrolls, where the block has a name. `{code}` is
7379
+ `code-label` and `{name}` the block's name. */
7380
+ "code-name-label"?: (HelixCodeBlock["codeNameLabel"]) | undefined;
7381
+ /** The name of a block that scrolls, where the block has a name. `{code}` is
7382
+ `code-label` and `{name}` the block's name. */
7383
+ codeNameLabel?: (HelixCodeBlock["codeNameLabel"]) | undefined;
7140
7384
  /** The expand button's words while the block shows every line. */
7141
7385
  "collapse-label"?: (HelixCodeBlock["collapseLabel"]) | undefined;
7142
7386
  /** The expand button's words while the block shows every line. */
@@ -7284,6 +7528,22 @@ significant in code and a wrapped line reads as two. For prose-like code, such a
7284
7528
  a log line, a wrap reads better than a scroll. Line numbers keep the lines
7285
7529
  unwrapped, since a wrapped line would take one number and several rows. */
7286
7530
  "prop:wrap"?: (HelixCodeBlock["wrap"]) | undefined;
7531
+ /** The name of a block that scrolls, which is a tab stop while it does.
7532
+
7533
+ Where the block has a name, the scroller says it too, such as "Code,
7534
+ app.ts", as `code-name-label` puts it. */
7535
+ "attr:code-label"?: (HelixCodeBlock["codeLabel"]) | undefined;
7536
+ /** The name of a block that scrolls, which is a tab stop while it does.
7537
+
7538
+ Where the block has a name, the scroller says it too, such as "Code,
7539
+ app.ts", as `code-name-label` puts it. */
7540
+ "prop:codeLabel"?: (HelixCodeBlock["codeLabel"]) | undefined;
7541
+ /** The name of a block that scrolls, where the block has a name. `{code}` is
7542
+ `code-label` and `{name}` the block's name. */
7543
+ "attr:code-name-label"?: (HelixCodeBlock["codeNameLabel"]) | undefined;
7544
+ /** The name of a block that scrolls, where the block has a name. `{code}` is
7545
+ `code-label` and `{name}` the block's name. */
7546
+ "prop:codeNameLabel"?: (HelixCodeBlock["codeNameLabel"]) | undefined;
7287
7547
  /** The expand button's words while the block shows every line. */
7288
7548
  "attr:collapse-label"?: (HelixCodeBlock["collapseLabel"]) | undefined;
7289
7549
  /** The expand button's words while the block shows every line. */
@@ -12935,6 +13195,29 @@ rotation that puts the first slice at nine o'clock, the aspect ratio of a
12935
13195
  box that is no longer square, and where the middle sits once the bottom of
12936
13196
  the circle is not drawn. */
12937
13197
  sweep?: (HelixDonutChart["sweep"]) | undefined;
13198
+ /** The readings as data, in the shape of a table, where the page has no
13199
+ table to point `for` at. `for` wins where both are set.
13200
+
13201
+ ```js
13202
+ chart.data = {
13203
+ caption: 'Sessions by channel',
13204
+ columns: ['Month', 'Direct', 'Referral'],
13205
+ rows: [['Jan', 10, 4], ['Feb', 20, 8]],
13206
+ }
13207
+ ```
13208
+
13209
+ The first column holds each row's label and every column after it a
13210
+ series, as in a table. A cell is a number, words, `null` for a blank,
13211
+ or `{ value, text }` for a number shown as words, such as `$128k`. A
13212
+ number is shown in `locale`.
13213
+
13214
+ **A table is still the better source where the page can show one**:
13215
+ it reads with no script and before hydration, and a reader can sort and
13216
+ copy it. Data is drawn on the client only, so a server serves the
13217
+ frame, and the summary, the keys and the readout are then the whole of
13218
+ what a screen reader is given. Set a new object to redraw: the chart
13219
+ does not look inside the one it has. */
13220
+ data?: (HelixDonutChart["data"]) | undefined;
12938
13221
  };
12939
13222
 
12940
13223
  export type HelixDonutChartSolidJsProps = {
@@ -13079,6 +13362,29 @@ rotation that puts the first slice at nine o'clock, the aspect ratio of a
13079
13362
  box that is no longer square, and where the middle sits once the bottom of
13080
13363
  the circle is not drawn. */
13081
13364
  "prop:sweep"?: (HelixDonutChart["sweep"]) | undefined;
13365
+ /** The readings as data, in the shape of a table, where the page has no
13366
+ table to point `for` at. `for` wins where both are set.
13367
+
13368
+ ```js
13369
+ chart.data = {
13370
+ caption: 'Sessions by channel',
13371
+ columns: ['Month', 'Direct', 'Referral'],
13372
+ rows: [['Jan', 10, 4], ['Feb', 20, 8]],
13373
+ }
13374
+ ```
13375
+
13376
+ The first column holds each row's label and every column after it a
13377
+ series, as in a table. A cell is a number, words, `null` for a blank,
13378
+ or `{ value, text }` for a number shown as words, such as `$128k`. A
13379
+ number is shown in `locale`.
13380
+
13381
+ **A table is still the better source where the page can show one**:
13382
+ it reads with no script and before hydration, and a reader can sort and
13383
+ copy it. Data is drawn on the client only, so a server serves the
13384
+ frame, and the summary, the keys and the readout are then the whole of
13385
+ what a screen reader is given. Set a new object to redraw: the chart
13386
+ does not look inside the one it has. */
13387
+ "prop:data"?: (HelixDonutChart["data"]) | undefined;
13082
13388
 
13083
13389
  /** Set the innerHTML of the element */
13084
13390
  innerHTML?: (string) | undefined;
@@ -16074,6 +16380,29 @@ no order in it. */
16074
16380
  Set it to start with cells selected. Written by a press or a key under
16075
16381
  `selection-mode`. */
16076
16382
  value?: (HelixHeatmap["value"]) | undefined;
16383
+ /** The readings as data, in the shape of a table, where the page has no
16384
+ table to point `for` at. `for` wins where both are set.
16385
+
16386
+ ```js
16387
+ chart.data = {
16388
+ caption: 'Sessions by channel',
16389
+ columns: ['Month', 'Direct', 'Referral'],
16390
+ rows: [['Jan', 10, 4], ['Feb', 20, 8]],
16391
+ }
16392
+ ```
16393
+
16394
+ The first column holds each row's label and every column after it a
16395
+ series, as in a table. A cell is a number, words, `null` for a blank,
16396
+ or `{ value, text }` for a number shown as words, such as `$128k`. A
16397
+ number is shown in `locale`.
16398
+
16399
+ **A table is still the better source where the page can show one**:
16400
+ it reads with no script and before hydration, and a reader can sort and
16401
+ copy it. Data is drawn on the client only, so a server serves the
16402
+ frame, and the summary, the keys and the readout are then the whole of
16403
+ what a screen reader is given. Set a new object to redraw: the chart
16404
+ does not look inside the one it has. */
16405
+ data?: (HelixHeatmap["data"]) | undefined;
16077
16406
 
16078
16407
  /** Fired once a press or a key has changed which cells are selected. */
16079
16408
  onchange?: ((e: HelixHeatmapElementEvent) => void) | undefined;
@@ -16257,6 +16586,29 @@ no order in it. */
16257
16586
  Set it to start with cells selected. Written by a press or a key under
16258
16587
  `selection-mode`. */
16259
16588
  "prop:value"?: (HelixHeatmap["value"]) | undefined;
16589
+ /** The readings as data, in the shape of a table, where the page has no
16590
+ table to point `for` at. `for` wins where both are set.
16591
+
16592
+ ```js
16593
+ chart.data = {
16594
+ caption: 'Sessions by channel',
16595
+ columns: ['Month', 'Direct', 'Referral'],
16596
+ rows: [['Jan', 10, 4], ['Feb', 20, 8]],
16597
+ }
16598
+ ```
16599
+
16600
+ The first column holds each row's label and every column after it a
16601
+ series, as in a table. A cell is a number, words, `null` for a blank,
16602
+ or `{ value, text }` for a number shown as words, such as `$128k`. A
16603
+ number is shown in `locale`.
16604
+
16605
+ **A table is still the better source where the page can show one**:
16606
+ it reads with no script and before hydration, and a reader can sort and
16607
+ copy it. Data is drawn on the client only, so a server serves the
16608
+ frame, and the summary, the keys and the readout are then the whole of
16609
+ what a screen reader is given. Set a new object to redraw: the chart
16610
+ does not look inside the one it has. */
16611
+ "prop:data"?: (HelixHeatmap["data"]) | undefined;
16260
16612
  /** Fired once a press or a key has changed which cells are selected. */
16261
16613
  "on:change"?: ((e: HelixHeatmapElementEvent) => void) | undefined;
16262
16614
  /** Fired before a press or a key changes which cells are selected, with the `value` it would leave. Cancelable. */
@@ -16741,6 +17093,31 @@ invoker without an id in the same tree needs. */
16741
17093
  export type HelixIconElementEvent<E = Event> = TypedEvent<HelixIcon, E>;
16742
17094
 
16743
17095
  export type HelixIconProps = {
17096
+ /** A motion that draws the eye or says work is going on: `spin` turns the
17097
+ glyph without end, `pulse` fades it in and out, and `beat` swells it.
17098
+
17099
+ Absent is still. Reduced motion stills every one of them. */
17100
+ animation?: (HelixIcon["animation"]) | undefined;
17101
+ /** Whether the box takes the glyph's own proportions, its height from
17102
+ `--icon-size` and its width from the glyph's box.
17103
+
17104
+ Absent is a square, which lines icons up in a column. */
17105
+ "auto-width"?: (HelixIcon["autoWidth"]) | undefined;
17106
+ /** Whether the box takes the glyph's own proportions, its height from
17107
+ `--icon-size` and its width from the glyph's box.
17108
+
17109
+ Absent is a square, which lines icons up in a column. */
17110
+ autoWidth?: (HelixIcon["autoWidth"]) | undefined;
17111
+ /** Mirrors the glyph across an axis: `x` left to right, `y` top to bottom,
17112
+ `both` across both.
17113
+
17114
+ Absent draws it as it is. On a right-to-left page, `mirror` is the flip
17115
+ that follows the direction. */
17116
+ flip?: (HelixIcon["flip"]) | undefined;
17117
+ /** Turns the glyph clockwise by 90, 180 or 270 degrees.
17118
+
17119
+ Absent draws it upright. `--icon-rotate` turns it by any other angle. */
17120
+ rotate?: (HelixIcon["rotate"]) | undefined;
16744
17121
  /** The icon's name, read by screen readers. Set it for an icon that is not
16745
17122
  decorative. */
16746
17123
  label?: (HelixIcon["label"]) | undefined;
@@ -16764,6 +17141,11 @@ the value instead.
16764
17141
  A name written `prefix:name` asks the library registered under that
16765
17142
  prefix. */
16766
17143
  name?: (HelixIcon["name"]) | undefined;
17144
+ /** The URL of an SVG file to draw, fetched once a page and drawn in
17145
+ `currentColor` where the file does not color its shapes.
17146
+
17147
+ Wins over `name`; `icon` wins over both. Absent draws `name`. */
17148
+ src?: (HelixIcon["src"]) | undefined;
16767
17149
  /** The icon to draw, as an object you import.
16768
17150
 
16769
17151
  **The scalable door, and the one this library uses internally.** An icon is
@@ -16778,13 +17160,38 @@ frameworks set properties and plain markup cannot, which is what `name` is
16778
17160
  for. Set both and this wins, the value being the more specific statement. */
16779
17161
  icon?: (HelixIcon["icon"]) | undefined;
16780
17162
 
16781
- /** `name` matches no registered icon and no library answers it, so nothing is drawn. */
17163
+ /** `name` matches no registered icon and no library answers it, or `src` is no SVG, so nothing is drawn. */
16782
17164
  onerror?: ((e: HelixIconElementEvent) => void) | undefined;
16783
- /** A glyph a library gave later for `name` is drawn. */
17165
+ /** A glyph a library gave later for `name`, or the file at `src`, is drawn. */
16784
17166
  onload?: ((e: HelixIconElementEvent) => void) | undefined;
16785
17167
  };
16786
17168
 
16787
17169
  export type HelixIconSolidJsProps = {
17170
+ /** A motion that draws the eye or says work is going on: `spin` turns the
17171
+ glyph without end, `pulse` fades it in and out, and `beat` swells it.
17172
+
17173
+ Absent is still. Reduced motion stills every one of them. */
17174
+ "prop:animation"?: (HelixIcon["animation"]) | undefined;
17175
+ /** Whether the box takes the glyph's own proportions, its height from
17176
+ `--icon-size` and its width from the glyph's box.
17177
+
17178
+ Absent is a square, which lines icons up in a column. */
17179
+ "bool:auto-width"?: (HelixIcon["autoWidth"]) | undefined;
17180
+ /** Whether the box takes the glyph's own proportions, its height from
17181
+ `--icon-size` and its width from the glyph's box.
17182
+
17183
+ Absent is a square, which lines icons up in a column. */
17184
+ "prop:autoWidth"?: (HelixIcon["autoWidth"]) | undefined;
17185
+ /** Mirrors the glyph across an axis: `x` left to right, `y` top to bottom,
17186
+ `both` across both.
17187
+
17188
+ Absent draws it as it is. On a right-to-left page, `mirror` is the flip
17189
+ that follows the direction. */
17190
+ "prop:flip"?: (HelixIcon["flip"]) | undefined;
17191
+ /** Turns the glyph clockwise by 90, 180 or 270 degrees.
17192
+
17193
+ Absent draws it upright. `--icon-rotate` turns it by any other angle. */
17194
+ "prop:rotate"?: (HelixIcon["rotate"]) | undefined;
16788
17195
  /** The icon's name, read by screen readers. Set it for an icon that is not
16789
17196
  decorative. */
16790
17197
  "prop:label"?: (HelixIcon["label"]) | undefined;
@@ -16808,6 +17215,11 @@ the value instead.
16808
17215
  A name written `prefix:name` asks the library registered under that
16809
17216
  prefix. */
16810
17217
  "prop:name"?: (HelixIcon["name"]) | undefined;
17218
+ /** The URL of an SVG file to draw, fetched once a page and drawn in
17219
+ `currentColor` where the file does not color its shapes.
17220
+
17221
+ Wins over `name`; `icon` wins over both. Absent draws `name`. */
17222
+ "prop:src"?: (HelixIcon["src"]) | undefined;
16811
17223
  /** The icon to draw, as an object you import.
16812
17224
 
16813
17225
  **The scalable door, and the one this library uses internally.** An icon is
@@ -16821,9 +17233,9 @@ consumer's own drawings.
16821
17233
  frameworks set properties and plain markup cannot, which is what `name` is
16822
17234
  for. Set both and this wins, the value being the more specific statement. */
16823
17235
  "prop:icon"?: (HelixIcon["icon"]) | undefined;
16824
- /** `name` matches no registered icon and no library answers it, so nothing is drawn. */
17236
+ /** `name` matches no registered icon and no library answers it, or `src` is no SVG, so nothing is drawn. */
16825
17237
  "on:error"?: ((e: HelixIconElementEvent) => void) | undefined;
16826
- /** A glyph a library gave later for `name` is drawn. */
17238
+ /** A glyph a library gave later for `name`, or the file at `src`, is drawn. */
16827
17239
  "on:load"?: ((e: HelixIconElementEvent) => void) | undefined;
16828
17240
 
16829
17241
  /** Set the innerHTML of the element */
@@ -18352,6 +18764,25 @@ chart and a card mean the same thing by the word.
18352
18764
  material choice, it is an absent series, and a chart says that by not
18353
18765
  having the datum rather than by painting it invisibly. */
18354
18766
  material?: (HelixLineChart["material"]) | undefined;
18767
+ /** The words shown in place of the drawing when the table has no readings,
18768
+ and the fallback of the `empty` slot. */
18769
+ "empty-text"?: (HelixLineChart["emptyText"]) | undefined;
18770
+ /** The words shown in place of the drawing when the table has no readings,
18771
+ and the fallback of the `empty` slot. */
18772
+ emptyText?: (HelixLineChart["emptyText"]) | undefined;
18773
+ /** Whether the readings are still on their way. The chart shows
18774
+ `loading-text` in place of an empty drawing until it has readings.
18775
+
18776
+ Reflected, so a stylesheet can treat the chart while it waits. A chart
18777
+ that already has readings keeps drawing them, so a refresh does not
18778
+ blank it. */
18779
+ loading?: (HelixLineChart["loading"]) | undefined;
18780
+ /** The words shown in place of the drawing while `loading` is set and
18781
+ there are no readings yet, and the fallback of the `loading` slot. */
18782
+ "loading-text"?: (HelixLineChart["loadingText"]) | undefined;
18783
+ /** The words shown in place of the drawing while `loading` is set and
18784
+ there are no readings yet, and the fallback of the `loading` slot. */
18785
+ loadingText?: (HelixLineChart["loadingText"]) | undefined;
18355
18786
  /** The id of the table to read.
18356
18787
 
18357
18788
  Names a table in the same tree, so a chart inside another component's
@@ -18509,6 +18940,29 @@ Set it where the distance from nothing is the point rather than the shape,
18509
18940
  and accept that a series which never approaches zero becomes a flat rule
18510
18941
  near the top of the box. */
18511
18942
  zero?: (HelixLineChart["zero"]) | undefined;
18943
+ /** The readings as data, in the shape of a table, where the page has no
18944
+ table to point `for` at. `for` wins where both are set.
18945
+
18946
+ ```js
18947
+ chart.data = {
18948
+ caption: 'Sessions by channel',
18949
+ columns: ['Month', 'Direct', 'Referral'],
18950
+ rows: [['Jan', 10, 4], ['Feb', 20, 8]],
18951
+ }
18952
+ ```
18953
+
18954
+ The first column holds each row's label and every column after it a
18955
+ series, as in a table. A cell is a number, words, `null` for a blank,
18956
+ or `{ value, text }` for a number shown as words, such as `$128k`. A
18957
+ number is shown in `locale`.
18958
+
18959
+ **A table is still the better source where the page can show one**:
18960
+ it reads with no script and before hydration, and a reader can sort and
18961
+ copy it. Data is drawn on the client only, so a server serves the
18962
+ frame, and the summary, the keys and the readout are then the whole of
18963
+ what a screen reader is given. Set a new object to redraw: the chart
18964
+ does not look inside the one it has. */
18965
+ data?: (HelixLineChart["data"]) | undefined;
18512
18966
 
18513
18967
  /** 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. */
18514
18968
  "onhelix-reading-change"?: ((
@@ -18561,6 +19015,25 @@ chart and a card mean the same thing by the word.
18561
19015
  material choice, it is an absent series, and a chart says that by not
18562
19016
  having the datum rather than by painting it invisibly. */
18563
19017
  "prop:material"?: (HelixLineChart["material"]) | undefined;
19018
+ /** The words shown in place of the drawing when the table has no readings,
19019
+ and the fallback of the `empty` slot. */
19020
+ "attr:empty-text"?: (HelixLineChart["emptyText"]) | undefined;
19021
+ /** The words shown in place of the drawing when the table has no readings,
19022
+ and the fallback of the `empty` slot. */
19023
+ "prop:emptyText"?: (HelixLineChart["emptyText"]) | undefined;
19024
+ /** Whether the readings are still on their way. The chart shows
19025
+ `loading-text` in place of an empty drawing until it has readings.
19026
+
19027
+ Reflected, so a stylesheet can treat the chart while it waits. A chart
19028
+ that already has readings keeps drawing them, so a refresh does not
19029
+ blank it. */
19030
+ "prop:loading"?: (HelixLineChart["loading"]) | undefined;
19031
+ /** The words shown in place of the drawing while `loading` is set and
19032
+ there are no readings yet, and the fallback of the `loading` slot. */
19033
+ "attr:loading-text"?: (HelixLineChart["loadingText"]) | undefined;
19034
+ /** The words shown in place of the drawing while `loading` is set and
19035
+ there are no readings yet, and the fallback of the `loading` slot. */
19036
+ "prop:loadingText"?: (HelixLineChart["loadingText"]) | undefined;
18564
19037
  /** The id of the table to read.
18565
19038
 
18566
19039
  Names a table in the same tree, so a chart inside another component's
@@ -18718,6 +19191,29 @@ Set it where the distance from nothing is the point rather than the shape,
18718
19191
  and accept that a series which never approaches zero becomes a flat rule
18719
19192
  near the top of the box. */
18720
19193
  "prop:zero"?: (HelixLineChart["zero"]) | undefined;
19194
+ /** The readings as data, in the shape of a table, where the page has no
19195
+ table to point `for` at. `for` wins where both are set.
19196
+
19197
+ ```js
19198
+ chart.data = {
19199
+ caption: 'Sessions by channel',
19200
+ columns: ['Month', 'Direct', 'Referral'],
19201
+ rows: [['Jan', 10, 4], ['Feb', 20, 8]],
19202
+ }
19203
+ ```
19204
+
19205
+ The first column holds each row's label and every column after it a
19206
+ series, as in a table. A cell is a number, words, `null` for a blank,
19207
+ or `{ value, text }` for a number shown as words, such as `$128k`. A
19208
+ number is shown in `locale`.
19209
+
19210
+ **A table is still the better source where the page can show one**:
19211
+ it reads with no script and before hydration, and a reader can sort and
19212
+ copy it. Data is drawn on the client only, so a server serves the
19213
+ frame, and the summary, the keys and the readout are then the whole of
19214
+ what a screen reader is given. Set a new object to redraw: the chart
19215
+ does not look inside the one it has. */
19216
+ "prop:data"?: (HelixLineChart["data"]) | undefined;
18721
19217
  /** 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. */
18722
19218
  "on:helix-reading-change"?: ((
18723
19219
  e: HelixLineChartHelixReadingChangeElementEvent,
@@ -23911,7 +24407,13 @@ the state's word.
23911
24407
 
23912
24408
  Off by default, because the name and the busy state already change with
23913
24409
  the state, and an orb beside a stream of messages would otherwise talk
23914
- over them. Set it on an orb that is the only sign of progress on the page. */
24410
+ over them. Set it on an orb that is the only sign of progress on the page.
24411
+
24412
+ **Without it, finishing is silent.** `done` turns the orb into an image
24413
+ named "Done" that is no longer busy, which a screen reader reports when it
24414
+ next reaches the orb and does not say as it happens. A page whose own
24415
+ result arrives in a live region, such as a chat reply, already says the
24416
+ work is done; one that shows nothing else sets `announce`. */
23915
24417
  announce?: (HelixOrb["announce"]) | undefined;
23916
24418
  /** The name read by screen readers. Defaults to the name of the state, such
23917
24419
  as "Thinking".
@@ -23971,7 +24473,13 @@ the state's word.
23971
24473
 
23972
24474
  Off by default, because the name and the busy state already change with
23973
24475
  the state, and an orb beside a stream of messages would otherwise talk
23974
- over them. Set it on an orb that is the only sign of progress on the page. */
24476
+ over them. Set it on an orb that is the only sign of progress on the page.
24477
+
24478
+ **Without it, finishing is silent.** `done` turns the orb into an image
24479
+ named "Done" that is no longer busy, which a screen reader reports when it
24480
+ next reaches the orb and does not say as it happens. A page whose own
24481
+ result arrives in a live region, such as a chat reply, already says the
24482
+ work is done; one that shows nothing else sets `announce`. */
23975
24483
  "prop:announce"?: (HelixOrb["announce"]) | undefined;
23976
24484
  /** The name read by screen readers. Defaults to the name of the state, such
23977
24485
  as "Thinking".
@@ -25145,7 +25653,8 @@ decimals. Written as JSON in the attribute.
25145
25653
 
25146
25654
  A `percent` style writes the share of the range, and any other the value
25147
25655
  itself, so the example says "18 GB". Absent is a whole percentage. The
25148
- words are announced as well as shown. `value-text` still wins. */
25656
+ words are announced whether or not `show-value` shows them. `value-text`
25657
+ still wins. */
25149
25658
  "format-options"?: (HelixProgress["formatOptions"]) | undefined;
25150
25659
  /** `Intl.NumberFormat` options the reading is written with, as React Aria's
25151
25660
  Meter and ProgressBar take them: a unit, a currency, or a number of
@@ -25157,7 +25666,8 @@ decimals. Written as JSON in the attribute.
25157
25666
 
25158
25667
  A `percent` style writes the share of the range, and any other the value
25159
25668
  itself, so the example says "18 GB". Absent is a whole percentage. The
25160
- words are announced as well as shown. `value-text` still wins. */
25669
+ words are announced whether or not `show-value` shows them. `value-text`
25670
+ still wins. */
25161
25671
  formatOptions?: (HelixProgress["formatOptions"]) | undefined;
25162
25672
  /** Whether the length of the task is unknown. The bar then shows activity
25163
25673
  without a value.
@@ -25289,7 +25799,8 @@ decimals. Written as JSON in the attribute.
25289
25799
 
25290
25800
  A `percent` style writes the share of the range, and any other the value
25291
25801
  itself, so the example says "18 GB". Absent is a whole percentage. The
25292
- words are announced as well as shown. `value-text` still wins. */
25802
+ words are announced whether or not `show-value` shows them. `value-text`
25803
+ still wins. */
25293
25804
  "attr:format-options"?: (HelixProgress["formatOptions"]) | undefined;
25294
25805
  /** `Intl.NumberFormat` options the reading is written with, as React Aria's
25295
25806
  Meter and ProgressBar take them: a unit, a currency, or a number of
@@ -25301,7 +25812,8 @@ decimals. Written as JSON in the attribute.
25301
25812
 
25302
25813
  A `percent` style writes the share of the range, and any other the value
25303
25814
  itself, so the example says "18 GB". Absent is a whole percentage. The
25304
- words are announced as well as shown. `value-text` still wins. */
25815
+ words are announced whether or not `show-value` shows them. `value-text`
25816
+ still wins. */
25305
25817
  "prop:formatOptions"?: (HelixProgress["formatOptions"]) | undefined;
25306
25818
  /** Whether the length of the task is unknown. The bar then shows activity
25307
25819
  without a value.
@@ -25508,11 +26020,39 @@ which is what makes it read as dots rather than as a softened square code. */
25508
26020
  export type HelixQuoteProps = {
25509
26021
  /** URL identifying where the quotation came from. */
25510
26022
  cite?: (HelixQuote["cite"]) | undefined;
26023
+ /** Whether to leave the quotation marks off, for a quotation set where the
26024
+ page draws its own.
26025
+
26026
+ Negative, because the marks are on by default and a boolean attribute is
26027
+ true whenever it is present. Reflected, because a stylesheet takes the
26028
+ marks off on it. */
26029
+ "no-marks"?: (HelixQuote["noMarks"]) | undefined;
26030
+ /** Whether to leave the quotation marks off, for a quotation set where the
26031
+ page draws its own.
26032
+
26033
+ Negative, because the marks are on by default and a boolean attribute is
26034
+ true whenever it is present. Reflected, because a stylesheet takes the
26035
+ marks off on it. */
26036
+ noMarks?: (HelixQuote["noMarks"]) | undefined;
25511
26037
  };
25512
26038
 
25513
26039
  export type HelixQuoteSolidJsProps = {
25514
26040
  /** URL identifying where the quotation came from. */
25515
26041
  "prop:cite"?: (HelixQuote["cite"]) | undefined;
26042
+ /** Whether to leave the quotation marks off, for a quotation set where the
26043
+ page draws its own.
26044
+
26045
+ Negative, because the marks are on by default and a boolean attribute is
26046
+ true whenever it is present. Reflected, because a stylesheet takes the
26047
+ marks off on it. */
26048
+ "bool:no-marks"?: (HelixQuote["noMarks"]) | undefined;
26049
+ /** Whether to leave the quotation marks off, for a quotation set where the
26050
+ page draws its own.
26051
+
26052
+ Negative, because the marks are on by default and a boolean attribute is
26053
+ true whenever it is present. Reflected, because a stylesheet takes the
26054
+ marks off on it. */
26055
+ "prop:noMarks"?: (HelixQuote["noMarks"]) | undefined;
25516
26056
 
25517
26057
  /** Set the innerHTML of the element */
25518
26058
  innerHTML?: (string) | undefined;
@@ -27277,6 +27817,25 @@ export type HelixScatterChartHelixReadingPressElementEvent =
27277
27817
  HelixScatterChartElementEvent<HelixReadingPressEvent>;
27278
27818
 
27279
27819
  export type HelixScatterChartProps = {
27820
+ /** The words shown in place of the drawing when the table has no readings,
27821
+ and the fallback of the `empty` slot. */
27822
+ "empty-text"?: (HelixScatterChart["emptyText"]) | undefined;
27823
+ /** The words shown in place of the drawing when the table has no readings,
27824
+ and the fallback of the `empty` slot. */
27825
+ emptyText?: (HelixScatterChart["emptyText"]) | undefined;
27826
+ /** Whether the readings are still on their way. The chart shows
27827
+ `loading-text` in place of an empty drawing until it has readings.
27828
+
27829
+ Reflected, so a stylesheet can treat the chart while it waits. A chart
27830
+ that already has readings keeps drawing them, so a refresh does not
27831
+ blank it. */
27832
+ loading?: (HelixScatterChart["loading"]) | undefined;
27833
+ /** The words shown in place of the drawing while `loading` is set and
27834
+ there are no readings yet, and the fallback of the `loading` slot. */
27835
+ "loading-text"?: (HelixScatterChart["loadingText"]) | undefined;
27836
+ /** The words shown in place of the drawing while `loading` is set and
27837
+ there are no readings yet, and the fallback of the `loading` slot. */
27838
+ loadingText?: (HelixScatterChart["loadingText"]) | undefined;
27280
27839
  /** The id of the table to read.
27281
27840
 
27282
27841
  Names a table in the same tree, so a chart inside another component's
@@ -27372,6 +27931,29 @@ Absent draws none. A series with fewer than two points, or with every
27372
27931
  point at one measure across, has no line to draw. The summary already
27373
27932
  gives each series' correlation, which says how near the points are to it. */
27374
27933
  trend?: (HelixScatterChart["trend"]) | undefined;
27934
+ /** The readings as data, in the shape of a table, where the page has no
27935
+ table to point `for` at. `for` wins where both are set.
27936
+
27937
+ ```js
27938
+ chart.data = {
27939
+ caption: 'Sessions by channel',
27940
+ columns: ['Month', 'Direct', 'Referral'],
27941
+ rows: [['Jan', 10, 4], ['Feb', 20, 8]],
27942
+ }
27943
+ ```
27944
+
27945
+ The first column holds each row's label and every column after it a
27946
+ series, as in a table. A cell is a number, words, `null` for a blank,
27947
+ or `{ value, text }` for a number shown as words, such as `$128k`. A
27948
+ number is shown in `locale`.
27949
+
27950
+ **A table is still the better source where the page can show one**:
27951
+ it reads with no script and before hydration, and a reader can sort and
27952
+ copy it. Data is drawn on the client only, so a server serves the
27953
+ frame, and the summary, the keys and the readout are then the whole of
27954
+ what a screen reader is given. Set a new object to redraw: the chart
27955
+ does not look inside the one it has. */
27956
+ data?: (HelixScatterChart["data"]) | undefined;
27375
27957
 
27376
27958
  /** 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. */
27377
27959
  "onhelix-reading-change"?: ((
@@ -27384,6 +27966,25 @@ gives each series' correlation, which says how near the points are to it. */
27384
27966
  };
27385
27967
 
27386
27968
  export type HelixScatterChartSolidJsProps = {
27969
+ /** The words shown in place of the drawing when the table has no readings,
27970
+ and the fallback of the `empty` slot. */
27971
+ "attr:empty-text"?: (HelixScatterChart["emptyText"]) | undefined;
27972
+ /** The words shown in place of the drawing when the table has no readings,
27973
+ and the fallback of the `empty` slot. */
27974
+ "prop:emptyText"?: (HelixScatterChart["emptyText"]) | undefined;
27975
+ /** Whether the readings are still on their way. The chart shows
27976
+ `loading-text` in place of an empty drawing until it has readings.
27977
+
27978
+ Reflected, so a stylesheet can treat the chart while it waits. A chart
27979
+ that already has readings keeps drawing them, so a refresh does not
27980
+ blank it. */
27981
+ "prop:loading"?: (HelixScatterChart["loading"]) | undefined;
27982
+ /** The words shown in place of the drawing while `loading` is set and
27983
+ there are no readings yet, and the fallback of the `loading` slot. */
27984
+ "attr:loading-text"?: (HelixScatterChart["loadingText"]) | undefined;
27985
+ /** The words shown in place of the drawing while `loading` is set and
27986
+ there are no readings yet, and the fallback of the `loading` slot. */
27987
+ "prop:loadingText"?: (HelixScatterChart["loadingText"]) | undefined;
27387
27988
  /** The id of the table to read.
27388
27989
 
27389
27990
  Names a table in the same tree, so a chart inside another component's
@@ -27479,6 +28080,29 @@ Absent draws none. A series with fewer than two points, or with every
27479
28080
  point at one measure across, has no line to draw. The summary already
27480
28081
  gives each series' correlation, which says how near the points are to it. */
27481
28082
  "prop:trend"?: (HelixScatterChart["trend"]) | undefined;
28083
+ /** The readings as data, in the shape of a table, where the page has no
28084
+ table to point `for` at. `for` wins where both are set.
28085
+
28086
+ ```js
28087
+ chart.data = {
28088
+ caption: 'Sessions by channel',
28089
+ columns: ['Month', 'Direct', 'Referral'],
28090
+ rows: [['Jan', 10, 4], ['Feb', 20, 8]],
28091
+ }
28092
+ ```
28093
+
28094
+ The first column holds each row's label and every column after it a
28095
+ series, as in a table. A cell is a number, words, `null` for a blank,
28096
+ or `{ value, text }` for a number shown as words, such as `$128k`. A
28097
+ number is shown in `locale`.
28098
+
28099
+ **A table is still the better source where the page can show one**:
28100
+ it reads with no script and before hydration, and a reader can sort and
28101
+ copy it. Data is drawn on the client only, so a server serves the
28102
+ frame, and the summary, the keys and the readout are then the whole of
28103
+ what a screen reader is given. Set a new object to redraw: the chart
28104
+ does not look inside the one it has. */
28105
+ "prop:data"?: (HelixScatterChart["data"]) | undefined;
27482
28106
  /** 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. */
27483
28107
  "on:helix-reading-change"?: ((
27484
28108
  e: HelixScatterChartHelixReadingChangeElementEvent,
@@ -28075,6 +28699,11 @@ fade the fill in and out, or `none` to sit still.
28075
28699
 
28076
28700
  Reduced motion stills both. */
28077
28701
  effect?: (HelixSkeleton["effect"]) | undefined;
28702
+ /** How many lines of text the placeholder stands for, with `shape="text"`.
28703
+
28704
+ Absent, or 1, is one line. Reflected, because the stylesheet sizes a
28705
+ paragraph by it. */
28706
+ lines?: (HelixSkeleton["lines"]) | undefined;
28078
28707
  /** The shape of the placeholder: `text`, `circle`, or a block when unset.
28079
28708
 
28080
28709
  Unset is a block, which is what most missing things are. A block is the
@@ -28100,6 +28729,11 @@ fade the fill in and out, or `none` to sit still.
28100
28729
 
28101
28730
  Reduced motion stills both. */
28102
28731
  "prop:effect"?: (HelixSkeleton["effect"]) | undefined;
28732
+ /** How many lines of text the placeholder stands for, with `shape="text"`.
28733
+
28734
+ Absent, or 1, is one line. Reflected, because the stylesheet sizes a
28735
+ paragraph by it. */
28736
+ "prop:lines"?: (HelixSkeleton["lines"]) | undefined;
28103
28737
  /** The shape of the placeholder: `text`, `circle`, or a block when unset.
28104
28738
 
28105
28739
  Unset is a block, which is what most missing things are. A block is the
@@ -29515,7 +30149,10 @@ figures compared one against another keep their own widths. */
29515
30149
  columns?: (HelixStatGroup["columns"]) | undefined;
29516
30150
  /** Draws a rule between the figures, in addition to the space. */
29517
30151
  divided?: (HelixStatGroup["divided"]) | undefined;
29518
- /** Accessible name for the group. */
30152
+ /** Accessible name for the group, which makes it a group.
30153
+
30154
+ Absent leaves the stats with no group around them, unless `aria-label` or
30155
+ `aria-labelledby` names it. */
29519
30156
  label?: (HelixStatGroup["label"]) | undefined;
29520
30157
  };
29521
30158
 
@@ -29529,7 +30166,10 @@ figures compared one against another keep their own widths. */
29529
30166
  "prop:columns"?: (HelixStatGroup["columns"]) | undefined;
29530
30167
  /** Draws a rule between the figures, in addition to the space. */
29531
30168
  "prop:divided"?: (HelixStatGroup["divided"]) | undefined;
29532
- /** Accessible name for the group. */
30169
+ /** Accessible name for the group, which makes it a group.
30170
+
30171
+ Absent leaves the stats with no group around them, unless `aria-label` or
30172
+ `aria-labelledby` names it. */
29533
30173
  "prop:label"?: (HelixStatGroup["label"]) | undefined;
29534
30174
 
29535
30175
  /** Set the innerHTML of the element */
@@ -29565,6 +30205,29 @@ reports a hydration mismatch. The absent attribute is the column, which the
29565
30205
  stylesheet reads as the base case, and the server spec asserts the host
29566
30206
  carries nothing nobody wrote. */
29567
30207
  direction?: (HelixStat["direction"]) | undefined;
30208
+ /** `Intl.NumberFormat` options `value` is written with, such as
30209
+ `{"notation":"compact"}` for `1.2M` or `{"style":"percent"}` for `98%`,
30210
+ written as JSON in the attribute.
30211
+
30212
+ Absent writes the number as the locale writes any number. */
30213
+ "format-options"?: (HelixStat["formatOptions"]) | undefined;
30214
+ /** `Intl.NumberFormat` options `value` is written with, such as
30215
+ `{"notation":"compact"}` for `1.2M` or `{"style":"percent"}` for `98%`,
30216
+ written as JSON in the attribute.
30217
+
30218
+ Absent writes the number as the locale writes any number. */
30219
+ formatOptions?: (HelixStat["formatOptions"]) | undefined;
30220
+ /** The locale `value` is written in, such as `de` for `1.234.567`.
30221
+
30222
+ Absent reads the nearest `lang`, then the runtime's own. Set it on a page
30223
+ rendered on a server, so the server and the browser write the figure
30224
+ alike. */
30225
+ locale?: (HelixStat["locale"]) | undefined;
30226
+ /** The figure as a number, written with `format-options` in `locale` in
30227
+ place of a slotted value.
30228
+
30229
+ Absent leaves the figure to the slot. */
30230
+ value?: (HelixStat["value"]) | undefined;
29568
30231
  };
29569
30232
 
29570
30233
  export type HelixStatSolidJsProps = {
@@ -29594,6 +30257,29 @@ reports a hydration mismatch. The absent attribute is the column, which the
29594
30257
  stylesheet reads as the base case, and the server spec asserts the host
29595
30258
  carries nothing nobody wrote. */
29596
30259
  "prop:direction"?: (HelixStat["direction"]) | undefined;
30260
+ /** `Intl.NumberFormat` options `value` is written with, such as
30261
+ `{"notation":"compact"}` for `1.2M` or `{"style":"percent"}` for `98%`,
30262
+ written as JSON in the attribute.
30263
+
30264
+ Absent writes the number as the locale writes any number. */
30265
+ "attr:format-options"?: (HelixStat["formatOptions"]) | undefined;
30266
+ /** `Intl.NumberFormat` options `value` is written with, such as
30267
+ `{"notation":"compact"}` for `1.2M` or `{"style":"percent"}` for `98%`,
30268
+ written as JSON in the attribute.
30269
+
30270
+ Absent writes the number as the locale writes any number. */
30271
+ "prop:formatOptions"?: (HelixStat["formatOptions"]) | undefined;
30272
+ /** The locale `value` is written in, such as `de` for `1.234.567`.
30273
+
30274
+ Absent reads the nearest `lang`, then the runtime's own. Set it on a page
30275
+ rendered on a server, so the server and the browser write the figure
30276
+ alike. */
30277
+ "prop:locale"?: (HelixStat["locale"]) | undefined;
30278
+ /** The figure as a number, written with `format-options` in `locale` in
30279
+ place of a slotted value.
30280
+
30281
+ Absent leaves the figure to the slot. */
30282
+ "prop:value"?: (HelixStat["value"]) | undefined;
29597
30283
 
29598
30284
  /** Set the innerHTML of the element */
29599
30285
  innerHTML?: (string) | undefined;
@@ -37565,6 +38251,16 @@ export type CustomElements = {
37565
38251
  *
37566
38252
  * Component attributes and properties that can be applied to the element or by using JavaScript.
37567
38253
  *
38254
+ * - `empty-text`/`emptyText`: The words shown in place of the drawing when the table has no readings,
38255
+ * and the fallback of the `empty` slot.
38256
+ * - `loading`: Whether the readings are still on their way. The chart shows
38257
+ * `loading-text` in place of an empty drawing until it has readings.
38258
+ *
38259
+ * Reflected, so a stylesheet can treat the chart while it waits. A chart
38260
+ * that already has readings keeps drawing them, so a refresh does not
38261
+ * blank it.
38262
+ * - `loading-text`/`loadingText`: The words shown in place of the drawing while `loading` is set and
38263
+ * there are no readings yet, and the fallback of the `loading` slot.
37568
38264
  * - `for`: The id of the table to read.
37569
38265
  *
37570
38266
  * Names a table in the same tree, so a chart inside another component's
@@ -37637,6 +38333,28 @@ export type CustomElements = {
37637
38333
  * cannot be cast onto across unrelated classes, so it would be invisible to
37638
38334
  * every chart that needs it. Reading where a pointer is resting is a fair
37639
38335
  * thing to ask a chart anyway. (property only) (readonly)
38336
+ * - `data`: The readings as data, in the shape of a table, where the page has no
38337
+ * table to point `for` at. `for` wins where both are set.
38338
+ *
38339
+ * ```js
38340
+ * chart.data = {
38341
+ * caption: 'Sessions by channel',
38342
+ * columns: ['Month', 'Direct', 'Referral'],
38343
+ * rows: [['Jan', 10, 4], ['Feb', 20, 8]],
38344
+ * }
38345
+ * ```
38346
+ *
38347
+ * The first column holds each row's label and every column after it a
38348
+ * series, as in a table. A cell is a number, words, `null` for a blank,
38349
+ * or `{ value, text }` for a number shown as words, such as `$128k`. A
38350
+ * number is shown in `locale`.
38351
+ *
38352
+ * **A table is still the better source where the page can show one**:
38353
+ * it reads with no script and before hydration, and a reader can sort and
38354
+ * copy it. Data is drawn on the client only, so a server serves the
38355
+ * frame, and the summary, the keys and the readout are then the whole of
38356
+ * what a screen reader is given. Set a new object to redraw: the chart
38357
+ * does not look inside the one it has. (property only)
37640
38358
  * - `series`: The table's columns, one series each. Empty when there is no table.
37641
38359
  *
37642
38360
  * Held by the controller between edits, so a render reading this five
@@ -37653,6 +38371,9 @@ export type CustomElements = {
37653
38371
  * names an element, and the chart is a generic around its plot: written
37654
38372
  * on the host, the name reached nobody. The plot takes it, as Heatmap's
37655
38373
  * strip always did. (property only) (readonly)
38374
+ * - `readingsKnown`: Whether the readings have been looked for: false on the server and
38375
+ * while hydrating, where no table is resolved and no data is read. A
38376
+ * chart says it has no readings only once this is true. (property only) (readonly)
37656
38377
  * - `sourceRows`: Every row of the table, with each cell's text and number.
37657
38378
  *
37658
38379
  * This is where a tooltip's content comes from, and it is deliberately not
@@ -37699,6 +38420,13 @@ export type CustomElements = {
37699
38420
  * - `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.
37700
38421
  * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
37701
38422
  *
38423
+ * ## Slots
38424
+ *
38425
+ * Areas where markup can be added to the component.
38426
+ *
38427
+ * - `empty`: Content shown in place of the drawing when the table has no readings, such as a link to add the first. Falls back to `empty-text`.
38428
+ * - `loading`: Content shown in place of the drawing while `loading` is set and there are no readings yet. Falls back to `loading-text`.
38429
+ *
37702
38430
  * ## Methods
37703
38431
  *
37704
38432
  * Methods that can be called to access component functionality.
@@ -37755,12 +38483,14 @@ export type CustomElements = {
37755
38483
  * - `area`: One part's band.
37756
38484
  * - `axis`: The numbers of the scale beside the plot, under `value-axis`.
37757
38485
  * - `baseline`: The rule at zero, which is the floor of the drawing.
38486
+ * - `empty`: The words in place of the drawing when the table has no readings: the `empty` slot, falling back to `empty-text`. Not drawn while the table cannot be read yet, on the server and during hydration.
37758
38487
  * - `gridline`: One rule across the plot, under `gridlines`.
37759
38488
  * - `guide`: A rule down the reading a pointer is resting on.
37760
38489
  * - `label`: One reading's name.
37761
38490
  * - `labels`: The row of reading names.
37762
38491
  * - `line`: The top edge of one part's band.
37763
38492
  * - `live`: The readout: a polite live region that says the reading the keys moved to. Hide it visually.
38493
+ * - `loading`: The words in place of the drawing while `loading` is set and there are no readings: the `loading` slot, falling back to `loading-text`.
37764
38494
  * - `mark`: The invisible point the tooltip is anchored to.
37765
38495
  * - `plot`: The drawing, which takes focus to be read by key.
37766
38496
  * - `summary`: The total and each part's share at the latest reading, written as a sentence for screen readers.
@@ -38309,6 +39039,7 @@ export type CustomElements = {
38309
39039
  * Areas where markup can be added to the component.
38310
39040
  *
38311
39041
  * - `(default)`: The element being decorated.
39042
+ * - `icon`: An icon inside the mark, before the count, or the whole mark when there is no value. Hidden from screen readers.
38312
39043
  *
38313
39044
  * ## CSS Custom Properties
38314
39045
  *
@@ -38319,6 +39050,7 @@ export type CustomElements = {
38319
39050
  * - `--badge-color`: The color of the count, to pair with a fill set through `--badge-background-color`.
38320
39051
  * - `--badge-font-weight`: The weight of the count.
38321
39052
  * - `--badge-gap`: The space between the content and the count under `placement="inline"`.
39053
+ * - `--badge-icon-size`: The size of an icon in the `icon` slot. The count's own size by default.
38322
39054
  * - `--badge-offset`: Pulls the mark in from the corner, along both axes.
38323
39055
  * - `--badge-radius`: How far the indicator's corners are rounded.
38324
39056
  * - `--badge-ring-color`: The color of the ring between the indicator and what is behind it.
@@ -38327,7 +39059,8 @@ export type CustomElements = {
38327
39059
  *
38328
39060
  * Custom selectors for styling elements within the component.
38329
39061
  *
38330
- * - `indicator`: The count, or the dot when there is no value.
39062
+ * - `icon`: The slot the icon arrives through, inside the indicator. A slot draws no box, so it passes inherited properties, such as color, to the icon.
39063
+ * - `indicator`: The count, or the dot when there is no value. Carries `data-dot` when there is no value, `data-single` when the count is one character, and `data-blank` when the value is zero.
38331
39064
  *
38332
39065
  * ## CSS States
38333
39066
  *
@@ -38335,7 +39068,8 @@ export type CustomElements = {
38335
39068
  *
38336
39069
  * - `blank`: The value is zero, so there is no mark.
38337
39070
  * - `capped`: The count is past `max`, so the mark shows `{max}+`.
38338
- * - `dot`: There is no value, so the mark is a dot.
39071
+ * - `dot`: There is no value and no icon, so the mark is a dot.
39072
+ * - `has-icon`: Something is slotted into `icon`, so it is drawn inside the mark.
38339
39073
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
38340
39074
  */
38341
39075
  "helix-badge": Partial<HelixBadgeProps & BaseProps<HelixBadge> & BaseEvents<HelixBadge>>;
@@ -38449,6 +39183,16 @@ export type CustomElements = {
38449
39183
  * every component in the library and mean something on one. `wash` because
38450
39184
  * that is what the tier below already calls it, in `--chart-bar-wash` and in
38451
39185
  * the `bar-wash-start` and `bar-wash-end` stops.
39186
+ * - `empty-text`/`emptyText`: The words shown in place of the drawing when the table has no readings,
39187
+ * and the fallback of the `empty` slot.
39188
+ * - `loading`: Whether the readings are still on their way. The chart shows
39189
+ * `loading-text` in place of an empty drawing until it has readings.
39190
+ *
39191
+ * Reflected, so a stylesheet can treat the chart while it waits. A chart
39192
+ * that already has readings keeps drawing them, so a refresh does not
39193
+ * blank it.
39194
+ * - `loading-text`/`loadingText`: The words shown in place of the drawing while `loading` is set and
39195
+ * there are no readings yet, and the fallback of the `loading` slot.
38452
39196
  * - `for`: The id of the table to read.
38453
39197
  *
38454
39198
  * Names a table in the same tree, so a chart inside another component's
@@ -38580,6 +39324,28 @@ export type CustomElements = {
38580
39324
  * cannot be cast onto across unrelated classes, so it would be invisible to
38581
39325
  * every chart that needs it. Reading where a pointer is resting is a fair
38582
39326
  * thing to ask a chart anyway. (property only) (readonly)
39327
+ * - `data`: The readings as data, in the shape of a table, where the page has no
39328
+ * table to point `for` at. `for` wins where both are set.
39329
+ *
39330
+ * ```js
39331
+ * chart.data = {
39332
+ * caption: 'Sessions by channel',
39333
+ * columns: ['Month', 'Direct', 'Referral'],
39334
+ * rows: [['Jan', 10, 4], ['Feb', 20, 8]],
39335
+ * }
39336
+ * ```
39337
+ *
39338
+ * The first column holds each row's label and every column after it a
39339
+ * series, as in a table. A cell is a number, words, `null` for a blank,
39340
+ * or `{ value, text }` for a number shown as words, such as `$128k`. A
39341
+ * number is shown in `locale`.
39342
+ *
39343
+ * **A table is still the better source where the page can show one**:
39344
+ * it reads with no script and before hydration, and a reader can sort and
39345
+ * copy it. Data is drawn on the client only, so a server serves the
39346
+ * frame, and the summary, the keys and the readout are then the whole of
39347
+ * what a screen reader is given. Set a new object to redraw: the chart
39348
+ * does not look inside the one it has. (property only)
38583
39349
  * - `series`: The table's columns, one series each. Empty when there is no table.
38584
39350
  *
38585
39351
  * Held by the controller between edits, so a render reading this five
@@ -38596,6 +39362,9 @@ export type CustomElements = {
38596
39362
  * names an element, and the chart is a generic around its plot: written
38597
39363
  * on the host, the name reached nobody. The plot takes it, as Heatmap's
38598
39364
  * strip always did. (property only) (readonly)
39365
+ * - `readingsKnown`: Whether the readings have been looked for: false on the server and
39366
+ * while hydrating, where no table is resolved and no data is read. A
39367
+ * chart says it has no readings only once this is true. (property only) (readonly)
38599
39368
  * - `sourceRows`: Every row of the table, with each cell's text and number.
38600
39369
  *
38601
39370
  * This is where a tooltip's content comes from, and it is deliberately not
@@ -38642,6 +39411,13 @@ export type CustomElements = {
38642
39411
  * - `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.
38643
39412
  * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
38644
39413
  *
39414
+ * ## Slots
39415
+ *
39416
+ * Areas where markup can be added to the component.
39417
+ *
39418
+ * - `empty`: Content shown in place of the drawing when the table has no readings, such as a link to add the first. Falls back to `empty-text`.
39419
+ * - `loading`: Content shown in place of the drawing while `loading` is set and there are no readings yet. Falls back to `loading-text`.
39420
+ *
38645
39421
  * ## Methods
38646
39422
  *
38647
39423
  * Methods that can be called to access component functionality.
@@ -38705,6 +39481,7 @@ export type CustomElements = {
38705
39481
  * - `bar-wash-end`: The far stop of a bar's gradient, where one is used.
38706
39482
  * - `bar-wash-start`: The stop of a bar's gradient at its base.
38707
39483
  * - `baseline`: The line the columns stand on.
39484
+ * - `empty`: The words in place of the drawing when the table has no readings: the `empty` slot, falling back to `empty-text`. Not drawn while the table cannot be read yet, on the server and during hydration.
38708
39485
  * - `gridline`: One gridline across the plot, drawn when `gridlines` is set.
38709
39486
  * - `group`: One category's columns, together.
38710
39487
  * - `group-active`: The group the tooltip describes. Set together with `group`.
@@ -38712,6 +39489,7 @@ export type CustomElements = {
38712
39489
  * - `labels`: The row of category names.
38713
39490
  * - `line`: A series drawn as a line, named in `lines`.
38714
39491
  * - `live`: The readout: a polite live region that says the reading the keys moved to. Hide it visually.
39492
+ * - `loading`: The words in place of the drawing while `loading` is set and there are no readings: the `loading` slot, falling back to `loading-text`.
38715
39493
  * - `mark`: The invisible point the tooltip is anchored to.
38716
39494
  * - `plot`: The drawing, which takes focus to be read by key.
38717
39495
  * - `summary`: The chart's name and each series' highest reading, written as a sentence for screen readers. Hide it visually.
@@ -38750,10 +39528,31 @@ export type CustomElements = {
38750
39528
  * set the passage apart. `marks` draws one large opening mark over the passage,
38751
39529
  * as a pull quote sets it, in the element's language.
38752
39530
  *
39531
+ * `text-align` sets the passage and its attribution in the middle of the
39532
+ * column or against its far edge, as a pull quote often stands. There, the
39533
+ * mark `marks` draws stands over the passage rather than beside it.
39534
+ * `text-wrap="balance"` evens out a short passage's lines.
39535
+ *
38753
39536
  * ## Attributes & Properties
38754
39537
  *
38755
39538
  * Component attributes and properties that can be applied to the element or by using JavaScript.
38756
39539
  *
39540
+ * - `text-align`/`textAlign`: How the passage and its attribution align, set as `text-align`.
39541
+ *
39542
+ * `center` for a pull quote in the middle of a column and `end` for one
39543
+ * against its far edge. Under either, the mark `marks` draws stands over
39544
+ * the first line. Absent aligns as the prose around it does.
39545
+ *
39546
+ * Named for the CSS property it sets, as `Text.textAlign` is: `align` alone
39547
+ * is a legacy HTML attribute the browser maps to `text-align` by itself,
39548
+ * and it has no `start` or `end`.
39549
+ * - `text-wrap`/`textWrap`: How the passage's lines break, set as `text-wrap`.
39550
+ *
39551
+ * `balance` evens out the length of every line, which suits a pull quote of
39552
+ * a few lines in display type. `pretty` avoids a last line of one short
39553
+ * word, for a longer passage. Absent, the lines break as the browser breaks
39554
+ * them. The same name and values `Text` takes, but `nowrap`, a passage being
39555
+ * more than one line.
38757
39556
  * - `attribution`: Who said it, and where, as words, such as "Maria Lopez, operations
38758
39557
  * manager". The `attribution` slot replaces them, for markup such as a link.
38759
39558
  *
@@ -40306,8 +41105,6 @@ export type CustomElements = {
40306
41105
  *
40307
41106
  * Reflected and undefaulted, so a card that has not asked reads as a card
40308
41107
  * with no attribute on it and the stylesheet only describes the departure.
40309
- * - `aria-labelledby`/`undefined`: undefined
40310
- * - `aria-label`/`undefined`: undefined
40311
41108
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
40312
41109
  *
40313
41110
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -40340,6 +41137,14 @@ export type CustomElements = {
40340
41137
  * - `header-actions`: Controls for the whole card at the end of the header's line, such as a menu.
40341
41138
  * - `media`: Image, video, or chart that runs edge to edge, outside the inset.
40342
41139
  *
41140
+ * ## Methods
41141
+ *
41142
+ * Methods that can be called to access component functionality.
41143
+ *
41144
+ * - `attributeChangedCallback(name: string, old: string | null, value: string | null) => void`: Called by the browser when an observed attribute changes. A name written
41145
+ * or taken off asks for an update, because it decides whether the card is a
41146
+ * group and whether its heading names it.
41147
+ *
40343
41148
  * ## CSS Custom Properties
40344
41149
  *
40345
41150
  * CSS variables available for styling the component.
@@ -41753,6 +42558,12 @@ export type CustomElements = {
41753
42558
  * significant in code and a wrapped line reads as two. For prose-like code, such as a long command or
41754
42559
  * a log line, a wrap reads better than a scroll. Line numbers keep the lines
41755
42560
  * unwrapped, since a wrapped line would take one number and several rows.
42561
+ * - `code-label`/`codeLabel`: The name of a block that scrolls, which is a tab stop while it does.
42562
+ *
42563
+ * Where the block has a name, the scroller says it too, such as "Code,
42564
+ * app.ts", as `code-name-label` puts it.
42565
+ * - `code-name-label`/`codeNameLabel`: The name of a block that scrolls, where the block has a name. `{code}` is
42566
+ * `code-label` and `{name}` the block's name.
41756
42567
  * - `collapse-label`/`collapseLabel`: The expand button's words while the block shows every line.
41757
42568
  * - `copied-label`/`copiedLabel`: The copy button's name and tooltip text after a copy.
41758
42569
  * - `copy-label`/`copyLabel`: The copy button's name and tooltip text before a copy.
@@ -45340,6 +46151,28 @@ export type CustomElements = {
45340
46151
  * cannot be cast onto across unrelated classes, so it would be invisible to
45341
46152
  * every chart that needs it. Reading where a pointer is resting is a fair
45342
46153
  * thing to ask a chart anyway. (property only) (readonly)
46154
+ * - `data`: The readings as data, in the shape of a table, where the page has no
46155
+ * table to point `for` at. `for` wins where both are set.
46156
+ *
46157
+ * ```js
46158
+ * chart.data = {
46159
+ * caption: 'Sessions by channel',
46160
+ * columns: ['Month', 'Direct', 'Referral'],
46161
+ * rows: [['Jan', 10, 4], ['Feb', 20, 8]],
46162
+ * }
46163
+ * ```
46164
+ *
46165
+ * The first column holds each row's label and every column after it a
46166
+ * series, as in a table. A cell is a number, words, `null` for a blank,
46167
+ * or `{ value, text }` for a number shown as words, such as `$128k`. A
46168
+ * number is shown in `locale`.
46169
+ *
46170
+ * **A table is still the better source where the page can show one**:
46171
+ * it reads with no script and before hydration, and a reader can sort and
46172
+ * copy it. Data is drawn on the client only, so a server serves the
46173
+ * frame, and the summary, the keys and the readout are then the whole of
46174
+ * what a screen reader is given. Set a new object to redraw: the chart
46175
+ * does not look inside the one it has. (property only)
45343
46176
  * - `series`: The table's columns, one series each. Empty when there is no table.
45344
46177
  *
45345
46178
  * Held by the controller between edits, so a render reading this five
@@ -45356,6 +46189,9 @@ export type CustomElements = {
45356
46189
  * names an element, and the chart is a generic around its plot: written
45357
46190
  * on the host, the name reached nobody. The plot takes it, as Heatmap's
45358
46191
  * strip always did. (property only) (readonly)
46192
+ * - `readingsKnown`: Whether the readings have been looked for: false on the server and
46193
+ * while hydrating, where no table is resolved and no data is read. A
46194
+ * chart says it has no readings only once this is true. (property only) (readonly)
45359
46195
  * - `sourceRows`: Every row of the table, with each cell's text and number.
45360
46196
  *
45361
46197
  * This is where a tooltip's content comes from, and it is deliberately not
@@ -45990,13 +46826,18 @@ export type CustomElements = {
45990
46826
  *
45991
46827
  * Custom selectors for styling elements within the component.
45992
46828
  *
46829
+ * - `actions`: The slot the actions arrive through. A slot draws no box, so it passes inherited properties to the actions; `display: flex` lays them out in a row.
45993
46830
  * - `heading`: The heading at `heading-level`: the one `heading` draws while nothing is slotted into `heading`, or the one around a slotted element that is no heading.
46831
+ * - `icon`: The slot the icon arrives through, drawing no box, as `actions` does.
45994
46832
  * - `live`: A copy of the heading and the message, in a live region that screen readers announce when the view appears. Visually hidden in the styled tier.
46833
+ * - `message`: The slot the message arrives through, drawing no box, as `actions` does.
45995
46834
  *
45996
46835
  * ## CSS States
45997
46836
  *
45998
46837
  * These can be used to apply styling when a component is in a given state.
45999
46838
  *
46839
+ * - `has-actions`: Something is slotted into `actions`.
46840
+ * - `has-icon`: Something is slotted into `icon`.
46000
46841
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
46001
46842
  */
46002
46843
  "helix-empty": Partial<HelixEmptyProps & BaseProps<HelixEmpty> & BaseEvents<HelixEmpty>>;
@@ -47823,6 +48664,28 @@ export type CustomElements = {
47823
48664
  * cannot be cast onto across unrelated classes, so it would be invisible to
47824
48665
  * every chart that needs it. Reading where a pointer is resting is a fair
47825
48666
  * thing to ask a chart anyway. (property only) (readonly)
48667
+ * - `data`: The readings as data, in the shape of a table, where the page has no
48668
+ * table to point `for` at. `for` wins where both are set.
48669
+ *
48670
+ * ```js
48671
+ * chart.data = {
48672
+ * caption: 'Sessions by channel',
48673
+ * columns: ['Month', 'Direct', 'Referral'],
48674
+ * rows: [['Jan', 10, 4], ['Feb', 20, 8]],
48675
+ * }
48676
+ * ```
48677
+ *
48678
+ * The first column holds each row's label and every column after it a
48679
+ * series, as in a table. A cell is a number, words, `null` for a blank,
48680
+ * or `{ value, text }` for a number shown as words, such as `$128k`. A
48681
+ * number is shown in `locale`.
48682
+ *
48683
+ * **A table is still the better source where the page can show one**:
48684
+ * it reads with no script and before hydration, and a reader can sort and
48685
+ * copy it. Data is drawn on the client only, so a server serves the
48686
+ * frame, and the summary, the keys and the readout are then the whole of
48687
+ * what a screen reader is given. Set a new object to redraw: the chart
48688
+ * does not look inside the one it has. (property only)
47826
48689
  * - `series`: The table's columns, one series each. Empty when there is no table.
47827
48690
  *
47828
48691
  * Held by the controller between edits, so a render reading this five
@@ -47839,6 +48702,9 @@ export type CustomElements = {
47839
48702
  * names an element, and the chart is a generic around its plot: written
47840
48703
  * on the host, the name reached nobody. The plot takes it, as Heatmap's
47841
48704
  * strip always did. (property only) (readonly)
48705
+ * - `readingsKnown`: Whether the readings have been looked for: false on the server and
48706
+ * while hydrating, where no table is resolved and no data is read. A
48707
+ * chart says it has no readings only once this is true. (property only) (readonly)
47842
48708
  * - `sourceRows`: Every row of the table, with each cell's text and number.
47843
48709
  *
47844
48710
  * This is where a tooltip's content comes from, and it is deliberately not
@@ -48341,10 +49207,33 @@ export type CustomElements = {
48341
49207
  * Inside a button, `--icon-size` is set in `em`, so the icon scales with the
48342
49208
  * button.
48343
49209
  *
49210
+ * **The glyph turns, flips and moves inside its own box**, so the line around
49211
+ * it keeps its place: `rotate` turns it by a quarter, a half or three
49212
+ * quarters, `--icon-rotate` by any angle, `flip` mirrors it across either
49213
+ * axis, and `animation` spins, pulses or beats it, as Web Awesome's icon does.
49214
+ * Reduced motion stills every animation. `auto-width` gives the box the
49215
+ * glyph's own proportions, for a mark wider than it is tall.
49216
+ *
48344
49217
  * ## Attributes & Properties
48345
49218
  *
48346
49219
  * Component attributes and properties that can be applied to the element or by using JavaScript.
48347
49220
  *
49221
+ * - `animation`: A motion that draws the eye or says work is going on: `spin` turns the
49222
+ * glyph without end, `pulse` fades it in and out, and `beat` swells it.
49223
+ *
49224
+ * Absent is still. Reduced motion stills every one of them.
49225
+ * - `auto-width`/`autoWidth`: Whether the box takes the glyph's own proportions, its height from
49226
+ * `--icon-size` and its width from the glyph's box.
49227
+ *
49228
+ * Absent is a square, which lines icons up in a column.
49229
+ * - `flip`: Mirrors the glyph across an axis: `x` left to right, `y` top to bottom,
49230
+ * `both` across both.
49231
+ *
49232
+ * Absent draws it as it is. On a right-to-left page, `mirror` is the flip
49233
+ * that follows the direction.
49234
+ * - `rotate`: Turns the glyph clockwise by 90, 180 or 270 degrees.
49235
+ *
49236
+ * Absent draws it upright. `--icon-rotate` turns it by any other angle.
48348
49237
  * - `label`: The icon's name, read by screen readers. Set it for an icon that is not
48349
49238
  * decorative.
48350
49239
  * - `mirror`: Flips the glyph on a right-to-left page. Use it for an arrow that means
@@ -48365,6 +49254,10 @@ export type CustomElements = {
48365
49254
  *
48366
49255
  * A name written `prefix:name` asks the library registered under that
48367
49256
  * prefix.
49257
+ * - `src`: The URL of an SVG file to draw, fetched once a page and drawn in
49258
+ * `currentColor` where the file does not color its shapes.
49259
+ *
49260
+ * Wins over `name`; `icon` wins over both. Absent draws `name`.
48368
49261
  * - `icon`: The icon to draw, as an object you import.
48369
49262
  *
48370
49263
  * **The scalable door, and the one this library uses internally.** An icon is
@@ -48402,8 +49295,8 @@ export type CustomElements = {
48402
49295
  *
48403
49296
  * Events that will be emitted by the component.
48404
49297
  *
48405
- * - `error`: `name` matches no registered icon and no library answers it, so nothing is drawn.
48406
- * - `load`: A glyph a library gave later for `name` is drawn.
49298
+ * - `error`: `name` matches no registered icon and no library answers it, or `src` is no SVG, so nothing is drawn.
49299
+ * - `load`: A glyph a library gave later for `name`, or the file at `src`, is drawn.
48407
49300
  *
48408
49301
  * ## Methods
48409
49302
  *
@@ -48417,7 +49310,9 @@ export type CustomElements = {
48417
49310
  *
48418
49311
  * CSS variables available for styling the component.
48419
49312
  *
48420
- * - `--icon-size`: The width and height of the icon's box.
49313
+ * - `--icon-animation-duration`: How long one turn, pulse or beat of `animation` takes.
49314
+ * - `--icon-rotate`: An angle the glyph is turned by, such as `45deg`. `rotate` wins over it.
49315
+ * - `--icon-size`: The width and height of the icon's box. The height alone under `auto-width`.
48421
49316
  *
48422
49317
  * ## CSS Parts
48423
49318
  *
@@ -49526,6 +50421,16 @@ export type CustomElements = {
49526
50421
  * **`transparent` is where this one stops.** A mark with no ink is not a
49527
50422
  * material choice, it is an absent series, and a chart says that by not
49528
50423
  * having the datum rather than by painting it invisibly.
50424
+ * - `empty-text`/`emptyText`: The words shown in place of the drawing when the table has no readings,
50425
+ * and the fallback of the `empty` slot.
50426
+ * - `loading`: Whether the readings are still on their way. The chart shows
50427
+ * `loading-text` in place of an empty drawing until it has readings.
50428
+ *
50429
+ * Reflected, so a stylesheet can treat the chart while it waits. A chart
50430
+ * that already has readings keeps drawing them, so a refresh does not
50431
+ * blank it.
50432
+ * - `loading-text`/`loadingText`: The words shown in place of the drawing while `loading` is set and
50433
+ * there are no readings yet, and the fallback of the `loading` slot.
49529
50434
  * - `for`: The id of the table to read.
49530
50435
  *
49531
50436
  * Names a table in the same tree, so a chart inside another component's
@@ -49662,6 +50567,28 @@ export type CustomElements = {
49662
50567
  * cannot be cast onto across unrelated classes, so it would be invisible to
49663
50568
  * every chart that needs it. Reading where a pointer is resting is a fair
49664
50569
  * thing to ask a chart anyway. (property only) (readonly)
50570
+ * - `data`: The readings as data, in the shape of a table, where the page has no
50571
+ * table to point `for` at. `for` wins where both are set.
50572
+ *
50573
+ * ```js
50574
+ * chart.data = {
50575
+ * caption: 'Sessions by channel',
50576
+ * columns: ['Month', 'Direct', 'Referral'],
50577
+ * rows: [['Jan', 10, 4], ['Feb', 20, 8]],
50578
+ * }
50579
+ * ```
50580
+ *
50581
+ * The first column holds each row's label and every column after it a
50582
+ * series, as in a table. A cell is a number, words, `null` for a blank,
50583
+ * or `{ value, text }` for a number shown as words, such as `$128k`. A
50584
+ * number is shown in `locale`.
50585
+ *
50586
+ * **A table is still the better source where the page can show one**:
50587
+ * it reads with no script and before hydration, and a reader can sort and
50588
+ * copy it. Data is drawn on the client only, so a server serves the
50589
+ * frame, and the summary, the keys and the readout are then the whole of
50590
+ * what a screen reader is given. Set a new object to redraw: the chart
50591
+ * does not look inside the one it has. (property only)
49665
50592
  * - `series`: The table's columns, one series each. Empty when there is no table.
49666
50593
  *
49667
50594
  * Held by the controller between edits, so a render reading this five
@@ -49678,6 +50605,9 @@ export type CustomElements = {
49678
50605
  * names an element, and the chart is a generic around its plot: written
49679
50606
  * on the host, the name reached nobody. The plot takes it, as Heatmap's
49680
50607
  * strip always did. (property only) (readonly)
50608
+ * - `readingsKnown`: Whether the readings have been looked for: false on the server and
50609
+ * while hydrating, where no table is resolved and no data is read. A
50610
+ * chart says it has no readings only once this is true. (property only) (readonly)
49681
50611
  * - `sourceRows`: Every row of the table, with each cell's text and number.
49682
50612
  *
49683
50613
  * This is where a tooltip's content comes from, and it is deliberately not
@@ -49724,6 +50654,13 @@ export type CustomElements = {
49724
50654
  * - `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.
49725
50655
  * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
49726
50656
  *
50657
+ * ## Slots
50658
+ *
50659
+ * Areas where markup can be added to the component.
50660
+ *
50661
+ * - `empty`: Content shown in place of the drawing when the table has no readings, such as a link to add the first. Falls back to `empty-text`.
50662
+ * - `loading`: Content shown in place of the drawing while `loading` is set and there are no readings yet. Falls back to `loading-text`.
50663
+ *
49727
50664
  * ## Methods
49728
50665
  *
49729
50666
  * Methods that can be called to access component functionality.
@@ -49788,6 +50725,7 @@ export type CustomElements = {
49788
50725
  * - `axis`: The numbers of the scale beside the plot, under `value-axis`.
49789
50726
  * - `band`: The band around the reading under the pointer.
49790
50727
  * - `baseline`: The rule at zero, where zero is inside the range.
50728
+ * - `empty`: The words in place of the drawing when the table has no readings: the `empty` slot, falling back to `empty-text`. Not drawn while the table cannot be read yet, on the server and during hydration.
49791
50729
  * - `gridline`: One rule across the plot, under `gridlines`.
49792
50730
  * - `guide`: A rule down the reading a pointer is resting on.
49793
50731
  * - `label`: One reading's name.
@@ -49795,6 +50733,7 @@ export type CustomElements = {
49795
50733
  * - `line`: The line for one series.
49796
50734
  * - `line-dashed`: A `line` whose series `dashed` names. Set alongside `line`.
49797
50735
  * - `live`: The readout: a polite live region that says the reading the keys moved to. Hide it visually.
50736
+ * - `loading`: The words in place of the drawing while `loading` is set and there are no readings: the `loading` slot, falling back to `loading-text`.
49798
50737
  * - `mark`: The invisible point the tooltip is anchored to.
49799
50738
  * - `marker`: The mark on one reading, under `markers`, and on a reading with a blank on either side. Placed with `inset-inline-start` and `inset-block-start`, and carries its series color as `--chart-series`.
49800
50739
  * - `marker-lone`: A `marker` on a reading with a blank on either side, which no line reaches. Set alongside `marker`.
@@ -53861,6 +54800,12 @@ export type CustomElements = {
53861
54800
  * Off by default, because the name and the busy state already change with
53862
54801
  * the state, and an orb beside a stream of messages would otherwise talk
53863
54802
  * over them. Set it on an orb that is the only sign of progress on the page.
54803
+ *
54804
+ * **Without it, finishing is silent.** `done` turns the orb into an image
54805
+ * named "Done" that is no longer busy, which a screen reader reports when it
54806
+ * next reaches the orb and does not say as it happens. A page whose own
54807
+ * result arrives in a live region, such as a chat reply, already says the
54808
+ * work is done; one that shows nothing else sets `announce`.
53864
54809
  * - `label`: The name read by screen readers. Defaults to the name of the state, such
53865
54810
  * as "Thinking".
53866
54811
  *
@@ -54981,7 +55926,8 @@ export type CustomElements = {
54981
55926
  *
54982
55927
  * A `percent` style writes the share of the range, and any other the value
54983
55928
  * itself, so the example says "18 GB". Absent is a whole percentage. The
54984
- * words are announced as well as shown. `value-text` still wins.
55929
+ * words are announced whether or not `show-value` shows them. `value-text`
55930
+ * still wins.
54985
55931
  * - `indeterminate`: Whether the length of the task is unknown. The bar then shows activity
54986
55932
  * without a value.
54987
55933
  *
@@ -55070,6 +56016,7 @@ export type CustomElements = {
55070
56016
  *
55071
56017
  * Areas where markup can be added to the component.
55072
56018
  *
56019
+ * - `(default)`: Words drawn on the bar, or in the middle of a ring, such as the reading. The bar grows to their height, and over the fill they take the fill's own ink.
55073
56020
  * - `label`: A visible label, above a bar and under a ring. Its words name it in place of `label`.
55074
56021
  *
55075
56022
  * ## CSS Custom Properties
@@ -55077,6 +56024,9 @@ export type CustomElements = {
55077
56024
  * CSS variables available for styling the component.
55078
56025
  *
55079
56026
  * - `--progress-color`: Fill of the part that is done.
56027
+ * - `--progress-content-color`: The color of the words of the default slot where they are over the track, and in a ring.
56028
+ * - `--progress-content-fill-color`: The color of the words of the default slot where they are over the fill.
56029
+ * - `--progress-content-size`: The type size of the words of the default slot.
55080
56030
  * - `--progress-label-color`: Color of a slotted label.
55081
56031
  * - `--progress-label-gap`: Space between a slotted label and the bar.
55082
56032
  * - `--progress-label-size`: Type size of a slotted label.
@@ -55095,6 +56045,7 @@ export type CustomElements = {
55095
56045
  *
55096
56046
  * Custom selectors for styling elements within the component.
55097
56047
  *
56048
+ * - `content`: The box holding the words of the default slot, over the track or in the middle of the ring. Carries `--progress-fraction`.
55098
56049
  * - `groove`: The unfilled circle under the ring's filled arc.
55099
56050
  * - `indicator`: The filled part that shows the work done.
55100
56051
  * - `live`: A polite region that says `complete-label` when the work is done, rendered from that moment. Hide it visually.
@@ -55106,6 +56057,7 @@ export type CustomElements = {
55106
56057
  * These can be used to apply styling when a component is in a given state.
55107
56058
  *
55108
56059
  * - `complete`: The value is at `max` and the bar is not indeterminate.
56060
+ * - `content`: Words are set in the default slot.
55109
56061
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
55110
56062
  */
55111
56063
  "helix-progress": Partial<
@@ -55257,6 +56209,12 @@ export type CustomElements = {
55257
56209
  * Component attributes and properties that can be applied to the element or by using JavaScript.
55258
56210
  *
55259
56211
  * - `cite`: URL identifying where the quotation came from.
56212
+ * - `no-marks`/`noMarks`: Whether to leave the quotation marks off, for a quotation set where the
56213
+ * page draws its own.
56214
+ *
56215
+ * Negative, because the marks are on by default and a boolean attribute is
56216
+ * true whenever it is present. Reflected, because a stylesheet takes the
56217
+ * marks off on it.
55260
56218
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
55261
56219
  *
55262
56220
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -56687,6 +57645,16 @@ export type CustomElements = {
56687
57645
  *
56688
57646
  * Component attributes and properties that can be applied to the element or by using JavaScript.
56689
57647
  *
57648
+ * - `empty-text`/`emptyText`: The words shown in place of the drawing when the table has no readings,
57649
+ * and the fallback of the `empty` slot.
57650
+ * - `loading`: Whether the readings are still on their way. The chart shows
57651
+ * `loading-text` in place of an empty drawing until it has readings.
57652
+ *
57653
+ * Reflected, so a stylesheet can treat the chart while it waits. A chart
57654
+ * that already has readings keeps drawing them, so a refresh does not
57655
+ * blank it.
57656
+ * - `loading-text`/`loadingText`: The words shown in place of the drawing while `loading` is set and
57657
+ * there are no readings yet, and the fallback of the `loading` slot.
56690
57658
  * - `for`: The id of the table to read.
56691
57659
  *
56692
57660
  * Names a table in the same tree, so a chart inside another component's
@@ -56748,6 +57716,28 @@ export type CustomElements = {
56748
57716
  * cannot be cast onto across unrelated classes, so it would be invisible to
56749
57717
  * every chart that needs it. Reading where a pointer is resting is a fair
56750
57718
  * thing to ask a chart anyway. (property only) (readonly)
57719
+ * - `data`: The readings as data, in the shape of a table, where the page has no
57720
+ * table to point `for` at. `for` wins where both are set.
57721
+ *
57722
+ * ```js
57723
+ * chart.data = {
57724
+ * caption: 'Sessions by channel',
57725
+ * columns: ['Month', 'Direct', 'Referral'],
57726
+ * rows: [['Jan', 10, 4], ['Feb', 20, 8]],
57727
+ * }
57728
+ * ```
57729
+ *
57730
+ * The first column holds each row's label and every column after it a
57731
+ * series, as in a table. A cell is a number, words, `null` for a blank,
57732
+ * or `{ value, text }` for a number shown as words, such as `$128k`. A
57733
+ * number is shown in `locale`.
57734
+ *
57735
+ * **A table is still the better source where the page can show one**:
57736
+ * it reads with no script and before hydration, and a reader can sort and
57737
+ * copy it. Data is drawn on the client only, so a server serves the
57738
+ * frame, and the summary, the keys and the readout are then the whole of
57739
+ * what a screen reader is given. Set a new object to redraw: the chart
57740
+ * does not look inside the one it has. (property only)
56751
57741
  * - `series`: The table's columns, one series each. Empty when there is no table.
56752
57742
  *
56753
57743
  * Held by the controller between edits, so a render reading this five
@@ -56764,6 +57754,9 @@ export type CustomElements = {
56764
57754
  * names an element, and the chart is a generic around its plot: written
56765
57755
  * on the host, the name reached nobody. The plot takes it, as Heatmap's
56766
57756
  * strip always did. (property only) (readonly)
57757
+ * - `readingsKnown`: Whether the readings have been looked for: false on the server and
57758
+ * while hydrating, where no table is resolved and no data is read. A
57759
+ * chart says it has no readings only once this is true. (property only) (readonly)
56767
57760
  * - `sourceRows`: Every row of the table, with each cell's text and number.
56768
57761
  *
56769
57762
  * This is where a tooltip's content comes from, and it is deliberately not
@@ -56810,6 +57803,13 @@ export type CustomElements = {
56810
57803
  * - `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.
56811
57804
  * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
56812
57805
  *
57806
+ * ## Slots
57807
+ *
57808
+ * Areas where markup can be added to the component.
57809
+ *
57810
+ * - `empty`: Content shown in place of the drawing when the table has no readings, such as a link to add the first. Falls back to `empty-text`.
57811
+ * - `loading`: Content shown in place of the drawing while `loading` is set and there are no readings yet. Falls back to `loading-text`.
57812
+ *
56813
57813
  * ## Methods
56814
57814
  *
56815
57815
  * Methods that can be called to access component functionality.
@@ -56868,8 +57868,10 @@ export type CustomElements = {
56868
57868
  *
56869
57869
  * Custom selectors for styling elements within the component.
56870
57870
  *
57871
+ * - `empty`: The words in place of the drawing when the table has no readings: the `empty` slot, falling back to `empty-text`. Not drawn while the table cannot be read yet, on the server and during hydration.
56871
57872
  * - `gridline`: One line across the plot, drawn when `gridlines` is set.
56872
57873
  * - `live`: The readout: a polite live region that says the row the keys moved to. Hide it visually.
57874
+ * - `loading`: The words in place of the drawing while `loading` is set and there are no readings: the `loading` slot, falling back to `loading-text`.
56873
57875
  * - `mark`: The invisible point the tooltip is anchored to.
56874
57876
  * - `plane`: The grid that holds the plot, both axes, and their names. It runs left to right on every page.
56875
57877
  * - `plot`: The drawing, which takes focus to be read by key.
@@ -57385,6 +58387,11 @@ export type CustomElements = {
57385
58387
  * Around content with `loading`, the skeleton takes the content's box and
57386
58388
  * paints over it, and the content is hidden until `loading` is taken off.
57387
58389
  *
58390
+ * **`lines` draws a paragraph.** With `shape="text"` and `lines="3"`, one
58391
+ * element stands in for three lines of text: each line a `skeleton` part one
58392
+ * `em` tall, spaced a body line height apart, and the last one shorter, as the end
58393
+ * of a paragraph is.
58394
+ *
57388
58395
  * ## Attributes & Properties
57389
58396
  *
57390
58397
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -57393,6 +58400,10 @@ export type CustomElements = {
57393
58400
  * fade the fill in and out, or `none` to sit still.
57394
58401
  *
57395
58402
  * Reduced motion stills both.
58403
+ * - `lines`: How many lines of text the placeholder stands for, with `shape="text"`.
58404
+ *
58405
+ * Absent, or 1, is one line. Reflected, because the stylesheet sizes a
58406
+ * paragraph by it.
57396
58407
  * - `shape`: The shape of the placeholder: `text`, `circle`, or a block when unset.
57397
58408
  *
57398
58409
  * Unset is a block, which is what most missing things are. A block is the
@@ -57441,6 +58452,7 @@ export type CustomElements = {
57441
58452
  * - `--skeleton-block-size`: The height of the block shape, which is the shape when `shape` is unset. Defaults to the control height.
57442
58453
  * - `--skeleton-color`: The placeholder's fill.
57443
58454
  * - `--skeleton-duration`: How long one sweep or one pulse takes.
58455
+ * - `--skeleton-last-line-size`: The width of the last line of a `lines` paragraph. Defaults to 60%.
57444
58456
  * - `--skeleton-radius`: The corner of the block shape.
57445
58457
  * - `--skeleton-sheen-color`: The highlight the sweep carries across the fill.
57446
58458
  * - `--skeleton-size`: The diameter of the circle shape.
@@ -57450,8 +58462,10 @@ export type CustomElements = {
57450
58462
  * Custom selectors for styling elements within the component.
57451
58463
  *
57452
58464
  * - `content`: The box around the content, hidden while `loading`.
58465
+ * - `line`: Each line of a `lines` paragraph, which is also a `skeleton` part.
58466
+ * - `lines`: The column holding a `lines` paragraph, drawn only for `shape="text"` with two or more lines.
57453
58467
  * - `sheen`: The highlight swept across the shape. Hidden for `effect="pulse"` and `effect="none"`.
57454
- * - `skeleton`: The placeholder shape.
58468
+ * - `skeleton`: The placeholder shape, or each line of a `lines` paragraph.
57455
58469
  *
57456
58470
  * ## CSS States
57457
58471
  *
@@ -58619,7 +59633,10 @@ export type CustomElements = {
58619
59633
  * with its rule; and a count is what a set of facts read across wants, where
58620
59634
  * figures compared one against another keep their own widths.
58621
59635
  * - `divided`: Draws a rule between the figures, in addition to the space.
58622
- * - `label`: Accessible name for the group.
59636
+ * - `label`: Accessible name for the group, which makes it a group.
59637
+ *
59638
+ * Absent leaves the stats with no group around them, unless `aria-label` or
59639
+ * `aria-labelledby` names it.
58623
59640
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
58624
59641
  *
58625
59642
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -58647,6 +59664,14 @@ export type CustomElements = {
58647
59664
  *
58648
59665
  * - `(default)`: The stats.
58649
59666
  *
59667
+ * ## Methods
59668
+ *
59669
+ * Methods that can be called to access component functionality.
59670
+ *
59671
+ * - `attributeChangedCallback(name: string, old: string | null, value: string | null) => void`: Called by the browser when an observed attribute changes. A name written
59672
+ * or taken off asks for an update, because it decides whether the stats are
59673
+ * a group.
59674
+ *
58650
59675
  * ## CSS Custom Properties
58651
59676
  *
58652
59677
  * CSS variables available for styling the component.
@@ -58698,6 +59723,20 @@ export type CustomElements = {
58698
59723
  * reports a hydration mismatch. The absent attribute is the column, which the
58699
59724
  * stylesheet reads as the base case, and the server spec asserts the host
58700
59725
  * carries nothing nobody wrote.
59726
+ * - `format-options`/`formatOptions`: `Intl.NumberFormat` options `value` is written with, such as
59727
+ * `{"notation":"compact"}` for `1.2M` or `{"style":"percent"}` for `98%`,
59728
+ * written as JSON in the attribute.
59729
+ *
59730
+ * Absent writes the number as the locale writes any number.
59731
+ * - `locale`: The locale `value` is written in, such as `de` for `1.234.567`.
59732
+ *
59733
+ * Absent reads the nearest `lang`, then the runtime's own. Set it on a page
59734
+ * rendered on a server, so the server and the browser write the figure
59735
+ * alike.
59736
+ * - `value`: The figure as a number, written with `format-options` in `locale` in
59737
+ * place of a slotted value.
59738
+ *
59739
+ * Absent leaves the figure to the slot.
58701
59740
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
58702
59741
  *
58703
59742
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -58745,11 +59784,17 @@ export type CustomElements = {
58745
59784
  * Custom selectors for styling elements within the component.
58746
59785
  *
58747
59786
  * - `value`: The slot the value is written in. A slot draws no box, so it takes the inherited properties, such as color and font, and passes them to the value.
59787
+ * - `label`: The slot the label arrives through, drawing no box, as `value` does.
59788
+ * - `trend`: The slot the trend arrives through, drawing no box, as `value` does.
59789
+ * - `unit`: The slot the unit arrives through, drawing no box, as `value` does.
58748
59790
  *
58749
59791
  * ## CSS States
58750
59792
  *
58751
59793
  * These can be used to apply styling when a component is in a given state.
58752
59794
  *
59795
+ * - `has-label`: Something is slotted into `label`.
59796
+ * - `has-trend`: Something is slotted into `trend`.
59797
+ * - `has-unit`: Something is slotted into `unit`.
58753
59798
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
58754
59799
  */
58755
59800
  "helix-stat": Partial<HelixStatProps & BaseProps<HelixStat> & BaseEvents<HelixStat>>;
@@ -64966,6 +66011,16 @@ export type CustomElementsSolidJs = {
64966
66011
  *
64967
66012
  * Component attributes and properties that can be applied to the element or by using JavaScript.
64968
66013
  *
66014
+ * - `empty-text`/`emptyText`: The words shown in place of the drawing when the table has no readings,
66015
+ * and the fallback of the `empty` slot.
66016
+ * - `loading`: Whether the readings are still on their way. The chart shows
66017
+ * `loading-text` in place of an empty drawing until it has readings.
66018
+ *
66019
+ * Reflected, so a stylesheet can treat the chart while it waits. A chart
66020
+ * that already has readings keeps drawing them, so a refresh does not
66021
+ * blank it.
66022
+ * - `loading-text`/`loadingText`: The words shown in place of the drawing while `loading` is set and
66023
+ * there are no readings yet, and the fallback of the `loading` slot.
64969
66024
  * - `for`: The id of the table to read.
64970
66025
  *
64971
66026
  * Names a table in the same tree, so a chart inside another component's
@@ -65038,6 +66093,28 @@ export type CustomElementsSolidJs = {
65038
66093
  * cannot be cast onto across unrelated classes, so it would be invisible to
65039
66094
  * every chart that needs it. Reading where a pointer is resting is a fair
65040
66095
  * thing to ask a chart anyway. (property only) (readonly)
66096
+ * - `data`: The readings as data, in the shape of a table, where the page has no
66097
+ * table to point `for` at. `for` wins where both are set.
66098
+ *
66099
+ * ```js
66100
+ * chart.data = {
66101
+ * caption: 'Sessions by channel',
66102
+ * columns: ['Month', 'Direct', 'Referral'],
66103
+ * rows: [['Jan', 10, 4], ['Feb', 20, 8]],
66104
+ * }
66105
+ * ```
66106
+ *
66107
+ * The first column holds each row's label and every column after it a
66108
+ * series, as in a table. A cell is a number, words, `null` for a blank,
66109
+ * or `{ value, text }` for a number shown as words, such as `$128k`. A
66110
+ * number is shown in `locale`.
66111
+ *
66112
+ * **A table is still the better source where the page can show one**:
66113
+ * it reads with no script and before hydration, and a reader can sort and
66114
+ * copy it. Data is drawn on the client only, so a server serves the
66115
+ * frame, and the summary, the keys and the readout are then the whole of
66116
+ * what a screen reader is given. Set a new object to redraw: the chart
66117
+ * does not look inside the one it has. (property only)
65041
66118
  * - `series`: The table's columns, one series each. Empty when there is no table.
65042
66119
  *
65043
66120
  * Held by the controller between edits, so a render reading this five
@@ -65054,6 +66131,9 @@ export type CustomElementsSolidJs = {
65054
66131
  * names an element, and the chart is a generic around its plot: written
65055
66132
  * on the host, the name reached nobody. The plot takes it, as Heatmap's
65056
66133
  * strip always did. (property only) (readonly)
66134
+ * - `readingsKnown`: Whether the readings have been looked for: false on the server and
66135
+ * while hydrating, where no table is resolved and no data is read. A
66136
+ * chart says it has no readings only once this is true. (property only) (readonly)
65057
66137
  * - `sourceRows`: Every row of the table, with each cell's text and number.
65058
66138
  *
65059
66139
  * This is where a tooltip's content comes from, and it is deliberately not
@@ -65100,6 +66180,13 @@ export type CustomElementsSolidJs = {
65100
66180
  * - `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.
65101
66181
  * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
65102
66182
  *
66183
+ * ## Slots
66184
+ *
66185
+ * Areas where markup can be added to the component.
66186
+ *
66187
+ * - `empty`: Content shown in place of the drawing when the table has no readings, such as a link to add the first. Falls back to `empty-text`.
66188
+ * - `loading`: Content shown in place of the drawing while `loading` is set and there are no readings yet. Falls back to `loading-text`.
66189
+ *
65103
66190
  * ## Methods
65104
66191
  *
65105
66192
  * Methods that can be called to access component functionality.
@@ -65156,12 +66243,14 @@ export type CustomElementsSolidJs = {
65156
66243
  * - `area`: One part's band.
65157
66244
  * - `axis`: The numbers of the scale beside the plot, under `value-axis`.
65158
66245
  * - `baseline`: The rule at zero, which is the floor of the drawing.
66246
+ * - `empty`: The words in place of the drawing when the table has no readings: the `empty` slot, falling back to `empty-text`. Not drawn while the table cannot be read yet, on the server and during hydration.
65159
66247
  * - `gridline`: One rule across the plot, under `gridlines`.
65160
66248
  * - `guide`: A rule down the reading a pointer is resting on.
65161
66249
  * - `label`: One reading's name.
65162
66250
  * - `labels`: The row of reading names.
65163
66251
  * - `line`: The top edge of one part's band.
65164
66252
  * - `live`: The readout: a polite live region that says the reading the keys moved to. Hide it visually.
66253
+ * - `loading`: The words in place of the drawing while `loading` is set and there are no readings: the `loading` slot, falling back to `loading-text`.
65165
66254
  * - `mark`: The invisible point the tooltip is anchored to.
65166
66255
  * - `plot`: The drawing, which takes focus to be read by key.
65167
66256
  * - `summary`: The total and each part's share at the latest reading, written as a sentence for screen readers.
@@ -65721,6 +66810,7 @@ export type CustomElementsSolidJs = {
65721
66810
  * Areas where markup can be added to the component.
65722
66811
  *
65723
66812
  * - `(default)`: The element being decorated.
66813
+ * - `icon`: An icon inside the mark, before the count, or the whole mark when there is no value. Hidden from screen readers.
65724
66814
  *
65725
66815
  * ## CSS Custom Properties
65726
66816
  *
@@ -65731,6 +66821,7 @@ export type CustomElementsSolidJs = {
65731
66821
  * - `--badge-color`: The color of the count, to pair with a fill set through `--badge-background-color`.
65732
66822
  * - `--badge-font-weight`: The weight of the count.
65733
66823
  * - `--badge-gap`: The space between the content and the count under `placement="inline"`.
66824
+ * - `--badge-icon-size`: The size of an icon in the `icon` slot. The count's own size by default.
65734
66825
  * - `--badge-offset`: Pulls the mark in from the corner, along both axes.
65735
66826
  * - `--badge-radius`: How far the indicator's corners are rounded.
65736
66827
  * - `--badge-ring-color`: The color of the ring between the indicator and what is behind it.
@@ -65739,7 +66830,8 @@ export type CustomElementsSolidJs = {
65739
66830
  *
65740
66831
  * Custom selectors for styling elements within the component.
65741
66832
  *
65742
- * - `indicator`: The count, or the dot when there is no value.
66833
+ * - `icon`: The slot the icon arrives through, inside the indicator. A slot draws no box, so it passes inherited properties, such as color, to the icon.
66834
+ * - `indicator`: The count, or the dot when there is no value. Carries `data-dot` when there is no value, `data-single` when the count is one character, and `data-blank` when the value is zero.
65743
66835
  *
65744
66836
  * ## CSS States
65745
66837
  *
@@ -65747,7 +66839,8 @@ export type CustomElementsSolidJs = {
65747
66839
  *
65748
66840
  * - `blank`: The value is zero, so there is no mark.
65749
66841
  * - `capped`: The count is past `max`, so the mark shows `{max}+`.
65750
- * - `dot`: There is no value, so the mark is a dot.
66842
+ * - `dot`: There is no value and no icon, so the mark is a dot.
66843
+ * - `has-icon`: Something is slotted into `icon`, so it is drawn inside the mark.
65751
66844
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
65752
66845
  */
65753
66846
  "helix-badge": Partial<
@@ -65866,6 +66959,16 @@ export type CustomElementsSolidJs = {
65866
66959
  * every component in the library and mean something on one. `wash` because
65867
66960
  * that is what the tier below already calls it, in `--chart-bar-wash` and in
65868
66961
  * the `bar-wash-start` and `bar-wash-end` stops.
66962
+ * - `empty-text`/`emptyText`: The words shown in place of the drawing when the table has no readings,
66963
+ * and the fallback of the `empty` slot.
66964
+ * - `loading`: Whether the readings are still on their way. The chart shows
66965
+ * `loading-text` in place of an empty drawing until it has readings.
66966
+ *
66967
+ * Reflected, so a stylesheet can treat the chart while it waits. A chart
66968
+ * that already has readings keeps drawing them, so a refresh does not
66969
+ * blank it.
66970
+ * - `loading-text`/`loadingText`: The words shown in place of the drawing while `loading` is set and
66971
+ * there are no readings yet, and the fallback of the `loading` slot.
65869
66972
  * - `for`: The id of the table to read.
65870
66973
  *
65871
66974
  * Names a table in the same tree, so a chart inside another component's
@@ -65997,6 +67100,28 @@ export type CustomElementsSolidJs = {
65997
67100
  * cannot be cast onto across unrelated classes, so it would be invisible to
65998
67101
  * every chart that needs it. Reading where a pointer is resting is a fair
65999
67102
  * thing to ask a chart anyway. (property only) (readonly)
67103
+ * - `data`: The readings as data, in the shape of a table, where the page has no
67104
+ * table to point `for` at. `for` wins where both are set.
67105
+ *
67106
+ * ```js
67107
+ * chart.data = {
67108
+ * caption: 'Sessions by channel',
67109
+ * columns: ['Month', 'Direct', 'Referral'],
67110
+ * rows: [['Jan', 10, 4], ['Feb', 20, 8]],
67111
+ * }
67112
+ * ```
67113
+ *
67114
+ * The first column holds each row's label and every column after it a
67115
+ * series, as in a table. A cell is a number, words, `null` for a blank,
67116
+ * or `{ value, text }` for a number shown as words, such as `$128k`. A
67117
+ * number is shown in `locale`.
67118
+ *
67119
+ * **A table is still the better source where the page can show one**:
67120
+ * it reads with no script and before hydration, and a reader can sort and
67121
+ * copy it. Data is drawn on the client only, so a server serves the
67122
+ * frame, and the summary, the keys and the readout are then the whole of
67123
+ * what a screen reader is given. Set a new object to redraw: the chart
67124
+ * does not look inside the one it has. (property only)
66000
67125
  * - `series`: The table's columns, one series each. Empty when there is no table.
66001
67126
  *
66002
67127
  * Held by the controller between edits, so a render reading this five
@@ -66013,6 +67138,9 @@ export type CustomElementsSolidJs = {
66013
67138
  * names an element, and the chart is a generic around its plot: written
66014
67139
  * on the host, the name reached nobody. The plot takes it, as Heatmap's
66015
67140
  * strip always did. (property only) (readonly)
67141
+ * - `readingsKnown`: Whether the readings have been looked for: false on the server and
67142
+ * while hydrating, where no table is resolved and no data is read. A
67143
+ * chart says it has no readings only once this is true. (property only) (readonly)
66016
67144
  * - `sourceRows`: Every row of the table, with each cell's text and number.
66017
67145
  *
66018
67146
  * This is where a tooltip's content comes from, and it is deliberately not
@@ -66059,6 +67187,13 @@ export type CustomElementsSolidJs = {
66059
67187
  * - `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.
66060
67188
  * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
66061
67189
  *
67190
+ * ## Slots
67191
+ *
67192
+ * Areas where markup can be added to the component.
67193
+ *
67194
+ * - `empty`: Content shown in place of the drawing when the table has no readings, such as a link to add the first. Falls back to `empty-text`.
67195
+ * - `loading`: Content shown in place of the drawing while `loading` is set and there are no readings yet. Falls back to `loading-text`.
67196
+ *
66062
67197
  * ## Methods
66063
67198
  *
66064
67199
  * Methods that can be called to access component functionality.
@@ -66122,6 +67257,7 @@ export type CustomElementsSolidJs = {
66122
67257
  * - `bar-wash-end`: The far stop of a bar's gradient, where one is used.
66123
67258
  * - `bar-wash-start`: The stop of a bar's gradient at its base.
66124
67259
  * - `baseline`: The line the columns stand on.
67260
+ * - `empty`: The words in place of the drawing when the table has no readings: the `empty` slot, falling back to `empty-text`. Not drawn while the table cannot be read yet, on the server and during hydration.
66125
67261
  * - `gridline`: One gridline across the plot, drawn when `gridlines` is set.
66126
67262
  * - `group`: One category's columns, together.
66127
67263
  * - `group-active`: The group the tooltip describes. Set together with `group`.
@@ -66129,6 +67265,7 @@ export type CustomElementsSolidJs = {
66129
67265
  * - `labels`: The row of category names.
66130
67266
  * - `line`: A series drawn as a line, named in `lines`.
66131
67267
  * - `live`: The readout: a polite live region that says the reading the keys moved to. Hide it visually.
67268
+ * - `loading`: The words in place of the drawing while `loading` is set and there are no readings: the `loading` slot, falling back to `loading-text`.
66132
67269
  * - `mark`: The invisible point the tooltip is anchored to.
66133
67270
  * - `plot`: The drawing, which takes focus to be read by key.
66134
67271
  * - `summary`: The chart's name and each series' highest reading, written as a sentence for screen readers. Hide it visually.
@@ -66170,10 +67307,31 @@ export type CustomElementsSolidJs = {
66170
67307
  * set the passage apart. `marks` draws one large opening mark over the passage,
66171
67308
  * as a pull quote sets it, in the element's language.
66172
67309
  *
67310
+ * `text-align` sets the passage and its attribution in the middle of the
67311
+ * column or against its far edge, as a pull quote often stands. There, the
67312
+ * mark `marks` draws stands over the passage rather than beside it.
67313
+ * `text-wrap="balance"` evens out a short passage's lines.
67314
+ *
66173
67315
  * ## Attributes & Properties
66174
67316
  *
66175
67317
  * Component attributes and properties that can be applied to the element or by using JavaScript.
66176
67318
  *
67319
+ * - `text-align`/`textAlign`: How the passage and its attribution align, set as `text-align`.
67320
+ *
67321
+ * `center` for a pull quote in the middle of a column and `end` for one
67322
+ * against its far edge. Under either, the mark `marks` draws stands over
67323
+ * the first line. Absent aligns as the prose around it does.
67324
+ *
67325
+ * Named for the CSS property it sets, as `Text.textAlign` is: `align` alone
67326
+ * is a legacy HTML attribute the browser maps to `text-align` by itself,
67327
+ * and it has no `start` or `end`.
67328
+ * - `text-wrap`/`textWrap`: How the passage's lines break, set as `text-wrap`.
67329
+ *
67330
+ * `balance` evens out the length of every line, which suits a pull quote of
67331
+ * a few lines in display type. `pretty` avoids a last line of one short
67332
+ * word, for a longer passage. Absent, the lines break as the browser breaks
67333
+ * them. The same name and values `Text` takes, but `nowrap`, a passage being
67334
+ * more than one line.
66177
67335
  * - `attribution`: Who said it, and where, as words, such as "Maria Lopez, operations
66178
67336
  * manager". The `attribution` slot replaces them, for markup such as a link.
66179
67337
  *
@@ -67753,8 +68911,6 @@ export type CustomElementsSolidJs = {
67753
68911
  *
67754
68912
  * Reflected and undefaulted, so a card that has not asked reads as a card
67755
68913
  * with no attribute on it and the stylesheet only describes the departure.
67756
- * - `aria-labelledby`/`undefined`: undefined
67757
- * - `aria-label`/`undefined`: undefined
67758
68914
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
67759
68915
  *
67760
68916
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -67787,6 +68943,14 @@ export type CustomElementsSolidJs = {
67787
68943
  * - `header-actions`: Controls for the whole card at the end of the header's line, such as a menu.
67788
68944
  * - `media`: Image, video, or chart that runs edge to edge, outside the inset.
67789
68945
  *
68946
+ * ## Methods
68947
+ *
68948
+ * Methods that can be called to access component functionality.
68949
+ *
68950
+ * - `attributeChangedCallback(name: string, old: string | null, value: string | null) => void`: Called by the browser when an observed attribute changes. A name written
68951
+ * or taken off asks for an update, because it decides whether the card is a
68952
+ * group and whether its heading names it.
68953
+ *
67790
68954
  * ## CSS Custom Properties
67791
68955
  *
67792
68956
  * CSS variables available for styling the component.
@@ -69219,6 +70383,12 @@ export type CustomElementsSolidJs = {
69219
70383
  * significant in code and a wrapped line reads as two. For prose-like code, such as a long command or
69220
70384
  * a log line, a wrap reads better than a scroll. Line numbers keep the lines
69221
70385
  * unwrapped, since a wrapped line would take one number and several rows.
70386
+ * - `code-label`/`codeLabel`: The name of a block that scrolls, which is a tab stop while it does.
70387
+ *
70388
+ * Where the block has a name, the scroller says it too, such as "Code,
70389
+ * app.ts", as `code-name-label` puts it.
70390
+ * - `code-name-label`/`codeNameLabel`: The name of a block that scrolls, where the block has a name. `{code}` is
70391
+ * `code-label` and `{name}` the block's name.
69222
70392
  * - `collapse-label`/`collapseLabel`: The expand button's words while the block shows every line.
69223
70393
  * - `copied-label`/`copiedLabel`: The copy button's name and tooltip text after a copy.
69224
70394
  * - `copy-label`/`copyLabel`: The copy button's name and tooltip text before a copy.
@@ -72845,6 +74015,28 @@ export type CustomElementsSolidJs = {
72845
74015
  * cannot be cast onto across unrelated classes, so it would be invisible to
72846
74016
  * every chart that needs it. Reading where a pointer is resting is a fair
72847
74017
  * thing to ask a chart anyway. (property only) (readonly)
74018
+ * - `data`: The readings as data, in the shape of a table, where the page has no
74019
+ * table to point `for` at. `for` wins where both are set.
74020
+ *
74021
+ * ```js
74022
+ * chart.data = {
74023
+ * caption: 'Sessions by channel',
74024
+ * columns: ['Month', 'Direct', 'Referral'],
74025
+ * rows: [['Jan', 10, 4], ['Feb', 20, 8]],
74026
+ * }
74027
+ * ```
74028
+ *
74029
+ * The first column holds each row's label and every column after it a
74030
+ * series, as in a table. A cell is a number, words, `null` for a blank,
74031
+ * or `{ value, text }` for a number shown as words, such as `$128k`. A
74032
+ * number is shown in `locale`.
74033
+ *
74034
+ * **A table is still the better source where the page can show one**:
74035
+ * it reads with no script and before hydration, and a reader can sort and
74036
+ * copy it. Data is drawn on the client only, so a server serves the
74037
+ * frame, and the summary, the keys and the readout are then the whole of
74038
+ * what a screen reader is given. Set a new object to redraw: the chart
74039
+ * does not look inside the one it has. (property only)
72848
74040
  * - `series`: The table's columns, one series each. Empty when there is no table.
72849
74041
  *
72850
74042
  * Held by the controller between edits, so a render reading this five
@@ -72861,6 +74053,9 @@ export type CustomElementsSolidJs = {
72861
74053
  * names an element, and the chart is a generic around its plot: written
72862
74054
  * on the host, the name reached nobody. The plot takes it, as Heatmap's
72863
74055
  * strip always did. (property only) (readonly)
74056
+ * - `readingsKnown`: Whether the readings have been looked for: false on the server and
74057
+ * while hydrating, where no table is resolved and no data is read. A
74058
+ * chart says it has no readings only once this is true. (property only) (readonly)
72864
74059
  * - `sourceRows`: Every row of the table, with each cell's text and number.
72865
74060
  *
72866
74061
  * This is where a tooltip's content comes from, and it is deliberately not
@@ -73507,13 +74702,18 @@ export type CustomElementsSolidJs = {
73507
74702
  *
73508
74703
  * Custom selectors for styling elements within the component.
73509
74704
  *
74705
+ * - `actions`: The slot the actions arrive through. A slot draws no box, so it passes inherited properties to the actions; `display: flex` lays them out in a row.
73510
74706
  * - `heading`: The heading at `heading-level`: the one `heading` draws while nothing is slotted into `heading`, or the one around a slotted element that is no heading.
74707
+ * - `icon`: The slot the icon arrives through, drawing no box, as `actions` does.
73511
74708
  * - `live`: A copy of the heading and the message, in a live region that screen readers announce when the view appears. Visually hidden in the styled tier.
74709
+ * - `message`: The slot the message arrives through, drawing no box, as `actions` does.
73512
74710
  *
73513
74711
  * ## CSS States
73514
74712
  *
73515
74713
  * These can be used to apply styling when a component is in a given state.
73516
74714
  *
74715
+ * - `has-actions`: Something is slotted into `actions`.
74716
+ * - `has-icon`: Something is slotted into `icon`.
73517
74717
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
73518
74718
  */
73519
74719
  "helix-empty": Partial<
@@ -75375,6 +76575,28 @@ export type CustomElementsSolidJs = {
75375
76575
  * cannot be cast onto across unrelated classes, so it would be invisible to
75376
76576
  * every chart that needs it. Reading where a pointer is resting is a fair
75377
76577
  * thing to ask a chart anyway. (property only) (readonly)
76578
+ * - `data`: The readings as data, in the shape of a table, where the page has no
76579
+ * table to point `for` at. `for` wins where both are set.
76580
+ *
76581
+ * ```js
76582
+ * chart.data = {
76583
+ * caption: 'Sessions by channel',
76584
+ * columns: ['Month', 'Direct', 'Referral'],
76585
+ * rows: [['Jan', 10, 4], ['Feb', 20, 8]],
76586
+ * }
76587
+ * ```
76588
+ *
76589
+ * The first column holds each row's label and every column after it a
76590
+ * series, as in a table. A cell is a number, words, `null` for a blank,
76591
+ * or `{ value, text }` for a number shown as words, such as `$128k`. A
76592
+ * number is shown in `locale`.
76593
+ *
76594
+ * **A table is still the better source where the page can show one**:
76595
+ * it reads with no script and before hydration, and a reader can sort and
76596
+ * copy it. Data is drawn on the client only, so a server serves the
76597
+ * frame, and the summary, the keys and the readout are then the whole of
76598
+ * what a screen reader is given. Set a new object to redraw: the chart
76599
+ * does not look inside the one it has. (property only)
75378
76600
  * - `series`: The table's columns, one series each. Empty when there is no table.
75379
76601
  *
75380
76602
  * Held by the controller between edits, so a render reading this five
@@ -75391,6 +76613,9 @@ export type CustomElementsSolidJs = {
75391
76613
  * names an element, and the chart is a generic around its plot: written
75392
76614
  * on the host, the name reached nobody. The plot takes it, as Heatmap's
75393
76615
  * strip always did. (property only) (readonly)
76616
+ * - `readingsKnown`: Whether the readings have been looked for: false on the server and
76617
+ * while hydrating, where no table is resolved and no data is read. A
76618
+ * chart says it has no readings only once this is true. (property only) (readonly)
75394
76619
  * - `sourceRows`: Every row of the table, with each cell's text and number.
75395
76620
  *
75396
76621
  * This is where a tooltip's content comes from, and it is deliberately not
@@ -75899,10 +77124,33 @@ export type CustomElementsSolidJs = {
75899
77124
  * Inside a button, `--icon-size` is set in `em`, so the icon scales with the
75900
77125
  * button.
75901
77126
  *
77127
+ * **The glyph turns, flips and moves inside its own box**, so the line around
77128
+ * it keeps its place: `rotate` turns it by a quarter, a half or three
77129
+ * quarters, `--icon-rotate` by any angle, `flip` mirrors it across either
77130
+ * axis, and `animation` spins, pulses or beats it, as Web Awesome's icon does.
77131
+ * Reduced motion stills every animation. `auto-width` gives the box the
77132
+ * glyph's own proportions, for a mark wider than it is tall.
77133
+ *
75902
77134
  * ## Attributes & Properties
75903
77135
  *
75904
77136
  * Component attributes and properties that can be applied to the element or by using JavaScript.
75905
77137
  *
77138
+ * - `animation`: A motion that draws the eye or says work is going on: `spin` turns the
77139
+ * glyph without end, `pulse` fades it in and out, and `beat` swells it.
77140
+ *
77141
+ * Absent is still. Reduced motion stills every one of them.
77142
+ * - `auto-width`/`autoWidth`: Whether the box takes the glyph's own proportions, its height from
77143
+ * `--icon-size` and its width from the glyph's box.
77144
+ *
77145
+ * Absent is a square, which lines icons up in a column.
77146
+ * - `flip`: Mirrors the glyph across an axis: `x` left to right, `y` top to bottom,
77147
+ * `both` across both.
77148
+ *
77149
+ * Absent draws it as it is. On a right-to-left page, `mirror` is the flip
77150
+ * that follows the direction.
77151
+ * - `rotate`: Turns the glyph clockwise by 90, 180 or 270 degrees.
77152
+ *
77153
+ * Absent draws it upright. `--icon-rotate` turns it by any other angle.
75906
77154
  * - `label`: The icon's name, read by screen readers. Set it for an icon that is not
75907
77155
  * decorative.
75908
77156
  * - `mirror`: Flips the glyph on a right-to-left page. Use it for an arrow that means
@@ -75923,6 +77171,10 @@ export type CustomElementsSolidJs = {
75923
77171
  *
75924
77172
  * A name written `prefix:name` asks the library registered under that
75925
77173
  * prefix.
77174
+ * - `src`: The URL of an SVG file to draw, fetched once a page and drawn in
77175
+ * `currentColor` where the file does not color its shapes.
77176
+ *
77177
+ * Wins over `name`; `icon` wins over both. Absent draws `name`.
75926
77178
  * - `icon`: The icon to draw, as an object you import.
75927
77179
  *
75928
77180
  * **The scalable door, and the one this library uses internally.** An icon is
@@ -75960,8 +77212,8 @@ export type CustomElementsSolidJs = {
75960
77212
  *
75961
77213
  * Events that will be emitted by the component.
75962
77214
  *
75963
- * - `error`: `name` matches no registered icon and no library answers it, so nothing is drawn.
75964
- * - `load`: A glyph a library gave later for `name` is drawn.
77215
+ * - `error`: `name` matches no registered icon and no library answers it, or `src` is no SVG, so nothing is drawn.
77216
+ * - `load`: A glyph a library gave later for `name`, or the file at `src`, is drawn.
75965
77217
  *
75966
77218
  * ## Methods
75967
77219
  *
@@ -75975,7 +77227,9 @@ export type CustomElementsSolidJs = {
75975
77227
  *
75976
77228
  * CSS variables available for styling the component.
75977
77229
  *
75978
- * - `--icon-size`: The width and height of the icon's box.
77230
+ * - `--icon-animation-duration`: How long one turn, pulse or beat of `animation` takes.
77231
+ * - `--icon-rotate`: An angle the glyph is turned by, such as `45deg`. `rotate` wins over it.
77232
+ * - `--icon-size`: The width and height of the icon's box. The height alone under `auto-width`.
75979
77233
  *
75980
77234
  * ## CSS Parts
75981
77235
  *
@@ -77107,6 +78361,16 @@ export type CustomElementsSolidJs = {
77107
78361
  * **`transparent` is where this one stops.** A mark with no ink is not a
77108
78362
  * material choice, it is an absent series, and a chart says that by not
77109
78363
  * having the datum rather than by painting it invisibly.
78364
+ * - `empty-text`/`emptyText`: The words shown in place of the drawing when the table has no readings,
78365
+ * and the fallback of the `empty` slot.
78366
+ * - `loading`: Whether the readings are still on their way. The chart shows
78367
+ * `loading-text` in place of an empty drawing until it has readings.
78368
+ *
78369
+ * Reflected, so a stylesheet can treat the chart while it waits. A chart
78370
+ * that already has readings keeps drawing them, so a refresh does not
78371
+ * blank it.
78372
+ * - `loading-text`/`loadingText`: The words shown in place of the drawing while `loading` is set and
78373
+ * there are no readings yet, and the fallback of the `loading` slot.
77110
78374
  * - `for`: The id of the table to read.
77111
78375
  *
77112
78376
  * Names a table in the same tree, so a chart inside another component's
@@ -77243,6 +78507,28 @@ export type CustomElementsSolidJs = {
77243
78507
  * cannot be cast onto across unrelated classes, so it would be invisible to
77244
78508
  * every chart that needs it. Reading where a pointer is resting is a fair
77245
78509
  * thing to ask a chart anyway. (property only) (readonly)
78510
+ * - `data`: The readings as data, in the shape of a table, where the page has no
78511
+ * table to point `for` at. `for` wins where both are set.
78512
+ *
78513
+ * ```js
78514
+ * chart.data = {
78515
+ * caption: 'Sessions by channel',
78516
+ * columns: ['Month', 'Direct', 'Referral'],
78517
+ * rows: [['Jan', 10, 4], ['Feb', 20, 8]],
78518
+ * }
78519
+ * ```
78520
+ *
78521
+ * The first column holds each row's label and every column after it a
78522
+ * series, as in a table. A cell is a number, words, `null` for a blank,
78523
+ * or `{ value, text }` for a number shown as words, such as `$128k`. A
78524
+ * number is shown in `locale`.
78525
+ *
78526
+ * **A table is still the better source where the page can show one**:
78527
+ * it reads with no script and before hydration, and a reader can sort and
78528
+ * copy it. Data is drawn on the client only, so a server serves the
78529
+ * frame, and the summary, the keys and the readout are then the whole of
78530
+ * what a screen reader is given. Set a new object to redraw: the chart
78531
+ * does not look inside the one it has. (property only)
77246
78532
  * - `series`: The table's columns, one series each. Empty when there is no table.
77247
78533
  *
77248
78534
  * Held by the controller between edits, so a render reading this five
@@ -77259,6 +78545,9 @@ export type CustomElementsSolidJs = {
77259
78545
  * names an element, and the chart is a generic around its plot: written
77260
78546
  * on the host, the name reached nobody. The plot takes it, as Heatmap's
77261
78547
  * strip always did. (property only) (readonly)
78548
+ * - `readingsKnown`: Whether the readings have been looked for: false on the server and
78549
+ * while hydrating, where no table is resolved and no data is read. A
78550
+ * chart says it has no readings only once this is true. (property only) (readonly)
77262
78551
  * - `sourceRows`: Every row of the table, with each cell's text and number.
77263
78552
  *
77264
78553
  * This is where a tooltip's content comes from, and it is deliberately not
@@ -77305,6 +78594,13 @@ export type CustomElementsSolidJs = {
77305
78594
  * - `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.
77306
78595
  * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
77307
78596
  *
78597
+ * ## Slots
78598
+ *
78599
+ * Areas where markup can be added to the component.
78600
+ *
78601
+ * - `empty`: Content shown in place of the drawing when the table has no readings, such as a link to add the first. Falls back to `empty-text`.
78602
+ * - `loading`: Content shown in place of the drawing while `loading` is set and there are no readings yet. Falls back to `loading-text`.
78603
+ *
77308
78604
  * ## Methods
77309
78605
  *
77310
78606
  * Methods that can be called to access component functionality.
@@ -77369,6 +78665,7 @@ export type CustomElementsSolidJs = {
77369
78665
  * - `axis`: The numbers of the scale beside the plot, under `value-axis`.
77370
78666
  * - `band`: The band around the reading under the pointer.
77371
78667
  * - `baseline`: The rule at zero, where zero is inside the range.
78668
+ * - `empty`: The words in place of the drawing when the table has no readings: the `empty` slot, falling back to `empty-text`. Not drawn while the table cannot be read yet, on the server and during hydration.
77372
78669
  * - `gridline`: One rule across the plot, under `gridlines`.
77373
78670
  * - `guide`: A rule down the reading a pointer is resting on.
77374
78671
  * - `label`: One reading's name.
@@ -77376,6 +78673,7 @@ export type CustomElementsSolidJs = {
77376
78673
  * - `line`: The line for one series.
77377
78674
  * - `line-dashed`: A `line` whose series `dashed` names. Set alongside `line`.
77378
78675
  * - `live`: The readout: a polite live region that says the reading the keys moved to. Hide it visually.
78676
+ * - `loading`: The words in place of the drawing while `loading` is set and there are no readings: the `loading` slot, falling back to `loading-text`.
77379
78677
  * - `mark`: The invisible point the tooltip is anchored to.
77380
78678
  * - `marker`: The mark on one reading, under `markers`, and on a reading with a blank on either side. Placed with `inset-inline-start` and `inset-block-start`, and carries its series color as `--chart-series`.
77381
78679
  * - `marker-lone`: A `marker` on a reading with a blank on either side, which no line reaches. Set alongside `marker`.
@@ -81531,6 +82829,12 @@ export type CustomElementsSolidJs = {
81531
82829
  * Off by default, because the name and the busy state already change with
81532
82830
  * the state, and an orb beside a stream of messages would otherwise talk
81533
82831
  * over them. Set it on an orb that is the only sign of progress on the page.
82832
+ *
82833
+ * **Without it, finishing is silent.** `done` turns the orb into an image
82834
+ * named "Done" that is no longer busy, which a screen reader reports when it
82835
+ * next reaches the orb and does not say as it happens. A page whose own
82836
+ * result arrives in a live region, such as a chat reply, already says the
82837
+ * work is done; one that shows nothing else sets `announce`.
81534
82838
  * - `label`: The name read by screen readers. Defaults to the name of the state, such
81535
82839
  * as "Thinking".
81536
82840
  *
@@ -82671,7 +83975,8 @@ export type CustomElementsSolidJs = {
82671
83975
  *
82672
83976
  * A `percent` style writes the share of the range, and any other the value
82673
83977
  * itself, so the example says "18 GB". Absent is a whole percentage. The
82674
- * words are announced as well as shown. `value-text` still wins.
83978
+ * words are announced whether or not `show-value` shows them. `value-text`
83979
+ * still wins.
82675
83980
  * - `indeterminate`: Whether the length of the task is unknown. The bar then shows activity
82676
83981
  * without a value.
82677
83982
  *
@@ -82760,6 +84065,7 @@ export type CustomElementsSolidJs = {
82760
84065
  *
82761
84066
  * Areas where markup can be added to the component.
82762
84067
  *
84068
+ * - `(default)`: Words drawn on the bar, or in the middle of a ring, such as the reading. The bar grows to their height, and over the fill they take the fill's own ink.
82763
84069
  * - `label`: A visible label, above a bar and under a ring. Its words name it in place of `label`.
82764
84070
  *
82765
84071
  * ## CSS Custom Properties
@@ -82767,6 +84073,9 @@ export type CustomElementsSolidJs = {
82767
84073
  * CSS variables available for styling the component.
82768
84074
  *
82769
84075
  * - `--progress-color`: Fill of the part that is done.
84076
+ * - `--progress-content-color`: The color of the words of the default slot where they are over the track, and in a ring.
84077
+ * - `--progress-content-fill-color`: The color of the words of the default slot where they are over the fill.
84078
+ * - `--progress-content-size`: The type size of the words of the default slot.
82770
84079
  * - `--progress-label-color`: Color of a slotted label.
82771
84080
  * - `--progress-label-gap`: Space between a slotted label and the bar.
82772
84081
  * - `--progress-label-size`: Type size of a slotted label.
@@ -82785,6 +84094,7 @@ export type CustomElementsSolidJs = {
82785
84094
  *
82786
84095
  * Custom selectors for styling elements within the component.
82787
84096
  *
84097
+ * - `content`: The box holding the words of the default slot, over the track or in the middle of the ring. Carries `--progress-fraction`.
82788
84098
  * - `groove`: The unfilled circle under the ring's filled arc.
82789
84099
  * - `indicator`: The filled part that shows the work done.
82790
84100
  * - `live`: A polite region that says `complete-label` when the work is done, rendered from that moment. Hide it visually.
@@ -82796,6 +84106,7 @@ export type CustomElementsSolidJs = {
82796
84106
  * These can be used to apply styling when a component is in a given state.
82797
84107
  *
82798
84108
  * - `complete`: The value is at `max` and the bar is not indeterminate.
84109
+ * - `content`: Words are set in the default slot.
82799
84110
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
82800
84111
  */
82801
84112
  "helix-progress": Partial<
@@ -82953,6 +84264,12 @@ export type CustomElementsSolidJs = {
82953
84264
  * Component attributes and properties that can be applied to the element or by using JavaScript.
82954
84265
  *
82955
84266
  * - `cite`: URL identifying where the quotation came from.
84267
+ * - `no-marks`/`noMarks`: Whether to leave the quotation marks off, for a quotation set where the
84268
+ * page draws its own.
84269
+ *
84270
+ * Negative, because the marks are on by default and a boolean attribute is
84271
+ * true whenever it is present. Reflected, because a stylesheet takes the
84272
+ * marks off on it.
82956
84273
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
82957
84274
  *
82958
84275
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -84417,6 +85734,16 @@ export type CustomElementsSolidJs = {
84417
85734
  *
84418
85735
  * Component attributes and properties that can be applied to the element or by using JavaScript.
84419
85736
  *
85737
+ * - `empty-text`/`emptyText`: The words shown in place of the drawing when the table has no readings,
85738
+ * and the fallback of the `empty` slot.
85739
+ * - `loading`: Whether the readings are still on their way. The chart shows
85740
+ * `loading-text` in place of an empty drawing until it has readings.
85741
+ *
85742
+ * Reflected, so a stylesheet can treat the chart while it waits. A chart
85743
+ * that already has readings keeps drawing them, so a refresh does not
85744
+ * blank it.
85745
+ * - `loading-text`/`loadingText`: The words shown in place of the drawing while `loading` is set and
85746
+ * there are no readings yet, and the fallback of the `loading` slot.
84420
85747
  * - `for`: The id of the table to read.
84421
85748
  *
84422
85749
  * Names a table in the same tree, so a chart inside another component's
@@ -84478,6 +85805,28 @@ export type CustomElementsSolidJs = {
84478
85805
  * cannot be cast onto across unrelated classes, so it would be invisible to
84479
85806
  * every chart that needs it. Reading where a pointer is resting is a fair
84480
85807
  * thing to ask a chart anyway. (property only) (readonly)
85808
+ * - `data`: The readings as data, in the shape of a table, where the page has no
85809
+ * table to point `for` at. `for` wins where both are set.
85810
+ *
85811
+ * ```js
85812
+ * chart.data = {
85813
+ * caption: 'Sessions by channel',
85814
+ * columns: ['Month', 'Direct', 'Referral'],
85815
+ * rows: [['Jan', 10, 4], ['Feb', 20, 8]],
85816
+ * }
85817
+ * ```
85818
+ *
85819
+ * The first column holds each row's label and every column after it a
85820
+ * series, as in a table. A cell is a number, words, `null` for a blank,
85821
+ * or `{ value, text }` for a number shown as words, such as `$128k`. A
85822
+ * number is shown in `locale`.
85823
+ *
85824
+ * **A table is still the better source where the page can show one**:
85825
+ * it reads with no script and before hydration, and a reader can sort and
85826
+ * copy it. Data is drawn on the client only, so a server serves the
85827
+ * frame, and the summary, the keys and the readout are then the whole of
85828
+ * what a screen reader is given. Set a new object to redraw: the chart
85829
+ * does not look inside the one it has. (property only)
84481
85830
  * - `series`: The table's columns, one series each. Empty when there is no table.
84482
85831
  *
84483
85832
  * Held by the controller between edits, so a render reading this five
@@ -84494,6 +85843,9 @@ export type CustomElementsSolidJs = {
84494
85843
  * names an element, and the chart is a generic around its plot: written
84495
85844
  * on the host, the name reached nobody. The plot takes it, as Heatmap's
84496
85845
  * strip always did. (property only) (readonly)
85846
+ * - `readingsKnown`: Whether the readings have been looked for: false on the server and
85847
+ * while hydrating, where no table is resolved and no data is read. A
85848
+ * chart says it has no readings only once this is true. (property only) (readonly)
84497
85849
  * - `sourceRows`: Every row of the table, with each cell's text and number.
84498
85850
  *
84499
85851
  * This is where a tooltip's content comes from, and it is deliberately not
@@ -84540,6 +85892,13 @@ export type CustomElementsSolidJs = {
84540
85892
  * - `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.
84541
85893
  * - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
84542
85894
  *
85895
+ * ## Slots
85896
+ *
85897
+ * Areas where markup can be added to the component.
85898
+ *
85899
+ * - `empty`: Content shown in place of the drawing when the table has no readings, such as a link to add the first. Falls back to `empty-text`.
85900
+ * - `loading`: Content shown in place of the drawing while `loading` is set and there are no readings yet. Falls back to `loading-text`.
85901
+ *
84543
85902
  * ## Methods
84544
85903
  *
84545
85904
  * Methods that can be called to access component functionality.
@@ -84598,8 +85957,10 @@ export type CustomElementsSolidJs = {
84598
85957
  *
84599
85958
  * Custom selectors for styling elements within the component.
84600
85959
  *
85960
+ * - `empty`: The words in place of the drawing when the table has no readings: the `empty` slot, falling back to `empty-text`. Not drawn while the table cannot be read yet, on the server and during hydration.
84601
85961
  * - `gridline`: One line across the plot, drawn when `gridlines` is set.
84602
85962
  * - `live`: The readout: a polite live region that says the row the keys moved to. Hide it visually.
85963
+ * - `loading`: The words in place of the drawing while `loading` is set and there are no readings: the `loading` slot, falling back to `loading-text`.
84603
85964
  * - `mark`: The invisible point the tooltip is anchored to.
84604
85965
  * - `plane`: The grid that holds the plot, both axes, and their names. It runs left to right on every page.
84605
85966
  * - `plot`: The drawing, which takes focus to be read by key.
@@ -85124,6 +86485,11 @@ export type CustomElementsSolidJs = {
85124
86485
  * Around content with `loading`, the skeleton takes the content's box and
85125
86486
  * paints over it, and the content is hidden until `loading` is taken off.
85126
86487
  *
86488
+ * **`lines` draws a paragraph.** With `shape="text"` and `lines="3"`, one
86489
+ * element stands in for three lines of text: each line a `skeleton` part one
86490
+ * `em` tall, spaced a body line height apart, and the last one shorter, as the end
86491
+ * of a paragraph is.
86492
+ *
85127
86493
  * ## Attributes & Properties
85128
86494
  *
85129
86495
  * Component attributes and properties that can be applied to the element or by using JavaScript.
@@ -85132,6 +86498,10 @@ export type CustomElementsSolidJs = {
85132
86498
  * fade the fill in and out, or `none` to sit still.
85133
86499
  *
85134
86500
  * Reduced motion stills both.
86501
+ * - `lines`: How many lines of text the placeholder stands for, with `shape="text"`.
86502
+ *
86503
+ * Absent, or 1, is one line. Reflected, because the stylesheet sizes a
86504
+ * paragraph by it.
85135
86505
  * - `shape`: The shape of the placeholder: `text`, `circle`, or a block when unset.
85136
86506
  *
85137
86507
  * Unset is a block, which is what most missing things are. A block is the
@@ -85180,6 +86550,7 @@ export type CustomElementsSolidJs = {
85180
86550
  * - `--skeleton-block-size`: The height of the block shape, which is the shape when `shape` is unset. Defaults to the control height.
85181
86551
  * - `--skeleton-color`: The placeholder's fill.
85182
86552
  * - `--skeleton-duration`: How long one sweep or one pulse takes.
86553
+ * - `--skeleton-last-line-size`: The width of the last line of a `lines` paragraph. Defaults to 60%.
85183
86554
  * - `--skeleton-radius`: The corner of the block shape.
85184
86555
  * - `--skeleton-sheen-color`: The highlight the sweep carries across the fill.
85185
86556
  * - `--skeleton-size`: The diameter of the circle shape.
@@ -85189,8 +86560,10 @@ export type CustomElementsSolidJs = {
85189
86560
  * Custom selectors for styling elements within the component.
85190
86561
  *
85191
86562
  * - `content`: The box around the content, hidden while `loading`.
86563
+ * - `line`: Each line of a `lines` paragraph, which is also a `skeleton` part.
86564
+ * - `lines`: The column holding a `lines` paragraph, drawn only for `shape="text"` with two or more lines.
85192
86565
  * - `sheen`: The highlight swept across the shape. Hidden for `effect="pulse"` and `effect="none"`.
85193
- * - `skeleton`: The placeholder shape.
86566
+ * - `skeleton`: The placeholder shape, or each line of a `lines` paragraph.
85194
86567
  *
85195
86568
  * ## CSS States
85196
86569
  *
@@ -86382,7 +87755,10 @@ export type CustomElementsSolidJs = {
86382
87755
  * with its rule; and a count is what a set of facts read across wants, where
86383
87756
  * figures compared one against another keep their own widths.
86384
87757
  * - `divided`: Draws a rule between the figures, in addition to the space.
86385
- * - `label`: Accessible name for the group.
87758
+ * - `label`: Accessible name for the group, which makes it a group.
87759
+ *
87760
+ * Absent leaves the stats with no group around them, unless `aria-label` or
87761
+ * `aria-labelledby` names it.
86386
87762
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
86387
87763
  *
86388
87764
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -86410,6 +87786,14 @@ export type CustomElementsSolidJs = {
86410
87786
  *
86411
87787
  * - `(default)`: The stats.
86412
87788
  *
87789
+ * ## Methods
87790
+ *
87791
+ * Methods that can be called to access component functionality.
87792
+ *
87793
+ * - `attributeChangedCallback(name: string, old: string | null, value: string | null) => void`: Called by the browser when an observed attribute changes. A name written
87794
+ * or taken off asks for an update, because it decides whether the stats are
87795
+ * a group.
87796
+ *
86413
87797
  * ## CSS Custom Properties
86414
87798
  *
86415
87799
  * CSS variables available for styling the component.
@@ -86464,6 +87848,20 @@ export type CustomElementsSolidJs = {
86464
87848
  * reports a hydration mismatch. The absent attribute is the column, which the
86465
87849
  * stylesheet reads as the base case, and the server spec asserts the host
86466
87850
  * carries nothing nobody wrote.
87851
+ * - `format-options`/`formatOptions`: `Intl.NumberFormat` options `value` is written with, such as
87852
+ * `{"notation":"compact"}` for `1.2M` or `{"style":"percent"}` for `98%`,
87853
+ * written as JSON in the attribute.
87854
+ *
87855
+ * Absent writes the number as the locale writes any number.
87856
+ * - `locale`: The locale `value` is written in, such as `de` for `1.234.567`.
87857
+ *
87858
+ * Absent reads the nearest `lang`, then the runtime's own. Set it on a page
87859
+ * rendered on a server, so the server and the browser write the figure
87860
+ * alike.
87861
+ * - `value`: The figure as a number, written with `format-options` in `locale` in
87862
+ * place of a slotted value.
87863
+ *
87864
+ * Absent leaves the figure to the slot.
86467
87865
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
86468
87866
  *
86469
87867
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -86511,11 +87909,17 @@ export type CustomElementsSolidJs = {
86511
87909
  * Custom selectors for styling elements within the component.
86512
87910
  *
86513
87911
  * - `value`: The slot the value is written in. A slot draws no box, so it takes the inherited properties, such as color and font, and passes them to the value.
87912
+ * - `label`: The slot the label arrives through, drawing no box, as `value` does.
87913
+ * - `trend`: The slot the trend arrives through, drawing no box, as `value` does.
87914
+ * - `unit`: The slot the unit arrives through, drawing no box, as `value` does.
86514
87915
  *
86515
87916
  * ## CSS States
86516
87917
  *
86517
87918
  * These can be used to apply styling when a component is in a given state.
86518
87919
  *
87920
+ * - `has-label`: Something is slotted into `label`.
87921
+ * - `has-trend`: Something is slotted into `trend`.
87922
+ * - `has-unit`: Something is slotted into `unit`.
86519
87923
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
86520
87924
  */
86521
87925
  "helix-stat": Partial<
@@ -92350,6 +93754,8 @@ export type CustomCssProperties = {
92350
93754
  "--badge-font-weight"?: (string) | undefined;
92351
93755
  /** The space between the content and the count under `placement="inline"`. */
92352
93756
  "--badge-gap"?: (string) | undefined;
93757
+ /** The size of an icon in the `icon` slot. The count's own size by default. */
93758
+ "--badge-icon-size"?: (string) | undefined;
92353
93759
  /** Pulls the mark in from the corner, along both axes. */
92354
93760
  "--badge-offset"?: (string) | undefined;
92355
93761
  /** How far the indicator's corners are rounded. */
@@ -93210,7 +94616,11 @@ export type CustomCssProperties = {
93210
94616
  "--heatmap-rows"?: (string) | undefined;
93211
94617
  /** The tone of the cell it is set on. The component writes it, and the stylesheet that paints the cell reads it. */
93212
94618
  "--heatmap-tone"?: (string) | undefined;
93213
- /** The width and height of the icon's box. */
94619
+ /** How long one turn, pulse or beat of `animation` takes. */
94620
+ "--icon-animation-duration"?: (string) | undefined;
94621
+ /** An angle the glyph is turned by, such as `45deg`. `rotate` wins over it. */
94622
+ "--icon-rotate"?: (string) | undefined;
94623
+ /** The width and height of the icon's box. The height alone under `auto-width`. */
93214
94624
  "--icon-size"?: (string) | undefined;
93215
94625
  /** The aspect ratio of the box, such as `16 / 9`. */
93216
94626
  "--image-aspect"?: (string) | undefined;
@@ -93818,6 +95228,12 @@ export type CustomCssProperties = {
93818
95228
  "--popover-shadow"?: (string) | undefined;
93819
95229
  /** Fill of the part that is done. */
93820
95230
  "--progress-color"?: (string) | undefined;
95231
+ /** The color of the words of the default slot where they are over the track, and in a ring. */
95232
+ "--progress-content-color"?: (string) | undefined;
95233
+ /** The color of the words of the default slot where they are over the fill. */
95234
+ "--progress-content-fill-color"?: (string) | undefined;
95235
+ /** The type size of the words of the default slot. */
95236
+ "--progress-content-size"?: (string) | undefined;
93821
95237
  /** Color of a slotted label. */
93822
95238
  "--progress-label-color"?: (string) | undefined;
93823
95239
  /** Space between a slotted label and the bar. */
@@ -94010,6 +95426,8 @@ export type CustomCssProperties = {
94010
95426
  "--skeleton-color"?: (string) | undefined;
94011
95427
  /** How long one sweep or one pulse takes. */
94012
95428
  "--skeleton-duration"?: (string) | undefined;
95429
+ /** The width of the last line of a `lines` paragraph. Defaults to 60%. */
95430
+ "--skeleton-last-line-size"?: (string) | undefined;
94013
95431
  /** The corner of the block shape. */
94014
95432
  "--skeleton-radius"?: (string) | undefined;
94015
95433
  /** The highlight the sweep carries across the fill. */