@pearpages/pulp-tokens 0.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.
Files changed (45) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +60 -0
  3. package/dist/tokens.css +914 -0
  4. package/dist/tokens.json +10638 -0
  5. package/package.json +33 -0
  6. package/tokens/component/accordion.json +83 -0
  7. package/tokens/component/alert.json +93 -0
  8. package/tokens/component/badge.json +153 -0
  9. package/tokens/component/button.json +118 -0
  10. package/tokens/component/calendar.json +48 -0
  11. package/tokens/component/card.json +28 -0
  12. package/tokens/component/checkbox.json +77 -0
  13. package/tokens/component/combobox.json +113 -0
  14. package/tokens/component/date-picker.json +145 -0
  15. package/tokens/component/dialog.json +36 -0
  16. package/tokens/component/field.json +23 -0
  17. package/tokens/component/heading.json +44 -0
  18. package/tokens/component/icon-button.json +17 -0
  19. package/tokens/component/icon.json +18 -0
  20. package/tokens/component/inline.json +32 -0
  21. package/tokens/component/listbox.json +37 -0
  22. package/tokens/component/menu.json +101 -0
  23. package/tokens/component/pagination.json +22 -0
  24. package/tokens/component/picker.json +113 -0
  25. package/tokens/component/popover.json +59 -0
  26. package/tokens/component/progress.json +60 -0
  27. package/tokens/component/radio.json +73 -0
  28. package/tokens/component/select.json +106 -0
  29. package/tokens/component/skeleton.json +41 -0
  30. package/tokens/component/slider.json +39 -0
  31. package/tokens/component/spinner.json +33 -0
  32. package/tokens/component/stack.json +32 -0
  33. package/tokens/component/switch.json +77 -0
  34. package/tokens/component/table.json +57 -0
  35. package/tokens/component/tabs.json +31 -0
  36. package/tokens/component/text-field.json +90 -0
  37. package/tokens/component/text.json +31 -0
  38. package/tokens/component/textarea.json +90 -0
  39. package/tokens/component/toast.json +35 -0
  40. package/tokens/component/tooltip.json +49 -0
  41. package/tokens/component/visually-hidden.json +9 -0
  42. package/tokens/primitives/bitepals.json +285 -0
  43. package/tokens/primitives/pulp.json +216 -0
  44. package/tokens/semantic/bitepals.json +727 -0
  45. package/tokens/semantic/pulp.json +728 -0
@@ -0,0 +1,57 @@
1
+ {
2
+ "$description": "Table component tokens. Row padding comes from the spacing scale, so a brand's space.unit sets the density; the compact density steps one token down.",
3
+ "table": {
4
+ "bg": { "$type": "color", "$value": "{color.surface.raised}" },
5
+ "fg": { "$type": "color", "$value": "{color.text.default}" },
6
+ "border": { "$type": "color", "$value": "{color.border.default}" },
7
+ "radius": { "$type": "dimension", "$value": "{radius.surface}" },
8
+ "font": {
9
+ "family": { "$type": "fontFamily", "$value": "{font.family.body}" },
10
+ "size": { "$type": "dimension", "$value": "{font.size.sm}" }
11
+ },
12
+ "cell": {
13
+ "padding-inline": { "$type": "dimension", "$value": "{space.3}" },
14
+ "padding-block": {
15
+ "$type": "dimension",
16
+ "default": { "$value": "{space.3}" },
17
+ "compact": { "$value": "{space.2}" }
18
+ }
19
+ },
20
+ "header": {
21
+ "bg": { "$type": "color", "$value": "{color.surface.base}" },
22
+ "fg": { "$type": "color", "$value": "{color.text.muted}" },
23
+ "fg-active": { "$type": "color", "$value": "{color.text.default}" },
24
+ "font-size": { "$type": "dimension", "$value": "{font.size.xs}" },
25
+ "font-weight": { "$type": "fontWeight", "$value": "{font.weight.semibold}" },
26
+ "sort-indicator": { "$type": "color", "$value": "{color.action.text}" },
27
+ "sort-indicator-width": { "$type": "dimension", "$value": "{focus.ring.width}" },
28
+ "sort-indicator-size": { "$type": "dimension", "$value": "{space.2}" }
29
+ },
30
+ "row": {
31
+ "bg-hover": { "$type": "color", "$value": "{color.action.secondary}" },
32
+ "bg-selected": { "$type": "color", "$value": "{color.action.primary-quiet}" },
33
+ "fg-disabled": { "$type": "color", "$value": "{color.text.faint}" }
34
+ },
35
+ "select": {
36
+ "size": { "$type": "dimension", "$value": "{size.toggle.sm}" },
37
+ "radius": { "$type": "dimension", "$value": "{radius.control}" },
38
+ "bg": { "$type": "color", "$value": "{color.surface.raised}" },
39
+ "bg-checked": { "$type": "color", "$value": "{color.action.primary}" },
40
+ "border": { "$type": "color", "$value": "{color.border.strong}" },
41
+ "check": { "$type": "color", "$value": "{color.text.on-action}" },
42
+ "check-width": { "$type": "dimension", "$value": "{focus.ring.width}" }
43
+ },
44
+ "empty": {
45
+ "fg": { "$type": "color", "$value": "{color.text.muted}" },
46
+ "padding": { "$type": "dimension", "$value": "{space.6}" }
47
+ },
48
+ "focus": {
49
+ "ring": { "$type": "color", "$value": "{color.border.focus}" },
50
+ "ring-width": { "$type": "dimension", "$value": "{focus.ring.width}" },
51
+ "ring-offset": { "$type": "dimension", "$value": "{focus.ring.offset}" }
52
+ },
53
+ "motion": {
54
+ "duration": { "$type": "duration", "$value": "{motion.duration.fast}" }
55
+ }
56
+ }
57
+ }
@@ -0,0 +1,31 @@
1
+ {
2
+ "$description": "Tabs component tokens. Brand-independent: every value references the semantic layer.",
3
+ "tabs": {
4
+ "list-border": { "$type": "color", "$value": "{color.border.default}" },
5
+ "tab": {
6
+ "fg": { "$type": "color", "$value": "{color.text.muted}" },
7
+ "fg-hover": { "$type": "color", "$value": "{color.text.default}" },
8
+ "fg-active": { "$type": "color", "$value": "{color.text.default}" },
9
+ "bg-hover": { "$type": "color", "$value": "{color.action.primary-quiet}" },
10
+ "indicator": { "$type": "color", "$value": "{color.action.primary}" },
11
+ "padding-block": { "$type": "dimension", "$value": "{space.2}" },
12
+ "padding-inline": { "$type": "dimension", "$value": "{space.3}" },
13
+ "font-size": { "$type": "dimension", "$value": "{font.size.sm}" },
14
+ "font-weight": { "$type": "fontWeight", "$value": "{font.weight.medium}" },
15
+ "radius": { "$type": "dimension", "$value": "{radius.control}" }
16
+ },
17
+ "gap": { "$type": "dimension", "$value": "{space.1}" },
18
+ "panel": {
19
+ "padding-block": { "$type": "dimension", "$value": "{space.4}" },
20
+ "fg": { "$type": "color", "$value": "{color.text.default}" }
21
+ },
22
+ "focus": {
23
+ "ring": { "$type": "color", "$value": "{color.border.focus}" },
24
+ "ring-width": { "$type": "dimension", "$value": "{focus.ring.width}" },
25
+ "ring-offset": { "$type": "dimension", "$value": "{focus.ring.offset}" }
26
+ },
27
+ "motion": {
28
+ "duration": { "$type": "duration", "$value": "{motion.duration.fast}" }
29
+ }
30
+ }
31
+ }
@@ -0,0 +1,90 @@
1
+ {
2
+ "$description": "TextField component tokens. Brand-independent: every value references the semantic layer.",
3
+ "text-field": {
4
+ "radius": {
5
+ "$type": "dimension",
6
+ "$value": "{radius.control}"
7
+ },
8
+ "padding-inline": {
9
+ "$type": "dimension",
10
+ "$value": "{space.3}"
11
+ },
12
+ "font": {
13
+ "family": {
14
+ "$type": "fontFamily",
15
+ "$value": "{font.family.body}"
16
+ },
17
+ "size": {
18
+ "$type": "dimension",
19
+ "sm": {
20
+ "$value": "{font.size.sm}"
21
+ },
22
+ "md": {
23
+ "$value": "{font.size.md}"
24
+ },
25
+ "lg": {
26
+ "$value": "{font.size.lg}"
27
+ }
28
+ }
29
+ },
30
+ "height": {
31
+ "$type": "dimension",
32
+ "sm": {
33
+ "$value": "{size.control.sm}"
34
+ },
35
+ "md": {
36
+ "$value": "{size.control.md}"
37
+ },
38
+ "lg": {
39
+ "$value": "{size.control.lg}"
40
+ }
41
+ },
42
+ "bg": {
43
+ "$type": "color",
44
+ "$value": "{color.surface.raised}"
45
+ },
46
+ "fg": {
47
+ "$type": "color",
48
+ "$value": "{color.text.default}"
49
+ },
50
+ "placeholder": {
51
+ "$type": "color",
52
+ "$value": "{color.text.faint}"
53
+ },
54
+ "border": {
55
+ "$type": "color",
56
+ "default": {
57
+ "$value": "{color.border.default}"
58
+ },
59
+ "hover": {
60
+ "$value": "{color.border.strong}"
61
+ },
62
+ "focus": {
63
+ "$value": "{color.border.focus}"
64
+ },
65
+ "invalid": {
66
+ "$value": "{color.status.error}"
67
+ }
68
+ },
69
+ "focus": {
70
+ "ring": {
71
+ "$type": "color",
72
+ "$value": "{color.border.focus}"
73
+ },
74
+ "ring-width": {
75
+ "$type": "dimension",
76
+ "$value": "{focus.ring.width}"
77
+ },
78
+ "ring-offset": {
79
+ "$type": "dimension",
80
+ "$value": "{focus.ring.offset}"
81
+ }
82
+ },
83
+ "motion": {
84
+ "duration": {
85
+ "$type": "duration",
86
+ "$value": "{motion.duration.fast}"
87
+ }
88
+ }
89
+ }
90
+ }
@@ -0,0 +1,31 @@
1
+ {
2
+ "$description": "Text component tokens: the type scale and tones as a component. Semantic references only.",
3
+ "text": {
4
+ "font-family": {
5
+ "$type": "fontFamily",
6
+ "body": { "$value": "{font.family.body}" },
7
+ "mono": { "$value": "{font.family.mono}" }
8
+ },
9
+ "size": {
10
+ "$type": "dimension",
11
+ "xs": { "$value": "{font.size.xs}" },
12
+ "sm": { "$value": "{font.size.sm}" },
13
+ "md": { "$value": "{font.size.md}" },
14
+ "lg": { "$value": "{font.size.lg}" },
15
+ "xl": { "$value": "{font.size.xl}" }
16
+ },
17
+ "weight": {
18
+ "$type": "fontWeight",
19
+ "regular": { "$value": "{font.weight.regular}" },
20
+ "medium": { "$value": "{font.weight.medium}" },
21
+ "semibold": { "$value": "{font.weight.semibold}" }
22
+ },
23
+ "line-height": { "$type": "number", "$value": "{font.line-height.normal}" },
24
+ "tone": {
25
+ "$type": "color",
26
+ "default": { "$value": "{color.text.default}" },
27
+ "muted": { "$value": "{color.text.muted}" },
28
+ "faint": { "$value": "{color.text.faint}" }
29
+ }
30
+ }
31
+ }
@@ -0,0 +1,90 @@
1
+ {
2
+ "$description": "Textarea component tokens: the same surface as TextField, its own file so it can diverge.",
3
+ "textarea": {
4
+ "radius": {
5
+ "$type": "dimension",
6
+ "$value": "{radius.control}"
7
+ },
8
+ "padding-inline": {
9
+ "$type": "dimension",
10
+ "$value": "{space.3}"
11
+ },
12
+ "padding-block": {
13
+ "$type": "dimension",
14
+ "$value": "{space.2}"
15
+ },
16
+ "min-height": {
17
+ "$type": "dimension",
18
+ "$value": "{size.control.lg}"
19
+ },
20
+ "font": {
21
+ "family": {
22
+ "$type": "fontFamily",
23
+ "$value": "{font.family.body}"
24
+ },
25
+ "size": {
26
+ "$type": "dimension",
27
+ "sm": {
28
+ "$value": "{font.size.sm}"
29
+ },
30
+ "md": {
31
+ "$value": "{font.size.md}"
32
+ },
33
+ "lg": {
34
+ "$value": "{font.size.lg}"
35
+ }
36
+ }
37
+ },
38
+ "line-height": {
39
+ "$type": "number",
40
+ "$value": "{font.line-height.normal}"
41
+ },
42
+ "bg": {
43
+ "$type": "color",
44
+ "$value": "{color.surface.raised}"
45
+ },
46
+ "fg": {
47
+ "$type": "color",
48
+ "$value": "{color.text.default}"
49
+ },
50
+ "placeholder": {
51
+ "$type": "color",
52
+ "$value": "{color.text.faint}"
53
+ },
54
+ "border": {
55
+ "$type": "color",
56
+ "default": {
57
+ "$value": "{color.border.default}"
58
+ },
59
+ "hover": {
60
+ "$value": "{color.border.strong}"
61
+ },
62
+ "focus": {
63
+ "$value": "{color.border.focus}"
64
+ },
65
+ "invalid": {
66
+ "$value": "{color.status.error}"
67
+ }
68
+ },
69
+ "focus": {
70
+ "ring": {
71
+ "$type": "color",
72
+ "$value": "{color.border.focus}"
73
+ },
74
+ "ring-width": {
75
+ "$type": "dimension",
76
+ "$value": "{focus.ring.width}"
77
+ },
78
+ "ring-offset": {
79
+ "$type": "dimension",
80
+ "$value": "{focus.ring.offset}"
81
+ }
82
+ },
83
+ "motion": {
84
+ "duration": {
85
+ "$type": "duration",
86
+ "$value": "{motion.duration.fast}"
87
+ }
88
+ }
89
+ }
90
+ }
@@ -0,0 +1,35 @@
1
+ {
2
+ "$description": "Toast component tokens: the region and its stack; each toast is an Alert.",
3
+ "toast": {
4
+ "width": {
5
+ "$type": "dimension",
6
+ "$value": "{size.toast-width}"
7
+ },
8
+ "offset": {
9
+ "$type": "dimension",
10
+ "$value": "{space.5}"
11
+ },
12
+ "gap": {
13
+ "$type": "dimension",
14
+ "$value": "{space.3}"
15
+ },
16
+ "layer": {
17
+ "$type": "number",
18
+ "$value": "{layer.toast}"
19
+ },
20
+ "shadow": {
21
+ "$type": "shadow",
22
+ "$value": "{shadow.overlay}"
23
+ },
24
+ "radius": {
25
+ "$type": "dimension",
26
+ "$value": "{radius.surface}"
27
+ },
28
+ "motion": {
29
+ "duration": {
30
+ "$type": "duration",
31
+ "$value": "{motion.duration.base}"
32
+ }
33
+ }
34
+ }
35
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "$description": "Tooltip component tokens.",
3
+ "tooltip": {
4
+ "bg": {
5
+ "$type": "color",
6
+ "$value": "{color.surface.inverse}"
7
+ },
8
+ "fg": {
9
+ "$type": "color",
10
+ "$value": "{color.text.on-inverse}"
11
+ },
12
+ "radius": {
13
+ "$type": "dimension",
14
+ "$value": "{radius.control}"
15
+ },
16
+ "padding-block": {
17
+ "$type": "dimension",
18
+ "$value": "{space.1}"
19
+ },
20
+ "padding-inline": {
21
+ "$type": "dimension",
22
+ "$value": "{space.2}"
23
+ },
24
+ "font-size": {
25
+ "$type": "dimension",
26
+ "$value": "{font.size.xs}"
27
+ },
28
+ "max-width": {
29
+ "$type": "dimension",
30
+ "$value": "{size.menu-width}"
31
+ },
32
+ "gap": {
33
+ "$type": "dimension",
34
+ "$value": "{space.2}"
35
+ },
36
+ "shadow": {
37
+ "$type": "shadow",
38
+ "$value": "{shadow.raised}"
39
+ },
40
+ "layer": {
41
+ "$type": "number",
42
+ "$value": "{layer.tooltip}"
43
+ },
44
+ "duration": {
45
+ "$type": "duration",
46
+ "$value": "{motion.duration.fast}"
47
+ }
48
+ }
49
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "$description": "VisuallyHidden component tokens.",
3
+ "visually-hidden": {
4
+ "size": {
5
+ "$type": "dimension",
6
+ "$value": "{size.hairline}"
7
+ }
8
+ }
9
+ }
@@ -0,0 +1,285 @@
1
+ {
2
+ "$description": "bitepals primitives. Translated from the bitepals product palette so the second brand is a real one, not a recolour.",
3
+ "color": {
4
+ "$type": "color",
5
+ "orange": {
6
+ "100": {
7
+ "$value": "#ffe4d6"
8
+ },
9
+ "200": {
10
+ "$value": "#ffb08a"
11
+ },
12
+ "300": {
13
+ "$value": "#ff8b66"
14
+ },
15
+ "400": {
16
+ "$value": "#ff7a52"
17
+ },
18
+ "500": {
19
+ "$value": "#ff6b3d"
20
+ },
21
+ "600": {
22
+ "$value": "#f45a2a"
23
+ },
24
+ "700": {
25
+ "$value": "#e24e21"
26
+ },
27
+ "800": {
28
+ "$value": "#9f3a14"
29
+ },
30
+ "900": {
31
+ "$value": "#4a1d0e"
32
+ }
33
+ },
34
+ "cream": {
35
+ "50": {
36
+ "$value": "#fff6ed"
37
+ },
38
+ "100": {
39
+ "$value": "#fcf3df"
40
+ },
41
+ "200": {
42
+ "$value": "#f8eed9"
43
+ },
44
+ "300": {
45
+ "$value": "#f0e4cf"
46
+ },
47
+ "400": {
48
+ "$value": "#eddcbf"
49
+ },
50
+ "500": {
51
+ "$value": "#e0cba6"
52
+ }
53
+ },
54
+ "sand": {
55
+ "300": {
56
+ "$value": "#e2d2b6"
57
+ },
58
+ "400": {
59
+ "$value": "#cab38e"
60
+ },
61
+ "500": {
62
+ "$value": "#a89178"
63
+ }
64
+ },
65
+ "neutral": {
66
+ "0": {
67
+ "$value": "#ffffff"
68
+ },
69
+ "50": {
70
+ "$value": "#f7f4ee"
71
+ },
72
+ "100": {
73
+ "$value": "#f0eae2"
74
+ },
75
+ "200": {
76
+ "$value": "#e5dcd1"
77
+ },
78
+ "300": {
79
+ "$value": "#d1c5b6"
80
+ },
81
+ "400": {
82
+ "$value": "#9d968c"
83
+ },
84
+ "500": {
85
+ "$value": "#7c756c"
86
+ },
87
+ "600": {
88
+ "$value": "#5b6475"
89
+ },
90
+ "700": {
91
+ "$value": "#3a4152"
92
+ },
93
+ "800": {
94
+ "$value": "#273040"
95
+ },
96
+ "900": {
97
+ "$value": "#1f2430"
98
+ }
99
+ },
100
+ "ink": {
101
+ "200": {
102
+ "$value": "#475467"
103
+ },
104
+ "300": {
105
+ "$value": "#344054"
106
+ },
107
+ "400": {
108
+ "$value": "#2a3240"
109
+ },
110
+ "500": {
111
+ "$value": "#273040"
112
+ },
113
+ "600": {
114
+ "$value": "#202938"
115
+ },
116
+ "700": {
117
+ "$value": "#1d2430"
118
+ },
119
+ "800": {
120
+ "$value": "#171c24"
121
+ },
122
+ "900": {
123
+ "$value": "#11151c"
124
+ }
125
+ },
126
+ "green": {
127
+ "100": {
128
+ "$value": "#dff5ea"
129
+ },
130
+ "300": {
131
+ "$value": "#32c48d"
132
+ },
133
+ "500": {
134
+ "$value": "#22a06b"
135
+ },
136
+ "700": {
137
+ "$value": "#14633f"
138
+ },
139
+ "900": {
140
+ "$value": "#0f3324"
141
+ }
142
+ },
143
+ "gold": {
144
+ "100": {
145
+ "$value": "#fff0d2"
146
+ },
147
+ "300": {
148
+ "$value": "#f5b83d"
149
+ },
150
+ "500": {
151
+ "$value": "#d98e04"
152
+ },
153
+ "700": {
154
+ "$value": "#7a4e00"
155
+ },
156
+ "900": {
157
+ "$value": "#3d2800"
158
+ }
159
+ },
160
+ "red": {
161
+ "100": {
162
+ "$value": "#fde7e7"
163
+ },
164
+ "300": {
165
+ "$value": "#ff6b6b"
166
+ },
167
+ "500": {
168
+ "$value": "#d64545"
169
+ },
170
+ "600": {
171
+ "$value": "#c43a3a"
172
+ },
173
+ "700": {
174
+ "$value": "#a83333"
175
+ },
176
+ "900": {
177
+ "$value": "#3f1414"
178
+ }
179
+ },
180
+ "blue": {
181
+ "100": {
182
+ "$value": "#e3efff"
183
+ },
184
+ "300": {
185
+ "$value": "#5aa9ff"
186
+ },
187
+ "500": {
188
+ "$value": "#2f80ed"
189
+ },
190
+ "600": {
191
+ "$value": "#2368c9"
192
+ },
193
+ "700": {
194
+ "$value": "#1b5fb8"
195
+ },
196
+ "900": {
197
+ "$value": "#10284d"
198
+ }
199
+ }
200
+ },
201
+ "radius": {
202
+ "$type": "dimension",
203
+ "sm": {
204
+ "$value": {
205
+ "value": 10,
206
+ "unit": "px"
207
+ }
208
+ },
209
+ "lg": {
210
+ "$value": {
211
+ "value": 18,
212
+ "unit": "px"
213
+ }
214
+ },
215
+ "pill": {
216
+ "$value": {
217
+ "value": 9999,
218
+ "unit": "px"
219
+ }
220
+ }
221
+ },
222
+ "space": {
223
+ "$type": "dimension",
224
+ "unit": {
225
+ "$value": {
226
+ "value": 0.28,
227
+ "unit": "rem"
228
+ },
229
+ "$description": "Roomier than pulp: the whole spacing scale grows 12% from this one value."
230
+ }
231
+ },
232
+ "duration": {
233
+ "$type": "duration",
234
+ "fast": {
235
+ "$value": {
236
+ "value": 120,
237
+ "unit": "ms"
238
+ }
239
+ },
240
+ "base": {
241
+ "$value": {
242
+ "value": 220,
243
+ "unit": "ms"
244
+ }
245
+ }
246
+ },
247
+ "easing": {
248
+ "$type": "cubicBezier",
249
+ "standard": {
250
+ "$value": [
251
+ 0.25,
252
+ 0.1,
253
+ 0.25,
254
+ 1
255
+ ]
256
+ }
257
+ },
258
+ "typeface": {
259
+ "display": {
260
+ "$value": [
261
+ "Nunito Variable",
262
+ "Nunito",
263
+ "system-ui",
264
+ "sans-serif"
265
+ ]
266
+ },
267
+ "body": {
268
+ "$value": [
269
+ "Inter Variable",
270
+ "Inter",
271
+ "system-ui",
272
+ "sans-serif"
273
+ ]
274
+ },
275
+ "mono": {
276
+ "$value": [
277
+ "ui-monospace",
278
+ "SF Mono",
279
+ "Menlo",
280
+ "monospace"
281
+ ]
282
+ },
283
+ "$type": "fontFamily"
284
+ }
285
+ }