@@ -37,6 +37,9 @@ export function formatCAPTokenCssVar(varName: string): string {
3737 */
3838const FluentExtendedTokens = {
3939 'fluent-ext/borderRadius2XLarge' : { type : 'dimension' } ,
40+ 'fluent-ext/brandForegroundCompound' : { type : 'color' } ,
41+ // reason we need this token is the fluent version has value of "0" instead of "0px", which causes issues in CSS var usage
42+ 'fluent-ext/spacingHorizontalNone' : { type : 'dimension' } ,
4043} as const satisfies Record < AllowedTokenName , TokenSchema > ;
4144
4245/**
@@ -48,7 +51,42 @@ const ControlTokens = {
4851} as const satisfies Record < AllowedTokenName , TokenSchema > ;
4952
5053const BadgeTokens = {
51- 'fixme/ctrl/badge/color-brand-foreground-compound' : { type : 'color' } ,
54+ 'cap/badge-xl/corner-rounded' : { type : 'dimension' } ,
55+ 'cap/badge-l/corner-rounded' : { type : 'dimension' } ,
56+ 'cap/badge-xl/padding' : { type : 'dimension' } ,
57+ 'cap/badge-l/padding' : { type : 'dimension' } ,
58+ 'cap/badge-m/padding' : { type : 'dimension' } ,
59+ 'cap/badge-s/padding' : { type : 'dimension' } ,
60+ 'cap/badge-s/gap' : { type : 'dimension' } ,
61+ 'cap/badge-s/gap-toSecondaryIcon' : { type : 'dimension' } ,
62+ 'cap/badge/brand/outlined/stroke' : { type : 'color' } ,
63+ 'cap/badge/brand/tint/foreground' : { type : 'color' } ,
64+ 'cap/badge/brand/tint/iconColor' : { type : 'color' } ,
65+ 'cap/badge/brand/ghost/foreground' : { type : 'color' } ,
66+ 'cap/badge/brand/ghost/iconColor' : { type : 'color' } ,
67+ 'cap/badge/danger/outlined/stroke' : { type : 'color' } ,
68+ 'cap/badge/warning/filled/background' : { type : 'color' } ,
69+ 'cap/badge/warning/filled/iconColor' : { type : 'color' } ,
70+ 'cap/badge/warning/filled/foreground' : { type : 'color' } ,
71+ 'cap/badge/warning/outlined/stroke' : { type : 'color' } ,
72+ 'cap/badge/success/outlined/stroke' : { type : 'color' } ,
73+ 'cap/badge/informative/outlined/stroke' : { type : 'color' } ,
74+ 'cap/badge/informative/tint/background' : { type : 'color' } ,
75+ 'cap/badge/informative/tint/stroke' : { type : 'color' } ,
76+ 'cap/badge/important/filled/background' : { type : 'color' } ,
77+ 'cap/badge/important/filled/foreground' : { type : 'color' } ,
78+ 'cap/badge/important/filled/iconColor' : { type : 'color' } ,
79+ 'cap/badge/important/outlined/stroke' : { type : 'color' } ,
80+ 'cap/badge/important/tint/background' : { type : 'color' } ,
81+ 'cap/badge/important/tint/foreground' : { type : 'color' } ,
82+ 'cap/badge/important/tint/iconColor' : { type : 'color' } ,
83+ 'cap/badge/important/tint/stroke' : { type : 'color' } ,
84+ 'cap/badge/subtle/filled/background' : { type : 'color' } ,
85+ 'cap/badge/subtle/filled/foreground' : { type : 'color' } ,
86+ 'cap/badge/subtle/filled/iconColor' : { type : 'color' } ,
87+ 'cap/badge/subtle/outlined/foreground' : { type : 'color' } ,
88+ 'cap/badge/subtle/outlined/iconColor' : { type : 'color' } ,
89+ 'cap/badge/subtle/tint/stroke' : { type : 'color' } ,
5290} as const satisfies Record < AllowedTokenName , TokenSchema > ;
5391
5492const ButtonTokens = {
@@ -117,14 +155,55 @@ export type CAPTheme = {
117155export const CAP_THEME_DEFAULTS = {
118156 // fluent-ext
119157 'fluent-ext/borderRadius2XLarge' : '12px' ,
158+ 'fluent-ext/brandForegroundCompound' : '#03787C' ,
159+ 'fluent-ext/spacingHorizontalNone' : '0px' ,
120160
121161 // smtc/v1
122162 'smtc/v1/ctrl/corner/rest' : CAP_TOKENS [ 'fluent-ext/borderRadius2XLarge' ] ,
123163
124164 // badge
125- // TODO: switch to BrandForegroundCompound when available
126- 'fixme/ctrl/badge/color-brand-foreground-compound' :
127- tokens . colorBrandForeground1 ,
165+ 'cap/badge-xl/corner-rounded' : tokens . borderRadiusXLarge ,
166+ 'cap/badge-l/corner-rounded' : tokens . borderRadiusLarge ,
167+ 'cap/badge-xl/padding' : tokens . spacingHorizontalS ,
168+ 'cap/badge-l/padding' : tokens . spacingHorizontalSNudge ,
169+ 'cap/badge-m/padding' : tokens . spacingHorizontalSNudge ,
170+ 'cap/badge-s/padding' : tokens . spacingHorizontalXS ,
171+ 'cap/badge-s/gap' : CAP_TOKENS [ 'fluent-ext/spacingHorizontalNone' ] ,
172+ 'cap/badge-s/gap-toSecondaryIcon' :
173+ CAP_TOKENS [ 'fluent-ext/spacingHorizontalNone' ] ,
174+ 'cap/badge/brand/outlined/stroke' : tokens . colorBrandStroke2 ,
175+ 'cap/badge/brand/tint/foreground' :
176+ CAP_TOKENS [ 'fluent-ext/brandForegroundCompound' ] ,
177+ 'cap/badge/brand/tint/iconColor' :
178+ CAP_TOKENS [ 'fluent-ext/brandForegroundCompound' ] ,
179+ 'cap/badge/brand/ghost/foreground' :
180+ CAP_TOKENS [ 'fluent-ext/brandForegroundCompound' ] ,
181+ 'cap/badge/brand/ghost/iconColor' :
182+ CAP_TOKENS [ 'fluent-ext/brandForegroundCompound' ] ,
183+ 'cap/badge/danger/outlined/stroke' : tokens . colorStatusDangerBorder1 ,
184+ 'cap/badge/warning/filled/background' : tokens . colorStatusWarningBackground3 ,
185+ 'cap/badge/warning/filled/iconColor' : tokens . colorNeutralForegroundOnBrand ,
186+ 'cap/badge/warning/filled/foreground' : tokens . colorNeutralForegroundOnBrand ,
187+ 'cap/badge/warning/outlined/stroke' : tokens . colorStatusWarningBorder1 ,
188+ 'cap/badge/success/outlined/stroke' : tokens . colorStatusSuccessBorder1 ,
189+ 'cap/badge/informative/outlined/stroke' : tokens . colorNeutralStroke1 ,
190+ 'cap/badge/informative/tint/background' : tokens . colorNeutralBackground5 ,
191+ 'cap/badge/informative/tint/stroke' : tokens . colorNeutralStroke1 ,
192+ 'cap/badge/important/filled/background' :
193+ tokens . colorNeutralBackgroundInverted ,
194+ 'cap/badge/important/filled/foreground' : tokens . colorNeutralForegroundOnBrand ,
195+ 'cap/badge/important/filled/iconColor' : tokens . colorNeutralForegroundOnBrand ,
196+ 'cap/badge/important/outlined/stroke' : tokens . colorNeutralStroke1 ,
197+ 'cap/badge/important/tint/background' : tokens . colorNeutralBackground5 ,
198+ 'cap/badge/important/tint/foreground' : tokens . colorNeutralForeground3 ,
199+ 'cap/badge/important/tint/iconColor' : tokens . colorNeutralForeground3 ,
200+ 'cap/badge/important/tint/stroke' : tokens . colorNeutralStroke1 ,
201+ 'cap/badge/subtle/filled/background' : tokens . colorNeutralBackground5 ,
202+ 'cap/badge/subtle/filled/foreground' : tokens . colorNeutralForeground3 ,
203+ 'cap/badge/subtle/filled/iconColor' : tokens . colorNeutralForeground3 ,
204+ 'cap/badge/subtle/outlined/foreground' : tokens . colorNeutralForeground3 ,
205+ 'cap/badge/subtle/outlined/iconColor' : tokens . colorNeutralForeground3 ,
206+ 'cap/badge/subtle/tint/stroke' : tokens . colorNeutralStroke1 ,
128207
129208 // button
130209 'fixme/ctrl/button/corner-radius' : CAP_TOKENS [ 'smtc/v1/ctrl/corner/rest' ] ,
0 commit comments