@engineio/ui 0.4.2 → 0.5.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/dist/styles/fonts.css +38 -2
- package/dist/styles/tokens.css +13 -5
- package/package.json +2 -1
package/dist/styles/fonts.css
CHANGED
|
@@ -29,11 +29,44 @@
|
|
|
29
29
|
it there.
|
|
30
30
|
*/
|
|
31
31
|
|
|
32
|
+
/*
|
|
33
|
+
── WEIGHT RANGES, AND WHY ────────────────────────────────────────────────
|
|
34
|
+
|
|
35
|
+
Four faces ship: Regular 400, Semibold 600, Bold 700, Black 900. There is no
|
|
36
|
+
Medium (500) binary and no ExtraBold (800) one, and the products ask for both
|
|
37
|
+
— 500 is the single most-used non-body weight across the three sites (490
|
|
38
|
+
uses in studio, 61 in rgs, 7 in casino) and 800 has 23.
|
|
39
|
+
|
|
40
|
+
Left to the CSS font-matching algorithm those two land badly. A request for
|
|
41
|
+
500 searches DOWN before it searches up, so it resolves to Regular and a
|
|
42
|
+
`font-medium` label comes out identical to body text — the emphasis is
|
|
43
|
+
silently gone. A request for 800 searches UP, so it resolves to Black, two
|
|
44
|
+
steps heavier than asked for.
|
|
45
|
+
|
|
46
|
+
This was masked until now: the products loaded Inter (400–800) and Archivo
|
|
47
|
+
(400–600) from Google Fonts, both of which carry a real 500.
|
|
48
|
+
|
|
49
|
+
So each face declares the RANGE it stands in for, rather than a single value.
|
|
50
|
+
A static face named over a range is used for every weight in it, with no
|
|
51
|
+
synthesis. 500 is deliberately folded UP into Semibold, not down into
|
|
52
|
+
Regular: `font-medium` is used in these UIs to lift labels above body, and
|
|
53
|
+
the brand specifies Semibold for exactly that job (ENGINE-BRAND.md §3, "UI
|
|
54
|
+
labels and subtitles"). Folding it down would erase the distinction the call
|
|
55
|
+
site was making.
|
|
56
|
+
|
|
57
|
+
650 and 700 keep resolving to Bold exactly as they do today. Only 500 and 800
|
|
58
|
+
change, and both were broken.
|
|
59
|
+
|
|
60
|
+
THE REAL FIX is the two missing binaries. If Medium and ExtraBold can be
|
|
61
|
+
licensed, add them and narrow these ranges back to single values.
|
|
62
|
+
*/
|
|
63
|
+
|
|
32
64
|
/* ── ProximaNova ──────────────────────────────────────────────────────── */
|
|
33
65
|
|
|
34
66
|
@font-face {
|
|
35
67
|
font-family: "ProximaNova";
|
|
36
68
|
src: url("../fonts/ProximaNovaRegular.otf") format("opentype");
|
|
69
|
+
/* Body only. 500 is NOT folded in here — see the note above. */
|
|
37
70
|
font-weight: 400;
|
|
38
71
|
font-style: normal;
|
|
39
72
|
font-display: swap;
|
|
@@ -42,7 +75,8 @@
|
|
|
42
75
|
@font-face {
|
|
43
76
|
font-family: "ProximaNova";
|
|
44
77
|
src: url("../fonts/ProximaNovaSemibold.otf") format("opentype");
|
|
45
|
-
|
|
78
|
+
/* Stands in for Medium: no 500 binary ships. */
|
|
79
|
+
font-weight: 500 600;
|
|
46
80
|
font-style: normal;
|
|
47
81
|
font-display: swap;
|
|
48
82
|
}
|
|
@@ -50,7 +84,9 @@
|
|
|
50
84
|
@font-face {
|
|
51
85
|
font-family: "ProximaNova";
|
|
52
86
|
src: url("../fonts/ProximaNovaBold.otf") format("opentype");
|
|
53
|
-
|
|
87
|
+
/* Stands in for ExtraBold: no 800 binary ships. 650 lands here too, which
|
|
88
|
+
is where it already resolved. */
|
|
89
|
+
font-weight: 650 800;
|
|
54
90
|
font-style: normal;
|
|
55
91
|
font-display: swap;
|
|
56
92
|
}
|
package/dist/styles/tokens.css
CHANGED
|
@@ -187,11 +187,19 @@
|
|
|
187
187
|
"ProximaNovaCondensed", "ProximaNova", Arial, sans-serif;
|
|
188
188
|
--font-extra-condensed:
|
|
189
189
|
"ProximaNovaExtraCondensed", "ProximaNovaCondensed", Arial, sans-serif;
|
|
190
|
-
/* JetBrains Mono
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
190
|
+
/* NO MONO FACE. JetBrains Mono was specified for numerics, keys, IDs, code
|
|
191
|
+
and eyebrow labels, and is now retired at the owner's direction: Proxima
|
|
192
|
+
Nova is the root face everywhere, and there is no second typeface.
|
|
193
|
+
|
|
194
|
+
The token stays, pointed at the brand face, because ~200 call sites and
|
|
195
|
+
every `font-mono` utility read it — removing the name would silently drop
|
|
196
|
+
each of them to the browser default rather than to the brand. Code blocks
|
|
197
|
+
that genuinely need character-cell alignment should say so explicitly and
|
|
198
|
+
are a product decision, not a token one.
|
|
199
|
+
|
|
200
|
+
ENGINE-BRAND.md and ENGINE-DESIGN-SYSTEM.md still name JetBrains Mono and
|
|
201
|
+
need updating to match. */
|
|
202
|
+
--font-mono: var(--font-brand);
|
|
195
203
|
|
|
196
204
|
--breakpoint-2xl: 1400px;
|
|
197
205
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@engineio/ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "The Engine design system — tokens, fonts and Svelte primitives.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"private": false,
|
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
"sideEffects": [
|
|
24
24
|
"**/*.css"
|
|
25
25
|
],
|
|
26
|
+
"svelte": "./dist/index.js",
|
|
26
27
|
"exports": {
|
|
27
28
|
".": {
|
|
28
29
|
"types": "./dist/index.d.ts",
|