@fusion.dev/helix 0.53.1 → 0.53.2
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 +99 -119
- package/dist/chat/root/chat-root.d.ts +1 -1
- package/dist/data-table/root/data-table-root.d.ts +1 -1
- package/dist/notifications/root/notifications-root.d.ts +1 -1
- package/package.json +6 -6
- package/types/jsx.d.ts +588 -588
- package/types/vue.d.ts +153 -156
package/types/jsx.d.ts
CHANGED
|
@@ -1253,13 +1253,13 @@ export type HelixAvatarGroupProps = {
|
|
|
1253
1253
|
Unset shows all of them, which is what no limit means and is more useful
|
|
1254
1254
|
than refusing to render.
|
|
1255
1255
|
|
|
1256
|
-
**Reflected, because the fold is a stylesheet rule and nothing else.**
|
|
1257
|
-
|
|
1258
|
-
so the attribute *is* the mechanism: a `max` that reaches this
|
|
1259
|
-
never reaches the host matches no rule, and every avatar is
|
|
1260
|
-
count claiming some are hidden. Markup is the safe path and
|
|
1261
|
-
a script is the broken one, and React takes it for
|
|
1262
|
-
matching property rather than an attribute.
|
|
1256
|
+
**Reflected, because the fold is a stylesheet rule and nothing else.** A
|
|
1257
|
+
sheet hides past the limit one selector per value, as `FOLDS_UP_TO`
|
|
1258
|
+
describes, so the attribute *is* the mechanism: a `max` that reaches this
|
|
1259
|
+
property and never reaches the host matches no rule, and every avatar is
|
|
1260
|
+
drawn beside a count claiming some are hidden. Markup is the safe path and
|
|
1261
|
+
hides the fault; a script is the broken one, and React takes it for
|
|
1262
|
+
everyone, assigning a matching property rather than an attribute.
|
|
1263
1263
|
|
|
1264
1264
|
**Optional rather than defaulted, per the rule that a reflected property
|
|
1265
1265
|
takes no default**: `max = 0` would stamp `max="0"` onto every host that
|
|
@@ -1275,13 +1275,13 @@ export type HelixAvatarGroupSolidJsProps = {
|
|
|
1275
1275
|
Unset shows all of them, which is what no limit means and is more useful
|
|
1276
1276
|
than refusing to render.
|
|
1277
1277
|
|
|
1278
|
-
**Reflected, because the fold is a stylesheet rule and nothing else.**
|
|
1279
|
-
|
|
1280
|
-
so the attribute *is* the mechanism: a `max` that reaches this
|
|
1281
|
-
never reaches the host matches no rule, and every avatar is
|
|
1282
|
-
count claiming some are hidden. Markup is the safe path and
|
|
1283
|
-
a script is the broken one, and React takes it for
|
|
1284
|
-
matching property rather than an attribute.
|
|
1278
|
+
**Reflected, because the fold is a stylesheet rule and nothing else.** A
|
|
1279
|
+
sheet hides past the limit one selector per value, as `FOLDS_UP_TO`
|
|
1280
|
+
describes, so the attribute *is* the mechanism: a `max` that reaches this
|
|
1281
|
+
property and never reaches the host matches no rule, and every avatar is
|
|
1282
|
+
drawn beside a count claiming some are hidden. Markup is the safe path and
|
|
1283
|
+
hides the fault; a script is the broken one, and React takes it for
|
|
1284
|
+
everyone, assigning a matching property rather than an attribute.
|
|
1285
1285
|
|
|
1286
1286
|
**Optional rather than defaulted, per the rule that a reflected property
|
|
1287
1287
|
takes no default**: `max = 0` would stamp `max="0"` onto every host that
|
|
@@ -1873,12 +1873,12 @@ export type HelixBreadcrumbProps = {
|
|
|
1873
1873
|
current?: (HelixBreadcrumb["current"]) | undefined;
|
|
1874
1874
|
/** Where the crumb goes, and nothing where it is the current page.
|
|
1875
1875
|
|
|
1876
|
-
**Optional and reflected, because a stylesheet does select on it.**
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
the
|
|
1881
|
-
|
|
1876
|
+
**Optional and reflected, because a stylesheet does select on it.** A sheet
|
|
1877
|
+
writes `:host(:not([href])) [part="link"]` to take the block padding off a
|
|
1878
|
+
crumb that is not a link, so the attribute is what decides how tall a crumb
|
|
1879
|
+
is. Unreflected, an `href` set from script reached the property, rendered
|
|
1880
|
+
the anchor, and left the host looking unlinked: the crumb drew at 20px
|
|
1881
|
+
where a markup twin drew at 28.
|
|
1882
1882
|
|
|
1883
1883
|
Optional rather than defaulted, which is the general rule that a reflected
|
|
1884
1884
|
property takes no default: an `href` written onto every host would be a link
|
|
@@ -1901,12 +1901,12 @@ export type HelixBreadcrumbSolidJsProps = {
|
|
|
1901
1901
|
"prop:current"?: (HelixBreadcrumb["current"]) | undefined;
|
|
1902
1902
|
/** Where the crumb goes, and nothing where it is the current page.
|
|
1903
1903
|
|
|
1904
|
-
**Optional and reflected, because a stylesheet does select on it.**
|
|
1905
|
-
|
|
1906
|
-
|
|
1907
|
-
|
|
1908
|
-
the
|
|
1909
|
-
|
|
1904
|
+
**Optional and reflected, because a stylesheet does select on it.** A sheet
|
|
1905
|
+
writes `:host(:not([href])) [part="link"]` to take the block padding off a
|
|
1906
|
+
crumb that is not a link, so the attribute is what decides how tall a crumb
|
|
1907
|
+
is. Unreflected, an `href` set from script reached the property, rendered
|
|
1908
|
+
the anchor, and left the host looking unlinked: the crumb drew at 20px
|
|
1909
|
+
where a markup twin drew at 28.
|
|
1910
1910
|
|
|
1911
1911
|
Optional rather than defaulted, which is the general rule that a reflected
|
|
1912
1912
|
property takes no default: an `href` written onto every host would be a link
|
|
@@ -2072,7 +2072,7 @@ the trigger silently does nothing at all. A wrapper has to hand them down,
|
|
|
2072
2072
|
the same way `label` becomes `aria-label` in there.
|
|
2073
2073
|
|
|
2074
2074
|
```html
|
|
2075
|
-
<helix-button commandfor="confirm" command="--show">Delete…</helix-button>
|
|
2075
|
+
<helix-headless-button commandfor="confirm" command="--show">Delete…</helix-headless-button>
|
|
2076
2076
|
```
|
|
2077
2077
|
|
|
2078
2078
|
`commandFor` spells its attribute out, because Lit lowercases a property
|
|
@@ -2280,7 +2280,7 @@ the trigger silently does nothing at all. A wrapper has to hand them down,
|
|
|
2280
2280
|
the same way `label` becomes `aria-label` in there.
|
|
2281
2281
|
|
|
2282
2282
|
```html
|
|
2283
|
-
<helix-button commandfor="confirm" command="--show">Delete…</helix-button>
|
|
2283
|
+
<helix-headless-button commandfor="confirm" command="--show">Delete…</helix-headless-button>
|
|
2284
2284
|
```
|
|
2285
2285
|
|
|
2286
2286
|
`commandFor` spells its attribute out, because Lit lowercases a property
|
|
@@ -2832,13 +2832,13 @@ end while the slides stop moving a third of the way through.
|
|
|
2832
2832
|
**The number is published to the styles rather than enumerated by them**,
|
|
2833
2833
|
as `--carousel-per-view` on the track, which is what keeps a width and a
|
|
2834
2834
|
count from disagreeing. A sheet can only name a value it wrote a rule for,
|
|
2835
|
-
so
|
|
2836
|
-
|
|
2837
|
-
|
|
2838
|
-
three dots, a pane taking the whole track and five slides
|
|
2839
|
-
dragging.
|
|
2840
|
-
|
|
2841
|
-
|
|
2835
|
+
so a sheet enumerating `per-view="2"` through `5` is a ceiling of five, and
|
|
2836
|
+
above it the pane falls back to one across while this file goes on counting
|
|
2837
|
+
positions. Measured in Chromium over eight slides against such a sheet, six
|
|
2838
|
+
across gave three dots, a pane taking the whole track and five slides
|
|
2839
|
+
reachable only by dragging. Published from here there is no ceiling to
|
|
2840
|
+
exceed, and every sheet reads the same declaration. `runEnd` publishes its
|
|
2841
|
+
correction the same way and for the same reason.
|
|
2842
2842
|
|
|
2843
2843
|
**On the track and not on the host.** A custom property on the host is a
|
|
2844
2844
|
reflected attribute by another name: it would arrive on upgrade, and a
|
|
@@ -2863,8 +2863,8 @@ inline the count would outrank the sheet that computes it, which is why an
|
|
|
2863
2863
|
`auto` track is handed nothing. A count stays for the design that calls for
|
|
2864
2864
|
exactly three.
|
|
2865
2865
|
|
|
2866
|
-
|
|
2867
|
-
|
|
2866
|
+
A sheet says how it divides, and the `auto` example here carries the same
|
|
2867
|
+
three lines for a consumer writing their own.
|
|
2868
2868
|
|
|
2869
2869
|
**A value rather than the resting behavior**, which is what the
|
|
2870
2870
|
responsiveness policy asks of every axis that a box decides: a splitter
|
|
@@ -2892,13 +2892,13 @@ end while the slides stop moving a third of the way through.
|
|
|
2892
2892
|
**The number is published to the styles rather than enumerated by them**,
|
|
2893
2893
|
as `--carousel-per-view` on the track, which is what keeps a width and a
|
|
2894
2894
|
count from disagreeing. A sheet can only name a value it wrote a rule for,
|
|
2895
|
-
so
|
|
2896
|
-
|
|
2897
|
-
|
|
2898
|
-
three dots, a pane taking the whole track and five slides
|
|
2899
|
-
dragging.
|
|
2900
|
-
|
|
2901
|
-
|
|
2895
|
+
so a sheet enumerating `per-view="2"` through `5` is a ceiling of five, and
|
|
2896
|
+
above it the pane falls back to one across while this file goes on counting
|
|
2897
|
+
positions. Measured in Chromium over eight slides against such a sheet, six
|
|
2898
|
+
across gave three dots, a pane taking the whole track and five slides
|
|
2899
|
+
reachable only by dragging. Published from here there is no ceiling to
|
|
2900
|
+
exceed, and every sheet reads the same declaration. `runEnd` publishes its
|
|
2901
|
+
correction the same way and for the same reason.
|
|
2902
2902
|
|
|
2903
2903
|
**On the track and not on the host.** A custom property on the host is a
|
|
2904
2904
|
reflected attribute by another name: it would arrive on upgrade, and a
|
|
@@ -2923,8 +2923,8 @@ inline the count would outrank the sheet that computes it, which is why an
|
|
|
2923
2923
|
`auto` track is handed nothing. A count stays for the design that calls for
|
|
2924
2924
|
exactly three.
|
|
2925
2925
|
|
|
2926
|
-
|
|
2927
|
-
|
|
2926
|
+
A sheet says how it divides, and the `auto` example here carries the same
|
|
2927
|
+
three lines for a consumer writing their own.
|
|
2928
2928
|
|
|
2929
2929
|
**A value rather than the resting behavior**, which is what the
|
|
2930
2930
|
responsiveness policy asks of every axis that a box decides: a splitter
|
|
@@ -3151,13 +3151,13 @@ end while the slides stop moving a third of the way through.
|
|
|
3151
3151
|
**The number is published to the styles rather than enumerated by them**,
|
|
3152
3152
|
as `--carousel-per-view` on the track, which is what keeps a width and a
|
|
3153
3153
|
count from disagreeing. A sheet can only name a value it wrote a rule for,
|
|
3154
|
-
so
|
|
3155
|
-
|
|
3156
|
-
|
|
3157
|
-
three dots, a pane taking the whole track and five slides
|
|
3158
|
-
dragging.
|
|
3159
|
-
|
|
3160
|
-
|
|
3154
|
+
so a sheet enumerating `per-view="2"` through `5` is a ceiling of five, and
|
|
3155
|
+
above it the pane falls back to one across while this file goes on counting
|
|
3156
|
+
positions. Measured in Chromium over eight slides against such a sheet, six
|
|
3157
|
+
across gave three dots, a pane taking the whole track and five slides
|
|
3158
|
+
reachable only by dragging. Published from here there is no ceiling to
|
|
3159
|
+
exceed, and every sheet reads the same declaration. `runEnd` publishes its
|
|
3160
|
+
correction the same way and for the same reason.
|
|
3161
3161
|
|
|
3162
3162
|
**On the track and not on the host.** A custom property on the host is a
|
|
3163
3163
|
reflected attribute by another name: it would arrive on upgrade, and a
|
|
@@ -3182,8 +3182,8 @@ inline the count would outrank the sheet that computes it, which is why an
|
|
|
3182
3182
|
`auto` track is handed nothing. A count stays for the design that calls for
|
|
3183
3183
|
exactly three.
|
|
3184
3184
|
|
|
3185
|
-
|
|
3186
|
-
|
|
3185
|
+
A sheet says how it divides, and the `auto` example here carries the same
|
|
3186
|
+
three lines for a consumer writing their own.
|
|
3187
3187
|
|
|
3188
3188
|
**A value rather than the resting behavior**, which is what the
|
|
3189
3189
|
responsiveness policy asks of every axis that a box decides: a splitter
|
|
@@ -3211,13 +3211,13 @@ end while the slides stop moving a third of the way through.
|
|
|
3211
3211
|
**The number is published to the styles rather than enumerated by them**,
|
|
3212
3212
|
as `--carousel-per-view` on the track, which is what keeps a width and a
|
|
3213
3213
|
count from disagreeing. A sheet can only name a value it wrote a rule for,
|
|
3214
|
-
so
|
|
3215
|
-
|
|
3216
|
-
|
|
3217
|
-
three dots, a pane taking the whole track and five slides
|
|
3218
|
-
dragging.
|
|
3219
|
-
|
|
3220
|
-
|
|
3214
|
+
so a sheet enumerating `per-view="2"` through `5` is a ceiling of five, and
|
|
3215
|
+
above it the pane falls back to one across while this file goes on counting
|
|
3216
|
+
positions. Measured in Chromium over eight slides against such a sheet, six
|
|
3217
|
+
across gave three dots, a pane taking the whole track and five slides
|
|
3218
|
+
reachable only by dragging. Published from here there is no ceiling to
|
|
3219
|
+
exceed, and every sheet reads the same declaration. `runEnd` publishes its
|
|
3220
|
+
correction the same way and for the same reason.
|
|
3221
3221
|
|
|
3222
3222
|
**On the track and not on the host.** A custom property on the host is a
|
|
3223
3223
|
reflected attribute by another name: it would arrive on upgrade, and a
|
|
@@ -3242,8 +3242,8 @@ inline the count would outrank the sheet that computes it, which is why an
|
|
|
3242
3242
|
`auto` track is handed nothing. A count stays for the design that calls for
|
|
3243
3243
|
exactly three.
|
|
3244
3244
|
|
|
3245
|
-
|
|
3246
|
-
|
|
3245
|
+
A sheet says how it divides, and the `auto` example here carries the same
|
|
3246
|
+
three lines for a consumer writing their own.
|
|
3247
3247
|
|
|
3248
3248
|
**A value rather than the resting behavior**, which is what the
|
|
3249
3249
|
responsiveness policy asks of every axis that a box decides: a splitter
|
|
@@ -3541,13 +3541,13 @@ pinned because a conversation opens at its most recent turn.
|
|
|
3541
3541
|
|
|
3542
3542
|
**Not reflected, and the default is why.** A reflected property that
|
|
3543
3543
|
defaults to true writes its attribute on upgrade whether or not the
|
|
3544
|
-
consumer wrote one, so the server serves `<helix-chat label="x">`
|
|
3545
|
-
client turns it into `<helix-chat label="x" pinned>`: a
|
|
3546
|
-
React consumer reports and does not patch up. Nothing
|
|
3547
|
-
either, because the one thing that changes with the pin
|
|
3548
|
-
that is a part inside the shadow tree where a
|
|
3549
|
-
it. Measured rather than assumed: `label,
|
|
3550
|
-
`label` from the server. */
|
|
3544
|
+
consumer wrote one, so the server serves `<helix-headless-chat label="x">`
|
|
3545
|
+
and the client turns it into `<helix-headless-chat label="x" pinned>`: a
|
|
3546
|
+
hydration mismatch a React consumer reports and does not patch up. Nothing
|
|
3547
|
+
needs the attribute either, because the one thing that changes with the pin
|
|
3548
|
+
is the way back, and that is a part inside the shadow tree where a
|
|
3549
|
+
stylesheet can already reach it. Measured rather than assumed: `label,
|
|
3550
|
+
pinned` after upgrade against `label` from the server. */
|
|
3551
3551
|
pinned?: (HelixChat["pinned"]) | undefined;
|
|
3552
3552
|
/** How near the bottom still counts as being at it, in pixels.
|
|
3553
3553
|
|
|
@@ -3616,13 +3616,13 @@ pinned because a conversation opens at its most recent turn.
|
|
|
3616
3616
|
|
|
3617
3617
|
**Not reflected, and the default is why.** A reflected property that
|
|
3618
3618
|
defaults to true writes its attribute on upgrade whether or not the
|
|
3619
|
-
consumer wrote one, so the server serves `<helix-chat label="x">`
|
|
3620
|
-
client turns it into `<helix-chat label="x" pinned>`: a
|
|
3621
|
-
React consumer reports and does not patch up. Nothing
|
|
3622
|
-
either, because the one thing that changes with the pin
|
|
3623
|
-
that is a part inside the shadow tree where a
|
|
3624
|
-
it. Measured rather than assumed: `label,
|
|
3625
|
-
`label` from the server. */
|
|
3619
|
+
consumer wrote one, so the server serves `<helix-headless-chat label="x">`
|
|
3620
|
+
and the client turns it into `<helix-headless-chat label="x" pinned>`: a
|
|
3621
|
+
hydration mismatch a React consumer reports and does not patch up. Nothing
|
|
3622
|
+
needs the attribute either, because the one thing that changes with the pin
|
|
3623
|
+
is the way back, and that is a part inside the shadow tree where a
|
|
3624
|
+
stylesheet can already reach it. Measured rather than assumed: `label,
|
|
3625
|
+
pinned` after upgrade against `label` from the server. */
|
|
3626
3626
|
"prop:pinned"?: (HelixChat["pinned"]) | undefined;
|
|
3627
3627
|
/** How near the bottom still counts as being at it, in pixels.
|
|
3628
3628
|
|
|
@@ -3953,11 +3953,11 @@ present, which is true. Measured, and it is why this is named the other way
|
|
|
3953
3953
|
round. The platform already writes booleans like this for the same reason,
|
|
3954
3954
|
`novalidate` and `nomodule` and `noreferrer` among them.
|
|
3955
3955
|
|
|
3956
|
-
**Reflected, because the gutter is a stylesheet rule.**
|
|
3957
|
-
|
|
3958
|
-
|
|
3959
|
-
|
|
3960
|
-
|
|
3956
|
+
**Reflected, because the gutter is a stylesheet rule.** A sheet reserves
|
|
3957
|
+
the copy button's width with `:host(:not([no-copy]))`, so the attribute is
|
|
3958
|
+
what decides whether the block pays for a control. Unreflected, setting it
|
|
3959
|
+
from script takes the button away (`render` reads the property) and leaves
|
|
3960
|
+
the 40px it stood in reserved.
|
|
3961
3961
|
|
|
3962
3962
|
A false boolean reflects as the attribute's absence, so this costs no
|
|
3963
3963
|
`no-copy=""` on hosts that never asked for one, and the rule about a
|
|
@@ -3973,11 +3973,11 @@ present, which is true. Measured, and it is why this is named the other way
|
|
|
3973
3973
|
round. The platform already writes booleans like this for the same reason,
|
|
3974
3974
|
`novalidate` and `nomodule` and `noreferrer` among them.
|
|
3975
3975
|
|
|
3976
|
-
**Reflected, because the gutter is a stylesheet rule.**
|
|
3977
|
-
|
|
3978
|
-
|
|
3979
|
-
|
|
3980
|
-
|
|
3976
|
+
**Reflected, because the gutter is a stylesheet rule.** A sheet reserves
|
|
3977
|
+
the copy button's width with `:host(:not([no-copy]))`, so the attribute is
|
|
3978
|
+
what decides whether the block pays for a control. Unreflected, setting it
|
|
3979
|
+
from script takes the button away (`render` reads the property) and leaves
|
|
3980
|
+
the 40px it stood in reserved.
|
|
3981
3981
|
|
|
3982
3982
|
A false boolean reflects as the attribute's absence, so this costs no
|
|
3983
3983
|
`no-copy=""` on hosts that never asked for one, and the rule about a
|
|
@@ -4012,11 +4012,11 @@ present, which is true. Measured, and it is why this is named the other way
|
|
|
4012
4012
|
round. The platform already writes booleans like this for the same reason,
|
|
4013
4013
|
`novalidate` and `nomodule` and `noreferrer` among them.
|
|
4014
4014
|
|
|
4015
|
-
**Reflected, because the gutter is a stylesheet rule.**
|
|
4016
|
-
|
|
4017
|
-
|
|
4018
|
-
|
|
4019
|
-
|
|
4015
|
+
**Reflected, because the gutter is a stylesheet rule.** A sheet reserves
|
|
4016
|
+
the copy button's width with `:host(:not([no-copy]))`, so the attribute is
|
|
4017
|
+
what decides whether the block pays for a control. Unreflected, setting it
|
|
4018
|
+
from script takes the button away (`render` reads the property) and leaves
|
|
4019
|
+
the 40px it stood in reserved.
|
|
4020
4020
|
|
|
4021
4021
|
A false boolean reflects as the attribute's absence, so this costs no
|
|
4022
4022
|
`no-copy=""` on hosts that never asked for one, and the rule about a
|
|
@@ -4032,11 +4032,11 @@ present, which is true. Measured, and it is why this is named the other way
|
|
|
4032
4032
|
round. The platform already writes booleans like this for the same reason,
|
|
4033
4033
|
`novalidate` and `nomodule` and `noreferrer` among them.
|
|
4034
4034
|
|
|
4035
|
-
**Reflected, because the gutter is a stylesheet rule.**
|
|
4036
|
-
|
|
4037
|
-
|
|
4038
|
-
|
|
4039
|
-
|
|
4035
|
+
**Reflected, because the gutter is a stylesheet rule.** A sheet reserves
|
|
4036
|
+
the copy button's width with `:host(:not([no-copy]))`, so the attribute is
|
|
4037
|
+
what decides whether the block pays for a control. Unreflected, setting it
|
|
4038
|
+
from script takes the button away (`render` reads the property) and leaves
|
|
4039
|
+
the 40px it stood in reserved.
|
|
4040
4040
|
|
|
4041
4041
|
A false boolean reflects as the attribute's absence, so this costs no
|
|
4042
4042
|
`no-copy=""` on hosts that never asked for one, and the rule about a
|
|
@@ -4489,10 +4489,10 @@ letting it open would take a color from the reader and drop it. */
|
|
|
4489
4489
|
|
|
4490
4490
|
**A color is exactly as requirable as a date**, which is the comparison
|
|
4491
4491
|
that settles it: this element extends `HelixFormElement`, carries `name`
|
|
4492
|
-
and reports its value, so a consumer writing
|
|
4493
|
-
|
|
4494
|
-
to
|
|
4495
|
-
|
|
4492
|
+
and reports its value, so a consumer writing `<helix-headless-color-picker
|
|
4493
|
+
name="brand" required>` inside a form has every reason to expect the form
|
|
4494
|
+
to refuse an empty one. Its two siblings in the same composition position,
|
|
4495
|
+
Date Picker and Time Picker, both check it.
|
|
4496
4496
|
|
|
4497
4497
|
Written out rather than taken from `MixinField`, for the reason those two
|
|
4498
4498
|
record: the mixin brings a label, a hint and a feedback region, and this is
|
|
@@ -4682,10 +4682,10 @@ letting it open would take a color from the reader and drop it. */
|
|
|
4682
4682
|
|
|
4683
4683
|
**A color is exactly as requirable as a date**, which is the comparison
|
|
4684
4684
|
that settles it: this element extends `HelixFormElement`, carries `name`
|
|
4685
|
-
and reports its value, so a consumer writing
|
|
4686
|
-
|
|
4687
|
-
to
|
|
4688
|
-
|
|
4685
|
+
and reports its value, so a consumer writing `<helix-headless-color-picker
|
|
4686
|
+
name="brand" required>` inside a form has every reason to expect the form
|
|
4687
|
+
to refuse an empty one. Its two siblings in the same composition position,
|
|
4688
|
+
Date Picker and Time Picker, both check it.
|
|
4689
4689
|
|
|
4690
4690
|
Written out rather than taken from `MixinField`, for the reason those two
|
|
4691
4691
|
record: the mixin brings a label, a hint and a feedback region, and this is
|
|
@@ -5297,7 +5297,7 @@ the trigger silently does nothing at all. A wrapper has to hand them down,
|
|
|
5297
5297
|
the same way `label` becomes `aria-label` in there.
|
|
5298
5298
|
|
|
5299
5299
|
```html
|
|
5300
|
-
<helix-button commandfor="confirm" command="--show">Delete…</helix-button>
|
|
5300
|
+
<helix-headless-button commandfor="confirm" command="--show">Delete…</helix-headless-button>
|
|
5301
5301
|
```
|
|
5302
5302
|
|
|
5303
5303
|
`commandFor` spells its attribute out, because Lit lowercases a property
|
|
@@ -5489,7 +5489,7 @@ the trigger silently does nothing at all. A wrapper has to hand them down,
|
|
|
5489
5489
|
the same way `label` becomes `aria-label` in there.
|
|
5490
5490
|
|
|
5491
5491
|
```html
|
|
5492
|
-
<helix-button commandfor="confirm" command="--show">Delete…</helix-button>
|
|
5492
|
+
<helix-headless-button commandfor="confirm" command="--show">Delete…</helix-headless-button>
|
|
5493
5493
|
```
|
|
5494
5494
|
|
|
5495
5495
|
`commandFor` spells its attribute out, because Lit lowercases a property
|
|
@@ -5780,17 +5780,17 @@ refusing it leaves the selection as it was. */
|
|
|
5780
5780
|
|
|
5781
5781
|
**It announces nothing, and that is not an omission.** Nothing in this
|
|
5782
5782
|
element ever asks for a different page size: a size selector is
|
|
5783
|
-
`
|
|
5784
|
-
|
|
5785
|
-
|
|
5783
|
+
`PaginationSize`, which a consumer puts in the `footer` slot and answers
|
|
5784
|
+
themselves. Routing this through `requestChange` would announce an event
|
|
5785
|
+
the element never has cause to fire. */
|
|
5786
5786
|
"page-size"?: (HelixDataTable["pageSize"] | `${number}`) | undefined;
|
|
5787
5787
|
/** How many rows a page holds. Zero is every row, which is what "no paging" means.
|
|
5788
5788
|
|
|
5789
5789
|
**It announces nothing, and that is not an omission.** Nothing in this
|
|
5790
5790
|
element ever asks for a different page size: a size selector is
|
|
5791
|
-
`
|
|
5792
|
-
|
|
5793
|
-
|
|
5791
|
+
`PaginationSize`, which a consumer puts in the `footer` slot and answers
|
|
5792
|
+
themselves. Routing this through `requestChange` would announce an event
|
|
5793
|
+
the element never has cause to fire. */
|
|
5794
5794
|
pageSize?: (HelixDataTable["pageSize"]) | undefined;
|
|
5795
5795
|
/** How many rows the whole result has, where this element cannot count them.
|
|
5796
5796
|
|
|
@@ -5979,17 +5979,17 @@ refusing it leaves the selection as it was. */
|
|
|
5979
5979
|
|
|
5980
5980
|
**It announces nothing, and that is not an omission.** Nothing in this
|
|
5981
5981
|
element ever asks for a different page size: a size selector is
|
|
5982
|
-
`
|
|
5983
|
-
|
|
5984
|
-
|
|
5982
|
+
`PaginationSize`, which a consumer puts in the `footer` slot and answers
|
|
5983
|
+
themselves. Routing this through `requestChange` would announce an event
|
|
5984
|
+
the element never has cause to fire. */
|
|
5985
5985
|
"attr:page-size"?: (HelixDataTable["pageSize"] | `${number}`) | undefined;
|
|
5986
5986
|
/** How many rows a page holds. Zero is every row, which is what "no paging" means.
|
|
5987
5987
|
|
|
5988
5988
|
**It announces nothing, and that is not an omission.** Nothing in this
|
|
5989
5989
|
element ever asks for a different page size: a size selector is
|
|
5990
|
-
`
|
|
5991
|
-
|
|
5992
|
-
|
|
5990
|
+
`PaginationSize`, which a consumer puts in the `footer` slot and answers
|
|
5991
|
+
themselves. Routing this through `requestChange` would announce an event
|
|
5992
|
+
the element never has cause to fire. */
|
|
5993
5993
|
"prop:pageSize"?: (HelixDataTable["pageSize"]) | undefined;
|
|
5994
5994
|
/** How many rows the whole result has, where this element cannot count them.
|
|
5995
5995
|
|
|
@@ -7534,10 +7534,10 @@ not, rather than shown or hidden by CSS. */
|
|
|
7534
7534
|
modal?: (HelixDrawer["modal"]) | undefined;
|
|
7535
7535
|
/** Which edge the drawer comes from.
|
|
7536
7536
|
|
|
7537
|
-
Unset is `end`,
|
|
7538
|
-
beside `:host([placement="end"])` rather than as a value written here: a
|
|
7537
|
+
Unset is `end`, and it stays unset rather than being written down: a
|
|
7539
7538
|
default assigned to the property would reflect onto every host and put a
|
|
7540
|
-
`placement="end"` into markup no consumer wrote.
|
|
7539
|
+
`placement="end"` into markup no consumer wrote. So what this tier
|
|
7540
|
+
guarantees is the absence, and a sheet selects on it. */
|
|
7541
7541
|
placement?: (HelixDrawer["placement"]) | undefined;
|
|
7542
7542
|
/** What the dialog closed with, the way `<dialog>` reports it.
|
|
7543
7543
|
|
|
@@ -7636,10 +7636,10 @@ not, rather than shown or hidden by CSS. */
|
|
|
7636
7636
|
"prop:modal"?: (HelixDrawer["modal"]) | undefined;
|
|
7637
7637
|
/** Which edge the drawer comes from.
|
|
7638
7638
|
|
|
7639
|
-
Unset is `end`,
|
|
7640
|
-
beside `:host([placement="end"])` rather than as a value written here: a
|
|
7639
|
+
Unset is `end`, and it stays unset rather than being written down: a
|
|
7641
7640
|
default assigned to the property would reflect onto every host and put a
|
|
7642
|
-
`placement="end"` into markup no consumer wrote.
|
|
7641
|
+
`placement="end"` into markup no consumer wrote. So what this tier
|
|
7642
|
+
guarantees is the absence, and a sheet selects on it. */
|
|
7643
7643
|
"prop:placement"?: (HelixDrawer["placement"]) | undefined;
|
|
7644
7644
|
/** What the dialog closed with, the way `<dialog>` reports it.
|
|
7645
7645
|
|
|
@@ -8611,11 +8611,12 @@ renders nothing rather than the epoch, which is what parsing an empty string
|
|
|
8611
8611
|
would give.
|
|
8612
8612
|
|
|
8613
8613
|
**The element's own text is read as a fallback, and only in a browser.**
|
|
8614
|
-
`<helix-
|
|
8615
|
-
|
|
8616
|
-
|
|
8617
|
-
|
|
8618
|
-
|
|
8614
|
+
`<helix-headless-format-date
|
|
8615
|
+
elapsed>2026-08-27T01:00:00Z</helix-headless-format-date>` is the spelling
|
|
8616
|
+
that reads best in markup, and it cannot be the only one: measured against
|
|
8617
|
+
Lit's server shim, `textContent`, `children`, `firstChild` and
|
|
8618
|
+
`querySelector` are all `undefined` there, so a server has no way to see
|
|
8619
|
+
it. An element rendered on a server needs the attribute; one rendered in a
|
|
8619
8620
|
browser may use either. */
|
|
8620
8621
|
date?: (HelixFormatDate["date"]) | undefined;
|
|
8621
8622
|
/** How the day of the month is written, where a date is shown. */
|
|
@@ -8665,11 +8666,12 @@ renders nothing rather than the epoch, which is what parsing an empty string
|
|
|
8665
8666
|
would give.
|
|
8666
8667
|
|
|
8667
8668
|
**The element's own text is read as a fallback, and only in a browser.**
|
|
8668
|
-
`<helix-
|
|
8669
|
-
|
|
8670
|
-
|
|
8671
|
-
|
|
8672
|
-
|
|
8669
|
+
`<helix-headless-format-date
|
|
8670
|
+
elapsed>2026-08-27T01:00:00Z</helix-headless-format-date>` is the spelling
|
|
8671
|
+
that reads best in markup, and it cannot be the only one: measured against
|
|
8672
|
+
Lit's server shim, `textContent`, `children`, `firstChild` and
|
|
8673
|
+
`querySelector` are all `undefined` there, so a server has no way to see
|
|
8674
|
+
it. An element rendered on a server needs the attribute; one rendered in a
|
|
8673
8675
|
browser may use either. */
|
|
8674
8676
|
"prop:date"?: (HelixFormatDate["date"]) | undefined;
|
|
8675
8677
|
/** How the day of the month is written, where a date is shown. */
|
|
@@ -8790,12 +8792,12 @@ so a number written here that disagrees with the sheet is a promise the
|
|
|
8790
8792
|
consumer has to keep by hand, and the one number a summary is told to trust
|
|
8791
8793
|
is the one it gets wrong.
|
|
8792
8794
|
|
|
8793
|
-
The strip measures itself, so
|
|
8794
|
-
|
|
8795
|
-
|
|
8796
|
-
|
|
8797
|
-
|
|
8798
|
-
|
|
8795
|
+
The strip measures itself, so sizing the cells in a sheet is enough on its
|
|
8796
|
+
own and these two are the estimate used until the first measurement lands.
|
|
8797
|
+
Writing the attribute pins the value and stops the measurement being
|
|
8798
|
+
consulted, which is what a container query or a transition on the cell size
|
|
8799
|
+
wants, where what is drawn this frame is not what the arithmetic should
|
|
8800
|
+
plan around.
|
|
8799
8801
|
|
|
8800
8802
|
Zero turns the dropping off altogether, which is right for a strip in a
|
|
8801
8803
|
container that cannot get narrow. */
|
|
@@ -8808,12 +8810,12 @@ so a number written here that disagrees with the sheet is a promise the
|
|
|
8808
8810
|
consumer has to keep by hand, and the one number a summary is told to trust
|
|
8809
8811
|
is the one it gets wrong.
|
|
8810
8812
|
|
|
8811
|
-
The strip measures itself, so
|
|
8812
|
-
|
|
8813
|
-
|
|
8814
|
-
|
|
8815
|
-
|
|
8816
|
-
|
|
8813
|
+
The strip measures itself, so sizing the cells in a sheet is enough on its
|
|
8814
|
+
own and these two are the estimate used until the first measurement lands.
|
|
8815
|
+
Writing the attribute pins the value and stops the measurement being
|
|
8816
|
+
consulted, which is what a container query or a transition on the cell size
|
|
8817
|
+
wants, where what is drawn this frame is not what the arithmetic should
|
|
8818
|
+
plan around.
|
|
8817
8819
|
|
|
8818
8820
|
Zero turns the dropping off altogether, which is right for a strip in a
|
|
8819
8821
|
container that cannot get narrow. */
|
|
@@ -8885,12 +8887,12 @@ so a number written here that disagrees with the sheet is a promise the
|
|
|
8885
8887
|
consumer has to keep by hand, and the one number a summary is told to trust
|
|
8886
8888
|
is the one it gets wrong.
|
|
8887
8889
|
|
|
8888
|
-
The strip measures itself, so
|
|
8889
|
-
|
|
8890
|
-
|
|
8891
|
-
|
|
8892
|
-
|
|
8893
|
-
|
|
8890
|
+
The strip measures itself, so sizing the cells in a sheet is enough on its
|
|
8891
|
+
own and these two are the estimate used until the first measurement lands.
|
|
8892
|
+
Writing the attribute pins the value and stops the measurement being
|
|
8893
|
+
consulted, which is what a container query or a transition on the cell size
|
|
8894
|
+
wants, where what is drawn this frame is not what the arithmetic should
|
|
8895
|
+
plan around.
|
|
8894
8896
|
|
|
8895
8897
|
Zero turns the dropping off altogether, which is right for a strip in a
|
|
8896
8898
|
container that cannot get narrow. */
|
|
@@ -8903,12 +8905,12 @@ so a number written here that disagrees with the sheet is a promise the
|
|
|
8903
8905
|
consumer has to keep by hand, and the one number a summary is told to trust
|
|
8904
8906
|
is the one it gets wrong.
|
|
8905
8907
|
|
|
8906
|
-
The strip measures itself, so
|
|
8907
|
-
|
|
8908
|
-
|
|
8909
|
-
|
|
8910
|
-
|
|
8911
|
-
|
|
8908
|
+
The strip measures itself, so sizing the cells in a sheet is enough on its
|
|
8909
|
+
own and these two are the estimate used until the first measurement lands.
|
|
8910
|
+
Writing the attribute pins the value and stops the measurement being
|
|
8911
|
+
consulted, which is what a container query or a transition on the cell size
|
|
8912
|
+
wants, where what is drawn this frame is not what the arithmetic should
|
|
8913
|
+
plan around.
|
|
8912
8914
|
|
|
8913
8915
|
Zero turns the dropping off altogether, which is right for a strip in a
|
|
8914
8916
|
container that cannot get narrow. */
|
|
@@ -9003,7 +9005,7 @@ the trigger silently does nothing at all. A wrapper has to hand them down,
|
|
|
9003
9005
|
the same way `label` becomes `aria-label` in there.
|
|
9004
9006
|
|
|
9005
9007
|
```html
|
|
9006
|
-
<helix-button commandfor="confirm" command="--show">Delete…</helix-button>
|
|
9008
|
+
<helix-headless-button commandfor="confirm" command="--show">Delete…</helix-headless-button>
|
|
9007
9009
|
```
|
|
9008
9010
|
|
|
9009
9011
|
`commandFor` spells its attribute out, because Lit lowercases a property
|
|
@@ -9209,7 +9211,7 @@ the trigger silently does nothing at all. A wrapper has to hand them down,
|
|
|
9209
9211
|
the same way `label` becomes `aria-label` in there.
|
|
9210
9212
|
|
|
9211
9213
|
```html
|
|
9212
|
-
<helix-button commandfor="confirm" command="--show">Delete…</helix-button>
|
|
9214
|
+
<helix-headless-button commandfor="confirm" command="--show">Delete…</helix-headless-button>
|
|
9213
9215
|
```
|
|
9214
9216
|
|
|
9215
9217
|
`commandFor` spells its attribute out, because Lit lowercases a property
|
|
@@ -9463,10 +9465,10 @@ Read-only to a consumer: it is a report rather than a setting.
|
|
|
9463
9465
|
**Mirrored to `data-status`, and not reflected as `status`.** It is element
|
|
9464
9466
|
state, so reflecting it puts the element's own bookkeeping into the markup
|
|
9465
9467
|
a consumer rendered: React reads the attribute appearing at upgrade as a
|
|
9466
|
-
hydration mismatch, and a
|
|
9467
|
-
|
|
9468
|
-
|
|
9469
|
-
|
|
9468
|
+
hydration mismatch, and a host pasted back carrying `status="loaded"`
|
|
9469
|
+
declares that a picture has arrived which this element has never fetched.
|
|
9470
|
+
The `data-` name is the library's answer to both, being a name a re-parse
|
|
9471
|
+
cannot mistake for a declaration, and it is what `data-closed` on
|
|
9470
9472
|
`Toast.Item` already does. A picture arrives after somebody fetched it,
|
|
9471
9473
|
which puts this on the safe side of hydration: a fact that can be true on
|
|
9472
9474
|
the *first* update mirrors to a custom state instead, which is what
|
|
@@ -9546,10 +9548,10 @@ Read-only to a consumer: it is a report rather than a setting.
|
|
|
9546
9548
|
**Mirrored to `data-status`, and not reflected as `status`.** It is element
|
|
9547
9549
|
state, so reflecting it puts the element's own bookkeeping into the markup
|
|
9548
9550
|
a consumer rendered: React reads the attribute appearing at upgrade as a
|
|
9549
|
-
hydration mismatch, and a
|
|
9550
|
-
|
|
9551
|
-
|
|
9552
|
-
|
|
9551
|
+
hydration mismatch, and a host pasted back carrying `status="loaded"`
|
|
9552
|
+
declares that a picture has arrived which this element has never fetched.
|
|
9553
|
+
The `data-` name is the library's answer to both, being a name a re-parse
|
|
9554
|
+
cannot mistake for a declaration, and it is what `data-closed` on
|
|
9553
9555
|
`Toast.Item` already does. A picture arrives after somebody fetched it,
|
|
9554
9556
|
which puts this on the safe side of hydration: a fact that can be true on
|
|
9555
9557
|
the *first* update mirrors to a custom state instead, which is what
|
|
@@ -9634,20 +9636,20 @@ Not a label: it goes when typing starts. */
|
|
|
9634
9636
|
**The attribute is `readonly`, which is the platform's spelling.** A
|
|
9635
9637
|
camelCase property needs an explicit `attribute`, and dash-casing a word
|
|
9636
9638
|
HTML writes as one costs what an attribute always costs here: nothing
|
|
9637
|
-
warns. `<helix-input readonly>` is what anybody who has written
|
|
9638
|
-
against `read-only` it parses to no property at all, and the
|
|
9639
|
-
editable with no error anywhere. Measured on the dash-cased
|
|
9640
|
-
came back `false`. */
|
|
9639
|
+
warns. `<helix-headless-input readonly>` is what anybody who has written
|
|
9640
|
+
HTML types; against `read-only` it parses to no property at all, and the
|
|
9641
|
+
field stays editable with no error anywhere. Measured on the dash-cased
|
|
9642
|
+
form, `readOnly` came back `false`. */
|
|
9641
9643
|
readonly?: (HelixInput["readOnly"]) | undefined;
|
|
9642
9644
|
/** Whether the field refuses input while still submitting its value.
|
|
9643
9645
|
|
|
9644
9646
|
**The attribute is `readonly`, which is the platform's spelling.** A
|
|
9645
9647
|
camelCase property needs an explicit `attribute`, and dash-casing a word
|
|
9646
9648
|
HTML writes as one costs what an attribute always costs here: nothing
|
|
9647
|
-
warns. `<helix-input readonly>` is what anybody who has written
|
|
9648
|
-
against `read-only` it parses to no property at all, and the
|
|
9649
|
-
editable with no error anywhere. Measured on the dash-cased
|
|
9650
|
-
came back `false`. */
|
|
9649
|
+
warns. `<helix-headless-input readonly>` is what anybody who has written
|
|
9650
|
+
HTML types; against `read-only` it parses to no property at all, and the
|
|
9651
|
+
field stays editable with no error anywhere. Measured on the dash-cased
|
|
9652
|
+
form, `readOnly` came back `false`. */
|
|
9651
9653
|
readOnly?: (HelixInput["readOnly"]) | undefined;
|
|
9652
9654
|
/** Whether a password field offers a toggle that shows what was typed.
|
|
9653
9655
|
|
|
@@ -9668,9 +9670,9 @@ The state is `aria-pressed`, not this. */
|
|
|
9668
9670
|
|
|
9669
9671
|
**Not reflected.** Reflection exists so a selector can reach a value, and
|
|
9670
9672
|
no stylesheet in this repository selects on `type`. Reflecting it writes
|
|
9671
|
-
`type="text"` onto every `<helix-input>` ever rendered, an
|
|
9672
|
-
consumer's markup has, which is the fault the area rules write
|
|
9673
|
-
`Button`'s `href`, `target` and `rel`.
|
|
9673
|
+
`type="text"` onto every `<helix-headless-input>` ever rendered, an
|
|
9674
|
+
attribute no consumer's markup has, which is the fault the area rules write
|
|
9675
|
+
up under `Button`'s `href`, `target` and `rel`.
|
|
9674
9676
|
|
|
9675
9677
|
Nothing reads it from the attribute either. The real `<input>` inside takes
|
|
9676
9678
|
it as a property binding, which is what makes the keyboard and the
|
|
@@ -9788,20 +9790,20 @@ Not a label: it goes when typing starts. */
|
|
|
9788
9790
|
**The attribute is `readonly`, which is the platform's spelling.** A
|
|
9789
9791
|
camelCase property needs an explicit `attribute`, and dash-casing a word
|
|
9790
9792
|
HTML writes as one costs what an attribute always costs here: nothing
|
|
9791
|
-
warns. `<helix-input readonly>` is what anybody who has written
|
|
9792
|
-
against `read-only` it parses to no property at all, and the
|
|
9793
|
-
editable with no error anywhere. Measured on the dash-cased
|
|
9794
|
-
came back `false`. */
|
|
9793
|
+
warns. `<helix-headless-input readonly>` is what anybody who has written
|
|
9794
|
+
HTML types; against `read-only` it parses to no property at all, and the
|
|
9795
|
+
field stays editable with no error anywhere. Measured on the dash-cased
|
|
9796
|
+
form, `readOnly` came back `false`. */
|
|
9795
9797
|
"bool:readonly"?: (HelixInput["readOnly"]) | undefined;
|
|
9796
9798
|
/** Whether the field refuses input while still submitting its value.
|
|
9797
9799
|
|
|
9798
9800
|
**The attribute is `readonly`, which is the platform's spelling.** A
|
|
9799
9801
|
camelCase property needs an explicit `attribute`, and dash-casing a word
|
|
9800
9802
|
HTML writes as one costs what an attribute always costs here: nothing
|
|
9801
|
-
warns. `<helix-input readonly>` is what anybody who has written
|
|
9802
|
-
against `read-only` it parses to no property at all, and the
|
|
9803
|
-
editable with no error anywhere. Measured on the dash-cased
|
|
9804
|
-
came back `false`. */
|
|
9803
|
+
warns. `<helix-headless-input readonly>` is what anybody who has written
|
|
9804
|
+
HTML types; against `read-only` it parses to no property at all, and the
|
|
9805
|
+
field stays editable with no error anywhere. Measured on the dash-cased
|
|
9806
|
+
form, `readOnly` came back `false`. */
|
|
9805
9807
|
"prop:readOnly"?: (HelixInput["readOnly"]) | undefined;
|
|
9806
9808
|
/** Whether a password field offers a toggle that shows what was typed.
|
|
9807
9809
|
|
|
@@ -9822,9 +9824,9 @@ The state is `aria-pressed`, not this. */
|
|
|
9822
9824
|
|
|
9823
9825
|
**Not reflected.** Reflection exists so a selector can reach a value, and
|
|
9824
9826
|
no stylesheet in this repository selects on `type`. Reflecting it writes
|
|
9825
|
-
`type="text"` onto every `<helix-input>` ever rendered, an
|
|
9826
|
-
consumer's markup has, which is the fault the area rules write
|
|
9827
|
-
`Button`'s `href`, `target` and `rel`.
|
|
9827
|
+
`type="text"` onto every `<helix-headless-input>` ever rendered, an
|
|
9828
|
+
attribute no consumer's markup has, which is the fault the area rules write
|
|
9829
|
+
up under `Button`'s `href`, `target` and `rel`.
|
|
9828
9830
|
|
|
9829
9831
|
Nothing reads it from the attribute either. The real `<input>` inside takes
|
|
9830
9832
|
it as a property binding, which is what makes the keyboard and the
|
|
@@ -10263,8 +10265,7 @@ beside it for instance. `ring` lets the ground through, for a chart drawn
|
|
|
10263
10265
|
over something busy. `triangle` points along the axis and reads as "and
|
|
10264
10266
|
onward" rather than as a second claim about the data.
|
|
10265
10267
|
|
|
10266
|
-
The shapes come from
|
|
10267
|
-
`helix/styled/src/shared/chart/terminus.css`, the same sheet `Sparkline` takes, so
|
|
10268
|
+
The shapes come from one shared sheet, the same one `Sparkline` takes, so
|
|
10268
10269
|
the set is identical wherever one appears. **Which is why every value is
|
|
10269
10270
|
named here.** `Sparkline` shipped `square` implemented, drawn, asserted and
|
|
10270
10271
|
undocumented until the cohort before this one; this family reads the same
|
|
@@ -10414,8 +10415,7 @@ beside it for instance. `ring` lets the ground through, for a chart drawn
|
|
|
10414
10415
|
over something busy. `triangle` points along the axis and reads as "and
|
|
10415
10416
|
onward" rather than as a second claim about the data.
|
|
10416
10417
|
|
|
10417
|
-
The shapes come from
|
|
10418
|
-
`helix/styled/src/shared/chart/terminus.css`, the same sheet `Sparkline` takes, so
|
|
10418
|
+
The shapes come from one shared sheet, the same one `Sparkline` takes, so
|
|
10419
10419
|
the set is identical wherever one appears. **Which is why every value is
|
|
10420
10420
|
named here.** `Sparkline` shipped `square` implemented, drawn, asserted and
|
|
10421
10421
|
undocumented until the cohort before this one; this family reads the same
|
|
@@ -10519,10 +10519,10 @@ has to survive with the stylesheet turned off.
|
|
|
10519
10519
|
label?: (HelixList["label"]) | undefined;
|
|
10520
10520
|
/** Which markers an ordered list draws, in `<ol type>`'s own five values.
|
|
10521
10521
|
|
|
10522
|
-
Reflected, because this is one of the things a stylesheet selects on
|
|
10523
|
-
|
|
10524
|
-
|
|
10525
|
-
|
|
10522
|
+
Reflected, because this is one of the things a stylesheet selects on, each
|
|
10523
|
+
value mapping to a `list-style-type`. The platform's spellings rather than
|
|
10524
|
+
the CSS ones, so `<helix-headless-list kind="ordered" type="i">` is what a
|
|
10525
|
+
consumer would have written on an `<ol>`.
|
|
10526
10526
|
|
|
10527
10527
|
**`start` and `reversed` are both absent and neither can be done here.**
|
|
10528
10528
|
This renders no `<ol>`: the rows are slotted and numbered by the CSS
|
|
@@ -10578,10 +10578,10 @@ has to survive with the stylesheet turned off.
|
|
|
10578
10578
|
"prop:label"?: (HelixList["label"]) | undefined;
|
|
10579
10579
|
/** Which markers an ordered list draws, in `<ol type>`'s own five values.
|
|
10580
10580
|
|
|
10581
|
-
Reflected, because this is one of the things a stylesheet selects on
|
|
10582
|
-
|
|
10583
|
-
|
|
10584
|
-
|
|
10581
|
+
Reflected, because this is one of the things a stylesheet selects on, each
|
|
10582
|
+
value mapping to a `list-style-type`. The platform's spellings rather than
|
|
10583
|
+
the CSS ones, so `<helix-headless-list kind="ordered" type="i">` is what a
|
|
10584
|
+
consumer would have written on an `<ol>`.
|
|
10585
10585
|
|
|
10586
10586
|
**`start` and `reversed` are both absent and neither can be done here.**
|
|
10587
10587
|
This renders no `<ol>`: the rows are slotted and numbered by the CSS
|
|
@@ -11816,10 +11816,10 @@ this element then owns.
|
|
|
11816
11816
|
|
|
11817
11817
|
**Not reflected.** Unread is a visual state, which is why the four mixins
|
|
11818
11818
|
mirror theirs, but the mirror may not be the property's own attribute:
|
|
11819
|
-
`<helix-notification default-read>` comes back from a server
|
|
11820
|
-
and would gain it on the first update, which React reports
|
|
11821
|
-
mismatch, and which a copy of the serialized element
|
|
11822
|
-
declaration. `:state(read)` is what the stylesheet reads.
|
|
11819
|
+
`<helix-headless-notification default-read>` comes back from a server
|
|
11820
|
+
without `read` and would gain it on the first update, which React reports
|
|
11821
|
+
as a hydration mismatch, and which a copy of the serialized element
|
|
11822
|
+
re-parses as a declaration. `:state(read)` is what the stylesheet reads.
|
|
11823
11823
|
`hydration.dom.spec.ts` holds it. */
|
|
11824
11824
|
read?: (HelixNotification["read"]) | undefined;
|
|
11825
11825
|
/** State to open with, where nothing declared one. */
|
|
@@ -11887,10 +11887,10 @@ this element then owns.
|
|
|
11887
11887
|
|
|
11888
11888
|
**Not reflected.** Unread is a visual state, which is why the four mixins
|
|
11889
11889
|
mirror theirs, but the mirror may not be the property's own attribute:
|
|
11890
|
-
`<helix-notification default-read>` comes back from a server
|
|
11891
|
-
and would gain it on the first update, which React reports
|
|
11892
|
-
mismatch, and which a copy of the serialized element
|
|
11893
|
-
declaration. `:state(read)` is what the stylesheet reads.
|
|
11890
|
+
`<helix-headless-notification default-read>` comes back from a server
|
|
11891
|
+
without `read` and would gain it on the first update, which React reports
|
|
11892
|
+
as a hydration mismatch, and which a copy of the serialized element
|
|
11893
|
+
re-parses as a declaration. `:state(read)` is what the stylesheet reads.
|
|
11894
11894
|
`hydration.dom.spec.ts` holds it. */
|
|
11895
11895
|
"prop:read"?: (HelixNotification["read"]) | undefined;
|
|
11896
11896
|
/** State to open with, where nothing declared one. */
|
|
@@ -12483,7 +12483,7 @@ attribute and the state is the property.
|
|
|
12483
12483
|
**The attribute, read when it is asked for, and never a snapshot taken in
|
|
12484
12484
|
the constructor.** A field initializer runs there, and an element the HTML
|
|
12485
12485
|
parser created has none of its attributes yet at that moment: measured on
|
|
12486
|
-
this element, on `Radio` and on `Toggle`, `<helix-option value="a"
|
|
12486
|
+
this element, on `Radio` and on `Toggle`, `<helix-headless-option value="a"
|
|
12487
12487
|
selected>` reported `defaultSelected` as `false` both from parsed markup
|
|
12488
12488
|
and from `createElement` followed by `setAttribute`, which is every way a
|
|
12489
12489
|
consumer writes one. The snapshot could only ever be true for an element
|
|
@@ -12590,7 +12590,7 @@ attribute and the state is the property.
|
|
|
12590
12590
|
**The attribute, read when it is asked for, and never a snapshot taken in
|
|
12591
12591
|
the constructor.** A field initializer runs there, and an element the HTML
|
|
12592
12592
|
parser created has none of its attributes yet at that moment: measured on
|
|
12593
|
-
this element, on `Radio` and on `Toggle`, `<helix-option value="a"
|
|
12593
|
+
this element, on `Radio` and on `Toggle`, `<helix-headless-option value="a"
|
|
12594
12594
|
selected>` reported `defaultSelected` as `false` both from parsed markup
|
|
12595
12595
|
and from `createElement` followed by `setAttribute`, which is every way a
|
|
12596
12596
|
consumer writes one. The snapshot could only ever be true for an element
|
|
@@ -13255,10 +13255,10 @@ other end is going to reject. A consumer whose codes really do carry
|
|
|
13255
13255
|
marked letters wants `text`, which judges nothing.
|
|
13256
13256
|
|
|
13257
13257
|
**Not reflected**: nothing selects on it, so reflecting only writes
|
|
13258
|
-
`type="numeric"` onto every `<helix-pin-input>` ever rendered, an
|
|
13259
|
-
no consumer's markup had. The area rules carry the sentence
|
|
13260
|
-
what CSS selects on". The real inputs take it as a binding,
|
|
13261
|
-
makes the keyboard follow. */
|
|
13258
|
+
`type="numeric"` onto every `<helix-headless-pin-input>` ever rendered, an
|
|
13259
|
+
attribute no consumer's markup had. The area rules carry the sentence
|
|
13260
|
+
"reflect only what CSS selects on". The real inputs take it as a binding,
|
|
13261
|
+
which is what makes the keyboard follow. */
|
|
13262
13262
|
type?: (HelixPinInput["type"]) | undefined;
|
|
13263
13263
|
/** Whether the control is non-interactive.
|
|
13264
13264
|
|
|
@@ -13364,10 +13364,10 @@ other end is going to reject. A consumer whose codes really do carry
|
|
|
13364
13364
|
marked letters wants `text`, which judges nothing.
|
|
13365
13365
|
|
|
13366
13366
|
**Not reflected**: nothing selects on it, so reflecting only writes
|
|
13367
|
-
`type="numeric"` onto every `<helix-pin-input>` ever rendered, an
|
|
13368
|
-
no consumer's markup had. The area rules carry the sentence
|
|
13369
|
-
what CSS selects on". The real inputs take it as a binding,
|
|
13370
|
-
makes the keyboard follow. */
|
|
13367
|
+
`type="numeric"` onto every `<helix-headless-pin-input>` ever rendered, an
|
|
13368
|
+
attribute no consumer's markup had. The area rules carry the sentence
|
|
13369
|
+
"reflect only what CSS selects on". The real inputs take it as a binding,
|
|
13370
|
+
which is what makes the keyboard follow. */
|
|
13371
13371
|
"prop:type"?: (HelixPinInput["type"]) | undefined;
|
|
13372
13372
|
/** Whether the control is non-interactive.
|
|
13373
13373
|
|
|
@@ -14019,7 +14019,7 @@ attribute and the state is the property.
|
|
|
14019
14019
|
**The attribute, read when it is asked for, and never a snapshot taken in
|
|
14020
14020
|
the constructor.** A field initializer runs there, and an element the HTML
|
|
14021
14021
|
parser created has none of its attributes yet at that moment: measured on
|
|
14022
|
-
this element, on `Option` and on `Toggle`, `<helix-radio value="a"
|
|
14022
|
+
this element, on `Option` and on `Toggle`, `<helix-headless-radio value="a"
|
|
14023
14023
|
selected>` reported `defaultSelected` as `false` both from parsed markup
|
|
14024
14024
|
and from `createElement` followed by `setAttribute`, which is every way a
|
|
14025
14025
|
consumer writes one. The snapshot could only ever be true for an element
|
|
@@ -14126,7 +14126,7 @@ attribute and the state is the property.
|
|
|
14126
14126
|
**The attribute, read when it is asked for, and never a snapshot taken in
|
|
14127
14127
|
the constructor.** A field initializer runs there, and an element the HTML
|
|
14128
14128
|
parser created has none of its attributes yet at that moment: measured on
|
|
14129
|
-
this element, on `Option` and on `Toggle`, `<helix-radio value="a"
|
|
14129
|
+
this element, on `Option` and on `Toggle`, `<helix-headless-radio value="a"
|
|
14130
14130
|
selected>` reported `defaultSelected` as `false` both from parsed markup
|
|
14131
14131
|
and from `createElement` followed by `setAttribute`, which is every way a
|
|
14132
14132
|
consumer writes one. The snapshot could only ever be true for an element
|
|
@@ -16426,9 +16426,9 @@ the headline and the label is a caption under it.
|
|
|
16426
16426
|
The row directions set them side by side, for a figure in a line of text or
|
|
16427
16427
|
a narrow strip where a stacked pair would be two lines of almost nothing.
|
|
16428
16428
|
|
|
16429
|
-
A property rather than a `
|
|
16430
|
-
|
|
16431
|
-
|
|
16429
|
+
A property rather than a `Flex` around it, because the unit has to stay on
|
|
16430
|
+
the value's baseline whichever way the pair goes, and only this element
|
|
16431
|
+
knows which of its children the unit belongs to.
|
|
16432
16432
|
|
|
16433
16433
|
**Optional rather than defaulted to `column`, which is not a style
|
|
16434
16434
|
preference.** A reflecting property with a default writes its attribute onto
|
|
@@ -16451,9 +16451,9 @@ the headline and the label is a caption under it.
|
|
|
16451
16451
|
The row directions set them side by side, for a figure in a line of text or
|
|
16452
16452
|
a narrow strip where a stacked pair would be two lines of almost nothing.
|
|
16453
16453
|
|
|
16454
|
-
A property rather than a `
|
|
16455
|
-
|
|
16456
|
-
|
|
16454
|
+
A property rather than a `Flex` around it, because the unit has to stay on
|
|
16455
|
+
the value's baseline whichever way the pair goes, and only this element
|
|
16456
|
+
knows which of its children the unit belongs to.
|
|
16457
16457
|
|
|
16458
16458
|
**Optional rather than defaulted to `column`, which is not a style
|
|
16459
16459
|
preference.** A reflecting property with a default writes its attribute onto
|
|
@@ -16797,15 +16797,15 @@ export type HelixTableColumnHelixBeforeResizeElementEvent =
|
|
|
16797
16797
|
export type HelixTableColumnProps = {
|
|
16798
16798
|
/** Which edge the values line up against.
|
|
16799
16799
|
|
|
16800
|
-
`end` is what a column of numbers wants, so digits of the same magnitude
|
|
16801
|
-
above each other. Left unset the cell inherits the table's own
|
|
16802
|
-
which is `start` for text in either writing direction.
|
|
16803
|
-
aligns the cells it draws. A `
|
|
16804
|
-
wrote, so the table writes nothing onto them: it publishes the
|
|
16805
|
-
cell under this column as `--table-cell-align`, which
|
|
16806
|
-
reads. The heading is this element's own, and
|
|
16807
|
-
the same edge in either table. `end` is the
|
|
16808
|
-
right-to-left table it is the left.
|
|
16800
|
+
`end` is what a column of numbers wants, so digits of the same magnitude
|
|
16801
|
+
sit above each other. Left unset the cell inherits the table's own
|
|
16802
|
+
alignment, which is `start` for text in either writing direction.
|
|
16803
|
+
`DataTable` aligns the cells it draws. A `Table`'s cells are markup the
|
|
16804
|
+
consumer wrote, so the table writes nothing onto them: it publishes the
|
|
16805
|
+
edge to each cell under this column as `--table-cell-align`, which
|
|
16806
|
+
`@fusion.dev/helix` reads. The heading is this element's own, and
|
|
16807
|
+
`@fusion.dev/helix` sets it to the same edge in either table. `end` is the
|
|
16808
|
+
inline end, so in a right-to-left table it is the left.
|
|
16809
16809
|
|
|
16810
16810
|
**Reflected, because the heading is drawn by a stylesheet and has no other
|
|
16811
16811
|
way to learn it.** Set as a property, which is how React sets it, an
|
|
@@ -16852,8 +16852,8 @@ onto its host. */
|
|
|
16852
16852
|
/** The track this column takes, as CSS.
|
|
16853
16853
|
|
|
16854
16854
|
A single track value, so anything valid in `grid-template-columns` works:
|
|
16855
|
-
`16rem`, `auto`, `minmax(0, 2fr)`. Left unset the column takes the track
|
|
16856
|
-
|
|
16855
|
+
`16rem`, `auto`, `minmax(0, 2fr)`. Left unset the column takes the track in
|
|
16856
|
+
its place in a `Table`'s `columns`, where that table sets one, and
|
|
16857
16857
|
otherwise shares what is left over equally, as `minmax(max-content, 1fr)`.
|
|
16858
16858
|
Set here, it wins over that list, which is what lets a reader resize a
|
|
16859
16859
|
column in a table that set one.
|
|
@@ -16899,15 +16899,15 @@ correct default: the raw value is what an API sorted by. */
|
|
|
16899
16899
|
export type HelixTableColumnSolidJsProps = {
|
|
16900
16900
|
/** Which edge the values line up against.
|
|
16901
16901
|
|
|
16902
|
-
`end` is what a column of numbers wants, so digits of the same magnitude
|
|
16903
|
-
above each other. Left unset the cell inherits the table's own
|
|
16904
|
-
which is `start` for text in either writing direction.
|
|
16905
|
-
aligns the cells it draws. A `
|
|
16906
|
-
wrote, so the table writes nothing onto them: it publishes the
|
|
16907
|
-
cell under this column as `--table-cell-align`, which
|
|
16908
|
-
reads. The heading is this element's own, and
|
|
16909
|
-
the same edge in either table. `end` is the
|
|
16910
|
-
right-to-left table it is the left.
|
|
16902
|
+
`end` is what a column of numbers wants, so digits of the same magnitude
|
|
16903
|
+
sit above each other. Left unset the cell inherits the table's own
|
|
16904
|
+
alignment, which is `start` for text in either writing direction.
|
|
16905
|
+
`DataTable` aligns the cells it draws. A `Table`'s cells are markup the
|
|
16906
|
+
consumer wrote, so the table writes nothing onto them: it publishes the
|
|
16907
|
+
edge to each cell under this column as `--table-cell-align`, which
|
|
16908
|
+
`@fusion.dev/helix` reads. The heading is this element's own, and
|
|
16909
|
+
`@fusion.dev/helix` sets it to the same edge in either table. `end` is the
|
|
16910
|
+
inline end, so in a right-to-left table it is the left.
|
|
16911
16911
|
|
|
16912
16912
|
**Reflected, because the heading is drawn by a stylesheet and has no other
|
|
16913
16913
|
way to learn it.** Set as a property, which is how React sets it, an
|
|
@@ -16954,8 +16954,8 @@ onto its host. */
|
|
|
16954
16954
|
/** The track this column takes, as CSS.
|
|
16955
16955
|
|
|
16956
16956
|
A single track value, so anything valid in `grid-template-columns` works:
|
|
16957
|
-
`16rem`, `auto`, `minmax(0, 2fr)`. Left unset the column takes the track
|
|
16958
|
-
|
|
16957
|
+
`16rem`, `auto`, `minmax(0, 2fr)`. Left unset the column takes the track in
|
|
16958
|
+
its place in a `Table`'s `columns`, where that table sets one, and
|
|
16959
16959
|
otherwise shares what is left over equally, as `minmax(max-content, 1fr)`.
|
|
16960
16960
|
Set here, it wins over that list, which is what lets a reader resize a
|
|
16961
16961
|
column in a table that set one.
|
|
@@ -17019,15 +17019,14 @@ say that without the component knowing what a row looks like. */
|
|
|
17019
17019
|
loadingText?: (HelixTable["loadingText"]) | undefined;
|
|
17020
17020
|
/** The column widths as one track list, written once on the table.
|
|
17021
17021
|
|
|
17022
|
-
With `
|
|
17023
|
-
|
|
17024
|
-
|
|
17025
|
-
|
|
17026
|
-
|
|
17027
|
-
|
|
17028
|
-
|
|
17029
|
-
|
|
17030
|
-
down to one column.
|
|
17022
|
+
With `TableColumn` children, each track sizes the column in its place, a
|
|
17023
|
+
hidden column counted, so hiding one takes its track with it and the rest
|
|
17024
|
+
keep theirs. The columns decide how many tracks there are and this list
|
|
17025
|
+
only how wide: a track past the last column is dropped, and a column past
|
|
17026
|
+
the last track shares what is left. With no columns declared it is the
|
|
17027
|
+
whole track list. Tracks count as the grid counts them, so `minmax(0, 1fr)`
|
|
17028
|
+
is one and `repeat(2, 8rem)` is two, and one the grid would refuse leaves
|
|
17029
|
+
its column at the default rather than taking the table down to one column.
|
|
17031
17030
|
|
|
17032
17031
|
**A column's own `width` wins over its track here.** The width is written
|
|
17033
17032
|
on the column it sizes, which is the more particular statement, and it is
|
|
@@ -17041,13 +17040,11 @@ to walk, so a render there knows of no columns and this attribute is the
|
|
|
17041
17040
|
whole answer: a table given one lays its grid out in the first paint, and a
|
|
17042
17041
|
table sized only by its columns is one track wide until it upgrades.
|
|
17043
17042
|
|
|
17044
|
-
|
|
17045
|
-
|
|
17046
|
-
|
|
17047
|
-
|
|
17048
|
-
|
|
17049
|
-
take the same CSS hook, `--table-columns` and `--data-table-columns`, which
|
|
17050
|
-
wins over whichever list the element worked out. */
|
|
17043
|
+
**Data Table has none of this, and should not.** Its columns are its schema
|
|
17044
|
+
rather than an option, so there is always a column to write a `width` on
|
|
17045
|
+
and a list here would be a second way to say what that says. This table's
|
|
17046
|
+
cells are markup, and a table written as rows of cells with no column
|
|
17047
|
+
declared in it has nowhere else to be sized from. */
|
|
17051
17048
|
columns?: (HelixTable["columns"]) | undefined;
|
|
17052
17049
|
/** Accessible name for the table. */
|
|
17053
17050
|
label?: (HelixTable["label"]) | undefined;
|
|
@@ -17070,15 +17067,14 @@ say that without the component knowing what a row looks like. */
|
|
|
17070
17067
|
"prop:loadingText"?: (HelixTable["loadingText"]) | undefined;
|
|
17071
17068
|
/** The column widths as one track list, written once on the table.
|
|
17072
17069
|
|
|
17073
|
-
With `
|
|
17074
|
-
|
|
17075
|
-
|
|
17076
|
-
|
|
17077
|
-
|
|
17078
|
-
|
|
17079
|
-
|
|
17080
|
-
|
|
17081
|
-
down to one column.
|
|
17070
|
+
With `TableColumn` children, each track sizes the column in its place, a
|
|
17071
|
+
hidden column counted, so hiding one takes its track with it and the rest
|
|
17072
|
+
keep theirs. The columns decide how many tracks there are and this list
|
|
17073
|
+
only how wide: a track past the last column is dropped, and a column past
|
|
17074
|
+
the last track shares what is left. With no columns declared it is the
|
|
17075
|
+
whole track list. Tracks count as the grid counts them, so `minmax(0, 1fr)`
|
|
17076
|
+
is one and `repeat(2, 8rem)` is two, and one the grid would refuse leaves
|
|
17077
|
+
its column at the default rather than taking the table down to one column.
|
|
17082
17078
|
|
|
17083
17079
|
**A column's own `width` wins over its track here.** The width is written
|
|
17084
17080
|
on the column it sizes, which is the more particular statement, and it is
|
|
@@ -17092,13 +17088,11 @@ to walk, so a render there knows of no columns and this attribute is the
|
|
|
17092
17088
|
whole answer: a table given one lays its grid out in the first paint, and a
|
|
17093
17089
|
table sized only by its columns is one track wide until it upgrades.
|
|
17094
17090
|
|
|
17095
|
-
|
|
17096
|
-
|
|
17097
|
-
|
|
17098
|
-
|
|
17099
|
-
|
|
17100
|
-
take the same CSS hook, `--table-columns` and `--data-table-columns`, which
|
|
17101
|
-
wins over whichever list the element worked out. */
|
|
17091
|
+
**Data Table has none of this, and should not.** Its columns are its schema
|
|
17092
|
+
rather than an option, so there is always a column to write a `width` on
|
|
17093
|
+
and a list here would be a second way to say what that says. This table's
|
|
17094
|
+
cells are markup, and a table written as rows of cells with no column
|
|
17095
|
+
declared in it has nowhere else to be sized from. */
|
|
17102
17096
|
"prop:columns"?: (HelixTable["columns"]) | undefined;
|
|
17103
17097
|
/** Accessible name for the table. */
|
|
17104
17098
|
"prop:label"?: (HelixTable["label"]) | undefined;
|
|
@@ -17907,8 +17901,8 @@ Absent uses the runtime's own. */
|
|
|
17907
17901
|
|
|
17908
17902
|
Absent is one. `range` holds a start and an end, `multiple` holds any
|
|
17909
17903
|
number, and both are carried as one comma-separated value, which is what a
|
|
17910
|
-
form submits. `
|
|
17911
|
-
why a wheel cannot do either. */
|
|
17904
|
+
form submits. `TimePicker` carries the longer note on the interaction and
|
|
17905
|
+
on why a wheel cannot do either. */
|
|
17912
17906
|
mode?: (HelixTimeInput["mode"]) | undefined;
|
|
17913
17907
|
/** What the field says before a time is in it. */
|
|
17914
17908
|
placeholder?: (HelixTimeInput["placeholder"]) | undefined;
|
|
@@ -17937,7 +17931,7 @@ never something this element would refuse to read back. */
|
|
|
17937
17931
|
`list` offers whole times, which is what a product with slots or opening
|
|
17938
17932
|
hours has. `wheels` splits them into an hour, a minute and a meridiem where
|
|
17939
17933
|
the locale uses one, which is the only way to reach `23:45` without
|
|
17940
|
-
scrolling most of a day. `
|
|
17934
|
+
scrolling most of a day. `TimePicker` carries the longer note on the trade.
|
|
17941
17935
|
|
|
17942
17936
|
**Optional rather than defaulted, which is not a style preference.** A
|
|
17943
17937
|
reflecting property with a default writes its attribute onto every host the
|
|
@@ -18095,8 +18089,8 @@ Absent uses the runtime's own. */
|
|
|
18095
18089
|
|
|
18096
18090
|
Absent is one. `range` holds a start and an end, `multiple` holds any
|
|
18097
18091
|
number, and both are carried as one comma-separated value, which is what a
|
|
18098
|
-
form submits. `
|
|
18099
|
-
why a wheel cannot do either. */
|
|
18092
|
+
form submits. `TimePicker` carries the longer note on the interaction and
|
|
18093
|
+
on why a wheel cannot do either. */
|
|
18100
18094
|
"prop:mode"?: (HelixTimeInput["mode"]) | undefined;
|
|
18101
18095
|
/** What the field says before a time is in it. */
|
|
18102
18096
|
"prop:placeholder"?: (HelixTimeInput["placeholder"]) | undefined;
|
|
@@ -18125,7 +18119,7 @@ never something this element would refuse to read back. */
|
|
|
18125
18119
|
`list` offers whole times, which is what a product with slots or opening
|
|
18126
18120
|
hours has. `wheels` splits them into an hour, a minute and a meridiem where
|
|
18127
18121
|
the locale uses one, which is the only way to reach `23:45` without
|
|
18128
|
-
scrolling most of a day. `
|
|
18122
|
+
scrolling most of a day. `TimePicker` carries the longer note on the trade.
|
|
18129
18123
|
|
|
18130
18124
|
**Optional rather than defaulted, which is not a style preference.** A
|
|
18131
18125
|
reflecting property with a default writes its attribute onto every host the
|
|
@@ -18260,7 +18254,7 @@ Absent uses the runtime's own. */
|
|
|
18260
18254
|
|
|
18261
18255
|
Absent is one. `range` holds a start and an end with everything between
|
|
18262
18256
|
them shown as part of the answer, `multiple` holds any number, and both are
|
|
18263
|
-
carried as one comma-separated value: the same shape `
|
|
18257
|
+
carried as one comma-separated value: the same shape `DatePicker` uses,
|
|
18264
18258
|
because it is the same question asked of a different unit.
|
|
18265
18259
|
|
|
18266
18260
|
**A range is two picks, and a third starts over.** That is the calendar's
|
|
@@ -18434,7 +18428,7 @@ Absent uses the runtime's own. */
|
|
|
18434
18428
|
|
|
18435
18429
|
Absent is one. `range` holds a start and an end with everything between
|
|
18436
18430
|
them shown as part of the answer, `multiple` holds any number, and both are
|
|
18437
|
-
carried as one comma-separated value: the same shape `
|
|
18431
|
+
carried as one comma-separated value: the same shape `DatePicker` uses,
|
|
18438
18432
|
because it is the same question asked of a different unit.
|
|
18439
18433
|
|
|
18440
18434
|
**A range is two picks, and a third starts over.** That is the calendar's
|
|
@@ -18715,7 +18709,7 @@ where they were would not be a stack.
|
|
|
18715
18709
|
**Optional, and bottom-end is the absence of it.** Reflecting *and*
|
|
18716
18710
|
defaulting is the pair that writes onto a host: every toast region anybody
|
|
18717
18711
|
rendered would gain a `placement="bottom-end"` nobody typed, which a React
|
|
18718
|
-
consumer's server markup does not have.
|
|
18712
|
+
consumer's server markup does not have. A sheet carries the resting
|
|
18719
18713
|
arrangement in its own `:host` rule and the selectors describe only the
|
|
18720
18714
|
departures, which is what `orientation` does. */
|
|
18721
18715
|
placement?: (HelixToast["placement"]) | undefined;
|
|
@@ -18736,7 +18730,7 @@ where they were would not be a stack.
|
|
|
18736
18730
|
**Optional, and bottom-end is the absence of it.** Reflecting *and*
|
|
18737
18731
|
defaulting is the pair that writes onto a host: every toast region anybody
|
|
18738
18732
|
rendered would gain a `placement="bottom-end"` nobody typed, which a React
|
|
18739
|
-
consumer's server markup does not have.
|
|
18733
|
+
consumer's server markup does not have. A sheet carries the resting
|
|
18740
18734
|
arrangement in its own `:host` rule and the selectors describe only the
|
|
18741
18735
|
departures, which is what `orientation` does. */
|
|
18742
18736
|
"prop:placement"?: (HelixToast["placement"]) | undefined;
|
|
@@ -18988,11 +18982,11 @@ attribute and the state is the property.
|
|
|
18988
18982
|
**The attribute, read when it is asked for, and never a snapshot taken in
|
|
18989
18983
|
the constructor.** A field initializer runs there, and an element the HTML
|
|
18990
18984
|
parser created has none of its attributes yet at that moment: measured on
|
|
18991
|
-
this element, on `Option` and on `Radio`, `<helix-toggle
|
|
18992
|
-
selected>` reported `defaultSelected` as `false` both from
|
|
18993
|
-
and from `createElement` followed by `setAttribute`, which is
|
|
18994
|
-
consumer writes one. The snapshot could only ever be true for
|
|
18995
|
-
already in the document when `customElements.define` ran.
|
|
18985
|
+
this element, on `Option` and on `Radio`, `<helix-headless-toggle
|
|
18986
|
+
value="light" selected>` reported `defaultSelected` as `false` both from
|
|
18987
|
+
parsed markup and from `createElement` followed by `setAttribute`, which is
|
|
18988
|
+
every way a consumer writes one. The snapshot could only ever be true for
|
|
18989
|
+
an element already in the document when `customElements.define` ran.
|
|
18996
18990
|
|
|
18997
18991
|
Nothing overwrites it either, which is what makes reading it late correct
|
|
18998
18992
|
rather than merely later: `selected` does not reflect, for the reason
|
|
@@ -19038,11 +19032,11 @@ attribute and the state is the property.
|
|
|
19038
19032
|
**The attribute, read when it is asked for, and never a snapshot taken in
|
|
19039
19033
|
the constructor.** A field initializer runs there, and an element the HTML
|
|
19040
19034
|
parser created has none of its attributes yet at that moment: measured on
|
|
19041
|
-
this element, on `Option` and on `Radio`, `<helix-toggle
|
|
19042
|
-
selected>` reported `defaultSelected` as `false` both from
|
|
19043
|
-
and from `createElement` followed by `setAttribute`, which is
|
|
19044
|
-
consumer writes one. The snapshot could only ever be true for
|
|
19045
|
-
already in the document when `customElements.define` ran.
|
|
19035
|
+
this element, on `Option` and on `Radio`, `<helix-headless-toggle
|
|
19036
|
+
value="light" selected>` reported `defaultSelected` as `false` both from
|
|
19037
|
+
parsed markup and from `createElement` followed by `setAttribute`, which is
|
|
19038
|
+
every way a consumer writes one. The snapshot could only ever be true for
|
|
19039
|
+
an element already in the document when `customElements.define` ran.
|
|
19046
19040
|
|
|
19047
19041
|
Nothing overwrites it either, which is what makes reading it late correct
|
|
19048
19042
|
rather than merely later: `selected` does not reflect, for the reason
|
|
@@ -21726,13 +21720,13 @@ export type CustomElements = {
|
|
|
21726
21720
|
* Unset shows all of them, which is what no limit means and is more useful
|
|
21727
21721
|
* than refusing to render.
|
|
21728
21722
|
*
|
|
21729
|
-
* **Reflected, because the fold is a stylesheet rule and nothing else.**
|
|
21730
|
-
*
|
|
21731
|
-
* so the attribute *is* the mechanism: a `max` that reaches this
|
|
21732
|
-
* never reaches the host matches no rule, and every avatar is
|
|
21733
|
-
* count claiming some are hidden. Markup is the safe path and
|
|
21734
|
-
* a script is the broken one, and React takes it for
|
|
21735
|
-
* matching property rather than an attribute.
|
|
21723
|
+
* **Reflected, because the fold is a stylesheet rule and nothing else.** A
|
|
21724
|
+
* sheet hides past the limit one selector per value, as `FOLDS_UP_TO`
|
|
21725
|
+
* describes, so the attribute *is* the mechanism: a `max` that reaches this
|
|
21726
|
+
* property and never reaches the host matches no rule, and every avatar is
|
|
21727
|
+
* drawn beside a count claiming some are hidden. Markup is the safe path and
|
|
21728
|
+
* hides the fault; a script is the broken one, and React takes it for
|
|
21729
|
+
* everyone, assigning a matching property rather than an attribute.
|
|
21736
21730
|
*
|
|
21737
21731
|
* **Optional rather than defaulted, per the rule that a reflected property
|
|
21738
21732
|
* takes no default**: `max = 0` would stamp `max="0"` onto every host that
|
|
@@ -22253,7 +22247,7 @@ export type CustomElements = {
|
|
|
22253
22247
|
* - `--bar-chart-line-width`: Thickness of a `lines` series, over `--chart-stroke`. (default: `undefined`)
|
|
22254
22248
|
* - `--chart-stroke`: Thickness of a `lines` series, one name across this family, Line Chart and Area Chart's top edge, since the three read one shared rule. `--bar-chart-line-width` overrides it here. (default: `undefined`)
|
|
22255
22249
|
* - `--bar-chart-axis`: How wide an axis column is drawn, in `ch`, from the widest number on it. Written on the axis itself, and only where the categories run along the bottom: turned sideways an axis is a row and takes a line's height instead. (default: `undefined`)
|
|
22256
|
-
* - `--bar-chart-secondary`: The color of the secondary axis
|
|
22250
|
+
* - `--bar-chart-secondary`: The color of the secondary axis, where one series owns it. Written by the component from that series' `--chart-series-*`, so it promises the series color and nothing more: whatever that hook resolves to is what the axis is drawn in. (default: `undefined`)
|
|
22257
22251
|
* - `--chart-bar-wash`: The gradient a bar would take, named per bar so the styled tier can point `fill` at it. Drawn whatever the treatment and used only where `wash="gradient"` asks for it. (default: `undefined`)
|
|
22258
22252
|
*
|
|
22259
22253
|
* ## CSS Parts
|
|
@@ -22381,12 +22375,12 @@ export type CustomElements = {
|
|
|
22381
22375
|
* - `current`: Whether this item is the page the reader is on.
|
|
22382
22376
|
* - `href`: Where the crumb goes, and nothing where it is the current page.
|
|
22383
22377
|
*
|
|
22384
|
-
* **Optional and reflected, because a stylesheet does select on it.**
|
|
22385
|
-
*
|
|
22386
|
-
*
|
|
22387
|
-
*
|
|
22388
|
-
* the
|
|
22389
|
-
*
|
|
22378
|
+
* **Optional and reflected, because a stylesheet does select on it.** A sheet
|
|
22379
|
+
* writes `:host(:not([href])) [part="link"]` to take the block padding off a
|
|
22380
|
+
* crumb that is not a link, so the attribute is what decides how tall a crumb
|
|
22381
|
+
* is. Unreflected, an `href` set from script reached the property, rendered
|
|
22382
|
+
* the anchor, and left the host looking unlinked: the crumb drew at 20px
|
|
22383
|
+
* where a markup twin drew at 28.
|
|
22390
22384
|
*
|
|
22391
22385
|
* Optional rather than defaulted, which is the general rule that a reflected
|
|
22392
22386
|
* property takes no default: an `href` written onto every host would be a link
|
|
@@ -22665,7 +22659,7 @@ export type CustomElements = {
|
|
|
22665
22659
|
* the same way `label` becomes `aria-label` in there.
|
|
22666
22660
|
*
|
|
22667
22661
|
* ```html
|
|
22668
|
-
* <helix-button commandfor="confirm" command="--show">Delete…</helix-button>
|
|
22662
|
+
* <helix-headless-button commandfor="confirm" command="--show">Delete…</helix-headless-button>
|
|
22669
22663
|
* ```
|
|
22670
22664
|
*
|
|
22671
22665
|
* `commandFor` spells its attribute out, because Lit lowercases a property
|
|
@@ -23221,13 +23215,13 @@ export type CustomElements = {
|
|
|
23221
23215
|
* **The number is published to the styles rather than enumerated by them**,
|
|
23222
23216
|
* as `--carousel-per-view` on the track, which is what keeps a width and a
|
|
23223
23217
|
* count from disagreeing. A sheet can only name a value it wrote a rule for,
|
|
23224
|
-
* so
|
|
23225
|
-
*
|
|
23226
|
-
*
|
|
23227
|
-
* three dots, a pane taking the whole track and five slides
|
|
23228
|
-
* dragging.
|
|
23229
|
-
*
|
|
23230
|
-
*
|
|
23218
|
+
* so a sheet enumerating `per-view="2"` through `5` is a ceiling of five, and
|
|
23219
|
+
* above it the pane falls back to one across while this file goes on counting
|
|
23220
|
+
* positions. Measured in Chromium over eight slides against such a sheet, six
|
|
23221
|
+
* across gave three dots, a pane taking the whole track and five slides
|
|
23222
|
+
* reachable only by dragging. Published from here there is no ceiling to
|
|
23223
|
+
* exceed, and every sheet reads the same declaration. `runEnd` publishes its
|
|
23224
|
+
* correction the same way and for the same reason.
|
|
23231
23225
|
*
|
|
23232
23226
|
* **On the track and not on the host.** A custom property on the host is a
|
|
23233
23227
|
* reflected attribute by another name: it would arrive on upgrade, and a
|
|
@@ -23252,8 +23246,8 @@ export type CustomElements = {
|
|
|
23252
23246
|
* `auto` track is handed nothing. A count stays for the design that calls for
|
|
23253
23247
|
* exactly three.
|
|
23254
23248
|
*
|
|
23255
|
-
*
|
|
23256
|
-
*
|
|
23249
|
+
* A sheet says how it divides, and the `auto` example here carries the same
|
|
23250
|
+
* three lines for a consumer writing their own.
|
|
23257
23251
|
*
|
|
23258
23252
|
* **A value rather than the resting behavior**, which is what the
|
|
23259
23253
|
* responsiveness policy asks of every axis that a box decides: a splitter
|
|
@@ -23626,13 +23620,13 @@ export type CustomElements = {
|
|
|
23626
23620
|
*
|
|
23627
23621
|
* **Not reflected, and the default is why.** A reflected property that
|
|
23628
23622
|
* defaults to true writes its attribute on upgrade whether or not the
|
|
23629
|
-
* consumer wrote one, so the server serves `<helix-chat label="x">`
|
|
23630
|
-
* client turns it into `<helix-chat label="x" pinned>`: a
|
|
23631
|
-
* React consumer reports and does not patch up. Nothing
|
|
23632
|
-
* either, because the one thing that changes with the pin
|
|
23633
|
-
* that is a part inside the shadow tree where a
|
|
23634
|
-
* it. Measured rather than assumed: `label,
|
|
23635
|
-
* `label` from the server.
|
|
23623
|
+
* consumer wrote one, so the server serves `<helix-headless-chat label="x">`
|
|
23624
|
+
* and the client turns it into `<helix-headless-chat label="x" pinned>`: a
|
|
23625
|
+
* hydration mismatch a React consumer reports and does not patch up. Nothing
|
|
23626
|
+
* needs the attribute either, because the one thing that changes with the pin
|
|
23627
|
+
* is the way back, and that is a part inside the shadow tree where a
|
|
23628
|
+
* stylesheet can already reach it. Measured rather than assumed: `label,
|
|
23629
|
+
* pinned` after upgrade against `label` from the server.
|
|
23636
23630
|
* - `threshold`: How near the bottom still counts as being at it, in pixels.
|
|
23637
23631
|
*
|
|
23638
23632
|
* A hook rather than a constant, because the right number depends on how tall
|
|
@@ -23682,7 +23676,7 @@ export type CustomElements = {
|
|
|
23682
23676
|
*
|
|
23683
23677
|
* Areas where markup can be added to the component.
|
|
23684
23678
|
*
|
|
23685
|
-
* - `(default)`: The turns
|
|
23679
|
+
* - `(default)`: The turns.
|
|
23686
23680
|
* - `composer`: Below the transcript, where the reader writes.
|
|
23687
23681
|
* - `header`: Above the transcript.
|
|
23688
23682
|
* - `resume`: The way back to the bottom.
|
|
@@ -24137,11 +24131,11 @@ export type CustomElements = {
|
|
|
24137
24131
|
* round. The platform already writes booleans like this for the same reason,
|
|
24138
24132
|
* `novalidate` and `nomodule` and `noreferrer` among them.
|
|
24139
24133
|
*
|
|
24140
|
-
* **Reflected, because the gutter is a stylesheet rule.**
|
|
24141
|
-
*
|
|
24142
|
-
*
|
|
24143
|
-
*
|
|
24144
|
-
*
|
|
24134
|
+
* **Reflected, because the gutter is a stylesheet rule.** A sheet reserves
|
|
24135
|
+
* the copy button's width with `:host(:not([no-copy]))`, so the attribute is
|
|
24136
|
+
* what decides whether the block pays for a control. Unreflected, setting it
|
|
24137
|
+
* from script takes the button away (`render` reads the property) and leaves
|
|
24138
|
+
* the 40px it stood in reserved.
|
|
24145
24139
|
*
|
|
24146
24140
|
* A false boolean reflects as the attribute's absence, so this costs no
|
|
24147
24141
|
* `no-copy=""` on hosts that never asked for one, and the rule about a
|
|
@@ -24667,10 +24661,10 @@ export type CustomElements = {
|
|
|
24667
24661
|
*
|
|
24668
24662
|
* **A color is exactly as requirable as a date**, which is the comparison
|
|
24669
24663
|
* that settles it: this element extends `HelixFormElement`, carries `name`
|
|
24670
|
-
* and reports its value, so a consumer writing
|
|
24671
|
-
*
|
|
24672
|
-
* to
|
|
24673
|
-
*
|
|
24664
|
+
* and reports its value, so a consumer writing `<helix-headless-color-picker
|
|
24665
|
+
* name="brand" required>` inside a form has every reason to expect the form
|
|
24666
|
+
* to refuse an empty one. Its two siblings in the same composition position,
|
|
24667
|
+
* Date Picker and Time Picker, both check it.
|
|
24674
24668
|
*
|
|
24675
24669
|
* Written out rather than taken from `MixinField`, for the reason those two
|
|
24676
24670
|
* record: the mixin brings a label, a hint and a feedback region, and this is
|
|
@@ -25015,7 +25009,7 @@ export type CustomElements = {
|
|
|
25015
25009
|
*
|
|
25016
25010
|
* Areas where markup can be added to the component.
|
|
25017
25011
|
*
|
|
25018
|
-
* - `(default)`: The options
|
|
25012
|
+
* - `(default)`: The options.
|
|
25019
25013
|
* - `end`: After it, for a unit or a clear button.
|
|
25020
25014
|
* - `indicator`: Replaces the caret saying the field opens.
|
|
25021
25015
|
* - `start`: Before the text, for an icon.
|
|
@@ -25202,7 +25196,7 @@ export type CustomElements = {
|
|
|
25202
25196
|
*
|
|
25203
25197
|
* Areas where markup can be added to the component.
|
|
25204
25198
|
*
|
|
25205
|
-
* - `(default)`: The commands,
|
|
25199
|
+
* - `(default)`: The commands, and any groups of them.
|
|
25206
25200
|
* - `footer`: Under the list, for the keys a reader can press.
|
|
25207
25201
|
*
|
|
25208
25202
|
* ## Methods
|
|
@@ -25311,7 +25305,7 @@ export type CustomElements = {
|
|
|
25311
25305
|
* the same way `label` becomes `aria-label` in there.
|
|
25312
25306
|
*
|
|
25313
25307
|
* ```html
|
|
25314
|
-
* <helix-button commandfor="confirm" command="--show">Delete…</helix-button>
|
|
25308
|
+
* <helix-headless-button commandfor="confirm" command="--show">Delete…</helix-headless-button>
|
|
25315
25309
|
* ```
|
|
25316
25310
|
*
|
|
25317
25311
|
* `commandFor` spells its attribute out, because Lit lowercases a property
|
|
@@ -25617,9 +25611,9 @@ export type CustomElements = {
|
|
|
25617
25611
|
*
|
|
25618
25612
|
* **It announces nothing, and that is not an omission.** Nothing in this
|
|
25619
25613
|
* element ever asks for a different page size: a size selector is
|
|
25620
|
-
* `
|
|
25621
|
-
*
|
|
25622
|
-
*
|
|
25614
|
+
* `PaginationSize`, which a consumer puts in the `footer` slot and answers
|
|
25615
|
+
* themselves. Routing this through `requestChange` would announce an event
|
|
25616
|
+
* the element never has cause to fire.
|
|
25623
25617
|
* - `total`: How many rows the whole result has, where this element cannot count them.
|
|
25624
25618
|
*
|
|
25625
25619
|
* Only read in `server` mode, where `rows` is one page and its length says
|
|
@@ -25699,7 +25693,7 @@ export type CustomElements = {
|
|
|
25699
25693
|
*
|
|
25700
25694
|
* Areas where markup can be added to the component.
|
|
25701
25695
|
*
|
|
25702
|
-
* - `(default)`: The columns, declared
|
|
25696
|
+
* - `(default)`: The columns, declared rather than drawn.
|
|
25703
25697
|
* - `footer`: Below the grid, replacing the pagination this would otherwise draw.
|
|
25704
25698
|
* - `toolbar`: Above the grid, for a search field or actions.
|
|
25705
25699
|
*
|
|
@@ -25744,8 +25738,8 @@ export type CustomElements = {
|
|
|
25744
25738
|
* - `--data-table-padding-inline`: Space either side of a cell's content. (default: `undefined`)
|
|
25745
25739
|
* - `--data-table-rule-color`: Color of the hairline between rows. A color and not a border: it lands in the color slot of a shorthand, so a whole border written into it produces invalid CSS and drops the rule. Drawn on the cells rather than the row, which is `display: contents` and measures `0px`. (default: `undefined`)
|
|
25746
25740
|
* - `--data-table-text`: Type size, headings and cells alike. (default: `undefined`)
|
|
25747
|
-
* - `--data-table-cell-align`: The edge the column a cell sits under is set to, `start`, `center` or `end`, and unset under a column that sets none. Written by the component onto each cell it draws, read by the sheet that paints one;
|
|
25748
|
-
* - `--data-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.
|
|
25741
|
+
* - `--data-table-cell-align`: The edge the column a cell sits under is set to, `start`, `center` or `end`, and unset under a column that sets none. Written by the component onto each cell it draws, read by the sheet that paints one; Table publishes `--table-cell-align` for the same attribute on the cells a consumer wrote, under its own family's name. (default: `undefined`)
|
|
25742
|
+
* - `--data-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. A column's `width` is the one to set. (default: `undefined`)
|
|
25749
25743
|
*
|
|
25750
25744
|
* ## CSS Parts
|
|
25751
25745
|
*
|
|
@@ -27072,10 +27066,10 @@ export type CustomElements = {
|
|
|
27072
27066
|
* not, rather than shown or hidden by CSS.
|
|
27073
27067
|
* - `placement`: Which edge the drawer comes from.
|
|
27074
27068
|
*
|
|
27075
|
-
* Unset is `end`,
|
|
27076
|
-
* beside `:host([placement="end"])` rather than as a value written here: a
|
|
27069
|
+
* Unset is `end`, and it stays unset rather than being written down: a
|
|
27077
27070
|
* default assigned to the property would reflect onto every host and put a
|
|
27078
|
-
* `placement="end"` into markup no consumer wrote.
|
|
27071
|
+
* `placement="end"` into markup no consumer wrote. So what this tier
|
|
27072
|
+
* guarantees is the absence, and a sheet selects on it.
|
|
27079
27073
|
* - `returnValue`: What the dialog closed with, the way `<dialog>` reports it.
|
|
27080
27074
|
*
|
|
27081
27075
|
* **The whole point of a `<dialog>` returning a value is lost behind a shadow
|
|
@@ -27872,7 +27866,13 @@ export type CustomElements = {
|
|
|
27872
27866
|
* - `fields`: The fields declared inside this, in the order they were written.
|
|
27873
27867
|
*
|
|
27874
27868
|
* What a render may know of them: none on a server, whose shim has no tree
|
|
27875
|
-
* and threw here, and none while hydrating what one sent.
|
|
27869
|
+
* and threw here, and none while hydrating what one sent.
|
|
27870
|
+
*
|
|
27871
|
+
* By identity rather than by tag. A list of names can only hold the tags this
|
|
27872
|
+
* package knows about, so it misses any third one, which is what subclassing
|
|
27873
|
+
* a headless element produces, and it is also how a headless package learns a
|
|
27874
|
+
* styled tag. `instanceof` answers for every one of them and proves the type
|
|
27875
|
+
* the signature claims. (property only) (readonly)
|
|
27876
27876
|
* - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
|
|
27877
27877
|
*
|
|
27878
27878
|
* **Named `whenSettled` because `settled` is taken four times over**, by
|
|
@@ -28396,11 +28396,12 @@ export type CustomElements = {
|
|
|
28396
28396
|
* would give.
|
|
28397
28397
|
*
|
|
28398
28398
|
* **The element's own text is read as a fallback, and only in a browser.**
|
|
28399
|
-
* `<helix-
|
|
28400
|
-
*
|
|
28401
|
-
*
|
|
28402
|
-
*
|
|
28403
|
-
*
|
|
28399
|
+
* `<helix-headless-format-date
|
|
28400
|
+
* elapsed>2026-08-27T01:00:00Z</helix-headless-format-date>` is the spelling
|
|
28401
|
+
* that reads best in markup, and it cannot be the only one: measured against
|
|
28402
|
+
* Lit's server shim, `textContent`, `children`, `firstChild` and
|
|
28403
|
+
* `querySelector` are all `undefined` there, so a server has no way to see
|
|
28404
|
+
* it. An element rendered on a server needs the attribute; one rendered in a
|
|
28404
28405
|
* browser may use either.
|
|
28405
28406
|
* - `day`: How the day of the month is written, where a date is shown.
|
|
28406
28407
|
* - `elapsed`: Show how long ago it was, compactly, instead of the date.
|
|
@@ -28561,12 +28562,12 @@ export type CustomElements = {
|
|
|
28561
28562
|
* consumer has to keep by hand, and the one number a summary is told to trust
|
|
28562
28563
|
* is the one it gets wrong.
|
|
28563
28564
|
*
|
|
28564
|
-
* The strip measures itself, so
|
|
28565
|
-
*
|
|
28566
|
-
*
|
|
28567
|
-
*
|
|
28568
|
-
*
|
|
28569
|
-
*
|
|
28565
|
+
* The strip measures itself, so sizing the cells in a sheet is enough on its
|
|
28566
|
+
* own and these two are the estimate used until the first measurement lands.
|
|
28567
|
+
* Writing the attribute pins the value and stops the measurement being
|
|
28568
|
+
* consulted, which is what a container query or a transition on the cell size
|
|
28569
|
+
* wants, where what is drawn this frame is not what the arithmetic should
|
|
28570
|
+
* plan around.
|
|
28570
28571
|
*
|
|
28571
28572
|
* Zero turns the dropping off altogether, which is right for a strip in a
|
|
28572
28573
|
* container that cannot get narrow.
|
|
@@ -28820,7 +28821,7 @@ export type CustomElements = {
|
|
|
28820
28821
|
* the same way `label` becomes `aria-label` in there.
|
|
28821
28822
|
*
|
|
28822
28823
|
* ```html
|
|
28823
|
-
* <helix-button commandfor="confirm" command="--show">Delete…</helix-button>
|
|
28824
|
+
* <helix-headless-button commandfor="confirm" command="--show">Delete…</helix-headless-button>
|
|
28824
28825
|
* ```
|
|
28825
28826
|
*
|
|
28826
28827
|
* `commandFor` spells its attribute out, because Lit lowercases a property
|
|
@@ -29129,10 +29130,10 @@ export type CustomElements = {
|
|
|
29129
29130
|
* **Mirrored to `data-status`, and not reflected as `status`.** It is element
|
|
29130
29131
|
* state, so reflecting it puts the element's own bookkeeping into the markup
|
|
29131
29132
|
* a consumer rendered: React reads the attribute appearing at upgrade as a
|
|
29132
|
-
* hydration mismatch, and a
|
|
29133
|
-
*
|
|
29134
|
-
*
|
|
29135
|
-
*
|
|
29133
|
+
* hydration mismatch, and a host pasted back carrying `status="loaded"`
|
|
29134
|
+
* declares that a picture has arrived which this element has never fetched.
|
|
29135
|
+
* The `data-` name is the library's answer to both, being a name a re-parse
|
|
29136
|
+
* cannot mistake for a declaration, and it is what `data-closed` on
|
|
29136
29137
|
* `Toast.Item` already does. A picture arrives after somebody fetched it,
|
|
29137
29138
|
* which puts this on the safe side of hydration: a fact that can be true on
|
|
29138
29139
|
* the *first* update mirrors to a custom state instead, which is what
|
|
@@ -29262,10 +29263,10 @@ export type CustomElements = {
|
|
|
29262
29263
|
* **The attribute is `readonly`, which is the platform's spelling.** A
|
|
29263
29264
|
* camelCase property needs an explicit `attribute`, and dash-casing a word
|
|
29264
29265
|
* HTML writes as one costs what an attribute always costs here: nothing
|
|
29265
|
-
* warns. `<helix-input readonly>` is what anybody who has written
|
|
29266
|
-
* against `read-only` it parses to no property at all, and the
|
|
29267
|
-
* editable with no error anywhere. Measured on the dash-cased
|
|
29268
|
-
* came back `false`.
|
|
29266
|
+
* warns. `<helix-headless-input readonly>` is what anybody who has written
|
|
29267
|
+
* HTML types; against `read-only` it parses to no property at all, and the
|
|
29268
|
+
* field stays editable with no error anywhere. Measured on the dash-cased
|
|
29269
|
+
* form, `readOnly` came back `false`.
|
|
29269
29270
|
* - `reveal`: Whether a password field offers a toggle that shows what was typed.
|
|
29270
29271
|
*
|
|
29271
29272
|
* Ignored on every other type. A reveal on an email field would be a button
|
|
@@ -29279,9 +29280,9 @@ export type CustomElements = {
|
|
|
29279
29280
|
*
|
|
29280
29281
|
* **Not reflected.** Reflection exists so a selector can reach a value, and
|
|
29281
29282
|
* no stylesheet in this repository selects on `type`. Reflecting it writes
|
|
29282
|
-
* `type="text"` onto every `<helix-input>` ever rendered, an
|
|
29283
|
-
* consumer's markup has, which is the fault the area rules write
|
|
29284
|
-
* `Button`'s `href`, `target` and `rel`.
|
|
29283
|
+
* `type="text"` onto every `<helix-headless-input>` ever rendered, an
|
|
29284
|
+
* attribute no consumer's markup has, which is the fault the area rules write
|
|
29285
|
+
* up under `Button`'s `href`, `target` and `rel`.
|
|
29285
29286
|
*
|
|
29286
29287
|
* Nothing reads it from the attribute either. The real `<input>` inside takes
|
|
29287
29288
|
* it as a property binding, which is what makes the keyboard and the
|
|
@@ -29825,8 +29826,7 @@ export type CustomElements = {
|
|
|
29825
29826
|
* over something busy. `triangle` points along the axis and reads as "and
|
|
29826
29827
|
* onward" rather than as a second claim about the data.
|
|
29827
29828
|
*
|
|
29828
|
-
* The shapes come from
|
|
29829
|
-
* `helix/styled/src/shared/chart/terminus.css`, the same sheet `Sparkline` takes, so
|
|
29829
|
+
* The shapes come from one shared sheet, the same one `Sparkline` takes, so
|
|
29830
29830
|
* the set is identical wherever one appears. **Which is why every value is
|
|
29831
29831
|
* named here.** `Sparkline` shipped `square` implemented, drawn, asserted and
|
|
29832
29832
|
* undocumented until the cohort before this one; this family reads the same
|
|
@@ -30097,10 +30097,10 @@ export type CustomElements = {
|
|
|
30097
30097
|
* - `label`: Accessible name for the set.
|
|
30098
30098
|
* - `type`: Which markers an ordered list draws, in `<ol type>`'s own five values.
|
|
30099
30099
|
*
|
|
30100
|
-
* Reflected, because this is one of the things a stylesheet selects on
|
|
30101
|
-
*
|
|
30102
|
-
*
|
|
30103
|
-
*
|
|
30100
|
+
* Reflected, because this is one of the things a stylesheet selects on, each
|
|
30101
|
+
* value mapping to a `list-style-type`. The platform's spellings rather than
|
|
30102
|
+
* the CSS ones, so `<helix-headless-list kind="ordered" type="i">` is what a
|
|
30103
|
+
* consumer would have written on an `<ol>`.
|
|
30104
30104
|
*
|
|
30105
30105
|
* **`start` and `reversed` are both absent and neither can be done here.**
|
|
30106
30106
|
* This renders no `<ol>`: the rows are slotted and numbered by the CSS
|
|
@@ -31347,10 +31347,10 @@ export type CustomElements = {
|
|
|
31347
31347
|
*
|
|
31348
31348
|
* **Not reflected.** Unread is a visual state, which is why the four mixins
|
|
31349
31349
|
* mirror theirs, but the mirror may not be the property's own attribute:
|
|
31350
|
-
* `<helix-notification default-read>` comes back from a server
|
|
31351
|
-
* and would gain it on the first update, which React reports
|
|
31352
|
-
* mismatch, and which a copy of the serialized element
|
|
31353
|
-
* declaration. `:state(read)` is what the stylesheet reads.
|
|
31350
|
+
* `<helix-headless-notification default-read>` comes back from a server
|
|
31351
|
+
* without `read` and would gain it on the first update, which React reports
|
|
31352
|
+
* as a hydration mismatch, and which a copy of the serialized element
|
|
31353
|
+
* re-parses as a declaration. `:state(read)` is what the stylesheet reads.
|
|
31354
31354
|
* `hydration.dom.spec.ts` holds it.
|
|
31355
31355
|
* - `default-read`/`defaultRead`: State to open with, where nothing declared one.
|
|
31356
31356
|
* - `locale`: Locale for the timestamp.
|
|
@@ -31546,7 +31546,7 @@ export type CustomElements = {
|
|
|
31546
31546
|
*
|
|
31547
31547
|
* Areas where markup can be added to the component.
|
|
31548
31548
|
*
|
|
31549
|
-
* - `(default)`: The notifications
|
|
31549
|
+
* - `(default)`: The notifications.
|
|
31550
31550
|
* - `footer`: Below the list, for a link to everything.
|
|
31551
31551
|
* - `header`: Above the list, for a title and the mark-all control.
|
|
31552
31552
|
*
|
|
@@ -32088,7 +32088,7 @@ export type CustomElements = {
|
|
|
32088
32088
|
* **The attribute, read when it is asked for, and never a snapshot taken in
|
|
32089
32089
|
* the constructor.** A field initializer runs there, and an element the HTML
|
|
32090
32090
|
* parser created has none of its attributes yet at that moment: measured on
|
|
32091
|
-
* this element, on `Radio` and on `Toggle`, `<helix-option value="a"
|
|
32091
|
+
* this element, on `Radio` and on `Toggle`, `<helix-headless-option value="a"
|
|
32092
32092
|
* selected>` reported `defaultSelected` as `false` both from parsed markup
|
|
32093
32093
|
* and from `createElement` followed by `setAttribute`, which is every way a
|
|
32094
32094
|
* consumer writes one. The snapshot could only ever be true for an element
|
|
@@ -32830,10 +32830,10 @@ export type CustomElements = {
|
|
|
32830
32830
|
* marked letters wants `text`, which judges nothing.
|
|
32831
32831
|
*
|
|
32832
32832
|
* **Not reflected**: nothing selects on it, so reflecting only writes
|
|
32833
|
-
* `type="numeric"` onto every `<helix-pin-input>` ever rendered, an
|
|
32834
|
-
* no consumer's markup had. The area rules carry the sentence
|
|
32835
|
-
* what CSS selects on". The real inputs take it as a binding,
|
|
32836
|
-
* makes the keyboard follow.
|
|
32833
|
+
* `type="numeric"` onto every `<helix-headless-pin-input>` ever rendered, an
|
|
32834
|
+
* attribute no consumer's markup had. The area rules carry the sentence
|
|
32835
|
+
* "reflect only what CSS selects on". The real inputs take it as a binding,
|
|
32836
|
+
* which is what makes the keyboard follow.
|
|
32837
32837
|
* - `disabled`: Whether the control is non-interactive.
|
|
32838
32838
|
*
|
|
32839
32839
|
* Reflected, because the styled tier selects on it, and mirrored to
|
|
@@ -33612,7 +33612,7 @@ export type CustomElements = {
|
|
|
33612
33612
|
* **The attribute, read when it is asked for, and never a snapshot taken in
|
|
33613
33613
|
* the constructor.** A field initializer runs there, and an element the HTML
|
|
33614
33614
|
* parser created has none of its attributes yet at that moment: measured on
|
|
33615
|
-
* this element, on `Option` and on `Toggle`, `<helix-radio value="a"
|
|
33615
|
+
* this element, on `Option` and on `Toggle`, `<helix-headless-radio value="a"
|
|
33616
33616
|
* selected>` reported `defaultSelected` as `false` both from parsed markup
|
|
33617
33617
|
* and from `createElement` followed by `setAttribute`, which is every way a
|
|
33618
33618
|
* consumer writes one. The snapshot could only ever be true for an element
|
|
@@ -36094,9 +36094,9 @@ export type CustomElements = {
|
|
|
36094
36094
|
* The row directions set them side by side, for a figure in a line of text or
|
|
36095
36095
|
* a narrow strip where a stacked pair would be two lines of almost nothing.
|
|
36096
36096
|
*
|
|
36097
|
-
* A property rather than a `
|
|
36098
|
-
*
|
|
36099
|
-
*
|
|
36097
|
+
* A property rather than a `Flex` around it, because the unit has to stay on
|
|
36098
|
+
* the value's baseline whichever way the pair goes, and only this element
|
|
36099
|
+
* knows which of its children the unit belongs to.
|
|
36100
36100
|
*
|
|
36101
36101
|
* **Optional rather than defaulted to `column`, which is not a style
|
|
36102
36102
|
* preference.** A reflecting property with a default writes its attribute onto
|
|
@@ -36231,7 +36231,7 @@ export type CustomElements = {
|
|
|
36231
36231
|
*
|
|
36232
36232
|
* Areas where markup can be added to the component.
|
|
36233
36233
|
*
|
|
36234
|
-
* - `(default)`: The steps
|
|
36234
|
+
* - `(default)`: The steps.
|
|
36235
36235
|
*
|
|
36236
36236
|
* ## Methods
|
|
36237
36237
|
*
|
|
@@ -36308,7 +36308,7 @@ export type CustomElements = {
|
|
|
36308
36308
|
* Areas where markup can be added to the component.
|
|
36309
36309
|
*
|
|
36310
36310
|
* - `(default)`: The step's name.
|
|
36311
|
-
* - `content`: What the stage holds. Always rendered here, a tier with no stylesheet having nothing to fold it with
|
|
36311
|
+
* - `content`: What the stage holds. Always rendered here, a tier with no stylesheet having nothing to fold it with, so whether it is folded away is the sheet's answer and not this tier's.
|
|
36312
36312
|
* - `description`: A line under the name, for what the stage is for.
|
|
36313
36313
|
* - `marker`: Replaces the number, or the check a complete step shows.
|
|
36314
36314
|
*
|
|
@@ -36325,7 +36325,7 @@ export type CustomElements = {
|
|
|
36325
36325
|
* - `body`: The name and its description.
|
|
36326
36326
|
* - `content`: What the stage holds, while it is open.
|
|
36327
36327
|
* - `description`: The line under it.
|
|
36328
|
-
* - `label`: The step's name, which is a
|
|
36328
|
+
* - `label`: The step's name, which is a control.
|
|
36329
36329
|
* - `label-button`: The inner control.
|
|
36330
36330
|
* - `lead`: The half line arriving from the step before.
|
|
36331
36331
|
* - `mark`: The glyph inside the marker: a tick, a dot, or an empty ring.
|
|
@@ -36596,15 +36596,15 @@ export type CustomElements = {
|
|
|
36596
36596
|
*
|
|
36597
36597
|
* - `align`: Which edge the values line up against.
|
|
36598
36598
|
*
|
|
36599
|
-
* `end` is what a column of numbers wants, so digits of the same magnitude
|
|
36600
|
-
* above each other. Left unset the cell inherits the table's own
|
|
36601
|
-
* which is `start` for text in either writing direction.
|
|
36602
|
-
* aligns the cells it draws. A `
|
|
36603
|
-
* wrote, so the table writes nothing onto them: it publishes the
|
|
36604
|
-
* cell under this column as `--table-cell-align`, which
|
|
36605
|
-
* reads. The heading is this element's own, and
|
|
36606
|
-
* the same edge in either table. `end` is the
|
|
36607
|
-
* right-to-left table it is the left.
|
|
36599
|
+
* `end` is what a column of numbers wants, so digits of the same magnitude
|
|
36600
|
+
* sit above each other. Left unset the cell inherits the table's own
|
|
36601
|
+
* alignment, which is `start` for text in either writing direction.
|
|
36602
|
+
* `DataTable` aligns the cells it draws. A `Table`'s cells are markup the
|
|
36603
|
+
* consumer wrote, so the table writes nothing onto them: it publishes the
|
|
36604
|
+
* edge to each cell under this column as `--table-cell-align`, which
|
|
36605
|
+
* `@fusion.dev/helix` reads. The heading is this element's own, and
|
|
36606
|
+
* `@fusion.dev/helix` sets it to the same edge in either table. `end` is the
|
|
36607
|
+
* inline end, so in a right-to-left table it is the left.
|
|
36608
36608
|
*
|
|
36609
36609
|
* **Reflected, because the heading is drawn by a stylesheet and has no other
|
|
36610
36610
|
* way to learn it.** Set as a property, which is how React sets it, an
|
|
@@ -36647,8 +36647,8 @@ export type CustomElements = {
|
|
|
36647
36647
|
* - `width`: The track this column takes, as CSS.
|
|
36648
36648
|
*
|
|
36649
36649
|
* A single track value, so anything valid in `grid-template-columns` works:
|
|
36650
|
-
* `16rem`, `auto`, `minmax(0, 2fr)`. Left unset the column takes the track
|
|
36651
|
-
*
|
|
36650
|
+
* `16rem`, `auto`, `minmax(0, 2fr)`. Left unset the column takes the track in
|
|
36651
|
+
* its place in a `Table`'s `columns`, where that table sets one, and
|
|
36652
36652
|
* otherwise shares what is left over equally, as `minmax(max-content, 1fr)`.
|
|
36653
36653
|
* Set here, it wins over that list, which is what lets a reader resize a
|
|
36654
36654
|
* column in a table that set one.
|
|
@@ -36767,15 +36767,14 @@ export type CustomElements = {
|
|
|
36767
36767
|
* - `loading-text`/`loadingText`: What is said while they are on their way.
|
|
36768
36768
|
* - `columns`: The column widths as one track list, written once on the table.
|
|
36769
36769
|
*
|
|
36770
|
-
* With `
|
|
36771
|
-
*
|
|
36772
|
-
*
|
|
36773
|
-
*
|
|
36774
|
-
*
|
|
36775
|
-
*
|
|
36776
|
-
*
|
|
36777
|
-
*
|
|
36778
|
-
* down to one column.
|
|
36770
|
+
* With `TableColumn` children, each track sizes the column in its place, a
|
|
36771
|
+
* hidden column counted, so hiding one takes its track with it and the rest
|
|
36772
|
+
* keep theirs. The columns decide how many tracks there are and this list
|
|
36773
|
+
* only how wide: a track past the last column is dropped, and a column past
|
|
36774
|
+
* the last track shares what is left. With no columns declared it is the
|
|
36775
|
+
* whole track list. Tracks count as the grid counts them, so `minmax(0, 1fr)`
|
|
36776
|
+
* is one and `repeat(2, 8rem)` is two, and one the grid would refuse leaves
|
|
36777
|
+
* its column at the default rather than taking the table down to one column.
|
|
36779
36778
|
*
|
|
36780
36779
|
* **A column's own `width` wins over its track here.** The width is written
|
|
36781
36780
|
* on the column it sizes, which is the more particular statement, and it is
|
|
@@ -36789,13 +36788,11 @@ export type CustomElements = {
|
|
|
36789
36788
|
* whole answer: a table given one lays its grid out in the first paint, and a
|
|
36790
36789
|
* table sized only by its columns is one track wide until it upgrades.
|
|
36791
36790
|
*
|
|
36792
|
-
*
|
|
36793
|
-
*
|
|
36794
|
-
*
|
|
36795
|
-
*
|
|
36796
|
-
*
|
|
36797
|
-
* take the same CSS hook, `--table-columns` and `--data-table-columns`, which
|
|
36798
|
-
* wins over whichever list the element worked out.
|
|
36791
|
+
* **Data Table has none of this, and should not.** Its columns are its schema
|
|
36792
|
+
* rather than an option, so there is always a column to write a `width` on
|
|
36793
|
+
* and a list here would be a second way to say what that says. This table's
|
|
36794
|
+
* cells are markup, and a table written as rows of cells with no column
|
|
36795
|
+
* declared in it has nowhere else to be sized from.
|
|
36799
36796
|
* - `label`: Accessible name for the table.
|
|
36800
36797
|
* - `tableColumns`: The columns declared as children, in the order they are written. (property only) (readonly)
|
|
36801
36798
|
* - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
|
|
@@ -36830,7 +36827,7 @@ export type CustomElements = {
|
|
|
36830
36827
|
* CSS variables available for styling the component.
|
|
36831
36828
|
*
|
|
36832
36829
|
* - `--table-columns`: Track list for the columns, which wins over the one the columns worked out. (default: `undefined`)
|
|
36833
|
-
* - `--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.
|
|
36830
|
+
* - `--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. `columns` is the one to set. (default: `undefined`)
|
|
36834
36831
|
*
|
|
36835
36832
|
* ## CSS Parts
|
|
36836
36833
|
*
|
|
@@ -37643,8 +37640,8 @@ export type CustomElements = {
|
|
|
37643
37640
|
*
|
|
37644
37641
|
* Absent is one. `range` holds a start and an end, `multiple` holds any
|
|
37645
37642
|
* number, and both are carried as one comma-separated value, which is what a
|
|
37646
|
-
* form submits. `
|
|
37647
|
-
* why a wheel cannot do either.
|
|
37643
|
+
* form submits. `TimePicker` carries the longer note on the interaction and
|
|
37644
|
+
* on why a wheel cannot do either.
|
|
37648
37645
|
* - `placeholder`: What the field says before a time is in it.
|
|
37649
37646
|
* - `step`: How far apart the offered times are, in minutes.
|
|
37650
37647
|
* - `time-style`/`timeStyle`: Whether the field writes the time out, or holds the value as it is.
|
|
@@ -37659,7 +37656,7 @@ export type CustomElements = {
|
|
|
37659
37656
|
* `list` offers whole times, which is what a product with slots or opening
|
|
37660
37657
|
* hours has. `wheels` splits them into an hour, a minute and a meridiem where
|
|
37661
37658
|
* the locale uses one, which is the only way to reach `23:45` without
|
|
37662
|
-
* scrolling most of a day. `
|
|
37659
|
+
* scrolling most of a day. `TimePicker` carries the longer note on the trade.
|
|
37663
37660
|
*
|
|
37664
37661
|
* **Optional rather than defaulted, which is not a style preference.** A
|
|
37665
37662
|
* reflecting property with a default writes its attribute onto every host the
|
|
@@ -37919,7 +37916,7 @@ export type CustomElements = {
|
|
|
37919
37916
|
*
|
|
37920
37917
|
* Absent is one. `range` holds a start and an end with everything between
|
|
37921
37918
|
* them shown as part of the answer, `multiple` holds any number, and both are
|
|
37922
|
-
* carried as one comma-separated value: the same shape `
|
|
37919
|
+
* carried as one comma-separated value: the same shape `DatePicker` uses,
|
|
37923
37920
|
* because it is the same question asked of a different unit.
|
|
37924
37921
|
*
|
|
37925
37922
|
* **A range is two picks, and a third starts over.** That is the calendar's
|
|
@@ -38436,7 +38433,7 @@ export type CustomElements = {
|
|
|
38436
38433
|
* **Optional, and bottom-end is the absence of it.** Reflecting *and*
|
|
38437
38434
|
* defaulting is the pair that writes onto a host: every toast region anybody
|
|
38438
38435
|
* rendered would gain a `placement="bottom-end"` nobody typed, which a React
|
|
38439
|
-
* consumer's server markup does not have.
|
|
38436
|
+
* consumer's server markup does not have. A sheet carries the resting
|
|
38440
38437
|
* arrangement in its own `:host` rule and the selectors describe only the
|
|
38441
38438
|
* departures, which is what `orientation` does.
|
|
38442
38439
|
* - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
|
|
@@ -38470,7 +38467,7 @@ export type CustomElements = {
|
|
|
38470
38467
|
*
|
|
38471
38468
|
* Areas where markup can be added to the component.
|
|
38472
38469
|
*
|
|
38473
|
-
* - `(default)`: The messages
|
|
38470
|
+
* - `(default)`: The messages.
|
|
38474
38471
|
*
|
|
38475
38472
|
* ## CSS Custom Properties
|
|
38476
38473
|
*
|
|
@@ -38716,11 +38713,11 @@ export type CustomElements = {
|
|
|
38716
38713
|
* **The attribute, read when it is asked for, and never a snapshot taken in
|
|
38717
38714
|
* the constructor.** A field initializer runs there, and an element the HTML
|
|
38718
38715
|
* parser created has none of its attributes yet at that moment: measured on
|
|
38719
|
-
* this element, on `Option` and on `Radio`, `<helix-toggle
|
|
38720
|
-
* selected>` reported `defaultSelected` as `false` both from
|
|
38721
|
-
* and from `createElement` followed by `setAttribute`, which is
|
|
38722
|
-
* consumer writes one. The snapshot could only ever be true for
|
|
38723
|
-
* already in the document when `customElements.define` ran.
|
|
38716
|
+
* this element, on `Option` and on `Radio`, `<helix-headless-toggle
|
|
38717
|
+
* value="light" selected>` reported `defaultSelected` as `false` both from
|
|
38718
|
+
* parsed markup and from `createElement` followed by `setAttribute`, which is
|
|
38719
|
+
* every way a consumer writes one. The snapshot could only ever be true for
|
|
38720
|
+
* an element already in the document when `customElements.define` ran.
|
|
38724
38721
|
*
|
|
38725
38722
|
* Nothing overwrites it either, which is what makes reading it late correct
|
|
38726
38723
|
* rather than merely later: `selected` does not reflect, for the reason
|
|
@@ -39935,7 +39932,7 @@ export type CustomElements = {
|
|
|
39935
39932
|
* Areas where markup can be added to the component.
|
|
39936
39933
|
*
|
|
39937
39934
|
* - `(default)`: The entries.
|
|
39938
|
-
* - `player`: The
|
|
39935
|
+
* - `player`: The player the entries take turns in.
|
|
39939
39936
|
*
|
|
39940
39937
|
* ## Methods
|
|
39941
39938
|
*
|
|
@@ -41241,13 +41238,13 @@ export type CustomElementsSolidJs = {
|
|
|
41241
41238
|
* Unset shows all of them, which is what no limit means and is more useful
|
|
41242
41239
|
* than refusing to render.
|
|
41243
41240
|
*
|
|
41244
|
-
* **Reflected, because the fold is a stylesheet rule and nothing else.**
|
|
41245
|
-
*
|
|
41246
|
-
* so the attribute *is* the mechanism: a `max` that reaches this
|
|
41247
|
-
* never reaches the host matches no rule, and every avatar is
|
|
41248
|
-
* count claiming some are hidden. Markup is the safe path and
|
|
41249
|
-
* a script is the broken one, and React takes it for
|
|
41250
|
-
* matching property rather than an attribute.
|
|
41241
|
+
* **Reflected, because the fold is a stylesheet rule and nothing else.** A
|
|
41242
|
+
* sheet hides past the limit one selector per value, as `FOLDS_UP_TO`
|
|
41243
|
+
* describes, so the attribute *is* the mechanism: a `max` that reaches this
|
|
41244
|
+
* property and never reaches the host matches no rule, and every avatar is
|
|
41245
|
+
* drawn beside a count claiming some are hidden. Markup is the safe path and
|
|
41246
|
+
* hides the fault; a script is the broken one, and React takes it for
|
|
41247
|
+
* everyone, assigning a matching property rather than an attribute.
|
|
41251
41248
|
*
|
|
41252
41249
|
* **Optional rather than defaulted, per the rule that a reflected property
|
|
41253
41250
|
* takes no default**: `max = 0` would stamp `max="0"` onto every host that
|
|
@@ -41779,7 +41776,7 @@ export type CustomElementsSolidJs = {
|
|
|
41779
41776
|
* - `--bar-chart-line-width`: Thickness of a `lines` series, over `--chart-stroke`. (default: `undefined`)
|
|
41780
41777
|
* - `--chart-stroke`: Thickness of a `lines` series, one name across this family, Line Chart and Area Chart's top edge, since the three read one shared rule. `--bar-chart-line-width` overrides it here. (default: `undefined`)
|
|
41781
41778
|
* - `--bar-chart-axis`: How wide an axis column is drawn, in `ch`, from the widest number on it. Written on the axis itself, and only where the categories run along the bottom: turned sideways an axis is a row and takes a line's height instead. (default: `undefined`)
|
|
41782
|
-
* - `--bar-chart-secondary`: The color of the secondary axis
|
|
41779
|
+
* - `--bar-chart-secondary`: The color of the secondary axis, where one series owns it. Written by the component from that series' `--chart-series-*`, so it promises the series color and nothing more: whatever that hook resolves to is what the axis is drawn in. (default: `undefined`)
|
|
41783
41780
|
* - `--chart-bar-wash`: The gradient a bar would take, named per bar so the styled tier can point `fill` at it. Drawn whatever the treatment and used only where `wash="gradient"` asks for it. (default: `undefined`)
|
|
41784
41781
|
*
|
|
41785
41782
|
* ## CSS Parts
|
|
@@ -41913,12 +41910,12 @@ export type CustomElementsSolidJs = {
|
|
|
41913
41910
|
* - `current`: Whether this item is the page the reader is on.
|
|
41914
41911
|
* - `href`: Where the crumb goes, and nothing where it is the current page.
|
|
41915
41912
|
*
|
|
41916
|
-
* **Optional and reflected, because a stylesheet does select on it.**
|
|
41917
|
-
*
|
|
41918
|
-
*
|
|
41919
|
-
*
|
|
41920
|
-
* the
|
|
41921
|
-
*
|
|
41913
|
+
* **Optional and reflected, because a stylesheet does select on it.** A sheet
|
|
41914
|
+
* writes `:host(:not([href])) [part="link"]` to take the block padding off a
|
|
41915
|
+
* crumb that is not a link, so the attribute is what decides how tall a crumb
|
|
41916
|
+
* is. Unreflected, an `href` set from script reached the property, rendered
|
|
41917
|
+
* the anchor, and left the host looking unlinked: the crumb drew at 20px
|
|
41918
|
+
* where a markup twin drew at 28.
|
|
41922
41919
|
*
|
|
41923
41920
|
* Optional rather than defaulted, which is the general rule that a reflected
|
|
41924
41921
|
* property takes no default: an `href` written onto every host would be a link
|
|
@@ -42206,7 +42203,7 @@ export type CustomElementsSolidJs = {
|
|
|
42206
42203
|
* the same way `label` becomes `aria-label` in there.
|
|
42207
42204
|
*
|
|
42208
42205
|
* ```html
|
|
42209
|
-
* <helix-button commandfor="confirm" command="--show">Delete…</helix-button>
|
|
42206
|
+
* <helix-headless-button commandfor="confirm" command="--show">Delete…</helix-headless-button>
|
|
42210
42207
|
* ```
|
|
42211
42208
|
*
|
|
42212
42209
|
* `commandFor` spells its attribute out, because Lit lowercases a property
|
|
@@ -42770,13 +42767,13 @@ export type CustomElementsSolidJs = {
|
|
|
42770
42767
|
* **The number is published to the styles rather than enumerated by them**,
|
|
42771
42768
|
* as `--carousel-per-view` on the track, which is what keeps a width and a
|
|
42772
42769
|
* count from disagreeing. A sheet can only name a value it wrote a rule for,
|
|
42773
|
-
* so
|
|
42774
|
-
*
|
|
42775
|
-
*
|
|
42776
|
-
* three dots, a pane taking the whole track and five slides
|
|
42777
|
-
* dragging.
|
|
42778
|
-
*
|
|
42779
|
-
*
|
|
42770
|
+
* so a sheet enumerating `per-view="2"` through `5` is a ceiling of five, and
|
|
42771
|
+
* above it the pane falls back to one across while this file goes on counting
|
|
42772
|
+
* positions. Measured in Chromium over eight slides against such a sheet, six
|
|
42773
|
+
* across gave three dots, a pane taking the whole track and five slides
|
|
42774
|
+
* reachable only by dragging. Published from here there is no ceiling to
|
|
42775
|
+
* exceed, and every sheet reads the same declaration. `runEnd` publishes its
|
|
42776
|
+
* correction the same way and for the same reason.
|
|
42780
42777
|
*
|
|
42781
42778
|
* **On the track and not on the host.** A custom property on the host is a
|
|
42782
42779
|
* reflected attribute by another name: it would arrive on upgrade, and a
|
|
@@ -42801,8 +42798,8 @@ export type CustomElementsSolidJs = {
|
|
|
42801
42798
|
* `auto` track is handed nothing. A count stays for the design that calls for
|
|
42802
42799
|
* exactly three.
|
|
42803
42800
|
*
|
|
42804
|
-
*
|
|
42805
|
-
*
|
|
42801
|
+
* A sheet says how it divides, and the `auto` example here carries the same
|
|
42802
|
+
* three lines for a consumer writing their own.
|
|
42806
42803
|
*
|
|
42807
42804
|
* **A value rather than the resting behavior**, which is what the
|
|
42808
42805
|
* responsiveness policy asks of every axis that a box decides: a splitter
|
|
@@ -43184,13 +43181,13 @@ export type CustomElementsSolidJs = {
|
|
|
43184
43181
|
*
|
|
43185
43182
|
* **Not reflected, and the default is why.** A reflected property that
|
|
43186
43183
|
* defaults to true writes its attribute on upgrade whether or not the
|
|
43187
|
-
* consumer wrote one, so the server serves `<helix-chat label="x">`
|
|
43188
|
-
* client turns it into `<helix-chat label="x" pinned>`: a
|
|
43189
|
-
* React consumer reports and does not patch up. Nothing
|
|
43190
|
-
* either, because the one thing that changes with the pin
|
|
43191
|
-
* that is a part inside the shadow tree where a
|
|
43192
|
-
* it. Measured rather than assumed: `label,
|
|
43193
|
-
* `label` from the server.
|
|
43184
|
+
* consumer wrote one, so the server serves `<helix-headless-chat label="x">`
|
|
43185
|
+
* and the client turns it into `<helix-headless-chat label="x" pinned>`: a
|
|
43186
|
+
* hydration mismatch a React consumer reports and does not patch up. Nothing
|
|
43187
|
+
* needs the attribute either, because the one thing that changes with the pin
|
|
43188
|
+
* is the way back, and that is a part inside the shadow tree where a
|
|
43189
|
+
* stylesheet can already reach it. Measured rather than assumed: `label,
|
|
43190
|
+
* pinned` after upgrade against `label` from the server.
|
|
43194
43191
|
* - `threshold`: How near the bottom still counts as being at it, in pixels.
|
|
43195
43192
|
*
|
|
43196
43193
|
* A hook rather than a constant, because the right number depends on how tall
|
|
@@ -43240,7 +43237,7 @@ export type CustomElementsSolidJs = {
|
|
|
43240
43237
|
*
|
|
43241
43238
|
* Areas where markup can be added to the component.
|
|
43242
43239
|
*
|
|
43243
|
-
* - `(default)`: The turns
|
|
43240
|
+
* - `(default)`: The turns.
|
|
43244
43241
|
* - `composer`: Below the transcript, where the reader writes.
|
|
43245
43242
|
* - `header`: Above the transcript.
|
|
43246
43243
|
* - `resume`: The way back to the bottom.
|
|
@@ -43703,11 +43700,11 @@ export type CustomElementsSolidJs = {
|
|
|
43703
43700
|
* round. The platform already writes booleans like this for the same reason,
|
|
43704
43701
|
* `novalidate` and `nomodule` and `noreferrer` among them.
|
|
43705
43702
|
*
|
|
43706
|
-
* **Reflected, because the gutter is a stylesheet rule.**
|
|
43707
|
-
*
|
|
43708
|
-
*
|
|
43709
|
-
*
|
|
43710
|
-
*
|
|
43703
|
+
* **Reflected, because the gutter is a stylesheet rule.** A sheet reserves
|
|
43704
|
+
* the copy button's width with `:host(:not([no-copy]))`, so the attribute is
|
|
43705
|
+
* what decides whether the block pays for a control. Unreflected, setting it
|
|
43706
|
+
* from script takes the button away (`render` reads the property) and leaves
|
|
43707
|
+
* the 40px it stood in reserved.
|
|
43711
43708
|
*
|
|
43712
43709
|
* A false boolean reflects as the attribute's absence, so this costs no
|
|
43713
43710
|
* `no-copy=""` on hosts that never asked for one, and the rule about a
|
|
@@ -44241,10 +44238,10 @@ export type CustomElementsSolidJs = {
|
|
|
44241
44238
|
*
|
|
44242
44239
|
* **A color is exactly as requirable as a date**, which is the comparison
|
|
44243
44240
|
* that settles it: this element extends `HelixFormElement`, carries `name`
|
|
44244
|
-
* and reports its value, so a consumer writing
|
|
44245
|
-
*
|
|
44246
|
-
* to
|
|
44247
|
-
*
|
|
44241
|
+
* and reports its value, so a consumer writing `<helix-headless-color-picker
|
|
44242
|
+
* name="brand" required>` inside a form has every reason to expect the form
|
|
44243
|
+
* to refuse an empty one. Its two siblings in the same composition position,
|
|
44244
|
+
* Date Picker and Time Picker, both check it.
|
|
44248
44245
|
*
|
|
44249
44246
|
* Written out rather than taken from `MixinField`, for the reason those two
|
|
44250
44247
|
* record: the mixin brings a label, a hint and a feedback region, and this is
|
|
@@ -44592,7 +44589,7 @@ export type CustomElementsSolidJs = {
|
|
|
44592
44589
|
*
|
|
44593
44590
|
* Areas where markup can be added to the component.
|
|
44594
44591
|
*
|
|
44595
|
-
* - `(default)`: The options
|
|
44592
|
+
* - `(default)`: The options.
|
|
44596
44593
|
* - `end`: After it, for a unit or a clear button.
|
|
44597
44594
|
* - `indicator`: Replaces the caret saying the field opens.
|
|
44598
44595
|
* - `start`: Before the text, for an icon.
|
|
@@ -44782,7 +44779,7 @@ export type CustomElementsSolidJs = {
|
|
|
44782
44779
|
*
|
|
44783
44780
|
* Areas where markup can be added to the component.
|
|
44784
44781
|
*
|
|
44785
|
-
* - `(default)`: The commands,
|
|
44782
|
+
* - `(default)`: The commands, and any groups of them.
|
|
44786
44783
|
* - `footer`: Under the list, for the keys a reader can press.
|
|
44787
44784
|
*
|
|
44788
44785
|
* ## Methods
|
|
@@ -44894,7 +44891,7 @@ export type CustomElementsSolidJs = {
|
|
|
44894
44891
|
* the same way `label` becomes `aria-label` in there.
|
|
44895
44892
|
*
|
|
44896
44893
|
* ```html
|
|
44897
|
-
* <helix-button commandfor="confirm" command="--show">Delete…</helix-button>
|
|
44894
|
+
* <helix-headless-button commandfor="confirm" command="--show">Delete…</helix-headless-button>
|
|
44898
44895
|
* ```
|
|
44899
44896
|
*
|
|
44900
44897
|
* `commandFor` spells its attribute out, because Lit lowercases a property
|
|
@@ -45203,9 +45200,9 @@ export type CustomElementsSolidJs = {
|
|
|
45203
45200
|
*
|
|
45204
45201
|
* **It announces nothing, and that is not an omission.** Nothing in this
|
|
45205
45202
|
* element ever asks for a different page size: a size selector is
|
|
45206
|
-
* `
|
|
45207
|
-
*
|
|
45208
|
-
*
|
|
45203
|
+
* `PaginationSize`, which a consumer puts in the `footer` slot and answers
|
|
45204
|
+
* themselves. Routing this through `requestChange` would announce an event
|
|
45205
|
+
* the element never has cause to fire.
|
|
45209
45206
|
* - `total`: How many rows the whole result has, where this element cannot count them.
|
|
45210
45207
|
*
|
|
45211
45208
|
* Only read in `server` mode, where `rows` is one page and its length says
|
|
@@ -45285,7 +45282,7 @@ export type CustomElementsSolidJs = {
|
|
|
45285
45282
|
*
|
|
45286
45283
|
* Areas where markup can be added to the component.
|
|
45287
45284
|
*
|
|
45288
|
-
* - `(default)`: The columns, declared
|
|
45285
|
+
* - `(default)`: The columns, declared rather than drawn.
|
|
45289
45286
|
* - `footer`: Below the grid, replacing the pagination this would otherwise draw.
|
|
45290
45287
|
* - `toolbar`: Above the grid, for a search field or actions.
|
|
45291
45288
|
*
|
|
@@ -45330,8 +45327,8 @@ export type CustomElementsSolidJs = {
|
|
|
45330
45327
|
* - `--data-table-padding-inline`: Space either side of a cell's content. (default: `undefined`)
|
|
45331
45328
|
* - `--data-table-rule-color`: Color of the hairline between rows. A color and not a border: it lands in the color slot of a shorthand, so a whole border written into it produces invalid CSS and drops the rule. Drawn on the cells rather than the row, which is `display: contents` and measures `0px`. (default: `undefined`)
|
|
45332
45329
|
* - `--data-table-text`: Type size, headings and cells alike. (default: `undefined`)
|
|
45333
|
-
* - `--data-table-cell-align`: The edge the column a cell sits under is set to, `start`, `center` or `end`, and unset under a column that sets none. Written by the component onto each cell it draws, read by the sheet that paints one;
|
|
45334
|
-
* - `--data-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.
|
|
45330
|
+
* - `--data-table-cell-align`: The edge the column a cell sits under is set to, `start`, `center` or `end`, and unset under a column that sets none. Written by the component onto each cell it draws, read by the sheet that paints one; Table publishes `--table-cell-align` for the same attribute on the cells a consumer wrote, under its own family's name. (default: `undefined`)
|
|
45331
|
+
* - `--data-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. A column's `width` is the one to set. (default: `undefined`)
|
|
45335
45332
|
*
|
|
45336
45333
|
* ## CSS Parts
|
|
45337
45334
|
*
|
|
@@ -46680,10 +46677,10 @@ export type CustomElementsSolidJs = {
|
|
|
46680
46677
|
* not, rather than shown or hidden by CSS.
|
|
46681
46678
|
* - `placement`: Which edge the drawer comes from.
|
|
46682
46679
|
*
|
|
46683
|
-
* Unset is `end`,
|
|
46684
|
-
* beside `:host([placement="end"])` rather than as a value written here: a
|
|
46680
|
+
* Unset is `end`, and it stays unset rather than being written down: a
|
|
46685
46681
|
* default assigned to the property would reflect onto every host and put a
|
|
46686
|
-
* `placement="end"` into markup no consumer wrote.
|
|
46682
|
+
* `placement="end"` into markup no consumer wrote. So what this tier
|
|
46683
|
+
* guarantees is the absence, and a sheet selects on it.
|
|
46687
46684
|
* - `returnValue`: What the dialog closed with, the way `<dialog>` reports it.
|
|
46688
46685
|
*
|
|
46689
46686
|
* **The whole point of a `<dialog>` returning a value is lost behind a shadow
|
|
@@ -47503,7 +47500,13 @@ export type CustomElementsSolidJs = {
|
|
|
47503
47500
|
* - `fields`: The fields declared inside this, in the order they were written.
|
|
47504
47501
|
*
|
|
47505
47502
|
* What a render may know of them: none on a server, whose shim has no tree
|
|
47506
|
-
* and threw here, and none while hydrating what one sent.
|
|
47503
|
+
* and threw here, and none while hydrating what one sent.
|
|
47504
|
+
*
|
|
47505
|
+
* By identity rather than by tag. A list of names can only hold the tags this
|
|
47506
|
+
* package knows about, so it misses any third one, which is what subclassing
|
|
47507
|
+
* a headless element produces, and it is also how a headless package learns a
|
|
47508
|
+
* styled tag. `instanceof` answers for every one of them and proves the type
|
|
47509
|
+
* the signature claims. (property only) (readonly)
|
|
47507
47510
|
* - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
|
|
47508
47511
|
*
|
|
47509
47512
|
* **Named `whenSettled` because `settled` is taken four times over**, by
|
|
@@ -48038,11 +48041,12 @@ export type CustomElementsSolidJs = {
|
|
|
48038
48041
|
* would give.
|
|
48039
48042
|
*
|
|
48040
48043
|
* **The element's own text is read as a fallback, and only in a browser.**
|
|
48041
|
-
* `<helix-
|
|
48042
|
-
*
|
|
48043
|
-
*
|
|
48044
|
-
*
|
|
48045
|
-
*
|
|
48044
|
+
* `<helix-headless-format-date
|
|
48045
|
+
* elapsed>2026-08-27T01:00:00Z</helix-headless-format-date>` is the spelling
|
|
48046
|
+
* that reads best in markup, and it cannot be the only one: measured against
|
|
48047
|
+
* Lit's server shim, `textContent`, `children`, `firstChild` and
|
|
48048
|
+
* `querySelector` are all `undefined` there, so a server has no way to see
|
|
48049
|
+
* it. An element rendered on a server needs the attribute; one rendered in a
|
|
48046
48050
|
* browser may use either.
|
|
48047
48051
|
* - `day`: How the day of the month is written, where a date is shown.
|
|
48048
48052
|
* - `elapsed`: Show how long ago it was, compactly, instead of the date.
|
|
@@ -48208,12 +48212,12 @@ export type CustomElementsSolidJs = {
|
|
|
48208
48212
|
* consumer has to keep by hand, and the one number a summary is told to trust
|
|
48209
48213
|
* is the one it gets wrong.
|
|
48210
48214
|
*
|
|
48211
|
-
* The strip measures itself, so
|
|
48212
|
-
*
|
|
48213
|
-
*
|
|
48214
|
-
*
|
|
48215
|
-
*
|
|
48216
|
-
*
|
|
48215
|
+
* The strip measures itself, so sizing the cells in a sheet is enough on its
|
|
48216
|
+
* own and these two are the estimate used until the first measurement lands.
|
|
48217
|
+
* Writing the attribute pins the value and stops the measurement being
|
|
48218
|
+
* consulted, which is what a container query or a transition on the cell size
|
|
48219
|
+
* wants, where what is drawn this frame is not what the arithmetic should
|
|
48220
|
+
* plan around.
|
|
48217
48221
|
*
|
|
48218
48222
|
* Zero turns the dropping off altogether, which is right for a strip in a
|
|
48219
48223
|
* container that cannot get narrow.
|
|
@@ -48470,7 +48474,7 @@ export type CustomElementsSolidJs = {
|
|
|
48470
48474
|
* the same way `label` becomes `aria-label` in there.
|
|
48471
48475
|
*
|
|
48472
48476
|
* ```html
|
|
48473
|
-
* <helix-button commandfor="confirm" command="--show">Delete…</helix-button>
|
|
48477
|
+
* <helix-headless-button commandfor="confirm" command="--show">Delete…</helix-headless-button>
|
|
48474
48478
|
* ```
|
|
48475
48479
|
*
|
|
48476
48480
|
* `commandFor` spells its attribute out, because Lit lowercases a property
|
|
@@ -48784,10 +48788,10 @@ export type CustomElementsSolidJs = {
|
|
|
48784
48788
|
* **Mirrored to `data-status`, and not reflected as `status`.** It is element
|
|
48785
48789
|
* state, so reflecting it puts the element's own bookkeeping into the markup
|
|
48786
48790
|
* a consumer rendered: React reads the attribute appearing at upgrade as a
|
|
48787
|
-
* hydration mismatch, and a
|
|
48788
|
-
*
|
|
48789
|
-
*
|
|
48790
|
-
*
|
|
48791
|
+
* hydration mismatch, and a host pasted back carrying `status="loaded"`
|
|
48792
|
+
* declares that a picture has arrived which this element has never fetched.
|
|
48793
|
+
* The `data-` name is the library's answer to both, being a name a re-parse
|
|
48794
|
+
* cannot mistake for a declaration, and it is what `data-closed` on
|
|
48791
48795
|
* `Toast.Item` already does. A picture arrives after somebody fetched it,
|
|
48792
48796
|
* which puts this on the safe side of hydration: a fact that can be true on
|
|
48793
48797
|
* the *first* update mirrors to a custom state instead, which is what
|
|
@@ -48922,10 +48926,10 @@ export type CustomElementsSolidJs = {
|
|
|
48922
48926
|
* **The attribute is `readonly`, which is the platform's spelling.** A
|
|
48923
48927
|
* camelCase property needs an explicit `attribute`, and dash-casing a word
|
|
48924
48928
|
* HTML writes as one costs what an attribute always costs here: nothing
|
|
48925
|
-
* warns. `<helix-input readonly>` is what anybody who has written
|
|
48926
|
-
* against `read-only` it parses to no property at all, and the
|
|
48927
|
-
* editable with no error anywhere. Measured on the dash-cased
|
|
48928
|
-
* came back `false`.
|
|
48929
|
+
* warns. `<helix-headless-input readonly>` is what anybody who has written
|
|
48930
|
+
* HTML types; against `read-only` it parses to no property at all, and the
|
|
48931
|
+
* field stays editable with no error anywhere. Measured on the dash-cased
|
|
48932
|
+
* form, `readOnly` came back `false`.
|
|
48929
48933
|
* - `reveal`: Whether a password field offers a toggle that shows what was typed.
|
|
48930
48934
|
*
|
|
48931
48935
|
* Ignored on every other type. A reveal on an email field would be a button
|
|
@@ -48939,9 +48943,9 @@ export type CustomElementsSolidJs = {
|
|
|
48939
48943
|
*
|
|
48940
48944
|
* **Not reflected.** Reflection exists so a selector can reach a value, and
|
|
48941
48945
|
* no stylesheet in this repository selects on `type`. Reflecting it writes
|
|
48942
|
-
* `type="text"` onto every `<helix-input>` ever rendered, an
|
|
48943
|
-
* consumer's markup has, which is the fault the area rules write
|
|
48944
|
-
* `Button`'s `href`, `target` and `rel`.
|
|
48946
|
+
* `type="text"` onto every `<helix-headless-input>` ever rendered, an
|
|
48947
|
+
* attribute no consumer's markup has, which is the fault the area rules write
|
|
48948
|
+
* up under `Button`'s `href`, `target` and `rel`.
|
|
48945
48949
|
*
|
|
48946
48950
|
* Nothing reads it from the attribute either. The real `<input>` inside takes
|
|
48947
48951
|
* it as a property binding, which is what makes the keyboard and the
|
|
@@ -49495,8 +49499,7 @@ export type CustomElementsSolidJs = {
|
|
|
49495
49499
|
* over something busy. `triangle` points along the axis and reads as "and
|
|
49496
49500
|
* onward" rather than as a second claim about the data.
|
|
49497
49501
|
*
|
|
49498
|
-
* The shapes come from
|
|
49499
|
-
* `helix/styled/src/shared/chart/terminus.css`, the same sheet `Sparkline` takes, so
|
|
49502
|
+
* The shapes come from one shared sheet, the same one `Sparkline` takes, so
|
|
49500
49503
|
* the set is identical wherever one appears. **Which is why every value is
|
|
49501
49504
|
* named here.** `Sparkline` shipped `square` implemented, drawn, asserted and
|
|
49502
49505
|
* undocumented until the cohort before this one; this family reads the same
|
|
@@ -49773,10 +49776,10 @@ export type CustomElementsSolidJs = {
|
|
|
49773
49776
|
* - `label`: Accessible name for the set.
|
|
49774
49777
|
* - `type`: Which markers an ordered list draws, in `<ol type>`'s own five values.
|
|
49775
49778
|
*
|
|
49776
|
-
* Reflected, because this is one of the things a stylesheet selects on
|
|
49777
|
-
*
|
|
49778
|
-
*
|
|
49779
|
-
*
|
|
49779
|
+
* Reflected, because this is one of the things a stylesheet selects on, each
|
|
49780
|
+
* value mapping to a `list-style-type`. The platform's spellings rather than
|
|
49781
|
+
* the CSS ones, so `<helix-headless-list kind="ordered" type="i">` is what a
|
|
49782
|
+
* consumer would have written on an `<ol>`.
|
|
49780
49783
|
*
|
|
49781
49784
|
* **`start` and `reversed` are both absent and neither can be done here.**
|
|
49782
49785
|
* This renders no `<ol>`: the rows are slotted and numbered by the CSS
|
|
@@ -51050,10 +51053,10 @@ export type CustomElementsSolidJs = {
|
|
|
51050
51053
|
*
|
|
51051
51054
|
* **Not reflected.** Unread is a visual state, which is why the four mixins
|
|
51052
51055
|
* mirror theirs, but the mirror may not be the property's own attribute:
|
|
51053
|
-
* `<helix-notification default-read>` comes back from a server
|
|
51054
|
-
* and would gain it on the first update, which React reports
|
|
51055
|
-
* mismatch, and which a copy of the serialized element
|
|
51056
|
-
* declaration. `:state(read)` is what the stylesheet reads.
|
|
51056
|
+
* `<helix-headless-notification default-read>` comes back from a server
|
|
51057
|
+
* without `read` and would gain it on the first update, which React reports
|
|
51058
|
+
* as a hydration mismatch, and which a copy of the serialized element
|
|
51059
|
+
* re-parses as a declaration. `:state(read)` is what the stylesheet reads.
|
|
51057
51060
|
* `hydration.dom.spec.ts` holds it.
|
|
51058
51061
|
* - `default-read`/`defaultRead`: State to open with, where nothing declared one.
|
|
51059
51062
|
* - `locale`: Locale for the timestamp.
|
|
@@ -51252,7 +51255,7 @@ export type CustomElementsSolidJs = {
|
|
|
51252
51255
|
*
|
|
51253
51256
|
* Areas where markup can be added to the component.
|
|
51254
51257
|
*
|
|
51255
|
-
* - `(default)`: The notifications
|
|
51258
|
+
* - `(default)`: The notifications.
|
|
51256
51259
|
* - `footer`: Below the list, for a link to everything.
|
|
51257
51260
|
* - `header`: Above the list, for a title and the mark-all control.
|
|
51258
51261
|
*
|
|
@@ -51806,7 +51809,7 @@ export type CustomElementsSolidJs = {
|
|
|
51806
51809
|
* **The attribute, read when it is asked for, and never a snapshot taken in
|
|
51807
51810
|
* the constructor.** A field initializer runs there, and an element the HTML
|
|
51808
51811
|
* parser created has none of its attributes yet at that moment: measured on
|
|
51809
|
-
* this element, on `Radio` and on `Toggle`, `<helix-option value="a"
|
|
51812
|
+
* this element, on `Radio` and on `Toggle`, `<helix-headless-option value="a"
|
|
51810
51813
|
* selected>` reported `defaultSelected` as `false` both from parsed markup
|
|
51811
51814
|
* and from `createElement` followed by `setAttribute`, which is every way a
|
|
51812
51815
|
* consumer writes one. The snapshot could only ever be true for an element
|
|
@@ -52565,10 +52568,10 @@ export type CustomElementsSolidJs = {
|
|
|
52565
52568
|
* marked letters wants `text`, which judges nothing.
|
|
52566
52569
|
*
|
|
52567
52570
|
* **Not reflected**: nothing selects on it, so reflecting only writes
|
|
52568
|
-
* `type="numeric"` onto every `<helix-pin-input>` ever rendered, an
|
|
52569
|
-
* no consumer's markup had. The area rules carry the sentence
|
|
52570
|
-
* what CSS selects on". The real inputs take it as a binding,
|
|
52571
|
-
* makes the keyboard follow.
|
|
52571
|
+
* `type="numeric"` onto every `<helix-headless-pin-input>` ever rendered, an
|
|
52572
|
+
* attribute no consumer's markup had. The area rules carry the sentence
|
|
52573
|
+
* "reflect only what CSS selects on". The real inputs take it as a binding,
|
|
52574
|
+
* which is what makes the keyboard follow.
|
|
52572
52575
|
* - `disabled`: Whether the control is non-interactive.
|
|
52573
52576
|
*
|
|
52574
52577
|
* Reflected, because the styled tier selects on it, and mirrored to
|
|
@@ -53367,7 +53370,7 @@ export type CustomElementsSolidJs = {
|
|
|
53367
53370
|
* **The attribute, read when it is asked for, and never a snapshot taken in
|
|
53368
53371
|
* the constructor.** A field initializer runs there, and an element the HTML
|
|
53369
53372
|
* parser created has none of its attributes yet at that moment: measured on
|
|
53370
|
-
* this element, on `Option` and on `Toggle`, `<helix-radio value="a"
|
|
53373
|
+
* this element, on `Option` and on `Toggle`, `<helix-headless-radio value="a"
|
|
53371
53374
|
* selected>` reported `defaultSelected` as `false` both from parsed markup
|
|
53372
53375
|
* and from `createElement` followed by `setAttribute`, which is every way a
|
|
53373
53376
|
* consumer writes one. The snapshot could only ever be true for an element
|
|
@@ -55908,9 +55911,9 @@ export type CustomElementsSolidJs = {
|
|
|
55908
55911
|
* The row directions set them side by side, for a figure in a line of text or
|
|
55909
55912
|
* a narrow strip where a stacked pair would be two lines of almost nothing.
|
|
55910
55913
|
*
|
|
55911
|
-
* A property rather than a `
|
|
55912
|
-
*
|
|
55913
|
-
*
|
|
55914
|
+
* A property rather than a `Flex` around it, because the unit has to stay on
|
|
55915
|
+
* the value's baseline whichever way the pair goes, and only this element
|
|
55916
|
+
* knows which of its children the unit belongs to.
|
|
55914
55917
|
*
|
|
55915
55918
|
* **Optional rather than defaulted to `column`, which is not a style
|
|
55916
55919
|
* preference.** A reflecting property with a default writes its attribute onto
|
|
@@ -56047,7 +56050,7 @@ export type CustomElementsSolidJs = {
|
|
|
56047
56050
|
*
|
|
56048
56051
|
* Areas where markup can be added to the component.
|
|
56049
56052
|
*
|
|
56050
|
-
* - `(default)`: The steps
|
|
56053
|
+
* - `(default)`: The steps.
|
|
56051
56054
|
*
|
|
56052
56055
|
* ## Methods
|
|
56053
56056
|
*
|
|
@@ -56129,7 +56132,7 @@ export type CustomElementsSolidJs = {
|
|
|
56129
56132
|
* Areas where markup can be added to the component.
|
|
56130
56133
|
*
|
|
56131
56134
|
* - `(default)`: The step's name.
|
|
56132
|
-
* - `content`: What the stage holds. Always rendered here, a tier with no stylesheet having nothing to fold it with
|
|
56135
|
+
* - `content`: What the stage holds. Always rendered here, a tier with no stylesheet having nothing to fold it with, so whether it is folded away is the sheet's answer and not this tier's.
|
|
56133
56136
|
* - `description`: A line under the name, for what the stage is for.
|
|
56134
56137
|
* - `marker`: Replaces the number, or the check a complete step shows.
|
|
56135
56138
|
*
|
|
@@ -56146,7 +56149,7 @@ export type CustomElementsSolidJs = {
|
|
|
56146
56149
|
* - `body`: The name and its description.
|
|
56147
56150
|
* - `content`: What the stage holds, while it is open.
|
|
56148
56151
|
* - `description`: The line under it.
|
|
56149
|
-
* - `label`: The step's name, which is a
|
|
56152
|
+
* - `label`: The step's name, which is a control.
|
|
56150
56153
|
* - `label-button`: The inner control.
|
|
56151
56154
|
* - `lead`: The half line arriving from the step before.
|
|
56152
56155
|
* - `mark`: The glyph inside the marker: a tick, a dot, or an empty ring.
|
|
@@ -56425,15 +56428,15 @@ export type CustomElementsSolidJs = {
|
|
|
56425
56428
|
*
|
|
56426
56429
|
* - `align`: Which edge the values line up against.
|
|
56427
56430
|
*
|
|
56428
|
-
* `end` is what a column of numbers wants, so digits of the same magnitude
|
|
56429
|
-
* above each other. Left unset the cell inherits the table's own
|
|
56430
|
-
* which is `start` for text in either writing direction.
|
|
56431
|
-
* aligns the cells it draws. A `
|
|
56432
|
-
* wrote, so the table writes nothing onto them: it publishes the
|
|
56433
|
-
* cell under this column as `--table-cell-align`, which
|
|
56434
|
-
* reads. The heading is this element's own, and
|
|
56435
|
-
* the same edge in either table. `end` is the
|
|
56436
|
-
* right-to-left table it is the left.
|
|
56431
|
+
* `end` is what a column of numbers wants, so digits of the same magnitude
|
|
56432
|
+
* sit above each other. Left unset the cell inherits the table's own
|
|
56433
|
+
* alignment, which is `start` for text in either writing direction.
|
|
56434
|
+
* `DataTable` aligns the cells it draws. A `Table`'s cells are markup the
|
|
56435
|
+
* consumer wrote, so the table writes nothing onto them: it publishes the
|
|
56436
|
+
* edge to each cell under this column as `--table-cell-align`, which
|
|
56437
|
+
* `@fusion.dev/helix` reads. The heading is this element's own, and
|
|
56438
|
+
* `@fusion.dev/helix` sets it to the same edge in either table. `end` is the
|
|
56439
|
+
* inline end, so in a right-to-left table it is the left.
|
|
56437
56440
|
*
|
|
56438
56441
|
* **Reflected, because the heading is drawn by a stylesheet and has no other
|
|
56439
56442
|
* way to learn it.** Set as a property, which is how React sets it, an
|
|
@@ -56476,8 +56479,8 @@ export type CustomElementsSolidJs = {
|
|
|
56476
56479
|
* - `width`: The track this column takes, as CSS.
|
|
56477
56480
|
*
|
|
56478
56481
|
* A single track value, so anything valid in `grid-template-columns` works:
|
|
56479
|
-
* `16rem`, `auto`, `minmax(0, 2fr)`. Left unset the column takes the track
|
|
56480
|
-
*
|
|
56482
|
+
* `16rem`, `auto`, `minmax(0, 2fr)`. Left unset the column takes the track in
|
|
56483
|
+
* its place in a `Table`'s `columns`, where that table sets one, and
|
|
56481
56484
|
* otherwise shares what is left over equally, as `minmax(max-content, 1fr)`.
|
|
56482
56485
|
* Set here, it wins over that list, which is what lets a reader resize a
|
|
56483
56486
|
* column in a table that set one.
|
|
@@ -56599,15 +56602,14 @@ export type CustomElementsSolidJs = {
|
|
|
56599
56602
|
* - `loading-text`/`loadingText`: What is said while they are on their way.
|
|
56600
56603
|
* - `columns`: The column widths as one track list, written once on the table.
|
|
56601
56604
|
*
|
|
56602
|
-
* With `
|
|
56603
|
-
*
|
|
56604
|
-
*
|
|
56605
|
-
*
|
|
56606
|
-
*
|
|
56607
|
-
*
|
|
56608
|
-
*
|
|
56609
|
-
*
|
|
56610
|
-
* down to one column.
|
|
56605
|
+
* With `TableColumn` children, each track sizes the column in its place, a
|
|
56606
|
+
* hidden column counted, so hiding one takes its track with it and the rest
|
|
56607
|
+
* keep theirs. The columns decide how many tracks there are and this list
|
|
56608
|
+
* only how wide: a track past the last column is dropped, and a column past
|
|
56609
|
+
* the last track shares what is left. With no columns declared it is the
|
|
56610
|
+
* whole track list. Tracks count as the grid counts them, so `minmax(0, 1fr)`
|
|
56611
|
+
* is one and `repeat(2, 8rem)` is two, and one the grid would refuse leaves
|
|
56612
|
+
* its column at the default rather than taking the table down to one column.
|
|
56611
56613
|
*
|
|
56612
56614
|
* **A column's own `width` wins over its track here.** The width is written
|
|
56613
56615
|
* on the column it sizes, which is the more particular statement, and it is
|
|
@@ -56621,13 +56623,11 @@ export type CustomElementsSolidJs = {
|
|
|
56621
56623
|
* whole answer: a table given one lays its grid out in the first paint, and a
|
|
56622
56624
|
* table sized only by its columns is one track wide until it upgrades.
|
|
56623
56625
|
*
|
|
56624
|
-
*
|
|
56625
|
-
*
|
|
56626
|
-
*
|
|
56627
|
-
*
|
|
56628
|
-
*
|
|
56629
|
-
* take the same CSS hook, `--table-columns` and `--data-table-columns`, which
|
|
56630
|
-
* wins over whichever list the element worked out.
|
|
56626
|
+
* **Data Table has none of this, and should not.** Its columns are its schema
|
|
56627
|
+
* rather than an option, so there is always a column to write a `width` on
|
|
56628
|
+
* and a list here would be a second way to say what that says. This table's
|
|
56629
|
+
* cells are markup, and a table written as rows of cells with no column
|
|
56630
|
+
* declared in it has nowhere else to be sized from.
|
|
56631
56631
|
* - `label`: Accessible name for the table.
|
|
56632
56632
|
* - `tableColumns`: The columns declared as children, in the order they are written. (property only) (readonly)
|
|
56633
56633
|
* - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
|
|
@@ -56662,7 +56662,7 @@ export type CustomElementsSolidJs = {
|
|
|
56662
56662
|
* CSS variables available for styling the component.
|
|
56663
56663
|
*
|
|
56664
56664
|
* - `--table-columns`: Track list for the columns, which wins over the one the columns worked out. (default: `undefined`)
|
|
56665
|
-
* - `--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.
|
|
56665
|
+
* - `--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. `columns` is the one to set. (default: `undefined`)
|
|
56666
56666
|
*
|
|
56667
56667
|
* ## CSS Parts
|
|
56668
56668
|
*
|
|
@@ -57497,8 +57497,8 @@ export type CustomElementsSolidJs = {
|
|
|
57497
57497
|
*
|
|
57498
57498
|
* Absent is one. `range` holds a start and an end, `multiple` holds any
|
|
57499
57499
|
* number, and both are carried as one comma-separated value, which is what a
|
|
57500
|
-
* form submits. `
|
|
57501
|
-
* why a wheel cannot do either.
|
|
57500
|
+
* form submits. `TimePicker` carries the longer note on the interaction and
|
|
57501
|
+
* on why a wheel cannot do either.
|
|
57502
57502
|
* - `placeholder`: What the field says before a time is in it.
|
|
57503
57503
|
* - `step`: How far apart the offered times are, in minutes.
|
|
57504
57504
|
* - `time-style`/`timeStyle`: Whether the field writes the time out, or holds the value as it is.
|
|
@@ -57513,7 +57513,7 @@ export type CustomElementsSolidJs = {
|
|
|
57513
57513
|
* `list` offers whole times, which is what a product with slots or opening
|
|
57514
57514
|
* hours has. `wheels` splits them into an hour, a minute and a meridiem where
|
|
57515
57515
|
* the locale uses one, which is the only way to reach `23:45` without
|
|
57516
|
-
* scrolling most of a day. `
|
|
57516
|
+
* scrolling most of a day. `TimePicker` carries the longer note on the trade.
|
|
57517
57517
|
*
|
|
57518
57518
|
* **Optional rather than defaulted, which is not a style preference.** A
|
|
57519
57519
|
* reflecting property with a default writes its attribute onto every host the
|
|
@@ -57776,7 +57776,7 @@ export type CustomElementsSolidJs = {
|
|
|
57776
57776
|
*
|
|
57777
57777
|
* Absent is one. `range` holds a start and an end with everything between
|
|
57778
57778
|
* them shown as part of the answer, `multiple` holds any number, and both are
|
|
57779
|
-
* carried as one comma-separated value: the same shape `
|
|
57779
|
+
* carried as one comma-separated value: the same shape `DatePicker` uses,
|
|
57780
57780
|
* because it is the same question asked of a different unit.
|
|
57781
57781
|
*
|
|
57782
57782
|
* **A range is two picks, and a third starts over.** That is the calendar's
|
|
@@ -58305,7 +58305,7 @@ export type CustomElementsSolidJs = {
|
|
|
58305
58305
|
* **Optional, and bottom-end is the absence of it.** Reflecting *and*
|
|
58306
58306
|
* defaulting is the pair that writes onto a host: every toast region anybody
|
|
58307
58307
|
* rendered would gain a `placement="bottom-end"` nobody typed, which a React
|
|
58308
|
-
* consumer's server markup does not have.
|
|
58308
|
+
* consumer's server markup does not have. A sheet carries the resting
|
|
58309
58309
|
* arrangement in its own `:host` rule and the selectors describe only the
|
|
58310
58310
|
* departures, which is what `orientation` does.
|
|
58311
58311
|
* - `whenSettled`: Resolves a frame after the first update, when transitions are switched on.
|
|
@@ -58339,7 +58339,7 @@ export type CustomElementsSolidJs = {
|
|
|
58339
58339
|
*
|
|
58340
58340
|
* Areas where markup can be added to the component.
|
|
58341
58341
|
*
|
|
58342
|
-
* - `(default)`: The messages
|
|
58342
|
+
* - `(default)`: The messages.
|
|
58343
58343
|
*
|
|
58344
58344
|
* ## CSS Custom Properties
|
|
58345
58345
|
*
|
|
@@ -58593,11 +58593,11 @@ export type CustomElementsSolidJs = {
|
|
|
58593
58593
|
* **The attribute, read when it is asked for, and never a snapshot taken in
|
|
58594
58594
|
* the constructor.** A field initializer runs there, and an element the HTML
|
|
58595
58595
|
* parser created has none of its attributes yet at that moment: measured on
|
|
58596
|
-
* this element, on `Option` and on `Radio`, `<helix-toggle
|
|
58597
|
-
* selected>` reported `defaultSelected` as `false` both from
|
|
58598
|
-
* and from `createElement` followed by `setAttribute`, which is
|
|
58599
|
-
* consumer writes one. The snapshot could only ever be true for
|
|
58600
|
-
* already in the document when `customElements.define` ran.
|
|
58596
|
+
* this element, on `Option` and on `Radio`, `<helix-headless-toggle
|
|
58597
|
+
* value="light" selected>` reported `defaultSelected` as `false` both from
|
|
58598
|
+
* parsed markup and from `createElement` followed by `setAttribute`, which is
|
|
58599
|
+
* every way a consumer writes one. The snapshot could only ever be true for
|
|
58600
|
+
* an element already in the document when `customElements.define` ran.
|
|
58601
58601
|
*
|
|
58602
58602
|
* Nothing overwrites it either, which is what makes reading it late correct
|
|
58603
58603
|
* rather than merely later: `selected` does not reflect, for the reason
|
|
@@ -59842,7 +59842,7 @@ export type CustomElementsSolidJs = {
|
|
|
59842
59842
|
* Areas where markup can be added to the component.
|
|
59843
59843
|
*
|
|
59844
59844
|
* - `(default)`: The entries.
|
|
59845
|
-
* - `player`: The
|
|
59845
|
+
* - `player`: The player the entries take turns in.
|
|
59846
59846
|
*
|
|
59847
59847
|
* ## Methods
|
|
59848
59848
|
*
|
|
@@ -60348,7 +60348,7 @@ export type CustomCssProperties = {
|
|
|
60348
60348
|
"--bar-chart-line-width"?: (string) | undefined;
|
|
60349
60349
|
/** How wide an axis column is drawn, in `ch`, from the widest number on it. Written on the axis itself, and only where the categories run along the bottom: turned sideways an axis is a row and takes a line's height instead. */
|
|
60350
60350
|
"--bar-chart-axis"?: (string) | undefined;
|
|
60351
|
-
/** The color of the secondary axis
|
|
60351
|
+
/** The color of the secondary axis, where one series owns it. Written by the component from that series' `--chart-series-*`, so it promises the series color and nothing more: whatever that hook resolves to is what the axis is drawn in. */
|
|
60352
60352
|
"--bar-chart-secondary"?: (string) | undefined;
|
|
60353
60353
|
/** The gradient a bar would take, named per bar so the styled tier can point `fill` at it. Drawn whatever the treatment and used only where `wash="gradient"` asks for it. */
|
|
60354
60354
|
"--chart-bar-wash"?: (string) | undefined;
|
|
@@ -60572,9 +60572,9 @@ export type CustomCssProperties = {
|
|
|
60572
60572
|
"--data-table-rule-color"?: (string) | undefined;
|
|
60573
60573
|
/** Type size, headings and cells alike. */
|
|
60574
60574
|
"--data-table-text"?: (string) | undefined;
|
|
60575
|
-
/** The edge the column a cell sits under is set to, `start`, `center` or `end`, and unset under a column that sets none. Written by the component onto each cell it draws, read by the sheet that paints one;
|
|
60575
|
+
/** The edge the column a cell sits under is set to, `start`, `center` or `end`, and unset under a column that sets none. Written by the component onto each cell it draws, read by the sheet that paints one; Table publishes `--table-cell-align` for the same attribute on the cells a consumer wrote, under its own family's name. */
|
|
60576
60576
|
"--data-table-cell-align"?: (string) | undefined;
|
|
60577
|
-
/** 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.
|
|
60577
|
+
/** 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. A column's `width` is the one to set. */
|
|
60578
60578
|
"--data-table-template"?: (string) | undefined;
|
|
60579
60579
|
/** Fill behind the field. */
|
|
60580
60580
|
"--date-input-background-color"?: (string) | undefined;
|
|
@@ -61178,7 +61178,7 @@ export type CustomCssProperties = {
|
|
|
61178
61178
|
"--table-cell-align"?: (string) | undefined;
|
|
61179
61179
|
/** Track list for the columns, which wins over the one the columns worked out. */
|
|
61180
61180
|
"--table-columns"?: (string) | undefined;
|
|
61181
|
-
/** 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.
|
|
61181
|
+
/** 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. `columns` is the one to set. */
|
|
61182
61182
|
"--table-template"?: (string) | undefined;
|
|
61183
61183
|
/** Fill behind the tag. */
|
|
61184
61184
|
"--tag-background-color"?: (string) | undefined;
|