@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.
- package/CHANGELOG.json +18 -3
- package/CHANGELOG.md +13 -4
- package/lib/components/AgentTag/useAgentTagStyles.styles.raw.js +66 -0
- package/lib/components/AgentTag/useAgentTagStyles.styles.raw.js.map +1 -0
- package/lib/components/Attachment/useAttachmentStyles.styles.raw.js +317 -0
- package/lib/components/Attachment/useAttachmentStyles.styles.raw.js.map +1 -0
- package/lib/components/AttachmentList/useAttachmentListStyles.styles.raw.js +44 -0
- package/lib/components/AttachmentList/useAttachmentListStyles.styles.raw.js.map +1 -0
- package/lib/components/AttachmentOverflowMenuButton/useAttachmentOverflowMenuButtonStyles.styles.raw.js +102 -0
- package/lib/components/AttachmentOverflowMenuButton/useAttachmentOverflowMenuButtonStyles.styles.raw.js.map +1 -0
- package/lib/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.raw.js +57 -0
- package/lib/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.raw.js.map +1 -0
- package/lib/components/utils/useProgressBarStyles.styles.raw.js +42 -0
- package/lib/components/utils/useProgressBarStyles.styles.raw.js.map +1 -0
- package/lib-commonjs/components/AgentTag/useAgentTagStyles.styles.raw.js +82 -0
- package/lib-commonjs/components/AgentTag/useAgentTagStyles.styles.raw.js.map +1 -0
- package/lib-commonjs/components/Attachment/useAttachmentStyles.styles.raw.js +336 -0
- package/lib-commonjs/components/Attachment/useAttachmentStyles.styles.raw.js.map +1 -0
- package/lib-commonjs/components/AttachmentList/useAttachmentListStyles.styles.raw.js +60 -0
- package/lib-commonjs/components/AttachmentList/useAttachmentListStyles.styles.raw.js.map +1 -0
- package/lib-commonjs/components/AttachmentOverflowMenuButton/useAttachmentOverflowMenuButtonStyles.styles.raw.js +118 -0
- package/lib-commonjs/components/AttachmentOverflowMenuButton/useAttachmentOverflowMenuButtonStyles.styles.raw.js.map +1 -0
- package/lib-commonjs/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.raw.js +73 -0
- package/lib-commonjs/components/AttachmentOverflowMenuItem/useAttachmentOverflowMenuItemStyles.styles.raw.js.map +1 -0
- package/lib-commonjs/components/utils/useProgressBarStyles.styles.raw.js +50 -0
- package/lib-commonjs/components/utils/useProgressBarStyles.styles.raw.js.map +1 -0
- 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": "
|
|
6
|
-
"tag": "@fluentui-copilot/react-attachments_v0.0.0-nightly-
|
|
7
|
-
"version": "0.0.0-nightly-
|
|
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
|
|
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-
|
|
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
|
-
|
|
10
|
-
[Compare changes](https://github.com/microsoft/fluentai/compare/@fluentui-copilot/react-attachments_v0.13.
|
|
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"}
|