@fluentui-copilot/react-attachments 0.0.0-nightly-20250717-0405-eecbae35.1 → 0.0.0-nightly-20250718-0405-8e705578.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 (27) 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.raw.js +317 -0
  6. package/lib/components/Attachment/useAttachmentStyles.styles.raw.js.map +1 -0
  7. package/lib/components/AttachmentList/useAttachmentListStyles.styles.raw.js +44 -0
  8. package/lib/components/AttachmentList/useAttachmentListStyles.styles.raw.js.map +1 -0
  9. package/lib/components/AttachmentOverflowMenuButton/useAttachmentOverflowMenuButtonStyles.styles.raw.js +102 -0
  10. package/lib/components/AttachmentOverflowMenuButton/useAttachmentOverflowMenuButtonStyles.styles.raw.js.map +1 -0
  11. package/lib/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.raw.js +57 -0
  12. package/lib/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.raw.js.map +1 -0
  13. package/lib/components/utils/useProgressBarStyles.styles.raw.js +42 -0
  14. package/lib/components/utils/useProgressBarStyles.styles.raw.js.map +1 -0
  15. package/lib-commonjs/components/AgentTag/useAgentTagStyles.styles.raw.js +82 -0
  16. package/lib-commonjs/components/AgentTag/useAgentTagStyles.styles.raw.js.map +1 -0
  17. package/lib-commonjs/components/Attachment/useAttachmentStyles.styles.raw.js +336 -0
  18. package/lib-commonjs/components/Attachment/useAttachmentStyles.styles.raw.js.map +1 -0
  19. package/lib-commonjs/components/AttachmentList/useAttachmentListStyles.styles.raw.js +60 -0
  20. package/lib-commonjs/components/AttachmentList/useAttachmentListStyles.styles.raw.js.map +1 -0
  21. package/lib-commonjs/components/AttachmentOverflowMenuButton/useAttachmentOverflowMenuButtonStyles.styles.raw.js +118 -0
  22. package/lib-commonjs/components/AttachmentOverflowMenuButton/useAttachmentOverflowMenuButtonStyles.styles.raw.js.map +1 -0
  23. package/lib-commonjs/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.raw.js +73 -0
  24. package/lib-commonjs/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.raw.js.map +1 -0
  25. package/lib-commonjs/components/utils/useProgressBarStyles.styles.raw.js +50 -0
  26. package/lib-commonjs/components/utils/useProgressBarStyles.styles.raw.js.map +1 -0
  27. package/package.json +4 -4
package/CHANGELOG.json CHANGED
@@ -2,9 +2,9 @@
2
2
  "name": "@fluentui-copilot/react-attachments",
3
3
  "entries": [
4
4
  {
5
- "date": "Thu, 17 Jul 2025 04:13:01 GMT",
6
- "tag": "@fluentui-copilot/react-attachments_v0.0.0-nightly-20250717-0405-eecbae35.1",
7
- "version": "0.0.0-nightly-20250717-0405-eecbae35.1",
5
+ "date": "Fri, 18 Jul 2025 04:12:22 GMT",
6
+ "tag": "@fluentui-copilot/react-attachments_v0.0.0-nightly-20250718-0405-8e705578.1",
7
+ "version": "0.0.0-nightly-20250718-0405-8e705578.1",
8
8
  "comments": {
9
9
  "prerelease": [
10
10
  {
@@ -16,6 +16,21 @@
16
16
  ]
17
17
  }
18
18
  },
19
+ {
20
+ "date": "Thu, 17 Jul 2025 17:49:26 GMT",
21
+ "tag": "@fluentui-copilot/react-attachments_v0.13.3",
22
+ "version": "0.13.3",
23
+ "comments": {
24
+ "patch": [
25
+ {
26
+ "author": "hochelmartin@gmail.com",
27
+ "package": "@fluentui-copilot/react-attachments",
28
+ "commit": "fef5160c07333e8d9996952a305b34e357604919",
29
+ "comment": "feat: enable griffel raw styles"
30
+ }
31
+ ]
32
+ }
33
+ },
19
34
  {
20
35
  "date": "Tue, 01 Jul 2025 14:45:27 GMT",
21
36
  "tag": "@fluentui-copilot/react-attachments_v0.13.2",
package/CHANGELOG.md CHANGED
@@ -1,18 +1,27 @@
1
1
  # Change Log - @fluentui-copilot/react-attachments
2
2
 
3
- This log was last generated on Thu, 17 Jul 2025 04:13:01 GMT and should not be manually modified.
3
+ This log was last generated on Fri, 18 Jul 2025 04:12:22 GMT and should not be manually modified.
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
- ## [0.0.0-nightly-20250717-0405-eecbae35.1](https://github.com/microsoft/fluentai/tree/@fluentui-copilot/react-attachments_v0.0.0-nightly-20250717-0405-eecbae35.1)
7
+ ## [0.0.0-nightly-20250718-0405-8e705578.1](https://github.com/microsoft/fluentai/tree/@fluentui-copilot/react-attachments_v0.0.0-nightly-20250718-0405-8e705578.1)
8
8
 
9
- Thu, 17 Jul 2025 04:13:01 GMT
10
- [Compare changes](https://github.com/microsoft/fluentai/compare/@fluentui-copilot/react-attachments_v0.13.2..@fluentui-copilot/react-attachments_v0.0.0-nightly-20250717-0405-eecbae35.1)
9
+ Fri, 18 Jul 2025 04:12:22 GMT
10
+ [Compare changes](https://github.com/microsoft/fluentai/compare/@fluentui-copilot/react-attachments_v0.13.3..@fluentui-copilot/react-attachments_v0.0.0-nightly-20250718-0405-8e705578.1)
11
11
 
12
12
  ### Changes
13
13
 
14
14
  - Release nightly ([commit](https://github.com/microsoft/fluentai/commit/not available) by fluentui-internal@service.microsoft.com)
15
15
 
16
+ ## [0.13.3](https://github.com/microsoft/fluentai/tree/@fluentui-copilot/react-attachments_v0.13.3)
17
+
18
+ Thu, 17 Jul 2025 17:49:26 GMT
19
+ [Compare changes](https://github.com/microsoft/fluentai/compare/@fluentui-copilot/react-attachments_v0.13.2..@fluentui-copilot/react-attachments_v0.13.3)
20
+
21
+ ### Patches
22
+
23
+ - feat: enable griffel raw styles ([PR #3227](https://github.com/microsoft/fluentai/pull/3227) by hochelmartin@gmail.com)
24
+
16
25
  ## [0.13.2](https://github.com/microsoft/fluentai/tree/@fluentui-copilot/react-attachments_v0.13.2)
17
26
 
18
27
  Tue, 01 Jul 2025 14:45:27 GMT
@@ -0,0 +1,66 @@
1
+ import { makeStyles, mergeClasses } from '@fluentui/react-components';
2
+ import { useAttachmentStyles_unstable } from '..';
3
+ import { tokens, typographyStyles } from '@fluentui-copilot/tokens';
4
+ export const agentTagClassNames = {
5
+ root: 'fai-AgentTag',
6
+ primaryAction: 'fai-AgentTag__primaryAction',
7
+ dismissIcon: 'fai-AgentTag__dismissIcon',
8
+ dismissButton: 'fai-AgentTag__dismissButton',
9
+ media: 'fai-AgentTag__media',
10
+ content: 'fai-AgentTag__content',
11
+ progress: 'fai-AgentTag__progress'
12
+ };
13
+ const useMediaStyles = makeStyles({
14
+ canvas: {
15
+ width: '24px',
16
+ height: '24px'
17
+ },
18
+ sidecar: {
19
+ width: '20px',
20
+ height: '20px'
21
+ }
22
+ });
23
+ const useContentStyles = makeStyles({
24
+ canvas: {
25
+ ...typographyStyles.subtitle2,
26
+ color: tokens.colorNeutralForeground2
27
+ },
28
+ sidecar: {
29
+ ...typographyStyles.body1Strong,
30
+ color: tokens.colorNeutralForeground2
31
+ }
32
+ });
33
+ const useDismissButtonStyles = makeStyles({
34
+ canvas: {
35
+ borderRadius: tokens.borderRadius2XL,
36
+ paddingLeft: tokens.spacingHorizontalL,
37
+ paddingRight: tokens.spacingHorizontalM
38
+ },
39
+ sidecar: {
40
+ paddingLeft: tokens.spacingHorizontalM,
41
+ paddingRight: tokens.spacingHorizontalS,
42
+ borderRadius: tokens.borderRadiusXLarge
43
+ }
44
+ });
45
+ /**
46
+ * Apply styling to the AgentTag slots based on the state
47
+ */ export const useAgentTagStyles_unstable = (state)=>{
48
+ 'use no memo';
49
+ const { mode } = state;
50
+ const contentStyles = useContentStyles();
51
+ const dismissButtonStyles = useDismissButtonStyles();
52
+ const mediaStyles = useMediaStyles();
53
+ state.root.className = mergeClasses(agentTagClassNames.root, state.root.className);
54
+ state.primaryAction.className = mergeClasses(agentTagClassNames.primaryAction, state.primaryAction.className);
55
+ state.dismissIcon.className = mergeClasses(agentTagClassNames.dismissIcon, state.dismissIcon.className);
56
+ state.dismissButton.className = mergeClasses(agentTagClassNames.dismissButton, dismissButtonStyles[mode], state.dismissButton.className);
57
+ if (state.media) {
58
+ state.media.className = mergeClasses(agentTagClassNames.media, mediaStyles[mode], state.media.className);
59
+ }
60
+ state.content.className = mergeClasses(agentTagClassNames.content, contentStyles[mode], state.content.className);
61
+ if (state.progress) {
62
+ state.progress.className = mergeClasses(agentTagClassNames.progress, state.progress.className);
63
+ }
64
+ useAttachmentStyles_unstable(state);
65
+ return state;
66
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useAgentTagStyles.styles.ts"],"sourcesContent":["import { makeStyles, mergeClasses } from '@fluentui/react-components';\nimport type { AgentTagSlots, AgentTagState } from './AgentTag.types';\nimport type { SlotClassNames } from '@fluentui/react-components';\nimport { useAttachmentStyles_unstable } from '..';\nimport { tokens, typographyStyles } from '@fluentui-copilot/tokens';\n\nexport const agentTagClassNames: SlotClassNames<AgentTagSlots> = {\n root: 'fai-AgentTag',\n primaryAction: 'fai-AgentTag__primaryAction',\n dismissIcon: 'fai-AgentTag__dismissIcon',\n dismissButton: 'fai-AgentTag__dismissButton',\n media: 'fai-AgentTag__media',\n content: 'fai-AgentTag__content',\n progress: 'fai-AgentTag__progress',\n};\n\nconst useMediaStyles = makeStyles({\n canvas: {\n width: '24px',\n height: '24px',\n },\n sidecar: { width: '20px', height: '20px' },\n});\n\nconst useContentStyles = makeStyles({\n canvas: {\n ...typographyStyles.subtitle2,\n color: tokens.colorNeutralForeground2,\n },\n sidecar: {\n ...typographyStyles.body1Strong,\n color: tokens.colorNeutralForeground2,\n },\n});\n\nconst useDismissButtonStyles = makeStyles({\n canvas: {\n borderRadius: tokens.borderRadius2XL,\n paddingLeft: tokens.spacingHorizontalL,\n paddingRight: tokens.spacingHorizontalM,\n },\n sidecar: {\n paddingLeft: tokens.spacingHorizontalM,\n paddingRight: tokens.spacingHorizontalS,\n borderRadius: tokens.borderRadiusXLarge,\n },\n});\n\n/**\n * Apply styling to the AgentTag slots based on the state\n */\nexport const useAgentTagStyles_unstable = (state: AgentTagState): AgentTagState => {\n 'use no memo';\n\n const { mode } = state;\n\n const contentStyles = useContentStyles();\n const dismissButtonStyles = useDismissButtonStyles();\n const mediaStyles = useMediaStyles();\n\n state.root.className = mergeClasses(agentTagClassNames.root, state.root.className);\n\n state.primaryAction.className = mergeClasses(agentTagClassNames.primaryAction, state.primaryAction.className);\n\n state.dismissIcon.className = mergeClasses(agentTagClassNames.dismissIcon, state.dismissIcon.className);\n\n state.dismissButton.className = mergeClasses(\n agentTagClassNames.dismissButton,\n dismissButtonStyles[mode],\n state.dismissButton.className,\n );\n\n if (state.media) {\n state.media.className = mergeClasses(agentTagClassNames.media, mediaStyles[mode], state.media.className);\n }\n\n state.content.className = mergeClasses(agentTagClassNames.content, contentStyles[mode], state.content.className);\n\n if (state.progress) {\n state.progress.className = mergeClasses(agentTagClassNames.progress, state.progress.className);\n }\n\n useAttachmentStyles_unstable(state);\n\n return state;\n};\n"],"names":["makeStyles","mergeClasses","useAttachmentStyles_unstable","tokens","typographyStyles","agentTagClassNames","root","primaryAction","dismissIcon","dismissButton","media","content","progress","useMediaStyles","canvas","width","height","sidecar","useContentStyles","subtitle2","color","colorNeutralForeground2","body1Strong","useDismissButtonStyles","borderRadius","borderRadius2XL","paddingLeft","spacingHorizontalL","paddingRight","spacingHorizontalM","spacingHorizontalS","borderRadiusXLarge","useAgentTagStyles_unstable","state","mode","contentStyles","dismissButtonStyles","mediaStyles","className"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,UAAU,EAAEC,YAAY,QAAQ,6BAA6B;AAGtE,SAASC,4BAA4B,QAAQ,KAAK;AAClD,SAASC,MAAM,EAAEC,gBAAgB,QAAQ,2BAA2B;AAEpE,OAAO,MAAMC,qBAAoD;IAC/DC,MAAM;IACNC,eAAe;IACfC,aAAa;IACbC,eAAe;IACfC,OAAO;IACPC,SAAS;IACTC,UAAU;AACZ,EAAE;AAEF,MAAMC,iBAAiBb,WAAW;IAChCc,QAAQ;QACNC,OAAO;QACPC,QAAQ;IACV;IACAC,SAAS;QAAEF,OAAO;QAAQC,QAAQ;IAAO;AAC3C;AAEA,MAAME,mBAAmBlB,WAAW;IAClCc,QAAQ;QACN,GAAGV,iBAAiBe,SAAS;QAC7BC,OAAOjB,OAAOkB,uBAAuB;IACvC;IACAJ,SAAS;QACP,GAAGb,iBAAiBkB,WAAW;QAC/BF,OAAOjB,OAAOkB,uBAAuB;IACvC;AACF;AAEA,MAAME,yBAAyBvB,WAAW;IACxCc,QAAQ;QACNU,cAAcrB,OAAOsB,eAAe;QACpCC,aAAavB,OAAOwB,kBAAkB;QACtCC,cAAczB,OAAO0B,kBAAkB;IACzC;IACAZ,SAAS;QACPS,aAAavB,OAAO0B,kBAAkB;QACtCD,cAAczB,OAAO2B,kBAAkB;QACvCN,cAAcrB,OAAO4B,kBAAkB;IACzC;AACF;AAEA;;CAEC,GACD,OAAO,MAAMC,6BAA6B,CAACC;IACzC;IAEA,MAAM,EAAEC,IAAI,EAAE,GAAGD;IAEjB,MAAME,gBAAgBjB;IACtB,MAAMkB,sBAAsBb;IAC5B,MAAMc,cAAcxB;IAEpBoB,MAAM3B,IAAI,CAACgC,SAAS,GAAGrC,aAAaI,mBAAmBC,IAAI,EAAE2B,MAAM3B,IAAI,CAACgC,SAAS;IAEjFL,MAAM1B,aAAa,CAAC+B,SAAS,GAAGrC,aAAaI,mBAAmBE,aAAa,EAAE0B,MAAM1B,aAAa,CAAC+B,SAAS;IAE5GL,MAAMzB,WAAW,CAAC8B,SAAS,GAAGrC,aAAaI,mBAAmBG,WAAW,EAAEyB,MAAMzB,WAAW,CAAC8B,SAAS;IAEtGL,MAAMxB,aAAa,CAAC6B,SAAS,GAAGrC,aAC9BI,mBAAmBI,aAAa,EAChC2B,mBAAmB,CAACF,KAAK,EACzBD,MAAMxB,aAAa,CAAC6B,SAAS;IAG/B,IAAIL,MAAMvB,KAAK,EAAE;QACfuB,MAAMvB,KAAK,CAAC4B,SAAS,GAAGrC,aAAaI,mBAAmBK,KAAK,EAAE2B,WAAW,CAACH,KAAK,EAAED,MAAMvB,KAAK,CAAC4B,SAAS;IACzG;IAEAL,MAAMtB,OAAO,CAAC2B,SAAS,GAAGrC,aAAaI,mBAAmBM,OAAO,EAAEwB,aAAa,CAACD,KAAK,EAAED,MAAMtB,OAAO,CAAC2B,SAAS;IAE/G,IAAIL,MAAMrB,QAAQ,EAAE;QAClBqB,MAAMrB,QAAQ,CAAC0B,SAAS,GAAGrC,aAAaI,mBAAmBO,QAAQ,EAAEqB,MAAMrB,QAAQ,CAAC0B,SAAS;IAC/F;IAEApC,6BAA6B+B;IAE7B,OAAOA;AACT,EAAE"}
@@ -0,0 +1,317 @@
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
+ zIndex: 1
40
+ }),
41
+ verticalAlign: 'middle'
42
+ };
43
+ const usePrimaryActionBaseClassName = makeResetStyles({
44
+ ...buttonBaseStyles,
45
+ borderTopRightRadius: tokens.borderRadiusNone,
46
+ borderBottomRightRadius: tokens.borderRadiusNone,
47
+ borderRightStyle: 'none',
48
+ maxWidth: `calc(${ATTACHMENT_MAXWIDTH} - ${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS} - ${tokens.spacingHorizontalXS})`,
49
+ padding: `${tokens.spacingVerticalXS} ${tokens.spacingHorizontalS} ${tokens.spacingVerticalXS} ${tokens.spacingHorizontalS}`
50
+ });
51
+ const usePrimaryActionStyles = makeStyles({
52
+ button: {
53
+ ':hover': {
54
+ cursor: 'pointer',
55
+ backgroundColor: tokens.colorSubtleBackgroundHover,
56
+ color: tokens.colorNeutralForeground2Hover
57
+ },
58
+ ':active': {
59
+ backgroundColor: tokens.colorSubtleBackgroundPressed,
60
+ color: tokens.colorNeutralForeground2Pressed
61
+ },
62
+ '@media (forced-colors: active)': {
63
+ ':hover': {
64
+ backgroundColor: 'HighlightText'
65
+ },
66
+ ':active': {
67
+ backgroundColor: 'HighlightText'
68
+ }
69
+ }
70
+ }
71
+ });
72
+ const useDismissButtonBaseClassName = makeResetStyles({
73
+ ...buttonBaseStyles,
74
+ padding: `${tokens.spacingVerticalXS} ${tokens.spacingHorizontalXS} ${tokens.spacingVerticalXS} ${tokens.spacingHorizontalXS}`,
75
+ maxWidth: `calc(${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS}) + ${tokens.spacingHorizontalXS}`,
76
+ minWidth: `calc(${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS}) + ${tokens.spacingHorizontalXS}`,
77
+ // divider:
78
+ borderLeftColor: tokens.colorNeutralStroke1,
79
+ borderTopLeftRadius: tokens.borderRadiusNone,
80
+ borderBottomLeftRadius: tokens.borderRadiusNone,
81
+ borderTopRightRadius: tokens.borderRadiusMedium,
82
+ borderBottomRightRadius: tokens.borderRadiusMedium,
83
+ ':hover': {
84
+ cursor: 'pointer',
85
+ backgroundColor: tokens.colorSubtleBackgroundHover,
86
+ color: tokens.colorNeutralForeground2BrandHover
87
+ },
88
+ ':active': {
89
+ backgroundColor: tokens.colorSubtleBackgroundPressed,
90
+ color: tokens.colorNeutralForeground2BrandPressed
91
+ },
92
+ '@media (forced-colors: active)': {
93
+ ':hover': {
94
+ backgroundColor: 'HighlightText'
95
+ },
96
+ ':active': {
97
+ backgroundColor: 'HighlightText'
98
+ }
99
+ }
100
+ });
101
+ const useDismissButtonCurrentStyles = makeStyles({
102
+ root: {
103
+ ':hover': {
104
+ [`& .${attachmentClassNames.dismissIcon}`]: {
105
+ color: tokens.colorBrandForegroundLinkHover
106
+ }
107
+ }
108
+ }
109
+ });
110
+ const useMediaBaseClassName = makeResetStyles({
111
+ alignItems: 'center',
112
+ display: 'inline-flex',
113
+ fontSize: ATTACHMENT_SIZE,
114
+ height: ATTACHMENT_SIZE,
115
+ lineHeight: ATTACHMENT_SIZE,
116
+ width: ATTACHMENT_SIZE
117
+ });
118
+ const useContentBaseClassName = makeResetStyles({
119
+ overflowX: 'hidden',
120
+ textOverflow: 'ellipsis',
121
+ whiteSpace: 'nowrap',
122
+ ...typographyStyles.body1
123
+ });
124
+ const useDismissIconBaseClassName = makeResetStyles({
125
+ alignItems: 'center',
126
+ borderRadius: tokens.borderRadiusCircular,
127
+ border: `${tokens.strokeWidthThin} solid ${tokens.colorTransparentStroke}`,
128
+ boxSizing: 'border-box',
129
+ color: tokens.colorNeutralForeground1,
130
+ display: 'inline-flex',
131
+ fontSize: ATTACHMENT_SIZE,
132
+ height: `calc(${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingVerticalXXS})`,
133
+ justifyContent: 'center',
134
+ maxWidth: `calc(${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS})`,
135
+ minWidth: `calc(${ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS})`,
136
+ padding: `calc(${tokens.spacingVerticalXXS} / 2) calc(${tokens.spacingHorizontalXXS} / 2)`
137
+ });
138
+ const useDismissIconNextStyles = makeStyles({
139
+ dismissOnly: {
140
+ ':hover': {
141
+ color: tokens.colorNeutralForeground2BrandHover
142
+ },
143
+ ':active': {
144
+ color: tokens.colorNeutralForeground2BrandPressed
145
+ }
146
+ }
147
+ });
148
+ const useImageOnlyStyles = makeStyles({
149
+ primaryAction: {
150
+ padding: 0
151
+ },
152
+ content: {
153
+ lineHeight: 0
154
+ }
155
+ });
156
+ export const useOverflowStyles = makeStyles({
157
+ overflow: {
158
+ maxWidth: '100%',
159
+ width: '100%'
160
+ }
161
+ });
162
+ const useSmallStyles = makeStyles({
163
+ primaryAction: {
164
+ maxWidth: `calc(${ATTACHMENT_MAXWIDTH} - ${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS} - ${tokens.spacingHorizontalXS})`,
165
+ padding: `${tokens.spacingVerticalXXS} ${tokens.spacingHorizontalSNudge} ${tokens.spacingVerticalXXS} ${tokens.spacingHorizontalSNudge}`
166
+ },
167
+ media: {
168
+ fontSize: SMALL_ATTACHMENT_SIZE,
169
+ height: SMALL_ATTACHMENT_SIZE,
170
+ lineHeight: SMALL_ATTACHMENT_SIZE,
171
+ width: SMALL_ATTACHMENT_SIZE
172
+ },
173
+ content: {
174
+ ...typographyStyles.caption1
175
+ },
176
+ dismissButton: {
177
+ padding: `${tokens.spacingVerticalXXS} ${tokens.spacingHorizontalXXS}`,
178
+ maxWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS}) + ${tokens.spacingHorizontalXS}`,
179
+ minWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS}) + ${tokens.spacingHorizontalXS}`
180
+ },
181
+ dismissIcon: {
182
+ fontSize: SMALL_ATTACHMENT_SIZE,
183
+ height: `calc(${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingVerticalXXS})`,
184
+ maxWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS})`,
185
+ minWidth: `calc(${SMALL_ATTACHMENT_SIZE} + ${tokens.strokeWidthThin} * 2 + ${tokens.spacingHorizontalXXS})`
186
+ }
187
+ });
188
+ const usePrimaryActionNextStyles = makeStyles({
189
+ root: {
190
+ borderTopLeftRadius: tokens.borderRadiusXLarge,
191
+ borderBottomLeftRadius: tokens.borderRadiusXLarge
192
+ },
193
+ canvas: {
194
+ padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalS}`,
195
+ minHeight: '40px'
196
+ },
197
+ sidecar: {
198
+ padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalS}`,
199
+ minHeight: '32px'
200
+ }
201
+ });
202
+ const useDismissButtonNextStyles = makeStyles({
203
+ root: {
204
+ borderTopRightRadius: tokens.borderRadiusXLarge,
205
+ borderBottomRightRadius: tokens.borderRadiusXLarge,
206
+ ':hover': {
207
+ color: tokens.colorNeutralForeground2
208
+ },
209
+ ':active': {
210
+ color: tokens.colorNeutralForeground2Pressed
211
+ },
212
+ borderLeftColor: tokens.colorNeutralStroke1,
213
+ borderLeftWidth: tokens.strokeWidthThin,
214
+ borderLeftStyle: 'solid'
215
+ },
216
+ withPrimary: {
217
+ ':hover': {
218
+ [`& .${attachmentClassNames.dismissIcon}`]: {
219
+ color: tokens.colorNeutralForeground2
220
+ }
221
+ },
222
+ ':active': {
223
+ [`& .${attachmentClassNames.dismissIcon}`]: {
224
+ color: tokens.colorNeutralForeground2Pressed
225
+ }
226
+ }
227
+ },
228
+ canvas: {
229
+ padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalS}`,
230
+ minHeight: '40px',
231
+ width: '40px'
232
+ },
233
+ sidecar: {
234
+ padding: `${tokens.spacingVerticalNone} ${tokens.spacingHorizontalMNudge}`,
235
+ minHeight: '32px',
236
+ width: '32px'
237
+ },
238
+ dismissOnly: {
239
+ borderRadius: tokens.borderRadiusXLarge,
240
+ width: 'unset',
241
+ borderLeftColor: tokens.colorTransparentStroke,
242
+ backgroundColor: tokens.colorNeutralBackground3,
243
+ ':hover': {
244
+ backgroundColor: tokens.colorNeutralBackground3
245
+ },
246
+ ':active': {
247
+ backgroundColor: tokens.colorNeutralBackground3
248
+ }
249
+ }
250
+ });
251
+ const usePrimaryDismissNextStyles = makeStyles({
252
+ sharedStyles: {
253
+ border: 'none',
254
+ backgroundColor: tokens.colorNeutralBackground3,
255
+ ':hover': {
256
+ backgroundColor: tokens.colorNeutralBackground3Hover
257
+ },
258
+ ':active': {
259
+ backgroundColor: tokens.colorNeutralBackground3Pressed
260
+ },
261
+ ':focus-visible': {
262
+ borderRadius: tokens.borderRadiusLarge
263
+ }
264
+ }
265
+ });
266
+ const useRootNextStyles = makeStyles({
267
+ root: {
268
+ outline: `${tokens.strokeWidthThin} solid ${tokens.colorTransparentStroke}`,
269
+ borderRadius: tokens.borderRadiusXLarge
270
+ }
271
+ });
272
+ /**
273
+ * Apply styling to the Attachment slots based on the state
274
+ */ export const useAttachmentStyles_unstable = (state)=>{
275
+ 'use no memo';
276
+ const rootBaseClassName = useRootBaseClassName();
277
+ const primaryActionBaseClassName = usePrimaryActionBaseClassName();
278
+ const dismissButtonBaseClassName = useDismissButtonBaseClassName();
279
+ const dismissButtonCurrentStyles = useDismissButtonCurrentStyles();
280
+ const mediaBaseClassName = useMediaBaseClassName();
281
+ const contentBaseClassName = useContentBaseClassName();
282
+ const dismissIconBaseClassName = useDismissIconBaseClassName();
283
+ const dismissIconNextStyles = useDismissIconNextStyles();
284
+ const progressBarStyles = useProgressBarStyles();
285
+ const primaryActionStyles = usePrimaryActionStyles();
286
+ const imageOnlyStyles = useImageOnlyStyles();
287
+ const smallStyles = useSmallStyles();
288
+ const primaryActionNextStyles = usePrimaryActionNextStyles();
289
+ const dismissButtonNextStyles = useDismissButtonNextStyles();
290
+ const primaryDismissNextStyles = usePrimaryDismissNextStyles();
291
+ const rootNextStyles = useRootNextStyles();
292
+ const { imageOnly, primaryAction, size, mode, designVersion, dismissOnly } = state;
293
+ state.root.className = mergeClasses(attachmentClassNames.root, rootBaseClassName, designVersion === 'next' && rootNextStyles.root, state.root.className);
294
+ 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' && primaryActionNextStyles.root, designVersion === 'next' && primaryActionNextStyles[mode], state.primaryAction.className);
295
+ state.dismissButton.className = mergeClasses(attachmentClassNames.dismissButton, dismissButtonBaseClassName, designVersion === 'current' && dismissButtonCurrentStyles.root, size === 'small' && smallStyles.dismissButton, designVersion === 'next' && primaryDismissNextStyles.sharedStyles, designVersion === 'next' && dismissButtonNextStyles.root, designVersion === 'next' && dismissButtonNextStyles[mode], designVersion === 'next' && dismissOnly && dismissButtonNextStyles.dismissOnly, designVersion === 'next' && !dismissOnly && dismissButtonNextStyles.withPrimary, state.dismissButton.className);
296
+ if (state.media) {
297
+ state.media.className = mergeClasses(attachmentClassNames.media, mediaBaseClassName, size === 'small' && smallStyles.media, state.media.className);
298
+ }
299
+ state.content.className = mergeClasses(attachmentClassNames.content, contentBaseClassName, size === 'small' && smallStyles.content, imageOnly && imageOnlyStyles.content, state.content.className);
300
+ state.dismissIcon.className = mergeClasses(attachmentClassNames.dismissIcon, dismissIconBaseClassName, size === 'small' && smallStyles.dismissIcon, designVersion === 'next' && dismissOnly && dismissIconNextStyles.dismissOnly, state.dismissIcon.className);
301
+ if (state.progress) {
302
+ state.progress.className = mergeClasses(attachmentClassNames.progress, progressBarStyles.progress, state.progress.className);
303
+ const bar = slot.optional(state.progress.bar, {
304
+ elementType: 'div',
305
+ renderByDefault: true
306
+ });
307
+ if (bar) {
308
+ if (state.progress.value === undefined) {
309
+ bar.className = mergeClasses(progressBarStyles.indeterminateProgressBar, bar.className);
310
+ } else {
311
+ bar.className = mergeClasses(progressBarStyles.regularProgressBar, bar.className);
312
+ }
313
+ state.progress.bar = bar;
314
+ }
315
+ }
316
+ return state;
317
+ };
@@ -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 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 ':hover': {\n backgroundColor: tokens.colorNeutralBackground3Hover,\n },\n ':active': {\n backgroundColor: tokens.colorNeutralBackground3Pressed,\n },\n ':focus-visible': {\n borderRadius: tokens.borderRadiusLarge,\n },\n },\n});\n\nconst useRootNextStyles = makeStyles({\n root: {\n outline: `${tokens.strokeWidthThin} solid ${tokens.colorTransparentStroke}`,\n borderRadius: tokens.borderRadiusXLarge,\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 { 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' && primaryActionNextStyles.root,\n designVersion === 'next' && primaryActionNextStyles[mode],\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' && dismissButtonNextStyles.root,\n designVersion === 'next' && dismissButtonNextStyles[mode],\n designVersion === 'next' && dismissOnly && dismissButtonNextStyles.dismissOnly,\n designVersion === 'next' && !dismissOnly && dismissButtonNextStyles.withPrimary,\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","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","colorNeutralBackground3Hover","colorNeutralBackground3Pressed","borderRadiusLarge","useRootNextStyles","useAttachmentStyles_unstable","state","rootBaseClassName","primaryActionBaseClassName","dismissButtonBaseClassName","dismissButtonCurrentStyles","mediaBaseClassName","contentBaseClassName","dismissIconBaseClassName","dismissIconNextStyles","progressBarStyles","primaryActionStyles","imageOnlyStyles","smallStyles","primaryActionNextStyles","dismissButtonNextStyles","primaryDismissNextStyles","rootNextStyles","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"}