@fusion.dev/helix-headless 0.178.0 → 0.179.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 +384 -96
- package/dist/button/root/button-root.d.ts +12 -0
- package/dist/button/root/button-root.js +9 -0
- package/dist/drilldown/item/drilldown-item.d.ts +6 -0
- package/dist/drilldown/item/drilldown-item.js +9 -0
- package/dist/element-events.generated.js +7 -1
- package/dist/heatmap/root/heatmap-root.d.ts +54 -42
- package/dist/heatmap/root/heatmap-root.js +72 -54
- package/dist/menu/item/menu-item.d.ts +6 -0
- package/dist/menu/item/menu-item.js +9 -0
- package/dist/notifications/notification/notification.d.ts +37 -9
- package/dist/notifications/notification/notification.js +21 -4
- package/dist/speed-dial/item/speed-dial-item.d.ts +6 -0
- package/dist/speed-dial/item/speed-dial-item.js +9 -0
- package/dist/tabs/tab/tab.d.ts +6 -0
- package/dist/tabs/tab/tab.js +9 -0
- package/lint.json +1 -1
- package/package.json +5 -5
- package/types/jsx.d.ts +262 -114
- package/types/vue.d.ts +46 -39
- package/types/words.d.ts +13 -6
package/types/vue.d.ts
CHANGED
|
@@ -8007,6 +8007,12 @@ export type HelixHeadlessHeatmapElementEvent<E = Event> = TypedEvent<
|
|
|
8007
8007
|
/** `helix-before-change` event type */
|
|
8008
8008
|
export type HelixHeadlessHeatmapHelixBeforeChangeElementEvent =
|
|
8009
8009
|
HelixHeadlessHeatmapElementEvent<HelixBeforeChangeEvent>;
|
|
8010
|
+
/** `helix-reading-change` event type */
|
|
8011
|
+
export type HelixHeadlessHeatmapHelixReadingChangeElementEvent =
|
|
8012
|
+
HelixHeadlessHeatmapElementEvent<HelixReadingChangeEvent>;
|
|
8013
|
+
/** `helix-reading-press` event type */
|
|
8014
|
+
export type HelixHeadlessHeatmapHelixReadingPressElementEvent =
|
|
8015
|
+
HelixHeadlessHeatmapElementEvent<HelixReadingPressEvent>;
|
|
8010
8016
|
/** `helix-resize` event type */
|
|
8011
8017
|
export type HelixHeadlessHeatmapHelixResizeElementEvent =
|
|
8012
8018
|
HelixHeadlessHeatmapElementEvent<HelixResizeEvent>;
|
|
@@ -8018,16 +8024,6 @@ export type HelixHeadlessHeatmapVueProps = {
|
|
|
8018
8024
|
/** The name the `overview` gives the busiest reading, `{busiestLabel}` in
|
|
8019
8025
|
`overview-label`. */
|
|
8020
8026
|
busiestLabel?: (HelixHeadlessHeatmap["busiestLabel"]) | undefined;
|
|
8021
|
-
/** Shown when the table has no readings in it.
|
|
8022
|
-
|
|
8023
|
-
Never shown while the table cannot be read at all, which is a server render
|
|
8024
|
-
and the hydrating one after it: see `sourceKnown`. */
|
|
8025
|
-
"empty-text"?: (HelixHeadlessHeatmap["emptyText"]) | undefined;
|
|
8026
|
-
/** Shown when the table has no readings in it.
|
|
8027
|
-
|
|
8028
|
-
Never shown while the table cannot be read at all, which is a server render
|
|
8029
|
-
and the hydrating one after it: see `sourceKnown`. */
|
|
8030
|
-
emptyText?: (HelixHeadlessHeatmap["emptyText"]) | undefined;
|
|
8031
8027
|
/** Space between cells, in CSS pixels. It is a number for the same reason
|
|
8032
8028
|
`min-cell` is. */
|
|
8033
8029
|
gap?: (HelixHeadlessHeatmap["gap"]) | undefined;
|
|
@@ -8085,13 +8081,9 @@ calendar heatmap does: a week is a column, so the strip reads along the
|
|
|
8085
8081
|
line in weeks, from the right on a right-to-left page, and top to bottom in
|
|
8086
8082
|
days. */
|
|
8087
8083
|
rows?: (HelixHeadlessHeatmap["rows"]) | undefined;
|
|
8088
|
-
/** What the readout
|
|
8089
|
-
where the cell stands: "Day 1: 0 (1 of 14, selected)". Empty adds
|
|
8090
|
-
nothing. */
|
|
8084
|
+
/** What the readout added for a selected cell, under `selection-mode`. */
|
|
8091
8085
|
"selected-label"?: (HelixHeadlessHeatmap["selectedLabel"]) | undefined;
|
|
8092
|
-
/** What the readout
|
|
8093
|
-
where the cell stands: "Day 1: 0 (1 of 14, selected)". Empty adds
|
|
8094
|
-
nothing. */
|
|
8086
|
+
/** What the readout added for a selected cell, under `selection-mode`. */
|
|
8095
8087
|
selectedLabel?: (HelixHeadlessHeatmap["selectedLabel"]) | undefined;
|
|
8096
8088
|
/** What the `selection` part says after the selection changes. `{count}` is
|
|
8097
8089
|
how many cells are selected, written in the locale, and a language that
|
|
@@ -8148,6 +8140,25 @@ header's words where it carries none.
|
|
|
8148
8140
|
Set it to start with cells selected. Written by a press or a key under
|
|
8149
8141
|
`selection-mode`. */
|
|
8150
8142
|
value?: (HelixHeadlessHeatmap["value"]) | undefined;
|
|
8143
|
+
/** The words shown in place of the drawing when the table has no readings,
|
|
8144
|
+
and the fallback of the `empty` slot. */
|
|
8145
|
+
"empty-text"?: (HelixHeadlessHeatmap["emptyText"]) | undefined;
|
|
8146
|
+
/** The words shown in place of the drawing when the table has no readings,
|
|
8147
|
+
and the fallback of the `empty` slot. */
|
|
8148
|
+
emptyText?: (HelixHeadlessHeatmap["emptyText"]) | undefined;
|
|
8149
|
+
/** Whether the readings are still on their way. The chart shows
|
|
8150
|
+
`loading-text` in place of an empty drawing until it has readings.
|
|
8151
|
+
|
|
8152
|
+
Reflected, so a stylesheet can treat the chart while it waits. A chart
|
|
8153
|
+
that already has readings keeps drawing them, so a refresh does not
|
|
8154
|
+
blank it. */
|
|
8155
|
+
loading?: (HelixHeadlessHeatmap["loading"]) | undefined;
|
|
8156
|
+
/** The words shown in place of the drawing while `loading` is set and
|
|
8157
|
+
there are no readings yet, and the fallback of the `loading` slot. */
|
|
8158
|
+
"loading-text"?: (HelixHeadlessHeatmap["loadingText"]) | undefined;
|
|
8159
|
+
/** The words shown in place of the drawing while `loading` is set and
|
|
8160
|
+
there are no readings yet, and the fallback of the `loading` slot. */
|
|
8161
|
+
loadingText?: (HelixHeadlessHeatmap["loadingText"]) | undefined;
|
|
8151
8162
|
/** The id of the table to read.
|
|
8152
8163
|
|
|
8153
8164
|
Names a table in the same tree, so a chart inside another component's
|
|
@@ -8214,6 +8225,10 @@ export type HelixHeadlessHeatmapVueEvents = {
|
|
|
8214
8225
|
change: HelixHeadlessHeatmapElementEvent;
|
|
8215
8226
|
/** Fired before a press or a key changes which cells are selected, with the `value` it would leave. Cancelable. */
|
|
8216
8227
|
"helix-before-change": HelixHeadlessHeatmapHelixBeforeChangeElementEvent;
|
|
8228
|
+
/** The reading shown moved, or was put away: `index` is the row, or `-1` for none, with its `label`, the `series` the keys rest on, and the `pointerType` that moved it. */
|
|
8229
|
+
"helix-reading-change": HelixHeadlessHeatmapHelixReadingChangeElementEvent;
|
|
8230
|
+
/** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
|
|
8231
|
+
"helix-reading-press": HelixHeadlessHeatmapHelixReadingPressElementEvent;
|
|
8217
8232
|
/** Fired when the number of cells drawn changes, with the new number. */
|
|
8218
8233
|
"helix-resize": HelixHeadlessHeatmapHelixResizeElementEvent;
|
|
8219
8234
|
};
|
|
@@ -11421,6 +11436,20 @@ empty string would give. */
|
|
|
11421
11436
|
"default-read"?: (HelixHeadlessNotification["defaultRead"]) | undefined;
|
|
11422
11437
|
/** Whether the notification starts as read, used until `read` is set. */
|
|
11423
11438
|
defaultRead?: (HelixHeadlessNotification["defaultRead"]) | undefined;
|
|
11439
|
+
/** The dismiss control's name, read by screen readers, with `{label}` for the
|
|
11440
|
+
row's own words.
|
|
11441
|
+
|
|
11442
|
+
One sentence with the words in it, so a translation puts them where its
|
|
11443
|
+
language does: `registerWords('de', { 'helix-notification': { dismissLabel:
|
|
11444
|
+
'{label} schließen' } })`. */
|
|
11445
|
+
"dismiss-label"?: (HelixHeadlessNotification["dismissLabel"]) | undefined;
|
|
11446
|
+
/** The dismiss control's name, read by screen readers, with `{label}` for the
|
|
11447
|
+
row's own words.
|
|
11448
|
+
|
|
11449
|
+
One sentence with the words in it, so a translation puts them where its
|
|
11450
|
+
language does: `registerWords('de', { 'helix-notification': { dismissLabel:
|
|
11451
|
+
'{label} schließen' } })`. */
|
|
11452
|
+
dismissLabel?: (HelixHeadlessNotification["dismissLabel"]) | undefined;
|
|
11424
11453
|
/** Locale for the timestamp.
|
|
11425
11454
|
|
|
11426
11455
|
Empty is the runtime's own. */
|
|
@@ -11451,28 +11480,6 @@ its place. Translate it with the rest of your interface. */
|
|
|
11451
11480
|
unreadLabel?: (HelixHeadlessNotification["unreadLabel"]) | undefined;
|
|
11452
11481
|
/** Whether the element shows a control that dismisses it. */
|
|
11453
11482
|
dismissible?: (HelixHeadlessNotification["dismissible"]) | undefined;
|
|
11454
|
-
/** The dismiss control's label, read by screen readers.
|
|
11455
|
-
|
|
11456
|
-
`attribute` is spelled out because Lit lowercases a property name to
|
|
11457
|
-
derive one rather than dash-casing it, so this would otherwise be
|
|
11458
|
-
reachable only as `dismisslabel`, which nobody would guess and no linter
|
|
11459
|
-
would catch.
|
|
11460
|
-
|
|
11461
|
-
A word property: register it for a locale under the host's key. A family
|
|
11462
|
-
that names the control otherwise, such as Tag's `Remove {label}`,
|
|
11463
|
-
declares its own English with `@words` above the override. */
|
|
11464
|
-
"dismiss-label"?: (HelixHeadlessNotification["dismissLabel"]) | undefined;
|
|
11465
|
-
/** The dismiss control's label, read by screen readers.
|
|
11466
|
-
|
|
11467
|
-
`attribute` is spelled out because Lit lowercases a property name to
|
|
11468
|
-
derive one rather than dash-casing it, so this would otherwise be
|
|
11469
|
-
reachable only as `dismisslabel`, which nobody would guess and no linter
|
|
11470
|
-
would catch.
|
|
11471
|
-
|
|
11472
|
-
A word property: register it for a locale under the host's key. A family
|
|
11473
|
-
that names the control otherwise, such as Tag's `Remove {label}`,
|
|
11474
|
-
declares its own English with `@words` above the override. */
|
|
11475
|
-
dismissLabel?: (HelixHeadlessNotification["dismissLabel"]) | undefined;
|
|
11476
11483
|
};
|
|
11477
11484
|
|
|
11478
11485
|
export type HelixHeadlessNotificationVueEvents = {
|
|
@@ -19555,7 +19562,7 @@ export interface WcToolkitVueGlobalComponents {
|
|
|
19555
19562
|
HelixHeadlessGraphVueProps,
|
|
19556
19563
|
HelixHeadlessGraphVueEvents
|
|
19557
19564
|
>;
|
|
19558
|
-
/** A grid of cells, each colored by a tone. 'rows="1"' makes a status strip, and 'rows="7"' makes a contribution graph. GitHub's contribution graph uses five discrete levels, which a set of tones covers. Color in a heatmap is per cell. In every other Helix chart, color is per series, so ninety differently colored cells would need ninety series. **The data is a real '<table>' named by 'for'**, as in every Helix chart, and the table is the accessible representation. Hide it with 'data-hidden-visually', and screen readers still read it. A cell takes its tone from its own 'data-tone', or from 'thresholds' and 'tones' applied to its value. 'data-tone' wins, so when you already know a day was degraded, you can set the tone directly. **The headless tier does not resolve tone names.** A tone named 'success' writes '--heatmap-tone: var(--heatmap-tone-success)', and the styled tier or your own stylesheet defines that property. The headless tier does not use 'var(--helix-color-*)'. **The strip is read by key.** It takes focus once it has cells. The up and down arrows move a cell, the left and right arrows move a column, which is a week with 'rows="7"', and Home and End go to the first and the last. The tooltip follows, the 'live' part says the cell's row in words, and Escape puts the tooltip away. PageUp and PageDown move a month, to the same day, where each row's header carries its date as a '<time datetime>', and four columns otherwise, which is four weeks with 'rows="7"'. **The strip describes itself.** The 'overview' part says the busiest reading and the total of the readings drawn, "Busiest: 11 Jun, 12; Total 84", and the strip is described by it, as every chart is by its summary. Hide it visually. The 'summary' slot is still yours, for words of your own. **'selection-mode' lets a reader select cells**: 'single' one at a time and 'multiple' any number. Space, Enter or a press selects the cell the keys or the pointer rest on, or lets it go, and under 'multiple' Shift with an arrow, Home, End, PageUp or PageDown takes in every cell from the last one pressed to where the key went. 'value' holds the selected days, separated by commas: each by its row's '<time datetime>', such as '2026-06-11', or by its row's name where the row carries no date. A change asks with 'helix-before-change' and tells with 'change', and the 'selection' part says how many are selected, in 'selection-label'. **Keyboard.** The strip is one tab stop once it has cells. | Key | What it does | |---|---| | Tab | Moves focus to the strip and shows the first cell. | | Down, Up | Moves to the next or the previous cell. | | Right, Left | Moves a column on or back, a week with 'rows="7"'. On a right-to-left page, Left moves on. | | Home, End | Moves to the first or the last cell. | | Page Down, Page Up | Moves a month on or back where the rows carry dates, and four columns otherwise. | | Enter, Space |
|
|
19565
|
+
/** A grid of cells, each colored by a tone. 'rows="1"' makes a status strip, and 'rows="7"' makes a contribution graph. GitHub's contribution graph uses five discrete levels, which a set of tones covers. Color in a heatmap is per cell. In every other Helix chart, color is per series, so ninety differently colored cells would need ninety series. **The data is a real '<table>' named by 'for'**, as in every Helix chart, and the table is the accessible representation. Hide it with 'data-hidden-visually', and screen readers still read it. A cell takes its tone from its own 'data-tone', or from 'thresholds' and 'tones' applied to its value. 'data-tone' wins, so when you already know a day was degraded, you can set the tone directly. **The headless tier does not resolve tone names.** A tone named 'success' writes '--heatmap-tone: var(--heatmap-tone-success)', and the styled tier or your own stylesheet defines that property. The headless tier does not use 'var(--helix-color-*)'. **The strip is read by key.** It takes focus once it has cells. The up and down arrows move a cell, the left and right arrows move a column, which is a week with 'rows="7"', and Home and End go to the first and the last. The tooltip follows, the 'live' part says the cell's row in words, and Escape puts the tooltip away. PageUp and PageDown move a month, to the same day, where each row's header carries its date as a '<time datetime>', and four columns otherwise, which is four weeks with 'rows="7"'. **The strip describes itself.** The 'overview' part says the busiest reading and the total of the readings drawn, "Busiest: 11 Jun, 12; Total 84", and the strip is described by it, as every chart is by its summary. Hide it visually. The 'summary' slot is still yours, for words of your own. **'selection-mode' lets a reader select cells**: 'single' one at a time and 'multiple' any number. Space, Enter or a press selects the cell the keys or the pointer rest on, or lets it go, and under 'multiple' Shift with an arrow, Home, End, PageUp or PageDown takes in every cell from the last one pressed to where the key went. 'value' holds the selected days, separated by commas: each by its row's '<time datetime>', such as '2026-06-11', or by its row's name where the row carries no date. A change asks with 'helix-before-change' and tells with 'change', and the 'selection' part says how many are selected, in 'selection-label'. **Under 'selection-mode' the strip is a grid**, so the selection is state a reader is told rather than words alone: each column of the strip is a 'row', a week with 'rows="7"', and each cell a 'gridcell' named by its row in the table and carrying 'aria-selected'. The strip says 'aria-multiselectable' under 'multiple' and points at the cell the keys rest on with 'aria-activedescendant', so a screen reader reads that cell, and the 'live' part stays quiet. Without 'selection-mode' nothing is selectable, and the strip is an application with the readout, as every chart's plot is. **Readings are sent as every chart sends them.** 'helix-reading-change' says each move of the reading, by pointer, tap or key, and 'helix-reading-press' a reading clicked, tapped, or pressed with Enter or Space, each with the row of the table in 'index'. **Nothing to draw.** A table with no readings shows 'empty-text', "No readings", under the strip, and 'loading' shows 'loading-text' there until readings arrive. The 'empty' and 'loading' slots take markup in place of either, as on every chart. **Keyboard.** The strip is one tab stop once it has cells. | Key | What it does | |---|---| | Tab | Moves focus to the strip and shows the first cell. | | Down, Up | Moves to the next or the previous cell. | | Right, Left | Moves a column on or back, a week with 'rows="7"'. On a right-to-left page, Left moves on. | | Home, End | Moves to the first or the last cell. | | Page Down, Page Up | Moves a month on or back where the rows carry dates, and four columns otherwise. | | Enter, Space | Presses the cell, which sends 'helix-reading-press', and selects it or lets it go under 'selection-mode'. | | Shift with an arrow, Home, End, Page Up or Page Down | Selects every cell from the last one pressed to where the key went, under 'selection-mode="multiple"'. | | Escape | Puts the cell's tooltip away. | */
|
|
19559
19566
|
"helix-headless-heatmap": DefineCustomElement<
|
|
19560
19567
|
HelixHeadlessHeatmap,
|
|
19561
19568
|
HelixHeadlessHeatmapVueProps,
|
package/types/words.d.ts
CHANGED
|
@@ -1815,11 +1815,19 @@ declare module '@fusion.dev/helix-core' {
|
|
|
1815
1815
|
*/
|
|
1816
1816
|
busiestLabel: Message
|
|
1817
1817
|
/**
|
|
1818
|
-
*
|
|
1818
|
+
* The words shown in place of the drawing when the table has no readings,
|
|
1819
|
+
* and the fallback of the `empty` slot.
|
|
1819
1820
|
*
|
|
1820
1821
|
* English: `No readings`
|
|
1821
1822
|
*/
|
|
1822
1823
|
emptyText: Message
|
|
1824
|
+
/**
|
|
1825
|
+
* The words shown in place of the drawing while `loading` is set and
|
|
1826
|
+
* there are no readings yet, and the fallback of the `loading` slot.
|
|
1827
|
+
*
|
|
1828
|
+
* English: `Loading readings`
|
|
1829
|
+
*/
|
|
1830
|
+
loadingText: Message
|
|
1823
1831
|
/**
|
|
1824
1832
|
* The `overview`'s sentence. `{busiestLabel}` and `{totalLabel}` are
|
|
1825
1833
|
* `busiest-label` and `total-label`, `{busiest}` the busiest reading's name
|
|
@@ -1838,9 +1846,7 @@ declare module '@fusion.dev/helix-core' {
|
|
|
1838
1846
|
*/
|
|
1839
1847
|
positionLabel: Message
|
|
1840
1848
|
/**
|
|
1841
|
-
* What the readout
|
|
1842
|
-
* where the cell stands: "Day 1: 0 (1 of 14, selected)". Empty adds
|
|
1843
|
-
* nothing.
|
|
1849
|
+
* What the readout added for a selected cell, under `selection-mode`.
|
|
1844
1850
|
*
|
|
1845
1851
|
* English: `selected`
|
|
1846
1852
|
*/
|
|
@@ -2458,9 +2464,10 @@ declare module '@fusion.dev/helix-core' {
|
|
|
2458
2464
|
}
|
|
2459
2465
|
'helix-notification': {
|
|
2460
2466
|
/**
|
|
2461
|
-
* The dismiss control's
|
|
2467
|
+
* The dismiss control's name, read by screen readers, with `{label}` for the
|
|
2468
|
+
* row's own words.
|
|
2462
2469
|
*
|
|
2463
|
-
* English: `Dismiss`
|
|
2470
|
+
* English: `Dismiss {label}`
|
|
2464
2471
|
*/
|
|
2465
2472
|
dismissLabel: Message
|
|
2466
2473
|
/**
|