@primer/primitives 11.4.0 → 11.4.1-rc.4e2d1de5

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 (131) hide show
  1. package/DESIGN_TOKENS_GUIDE.md +185 -0
  2. package/DESIGN_TOKENS_SPEC.md +565 -0
  3. package/dist/build/formats/markdownLlmGuidelines.d.ts +7 -6
  4. package/dist/build/formats/markdownLlmGuidelines.js +1034 -60
  5. package/dist/build/schemas/borderToken.d.ts +16 -2
  6. package/dist/build/schemas/dimensionToken.d.ts +8 -1
  7. package/dist/build/schemas/dimensionValue.d.ts +24 -1
  8. package/dist/build/schemas/dimensionValue.js +20 -1
  9. package/dist/build/schemas/durationToken.d.ts +7 -1
  10. package/dist/build/schemas/durationValue.d.ts +11 -1
  11. package/dist/build/schemas/durationValue.js +13 -3
  12. package/dist/build/schemas/shadowToken.d.ts +672 -84
  13. package/dist/build/schemas/transitionToken.d.ts +14 -2
  14. package/dist/build/schemas/typographyToken.d.ts +32 -4
  15. package/dist/build/transformers/dimensionToPixelUnitless.d.ts +3 -2
  16. package/dist/build/transformers/dimensionToPixelUnitless.js +22 -26
  17. package/dist/build/transformers/dimensionToRem.d.ts +2 -1
  18. package/dist/build/transformers/dimensionToRem.js +21 -22
  19. package/dist/build/transformers/dimensionToRemPxArray.d.ts +2 -1
  20. package/dist/build/transformers/dimensionToRemPxArray.js +21 -22
  21. package/dist/build/transformers/durationToCss.d.ts +2 -1
  22. package/dist/build/transformers/durationToCss.js +18 -11
  23. package/dist/build/transformers/utilities/parseDimension.d.ts +12 -0
  24. package/dist/build/transformers/utilities/parseDimension.js +31 -0
  25. package/dist/build/types/dimensionTokenValue.d.ts +9 -0
  26. package/dist/css/functional/themes/dark-colorblind-high-contrast.css +18 -14
  27. package/dist/css/functional/themes/dark-colorblind.css +18 -14
  28. package/dist/css/functional/themes/dark-dimmed-high-contrast.css +18 -14
  29. package/dist/css/functional/themes/dark-dimmed.css +18 -14
  30. package/dist/css/functional/themes/dark-high-contrast.css +18 -14
  31. package/dist/css/functional/themes/dark-tritanopia-high-contrast.css +18 -14
  32. package/dist/css/functional/themes/dark-tritanopia.css +18 -14
  33. package/dist/css/functional/themes/dark.css +18 -14
  34. package/dist/css/functional/themes/light-colorblind-high-contrast.css +18 -14
  35. package/dist/css/functional/themes/light-colorblind.css +18 -14
  36. package/dist/css/functional/themes/light-high-contrast.css +18 -14
  37. package/dist/css/functional/themes/light-tritanopia-high-contrast.css +18 -14
  38. package/dist/css/functional/themes/light-tritanopia.css +18 -14
  39. package/dist/css/functional/themes/light.css +18 -14
  40. package/dist/css/primitives.css +4 -0
  41. package/dist/docs/base/motion/motion.json +96 -24
  42. package/dist/docs/base/size/size.json +76 -19
  43. package/dist/docs/base/typography/typography.json +24 -6
  44. package/dist/docs/functional/size/border.json +20 -5
  45. package/dist/docs/functional/size/breakpoints.json +24 -6
  46. package/dist/docs/functional/size/radius.json +16 -4
  47. package/dist/docs/functional/size/size.json +60 -15
  48. package/dist/docs/functional/themes/dark-colorblind-high-contrast.json +109 -7
  49. package/dist/docs/functional/themes/dark-colorblind.json +109 -7
  50. package/dist/docs/functional/themes/dark-dimmed-high-contrast.json +109 -7
  51. package/dist/docs/functional/themes/dark-dimmed.json +109 -7
  52. package/dist/docs/functional/themes/dark-high-contrast.json +109 -7
  53. package/dist/docs/functional/themes/dark-tritanopia-high-contrast.json +109 -7
  54. package/dist/docs/functional/themes/dark-tritanopia.json +109 -7
  55. package/dist/docs/functional/themes/dark.json +109 -7
  56. package/dist/docs/functional/themes/light-colorblind-high-contrast.json +115 -13
  57. package/dist/docs/functional/themes/light-colorblind.json +115 -13
  58. package/dist/docs/functional/themes/light-high-contrast.json +115 -13
  59. package/dist/docs/functional/themes/light-tritanopia-high-contrast.json +115 -13
  60. package/dist/docs/functional/themes/light-tritanopia.json +115 -13
  61. package/dist/docs/functional/themes/light.json +115 -13
  62. package/dist/docs/functional/typography/typography.json +8 -2
  63. package/dist/fallbacks/base/motion/motion.json +48 -12
  64. package/dist/figma/themes/light-colorblind.json +4 -4
  65. package/dist/figma/themes/light-high-contrast.json +4 -4
  66. package/dist/figma/themes/light-tritanopia.json +4 -4
  67. package/dist/figma/themes/light.json +4 -4
  68. package/dist/internalCss/dark-colorblind-high-contrast.css +14 -14
  69. package/dist/internalCss/dark-colorblind.css +14 -14
  70. package/dist/internalCss/dark-dimmed-high-contrast.css +14 -14
  71. package/dist/internalCss/dark-dimmed.css +14 -14
  72. package/dist/internalCss/dark-high-contrast.css +14 -14
  73. package/dist/internalCss/dark-tritanopia-high-contrast.css +14 -14
  74. package/dist/internalCss/dark-tritanopia.css +14 -14
  75. package/dist/internalCss/dark.css +14 -14
  76. package/dist/internalCss/light-colorblind-high-contrast.css +14 -14
  77. package/dist/internalCss/light-colorblind.css +14 -14
  78. package/dist/internalCss/light-high-contrast.css +14 -14
  79. package/dist/internalCss/light-tritanopia-high-contrast.css +14 -14
  80. package/dist/internalCss/light-tritanopia.css +14 -14
  81. package/dist/internalCss/light.css +14 -14
  82. package/dist/styleLint/base/motion/motion.json +96 -24
  83. package/dist/styleLint/base/size/size.json +76 -19
  84. package/dist/styleLint/base/typography/typography.json +30 -12
  85. package/dist/styleLint/functional/size/border.json +21 -6
  86. package/dist/styleLint/functional/size/breakpoints.json +24 -6
  87. package/dist/styleLint/functional/size/radius.json +17 -5
  88. package/dist/styleLint/functional/size/size-coarse.json +3 -3
  89. package/dist/styleLint/functional/size/size-fine.json +3 -3
  90. package/dist/styleLint/functional/size/size.json +111 -66
  91. package/dist/styleLint/functional/themes/dark-colorblind-high-contrast.json +129 -27
  92. package/dist/styleLint/functional/themes/dark-colorblind.json +129 -27
  93. package/dist/styleLint/functional/themes/dark-dimmed-high-contrast.json +129 -27
  94. package/dist/styleLint/functional/themes/dark-dimmed.json +129 -27
  95. package/dist/styleLint/functional/themes/dark-high-contrast.json +129 -27
  96. package/dist/styleLint/functional/themes/dark-tritanopia-high-contrast.json +129 -27
  97. package/dist/styleLint/functional/themes/dark-tritanopia.json +129 -27
  98. package/dist/styleLint/functional/themes/dark.json +129 -27
  99. package/dist/styleLint/functional/themes/light-colorblind-high-contrast.json +135 -33
  100. package/dist/styleLint/functional/themes/light-colorblind.json +135 -33
  101. package/dist/styleLint/functional/themes/light-high-contrast.json +135 -33
  102. package/dist/styleLint/functional/themes/light-tritanopia-high-contrast.json +135 -33
  103. package/dist/styleLint/functional/themes/light-tritanopia.json +135 -33
  104. package/dist/styleLint/functional/themes/light.json +135 -33
  105. package/dist/styleLint/functional/typography/typography.json +28 -22
  106. package/package.json +6 -5
  107. package/src/tokens/base/motion/timing.json5 +12 -12
  108. package/src/tokens/base/size/size.json5 +19 -19
  109. package/src/tokens/base/typography/typography.json5 +6 -6
  110. package/src/tokens/functional/color/bgColor.json5 +8 -0
  111. package/src/tokens/functional/color/display.json5 +7 -0
  112. package/src/tokens/functional/color/fgColor.json5 +8 -0
  113. package/src/tokens/functional/color/syntax.json5 +14 -0
  114. package/src/tokens/functional/shadow/shadow.json5 +39 -4
  115. package/src/tokens/functional/size/border.json5 +5 -5
  116. package/src/tokens/functional/size/breakpoints.json5 +6 -6
  117. package/src/tokens/functional/size/radius.json5 +4 -4
  118. package/src/tokens/functional/size/size.json5 +15 -15
  119. package/src/tokens/functional/typography/typography.json5 +8 -4
  120. package/dist/build/parsers/index.d.ts +0 -1
  121. package/dist/build/parsers/index.js +0 -1
  122. package/dist/build/parsers/w3cJsonParser.d.ts +0 -6
  123. package/dist/build/parsers/w3cJsonParser.js +0 -25
  124. package/dist/removed/testing.json5 +0 -4
  125. package/guidelines/color.llm.md +0 -16
  126. package/guidelines/guidelines.llm.md +0 -34
  127. package/guidelines/motion.llm.md +0 -41
  128. package/guidelines/spacing.llm.md +0 -20
  129. package/guidelines/typography.llm.md +0 -14
  130. package/src/tokens/removed/testing.json5 +0 -4
  131. package/token-guidelines.llm.md +0 -695
@@ -549,6 +549,10 @@
549
549
  },
550
550
  "org.primer.overrides": {
551
551
  "dark": "#010409"
552
+ },
553
+ "org.primer.llm": {
554
+ "doNotUse": true,
555
+ "rules": "Avoid using raw black. Use semantic alternatives: bgColor.emphasis for dark backgrounds, bgColor.inverse for inverted contexts. Raw black/white ignore theme preferences and accessibility settings."
552
556
  }
553
557
  },
554
558
  "filePath": "src/tokens/functional/color/bgColor.json5",
@@ -565,6 +569,10 @@
565
569
  },
566
570
  "org.primer.overrides": {
567
571
  "dark": "{base.color.neutral.0}"
572
+ },
573
+ "org.primer.llm": {
574
+ "doNotUse": true,
575
+ "rules": "Avoid using raw black. Use semantic alternatives: bgColor.emphasis for dark backgrounds, bgColor.inverse for inverted contexts. Raw black/white ignore theme preferences and accessibility settings."
568
576
  }
569
577
  },
570
578
  "key": "{bgColor.black}"
@@ -2449,6 +2457,10 @@
2449
2457
  },
2450
2458
  "org.primer.overrides": {
2451
2459
  "dark": "#ffffff"
2460
+ },
2461
+ "org.primer.llm": {
2462
+ "doNotUse": true,
2463
+ "rules": "Avoid using raw white. Use semantic alternatives: bgColor.default for standard backgrounds, bgColor.inset for recessed areas, or bgColor.inverse for inverted contexts. Raw black/white ignore theme preferences and accessibility settings."
2452
2464
  }
2453
2465
  },
2454
2466
  "filePath": "src/tokens/functional/color/bgColor.json5",
@@ -2465,6 +2477,10 @@
2465
2477
  },
2466
2478
  "org.primer.overrides": {
2467
2479
  "dark": "{base.color.neutral.13}"
2480
+ },
2481
+ "org.primer.llm": {
2482
+ "doNotUse": true,
2483
+ "rules": "Avoid using raw white. Use semantic alternatives: bgColor.default for standard backgrounds, bgColor.inset for recessed areas, or bgColor.inverse for inverted contexts. Raw black/white ignore theme preferences and accessibility settings."
2468
2484
  }
2469
2485
  },
2470
2486
  "key": "{bgColor.white}"
@@ -37249,6 +37265,10 @@
37249
37265
  },
37250
37266
  "org.primer.overrides": {
37251
37267
  "dark": "#010409"
37268
+ },
37269
+ "org.primer.llm": {
37270
+ "doNotUse": true,
37271
+ "rules": "Avoid using raw black. Use semantic alternatives: fgColor.default for standard text, fgColor.muted for secondary text. Raw black/white ignore theme preferences and accessibility settings."
37252
37272
  }
37253
37273
  },
37254
37274
  "filePath": "src/tokens/functional/color/fgColor.json5",
@@ -37265,6 +37285,10 @@
37265
37285
  },
37266
37286
  "org.primer.overrides": {
37267
37287
  "dark": "{base.color.neutral.0}"
37288
+ },
37289
+ "org.primer.llm": {
37290
+ "doNotUse": true,
37291
+ "rules": "Avoid using raw black. Use semantic alternatives: fgColor.default for standard text, fgColor.muted for secondary text. Raw black/white ignore theme preferences and accessibility settings."
37268
37292
  }
37269
37293
  },
37270
37294
  "key": "{fgColor.black}"
@@ -38238,6 +38262,10 @@
38238
38262
  },
38239
38263
  "org.primer.overrides": {
38240
38264
  "dark": "#ffffff"
38265
+ },
38266
+ "org.primer.llm": {
38267
+ "doNotUse": true,
38268
+ "rules": "Avoid using raw white. Use semantic alternatives: fgColor.onEmphasis for text on dark backgrounds, fgColor.onInverse for inverted contexts. Raw black/white ignore theme preferences and accessibility settings."
38241
38269
  }
38242
38270
  },
38243
38271
  "filePath": "src/tokens/functional/color/fgColor.json5",
@@ -38254,6 +38282,10 @@
38254
38282
  },
38255
38283
  "org.primer.overrides": {
38256
38284
  "dark": "{base.color.neutral.13}"
38285
+ },
38286
+ "org.primer.llm": {
38287
+ "doNotUse": true,
38288
+ "rules": "Avoid using raw white. Use semantic alternatives: fgColor.onEmphasis for text on dark backgrounds, fgColor.onInverse for inverted contexts. Raw black/white ignore theme preferences and accessibility settings."
38257
38289
  }
38258
38290
  },
38259
38291
  "key": "{fgColor.white}"
@@ -47571,6 +47603,10 @@
47571
47603
  "isSource": true,
47572
47604
  "$type": "shadow"
47573
47605
  }
47606
+ },
47607
+ "org.primer.llm": {
47608
+ "usage": ["legacy-component", "backward-compatibility"],
47609
+ "rules": "DEPRECATED: Use shadow-floating-small instead. Only use for maintaining backward compatibility with existing implementations."
47574
47610
  }
47575
47611
  },
47576
47612
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -47595,6 +47631,7 @@
47595
47631
  }
47596
47632
  ],
47597
47633
  "$type": "shadow",
47634
+ "$description": "Legacy floating shadow for backward compatibility",
47598
47635
  "$extensions": {
47599
47636
  "org.primer.figma": {},
47600
47637
  "org.primer.overrides": {
@@ -47621,6 +47658,10 @@
47621
47658
  "isSource": true,
47622
47659
  "$type": "shadow"
47623
47660
  }
47661
+ },
47662
+ "org.primer.llm": {
47663
+ "usage": ["legacy-component", "backward-compatibility"],
47664
+ "rules": "DEPRECATED: Use shadow-floating-small instead. Only use for maintaining backward compatibility with existing implementations."
47624
47665
  }
47625
47666
  },
47626
47667
  "key": "{shadow.floating.legacy}"
@@ -47629,7 +47670,8 @@
47629
47670
  "attributes": {},
47630
47671
  "path": ["shadow", "floating", "legacy"],
47631
47672
  "value": "0px 6px 12px -3px #01040966, 0px 6px 18px 0px #01040966",
47632
- "type": "shadow"
47673
+ "type": "shadow",
47674
+ "description": "Legacy floating shadow for backward compatibility"
47633
47675
  },
47634
47676
  "shadow-floating-medium": {
47635
47677
  "key": "{shadow.floating.medium}",
@@ -47686,6 +47728,10 @@
47686
47728
  "isSource": true,
47687
47729
  "$type": "shadow"
47688
47730
  }
47731
+ },
47732
+ "org.primer.llm": {
47733
+ "usage": ["popover", "action-menu", "select-panel", "autocomplete"],
47734
+ "rules": "Use for medium-sized floating elements like popovers and action menus. More prominent than small but less than dialogs. Do NOT use for full modals."
47689
47735
  }
47690
47736
  },
47691
47737
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -47734,6 +47780,7 @@
47734
47780
  }
47735
47781
  ],
47736
47782
  "$type": "shadow",
47783
+ "$description": "Medium floating shadow for popovers and action menus",
47737
47784
  "$extensions": {
47738
47785
  "org.primer.figma": {
47739
47786
  "collection": "mode",
@@ -47787,6 +47834,10 @@
47787
47834
  "isSource": true,
47788
47835
  "$type": "shadow"
47789
47836
  }
47837
+ },
47838
+ "org.primer.llm": {
47839
+ "usage": ["popover", "action-menu", "select-panel", "autocomplete"],
47840
+ "rules": "Use for medium-sized floating elements like popovers and action menus. More prominent than small but less than dialogs. Do NOT use for full modals."
47790
47841
  }
47791
47842
  },
47792
47843
  "key": "{shadow.floating.medium}"
@@ -47795,7 +47846,8 @@
47795
47846
  "attributes": {},
47796
47847
  "path": ["shadow", "floating", "medium"],
47797
47848
  "value": "0px 0px 0px 1px #b7bdc8, 0px 8px 16px -4px #01040966, 0px 4px 32px -4px #01040966, 0px 24px 48px -12px #01040966, 0px 48px 96px -24px #01040966",
47798
- "type": "shadow"
47849
+ "type": "shadow",
47850
+ "description": "Medium floating shadow for popovers and action menus"
47799
47851
  },
47800
47852
  "shadow-floating-small": {
47801
47853
  "key": "{shadow.floating.small}",
@@ -47956,6 +48008,10 @@
47956
48008
  "isSource": true,
47957
48009
  "$type": "shadow"
47958
48010
  }
48011
+ },
48012
+ "org.primer.llm": {
48013
+ "usage": ["full-screen-overlay", "side-sheet", "drawer", "large-modal"],
48014
+ "rules": "Use for full-screen or near-full-screen overlays like side sheets and drawers. Maximum elevation in the system. Do NOT use for small floating elements."
47959
48015
  }
47960
48016
  },
47961
48017
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -47980,6 +48036,7 @@
47980
48036
  }
47981
48037
  ],
47982
48038
  "$type": "shadow",
48039
+ "$description": "Extra large floating shadow for full-screen overlays and sheets",
47983
48040
  "$extensions": {
47984
48041
  "org.primer.figma": {
47985
48042
  "collection": "mode",
@@ -48009,6 +48066,10 @@
48009
48066
  "isSource": true,
48010
48067
  "$type": "shadow"
48011
48068
  }
48069
+ },
48070
+ "org.primer.llm": {
48071
+ "usage": ["full-screen-overlay", "side-sheet", "drawer", "large-modal"],
48072
+ "rules": "Use for full-screen or near-full-screen overlays like side sheets and drawers. Maximum elevation in the system. Do NOT use for small floating elements."
48012
48073
  }
48013
48074
  },
48014
48075
  "key": "{shadow.floating.xlarge}"
@@ -48017,7 +48078,8 @@
48017
48078
  "attributes": {},
48018
48079
  "path": ["shadow", "floating", "xlarge"],
48019
48080
  "value": "0px 0px 0px 1px #b7bdc8, 0px 32px 64px 0px #010409",
48020
- "type": "shadow"
48081
+ "type": "shadow",
48082
+ "description": "Extra large floating shadow for full-screen overlays and sheets"
48021
48083
  },
48022
48084
  "shadow-inset": {
48023
48085
  "key": "{shadow.inset}",
@@ -48041,6 +48103,10 @@
48041
48103
  "isSource": true,
48042
48104
  "$type": "shadow"
48043
48105
  }
48106
+ },
48107
+ "org.primer.llm": {
48108
+ "usage": ["input-field", "pressed-button", "recessed-area", "well"],
48109
+ "rules": "Use for elements that appear pressed or inset into the surface. Commonly used for input fields and wells. Do NOT use for floating elements."
48044
48110
  }
48045
48111
  },
48046
48112
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48056,6 +48122,7 @@
48056
48122
  "inset": true
48057
48123
  },
48058
48124
  "$type": "shadow",
48125
+ "$description": "Inset shadow for recessed elements",
48059
48126
  "$extensions": {
48060
48127
  "org.primer.figma": {
48061
48128
  "collection": "mode",
@@ -48076,6 +48143,10 @@
48076
48143
  "isSource": true,
48077
48144
  "$type": "shadow"
48078
48145
  }
48146
+ },
48147
+ "org.primer.llm": {
48148
+ "usage": ["input-field", "pressed-button", "recessed-area", "well"],
48149
+ "rules": "Use for elements that appear pressed or inset into the surface. Commonly used for input fields and wells. Do NOT use for floating elements."
48079
48150
  }
48080
48151
  },
48081
48152
  "key": "{shadow.inset}"
@@ -48084,7 +48155,8 @@
48084
48155
  "attributes": {},
48085
48156
  "path": ["shadow", "inset"],
48086
48157
  "value": "inset 0px 1px 0px 0px #0104093d",
48087
- "type": "shadow"
48158
+ "type": "shadow",
48159
+ "description": "Inset shadow for recessed elements"
48088
48160
  },
48089
48161
  "shadow-resting-medium": {
48090
48162
  "key": "{shadow.resting.medium}",
@@ -48117,6 +48189,10 @@
48117
48189
  "isSource": true,
48118
48190
  "$type": "shadow"
48119
48191
  }
48192
+ },
48193
+ "org.primer.llm": {
48194
+ "usage": ["card", "panel", "elevated-surface", "elevated-sidebar"],
48195
+ "rules": "Use for cards and content panels that sit above the page surface. Provides moderate elevation without appearing to float. Do NOT use for overlays or modals."
48120
48196
  }
48121
48197
  },
48122
48198
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48141,6 +48217,7 @@
48141
48217
  }
48142
48218
  ],
48143
48219
  "$type": "shadow",
48220
+ "$description": "Medium resting shadow for cards and elevated surfaces",
48144
48221
  "$extensions": {
48145
48222
  "org.primer.figma": {
48146
48223
  "collection": "mode",
@@ -48170,6 +48247,10 @@
48170
48247
  "isSource": true,
48171
48248
  "$type": "shadow"
48172
48249
  }
48250
+ },
48251
+ "org.primer.llm": {
48252
+ "usage": ["card", "panel", "elevated-surface", "elevated-sidebar"],
48253
+ "rules": "Use for cards and content panels that sit above the page surface. Provides moderate elevation without appearing to float. Do NOT use for overlays or modals."
48173
48254
  }
48174
48255
  },
48175
48256
  "key": "{shadow.resting.medium}"
@@ -48178,7 +48259,8 @@
48178
48259
  "attributes": {},
48179
48260
  "path": ["shadow", "resting", "medium"],
48180
48261
  "value": "0px 1px 1px 0px #01040966, 0px 3px 6px 0px #010409cc",
48181
- "type": "shadow"
48262
+ "type": "shadow",
48263
+ "description": "Medium resting shadow for cards and elevated surfaces"
48182
48264
  },
48183
48265
  "shadow-resting-small": {
48184
48266
  "key": "{shadow.resting.small}",
@@ -48213,6 +48295,10 @@
48213
48295
  "isSource": true,
48214
48296
  "$type": "shadow"
48215
48297
  }
48298
+ },
48299
+ "org.primer.llm": {
48300
+ "usage": ["button", "interactive-card", "clickable-element"],
48301
+ "rules": "Use for buttons and small interactive elements at rest. Provides subtle depth and clickable affordance. RECOMMENDED for default button shadows."
48216
48302
  }
48217
48303
  },
48218
48304
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48239,6 +48325,7 @@
48239
48325
  }
48240
48326
  ],
48241
48327
  "$type": "shadow",
48328
+ "$description": "Small resting shadow for buttons and interactive elements",
48242
48329
  "$extensions": {
48243
48330
  "org.primer.figma": {
48244
48331
  "collection": "mode",
@@ -48270,6 +48357,10 @@
48270
48357
  "isSource": true,
48271
48358
  "$type": "shadow"
48272
48359
  }
48360
+ },
48361
+ "org.primer.llm": {
48362
+ "usage": ["button", "interactive-card", "clickable-element"],
48363
+ "rules": "Use for buttons and small interactive elements at rest. Provides subtle depth and clickable affordance. RECOMMENDED for default button shadows."
48273
48364
  }
48274
48365
  },
48275
48366
  "key": "{shadow.resting.small}"
@@ -48278,7 +48369,8 @@
48278
48369
  "attributes": {},
48279
48370
  "path": ["shadow", "resting", "small"],
48280
48371
  "value": "0px 1px 1px 0px #01040999, 0px 1px 3px 0px #01040999",
48281
- "type": "shadow"
48372
+ "type": "shadow",
48373
+ "description": "Small resting shadow for buttons and interactive elements"
48282
48374
  },
48283
48375
  "shadow-resting-xsmall": {
48284
48376
  "key": "{shadow.resting.xsmall}",
@@ -48302,6 +48394,10 @@
48302
48394
  "isSource": true,
48303
48395
  "$type": "shadow"
48304
48396
  }
48397
+ },
48398
+ "org.primer.llm": {
48399
+ "usage": ["badge", "chip", "small-card", "subtle-elevation"],
48400
+ "rules": "Use for very subtle elevation on small elements. Provides minimal lift from surface. Do NOT use for interactive elements needing clear affordance."
48305
48401
  }
48306
48402
  },
48307
48403
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48317,6 +48413,7 @@
48317
48413
  "inset": false
48318
48414
  },
48319
48415
  "$type": "shadow",
48416
+ "$description": "Extra small resting shadow for minimal elevation",
48320
48417
  "$extensions": {
48321
48418
  "org.primer.figma": {
48322
48419
  "collection": "mode",
@@ -48337,6 +48434,10 @@
48337
48434
  "isSource": true,
48338
48435
  "$type": "shadow"
48339
48436
  }
48437
+ },
48438
+ "org.primer.llm": {
48439
+ "usage": ["badge", "chip", "small-card", "subtle-elevation"],
48440
+ "rules": "Use for very subtle elevation on small elements. Provides minimal lift from surface. Do NOT use for interactive elements needing clear affordance."
48340
48441
  }
48341
48442
  },
48342
48443
  "key": "{shadow.resting.xsmall}"
@@ -48345,7 +48446,8 @@
48345
48446
  "attributes": {},
48346
48447
  "path": ["shadow", "resting", "xsmall"],
48347
48448
  "value": "0px 1px 1px 0px #010409cc",
48348
- "type": "shadow"
48449
+ "type": "shadow",
48450
+ "description": "Extra small resting shadow for minimal elevation"
48349
48451
  },
48350
48452
  "sideNav-bgColor-selected": {
48351
48453
  "key": "{sideNav.bgColor.selected}",