@taprootio/espalier 3.0.1 → 3.2.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 +59 -0
- package/custom-elements.json +16929 -13949
- package/dist/box/esp-box.d.ts +10 -0
- package/dist/box/esp-box.js +4 -4
- package/dist/index.d.ts +3 -0
- package/dist/index.js +1 -1
- package/dist/page/esp-page.d.ts +23 -7
- package/dist/page/esp-page.js +37 -10
- package/dist/root/esp-root.d.ts +24 -1
- package/dist/root/esp-root.js +3 -3
- package/dist/row/esp-row.d.ts +64 -0
- package/dist/row/esp-row.js +67 -0
- package/dist/section/esp-section.d.ts +55 -0
- package/dist/section/esp-section.js +22 -0
- package/dist/shared/data-colors.d.ts +21 -0
- package/dist/shared/data-colors.js +1 -1
- package/dist/shared/esp-element-base.d.ts +3 -3
- package/dist/shared/esp-element-base.js +1 -1
- package/dist/shared/scale-engine.js +1 -1
- package/dist/shared/style-fragments.js +6 -6
- package/dist/shared/theme.d.ts +92 -18
- package/dist/shared/theme.js +1 -1
- package/dist/shared/variant-engine.js +1 -1
- package/dist/stack/esp-stack.d.ts +62 -0
- package/dist/stack/esp-stack.js +56 -0
- package/espalier.token-manifest.json +89 -1
- package/package.json +29 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,30 @@
|
|
|
1
|
+
# 3.2.0
|
|
2
|
+
|
|
3
|
+
Website-tier layout: the pieces a real marketing page proved were
|
|
4
|
+
missing (measured: a 297-line style block, 48% layout, none of it
|
|
5
|
+
novel).
|
|
6
|
+
|
|
7
|
+
- `esp-page kind="site"`: sections run edge to edge and the header,
|
|
8
|
+
footer, and every section well share one centered column via
|
|
9
|
+
`--esp-page-well-max-width` (default 72rem).
|
|
10
|
+
- `esp-section`: the full-bleed band with a centered well — and the
|
|
11
|
+
natural `context` zone host, with no card identity to neutralize.
|
|
12
|
+
Rhythm defaults to the new fluid `--esp-size-section` step.
|
|
13
|
+
- `esp-stack` and `esp-row`: column and wrapping-row flow with
|
|
14
|
+
space-scale gaps. Stacks stretch like block flow while slotted
|
|
15
|
+
buttons keep their natural width — the pairing a plain flex column
|
|
16
|
+
cannot express.
|
|
17
|
+
- Layout tokens: `--esp-measure` / `--esp-measure-wide`,
|
|
18
|
+
`--esp-size-section`, `--esp-shadow-1..3` (elevation; level 1 is
|
|
19
|
+
exactly the shadow `esp-box` always painted, now overridable via
|
|
20
|
+
`--esp-box-shadow`), and `--esp-card-min` for the auto-fit card-grid
|
|
21
|
+
recipe.
|
|
22
|
+
- `esp-root` accepts theme objects directly: `root.lightTheme = {...}`
|
|
23
|
+
/ `root.darkTheme = {...}` encode through the same pipeline as the
|
|
24
|
+
`light-theme` / `dark-theme` attributes.
|
|
25
|
+
- New export subpaths: `./section`, `./stack`, `./row`, and dedicated
|
|
26
|
+
entries for `./flyout`, `./progress`, `./toaster`, `./tooltip`.
|
|
27
|
+
|
|
1
28
|
# Changelog
|
|
2
29
|
|
|
3
30
|
All notable changes to the public `@taprootio/espalier` package are documented
|
|
@@ -5,6 +32,38 @@ here. This file ships in the published npm package. It is a curated public
|
|
|
5
32
|
record and intentionally does not mirror the private `taproot-controls`
|
|
6
33
|
development history.
|
|
7
34
|
|
|
35
|
+
## 3.1.0 — Info becomes a real blue family, and intent colors become yours
|
|
36
|
+
|
|
37
|
+
- Give `intent="info"` its own fixed status family: blue (hue 244), derived
|
|
38
|
+
and emitted like danger/success/warning as `--esp-color-info`. It no
|
|
39
|
+
longer borrows the complementary family, which could render informational
|
|
40
|
+
styling green on complementary-adjacent brand seeds and made `info` mean
|
|
41
|
+
different colors on buttons versus badges.
|
|
42
|
+
- Add the `intents` theme field: retune any status family with an absolute
|
|
43
|
+
color — an `anchor:` reference or a supported color form (hex,
|
|
44
|
+
`rgb()`, `hsl()`, `oklch()`; CSS keywords are not parsed)
|
|
45
|
+
(`"intents": { "danger": "#700007", "info": "anchor:sky" }`). One
|
|
46
|
+
override drives the emitted family token, `intent=` pins on controls,
|
|
47
|
+
class-styled chrome, and derived tokens such as `dangerText`; the legacy
|
|
48
|
+
`semanticHues`/`variantChroma` knobs are ignored for an overridden
|
|
49
|
+
family. Overrides retune a family, never reassign one: `validateTheme`
|
|
50
|
+
rejects family names as values and warns when two status colors — or a
|
|
51
|
+
status color and the action color — become hard to distinguish, with
|
|
52
|
+
per-pair remediation advice counterfactual-tested as rendered at
|
|
53
|
+
emitted-token precision: a remedy is offered alone only when it
|
|
54
|
+
separates the pair by itself, as an explicit "widen/move, then
|
|
55
|
+
retune" sequence only when a concrete retune is found under it, and
|
|
56
|
+
never when it cannot work or is not proven to — a retune is
|
|
57
|
+
promised only when a concrete emitted candidate clears the
|
|
58
|
+
threshold, and a pair whose best candidate lands within the audit's
|
|
59
|
+
search margin is flagged as unreliable to retune rather than
|
|
60
|
+
impossible.
|
|
61
|
+
- Add the `accent.hover` role slot, so a hover can change family rather
|
|
62
|
+
than only lightness; when absent, `linkHover` follows `accent.text`
|
|
63
|
+
unchanged.
|
|
64
|
+
- Warn when an explicit `chroma` band targets an anchor-sourced token and
|
|
65
|
+
would move a declared swatch off its color.
|
|
66
|
+
|
|
8
67
|
## 3.0.0 — Intent and context replace the variant attribute
|
|
9
68
|
|
|
10
69
|
- Remove the `variant` attribute. Its two jobs are now separate attributes:
|