@primer/primitives 11.4.0-rc.daff2d10 → 11.4.0-rc.e472be0d

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 (90) hide show
  1. package/dist/build/formats/markdownLlmGuidelines.d.ts +3 -1
  2. package/dist/build/formats/markdownLlmGuidelines.js +53 -10
  3. package/dist/build/platforms/llmGuidelines.js +1 -0
  4. package/dist/build/preprocessors/inheritGroupProperties.d.ts +7 -0
  5. package/dist/build/preprocessors/inheritGroupProperties.js +70 -0
  6. package/dist/build/primerStyleDictionary.js +2 -0
  7. package/dist/build/schemas/designToken.d.ts +1 -1
  8. package/dist/build/schemas/designToken.js +113 -21
  9. package/dist/build/schemas/dimensionToken.d.ts +2 -2
  10. package/dist/build/schemas/dimensionToken.js +4 -2
  11. package/dist/build/schemas/validTokenType.d.ts +5 -1
  12. package/dist/build/schemas/validTokenType.js +71 -17
  13. package/dist/css/functional/size/size-coarse.css +3 -3
  14. package/dist/css/functional/size/size-fine.css +3 -3
  15. package/dist/css/functional/themes/dark-colorblind-high-contrast.css +4 -4
  16. package/dist/css/functional/themes/dark-colorblind.css +4 -4
  17. package/dist/css/functional/themes/dark-dimmed-high-contrast.css +4 -4
  18. package/dist/css/functional/themes/dark-dimmed.css +4 -4
  19. package/dist/css/functional/themes/dark-high-contrast.css +4 -4
  20. package/dist/css/functional/themes/dark-tritanopia-high-contrast.css +4 -4
  21. package/dist/css/functional/themes/dark-tritanopia.css +4 -4
  22. package/dist/css/functional/themes/dark.css +4 -4
  23. package/dist/css/functional/themes/light-colorblind-high-contrast.css +4 -4
  24. package/dist/css/functional/themes/light-colorblind.css +4 -4
  25. package/dist/css/functional/themes/light-high-contrast.css +4 -4
  26. package/dist/css/functional/themes/light-tritanopia-high-contrast.css +4 -4
  27. package/dist/css/functional/themes/light-tritanopia.css +4 -4
  28. package/dist/css/functional/themes/light.css +4 -4
  29. package/dist/docs/functional/size/size-coarse.json +45 -3
  30. package/dist/docs/functional/size/size-fine.json +45 -3
  31. package/dist/docs/functional/themes/dark-colorblind-high-contrast.json +22 -2
  32. package/dist/docs/functional/themes/dark-colorblind.json +22 -2
  33. package/dist/docs/functional/themes/dark-dimmed-high-contrast.json +22 -2
  34. package/dist/docs/functional/themes/dark-dimmed.json +22 -2
  35. package/dist/docs/functional/themes/dark-high-contrast.json +22 -2
  36. package/dist/docs/functional/themes/dark-tritanopia-high-contrast.json +22 -2
  37. package/dist/docs/functional/themes/dark-tritanopia.json +22 -2
  38. package/dist/docs/functional/themes/dark.json +22 -2
  39. package/dist/docs/functional/themes/light-colorblind-high-contrast.json +22 -2
  40. package/dist/docs/functional/themes/light-colorblind.json +22 -2
  41. package/dist/docs/functional/themes/light-high-contrast.json +22 -2
  42. package/dist/docs/functional/themes/light-tritanopia-high-contrast.json +22 -2
  43. package/dist/docs/functional/themes/light-tritanopia.json +22 -2
  44. package/dist/docs/functional/themes/light.json +22 -2
  45. package/dist/figma/themes/dark-colorblind.json +2 -0
  46. package/dist/figma/themes/dark-dimmed.json +2 -0
  47. package/dist/figma/themes/dark-high-contrast.json +2 -0
  48. package/dist/figma/themes/dark-tritanopia.json +2 -0
  49. package/dist/figma/themes/dark.json +2 -0
  50. package/dist/figma/themes/light-colorblind.json +2 -0
  51. package/dist/figma/themes/light-high-contrast.json +2 -0
  52. package/dist/figma/themes/light-tritanopia.json +2 -0
  53. package/dist/figma/themes/light.json +2 -0
  54. package/dist/internalCss/dark-colorblind-high-contrast.css +4 -4
  55. package/dist/internalCss/dark-colorblind.css +4 -4
  56. package/dist/internalCss/dark-dimmed-high-contrast.css +4 -4
  57. package/dist/internalCss/dark-dimmed.css +4 -4
  58. package/dist/internalCss/dark-high-contrast.css +4 -4
  59. package/dist/internalCss/dark-tritanopia-high-contrast.css +4 -4
  60. package/dist/internalCss/dark-tritanopia.css +4 -4
  61. package/dist/internalCss/dark.css +4 -4
  62. package/dist/internalCss/light-colorblind-high-contrast.css +4 -4
  63. package/dist/internalCss/light-colorblind.css +4 -4
  64. package/dist/internalCss/light-high-contrast.css +4 -4
  65. package/dist/internalCss/light-tritanopia-high-contrast.css +4 -4
  66. package/dist/internalCss/light-tritanopia.css +4 -4
  67. package/dist/internalCss/light.css +4 -4
  68. package/dist/styleLint/functional/size/size-coarse.json +42 -0
  69. package/dist/styleLint/functional/size/size-fine.json +42 -0
  70. package/dist/styleLint/functional/themes/dark-colorblind-high-contrast.json +20 -0
  71. package/dist/styleLint/functional/themes/dark-colorblind.json +20 -0
  72. package/dist/styleLint/functional/themes/dark-dimmed-high-contrast.json +20 -0
  73. package/dist/styleLint/functional/themes/dark-dimmed.json +20 -0
  74. package/dist/styleLint/functional/themes/dark-high-contrast.json +20 -0
  75. package/dist/styleLint/functional/themes/dark-tritanopia-high-contrast.json +20 -0
  76. package/dist/styleLint/functional/themes/dark-tritanopia.json +20 -0
  77. package/dist/styleLint/functional/themes/dark.json +20 -0
  78. package/dist/styleLint/functional/themes/light-colorblind-high-contrast.json +20 -0
  79. package/dist/styleLint/functional/themes/light-colorblind.json +20 -0
  80. package/dist/styleLint/functional/themes/light-high-contrast.json +20 -0
  81. package/dist/styleLint/functional/themes/light-tritanopia-high-contrast.json +20 -0
  82. package/dist/styleLint/functional/themes/light-tritanopia.json +20 -0
  83. package/dist/styleLint/functional/themes/light.json +20 -0
  84. package/package.json +1 -1
  85. package/src/tokens/functional/color/data-vis.json5 +7 -0
  86. package/src/tokens/functional/color/focus.json5 +5 -0
  87. package/src/tokens/functional/color/selection.json5 +5 -0
  88. package/src/tokens/functional/size/size-coarse.json5 +24 -3
  89. package/src/tokens/functional/size/size-fine.json5 +45 -24
  90. package/token-guidelines.llm.md +109 -86
@@ -38256,11 +38256,16 @@
38256
38256
  "key": "{focus.outlineColor}",
38257
38257
  "$value": "#0969da",
38258
38258
  "$type": "color",
38259
+ "$description": "Outline color for focus states on interactive elements",
38259
38260
  "$extensions": {
38260
38261
  "org.primer.figma": {
38261
38262
  "collection": "mode",
38262
38263
  "group": "component (internal)",
38263
38264
  "scopes": ["borderColor", "effectColor"]
38265
+ },
38266
+ "org.primer.llm": {
38267
+ "usage": ["focus-ring", "keyboard-navigation", "accessibility-indicator"],
38268
+ "rules": "Use for focus outlines on interactive elements like buttons, links, and form controls. MUST be visible for keyboard navigation accessibility. Do NOT use for decorative borders or non-interactive elements."
38264
38269
  }
38265
38270
  },
38266
38271
  "filePath": "src/tokens/functional/color/focus.json5",
@@ -38268,11 +38273,16 @@
38268
38273
  "original": {
38269
38274
  "$value": "{borderColor.accent.emphasis}",
38270
38275
  "$type": "color",
38276
+ "$description": "Outline color for focus states on interactive elements",
38271
38277
  "$extensions": {
38272
38278
  "org.primer.figma": {
38273
38279
  "collection": "mode",
38274
38280
  "group": "component (internal)",
38275
38281
  "scopes": ["borderColor", "effectColor"]
38282
+ },
38283
+ "org.primer.llm": {
38284
+ "usage": ["focus-ring", "keyboard-navigation", "accessibility-indicator"],
38285
+ "rules": "Use for focus outlines on interactive elements like buttons, links, and form controls. MUST be visible for keyboard navigation accessibility. Do NOT use for decorative borders or non-interactive elements."
38276
38286
  }
38277
38287
  },
38278
38288
  "key": "{focus.outlineColor}"
@@ -47320,6 +47330,7 @@
47320
47330
  "key": "{selection.bgColor}",
47321
47331
  "$value": "#0969da33",
47322
47332
  "$type": "color",
47333
+ "$description": "Background color for text selection highlights",
47323
47334
  "$extensions": {
47324
47335
  "org.primer.figma": {
47325
47336
  "collection": "mode",
@@ -47334,6 +47345,10 @@
47334
47345
  "isSource": true,
47335
47346
  "$type": "color"
47336
47347
  }
47348
+ },
47349
+ "org.primer.llm": {
47350
+ "usage": ["text-selection", "highlighted-text", "selected-content"],
47351
+ "rules": "Use for native text selection (::selection) and programmatic text highlighting. Do NOT use for general emphasis or background colors on containers."
47337
47352
  }
47338
47353
  },
47339
47354
  "alpha": 0.2,
@@ -47342,6 +47357,7 @@
47342
47357
  "original": {
47343
47358
  "$value": "{bgColor.accent.emphasis}",
47344
47359
  "$type": "color",
47360
+ "$description": "Background color for text selection highlights",
47345
47361
  "$extensions": {
47346
47362
  "org.primer.figma": {
47347
47363
  "collection": "mode",
@@ -47356,6 +47372,10 @@
47356
47372
  "isSource": true,
47357
47373
  "$type": "color"
47358
47374
  }
47375
+ },
47376
+ "org.primer.llm": {
47377
+ "usage": ["text-selection", "highlighted-text", "selected-content"],
47378
+ "rules": "Use for native text selection (::selection) and programmatic text highlighting. Do NOT use for general emphasis or background colors on containers."
47359
47379
  }
47360
47380
  },
47361
47381
  "alpha": 0.2,
@@ -38252,11 +38252,16 @@
38252
38252
  "key": "{focus.outlineColor}",
38253
38253
  "$value": "#0349b4",
38254
38254
  "$type": "color",
38255
+ "$description": "Outline color for focus states on interactive elements",
38255
38256
  "$extensions": {
38256
38257
  "org.primer.figma": {
38257
38258
  "collection": "mode",
38258
38259
  "group": "component (internal)",
38259
38260
  "scopes": ["borderColor", "effectColor"]
38261
+ },
38262
+ "org.primer.llm": {
38263
+ "usage": ["focus-ring", "keyboard-navigation", "accessibility-indicator"],
38264
+ "rules": "Use for focus outlines on interactive elements like buttons, links, and form controls. MUST be visible for keyboard navigation accessibility. Do NOT use for decorative borders or non-interactive elements."
38260
38265
  }
38261
38266
  },
38262
38267
  "filePath": "src/tokens/functional/color/focus.json5",
@@ -38264,11 +38269,16 @@
38264
38269
  "original": {
38265
38270
  "$value": "{borderColor.accent.emphasis}",
38266
38271
  "$type": "color",
38272
+ "$description": "Outline color for focus states on interactive elements",
38267
38273
  "$extensions": {
38268
38274
  "org.primer.figma": {
38269
38275
  "collection": "mode",
38270
38276
  "group": "component (internal)",
38271
38277
  "scopes": ["borderColor", "effectColor"]
38278
+ },
38279
+ "org.primer.llm": {
38280
+ "usage": ["focus-ring", "keyboard-navigation", "accessibility-indicator"],
38281
+ "rules": "Use for focus outlines on interactive elements like buttons, links, and form controls. MUST be visible for keyboard navigation accessibility. Do NOT use for decorative borders or non-interactive elements."
38272
38282
  }
38273
38283
  },
38274
38284
  "key": "{focus.outlineColor}"
@@ -47316,6 +47326,7 @@
47316
47326
  "key": "{selection.bgColor}",
47317
47327
  "$value": "#0349b433",
47318
47328
  "$type": "color",
47329
+ "$description": "Background color for text selection highlights",
47319
47330
  "$extensions": {
47320
47331
  "org.primer.figma": {
47321
47332
  "collection": "mode",
@@ -47330,6 +47341,10 @@
47330
47341
  "isSource": true,
47331
47342
  "$type": "color"
47332
47343
  }
47344
+ },
47345
+ "org.primer.llm": {
47346
+ "usage": ["text-selection", "highlighted-text", "selected-content"],
47347
+ "rules": "Use for native text selection (::selection) and programmatic text highlighting. Do NOT use for general emphasis or background colors on containers."
47333
47348
  }
47334
47349
  },
47335
47350
  "alpha": 0.2,
@@ -47338,6 +47353,7 @@
47338
47353
  "original": {
47339
47354
  "$value": "{bgColor.accent.emphasis}",
47340
47355
  "$type": "color",
47356
+ "$description": "Background color for text selection highlights",
47341
47357
  "$extensions": {
47342
47358
  "org.primer.figma": {
47343
47359
  "collection": "mode",
@@ -47352,6 +47368,10 @@
47352
47368
  "isSource": true,
47353
47369
  "$type": "color"
47354
47370
  }
47371
+ },
47372
+ "org.primer.llm": {
47373
+ "usage": ["text-selection", "highlighted-text", "selected-content"],
47374
+ "rules": "Use for native text selection (::selection) and programmatic text highlighting. Do NOT use for general emphasis or background colors on containers."
47355
47375
  }
47356
47376
  },
47357
47377
  "alpha": 0.2,
@@ -38258,11 +38258,16 @@
38258
38258
  "key": "{focus.outlineColor}",
38259
38259
  "$value": "#0349b4",
38260
38260
  "$type": "color",
38261
+ "$description": "Outline color for focus states on interactive elements",
38261
38262
  "$extensions": {
38262
38263
  "org.primer.figma": {
38263
38264
  "collection": "mode",
38264
38265
  "group": "component (internal)",
38265
38266
  "scopes": ["borderColor", "effectColor"]
38267
+ },
38268
+ "org.primer.llm": {
38269
+ "usage": ["focus-ring", "keyboard-navigation", "accessibility-indicator"],
38270
+ "rules": "Use for focus outlines on interactive elements like buttons, links, and form controls. MUST be visible for keyboard navigation accessibility. Do NOT use for decorative borders or non-interactive elements."
38266
38271
  }
38267
38272
  },
38268
38273
  "filePath": "src/tokens/functional/color/focus.json5",
@@ -38270,11 +38275,16 @@
38270
38275
  "original": {
38271
38276
  "$value": "{borderColor.accent.emphasis}",
38272
38277
  "$type": "color",
38278
+ "$description": "Outline color for focus states on interactive elements",
38273
38279
  "$extensions": {
38274
38280
  "org.primer.figma": {
38275
38281
  "collection": "mode",
38276
38282
  "group": "component (internal)",
38277
38283
  "scopes": ["borderColor", "effectColor"]
38284
+ },
38285
+ "org.primer.llm": {
38286
+ "usage": ["focus-ring", "keyboard-navigation", "accessibility-indicator"],
38287
+ "rules": "Use for focus outlines on interactive elements like buttons, links, and form controls. MUST be visible for keyboard navigation accessibility. Do NOT use for decorative borders or non-interactive elements."
38278
38288
  }
38279
38289
  },
38280
38290
  "key": "{focus.outlineColor}"
@@ -47322,6 +47332,7 @@
47322
47332
  "key": "{selection.bgColor}",
47323
47333
  "$value": "#0349b433",
47324
47334
  "$type": "color",
47335
+ "$description": "Background color for text selection highlights",
47325
47336
  "$extensions": {
47326
47337
  "org.primer.figma": {
47327
47338
  "collection": "mode",
@@ -47336,6 +47347,10 @@
47336
47347
  "isSource": true,
47337
47348
  "$type": "color"
47338
47349
  }
47350
+ },
47351
+ "org.primer.llm": {
47352
+ "usage": ["text-selection", "highlighted-text", "selected-content"],
47353
+ "rules": "Use for native text selection (::selection) and programmatic text highlighting. Do NOT use for general emphasis or background colors on containers."
47339
47354
  }
47340
47355
  },
47341
47356
  "alpha": 0.2,
@@ -47344,6 +47359,7 @@
47344
47359
  "original": {
47345
47360
  "$value": "{bgColor.accent.emphasis}",
47346
47361
  "$type": "color",
47362
+ "$description": "Background color for text selection highlights",
47347
47363
  "$extensions": {
47348
47364
  "org.primer.figma": {
47349
47365
  "collection": "mode",
@@ -47358,6 +47374,10 @@
47358
47374
  "isSource": true,
47359
47375
  "$type": "color"
47360
47376
  }
47377
+ },
47378
+ "org.primer.llm": {
47379
+ "usage": ["text-selection", "highlighted-text", "selected-content"],
47380
+ "rules": "Use for native text selection (::selection) and programmatic text highlighting. Do NOT use for general emphasis or background colors on containers."
47361
47381
  }
47362
47382
  },
47363
47383
  "alpha": 0.2,
@@ -38256,11 +38256,16 @@
38256
38256
  "key": "{focus.outlineColor}",
38257
38257
  "$value": "#0969da",
38258
38258
  "$type": "color",
38259
+ "$description": "Outline color for focus states on interactive elements",
38259
38260
  "$extensions": {
38260
38261
  "org.primer.figma": {
38261
38262
  "collection": "mode",
38262
38263
  "group": "component (internal)",
38263
38264
  "scopes": ["borderColor", "effectColor"]
38265
+ },
38266
+ "org.primer.llm": {
38267
+ "usage": ["focus-ring", "keyboard-navigation", "accessibility-indicator"],
38268
+ "rules": "Use for focus outlines on interactive elements like buttons, links, and form controls. MUST be visible for keyboard navigation accessibility. Do NOT use for decorative borders or non-interactive elements."
38264
38269
  }
38265
38270
  },
38266
38271
  "filePath": "src/tokens/functional/color/focus.json5",
@@ -38268,11 +38273,16 @@
38268
38273
  "original": {
38269
38274
  "$value": "{borderColor.accent.emphasis}",
38270
38275
  "$type": "color",
38276
+ "$description": "Outline color for focus states on interactive elements",
38271
38277
  "$extensions": {
38272
38278
  "org.primer.figma": {
38273
38279
  "collection": "mode",
38274
38280
  "group": "component (internal)",
38275
38281
  "scopes": ["borderColor", "effectColor"]
38282
+ },
38283
+ "org.primer.llm": {
38284
+ "usage": ["focus-ring", "keyboard-navigation", "accessibility-indicator"],
38285
+ "rules": "Use for focus outlines on interactive elements like buttons, links, and form controls. MUST be visible for keyboard navigation accessibility. Do NOT use for decorative borders or non-interactive elements."
38276
38286
  }
38277
38287
  },
38278
38288
  "key": "{focus.outlineColor}"
@@ -47320,6 +47330,7 @@
47320
47330
  "key": "{selection.bgColor}",
47321
47331
  "$value": "#0969da33",
47322
47332
  "$type": "color",
47333
+ "$description": "Background color for text selection highlights",
47323
47334
  "$extensions": {
47324
47335
  "org.primer.figma": {
47325
47336
  "collection": "mode",
@@ -47334,6 +47345,10 @@
47334
47345
  "isSource": true,
47335
47346
  "$type": "color"
47336
47347
  }
47348
+ },
47349
+ "org.primer.llm": {
47350
+ "usage": ["text-selection", "highlighted-text", "selected-content"],
47351
+ "rules": "Use for native text selection (::selection) and programmatic text highlighting. Do NOT use for general emphasis or background colors on containers."
47337
47352
  }
47338
47353
  },
47339
47354
  "alpha": 0.2,
@@ -47342,6 +47357,7 @@
47342
47357
  "original": {
47343
47358
  "$value": "{bgColor.accent.emphasis}",
47344
47359
  "$type": "color",
47360
+ "$description": "Background color for text selection highlights",
47345
47361
  "$extensions": {
47346
47362
  "org.primer.figma": {
47347
47363
  "collection": "mode",
@@ -47356,6 +47372,10 @@
47356
47372
  "isSource": true,
47357
47373
  "$type": "color"
47358
47374
  }
47375
+ },
47376
+ "org.primer.llm": {
47377
+ "usage": ["text-selection", "highlighted-text", "selected-content"],
47378
+ "rules": "Use for native text selection (::selection) and programmatic text highlighting. Do NOT use for general emphasis or background colors on containers."
47359
47379
  }
47360
47380
  },
47361
47381
  "alpha": 0.2,
@@ -38250,11 +38250,16 @@
38250
38250
  "key": "{focus.outlineColor}",
38251
38251
  "$value": "#0969da",
38252
38252
  "$type": "color",
38253
+ "$description": "Outline color for focus states on interactive elements",
38253
38254
  "$extensions": {
38254
38255
  "org.primer.figma": {
38255
38256
  "collection": "mode",
38256
38257
  "group": "component (internal)",
38257
38258
  "scopes": ["borderColor", "effectColor"]
38259
+ },
38260
+ "org.primer.llm": {
38261
+ "usage": ["focus-ring", "keyboard-navigation", "accessibility-indicator"],
38262
+ "rules": "Use for focus outlines on interactive elements like buttons, links, and form controls. MUST be visible for keyboard navigation accessibility. Do NOT use for decorative borders or non-interactive elements."
38258
38263
  }
38259
38264
  },
38260
38265
  "filePath": "src/tokens/functional/color/focus.json5",
@@ -38262,11 +38267,16 @@
38262
38267
  "original": {
38263
38268
  "$value": "{borderColor.accent.emphasis}",
38264
38269
  "$type": "color",
38270
+ "$description": "Outline color for focus states on interactive elements",
38265
38271
  "$extensions": {
38266
38272
  "org.primer.figma": {
38267
38273
  "collection": "mode",
38268
38274
  "group": "component (internal)",
38269
38275
  "scopes": ["borderColor", "effectColor"]
38276
+ },
38277
+ "org.primer.llm": {
38278
+ "usage": ["focus-ring", "keyboard-navigation", "accessibility-indicator"],
38279
+ "rules": "Use for focus outlines on interactive elements like buttons, links, and form controls. MUST be visible for keyboard navigation accessibility. Do NOT use for decorative borders or non-interactive elements."
38270
38280
  }
38271
38281
  },
38272
38282
  "key": "{focus.outlineColor}"
@@ -47314,6 +47324,7 @@
47314
47324
  "key": "{selection.bgColor}",
47315
47325
  "$value": "#0969da33",
47316
47326
  "$type": "color",
47327
+ "$description": "Background color for text selection highlights",
47317
47328
  "$extensions": {
47318
47329
  "org.primer.figma": {
47319
47330
  "collection": "mode",
@@ -47328,6 +47339,10 @@
47328
47339
  "isSource": true,
47329
47340
  "$type": "color"
47330
47341
  }
47342
+ },
47343
+ "org.primer.llm": {
47344
+ "usage": ["text-selection", "highlighted-text", "selected-content"],
47345
+ "rules": "Use for native text selection (::selection) and programmatic text highlighting. Do NOT use for general emphasis or background colors on containers."
47331
47346
  }
47332
47347
  },
47333
47348
  "alpha": 0.2,
@@ -47336,6 +47351,7 @@
47336
47351
  "original": {
47337
47352
  "$value": "{bgColor.accent.emphasis}",
47338
47353
  "$type": "color",
47354
+ "$description": "Background color for text selection highlights",
47339
47355
  "$extensions": {
47340
47356
  "org.primer.figma": {
47341
47357
  "collection": "mode",
@@ -47350,6 +47366,10 @@
47350
47366
  "isSource": true,
47351
47367
  "$type": "color"
47352
47368
  }
47369
+ },
47370
+ "org.primer.llm": {
47371
+ "usage": ["text-selection", "highlighted-text", "selected-content"],
47372
+ "rules": "Use for native text selection (::selection) and programmatic text highlighting. Do NOT use for general emphasis or background colors on containers."
47353
47373
  }
47354
47374
  },
47355
47375
  "alpha": 0.2,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@primer/primitives",
3
- "version": "11.4.0-rc.daff2d10",
3
+ "version": "11.4.0-rc.e472be0d",
4
4
  "description": "Typography, spacing, and color primitives for Primer design system",
5
5
  "type": "module",
6
6
  "files": [
@@ -1,5 +1,12 @@
1
1
  {
2
2
  data: {
3
+ $description: 'Colors for data visualization including charts, graphs, and diagrams. Use these colors to differentiate data series. Emphasis variants are for lines, bars, and borders. Muted variants are for area fills and backgrounds.',
4
+ $extensions: {
5
+ 'org.primer.llm': {
6
+ usage: ['chart-series', 'graph-line', 'bar-fill', 'pie-segment', 'area-chart', 'data-point'],
7
+ rules: 'Use data colors for visualizations only. Do NOT use for semantic meaning (use bgColor.success/danger instead). When using multiple series, ensure sufficient contrast between adjacent colors. Pair emphasis with muted variants of the same color for cohesive styling.',
8
+ },
9
+ },
3
10
  blue: {
4
11
  color: {
5
12
  emphasis: {
@@ -3,12 +3,17 @@
3
3
  outlineColor: {
4
4
  $value: '{borderColor.accent.emphasis}',
5
5
  $type: 'color',
6
+ $description: 'Outline color for focus states on interactive elements',
6
7
  $extensions: {
7
8
  'org.primer.figma': {
8
9
  collection: 'mode',
9
10
  group: 'component (internal)',
10
11
  scopes: ['borderColor', 'effectColor'],
11
12
  },
13
+ 'org.primer.llm': {
14
+ usage: ['focus-ring', 'keyboard-navigation', 'accessibility-indicator'],
15
+ rules: 'Use for focus outlines on interactive elements like buttons, links, and form controls. MUST be visible for keyboard navigation accessibility. Do NOT use for decorative borders or non-interactive elements.',
16
+ },
12
17
  },
13
18
  },
14
19
  },
@@ -3,6 +3,7 @@
3
3
  bgColor: {
4
4
  $value: '{bgColor.accent.emphasis}',
5
5
  $type: 'color',
6
+ $description: 'Background color for text selection highlights',
6
7
  $extensions: {
7
8
  'org.primer.figma': {
8
9
  collection: 'mode',
@@ -15,6 +16,10 @@
15
16
  alpha: 0.7,
16
17
  },
17
18
  },
19
+ 'org.primer.llm': {
20
+ usage: ['text-selection', 'highlighted-text', 'selected-content'],
21
+ rules: 'Use for native text selection (::selection) and programmatic text highlighting. Do NOT use for general emphasis or background colors on containers.',
22
+ },
18
23
  },
19
24
  alpha: 0.2,
20
25
  },
@@ -3,7 +3,14 @@
3
3
  "minTarget": {
4
4
  "auto": {
5
5
  "$value": "{base.size.44}",
6
- "$type": "dimension"
6
+ "$type": "dimension",
7
+ "$description": "Minimum touch target size for coarse pointer devices (touch screens)",
8
+ "$extensions": {
9
+ "org.primer.llm": {
10
+ "usage": ["touch-target", "mobile-button", "tap-area"],
11
+ "rules": "Use as minimum size for interactive elements on touch devices. Ensures WCAG 2.5.5 compliance (44x44px minimum). Do NOT use for fine pointer (mouse) contexts."
12
+ }
13
+ }
7
14
  }
8
15
  }
9
16
  },
@@ -12,7 +19,14 @@
12
19
  "gap": {
13
20
  "auto": {
14
21
  "$value": "{base.size.16}",
15
- "$type": "dimension"
22
+ "$type": "dimension",
23
+ "$description": "Gap between stacked controls in small density layouts for touch devices",
24
+ "$extensions": {
25
+ "org.primer.llm": {
26
+ "usage": ["touch-control-spacing", "mobile-form-gap", "stacked-buttons"],
27
+ "rules": "Use for spacing between interactive controls on touch devices in compact layouts. Provides adequate touch separation. Do NOT use for desktop/mouse interfaces."
28
+ }
29
+ }
16
30
  }
17
31
  }
18
32
  },
@@ -20,7 +34,14 @@
20
34
  "gap": {
21
35
  "auto": {
22
36
  "$value": "{base.size.12}",
23
- "$type": "dimension"
37
+ "$type": "dimension",
38
+ "$description": "Gap between stacked controls in medium density layouts for touch devices",
39
+ "$extensions": {
40
+ "org.primer.llm": {
41
+ "usage": ["touch-control-spacing", "mobile-form-gap", "stacked-buttons"],
42
+ "rules": "Use for spacing between interactive controls on touch devices in standard layouts. Do NOT use for desktop/mouse interfaces."
43
+ }
44
+ }
24
45
  }
25
46
  }
26
47
  }
@@ -1,28 +1,49 @@
1
1
  {
2
- "control": {
3
- "minTarget": {
4
- "auto": {
5
- "$value": "{base.size.16}",
6
- "$type": "dimension"
7
- }
8
- }
2
+ control: {
3
+ minTarget: {
4
+ auto: {
5
+ $value: '{base.size.16}',
6
+ $type: 'dimension',
7
+ $description: 'Minimum target size for fine pointer devices (mouse)',
8
+ $extensions: {
9
+ 'org.primer.llm': {
10
+ usage: ['mouse-target', 'desktop-button', 'click-area'],
11
+ rules: 'Use as minimum size for interactive elements on desktop/mouse interfaces. Smaller than touch targets for denser layouts. Do NOT use for touch/mobile contexts.',
12
+ },
13
+ },
14
+ },
15
+ },
9
16
  },
10
- "controlStack": {
11
- "small": {
12
- "gap": {
13
- "auto": {
14
- "$value": "{base.size.8}",
15
- "$type": "dimension"
16
- }
17
- }
17
+ controlStack: {
18
+ small: {
19
+ gap: {
20
+ auto: {
21
+ $value: '{base.size.8}',
22
+ $type: 'dimension',
23
+ $description: 'Gap between stacked controls in small density layouts for mouse interfaces',
24
+ $extensions: {
25
+ 'org.primer.llm': {
26
+ usage: ['desktop-control-spacing', 'form-gap', 'stacked-buttons'],
27
+ rules: 'Use for spacing between interactive controls on desktop in compact layouts. Tighter spacing than touch devices. Do NOT use for mobile/touch interfaces.',
28
+ },
29
+ },
30
+ },
31
+ },
32
+ },
33
+ medium: {
34
+ gap: {
35
+ auto: {
36
+ $value: '{base.size.8}',
37
+ $type: 'dimension',
38
+ $description: 'Gap between stacked controls in medium density layouts for mouse interfaces',
39
+ $extensions: {
40
+ 'org.primer.llm': {
41
+ usage: ['desktop-control-spacing', 'form-gap', 'stacked-buttons'],
42
+ rules: 'Use for spacing between interactive controls on desktop in standard layouts. Do NOT use for mobile/touch interfaces.',
43
+ },
44
+ },
45
+ },
46
+ },
18
47
  },
19
- "medium": {
20
- "gap": {
21
- "auto": {
22
- "$value": "{base.size.8}",
23
- "$type": "dimension"
24
- }
25
- }
26
- }
27
- }
48
+ },
28
49
  }