@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,728 @@
1
+ {
2
+ "$description": "pulp semantic layer. Names describe a role, values point at primitives. Colours carry a dark counterpart in $extensions; the build emits light-dark().",
3
+ "color": {
4
+ "$type": "color",
5
+ "surface": {
6
+ "base": {
7
+ "$value": "{color.neutral.50}",
8
+ "$extensions": {
9
+ "com.pearpages.pulp": {
10
+ "dark": "{color.neutral.975}"
11
+ }
12
+ }
13
+ },
14
+ "raised": {
15
+ "$value": "{color.neutral.0}",
16
+ "$extensions": {
17
+ "com.pearpages.pulp": {
18
+ "dark": "{color.neutral.900}"
19
+ }
20
+ }
21
+ },
22
+ "sunken": {
23
+ "$value": "{color.neutral.200}",
24
+ "$extensions": {
25
+ "com.pearpages.pulp": {
26
+ "dark": "{color.neutral.1000}"
27
+ }
28
+ }
29
+ },
30
+ "inverse": {
31
+ "$value": "{color.neutral.950}",
32
+ "$extensions": {
33
+ "com.pearpages.pulp": {
34
+ "dark": "{color.neutral.100}"
35
+ }
36
+ },
37
+ "$description": "The opposite of the page: tooltips, and anything that must stand out from every surface."
38
+ }
39
+ },
40
+ "text": {
41
+ "default": {
42
+ "$value": "{color.neutral.950}",
43
+ "$extensions": {
44
+ "com.pearpages.pulp": {
45
+ "dark": "{color.neutral.100}"
46
+ }
47
+ }
48
+ },
49
+ "muted": {
50
+ "$value": "{color.neutral.700}",
51
+ "$extensions": {
52
+ "com.pearpages.pulp": {
53
+ "dark": "{color.neutral.400}"
54
+ }
55
+ }
56
+ },
57
+ "faint": {
58
+ "$value": "{color.neutral.600}",
59
+ "$extensions": {
60
+ "com.pearpages.pulp": {
61
+ "dark": "{color.neutral.450}"
62
+ }
63
+ },
64
+ "$description": "Lowest-emphasis text. Promised AA on base and raised surfaces only, not on sunken."
65
+ },
66
+ "on-action": {
67
+ "$value": "{color.neutral.100}",
68
+ "$extensions": {
69
+ "com.pearpages.pulp": {
70
+ "dark": "{color.neutral.950}"
71
+ }
72
+ },
73
+ "$description": "Text on an action fill. Dark scheme fills are light, so the text flips to ink."
74
+ },
75
+ "on-inverse": {
76
+ "$value": "{color.neutral.50}",
77
+ "$extensions": {
78
+ "com.pearpages.pulp": {
79
+ "dark": "{color.neutral.950}"
80
+ }
81
+ }
82
+ }
83
+ },
84
+ "action": {
85
+ "primary": {
86
+ "$value": "{color.ultramarine.500}",
87
+ "$extensions": {
88
+ "com.pearpages.pulp": {
89
+ "dark": "{color.ultramarine.300}"
90
+ }
91
+ }
92
+ },
93
+ "primary-hover": {
94
+ "$value": "{color.ultramarine.700}",
95
+ "$extensions": {
96
+ "com.pearpages.pulp": {
97
+ "dark": "{color.ultramarine.200}"
98
+ }
99
+ }
100
+ },
101
+ "primary-active": {
102
+ "$value": "{color.ultramarine.800}",
103
+ "$extensions": {
104
+ "com.pearpages.pulp": {
105
+ "dark": "{color.ultramarine.400}"
106
+ }
107
+ }
108
+ },
109
+ "primary-quiet": {
110
+ "$value": "{color.ultramarine.100}",
111
+ "$extensions": {
112
+ "com.pearpages.pulp": {
113
+ "dark": "{color.ultramarine.900}"
114
+ }
115
+ }
116
+ },
117
+ "secondary": {
118
+ "$value": "{color.neutral.100}",
119
+ "$extensions": {
120
+ "com.pearpages.pulp": {
121
+ "dark": "{color.neutral.850}"
122
+ }
123
+ }
124
+ },
125
+ "secondary-hover": {
126
+ "$value": "{color.neutral.200}",
127
+ "$extensions": {
128
+ "com.pearpages.pulp": {
129
+ "dark": "{color.neutral.800}"
130
+ }
131
+ }
132
+ },
133
+ "text": {
134
+ "$value": "{color.ultramarine.500}",
135
+ "$extensions": {
136
+ "com.pearpages.pulp": {
137
+ "dark": "{color.ultramarine.300}"
138
+ }
139
+ },
140
+ "$description": "Accent for text and icons sitting on a surface (links, ghost buttons). Meets AA on every surface; action.primary is a fill and need not."
141
+ }
142
+ },
143
+ "border": {
144
+ "default": {
145
+ "$value": "{color.neutral.300}",
146
+ "$extensions": {
147
+ "com.pearpages.pulp": {
148
+ "dark": "{color.neutral.850}"
149
+ }
150
+ }
151
+ },
152
+ "strong": {
153
+ "$value": "{color.neutral.400}",
154
+ "$extensions": {
155
+ "com.pearpages.pulp": {
156
+ "dark": "{color.neutral.800}"
157
+ }
158
+ }
159
+ },
160
+ "focus": {
161
+ "$value": "{color.ultramarine.500}",
162
+ "$extensions": {
163
+ "com.pearpages.pulp": {
164
+ "dark": "{color.ultramarine.300}"
165
+ }
166
+ }
167
+ }
168
+ },
169
+ "status": {
170
+ "success": {
171
+ "$value": "{color.green.500}",
172
+ "$extensions": {
173
+ "com.pearpages.pulp": {
174
+ "dark": "{color.green.300}"
175
+ }
176
+ }
177
+ },
178
+ "warning": {
179
+ "$value": "{color.saffron.500}",
180
+ "$extensions": {
181
+ "com.pearpages.pulp": {
182
+ "dark": "{color.saffron.500}"
183
+ }
184
+ }
185
+ },
186
+ "error": {
187
+ "$value": "{color.red.500}",
188
+ "$extensions": {
189
+ "com.pearpages.pulp": {
190
+ "dark": "{color.red.300}"
191
+ }
192
+ }
193
+ },
194
+ "info": {
195
+ "$value": "{color.ultramarine.500}",
196
+ "$extensions": {
197
+ "com.pearpages.pulp": {
198
+ "dark": "{color.ultramarine.300}"
199
+ }
200
+ }
201
+ },
202
+ "error-text": {
203
+ "$value": "{color.red.700}",
204
+ "$extensions": {
205
+ "com.pearpages.pulp": {
206
+ "dark": "{color.red.300}"
207
+ }
208
+ },
209
+ "$description": "Error colour for text (messages, required markers). status.error is a fill/border colour and is below AA as text on light surfaces."
210
+ },
211
+ "success-text": {
212
+ "$value": "{color.green.700}",
213
+ "$extensions": {
214
+ "com.pearpages.pulp": {
215
+ "dark": "{color.green.300}"
216
+ }
217
+ }
218
+ },
219
+ "warning-text": {
220
+ "$value": "{color.saffron.700}",
221
+ "$extensions": {
222
+ "com.pearpages.pulp": {
223
+ "dark": "{color.saffron.500}"
224
+ }
225
+ }
226
+ },
227
+ "info-text": {
228
+ "$value": "{color.ultramarine.500}",
229
+ "$extensions": {
230
+ "com.pearpages.pulp": {
231
+ "dark": "{color.ultramarine.300}"
232
+ }
233
+ }
234
+ },
235
+ "success-subtle": {
236
+ "$value": "{color.green.100}",
237
+ "$extensions": {
238
+ "com.pearpages.pulp": {
239
+ "dark": "{color.green.900}"
240
+ }
241
+ },
242
+ "$description": "Tinted background for the tone; pair with <tone>-text."
243
+ },
244
+ "warning-subtle": {
245
+ "$value": "{color.saffron.100}",
246
+ "$extensions": {
247
+ "com.pearpages.pulp": {
248
+ "dark": "{color.saffron.900}"
249
+ }
250
+ }
251
+ },
252
+ "error-subtle": {
253
+ "$value": "{color.red.100}",
254
+ "$extensions": {
255
+ "com.pearpages.pulp": {
256
+ "dark": "{color.red.900}"
257
+ }
258
+ }
259
+ },
260
+ "info-subtle": {
261
+ "$value": "{color.ultramarine.100}",
262
+ "$extensions": {
263
+ "com.pearpages.pulp": {
264
+ "dark": "{color.ultramarine.900}"
265
+ }
266
+ }
267
+ },
268
+ "on-success": {
269
+ "$value": "{color.neutral.950}",
270
+ "$extensions": {
271
+ "com.pearpages.pulp": {
272
+ "dark": "{color.neutral.950}"
273
+ }
274
+ },
275
+ "$description": "Text on the solid success fill. Ink: bone on this green is 3.5:1."
276
+ },
277
+ "on-warning": {
278
+ "$value": "{color.neutral.950}",
279
+ "$extensions": {
280
+ "com.pearpages.pulp": {
281
+ "dark": "{color.neutral.950}"
282
+ }
283
+ }
284
+ },
285
+ "on-error": {
286
+ "$value": "{color.neutral.0}",
287
+ "$extensions": {
288
+ "com.pearpages.pulp": {
289
+ "dark": "{color.neutral.950}"
290
+ }
291
+ },
292
+ "$description": "White on the light red fill, ink on the light-scheme-dark fill."
293
+ },
294
+ "on-info": {
295
+ "$value": "{color.neutral.100}",
296
+ "$extensions": {
297
+ "com.pearpages.pulp": {
298
+ "dark": "{color.neutral.950}"
299
+ }
300
+ }
301
+ },
302
+ "neutral": {
303
+ "$value": "{color.neutral.700}",
304
+ "$extensions": {
305
+ "com.pearpages.pulp": {
306
+ "dark": "{color.neutral.400}"
307
+ }
308
+ },
309
+ "$description": "A tone with no meaning: default Badge, counts, tags."
310
+ },
311
+ "neutral-subtle": {
312
+ "$value": "{color.neutral.100}",
313
+ "$extensions": {
314
+ "com.pearpages.pulp": {
315
+ "dark": "{color.neutral.850}"
316
+ }
317
+ }
318
+ },
319
+ "neutral-text": {
320
+ "$value": "{color.neutral.700}",
321
+ "$extensions": {
322
+ "com.pearpages.pulp": {
323
+ "dark": "{color.neutral.400}"
324
+ }
325
+ }
326
+ },
327
+ "on-neutral": {
328
+ "$value": "{color.neutral.0}",
329
+ "$extensions": {
330
+ "com.pearpages.pulp": {
331
+ "dark": "{color.neutral.950}"
332
+ }
333
+ }
334
+ }
335
+ },
336
+ "overlay": {
337
+ "backdrop": {
338
+ "$value": "#0c0e1499",
339
+ "$extensions": {
340
+ "com.pearpages.pulp": {
341
+ "dark": "#000000b3"
342
+ }
343
+ },
344
+ "$description": "Scrim behind dialogs and sheets. Alpha hex, no primitive: it is a role, not a palette colour."
345
+ }
346
+ }
347
+ },
348
+ "font": {
349
+ "family": {
350
+ "$type": "fontFamily",
351
+ "display": {
352
+ "$value": "{typeface.display}"
353
+ },
354
+ "body": {
355
+ "$value": "{typeface.body}"
356
+ },
357
+ "mono": {
358
+ "$value": "{typeface.mono}"
359
+ }
360
+ },
361
+ "size": {
362
+ "$type": "dimension",
363
+ "xs": {
364
+ "$value": {
365
+ "value": 0.75,
366
+ "unit": "rem"
367
+ }
368
+ },
369
+ "sm": {
370
+ "$value": {
371
+ "value": 0.875,
372
+ "unit": "rem"
373
+ }
374
+ },
375
+ "md": {
376
+ "$value": {
377
+ "value": 1,
378
+ "unit": "rem"
379
+ }
380
+ },
381
+ "lg": {
382
+ "$value": {
383
+ "value": 1.125,
384
+ "unit": "rem"
385
+ }
386
+ },
387
+ "xl": {
388
+ "$value": {
389
+ "value": 1.375,
390
+ "unit": "rem"
391
+ }
392
+ },
393
+ "2xl": {
394
+ "$value": {
395
+ "value": 1.75,
396
+ "unit": "rem"
397
+ }
398
+ },
399
+ "3xl": {
400
+ "$value": {
401
+ "value": 2.25,
402
+ "unit": "rem"
403
+ }
404
+ }
405
+ },
406
+ "weight": {
407
+ "$type": "fontWeight",
408
+ "regular": {
409
+ "$value": 400
410
+ },
411
+ "medium": {
412
+ "$value": 500
413
+ },
414
+ "semibold": {
415
+ "$value": 600
416
+ }
417
+ },
418
+ "line-height": {
419
+ "$type": "number",
420
+ "tight": {
421
+ "$value": 1.2
422
+ },
423
+ "normal": {
424
+ "$value": 1.5
425
+ }
426
+ }
427
+ },
428
+ "radius": {
429
+ "$type": "dimension",
430
+ "control": {
431
+ "$value": "{radius.sm}",
432
+ "$description": "Buttons, inputs, chips."
433
+ },
434
+ "surface": {
435
+ "$value": "{radius.lg}",
436
+ "$description": "Cards, dialogs, popovers."
437
+ },
438
+ "full": {
439
+ "$value": "{radius.pill}"
440
+ }
441
+ },
442
+ "space": {
443
+ "$type": "dimension",
444
+ "1": {
445
+ "$value": "{space.unit}",
446
+ "$extensions": {
447
+ "com.pearpages.pulp": {
448
+ "multiply": 1
449
+ }
450
+ }
451
+ },
452
+ "2": {
453
+ "$value": "{space.unit}",
454
+ "$extensions": {
455
+ "com.pearpages.pulp": {
456
+ "multiply": 2
457
+ }
458
+ }
459
+ },
460
+ "3": {
461
+ "$value": "{space.unit}",
462
+ "$extensions": {
463
+ "com.pearpages.pulp": {
464
+ "multiply": 3
465
+ }
466
+ }
467
+ },
468
+ "4": {
469
+ "$value": "{space.unit}",
470
+ "$extensions": {
471
+ "com.pearpages.pulp": {
472
+ "multiply": 4
473
+ }
474
+ }
475
+ },
476
+ "5": {
477
+ "$value": "{space.unit}",
478
+ "$extensions": {
479
+ "com.pearpages.pulp": {
480
+ "multiply": 6
481
+ }
482
+ }
483
+ },
484
+ "6": {
485
+ "$value": "{space.unit}",
486
+ "$extensions": {
487
+ "com.pearpages.pulp": {
488
+ "multiply": 8
489
+ }
490
+ }
491
+ },
492
+ "7": {
493
+ "$value": "{space.unit}",
494
+ "$extensions": {
495
+ "com.pearpages.pulp": {
496
+ "multiply": 12
497
+ }
498
+ }
499
+ },
500
+ "8": {
501
+ "$value": "{space.unit}",
502
+ "$extensions": {
503
+ "com.pearpages.pulp": {
504
+ "multiply": 16
505
+ }
506
+ }
507
+ },
508
+ "$description": "Spacing scale. Names are steps, not multipliers: 1..8 map to 1, 2, 3, 4, 6, 8, 12, 16 \u00d7 space.unit, so the scale opens up at the top like a type scale. space.unit is the density knob for the brand."
509
+ },
510
+ "motion": {
511
+ "duration": {
512
+ "$type": "duration",
513
+ "fast": {
514
+ "$value": "{duration.fast}"
515
+ },
516
+ "base": {
517
+ "$value": "{duration.base}"
518
+ }
519
+ },
520
+ "easing": {
521
+ "$type": "cubicBezier",
522
+ "standard": {
523
+ "$value": "{easing.standard}"
524
+ }
525
+ }
526
+ },
527
+ "shadow": {
528
+ "$type": "shadow",
529
+ "raised": {
530
+ "$value": {
531
+ "offsetX": {
532
+ "value": 0,
533
+ "unit": "px"
534
+ },
535
+ "offsetY": {
536
+ "value": 2,
537
+ "unit": "px"
538
+ },
539
+ "blur": {
540
+ "value": 12,
541
+ "unit": "px"
542
+ },
543
+ "spread": {
544
+ "value": 0,
545
+ "unit": "px"
546
+ },
547
+ "color": "#0c0e141a"
548
+ },
549
+ "$extensions": {
550
+ "com.pearpages.pulp": {
551
+ "dark": {
552
+ "offsetX": {
553
+ "value": 0,
554
+ "unit": "px"
555
+ },
556
+ "offsetY": {
557
+ "value": 2,
558
+ "unit": "px"
559
+ },
560
+ "blur": {
561
+ "value": 12,
562
+ "unit": "px"
563
+ },
564
+ "spread": {
565
+ "value": 0,
566
+ "unit": "px"
567
+ },
568
+ "color": "#00000059"
569
+ }
570
+ }
571
+ }
572
+ },
573
+ "overlay": {
574
+ "$value": {
575
+ "offsetX": {
576
+ "value": 0,
577
+ "unit": "px"
578
+ },
579
+ "offsetY": {
580
+ "value": 16,
581
+ "unit": "px"
582
+ },
583
+ "blur": {
584
+ "value": 48,
585
+ "unit": "px"
586
+ },
587
+ "spread": {
588
+ "value": 0,
589
+ "unit": "px"
590
+ },
591
+ "color": "#0c0e1433"
592
+ },
593
+ "$extensions": {
594
+ "com.pearpages.pulp": {
595
+ "dark": {
596
+ "offsetX": {
597
+ "value": 0,
598
+ "unit": "px"
599
+ },
600
+ "offsetY": {
601
+ "value": 16,
602
+ "unit": "px"
603
+ },
604
+ "blur": {
605
+ "value": 48,
606
+ "unit": "px"
607
+ },
608
+ "spread": {
609
+ "value": 0,
610
+ "unit": "px"
611
+ },
612
+ "color": "#00000080"
613
+ }
614
+ }
615
+ },
616
+ "$description": "Elevation for floating surfaces: dialogs, popovers."
617
+ }
618
+ },
619
+ "size": {
620
+ "$type": "dimension",
621
+ "control": {
622
+ "sm": {
623
+ "$value": {
624
+ "value": 2,
625
+ "unit": "rem"
626
+ }
627
+ },
628
+ "md": {
629
+ "$value": {
630
+ "value": 2.5,
631
+ "unit": "rem"
632
+ }
633
+ },
634
+ "lg": {
635
+ "$value": {
636
+ "value": 3,
637
+ "unit": "rem"
638
+ }
639
+ },
640
+ "$description": "Block size of interactive controls: buttons, inputs, selects."
641
+ },
642
+ "hairline": {
643
+ "$value": {
644
+ "value": 1,
645
+ "unit": "px"
646
+ },
647
+ "$description": "The thinnest visible line: borders, dividers, the visually-hidden box."
648
+ },
649
+ "toggle": {
650
+ "sm": {
651
+ "$value": {
652
+ "value": 1,
653
+ "unit": "rem"
654
+ }
655
+ },
656
+ "md": {
657
+ "$value": {
658
+ "value": 1.25,
659
+ "unit": "rem"
660
+ }
661
+ },
662
+ "lg": {
663
+ "$value": {
664
+ "value": 1.5,
665
+ "unit": "rem"
666
+ }
667
+ },
668
+ "$description": "Box size of checkboxes, radios and switch thumbs."
669
+ },
670
+ "toast-width": {
671
+ "$value": {
672
+ "value": 22,
673
+ "unit": "rem"
674
+ }
675
+ },
676
+ "popover-width": {
677
+ "$value": {
678
+ "value": 20,
679
+ "unit": "rem"
680
+ }
681
+ },
682
+ "menu-width": {
683
+ "$value": {
684
+ "value": 14,
685
+ "unit": "rem"
686
+ }
687
+ },
688
+ "listbox-height": {
689
+ "$value": {
690
+ "value": 18,
691
+ "unit": "rem"
692
+ },
693
+ "$description": "Maximum height of an option list before it scrolls (Combobox, Picker, Listbox)."
694
+ }
695
+ },
696
+ "focus": {
697
+ "ring": {
698
+ "$type": "dimension",
699
+ "width": {
700
+ "$value": {
701
+ "value": 2,
702
+ "unit": "px"
703
+ }
704
+ },
705
+ "offset": {
706
+ "$value": {
707
+ "value": 2,
708
+ "unit": "px"
709
+ }
710
+ }
711
+ }
712
+ },
713
+ "layer": {
714
+ "$type": "number",
715
+ "toast": {
716
+ "$value": 1100,
717
+ "$description": "Stacking order for toasts: above the dialog layer (the vendor dialog uses 1000)."
718
+ },
719
+ "popover": {
720
+ "$value": 1200,
721
+ "$description": "Popovers and menus: above dialogs (they open inside them) and toasts."
722
+ },
723
+ "tooltip": {
724
+ "$value": 1300,
725
+ "$description": "Tooltips: above everything."
726
+ }
727
+ }
728
+ }