@fusion.dev/helix-headless 0.46.1 → 0.47.1
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 +29 -28
- package/dist/carousel/root/carousel-root.d.ts +42 -0
- package/dist/carousel/root/carousel-root.js +6 -2
- package/dist/data-table/root/data-table-root.d.ts +9 -0
- package/dist/table/cell/table-cell.d.ts +1 -1
- package/dist/table/column/table-column.d.ts +9 -6
- package/dist/table/root/table-root.d.ts +14 -2
- package/dist/table/row/table-row.d.ts +1 -1
- package/dist/tree/item/tree-item.d.ts +23 -10
- package/dist/tree/item/tree-item.js +1 -1
- package/dist/tree/root/tree-root.d.ts +1 -1
- package/package.json +5 -5
- package/types/jsx.d.ts +292 -46
- package/types/vue.d.ts +79 -13
package/types/jsx.d.ts
CHANGED
|
@@ -1839,6 +1839,27 @@ clamps to the last *slide*, so three of the six indicators point at an
|
|
|
1839
1839
|
offset the track has already reached: pressing next walks the dots to the
|
|
1840
1840
|
end while the slides stop moving a third of the way through.
|
|
1841
1841
|
|
|
1842
|
+
**The number is published to the styles rather than enumerated by them**,
|
|
1843
|
+
as `--carousel-per-view` on the track, which is what keeps a width and a
|
|
1844
|
+
count from disagreeing. A sheet can only name a value it wrote a rule for,
|
|
1845
|
+
so the styled tier enumerated `per-view="2"` through `5` and called five a
|
|
1846
|
+
judgment; above it the pane fell back to one across while this file went on
|
|
1847
|
+
counting positions. Measured in Chromium over eight slides, six across gave
|
|
1848
|
+
three dots, a pane taking the whole track and five slides reachable only by
|
|
1849
|
+
dragging. Written from here there is no ceiling to exceed, and a consumer's
|
|
1850
|
+
own sheet reads the same declaration the styled one does. `runEnd` publishes
|
|
1851
|
+
its correction the same way and for the same reason.
|
|
1852
|
+
|
|
1853
|
+
**On the track and not on the host.** A custom property on the host is a
|
|
1854
|
+
reflected attribute by another name: it would arrive on upgrade, and a
|
|
1855
|
+
consumer's server markup never had it. Inside the component's own shadow
|
|
1856
|
+
root it serializes with the rest of the template on the server, and the
|
|
1857
|
+
track's own declaration beats anything a consumer inherits in, so the
|
|
1858
|
+
attribute is the one answer to how wide a pane is.
|
|
1859
|
+
|
|
1860
|
+
A value the track cannot honor is taken to the nearest one it can, by
|
|
1861
|
+
`across`, and both tiers read that rather than this.
|
|
1862
|
+
|
|
1842
1863
|
No default, because it reflects. A reflected property with a value writes
|
|
1843
1864
|
its attribute on upgrade, and the host then carries something a consumer's
|
|
1844
1865
|
server markup never had, which React reports as a mismatch. The one-across
|
|
@@ -1855,6 +1876,27 @@ clamps to the last *slide*, so three of the six indicators point at an
|
|
|
1855
1876
|
offset the track has already reached: pressing next walks the dots to the
|
|
1856
1877
|
end while the slides stop moving a third of the way through.
|
|
1857
1878
|
|
|
1879
|
+
**The number is published to the styles rather than enumerated by them**,
|
|
1880
|
+
as `--carousel-per-view` on the track, which is what keeps a width and a
|
|
1881
|
+
count from disagreeing. A sheet can only name a value it wrote a rule for,
|
|
1882
|
+
so the styled tier enumerated `per-view="2"` through `5` and called five a
|
|
1883
|
+
judgment; above it the pane fell back to one across while this file went on
|
|
1884
|
+
counting positions. Measured in Chromium over eight slides, six across gave
|
|
1885
|
+
three dots, a pane taking the whole track and five slides reachable only by
|
|
1886
|
+
dragging. Written from here there is no ceiling to exceed, and a consumer's
|
|
1887
|
+
own sheet reads the same declaration the styled one does. `runEnd` publishes
|
|
1888
|
+
its correction the same way and for the same reason.
|
|
1889
|
+
|
|
1890
|
+
**On the track and not on the host.** A custom property on the host is a
|
|
1891
|
+
reflected attribute by another name: it would arrive on upgrade, and a
|
|
1892
|
+
consumer's server markup never had it. Inside the component's own shadow
|
|
1893
|
+
root it serializes with the rest of the template on the server, and the
|
|
1894
|
+
track's own declaration beats anything a consumer inherits in, so the
|
|
1895
|
+
attribute is the one answer to how wide a pane is.
|
|
1896
|
+
|
|
1897
|
+
A value the track cannot honor is taken to the nearest one it can, by
|
|
1898
|
+
`across`, and both tiers read that rather than this.
|
|
1899
|
+
|
|
1858
1900
|
No default, because it reflects. A reflected property with a value writes
|
|
1859
1901
|
its attribute on upgrade, and the host then carries something a consumer's
|
|
1860
1902
|
server markup never had, which React reports as a mismatch. The one-across
|
|
@@ -1940,6 +1982,27 @@ clamps to the last *slide*, so three of the six indicators point at an
|
|
|
1940
1982
|
offset the track has already reached: pressing next walks the dots to the
|
|
1941
1983
|
end while the slides stop moving a third of the way through.
|
|
1942
1984
|
|
|
1985
|
+
**The number is published to the styles rather than enumerated by them**,
|
|
1986
|
+
as `--carousel-per-view` on the track, which is what keeps a width and a
|
|
1987
|
+
count from disagreeing. A sheet can only name a value it wrote a rule for,
|
|
1988
|
+
so the styled tier enumerated `per-view="2"` through `5` and called five a
|
|
1989
|
+
judgment; above it the pane fell back to one across while this file went on
|
|
1990
|
+
counting positions. Measured in Chromium over eight slides, six across gave
|
|
1991
|
+
three dots, a pane taking the whole track and five slides reachable only by
|
|
1992
|
+
dragging. Written from here there is no ceiling to exceed, and a consumer's
|
|
1993
|
+
own sheet reads the same declaration the styled one does. `runEnd` publishes
|
|
1994
|
+
its correction the same way and for the same reason.
|
|
1995
|
+
|
|
1996
|
+
**On the track and not on the host.** A custom property on the host is a
|
|
1997
|
+
reflected attribute by another name: it would arrive on upgrade, and a
|
|
1998
|
+
consumer's server markup never had it. Inside the component's own shadow
|
|
1999
|
+
root it serializes with the rest of the template on the server, and the
|
|
2000
|
+
track's own declaration beats anything a consumer inherits in, so the
|
|
2001
|
+
attribute is the one answer to how wide a pane is.
|
|
2002
|
+
|
|
2003
|
+
A value the track cannot honor is taken to the nearest one it can, by
|
|
2004
|
+
`across`, and both tiers read that rather than this.
|
|
2005
|
+
|
|
1943
2006
|
No default, because it reflects. A reflected property with a value writes
|
|
1944
2007
|
its attribute on upgrade, and the host then carries something a consumer's
|
|
1945
2008
|
server markup never had, which React reports as a mismatch. The one-across
|
|
@@ -1956,6 +2019,27 @@ clamps to the last *slide*, so three of the six indicators point at an
|
|
|
1956
2019
|
offset the track has already reached: pressing next walks the dots to the
|
|
1957
2020
|
end while the slides stop moving a third of the way through.
|
|
1958
2021
|
|
|
2022
|
+
**The number is published to the styles rather than enumerated by them**,
|
|
2023
|
+
as `--carousel-per-view` on the track, which is what keeps a width and a
|
|
2024
|
+
count from disagreeing. A sheet can only name a value it wrote a rule for,
|
|
2025
|
+
so the styled tier enumerated `per-view="2"` through `5` and called five a
|
|
2026
|
+
judgment; above it the pane fell back to one across while this file went on
|
|
2027
|
+
counting positions. Measured in Chromium over eight slides, six across gave
|
|
2028
|
+
three dots, a pane taking the whole track and five slides reachable only by
|
|
2029
|
+
dragging. Written from here there is no ceiling to exceed, and a consumer's
|
|
2030
|
+
own sheet reads the same declaration the styled one does. `runEnd` publishes
|
|
2031
|
+
its correction the same way and for the same reason.
|
|
2032
|
+
|
|
2033
|
+
**On the track and not on the host.** A custom property on the host is a
|
|
2034
|
+
reflected attribute by another name: it would arrive on upgrade, and a
|
|
2035
|
+
consumer's server markup never had it. Inside the component's own shadow
|
|
2036
|
+
root it serializes with the rest of the template on the server, and the
|
|
2037
|
+
track's own declaration beats anything a consumer inherits in, so the
|
|
2038
|
+
attribute is the one answer to how wide a pane is.
|
|
2039
|
+
|
|
2040
|
+
A value the track cannot honor is taken to the nearest one it can, by
|
|
2041
|
+
`across`, and both tiers read that rather than this.
|
|
2042
|
+
|
|
1959
2043
|
No default, because it reflects. A reflected property with a value writes
|
|
1960
2044
|
its attribute on upgrade, and the host then carries something a consumer's
|
|
1961
2045
|
server markup never had, which React reports as a mismatch. The one-across
|
|
@@ -13809,7 +13893,20 @@ on the column it sizes, which is the more particular statement, and it is
|
|
|
13809
13893
|
where a resize lands: a reader dragging a column's edge writes `width`, so
|
|
13810
13894
|
were this list to win, the drag would move the separator and leave the
|
|
13811
13895
|
track where the list put it. This is the table's default for its columns,
|
|
13812
|
-
and each column may say otherwise.
|
|
13896
|
+
and each column may say otherwise.
|
|
13897
|
+
|
|
13898
|
+
**It is also the only track list a server can send.** The shim has no tree
|
|
13899
|
+
to walk, so a render there knows of no columns and this attribute is the
|
|
13900
|
+
whole answer: a table given one lays its grid out in the first paint, and a
|
|
13901
|
+
table sized only by its columns is one track wide until it upgrades.
|
|
13902
|
+
|
|
13903
|
+
**`helix-data-table` has none of this, and should not.** Its columns are
|
|
13904
|
+
its schema rather than an option, so there is always a column to write a
|
|
13905
|
+
`width` on and a list here would be a second way to say what that says.
|
|
13906
|
+
This table's cells are markup, and a table written as rows of cells with no
|
|
13907
|
+
`helix-table-column` in it has nowhere else to be sized from. Both families
|
|
13908
|
+
take the same CSS hook, `--table-columns` and `--data-table-columns`, which
|
|
13909
|
+
wins over whichever list the element worked out. */
|
|
13813
13910
|
columns?: (HelixHeadlessTable["columns"]) | undefined;
|
|
13814
13911
|
/** Accessible name for the table. */
|
|
13815
13912
|
label?: (HelixHeadlessTable["label"]) | undefined;
|
|
@@ -13847,7 +13944,20 @@ on the column it sizes, which is the more particular statement, and it is
|
|
|
13847
13944
|
where a resize lands: a reader dragging a column's edge writes `width`, so
|
|
13848
13945
|
were this list to win, the drag would move the separator and leave the
|
|
13849
13946
|
track where the list put it. This is the table's default for its columns,
|
|
13850
|
-
and each column may say otherwise.
|
|
13947
|
+
and each column may say otherwise.
|
|
13948
|
+
|
|
13949
|
+
**It is also the only track list a server can send.** The shim has no tree
|
|
13950
|
+
to walk, so a render there knows of no columns and this attribute is the
|
|
13951
|
+
whole answer: a table given one lays its grid out in the first paint, and a
|
|
13952
|
+
table sized only by its columns is one track wide until it upgrades.
|
|
13953
|
+
|
|
13954
|
+
**`helix-data-table` has none of this, and should not.** Its columns are
|
|
13955
|
+
its schema rather than an option, so there is always a column to write a
|
|
13956
|
+
`width` on and a list here would be a second way to say what that says.
|
|
13957
|
+
This table's cells are markup, and a table written as rows of cells with no
|
|
13958
|
+
`helix-table-column` in it has nowhere else to be sized from. Both families
|
|
13959
|
+
take the same CSS hook, `--table-columns` and `--data-table-columns`, which
|
|
13960
|
+
wins over whichever list the element worked out. */
|
|
13851
13961
|
"prop:columns"?: (HelixHeadlessTable["columns"]) | undefined;
|
|
13852
13962
|
/** Accessible name for the table. */
|
|
13853
13963
|
"prop:label"?: (HelixHeadlessTable["label"]) | undefined;
|
|
@@ -16189,13 +16299,6 @@ Unset by default, and unreflected: a tree of choosable nodes is not a tree
|
|
|
16189
16299
|
of links, and an empty `href` written onto every row would be a link to the
|
|
16190
16300
|
current page on every item a consumer never asked to be one. */
|
|
16191
16301
|
href?: (HelixHeadlessTreeItem["href"]) | undefined;
|
|
16192
|
-
/** Depth from the root, set by the tree so indentation needs no CSS nesting.
|
|
16193
|
-
|
|
16194
|
-
Not reflected. The tree assigns this after it upgrades, so an attribute
|
|
16195
|
-
here would be a change to markup the consumer rendered and hydration would
|
|
16196
|
-
report it. The indent it drives is written onto the row instead, inside the
|
|
16197
|
-
shadow root, which is not part of the tree React hydrates. */
|
|
16198
|
-
level?: (HelixHeadlessTreeItem["level"]) | undefined;
|
|
16199
16302
|
/** What the link declares about where it goes.
|
|
16200
16303
|
|
|
16201
16304
|
Set by the consumer rather than derived from `target`: `noreferrer` is a
|
|
@@ -16205,7 +16308,7 @@ this library supports implies it for `target="_blank"` already. */
|
|
|
16205
16308
|
rel?: (HelixHeadlessTreeItem["rel"]) | undefined;
|
|
16206
16309
|
/** Whether this item is the current one.
|
|
16207
16310
|
|
|
16208
|
-
Not reflected, for the reason `level`
|
|
16311
|
+
Not reflected, for the reason `level` above gives in full: the tree assigns
|
|
16209
16312
|
this after it upgrades, so the attribute would be a change to markup the
|
|
16210
16313
|
consumer rendered and hydration would report it. Mirroring to
|
|
16211
16314
|
`data-selected` on the host instead is the same fault under another name.
|
|
@@ -16234,6 +16337,24 @@ the resolved state for stylesheets, which is what the mirror is for. */
|
|
|
16234
16337
|
"default-open"?: (HelixHeadlessTreeItem["defaultOpen"]) | undefined;
|
|
16235
16338
|
/** Initial open state for uncontrolled use, where nothing declared one. */
|
|
16236
16339
|
defaultOpen?: (HelixHeadlessTreeItem["defaultOpen"]) | undefined;
|
|
16340
|
+
/** Depth from the root, counted by the tree so indentation needs no CSS nesting.
|
|
16341
|
+
|
|
16342
|
+
**Read rather than written, and no attribute at all.** The tree counts the
|
|
16343
|
+
items a row sits inside and assigns this on every sync, so a value declared
|
|
16344
|
+
here is overwritten before the first paint: measured at `level="2"` on three
|
|
16345
|
+
rows of a flat list, all three back to 1 with `--tree-level: 1` on every
|
|
16346
|
+
row. It carried an attribute and a shipped example setting it for as long as
|
|
16347
|
+
both existed, which is a depth a consumer could state and nothing would
|
|
16348
|
+
honor. Depth in this tree is where a row is, not what it claims: a branch's
|
|
16349
|
+
children go in its `children` slot, and that nesting is also what decides
|
|
16350
|
+
which rows a shut branch hides and which row the outward arrow moves to.
|
|
16351
|
+
|
|
16352
|
+
Not reflected either. The tree assigns this after it upgrades, so an
|
|
16353
|
+
attribute here would be a change to markup the consumer rendered and
|
|
16354
|
+
hydration would report it. The indent it drives is written onto the row
|
|
16355
|
+
instead, inside the shadow root, which is not part of the tree React
|
|
16356
|
+
hydrates. */
|
|
16357
|
+
level?: (HelixHeadlessTreeItem["level"]) | undefined;
|
|
16237
16358
|
/** Whether this item holds the tree's single tab stop. */
|
|
16238
16359
|
focusable?: (HelixHeadlessTreeItem["focusable"]) | undefined;
|
|
16239
16360
|
|
|
@@ -16258,13 +16379,6 @@ Unset by default, and unreflected: a tree of choosable nodes is not a tree
|
|
|
16258
16379
|
of links, and an empty `href` written onto every row would be a link to the
|
|
16259
16380
|
current page on every item a consumer never asked to be one. */
|
|
16260
16381
|
"prop:href"?: (HelixHeadlessTreeItem["href"]) | undefined;
|
|
16261
|
-
/** Depth from the root, set by the tree so indentation needs no CSS nesting.
|
|
16262
|
-
|
|
16263
|
-
Not reflected. The tree assigns this after it upgrades, so an attribute
|
|
16264
|
-
here would be a change to markup the consumer rendered and hydration would
|
|
16265
|
-
report it. The indent it drives is written onto the row instead, inside the
|
|
16266
|
-
shadow root, which is not part of the tree React hydrates. */
|
|
16267
|
-
"prop:level"?: (HelixHeadlessTreeItem["level"]) | undefined;
|
|
16268
16382
|
/** What the link declares about where it goes.
|
|
16269
16383
|
|
|
16270
16384
|
Set by the consumer rather than derived from `target`: `noreferrer` is a
|
|
@@ -16274,7 +16388,7 @@ this library supports implies it for `target="_blank"` already. */
|
|
|
16274
16388
|
"prop:rel"?: (HelixHeadlessTreeItem["rel"]) | undefined;
|
|
16275
16389
|
/** Whether this item is the current one.
|
|
16276
16390
|
|
|
16277
|
-
Not reflected, for the reason `level`
|
|
16391
|
+
Not reflected, for the reason `level` above gives in full: the tree assigns
|
|
16278
16392
|
this after it upgrades, so the attribute would be a change to markup the
|
|
16279
16393
|
consumer rendered and hydration would report it. Mirroring to
|
|
16280
16394
|
`data-selected` on the host instead is the same fault under another name.
|
|
@@ -16303,6 +16417,24 @@ the resolved state for stylesheets, which is what the mirror is for. */
|
|
|
16303
16417
|
"bool:default-open"?: (HelixHeadlessTreeItem["defaultOpen"]) | undefined;
|
|
16304
16418
|
/** Initial open state for uncontrolled use, where nothing declared one. */
|
|
16305
16419
|
"prop:defaultOpen"?: (HelixHeadlessTreeItem["defaultOpen"]) | undefined;
|
|
16420
|
+
/** Depth from the root, counted by the tree so indentation needs no CSS nesting.
|
|
16421
|
+
|
|
16422
|
+
**Read rather than written, and no attribute at all.** The tree counts the
|
|
16423
|
+
items a row sits inside and assigns this on every sync, so a value declared
|
|
16424
|
+
here is overwritten before the first paint: measured at `level="2"` on three
|
|
16425
|
+
rows of a flat list, all three back to 1 with `--tree-level: 1` on every
|
|
16426
|
+
row. It carried an attribute and a shipped example setting it for as long as
|
|
16427
|
+
both existed, which is a depth a consumer could state and nothing would
|
|
16428
|
+
honor. Depth in this tree is where a row is, not what it claims: a branch's
|
|
16429
|
+
children go in its `children` slot, and that nesting is also what decides
|
|
16430
|
+
which rows a shut branch hides and which row the outward arrow moves to.
|
|
16431
|
+
|
|
16432
|
+
Not reflected either. The tree assigns this after it upgrades, so an
|
|
16433
|
+
attribute here would be a change to markup the consumer rendered and
|
|
16434
|
+
hydration would report it. The indent it drives is written onto the row
|
|
16435
|
+
instead, inside the shadow root, which is not part of the tree React
|
|
16436
|
+
hydrates. */
|
|
16437
|
+
"prop:level"?: (HelixHeadlessTreeItem["level"]) | undefined;
|
|
16306
16438
|
/** Whether this item holds the tree's single tab stop. */
|
|
16307
16439
|
"prop:focusable"?: (HelixHeadlessTreeItem["focusable"]) | undefined;
|
|
16308
16440
|
/** Fired before a branch closes, and cancelable. */
|
|
@@ -19148,6 +19280,27 @@ export type CustomElements = {
|
|
|
19148
19280
|
* offset the track has already reached: pressing next walks the dots to the
|
|
19149
19281
|
* end while the slides stop moving a third of the way through.
|
|
19150
19282
|
*
|
|
19283
|
+
* **The number is published to the styles rather than enumerated by them**,
|
|
19284
|
+
* as `--carousel-per-view` on the track, which is what keeps a width and a
|
|
19285
|
+
* count from disagreeing. A sheet can only name a value it wrote a rule for,
|
|
19286
|
+
* so the styled tier enumerated `per-view="2"` through `5` and called five a
|
|
19287
|
+
* judgment; above it the pane fell back to one across while this file went on
|
|
19288
|
+
* counting positions. Measured in Chromium over eight slides, six across gave
|
|
19289
|
+
* three dots, a pane taking the whole track and five slides reachable only by
|
|
19290
|
+
* dragging. Written from here there is no ceiling to exceed, and a consumer's
|
|
19291
|
+
* own sheet reads the same declaration the styled one does. `runEnd` publishes
|
|
19292
|
+
* its correction the same way and for the same reason.
|
|
19293
|
+
*
|
|
19294
|
+
* **On the track and not on the host.** A custom property on the host is a
|
|
19295
|
+
* reflected attribute by another name: it would arrive on upgrade, and a
|
|
19296
|
+
* consumer's server markup never had it. Inside the component's own shadow
|
|
19297
|
+
* root it serializes with the rest of the template on the server, and the
|
|
19298
|
+
* track's own declaration beats anything a consumer inherits in, so the
|
|
19299
|
+
* attribute is the one answer to how wide a pane is.
|
|
19300
|
+
*
|
|
19301
|
+
* A value the track cannot honor is taken to the nearest one it can, by
|
|
19302
|
+
* `across`, and both tiers read that rather than this.
|
|
19303
|
+
*
|
|
19151
19304
|
* No default, because it reflects. A reflected property with a value writes
|
|
19152
19305
|
* its attribute on upgrade, and the host then carries something a consumer's
|
|
19153
19306
|
* server markup never had, which React reports as a mismatch. The one-across
|
|
@@ -19204,6 +19357,7 @@ export type CustomElements = {
|
|
|
19204
19357
|
*
|
|
19205
19358
|
* - `--carousel-gap`: Space between slides. A sheet sets it and the component measures the run with it. (default: `undefined`)
|
|
19206
19359
|
* - `--carousel-pane`: The size one pane is laid out at. A sheet sets it and the component measures the run with it. (default: `undefined`)
|
|
19360
|
+
* - `--carousel-per-view`: How many slides go across, written onto the track by the component so a sheet divides the track by the same number the positions are counted from. Read it rather than selecting on `per-view`, which cannot be enumerated without a ceiling. See `perView`. (default: `undefined`)
|
|
19207
19361
|
* - `--carousel-run-end`: How far short of a whole pixel the run ends, on the last slide alone, for a sheet to take up as `margin-inline-end`. See `runEnd`. (default: `undefined`)
|
|
19208
19362
|
*
|
|
19209
19363
|
* ## CSS Parts
|
|
@@ -21393,6 +21547,15 @@ export type CustomElements = {
|
|
|
21393
21547
|
* in the order on screen, in the columns on screen. Saving it is the page's
|
|
21394
21548
|
* business, the same as any other file.
|
|
21395
21549
|
*
|
|
21550
|
+
* **There is no `columns` attribute here, and `helix-table` has one.** The
|
|
21551
|
+
* difference is what a column is in each: here it is the schema, so a table
|
|
21552
|
+
* without one has nothing to read a row with, and every column is a place to
|
|
21553
|
+
* write a `width`. A `helix-table` holds cells a consumer wrote and can be
|
|
21554
|
+
* written with no column at all, so its `columns` is where such a table is
|
|
21555
|
+
* sized from. Written on this element the attribute is inert, which is the trap
|
|
21556
|
+
* worth knowing when moving between the two. What both take is the CSS hook,
|
|
21557
|
+
* `--data-table-columns` here and `--table-columns` there.
|
|
21558
|
+
*
|
|
21396
21559
|
* ## Attributes & Properties
|
|
21397
21560
|
*
|
|
21398
21561
|
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
@@ -31339,11 +31502,14 @@ export type CustomElements = {
|
|
|
31339
31502
|
|
|
31340
31503
|
/**
|
|
31341
31504
|
* **The column is the source of both its heading and its track.** Add one and
|
|
31342
|
-
* the table has another track; remove one and it does not.
|
|
31343
|
-
*
|
|
31344
|
-
*
|
|
31345
|
-
*
|
|
31346
|
-
*
|
|
31505
|
+
* the table has another track; remove one and it does not. That is what ties
|
|
31506
|
+
* the two together, and a table-level track list on its own does not: a list
|
|
31507
|
+
* that is accidentally the headings is invalid CSS a grid ignores in silence,
|
|
31508
|
+
* drawing the whole table as one column. `helix-table`'s `columns` is dealt out
|
|
31509
|
+
* a track at a time against the columns declared under it, so a heading among
|
|
31510
|
+
* the widths costs its own column a width and no more, and a list longer or
|
|
31511
|
+
* shorter than the columns is trimmed or shared rather than being a second
|
|
31512
|
+
* count of them. A column's own `width` wins over the track in its place.
|
|
31347
31513
|
*
|
|
31348
31514
|
* **It is also where every per-column fact goes**, which is the reason
|
|
31349
31515
|
* `helix-data-table` needs no column config object. `field` names the key the
|
|
@@ -31577,6 +31743,19 @@ export type CustomElements = {
|
|
|
31577
31743
|
* were this list to win, the drag would move the separator and leave the
|
|
31578
31744
|
* track where the list put it. This is the table's default for its columns,
|
|
31579
31745
|
* and each column may say otherwise.
|
|
31746
|
+
*
|
|
31747
|
+
* **It is also the only track list a server can send.** The shim has no tree
|
|
31748
|
+
* to walk, so a render there knows of no columns and this attribute is the
|
|
31749
|
+
* whole answer: a table given one lays its grid out in the first paint, and a
|
|
31750
|
+
* table sized only by its columns is one track wide until it upgrades.
|
|
31751
|
+
*
|
|
31752
|
+
* **`helix-data-table` has none of this, and should not.** Its columns are
|
|
31753
|
+
* its schema rather than an option, so there is always a column to write a
|
|
31754
|
+
* `width` on and a list here would be a second way to say what that says.
|
|
31755
|
+
* This table's cells are markup, and a table written as rows of cells with no
|
|
31756
|
+
* `helix-table-column` in it has nowhere else to be sized from. Both families
|
|
31757
|
+
* take the same CSS hook, `--table-columns` and `--data-table-columns`, which
|
|
31758
|
+
* wins over whichever list the element worked out.
|
|
31580
31759
|
* - `label`: Accessible name for the table.
|
|
31581
31760
|
* - `empty-text`/`emptyText`: What is said where there are none, and none are coming.
|
|
31582
31761
|
* - `loading`: Whether the rows are still on their way.
|
|
@@ -31617,7 +31796,6 @@ export type CustomElements = {
|
|
|
31617
31796
|
*
|
|
31618
31797
|
* CSS variables available for styling the component.
|
|
31619
31798
|
*
|
|
31620
|
-
* - `--table-columns`: Track list for the columns. (default: `undefined`)
|
|
31621
31799
|
* - `--table-template`: The column track list this element worked out from the columns declared in it. Written by the component, read by the sheet that paints: a stylesheet takes it to lay the grid out, and setting it does nothing, because the component writes it inline on the very element that reads it and an inline declaration beats any sheet. `--table-columns` is the one to set. (default: `undefined`)
|
|
31622
31800
|
*
|
|
31623
31801
|
* ## CSS Parts
|
|
@@ -33987,12 +34165,6 @@ export type CustomElements = {
|
|
|
33987
34165
|
* Unset by default, and unreflected: a tree of choosable nodes is not a tree
|
|
33988
34166
|
* of links, and an empty `href` written onto every row would be a link to the
|
|
33989
34167
|
* current page on every item a consumer never asked to be one.
|
|
33990
|
-
* - `level`: Depth from the root, set by the tree so indentation needs no CSS nesting.
|
|
33991
|
-
*
|
|
33992
|
-
* Not reflected. The tree assigns this after it upgrades, so an attribute
|
|
33993
|
-
* here would be a change to markup the consumer rendered and hydration would
|
|
33994
|
-
* report it. The indent it drives is written onto the row instead, inside the
|
|
33995
|
-
* shadow root, which is not part of the tree React hydrates.
|
|
33996
34168
|
* - `rel`: What the link declares about where it goes.
|
|
33997
34169
|
*
|
|
33998
34170
|
* Set by the consumer rather than derived from `target`: `noreferrer` is a
|
|
@@ -34001,7 +34173,7 @@ export type CustomElements = {
|
|
|
34001
34173
|
* this library supports implies it for `target="_blank"` already.
|
|
34002
34174
|
* - `selected`: Whether this item is the current one.
|
|
34003
34175
|
*
|
|
34004
|
-
* Not reflected, for the reason `level`
|
|
34176
|
+
* Not reflected, for the reason `level` above gives in full: the tree assigns
|
|
34005
34177
|
* this after it upgrades, so the attribute would be a change to markup the
|
|
34006
34178
|
* consumer rendered and hydration would report it. Mirroring to
|
|
34007
34179
|
* `data-selected` on the host instead is the same fault under another name.
|
|
@@ -34023,6 +34195,23 @@ export type CustomElements = {
|
|
|
34023
34195
|
* last reader did rather than what the author wrote. `:state(open)` carries
|
|
34024
34196
|
* the resolved state for stylesheets, which is what the mirror is for.
|
|
34025
34197
|
* - `default-open`/`defaultOpen`: Initial open state for uncontrolled use, where nothing declared one.
|
|
34198
|
+
* - `level`: Depth from the root, counted by the tree so indentation needs no CSS nesting.
|
|
34199
|
+
*
|
|
34200
|
+
* **Read rather than written, and no attribute at all.** The tree counts the
|
|
34201
|
+
* items a row sits inside and assigns this on every sync, so a value declared
|
|
34202
|
+
* here is overwritten before the first paint: measured at `level="2"` on three
|
|
34203
|
+
* rows of a flat list, all three back to 1 with `--tree-level: 1` on every
|
|
34204
|
+
* row. It carried an attribute and a shipped example setting it for as long as
|
|
34205
|
+
* both existed, which is a depth a consumer could state and nothing would
|
|
34206
|
+
* honor. Depth in this tree is where a row is, not what it claims: a branch's
|
|
34207
|
+
* children go in its `children` slot, and that nesting is also what decides
|
|
34208
|
+
* which rows a shut branch hides and which row the outward arrow moves to.
|
|
34209
|
+
*
|
|
34210
|
+
* Not reflected either. The tree assigns this after it upgrades, so an
|
|
34211
|
+
* attribute here would be a change to markup the consumer rendered and
|
|
34212
|
+
* hydration would report it. The indent it drives is written onto the row
|
|
34213
|
+
* instead, inside the shadow root, which is not part of the tree React
|
|
34214
|
+
* hydrates. (property only)
|
|
34026
34215
|
* - `focusable`: Whether this item holds the tree's single tab stop. (property only)
|
|
34027
34216
|
* - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
|
|
34028
34217
|
*
|
|
@@ -36890,6 +37079,27 @@ export type CustomElementsSolidJs = {
|
|
|
36890
37079
|
* offset the track has already reached: pressing next walks the dots to the
|
|
36891
37080
|
* end while the slides stop moving a third of the way through.
|
|
36892
37081
|
*
|
|
37082
|
+
* **The number is published to the styles rather than enumerated by them**,
|
|
37083
|
+
* as `--carousel-per-view` on the track, which is what keeps a width and a
|
|
37084
|
+
* count from disagreeing. A sheet can only name a value it wrote a rule for,
|
|
37085
|
+
* so the styled tier enumerated `per-view="2"` through `5` and called five a
|
|
37086
|
+
* judgment; above it the pane fell back to one across while this file went on
|
|
37087
|
+
* counting positions. Measured in Chromium over eight slides, six across gave
|
|
37088
|
+
* three dots, a pane taking the whole track and five slides reachable only by
|
|
37089
|
+
* dragging. Written from here there is no ceiling to exceed, and a consumer's
|
|
37090
|
+
* own sheet reads the same declaration the styled one does. `runEnd` publishes
|
|
37091
|
+
* its correction the same way and for the same reason.
|
|
37092
|
+
*
|
|
37093
|
+
* **On the track and not on the host.** A custom property on the host is a
|
|
37094
|
+
* reflected attribute by another name: it would arrive on upgrade, and a
|
|
37095
|
+
* consumer's server markup never had it. Inside the component's own shadow
|
|
37096
|
+
* root it serializes with the rest of the template on the server, and the
|
|
37097
|
+
* track's own declaration beats anything a consumer inherits in, so the
|
|
37098
|
+
* attribute is the one answer to how wide a pane is.
|
|
37099
|
+
*
|
|
37100
|
+
* A value the track cannot honor is taken to the nearest one it can, by
|
|
37101
|
+
* `across`, and both tiers read that rather than this.
|
|
37102
|
+
*
|
|
36893
37103
|
* No default, because it reflects. A reflected property with a value writes
|
|
36894
37104
|
* its attribute on upgrade, and the host then carries something a consumer's
|
|
36895
37105
|
* server markup never had, which React reports as a mismatch. The one-across
|
|
@@ -36946,6 +37156,7 @@ export type CustomElementsSolidJs = {
|
|
|
36946
37156
|
*
|
|
36947
37157
|
* - `--carousel-gap`: Space between slides. A sheet sets it and the component measures the run with it. (default: `undefined`)
|
|
36948
37158
|
* - `--carousel-pane`: The size one pane is laid out at. A sheet sets it and the component measures the run with it. (default: `undefined`)
|
|
37159
|
+
* - `--carousel-per-view`: How many slides go across, written onto the track by the component so a sheet divides the track by the same number the positions are counted from. Read it rather than selecting on `per-view`, which cannot be enumerated without a ceiling. See `perView`. (default: `undefined`)
|
|
36949
37160
|
* - `--carousel-run-end`: How far short of a whole pixel the run ends, on the last slide alone, for a sheet to take up as `margin-inline-end`. See `runEnd`. (default: `undefined`)
|
|
36950
37161
|
*
|
|
36951
37162
|
* ## CSS Parts
|
|
@@ -39162,6 +39373,15 @@ export type CustomElementsSolidJs = {
|
|
|
39162
39373
|
* in the order on screen, in the columns on screen. Saving it is the page's
|
|
39163
39374
|
* business, the same as any other file.
|
|
39164
39375
|
*
|
|
39376
|
+
* **There is no `columns` attribute here, and `helix-table` has one.** The
|
|
39377
|
+
* difference is what a column is in each: here it is the schema, so a table
|
|
39378
|
+
* without one has nothing to read a row with, and every column is a place to
|
|
39379
|
+
* write a `width`. A `helix-table` holds cells a consumer wrote and can be
|
|
39380
|
+
* written with no column at all, so its `columns` is where such a table is
|
|
39381
|
+
* sized from. Written on this element the attribute is inert, which is the trap
|
|
39382
|
+
* worth knowing when moving between the two. What both take is the CSS hook,
|
|
39383
|
+
* `--data-table-columns` here and `--table-columns` there.
|
|
39384
|
+
*
|
|
39165
39385
|
* ## Attributes & Properties
|
|
39166
39386
|
*
|
|
39167
39387
|
* Component attributes and properties that can be applied to the element or by using JavaScript.
|
|
@@ -49269,11 +49489,14 @@ export type CustomElementsSolidJs = {
|
|
|
49269
49489
|
|
|
49270
49490
|
/**
|
|
49271
49491
|
* **The column is the source of both its heading and its track.** Add one and
|
|
49272
|
-
* the table has another track; remove one and it does not.
|
|
49273
|
-
*
|
|
49274
|
-
*
|
|
49275
|
-
*
|
|
49276
|
-
*
|
|
49492
|
+
* the table has another track; remove one and it does not. That is what ties
|
|
49493
|
+
* the two together, and a table-level track list on its own does not: a list
|
|
49494
|
+
* that is accidentally the headings is invalid CSS a grid ignores in silence,
|
|
49495
|
+
* drawing the whole table as one column. `helix-table`'s `columns` is dealt out
|
|
49496
|
+
* a track at a time against the columns declared under it, so a heading among
|
|
49497
|
+
* the widths costs its own column a width and no more, and a list longer or
|
|
49498
|
+
* shorter than the columns is trimmed or shared rather than being a second
|
|
49499
|
+
* count of them. A column's own `width` wins over the track in its place.
|
|
49277
49500
|
*
|
|
49278
49501
|
* **It is also where every per-column fact goes**, which is the reason
|
|
49279
49502
|
* `helix-data-table` needs no column config object. `field` names the key the
|
|
@@ -49508,6 +49731,19 @@ export type CustomElementsSolidJs = {
|
|
|
49508
49731
|
* were this list to win, the drag would move the separator and leave the
|
|
49509
49732
|
* track where the list put it. This is the table's default for its columns,
|
|
49510
49733
|
* and each column may say otherwise.
|
|
49734
|
+
*
|
|
49735
|
+
* **It is also the only track list a server can send.** The shim has no tree
|
|
49736
|
+
* to walk, so a render there knows of no columns and this attribute is the
|
|
49737
|
+
* whole answer: a table given one lays its grid out in the first paint, and a
|
|
49738
|
+
* table sized only by its columns is one track wide until it upgrades.
|
|
49739
|
+
*
|
|
49740
|
+
* **`helix-data-table` has none of this, and should not.** Its columns are
|
|
49741
|
+
* its schema rather than an option, so there is always a column to write a
|
|
49742
|
+
* `width` on and a list here would be a second way to say what that says.
|
|
49743
|
+
* This table's cells are markup, and a table written as rows of cells with no
|
|
49744
|
+
* `helix-table-column` in it has nowhere else to be sized from. Both families
|
|
49745
|
+
* take the same CSS hook, `--table-columns` and `--data-table-columns`, which
|
|
49746
|
+
* wins over whichever list the element worked out.
|
|
49511
49747
|
* - `label`: Accessible name for the table.
|
|
49512
49748
|
* - `empty-text`/`emptyText`: What is said where there are none, and none are coming.
|
|
49513
49749
|
* - `loading`: Whether the rows are still on their way.
|
|
@@ -49548,7 +49784,6 @@ export type CustomElementsSolidJs = {
|
|
|
49548
49784
|
*
|
|
49549
49785
|
* CSS variables available for styling the component.
|
|
49550
49786
|
*
|
|
49551
|
-
* - `--table-columns`: Track list for the columns. (default: `undefined`)
|
|
49552
49787
|
* - `--table-template`: The column track list this element worked out from the columns declared in it. Written by the component, read by the sheet that paints: a stylesheet takes it to lay the grid out, and setting it does nothing, because the component writes it inline on the very element that reads it and an inline declaration beats any sheet. `--table-columns` is the one to set. (default: `undefined`)
|
|
49553
49788
|
*
|
|
49554
49789
|
* ## CSS Parts
|
|
@@ -51969,12 +52204,6 @@ export type CustomElementsSolidJs = {
|
|
|
51969
52204
|
* Unset by default, and unreflected: a tree of choosable nodes is not a tree
|
|
51970
52205
|
* of links, and an empty `href` written onto every row would be a link to the
|
|
51971
52206
|
* current page on every item a consumer never asked to be one.
|
|
51972
|
-
* - `level`: Depth from the root, set by the tree so indentation needs no CSS nesting.
|
|
51973
|
-
*
|
|
51974
|
-
* Not reflected. The tree assigns this after it upgrades, so an attribute
|
|
51975
|
-
* here would be a change to markup the consumer rendered and hydration would
|
|
51976
|
-
* report it. The indent it drives is written onto the row instead, inside the
|
|
51977
|
-
* shadow root, which is not part of the tree React hydrates.
|
|
51978
52207
|
* - `rel`: What the link declares about where it goes.
|
|
51979
52208
|
*
|
|
51980
52209
|
* Set by the consumer rather than derived from `target`: `noreferrer` is a
|
|
@@ -51983,7 +52212,7 @@ export type CustomElementsSolidJs = {
|
|
|
51983
52212
|
* this library supports implies it for `target="_blank"` already.
|
|
51984
52213
|
* - `selected`: Whether this item is the current one.
|
|
51985
52214
|
*
|
|
51986
|
-
* Not reflected, for the reason `level`
|
|
52215
|
+
* Not reflected, for the reason `level` above gives in full: the tree assigns
|
|
51987
52216
|
* this after it upgrades, so the attribute would be a change to markup the
|
|
51988
52217
|
* consumer rendered and hydration would report it. Mirroring to
|
|
51989
52218
|
* `data-selected` on the host instead is the same fault under another name.
|
|
@@ -52005,6 +52234,23 @@ export type CustomElementsSolidJs = {
|
|
|
52005
52234
|
* last reader did rather than what the author wrote. `:state(open)` carries
|
|
52006
52235
|
* the resolved state for stylesheets, which is what the mirror is for.
|
|
52007
52236
|
* - `default-open`/`defaultOpen`: Initial open state for uncontrolled use, where nothing declared one.
|
|
52237
|
+
* - `level`: Depth from the root, counted by the tree so indentation needs no CSS nesting.
|
|
52238
|
+
*
|
|
52239
|
+
* **Read rather than written, and no attribute at all.** The tree counts the
|
|
52240
|
+
* items a row sits inside and assigns this on every sync, so a value declared
|
|
52241
|
+
* here is overwritten before the first paint: measured at `level="2"` on three
|
|
52242
|
+
* rows of a flat list, all three back to 1 with `--tree-level: 1` on every
|
|
52243
|
+
* row. It carried an attribute and a shipped example setting it for as long as
|
|
52244
|
+
* both existed, which is a depth a consumer could state and nothing would
|
|
52245
|
+
* honor. Depth in this tree is where a row is, not what it claims: a branch's
|
|
52246
|
+
* children go in its `children` slot, and that nesting is also what decides
|
|
52247
|
+
* which rows a shut branch hides and which row the outward arrow moves to.
|
|
52248
|
+
*
|
|
52249
|
+
* Not reflected either. The tree assigns this after it upgrades, so an
|
|
52250
|
+
* attribute here would be a change to markup the consumer rendered and
|
|
52251
|
+
* hydration would report it. The indent it drives is written onto the row
|
|
52252
|
+
* instead, inside the shadow root, which is not part of the tree React
|
|
52253
|
+
* hydrates. (property only)
|
|
52008
52254
|
* - `focusable`: Whether this item holds the tree's single tab stop. (property only)
|
|
52009
52255
|
* - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
|
|
52010
52256
|
*
|
|
@@ -53014,6 +53260,8 @@ export type CustomCssProperties = {
|
|
|
53014
53260
|
"--carousel-gap"?: (string) | undefined;
|
|
53015
53261
|
/** The size one pane is laid out at. A sheet sets it and the component measures the run with it. */
|
|
53016
53262
|
"--carousel-pane"?: (string) | undefined;
|
|
53263
|
+
/** How many slides go across, written onto the track by the component so a sheet divides the track by the same number the positions are counted from. Read it rather than selecting on `per-view`, which cannot be enumerated without a ceiling. See `perView`. */
|
|
53264
|
+
"--carousel-per-view"?: (string) | undefined;
|
|
53017
53265
|
/** How far short of a whole pixel the run ends, on the last slide alone, for a sheet to take up as `margin-inline-end`. See `runEnd`. */
|
|
53018
53266
|
"--carousel-run-end"?: (string) | undefined;
|
|
53019
53267
|
/** The chosen color, to paint over the transparency check. */
|
|
@@ -53118,8 +53366,6 @@ export type CustomCssProperties = {
|
|
|
53118
53366
|
"--splitter-position"?: (string) | undefined;
|
|
53119
53367
|
/** The edge the column this cell sits under is set to, `start`, `center` or `end`, and unset under a column that sets none. Written by the table around it, since the cell is the consumer's markup and nothing is written onto it; read by the sheet that draws the cell, where `justify-content` and `text-align` both take it as it comes and both follow the writing direction. */
|
|
53120
53368
|
"--table-cell-align"?: (string) | undefined;
|
|
53121
|
-
/** Track list for the columns. */
|
|
53122
|
-
"--table-columns"?: (string) | undefined;
|
|
53123
53369
|
/** The column track list this element worked out from the columns declared in it. Written by the component, read by the sheet that paints: a stylesheet takes it to lay the grid out, and setting it does nothing, because the component writes it inline on the very element that reads it and an inline declaration beats any sheet. `--table-columns` is the one to set. */
|
|
53124
53370
|
"--table-template"?: (string) | undefined;
|
|
53125
53371
|
/** How long this message stays, in milliseconds, for a progress hint. */
|