@aceshooting/lyra-ui 10.0.1 → 11.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +188 -0
- package/custom-elements.json +1 -1
- package/design-tokens.json +13 -0
- package/dist/cli/migrate-wa.mjs +164 -1
- package/dist/cli/migration-contract.json +1 -1
- package/dist/components/charts/chart/box-plot.class.d.ts +27 -0
- package/dist/components/charts/chart/box-plot.class.js +14 -4
- package/dist/components/charts/chart/box-plot.styles.js +28 -0
- package/dist/components/charts/chart/chart.class.d.ts +27 -0
- package/dist/components/charts/chart/chart.class.js +15 -5
- package/dist/components/charts/chart/chart.styles.js +28 -0
- package/dist/components/data/heatmap/heatmap.class.d.ts +35 -2
- package/dist/components/data/heatmap/heatmap.class.js +2 -2
- package/dist/components/forms/combobox/combobox.class.d.ts +71 -3
- package/dist/components/forms/combobox/combobox.class.js +4 -2
- package/dist/components/forms/combobox/combobox.styles.js +9 -0
- package/dist/components/forms/date-picker/date-picker.class.d.ts +46 -0
- package/dist/components/forms/date-picker/date-picker.class.js +15 -3
- package/dist/components/forms/date-picker/date-picker.styles.js +46 -0
- package/dist/components/media/flag/flag.class.d.ts +3 -1
- package/dist/components/media/flag/flag.class.js +1 -1
- package/dist/components/media/map/map.class.d.ts +39 -2
- package/dist/components/media/map/map.class.js +1 -1
- package/dist/components/overlays/dialog/dialog.class.d.ts +20 -0
- package/dist/components/overlays/overlay/popover.class.d.ts +19 -3
- package/dist/components/overlays/overlay/popover.class.js +1 -1
- package/dist/custom-elements-jsx.d.ts +27 -14
- package/dist/internal/package-metadata.d.ts +1 -1
- package/dist/internal/package-metadata.js +1 -1
- package/dist/internal/tokens.styles.js +1 -0
- package/dist/lyra.d.ts +1 -1
- package/dist/svelte.d.ts +27 -14
- package/dist/vue.d.ts +27 -14
- package/llms/components/lr-bar-chart.md +4 -3
- package/llms/components/lr-box-plot.md +14 -3
- package/llms/components/lr-bubble-chart.md +4 -3
- package/llms/components/lr-chart.md +13 -3
- package/llms/components/lr-combobox.md +42 -6
- package/llms/components/lr-date-input.md +22 -2
- package/llms/components/lr-date-picker.md +23 -3
- package/llms/components/lr-dialog.md +2 -1
- package/llms/components/lr-doughnut-chart.md +4 -3
- package/llms/components/lr-flag.md +10 -3
- package/llms/components/lr-heatmap.md +20 -2
- package/llms/components/lr-histogram.md +4 -3
- package/llms/components/lr-line-chart.md +4 -3
- package/llms/components/lr-map.md +21 -4
- package/llms/components/lr-option.md +41 -5
- package/llms/components/lr-pie-chart.md +4 -3
- package/llms/components/lr-polar-area-chart.md +4 -3
- package/llms/components/lr-popover.md +20 -1
- package/llms/components/lr-radar-chart.md +4 -3
- package/llms/components/lr-scatter-chart.md +4 -3
- package/llms/tokens.md +15 -1
- package/llms-full.txt +197 -26
- package/package.json +1 -1
- package/vscode-css-data.json +56 -0
- package/vscode-html-data.json +115 -18
- package/web-types.json +162 -21
|
@@ -24,6 +24,24 @@ An `lr-option` row remains bounded by its owning listbox: the default label elli
|
|
|
24
24
|
`start`/`end` (or `prefix`/`suffix`) adornment is capped at 40% of the row. Unbroken metadata
|
|
25
25
|
therefore cannot widen a 320px LTR or RTL picker.
|
|
26
26
|
|
|
27
|
+
**Adornments in the popup (fixed in 10.1.0).** Before 10.1.0 this paragraph described behavior the
|
|
28
|
+
code did not have: `lr-combobox` builds its popup from normalized row *data* rather than from the
|
|
29
|
+
light-DOM nodes, so a slotted `start`/`end`/`prefix`/`suffix` adornment had nowhere to land and
|
|
30
|
+
simply never rendered — the documented slots and their documented parts were both dead inside the
|
|
31
|
+
one component `lr-option` exists to feed. They now render. The nodes are **cloned** into the row
|
|
32
|
+
(`option-start` / `option-end` parts, inert and `aria-hidden`, so they never join the option's
|
|
33
|
+
accessible name), which means the author's own `<lr-option>` subtree is left exactly where they put
|
|
34
|
+
it rather than being moved into a shadow root as a side effect of opening a dropdown:
|
|
35
|
+
|
|
36
|
+
```html
|
|
37
|
+
<lr-combobox label="Country">
|
|
38
|
+
<lr-option value="fr"><lr-flag slot="start" country="fr"></lr-flag>France</lr-option>
|
|
39
|
+
<lr-option value="mt"><lr-flag slot="start" country="mt"></lr-flag>Malta</lr-option>
|
|
40
|
+
</lr-combobox>
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
An async `source` row can carry the same two fields (`start`, `end`) alongside its existing `icon`.
|
|
44
|
+
|
|
27
45
|
### `lr-combobox`
|
|
28
46
|
|
|
29
47
|
**Properties:**
|
|
@@ -90,8 +108,21 @@ therefore cannot widen a 320px LTR or RTL picker.
|
|
|
90
108
|
mapped IDLs `inputmode` and `enterkeyhint` delegate to the corresponding camel-case native
|
|
91
109
|
properties
|
|
92
110
|
- `inputValue: string` — the live filter input text; programmatic writes are event-silent
|
|
93
|
-
- `maxOptionsVisible: number = 3` (attribute `max-options-visible` — caps how many selected tags
|
|
94
|
-
show before collapsing to `+N
|
|
111
|
+
- `maxOptionsVisible: number = 3` (attribute `max-options-visible` — caps how many selected **tags**
|
|
112
|
+
show before collapsing to `+N`; nothing to do with the suggestion list, see the three-caps note
|
|
113
|
+
below)
|
|
114
|
+
- `visibleOptions?: number` (attribute `visible-options`, new in 10.1.0) — bounds the popup to about
|
|
115
|
+
this many suggestion rows, leaving the rest reachable by scrolling. Purely presentational: every
|
|
116
|
+
row is still rendered. Measured from where row N actually starts rather than computed from a
|
|
117
|
+
token, because a row's height varies with `sub` lines, adornments and group labels. Unset imposes
|
|
118
|
+
no bound of its own and the listbox keeps exactly its previous max-height behavior; zero,
|
|
119
|
+
negative, and non-finite values normalize to unset rather than collapsing the popup
|
|
120
|
+
|
|
121
|
+
**The three caps, which are easy to confuse.** `visibleOptions` caps how many suggestion rows are
|
|
122
|
+
*visible* (presentation; the rest scroll). `maxRender` caps how many suggestion rows are *rendered
|
|
123
|
+
at all* (performance; the rest do not exist and are summarized by `option-overflow`).
|
|
124
|
+
`maxOptionsVisible` caps how many *selected tags* show in multi-select and never touches the
|
|
125
|
+
suggestion list.
|
|
95
126
|
- `emptyText?: string` (attribute `empty-text`) — omission displays localized `noMatches` (`"No
|
|
96
127
|
matches"` in the built-in English locale); any supplied string, including `''`, renders verbatim
|
|
97
128
|
- `loadingText?: string` (attribute `loading-text`) — shown while a `source` fetch is in flight;
|
|
@@ -154,9 +185,12 @@ every selection change and a `form.reset()` — like a native control, only anot
|
|
|
154
185
|
**8.0 migration:** the former camel-case string property `autoCorrect` is not retained as a public
|
|
155
186
|
alias. Set the boolean `autocorrect` IDL, or use `autocorrect="on"` / `autocorrect="off"` in markup.
|
|
156
187
|
|
|
157
|
-
`ComboboxSourceRow = { readonly value: string; readonly label: string; readonly sub?: string; readonly icon?: unknown; readonly
|
|
188
|
+
`ComboboxSourceRow = { readonly value: string; readonly label: string; readonly sub?: string; readonly icon?: unknown; readonly start?: unknown;
|
|
189
|
+
readonly end?: unknown; readonly badge?: string |
|
|
158
190
|
number; accessibleLabel?: string; data?: unknown; dotColor?: string; group?: string; disabled?:
|
|
159
|
-
boolean }` — the row shape used by the async `source` path. `
|
|
191
|
+
boolean }` — the row shape used by the async `source` path. `start` and `end` (new in 10.1.0) are
|
|
192
|
+
the async counterparts of `<lr-option>`'s `start`/`end` adornment slots and render as the
|
|
193
|
+
`option-start` / `option-end` parts, inert and aria-hidden exactly like `icon`. `icon` renders as a decorative leading
|
|
160
194
|
visual whose rendered subtree stays visible but is inert and hidden from assistive technology;
|
|
161
195
|
put independent actions outside it. `badge` renders as trailing metadata, `accessibleLabel` can
|
|
162
196
|
provide richer spoken text than the visible label, and `data` is retained without being rendered
|
|
@@ -264,7 +298,9 @@ adornment-slot wrappers, each `hidden` while nothing is slotted into it), `tags`
|
|
|
264
298
|
`lr-emoji-picker` so one rule styles every grouped list; it labels the `role="group"` wrapper here),
|
|
265
299
|
`option`,
|
|
266
300
|
`option-dot` (the leading status dot, when a row's `dotColor` is set), `option-icon` (the inert,
|
|
267
|
-
aria-hidden decorative leading visual for an async row), `option-
|
|
301
|
+
aria-hidden decorative leading visual for an async row), `option-start` and `option-end` (the inert,
|
|
302
|
+
aria-hidden adornments cloned from the source option's `start`/`prefix` and `end`/`suffix` slots, or
|
|
303
|
+
from an async row's `start`/`end`), `option-label`, `option-sub` (a row's
|
|
268
304
|
secondary line, when `sub` is set), `option-badge` (an async row's trailing metadata),
|
|
269
305
|
`option-overflow` (the "+N more" indicator from `maxRender`), `error`, `hint`
|
|
270
306
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
- **Status** `stable` since `4.0.0` — see the maturity and deprecation policy in `llms/shared.md`
|
|
9
9
|
- **Deprecations** none
|
|
10
10
|
- **Optional peers** `chart.js`, `chartjs-plugin-annotation`, `chartjs-plugin-datalabels`, `chartjs-plugin-zoom` — see `llms/peers.md`
|
|
11
|
-
- **Themeable via**
|
|
11
|
+
- **Themeable via** 16 parts, 35 custom properties — see this component's own `@csspart`/`@cssprop` list below
|
|
12
12
|
- **Documented with** `lr-line-chart`, `lr-bar-chart`, `lr-doughnut-chart`, `lr-radar-chart`, `lr-polar-area-chart`, `lr-bubble-chart`, `lr-scatter-chart` (same section below)
|
|
13
13
|
- **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
|
|
14
14
|
|
|
@@ -44,7 +44,7 @@ complete `hiddenDatasets` snapshot).
|
|
|
44
44
|
**Slots:** default JSON configuration script, `data-table`, `center`.
|
|
45
45
|
|
|
46
46
|
**CSS parts:** `base`, `plot`, `canvas`, `legend`, `legend-item`, `legend-item-hidden`, `legend-swatch`,
|
|
47
|
-
`reset-zoom-button`, `description`, `notices`, `data-table`, `data-truncation`, `feature-warning`, `center`, `error` (neutral visible message
|
|
47
|
+
`reset-zoom-button`, `description`, `notices`, `data-table`, `data-table-toggle`, `data-truncation`, `feature-warning`, `center`, `error` (neutral visible message
|
|
48
48
|
rendered in place of `canvas` when the optional `chart.js` peer dependency fails to load; the
|
|
49
49
|
failure transition is announced through the shared document-level light-DOM assertive sink — see
|
|
50
50
|
`llms/components/lr-chart.md`).
|
|
@@ -53,7 +53,8 @@ failure transition is announced through the shared document-level light-DOM asse
|
|
|
53
53
|
`--lr-chart-tick-color`, `--lr-chart-legend-color`, `--lr-chart-tooltip-bg`,
|
|
54
54
|
`--lr-chart-tooltip-text`, `--lr-chart-legend-item-hover-bg`,
|
|
55
55
|
`--lr-chart-legend-item-active-bg`, `--lr-chart-data-table-button-hover-bg`,
|
|
56
|
-
`--lr-chart-data-table-button-active-bg`, `--lr-chart-
|
|
56
|
+
`--lr-chart-data-table-button-active-bg`, `--lr-chart-data-table-toggle-hover-bg`,
|
|
57
|
+
`--lr-chart-data-table-toggle-active-bg`, `--lr-chart-reset-zoom-button-hover-bg`,
|
|
57
58
|
`--lr-chart-reset-zoom-button-active-bg`, `--lr-chart-canvas-hover-outline-width`, and
|
|
58
59
|
`--lr-chart-pattern-step`, plus `--lr-chart-legend-side-max` — all inherited from `LyraChart`, identical in meaning and default (see
|
|
59
60
|
`lr-chart` above); each of the eight variants below reads the same set, so one rule retunes them
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
- **Status** `stable` since `4.0.0` — see the maturity and deprecation policy in `llms/shared.md`
|
|
9
9
|
- **Deprecations** none
|
|
10
10
|
- **Optional peers** `chart.js`, `chartjs-plugin-annotation`, `chartjs-plugin-datalabels`, `chartjs-plugin-zoom` — see `llms/peers.md`
|
|
11
|
-
- **Themeable via**
|
|
11
|
+
- **Themeable via** 16 parts, 35 custom properties — see this component's own `@csspart`/`@cssprop` list below
|
|
12
12
|
- **Documented with** `lr-line-chart`, `lr-bar-chart`, `lr-pie-chart`, `lr-doughnut-chart`, `lr-radar-chart`, `lr-bubble-chart`, `lr-scatter-chart` (same section below)
|
|
13
13
|
- **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
|
|
14
14
|
|
|
@@ -44,7 +44,7 @@ complete `hiddenDatasets` snapshot).
|
|
|
44
44
|
**Slots:** default JSON configuration script, `data-table`, `center`.
|
|
45
45
|
|
|
46
46
|
**CSS parts:** `base`, `plot`, `canvas`, `legend`, `legend-item`, `legend-item-hidden`, `legend-swatch`,
|
|
47
|
-
`reset-zoom-button`, `description`, `notices`, `data-table`, `data-truncation`, `feature-warning`, `center`, `error` (neutral visible message
|
|
47
|
+
`reset-zoom-button`, `description`, `notices`, `data-table`, `data-table-toggle`, `data-truncation`, `feature-warning`, `center`, `error` (neutral visible message
|
|
48
48
|
rendered in place of `canvas` when the optional `chart.js` peer dependency fails to load; the
|
|
49
49
|
failure transition is announced through the shared document-level light-DOM assertive sink — see
|
|
50
50
|
`llms/components/lr-chart.md`).
|
|
@@ -53,7 +53,8 @@ failure transition is announced through the shared document-level light-DOM asse
|
|
|
53
53
|
`--lr-chart-tick-color`, `--lr-chart-legend-color`, `--lr-chart-tooltip-bg`,
|
|
54
54
|
`--lr-chart-tooltip-text`, `--lr-chart-legend-item-hover-bg`,
|
|
55
55
|
`--lr-chart-legend-item-active-bg`, `--lr-chart-data-table-button-hover-bg`,
|
|
56
|
-
`--lr-chart-data-table-button-active-bg`, `--lr-chart-
|
|
56
|
+
`--lr-chart-data-table-button-active-bg`, `--lr-chart-data-table-toggle-hover-bg`,
|
|
57
|
+
`--lr-chart-data-table-toggle-active-bg`, `--lr-chart-reset-zoom-button-hover-bg`,
|
|
57
58
|
`--lr-chart-reset-zoom-button-active-bg`, `--lr-chart-canvas-hover-outline-width`, and
|
|
58
59
|
`--lr-chart-pattern-step`, plus `--lr-chart-legend-side-max` — all inherited from `LyraChart`, identical in meaning and default (see
|
|
59
60
|
`lr-chart` above); each of the eight variants below reads the same set, so one rule retunes them
|
|
@@ -51,7 +51,26 @@ A click-triggered, light-dismiss floating surface positioned with the shared Flo
|
|
|
51
51
|
- `accessibleLabel: string = ''` (attribute **`aria-label`**) — names the popup. An authored host
|
|
52
52
|
attribute wins by presence, including `aria-label=""`; only when it is absent does the property
|
|
53
53
|
or localized "Popover" ("Menu" when `popupRole` is `menu`) fallback apply
|
|
54
|
-
- `popupRole: 'dialog'|'menu' = 'dialog'` (attribute `popup-role`)
|
|
54
|
+
- `popupRole: 'dialog'|'menu'|'none' = 'dialog'` (attribute `popup-role`). `none` (new in 10.1.0)
|
|
55
|
+
renders **no** `role` and no generated `aria-label` on the popup surface, and leaves
|
|
56
|
+
`aria-haspopup` off the trigger, so slotted content owns its own semantics and accessible name.
|
|
57
|
+
It exists for the WAI-ARIA **disclosure navigation** pattern: a flyout of links is not an
|
|
58
|
+
application action menu (`menu` announces "menu, menu item" and expects `menuitem` children) and
|
|
59
|
+
is not an interruptive surface (`dialog`). The `aria-expanded`/`aria-controls` wiring that pattern
|
|
60
|
+
requires is unchanged, as are light dismiss, Escape, focus return, and positioning:
|
|
61
|
+
|
|
62
|
+
```html
|
|
63
|
+
<lr-popover popup-role="none">
|
|
64
|
+
<button slot="trigger">Products</button>
|
|
65
|
+
<nav aria-label="Products">
|
|
66
|
+
<ul><li><a href="/overview">Overview</a></li><li><a href="/pricing">Pricing</a></li></ul>
|
|
67
|
+
</nav>
|
|
68
|
+
</lr-popover>
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Note there is deliberately no `aria-haspopup="none"` — that is an invalid attribute value, not a
|
|
72
|
+
neutral one, and axe reports it as a critical violation. `lr-dropdown` still pins `popupRole` to
|
|
73
|
+
`menu`; the escape hatch lives on the general-purpose primitive.
|
|
55
74
|
- `disabled: boolean = false` (reflected, new in 10.0.0) — prevents opening the popover; pointer,
|
|
56
75
|
keyboard, and programmatic `show()`/`open = true` are all refused while set. Becoming disabled also
|
|
57
76
|
closes an already-open popover, and initial `disabled` plus `open` normalizes closed in either
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
- **Status** `stable` since `4.0.0` — see the maturity and deprecation policy in `llms/shared.md`
|
|
9
9
|
- **Deprecations** none
|
|
10
10
|
- **Optional peers** `chart.js`, `chartjs-plugin-annotation`, `chartjs-plugin-datalabels`, `chartjs-plugin-zoom` — see `llms/peers.md`
|
|
11
|
-
- **Themeable via**
|
|
11
|
+
- **Themeable via** 16 parts, 35 custom properties — see this component's own `@csspart`/`@cssprop` list below
|
|
12
12
|
- **Documented with** `lr-line-chart`, `lr-bar-chart`, `lr-pie-chart`, `lr-doughnut-chart`, `lr-polar-area-chart`, `lr-bubble-chart`, `lr-scatter-chart` (same section below)
|
|
13
13
|
- **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
|
|
14
14
|
|
|
@@ -44,7 +44,7 @@ complete `hiddenDatasets` snapshot).
|
|
|
44
44
|
**Slots:** default JSON configuration script, `data-table`, `center`.
|
|
45
45
|
|
|
46
46
|
**CSS parts:** `base`, `plot`, `canvas`, `legend`, `legend-item`, `legend-item-hidden`, `legend-swatch`,
|
|
47
|
-
`reset-zoom-button`, `description`, `notices`, `data-table`, `data-truncation`, `feature-warning`, `center`, `error` (neutral visible message
|
|
47
|
+
`reset-zoom-button`, `description`, `notices`, `data-table`, `data-table-toggle`, `data-truncation`, `feature-warning`, `center`, `error` (neutral visible message
|
|
48
48
|
rendered in place of `canvas` when the optional `chart.js` peer dependency fails to load; the
|
|
49
49
|
failure transition is announced through the shared document-level light-DOM assertive sink — see
|
|
50
50
|
`llms/components/lr-chart.md`).
|
|
@@ -53,7 +53,8 @@ failure transition is announced through the shared document-level light-DOM asse
|
|
|
53
53
|
`--lr-chart-tick-color`, `--lr-chart-legend-color`, `--lr-chart-tooltip-bg`,
|
|
54
54
|
`--lr-chart-tooltip-text`, `--lr-chart-legend-item-hover-bg`,
|
|
55
55
|
`--lr-chart-legend-item-active-bg`, `--lr-chart-data-table-button-hover-bg`,
|
|
56
|
-
`--lr-chart-data-table-button-active-bg`, `--lr-chart-
|
|
56
|
+
`--lr-chart-data-table-button-active-bg`, `--lr-chart-data-table-toggle-hover-bg`,
|
|
57
|
+
`--lr-chart-data-table-toggle-active-bg`, `--lr-chart-reset-zoom-button-hover-bg`,
|
|
57
58
|
`--lr-chart-reset-zoom-button-active-bg`, `--lr-chart-canvas-hover-outline-width`, and
|
|
58
59
|
`--lr-chart-pattern-step`, plus `--lr-chart-legend-side-max` — all inherited from `LyraChart`, identical in meaning and default (see
|
|
59
60
|
`lr-chart` above); each of the eight variants below reads the same set, so one rule retunes them
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
- **Status** `stable` since `4.0.0` — see the maturity and deprecation policy in `llms/shared.md`
|
|
9
9
|
- **Deprecations** none
|
|
10
10
|
- **Optional peers** `chart.js`, `chartjs-plugin-annotation`, `chartjs-plugin-datalabels`, `chartjs-plugin-zoom` — see `llms/peers.md`
|
|
11
|
-
- **Themeable via**
|
|
11
|
+
- **Themeable via** 16 parts, 35 custom properties — see this component's own `@csspart`/`@cssprop` list below
|
|
12
12
|
- **Documented with** `lr-line-chart`, `lr-bar-chart`, `lr-pie-chart`, `lr-doughnut-chart`, `lr-radar-chart`, `lr-polar-area-chart`, `lr-bubble-chart` (same section below)
|
|
13
13
|
- **Library-wide behavior** (events, form association, `locale`/`strings`, tokens, TS types): `llms/shared.md`
|
|
14
14
|
|
|
@@ -44,7 +44,7 @@ complete `hiddenDatasets` snapshot).
|
|
|
44
44
|
**Slots:** default JSON configuration script, `data-table`, `center`.
|
|
45
45
|
|
|
46
46
|
**CSS parts:** `base`, `plot`, `canvas`, `legend`, `legend-item`, `legend-item-hidden`, `legend-swatch`,
|
|
47
|
-
`reset-zoom-button`, `description`, `notices`, `data-table`, `data-truncation`, `feature-warning`, `center`, `error` (neutral visible message
|
|
47
|
+
`reset-zoom-button`, `description`, `notices`, `data-table`, `data-table-toggle`, `data-truncation`, `feature-warning`, `center`, `error` (neutral visible message
|
|
48
48
|
rendered in place of `canvas` when the optional `chart.js` peer dependency fails to load; the
|
|
49
49
|
failure transition is announced through the shared document-level light-DOM assertive sink — see
|
|
50
50
|
`llms/components/lr-chart.md`).
|
|
@@ -53,7 +53,8 @@ failure transition is announced through the shared document-level light-DOM asse
|
|
|
53
53
|
`--lr-chart-tick-color`, `--lr-chart-legend-color`, `--lr-chart-tooltip-bg`,
|
|
54
54
|
`--lr-chart-tooltip-text`, `--lr-chart-legend-item-hover-bg`,
|
|
55
55
|
`--lr-chart-legend-item-active-bg`, `--lr-chart-data-table-button-hover-bg`,
|
|
56
|
-
`--lr-chart-data-table-button-active-bg`, `--lr-chart-
|
|
56
|
+
`--lr-chart-data-table-button-active-bg`, `--lr-chart-data-table-toggle-hover-bg`,
|
|
57
|
+
`--lr-chart-data-table-toggle-active-bg`, `--lr-chart-reset-zoom-button-hover-bg`,
|
|
57
58
|
`--lr-chart-reset-zoom-button-active-bg`, `--lr-chart-canvas-hover-outline-width`, and
|
|
58
59
|
`--lr-chart-pattern-step`, plus `--lr-chart-legend-side-max` — all inherited from `LyraChart`, identical in meaning and default (see
|
|
59
60
|
`lr-chart` above); each of the eight variants below reads the same set, so one rule retunes them
|
package/llms/tokens.md
CHANGED
|
@@ -17,6 +17,19 @@ For a ready-made light/dark base, import `@aceshooting/lyra-ui/theme.css` once a
|
|
|
17
17
|
Per-component `--lr-<component>-*` custom properties (listed in each component's own section)
|
|
18
18
|
override a single element without touching the shared layer.
|
|
19
19
|
|
|
20
|
+
> **Why layer 1 is not merely *preferred* but *required*: an ancestor `--lr-*` override does
|
|
21
|
+
> not survive a nested component boundary.** Every component re-derives the whole `--lr-*` layer
|
|
22
|
+
> from `--lr-theme-*` on its **own** `:host` (that is what `LyraElement`'s shared token
|
|
23
|
+
> stylesheet does). So setting, say, `--lr-color-warning-quiet` on an application element does
|
|
24
|
+
> apply to that element and to plain nested markup — it looks right in review and in a shallow
|
|
25
|
+
> `getComputedStyle` probe — but it is **reset at the first `lr-*` element inside another
|
|
26
|
+
> `lr-*` element's shadow root** (a badge inside a table cell, say), which re-derives it back to
|
|
27
|
+
> the library fallback. The override degrades silently, the deeper it is consumed, with no
|
|
28
|
+
> warning. Always set the `--lr-theme-*` input instead: that layer is read through `var()` at
|
|
29
|
+
> every level, so it inherits across every boundary. Per-component `--lr-<component>-*`
|
|
30
|
+
> properties are the other safe lever, because no component re-declares another component's
|
|
31
|
+
> namespace.
|
|
32
|
+
|
|
20
33
|
## Direct theme-backed tokens (263)
|
|
21
34
|
|
|
22
35
|
| Internal token | `--lr-theme-*` input | Light/default fallback | Mode overrides |
|
|
@@ -285,7 +298,7 @@ override a single element without touching the shared layer.
|
|
|
285
298
|
| `--lr-transition-base` | `--lr-theme-transition-normal` | `var(--lr-duration-base) var(--lr-easing-standard)` | reducedMotion: `0.001ms linear` |
|
|
286
299
|
| `--lr-transition-fast` | `--lr-theme-transition-fast` | `var(--lr-duration-fast) var(--lr-easing-standard)` | reducedMotion: `0.001ms linear` |
|
|
287
300
|
|
|
288
|
-
## Derived and fixed tokens (
|
|
301
|
+
## Derived and fixed tokens (76)
|
|
289
302
|
|
|
290
303
|
These do not directly read a `--lr-theme-*` input. Aliases and computed values still follow
|
|
291
304
|
the tokens or environment values they reference; fixed contract constants are intentionally
|
|
@@ -307,6 +320,7 @@ not theme inputs.
|
|
|
307
320
|
| `--lr-color-success-quiet` | `var(--lr-color-success-fill-quiet)` | forcedColors: `Canvas` |
|
|
308
321
|
| `--lr-color-warning` | `var(--lr-color-warning-fill-loud)` | forcedColors: `CanvasText` |
|
|
309
322
|
| `--lr-color-warning-quiet` | `var(--lr-color-warning-fill-quiet)` | forcedColors: `Canvas` |
|
|
323
|
+
| `--lr-focus-ring` | `var(--lr-focus-ring-width) solid var(--lr-focus-ring-color)` | — |
|
|
310
324
|
| `--lr-mask-opaque` | `#000` | — |
|
|
311
325
|
| `--lr-ramp-brand-05` | `#000002` | — |
|
|
312
326
|
| `--lr-ramp-brand-10` | `#00030f` | — |
|