@fusion.dev/helix 0.157.0 → 0.159.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/jsx.d.ts CHANGED
@@ -1024,6 +1024,15 @@ export type HelixAppHeaderElementEvent<E = Event> = TypedEvent<
1024
1024
  HelixAppHeader,
1025
1025
  E
1026
1026
  >;
1027
+ /** `toggle` event type */
1028
+ export type HelixAppHeaderToggleElementEvent =
1029
+ HelixAppHeaderElementEvent<ToggleEvent>;
1030
+ /** `helix-before-close` event type */
1031
+ export type HelixAppHeaderHelixBeforeCloseElementEvent =
1032
+ HelixAppHeaderElementEvent<HelixBeforeCloseEvent>;
1033
+ /** `helix-before-open` event type */
1034
+ export type HelixAppHeaderHelixBeforeOpenElementEvent =
1035
+ HelixAppHeaderElementEvent<HelixBeforeOpenEvent>;
1027
1036
  /** `helix-scrolled` event type */
1028
1037
  export type HelixAppHeaderHelixScrolledElementEvent =
1029
1038
  HelixAppHeaderElementEvent<HelixScrolledEvent>;
@@ -1081,6 +1090,23 @@ It pairs with `material`: a bar that does not stick is only ever over the
1081
1090
  top of the page, so `glass` and `transparent` have nothing to be
1082
1091
  translucent against and the `scrolled` state never lands. */
1083
1092
  sticky?: (HelixAppHeader["sticky"]) | undefined;
1093
+ /** Whether the element starts open. Ignored once `open` is written. */
1094
+ "default-open"?: (HelixAppHeader["defaultOpen"]) | undefined;
1095
+ /** Whether the element starts open. Ignored once `open` is written. */
1096
+ defaultOpen?: (HelixAppHeader["defaultOpen"]) | undefined;
1097
+ /** Whether the element is open.
1098
+
1099
+ One property, not two, so `dialog.open` answers the question anyone
1100
+ asking it meant. Writing always applies; `<helix-dialog open>` is the
1101
+ same statement in markup.
1102
+
1103
+ **Not reflected, and that is required rather than tidy.** Reflection
1104
+ writes the resolved state back as an attribute, so an element that opened
1105
+ itself would put `open` on its own host: cloned, serialized for
1106
+ hydration, or diffed by a framework, it comes back holding whatever the
1107
+ last reader did rather than what the author wrote. `:state(open)` carries
1108
+ the resolved state for stylesheets, which is what the mirror is for. */
1109
+ open?: (HelixAppHeader["open"]) | undefined;
1084
1110
  /** Where the middle region sits in the bar.
1085
1111
 
1086
1112
  Centered by default, which reads as the site's spine when the navigation is
@@ -1128,7 +1154,29 @@ page scrolls up. */
1128
1154
  /** The id of the element whose scrolling lifts the bar, for an app shell that
1129
1155
  scrolls a container instead of the window. Unset is the window. */
1130
1156
  scroller?: (HelixAppHeader["scroller"]) | undefined;
1131
-
1157
+ /** Where the toggle that opens a folded middle region sits: at the end of the
1158
+ bar, after the trailing content, or with `start`, before the leading
1159
+ content.
1160
+
1161
+ Optional, so the resting bar writes no attribute onto the host. */
1162
+ "toggle-placement"?: (HelixAppHeader["togglePlacement"]) | undefined;
1163
+ /** Where the toggle that opens a folded middle region sits: at the end of the
1164
+ bar, after the trailing content, or with `start`, before the leading
1165
+ content.
1166
+
1167
+ Optional, so the resting bar writes no attribute onto the host. */
1168
+ togglePlacement?: (HelixAppHeader["togglePlacement"]) | undefined;
1169
+
1170
+ /** The folded region opened or closed. The event carries `newState` and `oldState`. */
1171
+ ontoggle?: ((e: HelixAppHeaderToggleElementEvent) => void) | undefined;
1172
+ /** The folded region is about to close. Cancelable: cancel it to keep it open. */
1173
+ "onhelix-before-close"?: ((
1174
+ e: HelixAppHeaderHelixBeforeCloseElementEvent,
1175
+ ) => void) | undefined;
1176
+ /** The folded region is about to open. Cancelable: cancel it to keep it closed. */
1177
+ "onhelix-before-open"?: ((
1178
+ e: HelixAppHeaderHelixBeforeOpenElementEvent,
1179
+ ) => void) | undefined;
1132
1180
  /** Fired when the page crosses the scroll threshold, with the new state. A custom state cannot be observed the way an attribute can, so listen for this event to follow it. The event uses the header's own threshold and hysteresis, so you do not need a second scroll listener. */
1133
1181
  "onhelix-scrolled"?: ((e: HelixAppHeaderHelixScrolledElementEvent) => void) | undefined;
1134
1182
  };
@@ -1186,6 +1234,23 @@ It pairs with `material`: a bar that does not stick is only ever over the
1186
1234
  top of the page, so `glass` and `transparent` have nothing to be
1187
1235
  translucent against and the `scrolled` state never lands. */
1188
1236
  "prop:sticky"?: (HelixAppHeader["sticky"]) | undefined;
1237
+ /** Whether the element starts open. Ignored once `open` is written. */
1238
+ "bool:default-open"?: (HelixAppHeader["defaultOpen"]) | undefined;
1239
+ /** Whether the element starts open. Ignored once `open` is written. */
1240
+ "prop:defaultOpen"?: (HelixAppHeader["defaultOpen"]) | undefined;
1241
+ /** Whether the element is open.
1242
+
1243
+ One property, not two, so `dialog.open` answers the question anyone
1244
+ asking it meant. Writing always applies; `<helix-dialog open>` is the
1245
+ same statement in markup.
1246
+
1247
+ **Not reflected, and that is required rather than tidy.** Reflection
1248
+ writes the resolved state back as an attribute, so an element that opened
1249
+ itself would put `open` on its own host: cloned, serialized for
1250
+ hydration, or diffed by a framework, it comes back holding whatever the
1251
+ last reader did rather than what the author wrote. `:state(open)` carries
1252
+ the resolved state for stylesheets, which is what the mirror is for. */
1253
+ "prop:open"?: (HelixAppHeader["open"]) | undefined;
1189
1254
  /** Where the middle region sits in the bar.
1190
1255
 
1191
1256
  Centered by default, which reads as the site's spine when the navigation is
@@ -1233,6 +1298,28 @@ page scrolls up. */
1233
1298
  /** The id of the element whose scrolling lifts the bar, for an app shell that
1234
1299
  scrolls a container instead of the window. Unset is the window. */
1235
1300
  "prop:scroller"?: (HelixAppHeader["scroller"]) | undefined;
1301
+ /** Where the toggle that opens a folded middle region sits: at the end of the
1302
+ bar, after the trailing content, or with `start`, before the leading
1303
+ content.
1304
+
1305
+ Optional, so the resting bar writes no attribute onto the host. */
1306
+ "attr:toggle-placement"?: (HelixAppHeader["togglePlacement"]) | undefined;
1307
+ /** Where the toggle that opens a folded middle region sits: at the end of the
1308
+ bar, after the trailing content, or with `start`, before the leading
1309
+ content.
1310
+
1311
+ Optional, so the resting bar writes no attribute onto the host. */
1312
+ "prop:togglePlacement"?: (HelixAppHeader["togglePlacement"]) | undefined;
1313
+ /** The folded region opened or closed. The event carries `newState` and `oldState`. */
1314
+ "on:toggle"?: ((e: HelixAppHeaderToggleElementEvent) => void) | undefined;
1315
+ /** The folded region is about to close. Cancelable: cancel it to keep it open. */
1316
+ "on:helix-before-close"?: ((
1317
+ e: HelixAppHeaderHelixBeforeCloseElementEvent,
1318
+ ) => void) | undefined;
1319
+ /** The folded region is about to open. Cancelable: cancel it to keep it closed. */
1320
+ "on:helix-before-open"?: ((
1321
+ e: HelixAppHeaderHelixBeforeOpenElementEvent,
1322
+ ) => void) | undefined;
1236
1323
  /** Fired when the page crosses the scroll threshold, with the new state. A custom state cannot be observed the way an attribute can, so listen for this event to follow it. The event uses the header's own threshold and hysteresis, so you do not need a second scroll listener. */
1237
1324
  "on:helix-scrolled"?: ((e: HelixAppHeaderHelixScrolledElementEvent) => void) | undefined;
1238
1325
 
@@ -3133,6 +3220,14 @@ separate actions. The semantics and the joining are separate questions:
3133
3220
  `role="group"` and a shared name are what make a set of buttons a set, and
3134
3221
  `helix-flex` gives the spacing without the group. */
3135
3222
  variant?: (HelixButtonGroup["variant"]) | undefined;
3223
+ /** Keeps at least one button pressed once one is, as React Aria's
3224
+ `disallowEmptySelection`: a press that would leave none pressed is
3225
+ refused. */
3226
+ "disallow-empty-selection"?: (HelixButtonGroup["disallowEmptySelection"]) | undefined;
3227
+ /** Keeps at least one button pressed once one is, as React Aria's
3228
+ `disallowEmptySelection`: a press that would leave none pressed is
3229
+ refused. */
3230
+ disallowEmptySelection?: (HelixButtonGroup["disallowEmptySelection"]) | undefined;
3136
3231
  /** The group's name, read by screen readers.
3137
3232
 
3138
3233
  On the host through internals, so an author's `aria-label` still overrides
@@ -3198,6 +3293,14 @@ separate actions. The semantics and the joining are separate questions:
3198
3293
  `role="group"` and a shared name are what make a set of buttons a set, and
3199
3294
  `helix-flex` gives the spacing without the group. */
3200
3295
  "prop:variant"?: (HelixButtonGroup["variant"]) | undefined;
3296
+ /** Keeps at least one button pressed once one is, as React Aria's
3297
+ `disallowEmptySelection`: a press that would leave none pressed is
3298
+ refused. */
3299
+ "bool:disallow-empty-selection"?: (HelixButtonGroup["disallowEmptySelection"]) | undefined;
3300
+ /** Keeps at least one button pressed once one is, as React Aria's
3301
+ `disallowEmptySelection`: a press that would leave none pressed is
3302
+ refused. */
3303
+ "prop:disallowEmptySelection"?: (HelixButtonGroup["disallowEmptySelection"]) | undefined;
3201
3304
  /** The group's name, read by screen readers.
3202
3305
 
3203
3306
  On the host through internals, so an author's `aria-label` still overrides
@@ -10051,6 +10154,13 @@ how many are left, written in the locale, and each language writes the
10051
10154
  forms it has: `{count, plural, one {# polecenie} few {# polecenia} many
10052
10155
  {# poleceń} other {# polecenia}}`. */
10053
10156
  resultsLabel?: (HelixCommand["resultsLabel"]) | undefined;
10157
+ /** Whether a command is kept by the filter: a function given the command's
10158
+ words and the filter, trimmed, that returns `true` to keep it showing, as
10159
+ React Aria's `Autocomplete` takes `filter`. See Listbox's `filterMatch`.
10160
+
10161
+ Absent, a command is kept where its words hold the filter, in any case. A
10162
+ property only, there being no way to write a function in markup. */
10163
+ filterMatch?: (HelixCommand["filterMatch"]) | undefined;
10054
10164
  /** The commands as data, for a palette too long to draw whole: each a value,
10055
10165
  which is also its words, or a record with a `value`, a `label` and
10056
10166
  `disabled`. Handed to the list, which draws only the commands in sight and
@@ -10176,6 +10286,13 @@ how many are left, written in the locale, and each language writes the
10176
10286
  forms it has: `{count, plural, one {# polecenie} few {# polecenia} many
10177
10287
  {# poleceń} other {# polecenia}}`. */
10178
10288
  "prop:resultsLabel"?: (HelixCommand["resultsLabel"]) | undefined;
10289
+ /** Whether a command is kept by the filter: a function given the command's
10290
+ words and the filter, trimmed, that returns `true` to keep it showing, as
10291
+ React Aria's `Autocomplete` takes `filter`. See Listbox's `filterMatch`.
10292
+
10293
+ Absent, a command is kept where its words hold the filter, in any case. A
10294
+ property only, there being no way to write a function in markup. */
10295
+ "prop:filterMatch"?: (HelixCommand["filterMatch"]) | undefined;
10179
10296
  /** The commands as data, for a palette too long to draw whole: each a value,
10180
10297
  which is also its words, or a record with a `value`, a `label` and
10181
10298
  `disabled`. Handed to the list, which draws only the commands in sight and
@@ -19988,7 +20105,9 @@ Not reflected, as a state never is. `row-current` is the part a
19988
20105
  stylesheet draws it from. */
19989
20106
  current?: (HelixListItem["current"]) | undefined;
19990
20107
  /** Takes the row out of reach in a list with `selection-mode`: the arrow keys
19991
- pass over it and it cannot be selected or acted on. */
20108
+ pass over it and it cannot be selected or acted on. In a list with
20109
+ `disabled-behavior="selection"`, it cannot be selected and is reached and
20110
+ acted on as any row is. */
19992
20111
  disabled?: (HelixListItem["disabled"]) | undefined;
19993
20112
  /** The URL the row links to. Leave it empty for a row that is not a link.
19994
20113
 
@@ -20024,6 +20143,10 @@ being moved, or the one the drop indicator is beside. Unset otherwise. */
20024
20143
  Written by the list from its own `value`, and unset where nothing can be
20025
20144
  selected, which keeps `aria-selected` off a list that does not select. */
20026
20145
  selected?: (HelixListItem["selected"]) | undefined;
20146
+ /** Whether `disabled` takes the row out of selection alone, written by a list
20147
+ with `disabled-behavior="selection"`. No attribute: it is coordination
20148
+ between elements, as `focusable` is. */
20149
+ selectionOnly?: (HelixListItem["selectionOnly"]) | undefined;
20027
20150
 
20028
20151
  /** The reader pressed Enter on the row, or pressed the row in a list that selects nothing, in a list with `selection-mode`. Read the row from `target`. A row with `href` follows its link instead. */
20029
20152
  "onhelix-action"?: ((e: HelixListItemHelixActionElementEvent) => void) | undefined;
@@ -20039,7 +20162,9 @@ Not reflected, as a state never is. `row-current` is the part a
20039
20162
  stylesheet draws it from. */
20040
20163
  "prop:current"?: (HelixListItem["current"]) | undefined;
20041
20164
  /** Takes the row out of reach in a list with `selection-mode`: the arrow keys
20042
- pass over it and it cannot be selected or acted on. */
20165
+ pass over it and it cannot be selected or acted on. In a list with
20166
+ `disabled-behavior="selection"`, it cannot be selected and is reached and
20167
+ acted on as any row is. */
20043
20168
  "prop:disabled"?: (HelixListItem["disabled"]) | undefined;
20044
20169
  /** The URL the row links to. Leave it empty for a row that is not a link.
20045
20170
 
@@ -20075,6 +20200,10 @@ being moved, or the one the drop indicator is beside. Unset otherwise. */
20075
20200
  Written by the list from its own `value`, and unset where nothing can be
20076
20201
  selected, which keeps `aria-selected` off a list that does not select. */
20077
20202
  "prop:selected"?: (HelixListItem["selected"]) | undefined;
20203
+ /** Whether `disabled` takes the row out of selection alone, written by a list
20204
+ with `disabled-behavior="selection"`. No attribute: it is coordination
20205
+ between elements, as `focusable` is. */
20206
+ "prop:selectionOnly"?: (HelixListItem["selectionOnly"]) | undefined;
20078
20207
  /** The reader pressed Enter on the row, or pressed the row in a list that selects nothing, in a list with `selection-mode`. Read the row from `target`. A row with `href` follows its link instead. */
20079
20208
  "on:helix-action"?: ((e: HelixListItemHelixActionElementEvent) => void) | undefined;
20080
20209
 
@@ -20126,6 +20255,20 @@ refused, in a `reorderable` list. */
20126
20255
  /** What screen readers hear when a held row is put back, or a move is
20127
20256
  refused, in a `reorderable` list. */
20128
20257
  canceledLabel?: (HelixList["canceledLabel"]) | undefined;
20258
+ /** What `disabled` takes from a row, in a list that selects: `all`, which
20259
+ passes over the row, or `selection`, which keeps the row out of the
20260
+ selection and lets the keys reach it and Enter or a press act on it, as
20261
+ React Aria's GridList takes `disabledBehavior`.
20262
+
20263
+ Absent is `all`. */
20264
+ "disabled-behavior"?: (HelixList["disabledBehavior"]) | undefined;
20265
+ /** What `disabled` takes from a row, in a list that selects: `all`, which
20266
+ passes over the row, or `selection`, which keeps the row out of the
20267
+ selection and lets the keys reach it and Enter or a press act on it, as
20268
+ React Aria's GridList takes `disabledBehavior`.
20269
+
20270
+ Absent is `all`. */
20271
+ disabledBehavior?: (HelixList["disabledBehavior"]) | undefined;
20129
20272
  /** What screen readers hear when a row is dropped, in a `reorderable` list. */
20130
20273
  "dropped-label"?: (HelixList["droppedLabel"]) | undefined;
20131
20274
  /** What screen readers hear when a row is dropped, in a `reorderable` list. */
@@ -20273,6 +20416,20 @@ refused, in a `reorderable` list. */
20273
20416
  /** What screen readers hear when a held row is put back, or a move is
20274
20417
  refused, in a `reorderable` list. */
20275
20418
  "prop:canceledLabel"?: (HelixList["canceledLabel"]) | undefined;
20419
+ /** What `disabled` takes from a row, in a list that selects: `all`, which
20420
+ passes over the row, or `selection`, which keeps the row out of the
20421
+ selection and lets the keys reach it and Enter or a press act on it, as
20422
+ React Aria's GridList takes `disabledBehavior`.
20423
+
20424
+ Absent is `all`. */
20425
+ "attr:disabled-behavior"?: (HelixList["disabledBehavior"]) | undefined;
20426
+ /** What `disabled` takes from a row, in a list that selects: `all`, which
20427
+ passes over the row, or `selection`, which keeps the row out of the
20428
+ selection and lets the keys reach it and Enter or a press act on it, as
20429
+ React Aria's GridList takes `disabledBehavior`.
20430
+
20431
+ Absent is `all`. */
20432
+ "prop:disabledBehavior"?: (HelixList["disabledBehavior"]) | undefined;
20276
20433
  /** What screen readers hear when a row is dropped, in a `reorderable` list. */
20277
20434
  "attr:dropped-label"?: (HelixList["droppedLabel"]) | undefined;
20278
20435
  /** What screen readers hear when a row is dropped, in a `reorderable` list. */
@@ -20663,6 +20820,14 @@ imperatively later, and nothing is hydrating by then.
20663
20820
 
20664
20821
  Here rather than on each control. */
20665
20822
  name?: (HelixListbox["name"]) | undefined;
20823
+ /** Whether an option is kept by the filter: a function given the option's
20824
+ words and the filter, trimmed, that returns `true` to keep it showing, as
20825
+ React Aria's `Autocomplete` takes `filter`. For matching that ignores
20826
+ accents, matches the start of each word, or matches out of order.
20827
+
20828
+ Absent, an option is kept where its words hold the filter, in any case. A
20829
+ property only, there being no way to write a function in markup. */
20830
+ filterMatch?: (HelixListbox["filterMatch"]) | undefined;
20666
20831
  /** The options as data, for a list too long to draw whole: each a value,
20667
20832
  which is also its words, or a record with a `value`, a `label` and
20668
20833
  `disabled`. Set, the list draws only the options in sight, and the ones
@@ -20955,6 +21120,14 @@ imperatively later, and nothing is hydrating by then.
20955
21120
 
20956
21121
  Here rather than on each control. */
20957
21122
  "prop:name"?: (HelixListbox["name"]) | undefined;
21123
+ /** Whether an option is kept by the filter: a function given the option's
21124
+ words and the filter, trimmed, that returns `true` to keep it showing, as
21125
+ React Aria's `Autocomplete` takes `filter`. For matching that ignores
21126
+ accents, matches the start of each word, or matches out of order.
21127
+
21128
+ Absent, an option is kept where its words hold the filter, in any case. A
21129
+ property only, there being no way to write a function in markup. */
21130
+ "prop:filterMatch"?: (HelixListbox["filterMatch"]) | undefined;
20958
21131
  /** The options as data, for a list too long to draw whole: each a value,
20959
21132
  which is also its words, or a record with a `value`, a `label` and
20960
21133
  `disabled`. Set, the list draws only the options in sight, and the ones
@@ -24386,8 +24559,11 @@ imperatively later, and nothing is hydrating by then.
24386
24559
 
24387
24560
  Here rather than on each control. */
24388
24561
  name?: (HelixNumberInput["name"]) | undefined;
24389
- /** The value as a number, or `NaN` while the control is empty.
24562
+ /** The value as a number, or `NaN` while the control is empty or does not
24563
+ hold a number.
24390
24564
 
24565
+ Read in the locale and the format, as the form reads it, so `1,5` typed
24566
+ in a locale with a decimal comma is 1.5 here while the form holds 1.5.
24391
24567
  `NaN` and not zero, which is the trap the platform already avoids: `Number('')`
24392
24568
  is zero, so an empty control would report a number it does not hold and a
24393
24569
  form would submit it. */
@@ -24661,8 +24837,11 @@ imperatively later, and nothing is hydrating by then.
24661
24837
 
24662
24838
  Here rather than on each control. */
24663
24839
  "prop:name"?: (HelixNumberInput["name"]) | undefined;
24664
- /** The value as a number, or `NaN` while the control is empty.
24840
+ /** The value as a number, or `NaN` while the control is empty or does not
24841
+ hold a number.
24665
24842
 
24843
+ Read in the locale and the format, as the form reads it, so `1,5` typed
24844
+ in a locale with a decimal comma is 1.5 here while the form holds 1.5.
24666
24845
  `NaN` and not zero, which is the trap the platform already avoids: `Number('')`
24667
24846
  is zero, so an empty control would report a number it does not hold and a
24668
24847
  form would submit it. */
@@ -30009,7 +30188,8 @@ control height until you size it, with a height on the element or
30009
30188
  /** What is loading, read out as the placeholder's name, such as "Loading
30010
30189
  profile".
30011
30190
 
30012
- Absent hides the placeholder from screen readers. */
30191
+ Absent hides the placeholder from screen readers. Around content, the name
30192
+ is read while `loading` is set, and the loaded content is read as it is. */
30013
30193
  label?: (HelixSkeleton["label"]) | undefined;
30014
30194
  /** Whether the content inside is still loading, which keeps it inert and
30015
30195
  draws the placeholder over it.
@@ -30039,7 +30219,8 @@ control height until you size it, with a height on the element or
30039
30219
  /** What is loading, read out as the placeholder's name, such as "Loading
30040
30220
  profile".
30041
30221
 
30042
- Absent hides the placeholder from screen readers. */
30222
+ Absent hides the placeholder from screen readers. Around content, the name
30223
+ is read while `loading` is set, and the loaded content is read as it is. */
30043
30224
  "prop:label"?: (HelixSkeleton["label"]) | undefined;
30044
30225
  /** Whether the content inside is still loading, which keeps it inert and
30045
30226
  draws the placeholder over it.
@@ -33152,7 +33333,16 @@ known by its place among the rows as written. */
33152
33333
  textContent?: (string | number) | undefined;
33153
33334
  };
33154
33335
 
33336
+ /** `HelixTabPanel` component event */
33337
+ export type HelixTabPanelElementEvent<E = Event> = TypedEvent<HelixTabPanel, E>;
33338
+ /** `helix-load` event type */
33339
+ export type HelixTabPanelHelixLoadElementEvent =
33340
+ HelixTabPanelElementEvent<HelixLoadEvent>;
33341
+
33155
33342
  export type HelixTabPanelProps = {
33343
+ /** Whether the panel's content waits in a `<template>` until the panel is
33344
+ first shown. */
33345
+ lazy?: (HelixTabPanel["lazy"]) | undefined;
33156
33346
  /** Whether this panel is the visible one. */
33157
33347
  selected?: (HelixTabPanel["selected"]) | undefined;
33158
33348
  /** Pairs the panel with the tab of the same value. */
@@ -33168,9 +33358,15 @@ written in, and the tab's control is inside the tab's shadow root, which no
33168
33358
  reference from the light DOM can reach. `aria-label` on a `tabpanel` is how
33169
33359
  the pattern names one anyway. */
33170
33360
  label?: (HelixTabPanel["label"]) | undefined;
33361
+
33362
+ /** Fired the first time a `lazy` panel is shown, once its template's content is in. */
33363
+ "onhelix-load"?: ((e: HelixTabPanelHelixLoadElementEvent) => void) | undefined;
33171
33364
  };
33172
33365
 
33173
33366
  export type HelixTabPanelSolidJsProps = {
33367
+ /** Whether the panel's content waits in a `<template>` until the panel is
33368
+ first shown. */
33369
+ "prop:lazy"?: (HelixTabPanel["lazy"]) | undefined;
33174
33370
  /** Whether this panel is the visible one. */
33175
33371
  "prop:selected"?: (HelixTabPanel["selected"]) | undefined;
33176
33372
  /** Pairs the panel with the tab of the same value. */
@@ -33186,6 +33382,8 @@ written in, and the tab's control is inside the tab's shadow root, which no
33186
33382
  reference from the light DOM can reach. `aria-label` on a `tabpanel` is how
33187
33383
  the pattern names one anyway. */
33188
33384
  "prop:label"?: (HelixTabPanel["label"]) | undefined;
33385
+ /** Fired the first time a `lazy` panel is shown, once its template's content is in. */
33386
+ "on:helix-load"?: ((e: HelixTabPanelHelixLoadElementEvent) => void) | undefined;
33189
33387
 
33190
33388
  /** Set the innerHTML of the element */
33191
33389
  innerHTML?: (string) | undefined;
@@ -36068,6 +36266,12 @@ consumer's server markup does not have. A sheet carries the resting
36068
36266
  arrangement in its own `:host` rule and the selectors describe only the
36069
36267
  departures, which is what `orientation` does. */
36070
36268
  placement?: (HelixToast["placement"]) | undefined;
36269
+ /** The edge a touch or a pen swipes a message toward to dismiss it: `end`,
36270
+ the end of the line, or `start`, `top` or `bottom`. Unset is `end`. */
36271
+ "swipe-direction"?: (HelixToast["swipeDirection"]) | undefined;
36272
+ /** The edge a touch or a pen swipes a message toward to dismiss it: `end`,
36273
+ the end of the line, or `start`, `top` or `bottom`. Unset is `end`. */
36274
+ swipeDirection?: (HelixToast["swipeDirection"]) | undefined;
36071
36275
 
36072
36276
  /** A message is being dismissed, by its control or by its timer. The message sends it, and you can listen for it on the region. Cancelable: canceling it keeps the message. */
36073
36277
  "onhelix-dismiss"?: ((e: HelixToastHelixDismissElementEvent) => void) | undefined;
@@ -36115,6 +36319,12 @@ consumer's server markup does not have. A sheet carries the resting
36115
36319
  arrangement in its own `:host` rule and the selectors describe only the
36116
36320
  departures, which is what `orientation` does. */
36117
36321
  "prop:placement"?: (HelixToast["placement"]) | undefined;
36322
+ /** The edge a touch or a pen swipes a message toward to dismiss it: `end`,
36323
+ the end of the line, or `start`, `top` or `bottom`. Unset is `end`. */
36324
+ "attr:swipe-direction"?: (HelixToast["swipeDirection"]) | undefined;
36325
+ /** The edge a touch or a pen swipes a message toward to dismiss it: `end`,
36326
+ the end of the line, or `start`, `top` or `bottom`. Unset is `end`. */
36327
+ "prop:swipeDirection"?: (HelixToast["swipeDirection"]) | undefined;
36118
36328
  /** A message is being dismissed, by its control or by its timer. The message sends it, and you can listen for it on the region. Cancelable: canceling it keeps the message. */
36119
36329
  "on:helix-dismiss"?: ((e: HelixToastHelixDismissElementEvent) => void) | undefined;
36120
36330
 
@@ -37122,6 +37332,14 @@ The shape is `Carousel`'s, which is the nearest thing in the library: a
37122
37332
  "next-label"?: (HelixTour["nextLabel"]) | undefined;
37123
37333
  /** Label for the control that goes on. */
37124
37334
  nextLabel?: (HelixTour["nextLabel"]) | undefined;
37335
+ /** What a press outside the current stop and its target does while the tour
37336
+ runs. Unset, nothing: the page stays usable. `close` ends the tour, as
37337
+ Skip does, and `block` refuses the press. */
37338
+ "outside-press"?: (HelixTour["outsidePress"]) | undefined;
37339
+ /** What a press outside the current stop and its target does while the tour
37340
+ runs. Unset, nothing: the page stays usable. `close` ends the tour, as
37341
+ Skip does, and `block` refuses the press. */
37342
+ outsidePress?: (HelixTour["outsidePress"]) | undefined;
37125
37343
  /** Draws each stop's place in the run in its panel, as well as saying it. */
37126
37344
  progress?: (HelixTour["progress"]) | undefined;
37127
37345
  /** Each stop's place in the run, with `{index}` and `{count}` filled in and
@@ -37206,6 +37424,14 @@ The shape is `Carousel`'s, which is the nearest thing in the library: a
37206
37424
  "attr:next-label"?: (HelixTour["nextLabel"]) | undefined;
37207
37425
  /** Label for the control that goes on. */
37208
37426
  "prop:nextLabel"?: (HelixTour["nextLabel"]) | undefined;
37427
+ /** What a press outside the current stop and its target does while the tour
37428
+ runs. Unset, nothing: the page stays usable. `close` ends the tour, as
37429
+ Skip does, and `block` refuses the press. */
37430
+ "attr:outside-press"?: (HelixTour["outsidePress"]) | undefined;
37431
+ /** What a press outside the current stop and its target does while the tour
37432
+ runs. Unset, nothing: the page stays usable. `close` ends the tour, as
37433
+ Skip does, and `block` refuses the press. */
37434
+ "prop:outsidePress"?: (HelixTour["outsidePress"]) | undefined;
37209
37435
  /** Draws each stop's place in the run in its panel, as well as saying it. */
37210
37436
  "prop:progress"?: (HelixTour["progress"]) | undefined;
37211
37437
  /** Each stop's place in the run, with `{index}` and `{count}` filled in and
@@ -37298,6 +37524,9 @@ heading. */
37298
37524
  Reflected, because the styled tier places a dialog and a floating panel by
37299
37525
  it, and unset at rest, so no default is written onto the host. */
37300
37526
  type?: (HelixTourStop["type"]) | undefined;
37527
+ /** Run as the tour reaches the stop, before it is shown: see the description
37528
+ above. A function, so it is set from script and has no attribute. */
37529
+ effect?: (HelixTourStop["effect"]) | undefined;
37301
37530
 
37302
37531
  /** Fired when one of the stop's controls is pressed, to move the tour. */
37303
37532
  "onhelix-tour-ask"?: ((e: HelixTourStopHelixTourAskElementEvent) => void) | undefined;
@@ -37348,6 +37577,9 @@ heading. */
37348
37577
  Reflected, because the styled tier places a dialog and a floating panel by
37349
37578
  it, and unset at rest, so no default is written onto the host. */
37350
37579
  "prop:type"?: (HelixTourStop["type"]) | undefined;
37580
+ /** Run as the tour reaches the stop, before it is shown: see the description
37581
+ above. A function, so it is set from script and has no attribute. */
37582
+ "prop:effect"?: (HelixTourStop["effect"]) | undefined;
37351
37583
  /** Fired when one of the stop's controls is pressed, to move the tour. */
37352
37584
  "on:helix-tour-ask"?: ((e: HelixTourStopHelixTourAskElementEvent) => void) | undefined;
37353
37585
 
@@ -40104,6 +40336,19 @@ export type CustomElements = {
40104
40336
  * It pairs with `material`: a bar that does not stick is only ever over the
40105
40337
  * top of the page, so `glass` and `transparent` have nothing to be
40106
40338
  * translucent against and the `scrolled` state never lands.
40339
+ * - `default-open`/`defaultOpen`: Whether the element starts open. Ignored once `open` is written.
40340
+ * - `open`: Whether the element is open.
40341
+ *
40342
+ * One property, not two, so `dialog.open` answers the question anyone
40343
+ * asking it meant. Writing always applies; `<helix-dialog open>` is the
40344
+ * same statement in markup.
40345
+ *
40346
+ * **Not reflected, and that is required rather than tidy.** Reflection
40347
+ * writes the resolved state back as an attribute, so an element that opened
40348
+ * itself would put `open` on its own host: cloned, serialized for
40349
+ * hydration, or diffed by a framework, it comes back holding whatever the
40350
+ * last reader did rather than what the author wrote. `:state(open)` carries
40351
+ * the resolved state for stylesheets, which is what the mirror is for.
40107
40352
  * - `content-align`/`contentAlign`: Where the middle region sits in the bar.
40108
40353
  *
40109
40354
  * Centered by default, which reads as the site's spine when the navigation is
@@ -40124,6 +40369,11 @@ export type CustomElements = {
40124
40369
  * - `menu-label`/`menuLabel`: The name of the toggle that opens a folded middle region.
40125
40370
  * - `scroller`: The id of the element whose scrolling lifts the bar, for an app shell that
40126
40371
  * scrolls a container instead of the window. Unset is the window.
40372
+ * - `toggle-placement`/`togglePlacement`: Where the toggle that opens a folded middle region sits: at the end of the
40373
+ * bar, after the trailing content, or with `start`, before the leading
40374
+ * content.
40375
+ *
40376
+ * Optional, so the resting bar writes no attribute onto the host.
40127
40377
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
40128
40378
  *
40129
40379
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -40149,6 +40399,9 @@ export type CustomElements = {
40149
40399
  *
40150
40400
  * Events that will be emitted by the component.
40151
40401
  *
40402
+ * - `toggle`: The folded region opened or closed. The event carries `newState` and `oldState`.
40403
+ * - `helix-before-close`: The folded region is about to close. Cancelable: cancel it to keep it open.
40404
+ * - `helix-before-open`: The folded region is about to open. Cancelable: cancel it to keep it closed.
40152
40405
  * - `helix-scrolled`: Fired when the page crosses the scroll threshold, with the new state. A custom state cannot be observed the way an attribute can, so listen for this event to follow it. The event uses the header's own threshold and hysteresis, so you do not need a second scroll listener.
40153
40406
  *
40154
40407
  * ## Slots
@@ -40160,6 +40413,20 @@ export type CustomElements = {
40160
40413
  * - `start`: Leading content, usually a wordmark.
40161
40414
  * - `menu-icon`: Replaces the glyph inside the toggle that opens a folded middle region.
40162
40415
  *
40416
+ * ## Methods
40417
+ *
40418
+ * Methods that can be called to access component functionality.
40419
+ *
40420
+ * - `requestOpen(next: boolean) => boolean`: Requests that the element open or close, and returns whether the change
40421
+ * was applied.
40422
+ *
40423
+ * Announces before it acts, so `preventDefault()` on the `helix-before-open` or
40424
+ * `helix-before-close` is a refusal and nothing moves. Nobody refusing means the
40425
+ * element opens or closes itself, whether or not a consumer declared
40426
+ * `open`: a declared property is a seed and a correction, and a consumer
40427
+ * who wants the decision for themselves refuses it and assigns their own.
40428
+ * - `toggleOpen() => boolean`: Requests the opposite of the current state.
40429
+ *
40163
40430
  * ## CSS Custom Properties
40164
40431
  *
40165
40432
  * CSS variables available for styling the component.
@@ -41833,6 +42100,9 @@ export type CustomElements = {
41833
42100
  * separate actions. The semantics and the joining are separate questions:
41834
42101
  * `role="group"` and a shared name are what make a set of buttons a set, and
41835
42102
  * `helix-flex` gives the spacing without the group.
42103
+ * - `disallow-empty-selection`/`disallowEmptySelection`: Keeps at least one button pressed once one is, as React Aria's
42104
+ * `disallowEmptySelection`: a press that would leave none pressed is
42105
+ * refused.
41836
42106
  * - `label`: The group's name, read by screen readers.
41837
42107
  *
41838
42108
  * On the host through internals, so an author's `aria-label` still overrides
@@ -42244,6 +42514,7 @@ export type CustomElements = {
42244
42514
  * These can be used to apply styling when a component is in a given state.
42245
42515
  *
42246
42516
  * - `pending`: The button is pending: `pending` is set. A ring turns over its hidden words.
42517
+ * - `pressed`: A Button Group in a selection mode has this button pressed.
42247
42518
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
42248
42519
  */
42249
42520
  "helix-button": Partial<
@@ -46058,6 +46329,12 @@ export type CustomElements = {
46058
46329
  * how many are left, written in the locale, and each language writes the
46059
46330
  * forms it has: `{count, plural, one {# polecenie} few {# polecenia} many
46060
46331
  * {# poleceń} other {# polecenia}}`.
46332
+ * - `filterMatch`: Whether a command is kept by the filter: a function given the command's
46333
+ * words and the filter, trimmed, that returns `true` to keep it showing, as
46334
+ * React Aria's `Autocomplete` takes `filter`. See Listbox's `filterMatch`.
46335
+ *
46336
+ * Absent, a command is kept where its words hold the filter, in any case. A
46337
+ * property only, there being no way to write a function in markup. (property only)
46061
46338
  * - `items`: The commands as data, for a palette too long to draw whole: each a value,
46062
46339
  * which is also its words, or a record with a `value`, a `label` and
46063
46340
  * `disabled`. Handed to the list, which draws only the commands in sight and
@@ -46156,6 +46433,7 @@ export type CustomElements = {
46156
46433
  * - `listbox-loading`: The text shown while the commands are loading.
46157
46434
  * - `listbox-search`: The region that holds the filter field.
46158
46435
  * - `listbox-search-field`: The filter field.
46436
+ * - `live`: The region a screen reader announces the page shown from, by the words of the command that opens it, drawn once there is one to say. Visually hidden in the styled tier.
46159
46437
  *
46160
46438
  * ## CSS States
46161
46439
  *
@@ -46420,6 +46698,7 @@ export type CustomElements = {
46420
46698
  * - `copied`: The moment after a successful copy, while `copied-label` names the button.
46421
46699
  * - `failed`: The moment after a press that put nothing on the clipboard, while `error-label` names the button.
46422
46700
  * - `pending`: The button is pending: `pending` is set.
46701
+ * - `pressed`: A Button Group in a selection mode has this button pressed.
46423
46702
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
46424
46703
  */
46425
46704
  "helix-copy-button": Partial<
@@ -51394,6 +51673,7 @@ export type CustomElements = {
51394
51673
  * These can be used to apply styling when a component is in a given state.
51395
51674
  *
51396
51675
  * - `pending`: The button is pending: `pending` is set. A ring turns over its hidden icon.
51676
+ * - `pressed`: A Button Group in a selection mode has this button pressed.
51397
51677
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
51398
51678
  */
51399
51679
  "helix-icon-button": Partial<
@@ -52563,6 +52843,8 @@ export type CustomElements = {
52563
52843
  *
52564
52844
  * These can be used to apply styling when a component is in a given state.
52565
52845
  *
52846
+ * - `entering`: From the moment the viewer opens until its entrance has finished.
52847
+ * - `exiting`: From the moment the viewer closes until its exit has finished.
52566
52848
  * - `fullscreen`: While the viewer fills the screen.
52567
52849
  * - `idle`: The user has been still long enough for the controls to hide.
52568
52850
  * - `open`: While the viewer is open.
@@ -52997,7 +53279,9 @@ export type CustomElements = {
52997
53279
  * Not reflected, as a state never is. `row-current` is the part a
52998
53280
  * stylesheet draws it from.
52999
53281
  * - `disabled`: Takes the row out of reach in a list with `selection-mode`: the arrow keys
53000
- * pass over it and it cannot be selected or acted on.
53282
+ * pass over it and it cannot be selected or acted on. In a list with
53283
+ * `disabled-behavior="selection"`, it cannot be selected and is reached and
53284
+ * acted on as any row is.
53001
53285
  * - `href`: The URL the row links to. Leave it empty for a row that is not a link.
53002
53286
  *
53003
53287
  * Empty rather than optional, and unset by default: a list is not always a
@@ -53024,6 +53308,9 @@ export type CustomElements = {
53024
53308
  *
53025
53309
  * Written by the list from its own `value`, and unset where nothing can be
53026
53310
  * selected, which keeps `aria-selected` off a list that does not select. (property only)
53311
+ * - `selectionOnly`: Whether `disabled` takes the row out of selection alone, written by a list
53312
+ * with `disabled-behavior="selection"`. No attribute: it is coordination
53313
+ * between elements, as `focusable` is. (property only)
53027
53314
  * - `words`: The row's words, or none where the children are not known yet. (property only) (readonly)
53028
53315
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
53029
53316
  *
@@ -53101,6 +53388,7 @@ export type CustomElements = {
53101
53388
  * - `dragging`: The row is being moved, in a `reorderable` list.
53102
53389
  * - `drop-after`: The row being moved goes after this one when it is dropped.
53103
53390
  * - `drop-before`: The row being moved goes before this one when it is dropped.
53391
+ * - `focus-visible`: The row's cell has keyboard focus that the browser shows, in a list with `selection-mode`.
53104
53392
  * - `selected`: The row is selected, in a list that selects.
53105
53393
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
53106
53394
  */
@@ -53133,6 +53421,12 @@ export type CustomElements = {
53133
53421
  * `unordered` too, where it numbers what a bullet did not.
53134
53422
  * - `canceled-label`/`canceledLabel`: What screen readers hear when a held row is put back, or a move is
53135
53423
  * refused, in a `reorderable` list.
53424
+ * - `disabled-behavior`/`disabledBehavior`: What `disabled` takes from a row, in a list that selects: `all`, which
53425
+ * passes over the row, or `selection`, which keeps the row out of the
53426
+ * selection and lets the keys reach it and Enter or a press act on it, as
53427
+ * React Aria's GridList takes `disabledBehavior`.
53428
+ *
53429
+ * Absent is `all`.
53136
53430
  * - `dropped-label`/`droppedLabel`: What screen readers hear when a row is dropped, in a `reorderable` list.
53137
53431
  * - `empty-label`/`emptyLabel`: The text of the row shown while the list has no rows, where the `empty`
53138
53432
  * slot is empty. Empty, the default, shows no row.
@@ -53432,6 +53726,13 @@ export type CustomElements = {
53432
53726
  * imperatively later, and nothing is hydrating by then.
53433
53727
  *
53434
53728
  * Here rather than on each control.
53729
+ * - `filterMatch`: Whether an option is kept by the filter: a function given the option's
53730
+ * words and the filter, trimmed, that returns `true` to keep it showing, as
53731
+ * React Aria's `Autocomplete` takes `filter`. For matching that ignores
53732
+ * accents, matches the start of each word, or matches out of order.
53733
+ *
53734
+ * Absent, an option is kept where its words hold the filter, in any case. A
53735
+ * property only, there being no way to write a function in markup. (property only)
53435
53736
  * - `items`: The options as data, for a list too long to draw whole: each a value,
53436
53737
  * which is also its words, or a record with a `value`, a `label` and
53437
53738
  * `disabled`. Set, the list draws only the options in sight, and the ones
@@ -53468,7 +53769,10 @@ export type CustomElements = {
53468
53769
  * Descendants rather than children, because a group puts a level between the
53469
53770
  * list and its options and the keyboard has to move through a grouped list
53470
53771
  * exactly as it moves through a flat one. (property only) (readonly)
53471
- * - `values`: The chosen values, as an array whether or not `multiple` is set. (property only) (readonly)
53772
+ * - `values`: The chosen values, as an array whether or not `multiple` is set.
53773
+ *
53774
+ * Read against the options' values, so an option whose value holds a comma
53775
+ * is one value. See `chosenValues`. (property only) (readonly)
53472
53776
  * - `validity`: Whether the control meets its constraints, and why not. (property only) (readonly)
53473
53777
  * - `validationMessage`: The message the browser would show for the control, or an empty string. (property only) (readonly)
53474
53778
  * - `willValidate`: Whether the control is checked when its form is submitted. (property only) (readonly)
@@ -55301,6 +55605,10 @@ export type CustomElements = {
55301
55605
  * - `drilled`: A submenu's page is showing, so content that is not a row can hide with the top page.
55302
55606
  * - `mark`: A row on the current page has a checkbox or a link, so every row keeps the trailing column.
55303
55607
  * - `open`: While the menu is open.
55608
+ * - `placed-bottom`: While the open panel sits below its trigger.
55609
+ * - `placed-left`: While the open panel sits to the left of its trigger.
55610
+ * - `placed-right`: While the open panel sits to the right of its trigger.
55611
+ * - `placed-top`: While the open panel sits above its trigger.
55304
55612
  * - `start`: A row on the current page has content in its leading column, so every row keeps that column.
55305
55613
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
55306
55614
  */
@@ -56351,8 +56659,11 @@ export type CustomElements = {
56351
56659
  * imperatively later, and nothing is hydrating by then.
56352
56660
  *
56353
56661
  * Here rather than on each control.
56354
- * - `valueAsNumber`: The value as a number, or `NaN` while the control is empty.
56662
+ * - `valueAsNumber`: The value as a number, or `NaN` while the control is empty or does not
56663
+ * hold a number.
56355
56664
  *
56665
+ * Read in the locale and the format, as the form reads it, so `1,5` typed
56666
+ * in a locale with a decimal comma is 1.5 here while the form holds 1.5.
56356
56667
  * `NaN` and not zero, which is the trap the platform already avoids: `Number('')`
56357
56668
  * is zero, so an empty control would report a number it does not hold and a
56358
56669
  * form would submit it. (property only)
@@ -60796,7 +61107,8 @@ export type CustomElements = {
60796
61107
  * - `label`: What is loading, read out as the placeholder's name, such as "Loading
60797
61108
  * profile".
60798
61109
  *
60799
- * Absent hides the placeholder from screen readers.
61110
+ * Absent hides the placeholder from screen readers. Around content, the name
61111
+ * is read while `loading` is set, and the loaded content is read as it is.
60800
61112
  * - `loading`: Whether the content inside is still loading, which keeps it inert and
60801
61113
  * draws the placeholder over it.
60802
61114
  *
@@ -63300,6 +63612,8 @@ export type CustomElements = {
63300
63612
  *
63301
63613
  * Component attributes and properties that can be applied to the element or by using JavaScript.
63302
63614
  *
63615
+ * - `lazy`: Whether the panel's content waits in a `<template>` until the panel is
63616
+ * first shown.
63303
63617
  * - `selected`: Whether this panel is the visible one.
63304
63618
  * - `value`: Pairs the panel with the tab of the same value.
63305
63619
  * - `label`: The name of the panel, which is the text of the tab that opens it.
@@ -63333,6 +63647,12 @@ export type CustomElements = {
63333
63647
  * browser harness's awaits it alone: a browser always runs the frame, and a
63334
63648
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
63335
63649
  *
63650
+ * ## Events
63651
+ *
63652
+ * Events that will be emitted by the component.
63653
+ *
63654
+ * - `helix-load`: Fired the first time a `lazy` panel is shown, once its template's content is in.
63655
+ *
63336
63656
  * ## Slots
63337
63657
  *
63338
63658
  * Areas where markup can be added to the component.
@@ -63355,6 +63675,7 @@ export type CustomElements = {
63355
63675
  *
63356
63676
  * These can be used to apply styling when a component is in a given state.
63357
63677
  *
63678
+ * - `loaded`: Once a `lazy` panel has been shown and its content is in.
63358
63679
  * - `selected`: While its tab is the one selected.
63359
63680
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
63360
63681
  */
@@ -63464,6 +63785,8 @@ export type CustomElements = {
63464
63785
  * - `(default)`: The tabs, as direct children of this element.
63465
63786
  * - `indicator`: A mark of your own, drawn inside the `indicator` part, where the selected tab's place and size reach it.
63466
63787
  * - `panels`: The panels, as direct children of this element. Panels inside a wrapper are not paired with tabs, because pairing reads only the direct children.
63788
+ * - `scroll-end-icon`: Replaces the glyph on the button that scrolls the strip toward its end.
63789
+ * - `scroll-start-icon`: Replaces the glyph on the button that scrolls the strip toward its start.
63467
63790
  *
63468
63791
  * ## Methods
63469
63792
  *
@@ -63497,7 +63820,9 @@ export type CustomElements = {
63497
63820
  * - `indicator`: The mark that moves to the selected tab. It carries the selected tab's place and size as `--indicator-x`, `--indicator-y`, `--indicator-inline-size` and `--indicator-block-size`.
63498
63821
  * - `panels`: The panel container.
63499
63822
  * - `scroll-end`: The button that scrolls the strip toward its end, shown under `scroll-controls` while there is more that way. It holds to the end of the strip.
63823
+ * - `scroll-end-mark`: The glyph on that button, where none is slotted.
63500
63824
  * - `scroll-start`: The button that scrolls the strip toward its start, shown under `scroll-controls` while there is more that way. It holds to the start of the strip.
63825
+ * - `scroll-start-mark`: The glyph on that button, where none is slotted.
63501
63826
  * - `tabs`: The tab list.
63502
63827
  *
63503
63828
  * ## CSS States
@@ -63574,6 +63899,7 @@ export type CustomElements = {
63574
63899
  * Areas where markup can be added to the component.
63575
63900
  *
63576
63901
  * - `(default)`: The tab's label.
63902
+ * - `dismiss-icon`: Replaces the glyph on the mark that closes a `dismissible` tab.
63577
63903
  *
63578
63904
  * ## Methods
63579
63905
  *
@@ -63612,6 +63938,7 @@ export type CustomElements = {
63612
63938
  * Custom selectors for styling elements within the component.
63613
63939
  *
63614
63940
  * - `dismiss`: The mark a pointer presses to close a `dismissible` tab.
63941
+ * - `dismiss-mark`: The glyph on that mark, where none is slotted.
63615
63942
  * - `tab`: The tab itself.
63616
63943
  *
63617
63944
  * ## CSS States
@@ -65414,6 +65741,7 @@ export type CustomElements = {
65414
65741
  * - `--toast-tone-color`: Color of the mark and the countdown bar. Unset, each `tone` takes its own color, so set it per tone, as in `helix-toast-item[tone="danger"]`.
65415
65742
  * - `--toast-duration`: How long this message stays, in milliseconds, for a progress hint.
65416
65743
  * - `--toast-swipe-x`: How far a swipe has moved the message across, in pixels, toward the right.
65744
+ * - `--toast-swipe-y`: How far a swipe has moved the message down, in pixels, under a `swipe-direction` of `top` or `bottom`.
65417
65745
  *
65418
65746
  * ## CSS Parts
65419
65747
  *
@@ -65435,7 +65763,7 @@ export type CustomElements = {
65435
65763
  * These can be used to apply styling when a component is in a given state.
65436
65764
  *
65437
65765
  * - `closed`: The message has been dismissed and is hidden, or leaving.
65438
- * - `paused`: The dismiss timer is paused, while a pointer or focus is on the message, or while the page is hidden.
65766
+ * - `paused`: The dismiss timer is paused, while a pointer or focus is on the message or in the stack, or while the page is hidden.
65439
65767
  * - `waiting`: The region holds the message back, past its `max-visible`, until a message before it goes.
65440
65768
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
65441
65769
  */
@@ -65489,6 +65817,8 @@ export type CustomElements = {
65489
65817
  * consumer's server markup does not have. A sheet carries the resting
65490
65818
  * arrangement in its own `:host` rule and the selectors describe only the
65491
65819
  * departures, which is what `orientation` does.
65820
+ * - `swipe-direction`/`swipeDirection`: The edge a touch or a pen swipes a message toward to dismiss it: `end`,
65821
+ * the end of the line, or `start`, `top` or `bottom`. Unset is `end`.
65492
65822
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
65493
65823
  *
65494
65824
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -66334,6 +66664,9 @@ export type CustomElements = {
66334
66664
  * `undefined` until somebody sets one.
66335
66665
  * - `label`: The tour's name, read by screen readers, such as "Getting started".
66336
66666
  * - `next-label`/`nextLabel`: Label for the control that goes on.
66667
+ * - `outside-press`/`outsidePress`: What a press outside the current stop and its target does while the tour
66668
+ * runs. Unset, nothing: the page stays usable. `close` ends the tour, as
66669
+ * Skip does, and `block` refuses the press.
66337
66670
  * - `progress`: Draws each stop's place in the run in its panel, as well as saying it.
66338
66671
  * - `progress-label`/`progressLabel`: Each stop's place in the run, with `{index}` and `{count}` filled in and
66339
66672
  * written in the locale. Translate it with the rest of your text.
@@ -66426,6 +66759,7 @@ export type CustomElements = {
66426
66759
  * These can be used to apply styling when a component is in a given state.
66427
66760
  *
66428
66761
  * - `open`: While the tour is running.
66762
+ * - `preparing`: While the tour waits for the current stop's `effect` before showing the stop.
66429
66763
  * - `waiting`: While the tour waits at a `wait` stop for its target to be on the page.
66430
66764
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
66431
66765
  */
@@ -66465,6 +66799,8 @@ export type CustomElements = {
66465
66799
  *
66466
66800
  * Reflected, because the styled tier places a dialog and a floating panel by
66467
66801
  * it, and unset at rest, so no default is written onto the host.
66802
+ * - `effect`: Run as the tour reaches the stop, before it is shown: see the description
66803
+ * above. A function, so it is set from script and has no attribute. (property only)
66468
66804
  * - `target`: The element the stop points at, or `null` when no element has the `for` id. (property only) (readonly)
66469
66805
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
66470
66806
  *
@@ -66558,6 +66894,8 @@ export type CustomElements = {
66558
66894
  *
66559
66895
  * These can be used to apply styling when a component is in a given state.
66560
66896
  *
66897
+ * - `entering`: From the moment the stop is shown until its entrance has finished.
66898
+ * - `exiting`: From the moment the stop is left until its exit has finished.
66561
66899
  * - `placed-bottom`: The panel sits below its target.
66562
66900
  * - `placed-left`: The panel sits to the left of its target.
66563
66901
  * - `placed-right`: The panel sits to the right of its target.
@@ -68506,6 +68844,19 @@ export type CustomElementsSolidJs = {
68506
68844
  * It pairs with `material`: a bar that does not stick is only ever over the
68507
68845
  * top of the page, so `glass` and `transparent` have nothing to be
68508
68846
  * translucent against and the `scrolled` state never lands.
68847
+ * - `default-open`/`defaultOpen`: Whether the element starts open. Ignored once `open` is written.
68848
+ * - `open`: Whether the element is open.
68849
+ *
68850
+ * One property, not two, so `dialog.open` answers the question anyone
68851
+ * asking it meant. Writing always applies; `<helix-dialog open>` is the
68852
+ * same statement in markup.
68853
+ *
68854
+ * **Not reflected, and that is required rather than tidy.** Reflection
68855
+ * writes the resolved state back as an attribute, so an element that opened
68856
+ * itself would put `open` on its own host: cloned, serialized for
68857
+ * hydration, or diffed by a framework, it comes back holding whatever the
68858
+ * last reader did rather than what the author wrote. `:state(open)` carries
68859
+ * the resolved state for stylesheets, which is what the mirror is for.
68509
68860
  * - `content-align`/`contentAlign`: Where the middle region sits in the bar.
68510
68861
  *
68511
68862
  * Centered by default, which reads as the site's spine when the navigation is
@@ -68526,6 +68877,11 @@ export type CustomElementsSolidJs = {
68526
68877
  * - `menu-label`/`menuLabel`: The name of the toggle that opens a folded middle region.
68527
68878
  * - `scroller`: The id of the element whose scrolling lifts the bar, for an app shell that
68528
68879
  * scrolls a container instead of the window. Unset is the window.
68880
+ * - `toggle-placement`/`togglePlacement`: Where the toggle that opens a folded middle region sits: at the end of the
68881
+ * bar, after the trailing content, or with `start`, before the leading
68882
+ * content.
68883
+ *
68884
+ * Optional, so the resting bar writes no attribute onto the host.
68529
68885
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
68530
68886
  *
68531
68887
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -68551,6 +68907,9 @@ export type CustomElementsSolidJs = {
68551
68907
  *
68552
68908
  * Events that will be emitted by the component.
68553
68909
  *
68910
+ * - `toggle`: The folded region opened or closed. The event carries `newState` and `oldState`.
68911
+ * - `helix-before-close`: The folded region is about to close. Cancelable: cancel it to keep it open.
68912
+ * - `helix-before-open`: The folded region is about to open. Cancelable: cancel it to keep it closed.
68554
68913
  * - `helix-scrolled`: Fired when the page crosses the scroll threshold, with the new state. A custom state cannot be observed the way an attribute can, so listen for this event to follow it. The event uses the header's own threshold and hysteresis, so you do not need a second scroll listener.
68555
68914
  *
68556
68915
  * ## Slots
@@ -68562,6 +68921,20 @@ export type CustomElementsSolidJs = {
68562
68921
  * - `start`: Leading content, usually a wordmark.
68563
68922
  * - `menu-icon`: Replaces the glyph inside the toggle that opens a folded middle region.
68564
68923
  *
68924
+ * ## Methods
68925
+ *
68926
+ * Methods that can be called to access component functionality.
68927
+ *
68928
+ * - `requestOpen(next: boolean) => boolean`: Requests that the element open or close, and returns whether the change
68929
+ * was applied.
68930
+ *
68931
+ * Announces before it acts, so `preventDefault()` on the `helix-before-open` or
68932
+ * `helix-before-close` is a refusal and nothing moves. Nobody refusing means the
68933
+ * element opens or closes itself, whether or not a consumer declared
68934
+ * `open`: a declared property is a seed and a correction, and a consumer
68935
+ * who wants the decision for themselves refuses it and assigns their own.
68936
+ * - `toggleOpen() => boolean`: Requests the opposite of the current state.
68937
+ *
68565
68938
  * ## CSS Custom Properties
68566
68939
  *
68567
68940
  * CSS variables available for styling the component.
@@ -70266,6 +70639,9 @@ export type CustomElementsSolidJs = {
70266
70639
  * separate actions. The semantics and the joining are separate questions:
70267
70640
  * `role="group"` and a shared name are what make a set of buttons a set, and
70268
70641
  * `helix-flex` gives the spacing without the group.
70642
+ * - `disallow-empty-selection`/`disallowEmptySelection`: Keeps at least one button pressed once one is, as React Aria's
70643
+ * `disallowEmptySelection`: a press that would leave none pressed is
70644
+ * refused.
70269
70645
  * - `label`: The group's name, read by screen readers.
70270
70646
  *
70271
70647
  * On the host through internals, so an author's `aria-label` still overrides
@@ -70680,6 +71056,7 @@ export type CustomElementsSolidJs = {
70680
71056
  * These can be used to apply styling when a component is in a given state.
70681
71057
  *
70682
71058
  * - `pending`: The button is pending: `pending` is set. A ring turns over its hidden words.
71059
+ * - `pressed`: A Button Group in a selection mode has this button pressed.
70683
71060
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
70684
71061
  */
70685
71062
  "helix-button": Partial<
@@ -74542,6 +74919,12 @@ export type CustomElementsSolidJs = {
74542
74919
  * how many are left, written in the locale, and each language writes the
74543
74920
  * forms it has: `{count, plural, one {# polecenie} few {# polecenia} many
74544
74921
  * {# poleceń} other {# polecenia}}`.
74922
+ * - `filterMatch`: Whether a command is kept by the filter: a function given the command's
74923
+ * words and the filter, trimmed, that returns `true` to keep it showing, as
74924
+ * React Aria's `Autocomplete` takes `filter`. See Listbox's `filterMatch`.
74925
+ *
74926
+ * Absent, a command is kept where its words hold the filter, in any case. A
74927
+ * property only, there being no way to write a function in markup. (property only)
74545
74928
  * - `items`: The commands as data, for a palette too long to draw whole: each a value,
74546
74929
  * which is also its words, or a record with a `value`, a `label` and
74547
74930
  * `disabled`. Handed to the list, which draws only the commands in sight and
@@ -74640,6 +75023,7 @@ export type CustomElementsSolidJs = {
74640
75023
  * - `listbox-loading`: The text shown while the commands are loading.
74641
75024
  * - `listbox-search`: The region that holds the filter field.
74642
75025
  * - `listbox-search-field`: The filter field.
75026
+ * - `live`: The region a screen reader announces the page shown from, by the words of the command that opens it, drawn once there is one to say. Visually hidden in the styled tier.
74643
75027
  *
74644
75028
  * ## CSS States
74645
75029
  *
@@ -74907,6 +75291,7 @@ export type CustomElementsSolidJs = {
74907
75291
  * - `copied`: The moment after a successful copy, while `copied-label` names the button.
74908
75292
  * - `failed`: The moment after a press that put nothing on the clipboard, while `error-label` names the button.
74909
75293
  * - `pending`: The button is pending: `pending` is set.
75294
+ * - `pressed`: A Button Group in a selection mode has this button pressed.
74910
75295
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
74911
75296
  */
74912
75297
  "helix-copy-button": Partial<
@@ -79953,6 +80338,7 @@ export type CustomElementsSolidJs = {
79953
80338
  * These can be used to apply styling when a component is in a given state.
79954
80339
  *
79955
80340
  * - `pending`: The button is pending: `pending` is set. A ring turns over its hidden icon.
80341
+ * - `pressed`: A Button Group in a selection mode has this button pressed.
79956
80342
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
79957
80343
  */
79958
80344
  "helix-icon-button": Partial<
@@ -81145,6 +81531,8 @@ export type CustomElementsSolidJs = {
81145
81531
  *
81146
81532
  * These can be used to apply styling when a component is in a given state.
81147
81533
  *
81534
+ * - `entering`: From the moment the viewer opens until its entrance has finished.
81535
+ * - `exiting`: From the moment the viewer closes until its exit has finished.
81148
81536
  * - `fullscreen`: While the viewer fills the screen.
81149
81537
  * - `idle`: The user has been still long enough for the controls to hide.
81150
81538
  * - `open`: While the viewer is open.
@@ -81585,7 +81973,9 @@ export type CustomElementsSolidJs = {
81585
81973
  * Not reflected, as a state never is. `row-current` is the part a
81586
81974
  * stylesheet draws it from.
81587
81975
  * - `disabled`: Takes the row out of reach in a list with `selection-mode`: the arrow keys
81588
- * pass over it and it cannot be selected or acted on.
81976
+ * pass over it and it cannot be selected or acted on. In a list with
81977
+ * `disabled-behavior="selection"`, it cannot be selected and is reached and
81978
+ * acted on as any row is.
81589
81979
  * - `href`: The URL the row links to. Leave it empty for a row that is not a link.
81590
81980
  *
81591
81981
  * Empty rather than optional, and unset by default: a list is not always a
@@ -81612,6 +82002,9 @@ export type CustomElementsSolidJs = {
81612
82002
  *
81613
82003
  * Written by the list from its own `value`, and unset where nothing can be
81614
82004
  * selected, which keeps `aria-selected` off a list that does not select. (property only)
82005
+ * - `selectionOnly`: Whether `disabled` takes the row out of selection alone, written by a list
82006
+ * with `disabled-behavior="selection"`. No attribute: it is coordination
82007
+ * between elements, as `focusable` is. (property only)
81615
82008
  * - `words`: The row's words, or none where the children are not known yet. (property only) (readonly)
81616
82009
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
81617
82010
  *
@@ -81689,6 +82082,7 @@ export type CustomElementsSolidJs = {
81689
82082
  * - `dragging`: The row is being moved, in a `reorderable` list.
81690
82083
  * - `drop-after`: The row being moved goes after this one when it is dropped.
81691
82084
  * - `drop-before`: The row being moved goes before this one when it is dropped.
82085
+ * - `focus-visible`: The row's cell has keyboard focus that the browser shows, in a list with `selection-mode`.
81692
82086
  * - `selected`: The row is selected, in a list that selects.
81693
82087
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
81694
82088
  */
@@ -81724,6 +82118,12 @@ export type CustomElementsSolidJs = {
81724
82118
  * `unordered` too, where it numbers what a bullet did not.
81725
82119
  * - `canceled-label`/`canceledLabel`: What screen readers hear when a held row is put back, or a move is
81726
82120
  * refused, in a `reorderable` list.
82121
+ * - `disabled-behavior`/`disabledBehavior`: What `disabled` takes from a row, in a list that selects: `all`, which
82122
+ * passes over the row, or `selection`, which keeps the row out of the
82123
+ * selection and lets the keys reach it and Enter or a press act on it, as
82124
+ * React Aria's GridList takes `disabledBehavior`.
82125
+ *
82126
+ * Absent is `all`.
81727
82127
  * - `dropped-label`/`droppedLabel`: What screen readers hear when a row is dropped, in a `reorderable` list.
81728
82128
  * - `empty-label`/`emptyLabel`: The text of the row shown while the list has no rows, where the `empty`
81729
82129
  * slot is empty. Empty, the default, shows no row.
@@ -82025,6 +82425,13 @@ export type CustomElementsSolidJs = {
82025
82425
  * imperatively later, and nothing is hydrating by then.
82026
82426
  *
82027
82427
  * Here rather than on each control.
82428
+ * - `filterMatch`: Whether an option is kept by the filter: a function given the option's
82429
+ * words and the filter, trimmed, that returns `true` to keep it showing, as
82430
+ * React Aria's `Autocomplete` takes `filter`. For matching that ignores
82431
+ * accents, matches the start of each word, or matches out of order.
82432
+ *
82433
+ * Absent, an option is kept where its words hold the filter, in any case. A
82434
+ * property only, there being no way to write a function in markup. (property only)
82028
82435
  * - `items`: The options as data, for a list too long to draw whole: each a value,
82029
82436
  * which is also its words, or a record with a `value`, a `label` and
82030
82437
  * `disabled`. Set, the list draws only the options in sight, and the ones
@@ -82061,7 +82468,10 @@ export type CustomElementsSolidJs = {
82061
82468
  * Descendants rather than children, because a group puts a level between the
82062
82469
  * list and its options and the keyboard has to move through a grouped list
82063
82470
  * exactly as it moves through a flat one. (property only) (readonly)
82064
- * - `values`: The chosen values, as an array whether or not `multiple` is set. (property only) (readonly)
82471
+ * - `values`: The chosen values, as an array whether or not `multiple` is set.
82472
+ *
82473
+ * Read against the options' values, so an option whose value holds a comma
82474
+ * is one value. See `chosenValues`. (property only) (readonly)
82065
82475
  * - `validity`: Whether the control meets its constraints, and why not. (property only) (readonly)
82066
82476
  * - `validationMessage`: The message the browser would show for the control, or an empty string. (property only) (readonly)
82067
82477
  * - `willValidate`: Whether the control is checked when its form is submitted. (property only) (readonly)
@@ -83938,6 +84348,10 @@ export type CustomElementsSolidJs = {
83938
84348
  * - `drilled`: A submenu's page is showing, so content that is not a row can hide with the top page.
83939
84349
  * - `mark`: A row on the current page has a checkbox or a link, so every row keeps the trailing column.
83940
84350
  * - `open`: While the menu is open.
84351
+ * - `placed-bottom`: While the open panel sits below its trigger.
84352
+ * - `placed-left`: While the open panel sits to the left of its trigger.
84353
+ * - `placed-right`: While the open panel sits to the right of its trigger.
84354
+ * - `placed-top`: While the open panel sits above its trigger.
83941
84355
  * - `start`: A row on the current page has content in its leading column, so every row keeps that column.
83942
84356
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
83943
84357
  */
@@ -85010,8 +85424,11 @@ export type CustomElementsSolidJs = {
85010
85424
  * imperatively later, and nothing is hydrating by then.
85011
85425
  *
85012
85426
  * Here rather than on each control.
85013
- * - `valueAsNumber`: The value as a number, or `NaN` while the control is empty.
85427
+ * - `valueAsNumber`: The value as a number, or `NaN` while the control is empty or does not
85428
+ * hold a number.
85014
85429
  *
85430
+ * Read in the locale and the format, as the form reads it, so `1,5` typed
85431
+ * in a locale with a decimal comma is 1.5 here while the form holds 1.5.
85015
85432
  * `NaN` and not zero, which is the trap the platform already avoids: `Number('')`
85016
85433
  * is zero, so an empty control would report a number it does not hold and a
85017
85434
  * form would submit it. (property only)
@@ -89539,7 +89956,8 @@ export type CustomElementsSolidJs = {
89539
89956
  * - `label`: What is loading, read out as the placeholder's name, such as "Loading
89540
89957
  * profile".
89541
89958
  *
89542
- * Absent hides the placeholder from screen readers.
89959
+ * Absent hides the placeholder from screen readers. Around content, the name
89960
+ * is read while `loading` is set, and the loaded content is read as it is.
89543
89961
  * - `loading`: Whether the content inside is still loading, which keeps it inert and
89544
89962
  * draws the placeholder over it.
89545
89963
  *
@@ -92096,6 +92514,8 @@ export type CustomElementsSolidJs = {
92096
92514
  *
92097
92515
  * Component attributes and properties that can be applied to the element or by using JavaScript.
92098
92516
  *
92517
+ * - `lazy`: Whether the panel's content waits in a `<template>` until the panel is
92518
+ * first shown.
92099
92519
  * - `selected`: Whether this panel is the visible one.
92100
92520
  * - `value`: Pairs the panel with the tab of the same value.
92101
92521
  * - `label`: The name of the panel, which is the text of the tab that opens it.
@@ -92129,6 +92549,12 @@ export type CustomElementsSolidJs = {
92129
92549
  * browser harness's awaits it alone: a browser always runs the frame, and a
92130
92550
  * timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
92131
92551
  *
92552
+ * ## Events
92553
+ *
92554
+ * Events that will be emitted by the component.
92555
+ *
92556
+ * - `helix-load`: Fired the first time a `lazy` panel is shown, once its template's content is in.
92557
+ *
92132
92558
  * ## Slots
92133
92559
  *
92134
92560
  * Areas where markup can be added to the component.
@@ -92151,6 +92577,7 @@ export type CustomElementsSolidJs = {
92151
92577
  *
92152
92578
  * These can be used to apply styling when a component is in a given state.
92153
92579
  *
92580
+ * - `loaded`: Once a `lazy` panel has been shown and its content is in.
92154
92581
  * - `selected`: While its tab is the one selected.
92155
92582
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
92156
92583
  */
@@ -92263,6 +92690,8 @@ export type CustomElementsSolidJs = {
92263
92690
  * - `(default)`: The tabs, as direct children of this element.
92264
92691
  * - `indicator`: A mark of your own, drawn inside the `indicator` part, where the selected tab's place and size reach it.
92265
92692
  * - `panels`: The panels, as direct children of this element. Panels inside a wrapper are not paired with tabs, because pairing reads only the direct children.
92693
+ * - `scroll-end-icon`: Replaces the glyph on the button that scrolls the strip toward its end.
92694
+ * - `scroll-start-icon`: Replaces the glyph on the button that scrolls the strip toward its start.
92266
92695
  *
92267
92696
  * ## Methods
92268
92697
  *
@@ -92296,7 +92725,9 @@ export type CustomElementsSolidJs = {
92296
92725
  * - `indicator`: The mark that moves to the selected tab. It carries the selected tab's place and size as `--indicator-x`, `--indicator-y`, `--indicator-inline-size` and `--indicator-block-size`.
92297
92726
  * - `panels`: The panel container.
92298
92727
  * - `scroll-end`: The button that scrolls the strip toward its end, shown under `scroll-controls` while there is more that way. It holds to the end of the strip.
92728
+ * - `scroll-end-mark`: The glyph on that button, where none is slotted.
92299
92729
  * - `scroll-start`: The button that scrolls the strip toward its start, shown under `scroll-controls` while there is more that way. It holds to the start of the strip.
92730
+ * - `scroll-start-mark`: The glyph on that button, where none is slotted.
92300
92731
  * - `tabs`: The tab list.
92301
92732
  *
92302
92733
  * ## CSS States
@@ -92375,6 +92806,7 @@ export type CustomElementsSolidJs = {
92375
92806
  * Areas where markup can be added to the component.
92376
92807
  *
92377
92808
  * - `(default)`: The tab's label.
92809
+ * - `dismiss-icon`: Replaces the glyph on the mark that closes a `dismissible` tab.
92378
92810
  *
92379
92811
  * ## Methods
92380
92812
  *
@@ -92413,6 +92845,7 @@ export type CustomElementsSolidJs = {
92413
92845
  * Custom selectors for styling elements within the component.
92414
92846
  *
92415
92847
  * - `dismiss`: The mark a pointer presses to close a `dismissible` tab.
92848
+ * - `dismiss-mark`: The glyph on that mark, where none is slotted.
92416
92849
  * - `tab`: The tab itself.
92417
92850
  *
92418
92851
  * ## CSS States
@@ -94242,6 +94675,7 @@ export type CustomElementsSolidJs = {
94242
94675
  * - `--toast-tone-color`: Color of the mark and the countdown bar. Unset, each `tone` takes its own color, so set it per tone, as in `helix-toast-item[tone="danger"]`.
94243
94676
  * - `--toast-duration`: How long this message stays, in milliseconds, for a progress hint.
94244
94677
  * - `--toast-swipe-x`: How far a swipe has moved the message across, in pixels, toward the right.
94678
+ * - `--toast-swipe-y`: How far a swipe has moved the message down, in pixels, under a `swipe-direction` of `top` or `bottom`.
94245
94679
  *
94246
94680
  * ## CSS Parts
94247
94681
  *
@@ -94263,7 +94697,7 @@ export type CustomElementsSolidJs = {
94263
94697
  * These can be used to apply styling when a component is in a given state.
94264
94698
  *
94265
94699
  * - `closed`: The message has been dismissed and is hidden, or leaving.
94266
- * - `paused`: The dismiss timer is paused, while a pointer or focus is on the message, or while the page is hidden.
94700
+ * - `paused`: The dismiss timer is paused, while a pointer or focus is on the message or in the stack, or while the page is hidden.
94267
94701
  * - `waiting`: The region holds the message back, past its `max-visible`, until a message before it goes.
94268
94702
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
94269
94703
  */
@@ -94320,6 +94754,8 @@ export type CustomElementsSolidJs = {
94320
94754
  * consumer's server markup does not have. A sheet carries the resting
94321
94755
  * arrangement in its own `:host` rule and the selectors describe only the
94322
94756
  * departures, which is what `orientation` does.
94757
+ * - `swipe-direction`/`swipeDirection`: The edge a touch or a pen swipes a message toward to dismiss it: `end`,
94758
+ * the end of the line, or `start`, `top` or `bottom`. Unset is `end`.
94323
94759
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
94324
94760
  *
94325
94761
  * **Named `whenSettled` because `settled` is taken four times over**, by
@@ -95182,6 +95618,9 @@ export type CustomElementsSolidJs = {
95182
95618
  * `undefined` until somebody sets one.
95183
95619
  * - `label`: The tour's name, read by screen readers, such as "Getting started".
95184
95620
  * - `next-label`/`nextLabel`: Label for the control that goes on.
95621
+ * - `outside-press`/`outsidePress`: What a press outside the current stop and its target does while the tour
95622
+ * runs. Unset, nothing: the page stays usable. `close` ends the tour, as
95623
+ * Skip does, and `block` refuses the press.
95185
95624
  * - `progress`: Draws each stop's place in the run in its panel, as well as saying it.
95186
95625
  * - `progress-label`/`progressLabel`: Each stop's place in the run, with `{index}` and `{count}` filled in and
95187
95626
  * written in the locale. Translate it with the rest of your text.
@@ -95274,6 +95713,7 @@ export type CustomElementsSolidJs = {
95274
95713
  * These can be used to apply styling when a component is in a given state.
95275
95714
  *
95276
95715
  * - `open`: While the tour is running.
95716
+ * - `preparing`: While the tour waits for the current stop's `effect` before showing the stop.
95277
95717
  * - `waiting`: While the tour waits at a `wait` stop for its target to be on the page.
95278
95718
  * - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
95279
95719
  */
@@ -95315,6 +95755,8 @@ export type CustomElementsSolidJs = {
95315
95755
  *
95316
95756
  * Reflected, because the styled tier places a dialog and a floating panel by
95317
95757
  * it, and unset at rest, so no default is written onto the host.
95758
+ * - `effect`: Run as the tour reaches the stop, before it is shown: see the description
95759
+ * above. A function, so it is set from script and has no attribute. (property only)
95318
95760
  * - `target`: The element the stop points at, or `null` when no element has the `for` id. (property only) (readonly)
95319
95761
  * - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
95320
95762
  *
@@ -95408,6 +95850,8 @@ export type CustomElementsSolidJs = {
95408
95850
  *
95409
95851
  * These can be used to apply styling when a component is in a given state.
95410
95852
  *
95853
+ * - `entering`: From the moment the stop is shown until its entrance has finished.
95854
+ * - `exiting`: From the moment the stop is left until its exit has finished.
95411
95855
  * - `placed-bottom`: The panel sits below its target.
95412
95856
  * - `placed-left`: The panel sits to the left of its target.
95413
95857
  * - `placed-right`: The panel sits to the right of its target.
@@ -99109,6 +99553,8 @@ export type CustomCssProperties = {
99109
99553
  "--toast-duration"?: (string) | undefined;
99110
99554
  /** How far a swipe has moved the message across, in pixels, toward the right. */
99111
99555
  "--toast-swipe-x"?: (string) | undefined;
99556
+ /** How far a swipe has moved the message down, in pixels, under a `swipe-direction` of `top` or `bottom`. */
99557
+ "--toast-swipe-y"?: (string) | undefined;
99112
99558
  /** Space between one message and the next. */
99113
99559
  "--toast-gap"?: (string) | undefined;
99114
99560
  /** Width of a message. */