@tangle-network/brand 0.8.1 → 0.8.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/CHANGELOG.md +19 -0
- package/package.json +1 -1
- package/src/styles/themes.css +33 -1
- package/src/styles/tokens.css +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.8.3
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 9b91ac6: Fix code syntax highlighting contrast (WCAG AA). `--syntax-*` was defined only in the dark `:root`, so in all four light themes (light, aubergine-light, arena-light, tangle-light) code rendered near-white on the light `bg-card` — foreground ~1.2:1, effectively invisible. Added a light-tuned `--syntax-*` palette (dark-on-light, all ≥4.5:1 on white) for every light scope. Also bumped the dark `--syntax-comment` (`#6B7094`→`#8b8fbc`) which failed AA (~3.4:1) across the dark-family themes. All syntax colors now pass AA on their code surface in every theme.
|
|
8
|
+
|
|
9
|
+
## 0.8.2
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- 26cc012: WCAG 1.4.3 AA contrast fixes across all 7 themes (measured with a cascade-resolved contrast audit).
|
|
14
|
+
|
|
15
|
+
- **Primary buttons**: `text-primary-foreground` on `bg-primary` was below 4.5:1 in `dark` (4.41) and `arena-light` (4.20). Darkened those two primaries (dark L 67%→62%, arena-light L 30%→27%) — all 7 themes now ≥5.0:1, hue unchanged.
|
|
16
|
+
- **Status colors in the named light themes**: `aubergine-light` / `arena-light` / `tangle-light` inherited the dark `:root` bright status palette (`#f87171`/`#34D399`/…), so danger/success text + glyphs dropped to ~2.5:1 on their light surfaces. Added a shared light-tuned status palette (dark-on-light text, mirroring the base light theme) — status text now passes AA and glyphs pass 1.4.11.
|
|
17
|
+
- **Running tool state**: the "running" label + spinner used `text-primary`, which fell to 2.98:1 on the dark row surface. Switched to `--accent-text` (the readable accent tier) — passes in every theme.
|
|
18
|
+
- **Thinking timer**: the elapsed-seconds counter used the faint `--text-dim` tier (~3:1). Moved it to `--text-muted` (passes AA everywhere).
|
|
19
|
+
|
|
20
|
+
Text now meets AA in all 7 themes; most pairs are AAA.
|
|
21
|
+
|
|
3
22
|
## 0.8.1
|
|
4
23
|
|
|
5
24
|
### Patch Changes
|
package/package.json
CHANGED
package/src/styles/themes.css
CHANGED
|
@@ -43,6 +43,38 @@
|
|
|
43
43
|
--color-fg-dim: var(--text-dim);
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
+
/* Light-tuned status palette for the named light scopes. Without this they
|
|
47
|
+
* inherit the dark :root status colors (bright #f87171/#34D399/…), which fail
|
|
48
|
+
* WCAG on a light surface — status text + glyphs drop to ~2.5:1. These mirror
|
|
49
|
+
* tokens.css `[data-theme="light"]` (dark-on-light status text that passes AA). */
|
|
50
|
+
[data-theme="aubergine-light"],
|
|
51
|
+
[data-theme="arena-light"],
|
|
52
|
+
[data-theme="tangle-light"] {
|
|
53
|
+
--surface-success-bg: #ecfdf5; --surface-success-border: #a7f3d0; --surface-success-text: #047857;
|
|
54
|
+
--surface-warning-bg: #fffbeb; --surface-warning-border: #fde68a; --surface-warning-text: #b45309;
|
|
55
|
+
--surface-danger-bg: #fff1f2; --surface-danger-border: #fecdd3; --surface-danger-text: #b91c1c;
|
|
56
|
+
--surface-info-bg: #f0f9ff; --surface-info-border: #bae6fd; --surface-info-text: #0369a1;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/* Light-tuned syntax highlighting for ALL light scopes (incl. base light).
|
|
60
|
+
* --syntax-* is defined only in the dark :root (near-white foreground), so on a
|
|
61
|
+
* light code surface (bg-card ≈ white) code was ~1.2:1 — invisible. Dark-on-light
|
|
62
|
+
* palette, all ≥4.5:1 on white. */
|
|
63
|
+
[data-theme="light"],
|
|
64
|
+
[data-theme="aubergine-light"],
|
|
65
|
+
[data-theme="arena-light"],
|
|
66
|
+
[data-theme="tangle-light"] {
|
|
67
|
+
--syntax-foreground: #24292f;
|
|
68
|
+
--syntax-comment: #57606a;
|
|
69
|
+
--syntax-keyword: #6d28d9;
|
|
70
|
+
--syntax-string: #047857;
|
|
71
|
+
--syntax-function: #1d4ed8;
|
|
72
|
+
--syntax-number: #92400e;
|
|
73
|
+
--syntax-meta: #7c3aed;
|
|
74
|
+
--syntax-variable: #24292f;
|
|
75
|
+
--syntax-error: #b91c1c;
|
|
76
|
+
}
|
|
77
|
+
|
|
46
78
|
/* ───────────────────────── Aubergine (bazaar) — dark purple ──────────────── */
|
|
47
79
|
[data-theme="aubergine"] {
|
|
48
80
|
/* Base lifted off near-black: at ~7% L the 258 hue read black; ~13-20% L with
|
|
@@ -109,7 +141,7 @@
|
|
|
109
141
|
--hsl-background: 150 30% 96%; --hsl-foreground: 158 30% 10%;
|
|
110
142
|
--hsl-card: 0 0% 100%; --hsl-card-foreground: 158 30% 10%;
|
|
111
143
|
--hsl-popover: 0 0% 100%; --hsl-popover-foreground: 158 30% 10%;
|
|
112
|
-
--hsl-primary: 160 84%
|
|
144
|
+
--hsl-primary: 160 84% 27%; --hsl-primary-foreground: 0 0% 100%;
|
|
113
145
|
--hsl-secondary: 150 25% 92%; --hsl-muted: 150 25% 92%;
|
|
114
146
|
--hsl-muted-foreground: 158 14% 40%;
|
|
115
147
|
--hsl-accent: 150 25% 92%; --hsl-border: 150 20% 86%;
|
package/src/styles/tokens.css
CHANGED
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
--hsl-card-foreground: 240 6% 93%;
|
|
58
58
|
--hsl-popover: 240 5% 17%; /* #28282d elevated */
|
|
59
59
|
--hsl-popover-foreground: 240 6% 93%;
|
|
60
|
-
--hsl-primary: 239 84%
|
|
60
|
+
--hsl-primary: 239 84% 62%;
|
|
61
61
|
--hsl-primary-foreground: 0 0% 100%;
|
|
62
62
|
--hsl-secondary: 240 5% 15%; /* #242428 surface-2 */
|
|
63
63
|
--hsl-secondary-foreground: 240 6% 93%;
|
|
@@ -288,7 +288,7 @@
|
|
|
288
288
|
--tool-icon-size: 1.75rem;
|
|
289
289
|
|
|
290
290
|
/* Syntax highlighting — override per-theme in vault section */
|
|
291
|
-
--syntax-comment: #
|
|
291
|
+
--syntax-comment: #8b8fbc;
|
|
292
292
|
--syntax-keyword: #A78FFF;
|
|
293
293
|
--syntax-string: #10b981;
|
|
294
294
|
--syntax-function: #6D9FFF;
|