@fluentui/react-button 0.0.0-nightly-20250703-1103.1 → 0.0.0-nightly-20250707-0406.1
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/CHANGELOG.md +13 -13
- package/package.json +10 -10
- package/lib/components/Button/useButtonStyles.styles.raw.js +0 -488
- package/lib/components/Button/useButtonStyles.styles.raw.js.map +0 -1
- package/lib/components/CompoundButton/useCompoundButtonStyles.styles.raw.js +0 -241
- package/lib/components/CompoundButton/useCompoundButtonStyles.styles.raw.js.map +0 -1
- package/lib/components/MenuButton/useMenuButtonStyles.styles.raw.js +0 -112
- package/lib/components/MenuButton/useMenuButtonStyles.styles.raw.js.map +0 -1
- package/lib/components/SplitButton/useSplitButtonStyles.styles.raw.js +0 -158
- package/lib/components/SplitButton/useSplitButtonStyles.styles.raw.js.map +0 -1
- package/lib/components/ToggleButton/useToggleButtonStyles.styles.raw.js +0 -226
- package/lib/components/ToggleButton/useToggleButtonStyles.styles.raw.js.map +0 -1
- package/lib-commonjs/components/Button/useButtonStyles.styles.raw.js +0 -495
- package/lib-commonjs/components/Button/useButtonStyles.styles.raw.js.map +0 -1
- package/lib-commonjs/components/CompoundButton/useCompoundButtonStyles.styles.raw.js +0 -253
- package/lib-commonjs/components/CompoundButton/useCompoundButtonStyles.styles.raw.js.map +0 -1
- package/lib-commonjs/components/MenuButton/useMenuButtonStyles.styles.raw.js +0 -129
- package/lib-commonjs/components/MenuButton/useMenuButtonStyles.styles.raw.js.map +0 -1
- package/lib-commonjs/components/SplitButton/useSplitButtonStyles.styles.raw.js +0 -174
- package/lib-commonjs/components/SplitButton/useSplitButtonStyles.styles.raw.js.map +0 -1
- package/lib-commonjs/components/ToggleButton/useToggleButtonStyles.styles.raw.js +0 -237
- package/lib-commonjs/components/ToggleButton/useToggleButtonStyles.styles.raw.js.map +0 -1
package/CHANGELOG.md
CHANGED
@@ -1,26 +1,26 @@
|
|
1
1
|
# Change Log - @fluentui/react-button
|
2
2
|
|
3
|
-
This log was last generated on
|
3
|
+
This log was last generated on Mon, 07 Jul 2025 04:22:58 GMT and should not be manually modified.
|
4
4
|
|
5
5
|
<!-- Start content -->
|
6
6
|
|
7
|
-
## [0.0.0-nightly-
|
7
|
+
## [0.0.0-nightly-20250707-0406.1](https://github.com/microsoft/fluentui/tree/@fluentui/react-button_v0.0.0-nightly-20250707-0406.1)
|
8
8
|
|
9
|
-
|
10
|
-
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-button_v9.5.3..@fluentui/react-button_v0.0.0-nightly-
|
9
|
+
Mon, 07 Jul 2025 04:22:58 GMT
|
10
|
+
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-button_v9.5.3..@fluentui/react-button_v0.0.0-nightly-20250707-0406.1)
|
11
11
|
|
12
12
|
### Changes
|
13
13
|
|
14
14
|
- Release nightly v9 ([commit](https://github.com/microsoft/fluentui/commit/not available) by fluentui-internal@service.microsoft.com)
|
15
|
-
- Bump @fluentui/keyboard-keys to v0.0.0-nightly-
|
16
|
-
- Bump @fluentui/react-aria to v0.0.0-nightly-
|
17
|
-
- Bump @fluentui/react-jsx-runtime to v0.0.0-nightly-
|
18
|
-
- Bump @fluentui/react-shared-contexts to v0.0.0-nightly-
|
19
|
-
- Bump @fluentui/react-tabster to v0.0.0-nightly-
|
20
|
-
- Bump @fluentui/react-theme to v0.0.0-nightly-
|
21
|
-
- Bump @fluentui/react-utilities to v0.0.0-nightly-
|
22
|
-
- Bump @fluentui/react-conformance to v0.0.0-nightly-
|
23
|
-
- Bump @fluentui/react-conformance-griffel to v0.0.0-nightly-
|
15
|
+
- Bump @fluentui/keyboard-keys to v0.0.0-nightly-20250707-0406.1 ([commit](https://github.com/microsoft/fluentui/commit/0f2f74845f342625c7dff5f00e75864a86e297cb) by beachball)
|
16
|
+
- Bump @fluentui/react-aria to v0.0.0-nightly-20250707-0406.1 ([commit](https://github.com/microsoft/fluentui/commit/0f2f74845f342625c7dff5f00e75864a86e297cb) by beachball)
|
17
|
+
- Bump @fluentui/react-jsx-runtime to v0.0.0-nightly-20250707-0406.1 ([commit](https://github.com/microsoft/fluentui/commit/0f2f74845f342625c7dff5f00e75864a86e297cb) by beachball)
|
18
|
+
- Bump @fluentui/react-shared-contexts to v0.0.0-nightly-20250707-0406.1 ([commit](https://github.com/microsoft/fluentui/commit/0f2f74845f342625c7dff5f00e75864a86e297cb) by beachball)
|
19
|
+
- Bump @fluentui/react-tabster to v0.0.0-nightly-20250707-0406.1 ([commit](https://github.com/microsoft/fluentui/commit/0f2f74845f342625c7dff5f00e75864a86e297cb) by beachball)
|
20
|
+
- Bump @fluentui/react-theme to v0.0.0-nightly-20250707-0406.1 ([commit](https://github.com/microsoft/fluentui/commit/0f2f74845f342625c7dff5f00e75864a86e297cb) by beachball)
|
21
|
+
- Bump @fluentui/react-utilities to v0.0.0-nightly-20250707-0406.1 ([commit](https://github.com/microsoft/fluentui/commit/0f2f74845f342625c7dff5f00e75864a86e297cb) by beachball)
|
22
|
+
- Bump @fluentui/react-conformance to v0.0.0-nightly-20250707-0406.1 ([commit](https://github.com/microsoft/fluentui/commit/0f2f74845f342625c7dff5f00e75864a86e297cb) by beachball)
|
23
|
+
- Bump @fluentui/react-conformance-griffel to v0.0.0-nightly-20250707-0406.1 ([commit](https://github.com/microsoft/fluentui/commit/0f2f74845f342625c7dff5f00e75864a86e297cb) by beachball)
|
24
24
|
|
25
25
|
## [9.5.3](https://github.com/microsoft/fluentui/tree/@fluentui/react-button_v9.5.3)
|
26
26
|
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@fluentui/react-button",
|
3
|
-
"version": "0.0.0-nightly-
|
3
|
+
"version": "0.0.0-nightly-20250707-0406.1",
|
4
4
|
"description": "Fluent UI React Button component.",
|
5
5
|
"main": "lib-commonjs/index.js",
|
6
6
|
"module": "lib/index.js",
|
@@ -14,19 +14,19 @@
|
|
14
14
|
"devDependencies": {
|
15
15
|
"@fluentui/a11y-testing": "*",
|
16
16
|
"@fluentui/eslint-plugin": "*",
|
17
|
-
"@fluentui/react-conformance": "0.0.0-nightly-
|
18
|
-
"@fluentui/react-conformance-griffel": "0.0.0-nightly-
|
17
|
+
"@fluentui/react-conformance": "0.0.0-nightly-20250707-0406.1",
|
18
|
+
"@fluentui/react-conformance-griffel": "0.0.0-nightly-20250707-0406.1",
|
19
19
|
"@fluentui/scripts-api-extractor": "*"
|
20
20
|
},
|
21
21
|
"dependencies": {
|
22
|
-
"@fluentui/keyboard-keys": "0.0.0-nightly-
|
23
|
-
"@fluentui/react-aria": "0.0.0-nightly-
|
22
|
+
"@fluentui/keyboard-keys": "0.0.0-nightly-20250707-0406.1",
|
23
|
+
"@fluentui/react-aria": "0.0.0-nightly-20250707-0406.1",
|
24
24
|
"@fluentui/react-icons": "^2.0.245",
|
25
|
-
"@fluentui/react-jsx-runtime": "0.0.0-nightly-
|
26
|
-
"@fluentui/react-shared-contexts": "0.0.0-nightly-
|
27
|
-
"@fluentui/react-tabster": "0.0.0-nightly-
|
28
|
-
"@fluentui/react-theme": "0.0.0-nightly-
|
29
|
-
"@fluentui/react-utilities": "0.0.0-nightly-
|
25
|
+
"@fluentui/react-jsx-runtime": "0.0.0-nightly-20250707-0406.1",
|
26
|
+
"@fluentui/react-shared-contexts": "0.0.0-nightly-20250707-0406.1",
|
27
|
+
"@fluentui/react-tabster": "0.0.0-nightly-20250707-0406.1",
|
28
|
+
"@fluentui/react-theme": "0.0.0-nightly-20250707-0406.1",
|
29
|
+
"@fluentui/react-utilities": "0.0.0-nightly-20250707-0406.1",
|
30
30
|
"@griffel/react": "^1.5.22",
|
31
31
|
"@swc/helpers": "^0.5.1"
|
32
32
|
},
|
@@ -1,488 +0,0 @@
|
|
1
|
-
import { iconFilledClassName, iconRegularClassName } from '@fluentui/react-icons';
|
2
|
-
import { createCustomFocusIndicatorStyle } from '@fluentui/react-tabster';
|
3
|
-
import { tokens } from '@fluentui/react-theme';
|
4
|
-
import { shorthands, makeStyles, makeResetStyles, mergeClasses } from '@griffel/react';
|
5
|
-
export const buttonClassNames = {
|
6
|
-
root: 'fui-Button',
|
7
|
-
icon: 'fui-Button__icon'
|
8
|
-
};
|
9
|
-
const iconSpacingVar = '--fui-Button__icon--spacing';
|
10
|
-
const buttonSpacingSmall = '3px';
|
11
|
-
const buttonSpacingSmallWithIcon = '1px';
|
12
|
-
const buttonSpacingMedium = '5px';
|
13
|
-
const buttonSpacingLarge = '8px';
|
14
|
-
const buttonSpacingLargeWithIcon = '7px';
|
15
|
-
/* Firefox has box shadow sizing issue at some zoom levels
|
16
|
-
* this will ensure the inset boxShadow is always uniform
|
17
|
-
* without affecting other browser platforms
|
18
|
-
*/ const boxShadowStrokeWidthThinMoz = `calc(${tokens.strokeWidthThin} + 0.25px)`;
|
19
|
-
const useRootBaseClassName = makeResetStyles({
|
20
|
-
alignItems: 'center',
|
21
|
-
boxSizing: 'border-box',
|
22
|
-
display: 'inline-flex',
|
23
|
-
justifyContent: 'center',
|
24
|
-
textDecorationLine: 'none',
|
25
|
-
verticalAlign: 'middle',
|
26
|
-
margin: 0,
|
27
|
-
overflow: 'hidden',
|
28
|
-
backgroundColor: tokens.colorNeutralBackground1,
|
29
|
-
color: tokens.colorNeutralForeground1,
|
30
|
-
border: `${tokens.strokeWidthThin} solid ${tokens.colorNeutralStroke1}`,
|
31
|
-
fontFamily: tokens.fontFamilyBase,
|
32
|
-
outlineStyle: 'none',
|
33
|
-
':hover': {
|
34
|
-
backgroundColor: tokens.colorNeutralBackground1Hover,
|
35
|
-
borderColor: tokens.colorNeutralStroke1Hover,
|
36
|
-
color: tokens.colorNeutralForeground1Hover,
|
37
|
-
cursor: 'pointer'
|
38
|
-
},
|
39
|
-
':hover:active': {
|
40
|
-
backgroundColor: tokens.colorNeutralBackground1Pressed,
|
41
|
-
borderColor: tokens.colorNeutralStroke1Pressed,
|
42
|
-
color: tokens.colorNeutralForeground1Pressed,
|
43
|
-
outlineStyle: 'none'
|
44
|
-
},
|
45
|
-
padding: `${buttonSpacingMedium} ${tokens.spacingHorizontalM}`,
|
46
|
-
minWidth: '96px',
|
47
|
-
borderRadius: tokens.borderRadiusMedium,
|
48
|
-
fontSize: tokens.fontSizeBase300,
|
49
|
-
fontWeight: tokens.fontWeightSemibold,
|
50
|
-
lineHeight: tokens.lineHeightBase300,
|
51
|
-
// Transition styles
|
52
|
-
transitionDuration: tokens.durationFaster,
|
53
|
-
transitionProperty: 'background, border, color',
|
54
|
-
transitionTimingFunction: tokens.curveEasyEase,
|
55
|
-
'@media screen and (prefers-reduced-motion: reduce)': {
|
56
|
-
transitionDuration: '0.01ms'
|
57
|
-
},
|
58
|
-
// High contrast styles
|
59
|
-
'@media (forced-colors: active)': {
|
60
|
-
':focus': {
|
61
|
-
borderColor: 'ButtonText'
|
62
|
-
},
|
63
|
-
':hover': {
|
64
|
-
backgroundColor: 'HighlightText',
|
65
|
-
borderColor: 'Highlight',
|
66
|
-
color: 'Highlight',
|
67
|
-
forcedColorAdjust: 'none'
|
68
|
-
},
|
69
|
-
':hover:active': {
|
70
|
-
backgroundColor: 'HighlightText',
|
71
|
-
borderColor: 'Highlight',
|
72
|
-
color: 'Highlight',
|
73
|
-
forcedColorAdjust: 'none'
|
74
|
-
}
|
75
|
-
},
|
76
|
-
// Focus styles
|
77
|
-
...createCustomFocusIndicatorStyle({
|
78
|
-
borderColor: tokens.colorStrokeFocus2,
|
79
|
-
borderRadius: tokens.borderRadiusMedium,
|
80
|
-
borderWidth: '1px',
|
81
|
-
outline: `${tokens.strokeWidthThick} solid ${tokens.colorTransparentStroke}`,
|
82
|
-
boxShadow: `0 0 0 ${tokens.strokeWidthThin} ${tokens.colorStrokeFocus2}
|
83
|
-
inset
|
84
|
-
`,
|
85
|
-
zIndex: 1
|
86
|
-
}),
|
87
|
-
// BUGFIX: Mozilla specific styles (Mozilla BugID: 1857642)
|
88
|
-
'@supports (-moz-appearance:button)': {
|
89
|
-
...createCustomFocusIndicatorStyle({
|
90
|
-
boxShadow: `0 0 0 ${boxShadowStrokeWidthThinMoz} ${tokens.colorStrokeFocus2}
|
91
|
-
inset
|
92
|
-
`
|
93
|
-
})
|
94
|
-
}
|
95
|
-
});
|
96
|
-
const useIconBaseClassName = makeResetStyles({
|
97
|
-
alignItems: 'center',
|
98
|
-
display: 'inline-flex',
|
99
|
-
justifyContent: 'center',
|
100
|
-
fontSize: '20px',
|
101
|
-
height: '20px',
|
102
|
-
width: '20px',
|
103
|
-
[iconSpacingVar]: tokens.spacingHorizontalSNudge
|
104
|
-
});
|
105
|
-
const useRootStyles = makeStyles({
|
106
|
-
// Appearance variations
|
107
|
-
outline: {
|
108
|
-
backgroundColor: tokens.colorTransparentBackground,
|
109
|
-
':hover': {
|
110
|
-
backgroundColor: tokens.colorTransparentBackgroundHover
|
111
|
-
},
|
112
|
-
':hover:active': {
|
113
|
-
backgroundColor: tokens.colorTransparentBackgroundPressed
|
114
|
-
}
|
115
|
-
},
|
116
|
-
primary: {
|
117
|
-
backgroundColor: tokens.colorBrandBackground,
|
118
|
-
...shorthands.borderColor('transparent'),
|
119
|
-
color: tokens.colorNeutralForegroundOnBrand,
|
120
|
-
':hover': {
|
121
|
-
backgroundColor: tokens.colorBrandBackgroundHover,
|
122
|
-
...shorthands.borderColor('transparent'),
|
123
|
-
color: tokens.colorNeutralForegroundOnBrand
|
124
|
-
},
|
125
|
-
':hover:active': {
|
126
|
-
backgroundColor: tokens.colorBrandBackgroundPressed,
|
127
|
-
...shorthands.borderColor('transparent'),
|
128
|
-
color: tokens.colorNeutralForegroundOnBrand
|
129
|
-
},
|
130
|
-
'@media (forced-colors: active)': {
|
131
|
-
backgroundColor: 'Highlight',
|
132
|
-
...shorthands.borderColor('HighlightText'),
|
133
|
-
color: 'HighlightText',
|
134
|
-
forcedColorAdjust: 'none',
|
135
|
-
':hover': {
|
136
|
-
backgroundColor: 'HighlightText',
|
137
|
-
...shorthands.borderColor('Highlight'),
|
138
|
-
color: 'Highlight'
|
139
|
-
},
|
140
|
-
':hover:active': {
|
141
|
-
backgroundColor: 'HighlightText',
|
142
|
-
...shorthands.borderColor('Highlight'),
|
143
|
-
color: 'Highlight'
|
144
|
-
}
|
145
|
-
}
|
146
|
-
},
|
147
|
-
secondary: {
|
148
|
-
},
|
149
|
-
subtle: {
|
150
|
-
backgroundColor: tokens.colorSubtleBackground,
|
151
|
-
...shorthands.borderColor('transparent'),
|
152
|
-
color: tokens.colorNeutralForeground2,
|
153
|
-
':hover': {
|
154
|
-
backgroundColor: tokens.colorSubtleBackgroundHover,
|
155
|
-
...shorthands.borderColor('transparent'),
|
156
|
-
color: tokens.colorNeutralForeground2Hover,
|
157
|
-
[`& .${iconFilledClassName}`]: {
|
158
|
-
display: 'inline'
|
159
|
-
},
|
160
|
-
[`& .${iconRegularClassName}`]: {
|
161
|
-
display: 'none'
|
162
|
-
},
|
163
|
-
[`& .${buttonClassNames.icon}`]: {
|
164
|
-
color: tokens.colorNeutralForeground2BrandHover
|
165
|
-
}
|
166
|
-
},
|
167
|
-
':hover:active': {
|
168
|
-
backgroundColor: tokens.colorSubtleBackgroundPressed,
|
169
|
-
...shorthands.borderColor('transparent'),
|
170
|
-
color: tokens.colorNeutralForeground2Pressed,
|
171
|
-
[`& .${iconFilledClassName}`]: {
|
172
|
-
display: 'inline'
|
173
|
-
},
|
174
|
-
[`& .${iconRegularClassName}`]: {
|
175
|
-
display: 'none'
|
176
|
-
},
|
177
|
-
[`& .${buttonClassNames.icon}`]: {
|
178
|
-
color: tokens.colorNeutralForeground2BrandPressed
|
179
|
-
}
|
180
|
-
},
|
181
|
-
'@media (forced-colors: active)': {
|
182
|
-
':hover': {
|
183
|
-
color: 'Highlight',
|
184
|
-
[`& .${buttonClassNames.icon}`]: {
|
185
|
-
color: 'Highlight'
|
186
|
-
}
|
187
|
-
},
|
188
|
-
':hover:active': {
|
189
|
-
color: 'Highlight',
|
190
|
-
[`& .${buttonClassNames.icon}`]: {
|
191
|
-
color: 'Highlight'
|
192
|
-
}
|
193
|
-
}
|
194
|
-
}
|
195
|
-
},
|
196
|
-
transparent: {
|
197
|
-
backgroundColor: tokens.colorTransparentBackground,
|
198
|
-
...shorthands.borderColor('transparent'),
|
199
|
-
color: tokens.colorNeutralForeground2,
|
200
|
-
':hover': {
|
201
|
-
backgroundColor: tokens.colorTransparentBackgroundHover,
|
202
|
-
...shorthands.borderColor('transparent'),
|
203
|
-
color: tokens.colorNeutralForeground2BrandHover,
|
204
|
-
[`& .${iconFilledClassName}`]: {
|
205
|
-
display: 'inline'
|
206
|
-
},
|
207
|
-
[`& .${iconRegularClassName}`]: {
|
208
|
-
display: 'none'
|
209
|
-
}
|
210
|
-
},
|
211
|
-
':hover:active': {
|
212
|
-
backgroundColor: tokens.colorTransparentBackgroundPressed,
|
213
|
-
...shorthands.borderColor('transparent'),
|
214
|
-
color: tokens.colorNeutralForeground2BrandPressed,
|
215
|
-
[`& .${iconFilledClassName}`]: {
|
216
|
-
display: 'inline'
|
217
|
-
},
|
218
|
-
[`& .${iconRegularClassName}`]: {
|
219
|
-
display: 'none'
|
220
|
-
}
|
221
|
-
},
|
222
|
-
'@media (forced-colors: active)': {
|
223
|
-
':hover': {
|
224
|
-
backgroundColor: tokens.colorTransparentBackground,
|
225
|
-
color: 'Highlight'
|
226
|
-
},
|
227
|
-
':hover:active': {
|
228
|
-
backgroundColor: tokens.colorTransparentBackground,
|
229
|
-
color: 'Highlight'
|
230
|
-
}
|
231
|
-
}
|
232
|
-
},
|
233
|
-
// Shape variations
|
234
|
-
circular: {
|
235
|
-
borderRadius: tokens.borderRadiusCircular
|
236
|
-
},
|
237
|
-
rounded: {
|
238
|
-
},
|
239
|
-
square: {
|
240
|
-
borderRadius: tokens.borderRadiusNone
|
241
|
-
},
|
242
|
-
// Size variations
|
243
|
-
small: {
|
244
|
-
minWidth: '64px',
|
245
|
-
padding: `${buttonSpacingSmall} ${tokens.spacingHorizontalS}`,
|
246
|
-
borderRadius: tokens.borderRadiusMedium,
|
247
|
-
fontSize: tokens.fontSizeBase200,
|
248
|
-
fontWeight: tokens.fontWeightRegular,
|
249
|
-
lineHeight: tokens.lineHeightBase200
|
250
|
-
},
|
251
|
-
smallWithIcon: {
|
252
|
-
paddingBottom: buttonSpacingSmallWithIcon,
|
253
|
-
paddingTop: buttonSpacingSmallWithIcon
|
254
|
-
},
|
255
|
-
medium: {
|
256
|
-
},
|
257
|
-
large: {
|
258
|
-
minWidth: '96px',
|
259
|
-
padding: `${buttonSpacingLarge} ${tokens.spacingHorizontalL}`,
|
260
|
-
borderRadius: tokens.borderRadiusMedium,
|
261
|
-
fontSize: tokens.fontSizeBase400,
|
262
|
-
fontWeight: tokens.fontWeightSemibold,
|
263
|
-
lineHeight: tokens.lineHeightBase400
|
264
|
-
},
|
265
|
-
largeWithIcon: {
|
266
|
-
paddingBottom: buttonSpacingLargeWithIcon,
|
267
|
-
paddingTop: buttonSpacingLargeWithIcon
|
268
|
-
}
|
269
|
-
});
|
270
|
-
const useRootDisabledStyles = makeStyles({
|
271
|
-
// Base styles
|
272
|
-
base: {
|
273
|
-
backgroundColor: tokens.colorNeutralBackgroundDisabled,
|
274
|
-
...shorthands.borderColor(tokens.colorNeutralStrokeDisabled),
|
275
|
-
color: tokens.colorNeutralForegroundDisabled,
|
276
|
-
cursor: 'not-allowed',
|
277
|
-
[`& .${buttonClassNames.icon}`]: {
|
278
|
-
color: tokens.colorNeutralForegroundDisabled
|
279
|
-
},
|
280
|
-
':hover': {
|
281
|
-
backgroundColor: tokens.colorNeutralBackgroundDisabled,
|
282
|
-
...shorthands.borderColor(tokens.colorNeutralStrokeDisabled),
|
283
|
-
color: tokens.colorNeutralForegroundDisabled,
|
284
|
-
cursor: 'not-allowed',
|
285
|
-
[`& .${iconFilledClassName}`]: {
|
286
|
-
display: 'none'
|
287
|
-
},
|
288
|
-
[`& .${iconRegularClassName}`]: {
|
289
|
-
display: 'inline'
|
290
|
-
},
|
291
|
-
[`& .${buttonClassNames.icon}`]: {
|
292
|
-
color: tokens.colorNeutralForegroundDisabled
|
293
|
-
}
|
294
|
-
},
|
295
|
-
':hover:active': {
|
296
|
-
backgroundColor: tokens.colorNeutralBackgroundDisabled,
|
297
|
-
...shorthands.borderColor(tokens.colorNeutralStrokeDisabled),
|
298
|
-
color: tokens.colorNeutralForegroundDisabled,
|
299
|
-
cursor: 'not-allowed',
|
300
|
-
[`& .${iconFilledClassName}`]: {
|
301
|
-
display: 'none'
|
302
|
-
},
|
303
|
-
[`& .${iconRegularClassName}`]: {
|
304
|
-
display: 'inline'
|
305
|
-
},
|
306
|
-
[`& .${buttonClassNames.icon}`]: {
|
307
|
-
color: tokens.colorNeutralForegroundDisabled
|
308
|
-
}
|
309
|
-
}
|
310
|
-
},
|
311
|
-
// High contrast styles
|
312
|
-
highContrast: {
|
313
|
-
'@media (forced-colors: active)': {
|
314
|
-
backgroundColor: 'ButtonFace',
|
315
|
-
...shorthands.borderColor('GrayText'),
|
316
|
-
color: 'GrayText',
|
317
|
-
[`& .${buttonClassNames.icon}`]: {
|
318
|
-
color: 'GrayText'
|
319
|
-
},
|
320
|
-
':focus': {
|
321
|
-
...shorthands.borderColor('GrayText')
|
322
|
-
},
|
323
|
-
':hover': {
|
324
|
-
backgroundColor: 'ButtonFace',
|
325
|
-
...shorthands.borderColor('GrayText'),
|
326
|
-
color: 'GrayText',
|
327
|
-
[`& .${buttonClassNames.icon}`]: {
|
328
|
-
color: 'GrayText'
|
329
|
-
}
|
330
|
-
},
|
331
|
-
':hover:active': {
|
332
|
-
backgroundColor: 'ButtonFace',
|
333
|
-
...shorthands.borderColor('GrayText'),
|
334
|
-
color: 'GrayText',
|
335
|
-
[`& .${buttonClassNames.icon}`]: {
|
336
|
-
color: 'GrayText'
|
337
|
-
}
|
338
|
-
}
|
339
|
-
}
|
340
|
-
},
|
341
|
-
// Appearance variations
|
342
|
-
outline: {
|
343
|
-
backgroundColor: tokens.colorTransparentBackground,
|
344
|
-
':hover': {
|
345
|
-
backgroundColor: tokens.colorTransparentBackground
|
346
|
-
},
|
347
|
-
':hover:active': {
|
348
|
-
backgroundColor: tokens.colorTransparentBackground
|
349
|
-
}
|
350
|
-
},
|
351
|
-
primary: {
|
352
|
-
...shorthands.borderColor('transparent'),
|
353
|
-
':hover': {
|
354
|
-
...shorthands.borderColor('transparent')
|
355
|
-
},
|
356
|
-
':hover:active': {
|
357
|
-
...shorthands.borderColor('transparent')
|
358
|
-
}
|
359
|
-
},
|
360
|
-
secondary: {
|
361
|
-
},
|
362
|
-
subtle: {
|
363
|
-
backgroundColor: tokens.colorTransparentBackground,
|
364
|
-
...shorthands.borderColor('transparent'),
|
365
|
-
':hover': {
|
366
|
-
backgroundColor: tokens.colorTransparentBackground,
|
367
|
-
...shorthands.borderColor('transparent')
|
368
|
-
},
|
369
|
-
':hover:active': {
|
370
|
-
backgroundColor: tokens.colorTransparentBackground,
|
371
|
-
...shorthands.borderColor('transparent')
|
372
|
-
}
|
373
|
-
},
|
374
|
-
transparent: {
|
375
|
-
backgroundColor: tokens.colorTransparentBackground,
|
376
|
-
...shorthands.borderColor('transparent'),
|
377
|
-
':hover': {
|
378
|
-
backgroundColor: tokens.colorTransparentBackground,
|
379
|
-
...shorthands.borderColor('transparent')
|
380
|
-
},
|
381
|
-
':hover:active': {
|
382
|
-
backgroundColor: tokens.colorTransparentBackground,
|
383
|
-
...shorthands.borderColor('transparent')
|
384
|
-
}
|
385
|
-
}
|
386
|
-
});
|
387
|
-
const useRootFocusStyles = makeStyles({
|
388
|
-
// Shape variations
|
389
|
-
circular: createCustomFocusIndicatorStyle({
|
390
|
-
borderRadius: tokens.borderRadiusCircular
|
391
|
-
}),
|
392
|
-
rounded: {
|
393
|
-
},
|
394
|
-
square: createCustomFocusIndicatorStyle({
|
395
|
-
borderRadius: tokens.borderRadiusNone
|
396
|
-
}),
|
397
|
-
// Primary styles
|
398
|
-
primary: {
|
399
|
-
...createCustomFocusIndicatorStyle({
|
400
|
-
...shorthands.borderColor(tokens.colorStrokeFocus2),
|
401
|
-
boxShadow: `${tokens.shadow2}, 0 0 0 ${tokens.strokeWidthThin} ${tokens.colorStrokeFocus2} inset, 0 0 0 ${tokens.strokeWidthThick} ${tokens.colorNeutralForegroundOnBrand} inset`,
|
402
|
-
':hover': {
|
403
|
-
boxShadow: `${tokens.shadow2}, 0 0 0 ${tokens.strokeWidthThin} ${tokens.colorStrokeFocus2} inset`,
|
404
|
-
...shorthands.borderColor(tokens.colorStrokeFocus2)
|
405
|
-
}
|
406
|
-
}),
|
407
|
-
// BUGFIX: Mozilla specific styles (Mozilla BugID: 1857642)
|
408
|
-
'@supports (-moz-appearance:button)': {
|
409
|
-
...createCustomFocusIndicatorStyle({
|
410
|
-
boxShadow: `${tokens.shadow2}, 0 0 0 ${boxShadowStrokeWidthThinMoz} ${tokens.colorStrokeFocus2} inset, 0 0 0 ${tokens.strokeWidthThick} ${tokens.colorNeutralForegroundOnBrand} inset`,
|
411
|
-
':hover': {
|
412
|
-
boxShadow: `${tokens.shadow2}, 0 0 0 ${boxShadowStrokeWidthThinMoz} ${tokens.colorStrokeFocus2} inset`
|
413
|
-
}
|
414
|
-
})
|
415
|
-
}
|
416
|
-
},
|
417
|
-
// Size variations
|
418
|
-
small: createCustomFocusIndicatorStyle({
|
419
|
-
borderRadius: tokens.borderRadiusSmall
|
420
|
-
}),
|
421
|
-
medium: {
|
422
|
-
},
|
423
|
-
large: createCustomFocusIndicatorStyle({
|
424
|
-
borderRadius: tokens.borderRadiusLarge
|
425
|
-
})
|
426
|
-
});
|
427
|
-
const useRootIconOnlyStyles = makeStyles({
|
428
|
-
// Size variations
|
429
|
-
small: {
|
430
|
-
padding: buttonSpacingSmallWithIcon,
|
431
|
-
minWidth: '24px',
|
432
|
-
maxWidth: '24px'
|
433
|
-
},
|
434
|
-
medium: {
|
435
|
-
padding: buttonSpacingMedium,
|
436
|
-
minWidth: '32px',
|
437
|
-
maxWidth: '32px'
|
438
|
-
},
|
439
|
-
large: {
|
440
|
-
padding: buttonSpacingLargeWithIcon,
|
441
|
-
minWidth: '40px',
|
442
|
-
maxWidth: '40px'
|
443
|
-
}
|
444
|
-
});
|
445
|
-
const useIconStyles = makeStyles({
|
446
|
-
// Size variations
|
447
|
-
small: {
|
448
|
-
fontSize: '20px',
|
449
|
-
height: '20px',
|
450
|
-
width: '20px',
|
451
|
-
[iconSpacingVar]: tokens.spacingHorizontalXS
|
452
|
-
},
|
453
|
-
medium: {
|
454
|
-
},
|
455
|
-
large: {
|
456
|
-
fontSize: '24px',
|
457
|
-
height: '24px',
|
458
|
-
width: '24px',
|
459
|
-
[iconSpacingVar]: tokens.spacingHorizontalSNudge
|
460
|
-
},
|
461
|
-
// Icon position variations
|
462
|
-
before: {
|
463
|
-
marginRight: `var(${iconSpacingVar})`
|
464
|
-
},
|
465
|
-
after: {
|
466
|
-
marginLeft: `var(${iconSpacingVar})`
|
467
|
-
}
|
468
|
-
});
|
469
|
-
export const useButtonStyles_unstable = (state)=>{
|
470
|
-
'use no memo';
|
471
|
-
const rootBaseClassName = useRootBaseClassName();
|
472
|
-
const iconBaseClassName = useIconBaseClassName();
|
473
|
-
const rootStyles = useRootStyles();
|
474
|
-
const rootDisabledStyles = useRootDisabledStyles();
|
475
|
-
const rootFocusStyles = useRootFocusStyles();
|
476
|
-
const rootIconOnlyStyles = useRootIconOnlyStyles();
|
477
|
-
const iconStyles = useIconStyles();
|
478
|
-
const { appearance, disabled, disabledFocusable, icon, iconOnly, iconPosition, shape, size } = state;
|
479
|
-
state.root.className = mergeClasses(buttonClassNames.root, rootBaseClassName, appearance && rootStyles[appearance], rootStyles[size], icon && size === 'small' && rootStyles.smallWithIcon, icon && size === 'large' && rootStyles.largeWithIcon, rootStyles[shape], // Disabled styles
|
480
|
-
(disabled || disabledFocusable) && rootDisabledStyles.base, (disabled || disabledFocusable) && rootDisabledStyles.highContrast, appearance && (disabled || disabledFocusable) && rootDisabledStyles[appearance], // Focus styles
|
481
|
-
appearance === 'primary' && rootFocusStyles.primary, rootFocusStyles[size], rootFocusStyles[shape], // Icon-only styles
|
482
|
-
iconOnly && rootIconOnlyStyles[size], // User provided class name
|
483
|
-
state.root.className);
|
484
|
-
if (state.icon) {
|
485
|
-
state.icon.className = mergeClasses(buttonClassNames.icon, iconBaseClassName, !!state.root.children && iconStyles[iconPosition], iconStyles[size], state.icon.className);
|
486
|
-
}
|
487
|
-
return state;
|
488
|
-
};
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../src/components/Button/useButtonStyles.styles.ts"],"sourcesContent":["import { iconFilledClassName, iconRegularClassName } from '@fluentui/react-icons';\nimport { createCustomFocusIndicatorStyle } from '@fluentui/react-tabster';\nimport { tokens } from '@fluentui/react-theme';\nimport { shorthands, makeStyles, makeResetStyles, mergeClasses } from '@griffel/react';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport type { ButtonSlots, ButtonState } from './Button.types';\n\nexport const buttonClassNames: SlotClassNames<ButtonSlots> = {\n root: 'fui-Button',\n icon: 'fui-Button__icon',\n};\n\nconst iconSpacingVar = '--fui-Button__icon--spacing';\n\nconst buttonSpacingSmall = '3px';\nconst buttonSpacingSmallWithIcon = '1px';\nconst buttonSpacingMedium = '5px';\nconst buttonSpacingLarge = '8px';\nconst buttonSpacingLargeWithIcon = '7px';\n\n/* Firefox has box shadow sizing issue at some zoom levels\n * this will ensure the inset boxShadow is always uniform\n * without affecting other browser platforms\n */\nconst boxShadowStrokeWidthThinMoz = `calc(${tokens.strokeWidthThin} + 0.25px)`;\n\nconst useRootBaseClassName = makeResetStyles({\n alignItems: 'center',\n boxSizing: 'border-box',\n display: 'inline-flex',\n justifyContent: 'center',\n textDecorationLine: 'none',\n verticalAlign: 'middle',\n\n margin: 0,\n overflow: 'hidden',\n\n backgroundColor: tokens.colorNeutralBackground1,\n color: tokens.colorNeutralForeground1,\n border: `${tokens.strokeWidthThin} solid ${tokens.colorNeutralStroke1}`,\n\n fontFamily: tokens.fontFamilyBase,\n outlineStyle: 'none',\n\n ':hover': {\n backgroundColor: tokens.colorNeutralBackground1Hover,\n borderColor: tokens.colorNeutralStroke1Hover,\n color: tokens.colorNeutralForeground1Hover,\n\n cursor: 'pointer',\n },\n\n ':hover:active': {\n backgroundColor: tokens.colorNeutralBackground1Pressed,\n borderColor: tokens.colorNeutralStroke1Pressed,\n color: tokens.colorNeutralForeground1Pressed,\n\n outlineStyle: 'none',\n },\n\n padding: `${buttonSpacingMedium} ${tokens.spacingHorizontalM}`,\n minWidth: '96px',\n borderRadius: tokens.borderRadiusMedium,\n\n fontSize: tokens.fontSizeBase300,\n fontWeight: tokens.fontWeightSemibold,\n lineHeight: tokens.lineHeightBase300,\n\n // Transition styles\n\n transitionDuration: tokens.durationFaster,\n transitionProperty: 'background, border, color',\n transitionTimingFunction: tokens.curveEasyEase,\n\n '@media screen and (prefers-reduced-motion: reduce)': {\n transitionDuration: '0.01ms',\n },\n\n // High contrast styles\n\n '@media (forced-colors: active)': {\n ':focus': {\n borderColor: 'ButtonText',\n },\n\n ':hover': {\n backgroundColor: 'HighlightText',\n borderColor: 'Highlight',\n color: 'Highlight',\n forcedColorAdjust: 'none',\n },\n\n ':hover:active': {\n backgroundColor: 'HighlightText',\n borderColor: 'Highlight',\n color: 'Highlight',\n forcedColorAdjust: 'none',\n },\n },\n\n // Focus styles\n\n ...createCustomFocusIndicatorStyle({\n borderColor: tokens.colorStrokeFocus2,\n borderRadius: tokens.borderRadiusMedium,\n borderWidth: '1px',\n outline: `${tokens.strokeWidthThick} solid ${tokens.colorTransparentStroke}`,\n boxShadow: `0 0 0 ${tokens.strokeWidthThin} ${tokens.colorStrokeFocus2}\n inset\n `,\n zIndex: 1,\n }),\n\n // BUGFIX: Mozilla specific styles (Mozilla BugID: 1857642)\n '@supports (-moz-appearance:button)': {\n ...createCustomFocusIndicatorStyle({\n boxShadow: `0 0 0 ${boxShadowStrokeWidthThinMoz} ${tokens.colorStrokeFocus2}\n inset\n `,\n }),\n },\n});\n\nconst useIconBaseClassName = makeResetStyles({\n alignItems: 'center',\n display: 'inline-flex',\n justifyContent: 'center',\n\n fontSize: '20px',\n height: '20px',\n width: '20px',\n\n [iconSpacingVar]: tokens.spacingHorizontalSNudge,\n});\n\nconst useRootStyles = makeStyles({\n // Appearance variations\n outline: {\n backgroundColor: tokens.colorTransparentBackground,\n\n ':hover': {\n backgroundColor: tokens.colorTransparentBackgroundHover,\n },\n\n ':hover:active': {\n backgroundColor: tokens.colorTransparentBackgroundPressed,\n },\n },\n primary: {\n backgroundColor: tokens.colorBrandBackground,\n ...shorthands.borderColor('transparent'),\n color: tokens.colorNeutralForegroundOnBrand,\n\n ':hover': {\n backgroundColor: tokens.colorBrandBackgroundHover,\n ...shorthands.borderColor('transparent'),\n color: tokens.colorNeutralForegroundOnBrand,\n },\n\n ':hover:active': {\n backgroundColor: tokens.colorBrandBackgroundPressed,\n ...shorthands.borderColor('transparent'),\n color: tokens.colorNeutralForegroundOnBrand,\n },\n\n '@media (forced-colors: active)': {\n backgroundColor: 'Highlight',\n ...shorthands.borderColor('HighlightText'),\n color: 'HighlightText',\n forcedColorAdjust: 'none',\n\n ':hover': {\n backgroundColor: 'HighlightText',\n ...shorthands.borderColor('Highlight'),\n color: 'Highlight',\n },\n\n ':hover:active': {\n backgroundColor: 'HighlightText',\n ...shorthands.borderColor('Highlight'),\n color: 'Highlight',\n },\n },\n },\n secondary: {\n /* The secondary styles are exactly the same as the base styles. */\n },\n subtle: {\n backgroundColor: tokens.colorSubtleBackground,\n ...shorthands.borderColor('transparent'),\n color: tokens.colorNeutralForeground2,\n\n ':hover': {\n backgroundColor: tokens.colorSubtleBackgroundHover,\n ...shorthands.borderColor('transparent'),\n color: tokens.colorNeutralForeground2Hover,\n [`& .${iconFilledClassName}`]: {\n display: 'inline',\n },\n [`& .${iconRegularClassName}`]: {\n display: 'none',\n },\n [`& .${buttonClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2BrandHover,\n },\n },\n\n ':hover:active': {\n backgroundColor: tokens.colorSubtleBackgroundPressed,\n ...shorthands.borderColor('transparent'),\n color: tokens.colorNeutralForeground2Pressed,\n [`& .${iconFilledClassName}`]: {\n display: 'inline',\n },\n [`& .${iconRegularClassName}`]: {\n display: 'none',\n },\n [`& .${buttonClassNames.icon}`]: {\n color: tokens.colorNeutralForeground2BrandPressed,\n },\n },\n\n '@media (forced-colors: active)': {\n ':hover': {\n color: 'Highlight',\n\n [`& .${buttonClassNames.icon}`]: {\n color: 'Highlight',\n },\n },\n ':hover:active': {\n color: 'Highlight',\n\n [`& .${buttonClassNames.icon}`]: {\n color: 'Highlight',\n },\n },\n },\n },\n transparent: {\n backgroundColor: tokens.colorTransparentBackground,\n ...shorthands.borderColor('transparent'),\n color: tokens.colorNeutralForeground2,\n\n ':hover': {\n backgroundColor: tokens.colorTransparentBackgroundHover,\n ...shorthands.borderColor('transparent'),\n color: tokens.colorNeutralForeground2BrandHover,\n [`& .${iconFilledClassName}`]: {\n display: 'inline',\n },\n [`& .${iconRegularClassName}`]: {\n display: 'none',\n },\n },\n\n ':hover:active': {\n backgroundColor: tokens.colorTransparentBackgroundPressed,\n ...shorthands.borderColor('transparent'),\n color: tokens.colorNeutralForeground2BrandPressed,\n [`& .${iconFilledClassName}`]: {\n display: 'inline',\n },\n [`& .${iconRegularClassName}`]: {\n display: 'none',\n },\n },\n\n '@media (forced-colors: active)': {\n ':hover': {\n backgroundColor: tokens.colorTransparentBackground,\n color: 'Highlight',\n },\n ':hover:active': {\n backgroundColor: tokens.colorTransparentBackground,\n color: 'Highlight',\n },\n },\n },\n\n // Shape variations\n circular: { borderRadius: tokens.borderRadiusCircular },\n rounded: {\n /* The borderRadius rounded styles are handled in the size variations */\n },\n square: { borderRadius: tokens.borderRadiusNone },\n\n // Size variations\n small: {\n minWidth: '64px',\n padding: `${buttonSpacingSmall} ${tokens.spacingHorizontalS}`,\n borderRadius: tokens.borderRadiusMedium,\n\n fontSize: tokens.fontSizeBase200,\n fontWeight: tokens.fontWeightRegular,\n lineHeight: tokens.lineHeightBase200,\n },\n smallWithIcon: {\n paddingBottom: buttonSpacingSmallWithIcon,\n paddingTop: buttonSpacingSmallWithIcon,\n },\n medium: {\n /* defined in base styles */\n },\n large: {\n minWidth: '96px',\n padding: `${buttonSpacingLarge} ${tokens.spacingHorizontalL}`,\n borderRadius: tokens.borderRadiusMedium,\n\n fontSize: tokens.fontSizeBase400,\n fontWeight: tokens.fontWeightSemibold,\n lineHeight: tokens.lineHeightBase400,\n },\n largeWithIcon: {\n paddingBottom: buttonSpacingLargeWithIcon,\n paddingTop: buttonSpacingLargeWithIcon,\n },\n});\n\nconst useRootDisabledStyles = makeStyles({\n // Base styles\n base: {\n backgroundColor: tokens.colorNeutralBackgroundDisabled,\n ...shorthands.borderColor(tokens.colorNeutralStrokeDisabled),\n color: tokens.colorNeutralForegroundDisabled,\n\n cursor: 'not-allowed',\n [`& .${buttonClassNames.icon}`]: {\n color: tokens.colorNeutralForegroundDisabled,\n },\n\n ':hover': {\n backgroundColor: tokens.colorNeutralBackgroundDisabled,\n ...shorthands.borderColor(tokens.colorNeutralStrokeDisabled),\n color: tokens.colorNeutralForegroundDisabled,\n\n cursor: 'not-allowed',\n\n [`& .${iconFilledClassName}`]: {\n display: 'none',\n },\n [`& .${iconRegularClassName}`]: {\n display: 'inline',\n },\n [`& .${buttonClassNames.icon}`]: {\n color: tokens.colorNeutralForegroundDisabled,\n },\n },\n\n ':hover:active': {\n backgroundColor: tokens.colorNeutralBackgroundDisabled,\n ...shorthands.borderColor(tokens.colorNeutralStrokeDisabled),\n color: tokens.colorNeutralForegroundDisabled,\n\n cursor: 'not-allowed',\n\n [`& .${iconFilledClassName}`]: {\n display: 'none',\n },\n [`& .${iconRegularClassName}`]: {\n display: 'inline',\n },\n [`& .${buttonClassNames.icon}`]: {\n color: tokens.colorNeutralForegroundDisabled,\n },\n },\n },\n\n // High contrast styles\n highContrast: {\n '@media (forced-colors: active)': {\n backgroundColor: 'ButtonFace',\n ...shorthands.borderColor('GrayText'),\n color: 'GrayText',\n\n [`& .${buttonClassNames.icon}`]: {\n color: 'GrayText',\n },\n\n ':focus': {\n ...shorthands.borderColor('GrayText'),\n },\n\n ':hover': {\n backgroundColor: 'ButtonFace',\n ...shorthands.borderColor('GrayText'),\n color: 'GrayText',\n\n [`& .${buttonClassNames.icon}`]: {\n color: 'GrayText',\n },\n },\n\n ':hover:active': {\n backgroundColor: 'ButtonFace',\n ...shorthands.borderColor('GrayText'),\n color: 'GrayText',\n\n [`& .${buttonClassNames.icon}`]: {\n color: 'GrayText',\n },\n },\n },\n },\n\n // Appearance variations\n outline: {\n backgroundColor: tokens.colorTransparentBackground,\n\n ':hover': {\n backgroundColor: tokens.colorTransparentBackground,\n },\n\n ':hover:active': {\n backgroundColor: tokens.colorTransparentBackground,\n },\n },\n primary: {\n ...shorthands.borderColor('transparent'),\n\n ':hover': {\n ...shorthands.borderColor('transparent'),\n },\n\n ':hover:active': {\n ...shorthands.borderColor('transparent'),\n },\n },\n secondary: {\n /* The secondary styles are exactly the same as the base styles. */\n },\n subtle: {\n backgroundColor: tokens.colorTransparentBackground,\n ...shorthands.borderColor('transparent'),\n\n ':hover': {\n backgroundColor: tokens.colorTransparentBackground,\n ...shorthands.borderColor('transparent'),\n },\n\n ':hover:active': {\n backgroundColor: tokens.colorTransparentBackground,\n ...shorthands.borderColor('transparent'),\n },\n },\n transparent: {\n backgroundColor: tokens.colorTransparentBackground,\n ...shorthands.borderColor('transparent'),\n\n ':hover': {\n backgroundColor: tokens.colorTransparentBackground,\n ...shorthands.borderColor('transparent'),\n },\n\n ':hover:active': {\n backgroundColor: tokens.colorTransparentBackground,\n ...shorthands.borderColor('transparent'),\n },\n },\n});\n\nconst useRootFocusStyles = makeStyles({\n // Shape variations\n circular: createCustomFocusIndicatorStyle({ borderRadius: tokens.borderRadiusCircular }),\n rounded: {\n /* The rounded styles are exactly the same as the base styles. */\n },\n square: createCustomFocusIndicatorStyle({ borderRadius: tokens.borderRadiusNone }),\n\n // Primary styles\n primary: {\n ...createCustomFocusIndicatorStyle({\n ...shorthands.borderColor(tokens.colorStrokeFocus2),\n boxShadow: `${tokens.shadow2}, 0 0 0 ${tokens.strokeWidthThin} ${tokens.colorStrokeFocus2} inset, 0 0 0 ${tokens.strokeWidthThick} ${tokens.colorNeutralForegroundOnBrand} inset`,\n ':hover': {\n boxShadow: `${tokens.shadow2}, 0 0 0 ${tokens.strokeWidthThin} ${tokens.colorStrokeFocus2} inset`,\n ...shorthands.borderColor(tokens.colorStrokeFocus2),\n },\n }),\n\n // BUGFIX: Mozilla specific styles (Mozilla BugID: 1857642)\n '@supports (-moz-appearance:button)': {\n ...createCustomFocusIndicatorStyle({\n boxShadow: `${tokens.shadow2}, 0 0 0 ${boxShadowStrokeWidthThinMoz} ${tokens.colorStrokeFocus2} inset, 0 0 0 ${tokens.strokeWidthThick} ${tokens.colorNeutralForegroundOnBrand} inset`,\n ':hover': {\n boxShadow: `${tokens.shadow2}, 0 0 0 ${boxShadowStrokeWidthThinMoz} ${tokens.colorStrokeFocus2} inset`,\n },\n }),\n },\n },\n\n // Size variations\n small: createCustomFocusIndicatorStyle({ borderRadius: tokens.borderRadiusSmall }),\n medium: {\n /* defined in base styles */\n },\n large: createCustomFocusIndicatorStyle({ borderRadius: tokens.borderRadiusLarge }),\n});\n\nconst useRootIconOnlyStyles = makeStyles({\n // Size variations\n small: {\n padding: buttonSpacingSmallWithIcon,\n\n minWidth: '24px',\n maxWidth: '24px',\n },\n medium: {\n padding: buttonSpacingMedium,\n\n minWidth: '32px',\n maxWidth: '32px',\n },\n large: {\n padding: buttonSpacingLargeWithIcon,\n\n minWidth: '40px',\n maxWidth: '40px',\n },\n});\n\nconst useIconStyles = makeStyles({\n // Size variations\n small: {\n fontSize: '20px',\n height: '20px',\n width: '20px',\n\n [iconSpacingVar]: tokens.spacingHorizontalXS,\n },\n medium: {\n /* defined in base styles */\n },\n large: {\n fontSize: '24px',\n height: '24px',\n width: '24px',\n\n [iconSpacingVar]: tokens.spacingHorizontalSNudge,\n },\n\n // Icon position variations\n before: {\n marginRight: `var(${iconSpacingVar})`,\n },\n after: {\n marginLeft: `var(${iconSpacingVar})`,\n },\n});\n\nexport const useButtonStyles_unstable = (state: ButtonState): ButtonState => {\n 'use no memo';\n\n const rootBaseClassName = useRootBaseClassName();\n const iconBaseClassName = useIconBaseClassName();\n\n const rootStyles = useRootStyles();\n const rootDisabledStyles = useRootDisabledStyles();\n const rootFocusStyles = useRootFocusStyles();\n const rootIconOnlyStyles = useRootIconOnlyStyles();\n const iconStyles = useIconStyles();\n\n const { appearance, disabled, disabledFocusable, icon, iconOnly, iconPosition, shape, size } = state;\n\n state.root.className = mergeClasses(\n buttonClassNames.root,\n rootBaseClassName,\n\n appearance && rootStyles[appearance],\n\n rootStyles[size],\n icon && size === 'small' && rootStyles.smallWithIcon,\n icon && size === 'large' && rootStyles.largeWithIcon,\n rootStyles[shape],\n\n // Disabled styles\n (disabled || disabledFocusable) && rootDisabledStyles.base,\n (disabled || disabledFocusable) && rootDisabledStyles.highContrast,\n appearance && (disabled || disabledFocusable) && rootDisabledStyles[appearance],\n\n // Focus styles\n appearance === 'primary' && rootFocusStyles.primary,\n rootFocusStyles[size],\n rootFocusStyles[shape],\n\n // Icon-only styles\n iconOnly && rootIconOnlyStyles[size],\n\n // User provided class name\n state.root.className,\n );\n\n if (state.icon) {\n state.icon.className = mergeClasses(\n buttonClassNames.icon,\n iconBaseClassName,\n !!state.root.children && iconStyles[iconPosition],\n iconStyles[size],\n state.icon.className,\n );\n }\n\n return state;\n};\n"],"names":["iconFilledClassName","iconRegularClassName","createCustomFocusIndicatorStyle","tokens","shorthands","makeStyles","makeResetStyles","mergeClasses","buttonClassNames","root","icon","iconSpacingVar","buttonSpacingSmall","buttonSpacingSmallWithIcon","buttonSpacingMedium","buttonSpacingLarge","buttonSpacingLargeWithIcon","boxShadowStrokeWidthThinMoz","strokeWidthThin","useRootBaseClassName","alignItems","boxSizing","display","justifyContent","textDecorationLine","verticalAlign","margin","overflow","backgroundColor","colorNeutralBackground1","color","colorNeutralForeground1","border","colorNeutralStroke1","fontFamily","fontFamilyBase","outlineStyle","colorNeutralBackground1Hover","borderColor","colorNeutralStroke1Hover","colorNeutralForeground1Hover","cursor","colorNeutralBackground1Pressed","colorNeutralStroke1Pressed","colorNeutralForeground1Pressed","padding","spacingHorizontalM","minWidth","borderRadius","borderRadiusMedium","fontSize","fontSizeBase300","fontWeight","fontWeightSemibold","lineHeight","lineHeightBase300","transitionDuration","durationFaster","transitionProperty","transitionTimingFunction","curveEasyEase","forcedColorAdjust","colorStrokeFocus2","borderWidth","outline","strokeWidthThick","colorTransparentStroke","boxShadow","zIndex","useIconBaseClassName","height","width","spacingHorizontalSNudge","useRootStyles","colorTransparentBackground","colorTransparentBackgroundHover","colorTransparentBackgroundPressed","primary","colorBrandBackground","colorNeutralForegroundOnBrand","colorBrandBackgroundHover","colorBrandBackgroundPressed","secondary","subtle","colorSubtleBackground","colorNeutralForeground2","colorSubtleBackgroundHover","colorNeutralForeground2Hover","colorNeutralForeground2BrandHover","colorSubtleBackgroundPressed","colorNeutralForeground2Pressed","colorNeutralForeground2BrandPressed","transparent","circular","borderRadiusCircular","rounded","square","borderRadiusNone","small","spacingHorizontalS","fontSizeBase200","fontWeightRegular","lineHeightBase200","smallWithIcon","paddingBottom","paddingTop","medium","large","spacingHorizontalL","fontSizeBase400","lineHeightBase400","largeWithIcon","useRootDisabledStyles","base","colorNeutralBackgroundDisabled","colorNeutralStrokeDisabled","colorNeutralForegroundDisabled","highContrast","useRootFocusStyles","shadow2","borderRadiusSmall","borderRadiusLarge","useRootIconOnlyStyles","maxWidth","useIconStyles","spacingHorizontalXS","before","marginRight","after","marginLeft","useButtonStyles_unstable","state","rootBaseClassName","iconBaseClassName","rootStyles","rootDisabledStyles","rootFocusStyles","rootIconOnlyStyles","iconStyles","appearance","disabled","disabledFocusable","iconOnly","iconPosition","shape","size","className","children"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|