@fusion.dev/helix 0.53.1 → 0.53.3
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 +170 -175
- package/dist/bar-chart/root/bar-chart-root.d.ts +1 -1
- 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 +770 -778
- package/types/vue.d.ts +210 -215
package/types/vue.d.ts
CHANGED
|
@@ -239,9 +239,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
239
239
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
240
240
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
241
241
|
open?: (HelixAccordionItem["open"]) | undefined;
|
|
242
|
-
/**
|
|
242
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
243
243
|
"default-open"?: (HelixAccordionItem["defaultOpen"]) | undefined;
|
|
244
|
-
/**
|
|
244
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
245
245
|
defaultOpen?: (HelixAccordionItem["defaultOpen"]) | undefined;
|
|
246
246
|
/** Where the open indicator sits, or whether there is one.
|
|
247
247
|
|
|
@@ -660,13 +660,13 @@ export type HelixAvatarGroupVueProps = {
|
|
|
660
660
|
Unset shows all of them, which is what no limit means and is more useful
|
|
661
661
|
than refusing to render.
|
|
662
662
|
|
|
663
|
-
**Reflected, because the fold is a stylesheet rule and nothing else.**
|
|
664
|
-
|
|
665
|
-
so the attribute *is* the mechanism: a `max` that reaches this
|
|
666
|
-
never reaches the host matches no rule, and every avatar is
|
|
667
|
-
count claiming some are hidden. Markup is the safe path and
|
|
668
|
-
a script is the broken one, and React takes it for
|
|
669
|
-
matching property rather than an attribute.
|
|
663
|
+
**Reflected, because the fold is a stylesheet rule and nothing else.** A
|
|
664
|
+
sheet hides past the limit one selector per value, as `FOLDS_UP_TO`
|
|
665
|
+
describes, so the attribute *is* the mechanism: a `max` that reaches this
|
|
666
|
+
property and never reaches the host matches no rule, and every avatar is
|
|
667
|
+
drawn beside a count claiming some are hidden. Markup is the safe path and
|
|
668
|
+
hides the fault; a script is the broken one, and React takes it for
|
|
669
|
+
everyone, assigning a matching property rather than an attribute.
|
|
670
670
|
|
|
671
671
|
**Optional rather than defaulted, per the rule that a reflected property
|
|
672
672
|
takes no default**: `max = 0` would stamp `max="0"` onto every host that
|
|
@@ -853,7 +853,7 @@ tier draws whether or not anything points at it.
|
|
|
853
853
|
**A chart-domain axis and deliberately not a library one.** It lives on this
|
|
854
854
|
family alone, and here it is a way of encoding data rather than a way of
|
|
855
855
|
expressing a theme: promoted to the registry it would put an attribute on
|
|
856
|
-
|
|
856
|
+
every component in the library and mean something on one. `wash` because
|
|
857
857
|
that is what the tier below already calls it, in `--chart-bar-wash` and in
|
|
858
858
|
the `bar-wash-start` and `bar-wash-end` stops. */
|
|
859
859
|
wash?: (HelixBarChart["wash"]) | undefined;
|
|
@@ -968,12 +968,12 @@ export type HelixBreadcrumbVueProps = {
|
|
|
968
968
|
current?: (HelixBreadcrumb["current"]) | undefined;
|
|
969
969
|
/** Where the crumb goes, and nothing where it is the current page.
|
|
970
970
|
|
|
971
|
-
**Optional and reflected, because a stylesheet does select on it.**
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
the
|
|
976
|
-
|
|
971
|
+
**Optional and reflected, because a stylesheet does select on it.** A sheet
|
|
972
|
+
writes `:host(:not([href])) [part="link"]` to take the block padding off a
|
|
973
|
+
crumb that is not a link, so the attribute is what decides how tall a crumb
|
|
974
|
+
is. Unreflected, an `href` set from script reached the property, rendered
|
|
975
|
+
the anchor, and left the host looking unlinked: the crumb drew at 20px
|
|
976
|
+
where a markup twin drew at 28.
|
|
977
977
|
|
|
978
978
|
Optional rather than defaulted, which is the general rule that a reflected
|
|
979
979
|
property takes no default: an `href` written onto every host would be a link
|
|
@@ -1092,7 +1092,7 @@ the trigger silently does nothing at all. A wrapper has to hand them down,
|
|
|
1092
1092
|
the same way `label` becomes `aria-label` in there.
|
|
1093
1093
|
|
|
1094
1094
|
```html
|
|
1095
|
-
<helix-button commandfor="confirm" command="--show">Delete…</helix-button>
|
|
1095
|
+
<helix-headless-button commandfor="confirm" command="--show">Delete…</helix-headless-button>
|
|
1096
1096
|
```
|
|
1097
1097
|
|
|
1098
1098
|
`commandFor` spells its attribute out, because Lit lowercases a property
|
|
@@ -1476,12 +1476,11 @@ one leaves the other alone. */
|
|
|
1476
1476
|
autoplay?: (HelixCarousel["autoplay"]) | undefined;
|
|
1477
1477
|
/** The slide in view, counted from zero.
|
|
1478
1478
|
|
|
1479
|
-
Reading gives the real slide
|
|
1480
|
-
|
|
1481
|
-
|
|
1482
|
-
`index`
|
|
1483
|
-
|
|
1484
|
-
and `default-index` says where it starts.
|
|
1479
|
+
Reading gives the real slide. Writing always applies, the way a script
|
|
1480
|
+
assigning to a native control does, and is a seed and a correction rather
|
|
1481
|
+
than a claim of ownership: a consumer who wants the decision refuses the
|
|
1482
|
+
`helix-select`. `default-index` is where the carousel starts until
|
|
1483
|
+
something moves it.
|
|
1485
1484
|
|
|
1486
1485
|
The same contract the four mixins carry, written out here rather than
|
|
1487
1486
|
extracted, because a slide is addressed by position and every one of those
|
|
@@ -1549,13 +1548,13 @@ end while the slides stop moving a third of the way through.
|
|
|
1549
1548
|
**The number is published to the styles rather than enumerated by them**,
|
|
1550
1549
|
as `--carousel-per-view` on the track, which is what keeps a width and a
|
|
1551
1550
|
count from disagreeing. A sheet can only name a value it wrote a rule for,
|
|
1552
|
-
so
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
three dots, a pane taking the whole track and five slides
|
|
1556
|
-
dragging.
|
|
1557
|
-
|
|
1558
|
-
|
|
1551
|
+
so a sheet enumerating `per-view="2"` through `5` is a ceiling of five, and
|
|
1552
|
+
above it the pane falls back to one across while this file goes on counting
|
|
1553
|
+
positions. Measured in Chromium over eight slides against such a sheet, six
|
|
1554
|
+
across gave three dots, a pane taking the whole track and five slides
|
|
1555
|
+
reachable only by dragging. Published from here there is no ceiling to
|
|
1556
|
+
exceed, and every sheet reads the same declaration. `runEnd` publishes its
|
|
1557
|
+
correction the same way and for the same reason.
|
|
1559
1558
|
|
|
1560
1559
|
**On the track and not on the host.** A custom property on the host is a
|
|
1561
1560
|
reflected attribute by another name: it would arrive on upgrade, and a
|
|
@@ -1580,8 +1579,8 @@ inline the count would outrank the sheet that computes it, which is why an
|
|
|
1580
1579
|
`auto` track is handed nothing. A count stays for the design that calls for
|
|
1581
1580
|
exactly three.
|
|
1582
1581
|
|
|
1583
|
-
|
|
1584
|
-
|
|
1582
|
+
A sheet says how it divides, and the `auto` example here carries the same
|
|
1583
|
+
three lines for a consumer writing their own.
|
|
1585
1584
|
|
|
1586
1585
|
**A value rather than the resting behavior**, which is what the
|
|
1587
1586
|
responsiveness policy asks of every axis that a box decides: a splitter
|
|
@@ -1609,13 +1608,13 @@ end while the slides stop moving a third of the way through.
|
|
|
1609
1608
|
**The number is published to the styles rather than enumerated by them**,
|
|
1610
1609
|
as `--carousel-per-view` on the track, which is what keeps a width and a
|
|
1611
1610
|
count from disagreeing. A sheet can only name a value it wrote a rule for,
|
|
1612
|
-
so
|
|
1613
|
-
|
|
1614
|
-
|
|
1615
|
-
three dots, a pane taking the whole track and five slides
|
|
1616
|
-
dragging.
|
|
1617
|
-
|
|
1618
|
-
|
|
1611
|
+
so a sheet enumerating `per-view="2"` through `5` is a ceiling of five, and
|
|
1612
|
+
above it the pane falls back to one across while this file goes on counting
|
|
1613
|
+
positions. Measured in Chromium over eight slides against such a sheet, six
|
|
1614
|
+
across gave three dots, a pane taking the whole track and five slides
|
|
1615
|
+
reachable only by dragging. Published from here there is no ceiling to
|
|
1616
|
+
exceed, and every sheet reads the same declaration. `runEnd` publishes its
|
|
1617
|
+
correction the same way and for the same reason.
|
|
1619
1618
|
|
|
1620
1619
|
**On the track and not on the host.** A custom property on the host is a
|
|
1621
1620
|
reflected attribute by another name: it would arrive on upgrade, and a
|
|
@@ -1640,8 +1639,8 @@ inline the count would outrank the sheet that computes it, which is why an
|
|
|
1640
1639
|
`auto` track is handed nothing. A count stays for the design that calls for
|
|
1641
1640
|
exactly three.
|
|
1642
1641
|
|
|
1643
|
-
|
|
1644
|
-
|
|
1642
|
+
A sheet says how it divides, and the `auto` example here carries the same
|
|
1643
|
+
three lines for a consumer writing their own.
|
|
1645
1644
|
|
|
1646
1645
|
**A value rather than the resting behavior**, which is what the
|
|
1647
1646
|
responsiveness policy asks of every axis that a box decides: a splitter
|
|
@@ -1835,13 +1834,13 @@ pinned because a conversation opens at its most recent turn.
|
|
|
1835
1834
|
|
|
1836
1835
|
**Not reflected, and the default is why.** A reflected property that
|
|
1837
1836
|
defaults to true writes its attribute on upgrade whether or not the
|
|
1838
|
-
consumer wrote one, so the server serves `<helix-chat label="x">`
|
|
1839
|
-
client turns it into `<helix-chat label="x" pinned>`: a
|
|
1840
|
-
React consumer reports and does not patch up. Nothing
|
|
1841
|
-
either, because the one thing that changes with the pin
|
|
1842
|
-
that is a part inside the shadow tree where a
|
|
1843
|
-
it. Measured rather than assumed: `label,
|
|
1844
|
-
`label` from the server. */
|
|
1837
|
+
consumer wrote one, so the server serves `<helix-headless-chat label="x">`
|
|
1838
|
+
and the client turns it into `<helix-headless-chat label="x" pinned>`: a
|
|
1839
|
+
hydration mismatch a React consumer reports and does not patch up. Nothing
|
|
1840
|
+
needs the attribute either, because the one thing that changes with the pin
|
|
1841
|
+
is the way back, and that is a part inside the shadow tree where a
|
|
1842
|
+
stylesheet can already reach it. Measured rather than assumed: `label,
|
|
1843
|
+
pinned` after upgrade against `label` from the server. */
|
|
1845
1844
|
pinned?: (HelixChat["pinned"]) | undefined;
|
|
1846
1845
|
/** How near the bottom still counts as being at it, in pixels.
|
|
1847
1846
|
|
|
@@ -1959,9 +1958,9 @@ Not reflected: the attribute is the consumer's input and stays as they
|
|
|
1959
1958
|
wrote it, and `:state(checked)` carries the resolved state for
|
|
1960
1959
|
stylesheets. */
|
|
1961
1960
|
checked?: (HelixCheckbox["checked"]) | undefined;
|
|
1962
|
-
/**
|
|
1961
|
+
/** Whether the markup declared it checked, which is where a reset returns to. */
|
|
1963
1962
|
"default-checked"?: (HelixCheckbox["defaultChecked"]) | undefined;
|
|
1964
|
-
/**
|
|
1963
|
+
/** Whether the markup declared it checked, which is where a reset returns to. */
|
|
1965
1964
|
defaultChecked?: (HelixCheckbox["defaultChecked"]) | undefined;
|
|
1966
1965
|
/** What is wrong, in the reader's words rather than the browser's. */
|
|
1967
1966
|
feedback?: (HelixCheckbox["feedback"]) | undefined;
|
|
@@ -2034,11 +2033,11 @@ present, which is true. Measured, and it is why this is named the other way
|
|
|
2034
2033
|
round. The platform already writes booleans like this for the same reason,
|
|
2035
2034
|
`novalidate` and `nomodule` and `noreferrer` among them.
|
|
2036
2035
|
|
|
2037
|
-
**Reflected, because the gutter is a stylesheet rule.**
|
|
2038
|
-
|
|
2039
|
-
|
|
2040
|
-
|
|
2041
|
-
|
|
2036
|
+
**Reflected, because the gutter is a stylesheet rule.** A sheet reserves
|
|
2037
|
+
the copy button's width with `:host(:not([no-copy]))`, so the attribute is
|
|
2038
|
+
what decides whether the block pays for a control. Unreflected, setting it
|
|
2039
|
+
from script takes the button away (`render` reads the property) and leaves
|
|
2040
|
+
the 40px it stood in reserved.
|
|
2042
2041
|
|
|
2043
2042
|
A false boolean reflects as the attribute's absence, so this costs no
|
|
2044
2043
|
`no-copy=""` on hosts that never asked for one, and the rule about a
|
|
@@ -2054,11 +2053,11 @@ present, which is true. Measured, and it is why this is named the other way
|
|
|
2054
2053
|
round. The platform already writes booleans like this for the same reason,
|
|
2055
2054
|
`novalidate` and `nomodule` and `noreferrer` among them.
|
|
2056
2055
|
|
|
2057
|
-
**Reflected, because the gutter is a stylesheet rule.**
|
|
2058
|
-
|
|
2059
|
-
|
|
2060
|
-
|
|
2061
|
-
|
|
2056
|
+
**Reflected, because the gutter is a stylesheet rule.** A sheet reserves
|
|
2057
|
+
the copy button's width with `:host(:not([no-copy]))`, so the attribute is
|
|
2058
|
+
what decides whether the block pays for a control. Unreflected, setting it
|
|
2059
|
+
from script takes the button away (`render` reads the property) and leaves
|
|
2060
|
+
the 40px it stood in reserved.
|
|
2062
2061
|
|
|
2063
2062
|
A false boolean reflects as the attribute's absence, so this costs no
|
|
2064
2063
|
`no-copy=""` on hosts that never asked for one, and the rule about a
|
|
@@ -2108,9 +2107,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
2108
2107
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
2109
2108
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
2110
2109
|
open?: (HelixColorInput["open"]) | undefined;
|
|
2111
|
-
/**
|
|
2110
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
2112
2111
|
"default-open"?: (HelixColorInput["defaultOpen"]) | undefined;
|
|
2113
|
-
/**
|
|
2112
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
2114
2113
|
defaultOpen?: (HelixColorInput["defaultOpen"]) | undefined;
|
|
2115
2114
|
/** The value the markup declared, which is where a reset returns to. */
|
|
2116
2115
|
"default-value"?: (HelixColorInput["defaultValue"]) | undefined;
|
|
@@ -2364,10 +2363,10 @@ letting it open would take a color from the reader and drop it. */
|
|
|
2364
2363
|
|
|
2365
2364
|
**A color is exactly as requirable as a date**, which is the comparison
|
|
2366
2365
|
that settles it: this element extends `HelixFormElement`, carries `name`
|
|
2367
|
-
and reports its value, so a consumer writing
|
|
2368
|
-
|
|
2369
|
-
to
|
|
2370
|
-
|
|
2366
|
+
and reports its value, so a consumer writing `<helix-headless-color-picker
|
|
2367
|
+
name="brand" required>` inside a form has every reason to expect the form
|
|
2368
|
+
to refuse an empty one. Its two siblings in the same composition position,
|
|
2369
|
+
Date Picker and Time Picker, both check it.
|
|
2371
2370
|
|
|
2372
2371
|
Written out rather than taken from `MixinField`, for the reason those two
|
|
2373
2372
|
record: the mixin brings a label, a hint and a feedback region, and this is
|
|
@@ -2460,9 +2459,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
2460
2459
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
2461
2460
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
2462
2461
|
open?: (HelixCombobox["open"]) | undefined;
|
|
2463
|
-
/**
|
|
2462
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
2464
2463
|
"default-open"?: (HelixCombobox["defaultOpen"]) | undefined;
|
|
2465
|
-
/**
|
|
2464
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
2466
2465
|
defaultOpen?: (HelixCombobox["defaultOpen"]) | undefined;
|
|
2467
2466
|
/** What the control is called once everything is showing. */
|
|
2468
2467
|
"collapse-label"?: (HelixCombobox["collapseLabel"]) | undefined;
|
|
@@ -2643,9 +2642,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
2643
2642
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
2644
2643
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
2645
2644
|
open?: (HelixCommand["open"]) | undefined;
|
|
2646
|
-
/**
|
|
2645
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
2647
2646
|
"default-open"?: (HelixCommand["defaultOpen"]) | undefined;
|
|
2648
|
-
/**
|
|
2647
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
2649
2648
|
defaultOpen?: (HelixCommand["defaultOpen"]) | undefined;
|
|
2650
2649
|
/** Words shown where the filter has matched nothing. */
|
|
2651
2650
|
"empty-text"?: (HelixCommand["emptyText"]) | undefined;
|
|
@@ -2741,7 +2740,7 @@ the trigger silently does nothing at all. A wrapper has to hand them down,
|
|
|
2741
2740
|
the same way `label` becomes `aria-label` in there.
|
|
2742
2741
|
|
|
2743
2742
|
```html
|
|
2744
|
-
<helix-button commandfor="confirm" command="--show">Delete…</helix-button>
|
|
2743
|
+
<helix-headless-button commandfor="confirm" command="--show">Delete…</helix-headless-button>
|
|
2745
2744
|
```
|
|
2746
2745
|
|
|
2747
2746
|
`commandFor` spells its attribute out, because Lit lowercases a property
|
|
@@ -3030,17 +3029,17 @@ refusing it leaves the selection as it was. */
|
|
|
3030
3029
|
|
|
3031
3030
|
**It announces nothing, and that is not an omission.** Nothing in this
|
|
3032
3031
|
element ever asks for a different page size: a size selector is
|
|
3033
|
-
`
|
|
3034
|
-
|
|
3035
|
-
|
|
3032
|
+
`PaginationSize`, which a consumer puts in the `footer` slot and answers
|
|
3033
|
+
themselves. Routing this through `requestChange` would announce an event
|
|
3034
|
+
the element never has cause to fire. */
|
|
3036
3035
|
"page-size"?: (HelixDataTable["pageSize"] | `${number}`) | undefined;
|
|
3037
3036
|
/** How many rows a page holds. Zero is every row, which is what "no paging" means.
|
|
3038
3037
|
|
|
3039
3038
|
**It announces nothing, and that is not an omission.** Nothing in this
|
|
3040
3039
|
element ever asks for a different page size: a size selector is
|
|
3041
|
-
`
|
|
3042
|
-
|
|
3043
|
-
|
|
3040
|
+
`PaginationSize`, which a consumer puts in the `footer` slot and answers
|
|
3041
|
+
themselves. Routing this through `requestChange` would announce an event
|
|
3042
|
+
the element never has cause to fire. */
|
|
3044
3043
|
pageSize?: (HelixDataTable["pageSize"]) | undefined;
|
|
3045
3044
|
/** How many rows the whole result has, where this element cannot count them.
|
|
3046
3045
|
|
|
@@ -3152,9 +3151,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
3152
3151
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
3153
3152
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
3154
3153
|
open?: (HelixDateInput["open"]) | undefined;
|
|
3155
|
-
/**
|
|
3154
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
3156
3155
|
"default-open"?: (HelixDateInput["defaultOpen"]) | undefined;
|
|
3157
|
-
/**
|
|
3156
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
3158
3157
|
defaultOpen?: (HelixDateInput["defaultOpen"]) | undefined;
|
|
3159
3158
|
/** What the control is called once everything is showing. */
|
|
3160
3159
|
"collapse-label"?: (HelixDateInput["collapseLabel"]) | undefined;
|
|
@@ -3618,9 +3617,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
3618
3617
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
3619
3618
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
3620
3619
|
open?: (HelixDialog["open"]) | undefined;
|
|
3621
|
-
/**
|
|
3620
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
3622
3621
|
"default-open"?: (HelixDialog["defaultOpen"]) | undefined;
|
|
3623
|
-
/**
|
|
3622
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
3624
3623
|
defaultOpen?: (HelixDialog["defaultOpen"]) | undefined;
|
|
3625
3624
|
/** Which close requests the browser answers on its own.
|
|
3626
3625
|
|
|
@@ -3780,7 +3779,7 @@ thickness decides is arithmetic done here and published as
|
|
|
3780
3779
|
`--donut-chart-stroke`, which is a number a rule can do sums with where the
|
|
3781
3780
|
word is not. Reflected, it wrote a value onto every host a script had set
|
|
3782
3781
|
it on for nothing to read. `sweep` beside it is the converse and reflects,
|
|
3783
|
-
because
|
|
3782
|
+
because the styled sheet selects on it. */
|
|
3784
3783
|
hole?: (HelixDonutChart["hole"]) | undefined;
|
|
3785
3784
|
/** How much of the circle the whole occupies.
|
|
3786
3785
|
|
|
@@ -3846,9 +3845,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
3846
3845
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
3847
3846
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
3848
3847
|
open?: (HelixDrawer["open"]) | undefined;
|
|
3849
|
-
/**
|
|
3848
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
3850
3849
|
"default-open"?: (HelixDrawer["defaultOpen"]) | undefined;
|
|
3851
|
-
/**
|
|
3850
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
3852
3851
|
defaultOpen?: (HelixDrawer["defaultOpen"]) | undefined;
|
|
3853
3852
|
/** Which close requests the browser answers on its own.
|
|
3854
3853
|
|
|
@@ -3888,10 +3887,10 @@ not, rather than shown or hidden by CSS. */
|
|
|
3888
3887
|
modal?: (HelixDrawer["modal"]) | undefined;
|
|
3889
3888
|
/** Which edge the drawer comes from.
|
|
3890
3889
|
|
|
3891
|
-
Unset is `end`,
|
|
3892
|
-
beside `:host([placement="end"])` rather than as a value written here: a
|
|
3890
|
+
Unset is `end`, and it stays unset rather than being written down: a
|
|
3893
3891
|
default assigned to the property would reflect onto every host and put a
|
|
3894
|
-
`placement="end"` into markup no consumer wrote.
|
|
3892
|
+
`placement="end"` into markup no consumer wrote. So what this tier
|
|
3893
|
+
guarantees is the absence, and a sheet selects on it. */
|
|
3895
3894
|
placement?: (HelixDrawer["placement"]) | undefined;
|
|
3896
3895
|
/** What the dialog closed with, the way `<dialog>` reports it.
|
|
3897
3896
|
|
|
@@ -4292,9 +4291,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
4292
4291
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
4293
4292
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
4294
4293
|
open?: (HelixFilterInput["open"]) | undefined;
|
|
4295
|
-
/**
|
|
4294
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
4296
4295
|
"default-open"?: (HelixFilterInput["defaultOpen"]) | undefined;
|
|
4297
|
-
/**
|
|
4296
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
4298
4297
|
defaultOpen?: (HelixFilterInput["defaultOpen"]) | undefined;
|
|
4299
4298
|
/** What the control is called once everything is showing. */
|
|
4300
4299
|
"collapse-label"?: (HelixFilterInput["collapseLabel"]) | undefined;
|
|
@@ -4419,11 +4418,12 @@ renders nothing rather than the epoch, which is what parsing an empty string
|
|
|
4419
4418
|
would give.
|
|
4420
4419
|
|
|
4421
4420
|
**The element's own text is read as a fallback, and only in a browser.**
|
|
4422
|
-
`<helix-
|
|
4423
|
-
|
|
4424
|
-
|
|
4425
|
-
|
|
4426
|
-
|
|
4421
|
+
`<helix-headless-format-date
|
|
4422
|
+
elapsed>2026-08-27T01:00:00Z</helix-headless-format-date>` is the spelling
|
|
4423
|
+
that reads best in markup, and it cannot be the only one: measured against
|
|
4424
|
+
Lit's server shim, `textContent`, `children`, `firstChild` and
|
|
4425
|
+
`querySelector` are all `undefined` there, so a server has no way to see
|
|
4426
|
+
it. An element rendered on a server needs the attribute; one rendered in a
|
|
4427
4427
|
browser may use either. */
|
|
4428
4428
|
date?: (HelixFormatDate["date"]) | undefined;
|
|
4429
4429
|
/** How the day of the month is written, where a date is shown. */
|
|
@@ -4524,12 +4524,12 @@ so a number written here that disagrees with the sheet is a promise the
|
|
|
4524
4524
|
consumer has to keep by hand, and the one number a summary is told to trust
|
|
4525
4525
|
is the one it gets wrong.
|
|
4526
4526
|
|
|
4527
|
-
The strip measures itself, so
|
|
4528
|
-
|
|
4529
|
-
|
|
4530
|
-
|
|
4531
|
-
|
|
4532
|
-
|
|
4527
|
+
The strip measures itself, so sizing the cells in a sheet is enough on its
|
|
4528
|
+
own and these two are the estimate used until the first measurement lands.
|
|
4529
|
+
Writing the attribute pins the value and stops the measurement being
|
|
4530
|
+
consulted, which is what a container query or a transition on the cell size
|
|
4531
|
+
wants, where what is drawn this frame is not what the arithmetic should
|
|
4532
|
+
plan around.
|
|
4533
4533
|
|
|
4534
4534
|
Zero turns the dropping off altogether, which is right for a strip in a
|
|
4535
4535
|
container that cannot get narrow. */
|
|
@@ -4542,12 +4542,12 @@ so a number written here that disagrees with the sheet is a promise the
|
|
|
4542
4542
|
consumer has to keep by hand, and the one number a summary is told to trust
|
|
4543
4543
|
is the one it gets wrong.
|
|
4544
4544
|
|
|
4545
|
-
The strip measures itself, so
|
|
4546
|
-
|
|
4547
|
-
|
|
4548
|
-
|
|
4549
|
-
|
|
4550
|
-
|
|
4545
|
+
The strip measures itself, so sizing the cells in a sheet is enough on its
|
|
4546
|
+
own and these two are the estimate used until the first measurement lands.
|
|
4547
|
+
Writing the attribute pins the value and stops the measurement being
|
|
4548
|
+
consulted, which is what a container query or a transition on the cell size
|
|
4549
|
+
wants, where what is drawn this frame is not what the arithmetic should
|
|
4550
|
+
plan around.
|
|
4551
4551
|
|
|
4552
4552
|
Zero turns the dropping off altogether, which is right for a strip in a
|
|
4553
4553
|
container that cannot get narrow. */
|
|
@@ -4640,7 +4640,7 @@ the trigger silently does nothing at all. A wrapper has to hand them down,
|
|
|
4640
4640
|
the same way `label` becomes `aria-label` in there.
|
|
4641
4641
|
|
|
4642
4642
|
```html
|
|
4643
|
-
<helix-button commandfor="confirm" command="--show">Delete…</helix-button>
|
|
4643
|
+
<helix-headless-button commandfor="confirm" command="--show">Delete…</helix-headless-button>
|
|
4644
4644
|
```
|
|
4645
4645
|
|
|
4646
4646
|
`commandFor` spells its attribute out, because Lit lowercases a property
|
|
@@ -4875,10 +4875,10 @@ Read-only to a consumer: it is a report rather than a setting.
|
|
|
4875
4875
|
**Mirrored to `data-status`, and not reflected as `status`.** It is element
|
|
4876
4876
|
state, so reflecting it puts the element's own bookkeeping into the markup
|
|
4877
4877
|
a consumer rendered: React reads the attribute appearing at upgrade as a
|
|
4878
|
-
hydration mismatch, and a
|
|
4879
|
-
|
|
4880
|
-
|
|
4881
|
-
|
|
4878
|
+
hydration mismatch, and a host pasted back carrying `status="loaded"`
|
|
4879
|
+
declares that a picture has arrived which this element has never fetched.
|
|
4880
|
+
The `data-` name is the library's answer to both, being a name a re-parse
|
|
4881
|
+
cannot mistake for a declaration, and it is what `data-closed` on
|
|
4882
4882
|
`Toast.Item` already does. A picture arrives after somebody fetched it,
|
|
4883
4883
|
which puts this on the safe side of hydration: a fact that can be true on
|
|
4884
4884
|
the *first* update mirrors to a custom state instead, which is what
|
|
@@ -4961,20 +4961,20 @@ Not a label: it goes when typing starts. */
|
|
|
4961
4961
|
**The attribute is `readonly`, which is the platform's spelling.** A
|
|
4962
4962
|
camelCase property needs an explicit `attribute`, and dash-casing a word
|
|
4963
4963
|
HTML writes as one costs what an attribute always costs here: nothing
|
|
4964
|
-
warns. `<helix-input readonly>` is what anybody who has written
|
|
4965
|
-
against `read-only` it parses to no property at all, and the
|
|
4966
|
-
editable with no error anywhere. Measured on the dash-cased
|
|
4967
|
-
came back `false`. */
|
|
4964
|
+
warns. `<helix-headless-input readonly>` is what anybody who has written
|
|
4965
|
+
HTML types; against `read-only` it parses to no property at all, and the
|
|
4966
|
+
field stays editable with no error anywhere. Measured on the dash-cased
|
|
4967
|
+
form, `readOnly` came back `false`. */
|
|
4968
4968
|
readonly?: (HelixInput["readOnly"]) | undefined;
|
|
4969
4969
|
/** Whether the field refuses input while still submitting its value.
|
|
4970
4970
|
|
|
4971
4971
|
**The attribute is `readonly`, which is the platform's spelling.** A
|
|
4972
4972
|
camelCase property needs an explicit `attribute`, and dash-casing a word
|
|
4973
4973
|
HTML writes as one costs what an attribute always costs here: nothing
|
|
4974
|
-
warns. `<helix-input readonly>` is what anybody who has written
|
|
4975
|
-
against `read-only` it parses to no property at all, and the
|
|
4976
|
-
editable with no error anywhere. Measured on the dash-cased
|
|
4977
|
-
came back `false`. */
|
|
4974
|
+
warns. `<helix-headless-input readonly>` is what anybody who has written
|
|
4975
|
+
HTML types; against `read-only` it parses to no property at all, and the
|
|
4976
|
+
field stays editable with no error anywhere. Measured on the dash-cased
|
|
4977
|
+
form, `readOnly` came back `false`. */
|
|
4978
4978
|
readOnly?: (HelixInput["readOnly"]) | undefined;
|
|
4979
4979
|
/** Whether a password field offers a toggle that shows what was typed.
|
|
4980
4980
|
|
|
@@ -4995,9 +4995,9 @@ The state is `aria-pressed`, not this. */
|
|
|
4995
4995
|
|
|
4996
4996
|
**Not reflected.** Reflection exists so a selector can reach a value, and
|
|
4997
4997
|
no stylesheet in this repository selects on `type`. Reflecting it writes
|
|
4998
|
-
`type="text"` onto every `<helix-input>` ever rendered, an
|
|
4999
|
-
consumer's markup has, which is the fault the area rules write
|
|
5000
|
-
`Button`'s `href`, `target` and `rel`.
|
|
4998
|
+
`type="text"` onto every `<helix-headless-input>` ever rendered, an
|
|
4999
|
+
attribute no consumer's markup has, which is the fault the area rules write
|
|
5000
|
+
up under `Button`'s `href`, `target` and `rel`.
|
|
5001
5001
|
|
|
5002
5002
|
Nothing reads it from the attribute either. The real `<input>` inside takes
|
|
5003
5003
|
it as a property binding, which is what makes the keyboard and the
|
|
@@ -5310,8 +5310,7 @@ beside it for instance. `ring` lets the ground through, for a chart drawn
|
|
|
5310
5310
|
over something busy. `triangle` points along the axis and reads as "and
|
|
5311
5311
|
onward" rather than as a second claim about the data.
|
|
5312
5312
|
|
|
5313
|
-
The shapes come from
|
|
5314
|
-
`helix/styled/src/shared/chart/terminus.css`, the same sheet `Sparkline` takes, so
|
|
5313
|
+
The shapes come from one shared sheet, the same one `Sparkline` takes, so
|
|
5315
5314
|
the set is identical wherever one appears. **Which is why every value is
|
|
5316
5315
|
named here.** `Sparkline` shipped `square` implemented, drawn, asserted and
|
|
5317
5316
|
undocumented until the cohort before this one; this family reads the same
|
|
@@ -5395,10 +5394,10 @@ has to survive with the stylesheet turned off.
|
|
|
5395
5394
|
label?: (HelixList["label"]) | undefined;
|
|
5396
5395
|
/** Which markers an ordered list draws, in `<ol type>`'s own five values.
|
|
5397
5396
|
|
|
5398
|
-
Reflected, because this is one of the things a stylesheet selects on
|
|
5399
|
-
|
|
5400
|
-
|
|
5401
|
-
|
|
5397
|
+
Reflected, because this is one of the things a stylesheet selects on, each
|
|
5398
|
+
value mapping to a `list-style-type`. The platform's spellings rather than
|
|
5399
|
+
the CSS ones, so `<helix-headless-list kind="ordered" type="i">` is what a
|
|
5400
|
+
consumer would have written on an `<ol>`.
|
|
5402
5401
|
|
|
5403
5402
|
**`start` and `reversed` are both absent and neither can be done here.**
|
|
5404
5403
|
This renders no `<ol>`: the rows are slotted and numbered by the CSS
|
|
@@ -5579,9 +5578,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
5579
5578
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
5580
5579
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
5581
5580
|
open?: (HelixMegamenu["open"]) | undefined;
|
|
5582
|
-
/**
|
|
5581
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
5583
5582
|
"default-open"?: (HelixMegamenu["defaultOpen"]) | undefined;
|
|
5584
|
-
/**
|
|
5583
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
5585
5584
|
defaultOpen?: (HelixMegamenu["defaultOpen"]) | undefined;
|
|
5586
5585
|
/** The width, in pixels, under which a card becomes a band. Zero never does.
|
|
5587
5586
|
|
|
@@ -5797,9 +5796,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
5797
5796
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
5798
5797
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
5799
5798
|
open?: (HelixMenu["open"]) | undefined;
|
|
5800
|
-
/**
|
|
5799
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
5801
5800
|
"default-open"?: (HelixMenu["defaultOpen"]) | undefined;
|
|
5802
|
-
/**
|
|
5801
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
5803
5802
|
defaultOpen?: (HelixMenu["defaultOpen"]) | undefined;
|
|
5804
5803
|
/** What the row returning from a submenu reads. */
|
|
5805
5804
|
"back-label"?: (HelixMenu["backLabel"]) | undefined;
|
|
@@ -5973,9 +5972,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
5973
5972
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
5974
5973
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
5975
5974
|
open?: (HelixNotificationGroup["open"]) | undefined;
|
|
5976
|
-
/**
|
|
5975
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
5977
5976
|
"default-open"?: (HelixNotificationGroup["defaultOpen"]) | undefined;
|
|
5978
|
-
/**
|
|
5977
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
5979
5978
|
defaultOpen?: (HelixNotificationGroup["defaultOpen"]) | undefined;
|
|
5980
5979
|
/** Whether the group can be collapsed to its first row.
|
|
5981
5980
|
|
|
@@ -6066,10 +6065,10 @@ this element then owns.
|
|
|
6066
6065
|
|
|
6067
6066
|
**Not reflected.** Unread is a visual state, which is why the four mixins
|
|
6068
6067
|
mirror theirs, but the mirror may not be the property's own attribute:
|
|
6069
|
-
`<helix-notification default-read>` comes back from a server
|
|
6070
|
-
and would gain it on the first update, which React reports
|
|
6071
|
-
mismatch, and which a copy of the serialized element
|
|
6072
|
-
declaration. `:state(read)` is what the stylesheet reads.
|
|
6068
|
+
`<helix-headless-notification default-read>` comes back from a server
|
|
6069
|
+
without `read` and would gain it on the first update, which React reports
|
|
6070
|
+
as a hydration mismatch, and which a copy of the serialized element
|
|
6071
|
+
re-parses as a declaration. `:state(read)` is what the stylesheet reads.
|
|
6073
6072
|
`hydration.dom.spec.ts` holds it. */
|
|
6074
6073
|
read?: (HelixNotification["read"]) | undefined;
|
|
6075
6074
|
/** State to open with, where nothing declared one. */
|
|
@@ -6359,11 +6358,10 @@ Written by the listbox. */
|
|
|
6359
6358
|
/** A second destination for this row, taken with the modifier held.
|
|
6360
6359
|
|
|
6361
6360
|
**An attribute rather than a second row, which is the whole point.** A
|
|
6362
|
-
palette
|
|
6363
|
-
|
|
6364
|
-
|
|
6365
|
-
|
|
6366
|
-
second belongs beside it.
|
|
6361
|
+
palette that offered every component a reference page and a sandbox as
|
|
6362
|
+
separate entries would be twice as long, and one earns its keep by getting
|
|
6363
|
+
a reader to one thing in three keystrokes. The row already carries the
|
|
6364
|
+
first destination, so the second belongs beside it.
|
|
6367
6365
|
|
|
6368
6366
|
Declared here and acted on by whatever owns the list, the same division
|
|
6369
6367
|
selection already uses: an option says what it is and the listbox decides
|
|
@@ -6433,7 +6431,7 @@ attribute and the state is the property.
|
|
|
6433
6431
|
**The attribute, read when it is asked for, and never a snapshot taken in
|
|
6434
6432
|
the constructor.** A field initializer runs there, and an element the HTML
|
|
6435
6433
|
parser created has none of its attributes yet at that moment: measured on
|
|
6436
|
-
this element, on `Radio` and on `Toggle`, `<helix-option value="a"
|
|
6434
|
+
this element, on `Radio` and on `Toggle`, `<helix-headless-option value="a"
|
|
6437
6435
|
selected>` reported `defaultSelected` as `false` both from parsed markup
|
|
6438
6436
|
and from `createElement` followed by `setAttribute`, which is every way a
|
|
6439
6437
|
consumer writes one. The snapshot could only ever be true for an element
|
|
@@ -6822,10 +6820,10 @@ other end is going to reject. A consumer whose codes really do carry
|
|
|
6822
6820
|
marked letters wants `text`, which judges nothing.
|
|
6823
6821
|
|
|
6824
6822
|
**Not reflected**: nothing selects on it, so reflecting only writes
|
|
6825
|
-
`type="numeric"` onto every `<helix-pin-input>` ever rendered, an
|
|
6826
|
-
no consumer's markup had. The area rules carry the sentence
|
|
6827
|
-
what CSS selects on". The real inputs take it as a binding,
|
|
6828
|
-
makes the keyboard follow. */
|
|
6823
|
+
`type="numeric"` onto every `<helix-headless-pin-input>` ever rendered, an
|
|
6824
|
+
attribute no consumer's markup had. The area rules carry the sentence
|
|
6825
|
+
"reflect only what CSS selects on". The real inputs take it as a binding,
|
|
6826
|
+
which is what makes the keyboard follow. */
|
|
6829
6827
|
type?: (HelixPinInput["type"]) | undefined;
|
|
6830
6828
|
/** Whether the control is non-interactive.
|
|
6831
6829
|
|
|
@@ -6900,9 +6898,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
6900
6898
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
6901
6899
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
6902
6900
|
open?: (HelixPopover["open"]) | undefined;
|
|
6903
|
-
/**
|
|
6901
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
6904
6902
|
"default-open"?: (HelixPopover["defaultOpen"]) | undefined;
|
|
6905
|
-
/**
|
|
6903
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
6906
6904
|
defaultOpen?: (HelixPopover["defaultOpen"]) | undefined;
|
|
6907
6905
|
/** Accessible name for the panel. */
|
|
6908
6906
|
label?: (HelixPopover["label"]) | undefined;
|
|
@@ -7213,7 +7211,7 @@ attribute and the state is the property.
|
|
|
7213
7211
|
**The attribute, read when it is asked for, and never a snapshot taken in
|
|
7214
7212
|
the constructor.** A field initializer runs there, and an element the HTML
|
|
7215
7213
|
parser created has none of its attributes yet at that moment: measured on
|
|
7216
|
-
this element, on `Option` and on `Toggle`, `<helix-radio value="a"
|
|
7214
|
+
this element, on `Option` and on `Toggle`, `<helix-headless-radio value="a"
|
|
7217
7215
|
selected>` reported `defaultSelected` as `false` both from parsed markup
|
|
7218
7216
|
and from `createElement` followed by `setAttribute`, which is every way a
|
|
7219
7217
|
consumer writes one. The snapshot could only ever be true for an element
|
|
@@ -7817,9 +7815,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
7817
7815
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
7818
7816
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
7819
7817
|
open?: (HelixSelect["open"]) | undefined;
|
|
7820
|
-
/**
|
|
7818
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
7821
7819
|
"default-open"?: (HelixSelect["defaultOpen"]) | undefined;
|
|
7822
|
-
/**
|
|
7820
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
7823
7821
|
defaultOpen?: (HelixSelect["defaultOpen"]) | undefined;
|
|
7824
7822
|
/** The value the markup declared, which is where a reset returns to. */
|
|
7825
7823
|
"default-value"?: (HelixSelect["defaultValue"]) | undefined;
|
|
@@ -8238,9 +8236,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
8238
8236
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
8239
8237
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
8240
8238
|
open?: (HelixSpeedDial["open"]) | undefined;
|
|
8241
|
-
/**
|
|
8239
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
8242
8240
|
"default-open"?: (HelixSpeedDial["defaultOpen"]) | undefined;
|
|
8243
|
-
/**
|
|
8241
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
8244
8242
|
defaultOpen?: (HelixSpeedDial["defaultOpen"]) | undefined;
|
|
8245
8243
|
/** Names the trigger and the set of actions it opens. */
|
|
8246
8244
|
label?: (HelixSpeedDial["label"]) | undefined;
|
|
@@ -8412,9 +8410,9 @@ the headline and the label is a caption under it.
|
|
|
8412
8410
|
The row directions set them side by side, for a figure in a line of text or
|
|
8413
8411
|
a narrow strip where a stacked pair would be two lines of almost nothing.
|
|
8414
8412
|
|
|
8415
|
-
A property rather than a `
|
|
8416
|
-
|
|
8417
|
-
|
|
8413
|
+
A property rather than a `Flex` around it, because the unit has to stay on
|
|
8414
|
+
the value's baseline whichever way the pair goes, and only this element
|
|
8415
|
+
knows which of its children the unit belongs to.
|
|
8418
8416
|
|
|
8419
8417
|
**Optional rather than defaulted to `column`, which is not a style
|
|
8420
8418
|
preference.** A reflecting property with a default writes its attribute onto
|
|
@@ -8450,11 +8448,11 @@ Writing always applies, so `<helix-tabs active="one">` starts on that
|
|
|
8450
8448
|
tab, and `default-active` is how markup says where to start without
|
|
8451
8449
|
naming the current one. */
|
|
8452
8450
|
active?: (HelixSteps["active"]) | undefined;
|
|
8453
|
-
/**
|
|
8451
|
+
/** Which item the markup declared current.
|
|
8454
8452
|
|
|
8455
8453
|
Ignored once `active` is written. */
|
|
8456
8454
|
"default-active"?: (HelixSteps["defaultActive"]) | undefined;
|
|
8457
|
-
/**
|
|
8455
|
+
/** Which item the markup declared current.
|
|
8458
8456
|
|
|
8459
8457
|
Ignored once `active` is written. */
|
|
8460
8458
|
defaultActive?: (HelixSteps["defaultActive"]) | undefined;
|
|
@@ -8535,9 +8533,9 @@ Not reflected: the attribute is the consumer's input and stays as they
|
|
|
8535
8533
|
wrote it, and `:state(checked)` carries the resolved state for
|
|
8536
8534
|
stylesheets. */
|
|
8537
8535
|
checked?: (HelixSwitch["checked"]) | undefined;
|
|
8538
|
-
/**
|
|
8536
|
+
/** Whether the markup declared it checked, which is where a reset returns to. */
|
|
8539
8537
|
"default-checked"?: (HelixSwitch["defaultChecked"]) | undefined;
|
|
8540
|
-
/**
|
|
8538
|
+
/** Whether the markup declared it checked, which is where a reset returns to. */
|
|
8541
8539
|
defaultChecked?: (HelixSwitch["defaultChecked"]) | undefined;
|
|
8542
8540
|
/** What is wrong, in the reader's words rather than the browser's. */
|
|
8543
8541
|
feedback?: (HelixSwitch["feedback"]) | undefined;
|
|
@@ -8605,15 +8603,15 @@ export type HelixTableColumnHelixBeforeResizeElementEvent =
|
|
|
8605
8603
|
export type HelixTableColumnVueProps = {
|
|
8606
8604
|
/** Which edge the values line up against.
|
|
8607
8605
|
|
|
8608
|
-
`end` is what a column of numbers wants, so digits of the same magnitude
|
|
8609
|
-
above each other. Left unset the cell inherits the table's own
|
|
8610
|
-
which is `start` for text in either writing direction.
|
|
8611
|
-
aligns the cells it draws. A `
|
|
8612
|
-
wrote, so the table writes nothing onto them: it publishes the
|
|
8613
|
-
cell under this column as `--table-cell-align`, which
|
|
8614
|
-
reads. The heading is this element's own, and
|
|
8615
|
-
the same edge in either table. `end` is the
|
|
8616
|
-
right-to-left table it is the left.
|
|
8606
|
+
`end` is what a column of numbers wants, so digits of the same magnitude
|
|
8607
|
+
sit above each other. Left unset the cell inherits the table's own
|
|
8608
|
+
alignment, which is `start` for text in either writing direction.
|
|
8609
|
+
`DataTable` aligns the cells it draws. A `Table`'s cells are markup the
|
|
8610
|
+
consumer wrote, so the table writes nothing onto them: it publishes the
|
|
8611
|
+
edge to each cell under this column as `--table-cell-align`, which
|
|
8612
|
+
`@fusion.dev/helix` reads. The heading is this element's own, and
|
|
8613
|
+
`@fusion.dev/helix` sets it to the same edge in either table. `end` is the
|
|
8614
|
+
inline end, so in a right-to-left table it is the left.
|
|
8617
8615
|
|
|
8618
8616
|
**Reflected, because the heading is drawn by a stylesheet and has no other
|
|
8619
8617
|
way to learn it.** Set as a property, which is how React sets it, an
|
|
@@ -8660,8 +8658,8 @@ onto its host. */
|
|
|
8660
8658
|
/** The track this column takes, as CSS.
|
|
8661
8659
|
|
|
8662
8660
|
A single track value, so anything valid in `grid-template-columns` works:
|
|
8663
|
-
`16rem`, `auto`, `minmax(0, 2fr)`. Left unset the column takes the track
|
|
8664
|
-
|
|
8661
|
+
`16rem`, `auto`, `minmax(0, 2fr)`. Left unset the column takes the track in
|
|
8662
|
+
its place in a `Table`'s `columns`, where that table sets one, and
|
|
8665
8663
|
otherwise shares what is left over equally, as `minmax(max-content, 1fr)`.
|
|
8666
8664
|
Set here, it wins over that list, which is what lets a reader resize a
|
|
8667
8665
|
column in a table that set one.
|
|
@@ -8721,15 +8719,14 @@ say that without the component knowing what a row looks like. */
|
|
|
8721
8719
|
loadingText?: (HelixTable["loadingText"]) | undefined;
|
|
8722
8720
|
/** The column widths as one track list, written once on the table.
|
|
8723
8721
|
|
|
8724
|
-
With `
|
|
8725
|
-
|
|
8726
|
-
|
|
8727
|
-
|
|
8728
|
-
|
|
8729
|
-
|
|
8730
|
-
|
|
8731
|
-
|
|
8732
|
-
down to one column.
|
|
8722
|
+
With `TableColumn` children, each track sizes the column in its place, a
|
|
8723
|
+
hidden column counted, so hiding one takes its track with it and the rest
|
|
8724
|
+
keep theirs. The columns decide how many tracks there are and this list
|
|
8725
|
+
only how wide: a track past the last column is dropped, and a column past
|
|
8726
|
+
the last track shares what is left. With no columns declared it is the
|
|
8727
|
+
whole track list. Tracks count as the grid counts them, so `minmax(0, 1fr)`
|
|
8728
|
+
is one and `repeat(2, 8rem)` is two, and one the grid would refuse leaves
|
|
8729
|
+
its column at the default rather than taking the table down to one column.
|
|
8733
8730
|
|
|
8734
8731
|
**A column's own `width` wins over its track here.** The width is written
|
|
8735
8732
|
on the column it sizes, which is the more particular statement, and it is
|
|
@@ -8743,13 +8740,11 @@ to walk, so a render there knows of no columns and this attribute is the
|
|
|
8743
8740
|
whole answer: a table given one lays its grid out in the first paint, and a
|
|
8744
8741
|
table sized only by its columns is one track wide until it upgrades.
|
|
8745
8742
|
|
|
8746
|
-
|
|
8747
|
-
|
|
8748
|
-
|
|
8749
|
-
|
|
8750
|
-
|
|
8751
|
-
take the same CSS hook, `--table-columns` and `--data-table-columns`, which
|
|
8752
|
-
wins over whichever list the element worked out. */
|
|
8743
|
+
**Data Table has none of this, and should not.** Its columns are its schema
|
|
8744
|
+
rather than an option, so there is always a column to write a `width` on
|
|
8745
|
+
and a list here would be a second way to say what that says. This table's
|
|
8746
|
+
cells are markup, and a table written as rows of cells with no column
|
|
8747
|
+
declared in it has nowhere else to be sized from. */
|
|
8753
8748
|
columns?: (HelixTable["columns"]) | undefined;
|
|
8754
8749
|
/** Accessible name for the table. */
|
|
8755
8750
|
label?: (HelixTable["label"]) | undefined;
|
|
@@ -8804,11 +8799,11 @@ Writing always applies, so `<helix-tabs active="one">` starts on that
|
|
|
8804
8799
|
tab, and `default-active` is how markup says where to start without
|
|
8805
8800
|
naming the current one. */
|
|
8806
8801
|
active?: (HelixTabs["active"]) | undefined;
|
|
8807
|
-
/**
|
|
8802
|
+
/** Which item the markup declared current.
|
|
8808
8803
|
|
|
8809
8804
|
Ignored once `active` is written. */
|
|
8810
8805
|
"default-active"?: (HelixTabs["defaultActive"]) | undefined;
|
|
8811
|
-
/**
|
|
8806
|
+
/** Which item the markup declared current.
|
|
8812
8807
|
|
|
8813
8808
|
Ignored once `active` is written. */
|
|
8814
8809
|
defaultActive?: (HelixTabs["defaultActive"]) | undefined;
|
|
@@ -9165,9 +9160,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
9165
9160
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
9166
9161
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
9167
9162
|
open?: (HelixTimeInput["open"]) | undefined;
|
|
9168
|
-
/**
|
|
9163
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
9169
9164
|
"default-open"?: (HelixTimeInput["defaultOpen"]) | undefined;
|
|
9170
|
-
/**
|
|
9165
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
9171
9166
|
defaultOpen?: (HelixTimeInput["defaultOpen"]) | undefined;
|
|
9172
9167
|
/** What the control is called once everything is showing. */
|
|
9173
9168
|
"collapse-label"?: (HelixTimeInput["collapseLabel"]) | undefined;
|
|
@@ -9219,8 +9214,8 @@ Absent uses the runtime's own. */
|
|
|
9219
9214
|
|
|
9220
9215
|
Absent is one. `range` holds a start and an end, `multiple` holds any
|
|
9221
9216
|
number, and both are carried as one comma-separated value, which is what a
|
|
9222
|
-
form submits. `
|
|
9223
|
-
why a wheel cannot do either. */
|
|
9217
|
+
form submits. `TimePicker` carries the longer note on the interaction and
|
|
9218
|
+
on why a wheel cannot do either. */
|
|
9224
9219
|
mode?: (HelixTimeInput["mode"]) | undefined;
|
|
9225
9220
|
/** What the field says before a time is in it. */
|
|
9226
9221
|
placeholder?: (HelixTimeInput["placeholder"]) | undefined;
|
|
@@ -9249,7 +9244,7 @@ never something this element would refuse to read back. */
|
|
|
9249
9244
|
`list` offers whole times, which is what a product with slots or opening
|
|
9250
9245
|
hours has. `wheels` splits them into an hour, a minute and a meridiem where
|
|
9251
9246
|
the locale uses one, which is the only way to reach `23:45` without
|
|
9252
|
-
scrolling most of a day. `
|
|
9247
|
+
scrolling most of a day. `TimePicker` carries the longer note on the trade.
|
|
9253
9248
|
|
|
9254
9249
|
**Optional rather than defaulted, which is not a style preference.** A
|
|
9255
9250
|
reflecting property with a default writes its attribute onto every host the
|
|
@@ -9376,7 +9371,7 @@ Absent uses the runtime's own. */
|
|
|
9376
9371
|
|
|
9377
9372
|
Absent is one. `range` holds a start and an end with everything between
|
|
9378
9373
|
them shown as part of the answer, `multiple` holds any number, and both are
|
|
9379
|
-
carried as one comma-separated value: the same shape `
|
|
9374
|
+
carried as one comma-separated value: the same shape `DatePicker` uses,
|
|
9380
9375
|
because it is the same question asked of a different unit.
|
|
9381
9376
|
|
|
9382
9377
|
**A range is two picks, and a third starts over.** That is the calendar's
|
|
@@ -9586,7 +9581,7 @@ where they were would not be a stack.
|
|
|
9586
9581
|
**Optional, and bottom-end is the absence of it.** Reflecting *and*
|
|
9587
9582
|
defaulting is the pair that writes onto a host: every toast region anybody
|
|
9588
9583
|
rendered would gain a `placement="bottom-end"` nobody typed, which a React
|
|
9589
|
-
consumer's server markup does not have.
|
|
9584
|
+
consumer's server markup does not have. A sheet carries the resting
|
|
9590
9585
|
arrangement in its own `:host` rule and the selectors describe only the
|
|
9591
9586
|
departures, which is what `orientation` does. */
|
|
9592
9587
|
placement?: (HelixToast["placement"]) | undefined;
|
|
@@ -9734,11 +9729,11 @@ attribute and the state is the property.
|
|
|
9734
9729
|
**The attribute, read when it is asked for, and never a snapshot taken in
|
|
9735
9730
|
the constructor.** A field initializer runs there, and an element the HTML
|
|
9736
9731
|
parser created has none of its attributes yet at that moment: measured on
|
|
9737
|
-
this element, on `Option` and on `Radio`, `<helix-toggle
|
|
9738
|
-
selected>` reported `defaultSelected` as `false` both from
|
|
9739
|
-
and from `createElement` followed by `setAttribute`, which is
|
|
9740
|
-
consumer writes one. The snapshot could only ever be true for
|
|
9741
|
-
already in the document when `customElements.define` ran.
|
|
9732
|
+
this element, on `Option` and on `Radio`, `<helix-headless-toggle
|
|
9733
|
+
value="light" selected>` reported `defaultSelected` as `false` both from
|
|
9734
|
+
parsed markup and from `createElement` followed by `setAttribute`, which is
|
|
9735
|
+
every way a consumer writes one. The snapshot could only ever be true for
|
|
9736
|
+
an element already in the document when `customElements.define` ran.
|
|
9742
9737
|
|
|
9743
9738
|
Nothing overwrites it either, which is what makes reading it late correct
|
|
9744
9739
|
rather than merely later: `selected` does not reflect, for the reason
|
|
@@ -9825,9 +9820,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
9825
9820
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
9826
9821
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
9827
9822
|
open?: (HelixTooltip["open"]) | undefined;
|
|
9828
|
-
/**
|
|
9823
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
9829
9824
|
"default-open"?: (HelixTooltip["defaultOpen"]) | undefined;
|
|
9830
|
-
/**
|
|
9825
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
9831
9826
|
defaultOpen?: (HelixTooltip["defaultOpen"]) | undefined;
|
|
9832
9827
|
/** The text shown in the bubble.
|
|
9833
9828
|
|
|
@@ -10057,9 +10052,9 @@ hydration, or diffed by a framework, it comes back holding whatever the
|
|
|
10057
10052
|
last reader did rather than what the author wrote. `:state(open)` carries
|
|
10058
10053
|
the resolved state for stylesheets, which is what the mirror is for. */
|
|
10059
10054
|
open?: (HelixTreeItem["open"]) | undefined;
|
|
10060
|
-
/**
|
|
10055
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
10061
10056
|
"default-open"?: (HelixTreeItem["defaultOpen"]) | undefined;
|
|
10062
|
-
/**
|
|
10057
|
+
/** Whether the markup declared it open. Ignored once `open` is written. */
|
|
10063
10058
|
defaultOpen?: (HelixTreeItem["defaultOpen"]) | undefined;
|
|
10064
10059
|
/** Where this node goes, which makes its row a real link.
|
|
10065
10060
|
|
|
@@ -10201,11 +10196,11 @@ Writing always applies, so `<helix-tabs active="one">` starts on that
|
|
|
10201
10196
|
tab, and `default-active` is how markup says where to start without
|
|
10202
10197
|
naming the current one. */
|
|
10203
10198
|
active?: (HelixTree["active"]) | undefined;
|
|
10204
|
-
/**
|
|
10199
|
+
/** Which item the markup declared current.
|
|
10205
10200
|
|
|
10206
10201
|
Ignored once `active` is written. */
|
|
10207
10202
|
"default-active"?: (HelixTree["defaultActive"]) | undefined;
|
|
10208
|
-
/**
|
|
10203
|
+
/** Which item the markup declared current.
|
|
10209
10204
|
|
|
10210
10205
|
Ignored once `active` is written. */
|
|
10211
10206
|
defaultActive?: (HelixTree["defaultActive"]) | undefined;
|
|
@@ -10363,11 +10358,11 @@ Writing always applies, so `<helix-tabs active="one">` starts on that
|
|
|
10363
10358
|
tab, and `default-active` is how markup says where to start without
|
|
10364
10359
|
naming the current one. */
|
|
10365
10360
|
active?: (HelixVideoPlaylist["active"]) | undefined;
|
|
10366
|
-
/**
|
|
10361
|
+
/** Which item the markup declared current.
|
|
10367
10362
|
|
|
10368
10363
|
Ignored once `active` is written. */
|
|
10369
10364
|
"default-active"?: (HelixVideoPlaylist["defaultActive"]) | undefined;
|
|
10370
|
-
/**
|
|
10365
|
+
/** Which item the markup declared current.
|
|
10371
10366
|
|
|
10372
10367
|
Ignored once `active` is written. */
|
|
10373
10368
|
defaultActive?: (HelixVideoPlaylist["defaultActive"]) | undefined;
|
|
@@ -10761,7 +10756,7 @@ export type CustomCssProperties = {
|
|
|
10761
10756
|
"--bar-chart-line-width"?: (string) | undefined;
|
|
10762
10757
|
/** 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. */
|
|
10763
10758
|
"--bar-chart-axis"?: (string) | undefined;
|
|
10764
|
-
/** The color of the secondary axis
|
|
10759
|
+
/** 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. */
|
|
10765
10760
|
"--bar-chart-secondary"?: (string) | undefined;
|
|
10766
10761
|
/** 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. */
|
|
10767
10762
|
"--chart-bar-wash"?: (string) | undefined;
|
|
@@ -10985,9 +10980,9 @@ export type CustomCssProperties = {
|
|
|
10985
10980
|
"--data-table-rule-color"?: (string) | undefined;
|
|
10986
10981
|
/** Type size, headings and cells alike. */
|
|
10987
10982
|
"--data-table-text"?: (string) | undefined;
|
|
10988
|
-
/** 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;
|
|
10983
|
+
/** 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. */
|
|
10989
10984
|
"--data-table-cell-align"?: (string) | undefined;
|
|
10990
|
-
/** 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.
|
|
10985
|
+
/** 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. */
|
|
10991
10986
|
"--data-table-template"?: (string) | undefined;
|
|
10992
10987
|
/** Fill behind the field. */
|
|
10993
10988
|
"--date-input-background-color"?: (string) | undefined;
|
|
@@ -11591,7 +11586,7 @@ export type CustomCssProperties = {
|
|
|
11591
11586
|
"--table-cell-align"?: (string) | undefined;
|
|
11592
11587
|
/** Track list for the columns, which wins over the one the columns worked out. */
|
|
11593
11588
|
"--table-columns"?: (string) | undefined;
|
|
11594
|
-
/** 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.
|
|
11589
|
+
/** 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. */
|
|
11595
11590
|
"--table-template"?: (string) | undefined;
|
|
11596
11591
|
/** Fill behind the tag. */
|
|
11597
11592
|
"--tag-background-color"?: (string) | undefined;
|