@fusion.dev/helix-headless 0.184.0 → 0.186.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 +3796 -1105
- package/dist/accordion/item/accordion-item.js +1 -1
- package/dist/button-group/root/button-group-root.js +1 -1
- package/dist/canvas/root/canvas-root.js +1 -1
- package/dist/data-table/root/data-table-root.d.ts +25 -6
- package/dist/data-table/root/data-table-root.js +21 -9
- package/dist/dialog/root/dialog-root.js +1 -1
- package/dist/drawer/root/drawer-root.js +1 -1
- package/dist/drilldown/item/drilldown-item.js +1 -1
- package/dist/element-events.generated.js +7 -0
- package/dist/graph/root/graph-root.d.ts +6 -4
- package/dist/graph/root/graph-root.js +3 -3
- package/dist/heatmap/root/heatmap-root.d.ts +15 -15
- package/dist/icon/all/index.js +0 -3
- package/dist/icon/root/icon-root.d.ts +11 -18
- package/dist/icon/root/icon-root.js +4 -16
- package/dist/icon/set.js +2 -16
- package/dist/index.d.ts +2 -1
- package/dist/index.js +2 -1
- package/dist/isometric-heatmap/index.d.ts +1 -0
- package/dist/isometric-heatmap/index.js +1 -0
- package/dist/isometric-heatmap/projection.d.ts +70 -0
- package/dist/isometric-heatmap/projection.js +49 -0
- package/dist/isometric-heatmap/root/isometric-heatmap-root.d.ts +118 -0
- package/dist/isometric-heatmap/root/isometric-heatmap-root.js +127 -0
- package/dist/lightbox/root/lightbox-root.js +1 -1
- package/dist/list/root/list-root.js +1 -1
- package/dist/map/root/map-root.js +1 -1
- package/dist/menu/item/menu-item.js +1 -1
- package/dist/outline/root/outline-root.js +2 -2
- package/dist/popover/root/popover-root.js +1 -1
- package/dist/table/root/table-root.d.ts +4 -6
- package/dist/table/root/table-root.js +3 -29
- package/dist/table/tracks.d.ts +20 -0
- package/dist/table/tracks.js +28 -0
- package/dist/tabs/root/tabs-root.js +4 -5
- package/dist/tabs/tab/tab.js +2 -3
- package/dist/time-picker/root/time-picker-root.js +1 -1
- package/dist/toggle/root/toggle-root.js +1 -1
- package/dist/tour/root/tour-root.js +1 -1
- package/dist/tree/root/tree-root.js +1 -1
- package/dist/video/root/video-root.js +1 -1
- package/lint.json +1 -1
- package/package.json +6 -6
- package/types/jsx.d.ts +1340 -74
- package/types/svelte.d.ts +1 -0
- package/types/vue.d.ts +279 -13
- package/types/words.d.ts +69 -0
package/types/jsx.d.ts
CHANGED
|
@@ -96,6 +96,7 @@ import type {
|
|
|
96
96
|
HelixHeadlessIconButton,
|
|
97
97
|
HelixHeadlessImage,
|
|
98
98
|
HelixHeadlessInput,
|
|
99
|
+
HelixHeadlessIsometricHeatmap,
|
|
99
100
|
HelixHeadlessKbd,
|
|
100
101
|
HelixHeadlessLegend,
|
|
101
102
|
HelixHeadlessLightbox,
|
|
@@ -9428,6 +9429,16 @@ and the grid becomes a tree grid.
|
|
|
9428
9429
|
Reflected, because the styled tier indents a tree grid's row headers by
|
|
9429
9430
|
it. No default, so a table that sets none writes nothing onto its host. */
|
|
9430
9431
|
childField?: (HelixHeadlessDataTable["childField"]) | undefined;
|
|
9432
|
+
/** The column tracks, as a grid track list such as `2fr 1fr max-content`,
|
|
9433
|
+
dealt out one track to a column in the order the columns are written. A
|
|
9434
|
+
column's own `width` wins in its place, and a column it does not reach
|
|
9435
|
+
takes the track a column with no `width` takes.
|
|
9436
|
+
|
|
9437
|
+
**The one track list a server can send.** A server rendering this element
|
|
9438
|
+
has no columns to read a `width` from, and neither has a stylesheet laying
|
|
9439
|
+
out the rows a page served before the table upgrades, so a table sized here
|
|
9440
|
+
lays those rows out at the widths it draws. */
|
|
9441
|
+
columns?: (HelixHeadlessDataTable["columns"]) | undefined;
|
|
9431
9442
|
/** The keys of the rows open at the start, separated by commas. Used until
|
|
9432
9443
|
`expanded` is set. */
|
|
9433
9444
|
"default-expanded"?: (HelixHeadlessDataTable["defaultExpanded"]) | undefined;
|
|
@@ -9861,6 +9872,16 @@ and the grid becomes a tree grid.
|
|
|
9861
9872
|
Reflected, because the styled tier indents a tree grid's row headers by
|
|
9862
9873
|
it. No default, so a table that sets none writes nothing onto its host. */
|
|
9863
9874
|
"prop:childField"?: (HelixHeadlessDataTable["childField"]) | undefined;
|
|
9875
|
+
/** The column tracks, as a grid track list such as `2fr 1fr max-content`,
|
|
9876
|
+
dealt out one track to a column in the order the columns are written. A
|
|
9877
|
+
column's own `width` wins in its place, and a column it does not reach
|
|
9878
|
+
takes the track a column with no `width` takes.
|
|
9879
|
+
|
|
9880
|
+
**The one track list a server can send.** A server rendering this element
|
|
9881
|
+
has no columns to read a `width` from, and neither has a stylesheet laying
|
|
9882
|
+
out the rows a page served before the table upgrades, so a table sized here
|
|
9883
|
+
lays those rows out at the widths it draws. */
|
|
9884
|
+
"prop:columns"?: (HelixHeadlessDataTable["columns"]) | undefined;
|
|
9864
9885
|
/** The keys of the rows open at the start, separated by commas. Used until
|
|
9865
9886
|
`expanded` is set. */
|
|
9866
9887
|
"attr:default-expanded"?: (HelixHeadlessDataTable["defaultExpanded"]) | undefined;
|
|
@@ -16561,10 +16582,12 @@ disagreeing with its own name for every reader who meant the left. */
|
|
|
16561
16582
|
/** The name of the icon in the Helix set.
|
|
16562
16583
|
|
|
16563
16584
|
**A lookup, and the reason both this and `icon` exist.** A name is a string,
|
|
16564
|
-
so it is what markup can carry, and resolving one means an index
|
|
16565
|
-
bundler can shake
|
|
16566
|
-
|
|
16567
|
-
|
|
16585
|
+
so it is what markup can carry, and resolving one means an index of the
|
|
16586
|
+
whole set that no bundler can shake: 15 kB for a consumer who renders one
|
|
16587
|
+
mark. An attribute is the only thing an HTML author can write, and that is
|
|
16588
|
+
worth the index; a consumer who would rather not pay it imports the
|
|
16589
|
+
element from `icon/root` and registers the glyphs it names, or hands over
|
|
16590
|
+
the value instead.
|
|
16568
16591
|
|
|
16569
16592
|
A name written `prefix:name` asks the library registered under that
|
|
16570
16593
|
prefix. */
|
|
@@ -16608,10 +16631,12 @@ disagreeing with its own name for every reader who meant the left. */
|
|
|
16608
16631
|
/** The name of the icon in the Helix set.
|
|
16609
16632
|
|
|
16610
16633
|
**A lookup, and the reason both this and `icon` exist.** A name is a string,
|
|
16611
|
-
so it is what markup can carry, and resolving one means an index
|
|
16612
|
-
bundler can shake
|
|
16613
|
-
|
|
16614
|
-
|
|
16634
|
+
so it is what markup can carry, and resolving one means an index of the
|
|
16635
|
+
whole set that no bundler can shake: 15 kB for a consumer who renders one
|
|
16636
|
+
mark. An attribute is the only thing an HTML author can write, and that is
|
|
16637
|
+
worth the index; a consumer who would rather not pay it imports the
|
|
16638
|
+
element from `icon/root` and registers the glyphs it names, or hands over
|
|
16639
|
+
the value instead.
|
|
16615
16640
|
|
|
16616
16641
|
A name written `prefix:name` asks the library registered under that
|
|
16617
16642
|
prefix. */
|
|
@@ -17361,6 +17386,498 @@ invalid, and `true`, `null`, or nothing to accept the value. */
|
|
|
17361
17386
|
textContent?: (string | number) | undefined;
|
|
17362
17387
|
};
|
|
17363
17388
|
|
|
17389
|
+
/** `HelixHeadlessIsometricHeatmap` component event */
|
|
17390
|
+
export type HelixHeadlessIsometricHeatmapElementEvent<E = Event> = TypedEvent<
|
|
17391
|
+
HelixHeadlessIsometricHeatmap,
|
|
17392
|
+
E
|
|
17393
|
+
>;
|
|
17394
|
+
/** `helix-before-change` event type */
|
|
17395
|
+
export type HelixHeadlessIsometricHeatmapHelixBeforeChangeElementEvent =
|
|
17396
|
+
HelixHeadlessIsometricHeatmapElementEvent<HelixBeforeChangeEvent>;
|
|
17397
|
+
/** `helix-reading-change` event type */
|
|
17398
|
+
export type HelixHeadlessIsometricHeatmapHelixReadingChangeElementEvent =
|
|
17399
|
+
HelixHeadlessIsometricHeatmapElementEvent<HelixReadingChangeEvent>;
|
|
17400
|
+
/** `helix-reading-press` event type */
|
|
17401
|
+
export type HelixHeadlessIsometricHeatmapHelixReadingPressElementEvent =
|
|
17402
|
+
HelixHeadlessIsometricHeatmapElementEvent<HelixReadingPressEvent>;
|
|
17403
|
+
/** `helix-resize` event type */
|
|
17404
|
+
export type HelixHeadlessIsometricHeatmapHelixResizeElementEvent =
|
|
17405
|
+
HelixHeadlessIsometricHeatmapElementEvent<HelixResizeEvent>;
|
|
17406
|
+
|
|
17407
|
+
export type HelixHeadlessIsometricHeatmapProps = {
|
|
17408
|
+
/** Draws every prism at no height, so the tones lie on a plane. */
|
|
17409
|
+
flat?: (HelixHeadlessIsometricHeatmap["flat"]) | undefined;
|
|
17410
|
+
/** How tall the highest reading stands, in cells. Every other reading stands
|
|
17411
|
+
at its share of it. */
|
|
17412
|
+
relief?: (HelixHeadlessIsometricHeatmap["relief"]) | undefined;
|
|
17413
|
+
/** The words shown in place of the drawing when the table has no readings,
|
|
17414
|
+
and the fallback of the `empty` slot. */
|
|
17415
|
+
"empty-text"?: (HelixHeadlessIsometricHeatmap["emptyText"]) | undefined;
|
|
17416
|
+
/** The words shown in place of the drawing when the table has no readings,
|
|
17417
|
+
and the fallback of the `empty` slot. */
|
|
17418
|
+
emptyText?: (HelixHeadlessIsometricHeatmap["emptyText"]) | undefined;
|
|
17419
|
+
/** Whether the readings are still on their way. The chart shows
|
|
17420
|
+
`loading-text` in place of an empty drawing until it has readings.
|
|
17421
|
+
|
|
17422
|
+
Reflected, so a stylesheet can treat the chart while it waits. A chart
|
|
17423
|
+
that already has readings keeps drawing them, so a refresh does not
|
|
17424
|
+
blank it. */
|
|
17425
|
+
loading?: (HelixHeadlessIsometricHeatmap["loading"]) | undefined;
|
|
17426
|
+
/** The words shown in place of the drawing while `loading` is set and
|
|
17427
|
+
there are no readings yet, and the fallback of the `loading` slot. */
|
|
17428
|
+
"loading-text"?: (HelixHeadlessIsometricHeatmap["loadingText"]) | undefined;
|
|
17429
|
+
/** The words shown in place of the drawing while `loading` is set and
|
|
17430
|
+
there are no readings yet, and the fallback of the `loading` slot. */
|
|
17431
|
+
loadingText?: (HelixHeadlessIsometricHeatmap["loadingText"]) | undefined;
|
|
17432
|
+
/** The id of the table to read.
|
|
17433
|
+
|
|
17434
|
+
Names a table in the same tree, so a chart inside another component's
|
|
17435
|
+
shadow root reads a table in that root rather than one in the document. A
|
|
17436
|
+
`<table>` or anything built from grid roles, including `helix-table`.
|
|
17437
|
+
|
|
17438
|
+
**In React this arrives as a property and not as an attribute**, the way
|
|
17439
|
+
`Tooltip.for` does, so it does not reflect and nothing styles on it. */
|
|
17440
|
+
for?: (HelixHeadlessIsometricHeatmap["for"]) | undefined;
|
|
17441
|
+
/** The chart's name, which starts the chart's text summary.
|
|
17442
|
+
|
|
17443
|
+
Absent falls back to the table's own caption, which is usually the right
|
|
17444
|
+
words and is already written. */
|
|
17445
|
+
label?: (HelixHeadlessIsometricHeatmap["label"]) | undefined;
|
|
17446
|
+
/** The locale the chart's own numbers are written in: its axis, its
|
|
17447
|
+
percentages and its totals, such as `de` for `1.240` and `32 %`.
|
|
17448
|
+
|
|
17449
|
+
Absent reads the nearest `lang`, then the runtime's own. The table's
|
|
17450
|
+
cells are shown as the table writes them, whatever this says. */
|
|
17451
|
+
locale?: (HelixHeadlessIsometricHeatmap["locale"]) | undefined;
|
|
17452
|
+
/** Where a reading the keys moved to stands among the readings, said after
|
|
17453
|
+
it. `{position}` and `{count}` are replaced with the numbers, written in
|
|
17454
|
+
`locale`.
|
|
17455
|
+
|
|
17456
|
+
Set it to the words of the page's language, such as `{position} von
|
|
17457
|
+
{count}`, or to nothing to say no position. A slice or a series a
|
|
17458
|
+
legend hid is not counted. */
|
|
17459
|
+
"position-label"?: (HelixHeadlessIsometricHeatmap["positionLabel"]) | undefined;
|
|
17460
|
+
/** Where a reading the keys moved to stands among the readings, said after
|
|
17461
|
+
it. `{position}` and `{count}` are replaced with the numbers, written in
|
|
17462
|
+
`locale`.
|
|
17463
|
+
|
|
17464
|
+
Set it to the words of the page's language, such as `{position} von
|
|
17465
|
+
{count}`, or to nothing to say no position. A slice or a series a
|
|
17466
|
+
legend hid is not counted. */
|
|
17467
|
+
positionLabel?: (HelixHeadlessIsometricHeatmap["positionLabel"]) | undefined;
|
|
17468
|
+
/** The name the `overview` gives the busiest reading, `{busiestLabel}` in
|
|
17469
|
+
`overview-label`. */
|
|
17470
|
+
"busiest-label"?: (HelixHeadlessIsometricHeatmap["busiestLabel"]) | undefined;
|
|
17471
|
+
/** The name the `overview` gives the busiest reading, `{busiestLabel}` in
|
|
17472
|
+
`overview-label`. */
|
|
17473
|
+
busiestLabel?: (HelixHeadlessIsometricHeatmap["busiestLabel"]) | undefined;
|
|
17474
|
+
/** Space between cells, in CSS pixels. It is a number for the same reason
|
|
17475
|
+
`min-cell` is. */
|
|
17476
|
+
gap?: (HelixHeadlessIsometricHeatmap["gap"]) | undefined;
|
|
17477
|
+
/** The smallest a cell may get before the strip draws fewer of them, in CSS pixels.
|
|
17478
|
+
|
|
17479
|
+
**Set this only to overrule what the strip actually draws.** The arithmetic
|
|
17480
|
+
needs a width in pixels and the width is a length the stylesheet resolves,
|
|
17481
|
+
so a number written here that disagrees with the sheet is a promise the
|
|
17482
|
+
consumer has to keep by hand, and the one number a summary is told to trust
|
|
17483
|
+
is the one it gets wrong.
|
|
17484
|
+
|
|
17485
|
+
The strip measures itself, so sizing the cells in a sheet is enough on its
|
|
17486
|
+
own and these two are the estimate used until the first measurement lands.
|
|
17487
|
+
Writing the attribute pins the value and stops the measurement being
|
|
17488
|
+
consulted, which is what a container query or a transition on the cell size
|
|
17489
|
+
wants, where what is drawn this frame is not what the arithmetic should
|
|
17490
|
+
plan around.
|
|
17491
|
+
|
|
17492
|
+
Zero turns the dropping off altogether, which is right for a strip in a
|
|
17493
|
+
container that cannot get narrow. */
|
|
17494
|
+
"min-cell"?: (HelixHeadlessIsometricHeatmap["minCell"] | `${number}`) | undefined;
|
|
17495
|
+
/** The smallest a cell may get before the strip draws fewer of them, in CSS pixels.
|
|
17496
|
+
|
|
17497
|
+
**Set this only to overrule what the strip actually draws.** The arithmetic
|
|
17498
|
+
needs a width in pixels and the width is a length the stylesheet resolves,
|
|
17499
|
+
so a number written here that disagrees with the sheet is a promise the
|
|
17500
|
+
consumer has to keep by hand, and the one number a summary is told to trust
|
|
17501
|
+
is the one it gets wrong.
|
|
17502
|
+
|
|
17503
|
+
The strip measures itself, so sizing the cells in a sheet is enough on its
|
|
17504
|
+
own and these two are the estimate used until the first measurement lands.
|
|
17505
|
+
Writing the attribute pins the value and stops the measurement being
|
|
17506
|
+
consulted, which is what a container query or a transition on the cell size
|
|
17507
|
+
wants, where what is drawn this frame is not what the arithmetic should
|
|
17508
|
+
plan around.
|
|
17509
|
+
|
|
17510
|
+
Zero turns the dropping off altogether, which is right for a strip in a
|
|
17511
|
+
container that cannot get narrow. */
|
|
17512
|
+
minCell?: (HelixHeadlessIsometricHeatmap["minCell"]) | undefined;
|
|
17513
|
+
/** The `overview`'s sentence. `{busiestLabel}` and `{totalLabel}` are
|
|
17514
|
+
`busiest-label` and `total-label`, `{busiest}` the busiest reading's name
|
|
17515
|
+
and its reading as the table writes it, and `{total}` the total of the
|
|
17516
|
+
readings drawn, written in the locale. */
|
|
17517
|
+
"overview-label"?: (HelixHeadlessIsometricHeatmap["overviewLabel"]) | undefined;
|
|
17518
|
+
/** The `overview`'s sentence. `{busiestLabel}` and `{totalLabel}` are
|
|
17519
|
+
`busiest-label` and `total-label`, `{busiest}` the busiest reading's name
|
|
17520
|
+
and its reading as the table writes it, and `{total}` the total of the
|
|
17521
|
+
readings drawn, written in the locale. */
|
|
17522
|
+
overviewLabel?: (HelixHeadlessIsometricHeatmap["overviewLabel"]) | undefined;
|
|
17523
|
+
/** How many rows the strip has.
|
|
17524
|
+
|
|
17525
|
+
`1` is a status strip and `7` is a calendar week, which are the two readings
|
|
17526
|
+
this covers. Cells fill down the column and then across, which is what a
|
|
17527
|
+
calendar heatmap does: a week is a column, so the strip reads along the
|
|
17528
|
+
line in weeks, from the right on a right-to-left page, and top to bottom in
|
|
17529
|
+
days. */
|
|
17530
|
+
rows?: (HelixHeadlessIsometricHeatmap["rows"]) | undefined;
|
|
17531
|
+
/** What the readout added for a selected cell, under `selection-mode`. */
|
|
17532
|
+
"selected-label"?: (HelixHeadlessIsometricHeatmap["selectedLabel"]) | undefined;
|
|
17533
|
+
/** What the readout added for a selected cell, under `selection-mode`. */
|
|
17534
|
+
selectedLabel?: (HelixHeadlessIsometricHeatmap["selectedLabel"]) | undefined;
|
|
17535
|
+
/** What the `selection` part says after the selection changes. `{count}` is
|
|
17536
|
+
how many cells are selected, written in the locale, and a language that
|
|
17537
|
+
needs plural forms writes them: `{count, plural, one {# wybrany} few
|
|
17538
|
+
{# wybrane} many {# wybranych} other {# wybranego}}`. */
|
|
17539
|
+
"selection-label"?: (HelixHeadlessIsometricHeatmap["selectionLabel"]) | undefined;
|
|
17540
|
+
/** What the `selection` part says after the selection changes. `{count}` is
|
|
17541
|
+
how many cells are selected, written in the locale, and a language that
|
|
17542
|
+
needs plural forms writes them: `{count, plural, one {# wybrany} few
|
|
17543
|
+
{# wybrane} many {# wybranych} other {# wybranego}}`. */
|
|
17544
|
+
selectionLabel?: (HelixHeadlessIsometricHeatmap["selectionLabel"]) | undefined;
|
|
17545
|
+
/** How many cells a reader can select: `single` or `multiple`.
|
|
17546
|
+
|
|
17547
|
+
Absent selects nothing, and a press or Space does what it did. */
|
|
17548
|
+
"selection-mode"?: (HelixHeadlessIsometricHeatmap["selectionMode"]) | undefined;
|
|
17549
|
+
/** How many cells a reader can select: `single` or `multiple`.
|
|
17550
|
+
|
|
17551
|
+
Absent selects nothing, and a press or Space does what it did. */
|
|
17552
|
+
selectionMode?: (HelixHeadlessIsometricHeatmap["selectionMode"]) | undefined;
|
|
17553
|
+
/** What Shift takes in under `selection-mode="multiple"`: `linear`, every
|
|
17554
|
+
cell between two in the table's order, or `rectangle`, the cells between
|
|
17555
|
+
two corners by row and by column, as a spreadsheet selects a range. */
|
|
17556
|
+
"selection-shape"?: (HelixHeadlessIsometricHeatmap["selectionShape"]) | undefined;
|
|
17557
|
+
/** What Shift takes in under `selection-mode="multiple"`: `linear`, every
|
|
17558
|
+
cell between two in the table's order, or `rectangle`, the cells between
|
|
17559
|
+
two corners by row and by column, as a spreadsheet selects a range. */
|
|
17560
|
+
selectionShape?: (HelixHeadlessIsometricHeatmap["selectionShape"]) | undefined;
|
|
17561
|
+
/** The strip's name where the chart has none: no `aria-label`, `label`, or
|
|
17562
|
+
table caption. */
|
|
17563
|
+
"strip-label"?: (HelixHeadlessIsometricHeatmap["stripLabel"]) | undefined;
|
|
17564
|
+
/** The strip's name where the chart has none: no `aria-label`, `label`, or
|
|
17565
|
+
table caption. */
|
|
17566
|
+
stripLabel?: (HelixHeadlessIsometricHeatmap["stripLabel"]) | undefined;
|
|
17567
|
+
/** Lower bounds for the tone buckets, in the order the tones are given.
|
|
17568
|
+
|
|
17569
|
+
`thresholds="1 3 6 9"` with `tones="1 2 3 4"` puts 1 and 2 in the ramp's
|
|
17570
|
+
first step, 3 to 5 in the second, 6 to 8 in the third, and 9 upward in the
|
|
17571
|
+
fourth. A value below the first bound gets no tone at all: an empty day in a
|
|
17572
|
+
contribution graph is a day with nothing in it, and painting it as the
|
|
17573
|
+
lowest bucket claims a reading that does not exist. */
|
|
17574
|
+
thresholds?: (HelixHeadlessIsometricHeatmap["thresholds"]) | undefined;
|
|
17575
|
+
/** The tone for each bucket, in the same order as `thresholds`.
|
|
17576
|
+
|
|
17577
|
+
A name, resolved as `--heatmap-tone-<name>` by whichever tier answers.
|
|
17578
|
+
**`"1"` through `"5"` are a ramp and everything else is a category**, which
|
|
17579
|
+
is the distinction a heatmap lives or dies on: magnitude has to be one hue
|
|
17580
|
+
getting louder, because a reader compares two cells by weight and cannot
|
|
17581
|
+
compare two hues at all. `tones="surface info accent success primary"` for a
|
|
17582
|
+
commit count is five unrelated hues for five amounts, which is confetti with
|
|
17583
|
+
no order in it. */
|
|
17584
|
+
tones?: (HelixHeadlessIsometricHeatmap["tones"]) | undefined;
|
|
17585
|
+
/** The name the `overview` gives the total of the readings drawn,
|
|
17586
|
+
`{totalLabel}` in `overview-label`. */
|
|
17587
|
+
"total-label"?: (HelixHeadlessIsometricHeatmap["totalLabel"]) | undefined;
|
|
17588
|
+
/** The name the `overview` gives the total of the readings drawn,
|
|
17589
|
+
`{totalLabel}` in `overview-label`. */
|
|
17590
|
+
totalLabel?: (HelixHeadlessIsometricHeatmap["totalLabel"]) | undefined;
|
|
17591
|
+
/** The selected cells, separated by commas: each by the date its row's
|
|
17592
|
+
header carries in a `<time datetime>`, such as `2026-06-11`, or by the
|
|
17593
|
+
header's words where it carries none.
|
|
17594
|
+
|
|
17595
|
+
Set it to start with cells selected. Written by a press or a key under
|
|
17596
|
+
`selection-mode`. */
|
|
17597
|
+
value?: (HelixHeadlessIsometricHeatmap["value"]) | undefined;
|
|
17598
|
+
/** The readings as data, in the shape of a table, where the page has no
|
|
17599
|
+
table to point `for` at. `for` wins where both are set.
|
|
17600
|
+
|
|
17601
|
+
```js
|
|
17602
|
+
chart.data = {
|
|
17603
|
+
caption: 'Sessions by channel',
|
|
17604
|
+
columns: ['Month', 'Direct', 'Referral'],
|
|
17605
|
+
rows: [['Jan', 10, 4], ['Feb', 20, 8]],
|
|
17606
|
+
}
|
|
17607
|
+
```
|
|
17608
|
+
|
|
17609
|
+
The first column holds each row's label and every column after it a
|
|
17610
|
+
series, as in a table. A cell is a number, words, `null` for a blank,
|
|
17611
|
+
or `{ value, text }` for a number shown as words, such as `$128k`. A
|
|
17612
|
+
number is shown in `locale`.
|
|
17613
|
+
|
|
17614
|
+
**A table is still the better source where the page can show one**:
|
|
17615
|
+
it reads with no script and before hydration, and a reader can sort and
|
|
17616
|
+
copy it. Data is drawn on the client only, so a server serves the
|
|
17617
|
+
frame, and the summary, the keys and the readout are then the whole of
|
|
17618
|
+
what a screen reader is given. Set a new object to redraw: the chart
|
|
17619
|
+
does not look inside the one it has. */
|
|
17620
|
+
data?: (HelixHeadlessIsometricHeatmap["data"]) | undefined;
|
|
17621
|
+
|
|
17622
|
+
/** Fired once a press or a key has changed which cells are selected. */
|
|
17623
|
+
onchange?: ((e: HelixHeadlessIsometricHeatmapElementEvent) => void) | undefined;
|
|
17624
|
+
/** Fired before a press or a key changes which cells are selected, with the `value` it would leave. Cancelable. */
|
|
17625
|
+
"onhelix-before-change"?: ((
|
|
17626
|
+
e: HelixHeadlessIsometricHeatmapHelixBeforeChangeElementEvent,
|
|
17627
|
+
) => void) | undefined;
|
|
17628
|
+
/** 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. */
|
|
17629
|
+
"onhelix-reading-change"?: ((
|
|
17630
|
+
e: HelixHeadlessIsometricHeatmapHelixReadingChangeElementEvent,
|
|
17631
|
+
) => void) | undefined;
|
|
17632
|
+
/** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
|
|
17633
|
+
"onhelix-reading-press"?: ((
|
|
17634
|
+
e: HelixHeadlessIsometricHeatmapHelixReadingPressElementEvent,
|
|
17635
|
+
) => void) | undefined;
|
|
17636
|
+
/** Fired when the number of cells drawn changes, with the new number. */
|
|
17637
|
+
"onhelix-resize"?: ((
|
|
17638
|
+
e: HelixHeadlessIsometricHeatmapHelixResizeElementEvent,
|
|
17639
|
+
) => void) | undefined;
|
|
17640
|
+
};
|
|
17641
|
+
|
|
17642
|
+
export type HelixHeadlessIsometricHeatmapSolidJsProps = {
|
|
17643
|
+
/** Draws every prism at no height, so the tones lie on a plane. */
|
|
17644
|
+
"prop:flat"?: (HelixHeadlessIsometricHeatmap["flat"]) | undefined;
|
|
17645
|
+
/** How tall the highest reading stands, in cells. Every other reading stands
|
|
17646
|
+
at its share of it. */
|
|
17647
|
+
"prop:relief"?: (HelixHeadlessIsometricHeatmap["relief"]) | undefined;
|
|
17648
|
+
/** The words shown in place of the drawing when the table has no readings,
|
|
17649
|
+
and the fallback of the `empty` slot. */
|
|
17650
|
+
"attr:empty-text"?: (HelixHeadlessIsometricHeatmap["emptyText"]) | undefined;
|
|
17651
|
+
/** The words shown in place of the drawing when the table has no readings,
|
|
17652
|
+
and the fallback of the `empty` slot. */
|
|
17653
|
+
"prop:emptyText"?: (HelixHeadlessIsometricHeatmap["emptyText"]) | undefined;
|
|
17654
|
+
/** Whether the readings are still on their way. The chart shows
|
|
17655
|
+
`loading-text` in place of an empty drawing until it has readings.
|
|
17656
|
+
|
|
17657
|
+
Reflected, so a stylesheet can treat the chart while it waits. A chart
|
|
17658
|
+
that already has readings keeps drawing them, so a refresh does not
|
|
17659
|
+
blank it. */
|
|
17660
|
+
"prop:loading"?: (HelixHeadlessIsometricHeatmap["loading"]) | undefined;
|
|
17661
|
+
/** The words shown in place of the drawing while `loading` is set and
|
|
17662
|
+
there are no readings yet, and the fallback of the `loading` slot. */
|
|
17663
|
+
"attr:loading-text"?: (HelixHeadlessIsometricHeatmap["loadingText"]) | undefined;
|
|
17664
|
+
/** The words shown in place of the drawing while `loading` is set and
|
|
17665
|
+
there are no readings yet, and the fallback of the `loading` slot. */
|
|
17666
|
+
"prop:loadingText"?: (HelixHeadlessIsometricHeatmap["loadingText"]) | undefined;
|
|
17667
|
+
/** The id of the table to read.
|
|
17668
|
+
|
|
17669
|
+
Names a table in the same tree, so a chart inside another component's
|
|
17670
|
+
shadow root reads a table in that root rather than one in the document. A
|
|
17671
|
+
`<table>` or anything built from grid roles, including `helix-table`.
|
|
17672
|
+
|
|
17673
|
+
**In React this arrives as a property and not as an attribute**, the way
|
|
17674
|
+
`Tooltip.for` does, so it does not reflect and nothing styles on it. */
|
|
17675
|
+
"prop:for"?: (HelixHeadlessIsometricHeatmap["for"]) | undefined;
|
|
17676
|
+
/** The chart's name, which starts the chart's text summary.
|
|
17677
|
+
|
|
17678
|
+
Absent falls back to the table's own caption, which is usually the right
|
|
17679
|
+
words and is already written. */
|
|
17680
|
+
"prop:label"?: (HelixHeadlessIsometricHeatmap["label"]) | undefined;
|
|
17681
|
+
/** The locale the chart's own numbers are written in: its axis, its
|
|
17682
|
+
percentages and its totals, such as `de` for `1.240` and `32 %`.
|
|
17683
|
+
|
|
17684
|
+
Absent reads the nearest `lang`, then the runtime's own. The table's
|
|
17685
|
+
cells are shown as the table writes them, whatever this says. */
|
|
17686
|
+
"prop:locale"?: (HelixHeadlessIsometricHeatmap["locale"]) | undefined;
|
|
17687
|
+
/** Where a reading the keys moved to stands among the readings, said after
|
|
17688
|
+
it. `{position}` and `{count}` are replaced with the numbers, written in
|
|
17689
|
+
`locale`.
|
|
17690
|
+
|
|
17691
|
+
Set it to the words of the page's language, such as `{position} von
|
|
17692
|
+
{count}`, or to nothing to say no position. A slice or a series a
|
|
17693
|
+
legend hid is not counted. */
|
|
17694
|
+
"attr:position-label"?: (HelixHeadlessIsometricHeatmap["positionLabel"]) | undefined;
|
|
17695
|
+
/** Where a reading the keys moved to stands among the readings, said after
|
|
17696
|
+
it. `{position}` and `{count}` are replaced with the numbers, written in
|
|
17697
|
+
`locale`.
|
|
17698
|
+
|
|
17699
|
+
Set it to the words of the page's language, such as `{position} von
|
|
17700
|
+
{count}`, or to nothing to say no position. A slice or a series a
|
|
17701
|
+
legend hid is not counted. */
|
|
17702
|
+
"prop:positionLabel"?: (HelixHeadlessIsometricHeatmap["positionLabel"]) | undefined;
|
|
17703
|
+
/** The name the `overview` gives the busiest reading, `{busiestLabel}` in
|
|
17704
|
+
`overview-label`. */
|
|
17705
|
+
"attr:busiest-label"?: (HelixHeadlessIsometricHeatmap["busiestLabel"]) | undefined;
|
|
17706
|
+
/** The name the `overview` gives the busiest reading, `{busiestLabel}` in
|
|
17707
|
+
`overview-label`. */
|
|
17708
|
+
"prop:busiestLabel"?: (HelixHeadlessIsometricHeatmap["busiestLabel"]) | undefined;
|
|
17709
|
+
/** Space between cells, in CSS pixels. It is a number for the same reason
|
|
17710
|
+
`min-cell` is. */
|
|
17711
|
+
"prop:gap"?: (HelixHeadlessIsometricHeatmap["gap"]) | undefined;
|
|
17712
|
+
/** The smallest a cell may get before the strip draws fewer of them, in CSS pixels.
|
|
17713
|
+
|
|
17714
|
+
**Set this only to overrule what the strip actually draws.** The arithmetic
|
|
17715
|
+
needs a width in pixels and the width is a length the stylesheet resolves,
|
|
17716
|
+
so a number written here that disagrees with the sheet is a promise the
|
|
17717
|
+
consumer has to keep by hand, and the one number a summary is told to trust
|
|
17718
|
+
is the one it gets wrong.
|
|
17719
|
+
|
|
17720
|
+
The strip measures itself, so sizing the cells in a sheet is enough on its
|
|
17721
|
+
own and these two are the estimate used until the first measurement lands.
|
|
17722
|
+
Writing the attribute pins the value and stops the measurement being
|
|
17723
|
+
consulted, which is what a container query or a transition on the cell size
|
|
17724
|
+
wants, where what is drawn this frame is not what the arithmetic should
|
|
17725
|
+
plan around.
|
|
17726
|
+
|
|
17727
|
+
Zero turns the dropping off altogether, which is right for a strip in a
|
|
17728
|
+
container that cannot get narrow. */
|
|
17729
|
+
"attr:min-cell"?: (HelixHeadlessIsometricHeatmap["minCell"] | `${number}`) | undefined;
|
|
17730
|
+
/** The smallest a cell may get before the strip draws fewer of them, in CSS pixels.
|
|
17731
|
+
|
|
17732
|
+
**Set this only to overrule what the strip actually draws.** The arithmetic
|
|
17733
|
+
needs a width in pixels and the width is a length the stylesheet resolves,
|
|
17734
|
+
so a number written here that disagrees with the sheet is a promise the
|
|
17735
|
+
consumer has to keep by hand, and the one number a summary is told to trust
|
|
17736
|
+
is the one it gets wrong.
|
|
17737
|
+
|
|
17738
|
+
The strip measures itself, so sizing the cells in a sheet is enough on its
|
|
17739
|
+
own and these two are the estimate used until the first measurement lands.
|
|
17740
|
+
Writing the attribute pins the value and stops the measurement being
|
|
17741
|
+
consulted, which is what a container query or a transition on the cell size
|
|
17742
|
+
wants, where what is drawn this frame is not what the arithmetic should
|
|
17743
|
+
plan around.
|
|
17744
|
+
|
|
17745
|
+
Zero turns the dropping off altogether, which is right for a strip in a
|
|
17746
|
+
container that cannot get narrow. */
|
|
17747
|
+
"prop:minCell"?: (HelixHeadlessIsometricHeatmap["minCell"]) | undefined;
|
|
17748
|
+
/** The `overview`'s sentence. `{busiestLabel}` and `{totalLabel}` are
|
|
17749
|
+
`busiest-label` and `total-label`, `{busiest}` the busiest reading's name
|
|
17750
|
+
and its reading as the table writes it, and `{total}` the total of the
|
|
17751
|
+
readings drawn, written in the locale. */
|
|
17752
|
+
"attr:overview-label"?: (HelixHeadlessIsometricHeatmap["overviewLabel"]) | undefined;
|
|
17753
|
+
/** The `overview`'s sentence. `{busiestLabel}` and `{totalLabel}` are
|
|
17754
|
+
`busiest-label` and `total-label`, `{busiest}` the busiest reading's name
|
|
17755
|
+
and its reading as the table writes it, and `{total}` the total of the
|
|
17756
|
+
readings drawn, written in the locale. */
|
|
17757
|
+
"prop:overviewLabel"?: (HelixHeadlessIsometricHeatmap["overviewLabel"]) | undefined;
|
|
17758
|
+
/** How many rows the strip has.
|
|
17759
|
+
|
|
17760
|
+
`1` is a status strip and `7` is a calendar week, which are the two readings
|
|
17761
|
+
this covers. Cells fill down the column and then across, which is what a
|
|
17762
|
+
calendar heatmap does: a week is a column, so the strip reads along the
|
|
17763
|
+
line in weeks, from the right on a right-to-left page, and top to bottom in
|
|
17764
|
+
days. */
|
|
17765
|
+
"prop:rows"?: (HelixHeadlessIsometricHeatmap["rows"]) | undefined;
|
|
17766
|
+
/** What the readout added for a selected cell, under `selection-mode`. */
|
|
17767
|
+
"attr:selected-label"?: (HelixHeadlessIsometricHeatmap["selectedLabel"]) | undefined;
|
|
17768
|
+
/** What the readout added for a selected cell, under `selection-mode`. */
|
|
17769
|
+
"prop:selectedLabel"?: (HelixHeadlessIsometricHeatmap["selectedLabel"]) | undefined;
|
|
17770
|
+
/** What the `selection` part says after the selection changes. `{count}` is
|
|
17771
|
+
how many cells are selected, written in the locale, and a language that
|
|
17772
|
+
needs plural forms writes them: `{count, plural, one {# wybrany} few
|
|
17773
|
+
{# wybrane} many {# wybranych} other {# wybranego}}`. */
|
|
17774
|
+
"attr:selection-label"?: (HelixHeadlessIsometricHeatmap["selectionLabel"]) | undefined;
|
|
17775
|
+
/** What the `selection` part says after the selection changes. `{count}` is
|
|
17776
|
+
how many cells are selected, written in the locale, and a language that
|
|
17777
|
+
needs plural forms writes them: `{count, plural, one {# wybrany} few
|
|
17778
|
+
{# wybrane} many {# wybranych} other {# wybranego}}`. */
|
|
17779
|
+
"prop:selectionLabel"?: (HelixHeadlessIsometricHeatmap["selectionLabel"]) | undefined;
|
|
17780
|
+
/** How many cells a reader can select: `single` or `multiple`.
|
|
17781
|
+
|
|
17782
|
+
Absent selects nothing, and a press or Space does what it did. */
|
|
17783
|
+
"attr:selection-mode"?: (HelixHeadlessIsometricHeatmap["selectionMode"]) | undefined;
|
|
17784
|
+
/** How many cells a reader can select: `single` or `multiple`.
|
|
17785
|
+
|
|
17786
|
+
Absent selects nothing, and a press or Space does what it did. */
|
|
17787
|
+
"prop:selectionMode"?: (HelixHeadlessIsometricHeatmap["selectionMode"]) | undefined;
|
|
17788
|
+
/** What Shift takes in under `selection-mode="multiple"`: `linear`, every
|
|
17789
|
+
cell between two in the table's order, or `rectangle`, the cells between
|
|
17790
|
+
two corners by row and by column, as a spreadsheet selects a range. */
|
|
17791
|
+
"attr:selection-shape"?: (HelixHeadlessIsometricHeatmap["selectionShape"]) | undefined;
|
|
17792
|
+
/** What Shift takes in under `selection-mode="multiple"`: `linear`, every
|
|
17793
|
+
cell between two in the table's order, or `rectangle`, the cells between
|
|
17794
|
+
two corners by row and by column, as a spreadsheet selects a range. */
|
|
17795
|
+
"prop:selectionShape"?: (HelixHeadlessIsometricHeatmap["selectionShape"]) | undefined;
|
|
17796
|
+
/** The strip's name where the chart has none: no `aria-label`, `label`, or
|
|
17797
|
+
table caption. */
|
|
17798
|
+
"attr:strip-label"?: (HelixHeadlessIsometricHeatmap["stripLabel"]) | undefined;
|
|
17799
|
+
/** The strip's name where the chart has none: no `aria-label`, `label`, or
|
|
17800
|
+
table caption. */
|
|
17801
|
+
"prop:stripLabel"?: (HelixHeadlessIsometricHeatmap["stripLabel"]) | undefined;
|
|
17802
|
+
/** Lower bounds for the tone buckets, in the order the tones are given.
|
|
17803
|
+
|
|
17804
|
+
`thresholds="1 3 6 9"` with `tones="1 2 3 4"` puts 1 and 2 in the ramp's
|
|
17805
|
+
first step, 3 to 5 in the second, 6 to 8 in the third, and 9 upward in the
|
|
17806
|
+
fourth. A value below the first bound gets no tone at all: an empty day in a
|
|
17807
|
+
contribution graph is a day with nothing in it, and painting it as the
|
|
17808
|
+
lowest bucket claims a reading that does not exist. */
|
|
17809
|
+
"prop:thresholds"?: (HelixHeadlessIsometricHeatmap["thresholds"]) | undefined;
|
|
17810
|
+
/** The tone for each bucket, in the same order as `thresholds`.
|
|
17811
|
+
|
|
17812
|
+
A name, resolved as `--heatmap-tone-<name>` by whichever tier answers.
|
|
17813
|
+
**`"1"` through `"5"` are a ramp and everything else is a category**, which
|
|
17814
|
+
is the distinction a heatmap lives or dies on: magnitude has to be one hue
|
|
17815
|
+
getting louder, because a reader compares two cells by weight and cannot
|
|
17816
|
+
compare two hues at all. `tones="surface info accent success primary"` for a
|
|
17817
|
+
commit count is five unrelated hues for five amounts, which is confetti with
|
|
17818
|
+
no order in it. */
|
|
17819
|
+
"prop:tones"?: (HelixHeadlessIsometricHeatmap["tones"]) | undefined;
|
|
17820
|
+
/** The name the `overview` gives the total of the readings drawn,
|
|
17821
|
+
`{totalLabel}` in `overview-label`. */
|
|
17822
|
+
"attr:total-label"?: (HelixHeadlessIsometricHeatmap["totalLabel"]) | undefined;
|
|
17823
|
+
/** The name the `overview` gives the total of the readings drawn,
|
|
17824
|
+
`{totalLabel}` in `overview-label`. */
|
|
17825
|
+
"prop:totalLabel"?: (HelixHeadlessIsometricHeatmap["totalLabel"]) | undefined;
|
|
17826
|
+
/** The selected cells, separated by commas: each by the date its row's
|
|
17827
|
+
header carries in a `<time datetime>`, such as `2026-06-11`, or by the
|
|
17828
|
+
header's words where it carries none.
|
|
17829
|
+
|
|
17830
|
+
Set it to start with cells selected. Written by a press or a key under
|
|
17831
|
+
`selection-mode`. */
|
|
17832
|
+
"prop:value"?: (HelixHeadlessIsometricHeatmap["value"]) | undefined;
|
|
17833
|
+
/** The readings as data, in the shape of a table, where the page has no
|
|
17834
|
+
table to point `for` at. `for` wins where both are set.
|
|
17835
|
+
|
|
17836
|
+
```js
|
|
17837
|
+
chart.data = {
|
|
17838
|
+
caption: 'Sessions by channel',
|
|
17839
|
+
columns: ['Month', 'Direct', 'Referral'],
|
|
17840
|
+
rows: [['Jan', 10, 4], ['Feb', 20, 8]],
|
|
17841
|
+
}
|
|
17842
|
+
```
|
|
17843
|
+
|
|
17844
|
+
The first column holds each row's label and every column after it a
|
|
17845
|
+
series, as in a table. A cell is a number, words, `null` for a blank,
|
|
17846
|
+
or `{ value, text }` for a number shown as words, such as `$128k`. A
|
|
17847
|
+
number is shown in `locale`.
|
|
17848
|
+
|
|
17849
|
+
**A table is still the better source where the page can show one**:
|
|
17850
|
+
it reads with no script and before hydration, and a reader can sort and
|
|
17851
|
+
copy it. Data is drawn on the client only, so a server serves the
|
|
17852
|
+
frame, and the summary, the keys and the readout are then the whole of
|
|
17853
|
+
what a screen reader is given. Set a new object to redraw: the chart
|
|
17854
|
+
does not look inside the one it has. */
|
|
17855
|
+
"prop:data"?: (HelixHeadlessIsometricHeatmap["data"]) | undefined;
|
|
17856
|
+
/** Fired once a press or a key has changed which cells are selected. */
|
|
17857
|
+
"on:change"?: ((e: HelixHeadlessIsometricHeatmapElementEvent) => void) | undefined;
|
|
17858
|
+
/** Fired before a press or a key changes which cells are selected, with the `value` it would leave. Cancelable. */
|
|
17859
|
+
"on:helix-before-change"?: ((
|
|
17860
|
+
e: HelixHeadlessIsometricHeatmapHelixBeforeChangeElementEvent,
|
|
17861
|
+
) => void) | undefined;
|
|
17862
|
+
/** 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. */
|
|
17863
|
+
"on:helix-reading-change"?: ((
|
|
17864
|
+
e: HelixHeadlessIsometricHeatmapHelixReadingChangeElementEvent,
|
|
17865
|
+
) => void) | undefined;
|
|
17866
|
+
/** A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`. */
|
|
17867
|
+
"on:helix-reading-press"?: ((
|
|
17868
|
+
e: HelixHeadlessIsometricHeatmapHelixReadingPressElementEvent,
|
|
17869
|
+
) => void) | undefined;
|
|
17870
|
+
/** Fired when the number of cells drawn changes, with the new number. */
|
|
17871
|
+
"on:helix-resize"?: ((
|
|
17872
|
+
e: HelixHeadlessIsometricHeatmapHelixResizeElementEvent,
|
|
17873
|
+
) => void) | undefined;
|
|
17874
|
+
|
|
17875
|
+
/** Set the innerHTML of the element */
|
|
17876
|
+
innerHTML?: (string) | undefined;
|
|
17877
|
+
/** Set the textContent of the element */
|
|
17878
|
+
textContent?: (string | number) | undefined;
|
|
17879
|
+
};
|
|
17880
|
+
|
|
17364
17881
|
/** `HelixHeadlessKbd` component event */
|
|
17365
17882
|
export type HelixHeadlessKbdElementEvent<E = Event> = TypedEvent<
|
|
17366
17883
|
HelixHeadlessKbd,
|
|
@@ -30132,13 +30649,11 @@ and each column may say otherwise.
|
|
|
30132
30649
|
**It is also the only track list a server can send.** The shim has no tree
|
|
30133
30650
|
to walk, so a render there knows of no columns and this attribute is the
|
|
30134
30651
|
whole answer: a table given one lays its grid out in the first paint, and a
|
|
30135
|
-
table sized only by its columns
|
|
30652
|
+
table sized only by its columns takes, until it upgrades, a track for each
|
|
30653
|
+
column at the width a column with no `width` takes (`helix.css`).
|
|
30136
30654
|
|
|
30137
|
-
|
|
30138
|
-
|
|
30139
|
-
and a list here would be a second way to say what that says. This table's
|
|
30140
|
-
cells are markup, and a table written as rows of cells with no column
|
|
30141
|
-
declared in it has nowhere else to be sized from. */
|
|
30655
|
+
Data Table takes the same list, for the same reason: a data table that
|
|
30656
|
+
serves its first page as rows is laid out by it before it upgrades. */
|
|
30142
30657
|
columns?: (HelixHeadlessTable["columns"]) | undefined;
|
|
30143
30658
|
/** The keys of the rows whose rows are shown at the start, separated by
|
|
30144
30659
|
commas. Used until `expanded` is set. */
|
|
@@ -30397,13 +30912,11 @@ and each column may say otherwise.
|
|
|
30397
30912
|
**It is also the only track list a server can send.** The shim has no tree
|
|
30398
30913
|
to walk, so a render there knows of no columns and this attribute is the
|
|
30399
30914
|
whole answer: a table given one lays its grid out in the first paint, and a
|
|
30400
|
-
table sized only by its columns
|
|
30915
|
+
table sized only by its columns takes, until it upgrades, a track for each
|
|
30916
|
+
column at the width a column with no `width` takes (`helix.css`).
|
|
30401
30917
|
|
|
30402
|
-
|
|
30403
|
-
|
|
30404
|
-
and a list here would be a second way to say what that says. This table's
|
|
30405
|
-
cells are markup, and a table written as rows of cells with no column
|
|
30406
|
-
declared in it has nowhere else to be sized from. */
|
|
30918
|
+
Data Table takes the same list, for the same reason: a data table that
|
|
30919
|
+
serves its first page as rows is laid out by it before it upgrades. */
|
|
30407
30920
|
"prop:columns"?: (HelixHeadlessTable["columns"]) | undefined;
|
|
30408
30921
|
/** The keys of the rows whose rows are shown at the start, separated by
|
|
30409
30922
|
commas. Used until `expanded` is set. */
|
|
@@ -44390,11 +44903,12 @@ export type CustomElements = {
|
|
|
44390
44903
|
* `csv()` returns the result as text: every row that passes the filter, in the
|
|
44391
44904
|
* order and the columns on screen. Saving the file is up to you.
|
|
44392
44905
|
*
|
|
44393
|
-
*
|
|
44394
|
-
*
|
|
44395
|
-
*
|
|
44396
|
-
*
|
|
44397
|
-
*
|
|
44906
|
+
* Size a column with its own `width`, or every column at once with `columns`,
|
|
44907
|
+
* a track list dealt out one track to a column in the order they are written,
|
|
44908
|
+
* as `Table` deals it. A column's `width` wins in its place. **A table that
|
|
44909
|
+
* serves its first page takes its widths from `columns`**: a server and a
|
|
44910
|
+
* stylesheet can read the table's own attributes and not its columns', so the
|
|
44911
|
+
* served rows are laid out at the widths the table draws.
|
|
44398
44912
|
*
|
|
44399
44913
|
* **The columns are an import of their own.** A column is the Table family's
|
|
44400
44914
|
* `TableColumn`, which the data table does not register, so a page that writes
|
|
@@ -44420,6 +44934,15 @@ export type CustomElements = {
|
|
|
44420
44934
|
*
|
|
44421
44935
|
* Reflected, because the styled tier indents a tree grid's row headers by
|
|
44422
44936
|
* it. No default, so a table that sets none writes nothing onto its host.
|
|
44937
|
+
* - `columns`: The column tracks, as a grid track list such as `2fr 1fr max-content`,
|
|
44938
|
+
* dealt out one track to a column in the order the columns are written. A
|
|
44939
|
+
* column's own `width` wins in its place, and a column it does not reach
|
|
44940
|
+
* takes the track a column with no `width` takes.
|
|
44941
|
+
*
|
|
44942
|
+
* **The one track list a server can send.** A server rendering this element
|
|
44943
|
+
* has no columns to read a `width` from, and neither has a stylesheet laying
|
|
44944
|
+
* out the rows a page served before the table upgrades, so a table sized here
|
|
44945
|
+
* lays those rows out at the widths it draws.
|
|
44423
44946
|
* - `default-expanded`/`defaultExpanded`: The keys of the rows open at the start, separated by commas. Used until
|
|
44424
44947
|
* `expanded` is set.
|
|
44425
44948
|
* - `default-filter`/`defaultFilter`: The starting search query, used until `filter` is set.
|
|
@@ -48601,10 +49124,12 @@ export type CustomElements = {
|
|
|
48601
49124
|
>;
|
|
48602
49125
|
|
|
48603
49126
|
/**
|
|
48604
|
-
*
|
|
48605
|
-
* WebGL, which a renderer such as Sigma.js does
|
|
48606
|
-
*
|
|
48607
|
-
*
|
|
49127
|
+
* The frame draws no graph itself. A force layout of thousands of notes is
|
|
49128
|
+
* physics and WebGL, which a renderer such as Sigma.js does, and an
|
|
49129
|
+
* architecture diagram is drawn by `isometricDriver` from
|
|
49130
|
+
* `@fusion.dev/helix-graph/isometric`. Put the drawing's box in the frame, and
|
|
49131
|
+
* `connectGraph` from `@fusion.dev/helix-graph` draws `nodes` and `links` in
|
|
49132
|
+
* it and keeps it in step with the frame.
|
|
48608
49133
|
*
|
|
48609
49134
|
* What the frame adds is what a drawing of a graph cannot do: a list of every
|
|
48610
49135
|
* note beside it, which is the graph for a screen reader and a quick way to
|
|
@@ -49654,14 +50179,11 @@ export type CustomElements = {
|
|
|
49654
50179
|
* a dark background. Shapes that set their own `fill` or `stroke` are
|
|
49655
50180
|
* unaffected.
|
|
49656
50181
|
*
|
|
49657
|
-
* **A name is looked up in a registry.** The family's entry registers
|
|
49658
|
-
* set
|
|
49659
|
-
*
|
|
49660
|
-
*
|
|
49661
|
-
*
|
|
49662
|
-
* `@fusion.dev/helix-headless/icon/root`, registers none: a page that imports
|
|
49663
|
-
* it and calls `registerIcons` with the glyphs it names ships those and no
|
|
49664
|
-
* others. `registerIconLibrary` resolves names under a prefix of your own,
|
|
50182
|
+
* **A name is looked up in a registry.** The family's entry registers the
|
|
50183
|
+
* whole set, so any name in it draws, and `icon/all` registers the same set.
|
|
50184
|
+
* The element's own entry, `@fusion.dev/helix-headless/icon/root`, registers
|
|
50185
|
+
* none: a page that imports it and calls `registerIcons` with the glyphs it
|
|
50186
|
+
* names ships those and no others. `registerIconLibrary` resolves names under a prefix of your own,
|
|
49665
50187
|
* such as `lucide:camera`, at once or later, and the element fires `load` when
|
|
49666
50188
|
* a glyph that came later is drawn. A glyph registered after the element
|
|
49667
50189
|
* rendered is drawn then.
|
|
@@ -49703,10 +50225,12 @@ export type CustomElements = {
|
|
|
49703
50225
|
* - `name`: The name of the icon in the Helix set.
|
|
49704
50226
|
*
|
|
49705
50227
|
* **A lookup, and the reason both this and `icon` exist.** A name is a string,
|
|
49706
|
-
* so it is what markup can carry, and resolving one means an index
|
|
49707
|
-
* bundler can shake
|
|
49708
|
-
*
|
|
49709
|
-
*
|
|
50228
|
+
* so it is what markup can carry, and resolving one means an index of the
|
|
50229
|
+
* whole set that no bundler can shake: 15 kB for a consumer who renders one
|
|
50230
|
+
* mark. An attribute is the only thing an HTML author can write, and that is
|
|
50231
|
+
* worth the index; a consumer who would rather not pay it imports the
|
|
50232
|
+
* element from `icon/root` and registers the glyphs it names, or hands over
|
|
50233
|
+
* the value instead.
|
|
49710
50234
|
*
|
|
49711
50235
|
* A name written `prefix:name` asks the library registered under that
|
|
49712
50236
|
* prefix.
|
|
@@ -50257,6 +50781,372 @@ export type CustomElements = {
|
|
|
50257
50781
|
HelixHeadlessInputProps & BaseProps<HelixHeadlessInput> & BaseEvents<HelixHeadlessInput>
|
|
50258
50782
|
>;
|
|
50259
50783
|
|
|
50784
|
+
/**
|
|
50785
|
+
* The same strip as `Heatmap`, seen from above at an angle. Each reading is a
|
|
50786
|
+
* prism: its top face takes the cell's tone, and its height repeats the value,
|
|
50787
|
+
* measured from zero against the highest reading in the table. `rows="7"`
|
|
50788
|
+
* makes a contribution graph, with each week a column running down to the
|
|
50789
|
+
* right.
|
|
50790
|
+
*
|
|
50791
|
+
* **The height says what the tone says.** Read the exact value from the tooltip
|
|
50792
|
+
* or the table, and compare readings by tone. A tall reading at the front can
|
|
50793
|
+
* hide a short one behind it, so the newest column stands at the front, where
|
|
50794
|
+
* nothing covers it.
|
|
50795
|
+
*
|
|
50796
|
+
* **Everything else is `Heatmap`.** The table named by `for`, the tones and
|
|
50797
|
+
* thresholds, the keys, the tooltip, the overview, `selection-mode`, and the
|
|
50798
|
+
* events all work as they do there. The class extends the headless heatmap,
|
|
50799
|
+
* and its own entry point carries the drawing, so a page using only `Heatmap`
|
|
50800
|
+
* loads none of it.
|
|
50801
|
+
*
|
|
50802
|
+
* **`flat` lays every prism down** at no height, which leaves the tones on a
|
|
50803
|
+
* plane at the same angle.
|
|
50804
|
+
*
|
|
50805
|
+
* **`gap` and `min-cell` set the smallest cell.** The drawing scales as a
|
|
50806
|
+
* whole, so a wider box draws larger cells and the gap grows with them. A box
|
|
50807
|
+
* too narrow for every column at `min-cell` draws the newest that fit.
|
|
50808
|
+
*
|
|
50809
|
+
* **The drawing is SVG and holds still.** It scales with its box through its
|
|
50810
|
+
* `viewBox`, needs no WebGL, and has no motion to pause.
|
|
50811
|
+
*
|
|
50812
|
+
* **Keyboard.** The keys are `Heatmap`'s. Down moves to the next reading in a
|
|
50813
|
+
* column, drawn down to the left, and Right to the same reading in the next
|
|
50814
|
+
* column, drawn down to the right.
|
|
50815
|
+
*
|
|
50816
|
+
* | Key | What it does |
|
|
50817
|
+
* |---|---|
|
|
50818
|
+
* | Tab | Moves focus to the strip and shows the first cell. |
|
|
50819
|
+
* | Down, Up | Moves to the next or the previous cell. |
|
|
50820
|
+
* | Right, Left | Moves a column on or back, a week with `rows="7"`. On a right-to-left page, Left moves on. |
|
|
50821
|
+
* | Home, End | Moves to the first or the last cell. |
|
|
50822
|
+
* | Page Down, Page Up | Moves a month on or back where the rows carry dates, and four columns otherwise. |
|
|
50823
|
+
* | Enter, Space | Presses the cell, which sends `helix-reading-press`, and selects it or lets it go under `selection-mode`. |
|
|
50824
|
+
* | 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"`. |
|
|
50825
|
+
* | Escape | Puts the cell's tooltip away. |
|
|
50826
|
+
*
|
|
50827
|
+
* ## Attributes & Properties
|
|
50828
|
+
*
|
|
50829
|
+
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
50830
|
+
*
|
|
50831
|
+
* - `flat`: Draws every prism at no height, so the tones lie on a plane.
|
|
50832
|
+
* - `relief`: How tall the highest reading stands, in cells. Every other reading stands
|
|
50833
|
+
* at its share of it.
|
|
50834
|
+
* - `empty-text`/`emptyText`: The words shown in place of the drawing when the table has no readings,
|
|
50835
|
+
* and the fallback of the `empty` slot.
|
|
50836
|
+
* - `loading`: Whether the readings are still on their way. The chart shows
|
|
50837
|
+
* `loading-text` in place of an empty drawing until it has readings.
|
|
50838
|
+
*
|
|
50839
|
+
* Reflected, so a stylesheet can treat the chart while it waits. A chart
|
|
50840
|
+
* that already has readings keeps drawing them, so a refresh does not
|
|
50841
|
+
* blank it.
|
|
50842
|
+
* - `loading-text`/`loadingText`: The words shown in place of the drawing while `loading` is set and
|
|
50843
|
+
* there are no readings yet, and the fallback of the `loading` slot.
|
|
50844
|
+
* - `for`: The id of the table to read.
|
|
50845
|
+
*
|
|
50846
|
+
* Names a table in the same tree, so a chart inside another component's
|
|
50847
|
+
* shadow root reads a table in that root rather than one in the document. A
|
|
50848
|
+
* `<table>` or anything built from grid roles, including `helix-table`.
|
|
50849
|
+
*
|
|
50850
|
+
* **In React this arrives as a property and not as an attribute**, the way
|
|
50851
|
+
* `Tooltip.for` does, so it does not reflect and nothing styles on it.
|
|
50852
|
+
* - `label`: The chart's name, which starts the chart's text summary.
|
|
50853
|
+
*
|
|
50854
|
+
* Absent falls back to the table's own caption, which is usually the right
|
|
50855
|
+
* words and is already written.
|
|
50856
|
+
* - `locale`: The locale the chart's own numbers are written in: its axis, its
|
|
50857
|
+
* percentages and its totals, such as `de` for `1.240` and `32 %`.
|
|
50858
|
+
*
|
|
50859
|
+
* Absent reads the nearest `lang`, then the runtime's own. The table's
|
|
50860
|
+
* cells are shown as the table writes them, whatever this says.
|
|
50861
|
+
* - `position-label`/`positionLabel`: Where a reading the keys moved to stands among the readings, said after
|
|
50862
|
+
* it. `{position}` and `{count}` are replaced with the numbers, written in
|
|
50863
|
+
* `locale`.
|
|
50864
|
+
*
|
|
50865
|
+
* Set it to the words of the page's language, such as `{position} von
|
|
50866
|
+
* {count}`, or to nothing to say no position. A slice or a series a
|
|
50867
|
+
* legend hid is not counted.
|
|
50868
|
+
* - `busiest-label`/`busiestLabel`: The name the `overview` gives the busiest reading, `{busiestLabel}` in
|
|
50869
|
+
* `overview-label`.
|
|
50870
|
+
* - `gap`: Space between cells, in CSS pixels. It is a number for the same reason
|
|
50871
|
+
* `min-cell` is.
|
|
50872
|
+
* - `min-cell`/`minCell`: The smallest a cell may get before the strip draws fewer of them, in CSS pixels.
|
|
50873
|
+
*
|
|
50874
|
+
* **Set this only to overrule what the strip actually draws.** The arithmetic
|
|
50875
|
+
* needs a width in pixels and the width is a length the stylesheet resolves,
|
|
50876
|
+
* so a number written here that disagrees with the sheet is a promise the
|
|
50877
|
+
* consumer has to keep by hand, and the one number a summary is told to trust
|
|
50878
|
+
* is the one it gets wrong.
|
|
50879
|
+
*
|
|
50880
|
+
* The strip measures itself, so sizing the cells in a sheet is enough on its
|
|
50881
|
+
* own and these two are the estimate used until the first measurement lands.
|
|
50882
|
+
* Writing the attribute pins the value and stops the measurement being
|
|
50883
|
+
* consulted, which is what a container query or a transition on the cell size
|
|
50884
|
+
* wants, where what is drawn this frame is not what the arithmetic should
|
|
50885
|
+
* plan around.
|
|
50886
|
+
*
|
|
50887
|
+
* Zero turns the dropping off altogether, which is right for a strip in a
|
|
50888
|
+
* container that cannot get narrow.
|
|
50889
|
+
* - `overview-label`/`overviewLabel`: The `overview`'s sentence. `{busiestLabel}` and `{totalLabel}` are
|
|
50890
|
+
* `busiest-label` and `total-label`, `{busiest}` the busiest reading's name
|
|
50891
|
+
* and its reading as the table writes it, and `{total}` the total of the
|
|
50892
|
+
* readings drawn, written in the locale.
|
|
50893
|
+
* - `rows`: How many rows the strip has.
|
|
50894
|
+
*
|
|
50895
|
+
* `1` is a status strip and `7` is a calendar week, which are the two readings
|
|
50896
|
+
* this covers. Cells fill down the column and then across, which is what a
|
|
50897
|
+
* calendar heatmap does: a week is a column, so the strip reads along the
|
|
50898
|
+
* line in weeks, from the right on a right-to-left page, and top to bottom in
|
|
50899
|
+
* days.
|
|
50900
|
+
* - `selected-label`/`selectedLabel`: What the readout added for a selected cell, under `selection-mode`.
|
|
50901
|
+
* - `selection-label`/`selectionLabel`: What the `selection` part says after the selection changes. `{count}` is
|
|
50902
|
+
* how many cells are selected, written in the locale, and a language that
|
|
50903
|
+
* needs plural forms writes them: `{count, plural, one {# wybrany} few
|
|
50904
|
+
* {# wybrane} many {# wybranych} other {# wybranego}}`.
|
|
50905
|
+
* - `selection-mode`/`selectionMode`: How many cells a reader can select: `single` or `multiple`.
|
|
50906
|
+
*
|
|
50907
|
+
* Absent selects nothing, and a press or Space does what it did.
|
|
50908
|
+
* - `selection-shape`/`selectionShape`: What Shift takes in under `selection-mode="multiple"`: `linear`, every
|
|
50909
|
+
* cell between two in the table's order, or `rectangle`, the cells between
|
|
50910
|
+
* two corners by row and by column, as a spreadsheet selects a range.
|
|
50911
|
+
* - `strip-label`/`stripLabel`: The strip's name where the chart has none: no `aria-label`, `label`, or
|
|
50912
|
+
* table caption.
|
|
50913
|
+
* - `thresholds`: Lower bounds for the tone buckets, in the order the tones are given.
|
|
50914
|
+
*
|
|
50915
|
+
* `thresholds="1 3 6 9"` with `tones="1 2 3 4"` puts 1 and 2 in the ramp's
|
|
50916
|
+
* first step, 3 to 5 in the second, 6 to 8 in the third, and 9 upward in the
|
|
50917
|
+
* fourth. A value below the first bound gets no tone at all: an empty day in a
|
|
50918
|
+
* contribution graph is a day with nothing in it, and painting it as the
|
|
50919
|
+
* lowest bucket claims a reading that does not exist.
|
|
50920
|
+
* - `tones`: The tone for each bucket, in the same order as `thresholds`.
|
|
50921
|
+
*
|
|
50922
|
+
* A name, resolved as `--heatmap-tone-<name>` by whichever tier answers.
|
|
50923
|
+
* **`"1"` through `"5"` are a ramp and everything else is a category**, which
|
|
50924
|
+
* is the distinction a heatmap lives or dies on: magnitude has to be one hue
|
|
50925
|
+
* getting louder, because a reader compares two cells by weight and cannot
|
|
50926
|
+
* compare two hues at all. `tones="surface info accent success primary"` for a
|
|
50927
|
+
* commit count is five unrelated hues for five amounts, which is confetti with
|
|
50928
|
+
* no order in it.
|
|
50929
|
+
* - `total-label`/`totalLabel`: The name the `overview` gives the total of the readings drawn,
|
|
50930
|
+
* `{totalLabel}` in `overview-label`.
|
|
50931
|
+
* - `value`: The selected cells, separated by commas: each by the date its row's
|
|
50932
|
+
* header carries in a `<time datetime>`, such as `2026-06-11`, or by the
|
|
50933
|
+
* header's words where it carries none.
|
|
50934
|
+
*
|
|
50935
|
+
* Set it to start with cells selected. Written by a press or a key under
|
|
50936
|
+
* `selection-mode`.
|
|
50937
|
+
* - `data`: The readings as data, in the shape of a table, where the page has no
|
|
50938
|
+
* table to point `for` at. `for` wins where both are set.
|
|
50939
|
+
*
|
|
50940
|
+
* ```js
|
|
50941
|
+
* chart.data = {
|
|
50942
|
+
* caption: 'Sessions by channel',
|
|
50943
|
+
* columns: ['Month', 'Direct', 'Referral'],
|
|
50944
|
+
* rows: [['Jan', 10, 4], ['Feb', 20, 8]],
|
|
50945
|
+
* }
|
|
50946
|
+
* ```
|
|
50947
|
+
*
|
|
50948
|
+
* The first column holds each row's label and every column after it a
|
|
50949
|
+
* series, as in a table. A cell is a number, words, `null` for a blank,
|
|
50950
|
+
* or `{ value, text }` for a number shown as words, such as `$128k`. A
|
|
50951
|
+
* number is shown in `locale`.
|
|
50952
|
+
*
|
|
50953
|
+
* **A table is still the better source where the page can show one**:
|
|
50954
|
+
* it reads with no script and before hydration, and a reader can sort and
|
|
50955
|
+
* copy it. Data is drawn on the client only, so a server serves the
|
|
50956
|
+
* frame, and the summary, the keys and the readout are then the whole of
|
|
50957
|
+
* what a screen reader is given. Set a new object to redraw: the chart
|
|
50958
|
+
* does not look inside the one it has. (property only)
|
|
50959
|
+
* - `series`: The table's columns, one series each. Empty when there is no table.
|
|
50960
|
+
*
|
|
50961
|
+
* Held by the controller between edits, so a render reading this five
|
|
50962
|
+
* times parses the table once. See `SourceController.series`. (property only) (readonly)
|
|
50963
|
+
* - `named`: The chart's name: an `aria-label` written on the chart, then `label`,
|
|
50964
|
+
* then the table's caption.
|
|
50965
|
+
*
|
|
50966
|
+
* The fallback is the reason this is shared rather than copied: a caption is
|
|
50967
|
+
* already written, already the right words, and already the thing a reader
|
|
50968
|
+
* of the table sees. A chart that made the consumer say it twice would be
|
|
50969
|
+
* asking for the second one to drift.
|
|
50970
|
+
*
|
|
50971
|
+
* **An `aria-label` on the chart comes first**, because it is how a page
|
|
50972
|
+
* names an element, and the chart is a generic around its plot: written
|
|
50973
|
+
* on the host, the name reached nobody. The plot takes it, as Heatmap's
|
|
50974
|
+
* strip always did. (property only) (readonly)
|
|
50975
|
+
* - `plottedColumns`: The positions of the cells in a row that hold numbers, in table order.
|
|
50976
|
+
*
|
|
50977
|
+
* The same test `readSeries` applies when it drops a column of notes: a
|
|
50978
|
+
* column is a series where any row parses, so a series survives one blank
|
|
50979
|
+
* cell and a column of words is never one. (property only) (readonly)
|
|
50980
|
+
* - `readings`: The number of readings, which the pointer position maps onto. (property only) (readonly)
|
|
50981
|
+
* - `visible`: How many cells are actually drawn.
|
|
50982
|
+
*
|
|
50983
|
+
* **This is the number a summary has to agree with**, and the reason it is
|
|
50984
|
+
* published at all: a consumer's own summary is their markup and this element
|
|
50985
|
+
* cannot rewrite it, so the only honest arrangement is to hand over the count
|
|
50986
|
+
* and say when it changed.
|
|
50987
|
+
*
|
|
50988
|
+
* **A plain getter, and the attribute is written in `updated`, because
|
|
50989
|
+
* `@property({ reflect: true })` on a getter with no setter reflects once and
|
|
50990
|
+
* then goes stale.** Lit reflects a property that is in `changedProperties`,
|
|
50991
|
+
* and nothing puts a derived getter there after the first update: the
|
|
50992
|
+
* attribute would be right on load and wrong from the first resize, which is
|
|
50993
|
+
* the exact failure the count exists to prevent, arriving through the
|
|
50994
|
+
* mechanism meant to prevent it. (property only) (readonly)
|
|
50995
|
+
* - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
|
|
50996
|
+
*
|
|
50997
|
+
* **Named `whenSettled` because `settled` is taken four times over**, by
|
|
50998
|
+
* Image, Splitter and both color controls, none of them about transitions. A
|
|
50999
|
+
* base class takes the name every subclass then cannot use.
|
|
51000
|
+
*
|
|
51001
|
+
* **The state it reports cannot be watched, which is why this exists.** A
|
|
51002
|
+
* custom state is deliberately not in the DOM, so there is no
|
|
51003
|
+
* `MutationObserver` equivalent for `ElementInternals.states`. Await this
|
|
51004
|
+
* instead.
|
|
51005
|
+
*
|
|
51006
|
+
* Separate from `updateComplete`, which resolves in the microtask checkpoint
|
|
51007
|
+
* the suppression is still active in. That is the distinction `readyToMove`
|
|
51008
|
+
* in `@fusion.dev/helix-testing` is written around.
|
|
51009
|
+
*
|
|
51010
|
+
* It never resolves where `requestAnimationFrame` never fires, which is a
|
|
51011
|
+
* server, a hidden tab, and happy-dom. Callers that must not hang there race
|
|
51012
|
+
* it against a timeout, as the happy-dom harness's `readyToMove` does. The
|
|
51013
|
+
* browser harness's awaits it alone: a browser always runs the frame, and a
|
|
51014
|
+
* timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
|
|
51015
|
+
*
|
|
51016
|
+
* ## Events
|
|
51017
|
+
*
|
|
51018
|
+
* Events that will be emitted by the component.
|
|
51019
|
+
*
|
|
51020
|
+
* - `change`: Fired once a press or a key has changed which cells are selected.
|
|
51021
|
+
* - `helix-before-change`: Fired before a press or a key changes which cells are selected, with the `value` it would leave. Cancelable.
|
|
51022
|
+
* - `helix-reading-change`: 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.
|
|
51023
|
+
* - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
|
|
51024
|
+
* - `helix-resize`: Fired when the number of cells drawn changes, with the new number.
|
|
51025
|
+
*
|
|
51026
|
+
* ## Slots
|
|
51027
|
+
*
|
|
51028
|
+
* Areas where markup can be added to the component.
|
|
51029
|
+
*
|
|
51030
|
+
* - `empty`: Content shown under the strip when the table has no readings, such as a link to add the first. Falls back to `empty-text`.
|
|
51031
|
+
* - `end`: Below the strip, at the trailing edge: usually the newest date.
|
|
51032
|
+
* - `loading`: Content shown under the strip while `loading` is set and there are no readings yet. Falls back to `loading-text`.
|
|
51033
|
+
* - `start`: Below the strip, at the leading edge: usually the oldest date.
|
|
51034
|
+
* - `summary`: Below the strip, in the middle: a summary of the range shown.
|
|
51035
|
+
*
|
|
51036
|
+
* ## Methods
|
|
51037
|
+
*
|
|
51038
|
+
* Methods that can be called to access component functionality.
|
|
51039
|
+
*
|
|
51040
|
+
* - `seriesOf(cell: number) => number | undefined`: The palette slot for the cell at this position in a row.
|
|
51041
|
+
*
|
|
51042
|
+
* **A cell's place in its row is not its series' depth, and the tooltip
|
|
51043
|
+
* spent a while assuming it was.** `readSeries` drops a column nothing
|
|
51044
|
+
* parses and `readRows` keeps it, so one column of notes among the figures
|
|
51045
|
+
* moves every column after it one color along in the bubble: a row reading
|
|
51046
|
+
* `Referral 1,080` wearing series three's green beside a legend that says
|
|
51047
|
+
* series three is something else, which is the one failure the dot exists
|
|
51048
|
+
* to prevent.
|
|
51049
|
+
*
|
|
51050
|
+
* Overridden where a chart reads the table some other way. `ScatterChart`
|
|
51051
|
+
* splits the first plotted column off as the measure across, so its first
|
|
51052
|
+
* *plotted* series is this table's second numeric column.
|
|
51053
|
+
* - `showsSeries(name: string) => boolean`: Whether the series of this name is drawn, which it is unless a legend
|
|
51054
|
+
* reading the same table hid it.
|
|
51055
|
+
*
|
|
51056
|
+
* Asked of the table rather than of a legend, the table being the one
|
|
51057
|
+
* thing the two share: see `SourceController.hide`. A series keeps its
|
|
51058
|
+
* palette slot while it is hidden, so the colors of the others do not move.
|
|
51059
|
+
* For a ring the names are its rows, the slices being the rows.
|
|
51060
|
+
* - `showsColumn(cell: number) => boolean`: Whether the series read from the cell at this place in a row is drawn,
|
|
51061
|
+
* by its column's heading. The keys and the readout pass over one a
|
|
51062
|
+
* legend hid.
|
|
51063
|
+
*
|
|
51064
|
+
* A column's heading is the cell's name in every row, so the first row
|
|
51065
|
+
* answers for the column.
|
|
51066
|
+
* - `columnName(cell: number) => string`: The heading of the column at this place in a row: a cell's name is its
|
|
51067
|
+
* column's heading, read from the first row that has a cell there, so a
|
|
51068
|
+
* short first row does not lose the heading. `''` where no row has one.
|
|
51069
|
+
* - `pageFrom(at: number, forward: boolean) => number | undefined`: Where PageUp or PageDown goes from the drawn cell at `at`: the same day a
|
|
51070
|
+
* month on or back, by the dates the rows' headers carry. Undefined where
|
|
51071
|
+
* they carry none, and the keys move four columns.
|
|
51072
|
+
*
|
|
51073
|
+
* ## CSS Custom Properties
|
|
51074
|
+
*
|
|
51075
|
+
* CSS variables available for styling the component.
|
|
51076
|
+
*
|
|
51077
|
+
* - `--isometric-heatmap-span`: How many cells the drawing spans across: its columns and its rows together. The component writes it on the strip, and a stylesheet that caps the cell size reads it.
|
|
51078
|
+
* - `--heatmap-rows`: How many rows the strip lays out. The component writes it from the data, and the stylesheet that draws the strip reads it.
|
|
51079
|
+
* - `--heatmap-tone`: The tone of the cell it is set on. The component writes it, and the stylesheet that paints the cell reads it.
|
|
51080
|
+
* - `--heatmap-tone-1`: The weakest step of the magnitude ramp, used by `tones="1 …"`.
|
|
51081
|
+
* - `--heatmap-tone-2`: The second step of the magnitude ramp.
|
|
51082
|
+
* - `--heatmap-tone-3`: The third step of the magnitude ramp.
|
|
51083
|
+
* - `--heatmap-tone-4`: The fourth step of the magnitude ramp.
|
|
51084
|
+
* - `--heatmap-tone-5`: The strongest step of the magnitude ramp.
|
|
51085
|
+
* - `--heatmap-tone-accent`: The color of the `accent` tone.
|
|
51086
|
+
* - `--heatmap-tone-danger`: The color of the `danger` tone.
|
|
51087
|
+
* - `--heatmap-tone-info`: The color of the `info` tone.
|
|
51088
|
+
* - `--heatmap-tone-muted`: The color of the `muted` tone: a quiet background, for a bucket that means nothing happened.
|
|
51089
|
+
* - `--heatmap-tone-primary`: The color of the `primary` tone.
|
|
51090
|
+
* - `--heatmap-tone-success`: The color of the `success` tone, named in `tones` or in `data-tone`.
|
|
51091
|
+
* - `--heatmap-tone-warning`: The color of the `warning` tone.
|
|
51092
|
+
*
|
|
51093
|
+
* ## CSS Parts
|
|
51094
|
+
*
|
|
51095
|
+
* Custom selectors for styling elements within the component.
|
|
51096
|
+
*
|
|
51097
|
+
* - `cell`: One reading: a group holding its three faces.
|
|
51098
|
+
* - `drawing`: The SVG every prism is drawn in. It is mirrored on a right-to-left page.
|
|
51099
|
+
* - `left-face`: The face of a prism toward the next row, drawn at its lower left.
|
|
51100
|
+
* - `right-face`: The face of a prism toward the next column, drawn at its lower right.
|
|
51101
|
+
* - `row`: A column of prisms, which a grid reads as a row, under `selection-mode`.
|
|
51102
|
+
* - `strip`: The box the drawing fills, which takes focus to be read by key. It is named by the host's `aria-labelledby` or `aria-label`, then by `label`, then by the caption of the table.
|
|
51103
|
+
* - `top-face`: The top of a prism, which carries the reading's tone.
|
|
51104
|
+
* - `cell-active`: The cell the pointer or the keys rest on. Set alongside `cell`.
|
|
51105
|
+
* - `cell-selected`: A cell that is selected, under `selection-mode`. Set alongside `cell`.
|
|
51106
|
+
* - `empty`: The words under the strip when the table has no readings: the `empty` slot, falling back to `empty-text`. Not drawn while the table cannot be read yet, on the server and during hydration, there being no document to resolve `for` in.
|
|
51107
|
+
* - `end`: The trailing slot's box.
|
|
51108
|
+
* - `footer`: The three-slot row under the strip.
|
|
51109
|
+
* - `live`: The readout: a polite live region that says the cell the keys moved to. Hide it visually.
|
|
51110
|
+
* - `loading`: The words under the strip while `loading` is set and there are no readings: the `loading` slot, falling back to `loading-text`.
|
|
51111
|
+
* - `mark`: The invisible point the tooltip is anchored to.
|
|
51112
|
+
* - `overview`: The busiest reading and the total of the readings drawn, written as a sentence for screen readers, which describes the strip. Rendered once there are cells. Hide it visually.
|
|
51113
|
+
* - `plot`: The same element as `strip`, under the name every chart gives the drawing that takes focus.
|
|
51114
|
+
* - `selection`: A polite region that says how many cells are selected after a change, rendered from the first change. Hide it visually.
|
|
51115
|
+
* - `start`: The leading slot's box.
|
|
51116
|
+
* - `summary`: The middle slot's box.
|
|
51117
|
+
* - `table`: The readings as a table, for a screen reader, rendered only where they were drawn from `data`. Hide it visually.
|
|
51118
|
+
* - `tooltip`: The bubble, forwarded from `Tooltip`.
|
|
51119
|
+
* - `tooltip-anchor`: The `Tooltip` element itself.
|
|
51120
|
+
* - `tooltip-arrow`: The bubble's point, forwarded from `Tooltip`.
|
|
51121
|
+
* - `tooltip-arrow-bottom`: The point while the bubble is below the reading, on its top edge. Set alongside `tooltip-arrow`.
|
|
51122
|
+
* - `tooltip-arrow-left`: The point while the bubble is left of the reading, on its right edge. Set alongside `tooltip-arrow`.
|
|
51123
|
+
* - `tooltip-arrow-right`: The point while the bubble is right of the reading, on its left edge. Set alongside `tooltip-arrow`.
|
|
51124
|
+
* - `tooltip-arrow-top`: The point while the bubble is above the reading, on its bottom edge. Set alongside `tooltip-arrow`.
|
|
51125
|
+
* - `tooltip-bottom`: The bubble while it is below the reading. Set alongside `tooltip`.
|
|
51126
|
+
* - `tooltip-cell`: One column's name and value inside the tooltip.
|
|
51127
|
+
* - `tooltip-cell-current`: The cell the series keys rest on, in the charts whose readings hold several series. A strip draws one, so it is never set here.
|
|
51128
|
+
* - `tooltip-label`: The reading's own name inside the tooltip.
|
|
51129
|
+
* - `tooltip-left`: The bubble while it is left of the reading. Set alongside `tooltip`.
|
|
51130
|
+
* - `tooltip-name`: A column's name inside the tooltip.
|
|
51131
|
+
* - `tooltip-right`: The bubble while it is right of the reading. Set alongside `tooltip`.
|
|
51132
|
+
* - `tooltip-top`: The bubble while it is above the reading. Set alongside `tooltip`.
|
|
51133
|
+
* - `tooltip-value`: A column's value inside the tooltip.
|
|
51134
|
+
*
|
|
51135
|
+
* ## CSS States
|
|
51136
|
+
*
|
|
51137
|
+
* These can be used to apply styling when a component is in a given state.
|
|
51138
|
+
*
|
|
51139
|
+
* - `active`: While a cell is shown, under the pointer or the keys, with its tooltip open.
|
|
51140
|
+
* - `empty`: While the `empty` part stands in place of the cells.
|
|
51141
|
+
* - `loading`: While the `loading` part stands in place of the cells.
|
|
51142
|
+
* - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
|
|
51143
|
+
*/
|
|
51144
|
+
"helix-headless-isometric-heatmap": Partial<
|
|
51145
|
+
HelixHeadlessIsometricHeatmapProps &
|
|
51146
|
+
BaseProps<HelixHeadlessIsometricHeatmap> &
|
|
51147
|
+
BaseEvents<HelixHeadlessIsometricHeatmap>
|
|
51148
|
+
>;
|
|
51149
|
+
|
|
50260
51150
|
/**
|
|
50261
51151
|
* Renders a `<kbd>` element.
|
|
50262
51152
|
*
|
|
@@ -61412,13 +62302,11 @@ export type CustomElements = {
|
|
|
61412
62302
|
* **It is also the only track list a server can send.** The shim has no tree
|
|
61413
62303
|
* to walk, so a render there knows of no columns and this attribute is the
|
|
61414
62304
|
* whole answer: a table given one lays its grid out in the first paint, and a
|
|
61415
|
-
* table sized only by its columns
|
|
62305
|
+
* table sized only by its columns takes, until it upgrades, a track for each
|
|
62306
|
+
* column at the width a column with no `width` takes (`helix.css`).
|
|
61416
62307
|
*
|
|
61417
|
-
*
|
|
61418
|
-
*
|
|
61419
|
-
* and a list here would be a second way to say what that says. This table's
|
|
61420
|
-
* cells are markup, and a table written as rows of cells with no column
|
|
61421
|
-
* declared in it has nowhere else to be sized from.
|
|
62308
|
+
* Data Table takes the same list, for the same reason: a data table that
|
|
62309
|
+
* serves its first page as rows is laid out by it before it upgrades.
|
|
61422
62310
|
* - `default-expanded`/`defaultExpanded`: The keys of the rows whose rows are shown at the start, separated by
|
|
61423
62311
|
* commas. Used until `expanded` is set.
|
|
61424
62312
|
* - `default-selected`/`defaultSelected`: The keys selected at the start, separated by commas. Used until `selected`
|
|
@@ -74214,11 +75102,12 @@ export type CustomElementsSolidJs = {
|
|
|
74214
75102
|
* `csv()` returns the result as text: every row that passes the filter, in the
|
|
74215
75103
|
* order and the columns on screen. Saving the file is up to you.
|
|
74216
75104
|
*
|
|
74217
|
-
*
|
|
74218
|
-
*
|
|
74219
|
-
*
|
|
74220
|
-
*
|
|
74221
|
-
*
|
|
75105
|
+
* Size a column with its own `width`, or every column at once with `columns`,
|
|
75106
|
+
* a track list dealt out one track to a column in the order they are written,
|
|
75107
|
+
* as `Table` deals it. A column's `width` wins in its place. **A table that
|
|
75108
|
+
* serves its first page takes its widths from `columns`**: a server and a
|
|
75109
|
+
* stylesheet can read the table's own attributes and not its columns', so the
|
|
75110
|
+
* served rows are laid out at the widths the table draws.
|
|
74222
75111
|
*
|
|
74223
75112
|
* **The columns are an import of their own.** A column is the Table family's
|
|
74224
75113
|
* `TableColumn`, which the data table does not register, so a page that writes
|
|
@@ -74244,6 +75133,15 @@ export type CustomElementsSolidJs = {
|
|
|
74244
75133
|
*
|
|
74245
75134
|
* Reflected, because the styled tier indents a tree grid's row headers by
|
|
74246
75135
|
* it. No default, so a table that sets none writes nothing onto its host.
|
|
75136
|
+
* - `columns`: The column tracks, as a grid track list such as `2fr 1fr max-content`,
|
|
75137
|
+
* dealt out one track to a column in the order the columns are written. A
|
|
75138
|
+
* column's own `width` wins in its place, and a column it does not reach
|
|
75139
|
+
* takes the track a column with no `width` takes.
|
|
75140
|
+
*
|
|
75141
|
+
* **The one track list a server can send.** A server rendering this element
|
|
75142
|
+
* has no columns to read a `width` from, and neither has a stylesheet laying
|
|
75143
|
+
* out the rows a page served before the table upgrades, so a table sized here
|
|
75144
|
+
* lays those rows out at the widths it draws.
|
|
74247
75145
|
* - `default-expanded`/`defaultExpanded`: The keys of the rows open at the start, separated by commas. Used until
|
|
74248
75146
|
* `expanded` is set.
|
|
74249
75147
|
* - `default-filter`/`defaultFilter`: The starting search query, used until `filter` is set.
|
|
@@ -78460,10 +79358,12 @@ export type CustomElementsSolidJs = {
|
|
|
78460
79358
|
>;
|
|
78461
79359
|
|
|
78462
79360
|
/**
|
|
78463
|
-
*
|
|
78464
|
-
* WebGL, which a renderer such as Sigma.js does
|
|
78465
|
-
*
|
|
78466
|
-
*
|
|
79361
|
+
* The frame draws no graph itself. A force layout of thousands of notes is
|
|
79362
|
+
* physics and WebGL, which a renderer such as Sigma.js does, and an
|
|
79363
|
+
* architecture diagram is drawn by `isometricDriver` from
|
|
79364
|
+
* `@fusion.dev/helix-graph/isometric`. Put the drawing's box in the frame, and
|
|
79365
|
+
* `connectGraph` from `@fusion.dev/helix-graph` draws `nodes` and `links` in
|
|
79366
|
+
* it and keeps it in step with the frame.
|
|
78467
79367
|
*
|
|
78468
79368
|
* What the frame adds is what a drawing of a graph cannot do: a list of every
|
|
78469
79369
|
* note beside it, which is the graph for a screen reader and a quick way to
|
|
@@ -79520,14 +80420,11 @@ export type CustomElementsSolidJs = {
|
|
|
79520
80420
|
* a dark background. Shapes that set their own `fill` or `stroke` are
|
|
79521
80421
|
* unaffected.
|
|
79522
80422
|
*
|
|
79523
|
-
* **A name is looked up in a registry.** The family's entry registers
|
|
79524
|
-
* set
|
|
79525
|
-
*
|
|
79526
|
-
*
|
|
79527
|
-
*
|
|
79528
|
-
* `@fusion.dev/helix-headless/icon/root`, registers none: a page that imports
|
|
79529
|
-
* it and calls `registerIcons` with the glyphs it names ships those and no
|
|
79530
|
-
* others. `registerIconLibrary` resolves names under a prefix of your own,
|
|
80423
|
+
* **A name is looked up in a registry.** The family's entry registers the
|
|
80424
|
+
* whole set, so any name in it draws, and `icon/all` registers the same set.
|
|
80425
|
+
* The element's own entry, `@fusion.dev/helix-headless/icon/root`, registers
|
|
80426
|
+
* none: a page that imports it and calls `registerIcons` with the glyphs it
|
|
80427
|
+
* names ships those and no others. `registerIconLibrary` resolves names under a prefix of your own,
|
|
79531
80428
|
* such as `lucide:camera`, at once or later, and the element fires `load` when
|
|
79532
80429
|
* a glyph that came later is drawn. A glyph registered after the element
|
|
79533
80430
|
* rendered is drawn then.
|
|
@@ -79569,10 +80466,12 @@ export type CustomElementsSolidJs = {
|
|
|
79569
80466
|
* - `name`: The name of the icon in the Helix set.
|
|
79570
80467
|
*
|
|
79571
80468
|
* **A lookup, and the reason both this and `icon` exist.** A name is a string,
|
|
79572
|
-
* so it is what markup can carry, and resolving one means an index
|
|
79573
|
-
* bundler can shake
|
|
79574
|
-
*
|
|
79575
|
-
*
|
|
80469
|
+
* so it is what markup can carry, and resolving one means an index of the
|
|
80470
|
+
* whole set that no bundler can shake: 15 kB for a consumer who renders one
|
|
80471
|
+
* mark. An attribute is the only thing an HTML author can write, and that is
|
|
80472
|
+
* worth the index; a consumer who would rather not pay it imports the
|
|
80473
|
+
* element from `icon/root` and registers the glyphs it names, or hands over
|
|
80474
|
+
* the value instead.
|
|
79576
80475
|
*
|
|
79577
80476
|
* A name written `prefix:name` asks the library registered under that
|
|
79578
80477
|
* prefix.
|
|
@@ -80132,6 +81031,373 @@ export type CustomElementsSolidJs = {
|
|
|
80132
81031
|
BaseEvents<HelixHeadlessInput>
|
|
80133
81032
|
>;
|
|
80134
81033
|
|
|
81034
|
+
/**
|
|
81035
|
+
* The same strip as `Heatmap`, seen from above at an angle. Each reading is a
|
|
81036
|
+
* prism: its top face takes the cell's tone, and its height repeats the value,
|
|
81037
|
+
* measured from zero against the highest reading in the table. `rows="7"`
|
|
81038
|
+
* makes a contribution graph, with each week a column running down to the
|
|
81039
|
+
* right.
|
|
81040
|
+
*
|
|
81041
|
+
* **The height says what the tone says.** Read the exact value from the tooltip
|
|
81042
|
+
* or the table, and compare readings by tone. A tall reading at the front can
|
|
81043
|
+
* hide a short one behind it, so the newest column stands at the front, where
|
|
81044
|
+
* nothing covers it.
|
|
81045
|
+
*
|
|
81046
|
+
* **Everything else is `Heatmap`.** The table named by `for`, the tones and
|
|
81047
|
+
* thresholds, the keys, the tooltip, the overview, `selection-mode`, and the
|
|
81048
|
+
* events all work as they do there. The class extends the headless heatmap,
|
|
81049
|
+
* and its own entry point carries the drawing, so a page using only `Heatmap`
|
|
81050
|
+
* loads none of it.
|
|
81051
|
+
*
|
|
81052
|
+
* **`flat` lays every prism down** at no height, which leaves the tones on a
|
|
81053
|
+
* plane at the same angle.
|
|
81054
|
+
*
|
|
81055
|
+
* **`gap` and `min-cell` set the smallest cell.** The drawing scales as a
|
|
81056
|
+
* whole, so a wider box draws larger cells and the gap grows with them. A box
|
|
81057
|
+
* too narrow for every column at `min-cell` draws the newest that fit.
|
|
81058
|
+
*
|
|
81059
|
+
* **The drawing is SVG and holds still.** It scales with its box through its
|
|
81060
|
+
* `viewBox`, needs no WebGL, and has no motion to pause.
|
|
81061
|
+
*
|
|
81062
|
+
* **Keyboard.** The keys are `Heatmap`'s. Down moves to the next reading in a
|
|
81063
|
+
* column, drawn down to the left, and Right to the same reading in the next
|
|
81064
|
+
* column, drawn down to the right.
|
|
81065
|
+
*
|
|
81066
|
+
* | Key | What it does |
|
|
81067
|
+
* |---|---|
|
|
81068
|
+
* | Tab | Moves focus to the strip and shows the first cell. |
|
|
81069
|
+
* | Down, Up | Moves to the next or the previous cell. |
|
|
81070
|
+
* | Right, Left | Moves a column on or back, a week with `rows="7"`. On a right-to-left page, Left moves on. |
|
|
81071
|
+
* | Home, End | Moves to the first or the last cell. |
|
|
81072
|
+
* | Page Down, Page Up | Moves a month on or back where the rows carry dates, and four columns otherwise. |
|
|
81073
|
+
* | Enter, Space | Presses the cell, which sends `helix-reading-press`, and selects it or lets it go under `selection-mode`. |
|
|
81074
|
+
* | 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"`. |
|
|
81075
|
+
* | Escape | Puts the cell's tooltip away. |
|
|
81076
|
+
*
|
|
81077
|
+
* ## Attributes & Properties
|
|
81078
|
+
*
|
|
81079
|
+
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
81080
|
+
*
|
|
81081
|
+
* - `flat`: Draws every prism at no height, so the tones lie on a plane.
|
|
81082
|
+
* - `relief`: How tall the highest reading stands, in cells. Every other reading stands
|
|
81083
|
+
* at its share of it.
|
|
81084
|
+
* - `empty-text`/`emptyText`: The words shown in place of the drawing when the table has no readings,
|
|
81085
|
+
* and the fallback of the `empty` slot.
|
|
81086
|
+
* - `loading`: Whether the readings are still on their way. The chart shows
|
|
81087
|
+
* `loading-text` in place of an empty drawing until it has readings.
|
|
81088
|
+
*
|
|
81089
|
+
* Reflected, so a stylesheet can treat the chart while it waits. A chart
|
|
81090
|
+
* that already has readings keeps drawing them, so a refresh does not
|
|
81091
|
+
* blank it.
|
|
81092
|
+
* - `loading-text`/`loadingText`: The words shown in place of the drawing while `loading` is set and
|
|
81093
|
+
* there are no readings yet, and the fallback of the `loading` slot.
|
|
81094
|
+
* - `for`: The id of the table to read.
|
|
81095
|
+
*
|
|
81096
|
+
* Names a table in the same tree, so a chart inside another component's
|
|
81097
|
+
* shadow root reads a table in that root rather than one in the document. A
|
|
81098
|
+
* `<table>` or anything built from grid roles, including `helix-table`.
|
|
81099
|
+
*
|
|
81100
|
+
* **In React this arrives as a property and not as an attribute**, the way
|
|
81101
|
+
* `Tooltip.for` does, so it does not reflect and nothing styles on it.
|
|
81102
|
+
* - `label`: The chart's name, which starts the chart's text summary.
|
|
81103
|
+
*
|
|
81104
|
+
* Absent falls back to the table's own caption, which is usually the right
|
|
81105
|
+
* words and is already written.
|
|
81106
|
+
* - `locale`: The locale the chart's own numbers are written in: its axis, its
|
|
81107
|
+
* percentages and its totals, such as `de` for `1.240` and `32 %`.
|
|
81108
|
+
*
|
|
81109
|
+
* Absent reads the nearest `lang`, then the runtime's own. The table's
|
|
81110
|
+
* cells are shown as the table writes them, whatever this says.
|
|
81111
|
+
* - `position-label`/`positionLabel`: Where a reading the keys moved to stands among the readings, said after
|
|
81112
|
+
* it. `{position}` and `{count}` are replaced with the numbers, written in
|
|
81113
|
+
* `locale`.
|
|
81114
|
+
*
|
|
81115
|
+
* Set it to the words of the page's language, such as `{position} von
|
|
81116
|
+
* {count}`, or to nothing to say no position. A slice or a series a
|
|
81117
|
+
* legend hid is not counted.
|
|
81118
|
+
* - `busiest-label`/`busiestLabel`: The name the `overview` gives the busiest reading, `{busiestLabel}` in
|
|
81119
|
+
* `overview-label`.
|
|
81120
|
+
* - `gap`: Space between cells, in CSS pixels. It is a number for the same reason
|
|
81121
|
+
* `min-cell` is.
|
|
81122
|
+
* - `min-cell`/`minCell`: The smallest a cell may get before the strip draws fewer of them, in CSS pixels.
|
|
81123
|
+
*
|
|
81124
|
+
* **Set this only to overrule what the strip actually draws.** The arithmetic
|
|
81125
|
+
* needs a width in pixels and the width is a length the stylesheet resolves,
|
|
81126
|
+
* so a number written here that disagrees with the sheet is a promise the
|
|
81127
|
+
* consumer has to keep by hand, and the one number a summary is told to trust
|
|
81128
|
+
* is the one it gets wrong.
|
|
81129
|
+
*
|
|
81130
|
+
* The strip measures itself, so sizing the cells in a sheet is enough on its
|
|
81131
|
+
* own and these two are the estimate used until the first measurement lands.
|
|
81132
|
+
* Writing the attribute pins the value and stops the measurement being
|
|
81133
|
+
* consulted, which is what a container query or a transition on the cell size
|
|
81134
|
+
* wants, where what is drawn this frame is not what the arithmetic should
|
|
81135
|
+
* plan around.
|
|
81136
|
+
*
|
|
81137
|
+
* Zero turns the dropping off altogether, which is right for a strip in a
|
|
81138
|
+
* container that cannot get narrow.
|
|
81139
|
+
* - `overview-label`/`overviewLabel`: The `overview`'s sentence. `{busiestLabel}` and `{totalLabel}` are
|
|
81140
|
+
* `busiest-label` and `total-label`, `{busiest}` the busiest reading's name
|
|
81141
|
+
* and its reading as the table writes it, and `{total}` the total of the
|
|
81142
|
+
* readings drawn, written in the locale.
|
|
81143
|
+
* - `rows`: How many rows the strip has.
|
|
81144
|
+
*
|
|
81145
|
+
* `1` is a status strip and `7` is a calendar week, which are the two readings
|
|
81146
|
+
* this covers. Cells fill down the column and then across, which is what a
|
|
81147
|
+
* calendar heatmap does: a week is a column, so the strip reads along the
|
|
81148
|
+
* line in weeks, from the right on a right-to-left page, and top to bottom in
|
|
81149
|
+
* days.
|
|
81150
|
+
* - `selected-label`/`selectedLabel`: What the readout added for a selected cell, under `selection-mode`.
|
|
81151
|
+
* - `selection-label`/`selectionLabel`: What the `selection` part says after the selection changes. `{count}` is
|
|
81152
|
+
* how many cells are selected, written in the locale, and a language that
|
|
81153
|
+
* needs plural forms writes them: `{count, plural, one {# wybrany} few
|
|
81154
|
+
* {# wybrane} many {# wybranych} other {# wybranego}}`.
|
|
81155
|
+
* - `selection-mode`/`selectionMode`: How many cells a reader can select: `single` or `multiple`.
|
|
81156
|
+
*
|
|
81157
|
+
* Absent selects nothing, and a press or Space does what it did.
|
|
81158
|
+
* - `selection-shape`/`selectionShape`: What Shift takes in under `selection-mode="multiple"`: `linear`, every
|
|
81159
|
+
* cell between two in the table's order, or `rectangle`, the cells between
|
|
81160
|
+
* two corners by row and by column, as a spreadsheet selects a range.
|
|
81161
|
+
* - `strip-label`/`stripLabel`: The strip's name where the chart has none: no `aria-label`, `label`, or
|
|
81162
|
+
* table caption.
|
|
81163
|
+
* - `thresholds`: Lower bounds for the tone buckets, in the order the tones are given.
|
|
81164
|
+
*
|
|
81165
|
+
* `thresholds="1 3 6 9"` with `tones="1 2 3 4"` puts 1 and 2 in the ramp's
|
|
81166
|
+
* first step, 3 to 5 in the second, 6 to 8 in the third, and 9 upward in the
|
|
81167
|
+
* fourth. A value below the first bound gets no tone at all: an empty day in a
|
|
81168
|
+
* contribution graph is a day with nothing in it, and painting it as the
|
|
81169
|
+
* lowest bucket claims a reading that does not exist.
|
|
81170
|
+
* - `tones`: The tone for each bucket, in the same order as `thresholds`.
|
|
81171
|
+
*
|
|
81172
|
+
* A name, resolved as `--heatmap-tone-<name>` by whichever tier answers.
|
|
81173
|
+
* **`"1"` through `"5"` are a ramp and everything else is a category**, which
|
|
81174
|
+
* is the distinction a heatmap lives or dies on: magnitude has to be one hue
|
|
81175
|
+
* getting louder, because a reader compares two cells by weight and cannot
|
|
81176
|
+
* compare two hues at all. `tones="surface info accent success primary"` for a
|
|
81177
|
+
* commit count is five unrelated hues for five amounts, which is confetti with
|
|
81178
|
+
* no order in it.
|
|
81179
|
+
* - `total-label`/`totalLabel`: The name the `overview` gives the total of the readings drawn,
|
|
81180
|
+
* `{totalLabel}` in `overview-label`.
|
|
81181
|
+
* - `value`: The selected cells, separated by commas: each by the date its row's
|
|
81182
|
+
* header carries in a `<time datetime>`, such as `2026-06-11`, or by the
|
|
81183
|
+
* header's words where it carries none.
|
|
81184
|
+
*
|
|
81185
|
+
* Set it to start with cells selected. Written by a press or a key under
|
|
81186
|
+
* `selection-mode`.
|
|
81187
|
+
* - `data`: The readings as data, in the shape of a table, where the page has no
|
|
81188
|
+
* table to point `for` at. `for` wins where both are set.
|
|
81189
|
+
*
|
|
81190
|
+
* ```js
|
|
81191
|
+
* chart.data = {
|
|
81192
|
+
* caption: 'Sessions by channel',
|
|
81193
|
+
* columns: ['Month', 'Direct', 'Referral'],
|
|
81194
|
+
* rows: [['Jan', 10, 4], ['Feb', 20, 8]],
|
|
81195
|
+
* }
|
|
81196
|
+
* ```
|
|
81197
|
+
*
|
|
81198
|
+
* The first column holds each row's label and every column after it a
|
|
81199
|
+
* series, as in a table. A cell is a number, words, `null` for a blank,
|
|
81200
|
+
* or `{ value, text }` for a number shown as words, such as `$128k`. A
|
|
81201
|
+
* number is shown in `locale`.
|
|
81202
|
+
*
|
|
81203
|
+
* **A table is still the better source where the page can show one**:
|
|
81204
|
+
* it reads with no script and before hydration, and a reader can sort and
|
|
81205
|
+
* copy it. Data is drawn on the client only, so a server serves the
|
|
81206
|
+
* frame, and the summary, the keys and the readout are then the whole of
|
|
81207
|
+
* what a screen reader is given. Set a new object to redraw: the chart
|
|
81208
|
+
* does not look inside the one it has. (property only)
|
|
81209
|
+
* - `series`: The table's columns, one series each. Empty when there is no table.
|
|
81210
|
+
*
|
|
81211
|
+
* Held by the controller between edits, so a render reading this five
|
|
81212
|
+
* times parses the table once. See `SourceController.series`. (property only) (readonly)
|
|
81213
|
+
* - `named`: The chart's name: an `aria-label` written on the chart, then `label`,
|
|
81214
|
+
* then the table's caption.
|
|
81215
|
+
*
|
|
81216
|
+
* The fallback is the reason this is shared rather than copied: a caption is
|
|
81217
|
+
* already written, already the right words, and already the thing a reader
|
|
81218
|
+
* of the table sees. A chart that made the consumer say it twice would be
|
|
81219
|
+
* asking for the second one to drift.
|
|
81220
|
+
*
|
|
81221
|
+
* **An `aria-label` on the chart comes first**, because it is how a page
|
|
81222
|
+
* names an element, and the chart is a generic around its plot: written
|
|
81223
|
+
* on the host, the name reached nobody. The plot takes it, as Heatmap's
|
|
81224
|
+
* strip always did. (property only) (readonly)
|
|
81225
|
+
* - `plottedColumns`: The positions of the cells in a row that hold numbers, in table order.
|
|
81226
|
+
*
|
|
81227
|
+
* The same test `readSeries` applies when it drops a column of notes: a
|
|
81228
|
+
* column is a series where any row parses, so a series survives one blank
|
|
81229
|
+
* cell and a column of words is never one. (property only) (readonly)
|
|
81230
|
+
* - `readings`: The number of readings, which the pointer position maps onto. (property only) (readonly)
|
|
81231
|
+
* - `visible`: How many cells are actually drawn.
|
|
81232
|
+
*
|
|
81233
|
+
* **This is the number a summary has to agree with**, and the reason it is
|
|
81234
|
+
* published at all: a consumer's own summary is their markup and this element
|
|
81235
|
+
* cannot rewrite it, so the only honest arrangement is to hand over the count
|
|
81236
|
+
* and say when it changed.
|
|
81237
|
+
*
|
|
81238
|
+
* **A plain getter, and the attribute is written in `updated`, because
|
|
81239
|
+
* `@property({ reflect: true })` on a getter with no setter reflects once and
|
|
81240
|
+
* then goes stale.** Lit reflects a property that is in `changedProperties`,
|
|
81241
|
+
* and nothing puts a derived getter there after the first update: the
|
|
81242
|
+
* attribute would be right on load and wrong from the first resize, which is
|
|
81243
|
+
* the exact failure the count exists to prevent, arriving through the
|
|
81244
|
+
* mechanism meant to prevent it. (property only) (readonly)
|
|
81245
|
+
* - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
|
|
81246
|
+
*
|
|
81247
|
+
* **Named `whenSettled` because `settled` is taken four times over**, by
|
|
81248
|
+
* Image, Splitter and both color controls, none of them about transitions. A
|
|
81249
|
+
* base class takes the name every subclass then cannot use.
|
|
81250
|
+
*
|
|
81251
|
+
* **The state it reports cannot be watched, which is why this exists.** A
|
|
81252
|
+
* custom state is deliberately not in the DOM, so there is no
|
|
81253
|
+
* `MutationObserver` equivalent for `ElementInternals.states`. Await this
|
|
81254
|
+
* instead.
|
|
81255
|
+
*
|
|
81256
|
+
* Separate from `updateComplete`, which resolves in the microtask checkpoint
|
|
81257
|
+
* the suppression is still active in. That is the distinction `readyToMove`
|
|
81258
|
+
* in `@fusion.dev/helix-testing` is written around.
|
|
81259
|
+
*
|
|
81260
|
+
* It never resolves where `requestAnimationFrame` never fires, which is a
|
|
81261
|
+
* server, a hidden tab, and happy-dom. Callers that must not hang there race
|
|
81262
|
+
* it against a timeout, as the happy-dom harness's `readyToMove` does. The
|
|
81263
|
+
* browser harness's awaits it alone: a browser always runs the frame, and a
|
|
81264
|
+
* timer beside it was a bet on how long one takes, which a busy run lost. (property only) (readonly)
|
|
81265
|
+
*
|
|
81266
|
+
* ## Events
|
|
81267
|
+
*
|
|
81268
|
+
* Events that will be emitted by the component.
|
|
81269
|
+
*
|
|
81270
|
+
* - `change`: Fired once a press or a key has changed which cells are selected.
|
|
81271
|
+
* - `helix-before-change`: Fired before a press or a key changes which cells are selected, with the `value` it would leave. Cancelable.
|
|
81272
|
+
* - `helix-reading-change`: 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.
|
|
81273
|
+
* - `helix-reading-press`: A reading was clicked, tapped, or pressed with Enter or Space, with the same detail as `helix-reading-change`.
|
|
81274
|
+
* - `helix-resize`: Fired when the number of cells drawn changes, with the new number.
|
|
81275
|
+
*
|
|
81276
|
+
* ## Slots
|
|
81277
|
+
*
|
|
81278
|
+
* Areas where markup can be added to the component.
|
|
81279
|
+
*
|
|
81280
|
+
* - `empty`: Content shown under the strip when the table has no readings, such as a link to add the first. Falls back to `empty-text`.
|
|
81281
|
+
* - `end`: Below the strip, at the trailing edge: usually the newest date.
|
|
81282
|
+
* - `loading`: Content shown under the strip while `loading` is set and there are no readings yet. Falls back to `loading-text`.
|
|
81283
|
+
* - `start`: Below the strip, at the leading edge: usually the oldest date.
|
|
81284
|
+
* - `summary`: Below the strip, in the middle: a summary of the range shown.
|
|
81285
|
+
*
|
|
81286
|
+
* ## Methods
|
|
81287
|
+
*
|
|
81288
|
+
* Methods that can be called to access component functionality.
|
|
81289
|
+
*
|
|
81290
|
+
* - `seriesOf(cell: number) => number | undefined`: The palette slot for the cell at this position in a row.
|
|
81291
|
+
*
|
|
81292
|
+
* **A cell's place in its row is not its series' depth, and the tooltip
|
|
81293
|
+
* spent a while assuming it was.** `readSeries` drops a column nothing
|
|
81294
|
+
* parses and `readRows` keeps it, so one column of notes among the figures
|
|
81295
|
+
* moves every column after it one color along in the bubble: a row reading
|
|
81296
|
+
* `Referral 1,080` wearing series three's green beside a legend that says
|
|
81297
|
+
* series three is something else, which is the one failure the dot exists
|
|
81298
|
+
* to prevent.
|
|
81299
|
+
*
|
|
81300
|
+
* Overridden where a chart reads the table some other way. `ScatterChart`
|
|
81301
|
+
* splits the first plotted column off as the measure across, so its first
|
|
81302
|
+
* *plotted* series is this table's second numeric column.
|
|
81303
|
+
* - `showsSeries(name: string) => boolean`: Whether the series of this name is drawn, which it is unless a legend
|
|
81304
|
+
* reading the same table hid it.
|
|
81305
|
+
*
|
|
81306
|
+
* Asked of the table rather than of a legend, the table being the one
|
|
81307
|
+
* thing the two share: see `SourceController.hide`. A series keeps its
|
|
81308
|
+
* palette slot while it is hidden, so the colors of the others do not move.
|
|
81309
|
+
* For a ring the names are its rows, the slices being the rows.
|
|
81310
|
+
* - `showsColumn(cell: number) => boolean`: Whether the series read from the cell at this place in a row is drawn,
|
|
81311
|
+
* by its column's heading. The keys and the readout pass over one a
|
|
81312
|
+
* legend hid.
|
|
81313
|
+
*
|
|
81314
|
+
* A column's heading is the cell's name in every row, so the first row
|
|
81315
|
+
* answers for the column.
|
|
81316
|
+
* - `columnName(cell: number) => string`: The heading of the column at this place in a row: a cell's name is its
|
|
81317
|
+
* column's heading, read from the first row that has a cell there, so a
|
|
81318
|
+
* short first row does not lose the heading. `''` where no row has one.
|
|
81319
|
+
* - `pageFrom(at: number, forward: boolean) => number | undefined`: Where PageUp or PageDown goes from the drawn cell at `at`: the same day a
|
|
81320
|
+
* month on or back, by the dates the rows' headers carry. Undefined where
|
|
81321
|
+
* they carry none, and the keys move four columns.
|
|
81322
|
+
*
|
|
81323
|
+
* ## CSS Custom Properties
|
|
81324
|
+
*
|
|
81325
|
+
* CSS variables available for styling the component.
|
|
81326
|
+
*
|
|
81327
|
+
* - `--isometric-heatmap-span`: How many cells the drawing spans across: its columns and its rows together. The component writes it on the strip, and a stylesheet that caps the cell size reads it.
|
|
81328
|
+
* - `--heatmap-rows`: How many rows the strip lays out. The component writes it from the data, and the stylesheet that draws the strip reads it.
|
|
81329
|
+
* - `--heatmap-tone`: The tone of the cell it is set on. The component writes it, and the stylesheet that paints the cell reads it.
|
|
81330
|
+
* - `--heatmap-tone-1`: The weakest step of the magnitude ramp, used by `tones="1 …"`.
|
|
81331
|
+
* - `--heatmap-tone-2`: The second step of the magnitude ramp.
|
|
81332
|
+
* - `--heatmap-tone-3`: The third step of the magnitude ramp.
|
|
81333
|
+
* - `--heatmap-tone-4`: The fourth step of the magnitude ramp.
|
|
81334
|
+
* - `--heatmap-tone-5`: The strongest step of the magnitude ramp.
|
|
81335
|
+
* - `--heatmap-tone-accent`: The color of the `accent` tone.
|
|
81336
|
+
* - `--heatmap-tone-danger`: The color of the `danger` tone.
|
|
81337
|
+
* - `--heatmap-tone-info`: The color of the `info` tone.
|
|
81338
|
+
* - `--heatmap-tone-muted`: The color of the `muted` tone: a quiet background, for a bucket that means nothing happened.
|
|
81339
|
+
* - `--heatmap-tone-primary`: The color of the `primary` tone.
|
|
81340
|
+
* - `--heatmap-tone-success`: The color of the `success` tone, named in `tones` or in `data-tone`.
|
|
81341
|
+
* - `--heatmap-tone-warning`: The color of the `warning` tone.
|
|
81342
|
+
*
|
|
81343
|
+
* ## CSS Parts
|
|
81344
|
+
*
|
|
81345
|
+
* Custom selectors for styling elements within the component.
|
|
81346
|
+
*
|
|
81347
|
+
* - `cell`: One reading: a group holding its three faces.
|
|
81348
|
+
* - `drawing`: The SVG every prism is drawn in. It is mirrored on a right-to-left page.
|
|
81349
|
+
* - `left-face`: The face of a prism toward the next row, drawn at its lower left.
|
|
81350
|
+
* - `right-face`: The face of a prism toward the next column, drawn at its lower right.
|
|
81351
|
+
* - `row`: A column of prisms, which a grid reads as a row, under `selection-mode`.
|
|
81352
|
+
* - `strip`: The box the drawing fills, which takes focus to be read by key. It is named by the host's `aria-labelledby` or `aria-label`, then by `label`, then by the caption of the table.
|
|
81353
|
+
* - `top-face`: The top of a prism, which carries the reading's tone.
|
|
81354
|
+
* - `cell-active`: The cell the pointer or the keys rest on. Set alongside `cell`.
|
|
81355
|
+
* - `cell-selected`: A cell that is selected, under `selection-mode`. Set alongside `cell`.
|
|
81356
|
+
* - `empty`: The words under the strip when the table has no readings: the `empty` slot, falling back to `empty-text`. Not drawn while the table cannot be read yet, on the server and during hydration, there being no document to resolve `for` in.
|
|
81357
|
+
* - `end`: The trailing slot's box.
|
|
81358
|
+
* - `footer`: The three-slot row under the strip.
|
|
81359
|
+
* - `live`: The readout: a polite live region that says the cell the keys moved to. Hide it visually.
|
|
81360
|
+
* - `loading`: The words under the strip while `loading` is set and there are no readings: the `loading` slot, falling back to `loading-text`.
|
|
81361
|
+
* - `mark`: The invisible point the tooltip is anchored to.
|
|
81362
|
+
* - `overview`: The busiest reading and the total of the readings drawn, written as a sentence for screen readers, which describes the strip. Rendered once there are cells. Hide it visually.
|
|
81363
|
+
* - `plot`: The same element as `strip`, under the name every chart gives the drawing that takes focus.
|
|
81364
|
+
* - `selection`: A polite region that says how many cells are selected after a change, rendered from the first change. Hide it visually.
|
|
81365
|
+
* - `start`: The leading slot's box.
|
|
81366
|
+
* - `summary`: The middle slot's box.
|
|
81367
|
+
* - `table`: The readings as a table, for a screen reader, rendered only where they were drawn from `data`. Hide it visually.
|
|
81368
|
+
* - `tooltip`: The bubble, forwarded from `Tooltip`.
|
|
81369
|
+
* - `tooltip-anchor`: The `Tooltip` element itself.
|
|
81370
|
+
* - `tooltip-arrow`: The bubble's point, forwarded from `Tooltip`.
|
|
81371
|
+
* - `tooltip-arrow-bottom`: The point while the bubble is below the reading, on its top edge. Set alongside `tooltip-arrow`.
|
|
81372
|
+
* - `tooltip-arrow-left`: The point while the bubble is left of the reading, on its right edge. Set alongside `tooltip-arrow`.
|
|
81373
|
+
* - `tooltip-arrow-right`: The point while the bubble is right of the reading, on its left edge. Set alongside `tooltip-arrow`.
|
|
81374
|
+
* - `tooltip-arrow-top`: The point while the bubble is above the reading, on its bottom edge. Set alongside `tooltip-arrow`.
|
|
81375
|
+
* - `tooltip-bottom`: The bubble while it is below the reading. Set alongside `tooltip`.
|
|
81376
|
+
* - `tooltip-cell`: One column's name and value inside the tooltip.
|
|
81377
|
+
* - `tooltip-cell-current`: The cell the series keys rest on, in the charts whose readings hold several series. A strip draws one, so it is never set here.
|
|
81378
|
+
* - `tooltip-label`: The reading's own name inside the tooltip.
|
|
81379
|
+
* - `tooltip-left`: The bubble while it is left of the reading. Set alongside `tooltip`.
|
|
81380
|
+
* - `tooltip-name`: A column's name inside the tooltip.
|
|
81381
|
+
* - `tooltip-right`: The bubble while it is right of the reading. Set alongside `tooltip`.
|
|
81382
|
+
* - `tooltip-top`: The bubble while it is above the reading. Set alongside `tooltip`.
|
|
81383
|
+
* - `tooltip-value`: A column's value inside the tooltip.
|
|
81384
|
+
*
|
|
81385
|
+
* ## CSS States
|
|
81386
|
+
*
|
|
81387
|
+
* These can be used to apply styling when a component is in a given state.
|
|
81388
|
+
*
|
|
81389
|
+
* - `active`: While a cell is shown, under the pointer or the keys, with its tooltip open.
|
|
81390
|
+
* - `empty`: While the `empty` part stands in place of the cells.
|
|
81391
|
+
* - `loading`: While the `loading` part stands in place of the cells.
|
|
81392
|
+
* - `settled`: Set one frame after the first render. Transitions wait for it, so an element does not animate its own arrival.
|
|
81393
|
+
*/
|
|
81394
|
+
"helix-headless-isometric-heatmap": Partial<
|
|
81395
|
+
HelixHeadlessIsometricHeatmapProps &
|
|
81396
|
+
HelixHeadlessIsometricHeatmapSolidJsProps &
|
|
81397
|
+
BaseProps<HelixHeadlessIsometricHeatmap> &
|
|
81398
|
+
BaseEvents<HelixHeadlessIsometricHeatmap>
|
|
81399
|
+
>;
|
|
81400
|
+
|
|
80135
81401
|
/**
|
|
80136
81402
|
* Renders a `<kbd>` element.
|
|
80137
81403
|
*
|
|
@@ -91431,13 +92697,11 @@ export type CustomElementsSolidJs = {
|
|
|
91431
92697
|
* **It is also the only track list a server can send.** The shim has no tree
|
|
91432
92698
|
* to walk, so a render there knows of no columns and this attribute is the
|
|
91433
92699
|
* whole answer: a table given one lays its grid out in the first paint, and a
|
|
91434
|
-
* table sized only by its columns
|
|
92700
|
+
* table sized only by its columns takes, until it upgrades, a track for each
|
|
92701
|
+
* column at the width a column with no `width` takes (`helix.css`).
|
|
91435
92702
|
*
|
|
91436
|
-
*
|
|
91437
|
-
*
|
|
91438
|
-
* and a list here would be a second way to say what that says. This table's
|
|
91439
|
-
* cells are markup, and a table written as rows of cells with no column
|
|
91440
|
-
* declared in it has nowhere else to be sized from.
|
|
92703
|
+
* Data Table takes the same list, for the same reason: a data table that
|
|
92704
|
+
* serves its first page as rows is laid out by it before it upgrades.
|
|
91441
92705
|
* - `default-expanded`/`defaultExpanded`: The keys of the rows whose rows are shown at the start, separated by
|
|
91442
92706
|
* commas. Used until `expanded` is set.
|
|
91443
92707
|
* - `default-selected`/`defaultSelected`: The keys selected at the start, separated by commas. Used until `selected`
|
|
@@ -97285,6 +98549,8 @@ export type CustomCssProperties = {
|
|
|
97285
98549
|
"--heatmap-tone-success"?: (string) | undefined;
|
|
97286
98550
|
/** The color of the `warning` tone. */
|
|
97287
98551
|
"--heatmap-tone-warning"?: (string) | undefined;
|
|
98552
|
+
/** How many cells the drawing spans across: its columns and its rows together. The component writes it on the strip, and a stylesheet that caps the cell size reads it. */
|
|
98553
|
+
"--isometric-heatmap-span"?: (string) | undefined;
|
|
97288
98554
|
/** How far the zoomed item is moved across from the middle of the viewport, in pixels, toward the right. Written only while zoomed. */
|
|
97289
98555
|
"--lightbox-pan-x"?: (string) | undefined;
|
|
97290
98556
|
/** How far the zoomed item is moved down from the middle of the viewport, in pixels. Written only while zoomed. */
|