@fusion.dev/helix 0.154.0 → 0.155.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
@@ -168,6 +168,7 @@ import type {
168
168
  HelixReadingChangeEvent,
169
169
  HelixReadingPressEvent,
170
170
  HelixAuraFallbackEvent,
171
+ HelixSelectEvent,
171
172
  HelixBeforeChangeEvent,
172
173
  HelixPressEvent,
173
174
  HelixBeforeMoveEvent,
@@ -182,7 +183,6 @@ import type {
182
183
  HelixReconnectEvent,
183
184
  HelixRelabelEvent,
184
185
  HelixRemoveEvent,
185
- HelixSelectEvent,
186
186
  HelixActivateEvent,
187
187
  HelixSendEvent,
188
188
  HelixTypingEvent,
@@ -1532,6 +1532,15 @@ element's language. Leave the marks out of the text. */
1532
1532
 
1533
1533
  export type HelixBlockquoteVueEvents = {};
1534
1534
 
1535
+ /** `HelixBreadcrumb` component event */
1536
+ export type HelixBreadcrumbElementEvent<E = Event> = TypedEvent<
1537
+ HelixBreadcrumb,
1538
+ E
1539
+ >;
1540
+ /** `helix-select` event type */
1541
+ export type HelixBreadcrumbHelixSelectElementEvent =
1542
+ HelixBreadcrumbElementEvent<HelixSelectEvent>;
1543
+
1535
1544
  export type HelixBreadcrumbVueProps = {
1536
1545
  /** Marks this item as the page you are on. */
1537
1546
  current?: (HelixBreadcrumb["current"]) | undefined;
@@ -1561,7 +1570,10 @@ The consumer's decision. */
1561
1570
  target?: (HelixBreadcrumb["target"]) | undefined;
1562
1571
  };
1563
1572
 
1564
- export type HelixBreadcrumbVueEvents = {};
1573
+ export type HelixBreadcrumbVueEvents = {
1574
+ /** A plain press on the crumb's link, with its `href` as the value, before the browser follows it. Cancelable: cancel it to keep the browser from following, as a client-side router does. */
1575
+ "helix-select": HelixBreadcrumbHelixSelectElementEvent;
1576
+ };
1565
1577
 
1566
1578
  export type HelixBreadcrumbsVueProps = {
1567
1579
  /** How the two halves of a split crumb are told apart. A split crumb is one
@@ -4082,7 +4094,8 @@ Passed to the panel, whose square, hue ramp and presets say the color's
4082
4094
  name, and read by the swatch in `swatch`, which says it before the value.
4083
4095
  Color Picker lists the keys. */
4084
4096
  colorWords?: (HelixColorInput["colorWords"]) | undefined;
4085
- /** The syntax the value is written in: `hex`, `rgb`, or `hsl`.
4097
+ /** The syntax the value is written in: `hex`, `rgb`, `hsl`, `oklch`, or
4098
+ `hsb`, as Color Picker's `format`.
4086
4099
 
4087
4100
  **Undefaulted, because it reflects.** The two together stamp an attribute
4088
4101
  onto every host anybody renders, including the ones nobody configured: the
@@ -4263,8 +4276,9 @@ language hears its own rather than English between its own labels. */
4263
4276
  brightnessLabel?: (HelixColorPicker["brightnessLabel"]) | undefined;
4264
4277
  /** Whether the picker shows a number field for each channel of the color, as
4265
4278
  React Aria's ColorField does with `channel`: red, green and blue for hex
4266
- and rgb, hue, saturation and lightness for hsl, and the opacity with
4267
- `alpha`.
4279
+ and rgb, hue, saturation and lightness for hsl, hue, saturation and
4280
+ brightness for hsb, lightness, chroma and hue for oklch, and the opacity
4281
+ with `alpha`.
4268
4282
 
4269
4283
  For a reader who has the numbers from a brand guide, and for a keyboard,
4270
4284
  where typing 128 is quicker than holding an arrow key. The fields follow
@@ -4272,13 +4286,20 @@ the syntax the format toggle sets. */
4272
4286
  "channel-fields"?: (HelixColorPicker["channelFields"]) | undefined;
4273
4287
  /** Whether the picker shows a number field for each channel of the color, as
4274
4288
  React Aria's ColorField does with `channel`: red, green and blue for hex
4275
- and rgb, hue, saturation and lightness for hsl, and the opacity with
4276
- `alpha`.
4289
+ and rgb, hue, saturation and lightness for hsl, hue, saturation and
4290
+ brightness for hsb, lightness, chroma and hue for oklch, and the opacity
4291
+ with `alpha`.
4277
4292
 
4278
4293
  For a reader who has the numbers from a brand guide, and for a keyboard,
4279
4294
  where typing 128 is quicker than holding an arrow key. The fields follow
4280
4295
  the syntax the format toggle sets. */
4281
4296
  channelFields?: (HelixColorPicker["channelFields"]) | undefined;
4297
+ /** What the chroma channel's field is called, in `channel-fields` with
4298
+ oklch. */
4299
+ "chroma-label"?: (HelixColorPicker["chromaLabel"]) | undefined;
4300
+ /** What the chroma channel's field is called, in `channel-fields` with
4301
+ oklch. */
4302
+ chromaLabel?: (HelixColorPicker["chromaLabel"]) | undefined;
4282
4303
  /** The words a color's name is spoken in, as JSON keyed by their English,
4283
4304
  such as `{"red": "rot", "vibrant": "kräftiges"}`.
4284
4305
 
@@ -4319,10 +4340,16 @@ the color. */
4319
4340
  "eyedropper-label"?: (HelixColorPicker["eyedropperLabel"]) | undefined;
4320
4341
  /** What the eyedropper is called. */
4321
4342
  eyedropperLabel?: (HelixColorPicker["eyedropperLabel"]) | undefined;
4322
- /** The syntax the value is written in: `hex`, `rgb`, or `hsl`.
4343
+ /** The syntax the value is written in: `hex`, `rgb`, `hsl`, `oklch`, or
4344
+ `hsb`.
4323
4345
 
4324
4346
  Only what is written. Everything is read whatever this says, so a picker on
4325
- `hex` still takes an `rgb()` handed to it and stores the hex for it. */
4347
+ `hex` still takes an `rgb()` or an `oklch()` handed to it and stores the
4348
+ hex for it. `oklch` writes the sRGB color the picker holds, such as
4349
+ `oklch(62.8% 0.258 29.2)`; a color outside sRGB that is handed in is
4350
+ clipped to it. `hsb` writes the picker's own model, `hsb(0, 100%, 100%)`,
4351
+ as React Aria's and Zag's color strings do. It is not CSS, so the toggle
4352
+ walks the other four. */
4326
4353
  format?: (HelixColorPicker["format"]) | undefined;
4327
4354
  /** What the syntax toggle is called, with `{format}` filled in. */
4328
4355
  "format-label"?: (HelixColorPicker["formatLabel"]) | undefined;
@@ -4332,15 +4359,21 @@ Only what is written. Everything is read whatever this says, so a picker on
4332
4359
  "green-label"?: (HelixColorPicker["greenLabel"]) | undefined;
4333
4360
  /** What the green channel's field is called, in `channel-fields`. */
4334
4361
  greenLabel?: (HelixColorPicker["greenLabel"]) | undefined;
4362
+ /** Help under the picker, such as what the color is used for. The `hint`
4363
+ slot takes richer content. */
4364
+ hint?: (HelixColorPicker["hint"]) | undefined;
4335
4365
  /** What the hue channel is called. */
4336
4366
  "hue-label"?: (HelixColorPicker["hueLabel"]) | undefined;
4337
4367
  /** What the hue channel is called. */
4338
4368
  hueLabel?: (HelixColorPicker["hueLabel"]) | undefined;
4369
+ /** The name above the picker, such as "Brand color". The picker is then a
4370
+ group with this name. The `label` slot takes richer content. */
4371
+ label?: (HelixColorPicker["label"]) | undefined;
4339
4372
  /** What the lightness channel's field is called, in `channel-fields` with
4340
- hsl. */
4373
+ hsl and oklch. */
4341
4374
  "lightness-label"?: (HelixColorPicker["lightnessLabel"]) | undefined;
4342
4375
  /** What the lightness channel's field is called, in `channel-fields` with
4343
- hsl. */
4376
+ hsl and oklch. */
4344
4377
  lightnessLabel?: (HelixColorPicker["lightnessLabel"]) | undefined;
4345
4378
  /** Hides the eyedropper. Without it, the eyedropper appears in browsers that
4346
4379
  support one. */
@@ -6137,15 +6170,22 @@ speaks it. Unset is the sentence registered for the page's language, then
6137
6170
  the English. `{mode}` is `single`, `range` or `multiple`, so each can have
6138
6171
  its own sentence. */
6139
6172
  badInputMessage?: (HelixDatePicker["badInputMessage"]) | undefined;
6140
- /** The calendar the heading, the days, and the months are written in:
6141
- `gregory`, `buddhist`, `japanese`, `roc`, or `iso8601`, the five whose
6142
- months are the Gregorian months.
6143
-
6144
- Absent is the locale's own where it is one of the five, such as
6145
- `buddhist` for `th-TH` or `japanese` for `ja-JP-u-ca-japanese`, and
6146
- `gregory` for every other, such as `persian` for `fa-IR`, so the heading
6147
- names the Gregorian month the grid shows. The value is `YYYY-MM-DD` in
6148
- every calendar. */
6173
+ /** The calendar the heading, the days, and the months are written in.
6174
+
6175
+ `gregory`, `buddhist`, `japanese`, `roc`, and `iso8601` are the five
6176
+ whose months are the Gregorian months. Absent is the locale's own where
6177
+ it is one of the five, such as `buddhist` for `th-TH` or `japanese` for
6178
+ `ja-JP-u-ca-japanese`, and `gregory` for every other, such as `persian`
6179
+ for `fa-IR`.
6180
+
6181
+ `persian`, `hebrew`, `islamic-umalqura`, `islamic-civil`, `ethiopic`,
6182
+ `coptic`, and `indian` draw a calendar with months of its own, as React
6183
+ Aria's calendars do: each grid is one of that calendar's months, the
6184
+ Hebrew leap month and Ethiopia's five-day thirteenth month included, and
6185
+ Previous, Next and the page keys move by those months. `month` and
6186
+ `helix-navigate` then name a month by its first day, `YYYY-MM-DD`. The
6187
+ heading stays text, as the months and years views are drawn in Gregorian
6188
+ months only. The value is `YYYY-MM-DD` in every calendar. */
6149
6189
  calendar?: (HelixDatePicker["calendar"]) | undefined;
6150
6190
  /** The month to open on when `month` is not set. */
6151
6191
  "default-month"?: (HelixDatePicker["defaultMonth"]) | undefined;
@@ -6204,8 +6244,9 @@ its days. */
6204
6244
  min?: (HelixDatePicker["min"]) | undefined;
6205
6245
  /** How many dates can be held at once. */
6206
6246
  mode?: (HelixDatePicker["mode"]) | undefined;
6207
- /** The month shown, as `YYYY-MM`. When it is not set, it follows `value`,
6208
- then the current month.
6247
+ /** The month shown, as `YYYY-MM`, or as its first day, `YYYY-MM-DD`, under a
6248
+ `calendar` with months of its own. When it is not set, it follows
6249
+ `value`, then the current month.
6209
6250
 
6210
6251
  Separate from `value` on purpose, so paging selects nothing and a consumer
6211
6252
  can drive the view. Reading gives the month on show; writing sets it, and
@@ -6307,6 +6348,22 @@ date including the one already chosen. */
6307
6348
  "step-mismatch-message"?: (HelixDatePicker["stepMismatchMessage"]) | undefined;
6308
6349
  /** The validation message for a date that `step` skips. */
6309
6350
  stepMismatchMessage?: (HelixDatePicker["stepMismatchMessage"]) | undefined;
6351
+ /** The time zone today is read in, such as `America/New_York`, as React
6352
+ Aria's `today(timeZone)` reads it. Empty is the reader's own.
6353
+
6354
+ Dates are plain `YYYY-MM-DD` and carry no zone, so this moves only today:
6355
+ the day marked `aria-current` and `day-today`, and the month a picker
6356
+ with no value opens on. A desk in Tokyo booking for an office in New York
6357
+ sets `America/New_York`, and today is the office's. */
6358
+ "time-zone"?: (HelixDatePicker["timeZone"]) | undefined;
6359
+ /** The time zone today is read in, such as `America/New_York`, as React
6360
+ Aria's `today(timeZone)` reads it. Empty is the reader's own.
6361
+
6362
+ Dates are plain `YYYY-MM-DD` and carry no zone, so this moves only today:
6363
+ the day marked `aria-current` and `day-today`, and the month a picker
6364
+ with no value opens on. A desk in Tokyo booking for an office in New York
6365
+ sets `America/New_York`, and today is the office's. */
6366
+ timeZone?: (HelixDatePicker["timeZone"]) | undefined;
6310
6367
  /** The validation message for a date that `disable-dates` or `disable-days`
6311
6368
  bars. */
6312
6369
  "unavailable-message"?: (HelixDatePicker["unavailableMessage"]) | undefined;
@@ -14666,6 +14723,18 @@ the stop moves on the trigger inside the shadow root, as Button's does.
14666
14723
  No attribute, because it is coordination between elements rather than
14667
14724
  anything a consumer sets. */
14668
14725
  focusable?: (HelixSelect["focusable"]) | undefined;
14726
+ /** The options as data, for a list too long to draw whole: each a value,
14727
+ which is also its words, or a record with a `value`, a `label` and
14728
+ `disabled`. Passed to the list, which draws only the options in sight,
14729
+ as Listbox's `items` does. Set, the options you write as children are
14730
+ not read.
14731
+
14732
+ The trigger shows the chosen options' labels, the letters and the Left
14733
+ and Right keys on the closed trigger choose over the whole set, and a
14734
+ chosen value whose option leaves `items` drops out of `value`.
14735
+ `value-content` is not called for `items`. Import the Option family as
14736
+ well, whose elements are drawn. */
14737
+ items?: (HelixSelect["items"]) | undefined;
14669
14738
  /** What the trigger shows for the chosen options: a function given them, in
14670
14739
  the order they appear, that returns text, an element or a Lit template.
14671
14740
 
@@ -14892,9 +14961,11 @@ between its thumbs and ignores it. */
14892
14961
  origin?: (HelixSlider["origin"]) | undefined;
14893
14962
  /** Adds a second thumb, so the value is a pair.
14894
14963
 
14895
- The pair is one string, `"10,50"`, which is what a form submits and what
14896
- `MixinControllerValue` already holds. `valueAsNumber` reads the lower of
14897
- the two, since a range has no single number. */
14964
+ The pair is one string, `"10,50"`, which is what `value` and
14965
+ `MixinControllerValue` hold. A form receives two entries under the name,
14966
+ `price=10&price=50`, as React Aria's two thumbs send theirs.
14967
+ `valueAsNumber` reads the lower of the two, since a range has no single
14968
+ number. */
14898
14969
  range?: (HelixSlider["range"]) | undefined;
14899
14970
  /** How the readout joins a range's two values, with `{start}` and `{end}`
14900
14971
  filled in. Write it in the page's language, such as `{start} bis {end}`. */
@@ -14902,12 +14973,34 @@ filled in. Write it in the page's language, such as `{start} bis {end}`. */
14902
14973
  /** How the readout joins a range's two values, with `{start}` and `{end}`
14903
14974
  filled in. Write it in the page's language, such as `{start} bis {end}`. */
14904
14975
  rangeText?: (HelixSlider["rangeText"]) | undefined;
14976
+ /** Whether a reader can see and focus the value and cannot change it. A
14977
+ read-only slider still submits its value.
14978
+
14979
+ React Aria's `isReadOnly`. Each thumb stays a tab stop and says
14980
+ `aria-readonly`. The arrow keys, the page keys, Home, End, and a drag
14981
+ leave the value where it is. A script can still set `value`. */
14982
+ readonly?: (HelixSlider["readOnly"]) | undefined;
14983
+ /** Whether a reader can see and focus the value and cannot change it. A
14984
+ read-only slider still submits its value.
14985
+
14986
+ React Aria's `isReadOnly`. Each thumb stays a tab stop and says
14987
+ `aria-readonly`. The arrow keys, the page keys, Home, End, and a drag
14988
+ leave the value where it is. A script can still set `value`. */
14989
+ readOnly?: (HelixSlider["readOnly"]) | undefined;
14905
14990
  /** Shows the chosen value beside the track. */
14906
14991
  "show-value"?: (HelixSlider["showValue"]) | undefined;
14907
14992
  /** Shows the chosen value beside the track. */
14908
14993
  showValue?: (HelixSlider["showValue"]) | undefined;
14909
14994
  /** How far one press of an arrow key moves the thumb. */
14910
14995
  step?: (HelixSlider["step"]) | undefined;
14996
+ /** The name of a thumb between a range's first and last, read after the
14997
+ slider's label, with `{index}` filled in: its place, counted from 1. The
14998
+ first is `minimum-label` and the last `maximum-label`. */
14999
+ "thumb-label"?: (HelixSlider["thumbLabel"]) | undefined;
15000
+ /** The name of a thumb between a range's first and last, read after the
15001
+ slider's label, with `{index}` filled in: its place, counted from 1. The
15002
+ first is `minimum-label` and the last `maximum-label`. */
15003
+ thumbLabel?: (HelixSlider["thumbLabel"]) | undefined;
14911
15004
  /** Whether each thumb shows its value in a bubble beside it, as Web
14912
15005
  Awesome's `with-tooltip`. The styled slider shows the bubbles while the
14913
15006
  slider is under the pointer or holds focus. They repeat what each thumb
@@ -15166,10 +15259,20 @@ export type HelixSpeedDialItemHelixSelectElementEvent =
15166
15259
  export type HelixSpeedDialItemVueProps = {
15167
15260
  /** Whether the action is disabled, so it cannot be chosen. */
15168
15261
  disabled?: (HelixSpeedDialItem["disabled"]) | undefined;
15262
+ /** Whether the link downloads the file when the action is chosen. Only
15263
+ meaningful beside an `href`, and only for a file served from the page's
15264
+ origin. */
15265
+ download?: (HelixSpeedDialItem["download"]) | undefined;
15266
+ /** The URL the action links to. Setting it draws the action as a link. */
15267
+ href?: (HelixSpeedDialItem["href"]) | undefined;
15268
+ /** The link's `rel`. Set it whenever you set `target="_blank"`. */
15269
+ rel?: (HelixSpeedDialItem["rel"]) | undefined;
15169
15270
  /** The action's keyboard shortcut as a chord, such as `mod+s`, carried as
15170
15271
  `aria-keyshortcuts` and drawn after the name. `mod` is Command on an Apple
15171
15272
  keyboard and Control elsewhere. Showing a shortcut does not bind it. */
15172
15273
  shortcut?: (HelixSpeedDialItem["shortcut"]) | undefined;
15274
+ /** Where the link opens, such as `_blank` for a new tab. */
15275
+ target?: (HelixSpeedDialItem["target"]) | undefined;
15173
15276
  /** The action's value, sent in `helix-select` when the action is chosen. */
15174
15277
  value?: (HelixSpeedDialItem["value"]) | undefined;
15175
15278
  };
@@ -15240,13 +15343,17 @@ you described or labeled it yourself. */
15240
15343
  longPressLabel?: (HelixSpeedDial["longPressLabel"]) | undefined;
15241
15344
  /** Space between the trigger and the actions, in pixels. */
15242
15345
  offset?: (HelixSpeedDial["offset"]) | undefined;
15243
- /** What opens the dial. `click` opens it on a press of the trigger. Under
15244
- `long-press`, a press is the trigger's own action, and the dial opens on a
15245
- press held for half a second, or on Alt+Down or Alt+Up. */
15346
+ /** What opens the dial. `click` opens it on a press of the trigger. `hover`
15347
+ also opens it while a mouse rests on the trigger, and closes it once the
15348
+ mouse has left. Under `long-press`, a press is the trigger's own action,
15349
+ and the dial opens on a press held for half a second, or on Alt+Down or
15350
+ Alt+Up. */
15246
15351
  "open-on"?: (HelixSpeedDial["openOn"]) | undefined;
15247
- /** What opens the dial. `click` opens it on a press of the trigger. Under
15248
- `long-press`, a press is the trigger's own action, and the dial opens on a
15249
- press held for half a second, or on Alt+Down or Alt+Up. */
15352
+ /** What opens the dial. `click` opens it on a press of the trigger. `hover`
15353
+ also opens it while a mouse rests on the trigger, and closes it once the
15354
+ mouse has left. Under `long-press`, a press is the trigger's own action,
15355
+ and the dial opens on a press held for half a second, or on Alt+Down or
15356
+ Alt+Up. */
15250
15357
  openOn?: (HelixSpeedDial["openOn"]) | undefined;
15251
15358
  /** The direction the actions open in. They move to another side if that side
15252
15359
  does not fit.
@@ -15539,6 +15646,16 @@ Ignored once `active` is written. */
15539
15646
 
15540
15647
  Ignored once `active` is written. */
15541
15648
  defaultActive?: (HelixSteps["defaultActive"]) | undefined;
15649
+ /** Whether the arrow keys move focus between the stages' names, along the
15650
+ way the steps run. Off by default, so the arrows keep scrolling the page. */
15651
+ arrows?: (HelixSteps["arrows"]) | undefined;
15652
+ /** What marks a stage `complete`.
15653
+
15654
+ Absent, you do: each step's `complete` is yours, because a reader who
15655
+ steps back has finished more stages than the one they are on. `passed`
15656
+ marks every stage before the one a reader moves to, and leaves the marks
15657
+ when they go back. */
15658
+ completion?: (HelixSteps["completion"]) | undefined;
15542
15659
  /** The sequence's name, read by screen readers.
15543
15660
 
15544
15661
  A list of stages is a landmark a reader arrives at out of order, so it
@@ -16262,6 +16379,12 @@ panels and tells a screen reader the list is vertical.
16262
16379
 
16263
16380
  Optional, so the resting row writes no attribute onto the host. */
16264
16381
  orientation?: (HelixTabs["orientation"]) | undefined;
16382
+ /** Whether a strip with more tabs than fit shows a button at each end it can
16383
+ scroll toward. */
16384
+ "scroll-controls"?: (HelixTabs["scrollControls"]) | undefined;
16385
+ /** Whether a strip with more tabs than fit shows a button at each end it can
16386
+ scroll toward. */
16387
+ scrollControls?: (HelixTabs["scrollControls"]) | undefined;
16265
16388
  /** How the row of tabs is drawn.
16266
16389
 
16267
16390
  Unset is a raised pill on the selected tab with nothing behind the row,
@@ -16298,11 +16421,38 @@ export type HelixTabsVueEvents = {
16298
16421
 
16299
16422
  /** `HelixTab` component event */
16300
16423
  export type HelixTabElementEvent<E = Event> = TypedEvent<HelixTab, E>;
16424
+ /** `helix-dismiss` event type */
16425
+ export type HelixTabHelixDismissElementEvent =
16426
+ HelixTabElementEvent<HelixDismissEvent>;
16301
16427
  /** `helix-select` event type */
16302
16428
  export type HelixTabHelixSelectElementEvent =
16303
16429
  HelixTabElementEvent<HelixSelectEvent>;
16304
16430
 
16305
16431
  export type HelixTabVueProps = {
16432
+ /** Whether the element shows a control that dismisses it. */
16433
+ dismissible?: (HelixTab["dismissible"]) | undefined;
16434
+ /** The dismiss control's label, read by screen readers.
16435
+
16436
+ `attribute` is spelled out because Lit lowercases a property name to
16437
+ derive one rather than dash-casing it, so this would otherwise be
16438
+ reachable only as `dismisslabel`, which nobody would guess and no linter
16439
+ would catch.
16440
+
16441
+ A word property: register it for a locale under the host's key. A family
16442
+ that names the control otherwise, such as Tag's `Remove {label}`,
16443
+ declares its own English with `@words` above the override. */
16444
+ "dismiss-label"?: (HelixTab["dismissLabel"]) | undefined;
16445
+ /** The dismiss control's label, read by screen readers.
16446
+
16447
+ `attribute` is spelled out because Lit lowercases a property name to
16448
+ derive one rather than dash-casing it, so this would otherwise be
16449
+ reachable only as `dismisslabel`, which nobody would guess and no linter
16450
+ would catch.
16451
+
16452
+ A word property: register it for a locale under the host's key. A family
16453
+ that names the control otherwise, such as Tag's `Remove {label}`,
16454
+ declares its own English with `@words` above the override. */
16455
+ dismissLabel?: (HelixTab["dismissLabel"]) | undefined;
16306
16456
  /** Whether the item is disabled and cannot be chosen. */
16307
16457
  disabled?: (HelixTab["disabled"]) | undefined;
16308
16458
  /** Whether the item is selected.
@@ -16324,6 +16474,8 @@ of tabs that are pages of a site. */
16324
16474
  };
16325
16475
 
16326
16476
  export type HelixTabVueEvents = {
16477
+ /** A `dismissible` tab was asked to close. The tab does not remove itself, so remove it and its panel in response. Cancelable. */
16478
+ "helix-dismiss": HelixTabHelixDismissElementEvent;
16327
16479
  /** Fired when the tab is chosen. Cancelable: canceling it stops the change and leaves the decision to you. */
16328
16480
  "helix-select": HelixTabHelixSelectElementEvent;
16329
16481
  };
@@ -16338,6 +16490,14 @@ export type HelixTagGroupHelixDismissElementEvent =
16338
16490
  HelixTagGroupElementEvent<HelixDismissEvent>;
16339
16491
 
16340
16492
  export type HelixTagGroupVueProps = {
16493
+ /** Keeps at least one tag selected once one is, as React Aria's
16494
+ `disallowEmptySelection`: a press or a key that would leave none selected
16495
+ is refused. Removing the last selected tag still takes it out of `value`. */
16496
+ "disallow-empty-selection"?: (HelixTagGroup["disallowEmptySelection"]) | undefined;
16497
+ /** Keeps at least one tag selected once one is, as React Aria's
16498
+ `disallowEmptySelection`: a press or a key that would leave none selected
16499
+ is refused. Removing the last selected tag still takes it out of `value`. */
16500
+ disallowEmptySelection?: (HelixTagGroup["disallowEmptySelection"]) | undefined;
16341
16501
  /** The words the group shows and says once its last tag is removed, where
16342
16502
  nothing is in the `empty` slot. */
16343
16503
  "empty-label"?: (HelixTagGroup["emptyLabel"]) | undefined;
@@ -16347,6 +16507,20 @@ nothing is in the `empty` slot. */
16347
16507
  /** The name of the set, such as "Filters", which a screen reader announces
16348
16508
  before its tags. */
16349
16509
  label?: (HelixTagGroup["label"]) | undefined;
16510
+ /** What a press, Space, or a move does to the tags already selected.
16511
+ `toggle`, the default, keeps them: a press adds or takes out the tag, and
16512
+ the arrow keys move focus alone. `replace` selects the tag alone, as a
16513
+ file list does, and the arrow keys carry the selection with focus.
16514
+ Control or Command with a press or Space adds or takes out one tag in
16515
+ `multiple`, and with an arrow moves focus without selecting. */
16516
+ "selection-behavior"?: (HelixTagGroup["selectionBehavior"]) | undefined;
16517
+ /** What a press, Space, or a move does to the tags already selected.
16518
+ `toggle`, the default, keeps them: a press adds or takes out the tag, and
16519
+ the arrow keys move focus alone. `replace` selects the tag alone, as a
16520
+ file list does, and the arrow keys carry the selection with focus.
16521
+ Control or Command with a press or Space adds or takes out one tag in
16522
+ `multiple`, and with an arrow moves focus without selecting. */
16523
+ selectionBehavior?: (HelixTagGroup["selectionBehavior"]) | undefined;
16350
16524
  /** How many tags a reader can select: `single`, `multiple`, or none.
16351
16525
 
16352
16526
  Absent selects nothing, and the tags carry no selected state at all. */
@@ -18394,6 +18568,18 @@ refused, in a `reorderable` tree. */
18394
18568
  An `aria-label` or `aria-labelledby` on the host names the tree too, and
18395
18569
  wins over this. */
18396
18570
  label?: (HelixTree["label"]) | undefined;
18571
+ /** What screen readers hear when an item moves into another branch, in a
18572
+ `reorderable` tree. `{name}` is the item's words, `{parent}` the words of
18573
+ the branch it moved into, or the tree's `label` for the top level,
18574
+ `{position}` its place there, counting from 1, and `{count}` the number of
18575
+ items there. */
18576
+ "moved-into-label"?: (HelixTree["movedIntoLabel"]) | undefined;
18577
+ /** What screen readers hear when an item moves into another branch, in a
18578
+ `reorderable` tree. `{name}` is the item's words, `{parent}` the words of
18579
+ the branch it moved into, or the tree's `label` for the top level,
18580
+ `{position}` its place there, counting from 1, and `{count}` the number of
18581
+ items there. */
18582
+ movedIntoLabel?: (HelixTree["movedIntoLabel"]) | undefined;
18397
18583
  /** What screen readers hear each time an item moves, in a `reorderable`
18398
18584
  tree. `{name}` is the item's words, `{position}` its place among its
18399
18585
  siblings, counting from 1, and `{count}` the number of siblings. */
@@ -21105,6 +21291,8 @@ export type CustomCssProperties = {
21105
21291
  "--slider-marker-color"?: (string) | undefined;
21106
21292
  /** The color of the thumb. */
21107
21293
  "--slider-thumb-color"?: (string) | undefined;
21294
+ /** The color of content in the `thumb` and `thumb-end` slots, drawn on the thumb. */
21295
+ "--slider-thumb-content-color"?: (string) | undefined;
21108
21296
  /** The thumb's size along the track. It follows `--slider-thumb-size` unless you set it, and setting one of the two makes the thumb an oval. */
21109
21297
  "--slider-thumb-length"?: (string) | undefined;
21110
21298
  /** The thumb's corner radius. It is fully round by default, so a thumb with two different dimensions is a capsule unless you change it. */
@@ -21123,7 +21311,7 @@ export type CustomCssProperties = {
21123
21311
  "--slider-track-image"?: (string) | undefined;
21124
21312
  /** The thickness of the track. It matches the progress bar's size by default. */
21125
21313
  "--slider-track-size"?: (string) | undefined;
21126
- /** Where a bubble's thumb is, as a fraction of the track, 0 to 1. Set on each `tooltip` part. */
21314
+ /** Where a bubble's or a thumb box's thumb is, as a fraction of the track, 0 to 1. Set on each `tooltip` and `thumb` part. */
21127
21315
  "--slider-at"?: (string) | undefined;
21128
21316
  /** The value as a fraction of the range, 0 to 1. */
21129
21317
  "--slider-fraction"?: (string) | undefined;
@@ -21325,12 +21513,16 @@ export type CustomCssProperties = {
21325
21513
  "--tabs-indicator-thickness"?: (string) | undefined;
21326
21514
  /** The color of the rule under the row in `underlined`. */
21327
21515
  "--tabs-rule-color"?: (string) | undefined;
21516
+ /** The fill behind the scroll buttons, over the tabs that pass under them. */
21517
+ "--tabs-scroll-background-color"?: (string) | undefined;
21328
21518
  /** The height of a tab. `segmented` sizes its tabs to the track and does not read it. */
21329
21519
  "--tabs-tab-block-size"?: (string) | undefined;
21330
21520
  /** The label color of a tab that is not current. */
21331
21521
  "--tabs-tab-color"?: (string) | undefined;
21332
21522
  /** How faint a disabled tab is drawn. */
21333
21523
  "--tabs-tab-disabled-opacity"?: (string) | undefined;
21524
+ /** The color of the mark that closes a `dismissible` tab. */
21525
+ "--tabs-tab-dismiss-color"?: (string) | undefined;
21334
21526
  /** The size of a tab's label. */
21335
21527
  "--tabs-tab-font-size"?: (string) | undefined;
21336
21528
  /** The weight of a tab's label. */
@@ -22529,7 +22721,7 @@ export interface WcToolkitVueGlobalComponents {
22529
22721
  HelixTagGroupVueProps,
22530
22722
  HelixTagGroupVueEvents
22531
22723
  >;
22532
- /** Seven tones. The fill is a tint of the status color made with 'color-mix', so when a theme changes its status colors, the tints change with them. */
22724
+ /** Seven tones. The fill is a tint of the status color made with 'color-mix', so when a theme changes its status colors, the tints change with them. A tag takes its height from the region it is in, as the controls beside it do: 'data-density="sm"', 'md', or 'lg' on the tag or on any element around it sets '--helix-size-tag' to the small, resting, or large step, so a row of tags and buttons stays one height. 'shape="pill"' rounds its ends. */
22533
22725
  "helix-tag": DefineCustomElement<
22534
22726
  HelixTag,
22535
22727
  HelixTagVueProps,
package/types/words.d.ts CHANGED
@@ -357,6 +357,16 @@ declare module '@fusion.dev/helix-core' {
357
357
  * English: `Moved down`
358
358
  */
359
359
  movedDownLabel: Message
360
+ /**
361
+ * What screen readers hear when an item moves into another branch, in a
362
+ * `reorderable` tree. `{name}` is the item's words, `{parent}` the words of
363
+ * the branch it moved into, or the tree's `label` for the top level,
364
+ * `{position}` its place there, counting from 1, and `{count}` the number of
365
+ * items there.
366
+ *
367
+ * English: `{name} moved into {parent}, position {position} of {count}`
368
+ */
369
+ movedIntoLabel: Message
360
370
  /**
361
371
  * What screen readers hear after a key moves a card, with `{name}` for the
362
372
  * card and `{x}` and `{y}` for where it now is, in the document's units.
@@ -1082,6 +1092,13 @@ declare module '@fusion.dev/helix-core' {
1082
1092
  * English: `Brightness`
1083
1093
  */
1084
1094
  brightnessLabel: Message
1095
+ /**
1096
+ * What the chroma channel's field is called, in `channel-fields` with
1097
+ * oklch.
1098
+ *
1099
+ * English: `Chroma`
1100
+ */
1101
+ chromaLabel: Message
1085
1102
  /**
1086
1103
  * The text the sample shows for a moment after it copies the value.
1087
1104
  *
@@ -1121,7 +1138,7 @@ declare module '@fusion.dev/helix-core' {
1121
1138
  hueLabel: Message
1122
1139
  /**
1123
1140
  * What the lightness channel's field is called, in `channel-fields` with
1124
- * hsl.
1141
+ * hsl and oklch.
1125
1142
  *
1126
1143
  * English: `Lightness`
1127
1144
  */
@@ -2110,6 +2127,14 @@ declare module '@fusion.dev/helix-core' {
2110
2127
  * English: `{start} to {end}`
2111
2128
  */
2112
2129
  rangeText: Message
2130
+ /**
2131
+ * The name of a thumb between a range's first and last, read after the
2132
+ * slider's label, with `{index}` filled in: its place, counted from 1. The
2133
+ * first is `minimum-label` and the last `maximum-label`.
2134
+ *
2135
+ * English: `thumb {index}`
2136
+ */
2137
+ thumbLabel: Message
2113
2138
  }
2114
2139
  'helix-sparkline': {
2115
2140
  /**