@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}"
@@ -2457,6 +2465,10 @@
2457
2465
  },
2458
2466
  "org.primer.overrides": {
2459
2467
  "dark": "#ffffff"
2468
+ },
2469
+ "org.primer.llm": {
2470
+ "doNotUse": true,
2471
+ "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."
2460
2472
  }
2461
2473
  },
2462
2474
  "filePath": "src/tokens/functional/color/bgColor.json5",
@@ -2473,6 +2485,10 @@
2473
2485
  },
2474
2486
  "org.primer.overrides": {
2475
2487
  "dark": "{base.color.neutral.13}"
2488
+ },
2489
+ "org.primer.llm": {
2490
+ "doNotUse": true,
2491
+ "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."
2476
2492
  }
2477
2493
  },
2478
2494
  "key": "{bgColor.white}"
@@ -37251,6 +37267,10 @@
37251
37267
  },
37252
37268
  "org.primer.overrides": {
37253
37269
  "dark": "#010409"
37270
+ },
37271
+ "org.primer.llm": {
37272
+ "doNotUse": true,
37273
+ "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."
37254
37274
  }
37255
37275
  },
37256
37276
  "filePath": "src/tokens/functional/color/fgColor.json5",
@@ -37267,6 +37287,10 @@
37267
37287
  },
37268
37288
  "org.primer.overrides": {
37269
37289
  "dark": "{base.color.neutral.0}"
37290
+ },
37291
+ "org.primer.llm": {
37292
+ "doNotUse": true,
37293
+ "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."
37270
37294
  }
37271
37295
  },
37272
37296
  "key": "{fgColor.black}"
@@ -38240,6 +38264,10 @@
38240
38264
  },
38241
38265
  "org.primer.overrides": {
38242
38266
  "dark": "#ffffff"
38267
+ },
38268
+ "org.primer.llm": {
38269
+ "doNotUse": true,
38270
+ "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."
38243
38271
  }
38244
38272
  },
38245
38273
  "filePath": "src/tokens/functional/color/fgColor.json5",
@@ -38256,6 +38284,10 @@
38256
38284
  },
38257
38285
  "org.primer.overrides": {
38258
38286
  "dark": "{base.color.neutral.13}"
38287
+ },
38288
+ "org.primer.llm": {
38289
+ "doNotUse": true,
38290
+ "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."
38259
38291
  }
38260
38292
  },
38261
38293
  "key": "{fgColor.white}"
@@ -47573,6 +47605,10 @@
47573
47605
  "isSource": true,
47574
47606
  "$type": "shadow"
47575
47607
  }
47608
+ },
47609
+ "org.primer.llm": {
47610
+ "usage": ["legacy-component", "backward-compatibility"],
47611
+ "rules": "DEPRECATED: Use shadow-floating-small instead. Only use for maintaining backward compatibility with existing implementations."
47576
47612
  }
47577
47613
  },
47578
47614
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -47597,6 +47633,7 @@
47597
47633
  }
47598
47634
  ],
47599
47635
  "$type": "shadow",
47636
+ "$description": "Legacy floating shadow for backward compatibility",
47600
47637
  "$extensions": {
47601
47638
  "org.primer.figma": {},
47602
47639
  "org.primer.overrides": {
@@ -47623,6 +47660,10 @@
47623
47660
  "isSource": true,
47624
47661
  "$type": "shadow"
47625
47662
  }
47663
+ },
47664
+ "org.primer.llm": {
47665
+ "usage": ["legacy-component", "backward-compatibility"],
47666
+ "rules": "DEPRECATED: Use shadow-floating-small instead. Only use for maintaining backward compatibility with existing implementations."
47626
47667
  }
47627
47668
  },
47628
47669
  "key": "{shadow.floating.legacy}"
@@ -47631,7 +47672,8 @@
47631
47672
  "attributes": {},
47632
47673
  "path": ["shadow", "floating", "legacy"],
47633
47674
  "value": "0px 6px 12px -3px #01040966, 0px 6px 18px 0px #01040966",
47634
- "type": "shadow"
47675
+ "type": "shadow",
47676
+ "description": "Legacy floating shadow for backward compatibility"
47635
47677
  },
47636
47678
  "shadow-floating-medium": {
47637
47679
  "key": "{shadow.floating.medium}",
@@ -47688,6 +47730,10 @@
47688
47730
  "isSource": true,
47689
47731
  "$type": "shadow"
47690
47732
  }
47733
+ },
47734
+ "org.primer.llm": {
47735
+ "usage": ["popover", "action-menu", "select-panel", "autocomplete"],
47736
+ "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."
47691
47737
  }
47692
47738
  },
47693
47739
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -47736,6 +47782,7 @@
47736
47782
  }
47737
47783
  ],
47738
47784
  "$type": "shadow",
47785
+ "$description": "Medium floating shadow for popovers and action menus",
47739
47786
  "$extensions": {
47740
47787
  "org.primer.figma": {
47741
47788
  "collection": "mode",
@@ -47789,6 +47836,10 @@
47789
47836
  "isSource": true,
47790
47837
  "$type": "shadow"
47791
47838
  }
47839
+ },
47840
+ "org.primer.llm": {
47841
+ "usage": ["popover", "action-menu", "select-panel", "autocomplete"],
47842
+ "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."
47792
47843
  }
47793
47844
  },
47794
47845
  "key": "{shadow.floating.medium}"
@@ -47797,7 +47848,8 @@
47797
47848
  "attributes": {},
47798
47849
  "path": ["shadow", "floating", "medium"],
47799
47850
  "value": "0px 0px 0px 1px #3d444d, 0px 8px 16px -4px #01040966, 0px 4px 32px -4px #01040966, 0px 24px 48px -12px #01040966, 0px 48px 96px -24px #01040966",
47800
- "type": "shadow"
47851
+ "type": "shadow",
47852
+ "description": "Medium floating shadow for popovers and action menus"
47801
47853
  },
47802
47854
  "shadow-floating-small": {
47803
47855
  "key": "{shadow.floating.small}",
@@ -47958,6 +48010,10 @@
47958
48010
  "isSource": true,
47959
48011
  "$type": "shadow"
47960
48012
  }
48013
+ },
48014
+ "org.primer.llm": {
48015
+ "usage": ["full-screen-overlay", "side-sheet", "drawer", "large-modal"],
48016
+ "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."
47961
48017
  }
47962
48018
  },
47963
48019
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -47982,6 +48038,7 @@
47982
48038
  }
47983
48039
  ],
47984
48040
  "$type": "shadow",
48041
+ "$description": "Extra large floating shadow for full-screen overlays and sheets",
47985
48042
  "$extensions": {
47986
48043
  "org.primer.figma": {
47987
48044
  "collection": "mode",
@@ -48011,6 +48068,10 @@
48011
48068
  "isSource": true,
48012
48069
  "$type": "shadow"
48013
48070
  }
48071
+ },
48072
+ "org.primer.llm": {
48073
+ "usage": ["full-screen-overlay", "side-sheet", "drawer", "large-modal"],
48074
+ "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."
48014
48075
  }
48015
48076
  },
48016
48077
  "key": "{shadow.floating.xlarge}"
@@ -48019,7 +48080,8 @@
48019
48080
  "attributes": {},
48020
48081
  "path": ["shadow", "floating", "xlarge"],
48021
48082
  "value": "0px 0px 0px 1px #3d444d, 0px 32px 64px 0px #010409",
48022
- "type": "shadow"
48083
+ "type": "shadow",
48084
+ "description": "Extra large floating shadow for full-screen overlays and sheets"
48023
48085
  },
48024
48086
  "shadow-inset": {
48025
48087
  "key": "{shadow.inset}",
@@ -48043,6 +48105,10 @@
48043
48105
  "isSource": true,
48044
48106
  "$type": "shadow"
48045
48107
  }
48108
+ },
48109
+ "org.primer.llm": {
48110
+ "usage": ["input-field", "pressed-button", "recessed-area", "well"],
48111
+ "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."
48046
48112
  }
48047
48113
  },
48048
48114
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48058,6 +48124,7 @@
48058
48124
  "inset": true
48059
48125
  },
48060
48126
  "$type": "shadow",
48127
+ "$description": "Inset shadow for recessed elements",
48061
48128
  "$extensions": {
48062
48129
  "org.primer.figma": {
48063
48130
  "collection": "mode",
@@ -48078,6 +48145,10 @@
48078
48145
  "isSource": true,
48079
48146
  "$type": "shadow"
48080
48147
  }
48148
+ },
48149
+ "org.primer.llm": {
48150
+ "usage": ["input-field", "pressed-button", "recessed-area", "well"],
48151
+ "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."
48081
48152
  }
48082
48153
  },
48083
48154
  "key": "{shadow.inset}"
@@ -48086,7 +48157,8 @@
48086
48157
  "attributes": {},
48087
48158
  "path": ["shadow", "inset"],
48088
48159
  "value": "inset 0px 1px 0px 0px #0104093d",
48089
- "type": "shadow"
48160
+ "type": "shadow",
48161
+ "description": "Inset shadow for recessed elements"
48090
48162
  },
48091
48163
  "shadow-resting-medium": {
48092
48164
  "key": "{shadow.resting.medium}",
@@ -48119,6 +48191,10 @@
48119
48191
  "isSource": true,
48120
48192
  "$type": "shadow"
48121
48193
  }
48194
+ },
48195
+ "org.primer.llm": {
48196
+ "usage": ["card", "panel", "elevated-surface", "elevated-sidebar"],
48197
+ "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."
48122
48198
  }
48123
48199
  },
48124
48200
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48143,6 +48219,7 @@
48143
48219
  }
48144
48220
  ],
48145
48221
  "$type": "shadow",
48222
+ "$description": "Medium resting shadow for cards and elevated surfaces",
48146
48223
  "$extensions": {
48147
48224
  "org.primer.figma": {
48148
48225
  "collection": "mode",
@@ -48172,6 +48249,10 @@
48172
48249
  "isSource": true,
48173
48250
  "$type": "shadow"
48174
48251
  }
48252
+ },
48253
+ "org.primer.llm": {
48254
+ "usage": ["card", "panel", "elevated-surface", "elevated-sidebar"],
48255
+ "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."
48175
48256
  }
48176
48257
  },
48177
48258
  "key": "{shadow.resting.medium}"
@@ -48180,7 +48261,8 @@
48180
48261
  "attributes": {},
48181
48262
  "path": ["shadow", "resting", "medium"],
48182
48263
  "value": "0px 1px 1px 0px #01040966, 0px 3px 6px 0px #010409cc",
48183
- "type": "shadow"
48264
+ "type": "shadow",
48265
+ "description": "Medium resting shadow for cards and elevated surfaces"
48184
48266
  },
48185
48267
  "shadow-resting-small": {
48186
48268
  "key": "{shadow.resting.small}",
@@ -48215,6 +48297,10 @@
48215
48297
  "isSource": true,
48216
48298
  "$type": "shadow"
48217
48299
  }
48300
+ },
48301
+ "org.primer.llm": {
48302
+ "usage": ["button", "interactive-card", "clickable-element"],
48303
+ "rules": "Use for buttons and small interactive elements at rest. Provides subtle depth and clickable affordance. RECOMMENDED for default button shadows."
48218
48304
  }
48219
48305
  },
48220
48306
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48241,6 +48327,7 @@
48241
48327
  }
48242
48328
  ],
48243
48329
  "$type": "shadow",
48330
+ "$description": "Small resting shadow for buttons and interactive elements",
48244
48331
  "$extensions": {
48245
48332
  "org.primer.figma": {
48246
48333
  "collection": "mode",
@@ -48272,6 +48359,10 @@
48272
48359
  "isSource": true,
48273
48360
  "$type": "shadow"
48274
48361
  }
48362
+ },
48363
+ "org.primer.llm": {
48364
+ "usage": ["button", "interactive-card", "clickable-element"],
48365
+ "rules": "Use for buttons and small interactive elements at rest. Provides subtle depth and clickable affordance. RECOMMENDED for default button shadows."
48275
48366
  }
48276
48367
  },
48277
48368
  "key": "{shadow.resting.small}"
@@ -48280,7 +48371,8 @@
48280
48371
  "attributes": {},
48281
48372
  "path": ["shadow", "resting", "small"],
48282
48373
  "value": "0px 1px 1px 0px #01040999, 0px 1px 3px 0px #01040999",
48283
- "type": "shadow"
48374
+ "type": "shadow",
48375
+ "description": "Small resting shadow for buttons and interactive elements"
48284
48376
  },
48285
48377
  "shadow-resting-xsmall": {
48286
48378
  "key": "{shadow.resting.xsmall}",
@@ -48304,6 +48396,10 @@
48304
48396
  "isSource": true,
48305
48397
  "$type": "shadow"
48306
48398
  }
48399
+ },
48400
+ "org.primer.llm": {
48401
+ "usage": ["badge", "chip", "small-card", "subtle-elevation"],
48402
+ "rules": "Use for very subtle elevation on small elements. Provides minimal lift from surface. Do NOT use for interactive elements needing clear affordance."
48307
48403
  }
48308
48404
  },
48309
48405
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48319,6 +48415,7 @@
48319
48415
  "inset": false
48320
48416
  },
48321
48417
  "$type": "shadow",
48418
+ "$description": "Extra small resting shadow for minimal elevation",
48322
48419
  "$extensions": {
48323
48420
  "org.primer.figma": {
48324
48421
  "collection": "mode",
@@ -48339,6 +48436,10 @@
48339
48436
  "isSource": true,
48340
48437
  "$type": "shadow"
48341
48438
  }
48439
+ },
48440
+ "org.primer.llm": {
48441
+ "usage": ["badge", "chip", "small-card", "subtle-elevation"],
48442
+ "rules": "Use for very subtle elevation on small elements. Provides minimal lift from surface. Do NOT use for interactive elements needing clear affordance."
48342
48443
  }
48343
48444
  },
48344
48445
  "key": "{shadow.resting.xsmall}"
@@ -48347,7 +48448,8 @@
48347
48448
  "attributes": {},
48348
48449
  "path": ["shadow", "resting", "xsmall"],
48349
48450
  "value": "0px 1px 1px 0px #010409cc",
48350
- "type": "shadow"
48451
+ "type": "shadow",
48452
+ "description": "Extra small resting shadow for minimal elevation"
48351
48453
  },
48352
48454
  "sideNav-bgColor-selected": {
48353
48455
  "key": "{sideNav.bgColor.selected}",