@fusion.dev/helix 0.149.1 → 0.151.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/types/vue.d.ts CHANGED
@@ -165,6 +165,8 @@ import type {
165
165
  HelixBeforeOpenEvent,
166
166
  HelixDismissEvent,
167
167
  HelixScrolledEvent,
168
+ HelixReadingChangeEvent,
169
+ HelixReadingPressEvent,
168
170
  HelixAuraFallbackEvent,
169
171
  HelixBeforeChangeEvent,
170
172
  HelixPressEvent,
@@ -658,6 +660,18 @@ export type HelixAppHeaderVueEvents = {
658
660
  "helix-scrolled": HelixAppHeaderHelixScrolledElementEvent;
659
661
  };
660
662
 
663
+ /** `HelixAreaChart` component event */
664
+ export type HelixAreaChartElementEvent<E = Event> = TypedEvent<
665
+ HelixAreaChart,
666
+ E
667
+ >;
668
+ /** `helix-reading-change` event type */
669
+ export type HelixAreaChartHelixReadingChangeElementEvent =
670
+ HelixAreaChartElementEvent<HelixReadingChangeEvent>;
671
+ /** `helix-reading-press` event type */
672
+ export type HelixAreaChartHelixReadingPressElementEvent =
673
+ HelixAreaChartElementEvent<HelixReadingPressEvent>;
674
+
661
675
  export type HelixAreaChartVueProps = {
662
676
  /** The id of the table to read.
663
677
 
@@ -744,9 +758,26 @@ locale, and `{shares}` each part's share, listed as the locale lists. */
744
758
  "total-label"?: (HelixAreaChart["totalLabel"]) | undefined;
745
759
  /** The name for the sum of the parts, shown in the tooltip and the summary. */
746
760
  totalLabel?: (HelixAreaChart["totalLabel"]) | undefined;
761
+ /** Draws the scale's numbers beside the plot, the `axis` part, at the levels
762
+ `gridlines` rules: amounts, or percentages under `share`.
763
+
764
+ Absent draws none: bands read as a composition need no numbers beside
765
+ them, and the tooltip and the table hold every reading. */
766
+ "value-axis"?: (HelixAreaChart["valueAxis"]) | undefined;
767
+ /** Draws the scale's numbers beside the plot, the `axis` part, at the levels
768
+ `gridlines` rules: amounts, or percentages under `share`.
769
+
770
+ Absent draws none: bands read as a composition need no numbers beside
771
+ them, and the tooltip and the table hold every reading. */
772
+ valueAxis?: (HelixAreaChart["valueAxis"]) | undefined;
747
773
  };
748
774
 
749
- export type HelixAreaChartVueEvents = {};
775
+ export type HelixAreaChartVueEvents = {
776
+ /** 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. */
777
+ "helix-reading-change": HelixAreaChartHelixReadingChangeElementEvent;
778
+ /** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
779
+ "helix-reading-press": HelixAreaChartHelixReadingPressElementEvent;
780
+ };
750
781
 
751
782
  /** `HelixAura` component event */
752
783
  export type HelixAuraElementEvent<E = Event> = TypedEvent<HelixAura, E>;
@@ -1064,6 +1095,15 @@ is showing a count must not lose the count for being handed one. */
1064
1095
 
1065
1096
  export type HelixBadgeVueEvents = {};
1066
1097
 
1098
+ /** `HelixBarChart` component event */
1099
+ export type HelixBarChartElementEvent<E = Event> = TypedEvent<HelixBarChart, E>;
1100
+ /** `helix-reading-change` event type */
1101
+ export type HelixBarChartHelixReadingChangeElementEvent =
1102
+ HelixBarChartElementEvent<HelixReadingChangeEvent>;
1103
+ /** `helix-reading-press` event type */
1104
+ export type HelixBarChartHelixReadingPressElementEvent =
1105
+ HelixBarChartElementEvent<HelixReadingPressEvent>;
1106
+
1067
1107
  export type HelixBarChartVueProps = {
1068
1108
  /** How strongly the columns are drawn.
1069
1109
 
@@ -1315,9 +1355,28 @@ the reading as the table writes it. */
1315
1355
  `{readings}` each series' highest reading: the series, the category and
1316
1356
  the reading as the table writes it. */
1317
1357
  summaryLabel?: (HelixBarChart["summaryLabel"]) | undefined;
1358
+ /** Draws the numbers of the scale the bars are measured on, the `axis` part,
1359
+ at the levels `gridlines` rules: down the side of columns, and along the
1360
+ bottom of bars under `orientation="horizontal"`.
1361
+
1362
+ Absent draws none with one scale, since bars compared with each other need
1363
+ no numbers. With `secondary` both scales are drawn whatever this says. */
1364
+ "value-axis"?: (HelixBarChart["valueAxis"]) | undefined;
1365
+ /** Draws the numbers of the scale the bars are measured on, the `axis` part,
1366
+ at the levels `gridlines` rules: down the side of columns, and along the
1367
+ bottom of bars under `orientation="horizontal"`.
1368
+
1369
+ Absent draws none with one scale, since bars compared with each other need
1370
+ no numbers. With `secondary` both scales are drawn whatever this says. */
1371
+ valueAxis?: (HelixBarChart["valueAxis"]) | undefined;
1318
1372
  };
1319
1373
 
1320
- export type HelixBarChartVueEvents = {};
1374
+ export type HelixBarChartVueEvents = {
1375
+ /** 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. */
1376
+ "helix-reading-change": HelixBarChartHelixReadingChangeElementEvent;
1377
+ /** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
1378
+ "helix-reading-press": HelixBarChartHelixReadingPressElementEvent;
1379
+ };
1321
1380
 
1322
1381
  export type HelixBlockquoteVueProps = {
1323
1382
  /** Who said it, and where, as words, such as "Maria Lopez, operations
@@ -2999,8 +3058,21 @@ export type HelixChatComposerHelixTypingElementEvent =
2999
3058
  export type HelixChatComposerVueProps = {
3000
3059
  /** The field's name, read by screen readers. */
3001
3060
  label?: (HelixChatComposer["label"]) | undefined;
3061
+ /** The most characters a draft can have. The field stops taking more. */
3062
+ maxlength?: (HelixChatComposer["maxLength"] | `${number}`) | undefined;
3063
+ /** The most characters a draft can have. The field stops taking more. */
3064
+ maxLength?: (HelixChatComposer["maxLength"]) | undefined;
3065
+ /** The fewest characters a draft can have, once the reader has written in
3066
+ the field, as on a `<textarea>`. */
3067
+ minlength?: (HelixChatComposer["minLength"] | `${number}`) | undefined;
3068
+ /** The fewest characters a draft can have, once the reader has written in
3069
+ the field, as on a `<textarea>`. */
3070
+ minLength?: (HelixChatComposer["minLength"]) | undefined;
3002
3071
  /** Placeholder text shown in an empty field. */
3003
3072
  placeholder?: (HelixChatComposer["placeholder"]) | undefined;
3073
+ /** Whether the form needs a draft to submit. An empty draft never sends,
3074
+ required or not. */
3075
+ required?: (HelixChatComposer["required"]) | undefined;
3004
3076
  /** How many rows the field opens at.
3005
3077
 
3006
3078
  It grows from there. */
@@ -5299,6 +5371,20 @@ rows are chosen, written in the locale, and a language that needs plural
5299
5371
  forms writes them: `{count, plural, one {# wybrany} few {# wybrane} many
5300
5372
  {# wybranych} other {# wybranego}}`. */
5301
5373
  selectedLabel?: (HelixDataTable["selectedLabel"]) | undefined;
5374
+ /** What a key or a press on a row does to the rows already selected, in a
5375
+ `selectable` table. `toggle`, the default, keeps them: Space adds or takes
5376
+ out the row. `replace` selects the row alone, as a file list does: Down and
5377
+ Up carry the selection with them, and a press on a row selects it. Control
5378
+ or Command with a press or Space adds or takes out one row, and with a move
5379
+ goes without selecting. The checkboxes add or take out one row either way. */
5380
+ "selection-behavior"?: (HelixDataTable["selectionBehavior"]) | undefined;
5381
+ /** What a key or a press on a row does to the rows already selected, in a
5382
+ `selectable` table. `toggle`, the default, keeps them: Space adds or takes
5383
+ out the row. `replace` selects the row alone, as a file list does: Down and
5384
+ Up carry the selection with them, and a press on a row selects it. Control
5385
+ or Command with a press or Space adds or takes out one row, and with a move
5386
+ goes without selecting. The checkboxes add or take out one row either way. */
5387
+ selectionBehavior?: (HelixDataTable["selectionBehavior"]) | undefined;
5302
5388
  /** The name of a row's checkbox. `{row}` is replaced with the row's value in
5303
5389
  the first column that has a field, or with its key. */
5304
5390
  "select-row-label"?: (HelixDataTable["selectRowLabel"]) | undefined;
@@ -6418,11 +6504,7 @@ short length of line, `--divider-content-offset`, kept before or after it.
6418
6504
  A divider with nothing set into it is one line whatever this says. */
6419
6505
  contentPlacement?: (HelixDivider["contentPlacement"]) | undefined;
6420
6506
  /** Whether screen readers announce the line as a separator, which they now do
6421
- by default.
6422
-
6423
- It dates from when the line was decorative by default. It is still read,
6424
- and it wins over `decorative`, so a divider written with it stays a
6425
- separator. */
6507
+ by default. */
6426
6508
  announced?: (HelixDivider["announced"]) | undefined;
6427
6509
  /** Takes the line out of the accessibility tree, for a rule that separates
6428
6510
  nothing: one under a heading, or between the facts of a byline.
@@ -9242,6 +9324,18 @@ export type HelixLightboxVueEvents = {
9242
9324
  "helix-before-open": HelixLightboxHelixBeforeOpenElementEvent;
9243
9325
  };
9244
9326
 
9327
+ /** `HelixLineChart` component event */
9328
+ export type HelixLineChartElementEvent<E = Event> = TypedEvent<
9329
+ HelixLineChart,
9330
+ E
9331
+ >;
9332
+ /** `helix-reading-change` event type */
9333
+ export type HelixLineChartHelixReadingChangeElementEvent =
9334
+ HelixLineChartElementEvent<HelixReadingChangeEvent>;
9335
+ /** `helix-reading-press` event type */
9336
+ export type HelixLineChartHelixReadingPressElementEvent =
9337
+ HelixLineChartElementEvent<HelixReadingPressEvent>;
9338
+
9245
9339
  export type HelixLineChartVueProps = {
9246
9340
  /** How strongly the lines and their washes are drawn.
9247
9341
 
@@ -9419,6 +9513,20 @@ masked with one disc per series and every stroke stops at its own ring's
9419
9513
  inner edge. `mask-composite: intersect` is what makes N holes out of N
9420
9514
  layers; a single `mask-image` would only ever cut the last one. */
9421
9515
  terminus?: (HelixLineChart["terminus"]) | undefined;
9516
+ /** Draws the scale's numbers beside the plot, the `axis` part, at the levels
9517
+ `gridlines` rules, so a reading can be measured off the drawing as well
9518
+ as read from the tooltip.
9519
+
9520
+ Absent draws none: a line read for its shape needs no numbers beside it,
9521
+ and the tooltip and the table hold every reading. */
9522
+ "value-axis"?: (HelixLineChart["valueAxis"]) | undefined;
9523
+ /** Draws the scale's numbers beside the plot, the `axis` part, at the levels
9524
+ `gridlines` rules, so a reading can be measured off the drawing as well
9525
+ as read from the tooltip.
9526
+
9527
+ Absent draws none: a line read for its shape needs no numbers beside it,
9528
+ and the tooltip and the table hold every reading. */
9529
+ valueAxis?: (HelixLineChart["valueAxis"]) | undefined;
9422
9530
  /** Whether the range always includes zero.
9423
9531
 
9424
9532
  Absent measures from the data's own extent, which is what a line is for.
@@ -9428,7 +9536,12 @@ near the top of the box. */
9428
9536
  zero?: (HelixLineChart["zero"]) | undefined;
9429
9537
  };
9430
9538
 
9431
- export type HelixLineChartVueEvents = {};
9539
+ export type HelixLineChartVueEvents = {
9540
+ /** 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. */
9541
+ "helix-reading-change": HelixLineChartHelixReadingChangeElementEvent;
9542
+ /** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
9543
+ "helix-reading-press": HelixLineChartHelixReadingPressElementEvent;
9544
+ };
9432
9545
 
9433
9546
  /** `HelixListItem` component event */
9434
9547
  export type HelixListItemElementEvent<E = Event> = TypedEvent<HelixListItem, E>;
@@ -11990,14 +12103,10 @@ between them makes a reader parse the punctuation to find where the name
11990
12103
  ends. Matching still reads the label, so what somebody types is matched
11991
12104
  against the name rather than against prose about it.
11992
12105
 
11993
- **A property and not a slot, which is the departure worth explaining.** The
11994
- area rules say a content property is its slot's fallback, and that holds for
11995
- a region always drawn: `Avatar`'s initials, `Tooltip`'s text. This one is
11996
- usually absent, and a wrapped slot generates a box whether or not it is
11997
- filled, so every option without a caption would carry an empty line. The
11998
- detection that would avoid it does not exist, `:host(:has())` being invalid
11999
- and the server having no children to inspect. A property is known at render
12000
- time, so the component can decline to draw the box at all.
12106
+ For a caption richer than a string, slot it into `description`. The
12107
+ property is that slot's fallback inside the `description` part. With no
12108
+ property the slot is drawn bare, which takes no box while it is empty, so
12109
+ an option without a caption carries no empty line.
12001
12110
 
12002
12111
  It does not reflect, per the rule that payload state stays off the host: a
12003
12112
  string is not a fact a selector needs. */
@@ -12085,6 +12194,13 @@ name is the fault `TreeItem` avoids by mirroring to `data-selected`.
12085
12194
  Splitting them means moving what every stylesheet selects on, which is a
12086
12195
  change of its own rather than a property being added. */
12087
12196
  defaultSelected?: (HelixOption["defaultSelected"]) | undefined;
12197
+ /** Whether the option says it is selected while the keyboard is on it.
12198
+
12199
+ Written by a control whose list holds suggestions, such as `FilterInput`:
12200
+ nothing there stays chosen, so the row the keyboard is on is the
12201
+ selection, as the APG combobox's list with selection that follows focus
12202
+ says. No attribute: it is coordination between elements. */
12203
+ selectionFollowsActive?: (HelixOption["selectionFollowsActive"]) | undefined;
12088
12204
  };
12089
12205
 
12090
12206
  export type HelixOptionVueEvents = {
@@ -13826,6 +13942,18 @@ export type HelixSandboxToolbarVueProps = {};
13826
13942
 
13827
13943
  export type HelixSandboxToolbarVueEvents = {};
13828
13944
 
13945
+ /** `HelixScatterChart` component event */
13946
+ export type HelixScatterChartElementEvent<E = Event> = TypedEvent<
13947
+ HelixScatterChart,
13948
+ E
13949
+ >;
13950
+ /** `helix-reading-change` event type */
13951
+ export type HelixScatterChartHelixReadingChangeElementEvent =
13952
+ HelixScatterChartElementEvent<HelixReadingChangeEvent>;
13953
+ /** `helix-reading-press` event type */
13954
+ export type HelixScatterChartHelixReadingPressElementEvent =
13955
+ HelixScatterChartElementEvent<HelixReadingPressEvent>;
13956
+
13829
13957
  export type HelixScatterChartVueProps = {
13830
13958
  /** The id of the table to read.
13831
13959
 
@@ -13924,7 +14052,12 @@ gives each series' correlation, which says how near the points are to it. */
13924
14052
  trend?: (HelixScatterChart["trend"]) | undefined;
13925
14053
  };
13926
14054
 
13927
- export type HelixScatterChartVueEvents = {};
14055
+ export type HelixScatterChartVueEvents = {
14056
+ /** 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. */
14057
+ "helix-reading-change": HelixScatterChartHelixReadingChangeElementEvent;
14058
+ /** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
14059
+ "helix-reading-press": HelixScatterChartHelixReadingPressElementEvent;
14060
+ };
13928
14061
 
13929
14062
  /** `HelixScrollArea` component event */
13930
14063
  export type HelixScrollAreaElementEvent<E = Event> = TypedEvent<
@@ -15659,6 +15792,13 @@ export type HelixTableVueEvents = {
15659
15792
  };
15660
15793
 
15661
15794
  export type HelixTableRowVueProps = {
15795
+ /** Takes the row out of the table's selection and out of its link: the row's
15796
+ checkbox is disabled, Space, Shift ranges, and the checkbox in the heading
15797
+ pass over it, and a press does not follow `href`. A row already selected
15798
+ stays selected. A screen reader hears it as unavailable, and in a `grid`
15799
+ table the arrow keys still reach it, as a disabled cell in a grid is
15800
+ reached. */
15801
+ disabled?: (HelixTableRow["disabled"]) | undefined;
15662
15802
  /** The URL a press on the row follows, which makes the whole row a link.
15663
15803
  Empty, the default, leaves presses to the row's cells. */
15664
15804
  href?: (HelixTableRow["href"]) | undefined;
@@ -15870,6 +16010,9 @@ Independent of `tone` on purpose: an outlined danger tag and a solid danger
15870
16010
  tag are both sensible, and one property welding color to fill can ask for
15871
16011
  neither. That is the test the whole axis registry answers to. */
15872
16012
  emphasis?: (HelixTag["emphasis"]) | undefined;
16013
+ /** The tag's outline. `pill` rounds its ends fully, for a set of tags among
16014
+ rounded controls. Absent is the theme's small radius. */
16015
+ shape?: (HelixTag["shape"]) | undefined;
15873
16016
  /** The meaning the tag's color shows, such as `success` or `danger`.
15874
16017
 
15875
16018
  `tone` is semantic color, which is what these are and what `helix-text`
@@ -15918,6 +16061,13 @@ be selected or removed. */
15918
16061
 
15919
16062
  Absent is the tag's own words, its category first. */
15920
16063
  value?: (HelixTag["value"]) | undefined;
16064
+ /** Whether the remove button is a tab stop of its own, outside a `Tag.Group`.
16065
+
16066
+ A field that holds tags as its tokens, such as a `multiple` Combobox,
16067
+ writes `false`: the field's text is its one tab stop, and the arrow keys
16068
+ move from the text to the tags. No attribute: it is coordination between
16069
+ elements, as `focusable` is. */
16070
+ dismissTabStop?: (HelixTag["dismissTabStop"]) | undefined;
15921
16071
  /** Whether the tag holds its group's tab stop.
15922
16072
 
15923
16073
  Written by `Tag.Group` on every tag it holds, and unset outside one, which
@@ -17251,8 +17401,8 @@ name is the fault `TreeItem` avoids by mirroring to `data-selected`.
17251
17401
  Splitting them means moving what every stylesheet selects on, which is a
17252
17402
  change of its own rather than a property being added. */
17253
17403
  defaultSelected?: (HelixToggle["defaultSelected"]) | undefined;
17254
- /** Whether the item holds the group's tab stop. Unset, the chosen item holds
17255
- it.
17404
+ /** Whether the item holds the group's tab stop. Unset, no group holds the
17405
+ item, and it is a toggle button with a tab stop of its own.
17256
17406
 
17257
17407
  Written by the group on every item: `true` for the chosen item, or for the
17258
17408
  first item that can be chosen while there is no selection to carry the
@@ -17269,6 +17419,8 @@ Written by the group, like `selected`, so no attribute. */
17269
17419
  };
17270
17420
 
17271
17421
  export type HelixToggleVueEvents = {
17422
+ /** Fired after a toggle button on its own is pressed or released. */
17423
+ change: HelixToggleElementEvent;
17272
17424
  /** Fired when the item is chosen. Cancelable: call `preventDefault()` to keep the current choice. */
17273
17425
  "helix-select": HelixToggleHelixSelectElementEvent;
17274
17426
  };
@@ -18394,6 +18546,14 @@ regardless, because a reader who stopped it is deciding what to do next. */
18394
18546
  loadingLabel?: (HelixVideo["loadingLabel"]) | undefined;
18395
18547
  /** Whether the video starts again at the end. */
18396
18548
  loop?: (HelixVideo["loop"]) | undefined;
18549
+ /** The title the device's own media controls show while the video plays,
18550
+ such as on a lock screen. Empty, the default, shows `label`. A playlist
18551
+ writes the current entry's name here. */
18552
+ "media-title"?: (HelixVideo["mediaTitle"]) | undefined;
18553
+ /** The title the device's own media controls show while the video plays,
18554
+ such as on a lock screen. Empty, the default, shows `label`. A playlist
18555
+ writes the current entry's name here. */
18556
+ mediaTitle?: (HelixVideo["mediaTitle"]) | undefined;
18397
18557
  /** What the button that opens `overflow-controls` is called. */
18398
18558
  "more-label"?: (HelixVideo["moreLabel"]) | undefined;
18399
18559
  /** What the button that opens `overflow-controls` is called. */
@@ -18652,6 +18812,12 @@ export type HelixVirtualListVueProps = {
18652
18812
  items out as a grid of that many equal columns, windowed a line at a
18653
18813
  time, with Left and Right moving along a line. */
18654
18814
  columns?: (HelixVirtualList["columns"]) | undefined;
18815
+ /** The text of the row shown when there are no items and none are loading,
18816
+ where the `empty` slot is empty. Empty, the default, shows no row. */
18817
+ "empty-label"?: (HelixVirtualList["emptyLabel"]) | undefined;
18818
+ /** The text of the row shown when there are no items and none are loading,
18819
+ where the `empty` slot is empty. Empty, the default, shows no row. */
18820
+ emptyLabel?: (HelixVirtualList["emptyLabel"]) | undefined;
18655
18821
  /** The height of one row, in pixels, used to find the row at a scroll offset.
18656
18822
 
18657
18823
  An estimate rather than a measurement while `measured` is off, which is
@@ -18809,6 +18975,8 @@ export type CustomCssProperties = {
18809
18975
  "--area-chart-width"?: (string) | undefined;
18810
18976
  /** Thickness of a band's top edge. Area Chart, Line Chart, and Bar Chart's `lines` all read this one property. `--area-chart-width` overrides it here. */
18811
18977
  "--chart-stroke"?: (string) | undefined;
18978
+ /** The width of the axis, in `ch`, set from the widest number on it. Written by the component on the axis. */
18979
+ "--area-chart-axis"?: (string) | undefined;
18812
18980
  /** The bright stop of the ramp. Defaults to `--helix-color-primary`. */
18813
18981
  "--aura-glow"?: (string) | undefined;
18814
18982
  /** The page the field fades into. Defaults to `--helix-color-background`. */
@@ -19819,6 +19987,8 @@ export type CustomCssProperties = {
19819
19987
  "--chart-terminus-x"?: (string) | undefined;
19820
19988
  /** Where a series' last reading sits vertically, as a percentage. Written by the component. */
19821
19989
  "--chart-terminus-y"?: (string) | undefined;
19990
+ /** The width of the axis, in `ch`, set from the widest number on it. Written by the component on the axis. */
19991
+ "--line-chart-axis"?: (string) | undefined;
19822
19992
  /** The fill behind a row that is `current`. */
19823
19993
  "--list-item-current-background-color"?: (string) | undefined;
19824
19994
  /** The opacity of a `disabled` row. */
@@ -20741,6 +20911,8 @@ export type CustomCssProperties = {
20741
20911
  "--table-grip-color"?: (string) | undefined;
20742
20912
  /** The opacity of a row's grip while a sort decides the order. */
20743
20913
  "--table-grip-disabled-opacity"?: (string) | undefined;
20914
+ /** The opacity of the cells of a `disabled` row. */
20915
+ "--table-row-disabled-opacity"?: (string) | undefined;
20744
20916
  /** The wash across the cells of a row with `href` under the pointer. */
20745
20917
  "--table-row-hover-background-color"?: (string) | undefined;
20746
20918
  /** The space between the tab row and the panel's content. */
@@ -21117,6 +21289,10 @@ export type CustomCssProperties = {
21117
21289
  "--video-progress"?: (string) | undefined;
21118
21290
  /** How tall the scrolling box is. */
21119
21291
  "--virtual-list-block-size"?: (string) | undefined;
21292
+ /** The color of the text in the row shown when there are no items. */
21293
+ "--virtual-list-empty-color"?: (string) | undefined;
21294
+ /** The space around the text in the row shown when there are no items. */
21295
+ "--virtual-list-empty-padding"?: (string) | undefined;
21120
21296
  /** The color of the text in the row drawn while `loading` is set. */
21121
21297
  "--virtual-list-loading-color"?: (string) | undefined;
21122
21298
  /** The space around the text in the row drawn while `loading` is set. */
@@ -21783,7 +21959,7 @@ export interface WcToolkitVueGlobalComponents {
21783
21959
  HelixSandboxPreviewVueProps,
21784
21960
  HelixSandboxPreviewVueEvents
21785
21961
  >;
21786
- /** A source pane dispatches 'helix-before-edit', which bubbles, and the sandbox passes the value to the preview slotted into it. The source pane and the preview do not reference each other, so you can replace either one or use it alone. The event carries the pane's 'name', so one sandbox can hold several panes. 'html' sets the preview's markup and 'css' sets its stylesheet. The sandbox ignores a pane with any other name, so that pane can show content without changing the preview. **The dividers are two nested 'helix-splitter' elements**, which handle the pointer, the keyboard, and the corner. The inner splitter holds the panes and the outer one holds the panel, so the panel spans the full width. */
21962
+ /** A source pane dispatches 'helix-before-edit', which bubbles, and the sandbox passes the value to the preview slotted into it. The source pane and the preview do not reference each other, so you can replace either one or use it alone. The event carries the pane's 'name', so one sandbox can hold several panes. 'html' sets the preview's markup and 'css' sets its stylesheet. The sandbox ignores a pane with any other name, so that pane can show content without changing the preview. **The dividers are two nested 'helix-splitter' elements**, which handle the pointer, the keyboard, and the corner. The inner splitter holds the panes and the outer one holds the panel, so the panel spans the full width. On a focused divider, the arrow keys move it, and 'Home' and 'End' move it to its ends. 'Enter' on the panes divider shuts the lead pane, and pressed again it opens the pane where it was. 'Enter' on the panel divider shuts the panel to 'panel-collapsed-size', and pressed again it opens the panel to its last height. */
21787
21963
  "helix-sandbox": DefineCustomElement<
21788
21964
  HelixSandbox,
21789
21965
  HelixSandboxVueProps,