@azure/communication-react 1.9.0-alpha-202310170013 → 1.9.0-alpha-202310181643

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.
@@ -2,5 +2,5 @@
2
2
  // Copyright (c) Microsoft Corporation.
3
3
  // Licensed under the MIT License.
4
4
  // GENERATED FILE. DO NOT EDIT MANUALLY.
5
- module.exports = '1.9.0-alpha-202310170013';
5
+ module.exports = '1.9.0-alpha-202310181643';
6
6
  //# sourceMappingURL=telemetryVersion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"telemetryVersion.js","sourceRoot":"","sources":["../../../../../acs-ui-common/src/telemetryVersion.js"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;AAElC,wCAAwC;AAExC,MAAM,CAAC,OAAO,GAAG,0BAA0B,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n// GENERATED FILE. DO NOT EDIT MANUALLY.\n\nmodule.exports = '1.9.0-alpha-202310170013';\n"]}
1
+ {"version":3,"file":"telemetryVersion.js","sourceRoot":"","sources":["../../../../../acs-ui-common/src/telemetryVersion.js"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;AAElC,wCAAwC;AAExC,MAAM,CAAC,OAAO,GAAG,0BAA0B,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n// GENERATED FILE. DO NOT EDIT MANUALLY.\n\nmodule.exports = '1.9.0-alpha-202310181643';\n"]}
@@ -10,7 +10,7 @@ import { editBoxStyle, inputBoxIcon, editingButtonStyle, editBoxStyleSet } from
10
10
  import { InputBoxButton, InputBoxComponent } from '../InputBoxComponent';
11
11
  import { useChatMyMessageStyles } from '../styles/MessageThread.styles';
12
12
  import { _FileUploadCards } from '../FileUploadCards';
13
- import { chatMessageFailedTagStyle, chatMessageFailedTagStackItemStyle, editChatMessageButtonsStackStyle, useChatMessageEditContainerStyles } from '../styles/ChatMessageComponent.styles';
13
+ import { chatMessageFailedTagStyle, editChatMessageFailedTagStyle, chatMessageFailedTagStackItemStyle, editChatMessageButtonsStackStyle, useChatMessageEditContainerStyles } from '../styles/ChatMessageComponent.styles';
14
14
  const MAXIMUM_LENGTH_OF_MESSAGE = 8000;
15
15
  const onRenderCancelIcon = (color) => {
16
16
  const className = mergeStyles(inputBoxIcon, { color });
@@ -75,19 +75,21 @@ export const ChatMessageComponentAsEditBox = (props) => {
75
75
  }, supportNewline: false, maxLength: MAXIMUM_LENGTH_OF_MESSAGE, errorMessage: textTooLongMessage, styles: editBoxStyles,
76
76
  /* @conditional-compile-remove(mention) */
77
77
  mentionLookupOptions: mentionLookupOptions }),
78
- React.createElement(Stack, { horizontal: true, horizontalAlign: "end", verticalAlign: "start", className: editChatMessageButtonsStackStyle, tokens: { childrenGap: '0.25rem' } },
79
- message.failureReason && (React.createElement(Stack.Item, { grow: true, className: chatMessageFailedTagStackItemStyle },
80
- React.createElement("div", { className: chatMessageFailedTagStyle(theme) }, message.failureReason))),
81
- React.createElement(InputBoxButton, { className: editingButtonStyle, ariaLabel: strings.editBoxCancelButton, tooltipContent: strings.editBoxCancelButton, onRenderIcon: onRenderThemedCancelIcon, onClick: () => {
82
- onCancel && onCancel(message.messageId);
83
- }, id: 'dismissIconWrapper' }),
84
- React.createElement(InputBoxButton, { className: editingButtonStyle, ariaLabel: strings.editBoxSubmitButton, tooltipContent: strings.editBoxSubmitButton, onRenderIcon: onRenderThemedSubmitIcon, onClick: (e) => {
85
- submitEnabled &&
86
- onSubmit(textValue, message.metadata, {
87
- attachedFilesMetadata
88
- });
89
- e.stopPropagation();
90
- }, id: 'submitIconWrapper' })),
78
+ React.createElement(Stack, { horizontal: true, horizontalAlign: "end", className: editChatMessageButtonsStackStyle, tokens: { childrenGap: '0.25rem' } },
79
+ message.failureReason && (React.createElement(Stack.Item, { grow: true, align: "stretch", className: chatMessageFailedTagStackItemStyle },
80
+ React.createElement("div", { className: mergeStyles(chatMessageFailedTagStyle(theme), editChatMessageFailedTagStyle) }, message.failureReason))),
81
+ React.createElement(Stack.Item, { align: "end" },
82
+ React.createElement(InputBoxButton, { className: editingButtonStyle, ariaLabel: strings.editBoxCancelButton, tooltipContent: strings.editBoxCancelButton, onRenderIcon: onRenderThemedCancelIcon, onClick: () => {
83
+ onCancel && onCancel(message.messageId);
84
+ }, id: 'dismissIconWrapper' })),
85
+ React.createElement(Stack.Item, { align: "end" },
86
+ React.createElement(InputBoxButton, { className: editingButtonStyle, ariaLabel: strings.editBoxSubmitButton, tooltipContent: strings.editBoxSubmitButton, onRenderIcon: onRenderThemedSubmitIcon, onClick: (e) => {
87
+ submitEnabled &&
88
+ onSubmit(textValue, message.metadata, {
89
+ attachedFilesMetadata
90
+ });
91
+ e.stopPropagation();
92
+ }, id: 'submitIconWrapper' }))),
91
93
  onRenderFileUploads()));
92
94
  };
93
95
  const bodyClassName = mergeClasses(editContainerStyles.body, message.failureReason !== undefined ? editContainerStyles.bodyError : editContainerStyles.bodyDefault);
@@ -1 +1 @@
1
- {"version":3,"file":"ChatMessageComponentAsEditBox.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { concatStyleSets, Icon, ITextField, mergeStyles, Stack } from '@fluentui/react';\nimport { ChatMyMessage } from '@fluentui-contrib/react-chat';\nimport { mergeClasses } from '@fluentui/react-components';\nimport { _formatString } from '@internal/acs-ui-common';\nimport { useTheme } from '../../theming/FluentThemeProvider';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\n\nimport { editBoxStyle, inputBoxIcon, editingButtonStyle, editBoxStyleSet } from '../styles/EditBox.styles';\nimport { InputBoxButton, InputBoxComponent } from '../InputBoxComponent';\nimport { MessageThreadStrings } from '../MessageThread';\nimport { useChatMyMessageStyles } from '../styles/MessageThread.styles';\nimport { ChatMessage } from '../../types';\nimport { _FileUploadCards } from '../FileUploadCards';\nimport { FileMetadata } from '../FileDownloadCards';\nimport {\n chatMessageFailedTagStyle,\n chatMessageFailedTagStackItemStyle,\n editChatMessageButtonsStackStyle,\n useChatMessageEditContainerStyles\n} from '../styles/ChatMessageComponent.styles';\n/* @conditional-compile-remove(mention) */\nimport { MentionLookupOptions } from '../MentionPopover';\n\nconst MAXIMUM_LENGTH_OF_MESSAGE = 8000;\n\nconst onRenderCancelIcon = (color: string): JSX.Element => {\n const className = mergeStyles(inputBoxIcon, { color });\n return <Icon iconName={'EditBoxCancel'} className={className} />;\n};\n\nconst onRenderSubmitIcon = (color: string): JSX.Element => {\n const className = mergeStyles(inputBoxIcon, { color });\n return <Icon iconName={'EditBoxSubmit'} className={className} />;\n};\n\n/** @private */\nexport type ChatMessageComponentAsEditBoxProps = {\n onCancel?: (messageId: string) => void;\n onSubmit: (\n text: string,\n metadata?: Record<string, string>,\n options?: {\n attachedFilesMetadata?: FileMetadata[];\n }\n ) => void;\n message: ChatMessage;\n strings: MessageThreadStrings;\n /* @conditional-compile-remove(mention) */\n mentionLookupOptions?: MentionLookupOptions;\n};\n\ntype MessageState = 'OK' | 'too short' | 'too long';\n\n/**\n * @private\n */\nexport const ChatMessageComponentAsEditBox = (props: ChatMessageComponentAsEditBoxProps): JSX.Element => {\n const { onCancel, onSubmit, strings, message } = props;\n /* @conditional-compile-remove(mention) */\n const { mentionLookupOptions } = props;\n\n const [textValue, setTextValue] = useState<string>(message.content || '');\n\n const [attachedFilesMetadata, setAttachedFilesMetadata] = React.useState(getMessageAttachedFilesMetadata(message));\n const editTextFieldRef = React.useRef<ITextField>(null);\n const theme = useTheme();\n const messageState = getMessageState(textValue, attachedFilesMetadata ?? []);\n const submitEnabled = messageState === 'OK';\n\n const editContainerStyles = useChatMessageEditContainerStyles();\n const chatMyMessageStyles = useChatMyMessageStyles();\n\n useEffect(() => {\n editTextFieldRef.current?.focus();\n }, []);\n\n const setText = (event?: React.FormEvent<HTMLInputElement | HTMLTextAreaElement>, newValue?: string): void => {\n setTextValue(newValue ?? '');\n };\n\n const textTooLongMessage =\n messageState === 'too long'\n ? _formatString(strings.editBoxTextLimit, { limitNumber: `${MAXIMUM_LENGTH_OF_MESSAGE}` })\n : undefined;\n\n const onRenderThemedCancelIcon = useCallback(\n (isHover: boolean) => onRenderCancelIcon(isHover ? theme.palette.accent : theme.palette.neutralSecondary),\n [theme.palette.neutralSecondary, theme.palette.accent]\n );\n\n const onRenderThemedSubmitIcon = useCallback(\n (isHover: boolean) => onRenderSubmitIcon(isHover ? theme.palette.accent : theme.palette.neutralSecondary),\n [theme.palette.neutralSecondary, theme.palette.accent]\n );\n\n const editBoxStyles = useMemo(() => {\n return concatStyleSets(editBoxStyleSet, { textField: { borderColor: theme.palette.themePrimary } });\n }, [theme.palette.themePrimary]);\n\n const onRenderFileUploads = useCallback(() => {\n return (\n !!attachedFilesMetadata &&\n attachedFilesMetadata.length > 0 && (\n <div style={{ margin: '0.25rem' }}>\n <_FileUploadCards\n activeFileUploads={attachedFilesMetadata?.map((file) => ({\n id: file.name,\n filename: file.name,\n progress: 1\n }))}\n onCancelFileUpload={(fileId) => {\n setAttachedFilesMetadata(attachedFilesMetadata?.filter((file) => file.name !== fileId));\n }}\n />\n </div>\n )\n );\n }, [attachedFilesMetadata]);\n\n const getContent = (): JSX.Element => {\n return (\n <>\n <InputBoxComponent\n id={'editbox'}\n textFieldRef={editTextFieldRef}\n inputClassName={editBoxStyle}\n placeholderText={strings.editBoxPlaceholderText}\n textValue={textValue}\n onChange={setText}\n onKeyDown={(ev) => {\n if (ev.key === 'ArrowUp' || ev.key === 'ArrowDown') {\n ev.stopPropagation();\n }\n }}\n onEnterKeyDown={() => {\n submitEnabled &&\n onSubmit(textValue, message.metadata, {\n attachedFilesMetadata\n });\n }}\n supportNewline={false}\n maxLength={MAXIMUM_LENGTH_OF_MESSAGE}\n errorMessage={textTooLongMessage}\n styles={editBoxStyles}\n /* @conditional-compile-remove(mention) */\n mentionLookupOptions={mentionLookupOptions}\n ></InputBoxComponent>\n <Stack\n horizontal\n horizontalAlign=\"end\"\n verticalAlign=\"start\"\n className={editChatMessageButtonsStackStyle}\n tokens={{ childrenGap: '0.25rem' }}\n >\n {message.failureReason && (\n <Stack.Item grow className={chatMessageFailedTagStackItemStyle}>\n <div className={chatMessageFailedTagStyle(theme)}>{message.failureReason}</div>\n </Stack.Item>\n )}\n <InputBoxButton\n className={editingButtonStyle}\n ariaLabel={strings.editBoxCancelButton}\n tooltipContent={strings.editBoxCancelButton}\n onRenderIcon={onRenderThemedCancelIcon}\n onClick={() => {\n onCancel && onCancel(message.messageId);\n }}\n id={'dismissIconWrapper'}\n />\n <InputBoxButton\n className={editingButtonStyle}\n ariaLabel={strings.editBoxSubmitButton}\n tooltipContent={strings.editBoxSubmitButton}\n onRenderIcon={onRenderThemedSubmitIcon}\n onClick={(e) => {\n submitEnabled &&\n onSubmit(textValue, message.metadata, {\n attachedFilesMetadata\n });\n e.stopPropagation();\n }}\n id={'submitIconWrapper'}\n />\n </Stack>\n {onRenderFileUploads()}\n </>\n );\n };\n\n const bodyClassName = mergeClasses(\n editContainerStyles.body,\n message.failureReason !== undefined ? editContainerStyles.bodyError : editContainerStyles.bodyDefault\n );\n return (\n <ChatMyMessage\n root={{\n className: mergeClasses(chatMyMessageStyles.root, editContainerStyles.root)\n }}\n body={{\n className: bodyClassName\n }}\n >\n {getContent()}\n </ChatMyMessage>\n );\n};\n\nconst isMessageTooLong = (messageText: string): boolean => messageText.length > MAXIMUM_LENGTH_OF_MESSAGE;\nconst isMessageEmpty = (messageText: string, attachedFilesMetadata: FileMetadata[]): boolean =>\n messageText.trim().length === 0 && attachedFilesMetadata.length === 0;\nconst getMessageState = (messageText: string, attachedFilesMetadata: FileMetadata[]): MessageState =>\n isMessageEmpty(messageText, attachedFilesMetadata) ? 'too short' : isMessageTooLong(messageText) ? 'too long' : 'OK';\n\n// @TODO: Remove when file-sharing feature becomes stable.\nconst getMessageAttachedFilesMetadata = (message: ChatMessage): FileMetadata[] | undefined => {\n /* @conditional-compile-remove(file-sharing) */\n return message.attachedFilesMetadata;\n return [];\n};\n\"../../../../acs-ui-common/src\""]}
1
+ {"version":3,"file":"ChatMessageComponentAsEditBox.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { concatStyleSets, Icon, ITextField, mergeStyles, Stack } from '@fluentui/react';\nimport { ChatMyMessage } from '@fluentui-contrib/react-chat';\nimport { mergeClasses } from '@fluentui/react-components';\nimport { _formatString } from '@internal/acs-ui-common';\nimport { useTheme } from '../../theming/FluentThemeProvider';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\n\nimport { editBoxStyle, inputBoxIcon, editingButtonStyle, editBoxStyleSet } from '../styles/EditBox.styles';\nimport { InputBoxButton, InputBoxComponent } from '../InputBoxComponent';\nimport { MessageThreadStrings } from '../MessageThread';\nimport { useChatMyMessageStyles } from '../styles/MessageThread.styles';\nimport { ChatMessage } from '../../types';\nimport { _FileUploadCards } from '../FileUploadCards';\nimport { FileMetadata } from '../FileDownloadCards';\nimport {\n chatMessageFailedTagStyle,\n editChatMessageFailedTagStyle,\n chatMessageFailedTagStackItemStyle,\n editChatMessageButtonsStackStyle,\n useChatMessageEditContainerStyles\n} from '../styles/ChatMessageComponent.styles';\n/* @conditional-compile-remove(mention) */\nimport { MentionLookupOptions } from '../MentionPopover';\n\nconst MAXIMUM_LENGTH_OF_MESSAGE = 8000;\n\nconst onRenderCancelIcon = (color: string): JSX.Element => {\n const className = mergeStyles(inputBoxIcon, { color });\n return <Icon iconName={'EditBoxCancel'} className={className} />;\n};\n\nconst onRenderSubmitIcon = (color: string): JSX.Element => {\n const className = mergeStyles(inputBoxIcon, { color });\n return <Icon iconName={'EditBoxSubmit'} className={className} />;\n};\n\n/** @private */\nexport type ChatMessageComponentAsEditBoxProps = {\n onCancel?: (messageId: string) => void;\n onSubmit: (\n text: string,\n metadata?: Record<string, string>,\n options?: {\n attachedFilesMetadata?: FileMetadata[];\n }\n ) => void;\n message: ChatMessage;\n strings: MessageThreadStrings;\n /* @conditional-compile-remove(mention) */\n mentionLookupOptions?: MentionLookupOptions;\n};\n\ntype MessageState = 'OK' | 'too short' | 'too long';\n\n/**\n * @private\n */\nexport const ChatMessageComponentAsEditBox = (props: ChatMessageComponentAsEditBoxProps): JSX.Element => {\n const { onCancel, onSubmit, strings, message } = props;\n /* @conditional-compile-remove(mention) */\n const { mentionLookupOptions } = props;\n\n const [textValue, setTextValue] = useState<string>(message.content || '');\n\n const [attachedFilesMetadata, setAttachedFilesMetadata] = React.useState(getMessageAttachedFilesMetadata(message));\n const editTextFieldRef = React.useRef<ITextField>(null);\n const theme = useTheme();\n const messageState = getMessageState(textValue, attachedFilesMetadata ?? []);\n const submitEnabled = messageState === 'OK';\n\n const editContainerStyles = useChatMessageEditContainerStyles();\n const chatMyMessageStyles = useChatMyMessageStyles();\n\n useEffect(() => {\n editTextFieldRef.current?.focus();\n }, []);\n\n const setText = (event?: React.FormEvent<HTMLInputElement | HTMLTextAreaElement>, newValue?: string): void => {\n setTextValue(newValue ?? '');\n };\n\n const textTooLongMessage =\n messageState === 'too long'\n ? _formatString(strings.editBoxTextLimit, { limitNumber: `${MAXIMUM_LENGTH_OF_MESSAGE}` })\n : undefined;\n\n const onRenderThemedCancelIcon = useCallback(\n (isHover: boolean) => onRenderCancelIcon(isHover ? theme.palette.accent : theme.palette.neutralSecondary),\n [theme.palette.neutralSecondary, theme.palette.accent]\n );\n\n const onRenderThemedSubmitIcon = useCallback(\n (isHover: boolean) => onRenderSubmitIcon(isHover ? theme.palette.accent : theme.palette.neutralSecondary),\n [theme.palette.neutralSecondary, theme.palette.accent]\n );\n\n const editBoxStyles = useMemo(() => {\n return concatStyleSets(editBoxStyleSet, { textField: { borderColor: theme.palette.themePrimary } });\n }, [theme.palette.themePrimary]);\n\n const onRenderFileUploads = useCallback(() => {\n return (\n !!attachedFilesMetadata &&\n attachedFilesMetadata.length > 0 && (\n <div style={{ margin: '0.25rem' }}>\n <_FileUploadCards\n activeFileUploads={attachedFilesMetadata?.map((file) => ({\n id: file.name,\n filename: file.name,\n progress: 1\n }))}\n onCancelFileUpload={(fileId) => {\n setAttachedFilesMetadata(attachedFilesMetadata?.filter((file) => file.name !== fileId));\n }}\n />\n </div>\n )\n );\n }, [attachedFilesMetadata]);\n\n const getContent = (): JSX.Element => {\n return (\n <>\n <InputBoxComponent\n id={'editbox'}\n textFieldRef={editTextFieldRef}\n inputClassName={editBoxStyle}\n placeholderText={strings.editBoxPlaceholderText}\n textValue={textValue}\n onChange={setText}\n onKeyDown={(ev) => {\n if (ev.key === 'ArrowUp' || ev.key === 'ArrowDown') {\n ev.stopPropagation();\n }\n }}\n onEnterKeyDown={() => {\n submitEnabled &&\n onSubmit(textValue, message.metadata, {\n attachedFilesMetadata\n });\n }}\n supportNewline={false}\n maxLength={MAXIMUM_LENGTH_OF_MESSAGE}\n errorMessage={textTooLongMessage}\n styles={editBoxStyles}\n /* @conditional-compile-remove(mention) */\n mentionLookupOptions={mentionLookupOptions}\n ></InputBoxComponent>\n <Stack\n horizontal\n horizontalAlign=\"end\"\n className={editChatMessageButtonsStackStyle}\n tokens={{ childrenGap: '0.25rem' }}\n >\n {message.failureReason && (\n <Stack.Item grow align=\"stretch\" className={chatMessageFailedTagStackItemStyle}>\n <div className={mergeStyles(chatMessageFailedTagStyle(theme), editChatMessageFailedTagStyle)}>\n {message.failureReason}\n </div>\n </Stack.Item>\n )}\n <Stack.Item align=\"end\">\n <InputBoxButton\n className={editingButtonStyle}\n ariaLabel={strings.editBoxCancelButton}\n tooltipContent={strings.editBoxCancelButton}\n onRenderIcon={onRenderThemedCancelIcon}\n onClick={() => {\n onCancel && onCancel(message.messageId);\n }}\n id={'dismissIconWrapper'}\n />\n </Stack.Item>\n <Stack.Item align=\"end\">\n <InputBoxButton\n className={editingButtonStyle}\n ariaLabel={strings.editBoxSubmitButton}\n tooltipContent={strings.editBoxSubmitButton}\n onRenderIcon={onRenderThemedSubmitIcon}\n onClick={(e) => {\n submitEnabled &&\n onSubmit(textValue, message.metadata, {\n attachedFilesMetadata\n });\n e.stopPropagation();\n }}\n id={'submitIconWrapper'}\n />\n </Stack.Item>\n </Stack>\n {onRenderFileUploads()}\n </>\n );\n };\n\n const bodyClassName = mergeClasses(\n editContainerStyles.body,\n message.failureReason !== undefined ? editContainerStyles.bodyError : editContainerStyles.bodyDefault\n );\n return (\n <ChatMyMessage\n root={{\n className: mergeClasses(chatMyMessageStyles.root, editContainerStyles.root)\n }}\n body={{\n className: bodyClassName\n }}\n >\n {getContent()}\n </ChatMyMessage>\n );\n};\n\nconst isMessageTooLong = (messageText: string): boolean => messageText.length > MAXIMUM_LENGTH_OF_MESSAGE;\nconst isMessageEmpty = (messageText: string, attachedFilesMetadata: FileMetadata[]): boolean =>\n messageText.trim().length === 0 && attachedFilesMetadata.length === 0;\nconst getMessageState = (messageText: string, attachedFilesMetadata: FileMetadata[]): MessageState =>\n isMessageEmpty(messageText, attachedFilesMetadata) ? 'too short' : isMessageTooLong(messageText) ? 'too long' : 'OK';\n\n// @TODO: Remove when file-sharing feature becomes stable.\nconst getMessageAttachedFilesMetadata = (message: ChatMessage): FileMetadata[] | undefined => {\n /* @conditional-compile-remove(file-sharing) */\n return message.attachedFilesMetadata;\n return [];\n};\n\"../../../../acs-ui-common/src\""]}
@@ -23,6 +23,10 @@ export declare const chatMessageEditedTagStyle: (theme: Theme) => string;
23
23
  * @private
24
24
  */
25
25
  export declare const chatMessageFailedTagStyle: (theme: Theme) => string;
26
+ /**
27
+ * @private
28
+ */
29
+ export declare const editChatMessageFailedTagStyle: string;
26
30
  /**
27
31
  * @private
28
32
  */
@@ -67,18 +67,23 @@ export const chatMessageFailedTagStyle = (theme) => mergeStyles({
67
67
  fontSize: theme.fonts.smallPlus.fontSize,
68
68
  lineHeight: '1rem'
69
69
  });
70
+ /**
71
+ * @private
72
+ */
73
+ export const editChatMessageFailedTagStyle = mergeStyles({
74
+ marginBottom: '0.5rem'
75
+ });
70
76
  /**
71
77
  * @private
72
78
  */
73
79
  export const chatMessageFailedTagStackItemStyle = mergeStyles({
74
- alignSelf: 'end',
75
- paddingBottom: '0.25rem'
80
+ alignSelf: 'end'
76
81
  });
77
82
  /**
78
83
  * @private
79
84
  */
80
85
  export const editChatMessageButtonsStackStyle = mergeStyles({
81
- padding: '0 0.5rem 0.5rem 0.5rem',
86
+ padding: '0 0.5rem',
82
87
  marginTop: '-0.25rem'
83
88
  });
84
89
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ChatMessageComponent.styles.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/styles/ChatMessageComponent.styles.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n mergeStyles,\n IStyle,\n FontWeights,\n Theme,\n IContextualMenuItemStyles,\n ITheme,\n IIconStyles\n} from '@fluentui/react';\nimport { _pxToRem } from '@internal/acs-ui-common';\nimport { makeStyles, shorthands, tokens } from '@fluentui/react-components';\nimport {\n defaultSendBoxInactiveBorderThicknessREM,\n defaultSendBoxActiveBorderThicknessREM\n} from '../styles/SendBox.styles';\n\nconst MINIMUM_TOUCH_TARGET_HEIGHT_REM = 3;\nconst errorTextColor = 'var(--errorText)';\n\n/**\n * @private\n */\nexport const chatActionsCSS: IStyle = {\n 'ul&': {\n right: '0',\n left: 'auto',\n top: '-1.2rem',\n bottom: 'auto',\n position: 'absolute'\n },\n '& a': {\n margin: '0',\n padding: '0',\n border: '0'\n }\n};\n\n/**\n * @private\n */\nexport const iconWrapperStyle = (theme: ITheme, isSubMenuOpen: boolean): IIconStyles => ({\n root: {\n margin: _pxToRem(3),\n // Show hover styles when the Edit/Delete menu is showing as this action button is still considered 'active'\n color: isSubMenuOpen ? theme.palette.black : theme.palette.neutralPrimary,\n strokeWidth: isSubMenuOpen ? _pxToRem(0.5) : _pxToRem(0),\n stroke: theme.palette.black,\n ':hover, :focus': {\n color: theme.palette.black,\n strokeWidth: _pxToRem(0.5)\n }\n }\n});\n\n/**\n * @private\n */\nexport const chatMessageDateStyle = mergeStyles({\n color: tokens.colorNeutralForeground2,\n fontWeight: FontWeights.regular,\n fontSize: '0.75rem'\n});\n\n/**\n * @private\n */\nexport const chatMessageAuthorStyle = mergeStyles({\n fontWeight: FontWeights.semibold,\n fontSize: '0.75rem'\n});\n\n/**\n * @private\n */\nexport const chatMessageEditedTagStyle = (theme: Theme): string =>\n mergeStyles({ fontWeight: FontWeights.semibold, color: theme.palette.neutralSecondary });\n\n/**\n * @private\n */\nexport const chatMessageFailedTagStyle = (theme: Theme): string =>\n mergeStyles({\n fontWeight: FontWeights.regular,\n color: theme.semanticColors.errorText,\n fontSize: theme.fonts.smallPlus.fontSize,\n lineHeight: '1rem'\n });\n\n/**\n * @private\n */\nexport const chatMessageFailedTagStackItemStyle = mergeStyles({\n alignSelf: 'end',\n paddingBottom: '0.25rem'\n});\n\n/**\n * @private\n */\nexport const editChatMessageButtonsStackStyle = mergeStyles({\n padding: '0 0.5rem 0.5rem 0.5rem',\n marginTop: '-0.25rem'\n});\n\n/**\n * @private\n */\nexport const chatMessageMenuStyle = mergeStyles({\n minWidth: '8.5rem',\n height: 'max-content',\n cursor: 'pointer',\n overflow: 'hidden'\n});\n\n/**\n * @private\n */\nexport const useChatMessageEditContainerStyles = makeStyles({\n root: {\n paddingTop: '1.25rem' //height of the menu button + marginBottom\n },\n body: {\n ...shorthands.padding(0),\n backgroundColor: 'transparent',\n boxSizing: 'border-box',\n ...shorthands.border(`${defaultSendBoxInactiveBorderThicknessREM}rem`, 'solid'),\n ...shorthands.borderRadius(tokens.borderRadiusMedium),\n // The border thickness changes on hover, to prevent the border thickness change causing the\n // input box to shift we apply a margin to compensate. This margin is then removed on hover when the border is thicker.\n ...shorthands.margin(`${defaultSendBoxActiveBorderThicknessREM - defaultSendBoxInactiveBorderThicknessREM}rem`),\n // Width should be updated on hover to include the border width change\n width: `calc(100% - ${defaultSendBoxActiveBorderThicknessREM}rem)`,\n\n '&:hover, &:active, &:focus, &:focus-within': {\n ...shorthands.margin('0rem'),\n ...shorthands.borderWidth(`${defaultSendBoxActiveBorderThicknessREM}rem`),\n width: '100%'\n }\n },\n bodyError: {\n ...shorthands.borderColor(errorTextColor)\n },\n bodyDefault: {\n ...shorthands.borderColor(tokens.colorNeutralStrokeAccessible),\n '&:hover, &:active, &:focus, &:focus-within': {\n ...shorthands.borderColor(tokens.colorCompoundBrandStroke)\n }\n }\n});\n\n/**\n * Styles that can be applied to ensure flyout items have the minimum touch target size.\n *\n * @private\n */\nexport const menuItemIncreasedSizeStyles: IContextualMenuItemStyles = {\n root: {\n height: `${MINIMUM_TOUCH_TARGET_HEIGHT_REM}rem`,\n lineHeight: `${MINIMUM_TOUCH_TARGET_HEIGHT_REM}rem`,\n maxHeight: 'unset'\n },\n linkContent: {\n height: `${MINIMUM_TOUCH_TARGET_HEIGHT_REM}rem`,\n lineHeight: `${MINIMUM_TOUCH_TARGET_HEIGHT_REM}rem`,\n maxHeight: 'unset'\n },\n icon: {\n maxHeight: 'unset'\n }\n};\n\n/**\n * @private\n */\nexport const menuIconStyleSet = {\n root: {\n height: 'calc(100% - 8px)', // Adjust for the pixel margin Fluent applies\n width: '1.25rem'\n }\n};\n\n/**\n * @private\n */\nexport const menuSubIconStyleSet = {\n root: {\n height: 'unset',\n lineHeight: '100%',\n width: '1.25rem'\n }\n};\n\"../../../../acs-ui-common/src\""]}
1
+ {"version":3,"file":"ChatMessageComponent.styles.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/styles/ChatMessageComponent.styles.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EACL,WAAW,EAEX,WAAW,EAKZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,QAAQ,EAAE,sCAAgC;AACnD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EACL,wCAAwC,EACxC,sCAAsC,EACvC,MAAM,0BAA0B,CAAC;AAElC,MAAM,+BAA+B,GAAG,CAAC,CAAC;AAC1C,MAAM,cAAc,GAAG,kBAAkB,CAAC;AAE1C;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAW;IACpC,KAAK,EAAE;QACL,KAAK,EAAE,GAAG;QACV,IAAI,EAAE,MAAM;QACZ,GAAG,EAAE,SAAS;QACd,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,UAAU;KACrB;IACD,KAAK,EAAE;QACL,MAAM,EAAE,GAAG;QACX,OAAO,EAAE,GAAG;QACZ,MAAM,EAAE,GAAG;KACZ;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAE,aAAsB,EAAe,EAAE,CAAC,CAAC;IACvF,IAAI,EAAE;QACJ,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACnB,4GAA4G;QAC5G,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc;QACzE,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QACxD,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK;QAC3B,gBAAgB,EAAE;YAChB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK;YAC1B,WAAW,EAAE,QAAQ,CAAC,GAAG,CAAC;SAC3B;KACF;CACF,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,WAAW,CAAC;IAC9C,KAAK,EAAE,MAAM,CAAC,uBAAuB;IACrC,UAAU,EAAE,WAAW,CAAC,OAAO;IAC/B,QAAQ,EAAE,SAAS;CACpB,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,WAAW,CAAC;IAChD,UAAU,EAAE,WAAW,CAAC,QAAQ;IAChC,QAAQ,EAAE,SAAS;CACpB,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,KAAY,EAAU,EAAE,CAChE,WAAW,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;AAE3F;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,KAAY,EAAU,EAAE,CAChE,WAAW,CAAC;IACV,UAAU,EAAE,WAAW,CAAC,OAAO;IAC/B,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,SAAS;IACrC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ;IACxC,UAAU,EAAE,MAAM;CACnB,CAAC,CAAC;AAEL;;GAEG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,WAAW,CAAC;IACvD,YAAY,EAAE,QAAQ;CACvB,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,WAAW,CAAC;IAC5D,SAAS,EAAE,KAAK;CACjB,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,WAAW,CAAC;IAC1D,OAAO,EAAE,UAAU;IACnB,SAAS,EAAE,UAAU;CACtB,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,WAAW,CAAC;IAC9C,QAAQ,EAAE,QAAQ;IAClB,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,SAAS;IACjB,QAAQ,EAAE,QAAQ;CACnB,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,UAAU,CAAC;IAC1D,IAAI,EAAE;QACJ,UAAU,EAAE,SAAS,CAAC,0CAA0C;KACjE;IACD,IAAI,0FACC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,KACxB,eAAe,EAAE,aAAa,EAC9B,SAAS,EAAE,YAAY,KACpB,UAAU,CAAC,MAAM,CAAC,GAAG,wCAAwC,KAAK,EAAE,OAAO,CAAC,GAC5E,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,kBAAkB,CAAC,GAGlD,UAAU,CAAC,MAAM,CAAC,GAAG,sCAAsC,GAAG,wCAAwC,KAAK,CAAC;QAC/G,sEAAsE;QACtE,KAAK,EAAE,eAAe,sCAAsC,MAAM,EAElE,4CAA4C,gDACvC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,GACzB,UAAU,CAAC,WAAW,CAAC,GAAG,sCAAsC,KAAK,CAAC,KACzE,KAAK,EAAE,MAAM,MAEhB;IACD,SAAS,oBACJ,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,CAC1C;IACD,WAAW,kCACN,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,4BAA4B,CAAC,KAC9D,4CAA4C,oBACvC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,wBAAwB,CAAC,IAE7D;CACF,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAA8B;IACpE,IAAI,EAAE;QACJ,MAAM,EAAE,GAAG,+BAA+B,KAAK;QAC/C,UAAU,EAAE,GAAG,+BAA+B,KAAK;QACnD,SAAS,EAAE,OAAO;KACnB;IACD,WAAW,EAAE;QACX,MAAM,EAAE,GAAG,+BAA+B,KAAK;QAC/C,UAAU,EAAE,GAAG,+BAA+B,KAAK;QACnD,SAAS,EAAE,OAAO;KACnB;IACD,IAAI,EAAE;QACJ,SAAS,EAAE,OAAO;KACnB;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,IAAI,EAAE;QACJ,MAAM,EAAE,kBAAkB;QAC1B,KAAK,EAAE,SAAS;KACjB;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,IAAI,EAAE;QACJ,MAAM,EAAE,OAAO;QACf,UAAU,EAAE,MAAM;QAClB,KAAK,EAAE,SAAS;KACjB;CACF,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n mergeStyles,\n IStyle,\n FontWeights,\n Theme,\n IContextualMenuItemStyles,\n ITheme,\n IIconStyles\n} from '@fluentui/react';\nimport { _pxToRem } from '@internal/acs-ui-common';\nimport { makeStyles, shorthands, tokens } from '@fluentui/react-components';\nimport {\n defaultSendBoxInactiveBorderThicknessREM,\n defaultSendBoxActiveBorderThicknessREM\n} from '../styles/SendBox.styles';\n\nconst MINIMUM_TOUCH_TARGET_HEIGHT_REM = 3;\nconst errorTextColor = 'var(--errorText)';\n\n/**\n * @private\n */\nexport const chatActionsCSS: IStyle = {\n 'ul&': {\n right: '0',\n left: 'auto',\n top: '-1.2rem',\n bottom: 'auto',\n position: 'absolute'\n },\n '& a': {\n margin: '0',\n padding: '0',\n border: '0'\n }\n};\n\n/**\n * @private\n */\nexport const iconWrapperStyle = (theme: ITheme, isSubMenuOpen: boolean): IIconStyles => ({\n root: {\n margin: _pxToRem(3),\n // Show hover styles when the Edit/Delete menu is showing as this action button is still considered 'active'\n color: isSubMenuOpen ? theme.palette.black : theme.palette.neutralPrimary,\n strokeWidth: isSubMenuOpen ? _pxToRem(0.5) : _pxToRem(0),\n stroke: theme.palette.black,\n ':hover, :focus': {\n color: theme.palette.black,\n strokeWidth: _pxToRem(0.5)\n }\n }\n});\n\n/**\n * @private\n */\nexport const chatMessageDateStyle = mergeStyles({\n color: tokens.colorNeutralForeground2,\n fontWeight: FontWeights.regular,\n fontSize: '0.75rem'\n});\n\n/**\n * @private\n */\nexport const chatMessageAuthorStyle = mergeStyles({\n fontWeight: FontWeights.semibold,\n fontSize: '0.75rem'\n});\n\n/**\n * @private\n */\nexport const chatMessageEditedTagStyle = (theme: Theme): string =>\n mergeStyles({ fontWeight: FontWeights.semibold, color: theme.palette.neutralSecondary });\n\n/**\n * @private\n */\nexport const chatMessageFailedTagStyle = (theme: Theme): string =>\n mergeStyles({\n fontWeight: FontWeights.regular,\n color: theme.semanticColors.errorText,\n fontSize: theme.fonts.smallPlus.fontSize,\n lineHeight: '1rem'\n });\n\n/**\n * @private\n */\nexport const editChatMessageFailedTagStyle = mergeStyles({\n marginBottom: '0.5rem'\n});\n\n/**\n * @private\n */\nexport const chatMessageFailedTagStackItemStyle = mergeStyles({\n alignSelf: 'end'\n});\n\n/**\n * @private\n */\nexport const editChatMessageButtonsStackStyle = mergeStyles({\n padding: '0 0.5rem',\n marginTop: '-0.25rem'\n});\n\n/**\n * @private\n */\nexport const chatMessageMenuStyle = mergeStyles({\n minWidth: '8.5rem',\n height: 'max-content',\n cursor: 'pointer',\n overflow: 'hidden'\n});\n\n/**\n * @private\n */\nexport const useChatMessageEditContainerStyles = makeStyles({\n root: {\n paddingTop: '1.25rem' //height of the menu button + marginBottom\n },\n body: {\n ...shorthands.padding(0),\n backgroundColor: 'transparent',\n boxSizing: 'border-box',\n ...shorthands.border(`${defaultSendBoxInactiveBorderThicknessREM}rem`, 'solid'),\n ...shorthands.borderRadius(tokens.borderRadiusMedium),\n // The border thickness changes on hover, to prevent the border thickness change causing the\n // input box to shift we apply a margin to compensate. This margin is then removed on hover when the border is thicker.\n ...shorthands.margin(`${defaultSendBoxActiveBorderThicknessREM - defaultSendBoxInactiveBorderThicknessREM}rem`),\n // Width should be updated on hover to include the border width change\n width: `calc(100% - ${defaultSendBoxActiveBorderThicknessREM}rem)`,\n\n '&:hover, &:active, &:focus, &:focus-within': {\n ...shorthands.margin('0rem'),\n ...shorthands.borderWidth(`${defaultSendBoxActiveBorderThicknessREM}rem`),\n width: '100%'\n }\n },\n bodyError: {\n ...shorthands.borderColor(errorTextColor)\n },\n bodyDefault: {\n ...shorthands.borderColor(tokens.colorNeutralStrokeAccessible),\n '&:hover, &:active, &:focus, &:focus-within': {\n ...shorthands.borderColor(tokens.colorCompoundBrandStroke)\n }\n }\n});\n\n/**\n * Styles that can be applied to ensure flyout items have the minimum touch target size.\n *\n * @private\n */\nexport const menuItemIncreasedSizeStyles: IContextualMenuItemStyles = {\n root: {\n height: `${MINIMUM_TOUCH_TARGET_HEIGHT_REM}rem`,\n lineHeight: `${MINIMUM_TOUCH_TARGET_HEIGHT_REM}rem`,\n maxHeight: 'unset'\n },\n linkContent: {\n height: `${MINIMUM_TOUCH_TARGET_HEIGHT_REM}rem`,\n lineHeight: `${MINIMUM_TOUCH_TARGET_HEIGHT_REM}rem`,\n maxHeight: 'unset'\n },\n icon: {\n maxHeight: 'unset'\n }\n};\n\n/**\n * @private\n */\nexport const menuIconStyleSet = {\n root: {\n height: 'calc(100% - 8px)', // Adjust for the pixel margin Fluent applies\n width: '1.25rem'\n }\n};\n\n/**\n * @private\n */\nexport const menuSubIconStyleSet = {\n root: {\n height: 'unset',\n lineHeight: '100%',\n width: '1.25rem'\n }\n};\n\"../../../../acs-ui-common/src\""]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@azure/communication-react",
3
- "version": "1.9.0-alpha-202310170013",
3
+ "version": "1.9.0-alpha-202310181643",
4
4
  "sideEffects": false,
5
5
  "description": "React library for building modern communication user experiences utilizing Azure Communication Services",
6
6
  "keywords": [
@@ -51,7 +51,7 @@
51
51
  "uuid": "^9.0.0"
52
52
  },
53
53
  "peerDependencies": {
54
- "@azure/communication-calling": "1.17.1-beta.5",
54
+ "@azure/communication-calling": "1.18.2-beta.1",
55
55
  "@azure/communication-calling-effects": "1.0.1",
56
56
  "@azure/communication-chat": "1.4.0-beta.1",
57
57
  "@types/react": ">=16.8.0 <19.0.0",
@@ -98,13 +98,13 @@
98
98
  "@azure/core-auth": "^1.4.0",
99
99
  "@babel/cli": "^7.16.0",
100
100
  "@babel/core": "^7.16.0",
101
- "@internal/calling-component-bindings": "1.9.0-alpha-202310170013",
102
- "@internal/calling-stateful-client": "1.9.0-alpha-202310170013",
103
- "@internal/chat-component-bindings": "1.9.0-alpha-202310170013",
104
- "@internal/chat-stateful-client": "1.9.0-alpha-202310170013",
105
- "@internal/fake-backends": "1.9.0-alpha-202310170013",
106
- "@internal/react-components": "1.9.0-alpha-202310170013",
107
- "@internal/react-composites": "1.9.0-alpha-202310170013",
101
+ "@internal/calling-component-bindings": "1.9.0-alpha-202310181643",
102
+ "@internal/calling-stateful-client": "1.9.0-alpha-202310181643",
103
+ "@internal/chat-component-bindings": "1.9.0-alpha-202310181643",
104
+ "@internal/chat-stateful-client": "1.9.0-alpha-202310181643",
105
+ "@internal/fake-backends": "1.9.0-alpha-202310181643",
106
+ "@internal/react-components": "1.9.0-alpha-202310181643",
107
+ "@internal/react-composites": "1.9.0-alpha-202310181643",
108
108
  "@microsoft/api-documenter": "~7.12.11",
109
109
  "@microsoft/api-extractor": "~7.18.0",
110
110
  "@rollup/plugin-json": "^4.1.0",