@fusion.dev/helix 0.176.0 → 0.177.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/custom-elements.json +692 -611
- package/dist/aura/root/aura-root.d.ts +12 -1
- package/dist/aura/root/aura-root.js +14 -2
- package/dist/avatar/root/avatar-root.d.ts +1 -1
- package/dist/canvas/root/canvas-root.d.ts +4 -0
- package/dist/donut-chart/root/donut-chart-root.css.js +1 -1
- package/dist/donut-chart/root/donut-chart-root.js +2 -1
- package/dist/element-events.generated.js +2 -0
- package/dist/graph/root/graph-root.d.ts +4 -0
- package/dist/heatmap/root/heatmap-root.css.js +2 -1
- package/dist/icon-button/root/icon-button-root.css.js +2 -2
- package/dist/loader/root/loader-root.css.js +2 -2
- package/dist/loader/root/loader-root.d.ts +4 -1
- package/dist/map/root/map-root.d.ts +4 -0
- package/dist/scatter-chart/root/scatter-chart-root.css.js +1 -1
- package/dist/shared/chart/status.css.js +1 -1
- package/dist/tree/item/tree-item.d.ts +1 -1
- package/lint.json +1 -1
- package/package.json +6 -6
- package/types/jsx.d.ts +337 -323
- package/types/vue.d.ts +86 -12
package/types/vue.d.ts
CHANGED
|
@@ -930,6 +930,13 @@ hit-testable at rest, or it would swallow clicks meant for what is over it,
|
|
|
930
930
|
and an element that is not hit-testable never receives the `pointermove`
|
|
931
931
|
this listens for. Asking for the pointer is asking for the hit test. */
|
|
932
932
|
interactive?: (HelixAura["interactive"]) | undefined;
|
|
933
|
+
/** Whether the field holds still on the frame it shows.
|
|
934
|
+
|
|
935
|
+
Set it from a pause control on your page, so a reader can stop the motion,
|
|
936
|
+
as WCAG 2.2.2 asks of anything that moves for more than five seconds. A
|
|
937
|
+
change to another property still repaints the frame. Clearing it starts
|
|
938
|
+
the field from where it stopped. */
|
|
939
|
+
paused?: (HelixAura["paused"]) | undefined;
|
|
933
940
|
/** How far the pointer reaches into the field, `0` upward.
|
|
934
941
|
|
|
935
942
|
Multiplied into the presence the pointer already fades in and out with, so
|
|
@@ -7291,6 +7298,18 @@ Unset is horizontal, or across the toolbar the divider sits in. */
|
|
|
7291
7298
|
|
|
7292
7299
|
export type HelixDividerVueEvents = {};
|
|
7293
7300
|
|
|
7301
|
+
/** `HelixDonutChart` component event */
|
|
7302
|
+
export type HelixDonutChartElementEvent<E = Event> = TypedEvent<
|
|
7303
|
+
HelixDonutChart,
|
|
7304
|
+
E
|
|
7305
|
+
>;
|
|
7306
|
+
/** `helix-reading-change` event type */
|
|
7307
|
+
export type HelixDonutChartHelixReadingChangeElementEvent =
|
|
7308
|
+
HelixDonutChartElementEvent<HelixReadingChangeEvent>;
|
|
7309
|
+
/** `helix-reading-press` event type */
|
|
7310
|
+
export type HelixDonutChartHelixReadingPressElementEvent =
|
|
7311
|
+
HelixDonutChartElementEvent<HelixReadingPressEvent>;
|
|
7312
|
+
|
|
7294
7313
|
export type HelixDonutChartVueProps = {
|
|
7295
7314
|
/** How strongly the slices are drawn.
|
|
7296
7315
|
|
|
@@ -7333,6 +7352,25 @@ chart and a card mean the same thing by the word.
|
|
|
7333
7352
|
material choice, it is an absent series, and a chart says that by not
|
|
7334
7353
|
having the datum rather than by painting it invisibly. */
|
|
7335
7354
|
material?: (HelixDonutChart["material"]) | undefined;
|
|
7355
|
+
/** The words shown in place of the drawing when the table has no readings,
|
|
7356
|
+
and the fallback of the `empty` slot. */
|
|
7357
|
+
"empty-text"?: (HelixDonutChart["emptyText"]) | undefined;
|
|
7358
|
+
/** The words shown in place of the drawing when the table has no readings,
|
|
7359
|
+
and the fallback of the `empty` slot. */
|
|
7360
|
+
emptyText?: (HelixDonutChart["emptyText"]) | undefined;
|
|
7361
|
+
/** Whether the readings are still on their way. The chart shows
|
|
7362
|
+
`loading-text` in place of an empty drawing until it has readings.
|
|
7363
|
+
|
|
7364
|
+
Reflected, so a stylesheet can treat the chart while it waits. A chart
|
|
7365
|
+
that already has readings keeps drawing them, so a refresh does not
|
|
7366
|
+
blank it. */
|
|
7367
|
+
loading?: (HelixDonutChart["loading"]) | undefined;
|
|
7368
|
+
/** The words shown in place of the drawing while `loading` is set and
|
|
7369
|
+
there are no readings yet, and the fallback of the `loading` slot. */
|
|
7370
|
+
"loading-text"?: (HelixDonutChart["loadingText"]) | undefined;
|
|
7371
|
+
/** The words shown in place of the drawing while `loading` is set and
|
|
7372
|
+
there are no readings yet, and the fallback of the `loading` slot. */
|
|
7373
|
+
loadingText?: (HelixDonutChart["loadingText"]) | undefined;
|
|
7336
7374
|
/** The id of the table to read.
|
|
7337
7375
|
|
|
7338
7376
|
Names a table in the same tree, so a chart inside another component's
|
|
@@ -7458,7 +7496,12 @@ does not look inside the one it has. */
|
|
|
7458
7496
|
data?: (HelixDonutChart["data"]) | undefined;
|
|
7459
7497
|
};
|
|
7460
7498
|
|
|
7461
|
-
export type HelixDonutChartVueEvents = {
|
|
7499
|
+
export type HelixDonutChartVueEvents = {
|
|
7500
|
+
/** The slice shown moved, or was put away: `index` is the slice's row, or `-1` for none, with its `label` and the `pointerType` that moved it. */
|
|
7501
|
+
"helix-reading-change": HelixDonutChartHelixReadingChangeElementEvent;
|
|
7502
|
+
/** A slice was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
|
|
7503
|
+
"helix-reading-press": HelixDonutChartHelixReadingPressElementEvent;
|
|
7504
|
+
};
|
|
7462
7505
|
|
|
7463
7506
|
/** `HelixDrawer` component event */
|
|
7464
7507
|
export type HelixDrawerElementEvent<E = Event> = TypedEvent<HelixDrawer, E>;
|
|
@@ -8929,6 +8972,14 @@ own, since the fallback name is the same word. Empty leaves the role. */
|
|
|
8929
8972
|
"selected-label"?: (HelixGraph["selectedLabel"]) | undefined;
|
|
8930
8973
|
/** How the selected note is described in the list. */
|
|
8931
8974
|
selectedLabel?: (HelixGraph["selectedLabel"]) | undefined;
|
|
8975
|
+
/** What screen readers hear after a reader selects a note, in the list or in
|
|
8976
|
+
the drawing, with `{note}` for its name and `{count}` for how many notes
|
|
8977
|
+
the list then holds, written with `count-label`. */
|
|
8978
|
+
"selection-label"?: (HelixGraph["selectionLabel"]) | undefined;
|
|
8979
|
+
/** What screen readers hear after a reader selects a note, in the list or in
|
|
8980
|
+
the drawing, with `{note}` for its name and `{count}` for how many notes
|
|
8981
|
+
the list then holds, written with `count-label`. */
|
|
8982
|
+
selectionLabel?: (HelixGraph["selectionLabel"]) | undefined;
|
|
8932
8983
|
/** The hint shown when one finger swipes over the graph with `gestures="cooperative"`. */
|
|
8933
8984
|
"two-finger-hint-label"?: (HelixGraph["twoFingerHintLabel"]) | undefined;
|
|
8934
8985
|
/** The hint shown when one finger swipes over the graph with `gestures="cooperative"`. */
|
|
@@ -9252,8 +9303,9 @@ no order in it. */
|
|
|
9252
9303
|
/** The name the `overview` gives the total of the readings drawn,
|
|
9253
9304
|
`{totalLabel}` in `overview-label`. */
|
|
9254
9305
|
totalLabel?: (HelixHeatmap["totalLabel"]) | undefined;
|
|
9255
|
-
/** The selected cells, by
|
|
9256
|
-
`2026-06-11`,
|
|
9306
|
+
/** The selected cells, separated by commas: each by the date its row's
|
|
9307
|
+
header carries in a `<time datetime>`, such as `2026-06-11`, or by the
|
|
9308
|
+
header's words where it carries none.
|
|
9257
9309
|
|
|
9258
9310
|
Set it to start with cells selected. Written by a press or a key under
|
|
9259
9311
|
`selection-mode`. */
|
|
@@ -11225,6 +11277,10 @@ loader is on the page.
|
|
|
11225
11277
|
Names an element in the same tree. In React it arrives as a property, the
|
|
11226
11278
|
way `Tooltip.for` does. */
|
|
11227
11279
|
for?: (HelixLoader["for"]) | undefined;
|
|
11280
|
+
/** Whether no work is in progress. The loader draws nothing of its own, has
|
|
11281
|
+
no role, and marks no region busy, and what is in the `content` slot
|
|
11282
|
+
shows. Clearing it starts `delay` again. */
|
|
11283
|
+
idle?: (HelixLoader["idle"]) | undefined;
|
|
11228
11284
|
/** The loader's name, announced by screen readers while the work is in
|
|
11229
11285
|
progress. */
|
|
11230
11286
|
label?: (HelixLoader["label"]) | undefined;
|
|
@@ -16404,6 +16460,18 @@ export type HelixSliderVueEvents = {
|
|
|
16404
16460
|
input: HelixSliderElementEvent;
|
|
16405
16461
|
};
|
|
16406
16462
|
|
|
16463
|
+
/** `HelixSparkline` component event */
|
|
16464
|
+
export type HelixSparklineElementEvent<E = Event> = TypedEvent<
|
|
16465
|
+
HelixSparkline,
|
|
16466
|
+
E
|
|
16467
|
+
>;
|
|
16468
|
+
/** `helix-reading-change` event type */
|
|
16469
|
+
export type HelixSparklineHelixReadingChangeElementEvent =
|
|
16470
|
+
HelixSparklineElementEvent<HelixReadingChangeEvent>;
|
|
16471
|
+
/** `helix-reading-press` event type */
|
|
16472
|
+
export type HelixSparklineHelixReadingPressElementEvent =
|
|
16473
|
+
HelixSparklineElementEvent<HelixReadingPressEvent>;
|
|
16474
|
+
|
|
16407
16475
|
export type HelixSparklineVueProps = {
|
|
16408
16476
|
/** How strongly the line, area, or columns are drawn.
|
|
16409
16477
|
|
|
@@ -16589,7 +16657,12 @@ not. */
|
|
|
16589
16657
|
values?: (HelixSparkline["values"]) | undefined;
|
|
16590
16658
|
};
|
|
16591
16659
|
|
|
16592
|
-
export type HelixSparklineVueEvents = {
|
|
16660
|
+
export type HelixSparklineVueEvents = {
|
|
16661
|
+
/** The reading shown moved, or was put away: `index` is the reading, or `-1` for none, with its row's `label` from a table and the `pointerType` that moved it. */
|
|
16662
|
+
"helix-reading-change": HelixSparklineHelixReadingChangeElementEvent;
|
|
16663
|
+
/** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
|
|
16664
|
+
"helix-reading-press": HelixSparklineHelixReadingPressElementEvent;
|
|
16665
|
+
};
|
|
16593
16666
|
|
|
16594
16667
|
export type HelixSpeedDialGroupVueProps = {
|
|
16595
16668
|
/** The group's name, drawn above its actions and read by screen readers. */
|
|
@@ -18124,8 +18197,9 @@ Absent selects nothing, and the tags carry no selected state at all. */
|
|
|
18124
18197
|
|
|
18125
18198
|
Absent selects nothing, and the tags carry no selected state at all. */
|
|
18126
18199
|
selectionMode?: (HelixTagGroup["selectionMode"]) | undefined;
|
|
18127
|
-
/** The selected tags' values, separated by commas
|
|
18128
|
-
space.
|
|
18200
|
+
/** The selected tags' values, separated by commas with no space, as Toggle
|
|
18201
|
+
Group and Table write theirs, since a value may hold a space. A value
|
|
18202
|
+
written with a space after each comma is read the same way.
|
|
18129
18203
|
|
|
18130
18204
|
Set it to start with tags selected. A tag's value is its `value`, or its
|
|
18131
18205
|
words where it has none. */
|
|
@@ -22670,7 +22744,7 @@ export type CustomCssProperties = {
|
|
|
22670
22744
|
"--listbox-max-block-size"?: (string) | undefined;
|
|
22671
22745
|
/** Color of the moving arc. */
|
|
22672
22746
|
"--loader-color"?: (string) | undefined;
|
|
22673
|
-
/** How long one turn of the arc takes, 0.8s by default. With motion reduced the
|
|
22747
|
+
/** How long one turn of the arc takes, 0.8s by default. With motion reduced the arc turns once every four seconds, whatever this says. */
|
|
22674
22748
|
"--loader-duration"?: (string) | undefined;
|
|
22675
22749
|
/** Diameter. Defaults to the size token that `size` picks, which is 1.5rem at the default density. */
|
|
22676
22750
|
"--loader-size"?: (string) | undefined;
|
|
@@ -24032,7 +24106,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
24032
24106
|
HelixAreaChartVueProps,
|
|
24033
24107
|
HelixAreaChartVueEvents
|
|
24034
24108
|
>;
|
|
24035
|
-
/** One fragment shader draws over a full-screen triangle, and its palette comes from the tokens. A background built on '--helix-color-primary' changes when your brand color changes. Every shape ramps through four token stops, and the token layer inverts each one: the page background, 'primary-subtle', 'primary', and a peak. The peak is the foreground on a dark page and 'primary-active' on a light one, because mixing a saturated hue toward near-black removes its chroma. The component reads which way the page runs from the background's luminance, because the mode is a private token. The geometry is three vertices derived from 'gl_VertexID'. There is no dependency, scene graph, attribute, buffer, or upload. The shader stops drawing in these cases: - The element is off screen or in a background tab. - 'prefers-reduced-motion' is set. The element shows one still frame. - The browser takes back the drawing context, on a GPU reset or past its limit of about sixteen contexts. The gradient shows until the context returns. On a renderer that draws on the CPU, such as a headless browser or a machine with no usable GPU, the element shows the gradient. There the shader costs about 450ms for the first frame of each element, against 2ms on a GPU. Aura is styled only and has behavior, which the tier split does not otherwise allow. Its behavior is drawing to a canvas, so there is no structure for you to restyle and nothing for a headless version to hold. **Content placed inside sits over the field**, in a 'content' part that covers the aura, so an interactive aura answers the pointer over the content too. Clicks still reach the content. Style '::part(content)' to place it, such as centering a hero's heading. **The colors are the theme's, and each has a hook**: '--aura-ground', '--aura-haze', '--aura-glow' and '--aura-peak', read by the shader and by the fallback gradient alike, from wherever on the page you set them. A hook changed while the aura draws, by a class, a style or the color mode, reaches the shader on the next frame. Where the gradient shows in place of the shader, the aura matches ':state(fallback)' and sends 'helix-aura-fallback' with the reason. */
|
|
24109
|
+
/** One fragment shader draws over a full-screen triangle, and its palette comes from the tokens. A background built on '--helix-color-primary' changes when your brand color changes. Every shape ramps through four token stops, and the token layer inverts each one: the page background, 'primary-subtle', 'primary', and a peak. The peak is the foreground on a dark page and 'primary-active' on a light one, because mixing a saturated hue toward near-black removes its chroma. The component reads which way the page runs from the background's luminance, because the mode is a private token. The geometry is three vertices derived from 'gl_VertexID'. There is no dependency, scene graph, attribute, buffer, or upload. The shader stops drawing in these cases: - The element is off screen or in a background tab. - 'prefers-reduced-motion' is set. The element shows one still frame. - 'paused' is set, from a pause control on your page. The element holds the frame it shows. - The browser takes back the drawing context, on a GPU reset or past its limit of about sixteen contexts. The gradient shows until the context returns. On a renderer that draws on the CPU, such as a headless browser or a machine with no usable GPU, the element shows the gradient. There the shader costs about 450ms for the first frame of each element, against 2ms on a GPU. Aura is styled only and has behavior, which the tier split does not otherwise allow. Its behavior is drawing to a canvas, so there is no structure for you to restyle and nothing for a headless version to hold. **Content placed inside sits over the field**, in a 'content' part that covers the aura, so an interactive aura answers the pointer over the content too. Clicks still reach the content. Style '::part(content)' to place it, such as centering a hero's heading. **The colors are the theme's, and each has a hook**: '--aura-ground', '--aura-haze', '--aura-glow' and '--aura-peak', read by the shader and by the fallback gradient alike, from wherever on the page you set them. A hook changed while the aura draws, by a class, a style or the color mode, reaches the shader on the next frame. Where the gradient shows in place of the shader, the aura matches ':state(fallback)' and sends 'helix-aura-fallback' with the reason. */
|
|
24036
24110
|
"helix-aura": DefineCustomElement<
|
|
24037
24111
|
HelixAura,
|
|
24038
24112
|
HelixAuraVueProps,
|
|
@@ -24110,7 +24184,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
24110
24184
|
HelixCanvasNodeVueProps,
|
|
24111
24185
|
HelixCanvasNodeVueEvents
|
|
24112
24186
|
>;
|
|
24113
|
-
/** Cards and connections take 'tone', like every other family. The tones resolve to semantic tokens, so a board follows the page into dark mode. 'fromJsonCanvas' maps the six JSON Canvas color presets to tones. Panning and zooming move only the plane. They write three custom properties that one transform reads, so the cards are placed once in the document's coordinates and are not laid out again. */
|
|
24187
|
+
/** Cards and connections take 'tone', like every other family. The tones resolve to semantic tokens, so a board follows the page into dark mode. 'fromJsonCanvas' maps the six JSON Canvas color presets to tones. Panning and zooming move only the plane. They write three custom properties that one transform reads, so the cards are placed once in the document's coordinates and are not laid out again. The [Canvases](https://fusion.dev/helix/docs/canvases) guide loads and saves a board, keeps it in your state, and lists every key and the roles a screen reader meets. */
|
|
24114
24188
|
"helix-canvas": DefineCustomElement<
|
|
24115
24189
|
HelixCanvas,
|
|
24116
24190
|
HelixCanvasVueProps,
|
|
@@ -24320,7 +24394,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
24320
24394
|
HelixFormatDateVueProps,
|
|
24321
24395
|
HelixFormatDateVueEvents
|
|
24322
24396
|
>;
|
|
24323
|
-
/** The styled frame: the drawing with its zoom and fullscreen buttons, and the list of notes beside it, which moves below the drawing where the frame is narrower than 40rem. The selected note leads the list on a surface of its own, and the notes linked to it are named by how they link. With 'no-panel', the drawing takes the whole frame, and a button among the controls opens the search and the list over its end. */
|
|
24397
|
+
/** The styled frame: the drawing with its zoom and fullscreen buttons, and the list of notes beside it, which moves below the drawing where the frame is narrower than 40rem. The selected note leads the list on a surface of its own, and the notes linked to it are named by how they link. With 'no-panel', the drawing takes the whole frame, and a button among the controls opens the search and the list over its end. The [Graphs](https://fusion.dev/helix/docs/graphs) guide connects a renderer, lists the keys and what a screen reader hears, and describes the methods of a driver for another renderer. */
|
|
24324
24398
|
"helix-graph": DefineCustomElement<
|
|
24325
24399
|
HelixGraph,
|
|
24326
24400
|
HelixGraphVueProps,
|
|
@@ -24410,7 +24484,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
24410
24484
|
HelixListboxVueProps,
|
|
24411
24485
|
HelixListboxVueEvents
|
|
24412
24486
|
>;
|
|
24413
|
-
/** Sized from the loader size tokens, so a loader is the same size wherever it is placed and follows the density region it sits in. Set '--loader-size: 1em' to match the text beside it, as inside a button. The color is 'currentColor', so it matches the text color around it, including inside a primary button. While 'delay' runs, the loader keeps its size and draws nothing, so the line it sits in does not move when it appears. */
|
|
24487
|
+
/** Sized from the loader size tokens, so a loader is the same size wherever it is placed and follows the density region it sits in. Set '--loader-size: 1em' to match the text beside it, as inside a button. The color is 'currentColor', so it matches the text color around it, including inside a primary button. While 'delay' runs, the loader keeps its size and draws nothing, so the line it sits in does not move when it appears. With something in the 'content' slot, the loader takes the larger of the ring and the content, and the ring centers over the content while the work runs. */
|
|
24414
24488
|
"helix-loader": DefineCustomElement<
|
|
24415
24489
|
HelixLoader,
|
|
24416
24490
|
HelixLoaderVueProps,
|
|
@@ -24464,7 +24538,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
24464
24538
|
HelixMapRasterVueProps,
|
|
24465
24539
|
HelixMapRasterVueEvents
|
|
24466
24540
|
>;
|
|
24467
|
-
/** The styled frame: a bordered box with the pan and zoom buttons in its top corner. The buttons stay visible when the header and footer fade. Set 'fill' to lay the map behind a page's own content, such as a hero whose words decide its height: the frame covers its container, which needs a position of its own, such as 'position: relative'. Set 'credit-placement' to draw the map's credit compact in a corner over the map, which suits a map the width of the page. */
|
|
24541
|
+
/** The styled frame: a bordered box with the pan and zoom buttons in its top corner. The buttons stay visible when the header and footer fade. Set 'fill' to lay the map behind a page's own content, such as a hero whose words decide its height: the frame covers its container, which needs a position of its own, such as 'position: relative'. Set 'credit-placement' to draw the map's credit compact in a corner over the map, which suits a map the width of the page. The [Maps](https://fusion.dev/helix/docs/maps) guide connects a renderer, lists the keys and what a screen reader hears, and describes every method a driver for another renderer can have. */
|
|
24468
24542
|
"helix-map": DefineCustomElement<
|
|
24469
24543
|
HelixMap,
|
|
24470
24544
|
HelixMapVueProps,
|