@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}"
@@ -2451,6 +2459,10 @@
2451
2459
  },
2452
2460
  "org.primer.overrides": {
2453
2461
  "dark": "#ffffff"
2462
+ },
2463
+ "org.primer.llm": {
2464
+ "doNotUse": true,
2465
+ "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."
2454
2466
  }
2455
2467
  },
2456
2468
  "filePath": "src/tokens/functional/color/bgColor.json5",
@@ -2467,6 +2479,10 @@
2467
2479
  },
2468
2480
  "org.primer.overrides": {
2469
2481
  "dark": "{base.color.neutral.13}"
2482
+ },
2483
+ "org.primer.llm": {
2484
+ "doNotUse": true,
2485
+ "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."
2470
2486
  }
2471
2487
  },
2472
2488
  "key": "{bgColor.white}"
@@ -37239,6 +37255,10 @@
37239
37255
  },
37240
37256
  "org.primer.overrides": {
37241
37257
  "dark": "#010409"
37258
+ },
37259
+ "org.primer.llm": {
37260
+ "doNotUse": true,
37261
+ "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."
37242
37262
  }
37243
37263
  },
37244
37264
  "filePath": "src/tokens/functional/color/fgColor.json5",
@@ -37255,6 +37275,10 @@
37255
37275
  },
37256
37276
  "org.primer.overrides": {
37257
37277
  "dark": "{base.color.neutral.0}"
37278
+ },
37279
+ "org.primer.llm": {
37280
+ "doNotUse": true,
37281
+ "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."
37258
37282
  }
37259
37283
  },
37260
37284
  "key": "{fgColor.black}"
@@ -38228,6 +38252,10 @@
38228
38252
  },
38229
38253
  "org.primer.overrides": {
38230
38254
  "dark": "#ffffff"
38255
+ },
38256
+ "org.primer.llm": {
38257
+ "doNotUse": true,
38258
+ "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."
38231
38259
  }
38232
38260
  },
38233
38261
  "filePath": "src/tokens/functional/color/fgColor.json5",
@@ -38244,6 +38272,10 @@
38244
38272
  },
38245
38273
  "org.primer.overrides": {
38246
38274
  "dark": "{base.color.neutral.13}"
38275
+ },
38276
+ "org.primer.llm": {
38277
+ "doNotUse": true,
38278
+ "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."
38247
38279
  }
38248
38280
  },
38249
38281
  "key": "{fgColor.white}"
@@ -47561,6 +47593,10 @@
47561
47593
  "isSource": true,
47562
47594
  "$type": "shadow"
47563
47595
  }
47596
+ },
47597
+ "org.primer.llm": {
47598
+ "usage": ["legacy-component", "backward-compatibility"],
47599
+ "rules": "DEPRECATED: Use shadow-floating-small instead. Only use for maintaining backward compatibility with existing implementations."
47564
47600
  }
47565
47601
  },
47566
47602
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -47585,6 +47621,7 @@
47585
47621
  }
47586
47622
  ],
47587
47623
  "$type": "shadow",
47624
+ "$description": "Legacy floating shadow for backward compatibility",
47588
47625
  "$extensions": {
47589
47626
  "org.primer.figma": {},
47590
47627
  "org.primer.overrides": {
@@ -47611,6 +47648,10 @@
47611
47648
  "isSource": true,
47612
47649
  "$type": "shadow"
47613
47650
  }
47651
+ },
47652
+ "org.primer.llm": {
47653
+ "usage": ["legacy-component", "backward-compatibility"],
47654
+ "rules": "DEPRECATED: Use shadow-floating-small instead. Only use for maintaining backward compatibility with existing implementations."
47614
47655
  }
47615
47656
  },
47616
47657
  "key": "{shadow.floating.legacy}"
@@ -47619,7 +47660,8 @@
47619
47660
  "attributes": {},
47620
47661
  "path": ["shadow", "floating", "legacy"],
47621
47662
  "value": "0px 6px 12px -3px #01040966, 0px 6px 18px 0px #01040966",
47622
- "type": "shadow"
47663
+ "type": "shadow",
47664
+ "description": "Legacy floating shadow for backward compatibility"
47623
47665
  },
47624
47666
  "shadow-floating-medium": {
47625
47667
  "key": "{shadow.floating.medium}",
@@ -47676,6 +47718,10 @@
47676
47718
  "isSource": true,
47677
47719
  "$type": "shadow"
47678
47720
  }
47721
+ },
47722
+ "org.primer.llm": {
47723
+ "usage": ["popover", "action-menu", "select-panel", "autocomplete"],
47724
+ "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."
47679
47725
  }
47680
47726
  },
47681
47727
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -47724,6 +47770,7 @@
47724
47770
  }
47725
47771
  ],
47726
47772
  "$type": "shadow",
47773
+ "$description": "Medium floating shadow for popovers and action menus",
47727
47774
  "$extensions": {
47728
47775
  "org.primer.figma": {
47729
47776
  "collection": "mode",
@@ -47777,6 +47824,10 @@
47777
47824
  "isSource": true,
47778
47825
  "$type": "shadow"
47779
47826
  }
47827
+ },
47828
+ "org.primer.llm": {
47829
+ "usage": ["popover", "action-menu", "select-panel", "autocomplete"],
47830
+ "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."
47780
47831
  }
47781
47832
  },
47782
47833
  "key": "{shadow.floating.medium}"
@@ -47785,7 +47836,8 @@
47785
47836
  "attributes": {},
47786
47837
  "path": ["shadow", "floating", "medium"],
47787
47838
  "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",
47788
- "type": "shadow"
47839
+ "type": "shadow",
47840
+ "description": "Medium floating shadow for popovers and action menus"
47789
47841
  },
47790
47842
  "shadow-floating-small": {
47791
47843
  "key": "{shadow.floating.small}",
@@ -47946,6 +47998,10 @@
47946
47998
  "isSource": true,
47947
47999
  "$type": "shadow"
47948
48000
  }
48001
+ },
48002
+ "org.primer.llm": {
48003
+ "usage": ["full-screen-overlay", "side-sheet", "drawer", "large-modal"],
48004
+ "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."
47949
48005
  }
47950
48006
  },
47951
48007
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -47970,6 +48026,7 @@
47970
48026
  }
47971
48027
  ],
47972
48028
  "$type": "shadow",
48029
+ "$description": "Extra large floating shadow for full-screen overlays and sheets",
47973
48030
  "$extensions": {
47974
48031
  "org.primer.figma": {
47975
48032
  "collection": "mode",
@@ -47999,6 +48056,10 @@
47999
48056
  "isSource": true,
48000
48057
  "$type": "shadow"
48001
48058
  }
48059
+ },
48060
+ "org.primer.llm": {
48061
+ "usage": ["full-screen-overlay", "side-sheet", "drawer", "large-modal"],
48062
+ "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."
48002
48063
  }
48003
48064
  },
48004
48065
  "key": "{shadow.floating.xlarge}"
@@ -48007,7 +48068,8 @@
48007
48068
  "attributes": {},
48008
48069
  "path": ["shadow", "floating", "xlarge"],
48009
48070
  "value": "0px 0px 0px 1px #3d444d, 0px 32px 64px 0px #010409",
48010
- "type": "shadow"
48071
+ "type": "shadow",
48072
+ "description": "Extra large floating shadow for full-screen overlays and sheets"
48011
48073
  },
48012
48074
  "shadow-inset": {
48013
48075
  "key": "{shadow.inset}",
@@ -48031,6 +48093,10 @@
48031
48093
  "isSource": true,
48032
48094
  "$type": "shadow"
48033
48095
  }
48096
+ },
48097
+ "org.primer.llm": {
48098
+ "usage": ["input-field", "pressed-button", "recessed-area", "well"],
48099
+ "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."
48034
48100
  }
48035
48101
  },
48036
48102
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48046,6 +48112,7 @@
48046
48112
  "inset": true
48047
48113
  },
48048
48114
  "$type": "shadow",
48115
+ "$description": "Inset shadow for recessed elements",
48049
48116
  "$extensions": {
48050
48117
  "org.primer.figma": {
48051
48118
  "collection": "mode",
@@ -48066,6 +48133,10 @@
48066
48133
  "isSource": true,
48067
48134
  "$type": "shadow"
48068
48135
  }
48136
+ },
48137
+ "org.primer.llm": {
48138
+ "usage": ["input-field", "pressed-button", "recessed-area", "well"],
48139
+ "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."
48069
48140
  }
48070
48141
  },
48071
48142
  "key": "{shadow.inset}"
@@ -48074,7 +48145,8 @@
48074
48145
  "attributes": {},
48075
48146
  "path": ["shadow", "inset"],
48076
48147
  "value": "inset 0px 1px 0px 0px #0104093d",
48077
- "type": "shadow"
48148
+ "type": "shadow",
48149
+ "description": "Inset shadow for recessed elements"
48078
48150
  },
48079
48151
  "shadow-resting-medium": {
48080
48152
  "key": "{shadow.resting.medium}",
@@ -48107,6 +48179,10 @@
48107
48179
  "isSource": true,
48108
48180
  "$type": "shadow"
48109
48181
  }
48182
+ },
48183
+ "org.primer.llm": {
48184
+ "usage": ["card", "panel", "elevated-surface", "elevated-sidebar"],
48185
+ "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."
48110
48186
  }
48111
48187
  },
48112
48188
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48131,6 +48207,7 @@
48131
48207
  }
48132
48208
  ],
48133
48209
  "$type": "shadow",
48210
+ "$description": "Medium resting shadow for cards and elevated surfaces",
48134
48211
  "$extensions": {
48135
48212
  "org.primer.figma": {
48136
48213
  "collection": "mode",
@@ -48160,6 +48237,10 @@
48160
48237
  "isSource": true,
48161
48238
  "$type": "shadow"
48162
48239
  }
48240
+ },
48241
+ "org.primer.llm": {
48242
+ "usage": ["card", "panel", "elevated-surface", "elevated-sidebar"],
48243
+ "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."
48163
48244
  }
48164
48245
  },
48165
48246
  "key": "{shadow.resting.medium}"
@@ -48168,7 +48249,8 @@
48168
48249
  "attributes": {},
48169
48250
  "path": ["shadow", "resting", "medium"],
48170
48251
  "value": "0px 1px 1px 0px #01040966, 0px 3px 6px 0px #010409cc",
48171
- "type": "shadow"
48252
+ "type": "shadow",
48253
+ "description": "Medium resting shadow for cards and elevated surfaces"
48172
48254
  },
48173
48255
  "shadow-resting-small": {
48174
48256
  "key": "{shadow.resting.small}",
@@ -48203,6 +48285,10 @@
48203
48285
  "isSource": true,
48204
48286
  "$type": "shadow"
48205
48287
  }
48288
+ },
48289
+ "org.primer.llm": {
48290
+ "usage": ["button", "interactive-card", "clickable-element"],
48291
+ "rules": "Use for buttons and small interactive elements at rest. Provides subtle depth and clickable affordance. RECOMMENDED for default button shadows."
48206
48292
  }
48207
48293
  },
48208
48294
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48229,6 +48315,7 @@
48229
48315
  }
48230
48316
  ],
48231
48317
  "$type": "shadow",
48318
+ "$description": "Small resting shadow for buttons and interactive elements",
48232
48319
  "$extensions": {
48233
48320
  "org.primer.figma": {
48234
48321
  "collection": "mode",
@@ -48260,6 +48347,10 @@
48260
48347
  "isSource": true,
48261
48348
  "$type": "shadow"
48262
48349
  }
48350
+ },
48351
+ "org.primer.llm": {
48352
+ "usage": ["button", "interactive-card", "clickable-element"],
48353
+ "rules": "Use for buttons and small interactive elements at rest. Provides subtle depth and clickable affordance. RECOMMENDED for default button shadows."
48263
48354
  }
48264
48355
  },
48265
48356
  "key": "{shadow.resting.small}"
@@ -48268,7 +48359,8 @@
48268
48359
  "attributes": {},
48269
48360
  "path": ["shadow", "resting", "small"],
48270
48361
  "value": "0px 1px 1px 0px #01040999, 0px 1px 3px 0px #01040999",
48271
- "type": "shadow"
48362
+ "type": "shadow",
48363
+ "description": "Small resting shadow for buttons and interactive elements"
48272
48364
  },
48273
48365
  "shadow-resting-xsmall": {
48274
48366
  "key": "{shadow.resting.xsmall}",
@@ -48292,6 +48384,10 @@
48292
48384
  "isSource": true,
48293
48385
  "$type": "shadow"
48294
48386
  }
48387
+ },
48388
+ "org.primer.llm": {
48389
+ "usage": ["badge", "chip", "small-card", "subtle-elevation"],
48390
+ "rules": "Use for very subtle elevation on small elements. Provides minimal lift from surface. Do NOT use for interactive elements needing clear affordance."
48295
48391
  }
48296
48392
  },
48297
48393
  "filePath": "src/tokens/functional/shadow/shadow.json5",
@@ -48307,6 +48403,7 @@
48307
48403
  "inset": false
48308
48404
  },
48309
48405
  "$type": "shadow",
48406
+ "$description": "Extra small resting shadow for minimal elevation",
48310
48407
  "$extensions": {
48311
48408
  "org.primer.figma": {
48312
48409
  "collection": "mode",
@@ -48327,6 +48424,10 @@
48327
48424
  "isSource": true,
48328
48425
  "$type": "shadow"
48329
48426
  }
48427
+ },
48428
+ "org.primer.llm": {
48429
+ "usage": ["badge", "chip", "small-card", "subtle-elevation"],
48430
+ "rules": "Use for very subtle elevation on small elements. Provides minimal lift from surface. Do NOT use for interactive elements needing clear affordance."
48330
48431
  }
48331
48432
  },
48332
48433
  "key": "{shadow.resting.xsmall}"
@@ -48335,7 +48436,8 @@
48335
48436
  "attributes": {},
48336
48437
  "path": ["shadow", "resting", "xsmall"],
48337
48438
  "value": "0px 1px 1px 0px #010409cc",
48338
- "type": "shadow"
48439
+ "type": "shadow",
48440
+ "description": "Extra small resting shadow for minimal elevation"
48339
48441
  },
48340
48442
  "sideNav-bgColor-selected": {
48341
48443
  "key": "{sideNav.bgColor.selected}",