@primer/primitives 11.4.0-rc.f798df25 → 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.
- package/DESIGN_TOKENS_GUIDE.md +185 -0
- package/DESIGN_TOKENS_SPEC.md +565 -0
- package/dist/build/filters/hasLlmExtensions.d.ts +7 -0
- package/dist/build/filters/hasLlmExtensions.js +11 -0
- package/dist/build/filters/index.d.ts +1 -0
- package/dist/build/filters/index.js +1 -0
- package/dist/build/formats/index.d.ts +1 -0
- package/dist/build/formats/index.js +1 -0
- package/dist/build/formats/markdownLlmGuidelines.d.ts +11 -0
- package/dist/build/formats/markdownLlmGuidelines.js +1168 -0
- package/dist/build/platforms/index.d.ts +1 -0
- package/dist/build/platforms/index.js +1 -0
- package/dist/build/platforms/llmGuidelines.d.ts +2 -0
- package/dist/build/platforms/llmGuidelines.js +17 -0
- package/dist/build/preprocessors/inheritGroupProperties.d.ts +7 -0
- package/dist/build/preprocessors/inheritGroupProperties.js +70 -0
- package/dist/build/primerStyleDictionary.js +7 -1
- package/dist/build/schemas/borderToken.d.ts +22 -2
- package/dist/build/schemas/borderToken.js +6 -0
- package/dist/build/schemas/colorToken.d.ts +4 -0
- package/dist/build/schemas/colorToken.js +2 -0
- package/dist/build/schemas/cubicBezierToken.d.ts +6 -0
- package/dist/build/schemas/cubicBezierToken.js +10 -2
- package/dist/build/schemas/designToken.d.ts +1 -1
- package/dist/build/schemas/designToken.js +113 -21
- package/dist/build/schemas/dimensionToken.d.ts +14 -3
- package/dist/build/schemas/dimensionToken.js +6 -2
- package/dist/build/schemas/dimensionValue.d.ts +24 -1
- package/dist/build/schemas/dimensionValue.js +20 -1
- package/dist/build/schemas/durationToken.d.ts +13 -1
- package/dist/build/schemas/durationToken.js +6 -0
- package/dist/build/schemas/durationValue.d.ts +11 -1
- package/dist/build/schemas/durationValue.js +13 -3
- package/dist/build/schemas/fontFamilyToken.d.ts +4 -0
- package/dist/build/schemas/fontFamilyToken.js +2 -0
- package/dist/build/schemas/fontWeightToken.d.ts +4 -0
- package/dist/build/schemas/fontWeightToken.js +2 -0
- package/dist/build/schemas/gradientToken.d.ts +4 -0
- package/dist/build/schemas/gradientToken.js +2 -0
- package/dist/build/schemas/llmExtension.d.ts +9 -0
- package/dist/build/schemas/llmExtension.js +11 -0
- package/dist/build/schemas/numberToken.d.ts +4 -0
- package/dist/build/schemas/numberToken.js +2 -0
- package/dist/build/schemas/shadowToken.d.ts +676 -84
- package/dist/build/schemas/shadowToken.js +2 -0
- package/dist/build/schemas/stringToken.d.ts +6 -0
- package/dist/build/schemas/stringToken.js +6 -0
- package/dist/build/schemas/transitionToken.d.ts +20 -2
- package/dist/build/schemas/transitionToken.js +6 -0
- package/dist/build/schemas/typographyToken.d.ts +38 -4
- package/dist/build/schemas/typographyToken.js +6 -0
- package/dist/build/schemas/validTokenType.d.ts +5 -1
- package/dist/build/schemas/validTokenType.js +71 -17
- package/dist/build/schemas/viewportRangeToken.d.ts +6 -0
- package/dist/build/schemas/viewportRangeToken.js +6 -0
- package/dist/build/transformers/dimensionToPixelUnitless.d.ts +3 -2
- package/dist/build/transformers/dimensionToPixelUnitless.js +22 -26
- package/dist/build/transformers/dimensionToRem.d.ts +2 -1
- package/dist/build/transformers/dimensionToRem.js +21 -22
- package/dist/build/transformers/dimensionToRemPxArray.d.ts +2 -1
- package/dist/build/transformers/dimensionToRemPxArray.js +21 -22
- package/dist/build/transformers/durationToCss.d.ts +2 -1
- package/dist/build/transformers/durationToCss.js +18 -11
- package/dist/build/transformers/utilities/parseDimension.d.ts +12 -0
- package/dist/build/transformers/utilities/parseDimension.js +31 -0
- package/dist/build/types/dimensionTokenValue.d.ts +9 -0
- package/dist/css/base/motion/motion.css +5 -4
- package/dist/css/functional/size/border.css +9 -14
- package/dist/css/functional/size/radius.css +7 -0
- package/dist/css/functional/size/size-coarse.css +3 -3
- package/dist/css/functional/size/size-fine.css +3 -3
- package/dist/css/functional/size/viewport.css +1 -1
- package/dist/css/functional/themes/dark-colorblind-high-contrast.css +194 -190
- package/dist/css/functional/themes/dark-colorblind.css +194 -190
- package/dist/css/functional/themes/dark-dimmed-high-contrast.css +194 -190
- package/dist/css/functional/themes/dark-dimmed.css +194 -190
- package/dist/css/functional/themes/dark-high-contrast.css +194 -190
- package/dist/css/functional/themes/dark-tritanopia-high-contrast.css +194 -190
- package/dist/css/functional/themes/dark-tritanopia.css +194 -190
- package/dist/css/functional/themes/dark.css +194 -190
- package/dist/css/functional/themes/light-colorblind-high-contrast.css +194 -190
- package/dist/css/functional/themes/light-colorblind.css +194 -190
- package/dist/css/functional/themes/light-high-contrast.css +194 -190
- package/dist/css/functional/themes/light-tritanopia-high-contrast.css +194 -190
- package/dist/css/functional/themes/light-tritanopia.css +194 -190
- package/dist/css/functional/themes/light.css +194 -190
- package/dist/css/functional/typography/typography.css +4 -4
- package/dist/css/primitives.css +5 -0
- package/dist/docs/base/motion/motion.json +181 -32
- package/dist/docs/base/size/size.json +76 -19
- package/dist/docs/base/typography/typography.json +24 -6
- package/dist/docs/functional/size/border.json +62 -182
- package/dist/docs/functional/size/breakpoints.json +24 -6
- package/dist/docs/functional/size/radius.json +221 -0
- package/dist/docs/functional/size/size-coarse.json +45 -3
- package/dist/docs/functional/size/size-fine.json +45 -3
- package/dist/docs/functional/size/size.json +60 -15
- package/dist/docs/functional/size/viewport.json +2 -2
- package/dist/docs/functional/themes/dark-colorblind-high-contrast.json +1043 -97
- package/dist/docs/functional/themes/dark-colorblind.json +1043 -97
- package/dist/docs/functional/themes/dark-dimmed-high-contrast.json +1043 -97
- package/dist/docs/functional/themes/dark-dimmed.json +1081 -135
- package/dist/docs/functional/themes/dark-high-contrast.json +1043 -97
- package/dist/docs/functional/themes/dark-tritanopia-high-contrast.json +1043 -97
- package/dist/docs/functional/themes/dark-tritanopia.json +1043 -97
- package/dist/docs/functional/themes/dark.json +1043 -97
- package/dist/docs/functional/themes/light-colorblind-high-contrast.json +1049 -103
- package/dist/docs/functional/themes/light-colorblind.json +1049 -103
- package/dist/docs/functional/themes/light-high-contrast.json +1049 -103
- package/dist/docs/functional/themes/light-tritanopia-high-contrast.json +1049 -103
- package/dist/docs/functional/themes/light-tritanopia.json +1049 -103
- package/dist/docs/functional/themes/light.json +1049 -103
- package/dist/docs/functional/typography/typography.json +180 -10
- package/dist/fallbacks/base/motion/motion.json +49 -12
- package/dist/fallbacks/functional/size/border.json +0 -5
- package/dist/fallbacks/functional/size/radius.json +7 -0
- package/dist/fallbacks/functional/size/viewport.json +1 -1
- package/dist/figma/dimension/dimension.json +30 -20
- package/dist/figma/themes/dark-colorblind.json +85 -0
- package/dist/figma/themes/dark-dimmed.json +134 -49
- package/dist/figma/themes/dark-high-contrast.json +85 -0
- package/dist/figma/themes/dark-tritanopia.json +85 -0
- package/dist/figma/themes/dark.json +85 -0
- package/dist/figma/themes/light-colorblind.json +89 -4
- package/dist/figma/themes/light-high-contrast.json +89 -4
- package/dist/figma/themes/light-tritanopia.json +89 -4
- package/dist/figma/themes/light.json +89 -4
- package/dist/figma/typography/typography.json +44 -40
- package/dist/internalCss/dark-colorblind-high-contrast.css +208 -218
- package/dist/internalCss/dark-colorblind.css +208 -218
- package/dist/internalCss/dark-dimmed-high-contrast.css +208 -218
- package/dist/internalCss/dark-dimmed.css +208 -218
- package/dist/internalCss/dark-high-contrast.css +208 -218
- package/dist/internalCss/dark-tritanopia-high-contrast.css +208 -218
- package/dist/internalCss/dark-tritanopia.css +208 -218
- package/dist/internalCss/dark.css +208 -218
- package/dist/internalCss/light-colorblind-high-contrast.css +208 -218
- package/dist/internalCss/light-colorblind.css +208 -218
- package/dist/internalCss/light-high-contrast.css +208 -218
- package/dist/internalCss/light-tritanopia-high-contrast.css +208 -218
- package/dist/internalCss/light-tritanopia.css +208 -218
- package/dist/internalCss/light.css +208 -218
- package/dist/styleLint/base/motion/motion.json +181 -32
- package/dist/styleLint/base/size/size.json +76 -19
- package/dist/styleLint/base/typography/typography.json +30 -12
- package/dist/styleLint/functional/size/border.json +55 -175
- package/dist/styleLint/functional/size/breakpoints.json +24 -6
- package/dist/styleLint/functional/size/radius.json +221 -0
- package/dist/styleLint/functional/size/size-coarse.json +45 -3
- package/dist/styleLint/functional/size/size-fine.json +45 -3
- package/dist/styleLint/functional/size/size.json +111 -66
- package/dist/styleLint/functional/size/viewport.json +2 -2
- package/dist/styleLint/functional/themes/dark-colorblind-high-contrast.json +975 -29
- package/dist/styleLint/functional/themes/dark-colorblind.json +975 -29
- package/dist/styleLint/functional/themes/dark-dimmed-high-contrast.json +975 -29
- package/dist/styleLint/functional/themes/dark-dimmed.json +1013 -67
- package/dist/styleLint/functional/themes/dark-high-contrast.json +975 -29
- package/dist/styleLint/functional/themes/dark-tritanopia-high-contrast.json +975 -29
- package/dist/styleLint/functional/themes/dark-tritanopia.json +975 -29
- package/dist/styleLint/functional/themes/dark.json +975 -29
- package/dist/styleLint/functional/themes/light-colorblind-high-contrast.json +981 -35
- package/dist/styleLint/functional/themes/light-colorblind.json +981 -35
- package/dist/styleLint/functional/themes/light-high-contrast.json +981 -35
- package/dist/styleLint/functional/themes/light-tritanopia-high-contrast.json +981 -35
- package/dist/styleLint/functional/themes/light-tritanopia.json +981 -35
- package/dist/styleLint/functional/themes/light.json +981 -35
- package/dist/styleLint/functional/typography/typography.json +196 -26
- package/package.json +6 -3
- package/src/tokens/base/motion/easing.json5 +39 -4
- package/src/tokens/base/motion/timing.json5 +12 -12
- package/src/tokens/base/size/size.json5 +19 -19
- package/src/tokens/base/typography/typography.json5 +6 -6
- package/src/tokens/functional/border/border.json5 +25 -0
- package/src/tokens/functional/color/bgColor.json5 +165 -0
- package/src/tokens/functional/color/borderColor.json5 +146 -0
- package/src/tokens/functional/color/control.json5 +24 -0
- package/src/tokens/functional/color/data-vis.json5 +7 -0
- package/src/tokens/functional/color/display.json5 +7 -0
- package/src/tokens/functional/color/fgColor.json5 +101 -1
- package/src/tokens/functional/color/focus.json5 +5 -0
- package/src/tokens/functional/color/selection.json5 +5 -0
- package/src/tokens/functional/color/syntax.json5 +14 -0
- package/src/tokens/functional/shadow/shadow.json5 +49 -4
- package/src/tokens/functional/size/border.json5 +22 -74
- package/src/tokens/functional/size/breakpoints.json5 +6 -6
- package/src/tokens/functional/size/radius.json5 +90 -0
- package/src/tokens/functional/size/size-coarse.json5 +24 -3
- package/src/tokens/functional/size/size-fine.json5 +45 -24
- package/src/tokens/functional/size/size.json5 +50 -15
- package/src/tokens/functional/size/viewport.json5 +1 -1
- package/src/tokens/functional/typography/font-stack.json5 +60 -0
- package/src/tokens/functional/typography/typography.json5 +71 -44
- package/dist/build/parsers/index.d.ts +0 -1
- package/dist/build/parsers/index.js +0 -1
- package/dist/build/parsers/w3cJsonParser.d.ts +0 -6
- package/dist/build/parsers/w3cJsonParser.js +0 -25
- package/dist/removed/testing.json5 +0 -4
- package/src/tokens/removed/testing.json5 +0 -4
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
{
|
|
2
|
+
"borderRadius-default": {
|
|
3
|
+
"key": "{borderRadius.default}",
|
|
4
|
+
"$value": ["0.375rem", "6px"],
|
|
5
|
+
"$description": "Default border radius for most UI elements. Alias of borderRadius.medium (6px). Use when in doubt",
|
|
6
|
+
"$type": "dimension",
|
|
7
|
+
"$extensions": {
|
|
8
|
+
"org.primer.figma": {
|
|
9
|
+
"collection": "functional/size",
|
|
10
|
+
"scopes": ["radius"],
|
|
11
|
+
"codeSyntax": {
|
|
12
|
+
"web": "var(--borderRadius-default) /* utility class: .rounded-2 */"
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"filePath": "src/tokens/functional/size/radius.json5",
|
|
17
|
+
"isSource": true,
|
|
18
|
+
"original": {
|
|
19
|
+
"$value": "{borderRadius.medium}",
|
|
20
|
+
"$description": "Default border radius for most UI elements. Alias of borderRadius.medium (6px). Use when in doubt",
|
|
21
|
+
"$type": "dimension",
|
|
22
|
+
"$extensions": {
|
|
23
|
+
"org.primer.figma": {
|
|
24
|
+
"collection": "functional/size",
|
|
25
|
+
"scopes": ["radius"],
|
|
26
|
+
"codeSyntax": {
|
|
27
|
+
"web": "var(--borderRadius-default) /* utility class: .rounded-2 */"
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"key": "{borderRadius.default}"
|
|
32
|
+
},
|
|
33
|
+
"name": "borderRadius-default",
|
|
34
|
+
"attributes": {},
|
|
35
|
+
"path": ["borderRadius", "default"]
|
|
36
|
+
},
|
|
37
|
+
"borderRadius-full": {
|
|
38
|
+
"key": "{borderRadius.full}",
|
|
39
|
+
"$value": ["624.9375rem", "9999px"],
|
|
40
|
+
"$type": "dimension",
|
|
41
|
+
"$description": "Use this border radius for pill shaped elements",
|
|
42
|
+
"$extensions": {
|
|
43
|
+
"org.primer.figma": {
|
|
44
|
+
"collection": "functional/size",
|
|
45
|
+
"scopes": ["radius"],
|
|
46
|
+
"codeSyntax": {
|
|
47
|
+
"web": "var(--borderRadius-full) /* utility class: .circle */"
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
"org.primer.llm": {
|
|
51
|
+
"usage": ["avatar", "pill-badge", "circular-button"],
|
|
52
|
+
"rules": "Use for avatars and pill-shaped elements. Do NOT use for rectangular containers."
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
"filePath": "src/tokens/functional/size/radius.json5",
|
|
56
|
+
"isSource": true,
|
|
57
|
+
"original": {
|
|
58
|
+
"$value": {
|
|
59
|
+
"value": 9999,
|
|
60
|
+
"unit": "px"
|
|
61
|
+
},
|
|
62
|
+
"$type": "dimension",
|
|
63
|
+
"$description": "Use this border radius for pill shaped elements",
|
|
64
|
+
"$extensions": {
|
|
65
|
+
"org.primer.figma": {
|
|
66
|
+
"collection": "functional/size",
|
|
67
|
+
"scopes": ["radius"],
|
|
68
|
+
"codeSyntax": {
|
|
69
|
+
"web": "var(--borderRadius-full) /* utility class: .circle */"
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
"org.primer.llm": {
|
|
73
|
+
"usage": ["avatar", "pill-badge", "circular-button"],
|
|
74
|
+
"rules": "Use for avatars and pill-shaped elements. Do NOT use for rectangular containers."
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
"key": "{borderRadius.full}"
|
|
78
|
+
},
|
|
79
|
+
"name": "borderRadius-full",
|
|
80
|
+
"attributes": {},
|
|
81
|
+
"path": ["borderRadius", "full"]
|
|
82
|
+
},
|
|
83
|
+
"borderRadius-large": {
|
|
84
|
+
"key": "{borderRadius.large}",
|
|
85
|
+
"$value": ["0.75rem", "12px"],
|
|
86
|
+
"$description": "Large border radius (12px). Use for larger containers, dialogs, or when more visual softness is desired. Always use this for buttons.",
|
|
87
|
+
"$type": "dimension",
|
|
88
|
+
"$extensions": {
|
|
89
|
+
"org.primer.figma": {
|
|
90
|
+
"collection": "functional/size",
|
|
91
|
+
"scopes": ["radius"],
|
|
92
|
+
"codeSyntax": {
|
|
93
|
+
"web": "var(--borderRadius-large) /* utility class: .rounded-3 */"
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
"org.primer.llm": {
|
|
97
|
+
"usage": ["dialog", "card", "modal"],
|
|
98
|
+
"rules": "Recommended for dialogs and modals."
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
"filePath": "src/tokens/functional/size/radius.json5",
|
|
102
|
+
"isSource": true,
|
|
103
|
+
"original": {
|
|
104
|
+
"$value": {
|
|
105
|
+
"value": 12,
|
|
106
|
+
"unit": "px"
|
|
107
|
+
},
|
|
108
|
+
"$description": "Large border radius (12px). Use for larger containers, dialogs, or when more visual softness is desired. Always use this for buttons.",
|
|
109
|
+
"$type": "dimension",
|
|
110
|
+
"$extensions": {
|
|
111
|
+
"org.primer.figma": {
|
|
112
|
+
"collection": "functional/size",
|
|
113
|
+
"scopes": ["radius"],
|
|
114
|
+
"codeSyntax": {
|
|
115
|
+
"web": "var(--borderRadius-large) /* utility class: .rounded-3 */"
|
|
116
|
+
}
|
|
117
|
+
},
|
|
118
|
+
"org.primer.llm": {
|
|
119
|
+
"usage": ["dialog", "card", "modal"],
|
|
120
|
+
"rules": "Recommended for dialogs and modals."
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
"key": "{borderRadius.large}"
|
|
124
|
+
},
|
|
125
|
+
"name": "borderRadius-large",
|
|
126
|
+
"attributes": {},
|
|
127
|
+
"path": ["borderRadius", "large"]
|
|
128
|
+
},
|
|
129
|
+
"borderRadius-medium": {
|
|
130
|
+
"key": "{borderRadius.medium}",
|
|
131
|
+
"$value": ["0.375rem", "6px"],
|
|
132
|
+
"$description": "Medium border radius (6px). The default choice for most buttons, cards, and containers",
|
|
133
|
+
"$type": "dimension",
|
|
134
|
+
"$extensions": {
|
|
135
|
+
"org.primer.figma": {
|
|
136
|
+
"collection": "functional/size",
|
|
137
|
+
"scopes": ["radius"],
|
|
138
|
+
"codeSyntax": {
|
|
139
|
+
"web": "var(--borderRadius-medium) /* utility class: .rounded-2 */"
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
"org.primer.llm": {
|
|
143
|
+
"usage": ["button", "input", "textarea", "select", "card", "container"],
|
|
144
|
+
"rules": "Default choice for most components. Use for inputs, cards, and general containers."
|
|
145
|
+
}
|
|
146
|
+
},
|
|
147
|
+
"filePath": "src/tokens/functional/size/radius.json5",
|
|
148
|
+
"isSource": true,
|
|
149
|
+
"original": {
|
|
150
|
+
"$value": {
|
|
151
|
+
"value": 6,
|
|
152
|
+
"unit": "px"
|
|
153
|
+
},
|
|
154
|
+
"$description": "Medium border radius (6px). The default choice for most buttons, cards, and containers",
|
|
155
|
+
"$type": "dimension",
|
|
156
|
+
"$extensions": {
|
|
157
|
+
"org.primer.figma": {
|
|
158
|
+
"collection": "functional/size",
|
|
159
|
+
"scopes": ["radius"],
|
|
160
|
+
"codeSyntax": {
|
|
161
|
+
"web": "var(--borderRadius-medium) /* utility class: .rounded-2 */"
|
|
162
|
+
}
|
|
163
|
+
},
|
|
164
|
+
"org.primer.llm": {
|
|
165
|
+
"usage": ["button", "input", "textarea", "select", "card", "container"],
|
|
166
|
+
"rules": "Default choice for most components. Use for inputs, cards, and general containers."
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
"key": "{borderRadius.medium}"
|
|
170
|
+
},
|
|
171
|
+
"name": "borderRadius-medium",
|
|
172
|
+
"attributes": {},
|
|
173
|
+
"path": ["borderRadius", "medium"]
|
|
174
|
+
},
|
|
175
|
+
"borderRadius-small": {
|
|
176
|
+
"key": "{borderRadius.small}",
|
|
177
|
+
"$value": ["0.1875rem", "3px"],
|
|
178
|
+
"$description": "Small border radius (3px). Use for small variants of components or small UI elements like badges, tags, or anything below 16px in height",
|
|
179
|
+
"$type": "dimension",
|
|
180
|
+
"$extensions": {
|
|
181
|
+
"org.primer.figma": {
|
|
182
|
+
"collection": "functional/size",
|
|
183
|
+
"scopes": ["radius"],
|
|
184
|
+
"codeSyntax": {
|
|
185
|
+
"web": "var(--borderRadius-small) /* utility class: .rounded-1 */"
|
|
186
|
+
}
|
|
187
|
+
},
|
|
188
|
+
"org.primer.llm": {
|
|
189
|
+
"usage": ["badge", "tag", "label", "small-input"],
|
|
190
|
+
"rules": "Use for small UI elements under 16px height. Do NOT use for buttons or cards."
|
|
191
|
+
}
|
|
192
|
+
},
|
|
193
|
+
"filePath": "src/tokens/functional/size/radius.json5",
|
|
194
|
+
"isSource": true,
|
|
195
|
+
"original": {
|
|
196
|
+
"$value": {
|
|
197
|
+
"value": 3,
|
|
198
|
+
"unit": "px"
|
|
199
|
+
},
|
|
200
|
+
"$description": "Small border radius (3px). Use for small variants of components or small UI elements like badges, tags, or anything below 16px in height",
|
|
201
|
+
"$type": "dimension",
|
|
202
|
+
"$extensions": {
|
|
203
|
+
"org.primer.figma": {
|
|
204
|
+
"collection": "functional/size",
|
|
205
|
+
"scopes": ["radius"],
|
|
206
|
+
"codeSyntax": {
|
|
207
|
+
"web": "var(--borderRadius-small) /* utility class: .rounded-1 */"
|
|
208
|
+
}
|
|
209
|
+
},
|
|
210
|
+
"org.primer.llm": {
|
|
211
|
+
"usage": ["badge", "tag", "label", "small-input"],
|
|
212
|
+
"rules": "Use for small UI elements under 16px height. Do NOT use for buttons or cards."
|
|
213
|
+
}
|
|
214
|
+
},
|
|
215
|
+
"key": "{borderRadius.small}"
|
|
216
|
+
},
|
|
217
|
+
"name": "borderRadius-small",
|
|
218
|
+
"attributes": {},
|
|
219
|
+
"path": ["borderRadius", "small"]
|
|
220
|
+
}
|
|
221
|
+
}
|
|
@@ -1,13 +1,27 @@
|
|
|
1
1
|
{
|
|
2
2
|
"control-minTarget-auto": {
|
|
3
3
|
"key": "{control.minTarget.auto}",
|
|
4
|
-
"$value": ["
|
|
4
|
+
"$value": ["2.75rem", "44px"],
|
|
5
5
|
"$type": "dimension",
|
|
6
|
+
"$description": "Minimum touch target size for coarse pointer devices (touch screens)",
|
|
7
|
+
"$extensions": {
|
|
8
|
+
"org.primer.llm": {
|
|
9
|
+
"usage": ["touch-target", "mobile-button", "tap-area"],
|
|
10
|
+
"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."
|
|
11
|
+
}
|
|
12
|
+
},
|
|
6
13
|
"filePath": "src/tokens/functional/size/size-coarse.json5",
|
|
7
14
|
"isSource": true,
|
|
8
15
|
"original": {
|
|
9
16
|
"$value": "{base.size.44}",
|
|
10
17
|
"$type": "dimension",
|
|
18
|
+
"$description": "Minimum touch target size for coarse pointer devices (touch screens)",
|
|
19
|
+
"$extensions": {
|
|
20
|
+
"org.primer.llm": {
|
|
21
|
+
"usage": ["touch-target", "mobile-button", "tap-area"],
|
|
22
|
+
"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."
|
|
23
|
+
}
|
|
24
|
+
},
|
|
11
25
|
"key": "{control.minTarget.auto}"
|
|
12
26
|
},
|
|
13
27
|
"name": "control-minTarget-auto",
|
|
@@ -16,13 +30,27 @@
|
|
|
16
30
|
},
|
|
17
31
|
"controlStack-medium-gap-auto": {
|
|
18
32
|
"key": "{controlStack.medium.gap.auto}",
|
|
19
|
-
"$value": ["0.
|
|
33
|
+
"$value": ["0.75rem", "12px"],
|
|
20
34
|
"$type": "dimension",
|
|
35
|
+
"$description": "Gap between stacked controls in medium density layouts for touch devices",
|
|
36
|
+
"$extensions": {
|
|
37
|
+
"org.primer.llm": {
|
|
38
|
+
"usage": ["touch-control-spacing", "mobile-form-gap", "stacked-buttons"],
|
|
39
|
+
"rules": "Use for spacing between interactive controls on touch devices in standard layouts. Do NOT use for desktop/mouse interfaces."
|
|
40
|
+
}
|
|
41
|
+
},
|
|
21
42
|
"filePath": "src/tokens/functional/size/size-coarse.json5",
|
|
22
43
|
"isSource": true,
|
|
23
44
|
"original": {
|
|
24
45
|
"$value": "{base.size.12}",
|
|
25
46
|
"$type": "dimension",
|
|
47
|
+
"$description": "Gap between stacked controls in medium density layouts for touch devices",
|
|
48
|
+
"$extensions": {
|
|
49
|
+
"org.primer.llm": {
|
|
50
|
+
"usage": ["touch-control-spacing", "mobile-form-gap", "stacked-buttons"],
|
|
51
|
+
"rules": "Use for spacing between interactive controls on touch devices in standard layouts. Do NOT use for desktop/mouse interfaces."
|
|
52
|
+
}
|
|
53
|
+
},
|
|
26
54
|
"key": "{controlStack.medium.gap.auto}"
|
|
27
55
|
},
|
|
28
56
|
"name": "controlStack-medium-gap-auto",
|
|
@@ -31,13 +59,27 @@
|
|
|
31
59
|
},
|
|
32
60
|
"controlStack-small-gap-auto": {
|
|
33
61
|
"key": "{controlStack.small.gap.auto}",
|
|
34
|
-
"$value": ["
|
|
62
|
+
"$value": ["1rem", "16px"],
|
|
35
63
|
"$type": "dimension",
|
|
64
|
+
"$description": "Gap between stacked controls in small density layouts for touch devices",
|
|
65
|
+
"$extensions": {
|
|
66
|
+
"org.primer.llm": {
|
|
67
|
+
"usage": ["touch-control-spacing", "mobile-form-gap", "stacked-buttons"],
|
|
68
|
+
"rules": "Use for spacing between interactive controls on touch devices in compact layouts. Provides adequate touch separation. Do NOT use for desktop/mouse interfaces."
|
|
69
|
+
}
|
|
70
|
+
},
|
|
36
71
|
"filePath": "src/tokens/functional/size/size-coarse.json5",
|
|
37
72
|
"isSource": true,
|
|
38
73
|
"original": {
|
|
39
74
|
"$value": "{base.size.16}",
|
|
40
75
|
"$type": "dimension",
|
|
76
|
+
"$description": "Gap between stacked controls in small density layouts for touch devices",
|
|
77
|
+
"$extensions": {
|
|
78
|
+
"org.primer.llm": {
|
|
79
|
+
"usage": ["touch-control-spacing", "mobile-form-gap", "stacked-buttons"],
|
|
80
|
+
"rules": "Use for spacing between interactive controls on touch devices in compact layouts. Provides adequate touch separation. Do NOT use for desktop/mouse interfaces."
|
|
81
|
+
}
|
|
82
|
+
},
|
|
41
83
|
"key": "{controlStack.small.gap.auto}"
|
|
42
84
|
},
|
|
43
85
|
"name": "controlStack-small-gap-auto",
|
|
@@ -1,13 +1,27 @@
|
|
|
1
1
|
{
|
|
2
2
|
"control-minTarget-auto": {
|
|
3
3
|
"key": "{control.minTarget.auto}",
|
|
4
|
-
"$value": ["
|
|
4
|
+
"$value": ["1rem", "16px"],
|
|
5
5
|
"$type": "dimension",
|
|
6
|
+
"$description": "Minimum target size for fine pointer devices (mouse)",
|
|
7
|
+
"$extensions": {
|
|
8
|
+
"org.primer.llm": {
|
|
9
|
+
"usage": ["mouse-target", "desktop-button", "click-area"],
|
|
10
|
+
"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."
|
|
11
|
+
}
|
|
12
|
+
},
|
|
6
13
|
"filePath": "src/tokens/functional/size/size-fine.json5",
|
|
7
14
|
"isSource": true,
|
|
8
15
|
"original": {
|
|
9
16
|
"$value": "{base.size.16}",
|
|
10
17
|
"$type": "dimension",
|
|
18
|
+
"$description": "Minimum target size for fine pointer devices (mouse)",
|
|
19
|
+
"$extensions": {
|
|
20
|
+
"org.primer.llm": {
|
|
21
|
+
"usage": ["mouse-target", "desktop-button", "click-area"],
|
|
22
|
+
"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."
|
|
23
|
+
}
|
|
24
|
+
},
|
|
11
25
|
"key": "{control.minTarget.auto}"
|
|
12
26
|
},
|
|
13
27
|
"name": "control-minTarget-auto",
|
|
@@ -16,13 +30,27 @@
|
|
|
16
30
|
},
|
|
17
31
|
"controlStack-medium-gap-auto": {
|
|
18
32
|
"key": "{controlStack.medium.gap.auto}",
|
|
19
|
-
"$value": ["0.
|
|
33
|
+
"$value": ["0.5rem", "8px"],
|
|
20
34
|
"$type": "dimension",
|
|
35
|
+
"$description": "Gap between stacked controls in medium density layouts for mouse interfaces",
|
|
36
|
+
"$extensions": {
|
|
37
|
+
"org.primer.llm": {
|
|
38
|
+
"usage": ["desktop-control-spacing", "form-gap", "stacked-buttons"],
|
|
39
|
+
"rules": "Use for spacing between interactive controls on desktop in standard layouts. Do NOT use for mobile/touch interfaces."
|
|
40
|
+
}
|
|
41
|
+
},
|
|
21
42
|
"filePath": "src/tokens/functional/size/size-fine.json5",
|
|
22
43
|
"isSource": true,
|
|
23
44
|
"original": {
|
|
24
45
|
"$value": "{base.size.8}",
|
|
25
46
|
"$type": "dimension",
|
|
47
|
+
"$description": "Gap between stacked controls in medium density layouts for mouse interfaces",
|
|
48
|
+
"$extensions": {
|
|
49
|
+
"org.primer.llm": {
|
|
50
|
+
"usage": ["desktop-control-spacing", "form-gap", "stacked-buttons"],
|
|
51
|
+
"rules": "Use for spacing between interactive controls on desktop in standard layouts. Do NOT use for mobile/touch interfaces."
|
|
52
|
+
}
|
|
53
|
+
},
|
|
26
54
|
"key": "{controlStack.medium.gap.auto}"
|
|
27
55
|
},
|
|
28
56
|
"name": "controlStack-medium-gap-auto",
|
|
@@ -31,13 +59,27 @@
|
|
|
31
59
|
},
|
|
32
60
|
"controlStack-small-gap-auto": {
|
|
33
61
|
"key": "{controlStack.small.gap.auto}",
|
|
34
|
-
"$value": ["0.
|
|
62
|
+
"$value": ["0.5rem", "8px"],
|
|
35
63
|
"$type": "dimension",
|
|
64
|
+
"$description": "Gap between stacked controls in small density layouts for mouse interfaces",
|
|
65
|
+
"$extensions": {
|
|
66
|
+
"org.primer.llm": {
|
|
67
|
+
"usage": ["desktop-control-spacing", "form-gap", "stacked-buttons"],
|
|
68
|
+
"rules": "Use for spacing between interactive controls on desktop in compact layouts. Tighter spacing than touch devices. Do NOT use for mobile/touch interfaces."
|
|
69
|
+
}
|
|
70
|
+
},
|
|
36
71
|
"filePath": "src/tokens/functional/size/size-fine.json5",
|
|
37
72
|
"isSource": true,
|
|
38
73
|
"original": {
|
|
39
74
|
"$value": "{base.size.8}",
|
|
40
75
|
"$type": "dimension",
|
|
76
|
+
"$description": "Gap between stacked controls in small density layouts for mouse interfaces",
|
|
77
|
+
"$extensions": {
|
|
78
|
+
"org.primer.llm": {
|
|
79
|
+
"usage": ["desktop-control-spacing", "form-gap", "stacked-buttons"],
|
|
80
|
+
"rules": "Use for spacing between interactive controls on desktop in compact layouts. Tighter spacing than touch devices. Do NOT use for mobile/touch interfaces."
|
|
81
|
+
}
|
|
82
|
+
},
|
|
41
83
|
"key": "{controlStack.small.gap.auto}"
|
|
42
84
|
},
|
|
43
85
|
"name": "controlStack-small-gap-auto",
|