@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}"
@@ -37253,6 +37269,10 @@
37253
37269
  },
37254
37270
  "org.primer.overrides": {
37255
37271
  "dark": "#010409"
37272
+ },
37273
+ "org.primer.llm": {
37274
+ "doNotUse": true,
37275
+ "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."
37256
37276
  }
37257
37277
  },
37258
37278
  "filePath": "src/tokens/functional/color/fgColor.json5",
@@ -37269,6 +37289,10 @@
37269
37289
  },
37270
37290
  "org.primer.overrides": {
37271
37291
  "dark": "{base.color.neutral.0}"
37292
+ },
37293
+ "org.primer.llm": {
37294
+ "doNotUse": true,
37295
+ "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."
37272
37296
  }
37273
37297
  },
37274
37298
  "key": "{fgColor.black}"
@@ -38242,6 +38266,10 @@
38242
38266
  },
38243
38267
  "org.primer.overrides": {
38244
38268
  "dark": "#ffffff"
38269
+ },
38270
+ "org.primer.llm": {
38271
+ "doNotUse": true,
38272
+ "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."
38245
38273
  }
38246
38274
  },
38247
38275
  "filePath": "src/tokens/functional/color/fgColor.json5",
@@ -38258,6 +38286,10 @@
38258
38286
  },
38259
38287
  "org.primer.overrides": {
38260
38288
  "dark": "{base.color.neutral.13}"
38289
+ },
38290
+ "org.primer.llm": {
38291
+ "doNotUse": true,
38292
+ "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."
38261
38293
  }
38262
38294
  },
38263
38295
  "key": "{fgColor.white}"
@@ -47575,6 +47607,10 @@
47575
47607
  "isSource": true,
47576
47608
  "$type": "shadow"
47577
47609
  }
47610
+ },
47611
+ "org.primer.llm": {
47612
+ "usage": ["legacy-component", "backward-compatibility"],
47613
+ "rules": "DEPRECATED: Use shadow-floating-small instead. Only use for maintaining backward compatibility with existing implementations."
47578
47614
  }
47579
47615
  },
47580
47616
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -47599,6 +47635,7 @@
47599
47635
  }
47600
47636
  ],
47601
47637
  "$type": "shadow",
47638
+ "$description": "Legacy floating shadow for backward compatibility",
47602
47639
  "$extensions": {
47603
47640
  "org.primer.figma": {},
47604
47641
  "org.primer.overrides": {
@@ -47625,6 +47662,10 @@
47625
47662
  "isSource": true,
47626
47663
  "$type": "shadow"
47627
47664
  }
47665
+ },
47666
+ "org.primer.llm": {
47667
+ "usage": ["legacy-component", "backward-compatibility"],
47668
+ "rules": "DEPRECATED: Use shadow-floating-small instead. Only use for maintaining backward compatibility with existing implementations."
47628
47669
  }
47629
47670
  },
47630
47671
  "key": "{shadow.floating.legacy}"
@@ -47633,7 +47674,8 @@
47633
47674
  "attributes": {},
47634
47675
  "path": ["shadow", "floating", "legacy"],
47635
47676
  "value": "0px 6px 12px -3px #01040966, 0px 6px 18px 0px #01040966",
47636
- "type": "shadow"
47677
+ "type": "shadow",
47678
+ "description": "Legacy floating shadow for backward compatibility"
47637
47679
  },
47638
47680
  "shadow-floating-medium": {
47639
47681
  "key": "{shadow.floating.medium}",
@@ -47690,6 +47732,10 @@
47690
47732
  "isSource": true,
47691
47733
  "$type": "shadow"
47692
47734
  }
47735
+ },
47736
+ "org.primer.llm": {
47737
+ "usage": ["popover", "action-menu", "select-panel", "autocomplete"],
47738
+ "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."
47693
47739
  }
47694
47740
  },
47695
47741
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -47738,6 +47784,7 @@
47738
47784
  }
47739
47785
  ],
47740
47786
  "$type": "shadow",
47787
+ "$description": "Medium floating shadow for popovers and action menus",
47741
47788
  "$extensions": {
47742
47789
  "org.primer.figma": {
47743
47790
  "collection": "mode",
@@ -47791,6 +47838,10 @@
47791
47838
  "isSource": true,
47792
47839
  "$type": "shadow"
47793
47840
  }
47841
+ },
47842
+ "org.primer.llm": {
47843
+ "usage": ["popover", "action-menu", "select-panel", "autocomplete"],
47844
+ "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."
47794
47845
  }
47795
47846
  },
47796
47847
  "key": "{shadow.floating.medium}"
@@ -47799,7 +47850,8 @@
47799
47850
  "attributes": {},
47800
47851
  "path": ["shadow", "floating", "medium"],
47801
47852
  "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",
47802
- "type": "shadow"
47853
+ "type": "shadow",
47854
+ "description": "Medium floating shadow for popovers and action menus"
47803
47855
  },
47804
47856
  "shadow-floating-small": {
47805
47857
  "key": "{shadow.floating.small}",
@@ -47960,6 +48012,10 @@
47960
48012
  "isSource": true,
47961
48013
  "$type": "shadow"
47962
48014
  }
48015
+ },
48016
+ "org.primer.llm": {
48017
+ "usage": ["full-screen-overlay", "side-sheet", "drawer", "large-modal"],
48018
+ "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."
47963
48019
  }
47964
48020
  },
47965
48021
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -47984,6 +48040,7 @@
47984
48040
  }
47985
48041
  ],
47986
48042
  "$type": "shadow",
48043
+ "$description": "Extra large floating shadow for full-screen overlays and sheets",
47987
48044
  "$extensions": {
47988
48045
  "org.primer.figma": {
47989
48046
  "collection": "mode",
@@ -48013,6 +48070,10 @@
48013
48070
  "isSource": true,
48014
48071
  "$type": "shadow"
48015
48072
  }
48073
+ },
48074
+ "org.primer.llm": {
48075
+ "usage": ["full-screen-overlay", "side-sheet", "drawer", "large-modal"],
48076
+ "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."
48016
48077
  }
48017
48078
  },
48018
48079
  "key": "{shadow.floating.xlarge}"
@@ -48021,7 +48082,8 @@
48021
48082
  "attributes": {},
48022
48083
  "path": ["shadow", "floating", "xlarge"],
48023
48084
  "value": "0px 0px 0px 1px #3d444d, 0px 32px 64px 0px #010409",
48024
- "type": "shadow"
48085
+ "type": "shadow",
48086
+ "description": "Extra large floating shadow for full-screen overlays and sheets"
48025
48087
  },
48026
48088
  "shadow-inset": {
48027
48089
  "key": "{shadow.inset}",
@@ -48045,6 +48107,10 @@
48045
48107
  "isSource": true,
48046
48108
  "$type": "shadow"
48047
48109
  }
48110
+ },
48111
+ "org.primer.llm": {
48112
+ "usage": ["input-field", "pressed-button", "recessed-area", "well"],
48113
+ "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."
48048
48114
  }
48049
48115
  },
48050
48116
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48060,6 +48126,7 @@
48060
48126
  "inset": true
48061
48127
  },
48062
48128
  "$type": "shadow",
48129
+ "$description": "Inset shadow for recessed elements",
48063
48130
  "$extensions": {
48064
48131
  "org.primer.figma": {
48065
48132
  "collection": "mode",
@@ -48080,6 +48147,10 @@
48080
48147
  "isSource": true,
48081
48148
  "$type": "shadow"
48082
48149
  }
48150
+ },
48151
+ "org.primer.llm": {
48152
+ "usage": ["input-field", "pressed-button", "recessed-area", "well"],
48153
+ "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."
48083
48154
  }
48084
48155
  },
48085
48156
  "key": "{shadow.inset}"
@@ -48088,7 +48159,8 @@
48088
48159
  "attributes": {},
48089
48160
  "path": ["shadow", "inset"],
48090
48161
  "value": "inset 0px 1px 0px 0px #0104093d",
48091
- "type": "shadow"
48162
+ "type": "shadow",
48163
+ "description": "Inset shadow for recessed elements"
48092
48164
  },
48093
48165
  "shadow-resting-medium": {
48094
48166
  "key": "{shadow.resting.medium}",
@@ -48121,6 +48193,10 @@
48121
48193
  "isSource": true,
48122
48194
  "$type": "shadow"
48123
48195
  }
48196
+ },
48197
+ "org.primer.llm": {
48198
+ "usage": ["card", "panel", "elevated-surface", "elevated-sidebar"],
48199
+ "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."
48124
48200
  }
48125
48201
  },
48126
48202
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48145,6 +48221,7 @@
48145
48221
  }
48146
48222
  ],
48147
48223
  "$type": "shadow",
48224
+ "$description": "Medium resting shadow for cards and elevated surfaces",
48148
48225
  "$extensions": {
48149
48226
  "org.primer.figma": {
48150
48227
  "collection": "mode",
@@ -48174,6 +48251,10 @@
48174
48251
  "isSource": true,
48175
48252
  "$type": "shadow"
48176
48253
  }
48254
+ },
48255
+ "org.primer.llm": {
48256
+ "usage": ["card", "panel", "elevated-surface", "elevated-sidebar"],
48257
+ "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."
48177
48258
  }
48178
48259
  },
48179
48260
  "key": "{shadow.resting.medium}"
@@ -48182,7 +48263,8 @@
48182
48263
  "attributes": {},
48183
48264
  "path": ["shadow", "resting", "medium"],
48184
48265
  "value": "0px 1px 1px 0px #01040966, 0px 3px 6px 0px #010409cc",
48185
- "type": "shadow"
48266
+ "type": "shadow",
48267
+ "description": "Medium resting shadow for cards and elevated surfaces"
48186
48268
  },
48187
48269
  "shadow-resting-small": {
48188
48270
  "key": "{shadow.resting.small}",
@@ -48217,6 +48299,10 @@
48217
48299
  "isSource": true,
48218
48300
  "$type": "shadow"
48219
48301
  }
48302
+ },
48303
+ "org.primer.llm": {
48304
+ "usage": ["button", "interactive-card", "clickable-element"],
48305
+ "rules": "Use for buttons and small interactive elements at rest. Provides subtle depth and clickable affordance. RECOMMENDED for default button shadows."
48220
48306
  }
48221
48307
  },
48222
48308
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48243,6 +48329,7 @@
48243
48329
  }
48244
48330
  ],
48245
48331
  "$type": "shadow",
48332
+ "$description": "Small resting shadow for buttons and interactive elements",
48246
48333
  "$extensions": {
48247
48334
  "org.primer.figma": {
48248
48335
  "collection": "mode",
@@ -48274,6 +48361,10 @@
48274
48361
  "isSource": true,
48275
48362
  "$type": "shadow"
48276
48363
  }
48364
+ },
48365
+ "org.primer.llm": {
48366
+ "usage": ["button", "interactive-card", "clickable-element"],
48367
+ "rules": "Use for buttons and small interactive elements at rest. Provides subtle depth and clickable affordance. RECOMMENDED for default button shadows."
48277
48368
  }
48278
48369
  },
48279
48370
  "key": "{shadow.resting.small}"
@@ -48282,7 +48373,8 @@
48282
48373
  "attributes": {},
48283
48374
  "path": ["shadow", "resting", "small"],
48284
48375
  "value": "0px 1px 1px 0px #01040999, 0px 1px 3px 0px #01040999",
48285
- "type": "shadow"
48376
+ "type": "shadow",
48377
+ "description": "Small resting shadow for buttons and interactive elements"
48286
48378
  },
48287
48379
  "shadow-resting-xsmall": {
48288
48380
  "key": "{shadow.resting.xsmall}",
@@ -48306,6 +48398,10 @@
48306
48398
  "isSource": true,
48307
48399
  "$type": "shadow"
48308
48400
  }
48401
+ },
48402
+ "org.primer.llm": {
48403
+ "usage": ["badge", "chip", "small-card", "subtle-elevation"],
48404
+ "rules": "Use for very subtle elevation on small elements. Provides minimal lift from surface. Do NOT use for interactive elements needing clear affordance."
48309
48405
  }
48310
48406
  },
48311
48407
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48321,6 +48417,7 @@
48321
48417
  "inset": false
48322
48418
  },
48323
48419
  "$type": "shadow",
48420
+ "$description": "Extra small resting shadow for minimal elevation",
48324
48421
  "$extensions": {
48325
48422
  "org.primer.figma": {
48326
48423
  "collection": "mode",
@@ -48341,6 +48438,10 @@
48341
48438
  "isSource": true,
48342
48439
  "$type": "shadow"
48343
48440
  }
48441
+ },
48442
+ "org.primer.llm": {
48443
+ "usage": ["badge", "chip", "small-card", "subtle-elevation"],
48444
+ "rules": "Use for very subtle elevation on small elements. Provides minimal lift from surface. Do NOT use for interactive elements needing clear affordance."
48344
48445
  }
48345
48446
  },
48346
48447
  "key": "{shadow.resting.xsmall}"
@@ -48349,7 +48450,8 @@
48349
48450
  "attributes": {},
48350
48451
  "path": ["shadow", "resting", "xsmall"],
48351
48452
  "value": "0px 1px 1px 0px #010409cc",
48352
- "type": "shadow"
48453
+ "type": "shadow",
48454
+ "description": "Extra small resting shadow for minimal elevation"
48353
48455
  },
48354
48456
  "sideNav-bgColor-selected": {
48355
48457
  "key": "{sideNav.bgColor.selected}",