@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,347 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ attachmentClassNames: function() {
13
+ return attachmentClassNames;
14
+ },
15
+ useAttachmentStyles_unstable: function() {
16
+ return useAttachmentStyles_unstable;
17
+ },
18
+ useOverflowStyles: function() {
19
+ return useOverflowStyles;
20
+ }
21
+ });
22
+ const _reactcomponents = require("@fluentui/react-components");
23
+ const _tokens = require("@fluentui-copilot/tokens");
24
+ const _useProgressBarStylesstyles = require("../utils/useProgressBarStyles.styles");
25
+ const attachmentClassNames = {
26
+ root: 'fai-Attachment',
27
+ primaryAction: 'fai-Attachment__primaryAction',
28
+ dismissButton: 'fai-Attachment__dismissButton',
29
+ media: 'fai-Attachment__media',
30
+ content: 'fai-Attachment__content',
31
+ dismissIcon: 'fai-Attachment__dismissIcon',
32
+ progress: 'fai-Attachment__progress'
33
+ };
34
+ const ATTACHMENT_MAXWIDTH = '180px';
35
+ const SMALL_ATTACHMENT_SIZE = '16px';
36
+ const ATTACHMENT_SIZE = '20px';
37
+ const useRootBaseClassName = (0, _reactcomponents.makeResetStyles)({
38
+ display: 'inline-flex',
39
+ flexWrap: 'nowrap',
40
+ verticalAlign: 'middle',
41
+ boxSizing: 'border-box',
42
+ width: 'fit-content',
43
+ alignSelf: 'end',
44
+ position: 'relative'
45
+ });
46
+ const buttonBaseStyles = {
47
+ alignItems: 'center',
48
+ backgroundColor: _tokens.tokens.colorSubtleBackground,
49
+ border: `${_tokens.tokens.strokeWidthThin} solid ${_tokens.tokens.colorNeutralStroke1}`,
50
+ borderRadius: _tokens.tokens.borderRadiusMedium,
51
+ boxSizing: 'border-box',
52
+ columnGap: _tokens.tokens.spacingHorizontalSNudge,
53
+ color: _tokens.tokens.colorNeutralForeground1,
54
+ cursor: 'pointer',
55
+ display: 'inline-flex',
56
+ flexWrap: 'nowrap',
57
+ justifyContent: 'center',
58
+ ...(0, _reactcomponents.createCustomFocusIndicatorStyle)({
59
+ outline: `${_tokens.tokens.strokeWidthThick} solid ${_tokens.tokens.colorStrokeFocus2}`,
60
+ outlineOffset: `calc(${_tokens.tokens.strokeWidthThick} * -1)`,
61
+ zIndex: 1
62
+ }),
63
+ verticalAlign: 'middle'
64
+ };
65
+ const usePrimaryActionBaseClassName = (0, _reactcomponents.makeResetStyles)({
66
+ ...buttonBaseStyles,
67
+ borderTopRightRadius: _tokens.tokens.borderRadiusNone,
68
+ borderBottomRightRadius: _tokens.tokens.borderRadiusNone,
69
+ borderRightStyle: 'none',
70
+ maxWidth: `calc(${ATTACHMENT_MAXWIDTH} - ${ATTACHMENT_SIZE} + ${_tokens.tokens.strokeWidthThin} * 2 + ${_tokens.tokens.spacingHorizontalXXS} - ${_tokens.tokens.spacingHorizontalXS})`,
71
+ padding: `${_tokens.tokens.spacingVerticalXS} ${_tokens.tokens.spacingHorizontalS} ${_tokens.tokens.spacingVerticalXS} ${_tokens.tokens.spacingHorizontalS}`
72
+ });
73
+ const usePrimaryActionStyles = (0, _reactcomponents.makeStyles)({
74
+ button: {
75
+ ':hover': {
76
+ cursor: 'pointer',
77
+ backgroundColor: _tokens.tokens.colorSubtleBackgroundHover,
78
+ color: _tokens.tokens.colorNeutralForeground2Hover
79
+ },
80
+ ':active': {
81
+ backgroundColor: _tokens.tokens.colorSubtleBackgroundPressed,
82
+ color: _tokens.tokens.colorNeutralForeground2Pressed
83
+ },
84
+ '@media (forced-colors: active)': {
85
+ ':hover': {
86
+ backgroundColor: 'HighlightText'
87
+ },
88
+ ':active': {
89
+ backgroundColor: 'HighlightText'
90
+ }
91
+ }
92
+ }
93
+ });
94
+ const useDismissButtonBaseClassName = (0, _reactcomponents.makeResetStyles)({
95
+ ...buttonBaseStyles,
96
+ padding: `${_tokens.tokens.spacingVerticalXS} ${_tokens.tokens.spacingHorizontalXS} ${_tokens.tokens.spacingVerticalXS} ${_tokens.tokens.spacingHorizontalXS}`,
97
+ maxWidth: `calc(${ATTACHMENT_SIZE} + ${_tokens.tokens.strokeWidthThin} * 2 + ${_tokens.tokens.spacingHorizontalXXS}) + ${_tokens.tokens.spacingHorizontalXS}`,
98
+ minWidth: `calc(${ATTACHMENT_SIZE} + ${_tokens.tokens.strokeWidthThin} * 2 + ${_tokens.tokens.spacingHorizontalXXS}) + ${_tokens.tokens.spacingHorizontalXS}`,
99
+ // divider:
100
+ borderLeftColor: _tokens.tokens.colorNeutralStroke1,
101
+ borderTopLeftRadius: _tokens.tokens.borderRadiusNone,
102
+ borderBottomLeftRadius: _tokens.tokens.borderRadiusNone,
103
+ borderTopRightRadius: _tokens.tokens.borderRadiusMedium,
104
+ borderBottomRightRadius: _tokens.tokens.borderRadiusMedium,
105
+ ':hover': {
106
+ cursor: 'pointer',
107
+ backgroundColor: _tokens.tokens.colorSubtleBackgroundHover,
108
+ color: _tokens.tokens.colorNeutralForeground2BrandHover
109
+ },
110
+ ':active': {
111
+ backgroundColor: _tokens.tokens.colorSubtleBackgroundPressed,
112
+ color: _tokens.tokens.colorNeutralForeground2BrandPressed
113
+ },
114
+ '@media (forced-colors: active)': {
115
+ ':hover': {
116
+ backgroundColor: 'HighlightText'
117
+ },
118
+ ':active': {
119
+ backgroundColor: 'HighlightText'
120
+ }
121
+ }
122
+ });
123
+ const useDismissButtonCurrentStyles = (0, _reactcomponents.makeStyles)({
124
+ root: {
125
+ ':hover': {
126
+ [`& .${attachmentClassNames.dismissIcon}`]: {
127
+ color: _tokens.tokens.colorBrandForegroundLinkHover
128
+ }
129
+ }
130
+ }
131
+ });
132
+ const useMediaBaseClassName = (0, _reactcomponents.makeResetStyles)({
133
+ alignItems: 'center',
134
+ display: 'inline-flex',
135
+ fontSize: ATTACHMENT_SIZE,
136
+ height: ATTACHMENT_SIZE,
137
+ lineHeight: ATTACHMENT_SIZE,
138
+ width: ATTACHMENT_SIZE
139
+ });
140
+ const useContentBaseClassName = (0, _reactcomponents.makeResetStyles)({
141
+ overflowX: 'hidden',
142
+ textOverflow: 'ellipsis',
143
+ whiteSpace: 'nowrap',
144
+ ..._reactcomponents.typographyStyles.body1
145
+ });
146
+ const useDismissIconBaseClassName = (0, _reactcomponents.makeResetStyles)({
147
+ alignItems: 'center',
148
+ borderRadius: _tokens.tokens.borderRadiusCircular,
149
+ border: `${_tokens.tokens.strokeWidthThin} solid ${_tokens.tokens.colorTransparentStroke}`,
150
+ boxSizing: 'border-box',
151
+ color: _tokens.tokens.colorNeutralForeground1,
152
+ display: 'inline-flex',
153
+ fontSize: ATTACHMENT_SIZE,
154
+ height: `calc(${ATTACHMENT_SIZE} + ${_tokens.tokens.strokeWidthThin} * 2 + ${_tokens.tokens.spacingVerticalXXS})`,
155
+ justifyContent: 'center',
156
+ maxWidth: `calc(${ATTACHMENT_SIZE} + ${_tokens.tokens.strokeWidthThin} * 2 + ${_tokens.tokens.spacingHorizontalXXS})`,
157
+ minWidth: `calc(${ATTACHMENT_SIZE} + ${_tokens.tokens.strokeWidthThin} * 2 + ${_tokens.tokens.spacingHorizontalXXS})`,
158
+ padding: `calc(${_tokens.tokens.spacingVerticalXXS} / 2) calc(${_tokens.tokens.spacingHorizontalXXS} / 2)`
159
+ });
160
+ const useDismissIconNextStyles = (0, _reactcomponents.makeStyles)({
161
+ dismissOnly: {
162
+ ':hover': {
163
+ color: _tokens.tokens.colorNeutralForeground2BrandHover
164
+ },
165
+ ':active': {
166
+ color: _tokens.tokens.colorNeutralForeground2BrandPressed
167
+ }
168
+ }
169
+ });
170
+ const useImageOnlyStyles = (0, _reactcomponents.makeStyles)({
171
+ primaryAction: {
172
+ padding: 0
173
+ },
174
+ content: {
175
+ lineHeight: 0
176
+ }
177
+ });
178
+ const useOverflowStyles = (0, _reactcomponents.makeStyles)({
179
+ overflow: {
180
+ maxWidth: '100%',
181
+ width: '100%'
182
+ }
183
+ });
184
+ const useSmallStyles = (0, _reactcomponents.makeStyles)({
185
+ primaryAction: {
186
+ maxWidth: `calc(${ATTACHMENT_MAXWIDTH} - ${SMALL_ATTACHMENT_SIZE} + ${_tokens.tokens.strokeWidthThin} * 2 + ${_tokens.tokens.spacingHorizontalXXS} - ${_tokens.tokens.spacingHorizontalXS})`,
187
+ padding: `${_tokens.tokens.spacingVerticalXXS} ${_tokens.tokens.spacingHorizontalSNudge} ${_tokens.tokens.spacingVerticalXXS} ${_tokens.tokens.spacingHorizontalSNudge}`
188
+ },
189
+ media: {
190
+ fontSize: SMALL_ATTACHMENT_SIZE,
191
+ height: SMALL_ATTACHMENT_SIZE,
192
+ lineHeight: SMALL_ATTACHMENT_SIZE,
193
+ width: SMALL_ATTACHMENT_SIZE
194
+ },
195
+ content: {
196
+ ..._reactcomponents.typographyStyles.caption1
197
+ },
198
+ dismissButton: {
199
+ padding: `${_tokens.tokens.spacingVerticalXXS} ${_tokens.tokens.spacingHorizontalXXS}`,
200
+ maxWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${_tokens.tokens.strokeWidthThin} * 2 + ${_tokens.tokens.spacingHorizontalXXS}) + ${_tokens.tokens.spacingHorizontalXS}`,
201
+ minWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${_tokens.tokens.strokeWidthThin} * 2 + ${_tokens.tokens.spacingHorizontalXXS}) + ${_tokens.tokens.spacingHorizontalXS}`
202
+ },
203
+ dismissIcon: {
204
+ fontSize: SMALL_ATTACHMENT_SIZE,
205
+ height: `calc(${SMALL_ATTACHMENT_SIZE} + ${_tokens.tokens.strokeWidthThin} * 2 + ${_tokens.tokens.spacingVerticalXXS})`,
206
+ maxWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${_tokens.tokens.strokeWidthThin} * 2 + ${_tokens.tokens.spacingHorizontalXXS})`,
207
+ minWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${_tokens.tokens.strokeWidthThin} * 2 + ${_tokens.tokens.spacingHorizontalXXS})`
208
+ }
209
+ });
210
+ const usePrimaryActionNextStyles = (0, _reactcomponents.makeStyles)({
211
+ root: {
212
+ borderTopLeftRadius: _tokens.tokens.borderRadiusXLarge,
213
+ borderBottomLeftRadius: _tokens.tokens.borderRadiusXLarge
214
+ },
215
+ canvas: {
216
+ padding: `${_tokens.tokens.spacingVerticalNone} ${_tokens.tokens.spacingHorizontalS}`,
217
+ minHeight: '40px'
218
+ },
219
+ sidecar: {
220
+ padding: `${_tokens.tokens.spacingVerticalNone} ${_tokens.tokens.spacingHorizontalS}`,
221
+ minHeight: '32px'
222
+ }
223
+ });
224
+ const useDismissButtonNextStyles = (0, _reactcomponents.makeStyles)({
225
+ root: {
226
+ borderTopRightRadius: _tokens.tokens.borderRadiusXLarge,
227
+ borderBottomRightRadius: _tokens.tokens.borderRadiusXLarge,
228
+ ':hover': {
229
+ color: _tokens.tokens.colorNeutralForeground2
230
+ },
231
+ ':active': {
232
+ color: _tokens.tokens.colorNeutralForeground2Pressed
233
+ },
234
+ borderLeftColor: _tokens.tokens.colorNeutralStroke1,
235
+ borderLeftWidth: _tokens.tokens.strokeWidthThin,
236
+ borderLeftStyle: 'solid'
237
+ },
238
+ withPrimary: {
239
+ ':hover': {
240
+ [`& .${attachmentClassNames.dismissIcon}`]: {
241
+ color: _tokens.tokens.colorNeutralForeground2
242
+ }
243
+ },
244
+ ':active': {
245
+ [`& .${attachmentClassNames.dismissIcon}`]: {
246
+ color: _tokens.tokens.colorNeutralForeground2Pressed
247
+ }
248
+ }
249
+ },
250
+ canvas: {
251
+ padding: `${_tokens.tokens.spacingVerticalNone} ${_tokens.tokens.spacingHorizontalS}`,
252
+ minHeight: '40px',
253
+ width: '40px'
254
+ },
255
+ sidecar: {
256
+ padding: `${_tokens.tokens.spacingVerticalNone} ${_tokens.tokens.spacingHorizontalMNudge}`,
257
+ minHeight: '32px',
258
+ width: '32px'
259
+ },
260
+ dismissOnly: {
261
+ borderRadius: _tokens.tokens.borderRadiusXLarge,
262
+ width: 'unset',
263
+ borderLeftColor: _tokens.tokens.colorTransparentStroke,
264
+ backgroundColor: _tokens.tokens.colorNeutralBackground3,
265
+ ':hover': {
266
+ backgroundColor: _tokens.tokens.colorNeutralBackground3
267
+ },
268
+ ':active': {
269
+ backgroundColor: _tokens.tokens.colorNeutralBackground3
270
+ }
271
+ }
272
+ });
273
+ const usePrimaryDismissNextStyles = (0, _reactcomponents.makeStyles)({
274
+ sharedStyles: {
275
+ border: 'none',
276
+ backgroundColor: _tokens.tokens.colorNeutralBackground3
277
+ },
278
+ sharedInteractiveStyles: {
279
+ ':hover': {
280
+ backgroundColor: _tokens.tokens.colorNeutralBackground3Hover
281
+ },
282
+ ':active': {
283
+ backgroundColor: _tokens.tokens.colorNeutralBackground3Pressed
284
+ }
285
+ }
286
+ });
287
+ const useRootNextStyles = (0, _reactcomponents.makeStyles)({
288
+ root: {
289
+ outline: `${_tokens.tokens.strokeWidthThin} solid ${_tokens.tokens.colorTransparentStroke}`,
290
+ borderRadius: _tokens.tokens.borderRadiusXLarge
291
+ }
292
+ });
293
+ const useFocusStyles = (0, _reactcomponents.makeStyles)({
294
+ primaryActionButton: (0, _reactcomponents.createCustomFocusIndicatorStyle)({
295
+ borderTopRightRadius: _tokens.tokens.borderRadiusNone,
296
+ borderBottomRightRadius: _tokens.tokens.borderRadiusNone
297
+ }),
298
+ dismissButton: (0, _reactcomponents.createCustomFocusIndicatorStyle)({
299
+ borderTopLeftRadius: _tokens.tokens.borderRadiusNone,
300
+ borderBottomLeftRadius: _tokens.tokens.borderRadiusNone
301
+ })
302
+ });
303
+ const useAttachmentStyles_unstable = (state)=>{
304
+ 'use no memo';
305
+ const rootBaseClassName = useRootBaseClassName();
306
+ const primaryActionBaseClassName = usePrimaryActionBaseClassName();
307
+ const dismissButtonBaseClassName = useDismissButtonBaseClassName();
308
+ const dismissButtonCurrentStyles = useDismissButtonCurrentStyles();
309
+ const mediaBaseClassName = useMediaBaseClassName();
310
+ const contentBaseClassName = useContentBaseClassName();
311
+ const dismissIconBaseClassName = useDismissIconBaseClassName();
312
+ const dismissIconNextStyles = useDismissIconNextStyles();
313
+ const progressBarStyles = (0, _useProgressBarStylesstyles.useProgressBarStyles)();
314
+ const primaryActionStyles = usePrimaryActionStyles();
315
+ const imageOnlyStyles = useImageOnlyStyles();
316
+ const smallStyles = useSmallStyles();
317
+ const primaryActionNextStyles = usePrimaryActionNextStyles();
318
+ const dismissButtonNextStyles = useDismissButtonNextStyles();
319
+ const primaryDismissNextStyles = usePrimaryDismissNextStyles();
320
+ const rootNextStyles = useRootNextStyles();
321
+ const focusStyles = useFocusStyles();
322
+ const { imageOnly, primaryAction, size, mode, designVersion, dismissOnly } = state;
323
+ state.root.className = (0, _reactcomponents.mergeClasses)(attachmentClassNames.root, rootBaseClassName, designVersion === 'next' && rootNextStyles.root, state.root.className);
324
+ state.primaryAction.className = (0, _reactcomponents.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);
325
+ state.dismissButton.className = (0, _reactcomponents.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);
326
+ if (state.media) {
327
+ state.media.className = (0, _reactcomponents.mergeClasses)(attachmentClassNames.media, mediaBaseClassName, size === 'small' && smallStyles.media, state.media.className);
328
+ }
329
+ state.content.className = (0, _reactcomponents.mergeClasses)(attachmentClassNames.content, contentBaseClassName, size === 'small' && smallStyles.content, imageOnly && imageOnlyStyles.content, state.content.className);
330
+ state.dismissIcon.className = (0, _reactcomponents.mergeClasses)(attachmentClassNames.dismissIcon, dismissIconBaseClassName, size === 'small' && smallStyles.dismissIcon, designVersion === 'next' && dismissOnly && dismissIconNextStyles.dismissOnly, state.dismissIcon.className);
331
+ if (state.progress) {
332
+ state.progress.className = (0, _reactcomponents.mergeClasses)(attachmentClassNames.progress, progressBarStyles.progress, state.progress.className);
333
+ const bar = _reactcomponents.slot.optional(state.progress.bar, {
334
+ elementType: 'div',
335
+ renderByDefault: true
336
+ });
337
+ if (bar) {
338
+ if (state.progress.value === undefined) {
339
+ bar.className = (0, _reactcomponents.mergeClasses)(progressBarStyles.indeterminateProgressBar, bar.className);
340
+ } else {
341
+ bar.className = (0, _reactcomponents.mergeClasses)(progressBarStyles.regularProgressBar, bar.className);
342
+ }
343
+ state.progress.bar = bar;
344
+ }
345
+ }
346
+ return state;
347
+ };
@@ -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":["attachmentClassNames","useAttachmentStyles_unstable","useOverflowStyles","root","primaryAction","dismissButton","media","content","dismissIcon","progress","ATTACHMENT_MAXWIDTH","SMALL_ATTACHMENT_SIZE","ATTACHMENT_SIZE","useRootBaseClassName","makeResetStyles","display","flexWrap","verticalAlign","boxSizing","width","alignSelf","position","buttonBaseStyles","alignItems","backgroundColor","tokens","colorSubtleBackground","border","strokeWidthThin","colorNeutralStroke1","borderRadius","borderRadiusMedium","columnGap","spacingHorizontalSNudge","color","colorNeutralForeground1","cursor","justifyContent","createCustomFocusIndicatorStyle","outline","strokeWidthThick","colorStrokeFocus2","outlineOffset","zIndex","usePrimaryActionBaseClassName","borderTopRightRadius","borderRadiusNone","borderBottomRightRadius","borderRightStyle","maxWidth","spacingHorizontalXXS","spacingHorizontalXS","padding","spacingVerticalXS","spacingHorizontalS","usePrimaryActionStyles","makeStyles","button","colorSubtleBackgroundHover","colorNeutralForeground2Hover","colorSubtleBackgroundPressed","colorNeutralForeground2Pressed","useDismissButtonBaseClassName","minWidth","borderLeftColor","borderTopLeftRadius","borderBottomLeftRadius","colorNeutralForeground2BrandHover","colorNeutralForeground2BrandPressed","useDismissButtonCurrentStyles","colorBrandForegroundLinkHover","useMediaBaseClassName","fontSize","height","lineHeight","useContentBaseClassName","overflowX","textOverflow","whiteSpace","typographyStyles","body1","useDismissIconBaseClassName","borderRadiusCircular","colorTransparentStroke","spacingVerticalXXS","useDismissIconNextStyles","dismissOnly","useImageOnlyStyles","overflow","useSmallStyles","caption1","usePrimaryActionNextStyles","borderRadiusXLarge","canvas","spacingVerticalNone","minHeight","sidecar","useDismissButtonNextStyles","colorNeutralForeground2","borderLeftWidth","borderLeftStyle","withPrimary","spacingHorizontalMNudge","colorNeutralBackground3","usePrimaryDismissNextStyles","sharedStyles","sharedInteractiveStyles","colorNeutralBackground3Hover","colorNeutralBackground3Pressed","useRootNextStyles","useFocusStyles","primaryActionButton","state","rootBaseClassName","primaryActionBaseClassName","dismissButtonBaseClassName","dismissButtonCurrentStyles","mediaBaseClassName","contentBaseClassName","dismissIconBaseClassName","dismissIconNextStyles","progressBarStyles","useProgressBarStyles","primaryActionStyles","imageOnlyStyles","smallStyles","primaryActionNextStyles","dismissButtonNextStyles","primaryDismissNextStyles","rootNextStyles","focusStyles","imageOnly","size","mode","designVersion","className","mergeClasses","as","isLoading","bar","slot","optional","elementType","renderByDefault","value","undefined","indeterminateProgressBar","regularProgressBar"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAaaA,oBAAAA;eAAAA;;IAoTAC,4BAAAA;eAAAA;;IA1IAC,iBAAAA;eAAAA;;;iCAhLN;wBACgB;4CACc;AAI9B,MAAMF,uBAAwD;IACnEG,MAAM;IACNC,eAAe;IACfC,eAAe;IACfC,OAAO;IACPC,SAAS;IACTC,aAAa;IACbC,UAAU;AACZ;AAEA,MAAMC,sBAAsB;AAC5B,MAAMC,wBAAwB;AAC9B,MAAMC,kBAAkB;AAExB,MAAMC,uBAAuBC,IAAAA,gCAAAA,EAAgB;IAC3CC,SAAS;IACTC,UAAU;IACVC,eAAe;IACfC,WAAW;IACXC,OAAO;IACPC,WAAW;IACXC,UAAU;AACZ;AAEA,MAAMC,mBAAsC;IAC1CC,YAAY;IACZC,iBAAiBC,cAAAA,CAAOC,qBAAqB;IAC7CC,QAAQ,CAAC,EAAEF,cAAAA,CAAOG,eAAe,CAAC,OAAO,EAAEH,cAAAA,CAAOI,mBAAmB,CAAC,CAAC;IACvEC,cAAcL,cAAAA,CAAOM,kBAAkB;IACvCb,WAAW;IACXc,WAAWP,cAAAA,CAAOQ,uBAAuB;IACzCC,OAAOT,cAAAA,CAAOU,uBAAuB;IACrCC,QAAQ;IACRrB,SAAS;IACTC,UAAU;IACVqB,gBAAgB;IAChB,GAAGC,IAAAA,gDAAAA,EAAgC;QACjCC,SAAS,CAAC,EAAEd,cAAAA,CAAOe,gBAAgB,CAAC,OAAO,EAAEf,cAAAA,CAAOgB,iBAAiB,CAAC,CAAC;QACvEC,eAAe,CAAC,KAAK,EAAEjB,cAAAA,CAAOe,gBAAgB,CAAC,MAAM,CAAC;QACtDG,QAAQ;IACV,EAAE;IACF1B,eAAe;AACjB;AAEA,MAAM2B,gCAAgC9B,IAAAA,gCAAAA,EAAgB;IACpD,GAAGQ,gBAAgB;IACnBuB,sBAAsBpB,cAAAA,CAAOqB,gBAAgB;IAC7CC,yBAAyBtB,cAAAA,CAAOqB,gBAAgB;IAChDE,kBAAkB;IAClBC,UAAU,CAAC,KAAK,EAAEvC,oBAAoB,GAAG,EAAEE,gBAAgB,GAAG,EAAEa,cAAAA,CAAOG,eAAe,CAAC,OAAO,EAAEH,cAAAA,CAAOyB,oBAAoB,CAAC,GAAG,EAAEzB,cAAAA,CAAO0B,mBAAmB,CAAC,CAAC,CAAC;IAC9JC,SAAS,CAAC,EAAE3B,cAAAA,CAAO4B,iBAAiB,CAAC,CAAC,EAAE5B,cAAAA,CAAO6B,kBAAkB,CAAC,CAAC,EAAE7B,cAAAA,CAAO4B,iBAAiB,CAAC,CAAC,EAAE5B,cAAAA,CAAO6B,kBAAkB,CAAC,CAAC;AAC9H;AAEA,MAAMC,yBAAyBC,IAAAA,2BAAAA,EAAW;IACxCC,QAAQ;QACN,UAAU;YACRrB,QAAQ;YACRZ,iBAAiBC,cAAAA,CAAOiC,0BAA0B;YAClDxB,OAAOT,cAAAA,CAAOkC,4BAA4B;QAC5C;QACA,WAAW;YACTnC,iBAAiBC,cAAAA,CAAOmC,4BAA4B;YACpD1B,OAAOT,cAAAA,CAAOoC,8BAA8B;QAC9C;QACA,kCAAkC;YAChC,UAAU;gBACRrC,iBAAiB;YACnB;YACA,WAAW;gBACTA,iBAAiB;YACnB;QACF;IACF;AACF;AAEA,MAAMsC,gCAAgChD,IAAAA,gCAAAA,EAAgB;IACpD,GAAGQ,gBAAgB;IAEnB8B,SAAS,CAAC,EAAE3B,cAAAA,CAAO4B,iBAAiB,CAAC,CAAC,EAAE5B,cAAAA,CAAO0B,mBAAmB,CAAC,CAAC,EAAE1B,cAAAA,CAAO4B,iBAAiB,CAAC,CAAC,EAAE5B,cAAAA,CAAO0B,mBAAmB,CAAC,CAAC;IAC9HF,UAAU,CAAC,KAAK,EAAErC,gBAAgB,GAAG,EAAEa,cAAAA,CAAOG,eAAe,CAAC,OAAO,EAAEH,cAAAA,CAAOyB,oBAAoB,CAAC,IAAI,EAAEzB,cAAAA,CAAO0B,mBAAmB,CAAC,CAAC;IACrIY,UAAU,CAAC,KAAK,EAAEnD,gBAAgB,GAAG,EAAEa,cAAAA,CAAOG,eAAe,CAAC,OAAO,EAAEH,cAAAA,CAAOyB,oBAAoB,CAAC,IAAI,EAAEzB,cAAAA,CAAO0B,mBAAmB,CAAC,CAAC;IAErI,WAAW;IACXa,iBAAiBvC,cAAAA,CAAOI,mBAAmB;IAC3CoC,qBAAqBxC,cAAAA,CAAOqB,gBAAgB;IAC5CoB,wBAAwBzC,cAAAA,CAAOqB,gBAAgB;IAE/CD,sBAAsBpB,cAAAA,CAAOM,kBAAkB;IAC/CgB,yBAAyBtB,cAAAA,CAAOM,kBAAkB;IAElD,UAAU;QACRK,QAAQ;QACRZ,iBAAiBC,cAAAA,CAAOiC,0BAA0B;QAClDxB,OAAOT,cAAAA,CAAO0C,iCAAiC;IACjD;IACA,WAAW;QACT3C,iBAAiBC,cAAAA,CAAOmC,4BAA4B;QACpD1B,OAAOT,cAAAA,CAAO2C,mCAAmC;IACnD;IACA,kCAAkC;QAChC,UAAU;YACR5C,iBAAiB;QACnB;QACA,WAAW;YACTA,iBAAiB;QACnB;IACF;AACF;AAEA,MAAM6C,gCAAgCb,IAAAA,2BAAAA,EAAW;IAC/CrD,MAAM;QACJ,UAAU;YACR,CAAC,CAAC,GAAG,EAAEH,qBAAqBQ,WAAW,CAAC,CAAC,CAAC,EAAE;gBAC1C0B,OAAOT,cAAAA,CAAO6C,6BAA6B;YAC7C;QACF;IACF;AACF;AAEA,MAAMC,wBAAwBzD,IAAAA,gCAAAA,EAAgB;IAC5CS,YAAY;IACZR,SAAS;IACTyD,UAAU5D;IACV6D,QAAQ7D;IACR8D,YAAY9D;IACZO,OAAOP;AACT;AAEA,MAAM+D,0BAA0B7D,IAAAA,gCAAAA,EAAgB;IAC9C8D,WAAW;IACXC,cAAc;IACdC,YAAY;IACZ,GAAGC,iCAAAA,CAAiBC,KAAK;AAC3B;AAEA,MAAMC,8BAA8BnE,IAAAA,gCAAAA,EAAgB;IAClDS,YAAY;IACZO,cAAcL,cAAAA,CAAOyD,oBAAoB;IACzCvD,QAAQ,CAAC,EAAEF,cAAAA,CAAOG,eAAe,CAAC,OAAO,EAAEH,cAAAA,CAAO0D,sBAAsB,CAAC,CAAC;IAC1EjE,WAAW;IACXgB,OAAOT,cAAAA,CAAOU,uBAAuB;IACrCpB,SAAS;IACTyD,UAAU5D;IACV6D,QAAQ,CAAC,KAAK,EAAE7D,gBAAgB,GAAG,EAAEa,cAAAA,CAAOG,eAAe,CAAC,OAAO,EAAEH,cAAAA,CAAO2D,kBAAkB,CAAC,CAAC,CAAC;IACjG/C,gBAAgB;IAChBY,UAAU,CAAC,KAAK,EAAErC,gBAAgB,GAAG,EAAEa,cAAAA,CAAOG,eAAe,CAAC,OAAO,EAAEH,cAAAA,CAAOyB,oBAAoB,CAAC,CAAC,CAAC;IACrGa,UAAU,CAAC,KAAK,EAAEnD,gBAAgB,GAAG,EAAEa,cAAAA,CAAOG,eAAe,CAAC,OAAO,EAAEH,cAAAA,CAAOyB,oBAAoB,CAAC,CAAC,CAAC;IACrGE,SAAS,CAAC,KAAK,EAAE3B,cAAAA,CAAO2D,kBAAkB,CAAC,WAAW,EAAE3D,cAAAA,CAAOyB,oBAAoB,CAAC,KAAK,CAAC;AAC5F;AAEA,MAAMmC,2BAA2B7B,IAAAA,2BAAAA,EAAW;IAC1C8B,aAAa;QACX,UAAU;YACRpD,OAAOT,cAAAA,CAAO0C,iCAAiC;QACjD;QACA,WAAW;YACTjC,OAAOT,cAAAA,CAAO2C,mCAAmC;QACnD;IACF;AACF;AAEA,MAAMmB,qBAAqB/B,IAAAA,2BAAAA,EAAW;IACpCpD,eAAe;QACbgD,SAAS;IACX;IACA7C,SAAS;QACPmE,YAAY;IACd;AACF;AAEO,MAAMxE,oBAAoBsD,IAAAA,2BAAAA,EAAW;IAC1CgC,UAAU;QACRvC,UAAU;QACV9B,OAAO;IACT;AACF;AAEA,MAAMsE,iBAAiBjC,IAAAA,2BAAAA,EAAW;IAChCpD,eAAe;QACb6C,UAAU,CAAC,KAAK,EAAEvC,oBAAoB,GAAG,EAAEC,sBAAsB,GAAG,EAAEc,cAAAA,CAAOG,eAAe,CAAC,OAAO,EAAEH,cAAAA,CAAOyB,oBAAoB,CAAC,GAAG,EAAEzB,cAAAA,CAAO0B,mBAAmB,CAAC,CAAC,CAAC;QACpKC,SAAS,CAAC,EAAE3B,cAAAA,CAAO2D,kBAAkB,CAAC,CAAC,EAAE3D,cAAAA,CAAOQ,uBAAuB,CAAC,CAAC,EAAER,cAAAA,CAAO2D,kBAAkB,CAAC,CAAC,EAAE3D,cAAAA,CAAOQ,uBAAuB,CAAC,CAAC;IAC1I;IACA3B,OAAO;QACLkE,UAAU7D;QACV8D,QAAQ9D;QACR+D,YAAY/D;QACZQ,OAAOR;IACT;IACAJ,SAAS;QACP,GAAGwE,iCAAAA,CAAiBW,QAAQ;IAC9B;IACArF,eAAe;QACb+C,SAAS,CAAC,EAAE3B,cAAAA,CAAO2D,kBAAkB,CAAC,CAAC,EAAE3D,cAAAA,CAAOyB,oBAAoB,CAAC,CAAC;QACtED,UAAU,CAAC,KAAK,EAAEtC,sBAAsB,GAAG,EAAEc,cAAAA,CAAOG,eAAe,CAAC,OAAO,EAAEH,cAAAA,CAAOyB,oBAAoB,CAAC,IAAI,EAAEzB,cAAAA,CAAO0B,mBAAmB,CAAC,CAAC;QAC3IY,UAAU,CAAC,KAAK,EAAEpD,sBAAsB,GAAG,EAAEc,cAAAA,CAAOG,eAAe,CAAC,OAAO,EAAEH,cAAAA,CAAOyB,oBAAoB,CAAC,IAAI,EAAEzB,cAAAA,CAAO0B,mBAAmB,CAAC,CAAC;IAC7I;IACA3C,aAAa;QACXgE,UAAU7D;QACV8D,QAAQ,CAAC,KAAK,EAAE9D,sBAAsB,GAAG,EAAEc,cAAAA,CAAOG,eAAe,CAAC,OAAO,EAAEH,cAAAA,CAAO2D,kBAAkB,CAAC,CAAC,CAAC;QACvGnC,UAAU,CAAC,KAAK,EAAEtC,sBAAsB,GAAG,EAAEc,cAAAA,CAAOG,eAAe,CAAC,OAAO,EAAEH,cAAAA,CAAOyB,oBAAoB,CAAC,CAAC,CAAC;QAC3Ga,UAAU,CAAC,KAAK,EAAEpD,sBAAsB,GAAG,EAAEc,cAAAA,CAAOG,eAAe,CAAC,OAAO,EAAEH,cAAAA,CAAOyB,oBAAoB,CAAC,CAAC,CAAC;IAC7G;AACF;AAEA,MAAMyC,6BAA6BnC,IAAAA,2BAAAA,EAAW;IAC5CrD,MAAM;QACJ8D,qBAAqBxC,cAAAA,CAAOmE,kBAAkB;QAC9C1B,wBAAwBzC,cAAAA,CAAOmE,kBAAkB;IACnD;IACAC,QAAQ;QACNzC,SAAS,CAAC,EAAE3B,cAAAA,CAAOqE,mBAAmB,CAAC,CAAC,EAAErE,cAAAA,CAAO6B,kBAAkB,CAAC,CAAC;QACrEyC,WAAW;IACb;IAEAC,SAAS;QACP5C,SAAS,CAAC,EAAE3B,cAAAA,CAAOqE,mBAAmB,CAAC,CAAC,EAAErE,cAAAA,CAAO6B,kBAAkB,CAAC,CAAC;QACrEyC,WAAW;IACb;AACF;AAEA,MAAME,6BAA6BzC,IAAAA,2BAAAA,EAAW;IAC5CrD,MAAM;QACJ0C,sBAAsBpB,cAAAA,CAAOmE,kBAAkB;QAC/C7C,yBAAyBtB,cAAAA,CAAOmE,kBAAkB;QAClD,UAAU;YACR1D,OAAOT,cAAAA,CAAOyE,uBAAuB;QACvC;QACA,WAAW;YACThE,OAAOT,cAAAA,CAAOoC,8BAA8B;QAC9C;QAEAG,iBAAiBvC,cAAAA,CAAOI,mBAAmB;QAC3CsE,iBAAiB1E,cAAAA,CAAOG,eAAe;QACvCwE,iBAAiB;IACnB;IACAC,aAAa;QACX,UAAU;YACR,CAAC,CAAC,GAAG,EAAErG,qBAAqBQ,WAAW,CAAC,CAAC,CAAC,EAAE;gBAC1C0B,OAAOT,cAAAA,CAAOyE,uBAAuB;YACvC;QACF;QACA,WAAW;YACT,CAAC,CAAC,GAAG,EAAElG,qBAAqBQ,WAAW,CAAC,CAAC,CAAC,EAAE;gBAC1C0B,OAAOT,cAAAA,CAAOoC,8BAA8B;YAC9C;QACF;IACF;IACAgC,QAAQ;QACNzC,SAAS,CAAC,EAAE3B,cAAAA,CAAOqE,mBAAmB,CAAC,CAAC,EAAErE,cAAAA,CAAO6B,kBAAkB,CAAC,CAAC;QACrEyC,WAAW;QACX5E,OAAO;IACT;IACA6E,SAAS;QACP5C,SAAS,CAAC,EAAE3B,cAAAA,CAAOqE,mBAAmB,CAAC,CAAC,EAAErE,cAAAA,CAAO6E,uBAAuB,CAAC,CAAC;QAC1EP,WAAW;QACX5E,OAAO;IACT;IACAmE,aAAa;QACXxD,cAAcL,cAAAA,CAAOmE,kBAAkB;QACvCzE,OAAO;QACP6C,iBAAiBvC,cAAAA,CAAO0D,sBAAsB;QAC9C3D,iBAAiBC,cAAAA,CAAO8E,uBAAuB;QAC/C,UAAU;YACR/E,iBAAiBC,cAAAA,CAAO8E,uBAAuB;QACjD;QACA,WAAW;YACT/E,iBAAiBC,cAAAA,CAAO8E,uBAAuB;QACjD;IACF;AACF;AAEA,MAAMC,8BAA8BhD,IAAAA,2BAAAA,EAAW;IAC7CiD,cAAc;QACZ9E,QAAQ;QACRH,iBAAiBC,cAAAA,CAAO8E,uBAAuB;IACjD;IACAG,yBAAyB;QACvB,UAAU;YACRlF,iBAAiBC,cAAAA,CAAOkF,4BAA4B;QACtD;QACA,WAAW;YACTnF,iBAAiBC,cAAAA,CAAOmF,8BAA8B;QACxD;IACF;AACF;AAEA,MAAMC,oBAAoBrD,IAAAA,2BAAAA,EAAW;IACnCrD,MAAM;QACJoC,SAAS,CAAC,EAAEd,cAAAA,CAAOG,eAAe,CAAC,OAAO,EAAEH,cAAAA,CAAO0D,sBAAsB,CAAC,CAAC;QAC3ErD,cAAcL,cAAAA,CAAOmE,kBAAkB;IACzC;AACF;AAEA,MAAMkB,iBAAiBtD,IAAAA,2BAAAA,EAAW;IAChCuD,qBAAqBzE,IAAAA,gDAAAA,EAAgC;QACnDO,sBAAsBpB,cAAAA,CAAOqB,gBAAgB;QAC7CC,yBAAyBtB,cAAAA,CAAOqB,gBAAgB;IAClD;IAEAzC,eAAeiC,IAAAA,gDAAAA,EAAgC;QAC7C2B,qBAAqBxC,cAAAA,CAAOqB,gBAAgB;QAC5CoB,wBAAwBzC,cAAAA,CAAOqB,gBAAgB;IACjD;AACF;AAKO,MAAM7C,+BAA+B,CAAC+G;IAC3C;IAEA,MAAMC,oBAAoBpG;IAC1B,MAAMqG,6BAA6BtE;IACnC,MAAMuE,6BAA6BrD;IACnC,MAAMsD,6BAA6B/C;IACnC,MAAMgD,qBAAqB9C;IAC3B,MAAM+C,uBAAuB3C;IAC7B,MAAM4C,2BAA2BtC;IACjC,MAAMuC,wBAAwBnC;IAC9B,MAAMoC,oBAAoBC,IAAAA,gDAAAA;IAC1B,MAAMC,sBAAsBpE;IAC5B,MAAMqE,kBAAkBrC;IACxB,MAAMsC,cAAcpC;IACpB,MAAMqC,0BAA0BnC;IAChC,MAAMoC,0BAA0B9B;IAChC,MAAM+B,2BAA2BxB;IACjC,MAAMyB,iBAAiBpB;IACvB,MAAMqB,cAAcpB;IACpB,MAAM,EAAEqB,SAAS,EAAE/H,aAAa,EAAEgI,IAAI,EAAEC,IAAI,EAAEC,aAAa,EAAEhD,WAAW,EAAE,GAAG0B;IAE7EA,MAAM7G,IAAI,CAACoI,SAAS,GAAGC,IAAAA,6BAAAA,EACrBxI,qBAAqBG,IAAI,EACzB8G,mBACAqB,kBAAkB,UAAUL,eAAe9H,IAAI,EAC/C6G,MAAM7G,IAAI,CAACoI,SAAS;IAEtBvB,MAAM5G,aAAa,CAACmI,SAAS,GAAGC,IAAAA,6BAAAA,EAC9BxI,qBAAqBI,aAAa,EAClC8G,4BACAkB,SAAS,WAAWP,YAAYzH,aAAa,EAC7CA,cAAcqI,EAAE,KAAK,UAAU,CAACzB,MAAM0B,SAAS,IAAIf,oBAAoBlE,MAAM,EAC7E0E,aAAaP,gBAAgBxH,aAAa,EAC1CkI,kBAAkB,UAAUN,yBAAyBvB,YAAY,EACjE6B,kBAAkB,UAChBlI,cAAcqI,EAAE,KAAK,UACrB,CAACzB,MAAM0B,SAAS,IAChBV,yBAAyBtB,uBAAuB,EAClD4B,kBAAkB,UAAUR,wBAAwB3H,IAAI,EACxDmI,kBAAkB,UAAUR,uBAAuB,CAACO,KAAK,EACzDH,YAAYnB,mBAAmB,EAC/BC,MAAM5G,aAAa,CAACmI,SAAS;IAE/BvB,MAAM3G,aAAa,CAACkI,SAAS,GAAGC,IAAAA,6BAAAA,EAC9BxI,qBAAqBK,aAAa,EAClC8G,4BACAmB,kBAAkB,aAAalB,2BAA2BjH,IAAI,EAC9DiI,SAAS,WAAWP,YAAYxH,aAAa,EAC7CiI,kBAAkB,UAAUN,yBAAyBvB,YAAY,EACjE6B,kBAAkB,UAAUN,yBAAyBtB,uBAAuB,EAC5E4B,kBAAkB,UAAUP,wBAAwB5H,IAAI,EACxDmI,kBAAkB,UAAUP,uBAAuB,CAACM,KAAK,EACzDC,kBAAkB,UAAUhD,eAAeyC,wBAAwBzC,WAAW,EAC9EgD,kBAAkB,UAAU,CAAChD,eAAeyC,wBAAwB1B,WAAW,EAC/E6B,YAAY7H,aAAa,EACzB2G,MAAM3G,aAAa,CAACkI,SAAS;IAE/B,IAAIvB,MAAM1G,KAAK,EAAE;QACf0G,MAAM1G,KAAK,CAACiI,SAAS,GAAGC,IAAAA,6BAAAA,EACtBxI,qBAAqBM,KAAK,EAC1B+G,oBACAe,SAAS,WAAWP,YAAYvH,KAAK,EACrC0G,MAAM1G,KAAK,CAACiI,SAAS;IAEzB;IACAvB,MAAMzG,OAAO,CAACgI,SAAS,GAAGC,IAAAA,6BAAAA,EACxBxI,qBAAqBO,OAAO,EAC5B+G,sBACAc,SAAS,WAAWP,YAAYtH,OAAO,EACvC4H,aAAaP,gBAAgBrH,OAAO,EACpCyG,MAAMzG,OAAO,CAACgI,SAAS;IAEzBvB,MAAMxG,WAAW,CAAC+H,SAAS,GAAGC,IAAAA,6BAAAA,EAC5BxI,qBAAqBQ,WAAW,EAChC+G,0BACAa,SAAS,WAAWP,YAAYrH,WAAW,EAC3C8H,kBAAkB,UAAUhD,eAAekC,sBAAsBlC,WAAW,EAC5E0B,MAAMxG,WAAW,CAAC+H,SAAS;IAG7B,IAAIvB,MAAMvG,QAAQ,EAAE;QAClBuG,MAAMvG,QAAQ,CAAC8H,SAAS,GAAGC,IAAAA,6BAAAA,EACzBxI,qBAAqBS,QAAQ,EAC7BgH,kBAAkBhH,QAAQ,EAC1BuG,MAAMvG,QAAQ,CAAC8H,SAAS;QAG1B,MAAMI,MAAMC,qBAAAA,CAAKC,QAAQ,CAAC7B,MAAMvG,QAAQ,CAACkI,GAAG,EAAE;YAAEG,aAAa;YAAOC,iBAAiB;QAAK;QAC1F,IAAIJ,KAAK;YACP,IAAI3B,MAAMvG,QAAQ,CAACuI,KAAK,KAAKC,WAAW;gBACtCN,IAAIJ,SAAS,GAAGC,IAAAA,6BAAAA,EAAaf,kBAAkByB,wBAAwB,EAAEP,IAAIJ,SAAS;YACxF,OAAO;gBACLI,IAAIJ,SAAS,GAAGC,IAAAA,6BAAAA,EAAaf,kBAAkB0B,kBAAkB,EAAER,IAAIJ,SAAS;YAClF;YACAvB,MAAMvG,QAAQ,CAACkI,GAAG,GAAGA;QACvB;IACF;IAEA,OAAO3B;AACT"}
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ attachmentListClassNames: function() {
13
+ return attachmentListClassNames;
14
+ },
15
+ useAttachmentListStyles_unstable: function() {
16
+ return useAttachmentListStyles_unstable;
17
+ }
18
+ });
19
+ const _reactcomponents = require("@fluentui/react-components");
20
+ const _tokens = require("@fluentui-copilot/tokens");
21
+ const attachmentListClassNames = {
22
+ root: 'fai-AttachmentList',
23
+ menuList: 'fai-AttachmentList__menuList',
24
+ menuPopover: 'fai-AttachmentList__menuPopover',
25
+ overflowMenuButton: 'fai-AttachmentList__overflowMenuButton'
26
+ };
27
+ const useRootBaseClassName = (0, _reactcomponents.makeResetStyles)({
28
+ columnGap: _tokens.tokens.spacingHorizontalSNudge,
29
+ display: 'flex',
30
+ flexDirection: 'row',
31
+ flexShrink: 0,
32
+ flexWrap: 'wrap',
33
+ rowGap: _tokens.tokens.spacingVerticalXS
34
+ });
35
+ const useOverflowMenuButtonBaseClassName = (0, _reactcomponents.makeResetStyles)({
36
+ display: 'inline-flex'
37
+ });
38
+ const useOverflowMenuPopoverNextStyles = (0, _reactcomponents.makeStyles)({
39
+ borderRadius: {
40
+ borderRadius: _tokens.tokens.borderRadius4XL
41
+ }
42
+ });
43
+ const useAttachmentListStyles_unstable = (state)=>{
44
+ 'use no memo';
45
+ const rootBaseClassName = useRootBaseClassName();
46
+ const overflowMenuButtonClassName = useOverflowMenuButtonBaseClassName();
47
+ const overflowMenuPopoverNextStyles = useOverflowMenuPopoverNextStyles();
48
+ const { designVersion } = state;
49
+ state.root.className = (0, _reactcomponents.mergeClasses)(attachmentListClassNames.root, rootBaseClassName, state.root.className);
50
+ if (state.menuList) {
51
+ state.menuList.className = (0, _reactcomponents.mergeClasses)(attachmentListClassNames.menuList, state.menuList.className);
52
+ }
53
+ if (state.menuPopover) {
54
+ state.menuPopover.className = (0, _reactcomponents.mergeClasses)(attachmentListClassNames.menuPopover, designVersion === 'next' && overflowMenuPopoverNextStyles.borderRadius, state.menuPopover.className);
55
+ }
56
+ if (state.overflowMenuButton) {
57
+ state.overflowMenuButton.className = (0, _reactcomponents.mergeClasses)(attachmentListClassNames.overflowMenuButton, overflowMenuButtonClassName, state.overflowMenuButton.className);
58
+ }
59
+ return state;
60
+ };
@@ -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":["attachmentListClassNames","useAttachmentListStyles_unstable","root","menuList","menuPopover","overflowMenuButton","useRootBaseClassName","makeResetStyles","columnGap","tokens","spacingHorizontalSNudge","display","flexDirection","flexShrink","flexWrap","rowGap","spacingVerticalXS","useOverflowMenuButtonBaseClassName","useOverflowMenuPopoverNextStyles","makeStyles","borderRadius","borderRadius4XL","state","rootBaseClassName","overflowMenuButtonClassName","overflowMenuPopoverNextStyles","designVersion","className","mergeClasses"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAKaA,wBAAAA;eAAAA;;IA6BAC,gCAAAA;eAAAA;;;iCAlC6C;wBACnC;AAIhB,MAAMD,2BAAgE;IAC3EE,MAAM;IACNC,UAAU;IACVC,aAAa;IACbC,oBAAoB;AACtB;AAEA,MAAMC,uBAAuBC,IAAAA,gCAAAA,EAAgB;IAC3CC,WAAWC,cAAAA,CAAOC,uBAAuB;IACzCC,SAAS;IACTC,eAAe;IACfC,YAAY;IACZC,UAAU;IACVC,QAAQN,cAAAA,CAAOO,iBAAiB;AAClC;AAEA,MAAMC,qCAAqCV,IAAAA,gCAAAA,EAAgB;IACzDI,SAAS;AACX;AAEA,MAAMO,mCAAmCC,IAAAA,2BAAAA,EAAW;IAClDC,cAAc;QACZA,cAAcX,cAAAA,CAAOY,eAAe;IACtC;AACF;AAKO,MAAMpB,mCAAmC,CAACqB;IAC/C;IAEA,MAAMC,oBAAoBjB;IAC1B,MAAMkB,8BAA8BP;IACpC,MAAMQ,gCAAgCP;IACtC,MAAM,EAAEQ,aAAa,EAAE,GAAGJ;IAE1BA,MAAMpB,IAAI,CAACyB,SAAS,GAAGC,IAAAA,6BAAAA,EAAa5B,yBAAyBE,IAAI,EAAEqB,mBAAmBD,MAAMpB,IAAI,CAACyB,SAAS;IAE1G,IAAIL,MAAMnB,QAAQ,EAAE;QAClBmB,MAAMnB,QAAQ,CAACwB,SAAS,GAAGC,IAAAA,6BAAAA,EAAa5B,yBAAyBG,QAAQ,EAAEmB,MAAMnB,QAAQ,CAACwB,SAAS;IACrG;IACA,IAAIL,MAAMlB,WAAW,EAAE;QACrBkB,MAAMlB,WAAW,CAACuB,SAAS,GAAGC,IAAAA,6BAAAA,EAC5B5B,yBAAyBI,WAAW,EACpCsB,kBAAkB,UAAUD,8BAA8BL,YAAY,EACtEE,MAAMlB,WAAW,CAACuB,SAAS;IAE/B;IAEA,IAAIL,MAAMjB,kBAAkB,EAAE;QAC5BiB,MAAMjB,kBAAkB,CAACsB,SAAS,GAAGC,IAAAA,6BAAAA,EACnC5B,yBAAyBK,kBAAkB,EAC3CmB,6BACAF,MAAMjB,kBAAkB,CAACsB,SAAS;IAEtC;IAEA,OAAOL;AACT"}
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ attachmentOverflowMenuButtonClassNames: function() {
13
+ return attachmentOverflowMenuButtonClassNames;
14
+ },
15
+ useAttachmentOverflowMenuButtonStyles_unstable: function() {
16
+ return useAttachmentOverflowMenuButtonStyles_unstable;
17
+ }
18
+ });
19
+ const _reactcomponents = require("@fluentui/react-components");
20
+ const _tokens = require("@fluentui-copilot/tokens");
21
+ const _useProgressBarStylesstyles = require("../utils/useProgressBarStyles.styles");
22
+ const attachmentOverflowMenuButtonClassNames = {
23
+ root: 'fai-AttachmentOverflowMenuButton',
24
+ progress: 'fai-AttachmentOverflowMenuButton__progress'
25
+ };
26
+ const useRootBaseClassName = (0, _reactcomponents.makeResetStyles)({
27
+ color: _tokens.tokens.colorNeutralForeground1,
28
+ alignItems: 'center',
29
+ backgroundColor: _tokens.tokens.colorSubtleBackground,
30
+ border: `${_tokens.tokens.strokeWidthThin} solid ${_tokens.tokens.colorNeutralStroke1}`,
31
+ borderRadius: _tokens.tokens.borderRadiusMedium,
32
+ boxSizing: 'border-box',
33
+ columnGap: _tokens.tokens.spacingHorizontalSNudge,
34
+ cursor: 'pointer',
35
+ display: 'inline-flex',
36
+ flexWrap: 'nowrap',
37
+ fontFamily: _tokens.typographyStyles.body1.fontFamily,
38
+ fontSize: _tokens.typographyStyles.body1.fontSize,
39
+ fontWeight: _tokens.typographyStyles.body1.fontWeight,
40
+ justifyContent: 'center',
41
+ padding: `${_tokens.tokens.spacingVerticalXS} ${_tokens.tokens.spacingHorizontalS}`,
42
+ verticalAlign: 'middle',
43
+ position: 'relative',
44
+ ':hover': {
45
+ cursor: 'pointer',
46
+ backgroundColor: _tokens.tokens.colorSubtleBackgroundHover,
47
+ color: _tokens.tokens.colorNeutralForeground2Hover
48
+ },
49
+ ':active': {
50
+ backgroundColor: _tokens.tokens.colorSubtleBackgroundPressed,
51
+ color: _tokens.tokens.colorNeutralForeground2Pressed
52
+ },
53
+ '@media (forced-colors: active)': {
54
+ ':hover': {
55
+ backgroundColor: 'HighlightText'
56
+ },
57
+ ':active': {
58
+ backgroundColor: 'HighlightText'
59
+ }
60
+ }
61
+ });
62
+ const useNextStyles = (0, _reactcomponents.makeStyles)({
63
+ root: {
64
+ borderRadius: _tokens.tokens.borderRadiusXLarge,
65
+ ..._reactcomponents.shorthands.borderColor(_tokens.tokens.colorTransparentStroke),
66
+ color: _tokens.tokens.colorNeutralForeground2,
67
+ backgroundColor: _tokens.tokens.colorNeutralBackground3,
68
+ ':hover': {
69
+ cursor: 'pointer',
70
+ color: _tokens.tokens.colorNeutralForeground2Hover,
71
+ backgroundColor: _tokens.tokens.colorNeutralBackground3Hover
72
+ },
73
+ ':active': {
74
+ color: _tokens.tokens.colorNeutralForeground2Pressed,
75
+ backgroundColor: _tokens.tokens.colorNeutralBackground3Pressed
76
+ }
77
+ },
78
+ canvas: {
79
+ minHeight: '40px',
80
+ padding: `${_tokens.tokens.spacingVerticalNone} ${_tokens.tokens.spacingHorizontalS}`
81
+ },
82
+ sidecar: {
83
+ minHeight: '32px',
84
+ padding: `${_tokens.tokens.spacingVerticalNone} ${_tokens.tokens.spacingHorizontalS}`
85
+ },
86
+ fullyOverflowed_canvas: {
87
+ padding: `${_tokens.tokens.spacingVerticalNone} ${_tokens.tokens.spacingHorizontalL}`,
88
+ ..._tokens.typographyStyles.subtitle2
89
+ },
90
+ fullyOverflowed_sidecar: {
91
+ padding: `${_tokens.tokens.spacingVerticalNone} ${_tokens.tokens.spacingHorizontalM}`,
92
+ ..._tokens.typographyStyles.body1Strong
93
+ }
94
+ });
95
+ const useAttachmentOverflowMenuButtonStyles_unstable = (state)=>{
96
+ 'use no memo';
97
+ const { designVersion, mode, fullyOverflowed } = state;
98
+ const rootBaseClassName = useRootBaseClassName();
99
+ const progressBarStyles = (0, _useProgressBarStylesstyles.useProgressBarStyles)();
100
+ const nextStyles = useNextStyles();
101
+ state.root.className = (0, _reactcomponents.mergeClasses)(attachmentOverflowMenuButtonClassNames.root, rootBaseClassName, designVersion === 'next' && nextStyles.root, designVersion === 'next' && nextStyles[mode], designVersion === 'next' && fullyOverflowed && nextStyles[`fullyOverflowed_${mode}`], state.root.className);
102
+ if (state.progress) {
103
+ state.progress.className = (0, _reactcomponents.mergeClasses)(attachmentOverflowMenuButtonClassNames.progress, progressBarStyles.progress, state.progress.className);
104
+ const bar = _reactcomponents.slot.optional(state.progress.bar, {
105
+ elementType: 'div',
106
+ renderByDefault: true
107
+ });
108
+ if (bar) {
109
+ if (state.progress.value === undefined) {
110
+ bar.className = (0, _reactcomponents.mergeClasses)(progressBarStyles.indeterminateProgressBar, bar.className);
111
+ } else {
112
+ bar.className = (0, _reactcomponents.mergeClasses)(progressBarStyles.regularProgressBar, bar.className);
113
+ }
114
+ state.progress.bar = bar;
115
+ }
116
+ }
117
+ return state;
118
+ };
@@ -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":["attachmentOverflowMenuButtonClassNames","useAttachmentOverflowMenuButtonStyles_unstable","root","progress","useRootBaseClassName","makeResetStyles","color","tokens","colorNeutralForeground1","alignItems","backgroundColor","colorSubtleBackground","border","strokeWidthThin","colorNeutralStroke1","borderRadius","borderRadiusMedium","boxSizing","columnGap","spacingHorizontalSNudge","cursor","display","flexWrap","fontFamily","typographyStyles","body1","fontSize","fontWeight","justifyContent","padding","spacingVerticalXS","spacingHorizontalS","verticalAlign","position","colorSubtleBackgroundHover","colorNeutralForeground2Hover","colorSubtleBackgroundPressed","colorNeutralForeground2Pressed","useNextStyles","makeStyles","borderRadiusXLarge","shorthands","borderColor","colorTransparentStroke","colorNeutralForeground2","colorNeutralBackground3","colorNeutralBackground3Hover","colorNeutralBackground3Pressed","canvas","minHeight","spacingVerticalNone","sidecar","fullyOverflowed_canvas","spacingHorizontalL","subtitle2","fullyOverflowed_sidecar","spacingHorizontalM","body1Strong","state","designVersion","mode","fullyOverflowed","rootBaseClassName","progressBarStyles","useProgressBarStyles","nextStyles","className","mergeClasses","bar","slot","optional","elementType","renderByDefault","value","undefined","indeterminateProgressBar","regularProgressBar"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}