@navecss/tokens 0.1.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/LICENSE +55 -0
- package/README.md +122 -0
- package/TOKENS.md +180 -0
- package/dist/breakpoints.d.ts +25 -0
- package/dist/breakpoints.js +44 -0
- package/dist/build-record.json +77 -0
- package/dist/core-contract.json +30 -0
- package/dist/lib/bin.d.ts +2 -0
- package/dist/lib/bin.js +113 -0
- package/dist/lib/builder.d.ts +21 -0
- package/dist/lib/builder.js +41 -0
- package/dist/lib/collision.d.ts +12 -0
- package/dist/lib/collision.js +46 -0
- package/dist/lib/composite-value.d.ts +3 -0
- package/dist/lib/composite-value.js +152 -0
- package/dist/lib/core-version.d.ts +12 -0
- package/dist/lib/core-version.js +40 -0
- package/dist/lib/dtcg-descriptions.d.ts +2 -0
- package/dist/lib/dtcg-descriptions.js +23 -0
- package/dist/lib/dtcg-malformed.d.ts +10 -0
- package/dist/lib/dtcg-malformed.js +56 -0
- package/dist/lib/dtcg-outputs.d.ts +2 -0
- package/dist/lib/dtcg-outputs.js +32 -0
- package/dist/lib/dtcg-shape.d.ts +13 -0
- package/dist/lib/dtcg-shape.js +113 -0
- package/dist/lib/errors.d.ts +23 -0
- package/dist/lib/errors.js +34 -0
- package/dist/lib/facade.d.ts +26 -0
- package/dist/lib/facade.js +97 -0
- package/dist/lib/formats.d.ts +6 -0
- package/dist/lib/formats.js +236 -0
- package/dist/lib/json-pointer.d.ts +2 -0
- package/dist/lib/json-pointer.js +28 -0
- package/dist/lib/overrides.d.ts +2 -0
- package/dist/lib/overrides.js +59 -0
- package/dist/lib/package-root.d.ts +2 -0
- package/dist/lib/package-root.js +31 -0
- package/dist/lib/reader.d.ts +8 -0
- package/dist/lib/reader.js +136 -0
- package/dist/lib/theming/adjacency-source.d.ts +20 -0
- package/dist/lib/theming/adjacency-source.js +103 -0
- package/dist/lib/theming/adjacency.d.ts +17 -0
- package/dist/lib/theming/adjacency.js +133 -0
- package/dist/lib/theming/build-record.d.ts +45 -0
- package/dist/lib/theming/build-record.js +87 -0
- package/dist/lib/theming/build-step.d.ts +14 -0
- package/dist/lib/theming/build-step.js +91 -0
- package/dist/lib/theming/color-math.d.ts +33 -0
- package/dist/lib/theming/color-math.js +125 -0
- package/dist/lib/theming/comment-open-tracker.d.ts +1 -0
- package/dist/lib/theming/comment-open-tracker.js +49 -0
- package/dist/lib/theming/consumer-build.d.ts +18 -0
- package/dist/lib/theming/consumer-build.js +29 -0
- package/dist/lib/theming/contact-sheet.d.ts +22 -0
- package/dist/lib/theming/contact-sheet.js +123 -0
- package/dist/lib/theming/contrast.d.ts +31 -0
- package/dist/lib/theming/contrast.js +133 -0
- package/dist/lib/theming/copy-lint.d.ts +13 -0
- package/dist/lib/theming/copy-lint.js +98 -0
- package/dist/lib/theming/core-contract.d.ts +29 -0
- package/dist/lib/theming/core-contract.js +71 -0
- package/dist/lib/theming/core-source.d.ts +2 -0
- package/dist/lib/theming/core-source.js +18 -0
- package/dist/lib/theming/css-color-4.d.ts +19 -0
- package/dist/lib/theming/css-color-4.js +66 -0
- package/dist/lib/theming/css-named-colours.d.ts +1 -0
- package/dist/lib/theming/css-named-colours.js +151 -0
- package/dist/lib/theming/descriptions.d.ts +1 -0
- package/dist/lib/theming/descriptions.js +21 -0
- package/dist/lib/theming/emit.d.ts +10 -0
- package/dist/lib/theming/emit.js +62 -0
- package/dist/lib/theming/feedback-signal.d.ts +11 -0
- package/dist/lib/theming/feedback-signal.js +23 -0
- package/dist/lib/theming/guard-message-probes.d.ts +6 -0
- package/dist/lib/theming/guard-message-probes.js +96 -0
- package/dist/lib/theming/ladder.d.ts +15 -0
- package/dist/lib/theming/ladder.js +81 -0
- package/dist/lib/theming/neutral.d.ts +12 -0
- package/dist/lib/theming/neutral.js +76 -0
- package/dist/lib/theming/on-star.d.ts +11 -0
- package/dist/lib/theming/on-star.js +87 -0
- package/dist/lib/theming/palette-record.d.ts +2 -0
- package/dist/lib/theming/palette-record.js +15 -0
- package/dist/lib/theming/pipeline.d.ts +43 -0
- package/dist/lib/theming/pipeline.js +104 -0
- package/dist/lib/theming/ramp.d.ts +34 -0
- package/dist/lib/theming/ramp.js +92 -0
- package/dist/lib/theming/seed-channel-split.d.ts +8 -0
- package/dist/lib/theming/seed-channel-split.js +99 -0
- package/dist/lib/theming/seed-form-parsers-css-color-4.d.ts +8 -0
- package/dist/lib/theming/seed-form-parsers-css-color-4.js +85 -0
- package/dist/lib/theming/seed-form-parsers.d.ts +6 -0
- package/dist/lib/theming/seed-form-parsers.js +155 -0
- package/dist/lib/theming/seed-ingest.d.ts +15 -0
- package/dist/lib/theming/seed-ingest.js +112 -0
- package/dist/lib/theming/seed-input.d.ts +22 -0
- package/dist/lib/theming/seed-input.js +1 -0
- package/dist/lib/theming/seed-refusal.d.ts +21 -0
- package/dist/lib/theming/seed-refusal.js +77 -0
- package/dist/lib/theming/semantics.d.ts +19 -0
- package/dist/lib/theming/semantics.js +71 -0
- package/dist/lib/theming/shipped-seeds.d.ts +2 -0
- package/dist/lib/theming/shipped-seeds.js +5 -0
- package/dist/lib/theming/step-table.d.ts +5 -0
- package/dist/lib/theming/step-table.js +26 -0
- package/dist/lib/theming/third-party-provenance.d.ts +9 -0
- package/dist/lib/theming/third-party-provenance.js +35 -0
- package/dist/lib/theming/tokens-source.d.ts +3 -0
- package/dist/lib/theming/tokens-source.js +61 -0
- package/dist/lib/token-name.d.ts +2 -0
- package/dist/lib/token-name.js +28 -0
- package/dist/lib/validate-report.d.ts +19 -0
- package/dist/lib/validate-report.js +93 -0
- package/dist/lib/validate.d.ts +16 -0
- package/dist/lib/validate.js +65 -0
- package/dist/palette-record.json +293 -0
- package/dist/tokens.css +433 -0
- package/dist/tokens.d.ts +90 -0
- package/dist/tokens.js +88 -0
- package/package.json +85 -0
- package/tokens.json +938 -0
package/tokens.json
ADDED
|
@@ -0,0 +1,938 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$extensions": {
|
|
3
|
+
"dev.navecss.format": {
|
|
4
|
+
"targets": "This file is written to the Design Tokens Format Module 2025.10, a Final Community Group Report published on 28 October 2025. It is a community specification rather than a standards-track one, and nothing here claims conformance, certification or endorsement by anybody.",
|
|
5
|
+
"deviation": "This file is 90 of 93 conformant: 90 of the 93 tokens below conform to that revision. The three exceptions are letterSpacing.tight, letterSpacing.normal and letterSpacing.wide, which carry the unit em. The format closes a dimension's unit set at px and rem; em is lawful CSS and is the right unit for tracking, because it resolves against the element's own font size and so scales with the text it is tracking. Converting the three would change what renders, so the deviation is STATED here rather than the value converted. The cost is real and is stated with it: a strict third-party reader will reject those three. The limitation being deviated from is the token format's, not the platform's.",
|
|
6
|
+
"unitSetNote": "The reader accepts em for a dimension, beside the format's own px and rem, for exactly the three tokens above. Anything else about a dimension is read as the format defines it."
|
|
7
|
+
},
|
|
8
|
+
"dev.navecss.theming": {
|
|
9
|
+
"comment": "colour is no longer hand-authored in this file. The format has no notion of a derived token, so the seed binding and the step table live here under this namespaced extension; the actual generation, the achromatic branch, the semantic-slot mapping and the RCS formulas are computed by packages/tokens/src/theming/ (pipeline.ts et al.), never re-derived from this block by a second implementation. The build additionally emits a resolved palette record as an artifact (dist/palette-record.json), which is a record of what was built and is not a token document in this format. This block is a DECLARATION, not executable: it records what the shipped defaults ARE, for a reader of the source, and the generator is the single source of truth for how they are computed.",
|
|
10
|
+
"seeds": {
|
|
11
|
+
"primary": {
|
|
12
|
+
"oklch": [0.7859, 0.1316, 186.17],
|
|
13
|
+
"note": "brand teal, fixed 2026-08-10"
|
|
14
|
+
},
|
|
15
|
+
"danger": {
|
|
16
|
+
"oklch": [0.6357, 0.2072, 15.02],
|
|
17
|
+
"note": "fixed 2026-08-12"
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
"stepTable": "see packages/tokens/src/theming/step-table.ts — 15 rows, 0 to 1000, the 850 row at L 0.225",
|
|
21
|
+
"achromaticBranch": "an exactly-zero-chroma primary seed is a legal input, not an error: it selects the achromatic branch, under which action.primary and its hover and active states, on-action.primary, content.link and border.focus all resolve against the neutral ramp rather than the chroma-zero primary ramp. The values are computed by packages/tokens/src/theming/, never read from this block.",
|
|
22
|
+
"adjacency": {
|
|
23
|
+
"comment": "Each subject's legal partners: the contract for which colour pairs this package documents and checks a contrast floor for. packages/tokens/src/theming/adjacency-source.ts materializes this block into its ADJACENCY export at build time, and the contrast harness and any published pair documentation read that export rather than this block, so a second implementation cannot drift from it. This list is a MINIMUM, not the full slot cross-product: a pair that is not here is documented nowhere and is promised nothing. Removing an entry is therefore not a local edit, it changes what this project documents; if an entry looks wrong, open an issue rather than deleting it here. No contrast conclusion is drawn from this data and none may be read out of it: a floor or an admissible window is not something this file records.",
|
|
24
|
+
"content.primary": [
|
|
25
|
+
{
|
|
26
|
+
"against": "surface.base",
|
|
27
|
+
"class": "text"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"against": "surface.raised",
|
|
31
|
+
"class": "text"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"against": "surface.sunken",
|
|
35
|
+
"class": "text"
|
|
36
|
+
}
|
|
37
|
+
],
|
|
38
|
+
"content.secondary": [
|
|
39
|
+
{
|
|
40
|
+
"against": "surface.base",
|
|
41
|
+
"class": "text"
|
|
42
|
+
}
|
|
43
|
+
],
|
|
44
|
+
"content.tertiary": [
|
|
45
|
+
{
|
|
46
|
+
"against": "surface.base",
|
|
47
|
+
"class": "text"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"against": "surface.sunken",
|
|
51
|
+
"class": "text"
|
|
52
|
+
}
|
|
53
|
+
],
|
|
54
|
+
"content.inverse": [
|
|
55
|
+
{
|
|
56
|
+
"against": "surface.inverse",
|
|
57
|
+
"class": "text"
|
|
58
|
+
}
|
|
59
|
+
],
|
|
60
|
+
"action.secondary.foreground": [
|
|
61
|
+
{
|
|
62
|
+
"against": "action.secondary",
|
|
63
|
+
"class": "text"
|
|
64
|
+
}
|
|
65
|
+
],
|
|
66
|
+
"content.link": [
|
|
67
|
+
{
|
|
68
|
+
"against": "surface.base",
|
|
69
|
+
"class": "text"
|
|
70
|
+
}
|
|
71
|
+
],
|
|
72
|
+
"on-action.primary": [
|
|
73
|
+
{
|
|
74
|
+
"against": "action.primary",
|
|
75
|
+
"class": "text"
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"against": "action.primary.hover",
|
|
79
|
+
"class": "text"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"against": "action.primary.active",
|
|
83
|
+
"class": "text"
|
|
84
|
+
}
|
|
85
|
+
],
|
|
86
|
+
"on-feedback.danger": [
|
|
87
|
+
{
|
|
88
|
+
"against": "feedback.danger",
|
|
89
|
+
"class": "text"
|
|
90
|
+
}
|
|
91
|
+
],
|
|
92
|
+
"on-feedback.warning": [
|
|
93
|
+
{
|
|
94
|
+
"against": "feedback.warning",
|
|
95
|
+
"class": "text"
|
|
96
|
+
}
|
|
97
|
+
],
|
|
98
|
+
"on-feedback.success": [
|
|
99
|
+
{
|
|
100
|
+
"against": "feedback.success",
|
|
101
|
+
"class": "text"
|
|
102
|
+
}
|
|
103
|
+
],
|
|
104
|
+
"on-feedback.info": [
|
|
105
|
+
{
|
|
106
|
+
"against": "feedback.info",
|
|
107
|
+
"class": "text"
|
|
108
|
+
}
|
|
109
|
+
],
|
|
110
|
+
"border.control": [
|
|
111
|
+
{
|
|
112
|
+
"against": "surface.base",
|
|
113
|
+
"class": "non-text"
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"against": "surface.raised",
|
|
117
|
+
"class": "non-text"
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"against": "surface.overlay",
|
|
121
|
+
"class": "non-text"
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
"against": "surface.sunken",
|
|
125
|
+
"class": "non-text"
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
"against": "surface.inverse",
|
|
129
|
+
"class": "non-text"
|
|
130
|
+
}
|
|
131
|
+
],
|
|
132
|
+
"border.focus": [
|
|
133
|
+
{
|
|
134
|
+
"against": "surface.base",
|
|
135
|
+
"class": "non-text"
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
"against": "surface.raised",
|
|
139
|
+
"class": "non-text"
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"against": "surface.overlay",
|
|
143
|
+
"class": "non-text"
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
"against": "surface.sunken",
|
|
147
|
+
"class": "non-text"
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"against": "surface.inverse",
|
|
151
|
+
"class": "non-text"
|
|
152
|
+
}
|
|
153
|
+
],
|
|
154
|
+
"action.primary": [
|
|
155
|
+
{
|
|
156
|
+
"against": "surface.base",
|
|
157
|
+
"class": "non-text"
|
|
158
|
+
}
|
|
159
|
+
],
|
|
160
|
+
"feedback.danger": [
|
|
161
|
+
{
|
|
162
|
+
"against": "surface.base",
|
|
163
|
+
"class": "non-text"
|
|
164
|
+
}
|
|
165
|
+
],
|
|
166
|
+
"feedback.warning": [
|
|
167
|
+
{
|
|
168
|
+
"against": "surface.base",
|
|
169
|
+
"class": "non-text"
|
|
170
|
+
}
|
|
171
|
+
],
|
|
172
|
+
"feedback.danger.foreground": [
|
|
173
|
+
{
|
|
174
|
+
"against": "surface.base",
|
|
175
|
+
"class": "non-text"
|
|
176
|
+
}
|
|
177
|
+
]
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
},
|
|
181
|
+
"_primitive": {
|
|
182
|
+
"space": {
|
|
183
|
+
"0": {
|
|
184
|
+
"$value": {
|
|
185
|
+
"value": 0,
|
|
186
|
+
"unit": "px"
|
|
187
|
+
},
|
|
188
|
+
"$type": "dimension"
|
|
189
|
+
},
|
|
190
|
+
"1": {
|
|
191
|
+
"$value": {
|
|
192
|
+
"value": 4,
|
|
193
|
+
"unit": "px"
|
|
194
|
+
},
|
|
195
|
+
"$type": "dimension"
|
|
196
|
+
},
|
|
197
|
+
"2": {
|
|
198
|
+
"$value": {
|
|
199
|
+
"value": 8,
|
|
200
|
+
"unit": "px"
|
|
201
|
+
},
|
|
202
|
+
"$type": "dimension"
|
|
203
|
+
},
|
|
204
|
+
"3": {
|
|
205
|
+
"$value": {
|
|
206
|
+
"value": 12,
|
|
207
|
+
"unit": "px"
|
|
208
|
+
},
|
|
209
|
+
"$type": "dimension"
|
|
210
|
+
},
|
|
211
|
+
"4": {
|
|
212
|
+
"$value": {
|
|
213
|
+
"value": 16,
|
|
214
|
+
"unit": "px"
|
|
215
|
+
},
|
|
216
|
+
"$type": "dimension"
|
|
217
|
+
},
|
|
218
|
+
"6": {
|
|
219
|
+
"$value": {
|
|
220
|
+
"value": 24,
|
|
221
|
+
"unit": "px"
|
|
222
|
+
},
|
|
223
|
+
"$type": "dimension"
|
|
224
|
+
},
|
|
225
|
+
"8": {
|
|
226
|
+
"$value": {
|
|
227
|
+
"value": 32,
|
|
228
|
+
"unit": "px"
|
|
229
|
+
},
|
|
230
|
+
"$type": "dimension"
|
|
231
|
+
},
|
|
232
|
+
"12": {
|
|
233
|
+
"$value": {
|
|
234
|
+
"value": 48,
|
|
235
|
+
"unit": "px"
|
|
236
|
+
},
|
|
237
|
+
"$type": "dimension"
|
|
238
|
+
},
|
|
239
|
+
"16": {
|
|
240
|
+
"$value": {
|
|
241
|
+
"value": 64,
|
|
242
|
+
"unit": "px"
|
|
243
|
+
},
|
|
244
|
+
"$type": "dimension"
|
|
245
|
+
},
|
|
246
|
+
"24": {
|
|
247
|
+
"$value": {
|
|
248
|
+
"value": 96,
|
|
249
|
+
"unit": "px"
|
|
250
|
+
},
|
|
251
|
+
"$type": "dimension"
|
|
252
|
+
},
|
|
253
|
+
"32": {
|
|
254
|
+
"$value": {
|
|
255
|
+
"value": 128,
|
|
256
|
+
"unit": "px"
|
|
257
|
+
},
|
|
258
|
+
"$type": "dimension"
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
},
|
|
262
|
+
"font": {
|
|
263
|
+
"family": {
|
|
264
|
+
"base": {
|
|
265
|
+
"$value": ["system-ui", "-apple-system", "BlinkMacSystemFont", "Segoe UI", "sans-serif"],
|
|
266
|
+
"$type": "fontFamily",
|
|
267
|
+
"$description": "Body / UI typeface"
|
|
268
|
+
},
|
|
269
|
+
"display": {
|
|
270
|
+
"$value": ["system-ui", "-apple-system", "BlinkMacSystemFont", "Segoe UI", "sans-serif"],
|
|
271
|
+
"$type": "fontFamily",
|
|
272
|
+
"$description": "Heading typeface — swap for a display font when ready"
|
|
273
|
+
},
|
|
274
|
+
"mono": {
|
|
275
|
+
"$value": ["ui-monospace", "Cascadia Code", "Source Code Pro", "Menlo", "monospace"],
|
|
276
|
+
"$type": "fontFamily",
|
|
277
|
+
"$description": "Code / monospace typeface"
|
|
278
|
+
}
|
|
279
|
+
},
|
|
280
|
+
"size": {
|
|
281
|
+
"xs": {
|
|
282
|
+
"$value": {
|
|
283
|
+
"value": 0.75,
|
|
284
|
+
"unit": "rem"
|
|
285
|
+
},
|
|
286
|
+
"$type": "dimension"
|
|
287
|
+
},
|
|
288
|
+
"sm": {
|
|
289
|
+
"$value": {
|
|
290
|
+
"value": 0.875,
|
|
291
|
+
"unit": "rem"
|
|
292
|
+
},
|
|
293
|
+
"$type": "dimension"
|
|
294
|
+
},
|
|
295
|
+
"md": {
|
|
296
|
+
"$value": {
|
|
297
|
+
"value": 1,
|
|
298
|
+
"unit": "rem"
|
|
299
|
+
},
|
|
300
|
+
"$type": "dimension",
|
|
301
|
+
"$description": "Base body size (16px default)"
|
|
302
|
+
},
|
|
303
|
+
"lg": {
|
|
304
|
+
"$value": {
|
|
305
|
+
"value": 1.125,
|
|
306
|
+
"unit": "rem"
|
|
307
|
+
},
|
|
308
|
+
"$type": "dimension"
|
|
309
|
+
},
|
|
310
|
+
"xl": {
|
|
311
|
+
"$value": {
|
|
312
|
+
"value": 1.25,
|
|
313
|
+
"unit": "rem"
|
|
314
|
+
},
|
|
315
|
+
"$type": "dimension"
|
|
316
|
+
},
|
|
317
|
+
"2xl": {
|
|
318
|
+
"$value": {
|
|
319
|
+
"value": 1.5,
|
|
320
|
+
"unit": "rem"
|
|
321
|
+
},
|
|
322
|
+
"$type": "dimension"
|
|
323
|
+
},
|
|
324
|
+
"3xl": {
|
|
325
|
+
"$value": {
|
|
326
|
+
"value": 1.875,
|
|
327
|
+
"unit": "rem"
|
|
328
|
+
},
|
|
329
|
+
"$type": "dimension"
|
|
330
|
+
},
|
|
331
|
+
"4xl": {
|
|
332
|
+
"$value": {
|
|
333
|
+
"value": 2.25,
|
|
334
|
+
"unit": "rem"
|
|
335
|
+
},
|
|
336
|
+
"$type": "dimension"
|
|
337
|
+
}
|
|
338
|
+
},
|
|
339
|
+
"weight": {
|
|
340
|
+
"regular": {
|
|
341
|
+
"$value": 400,
|
|
342
|
+
"$type": "fontWeight"
|
|
343
|
+
},
|
|
344
|
+
"medium": {
|
|
345
|
+
"$value": 500,
|
|
346
|
+
"$type": "fontWeight"
|
|
347
|
+
},
|
|
348
|
+
"semibold": {
|
|
349
|
+
"$value": 600,
|
|
350
|
+
"$type": "fontWeight"
|
|
351
|
+
},
|
|
352
|
+
"bold": {
|
|
353
|
+
"$value": 700,
|
|
354
|
+
"$type": "fontWeight"
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
},
|
|
358
|
+
"lineHeight": {
|
|
359
|
+
"none": {
|
|
360
|
+
"$value": 1,
|
|
361
|
+
"$type": "number",
|
|
362
|
+
"$description": "Single-line / icon buttons — no extra leading"
|
|
363
|
+
},
|
|
364
|
+
"tight": {
|
|
365
|
+
"$value": 1.2,
|
|
366
|
+
"$type": "number",
|
|
367
|
+
"$description": "Headings"
|
|
368
|
+
},
|
|
369
|
+
"snug": {
|
|
370
|
+
"$value": 1.375,
|
|
371
|
+
"$type": "number"
|
|
372
|
+
},
|
|
373
|
+
"base": {
|
|
374
|
+
"$value": 1.5,
|
|
375
|
+
"$type": "number",
|
|
376
|
+
"$description": "Default body line height"
|
|
377
|
+
},
|
|
378
|
+
"relaxed": {
|
|
379
|
+
"$value": 1.625,
|
|
380
|
+
"$type": "number"
|
|
381
|
+
},
|
|
382
|
+
"loose": {
|
|
383
|
+
"$value": 2,
|
|
384
|
+
"$type": "number"
|
|
385
|
+
}
|
|
386
|
+
},
|
|
387
|
+
"letterSpacing": {
|
|
388
|
+
"tight": {
|
|
389
|
+
"$value": {
|
|
390
|
+
"value": -0.025,
|
|
391
|
+
"unit": "em"
|
|
392
|
+
},
|
|
393
|
+
"$type": "dimension",
|
|
394
|
+
"$description": "Large headings and display text"
|
|
395
|
+
},
|
|
396
|
+
"normal": {
|
|
397
|
+
"$value": {
|
|
398
|
+
"value": 0,
|
|
399
|
+
"unit": "em"
|
|
400
|
+
},
|
|
401
|
+
"$type": "dimension",
|
|
402
|
+
"$description": "Default — no adjustment"
|
|
403
|
+
},
|
|
404
|
+
"wide": {
|
|
405
|
+
"$value": {
|
|
406
|
+
"value": 0.075,
|
|
407
|
+
"unit": "em"
|
|
408
|
+
},
|
|
409
|
+
"$type": "dimension",
|
|
410
|
+
"$description": "Uppercase labels, small caps"
|
|
411
|
+
}
|
|
412
|
+
},
|
|
413
|
+
"spacing": {
|
|
414
|
+
"content": {
|
|
415
|
+
"xs": {
|
|
416
|
+
"$value": "{_primitive.space.1}",
|
|
417
|
+
"$type": "dimension"
|
|
418
|
+
},
|
|
419
|
+
"sm": {
|
|
420
|
+
"$value": "{_primitive.space.2}",
|
|
421
|
+
"$type": "dimension"
|
|
422
|
+
},
|
|
423
|
+
"md": {
|
|
424
|
+
"$value": "{_primitive.space.4}",
|
|
425
|
+
"$type": "dimension",
|
|
426
|
+
"$description": "Default component gap and padding"
|
|
427
|
+
},
|
|
428
|
+
"lg": {
|
|
429
|
+
"$value": "{_primitive.space.6}",
|
|
430
|
+
"$type": "dimension"
|
|
431
|
+
},
|
|
432
|
+
"xl": {
|
|
433
|
+
"$value": "{_primitive.space.8}",
|
|
434
|
+
"$type": "dimension"
|
|
435
|
+
}
|
|
436
|
+
},
|
|
437
|
+
"layout": {
|
|
438
|
+
"xs": {
|
|
439
|
+
"$value": "{_primitive.space.12}",
|
|
440
|
+
"$type": "dimension"
|
|
441
|
+
},
|
|
442
|
+
"sm": {
|
|
443
|
+
"$value": "{_primitive.space.16}",
|
|
444
|
+
"$type": "dimension"
|
|
445
|
+
},
|
|
446
|
+
"md": {
|
|
447
|
+
"$value": "{_primitive.space.24}",
|
|
448
|
+
"$type": "dimension"
|
|
449
|
+
},
|
|
450
|
+
"lg": {
|
|
451
|
+
"$value": "{_primitive.space.32}",
|
|
452
|
+
"$type": "dimension"
|
|
453
|
+
}
|
|
454
|
+
},
|
|
455
|
+
"control": {
|
|
456
|
+
"$description": "Internal padding inside interactive controls: buttons, inputs, selects",
|
|
457
|
+
"xs": {
|
|
458
|
+
"$value": "{_primitive.space.1}",
|
|
459
|
+
"$type": "dimension"
|
|
460
|
+
},
|
|
461
|
+
"sm": {
|
|
462
|
+
"$value": {
|
|
463
|
+
"value": 6,
|
|
464
|
+
"unit": "px"
|
|
465
|
+
},
|
|
466
|
+
"$type": "dimension",
|
|
467
|
+
"$description": "No matching _primitive.space rung; authored directly"
|
|
468
|
+
},
|
|
469
|
+
"md": {
|
|
470
|
+
"$value": "{_primitive.space.2}",
|
|
471
|
+
"$type": "dimension"
|
|
472
|
+
},
|
|
473
|
+
"lg": {
|
|
474
|
+
"$value": "{_primitive.space.3}",
|
|
475
|
+
"$type": "dimension"
|
|
476
|
+
}
|
|
477
|
+
}
|
|
478
|
+
},
|
|
479
|
+
"size": {
|
|
480
|
+
"control": {
|
|
481
|
+
"xs": {
|
|
482
|
+
"$value": {
|
|
483
|
+
"value": 1.5,
|
|
484
|
+
"unit": "rem"
|
|
485
|
+
},
|
|
486
|
+
"$type": "dimension",
|
|
487
|
+
"$description": "Compact/dense controls"
|
|
488
|
+
},
|
|
489
|
+
"sm": {
|
|
490
|
+
"$value": {
|
|
491
|
+
"value": 2,
|
|
492
|
+
"unit": "rem"
|
|
493
|
+
},
|
|
494
|
+
"$type": "dimension",
|
|
495
|
+
"$description": "Small controls"
|
|
496
|
+
},
|
|
497
|
+
"md": {
|
|
498
|
+
"$value": {
|
|
499
|
+
"value": 2.5,
|
|
500
|
+
"unit": "rem"
|
|
501
|
+
},
|
|
502
|
+
"$type": "dimension",
|
|
503
|
+
"$description": "Default control height"
|
|
504
|
+
},
|
|
505
|
+
"lg": {
|
|
506
|
+
"$value": {
|
|
507
|
+
"value": 3,
|
|
508
|
+
"unit": "rem"
|
|
509
|
+
},
|
|
510
|
+
"$type": "dimension",
|
|
511
|
+
"$description": "Large controls"
|
|
512
|
+
}
|
|
513
|
+
},
|
|
514
|
+
"icon": {
|
|
515
|
+
"xs": {
|
|
516
|
+
"$value": {
|
|
517
|
+
"value": 0.75,
|
|
518
|
+
"unit": "rem"
|
|
519
|
+
},
|
|
520
|
+
"$type": "dimension"
|
|
521
|
+
},
|
|
522
|
+
"sm": {
|
|
523
|
+
"$value": {
|
|
524
|
+
"value": 1,
|
|
525
|
+
"unit": "rem"
|
|
526
|
+
},
|
|
527
|
+
"$type": "dimension"
|
|
528
|
+
},
|
|
529
|
+
"md": {
|
|
530
|
+
"$value": {
|
|
531
|
+
"value": 1.25,
|
|
532
|
+
"unit": "rem"
|
|
533
|
+
},
|
|
534
|
+
"$type": "dimension",
|
|
535
|
+
"$description": "Default inline icon"
|
|
536
|
+
},
|
|
537
|
+
"lg": {
|
|
538
|
+
"$value": {
|
|
539
|
+
"value": 1.5,
|
|
540
|
+
"unit": "rem"
|
|
541
|
+
},
|
|
542
|
+
"$type": "dimension"
|
|
543
|
+
},
|
|
544
|
+
"xl": {
|
|
545
|
+
"$value": {
|
|
546
|
+
"value": 2,
|
|
547
|
+
"unit": "rem"
|
|
548
|
+
},
|
|
549
|
+
"$type": "dimension"
|
|
550
|
+
}
|
|
551
|
+
},
|
|
552
|
+
"avatar": {
|
|
553
|
+
"sm": {
|
|
554
|
+
"$value": {
|
|
555
|
+
"value": 1.5,
|
|
556
|
+
"unit": "rem"
|
|
557
|
+
},
|
|
558
|
+
"$type": "dimension"
|
|
559
|
+
},
|
|
560
|
+
"md": {
|
|
561
|
+
"$value": {
|
|
562
|
+
"value": 2,
|
|
563
|
+
"unit": "rem"
|
|
564
|
+
},
|
|
565
|
+
"$type": "dimension"
|
|
566
|
+
},
|
|
567
|
+
"lg": {
|
|
568
|
+
"$value": {
|
|
569
|
+
"value": 3,
|
|
570
|
+
"unit": "rem"
|
|
571
|
+
},
|
|
572
|
+
"$type": "dimension"
|
|
573
|
+
}
|
|
574
|
+
}
|
|
575
|
+
},
|
|
576
|
+
"borderWidth": {
|
|
577
|
+
"none": {
|
|
578
|
+
"$value": {
|
|
579
|
+
"value": 0,
|
|
580
|
+
"unit": "px"
|
|
581
|
+
},
|
|
582
|
+
"$type": "dimension"
|
|
583
|
+
},
|
|
584
|
+
"sm": {
|
|
585
|
+
"$value": {
|
|
586
|
+
"value": 1,
|
|
587
|
+
"unit": "px"
|
|
588
|
+
},
|
|
589
|
+
"$type": "dimension",
|
|
590
|
+
"$description": "Default border / divider"
|
|
591
|
+
},
|
|
592
|
+
"focus": {
|
|
593
|
+
"$value": {
|
|
594
|
+
"value": 2,
|
|
595
|
+
"unit": "px"
|
|
596
|
+
},
|
|
597
|
+
"$type": "dimension",
|
|
598
|
+
"$description": "Focus ring indicator outline width"
|
|
599
|
+
},
|
|
600
|
+
"lg": {
|
|
601
|
+
"$value": {
|
|
602
|
+
"value": 4,
|
|
603
|
+
"unit": "px"
|
|
604
|
+
},
|
|
605
|
+
"$type": "dimension"
|
|
606
|
+
}
|
|
607
|
+
},
|
|
608
|
+
"radius": {
|
|
609
|
+
"none": {
|
|
610
|
+
"$value": {
|
|
611
|
+
"value": 0,
|
|
612
|
+
"unit": "px"
|
|
613
|
+
},
|
|
614
|
+
"$type": "dimension"
|
|
615
|
+
},
|
|
616
|
+
"sm": {
|
|
617
|
+
"$value": {
|
|
618
|
+
"value": 4,
|
|
619
|
+
"unit": "px"
|
|
620
|
+
},
|
|
621
|
+
"$type": "dimension"
|
|
622
|
+
},
|
|
623
|
+
"control": {
|
|
624
|
+
"$value": {
|
|
625
|
+
"value": 6,
|
|
626
|
+
"unit": "px"
|
|
627
|
+
},
|
|
628
|
+
"$type": "dimension",
|
|
629
|
+
"$description": "Inputs, buttons, tags"
|
|
630
|
+
},
|
|
631
|
+
"card": {
|
|
632
|
+
"$value": {
|
|
633
|
+
"value": 12,
|
|
634
|
+
"unit": "px"
|
|
635
|
+
},
|
|
636
|
+
"$type": "dimension",
|
|
637
|
+
"$description": "Cards, panels, dialogs"
|
|
638
|
+
},
|
|
639
|
+
"overlay": {
|
|
640
|
+
"$value": {
|
|
641
|
+
"value": 12,
|
|
642
|
+
"unit": "px"
|
|
643
|
+
},
|
|
644
|
+
"$type": "dimension",
|
|
645
|
+
"$description": "Modals, drawers, sheets"
|
|
646
|
+
},
|
|
647
|
+
"full": {
|
|
648
|
+
"$value": {
|
|
649
|
+
"value": 9999,
|
|
650
|
+
"unit": "px"
|
|
651
|
+
},
|
|
652
|
+
"$type": "dimension",
|
|
653
|
+
"$description": "Pill / badge shape"
|
|
654
|
+
}
|
|
655
|
+
},
|
|
656
|
+
"shadow": {
|
|
657
|
+
"none": {
|
|
658
|
+
"$value": [],
|
|
659
|
+
"$type": "shadow",
|
|
660
|
+
"$description": "No elevation"
|
|
661
|
+
},
|
|
662
|
+
"raised": {
|
|
663
|
+
"$value": [
|
|
664
|
+
{
|
|
665
|
+
"offsetX": {
|
|
666
|
+
"value": 0,
|
|
667
|
+
"unit": "px"
|
|
668
|
+
},
|
|
669
|
+
"offsetY": {
|
|
670
|
+
"value": 0.0625,
|
|
671
|
+
"unit": "rem"
|
|
672
|
+
},
|
|
673
|
+
"blur": {
|
|
674
|
+
"value": 0.1875,
|
|
675
|
+
"unit": "rem"
|
|
676
|
+
},
|
|
677
|
+
"spread": {
|
|
678
|
+
"value": 0,
|
|
679
|
+
"unit": "px"
|
|
680
|
+
},
|
|
681
|
+
"color": {
|
|
682
|
+
"colorSpace": "oklch",
|
|
683
|
+
"components": [0, 0, 0],
|
|
684
|
+
"alpha": 0.08
|
|
685
|
+
}
|
|
686
|
+
},
|
|
687
|
+
{
|
|
688
|
+
"offsetX": {
|
|
689
|
+
"value": 0,
|
|
690
|
+
"unit": "px"
|
|
691
|
+
},
|
|
692
|
+
"offsetY": {
|
|
693
|
+
"value": 0.0625,
|
|
694
|
+
"unit": "rem"
|
|
695
|
+
},
|
|
696
|
+
"blur": {
|
|
697
|
+
"value": 0.125,
|
|
698
|
+
"unit": "rem"
|
|
699
|
+
},
|
|
700
|
+
"spread": {
|
|
701
|
+
"value": 0,
|
|
702
|
+
"unit": "px"
|
|
703
|
+
},
|
|
704
|
+
"color": {
|
|
705
|
+
"colorSpace": "oklch",
|
|
706
|
+
"components": [0, 0, 0],
|
|
707
|
+
"alpha": 0.06
|
|
708
|
+
}
|
|
709
|
+
}
|
|
710
|
+
],
|
|
711
|
+
"$type": "shadow",
|
|
712
|
+
"$description": "Cards, slight elevation above base"
|
|
713
|
+
},
|
|
714
|
+
"overlay": {
|
|
715
|
+
"$value": [
|
|
716
|
+
{
|
|
717
|
+
"offsetX": {
|
|
718
|
+
"value": 0,
|
|
719
|
+
"unit": "px"
|
|
720
|
+
},
|
|
721
|
+
"offsetY": {
|
|
722
|
+
"value": 0.25,
|
|
723
|
+
"unit": "rem"
|
|
724
|
+
},
|
|
725
|
+
"blur": {
|
|
726
|
+
"value": 0.75,
|
|
727
|
+
"unit": "rem"
|
|
728
|
+
},
|
|
729
|
+
"spread": {
|
|
730
|
+
"value": 0,
|
|
731
|
+
"unit": "px"
|
|
732
|
+
},
|
|
733
|
+
"color": {
|
|
734
|
+
"colorSpace": "oklch",
|
|
735
|
+
"components": [0, 0, 0],
|
|
736
|
+
"alpha": 0.1
|
|
737
|
+
}
|
|
738
|
+
},
|
|
739
|
+
{
|
|
740
|
+
"offsetX": {
|
|
741
|
+
"value": 0,
|
|
742
|
+
"unit": "px"
|
|
743
|
+
},
|
|
744
|
+
"offsetY": {
|
|
745
|
+
"value": 0.125,
|
|
746
|
+
"unit": "rem"
|
|
747
|
+
},
|
|
748
|
+
"blur": {
|
|
749
|
+
"value": 0.375,
|
|
750
|
+
"unit": "rem"
|
|
751
|
+
},
|
|
752
|
+
"spread": {
|
|
753
|
+
"value": 0,
|
|
754
|
+
"unit": "px"
|
|
755
|
+
},
|
|
756
|
+
"color": {
|
|
757
|
+
"colorSpace": "oklch",
|
|
758
|
+
"components": [0, 0, 0],
|
|
759
|
+
"alpha": 0.08
|
|
760
|
+
}
|
|
761
|
+
}
|
|
762
|
+
],
|
|
763
|
+
"$type": "shadow",
|
|
764
|
+
"$description": "Popovers, dropdowns, floating elements"
|
|
765
|
+
},
|
|
766
|
+
"modal": {
|
|
767
|
+
"$value": [
|
|
768
|
+
{
|
|
769
|
+
"offsetX": {
|
|
770
|
+
"value": 0,
|
|
771
|
+
"unit": "px"
|
|
772
|
+
},
|
|
773
|
+
"offsetY": {
|
|
774
|
+
"value": 1,
|
|
775
|
+
"unit": "rem"
|
|
776
|
+
},
|
|
777
|
+
"blur": {
|
|
778
|
+
"value": 2,
|
|
779
|
+
"unit": "rem"
|
|
780
|
+
},
|
|
781
|
+
"spread": {
|
|
782
|
+
"value": 0,
|
|
783
|
+
"unit": "px"
|
|
784
|
+
},
|
|
785
|
+
"color": {
|
|
786
|
+
"colorSpace": "oklch",
|
|
787
|
+
"components": [0, 0, 0],
|
|
788
|
+
"alpha": 0.15
|
|
789
|
+
}
|
|
790
|
+
},
|
|
791
|
+
{
|
|
792
|
+
"offsetX": {
|
|
793
|
+
"value": 0,
|
|
794
|
+
"unit": "px"
|
|
795
|
+
},
|
|
796
|
+
"offsetY": {
|
|
797
|
+
"value": 0.5,
|
|
798
|
+
"unit": "rem"
|
|
799
|
+
},
|
|
800
|
+
"blur": {
|
|
801
|
+
"value": 1,
|
|
802
|
+
"unit": "rem"
|
|
803
|
+
},
|
|
804
|
+
"spread": {
|
|
805
|
+
"value": 0,
|
|
806
|
+
"unit": "px"
|
|
807
|
+
},
|
|
808
|
+
"color": {
|
|
809
|
+
"colorSpace": "oklch",
|
|
810
|
+
"components": [0, 0, 0],
|
|
811
|
+
"alpha": 0.1
|
|
812
|
+
}
|
|
813
|
+
}
|
|
814
|
+
],
|
|
815
|
+
"$type": "shadow",
|
|
816
|
+
"$description": "Dialogs and modals — highest elevation"
|
|
817
|
+
}
|
|
818
|
+
},
|
|
819
|
+
"opacity": {
|
|
820
|
+
"disabled": {
|
|
821
|
+
"$value": 0.4,
|
|
822
|
+
"$type": "number",
|
|
823
|
+
"$description": "Opacity multiplier for muting content that is inert and contains nothing focusable (e.g. a disabled icon or illustration). Nave's own interactive-disabled state is expressed through content.disabled and border.disabled instead, not this token: opacity composites everything an element paints, including a focus indicator inside it."
|
|
824
|
+
}
|
|
825
|
+
},
|
|
826
|
+
"layer": {
|
|
827
|
+
"base": {
|
|
828
|
+
"$value": 0,
|
|
829
|
+
"$type": "number",
|
|
830
|
+
"$description": "Default document flow"
|
|
831
|
+
},
|
|
832
|
+
"dropdown": {
|
|
833
|
+
"$value": 100,
|
|
834
|
+
"$type": "number",
|
|
835
|
+
"$description": "Dropdowns, context menus, select panels"
|
|
836
|
+
},
|
|
837
|
+
"sticky": {
|
|
838
|
+
"$value": 200,
|
|
839
|
+
"$type": "number",
|
|
840
|
+
"$description": "Sticky headers, floating toolbars"
|
|
841
|
+
},
|
|
842
|
+
"overlay": {
|
|
843
|
+
"$value": 300,
|
|
844
|
+
"$type": "number",
|
|
845
|
+
"$description": "Backdrop overlays behind modals"
|
|
846
|
+
},
|
|
847
|
+
"modal": {
|
|
848
|
+
"$value": 400,
|
|
849
|
+
"$type": "number",
|
|
850
|
+
"$description": "Modal dialogs and drawers"
|
|
851
|
+
},
|
|
852
|
+
"toast": {
|
|
853
|
+
"$value": 500,
|
|
854
|
+
"$type": "number",
|
|
855
|
+
"$description": "Toast notifications and snackbars"
|
|
856
|
+
},
|
|
857
|
+
"tooltip": {
|
|
858
|
+
"$value": 600,
|
|
859
|
+
"$type": "number",
|
|
860
|
+
"$description": "Tooltips — always on top of everything"
|
|
861
|
+
}
|
|
862
|
+
},
|
|
863
|
+
"motion": {
|
|
864
|
+
"duration": {
|
|
865
|
+
"instant": {
|
|
866
|
+
"$value": {
|
|
867
|
+
"value": 0,
|
|
868
|
+
"unit": "ms"
|
|
869
|
+
},
|
|
870
|
+
"$type": "duration",
|
|
871
|
+
"$description": "No animation — kept at 0ms even under prefers-reduced-motion"
|
|
872
|
+
},
|
|
873
|
+
"fast": {
|
|
874
|
+
"$value": {
|
|
875
|
+
"value": 100,
|
|
876
|
+
"unit": "ms"
|
|
877
|
+
},
|
|
878
|
+
"$type": "duration",
|
|
879
|
+
"$description": "Micro-interactions: tooltips, badges"
|
|
880
|
+
},
|
|
881
|
+
"base": {
|
|
882
|
+
"$value": {
|
|
883
|
+
"value": 200,
|
|
884
|
+
"unit": "ms"
|
|
885
|
+
},
|
|
886
|
+
"$type": "duration",
|
|
887
|
+
"$description": "Default state transitions: hover, focus"
|
|
888
|
+
},
|
|
889
|
+
"slow": {
|
|
890
|
+
"$value": {
|
|
891
|
+
"value": 400,
|
|
892
|
+
"unit": "ms"
|
|
893
|
+
},
|
|
894
|
+
"$type": "duration",
|
|
895
|
+
"$description": "Layout shifts: accordion, drawer"
|
|
896
|
+
}
|
|
897
|
+
},
|
|
898
|
+
"easing": {
|
|
899
|
+
"standard": {
|
|
900
|
+
"$value": [0.4, 0, 0.2, 1],
|
|
901
|
+
"$type": "cubicBezier",
|
|
902
|
+
"$description": "General-purpose — enters and exits"
|
|
903
|
+
},
|
|
904
|
+
"decelerate": {
|
|
905
|
+
"$value": [0, 0, 0.2, 1],
|
|
906
|
+
"$type": "cubicBezier",
|
|
907
|
+
"$description": "Elements entering the screen"
|
|
908
|
+
},
|
|
909
|
+
"accelerate": {
|
|
910
|
+
"$value": [0.4, 0, 1, 1],
|
|
911
|
+
"$type": "cubicBezier",
|
|
912
|
+
"$description": "Elements leaving the screen"
|
|
913
|
+
}
|
|
914
|
+
}
|
|
915
|
+
},
|
|
916
|
+
"breakpoint": {
|
|
917
|
+
"tablet-portrait": {
|
|
918
|
+
"$value": 600,
|
|
919
|
+
"$type": "number",
|
|
920
|
+
"$description": "The boundary between phone and tablet-portrait. Stored as px, output as em (37.5em). Used as min-width for tablet-portrait-up and as the exclusive upper bound for phone-only."
|
|
921
|
+
},
|
|
922
|
+
"tablet-landscape": {
|
|
923
|
+
"$value": 900,
|
|
924
|
+
"$type": "number",
|
|
925
|
+
"$description": "The boundary between tablet-portrait and tablet-landscape. Stored as px, output as em (56.25em)."
|
|
926
|
+
},
|
|
927
|
+
"desktop": {
|
|
928
|
+
"$value": 1200,
|
|
929
|
+
"$type": "number",
|
|
930
|
+
"$description": "The boundary between tablet-landscape and desktop. Stored as px, output as em (75em)."
|
|
931
|
+
},
|
|
932
|
+
"wide": {
|
|
933
|
+
"$value": 1800,
|
|
934
|
+
"$type": "number",
|
|
935
|
+
"$description": "The boundary for wide screens. Stored as px, output as em (112.5em)."
|
|
936
|
+
}
|
|
937
|
+
}
|
|
938
|
+
}
|