@primer/primitives 11.4.1-rc.edbe0e39 → 11.5.0-rc.14eaeb12

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 (138) hide show
  1. package/DESIGN_TOKENS_SPEC.md +14 -5
  2. package/dist/build/schemas/borderToken.d.ts +45 -3
  3. package/dist/build/schemas/borderToken.js +2 -1
  4. package/dist/build/schemas/colorToken.d.ts +639 -30
  5. package/dist/build/schemas/colorToken.js +3 -2
  6. package/dist/build/schemas/colorW3cValue.d.ts +28 -0
  7. package/dist/build/schemas/colorW3cValue.js +42 -0
  8. package/dist/build/schemas/cubicBezierToken.d.ts +1 -1
  9. package/dist/build/schemas/dimensionToken.d.ts +1 -1
  10. package/dist/build/schemas/durationToken.d.ts +1 -1
  11. package/dist/build/schemas/fontFamilyToken.d.ts +1 -1
  12. package/dist/build/schemas/fontWeightToken.d.ts +1 -1
  13. package/dist/build/schemas/gradientToken.d.ts +23 -2
  14. package/dist/build/schemas/gradientToken.js +2 -1
  15. package/dist/build/schemas/numberToken.d.ts +1 -1
  16. package/dist/build/schemas/shadowToken.d.ts +1079 -43
  17. package/dist/build/schemas/shadowToken.js +8 -2
  18. package/dist/build/schemas/stringToken.d.ts +1 -1
  19. package/dist/build/schemas/tokenType.d.ts +1 -1
  20. package/dist/build/schemas/transitionToken.d.ts +1 -1
  21. package/dist/build/schemas/typographyToken.d.ts +1 -1
  22. package/dist/build/schemas/viewportRangeToken.d.ts +1 -1
  23. package/dist/build/transformers/borderToCss.js +3 -1
  24. package/dist/build/transformers/colorAlphaToCss.js +6 -3
  25. package/dist/build/transformers/colorToHex.js +5 -2
  26. package/dist/build/transformers/colorToRgbAlpha.js +5 -2
  27. package/dist/build/transformers/colorToRgbaFloat.js +5 -0
  28. package/dist/build/transformers/durationToCss.js +4 -4
  29. package/dist/build/transformers/gradientToCss.js +2 -1
  30. package/dist/build/transformers/shadowToCss.js +4 -1
  31. package/dist/build/transformers/utilities/normalizeColorValue.d.ts +23 -0
  32. package/dist/build/transformers/utilities/normalizeColorValue.js +74 -0
  33. package/dist/build/types/borderTokenValue.d.ts +2 -1
  34. package/dist/build/types/shadowTokenValue.d.ts +2 -1
  35. package/dist/css/base/motion/motion.css +1 -1
  36. package/dist/css/functional/size/radius.css +1 -1
  37. package/dist/css/functional/size/size-coarse.css +1 -0
  38. package/dist/css/functional/size/size-fine.css +1 -0
  39. package/dist/css/functional/size/size.css +5 -0
  40. package/dist/css/functional/themes/dark-colorblind-high-contrast.css +22 -10
  41. package/dist/css/functional/themes/dark-colorblind.css +22 -10
  42. package/dist/css/functional/themes/dark-dimmed-high-contrast.css +22 -10
  43. package/dist/css/functional/themes/dark-dimmed.css +22 -10
  44. package/dist/css/functional/themes/dark-high-contrast.css +22 -10
  45. package/dist/css/functional/themes/dark-tritanopia-high-contrast.css +22 -10
  46. package/dist/css/functional/themes/dark-tritanopia.css +22 -10
  47. package/dist/css/functional/themes/dark.css +22 -10
  48. package/dist/css/functional/themes/light-colorblind-high-contrast.css +14 -2
  49. package/dist/css/functional/themes/light-colorblind.css +20 -8
  50. package/dist/css/functional/themes/light-high-contrast.css +14 -2
  51. package/dist/css/functional/themes/light-tritanopia-high-contrast.css +14 -2
  52. package/dist/css/functional/themes/light-tritanopia.css +20 -8
  53. package/dist/css/functional/themes/light.css +20 -8
  54. package/dist/docs/functional/size/radius.json +2 -2
  55. package/dist/docs/functional/size/size-coarse.json +55 -2
  56. package/dist/docs/functional/size/size-fine.json +55 -2
  57. package/dist/docs/functional/size/size.json +135 -0
  58. package/dist/docs/functional/themes/dark-colorblind-high-contrast.json +2502 -372
  59. package/dist/docs/functional/themes/dark-colorblind.json +2492 -370
  60. package/dist/docs/functional/themes/dark-dimmed-high-contrast.json +2355 -205
  61. package/dist/docs/functional/themes/dark-dimmed.json +2382 -212
  62. package/dist/docs/functional/themes/dark-high-contrast.json +2507 -373
  63. package/dist/docs/functional/themes/dark-tritanopia-high-contrast.json +2517 -375
  64. package/dist/docs/functional/themes/dark-tritanopia.json +2499 -353
  65. package/dist/docs/functional/themes/dark.json +2501 -371
  66. package/dist/docs/functional/themes/light-colorblind-high-contrast.json +2354 -204
  67. package/dist/docs/functional/themes/light-colorblind.json +2344 -202
  68. package/dist/docs/functional/themes/light-high-contrast.json +2359 -205
  69. package/dist/docs/functional/themes/light-tritanopia-high-contrast.json +2359 -205
  70. package/dist/docs/functional/themes/light-tritanopia.json +2354 -204
  71. package/dist/docs/functional/themes/light.json +2359 -205
  72. package/dist/fallbacks/functional/size/size-coarse.json +2 -1
  73. package/dist/fallbacks/functional/size/size-fine.json +2 -1
  74. package/dist/fallbacks/functional/size/size.json +5 -0
  75. package/dist/figma/dimension/dimension.json +56 -1
  76. package/dist/figma/themes/dark-colorblind.json +49 -1
  77. package/dist/figma/themes/dark-dimmed.json +51 -3
  78. package/dist/figma/themes/dark-high-contrast.json +49 -1
  79. package/dist/figma/themes/dark-tritanopia.json +49 -1
  80. package/dist/figma/themes/dark.json +49 -1
  81. package/dist/figma/themes/light-colorblind.json +49 -1
  82. package/dist/figma/themes/light-high-contrast.json +49 -1
  83. package/dist/figma/themes/light-tritanopia.json +49 -1
  84. package/dist/figma/themes/light.json +49 -1
  85. package/dist/internalCss/dark-colorblind-high-contrast.css +22 -10
  86. package/dist/internalCss/dark-colorblind.css +22 -10
  87. package/dist/internalCss/dark-dimmed-high-contrast.css +22 -10
  88. package/dist/internalCss/dark-dimmed.css +22 -10
  89. package/dist/internalCss/dark-high-contrast.css +22 -10
  90. package/dist/internalCss/dark-tritanopia-high-contrast.css +22 -10
  91. package/dist/internalCss/dark-tritanopia.css +22 -10
  92. package/dist/internalCss/dark.css +22 -10
  93. package/dist/internalCss/light-colorblind-high-contrast.css +14 -2
  94. package/dist/internalCss/light-colorblind.css +20 -8
  95. package/dist/internalCss/light-high-contrast.css +14 -2
  96. package/dist/internalCss/light-tritanopia-high-contrast.css +14 -2
  97. package/dist/internalCss/light-tritanopia.css +20 -8
  98. package/dist/internalCss/light.css +20 -8
  99. package/dist/styleLint/functional/size/radius.json +2 -2
  100. package/dist/styleLint/functional/size/size-coarse.json +57 -4
  101. package/dist/styleLint/functional/size/size-fine.json +57 -4
  102. package/dist/styleLint/functional/size/size.json +135 -0
  103. package/dist/styleLint/functional/themes/dark-colorblind-high-contrast.json +2491 -349
  104. package/dist/styleLint/functional/themes/dark-colorblind.json +2481 -347
  105. package/dist/styleLint/functional/themes/dark-dimmed-high-contrast.json +2516 -354
  106. package/dist/styleLint/functional/themes/dark-dimmed.json +2543 -361
  107. package/dist/styleLint/functional/themes/dark-high-contrast.json +2496 -350
  108. package/dist/styleLint/functional/themes/dark-tritanopia-high-contrast.json +2506 -352
  109. package/dist/styleLint/functional/themes/dark-tritanopia.json +2511 -353
  110. package/dist/styleLint/functional/themes/dark.json +2491 -349
  111. package/dist/styleLint/functional/themes/light-colorblind-high-contrast.json +2514 -352
  112. package/dist/styleLint/functional/themes/light-colorblind.json +2505 -351
  113. package/dist/styleLint/functional/themes/light-high-contrast.json +2371 -205
  114. package/dist/styleLint/functional/themes/light-tritanopia-high-contrast.json +2519 -353
  115. package/dist/styleLint/functional/themes/light-tritanopia.json +2515 -353
  116. package/dist/styleLint/functional/themes/light.json +2520 -354
  117. package/package.json +4 -3
  118. package/src/tokens/base/color/dark/dark.dimmed.json5 +405 -81
  119. package/src/tokens/base/color/dark/dark.high-contrast.json5 +405 -81
  120. package/src/tokens/base/color/dark/dark.json5 +475 -95
  121. package/src/tokens/base/color/dark/display-dark.json5 +960 -192
  122. package/src/tokens/base/color/light/display-light.json5 +960 -192
  123. package/src/tokens/base/color/light/light.high-contrast.json5 +405 -81
  124. package/src/tokens/base/color/light/light.json5 +475 -95
  125. package/src/tokens/base/size/size.json5 +194 -194
  126. package/src/tokens/component/button.json5 +368 -65
  127. package/src/tokens/component/reactionButton.json5 +20 -4
  128. package/src/tokens/functional/border/border.json5 +29 -1
  129. package/src/tokens/functional/color/bgColor.json5 +10 -2
  130. package/src/tokens/functional/color/borderColor.json5 +8 -1
  131. package/src/tokens/functional/color/control.json5 +160 -32
  132. package/src/tokens/functional/color/fgColor.json5 +5 -1
  133. package/src/tokens/functional/color/syntax.json5 +10 -2
  134. package/src/tokens/functional/shadow/shadow.json5 +576 -0
  135. package/src/tokens/functional/size/radius.json5 +1 -1
  136. package/src/tokens/functional/size/size-coarse.json5 +15 -0
  137. package/src/tokens/functional/size/size-fine.json5 +15 -0
  138. package/src/tokens/functional/size/size.json5 +50 -0
@@ -688,6 +688,318 @@
688
688
  },
689
689
  ],
690
690
  },
691
+ 'light-high-contrast': {
692
+ $value: [
693
+ {
694
+ color: '{overlay.borderColor}',
695
+ alpha: 1,
696
+ offsetX: {
697
+ value: 0,
698
+ unit: 'px',
699
+ },
700
+ offsetY: {
701
+ value: 0,
702
+ unit: 'px',
703
+ },
704
+ blur: {
705
+ value: 0,
706
+ unit: 'px',
707
+ },
708
+ spread: {
709
+ value: 1,
710
+ unit: 'px',
711
+ },
712
+ },
713
+ {
714
+ color: '{base.color.neutral.12}',
715
+ alpha: 0.08,
716
+ offsetX: {
717
+ value: 0,
718
+ unit: 'px',
719
+ },
720
+ offsetY: {
721
+ value: 8,
722
+ unit: 'px',
723
+ },
724
+ blur: {
725
+ value: 16,
726
+ unit: 'px',
727
+ },
728
+ spread: {
729
+ value: -4,
730
+ unit: 'px',
731
+ },
732
+ },
733
+ {
734
+ color: '{base.color.neutral.12}',
735
+ alpha: 0.08,
736
+ offsetX: {
737
+ value: 0,
738
+ unit: 'px',
739
+ },
740
+ offsetY: {
741
+ value: 4,
742
+ unit: 'px',
743
+ },
744
+ blur: {
745
+ value: 32,
746
+ unit: 'px',
747
+ },
748
+ spread: {
749
+ value: -4,
750
+ unit: 'px',
751
+ },
752
+ },
753
+ {
754
+ color: '{base.color.neutral.12}',
755
+ alpha: 0.08,
756
+ offsetX: {
757
+ value: 0,
758
+ unit: 'px',
759
+ },
760
+ offsetY: {
761
+ value: 24,
762
+ unit: 'px',
763
+ },
764
+ blur: {
765
+ value: 48,
766
+ unit: 'px',
767
+ },
768
+ spread: {
769
+ value: -12,
770
+ unit: 'px',
771
+ },
772
+ },
773
+ {
774
+ color: '{base.color.neutral.12}',
775
+ alpha: 0.08,
776
+ offsetX: {
777
+ value: 0,
778
+ unit: 'px',
779
+ },
780
+ offsetY: {
781
+ value: 48,
782
+ unit: 'px',
783
+ },
784
+ blur: {
785
+ value: 96,
786
+ unit: 'px',
787
+ },
788
+ spread: {
789
+ value: -24,
790
+ unit: 'px',
791
+ },
792
+ },
793
+ ],
794
+ },
795
+ 'light-protanopia-deuteranopia-high-contrast': {
796
+ $value: [
797
+ {
798
+ color: '{overlay.borderColor}',
799
+ alpha: 1,
800
+ offsetX: {
801
+ value: 0,
802
+ unit: 'px',
803
+ },
804
+ offsetY: {
805
+ value: 0,
806
+ unit: 'px',
807
+ },
808
+ blur: {
809
+ value: 0,
810
+ unit: 'px',
811
+ },
812
+ spread: {
813
+ value: 1,
814
+ unit: 'px',
815
+ },
816
+ },
817
+ {
818
+ color: '{base.color.neutral.12}',
819
+ alpha: 0.08,
820
+ offsetX: {
821
+ value: 0,
822
+ unit: 'px',
823
+ },
824
+ offsetY: {
825
+ value: 8,
826
+ unit: 'px',
827
+ },
828
+ blur: {
829
+ value: 16,
830
+ unit: 'px',
831
+ },
832
+ spread: {
833
+ value: -4,
834
+ unit: 'px',
835
+ },
836
+ },
837
+ {
838
+ color: '{base.color.neutral.12}',
839
+ alpha: 0.08,
840
+ offsetX: {
841
+ value: 0,
842
+ unit: 'px',
843
+ },
844
+ offsetY: {
845
+ value: 4,
846
+ unit: 'px',
847
+ },
848
+ blur: {
849
+ value: 32,
850
+ unit: 'px',
851
+ },
852
+ spread: {
853
+ value: -4,
854
+ unit: 'px',
855
+ },
856
+ },
857
+ {
858
+ color: '{base.color.neutral.12}',
859
+ alpha: 0.08,
860
+ offsetX: {
861
+ value: 0,
862
+ unit: 'px',
863
+ },
864
+ offsetY: {
865
+ value: 24,
866
+ unit: 'px',
867
+ },
868
+ blur: {
869
+ value: 48,
870
+ unit: 'px',
871
+ },
872
+ spread: {
873
+ value: -12,
874
+ unit: 'px',
875
+ },
876
+ },
877
+ {
878
+ color: '{base.color.neutral.12}',
879
+ alpha: 0.08,
880
+ offsetX: {
881
+ value: 0,
882
+ unit: 'px',
883
+ },
884
+ offsetY: {
885
+ value: 48,
886
+ unit: 'px',
887
+ },
888
+ blur: {
889
+ value: 96,
890
+ unit: 'px',
891
+ },
892
+ spread: {
893
+ value: -24,
894
+ unit: 'px',
895
+ },
896
+ },
897
+ ],
898
+ },
899
+ 'light-tritanopia-high-contrast': {
900
+ $value: [
901
+ {
902
+ color: '{overlay.borderColor}',
903
+ alpha: 1,
904
+ offsetX: {
905
+ value: 0,
906
+ unit: 'px',
907
+ },
908
+ offsetY: {
909
+ value: 0,
910
+ unit: 'px',
911
+ },
912
+ blur: {
913
+ value: 0,
914
+ unit: 'px',
915
+ },
916
+ spread: {
917
+ value: 1,
918
+ unit: 'px',
919
+ },
920
+ },
921
+ {
922
+ color: '{base.color.neutral.12}',
923
+ alpha: 0.08,
924
+ offsetX: {
925
+ value: 0,
926
+ unit: 'px',
927
+ },
928
+ offsetY: {
929
+ value: 8,
930
+ unit: 'px',
931
+ },
932
+ blur: {
933
+ value: 16,
934
+ unit: 'px',
935
+ },
936
+ spread: {
937
+ value: -4,
938
+ unit: 'px',
939
+ },
940
+ },
941
+ {
942
+ color: '{base.color.neutral.12}',
943
+ alpha: 0.08,
944
+ offsetX: {
945
+ value: 0,
946
+ unit: 'px',
947
+ },
948
+ offsetY: {
949
+ value: 4,
950
+ unit: 'px',
951
+ },
952
+ blur: {
953
+ value: 32,
954
+ unit: 'px',
955
+ },
956
+ spread: {
957
+ value: -4,
958
+ unit: 'px',
959
+ },
960
+ },
961
+ {
962
+ color: '{base.color.neutral.12}',
963
+ alpha: 0.08,
964
+ offsetX: {
965
+ value: 0,
966
+ unit: 'px',
967
+ },
968
+ offsetY: {
969
+ value: 24,
970
+ unit: 'px',
971
+ },
972
+ blur: {
973
+ value: 48,
974
+ unit: 'px',
975
+ },
976
+ spread: {
977
+ value: -12,
978
+ unit: 'px',
979
+ },
980
+ },
981
+ {
982
+ color: '{base.color.neutral.12}',
983
+ alpha: 0.08,
984
+ offsetX: {
985
+ value: 0,
986
+ unit: 'px',
987
+ },
988
+ offsetY: {
989
+ value: 48,
990
+ unit: 'px',
991
+ },
992
+ blur: {
993
+ value: 96,
994
+ unit: 'px',
995
+ },
996
+ spread: {
997
+ value: -24,
998
+ unit: 'px',
999
+ },
1000
+ },
1001
+ ],
1002
+ },
691
1003
  },
692
1004
  'org.primer.llm': {
693
1005
  usage: ['popover', 'action-menu', 'select-panel', 'autocomplete'],
@@ -790,6 +1102,138 @@
790
1102
  },
791
1103
  ],
792
1104
  },
1105
+ 'light-high-contrast': {
1106
+ $value: [
1107
+ {
1108
+ color: '{overlay.borderColor}',
1109
+ alpha: 1,
1110
+ offsetX: {
1111
+ value: 0,
1112
+ unit: 'px',
1113
+ },
1114
+ offsetY: {
1115
+ value: 0,
1116
+ unit: 'px',
1117
+ },
1118
+ blur: {
1119
+ value: 0,
1120
+ unit: 'px',
1121
+ },
1122
+ spread: {
1123
+ value: 1,
1124
+ unit: 'px',
1125
+ },
1126
+ },
1127
+ {
1128
+ color: '{base.color.neutral.12}',
1129
+ alpha: 0.24,
1130
+ offsetX: {
1131
+ value: 0,
1132
+ unit: 'px',
1133
+ },
1134
+ offsetY: {
1135
+ value: 40,
1136
+ unit: 'px',
1137
+ },
1138
+ blur: {
1139
+ value: 80,
1140
+ unit: 'px',
1141
+ },
1142
+ spread: {
1143
+ value: 0,
1144
+ unit: 'px',
1145
+ },
1146
+ },
1147
+ ],
1148
+ },
1149
+ 'light-protanopia-deuteranopia-high-contrast': {
1150
+ $value: [
1151
+ {
1152
+ color: '{overlay.borderColor}',
1153
+ alpha: 1,
1154
+ offsetX: {
1155
+ value: 0,
1156
+ unit: 'px',
1157
+ },
1158
+ offsetY: {
1159
+ value: 0,
1160
+ unit: 'px',
1161
+ },
1162
+ blur: {
1163
+ value: 0,
1164
+ unit: 'px',
1165
+ },
1166
+ spread: {
1167
+ value: 1,
1168
+ unit: 'px',
1169
+ },
1170
+ },
1171
+ {
1172
+ color: '{base.color.neutral.12}',
1173
+ alpha: 0.24,
1174
+ offsetX: {
1175
+ value: 0,
1176
+ unit: 'px',
1177
+ },
1178
+ offsetY: {
1179
+ value: 40,
1180
+ unit: 'px',
1181
+ },
1182
+ blur: {
1183
+ value: 80,
1184
+ unit: 'px',
1185
+ },
1186
+ spread: {
1187
+ value: 0,
1188
+ unit: 'px',
1189
+ },
1190
+ },
1191
+ ],
1192
+ },
1193
+ 'light-tritanopia-high-contrast': {
1194
+ $value: [
1195
+ {
1196
+ color: '{overlay.borderColor}',
1197
+ alpha: 1,
1198
+ offsetX: {
1199
+ value: 0,
1200
+ unit: 'px',
1201
+ },
1202
+ offsetY: {
1203
+ value: 0,
1204
+ unit: 'px',
1205
+ },
1206
+ blur: {
1207
+ value: 0,
1208
+ unit: 'px',
1209
+ },
1210
+ spread: {
1211
+ value: 1,
1212
+ unit: 'px',
1213
+ },
1214
+ },
1215
+ {
1216
+ color: '{base.color.neutral.12}',
1217
+ alpha: 0.24,
1218
+ offsetX: {
1219
+ value: 0,
1220
+ unit: 'px',
1221
+ },
1222
+ offsetY: {
1223
+ value: 40,
1224
+ unit: 'px',
1225
+ },
1226
+ blur: {
1227
+ value: 80,
1228
+ unit: 'px',
1229
+ },
1230
+ spread: {
1231
+ value: 0,
1232
+ unit: 'px',
1233
+ },
1234
+ },
1235
+ ],
1236
+ },
793
1237
  },
794
1238
  'org.primer.llm': {
795
1239
  usage: ['modal', 'dialog', 'full-screen-overlay'],
@@ -892,6 +1336,138 @@
892
1336
  },
893
1337
  ],
894
1338
  },
1339
+ 'light-high-contrast': {
1340
+ $value: [
1341
+ {
1342
+ color: '{overlay.borderColor}',
1343
+ alpha: 1,
1344
+ offsetX: {
1345
+ value: 0,
1346
+ unit: 'px',
1347
+ },
1348
+ offsetY: {
1349
+ value: 0,
1350
+ unit: 'px',
1351
+ },
1352
+ blur: {
1353
+ value: 0,
1354
+ unit: 'px',
1355
+ },
1356
+ spread: {
1357
+ value: 1,
1358
+ unit: 'px',
1359
+ },
1360
+ },
1361
+ {
1362
+ color: '{base.color.neutral.12}',
1363
+ alpha: 0.32,
1364
+ offsetX: {
1365
+ value: 0,
1366
+ unit: 'px',
1367
+ },
1368
+ offsetY: {
1369
+ value: 56,
1370
+ unit: 'px',
1371
+ },
1372
+ blur: {
1373
+ value: 112,
1374
+ unit: 'px',
1375
+ },
1376
+ spread: {
1377
+ value: 0,
1378
+ unit: 'px',
1379
+ },
1380
+ },
1381
+ ],
1382
+ },
1383
+ 'light-protanopia-deuteranopia-high-contrast': {
1384
+ $value: [
1385
+ {
1386
+ color: '{overlay.borderColor}',
1387
+ alpha: 1,
1388
+ offsetX: {
1389
+ value: 0,
1390
+ unit: 'px',
1391
+ },
1392
+ offsetY: {
1393
+ value: 0,
1394
+ unit: 'px',
1395
+ },
1396
+ blur: {
1397
+ value: 0,
1398
+ unit: 'px',
1399
+ },
1400
+ spread: {
1401
+ value: 1,
1402
+ unit: 'px',
1403
+ },
1404
+ },
1405
+ {
1406
+ color: '{base.color.neutral.12}',
1407
+ alpha: 0.32,
1408
+ offsetX: {
1409
+ value: 0,
1410
+ unit: 'px',
1411
+ },
1412
+ offsetY: {
1413
+ value: 56,
1414
+ unit: 'px',
1415
+ },
1416
+ blur: {
1417
+ value: 112,
1418
+ unit: 'px',
1419
+ },
1420
+ spread: {
1421
+ value: 0,
1422
+ unit: 'px',
1423
+ },
1424
+ },
1425
+ ],
1426
+ },
1427
+ 'light-tritanopia-high-contrast': {
1428
+ $value: [
1429
+ {
1430
+ color: '{overlay.borderColor}',
1431
+ alpha: 1,
1432
+ offsetX: {
1433
+ value: 0,
1434
+ unit: 'px',
1435
+ },
1436
+ offsetY: {
1437
+ value: 0,
1438
+ unit: 'px',
1439
+ },
1440
+ blur: {
1441
+ value: 0,
1442
+ unit: 'px',
1443
+ },
1444
+ spread: {
1445
+ value: 1,
1446
+ unit: 'px',
1447
+ },
1448
+ },
1449
+ {
1450
+ color: '{base.color.neutral.12}',
1451
+ alpha: 0.32,
1452
+ offsetX: {
1453
+ value: 0,
1454
+ unit: 'px',
1455
+ },
1456
+ offsetY: {
1457
+ value: 56,
1458
+ unit: 'px',
1459
+ },
1460
+ blur: {
1461
+ value: 112,
1462
+ unit: 'px',
1463
+ },
1464
+ spread: {
1465
+ value: 0,
1466
+ unit: 'px',
1467
+ },
1468
+ },
1469
+ ],
1470
+ },
895
1471
  },
896
1472
  'org.primer.llm': {
897
1473
  usage: ['full-screen-overlay', 'side-sheet', 'drawer', 'large-modal'],
@@ -38,7 +38,7 @@
38
38
  },
39
39
  large: {
40
40
  $value: {value: 12, unit: 'px'},
41
- $description: 'Large border radius (12px). Use for larger containers, dialogs, or when more visual softness is desired. Always use this for buttons.',
41
+ $description: 'Large border radius (12px). Use for larger containers, dialogs, or when more visual softness is desired.',
42
42
  $type: 'dimension',
43
43
  $extensions: {
44
44
  'org.primer.figma': {
@@ -44,6 +44,21 @@
44
44
  }
45
45
  }
46
46
  }
47
+ },
48
+ "large": {
49
+ "gap": {
50
+ "auto": {
51
+ "$value": "{base.size.12}",
52
+ "$type": "dimension",
53
+ "$description": "Gap between stacked controls in large density layouts for touch devices",
54
+ "$extensions": {
55
+ "org.primer.llm": {
56
+ "usage": ["touch-control-spacing", "mobile-form-gap", "stacked-buttons"],
57
+ "rules": "Use for spacing between interactive controls on touch devices in large layouts. Provides adequate touch separation. Do NOT use for desktop/mouse interfaces."
58
+ }
59
+ }
60
+ }
61
+ }
47
62
  }
48
63
  }
49
64
  }
@@ -45,5 +45,20 @@
45
45
  },
46
46
  },
47
47
  },
48
+ large: {
49
+ gap: {
50
+ auto: {
51
+ $value: '{base.size.8}',
52
+ $type: 'dimension',
53
+ $description: 'Gap between stacked controls in large density layouts for mouse interfaces',
54
+ $extensions: {
55
+ 'org.primer.llm': {
56
+ usage: ['desktop-control-spacing', 'form-gap', 'stacked-buttons'],
57
+ rules: 'Use for spacing between interactive controls on desktop in large layouts. Do NOT use for mobile/touch interfaces.',
58
+ },
59
+ },
60
+ },
61
+ },
62
+ },
48
63
  },
49
64
  }