@tangle-network/brand 1.24.0 → 1.24.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/bin/drift-baseline.json +1 -1
- package/bin/tangle-drift.mjs +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/src/palette.generated.ts +1 -1
- package/src/styles/legacy-light.css +6 -6
- package/src/styles/named-themes.css +4 -4
- package/src/styles/surface-ladder.test.ts +24 -1
- package/src/styles/tokens.css +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.24.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 628a522: Canonical dark recessed page `--md3-surface-dim` (and `--md3-surface-container-lowest`, equal by design) #060610/#050509 → #040408. The inset workspace panel (#0a0a14) now sits 4.1 L above its gutter instead of 2.2, so pages on sandbox-ui `WorkspaceSurface` pass surface-ladder in dark.
|
|
8
|
+
|
|
9
|
+
## 1.24.1
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- ea4b052: Hospitality dark field border #868f87 → #939c94: it measured 2.99:1 on the raised plane (a Select in a card in a card on Connections). Now 4.6:1 on the card and 3.5:1 on raised.
|
|
14
|
+
|
|
3
15
|
## 1.24.0
|
|
4
16
|
|
|
5
17
|
### Minor Changes
|
package/bin/drift-baseline.json
CHANGED
package/bin/tangle-drift.mjs
CHANGED
|
@@ -37,7 +37,7 @@ export const SURFACES = {
|
|
|
37
37
|
legal: { repo: "tangle-network/legal-agent", roots: [""] },
|
|
38
38
|
insurance: { repo: "tangle-network/insurance-agent", roots: [""] },
|
|
39
39
|
creative: { repo: "tangle-network/creative-agent", roots: [""] },
|
|
40
|
-
physim: { repo: "tangle-network/
|
|
40
|
+
physim: { repo: "tangle-network/hardware-agent", roots: ["apps/web"] },
|
|
41
41
|
hospitality: { repo: "tangle-network/hospitality-agent", roots: [""] },
|
|
42
42
|
audits: { repo: "tangle-network/redteam", roots: ["packages/website"] },
|
|
43
43
|
browser: { repo: "tangle-network/bad-app", roots: [""] },
|
package/dist/index.d.ts
CHANGED
|
@@ -88,7 +88,7 @@ export declare const palettes: {
|
|
|
88
88
|
readonly well: "#12111f";
|
|
89
89
|
readonly nested: "#221f33";
|
|
90
90
|
readonly overlay: "#2c2942";
|
|
91
|
-
readonly deepest: "#
|
|
91
|
+
readonly deepest: "#040408";
|
|
92
92
|
readonly hairline: "#2a293d";
|
|
93
93
|
readonly ink: "#e6e6e6";
|
|
94
94
|
readonly inkSecondary: "#c7c7c7";
|
package/dist/index.js
CHANGED
package/package.json
CHANGED
package/src/palette.generated.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* GENERATED by scripts/gen-compat.mjs. Do not edit.
|
|
2
2
|
* Source: tokens.css + named-themes.css
|
|
3
|
-
* SHA-256:
|
|
3
|
+
* SHA-256: d10503737fc4c0704770bb4a56ec1ecf92d8cc4a875de7553f9b30fcb8317b07
|
|
4
4
|
* Light-default compatibility; all explicit modes remain canonical.
|
|
5
5
|
*/
|
|
6
6
|
:where(:root),
|
|
@@ -25,9 +25,9 @@
|
|
|
25
25
|
.dark {
|
|
26
26
|
color-scheme: dark;
|
|
27
27
|
--md3-surface: #0a0a14;
|
|
28
|
-
--md3-surface-dim: #
|
|
28
|
+
--md3-surface-dim: #040408;
|
|
29
29
|
--md3-surface-bright: #232238;
|
|
30
|
-
--md3-surface-container-lowest: #
|
|
30
|
+
--md3-surface-container-lowest: #040408;
|
|
31
31
|
--md3-surface-container-low: #12111f;
|
|
32
32
|
--md3-surface-container: #191826;
|
|
33
33
|
--md3-surface-container-high: #221f33;
|
|
@@ -1215,7 +1215,7 @@
|
|
|
1215
1215
|
--bg-root: #0a0a14;
|
|
1216
1216
|
--bg-card: var(--depth-2);
|
|
1217
1217
|
--bg-input: hsl(var(--hsl-input));
|
|
1218
|
-
--md3-surface-container-lowest: #
|
|
1218
|
+
--md3-surface-container-lowest: #040408;
|
|
1219
1219
|
--md3-surface-container-low: #12111f;
|
|
1220
1220
|
--md3-surface-container: #191826;
|
|
1221
1221
|
--md3-surface-container-high: #221f33;
|
|
@@ -1476,8 +1476,8 @@
|
|
|
1476
1476
|
--border-subtle: rgba(227, 233, 229, 0.10);
|
|
1477
1477
|
--border-default: rgba(227, 233, 229, 0.16);
|
|
1478
1478
|
--border-hover: rgba(227, 233, 229, 0.28);
|
|
1479
|
-
--border-strong: #
|
|
1480
|
-
--field-border: #
|
|
1479
|
+
--border-strong: #939c94;
|
|
1480
|
+
--field-border: #939c94;
|
|
1481
1481
|
--border-accent: rgba(118, 183, 145, 0.35);
|
|
1482
1482
|
--border-accent-hover: rgba(118, 183, 145, 0.50);
|
|
1483
1483
|
--shadow-card: 0 1px 2px rgba(0, 0, 0, 0.45), 0 10px 24px -14px rgba(0, 0, 0, 0.6);
|
|
@@ -248,7 +248,7 @@
|
|
|
248
248
|
--hsl-ring: 233 100% 87%;
|
|
249
249
|
--depth-1: #0a0a14; --depth-2: #191826; --depth-3: #221f33; --depth-4: #2c2942;
|
|
250
250
|
--bg-root: #0a0a14; --bg-card: var(--depth-2); --bg-input: hsl(var(--hsl-input));
|
|
251
|
-
--md3-surface-container-lowest: #
|
|
251
|
+
--md3-surface-container-lowest: #040408; --md3-surface-container-low: #12111f;
|
|
252
252
|
--md3-surface-container: #191826; --md3-surface-container-high: #221f33;
|
|
253
253
|
--md3-surface-container-highest: #2c2942; --md3-outline-variant: #2a293d;
|
|
254
254
|
--border-subtle: rgba(255, 255, 255, 0.10); --border-default: rgba(255, 255, 255, 0.16);
|
|
@@ -349,7 +349,7 @@
|
|
|
349
349
|
* well (field fill) on page / in card / in raised / in raised-2:
|
|
350
350
|
* 100 / 94.9 / 100 / 94.9 12.4 / 12.4 / 22.1 / 22.1
|
|
351
351
|
* hairline 85.0 #c9d0c7 42.0 #494f4a
|
|
352
|
-
* field border 60.0 #798479
|
|
352
|
+
* field border 60.0 #798479 68.3 #939c94 (light 3.9:1 on the card; dark 4.6:1 on the card, 3.5:1 on raised)
|
|
353
353
|
* A well is always the opposite step from its parent in light and always
|
|
354
354
|
* deeper in dark; tokens.css carries the `--well` context that picks one.
|
|
355
355
|
*
|
|
@@ -448,8 +448,8 @@
|
|
|
448
448
|
--well-page: #050705; --well-card: #050705; --well-raised: #181c18; --well-raised-2: #181c18;
|
|
449
449
|
--bg-hover: rgba(118, 183, 145, 0.07); --bg-selection: rgba(118, 183, 145, 0.28);
|
|
450
450
|
--border-subtle: rgba(227, 233, 229, 0.10); --border-default: rgba(227, 233, 229, 0.16);
|
|
451
|
-
--border-hover: rgba(227, 233, 229, 0.28); --border-strong: #
|
|
452
|
-
--field-border: #
|
|
451
|
+
--border-hover: rgba(227, 233, 229, 0.28); --border-strong: #939c94;
|
|
452
|
+
--field-border: #939c94;
|
|
453
453
|
--border-accent: rgba(118, 183, 145, 0.35); --border-accent-hover: rgba(118, 183, 145, 0.50);
|
|
454
454
|
--shadow-card: 0 1px 2px rgba(0, 0, 0, 0.45), 0 10px 24px -14px rgba(0, 0, 0, 0.6);
|
|
455
455
|
--shadow-raised: 0 1px 2px rgba(0, 0, 0, 0.35);
|
|
@@ -39,7 +39,7 @@ const ladder: Array<[role: string, token: string, light: number, dark: number]>
|
|
|
39
39
|
["well in raised", "well-raised", 100, 22.1],
|
|
40
40
|
["well in raised-2", "well-raised-2", 94.9, 22.1],
|
|
41
41
|
["hairline", "hsl-border", 85.0, 42.0],
|
|
42
|
-
["field border", "field-border", 60.0,
|
|
42
|
+
["field border", "field-border", 60.0, 68.3],
|
|
43
43
|
];
|
|
44
44
|
|
|
45
45
|
describe("Hospitality surface ladder", () => {
|
|
@@ -88,6 +88,9 @@ describe("Hospitality surface ladder", () => {
|
|
|
88
88
|
const border = rgbOf(css, "field-border");
|
|
89
89
|
expect(contrastRatio(border, rgbOf(css, "hsl-card")), "on the card").toBeGreaterThanOrEqual(3);
|
|
90
90
|
expect(contrastRatio(border, rgbOf(css, "well-card")), "on the well in a card").toBeGreaterThanOrEqual(3);
|
|
91
|
+
// A field in a card in a card sits on the raised plane: production measured
|
|
92
|
+
// the dark Select edge at 2.99:1 there before #939c94.
|
|
93
|
+
expect(contrastRatio(border, rgbOf(css, "hsl-raised")), "on the raised plane").toBeGreaterThanOrEqual(3);
|
|
91
94
|
expect(declIn(css, "border-strong")).toBe(declIn(css, "field-border"));
|
|
92
95
|
});
|
|
93
96
|
|
|
@@ -285,3 +288,23 @@ describe("Canonical surface ladder (every theme without its own ladder)", () =>
|
|
|
285
288
|
expect(contrastRatio(border, spine(css(), "hsl-background")), "on the page").toBeGreaterThanOrEqual(3);
|
|
286
289
|
});
|
|
287
290
|
});
|
|
291
|
+
|
|
292
|
+
describe("Inset workspace backdrop (canonical themes)", () => {
|
|
293
|
+
// sandbox-ui WorkspaceSurface / WorkspaceLayout surface="inset" paint the
|
|
294
|
+
// panel with the page colour on a --md3-surface-dim gutter. In dark the two
|
|
295
|
+
// were 2.2 L apart (#0a0a14 on #060610), so every page on the shared panel
|
|
296
|
+
// failed surface-ladder card-step on Creative production.
|
|
297
|
+
const DARK = blockIn(tokens, ".dark");
|
|
298
|
+
const LIGHT = blockIn(tokens, ".light");
|
|
299
|
+
it.each([
|
|
300
|
+
["dark", () => DARK],
|
|
301
|
+
["light", () => LIGHT],
|
|
302
|
+
])("steps the panel at least 3 L off its backdrop in %s", (_mode, css) => {
|
|
303
|
+
const panel = oklchLightness(hslToRgb(hslIn(css(), "hsl-background")));
|
|
304
|
+
const backdrop = oklchLightness(hexIn(css(), "md3-surface-dim"));
|
|
305
|
+
expect(Math.abs(panel - backdrop)).toBeGreaterThanOrEqual(3);
|
|
306
|
+
});
|
|
307
|
+
it("keeps the dark floor tokens equal, as their comment says", () => {
|
|
308
|
+
expect(declIn(DARK, "md3-surface-dim")).toBe(declIn(DARK, "md3-surface-container-lowest"));
|
|
309
|
+
});
|
|
310
|
+
});
|
package/src/styles/tokens.css
CHANGED
|
@@ -57,14 +57,14 @@
|
|
|
57
57
|
.dark {
|
|
58
58
|
color-scheme: dark;
|
|
59
59
|
--md3-surface: #0a0a14; /* L0 page canvas — indigo-lifted off black */
|
|
60
|
-
--md3-surface-dim: #
|
|
60
|
+
--md3-surface-dim: #040408; /* recessed page: 4.1 L under the #0a0a14 panel (the inset workspace surface needs >= 3) */
|
|
61
61
|
--md3-surface-bright: #232238;
|
|
62
62
|
/* Same value as --md3-surface-dim by design, not by drift: both name the floor
|
|
63
63
|
* of the ladder, and dark has no plane below it to give them. They stay two
|
|
64
64
|
* tokens because the roles diverge in light, where the well is paper (#ffffff)
|
|
65
65
|
* and the recessed page is grey (#dcdee6) — a consumer binding to the wrong one
|
|
66
66
|
* there gets the wrong surface. */
|
|
67
|
-
--md3-surface-container-lowest: #
|
|
67
|
+
--md3-surface-container-lowest: #040408; /* L-1 terminal/code well */
|
|
68
68
|
--md3-surface-container-low: #12111f; /* L1 chrome, field wells */
|
|
69
69
|
--md3-surface-container: #191826; /* L2 resting card */
|
|
70
70
|
--md3-surface-container-high: #221f33; /* L3 nested / hover */
|