@fluentui-copilot/react-attachments 0.0.0-nightly-20250717-0405-eecbae35.1 → 0.0.0-nightly-20250723-0404-b6756f49.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.
Files changed (35) hide show
  1. package/CHANGELOG.json +18 -3
  2. package/CHANGELOG.md +13 -4
  3. package/lib/components/AgentTag/useAgentTagStyles.styles.raw.js +66 -0
  4. package/lib/components/AgentTag/useAgentTagStyles.styles.raw.js.map +1 -0
  5. package/lib/components/Attachment/useAttachmentStyles.styles.js +25 -17
  6. package/lib/components/Attachment/useAttachmentStyles.styles.js.map +1 -1
  7. package/lib/components/Attachment/useAttachmentStyles.styles.raw.js +328 -0
  8. package/lib/components/Attachment/useAttachmentStyles.styles.raw.js.map +1 -0
  9. package/lib/components/AttachmentList/useAttachmentListStyles.styles.raw.js +44 -0
  10. package/lib/components/AttachmentList/useAttachmentListStyles.styles.raw.js.map +1 -0
  11. package/lib/components/AttachmentOverflowMenuButton/useAttachmentOverflowMenuButtonStyles.styles.raw.js +102 -0
  12. package/lib/components/AttachmentOverflowMenuButton/useAttachmentOverflowMenuButtonStyles.styles.raw.js.map +1 -0
  13. package/lib/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.js +11 -3
  14. package/lib/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.js.map +1 -1
  15. package/lib/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.raw.js +59 -0
  16. package/lib/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.raw.js.map +1 -0
  17. package/lib/components/utils/useProgressBarStyles.styles.raw.js +42 -0
  18. package/lib/components/utils/useProgressBarStyles.styles.raw.js.map +1 -0
  19. package/lib-commonjs/components/AgentTag/useAgentTagStyles.styles.raw.js +82 -0
  20. package/lib-commonjs/components/AgentTag/useAgentTagStyles.styles.raw.js.map +1 -0
  21. package/lib-commonjs/components/Attachment/useAttachmentStyles.styles.js +53 -33
  22. package/lib-commonjs/components/Attachment/useAttachmentStyles.styles.js.map +1 -1
  23. package/lib-commonjs/components/Attachment/useAttachmentStyles.styles.raw.js +347 -0
  24. package/lib-commonjs/components/Attachment/useAttachmentStyles.styles.raw.js.map +1 -0
  25. package/lib-commonjs/components/AttachmentList/useAttachmentListStyles.styles.raw.js +60 -0
  26. package/lib-commonjs/components/AttachmentList/useAttachmentListStyles.styles.raw.js.map +1 -0
  27. package/lib-commonjs/components/AttachmentOverflowMenuButton/useAttachmentOverflowMenuButtonStyles.styles.raw.js +118 -0
  28. package/lib-commonjs/components/AttachmentOverflowMenuButton/useAttachmentOverflowMenuButtonStyles.styles.raw.js.map +1 -0
  29. package/lib-commonjs/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.js +13 -2
  30. package/lib-commonjs/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.js.map +1 -1
  31. package/lib-commonjs/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.raw.js +75 -0
  32. package/lib-commonjs/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.raw.js.map +1 -0
  33. package/lib-commonjs/components/utils/useProgressBarStyles.styles.raw.js +50 -0
  34. package/lib-commonjs/components/utils/useProgressBarStyles.styles.raw.js.map +1 -0
  35. package/package.json +4 -4
@@ -0,0 +1,328 @@
1
+ import { createCustomFocusIndicatorStyle, makeResetStyles, makeStyles, mergeClasses, slot, typographyStyles } from '@fluentui/react-components';
2
+ import { tokens } from '@fluentui-copilot/tokens';
3
+ import { useProgressBarStyles } from '../utils/useProgressBarStyles.styles';
4
+ export const attachmentClassNames = {
5
+ root: 'fai-Attachment',
6
+ primaryAction: 'fai-Attachment__primaryAction',
7
+ dismissButton: 'fai-Attachment__dismissButton',
8
+ media: 'fai-Attachment__media',
9
+ content: 'fai-Attachment__content',
10
+ dismissIcon: 'fai-Attachment__dismissIcon',
11
+ progress: 'fai-Attachment__progress'
12
+ };
13
+ const ATTACHMENT_MAXWIDTH = '180px';
14
+ const SMALL_ATTACHMENT_SIZE = '16px';
15
+ const ATTACHMENT_SIZE = '20px';
16
+ const useRootBaseClassName = makeResetStyles({
17
+ display: 'inline-flex',
18
+ flexWrap: 'nowrap',
19
+ verticalAlign: 'middle',
20
+ boxSizing: 'border-box',
21
+ width: 'fit-content',
22
+ alignSelf: 'end',
23
+ position: 'relative'
24
+ });
25
+ const buttonBaseStyles = {
26
+ alignItems: 'center',
27
+ backgroundColor: tokens.colorSubtleBackground,
28
+ border: `${tokens.strokeWidthThin} solid ${tokens.colorNeutralStroke1}`,
29
+ borderRadius: tokens.borderRadiusMedium,
30
+ boxSizing: 'border-box',
31
+ columnGap: tokens.spacingHorizontalSNudge,
32
+ color: tokens.colorNeutralForeground1,
33
+ cursor: 'pointer',
34
+ display: 'inline-flex',
35
+ flexWrap: 'nowrap',
36
+ justifyContent: 'center',
37
+ ...createCustomFocusIndicatorStyle({
38
+ outline: `${tokens.strokeWidthThick} solid ${tokens.colorStrokeFocus2}`,
39
+ outlineOffset: `calc(${tokens.strokeWidthThick} * -1)`,
40
+ zIndex: 1
41
+ }),
42
+ verticalAlign: 'middle'
43
+ };
44
+ const usePrimaryActionBaseClassName = makeResetStyles({
45
+ ...buttonBaseStyles,
46
+ borderTopRightRadius: tokens.borderRadiusNone,
47
+ borderBottomRightRadius: tokens.borderRadiusNone,
48
+ borderRightStyle: 'none',
49
+ maxWidth: `calc(${ATTACHMENT_MAXWIDTH} - ${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS} - ${tokens.spacingHorizontalXS})`,
50
+ padding: `${tokens.spacingVerticalXS} ${tokens.spacingHorizontalS} ${tokens.spacingVerticalXS} ${tokens.spacingHorizontalS}`
51
+ });
52
+ const usePrimaryActionStyles = makeStyles({
53
+ button: {
54
+ ':hover': {
55
+ cursor: 'pointer',
56
+ backgroundColor: tokens.colorSubtleBackgroundHover,
57
+ color: tokens.colorNeutralForeground2Hover
58
+ },
59
+ ':active': {
60
+ backgroundColor: tokens.colorSubtleBackgroundPressed,
61
+ color: tokens.colorNeutralForeground2Pressed
62
+ },
63
+ '@media (forced-colors: active)': {
64
+ ':hover': {
65
+ backgroundColor: 'HighlightText'
66
+ },
67
+ ':active': {
68
+ backgroundColor: 'HighlightText'
69
+ }
70
+ }
71
+ }
72
+ });
73
+ const useDismissButtonBaseClassName = makeResetStyles({
74
+ ...buttonBaseStyles,
75
+ padding: `${tokens.spacingVerticalXS} ${tokens.spacingHorizontalXS} ${tokens.spacingVerticalXS} ${tokens.spacingHorizontalXS}`,
76
+ maxWidth: `calc(${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS}) + ${tokens.spacingHorizontalXS}`,
77
+ minWidth: `calc(${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS}) + ${tokens.spacingHorizontalXS}`,
78
+ // divider:
79
+ borderLeftColor: tokens.colorNeutralStroke1,
80
+ borderTopLeftRadius: tokens.borderRadiusNone,
81
+ borderBottomLeftRadius: tokens.borderRadiusNone,
82
+ borderTopRightRadius: tokens.borderRadiusMedium,
83
+ borderBottomRightRadius: tokens.borderRadiusMedium,
84
+ ':hover': {
85
+ cursor: 'pointer',
86
+ backgroundColor: tokens.colorSubtleBackgroundHover,
87
+ color: tokens.colorNeutralForeground2BrandHover
88
+ },
89
+ ':active': {
90
+ backgroundColor: tokens.colorSubtleBackgroundPressed,
91
+ color: tokens.colorNeutralForeground2BrandPressed
92
+ },
93
+ '@media (forced-colors: active)': {
94
+ ':hover': {
95
+ backgroundColor: 'HighlightText'
96
+ },
97
+ ':active': {
98
+ backgroundColor: 'HighlightText'
99
+ }
100
+ }
101
+ });
102
+ const useDismissButtonCurrentStyles = makeStyles({
103
+ root: {
104
+ ':hover': {
105
+ [`& .${attachmentClassNames.dismissIcon}`]: {
106
+ color: tokens.colorBrandForegroundLinkHover
107
+ }
108
+ }
109
+ }
110
+ });
111
+ const useMediaBaseClassName = makeResetStyles({
112
+ alignItems: 'center',
113
+ display: 'inline-flex',
114
+ fontSize: ATTACHMENT_SIZE,
115
+ height: ATTACHMENT_SIZE,
116
+ lineHeight: ATTACHMENT_SIZE,
117
+ width: ATTACHMENT_SIZE
118
+ });
119
+ const useContentBaseClassName = makeResetStyles({
120
+ overflowX: 'hidden',
121
+ textOverflow: 'ellipsis',
122
+ whiteSpace: 'nowrap',
123
+ ...typographyStyles.body1
124
+ });
125
+ const useDismissIconBaseClassName = makeResetStyles({
126
+ alignItems: 'center',
127
+ borderRadius: tokens.borderRadiusCircular,
128
+ border: `${tokens.strokeWidthThin} solid ${tokens.colorTransparentStroke}`,
129
+ boxSizing: 'border-box',
130
+ color: tokens.colorNeutralForeground1,
131
+ display: 'inline-flex',
132
+ fontSize: ATTACHMENT_SIZE,
133
+ height: `calc(${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingVerticalXXS})`,
134
+ justifyContent: 'center',
135
+ maxWidth: `calc(${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS})`,
136
+ minWidth: `calc(${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS})`,
137
+ padding: `calc(${tokens.spacingVerticalXXS} / 2) calc(${tokens.spacingHorizontalXXS} / 2)`
138
+ });
139
+ const useDismissIconNextStyles = makeStyles({
140
+ dismissOnly: {
141
+ ':hover': {
142
+ color: tokens.colorNeutralForeground2BrandHover
143
+ },
144
+ ':active': {
145
+ color: tokens.colorNeutralForeground2BrandPressed
146
+ }
147
+ }
148
+ });
149
+ const useImageOnlyStyles = makeStyles({
150
+ primaryAction: {
151
+ padding: 0
152
+ },
153
+ content: {
154
+ lineHeight: 0
155
+ }
156
+ });
157
+ export const useOverflowStyles = makeStyles({
158
+ overflow: {
159
+ maxWidth: '100%',
160
+ width: '100%'
161
+ }
162
+ });
163
+ const useSmallStyles = makeStyles({
164
+ primaryAction: {
165
+ maxWidth: `calc(${ATTACHMENT_MAXWIDTH} - ${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS} - ${tokens.spacingHorizontalXS})`,
166
+ padding: `${tokens.spacingVerticalXXS} ${tokens.spacingHorizontalSNudge} ${tokens.spacingVerticalXXS} ${tokens.spacingHorizontalSNudge}`
167
+ },
168
+ media: {
169
+ fontSize: SMALL_ATTACHMENT_SIZE,
170
+ height: SMALL_ATTACHMENT_SIZE,
171
+ lineHeight: SMALL_ATTACHMENT_SIZE,
172
+ width: SMALL_ATTACHMENT_SIZE
173
+ },
174
+ content: {
175
+ ...typographyStyles.caption1
176
+ },
177
+ dismissButton: {
178
+ padding: `${tokens.spacingVerticalXXS} ${tokens.spacingHorizontalXXS}`,
179
+ maxWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS}) + ${tokens.spacingHorizontalXS}`,
180
+ minWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS}) + ${tokens.spacingHorizontalXS}`
181
+ },
182
+ dismissIcon: {
183
+ fontSize: SMALL_ATTACHMENT_SIZE,
184
+ height: `calc(${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingVerticalXXS})`,
185
+ maxWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS})`,
186
+ minWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS})`
187
+ }
188
+ });
189
+ const usePrimaryActionNextStyles = makeStyles({
190
+ root: {
191
+ borderTopLeftRadius: tokens.borderRadiusXLarge,
192
+ borderBottomLeftRadius: tokens.borderRadiusXLarge
193
+ },
194
+ canvas: {
195
+ padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalS}`,
196
+ minHeight: '40px'
197
+ },
198
+ sidecar: {
199
+ padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalS}`,
200
+ minHeight: '32px'
201
+ }
202
+ });
203
+ const useDismissButtonNextStyles = makeStyles({
204
+ root: {
205
+ borderTopRightRadius: tokens.borderRadiusXLarge,
206
+ borderBottomRightRadius: tokens.borderRadiusXLarge,
207
+ ':hover': {
208
+ color: tokens.colorNeutralForeground2
209
+ },
210
+ ':active': {
211
+ color: tokens.colorNeutralForeground2Pressed
212
+ },
213
+ borderLeftColor: tokens.colorNeutralStroke1,
214
+ borderLeftWidth: tokens.strokeWidthThin,
215
+ borderLeftStyle: 'solid'
216
+ },
217
+ withPrimary: {
218
+ ':hover': {
219
+ [`& .${attachmentClassNames.dismissIcon}`]: {
220
+ color: tokens.colorNeutralForeground2
221
+ }
222
+ },
223
+ ':active': {
224
+ [`& .${attachmentClassNames.dismissIcon}`]: {
225
+ color: tokens.colorNeutralForeground2Pressed
226
+ }
227
+ }
228
+ },
229
+ canvas: {
230
+ padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalS}`,
231
+ minHeight: '40px',
232
+ width: '40px'
233
+ },
234
+ sidecar: {
235
+ padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalMNudge}`,
236
+ minHeight: '32px',
237
+ width: '32px'
238
+ },
239
+ dismissOnly: {
240
+ borderRadius: tokens.borderRadiusXLarge,
241
+ width: 'unset',
242
+ borderLeftColor: tokens.colorTransparentStroke,
243
+ backgroundColor: tokens.colorNeutralBackground3,
244
+ ':hover': {
245
+ backgroundColor: tokens.colorNeutralBackground3
246
+ },
247
+ ':active': {
248
+ backgroundColor: tokens.colorNeutralBackground3
249
+ }
250
+ }
251
+ });
252
+ const usePrimaryDismissNextStyles = makeStyles({
253
+ sharedStyles: {
254
+ border: 'none',
255
+ backgroundColor: tokens.colorNeutralBackground3
256
+ },
257
+ sharedInteractiveStyles: {
258
+ ':hover': {
259
+ backgroundColor: tokens.colorNeutralBackground3Hover
260
+ },
261
+ ':active': {
262
+ backgroundColor: tokens.colorNeutralBackground3Pressed
263
+ }
264
+ }
265
+ });
266
+ const useRootNextStyles = makeStyles({
267
+ root: {
268
+ outline: `${tokens.strokeWidthThin} solid ${tokens.colorTransparentStroke}`,
269
+ borderRadius: tokens.borderRadiusXLarge
270
+ }
271
+ });
272
+ const useFocusStyles = makeStyles({
273
+ primaryActionButton: createCustomFocusIndicatorStyle({
274
+ borderTopRightRadius: tokens.borderRadiusNone,
275
+ borderBottomRightRadius: tokens.borderRadiusNone
276
+ }),
277
+ dismissButton: createCustomFocusIndicatorStyle({
278
+ borderTopLeftRadius: tokens.borderRadiusNone,
279
+ borderBottomLeftRadius: tokens.borderRadiusNone
280
+ })
281
+ });
282
+ /**
283
+ * Apply styling to the Attachment slots based on the state
284
+ */ export const useAttachmentStyles_unstable = (state)=>{
285
+ 'use no memo';
286
+ const rootBaseClassName = useRootBaseClassName();
287
+ const primaryActionBaseClassName = usePrimaryActionBaseClassName();
288
+ const dismissButtonBaseClassName = useDismissButtonBaseClassName();
289
+ const dismissButtonCurrentStyles = useDismissButtonCurrentStyles();
290
+ const mediaBaseClassName = useMediaBaseClassName();
291
+ const contentBaseClassName = useContentBaseClassName();
292
+ const dismissIconBaseClassName = useDismissIconBaseClassName();
293
+ const dismissIconNextStyles = useDismissIconNextStyles();
294
+ const progressBarStyles = useProgressBarStyles();
295
+ const primaryActionStyles = usePrimaryActionStyles();
296
+ const imageOnlyStyles = useImageOnlyStyles();
297
+ const smallStyles = useSmallStyles();
298
+ const primaryActionNextStyles = usePrimaryActionNextStyles();
299
+ const dismissButtonNextStyles = useDismissButtonNextStyles();
300
+ const primaryDismissNextStyles = usePrimaryDismissNextStyles();
301
+ const rootNextStyles = useRootNextStyles();
302
+ const focusStyles = useFocusStyles();
303
+ const { imageOnly, primaryAction, size, mode, designVersion, dismissOnly } = state;
304
+ state.root.className = mergeClasses(attachmentClassNames.root, rootBaseClassName, designVersion === 'next' && rootNextStyles.root, state.root.className);
305
+ state.primaryAction.className = mergeClasses(attachmentClassNames.primaryAction, primaryActionBaseClassName, size === 'small' && smallStyles.primaryAction, primaryAction.as !== 'span' && !state.isLoading && primaryActionStyles.button, imageOnly && imageOnlyStyles.primaryAction, designVersion === 'next' && primaryDismissNextStyles.sharedStyles, designVersion === 'next' && primaryAction.as !== 'span' && !state.isLoading && primaryDismissNextStyles.sharedInteractiveStyles, designVersion === 'next' && primaryActionNextStyles.root, designVersion === 'next' && primaryActionNextStyles[mode], focusStyles.primaryActionButton, state.primaryAction.className);
306
+ state.dismissButton.className = mergeClasses(attachmentClassNames.dismissButton, dismissButtonBaseClassName, designVersion === 'current' && dismissButtonCurrentStyles.root, size === 'small' && smallStyles.dismissButton, designVersion === 'next' && primaryDismissNextStyles.sharedStyles, designVersion === 'next' && primaryDismissNextStyles.sharedInteractiveStyles, designVersion === 'next' && dismissButtonNextStyles.root, designVersion === 'next' && dismissButtonNextStyles[mode], designVersion === 'next' && dismissOnly && dismissButtonNextStyles.dismissOnly, designVersion === 'next' && !dismissOnly && dismissButtonNextStyles.withPrimary, focusStyles.dismissButton, state.dismissButton.className);
307
+ if (state.media) {
308
+ state.media.className = mergeClasses(attachmentClassNames.media, mediaBaseClassName, size === 'small' && smallStyles.media, state.media.className);
309
+ }
310
+ state.content.className = mergeClasses(attachmentClassNames.content, contentBaseClassName, size === 'small' && smallStyles.content, imageOnly && imageOnlyStyles.content, state.content.className);
311
+ state.dismissIcon.className = mergeClasses(attachmentClassNames.dismissIcon, dismissIconBaseClassName, size === 'small' && smallStyles.dismissIcon, designVersion === 'next' && dismissOnly && dismissIconNextStyles.dismissOnly, state.dismissIcon.className);
312
+ if (state.progress) {
313
+ state.progress.className = mergeClasses(attachmentClassNames.progress, progressBarStyles.progress, state.progress.className);
314
+ const bar = slot.optional(state.progress.bar, {
315
+ elementType: 'div',
316
+ renderByDefault: true
317
+ });
318
+ if (bar) {
319
+ if (state.progress.value === undefined) {
320
+ bar.className = mergeClasses(progressBarStyles.indeterminateProgressBar, bar.className);
321
+ } else {
322
+ bar.className = mergeClasses(progressBarStyles.regularProgressBar, bar.className);
323
+ }
324
+ state.progress.bar = bar;
325
+ }
326
+ }
327
+ return state;
328
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useAttachmentStyles.styles.ts"],"sourcesContent":["import {\n createCustomFocusIndicatorStyle,\n makeResetStyles,\n makeStyles,\n mergeClasses,\n slot,\n typographyStyles,\n} from '@fluentui/react-components';\nimport { tokens } from '@fluentui-copilot/tokens';\nimport { useProgressBarStyles } from '../utils/useProgressBarStyles.styles';\nimport type { AttachmentSlots, AttachmentState } from './Attachment.types';\nimport type { GriffelResetStyle, SlotClassNames } from '@fluentui/react-components';\n\nexport const attachmentClassNames: SlotClassNames<AttachmentSlots> = {\n root: 'fai-Attachment',\n primaryAction: 'fai-Attachment__primaryAction',\n dismissButton: 'fai-Attachment__dismissButton',\n media: 'fai-Attachment__media',\n content: 'fai-Attachment__content',\n dismissIcon: 'fai-Attachment__dismissIcon',\n progress: 'fai-Attachment__progress',\n};\n\nconst ATTACHMENT_MAXWIDTH = '180px';\nconst SMALL_ATTACHMENT_SIZE = '16px';\nconst ATTACHMENT_SIZE = '20px';\n\nconst useRootBaseClassName = makeResetStyles({\n display: 'inline-flex',\n flexWrap: 'nowrap',\n verticalAlign: 'middle',\n boxSizing: 'border-box',\n width: 'fit-content',\n alignSelf: 'end',\n position: 'relative',\n});\n\nconst buttonBaseStyles: GriffelResetStyle = {\n alignItems: 'center',\n backgroundColor: tokens.colorSubtleBackground,\n border: `${tokens.strokeWidthThin} solid ${tokens.colorNeutralStroke1}`,\n borderRadius: tokens.borderRadiusMedium,\n boxSizing: 'border-box',\n columnGap: tokens.spacingHorizontalSNudge,\n color: tokens.colorNeutralForeground1,\n cursor: 'pointer',\n display: 'inline-flex',\n flexWrap: 'nowrap',\n justifyContent: 'center',\n ...createCustomFocusIndicatorStyle({\n outline: `${tokens.strokeWidthThick} solid ${tokens.colorStrokeFocus2}`,\n outlineOffset: `calc(${tokens.strokeWidthThick} * -1)`,\n zIndex: 1,\n }),\n verticalAlign: 'middle',\n};\n\nconst usePrimaryActionBaseClassName = makeResetStyles({\n ...buttonBaseStyles,\n borderTopRightRadius: tokens.borderRadiusNone,\n borderBottomRightRadius: tokens.borderRadiusNone,\n borderRightStyle: 'none',\n maxWidth: `calc(${ATTACHMENT_MAXWIDTH} - ${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS} - ${tokens.spacingHorizontalXS})`,\n padding: `${tokens.spacingVerticalXS} ${tokens.spacingHorizontalS} ${tokens.spacingVerticalXS} ${tokens.spacingHorizontalS}`,\n});\n\nconst usePrimaryActionStyles = makeStyles({\n button: {\n ':hover': {\n cursor: 'pointer',\n backgroundColor: tokens.colorSubtleBackgroundHover,\n color: tokens.colorNeutralForeground2Hover,\n },\n ':active': {\n backgroundColor: tokens.colorSubtleBackgroundPressed,\n color: tokens.colorNeutralForeground2Pressed,\n },\n '@media (forced-colors: active)': {\n ':hover': {\n backgroundColor: 'HighlightText',\n },\n ':active': {\n backgroundColor: 'HighlightText',\n },\n },\n },\n});\n\nconst useDismissButtonBaseClassName = makeResetStyles({\n ...buttonBaseStyles,\n\n padding: `${tokens.spacingVerticalXS} ${tokens.spacingHorizontalXS} ${tokens.spacingVerticalXS} ${tokens.spacingHorizontalXS}`,\n maxWidth: `calc(${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS}) + ${tokens.spacingHorizontalXS}`,\n minWidth: `calc(${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS}) + ${tokens.spacingHorizontalXS}`,\n\n // divider:\n borderLeftColor: tokens.colorNeutralStroke1,\n borderTopLeftRadius: tokens.borderRadiusNone,\n borderBottomLeftRadius: tokens.borderRadiusNone,\n\n borderTopRightRadius: tokens.borderRadiusMedium,\n borderBottomRightRadius: tokens.borderRadiusMedium,\n\n ':hover': {\n cursor: 'pointer',\n backgroundColor: tokens.colorSubtleBackgroundHover,\n color: tokens.colorNeutralForeground2BrandHover,\n },\n ':active': {\n backgroundColor: tokens.colorSubtleBackgroundPressed,\n color: tokens.colorNeutralForeground2BrandPressed,\n },\n '@media (forced-colors: active)': {\n ':hover': {\n backgroundColor: 'HighlightText',\n },\n ':active': {\n backgroundColor: 'HighlightText',\n },\n },\n});\n\nconst useDismissButtonCurrentStyles = makeStyles({\n root: {\n ':hover': {\n [`& .${attachmentClassNames.dismissIcon}`]: {\n color: tokens.colorBrandForegroundLinkHover,\n },\n },\n },\n});\n\nconst useMediaBaseClassName = makeResetStyles({\n alignItems: 'center',\n display: 'inline-flex',\n fontSize: ATTACHMENT_SIZE,\n height: ATTACHMENT_SIZE,\n lineHeight: ATTACHMENT_SIZE,\n width: ATTACHMENT_SIZE,\n});\n\nconst useContentBaseClassName = makeResetStyles({\n overflowX: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n ...typographyStyles.body1,\n});\n\nconst useDismissIconBaseClassName = makeResetStyles({\n alignItems: 'center',\n borderRadius: tokens.borderRadiusCircular,\n border: `${tokens.strokeWidthThin} solid ${tokens.colorTransparentStroke}`,\n boxSizing: 'border-box',\n color: tokens.colorNeutralForeground1,\n display: 'inline-flex',\n fontSize: ATTACHMENT_SIZE,\n height: `calc(${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingVerticalXXS})`,\n justifyContent: 'center',\n maxWidth: `calc(${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS})`,\n minWidth: `calc(${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS})`,\n padding: `calc(${tokens.spacingVerticalXXS} / 2) calc(${tokens.spacingHorizontalXXS} / 2)`,\n});\n\nconst useDismissIconNextStyles = makeStyles({\n dismissOnly: {\n ':hover': {\n color: tokens.colorNeutralForeground2BrandHover,\n },\n ':active': {\n color: tokens.colorNeutralForeground2BrandPressed,\n },\n },\n});\n\nconst useImageOnlyStyles = makeStyles({\n primaryAction: {\n padding: 0,\n },\n content: {\n lineHeight: 0,\n },\n});\n\nexport const useOverflowStyles = makeStyles({\n overflow: {\n maxWidth: '100%',\n width: '100%',\n },\n});\n\nconst useSmallStyles = makeStyles({\n primaryAction: {\n maxWidth: `calc(${ATTACHMENT_MAXWIDTH} - ${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS} - ${tokens.spacingHorizontalXS})`,\n padding: `${tokens.spacingVerticalXXS} ${tokens.spacingHorizontalSNudge} ${tokens.spacingVerticalXXS} ${tokens.spacingHorizontalSNudge}`,\n },\n media: {\n fontSize: SMALL_ATTACHMENT_SIZE,\n height: SMALL_ATTACHMENT_SIZE,\n lineHeight: SMALL_ATTACHMENT_SIZE,\n width: SMALL_ATTACHMENT_SIZE,\n },\n content: {\n ...typographyStyles.caption1,\n },\n dismissButton: {\n padding: `${tokens.spacingVerticalXXS} ${tokens.spacingHorizontalXXS}`,\n maxWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS}) + ${tokens.spacingHorizontalXS}`,\n minWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS}) + ${tokens.spacingHorizontalXS}`,\n },\n dismissIcon: {\n fontSize: SMALL_ATTACHMENT_SIZE,\n height: `calc(${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingVerticalXXS})`,\n maxWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS})`,\n minWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS})`,\n },\n});\n\nconst usePrimaryActionNextStyles = makeStyles({\n root: {\n borderTopLeftRadius: tokens.borderRadiusXLarge,\n borderBottomLeftRadius: tokens.borderRadiusXLarge,\n },\n canvas: {\n padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalS}`,\n minHeight: '40px',\n },\n\n sidecar: {\n padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalS}`,\n minHeight: '32px',\n },\n});\n\nconst useDismissButtonNextStyles = makeStyles({\n root: {\n borderTopRightRadius: tokens.borderRadiusXLarge,\n borderBottomRightRadius: tokens.borderRadiusXLarge,\n ':hover': {\n color: tokens.colorNeutralForeground2,\n },\n ':active': {\n color: tokens.colorNeutralForeground2Pressed,\n },\n\n borderLeftColor: tokens.colorNeutralStroke1,\n borderLeftWidth: tokens.strokeWidthThin,\n borderLeftStyle: 'solid',\n },\n withPrimary: {\n ':hover': {\n [`& .${attachmentClassNames.dismissIcon}`]: {\n color: tokens.colorNeutralForeground2,\n },\n },\n ':active': {\n [`& .${attachmentClassNames.dismissIcon}`]: {\n color: tokens.colorNeutralForeground2Pressed,\n },\n },\n },\n canvas: {\n padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalS}`,\n minHeight: '40px',\n width: '40px',\n },\n sidecar: {\n padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalMNudge}`,\n minHeight: '32px',\n width: '32px',\n },\n dismissOnly: {\n borderRadius: tokens.borderRadiusXLarge,\n width: 'unset',\n borderLeftColor: tokens.colorTransparentStroke,\n backgroundColor: tokens.colorNeutralBackground3,\n ':hover': {\n backgroundColor: tokens.colorNeutralBackground3,\n },\n ':active': {\n backgroundColor: tokens.colorNeutralBackground3,\n },\n },\n});\n\nconst usePrimaryDismissNextStyles = makeStyles({\n sharedStyles: {\n border: 'none',\n backgroundColor: tokens.colorNeutralBackground3,\n },\n sharedInteractiveStyles: {\n ':hover': {\n backgroundColor: tokens.colorNeutralBackground3Hover,\n },\n ':active': {\n backgroundColor: tokens.colorNeutralBackground3Pressed,\n },\n },\n});\n\nconst useRootNextStyles = makeStyles({\n root: {\n outline: `${tokens.strokeWidthThin} solid ${tokens.colorTransparentStroke}`,\n borderRadius: tokens.borderRadiusXLarge,\n },\n});\n\nconst useFocusStyles = makeStyles({\n primaryActionButton: createCustomFocusIndicatorStyle({\n borderTopRightRadius: tokens.borderRadiusNone,\n borderBottomRightRadius: tokens.borderRadiusNone,\n }),\n\n dismissButton: createCustomFocusIndicatorStyle({\n borderTopLeftRadius: tokens.borderRadiusNone,\n borderBottomLeftRadius: tokens.borderRadiusNone,\n }),\n});\n\n/**\n * Apply styling to the Attachment slots based on the state\n */\nexport const useAttachmentStyles_unstable = (state: AttachmentState): AttachmentState => {\n 'use no memo';\n\n const rootBaseClassName = useRootBaseClassName();\n const primaryActionBaseClassName = usePrimaryActionBaseClassName();\n const dismissButtonBaseClassName = useDismissButtonBaseClassName();\n const dismissButtonCurrentStyles = useDismissButtonCurrentStyles();\n const mediaBaseClassName = useMediaBaseClassName();\n const contentBaseClassName = useContentBaseClassName();\n const dismissIconBaseClassName = useDismissIconBaseClassName();\n const dismissIconNextStyles = useDismissIconNextStyles();\n const progressBarStyles = useProgressBarStyles();\n const primaryActionStyles = usePrimaryActionStyles();\n const imageOnlyStyles = useImageOnlyStyles();\n const smallStyles = useSmallStyles();\n const primaryActionNextStyles = usePrimaryActionNextStyles();\n const dismissButtonNextStyles = useDismissButtonNextStyles();\n const primaryDismissNextStyles = usePrimaryDismissNextStyles();\n const rootNextStyles = useRootNextStyles();\n const focusStyles = useFocusStyles();\n const { imageOnly, primaryAction, size, mode, designVersion, dismissOnly } = state;\n\n state.root.className = mergeClasses(\n attachmentClassNames.root,\n rootBaseClassName,\n designVersion === 'next' && rootNextStyles.root,\n state.root.className,\n );\n state.primaryAction.className = mergeClasses(\n attachmentClassNames.primaryAction,\n primaryActionBaseClassName,\n size === 'small' && smallStyles.primaryAction,\n primaryAction.as !== 'span' && !state.isLoading && primaryActionStyles.button,\n imageOnly && imageOnlyStyles.primaryAction,\n designVersion === 'next' && primaryDismissNextStyles.sharedStyles,\n designVersion === 'next' &&\n primaryAction.as !== 'span' &&\n !state.isLoading &&\n primaryDismissNextStyles.sharedInteractiveStyles,\n designVersion === 'next' && primaryActionNextStyles.root,\n designVersion === 'next' && primaryActionNextStyles[mode],\n focusStyles.primaryActionButton,\n state.primaryAction.className,\n );\n state.dismissButton.className = mergeClasses(\n attachmentClassNames.dismissButton,\n dismissButtonBaseClassName,\n designVersion === 'current' && dismissButtonCurrentStyles.root,\n size === 'small' && smallStyles.dismissButton,\n designVersion === 'next' && primaryDismissNextStyles.sharedStyles,\n designVersion === 'next' && primaryDismissNextStyles.sharedInteractiveStyles,\n designVersion === 'next' && dismissButtonNextStyles.root,\n designVersion === 'next' && dismissButtonNextStyles[mode],\n designVersion === 'next' && dismissOnly && dismissButtonNextStyles.dismissOnly,\n designVersion === 'next' && !dismissOnly && dismissButtonNextStyles.withPrimary,\n focusStyles.dismissButton,\n state.dismissButton.className,\n );\n if (state.media) {\n state.media.className = mergeClasses(\n attachmentClassNames.media,\n mediaBaseClassName,\n size === 'small' && smallStyles.media,\n state.media.className,\n );\n }\n state.content.className = mergeClasses(\n attachmentClassNames.content,\n contentBaseClassName,\n size === 'small' && smallStyles.content,\n imageOnly && imageOnlyStyles.content,\n state.content.className,\n );\n state.dismissIcon.className = mergeClasses(\n attachmentClassNames.dismissIcon,\n dismissIconBaseClassName,\n size === 'small' && smallStyles.dismissIcon,\n designVersion === 'next' && dismissOnly && dismissIconNextStyles.dismissOnly,\n state.dismissIcon.className,\n );\n\n if (state.progress) {\n state.progress.className = mergeClasses(\n attachmentClassNames.progress,\n progressBarStyles.progress,\n state.progress.className,\n );\n\n const bar = slot.optional(state.progress.bar, { elementType: 'div', renderByDefault: true });\n if (bar) {\n if (state.progress.value === undefined) {\n bar.className = mergeClasses(progressBarStyles.indeterminateProgressBar, bar.className);\n } else {\n bar.className = mergeClasses(progressBarStyles.regularProgressBar, bar.className);\n }\n state.progress.bar = bar;\n }\n }\n\n return state;\n};\n"],"names":["createCustomFocusIndicatorStyle","makeResetStyles","makeStyles","mergeClasses","slot","typographyStyles","tokens","useProgressBarStyles","attachmentClassNames","root","primaryAction","dismissButton","media","content","dismissIcon","progress","ATTACHMENT_MAXWIDTH","SMALL_ATTACHMENT_SIZE","ATTACHMENT_SIZE","useRootBaseClassName","display","flexWrap","verticalAlign","boxSizing","width","alignSelf","position","buttonBaseStyles","alignItems","backgroundColor","colorSubtleBackground","border","strokeWidthThin","colorNeutralStroke1","borderRadius","borderRadiusMedium","columnGap","spacingHorizontalSNudge","color","colorNeutralForeground1","cursor","justifyContent","outline","strokeWidthThick","colorStrokeFocus2","outlineOffset","zIndex","usePrimaryActionBaseClassName","borderTopRightRadius","borderRadiusNone","borderBottomRightRadius","borderRightStyle","maxWidth","spacingHorizontalXXS","spacingHorizontalXS","padding","spacingVerticalXS","spacingHorizontalS","usePrimaryActionStyles","button","colorSubtleBackgroundHover","colorNeutralForeground2Hover","colorSubtleBackgroundPressed","colorNeutralForeground2Pressed","useDismissButtonBaseClassName","minWidth","borderLeftColor","borderTopLeftRadius","borderBottomLeftRadius","colorNeutralForeground2BrandHover","colorNeutralForeground2BrandPressed","useDismissButtonCurrentStyles","colorBrandForegroundLinkHover","useMediaBaseClassName","fontSize","height","lineHeight","useContentBaseClassName","overflowX","textOverflow","whiteSpace","body1","useDismissIconBaseClassName","borderRadiusCircular","colorTransparentStroke","spacingVerticalXXS","useDismissIconNextStyles","dismissOnly","useImageOnlyStyles","useOverflowStyles","overflow","useSmallStyles","caption1","usePrimaryActionNextStyles","borderRadiusXLarge","canvas","spacingVerticalNone","minHeight","sidecar","useDismissButtonNextStyles","colorNeutralForeground2","borderLeftWidth","borderLeftStyle","withPrimary","spacingHorizontalMNudge","colorNeutralBackground3","usePrimaryDismissNextStyles","sharedStyles","sharedInteractiveStyles","colorNeutralBackground3Hover","colorNeutralBackground3Pressed","useRootNextStyles","useFocusStyles","primaryActionButton","useAttachmentStyles_unstable","state","rootBaseClassName","primaryActionBaseClassName","dismissButtonBaseClassName","dismissButtonCurrentStyles","mediaBaseClassName","contentBaseClassName","dismissIconBaseClassName","dismissIconNextStyles","progressBarStyles","primaryActionStyles","imageOnlyStyles","smallStyles","primaryActionNextStyles","dismissButtonNextStyles","primaryDismissNextStyles","rootNextStyles","focusStyles","imageOnly","size","mode","designVersion","className","as","isLoading","bar","optional","elementType","renderByDefault","value","undefined","indeterminateProgressBar","regularProgressBar"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import { makeResetStyles, makeStyles, mergeClasses } from '@fluentui/react-components';
2
+ import { tokens } from '@fluentui-copilot/tokens';
3
+ export const attachmentListClassNames = {
4
+ root: 'fai-AttachmentList',
5
+ menuList: 'fai-AttachmentList__menuList',
6
+ menuPopover: 'fai-AttachmentList__menuPopover',
7
+ overflowMenuButton: 'fai-AttachmentList__overflowMenuButton'
8
+ };
9
+ const useRootBaseClassName = makeResetStyles({
10
+ columnGap: tokens.spacingHorizontalSNudge,
11
+ display: 'flex',
12
+ flexDirection: 'row',
13
+ flexShrink: 0,
14
+ flexWrap: 'wrap',
15
+ rowGap: tokens.spacingVerticalXS
16
+ });
17
+ const useOverflowMenuButtonBaseClassName = makeResetStyles({
18
+ display: 'inline-flex'
19
+ });
20
+ const useOverflowMenuPopoverNextStyles = makeStyles({
21
+ borderRadius: {
22
+ borderRadius: tokens.borderRadius4XL
23
+ }
24
+ });
25
+ /**
26
+ * Apply styling to the AttachmentList slots based on the state
27
+ */ export const useAttachmentListStyles_unstable = (state)=>{
28
+ 'use no memo';
29
+ const rootBaseClassName = useRootBaseClassName();
30
+ const overflowMenuButtonClassName = useOverflowMenuButtonBaseClassName();
31
+ const overflowMenuPopoverNextStyles = useOverflowMenuPopoverNextStyles();
32
+ const { designVersion } = state;
33
+ state.root.className = mergeClasses(attachmentListClassNames.root, rootBaseClassName, state.root.className);
34
+ if (state.menuList) {
35
+ state.menuList.className = mergeClasses(attachmentListClassNames.menuList, state.menuList.className);
36
+ }
37
+ if (state.menuPopover) {
38
+ state.menuPopover.className = mergeClasses(attachmentListClassNames.menuPopover, designVersion === 'next' && overflowMenuPopoverNextStyles.borderRadius, state.menuPopover.className);
39
+ }
40
+ if (state.overflowMenuButton) {
41
+ state.overflowMenuButton.className = mergeClasses(attachmentListClassNames.overflowMenuButton, overflowMenuButtonClassName, state.overflowMenuButton.className);
42
+ }
43
+ return state;
44
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useAttachmentListStyles.styles.ts"],"sourcesContent":["import { makeResetStyles, makeStyles, mergeClasses } from '@fluentui/react-components';\nimport { tokens } from '@fluentui-copilot/tokens';\nimport type { AttachmentListSlots, AttachmentListState } from './AttachmentList.types';\nimport type { SlotClassNames } from '@fluentui/react-components';\n\nexport const attachmentListClassNames: SlotClassNames<AttachmentListSlots> = {\n root: 'fai-AttachmentList',\n menuList: 'fai-AttachmentList__menuList',\n menuPopover: 'fai-AttachmentList__menuPopover',\n overflowMenuButton: 'fai-AttachmentList__overflowMenuButton',\n};\n\nconst useRootBaseClassName = makeResetStyles({\n columnGap: tokens.spacingHorizontalSNudge,\n display: 'flex',\n flexDirection: 'row',\n flexShrink: 0,\n flexWrap: 'wrap',\n rowGap: tokens.spacingVerticalXS,\n});\n\nconst useOverflowMenuButtonBaseClassName = makeResetStyles({\n display: 'inline-flex',\n});\n\nconst useOverflowMenuPopoverNextStyles = makeStyles({\n borderRadius: {\n borderRadius: tokens.borderRadius4XL,\n },\n});\n\n/**\n * Apply styling to the AttachmentList slots based on the state\n */\nexport const useAttachmentListStyles_unstable = (state: AttachmentListState): AttachmentListState => {\n 'use no memo';\n\n const rootBaseClassName = useRootBaseClassName();\n const overflowMenuButtonClassName = useOverflowMenuButtonBaseClassName();\n const overflowMenuPopoverNextStyles = useOverflowMenuPopoverNextStyles();\n const { designVersion } = state;\n\n state.root.className = mergeClasses(attachmentListClassNames.root, rootBaseClassName, state.root.className);\n\n if (state.menuList) {\n state.menuList.className = mergeClasses(attachmentListClassNames.menuList, state.menuList.className);\n }\n if (state.menuPopover) {\n state.menuPopover.className = mergeClasses(\n attachmentListClassNames.menuPopover,\n designVersion === 'next' && overflowMenuPopoverNextStyles.borderRadius,\n state.menuPopover.className,\n );\n }\n\n if (state.overflowMenuButton) {\n state.overflowMenuButton.className = mergeClasses(\n attachmentListClassNames.overflowMenuButton,\n overflowMenuButtonClassName,\n state.overflowMenuButton.className,\n );\n }\n\n return state;\n};\n"],"names":["makeResetStyles","makeStyles","mergeClasses","tokens","attachmentListClassNames","root","menuList","menuPopover","overflowMenuButton","useRootBaseClassName","columnGap","spacingHorizontalSNudge","display","flexDirection","flexShrink","flexWrap","rowGap","spacingVerticalXS","useOverflowMenuButtonBaseClassName","useOverflowMenuPopoverNextStyles","borderRadius","borderRadius4XL","useAttachmentListStyles_unstable","state","rootBaseClassName","overflowMenuButtonClassName","overflowMenuPopoverNextStyles","designVersion","className"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,eAAe,EAAEC,UAAU,EAAEC,YAAY,QAAQ,6BAA6B;AACvF,SAASC,MAAM,QAAQ,2BAA2B;AAIlD,OAAO,MAAMC,2BAAgE;IAC3EC,MAAM;IACNC,UAAU;IACVC,aAAa;IACbC,oBAAoB;AACtB,EAAE;AAEF,MAAMC,uBAAuBT,gBAAgB;IAC3CU,WAAWP,OAAOQ,uBAAuB;IACzCC,SAAS;IACTC,eAAe;IACfC,YAAY;IACZC,UAAU;IACVC,QAAQb,OAAOc,iBAAiB;AAClC;AAEA,MAAMC,qCAAqClB,gBAAgB;IACzDY,SAAS;AACX;AAEA,MAAMO,mCAAmClB,WAAW;IAClDmB,cAAc;QACZA,cAAcjB,OAAOkB,eAAe;IACtC;AACF;AAEA;;CAEC,GACD,OAAO,MAAMC,mCAAmC,CAACC;IAC/C;IAEA,MAAMC,oBAAoBf;IAC1B,MAAMgB,8BAA8BP;IACpC,MAAMQ,gCAAgCP;IACtC,MAAM,EAAEQ,aAAa,EAAE,GAAGJ;IAE1BA,MAAMlB,IAAI,CAACuB,SAAS,GAAG1B,aAAaE,yBAAyBC,IAAI,EAAEmB,mBAAmBD,MAAMlB,IAAI,CAACuB,SAAS;IAE1G,IAAIL,MAAMjB,QAAQ,EAAE;QAClBiB,MAAMjB,QAAQ,CAACsB,SAAS,GAAG1B,aAAaE,yBAAyBE,QAAQ,EAAEiB,MAAMjB,QAAQ,CAACsB,SAAS;IACrG;IACA,IAAIL,MAAMhB,WAAW,EAAE;QACrBgB,MAAMhB,WAAW,CAACqB,SAAS,GAAG1B,aAC5BE,yBAAyBG,WAAW,EACpCoB,kBAAkB,UAAUD,8BAA8BN,YAAY,EACtEG,MAAMhB,WAAW,CAACqB,SAAS;IAE/B;IAEA,IAAIL,MAAMf,kBAAkB,EAAE;QAC5Be,MAAMf,kBAAkB,CAACoB,SAAS,GAAG1B,aACnCE,yBAAyBI,kBAAkB,EAC3CiB,6BACAF,MAAMf,kBAAkB,CAACoB,SAAS;IAEtC;IAEA,OAAOL;AACT,EAAE"}
@@ -0,0 +1,102 @@
1
+ import { makeResetStyles, makeStyles, mergeClasses, shorthands, slot } from '@fluentui/react-components';
2
+ import { tokens, typographyStyles } from '@fluentui-copilot/tokens';
3
+ import { useProgressBarStyles } from '../utils/useProgressBarStyles.styles';
4
+ export const attachmentOverflowMenuButtonClassNames = {
5
+ root: 'fai-AttachmentOverflowMenuButton',
6
+ progress: 'fai-AttachmentOverflowMenuButton__progress'
7
+ };
8
+ const useRootBaseClassName = makeResetStyles({
9
+ color: tokens.colorNeutralForeground1,
10
+ alignItems: 'center',
11
+ backgroundColor: tokens.colorSubtleBackground,
12
+ border: `${tokens.strokeWidthThin} solid ${tokens.colorNeutralStroke1}`,
13
+ borderRadius: tokens.borderRadiusMedium,
14
+ boxSizing: 'border-box',
15
+ columnGap: tokens.spacingHorizontalSNudge,
16
+ cursor: 'pointer',
17
+ display: 'inline-flex',
18
+ flexWrap: 'nowrap',
19
+ fontFamily: typographyStyles.body1.fontFamily,
20
+ fontSize: typographyStyles.body1.fontSize,
21
+ fontWeight: typographyStyles.body1.fontWeight,
22
+ justifyContent: 'center',
23
+ padding: `${tokens.spacingVerticalXS} ${tokens.spacingHorizontalS}`,
24
+ verticalAlign: 'middle',
25
+ position: 'relative',
26
+ ':hover': {
27
+ cursor: 'pointer',
28
+ backgroundColor: tokens.colorSubtleBackgroundHover,
29
+ color: tokens.colorNeutralForeground2Hover
30
+ },
31
+ ':active': {
32
+ backgroundColor: tokens.colorSubtleBackgroundPressed,
33
+ color: tokens.colorNeutralForeground2Pressed
34
+ },
35
+ '@media (forced-colors: active)': {
36
+ ':hover': {
37
+ backgroundColor: 'HighlightText'
38
+ },
39
+ ':active': {
40
+ backgroundColor: 'HighlightText'
41
+ }
42
+ }
43
+ });
44
+ const useNextStyles = makeStyles({
45
+ root: {
46
+ borderRadius: tokens.borderRadiusXLarge,
47
+ ...shorthands.borderColor(tokens.colorTransparentStroke),
48
+ color: tokens.colorNeutralForeground2,
49
+ backgroundColor: tokens.colorNeutralBackground3,
50
+ ':hover': {
51
+ cursor: 'pointer',
52
+ color: tokens.colorNeutralForeground2Hover,
53
+ backgroundColor: tokens.colorNeutralBackground3Hover
54
+ },
55
+ ':active': {
56
+ color: tokens.colorNeutralForeground2Pressed,
57
+ backgroundColor: tokens.colorNeutralBackground3Pressed
58
+ }
59
+ },
60
+ canvas: {
61
+ minHeight: '40px',
62
+ padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalS}`
63
+ },
64
+ sidecar: {
65
+ minHeight: '32px',
66
+ padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalS}`
67
+ },
68
+ fullyOverflowed_canvas: {
69
+ padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalL}`,
70
+ ...typographyStyles.subtitle2
71
+ },
72
+ fullyOverflowed_sidecar: {
73
+ padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalM}`,
74
+ ...typographyStyles.body1Strong
75
+ }
76
+ });
77
+ /**
78
+ * Apply styling to the AttachmentOverflowMenuButton slots based on the state
79
+ */ export const useAttachmentOverflowMenuButtonStyles_unstable = (state)=>{
80
+ 'use no memo';
81
+ const { designVersion, mode, fullyOverflowed } = state;
82
+ const rootBaseClassName = useRootBaseClassName();
83
+ const progressBarStyles = useProgressBarStyles();
84
+ const nextStyles = useNextStyles();
85
+ state.root.className = mergeClasses(attachmentOverflowMenuButtonClassNames.root, rootBaseClassName, designVersion === 'next' && nextStyles.root, designVersion === 'next' && nextStyles[mode], designVersion === 'next' && fullyOverflowed && nextStyles[`fullyOverflowed_${mode}`], state.root.className);
86
+ if (state.progress) {
87
+ state.progress.className = mergeClasses(attachmentOverflowMenuButtonClassNames.progress, progressBarStyles.progress, state.progress.className);
88
+ const bar = slot.optional(state.progress.bar, {
89
+ elementType: 'div',
90
+ renderByDefault: true
91
+ });
92
+ if (bar) {
93
+ if (state.progress.value === undefined) {
94
+ bar.className = mergeClasses(progressBarStyles.indeterminateProgressBar, bar.className);
95
+ } else {
96
+ bar.className = mergeClasses(progressBarStyles.regularProgressBar, bar.className);
97
+ }
98
+ state.progress.bar = bar;
99
+ }
100
+ }
101
+ return state;
102
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useAttachmentOverflowMenuButtonStyles.styles.ts"],"sourcesContent":["import { makeResetStyles, makeStyles, mergeClasses, shorthands, slot } from '@fluentui/react-components';\nimport { tokens, typographyStyles } from '@fluentui-copilot/tokens';\nimport { useProgressBarStyles } from '../utils/useProgressBarStyles.styles';\nimport type {\n AttachmentOverflowMenuButtonSlots,\n AttachmentOverflowMenuButtonState,\n} from './AttachmentOverflowMenuButton.types';\nimport type { SlotClassNames } from '@fluentui/react-components';\n\nexport const attachmentOverflowMenuButtonClassNames: SlotClassNames<AttachmentOverflowMenuButtonSlots> = {\n root: 'fai-AttachmentOverflowMenuButton',\n progress: 'fai-AttachmentOverflowMenuButton__progress',\n};\n\nconst useRootBaseClassName = makeResetStyles({\n color: tokens.colorNeutralForeground1,\n alignItems: 'center',\n backgroundColor: tokens.colorSubtleBackground,\n border: `${tokens.strokeWidthThin} solid ${tokens.colorNeutralStroke1}`,\n borderRadius: tokens.borderRadiusMedium,\n boxSizing: 'border-box',\n columnGap: tokens.spacingHorizontalSNudge,\n cursor: 'pointer',\n display: 'inline-flex',\n flexWrap: 'nowrap',\n fontFamily: typographyStyles.body1.fontFamily,\n fontSize: typographyStyles.body1.fontSize,\n fontWeight: typographyStyles.body1.fontWeight,\n justifyContent: 'center',\n padding: `${tokens.spacingVerticalXS} ${tokens.spacingHorizontalS}`,\n verticalAlign: 'middle',\n position: 'relative',\n\n ':hover': {\n cursor: 'pointer',\n backgroundColor: tokens.colorSubtleBackgroundHover,\n color: tokens.colorNeutralForeground2Hover,\n },\n ':active': {\n backgroundColor: tokens.colorSubtleBackgroundPressed,\n color: tokens.colorNeutralForeground2Pressed,\n },\n '@media (forced-colors: active)': {\n ':hover': {\n backgroundColor: 'HighlightText',\n },\n ':active': {\n backgroundColor: 'HighlightText',\n },\n },\n});\n\nconst useNextStyles = makeStyles({\n root: {\n borderRadius: tokens.borderRadiusXLarge,\n ...shorthands.borderColor(tokens.colorTransparentStroke),\n color: tokens.colorNeutralForeground2,\n backgroundColor: tokens.colorNeutralBackground3,\n ':hover': {\n cursor: 'pointer',\n color: tokens.colorNeutralForeground2Hover,\n backgroundColor: tokens.colorNeutralBackground3Hover,\n },\n ':active': {\n color: tokens.colorNeutralForeground2Pressed,\n backgroundColor: tokens.colorNeutralBackground3Pressed,\n },\n },\n canvas: {\n minHeight: '40px',\n padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalS}`,\n },\n sidecar: {\n minHeight: '32px',\n padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalS}`,\n },\n fullyOverflowed_canvas: {\n padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalL}`,\n ...typographyStyles.subtitle2,\n },\n fullyOverflowed_sidecar: {\n padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalM}`,\n ...typographyStyles.body1Strong,\n },\n});\n\n/**\n * Apply styling to the AttachmentOverflowMenuButton slots based on the state\n */\nexport const useAttachmentOverflowMenuButtonStyles_unstable = (\n state: AttachmentOverflowMenuButtonState,\n): AttachmentOverflowMenuButtonState => {\n 'use no memo';\n\n const { designVersion, mode, fullyOverflowed } = state;\n\n const rootBaseClassName = useRootBaseClassName();\n const progressBarStyles = useProgressBarStyles();\n const nextStyles = useNextStyles();\n\n state.root.className = mergeClasses(\n attachmentOverflowMenuButtonClassNames.root,\n rootBaseClassName,\n designVersion === 'next' && nextStyles.root,\n designVersion === 'next' && nextStyles[mode],\n designVersion === 'next' && fullyOverflowed && nextStyles[`fullyOverflowed_${mode}`],\n state.root.className,\n );\n\n if (state.progress) {\n state.progress.className = mergeClasses(\n attachmentOverflowMenuButtonClassNames.progress,\n progressBarStyles.progress,\n state.progress.className,\n );\n\n const bar = slot.optional(state.progress.bar, { elementType: 'div', renderByDefault: true });\n if (bar) {\n if (state.progress.value === undefined) {\n bar.className = mergeClasses(progressBarStyles.indeterminateProgressBar, bar.className);\n } else {\n bar.className = mergeClasses(progressBarStyles.regularProgressBar, bar.className);\n }\n state.progress.bar = bar;\n }\n }\n\n return state;\n};\n"],"names":["makeResetStyles","makeStyles","mergeClasses","shorthands","slot","tokens","typographyStyles","useProgressBarStyles","attachmentOverflowMenuButtonClassNames","root","progress","useRootBaseClassName","color","colorNeutralForeground1","alignItems","backgroundColor","colorSubtleBackground","border","strokeWidthThin","colorNeutralStroke1","borderRadius","borderRadiusMedium","boxSizing","columnGap","spacingHorizontalSNudge","cursor","display","flexWrap","fontFamily","body1","fontSize","fontWeight","justifyContent","padding","spacingVerticalXS","spacingHorizontalS","verticalAlign","position","colorSubtleBackgroundHover","colorNeutralForeground2Hover","colorSubtleBackgroundPressed","colorNeutralForeground2Pressed","useNextStyles","borderRadiusXLarge","borderColor","colorTransparentStroke","colorNeutralForeground2","colorNeutralBackground3","colorNeutralBackground3Hover","colorNeutralBackground3Pressed","canvas","minHeight","spacingVerticalNone","sidecar","fullyOverflowed_canvas","spacingHorizontalL","subtitle2","fullyOverflowed_sidecar","spacingHorizontalM","body1Strong","useAttachmentOverflowMenuButtonStyles_unstable","state","designVersion","mode","fullyOverflowed","rootBaseClassName","progressBarStyles","nextStyles","className","bar","optional","elementType","renderByDefault","value","undefined","indeterminateProgressBar","regularProgressBar"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -1,5 +1,6 @@
1
- import { __styles, mergeClasses, slot, tokens } from '@fluentui/react-components';
1
+ import { __styles, mergeClasses, slot } from '@fluentui/react-components';
2
2
  import { useProgressBarStyles } from '../utils/useProgressBarStyles.styles';
3
+ import { tokens } from '@fluentui-copilot/tokens';
3
4
  export const attachmentOverflowMenuItemClassNames = {
4
5
  root: 'fai-AttachmentOverflowMenuItem',
5
6
  progress: 'fai-AttachmentOverflowMenuItem__progress'
@@ -18,18 +19,25 @@ const useStyles = __styles({
18
19
  });
19
20
  const useNextStyles = __styles({
20
21
  nextStyles: {
22
+ Beyfa6y: 0,
23
+ Bbmb7ep: 0,
24
+ Btl43ni: 0,
25
+ B7oj6ja: 0,
26
+ Dimara: "fxe958b",
21
27
  Dah5zi: 0,
22
28
  B1tsrr9: 0,
23
29
  qqdqy8: 0,
24
30
  Bkh64rk: 0,
25
- e3fwne: "f84qbf7",
31
+ e3fwne: "f8ydpu5",
26
32
  Bw0xxkn: 0,
27
33
  oeaueh: 0,
28
34
  Bpd4iqm: 0,
29
35
  Befb4lg: "f1bars0k"
30
36
  }
31
37
  }, {
32
- d: [[".f84qbf7[data-fui-focus-visible]::after{border-radius:var(--borderRadiusXLarge);}", {
38
+ d: [[".fxe958b{border-radius:20px;}", {
39
+ p: -1
40
+ }], [".f8ydpu5[data-fui-focus-visible]::after{border-radius:20px;}", {
33
41
  p: -1
34
42
  }], [".f1bars0k{outline:var(--strokeWidthThin) solid var(--colorTransparentStroke);}", {
35
43
  p: -1
@@ -1 +1 @@
1
- {"version":3,"sources":["useAttachmentOverflowMenuItemStyles.styles.ts"],"sourcesContent":["import { makeStyles, mergeClasses, slot, tokens } from '@fluentui/react-components';\nimport { useProgressBarStyles } from '../utils/useProgressBarStyles.styles';\nimport type {\n AttachmentOverflowMenuItemSlots,\n AttachmentOverflowMenuItemState,\n} from './AttachmentOverflowMenuItem.types';\nimport type { SlotClassNames } from '@fluentui/react-components';\n\nexport const attachmentOverflowMenuItemClassNames: SlotClassNames<AttachmentOverflowMenuItemSlots> = {\n root: 'fai-AttachmentOverflowMenuItem',\n progress: 'fai-AttachmentOverflowMenuItem__progress',\n};\n\nconst FOCUS_VISIBLE_ATTR = 'data-fui-focus-visible';\n\nconst useStyles = makeStyles({\n imageOnly: {\n alignItems: 'center',\n },\n secondaryContent: {\n display: 'flex',\n alignItems: 'center',\n },\n});\n\nconst useNextStyles = makeStyles({\n nextStyles: {\n [`[${FOCUS_VISIBLE_ATTR}]::after`]: {\n borderRadius: tokens.borderRadiusXLarge,\n },\n outline: `${tokens.strokeWidthThin} solid ${tokens.colorTransparentStroke}`,\n },\n});\n\n/**\n * Apply styling to the AttachmentList slots based on the state\n */\nexport const useAttachmentOverflowMenuItemStyles_unstable = (\n state: AttachmentOverflowMenuItemState,\n): AttachmentOverflowMenuItemState => {\n 'use no memo';\n\n const { imageOnly, designVersion } = state;\n const styles = useStyles();\n const nextStyles = useNextStyles();\n const progressBarStyles = useProgressBarStyles();\n\n state.root.className = mergeClasses(\n attachmentOverflowMenuItemClassNames.root,\n imageOnly && styles.imageOnly,\n designVersion === 'next' && nextStyles.nextStyles,\n state.root.className,\n );\n\n const secondaryContent = slot.optional(state.root.secondaryContent, {\n elementType: 'span',\n });\n if (secondaryContent) {\n secondaryContent.className = mergeClasses(styles.secondaryContent, secondaryContent.className);\n state.root.secondaryContent = secondaryContent;\n }\n\n if (state.progress) {\n state.progress.className = mergeClasses(\n attachmentOverflowMenuItemClassNames.progress,\n progressBarStyles.progress,\n state.progress.className,\n );\n\n const bar = slot.optional(state.progress.bar, { elementType: 'div', renderByDefault: true });\n if (bar) {\n if (state.progress.value === undefined) {\n bar.className = mergeClasses(progressBarStyles.indeterminateProgressBar, bar.className);\n } else {\n bar.className = mergeClasses(progressBarStyles.regularProgressBar, bar.className);\n }\n state.progress.bar = bar;\n }\n }\n\n return state;\n};\n"],"names":["makeStyles","mergeClasses","slot","tokens","useProgressBarStyles","attachmentOverflowMenuItemClassNames","root","progress","FOCUS_VISIBLE_ATTR","useStyles","imageOnly","alignItems","secondaryContent","display","useNextStyles","nextStyles","borderRadius","borderRadiusXLarge","outline","strokeWidthThin","colorTransparentStroke","useAttachmentOverflowMenuItemStyles_unstable","state","designVersion","styles","progressBarStyles","className","optional","elementType","bar","renderByDefault","value","undefined","indeterminateProgressBar","regularProgressBar"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,UAAU,EAAEC,YAAY,EAAEC,IAAI,EAAEC,MAAM,QAAQ,6BAA6B;AACpF,SAASC,oBAAoB,QAAQ,uCAAuC;AAO5E,OAAO,MAAMC,uCAAwF;IACnGC,MAAM;IACNC,UAAU;AACZ,EAAE;AAEF,MAAMC,qBAAqB;AAE3B,MAAMC,YAAYT,WAAW;IAC3BU,WAAW;QACTC,YAAY;IACd;IACAC,kBAAkB;QAChBC,SAAS;QACTF,YAAY;IACd;AACF;AAEA,MAAMG,gBAAgBd,WAAW;IAC/Be,YAAY;QACV,CAAC,CAAC,CAAC,EAAEP,mBAAmB,QAAQ,CAAC,CAAC,EAAE;YAClCQ,cAAcb,OAAOc,kBAAkB;QACzC;QACAC,SAAS,CAAC,EAAEf,OAAOgB,eAAe,CAAC,OAAO,EAAEhB,OAAOiB,sBAAsB,CAAC,CAAC;IAC7E;AACF;AAEA;;CAEC,GACD,OAAO,MAAMC,+CAA+C,CAC1DC;IAEA;IAEA,MAAM,EAAEZ,SAAS,EAAEa,aAAa,EAAE,GAAGD;IACrC,MAAME,SAASf;IACf,MAAMM,aAAaD;IACnB,MAAMW,oBAAoBrB;IAE1BkB,MAAMhB,IAAI,CAACoB,SAAS,GAAGzB,aACrBI,qCAAqCC,IAAI,EACzCI,aAAac,OAAOd,SAAS,EAC7Ba,kBAAkB,UAAUR,WAAWA,UAAU,EACjDO,MAAMhB,IAAI,CAACoB,SAAS;IAGtB,MAAMd,mBAAmBV,KAAKyB,QAAQ,CAACL,MAAMhB,IAAI,CAACM,gBAAgB,EAAE;QAClEgB,aAAa;IACf;IACA,IAAIhB,kBAAkB;QACpBA,iBAAiBc,SAAS,GAAGzB,aAAauB,OAAOZ,gBAAgB,EAAEA,iBAAiBc,SAAS;QAC7FJ,MAAMhB,IAAI,CAACM,gBAAgB,GAAGA;IAChC;IAEA,IAAIU,MAAMf,QAAQ,EAAE;QAClBe,MAAMf,QAAQ,CAACmB,SAAS,GAAGzB,aACzBI,qCAAqCE,QAAQ,EAC7CkB,kBAAkBlB,QAAQ,EAC1Be,MAAMf,QAAQ,CAACmB,SAAS;QAG1B,MAAMG,MAAM3B,KAAKyB,QAAQ,CAACL,MAAMf,QAAQ,CAACsB,GAAG,EAAE;YAAED,aAAa;YAAOE,iBAAiB;QAAK;QAC1F,IAAID,KAAK;YACP,IAAIP,MAAMf,QAAQ,CAACwB,KAAK,KAAKC,WAAW;gBACtCH,IAAIH,SAAS,GAAGzB,aAAawB,kBAAkBQ,wBAAwB,EAAEJ,IAAIH,SAAS;YACxF,OAAO;gBACLG,IAAIH,SAAS,GAAGzB,aAAawB,kBAAkBS,kBAAkB,EAAEL,IAAIH,SAAS;YAClF;YACAJ,MAAMf,QAAQ,CAACsB,GAAG,GAAGA;QACvB;IACF;IAEA,OAAOP;AACT,EAAE"}
1
+ {"version":3,"sources":["useAttachmentOverflowMenuItemStyles.styles.ts"],"sourcesContent":["import { makeStyles, mergeClasses, slot } from '@fluentui/react-components';\nimport { useProgressBarStyles } from '../utils/useProgressBarStyles.styles';\nimport type {\n AttachmentOverflowMenuItemSlots,\n AttachmentOverflowMenuItemState,\n} from './AttachmentOverflowMenuItem.types';\nimport type { SlotClassNames } from '@fluentui/react-components';\nimport { tokens } from '@fluentui-copilot/tokens';\n\nexport const attachmentOverflowMenuItemClassNames: SlotClassNames<AttachmentOverflowMenuItemSlots> = {\n root: 'fai-AttachmentOverflowMenuItem',\n progress: 'fai-AttachmentOverflowMenuItem__progress',\n};\n\nconst FOCUS_VISIBLE_ATTR = 'data-fui-focus-visible';\n\nconst useStyles = makeStyles({\n imageOnly: {\n alignItems: 'center',\n },\n secondaryContent: {\n display: 'flex',\n alignItems: 'center',\n },\n});\n\nconst useNextStyles = makeStyles({\n nextStyles: {\n borderRadius: '20px',\n [`[${FOCUS_VISIBLE_ATTR}]::after`]: {\n borderRadius: '20px',\n },\n outline: `${tokens.strokeWidthThin} solid ${tokens.colorTransparentStroke}`,\n },\n});\n\n/**\n * Apply styling to the AttachmentList slots based on the state\n */\nexport const useAttachmentOverflowMenuItemStyles_unstable = (\n state: AttachmentOverflowMenuItemState,\n): AttachmentOverflowMenuItemState => {\n 'use no memo';\n\n const { imageOnly, designVersion } = state;\n const styles = useStyles();\n const nextStyles = useNextStyles();\n const progressBarStyles = useProgressBarStyles();\n\n state.root.className = mergeClasses(\n attachmentOverflowMenuItemClassNames.root,\n imageOnly && styles.imageOnly,\n designVersion === 'next' && nextStyles.nextStyles,\n state.root.className,\n );\n\n const secondaryContent = slot.optional(state.root.secondaryContent, {\n elementType: 'span',\n });\n if (secondaryContent) {\n secondaryContent.className = mergeClasses(styles.secondaryContent, secondaryContent.className);\n state.root.secondaryContent = secondaryContent;\n }\n\n if (state.progress) {\n state.progress.className = mergeClasses(\n attachmentOverflowMenuItemClassNames.progress,\n progressBarStyles.progress,\n state.progress.className,\n );\n\n const bar = slot.optional(state.progress.bar, { elementType: 'div', renderByDefault: true });\n if (bar) {\n if (state.progress.value === undefined) {\n bar.className = mergeClasses(progressBarStyles.indeterminateProgressBar, bar.className);\n } else {\n bar.className = mergeClasses(progressBarStyles.regularProgressBar, bar.className);\n }\n state.progress.bar = bar;\n }\n }\n\n return state;\n};\n"],"names":["makeStyles","mergeClasses","slot","useProgressBarStyles","tokens","attachmentOverflowMenuItemClassNames","root","progress","FOCUS_VISIBLE_ATTR","useStyles","imageOnly","alignItems","secondaryContent","display","useNextStyles","nextStyles","borderRadius","outline","strokeWidthThin","colorTransparentStroke","useAttachmentOverflowMenuItemStyles_unstable","state","designVersion","styles","progressBarStyles","className","optional","elementType","bar","renderByDefault","value","undefined","indeterminateProgressBar","regularProgressBar"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,UAAU,EAAEC,YAAY,EAAEC,IAAI,QAAQ,6BAA6B;AAC5E,SAASC,oBAAoB,QAAQ,uCAAuC;AAM5E,SAASC,MAAM,QAAQ,2BAA2B;AAElD,OAAO,MAAMC,uCAAwF;IACnGC,MAAM;IACNC,UAAU;AACZ,EAAE;AAEF,MAAMC,qBAAqB;AAE3B,MAAMC,YAAYT,WAAW;IAC3BU,WAAW;QACTC,YAAY;IACd;IACAC,kBAAkB;QAChBC,SAAS;QACTF,YAAY;IACd;AACF;AAEA,MAAMG,gBAAgBd,WAAW;IAC/Be,YAAY;QACVC,cAAc;QACd,CAAC,CAAC,CAAC,EAAER,mBAAmB,QAAQ,CAAC,CAAC,EAAE;YAClCQ,cAAc;QAChB;QACAC,SAAS,CAAC,EAAEb,OAAOc,eAAe,CAAC,OAAO,EAAEd,OAAOe,sBAAsB,CAAC,CAAC;IAC7E;AACF;AAEA;;CAEC,GACD,OAAO,MAAMC,+CAA+C,CAC1DC;IAEA;IAEA,MAAM,EAAEX,SAAS,EAAEY,aAAa,EAAE,GAAGD;IACrC,MAAME,SAASd;IACf,MAAMM,aAAaD;IACnB,MAAMU,oBAAoBrB;IAE1BkB,MAAMf,IAAI,CAACmB,SAAS,GAAGxB,aACrBI,qCAAqCC,IAAI,EACzCI,aAAaa,OAAOb,SAAS,EAC7BY,kBAAkB,UAAUP,WAAWA,UAAU,EACjDM,MAAMf,IAAI,CAACmB,SAAS;IAGtB,MAAMb,mBAAmBV,KAAKwB,QAAQ,CAACL,MAAMf,IAAI,CAACM,gBAAgB,EAAE;QAClEe,aAAa;IACf;IACA,IAAIf,kBAAkB;QACpBA,iBAAiBa,SAAS,GAAGxB,aAAasB,OAAOX,gBAAgB,EAAEA,iBAAiBa,SAAS;QAC7FJ,MAAMf,IAAI,CAACM,gBAAgB,GAAGA;IAChC;IAEA,IAAIS,MAAMd,QAAQ,EAAE;QAClBc,MAAMd,QAAQ,CAACkB,SAAS,GAAGxB,aACzBI,qCAAqCE,QAAQ,EAC7CiB,kBAAkBjB,QAAQ,EAC1Bc,MAAMd,QAAQ,CAACkB,SAAS;QAG1B,MAAMG,MAAM1B,KAAKwB,QAAQ,CAACL,MAAMd,QAAQ,CAACqB,GAAG,EAAE;YAAED,aAAa;YAAOE,iBAAiB;QAAK;QAC1F,IAAID,KAAK;YACP,IAAIP,MAAMd,QAAQ,CAACuB,KAAK,KAAKC,WAAW;gBACtCH,IAAIH,SAAS,GAAGxB,aAAauB,kBAAkBQ,wBAAwB,EAAEJ,IAAIH,SAAS;YACxF,OAAO;gBACLG,IAAIH,SAAS,GAAGxB,aAAauB,kBAAkBS,kBAAkB,EAAEL,IAAIH,SAAS;YAClF;YACAJ,MAAMd,QAAQ,CAACqB,GAAG,GAAGA;QACvB;IACF;IAEA,OAAOP;AACT,EAAE"}