@putdotio/design 1.5.1 → 2.0.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 -1
- package/dist/css/tokens.css +26 -0
- package/dist/figma/putio.tokens.json +114 -0
- package/dist/tokens.d.ts +1 -1
- package/dist/tokens.dtcg.json +291 -0
- package/dist/tokens.flat.json +208 -0
- package/dist/tokens.js +208 -0
- package/package.json +4 -2
- package/system/assets/logo-retro-dark.svg +11 -1
- package/system/assets/logo-retro-light.svg +11 -1
- package/system/assets/logo.svg +7 -1
- package/system/components.css +440 -0
- package/tokens/components.tokens.json +291 -0
package/DESIGN.md
CHANGED
|
@@ -104,7 +104,15 @@ TV is the exception: every 10-foot surface — list rows, buttons, sheets, cards
|
|
|
104
104
|
|
|
105
105
|
## Components
|
|
106
106
|
|
|
107
|
-
Buttons
|
|
107
|
+
Buttons have three tiers on one axis: emphasis. **Primary** is the brand fill — `--button-primary-bg` at rest, `--button-primary-bg-hover` on hover so the CTA never feels inert, label `--button-primary-fg`. Yellow is reserved for primary commands, and an action group carries at most one. **Secondary** is a quiet fill: `--button-default-bg` (aliased as `--button-secondary-bg`) plus a border at `--border`, with hover stepping both (`--button-default-bg-hover`, `--border-hover`). Because it fills, it reads to a hard edge exactly like the primary, so the two compare safely side by side. **Ghost** is text only — no fill, no border. `--button-ghost-fg` at rest; hover paints `--button-ghost-bg-hover` behind the label and lifts it to `--button-ghost-fg-hover`. The label lift is mandatory: the faint fill is never the only hover cue. Disabled drops the colour to `--solid` at full opacity rather than fading the box. Use ghost for anything quieter than a filled secondary — a header `Log in`, toolbar text actions, `Cancel` beside a filled confirm. An icon-only ghost is the quiet icon button, on the same tokens.
|
|
108
|
+
|
|
109
|
+
Outline is not a tier. The system ships no transparent-background bordered button, and consumers must not hand-roll one. The pairing rule behind that: never place a border-only button in the same action group as a solid fill. At identical box heights the outlined shape reads smaller, because a solid resolves to a hard edge while a low-contrast hairline resolves to a soft one, and the eye compares the two extents differently. It is worst on dark surfaces, where a 15%-white hairline is barely visible at all. If a bordered treatment must sit near a fill, it must itself fill — the secondary tier — and carry its border at `--border`-step contrast, never a sub-20% hairline on transparent.
|
|
110
|
+
|
|
111
|
+
Button geometry is tokenized so every tier and variant of a given size shares an identical box; tiers change colour only, which makes cross-variant comparison safe by construction. There are four sizes and no others. The default is `36px` tall with `12px` of horizontal padding, an `--fs-sm` uppercase label and `1px` of tracking; `md` is `32px` at `0.8px` tracking, `sm` is `28px` at `0.6px`, and `xs` is `24px` with `8px` padding, an `--fs-xs` label and `0.3px` tracking. Read them from `--button-height` (`-md`, `-sm`, `-xs`), `--button-padding-x` (`-xs`), `--button-label-size` (`-xs`), `--button-tracking` (`-md`, `-sm`, `-xs`), `--button-icon-size` and `--button-gap` rather than restating the numbers. Every button token aliases the neutral scale, which carries both modes, so a dark bar on a light page is a `.dark`-scoped region and never hand-picked dark literals. The sticky site top bar is `--nav-height` (`56px`), or `--nav-height-compact` (`52px`) on narrow viewports, and its CTA is the `md` box via `--nav-cta-height`.
|
|
112
|
+
|
|
113
|
+
TV needs no carve-out here: TV buttons keep the `tv` scale box and `--radius-tv`, and TV focus restores a visible box (`--component-bg-active` plus a border step), so the ghost tier stays legible in the 10-foot focus model.
|
|
114
|
+
|
|
115
|
+
File rows are the core component: preserve raw names, keep metadata compact, and make hover/focus states obvious without inflating row height.
|
|
108
116
|
|
|
109
117
|
Form fields use the shared `--field-*` aliases: `--field-bg` for the fill, `--field-border` for the resting border, and `--field-ring` for focus. Invalid fields opt in with `aria-invalid="true"` and use red border/text only; do not add red fill. Raised panels use the shared `--panel-*` aliases instead of auth- or screen-specific panel variables.
|
|
110
118
|
|
package/dist/css/tokens.css
CHANGED
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
--button-primary-bg-hover: hsl(45, 89%, 58%);
|
|
12
12
|
--button-secondary-bg: hsl(0, 0%, 95.1%);
|
|
13
13
|
--button-secondary-fg: hsl(0, 0%, 9.0%);
|
|
14
|
+
--button-secondary-bg-hover: hsl(0, 0%, 93.0%);
|
|
14
15
|
--button-success-bg: hsl(151, 55%, 41.5%);
|
|
15
16
|
--button-success-bg-hover: hsl(151, 58%, 37%);
|
|
16
17
|
--button-danger-bg: hsl(358, 75%, 59%);
|
|
@@ -21,6 +22,9 @@
|
|
|
21
22
|
--button-default-bg: hsl(0, 0%, 95.1%);
|
|
22
23
|
--button-default-bg-hover: hsl(0, 0%, 93.0%);
|
|
23
24
|
--button-default-fg: hsl(0, 0%, 9.0%);
|
|
25
|
+
--button-ghost-fg: hsl(0, 0%, 43.5%);
|
|
26
|
+
--button-ghost-fg-hover: hsl(0, 0%, 9.0%);
|
|
27
|
+
--button-ghost-bg-hover: hsl(0, 0%, 93.0%);
|
|
24
28
|
--input-bg: hsl(0, 0%, 100%);
|
|
25
29
|
--input-border: hsl(0, 0%, 85.8%);
|
|
26
30
|
--input-border-hover: hsl(0, 0%, 78.0%);
|
|
@@ -166,6 +170,24 @@
|
|
|
166
170
|
--button-radius: 6px;
|
|
167
171
|
--button-success-fg: hsl(0, 0%, 100%);
|
|
168
172
|
--button-danger-fg: hsl(0, 0%, 100%);
|
|
173
|
+
--button-ghost-bg: hsla(0, 0%, 0%, 0);
|
|
174
|
+
--button-height: 36px;
|
|
175
|
+
--button-height-md: 32px;
|
|
176
|
+
--button-height-sm: 28px;
|
|
177
|
+
--button-height-xs: 24px;
|
|
178
|
+
--button-padding-x: 12px;
|
|
179
|
+
--button-padding-x-xs: 8px;
|
|
180
|
+
--button-label-size: 0.875rem;
|
|
181
|
+
--button-label-size-xs: 0.75rem;
|
|
182
|
+
--button-tracking: 1px;
|
|
183
|
+
--button-tracking-md: 0.8px;
|
|
184
|
+
--button-tracking-sm: 0.6px;
|
|
185
|
+
--button-tracking-xs: 0.3px;
|
|
186
|
+
--button-icon-size: 14px;
|
|
187
|
+
--button-gap: 8px;
|
|
188
|
+
--nav-height: 56px;
|
|
189
|
+
--nav-height-compact: 52px;
|
|
190
|
+
--nav-cta-height: 32px;
|
|
169
191
|
--input-radius: 6px;
|
|
170
192
|
--field-radius: 6px;
|
|
171
193
|
--panel-radius: 10px;
|
|
@@ -250,6 +272,7 @@
|
|
|
250
272
|
--button-primary-bg-hover: hsl(45, 89%, 58%);
|
|
251
273
|
--button-secondary-bg: hsl(0, 0%, 13.6%);
|
|
252
274
|
--button-secondary-fg: hsl(0, 0%, 93.0%);
|
|
275
|
+
--button-secondary-bg-hover: hsl(0, 0%, 15.8%);
|
|
253
276
|
--button-success-bg: hsl(151, 55%, 41.5%);
|
|
254
277
|
--button-success-bg-hover: hsl(151, 68%, 35%);
|
|
255
278
|
--button-danger-bg: hsl(358, 75%, 59%);
|
|
@@ -260,6 +283,9 @@
|
|
|
260
283
|
--button-default-bg: hsl(0, 0%, 13.6%);
|
|
261
284
|
--button-default-bg-hover: hsl(0, 0%, 15.8%);
|
|
262
285
|
--button-default-fg: hsl(0, 0%, 93.0%);
|
|
286
|
+
--button-ghost-fg: hsl(0, 0%, 62.8%);
|
|
287
|
+
--button-ghost-fg-hover: hsl(0, 0%, 93.0%);
|
|
288
|
+
--button-ghost-bg-hover: hsl(0, 0%, 15.8%);
|
|
263
289
|
--input-bg: hsl(0, 0%, 8.5%);
|
|
264
290
|
--input-border: hsl(0, 0%, 24.3%);
|
|
265
291
|
--input-border-hover: hsl(0, 0%, 31.2%);
|
|
@@ -30,6 +30,11 @@
|
|
|
30
30
|
"foreground": {
|
|
31
31
|
"$type": "color",
|
|
32
32
|
"$value": "hsl(0, 0%, 9.0%)"
|
|
33
|
+
},
|
|
34
|
+
"backgroundHover": {
|
|
35
|
+
"$type": "color",
|
|
36
|
+
"$value": "hsl(0, 0%, 93.0%)",
|
|
37
|
+
"$description": "Secondary quiet-fill hover in light mode."
|
|
33
38
|
}
|
|
34
39
|
},
|
|
35
40
|
"success": {
|
|
@@ -99,6 +104,115 @@
|
|
|
99
104
|
"$value": "hsl(0, 0%, 9.0%)",
|
|
100
105
|
"$description": "Default button label in light mode."
|
|
101
106
|
}
|
|
107
|
+
},
|
|
108
|
+
"ghost": {
|
|
109
|
+
"background": {
|
|
110
|
+
"$type": "color",
|
|
111
|
+
"$value": "hsla(0, 0%, 0%, 0)",
|
|
112
|
+
"$description": "Ghost tier rests with no fill and no border."
|
|
113
|
+
},
|
|
114
|
+
"foreground": {
|
|
115
|
+
"$type": "color",
|
|
116
|
+
"$value": "hsl(0, 0%, 43.5%)",
|
|
117
|
+
"$description": "Ghost label at rest in light mode."
|
|
118
|
+
},
|
|
119
|
+
"foregroundHover": {
|
|
120
|
+
"$type": "color",
|
|
121
|
+
"$value": "hsl(0, 0%, 9.0%)",
|
|
122
|
+
"$description": "Ghost label on hover in light mode. The lift is mandatory."
|
|
123
|
+
},
|
|
124
|
+
"backgroundHover": {
|
|
125
|
+
"$type": "color",
|
|
126
|
+
"$value": "hsl(0, 0%, 93.0%)",
|
|
127
|
+
"$description": "Shared quiet-fill hover step in light mode."
|
|
128
|
+
}
|
|
129
|
+
},
|
|
130
|
+
"height": {
|
|
131
|
+
"$type": "dimension",
|
|
132
|
+
"$value": "36px",
|
|
133
|
+
"$description": "Default (lg) button box."
|
|
134
|
+
},
|
|
135
|
+
"heightMd": {
|
|
136
|
+
"$type": "dimension",
|
|
137
|
+
"$value": "32px",
|
|
138
|
+
"$description": "Medium button box. The site top-bar CTA size."
|
|
139
|
+
},
|
|
140
|
+
"heightSm": {
|
|
141
|
+
"$type": "dimension",
|
|
142
|
+
"$value": "28px",
|
|
143
|
+
"$description": "Small button box."
|
|
144
|
+
},
|
|
145
|
+
"heightXs": {
|
|
146
|
+
"$type": "dimension",
|
|
147
|
+
"$value": "24px",
|
|
148
|
+
"$description": "Extra-small button box."
|
|
149
|
+
},
|
|
150
|
+
"paddingX": {
|
|
151
|
+
"$type": "dimension",
|
|
152
|
+
"$value": "12px",
|
|
153
|
+
"$description": "Horizontal padding for lg, md and sm."
|
|
154
|
+
},
|
|
155
|
+
"paddingXXs": {
|
|
156
|
+
"$type": "dimension",
|
|
157
|
+
"$value": "8px",
|
|
158
|
+
"$description": "Horizontal padding at xs."
|
|
159
|
+
},
|
|
160
|
+
"labelSize": {
|
|
161
|
+
"$type": "dimension",
|
|
162
|
+
"$value": "0.875rem",
|
|
163
|
+
"$description": "Uppercase label size."
|
|
164
|
+
},
|
|
165
|
+
"labelSizeXs": {
|
|
166
|
+
"$type": "dimension",
|
|
167
|
+
"$value": "0.75rem",
|
|
168
|
+
"$description": "Uppercase label size at xs."
|
|
169
|
+
},
|
|
170
|
+
"tracking": {
|
|
171
|
+
"$type": "dimension",
|
|
172
|
+
"$value": "1px",
|
|
173
|
+
"$description": "Letter-spacing at lg."
|
|
174
|
+
},
|
|
175
|
+
"trackingMd": {
|
|
176
|
+
"$type": "dimension",
|
|
177
|
+
"$value": "0.8px",
|
|
178
|
+
"$description": "Letter-spacing at md."
|
|
179
|
+
},
|
|
180
|
+
"trackingSm": {
|
|
181
|
+
"$type": "dimension",
|
|
182
|
+
"$value": "0.6px",
|
|
183
|
+
"$description": "Letter-spacing at sm."
|
|
184
|
+
},
|
|
185
|
+
"trackingXs": {
|
|
186
|
+
"$type": "dimension",
|
|
187
|
+
"$value": "0.3px",
|
|
188
|
+
"$description": "Letter-spacing at xs."
|
|
189
|
+
},
|
|
190
|
+
"iconSize": {
|
|
191
|
+
"$type": "dimension",
|
|
192
|
+
"$value": "14px",
|
|
193
|
+
"$description": "Glyph size inside a button."
|
|
194
|
+
},
|
|
195
|
+
"gap": {
|
|
196
|
+
"$type": "dimension",
|
|
197
|
+
"$value": "8px",
|
|
198
|
+
"$description": "Gap between glyph and label."
|
|
199
|
+
}
|
|
200
|
+
},
|
|
201
|
+
"nav": {
|
|
202
|
+
"height": {
|
|
203
|
+
"$type": "dimension",
|
|
204
|
+
"$value": "56px",
|
|
205
|
+
"$description": "Sticky top bar height."
|
|
206
|
+
},
|
|
207
|
+
"heightCompact": {
|
|
208
|
+
"$type": "dimension",
|
|
209
|
+
"$value": "52px",
|
|
210
|
+
"$description": "Sticky top bar height on narrow viewports."
|
|
211
|
+
},
|
|
212
|
+
"ctaHeight": {
|
|
213
|
+
"$type": "dimension",
|
|
214
|
+
"$value": "32px",
|
|
215
|
+
"$description": "The top-bar CTA box. Always the md button."
|
|
102
216
|
}
|
|
103
217
|
},
|
|
104
218
|
"input": {
|
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.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.input.borderHover" | "component.input.borderHoverDark" | "component.input.borderFocus" | "component.input.borderFocusDark" | "component.input.ring" | "component.input.ringDark" | "component.input.text" | "component.input.textDark" | "component.input.placeholder" | "component.input.placeholderDark" | "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.radius" | "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.activeBackground" | "component.fileRow.activeBackgroundDark" | "component.fileRow.border" | "component.fileRow.borderDark" | "component.fileRow.icon" | "component.notification.infoBackground" | "component.notification.infoBackgroundDark" | "component.notification.dangerBackground" | "component.notification.dangerBackgroundDark" | "component.notification.background" | "component.notification.backgroundDark" | "component.notification.border" | "component.notification.borderDark" | "component.notification.foreground" | "component.notification.foregroundDark" | "component.notification.icon" | "component.notification.iconDark" | "component.notification.successBackground" | "component.notification.successBackgroundDark" | "component.notification.successBorder" | "component.notification.successBorderDark" | "component.notification.successForeground" | "component.notification.successForegroundDark" | "component.notification.dangerBorder" | "component.notification.dangerBorderDark" | "component.notification.dangerForeground" | "component.notification.dangerForegroundDark" | "component.menu.background" | "component.menu.backgroundDark" | "component.menu.border" | "component.menu.borderDark" | "component.menu.radius" | "component.menu.shadow" | "component.menu.shadowDark" | "component.menu.itemBackgroundHover" | "component.menu.itemBackgroundHoverDark" | "component.menu.itemText" | "component.menu.itemTextDark" | "component.menu.itemIcon" | "component.menu.itemIconDark" | "component.menu.itemShortcut" | "component.menu.itemShortcutDark" | "component.menu.itemDangerText" | "component.menu.itemDangerTextDark" | "component.menu.itemDangerBackgroundHover" | "component.menu.itemDangerBackgroundHoverDark" | "component.menu.itemHeight" | "component.menu.separator" | "component.menu.separatorDark" | "component.menu.label" | "component.menu.labelDark" | "component.palette.background" | "component.palette.backgroundDark" | "component.palette.border" | "component.palette.borderDark" | "component.palette.shadow" | "component.palette.shadowDark" | "component.palette.scrim" | "component.palette.scrimDark" | "component.palette.width" | "component.palette.inputHeight" | "component.palette.itemHeight" | "component.palette.itemBackgroundActive" | "component.palette.itemBackgroundActiveDark" | "component.palette.groupLabel" | "component.palette.groupLabelDark" | "component.palette.itemMeta" | "component.palette.itemMetaDark" | "component.sheet.background" | "component.sheet.backgroundDark" | "component.sheet.border" | "component.sheet.borderDark" | "component.sheet.shadow" | "component.sheet.shadowDark" | "component.sheet.scrim" | "component.sheet.scrimDark" | "component.sheet.width" | "context.tv.text.primary" | "context.tv.text.secondary" | "context.tv.text.tertiary" | "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" | "tv.text.heading" | "tv.text.label" | "tv.text.body" | "tv.text.caption" | "tv.text.smol" | "tv.fontWeight.regular" | "tv.fontWeight.medium" | "tv.space.xxs" | "tv.space.xs" | "tv.space.sm" | "tv.space.md" | "tv.space.lg" | "tv.space.xl" | "tv.space.xxl" | "tv.overscan.x" | "tv.overscan.y" | "tv.radius" | "tv.z.modal" | "tv.z.toast" | "tv.z.overlay" | "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.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" | "radius.tv" | "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";
|
|
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.secondary.backgroundHover" | "component.button.secondary.backgroundHoverDark" | "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.button.ghost.background" | "component.button.ghost.foreground" | "component.button.ghost.foregroundDark" | "component.button.ghost.foregroundHover" | "component.button.ghost.foregroundHoverDark" | "component.button.ghost.backgroundHover" | "component.button.ghost.backgroundHoverDark" | "component.button.height" | "component.button.heightMd" | "component.button.heightSm" | "component.button.heightXs" | "component.button.paddingX" | "component.button.paddingXXs" | "component.button.labelSize" | "component.button.labelSizeXs" | "component.button.tracking" | "component.button.trackingMd" | "component.button.trackingSm" | "component.button.trackingXs" | "component.button.iconSize" | "component.button.gap" | "component.nav.height" | "component.nav.heightCompact" | "component.nav.ctaHeight" | "component.input.background" | "component.input.backgroundDark" | "component.input.border" | "component.input.borderDark" | "component.input.radius" | "component.input.borderHover" | "component.input.borderHoverDark" | "component.input.borderFocus" | "component.input.borderFocusDark" | "component.input.ring" | "component.input.ringDark" | "component.input.text" | "component.input.textDark" | "component.input.placeholder" | "component.input.placeholderDark" | "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.radius" | "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.activeBackground" | "component.fileRow.activeBackgroundDark" | "component.fileRow.border" | "component.fileRow.borderDark" | "component.fileRow.icon" | "component.notification.infoBackground" | "component.notification.infoBackgroundDark" | "component.notification.dangerBackground" | "component.notification.dangerBackgroundDark" | "component.notification.background" | "component.notification.backgroundDark" | "component.notification.border" | "component.notification.borderDark" | "component.notification.foreground" | "component.notification.foregroundDark" | "component.notification.icon" | "component.notification.iconDark" | "component.notification.successBackground" | "component.notification.successBackgroundDark" | "component.notification.successBorder" | "component.notification.successBorderDark" | "component.notification.successForeground" | "component.notification.successForegroundDark" | "component.notification.dangerBorder" | "component.notification.dangerBorderDark" | "component.notification.dangerForeground" | "component.notification.dangerForegroundDark" | "component.menu.background" | "component.menu.backgroundDark" | "component.menu.border" | "component.menu.borderDark" | "component.menu.radius" | "component.menu.shadow" | "component.menu.shadowDark" | "component.menu.itemBackgroundHover" | "component.menu.itemBackgroundHoverDark" | "component.menu.itemText" | "component.menu.itemTextDark" | "component.menu.itemIcon" | "component.menu.itemIconDark" | "component.menu.itemShortcut" | "component.menu.itemShortcutDark" | "component.menu.itemDangerText" | "component.menu.itemDangerTextDark" | "component.menu.itemDangerBackgroundHover" | "component.menu.itemDangerBackgroundHoverDark" | "component.menu.itemHeight" | "component.menu.separator" | "component.menu.separatorDark" | "component.menu.label" | "component.menu.labelDark" | "component.palette.background" | "component.palette.backgroundDark" | "component.palette.border" | "component.palette.borderDark" | "component.palette.shadow" | "component.palette.shadowDark" | "component.palette.scrim" | "component.palette.scrimDark" | "component.palette.width" | "component.palette.inputHeight" | "component.palette.itemHeight" | "component.palette.itemBackgroundActive" | "component.palette.itemBackgroundActiveDark" | "component.palette.groupLabel" | "component.palette.groupLabelDark" | "component.palette.itemMeta" | "component.palette.itemMetaDark" | "component.sheet.background" | "component.sheet.backgroundDark" | "component.sheet.border" | "component.sheet.borderDark" | "component.sheet.shadow" | "component.sheet.shadowDark" | "component.sheet.scrim" | "component.sheet.scrimDark" | "component.sheet.width" | "context.tv.text.primary" | "context.tv.text.secondary" | "context.tv.text.tertiary" | "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" | "tv.text.heading" | "tv.text.label" | "tv.text.body" | "tv.text.caption" | "tv.text.smol" | "tv.fontWeight.regular" | "tv.fontWeight.medium" | "tv.space.xxs" | "tv.space.xs" | "tv.space.sm" | "tv.space.md" | "tv.space.lg" | "tv.space.xl" | "tv.space.xxl" | "tv.overscan.x" | "tv.overscan.y" | "tv.radius" | "tv.z.modal" | "tv.z.toast" | "tv.z.overlay" | "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.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" | "radius.tv" | "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;
|
package/dist/tokens.dtcg.json
CHANGED
|
@@ -98,6 +98,28 @@
|
|
|
98
98
|
"mode": "dark"
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
|
+
},
|
|
102
|
+
"backgroundHover": {
|
|
103
|
+
"$type": "color",
|
|
104
|
+
"$value": "{color.neutral.light.componentBgHover}",
|
|
105
|
+
"$description": "Secondary quiet-fill hover in light mode.",
|
|
106
|
+
"$extensions": {
|
|
107
|
+
"putio": {
|
|
108
|
+
"cssName": "button-secondary-bg-hover",
|
|
109
|
+
"mode": "light"
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
},
|
|
113
|
+
"backgroundHoverDark": {
|
|
114
|
+
"$type": "color",
|
|
115
|
+
"$value": "{color.neutral.dark.componentBgHover}",
|
|
116
|
+
"$description": "Secondary quiet-fill hover in dark mode.",
|
|
117
|
+
"$extensions": {
|
|
118
|
+
"putio": {
|
|
119
|
+
"cssName": "button-secondary-bg-hover",
|
|
120
|
+
"mode": "dark"
|
|
121
|
+
}
|
|
122
|
+
}
|
|
101
123
|
}
|
|
102
124
|
},
|
|
103
125
|
"success": {
|
|
@@ -349,6 +371,275 @@
|
|
|
349
371
|
}
|
|
350
372
|
}
|
|
351
373
|
}
|
|
374
|
+
},
|
|
375
|
+
"ghost": {
|
|
376
|
+
"background": {
|
|
377
|
+
"$type": "color",
|
|
378
|
+
"$value": "hsla(0, 0%, 0%, 0)",
|
|
379
|
+
"$description": "Ghost tier rests with no fill and no border.",
|
|
380
|
+
"$extensions": {
|
|
381
|
+
"putio": {
|
|
382
|
+
"cssName": "button-ghost-bg",
|
|
383
|
+
"mode": "global"
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
},
|
|
387
|
+
"foreground": {
|
|
388
|
+
"$type": "color",
|
|
389
|
+
"$value": "{color.neutral.light.textSecondary}",
|
|
390
|
+
"$description": "Ghost label at rest in light mode.",
|
|
391
|
+
"$extensions": {
|
|
392
|
+
"putio": {
|
|
393
|
+
"cssName": "button-ghost-fg",
|
|
394
|
+
"mode": "light"
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
},
|
|
398
|
+
"foregroundDark": {
|
|
399
|
+
"$type": "color",
|
|
400
|
+
"$value": "{color.neutral.dark.textSecondary}",
|
|
401
|
+
"$description": "Ghost label at rest in dark mode.",
|
|
402
|
+
"$extensions": {
|
|
403
|
+
"putio": {
|
|
404
|
+
"cssName": "button-ghost-fg",
|
|
405
|
+
"mode": "dark"
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
},
|
|
409
|
+
"foregroundHover": {
|
|
410
|
+
"$type": "color",
|
|
411
|
+
"$value": "{color.neutral.light.text}",
|
|
412
|
+
"$description": "Ghost label on hover in light mode. The lift is mandatory.",
|
|
413
|
+
"$extensions": {
|
|
414
|
+
"putio": {
|
|
415
|
+
"cssName": "button-ghost-fg-hover",
|
|
416
|
+
"mode": "light"
|
|
417
|
+
}
|
|
418
|
+
}
|
|
419
|
+
},
|
|
420
|
+
"foregroundHoverDark": {
|
|
421
|
+
"$type": "color",
|
|
422
|
+
"$value": "{color.neutral.dark.text}",
|
|
423
|
+
"$description": "Ghost label on hover in dark mode. The lift is mandatory.",
|
|
424
|
+
"$extensions": {
|
|
425
|
+
"putio": {
|
|
426
|
+
"cssName": "button-ghost-fg-hover",
|
|
427
|
+
"mode": "dark"
|
|
428
|
+
}
|
|
429
|
+
}
|
|
430
|
+
},
|
|
431
|
+
"backgroundHover": {
|
|
432
|
+
"$type": "color",
|
|
433
|
+
"$value": "{color.neutral.light.componentBgHover}",
|
|
434
|
+
"$description": "Shared quiet-fill hover step in light mode.",
|
|
435
|
+
"$extensions": {
|
|
436
|
+
"putio": {
|
|
437
|
+
"cssName": "button-ghost-bg-hover",
|
|
438
|
+
"mode": "light"
|
|
439
|
+
}
|
|
440
|
+
}
|
|
441
|
+
},
|
|
442
|
+
"backgroundHoverDark": {
|
|
443
|
+
"$type": "color",
|
|
444
|
+
"$value": "{color.neutral.dark.componentBgHover}",
|
|
445
|
+
"$description": "Shared quiet-fill hover step in dark mode.",
|
|
446
|
+
"$extensions": {
|
|
447
|
+
"putio": {
|
|
448
|
+
"cssName": "button-ghost-bg-hover",
|
|
449
|
+
"mode": "dark"
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
},
|
|
454
|
+
"height": {
|
|
455
|
+
"$type": "dimension",
|
|
456
|
+
"$value": "36px",
|
|
457
|
+
"$description": "Default (lg) button box.",
|
|
458
|
+
"$extensions": {
|
|
459
|
+
"putio": {
|
|
460
|
+
"cssName": "button-height",
|
|
461
|
+
"mode": "global"
|
|
462
|
+
}
|
|
463
|
+
}
|
|
464
|
+
},
|
|
465
|
+
"heightMd": {
|
|
466
|
+
"$type": "dimension",
|
|
467
|
+
"$value": "32px",
|
|
468
|
+
"$description": "Medium button box. The site top-bar CTA size.",
|
|
469
|
+
"$extensions": {
|
|
470
|
+
"putio": {
|
|
471
|
+
"cssName": "button-height-md",
|
|
472
|
+
"mode": "global"
|
|
473
|
+
}
|
|
474
|
+
}
|
|
475
|
+
},
|
|
476
|
+
"heightSm": {
|
|
477
|
+
"$type": "dimension",
|
|
478
|
+
"$value": "28px",
|
|
479
|
+
"$description": "Small button box.",
|
|
480
|
+
"$extensions": {
|
|
481
|
+
"putio": {
|
|
482
|
+
"cssName": "button-height-sm",
|
|
483
|
+
"mode": "global"
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
},
|
|
487
|
+
"heightXs": {
|
|
488
|
+
"$type": "dimension",
|
|
489
|
+
"$value": "24px",
|
|
490
|
+
"$description": "Extra-small button box.",
|
|
491
|
+
"$extensions": {
|
|
492
|
+
"putio": {
|
|
493
|
+
"cssName": "button-height-xs",
|
|
494
|
+
"mode": "global"
|
|
495
|
+
}
|
|
496
|
+
}
|
|
497
|
+
},
|
|
498
|
+
"paddingX": {
|
|
499
|
+
"$type": "dimension",
|
|
500
|
+
"$value": "12px",
|
|
501
|
+
"$description": "Horizontal padding for lg, md and sm.",
|
|
502
|
+
"$extensions": {
|
|
503
|
+
"putio": {
|
|
504
|
+
"cssName": "button-padding-x",
|
|
505
|
+
"mode": "global"
|
|
506
|
+
}
|
|
507
|
+
}
|
|
508
|
+
},
|
|
509
|
+
"paddingXXs": {
|
|
510
|
+
"$type": "dimension",
|
|
511
|
+
"$value": "8px",
|
|
512
|
+
"$description": "Horizontal padding at xs.",
|
|
513
|
+
"$extensions": {
|
|
514
|
+
"putio": {
|
|
515
|
+
"cssName": "button-padding-x-xs",
|
|
516
|
+
"mode": "global"
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
},
|
|
520
|
+
"labelSize": {
|
|
521
|
+
"$type": "dimension",
|
|
522
|
+
"$value": "{typography.fontSize.sm}",
|
|
523
|
+
"$description": "Uppercase label size.",
|
|
524
|
+
"$extensions": {
|
|
525
|
+
"putio": {
|
|
526
|
+
"cssName": "button-label-size",
|
|
527
|
+
"mode": "global"
|
|
528
|
+
}
|
|
529
|
+
}
|
|
530
|
+
},
|
|
531
|
+
"labelSizeXs": {
|
|
532
|
+
"$type": "dimension",
|
|
533
|
+
"$value": "{typography.fontSize.xs}",
|
|
534
|
+
"$description": "Uppercase label size at xs.",
|
|
535
|
+
"$extensions": {
|
|
536
|
+
"putio": {
|
|
537
|
+
"cssName": "button-label-size-xs",
|
|
538
|
+
"mode": "global"
|
|
539
|
+
}
|
|
540
|
+
}
|
|
541
|
+
},
|
|
542
|
+
"tracking": {
|
|
543
|
+
"$type": "dimension",
|
|
544
|
+
"$value": "1px",
|
|
545
|
+
"$description": "Letter-spacing at lg.",
|
|
546
|
+
"$extensions": {
|
|
547
|
+
"putio": {
|
|
548
|
+
"cssName": "button-tracking",
|
|
549
|
+
"mode": "global"
|
|
550
|
+
}
|
|
551
|
+
}
|
|
552
|
+
},
|
|
553
|
+
"trackingMd": {
|
|
554
|
+
"$type": "dimension",
|
|
555
|
+
"$value": "0.8px",
|
|
556
|
+
"$description": "Letter-spacing at md.",
|
|
557
|
+
"$extensions": {
|
|
558
|
+
"putio": {
|
|
559
|
+
"cssName": "button-tracking-md",
|
|
560
|
+
"mode": "global"
|
|
561
|
+
}
|
|
562
|
+
}
|
|
563
|
+
},
|
|
564
|
+
"trackingSm": {
|
|
565
|
+
"$type": "dimension",
|
|
566
|
+
"$value": "0.6px",
|
|
567
|
+
"$description": "Letter-spacing at sm.",
|
|
568
|
+
"$extensions": {
|
|
569
|
+
"putio": {
|
|
570
|
+
"cssName": "button-tracking-sm",
|
|
571
|
+
"mode": "global"
|
|
572
|
+
}
|
|
573
|
+
}
|
|
574
|
+
},
|
|
575
|
+
"trackingXs": {
|
|
576
|
+
"$type": "dimension",
|
|
577
|
+
"$value": "0.3px",
|
|
578
|
+
"$description": "Letter-spacing at xs.",
|
|
579
|
+
"$extensions": {
|
|
580
|
+
"putio": {
|
|
581
|
+
"cssName": "button-tracking-xs",
|
|
582
|
+
"mode": "global"
|
|
583
|
+
}
|
|
584
|
+
}
|
|
585
|
+
},
|
|
586
|
+
"iconSize": {
|
|
587
|
+
"$type": "dimension",
|
|
588
|
+
"$value": "14px",
|
|
589
|
+
"$description": "Glyph size inside a button.",
|
|
590
|
+
"$extensions": {
|
|
591
|
+
"putio": {
|
|
592
|
+
"cssName": "button-icon-size",
|
|
593
|
+
"mode": "global"
|
|
594
|
+
}
|
|
595
|
+
}
|
|
596
|
+
},
|
|
597
|
+
"gap": {
|
|
598
|
+
"$type": "dimension",
|
|
599
|
+
"$value": "8px",
|
|
600
|
+
"$description": "Gap between glyph and label.",
|
|
601
|
+
"$extensions": {
|
|
602
|
+
"putio": {
|
|
603
|
+
"cssName": "button-gap",
|
|
604
|
+
"mode": "global"
|
|
605
|
+
}
|
|
606
|
+
}
|
|
607
|
+
}
|
|
608
|
+
},
|
|
609
|
+
"nav": {
|
|
610
|
+
"$description": "Sticky site/marketing top bar. Colours live in semantic surface.*.nav*.",
|
|
611
|
+
"height": {
|
|
612
|
+
"$type": "dimension",
|
|
613
|
+
"$value": "56px",
|
|
614
|
+
"$description": "Sticky top bar height.",
|
|
615
|
+
"$extensions": {
|
|
616
|
+
"putio": {
|
|
617
|
+
"cssName": "nav-height",
|
|
618
|
+
"mode": "global"
|
|
619
|
+
}
|
|
620
|
+
}
|
|
621
|
+
},
|
|
622
|
+
"heightCompact": {
|
|
623
|
+
"$type": "dimension",
|
|
624
|
+
"$value": "52px",
|
|
625
|
+
"$description": "Sticky top bar height on narrow viewports.",
|
|
626
|
+
"$extensions": {
|
|
627
|
+
"putio": {
|
|
628
|
+
"cssName": "nav-height-compact",
|
|
629
|
+
"mode": "global"
|
|
630
|
+
}
|
|
631
|
+
}
|
|
632
|
+
},
|
|
633
|
+
"ctaHeight": {
|
|
634
|
+
"$type": "dimension",
|
|
635
|
+
"$value": "{component.button.heightMd}",
|
|
636
|
+
"$description": "The top-bar CTA box. Always the md button.",
|
|
637
|
+
"$extensions": {
|
|
638
|
+
"putio": {
|
|
639
|
+
"cssName": "nav-cta-height",
|
|
640
|
+
"mode": "global"
|
|
641
|
+
}
|
|
642
|
+
}
|
|
352
643
|
}
|
|
353
644
|
},
|
|
354
645
|
"input": {
|