@putdotio/design 1.2.1 → 1.4.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/DESIGN.md +9 -5
- package/dist/css/tokens.css +57 -20
- package/dist/figma/putio.tokens.json +47 -10
- package/dist/tokens.d.ts +1 -1
- package/dist/tokens.dtcg.json +267 -54
- package/dist/tokens.flat.json +199 -60
- package/dist/tokens.js +199 -60
- package/package.json +3 -2
- package/system/README.md +93 -19
- package/tokens/components.tokens.json +112 -0
- package/tokens/foundation.css +29 -9
- package/tokens/primitives.tokens.json +127 -27
- package/tokens/semantic.tokens.json +28 -27
package/DESIGN.md
CHANGED
|
@@ -24,17 +24,17 @@ typography:
|
|
|
24
24
|
ui:
|
|
25
25
|
family: "\"GT America\", sans-serif"
|
|
26
26
|
weight: 400
|
|
27
|
-
size: "
|
|
27
|
+
size: "1rem"
|
|
28
28
|
lineHeight: 1.45
|
|
29
29
|
display:
|
|
30
30
|
family: "\"GT America\", sans-serif"
|
|
31
31
|
weight: 900
|
|
32
|
-
size: "
|
|
32
|
+
size: "96px"
|
|
33
33
|
lineHeight: 1.1
|
|
34
34
|
mono:
|
|
35
35
|
family: "\"Berkeley Mono\", \"GT America Mono\", monospace"
|
|
36
36
|
weight: 400
|
|
37
|
-
size: "0.
|
|
37
|
+
size: "0.875rem"
|
|
38
38
|
lineHeight: 1.45
|
|
39
39
|
rounded:
|
|
40
40
|
sm: "4px"
|
|
@@ -78,12 +78,16 @@ Use GT America for product UI and display. Use GT America Mono for compact produ
|
|
|
78
78
|
|
|
79
79
|
Body UI text should stay readable and dense. Use medium weight for labels and controls, bold weight only where the hierarchy earns it, and black weight for deliberate display moments.
|
|
80
80
|
|
|
81
|
+
The root font-size is responsive like the product: 14px, stepping to 15px at the `--bp-lg` breakpoint. Body, labels, and inputs sit at `--fs-base` (1rem, equal to the root); captions and button labels sit at `--fs-sm` (0.875rem). The display tiers (`--fs-2xl`, `--fs-3xl`, `--fs-display`) are fixed pixel sizes and do not scale with the root.
|
|
82
|
+
|
|
81
83
|
## Layout & Spacing
|
|
82
84
|
|
|
83
85
|
put.io layouts are file-browser layouts first: lists, rows, columns, sidebars, toolbars, and sheets. Prefer whitespace and subtle dividers before card-heavy composition.
|
|
84
86
|
|
|
85
87
|
The spacing scale is intentionally steep: `4, 8, 16, 32, 64, 128, 256, 512`. Use it consistently rather than tuning one-off gaps.
|
|
86
88
|
|
|
89
|
+
Stacking uses the token scale — `--z-dropdown` (1000), `--z-sticky` (1100), `--z-modal` (1300), `--z-notification` (1400), `--z-tooltip` (1500) — gapped for platform chrome; never invent z-index numbers. Breakpoints (`--bp-sm`/`--bp-md`/`--bp-lg` = 640/768/1280px) mirror the product's responsive tiers; CSS media queries cannot read custom properties, so write the literal pixels in `@media` and keep them in sync with the tokens.
|
|
90
|
+
|
|
87
91
|
## Elevation & Depth
|
|
88
92
|
|
|
89
93
|
Elevation should clarify interaction, not decorate. Use borders and soft shadows for popovers, modals, menus, TV focus, and draggable/drop targets. Avoid decorative glow except where it is part of a focused TV state.
|
|
@@ -108,6 +112,6 @@ Do use Phosphor-style inline SVG for forward-looking icon guidance and no emoji
|
|
|
108
112
|
|
|
109
113
|
Do keep `DESIGN.md`, `tokens/`, `dist/`, and `system/tokens.css` in agreement.
|
|
110
114
|
|
|
111
|
-
Don't publish private
|
|
115
|
+
Don't publish private material in this public repo — the enumerated list lives in the repo's `docs/DISTRIBUTION.md` (Public Safety).
|
|
112
116
|
|
|
113
|
-
Don't generate Swift, Kotlin, Android XML,
|
|
117
|
+
Don't generate platform-native outputs (Swift, Kotlin, Android XML, Roku) from this repo — platform repos own their adapters. Policy in the repo's `docs/DISTRIBUTION.md`.
|
package/dist/css/tokens.css
CHANGED
|
@@ -15,7 +15,12 @@
|
|
|
15
15
|
--button-success-bg-hover: hsl(151, 58%, 37%);
|
|
16
16
|
--button-danger-bg: hsl(358, 75%, 59%);
|
|
17
17
|
--button-danger-bg-hover: hsl(357, 66%, 53%);
|
|
18
|
+
--button-info-bg: hsl(0, 0%, 56.1%);
|
|
18
19
|
--button-info-bg-hover: hsl(0, 0%, 52.3%);
|
|
20
|
+
--button-info-fg: hsl(0, 0%, 0%);
|
|
21
|
+
--button-default-bg: hsl(0, 0%, 95.1%);
|
|
22
|
+
--button-default-bg-hover: hsl(0, 0%, 93.0%);
|
|
23
|
+
--button-default-fg: hsl(0, 0%, 9.0%);
|
|
19
24
|
--input-bg: hsl(0, 0%, 100%);
|
|
20
25
|
--input-border: hsl(0, 0%, 85.8%);
|
|
21
26
|
--field-bg: hsl(0, 0%, 100%);
|
|
@@ -97,7 +102,6 @@
|
|
|
97
102
|
--yellow-text-secondary: hsl(46, 100%, 27%);
|
|
98
103
|
--yellow-text: hsl(43, 32%, 21%);
|
|
99
104
|
--lime-3: hsl(85, 76.0%, 92.3%);
|
|
100
|
-
--shadow-focus: 0 0 0 2px hsla(47, 100%, 65%, 0.35), 0 0 0 3.5px hsl(0, 0%, 9.0%);
|
|
101
105
|
--html-bg: hsl(0, 0%, 97.3%);
|
|
102
106
|
--app-bg: hsl(0, 0%, 100%);
|
|
103
107
|
--nav-bg: hsl(0, 0%, 100%);
|
|
@@ -139,20 +143,21 @@
|
|
|
139
143
|
--shadow-md: 0 4px 12px hsla(0, 0%, 0%, 0.08);
|
|
140
144
|
--shadow-lg: 0 16px 40px hsla(0, 0%, 0%, 0.12);
|
|
141
145
|
--shadow-focus-color: hsla(47, 100%, 65%, 0.35);
|
|
146
|
+
--shadow-focus: 0 0 0 3px hsla(47, 100%, 65%, 0.35);
|
|
142
147
|
--font-sans: "GT America", sans-serif;
|
|
143
148
|
--font-display: "GT America", sans-serif;
|
|
144
149
|
--font-ui-mono: "GT America Mono", monospace;
|
|
145
150
|
--font-mono: "Berkeley Mono", "GT America Mono", monospace;
|
|
146
151
|
--fs-xs: 0.75rem;
|
|
147
|
-
--fs-sm: 0.
|
|
148
|
-
--fs-base:
|
|
149
|
-
--fs-md:
|
|
150
|
-
--fs-lg: 1.
|
|
151
|
-
--fs-xl:
|
|
152
|
-
--fs-2xl:
|
|
153
|
-
--fs-3xl:
|
|
154
|
-
--fs-4xl:
|
|
155
|
-
--fs-display:
|
|
152
|
+
--fs-sm: 0.875rem;
|
|
153
|
+
--fs-base: 1rem;
|
|
154
|
+
--fs-md: 1.125rem;
|
|
155
|
+
--fs-lg: 1.5rem;
|
|
156
|
+
--fs-xl: 2rem;
|
|
157
|
+
--fs-2xl: 48px;
|
|
158
|
+
--fs-3xl: 64px;
|
|
159
|
+
--fs-4xl: 64px;
|
|
160
|
+
--fs-display: 96px;
|
|
156
161
|
--lh-tight: 1.1;
|
|
157
162
|
--lh-snug: 1.25;
|
|
158
163
|
--lh-normal: 1.45;
|
|
@@ -185,6 +190,14 @@
|
|
|
185
190
|
--dur-fast: 120ms;
|
|
186
191
|
--dur-base: 200ms;
|
|
187
192
|
--dur-slow: 320ms;
|
|
193
|
+
--z-dropdown: 1000;
|
|
194
|
+
--z-sticky: 1100;
|
|
195
|
+
--z-modal: 1300;
|
|
196
|
+
--z-notification: 1400;
|
|
197
|
+
--z-tooltip: 1500;
|
|
198
|
+
--bp-sm: 640px;
|
|
199
|
+
--bp-md: 768px;
|
|
200
|
+
--bp-lg: 1280px;
|
|
188
201
|
}
|
|
189
202
|
|
|
190
203
|
/* -- Dark (.dark) --------------------------------------------------- */
|
|
@@ -196,7 +209,12 @@
|
|
|
196
209
|
--button-success-bg-hover: hsl(151, 68%, 35%);
|
|
197
210
|
--button-danger-bg: hsl(358, 75%, 59%);
|
|
198
211
|
--button-danger-bg-hover: hsl(357, 67%, 53%);
|
|
212
|
+
--button-info-bg: hsl(0, 0%, 43.9%);
|
|
199
213
|
--button-info-bg-hover: hsl(0, 0%, 49.4%);
|
|
214
|
+
--button-info-fg: hsl(0, 0%, 100%);
|
|
215
|
+
--button-default-bg: hsl(0, 0%, 13.6%);
|
|
216
|
+
--button-default-bg-hover: hsl(0, 0%, 15.8%);
|
|
217
|
+
--button-default-fg: hsl(0, 0%, 93.0%);
|
|
200
218
|
--input-bg: hsl(0, 0%, 8.5%);
|
|
201
219
|
--input-border: hsl(0, 0%, 24.3%);
|
|
202
220
|
--field-bg: hsl(0, 0%, 8.5%);
|
|
@@ -278,7 +296,6 @@
|
|
|
278
296
|
--yellow-text-secondary: hsl(45, 100%, 64%);
|
|
279
297
|
--yellow-text: hsl(46, 89%, 86%);
|
|
280
298
|
--lime-3: hsl(85, 45%, 12%);
|
|
281
|
-
--shadow-focus: 0 0 0 2px hsla(47, 100%, 65%, 0.35), 0 0 0 3.5px hsl(0, 0%, 93.0%);
|
|
282
299
|
--html-bg: hsl(0, 0%, 0%);
|
|
283
300
|
--app-bg: hsl(0, 0%, 8.5%);
|
|
284
301
|
--nav-bg: hsl(0, 0%, 8.5%);
|
|
@@ -311,7 +328,7 @@ html {
|
|
|
311
328
|
background: var(--html-bg);
|
|
312
329
|
color: var(--text);
|
|
313
330
|
font-family: var(--font-sans);
|
|
314
|
-
font-size:
|
|
331
|
+
font-size: 14px; /* app.put.io root: fontSize ["14px","14px","15px"] — 15px at ≥ --bp-lg (media query below) */
|
|
315
332
|
line-height: var(--lh-normal);
|
|
316
333
|
-webkit-font-smoothing: antialiased;
|
|
317
334
|
-moz-osx-font-smoothing: grayscale;
|
|
@@ -323,6 +340,13 @@ body {
|
|
|
323
340
|
margin: 0;
|
|
324
341
|
}
|
|
325
342
|
|
|
343
|
+
/* Root steps up on desktop, matching app.put.io's responsive base.
|
|
344
|
+
14px/15px literals must stay in sync with --bp-lg (media queries
|
|
345
|
+
can't read custom properties). */
|
|
346
|
+
@media (min-width: 1280px) {
|
|
347
|
+
html { font-size: 15px; }
|
|
348
|
+
}
|
|
349
|
+
|
|
326
350
|
/* -- Semantic type ------------------------------------------------- */
|
|
327
351
|
|
|
328
352
|
.h-display, h1.display {
|
|
@@ -344,7 +368,7 @@ body {
|
|
|
344
368
|
|
|
345
369
|
h1, .h1 {
|
|
346
370
|
font-family: var(--font-sans);
|
|
347
|
-
font-size: var(--fs-
|
|
371
|
+
font-size: var(--fs-xl);
|
|
348
372
|
font-weight: var(--fw-bold);
|
|
349
373
|
line-height: var(--lh-tight);
|
|
350
374
|
letter-spacing: var(--tracking-tight);
|
|
@@ -353,7 +377,7 @@ h1, .h1 {
|
|
|
353
377
|
|
|
354
378
|
h2, .h2 {
|
|
355
379
|
font-family: var(--font-sans);
|
|
356
|
-
font-size: var(--fs-
|
|
380
|
+
font-size: var(--fs-lg);
|
|
357
381
|
font-weight: var(--fw-bold);
|
|
358
382
|
line-height: var(--lh-tight);
|
|
359
383
|
margin: 0 0 var(--space-3);
|
|
@@ -361,7 +385,7 @@ h2, .h2 {
|
|
|
361
385
|
|
|
362
386
|
h3, .h3 {
|
|
363
387
|
font-family: var(--font-sans);
|
|
364
|
-
font-size: var(--fs-
|
|
388
|
+
font-size: var(--fs-md);
|
|
365
389
|
font-weight: var(--fw-medium);
|
|
366
390
|
line-height: var(--lh-snug);
|
|
367
391
|
margin: 0 0 var(--space-2);
|
|
@@ -369,7 +393,7 @@ h3, .h3 {
|
|
|
369
393
|
|
|
370
394
|
h4, .h4 {
|
|
371
395
|
font-family: var(--font-sans);
|
|
372
|
-
font-size: var(--fs-
|
|
396
|
+
font-size: var(--fs-base);
|
|
373
397
|
font-weight: var(--fw-medium);
|
|
374
398
|
line-height: var(--lh-snug);
|
|
375
399
|
margin: 0 0 var(--space-2);
|
|
@@ -390,26 +414,26 @@ p, .body {
|
|
|
390
414
|
}
|
|
391
415
|
|
|
392
416
|
.lead {
|
|
393
|
-
font-size: var(--fs-
|
|
417
|
+
font-size: var(--fs-md);
|
|
394
418
|
font-weight: var(--fw-regular);
|
|
395
419
|
line-height: var(--lh-normal);
|
|
396
420
|
color: var(--text-secondary);
|
|
397
421
|
}
|
|
398
422
|
|
|
399
423
|
small, .caption {
|
|
400
|
-
font-size: var(--fs-
|
|
424
|
+
font-size: var(--fs-sm); /* production caption = fontSize 0 */
|
|
401
425
|
color: var(--text-secondary);
|
|
402
426
|
}
|
|
403
427
|
|
|
404
428
|
.label {
|
|
405
|
-
font-size: var(--fs-
|
|
429
|
+
font-size: var(--fs-base); /* production label = fontSize 1, medium */
|
|
406
430
|
font-weight: var(--fw-medium);
|
|
407
431
|
color: var(--text);
|
|
408
432
|
}
|
|
409
433
|
|
|
410
434
|
.button-text {
|
|
411
435
|
font-weight: var(--fw-medium);
|
|
412
|
-
font-size: var(--fs-
|
|
436
|
+
font-size: var(--fs-sm); /* production button = fontSize 0 */
|
|
413
437
|
letter-spacing: 0;
|
|
414
438
|
}
|
|
415
439
|
|
|
@@ -439,3 +463,16 @@ a:hover { text-decoration-color: currentColor; }
|
|
|
439
463
|
.bg-2 { background: var(--bg-secondary); }
|
|
440
464
|
.bg-component { background: var(--component-bg); }
|
|
441
465
|
.bg-yellow { background: var(--yellow-solid); color: var(--primary-foreground); }
|
|
466
|
+
|
|
467
|
+
/* -- Reduced motion ------------------------------------------------ */
|
|
468
|
+
/* Honor the OS "reduce motion" setting: collapse transitions/animations
|
|
469
|
+
to near-instant and stop looping/auto-scrolling effects. Components
|
|
470
|
+
should not rely on motion to convey state. */
|
|
471
|
+
@media (prefers-reduced-motion: reduce) {
|
|
472
|
+
*, *::before, *::after {
|
|
473
|
+
animation-duration: 0.01ms !important;
|
|
474
|
+
animation-iteration-count: 1 !important;
|
|
475
|
+
transition-duration: 0.01ms !important;
|
|
476
|
+
scroll-behavior: auto !important;
|
|
477
|
+
}
|
|
478
|
+
}
|
|
@@ -67,10 +67,37 @@
|
|
|
67
67
|
}
|
|
68
68
|
},
|
|
69
69
|
"info": {
|
|
70
|
+
"background": {
|
|
71
|
+
"$type": "color",
|
|
72
|
+
"$value": "hsl(0, 0%, 56.1%)",
|
|
73
|
+
"$description": "Neutral solid command background in light mode."
|
|
74
|
+
},
|
|
70
75
|
"backgroundHover": {
|
|
71
76
|
"$type": "color",
|
|
72
77
|
"$value": "hsl(0, 0%, 52.3%)",
|
|
73
78
|
"$description": "Neutral solid command hover background in light mode."
|
|
79
|
+
},
|
|
80
|
+
"foreground": {
|
|
81
|
+
"$type": "color",
|
|
82
|
+
"$value": "hsl(0, 0%, 0%)",
|
|
83
|
+
"$description": "Label on the neutral solid — mode-aware for AA contrast on the gray fill."
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
"default": {
|
|
87
|
+
"background": {
|
|
88
|
+
"$type": "color",
|
|
89
|
+
"$value": "hsl(0, 0%, 95.1%)",
|
|
90
|
+
"$description": "Quiet default button fill in light mode."
|
|
91
|
+
},
|
|
92
|
+
"backgroundHover": {
|
|
93
|
+
"$type": "color",
|
|
94
|
+
"$value": "hsl(0, 0%, 93.0%)",
|
|
95
|
+
"$description": "Default button hover fill in light mode."
|
|
96
|
+
},
|
|
97
|
+
"foreground": {
|
|
98
|
+
"$type": "color",
|
|
99
|
+
"$value": "hsl(0, 0%, 9.0%)",
|
|
100
|
+
"$description": "Default button label in light mode."
|
|
74
101
|
}
|
|
75
102
|
}
|
|
76
103
|
},
|
|
@@ -342,7 +369,8 @@
|
|
|
342
369
|
},
|
|
343
370
|
"color": {
|
|
344
371
|
"$type": "color",
|
|
345
|
-
"$value": "hsl(0, 0%, 78.0%)"
|
|
372
|
+
"$value": "hsl(0, 0%, 78.0%)",
|
|
373
|
+
"$description": "Compat name kept for existing web consumers — alias of elevation.shadowColor so the two can never drift."
|
|
346
374
|
},
|
|
347
375
|
"focusColor": {
|
|
348
376
|
"$type": "color",
|
|
@@ -375,39 +403,48 @@
|
|
|
375
403
|
},
|
|
376
404
|
"sm": {
|
|
377
405
|
"$type": "dimension",
|
|
378
|
-
"$value": "0.
|
|
406
|
+
"$value": "0.875rem",
|
|
407
|
+
"$description": "Caption and button labels — production fontSize 0."
|
|
379
408
|
},
|
|
380
409
|
"base": {
|
|
381
410
|
"$type": "dimension",
|
|
382
|
-
"$value": "
|
|
411
|
+
"$value": "1rem",
|
|
412
|
+
"$description": "Body, labels, inputs — production fontSize 1; equals the responsive root (14px, 15px at >= breakpoint.lg)."
|
|
383
413
|
},
|
|
384
414
|
"md": {
|
|
385
415
|
"$type": "dimension",
|
|
386
|
-
"$value": "
|
|
416
|
+
"$value": "1.125rem",
|
|
417
|
+
"$description": "Subheading."
|
|
387
418
|
},
|
|
388
419
|
"lg": {
|
|
389
420
|
"$type": "dimension",
|
|
390
|
-
"$value": "1.
|
|
421
|
+
"$value": "1.5rem",
|
|
422
|
+
"$description": "Heading."
|
|
391
423
|
},
|
|
392
424
|
"xl": {
|
|
393
425
|
"$type": "dimension",
|
|
394
|
-
"$value": "
|
|
426
|
+
"$value": "2rem",
|
|
427
|
+
"$description": "Page title."
|
|
395
428
|
},
|
|
396
429
|
"2xl": {
|
|
397
430
|
"$type": "dimension",
|
|
398
|
-
"$value": "
|
|
431
|
+
"$value": "48px",
|
|
432
|
+
"$description": "Fixed display tier — does not scale with the responsive root."
|
|
399
433
|
},
|
|
400
434
|
"3xl": {
|
|
401
435
|
"$type": "dimension",
|
|
402
|
-
"$value": "
|
|
436
|
+
"$value": "64px",
|
|
437
|
+
"$description": "Fixed display tier — does not scale with the responsive root."
|
|
403
438
|
},
|
|
404
439
|
"4xl": {
|
|
405
440
|
"$type": "dimension",
|
|
406
|
-
"$value": "
|
|
441
|
+
"$value": "64px",
|
|
442
|
+
"$description": "Compatibility alias for the former 4xl tier; new surfaces should use fontSize.3xl or fontSize.display."
|
|
407
443
|
},
|
|
408
444
|
"display": {
|
|
409
445
|
"$type": "dimension",
|
|
410
|
-
"$value": "
|
|
446
|
+
"$value": "96px",
|
|
447
|
+
"$description": "Fixed display tier for brand display moments."
|
|
411
448
|
}
|
|
412
449
|
},
|
|
413
450
|
"lineHeight": {
|
package/dist/tokens.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Do not edit directly. Generated from tokens/**/*.tokens.json.
|
|
2
2
|
|
|
3
|
-
export type PutioTokenName = "component.button.primary.background" | "component.button.primary.backgroundHover" | "component.button.primary.backgroundHoverDark" | "component.button.primary.foreground" | "component.button.primary.radius" | "component.button.secondary.background" | "component.button.secondary.backgroundDark" | "component.button.secondary.foreground" | "component.button.secondary.foregroundDark" | "component.button.success.background" | "component.button.success.backgroundDark" | "component.button.success.backgroundHover" | "component.button.success.backgroundHoverDark" | "component.button.success.foreground" | "component.button.danger.background" | "component.button.danger.backgroundDark" | "component.button.danger.backgroundHover" | "component.button.danger.backgroundHoverDark" | "component.button.danger.foreground" | "component.button.info.backgroundHover" | "component.button.info.backgroundHoverDark" | "component.input.background" | "component.input.backgroundDark" | "component.input.border" | "component.input.borderDark" | "component.input.radius" | "component.field.background" | "component.field.backgroundDark" | "component.field.backgroundDisabled" | "component.field.backgroundDisabledDark" | "component.field.border" | "component.field.borderDark" | "component.field.borderHover" | "component.field.borderHoverDark" | "component.field.borderFocus" | "component.field.borderFocusDark" | "component.field.text" | "component.field.textDark" | "component.field.placeholder" | "component.field.placeholderDark" | "component.field.ring" | "component.field.ringDark" | "component.panel.background" | "component.panel.backgroundDark" | "component.panel.border" | "component.panel.borderDark" | "component.panel.radius" | "component.panel.shadow" | "component.panel.shadowDark" | "component.alias.background" | "component.alias.backgroundDark" | "component.alias.foreground" | "component.alias.foregroundDark" | "component.alias.foregroundMuted" | "component.alias.foregroundMutedDark" | "component.alias.primary" | "component.alias.primaryForeground" | "component.alias.success" | "component.alias.successDark" | "component.alias.successForeground" | "component.alias.destructive" | "component.alias.destructiveDark" | "component.alias.destructiveForeground" | "component.alias.invertForeground" | "component.alias.invertForegroundDark" | "component.alias.solidForeground" | "component.alias.solidForegroundDark" | "component.alias.muted" | "component.alias.mutedDark" | "component.alias.mutedForeground" | "component.alias.mutedForegroundDark" | "component.alias.accent" | "component.alias.accentDark" | "component.alias.accentForeground" | "component.alias.accentForegroundDark" | "component.alias.card" | "component.alias.cardDark" | "component.alias.cardForeground" | "component.alias.cardForegroundDark" | "component.alias.popover" | "component.alias.popoverDark" | "component.alias.popoverForeground" | "component.alias.popoverForegroundDark" | "component.alias.input" | "component.alias.inputDark" | "component.alias.ring" | "component.fileRow.background" | "component.fileRow.backgroundDark" | "component.fileRow.hoverBackground" | "component.fileRow.hoverBackgroundDark" | "component.fileRow.icon" | "component.notification.infoBackground" | "component.notification.infoBackgroundDark" | "component.notification.dangerBackground" | "component.notification.dangerBackgroundDark" | "context.tv.surface.0" | "context.tv.surface.1" | "context.tv.surface.2" | "context.tv.surface.3" | "context.tv.text.primary" | "context.tv.text.secondary" | "context.tv.text.tertiary" | "context.tv.glass.1" | "context.tv.glass.2" | "context.tv.glass.3" | "context.tv.glass.border" | "context.tv.glass.borderStrong" | "context.tv.focus.ring" | "context.tv.focus.liftShadow" | "context.tv.channelArt.production.posterBackground" | "context.tv.channelArt.production.splashBackground" | "context.tv.channelArt.development.background" | "context.tv.channelArt.development.accent" | "context.tv.channelArt.development.grid" | "context.tv.channelArt.lab.background" | "context.tv.channelArt.lab.foreground" | "context.tv.channelArt.lab.accent" | "color.brand.yellow" | "color.neutral.light.bg" | "color.neutral.light.bgSecondary" | "color.neutral.light.componentBg" | "color.neutral.light.componentBgHover" | "color.neutral.light.componentBgActive" | "color.neutral.light.line" | "color.neutral.light.border" | "color.neutral.light.borderHover" | "color.neutral.light.solid" | "color.neutral.light.solidHover" | "color.neutral.light.textSecondary" | "color.neutral.light.text" | "color.neutral.dark.bg" | "color.neutral.dark.bgSecondary" | "color.neutral.dark.componentBg" | "color.neutral.dark.componentBgHover" | "color.neutral.dark.componentBgActive" | "color.neutral.dark.line" | "color.neutral.dark.border" | "color.neutral.dark.borderHover" | "color.neutral.dark.solid" | "color.neutral.dark.solidHover" | "color.neutral.dark.textSecondary" | "color.neutral.dark.text" | "color.green.light.bg" | "color.green.light.bgSecondary" | "color.green.light.componentBg" | "color.green.light.componentBgHover" | "color.green.light.componentBgActive" | "color.green.light.line" | "color.green.light.border" | "color.green.light.borderHover" | "color.green.light.solid" | "color.green.light.solidHover" | "color.green.light.textSecondary" | "color.green.light.text" | "color.green.dark.bg" | "color.green.dark.bgSecondary" | "color.green.dark.componentBg" | "color.green.dark.componentBgHover" | "color.green.dark.componentBgActive" | "color.green.dark.line" | "color.green.dark.border" | "color.green.dark.borderHover" | "color.green.dark.solid" | "color.green.dark.solidHover" | "color.green.dark.textSecondary" | "color.green.dark.text" | "color.red.light.bg" | "color.red.light.bgSecondary" | "color.red.light.componentBg" | "color.red.light.componentBgHover" | "color.red.light.componentBgActive" | "color.red.light.line" | "color.red.light.border" | "color.red.light.borderHover" | "color.red.light.solid" | "color.red.light.solidHover" | "color.red.light.textSecondary" | "color.red.light.text" | "color.red.dark.bg" | "color.red.dark.bgSecondary" | "color.red.dark.componentBg" | "color.red.dark.componentBgHover" | "color.red.dark.componentBgActive" | "color.red.dark.line" | "color.red.dark.border" | "color.red.dark.borderHover" | "color.red.dark.solid" | "color.red.dark.solidHover" | "color.red.dark.textSecondary" | "color.red.dark.text" | "color.yellow.light.bg" | "color.yellow.light.bgSecondary" | "color.yellow.light.componentBg" | "color.yellow.light.componentBgHover" | "color.yellow.light.componentBgActive" | "color.yellow.light.line" | "color.yellow.light.border" | "color.yellow.light.borderHover" | "color.yellow.light.solidHover" | "color.yellow.light.textSecondary" | "color.yellow.light.text" | "color.yellow.dark.bg" | "color.yellow.dark.bgSecondary" | "color.yellow.dark.componentBg" | "color.yellow.dark.componentBgHover" | "color.yellow.dark.componentBgActive" | "color.yellow.dark.line" | "color.yellow.dark.border" | "color.yellow.dark.borderHover" | "color.yellow.dark.solidHover" | "color.yellow.dark.textSecondary" | "color.yellow.dark.text" | "color.transfer.light.lime3" | "color.transfer.dark.lime3" | "elevation.shadowColor" | "elevation.color" | "elevation.sm" | "elevation.md" | "elevation.lg" | "elevation.focusColor" | "elevation.focus" | "elevation.focusDark" | "typography.fontFamily.sans" | "typography.fontFamily.display" | "typography.fontFamily.uiMono" | "typography.fontFamily.mono" | "typography.fontSize.xs" | "typography.fontSize.sm" | "typography.fontSize.base" | "typography.fontSize.md" | "typography.fontSize.lg" | "typography.fontSize.xl" | "typography.fontSize.2xl" | "typography.fontSize.3xl" | "typography.fontSize.4xl" | "typography.fontSize.display" | "typography.lineHeight.tight" | "typography.lineHeight.snug" | "typography.lineHeight.normal" | "typography.lineHeight.loose" | "typography.fontWeight.regular" | "typography.fontWeight.medium" | "typography.fontWeight.bold" | "typography.fontWeight.black" | "typography.letterSpacing.tight" | "typography.letterSpacing.normal" | "typography.letterSpacing.wide" | "typography.letterSpacing.uppercase" | "spacing.0" | "spacing.1" | "spacing.2" | "spacing.3" | "spacing.4" | "spacing.5" | "spacing.6" | "spacing.7" | "spacing.8" | "radius.sm" | "radius.default" | "radius.md" | "radius.lg" | "radius.pill" | "border.width" | "motion.easing.out" | "motion.easing.inOut" | "motion.duration.fast" | "motion.duration.base" | "motion.duration.slow" | "surface.light.htmlBg" | "surface.light.appBg" | "surface.light.navBg" | "surface.light.navItemBg" | "surface.light.navItemBgHover" | "surface.light.navItemBgActive" | "surface.light.listItemBg" | "surface.light.listItemBgHover" | "surface.light.listItemBgActive" | "surface.light.listItemBorder" | "surface.light.segmentedControlBg" | "surface.light.segmentedControlBgActive" | "surface.light.transferListItemCompletingBg" | "surface.light.transferListItemDownloadingBg" | "surface.light.transferListItemFinishedBg" | "surface.light.transferListItemPassiveBg" | "surface.light.hiContrast" | "surface.light.loContrast" | "surface.light.transparent" | "surface.light.overlayInline" | "surface.light.overlayFull" | "surface.dark.htmlBg" | "surface.dark.appBg" | "surface.dark.navBg" | "surface.dark.navItemBg" | "surface.dark.navItemBgHover" | "surface.dark.navItemBgActive" | "surface.dark.listItemBg" | "surface.dark.listItemBgHover" | "surface.dark.listItemBgActive" | "surface.dark.listItemBorder" | "surface.dark.segmentedControlBg" | "surface.dark.segmentedControlBgActive" | "surface.dark.transferListItemCompletingBg" | "surface.dark.transferListItemDownloadingBg" | "surface.dark.transferListItemFinishedBg" | "surface.dark.transferListItemPassiveBg" | "surface.dark.hiContrast" | "surface.dark.loContrast" | "surface.dark.overlayInline" | "surface.dark.overlayFull" | "surface.dark.shadowColor" | "surface.dark.shadow" | "surface.dark.shadowSm" | "surface.dark.shadowMd" | "surface.dark.shadowLg";
|
|
3
|
+
export type PutioTokenName = "component.button.primary.background" | "component.button.primary.backgroundHover" | "component.button.primary.backgroundHoverDark" | "component.button.primary.foreground" | "component.button.primary.radius" | "component.button.secondary.background" | "component.button.secondary.backgroundDark" | "component.button.secondary.foreground" | "component.button.secondary.foregroundDark" | "component.button.success.background" | "component.button.success.backgroundDark" | "component.button.success.backgroundHover" | "component.button.success.backgroundHoverDark" | "component.button.success.foreground" | "component.button.danger.background" | "component.button.danger.backgroundDark" | "component.button.danger.backgroundHover" | "component.button.danger.backgroundHoverDark" | "component.button.danger.foreground" | "component.button.info.background" | "component.button.info.backgroundDark" | "component.button.info.backgroundHover" | "component.button.info.backgroundHoverDark" | "component.button.info.foreground" | "component.button.info.foregroundDark" | "component.button.default.background" | "component.button.default.backgroundDark" | "component.button.default.backgroundHover" | "component.button.default.backgroundHoverDark" | "component.button.default.foreground" | "component.button.default.foregroundDark" | "component.input.background" | "component.input.backgroundDark" | "component.input.border" | "component.input.borderDark" | "component.input.radius" | "component.field.background" | "component.field.backgroundDark" | "component.field.backgroundDisabled" | "component.field.backgroundDisabledDark" | "component.field.border" | "component.field.borderDark" | "component.field.borderHover" | "component.field.borderHoverDark" | "component.field.borderFocus" | "component.field.borderFocusDark" | "component.field.text" | "component.field.textDark" | "component.field.placeholder" | "component.field.placeholderDark" | "component.field.ring" | "component.field.ringDark" | "component.panel.background" | "component.panel.backgroundDark" | "component.panel.border" | "component.panel.borderDark" | "component.panel.radius" | "component.panel.shadow" | "component.panel.shadowDark" | "component.alias.background" | "component.alias.backgroundDark" | "component.alias.foreground" | "component.alias.foregroundDark" | "component.alias.foregroundMuted" | "component.alias.foregroundMutedDark" | "component.alias.primary" | "component.alias.primaryForeground" | "component.alias.success" | "component.alias.successDark" | "component.alias.successForeground" | "component.alias.destructive" | "component.alias.destructiveDark" | "component.alias.destructiveForeground" | "component.alias.invertForeground" | "component.alias.invertForegroundDark" | "component.alias.solidForeground" | "component.alias.solidForegroundDark" | "component.alias.muted" | "component.alias.mutedDark" | "component.alias.mutedForeground" | "component.alias.mutedForegroundDark" | "component.alias.accent" | "component.alias.accentDark" | "component.alias.accentForeground" | "component.alias.accentForegroundDark" | "component.alias.card" | "component.alias.cardDark" | "component.alias.cardForeground" | "component.alias.cardForegroundDark" | "component.alias.popover" | "component.alias.popoverDark" | "component.alias.popoverForeground" | "component.alias.popoverForegroundDark" | "component.alias.input" | "component.alias.inputDark" | "component.alias.ring" | "component.fileRow.background" | "component.fileRow.backgroundDark" | "component.fileRow.hoverBackground" | "component.fileRow.hoverBackgroundDark" | "component.fileRow.icon" | "component.notification.infoBackground" | "component.notification.infoBackgroundDark" | "component.notification.dangerBackground" | "component.notification.dangerBackgroundDark" | "context.tv.surface.0" | "context.tv.surface.1" | "context.tv.surface.2" | "context.tv.surface.3" | "context.tv.text.primary" | "context.tv.text.secondary" | "context.tv.text.tertiary" | "context.tv.glass.1" | "context.tv.glass.2" | "context.tv.glass.3" | "context.tv.glass.border" | "context.tv.glass.borderStrong" | "context.tv.focus.ring" | "context.tv.focus.liftShadow" | "context.tv.channelArt.production.posterBackground" | "context.tv.channelArt.production.splashBackground" | "context.tv.channelArt.development.background" | "context.tv.channelArt.development.accent" | "context.tv.channelArt.development.grid" | "context.tv.channelArt.lab.background" | "context.tv.channelArt.lab.foreground" | "context.tv.channelArt.lab.accent" | "color.brand.yellow" | "color.neutral.light.bg" | "color.neutral.light.bgSecondary" | "color.neutral.light.componentBg" | "color.neutral.light.componentBgHover" | "color.neutral.light.componentBgActive" | "color.neutral.light.line" | "color.neutral.light.border" | "color.neutral.light.borderHover" | "color.neutral.light.solid" | "color.neutral.light.solidHover" | "color.neutral.light.textSecondary" | "color.neutral.light.text" | "color.neutral.dark.bg" | "color.neutral.dark.bgSecondary" | "color.neutral.dark.componentBg" | "color.neutral.dark.componentBgHover" | "color.neutral.dark.componentBgActive" | "color.neutral.dark.line" | "color.neutral.dark.border" | "color.neutral.dark.borderHover" | "color.neutral.dark.solid" | "color.neutral.dark.solidHover" | "color.neutral.dark.textSecondary" | "color.neutral.dark.text" | "color.green.light.bg" | "color.green.light.bgSecondary" | "color.green.light.componentBg" | "color.green.light.componentBgHover" | "color.green.light.componentBgActive" | "color.green.light.line" | "color.green.light.border" | "color.green.light.borderHover" | "color.green.light.solid" | "color.green.light.solidHover" | "color.green.light.textSecondary" | "color.green.light.text" | "color.green.dark.bg" | "color.green.dark.bgSecondary" | "color.green.dark.componentBg" | "color.green.dark.componentBgHover" | "color.green.dark.componentBgActive" | "color.green.dark.line" | "color.green.dark.border" | "color.green.dark.borderHover" | "color.green.dark.solid" | "color.green.dark.solidHover" | "color.green.dark.textSecondary" | "color.green.dark.text" | "color.red.light.bg" | "color.red.light.bgSecondary" | "color.red.light.componentBg" | "color.red.light.componentBgHover" | "color.red.light.componentBgActive" | "color.red.light.line" | "color.red.light.border" | "color.red.light.borderHover" | "color.red.light.solid" | "color.red.light.solidHover" | "color.red.light.textSecondary" | "color.red.light.text" | "color.red.dark.bg" | "color.red.dark.bgSecondary" | "color.red.dark.componentBg" | "color.red.dark.componentBgHover" | "color.red.dark.componentBgActive" | "color.red.dark.line" | "color.red.dark.border" | "color.red.dark.borderHover" | "color.red.dark.solid" | "color.red.dark.solidHover" | "color.red.dark.textSecondary" | "color.red.dark.text" | "color.yellow.light.bg" | "color.yellow.light.bgSecondary" | "color.yellow.light.componentBg" | "color.yellow.light.componentBgHover" | "color.yellow.light.componentBgActive" | "color.yellow.light.line" | "color.yellow.light.border" | "color.yellow.light.borderHover" | "color.yellow.light.solidHover" | "color.yellow.light.textSecondary" | "color.yellow.light.text" | "color.yellow.dark.bg" | "color.yellow.dark.bgSecondary" | "color.yellow.dark.componentBg" | "color.yellow.dark.componentBgHover" | "color.yellow.dark.componentBgActive" | "color.yellow.dark.line" | "color.yellow.dark.border" | "color.yellow.dark.borderHover" | "color.yellow.dark.solidHover" | "color.yellow.dark.textSecondary" | "color.yellow.dark.text" | "color.transfer.light.lime3" | "color.transfer.dark.lime3" | "elevation.shadowColor" | "elevation.color" | "elevation.sm" | "elevation.md" | "elevation.lg" | "elevation.focusColor" | "elevation.focus" | "typography.fontFamily.sans" | "typography.fontFamily.display" | "typography.fontFamily.uiMono" | "typography.fontFamily.mono" | "typography.fontSize.xs" | "typography.fontSize.sm" | "typography.fontSize.base" | "typography.fontSize.md" | "typography.fontSize.lg" | "typography.fontSize.xl" | "typography.fontSize.2xl" | "typography.fontSize.3xl" | "typography.fontSize.4xl" | "typography.fontSize.display" | "typography.lineHeight.tight" | "typography.lineHeight.snug" | "typography.lineHeight.normal" | "typography.lineHeight.loose" | "typography.fontWeight.regular" | "typography.fontWeight.medium" | "typography.fontWeight.bold" | "typography.fontWeight.black" | "typography.letterSpacing.tight" | "typography.letterSpacing.normal" | "typography.letterSpacing.wide" | "typography.letterSpacing.uppercase" | "spacing.0" | "spacing.1" | "spacing.2" | "spacing.3" | "spacing.4" | "spacing.5" | "spacing.6" | "spacing.7" | "spacing.8" | "radius.sm" | "radius.default" | "radius.md" | "radius.lg" | "radius.pill" | "border.width" | "motion.easing.out" | "motion.easing.inOut" | "motion.duration.fast" | "motion.duration.base" | "motion.duration.slow" | "z.dropdown" | "z.sticky" | "z.modal" | "z.notification" | "z.tooltip" | "breakpoint.sm" | "breakpoint.md" | "breakpoint.lg" | "surface.light.htmlBg" | "surface.light.appBg" | "surface.light.navBg" | "surface.light.navItemBg" | "surface.light.navItemBgHover" | "surface.light.navItemBgActive" | "surface.light.listItemBg" | "surface.light.listItemBgHover" | "surface.light.listItemBgActive" | "surface.light.listItemBorder" | "surface.light.segmentedControlBg" | "surface.light.segmentedControlBgActive" | "surface.light.transferListItemCompletingBg" | "surface.light.transferListItemDownloadingBg" | "surface.light.transferListItemFinishedBg" | "surface.light.transferListItemPassiveBg" | "surface.light.hiContrast" | "surface.light.loContrast" | "surface.light.transparent" | "surface.light.overlayInline" | "surface.light.overlayFull" | "surface.dark.htmlBg" | "surface.dark.appBg" | "surface.dark.navBg" | "surface.dark.navItemBg" | "surface.dark.navItemBgHover" | "surface.dark.navItemBgActive" | "surface.dark.listItemBg" | "surface.dark.listItemBgHover" | "surface.dark.listItemBgActive" | "surface.dark.listItemBorder" | "surface.dark.segmentedControlBg" | "surface.dark.segmentedControlBgActive" | "surface.dark.transferListItemCompletingBg" | "surface.dark.transferListItemDownloadingBg" | "surface.dark.transferListItemFinishedBg" | "surface.dark.transferListItemPassiveBg" | "surface.dark.hiContrast" | "surface.dark.loContrast" | "surface.dark.overlayInline" | "surface.dark.overlayFull" | "surface.dark.shadowColor" | "surface.dark.shadow" | "surface.dark.shadowSm" | "surface.dark.shadowMd" | "surface.dark.shadowLg";
|
|
4
4
|
|
|
5
5
|
export type PutioToken = {
|
|
6
6
|
readonly cssName: string;
|