@azure/communication-react 1.27.0-alpha-202505100017 → 1.27.0-alpha-202505140018
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/dist/communication-react.d.ts +105 -8
- package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-DtjrPSbz.js → ChatMessageComponentAsRichTextEditBox-D-rMS-Hv.js} +2 -2
- package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-DtjrPSbz.js.map → ChatMessageComponentAsRichTextEditBox-D-rMS-Hv.js.map} +1 -1
- package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-EO_LtrUC.js → RichTextSendBoxWrapper-CkWpS6-b.js} +2 -2
- package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-EO_LtrUC.js.map → RichTextSendBoxWrapper-CkWpS6-b.js.map} +1 -1
- package/dist/dist-cjs/communication-react/{index-D-NUewFY.js → index-Qeoq3j5U.js} +11 -12
- package/dist/dist-cjs/communication-react/{index-D-NUewFY.js.map → index-Qeoq3j5U.js.map} +1 -1
- package/dist/dist-cjs/communication-react/index.js +1 -1
- package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
- package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
- package/dist/dist-esm/acs-ui-javascript-loaders/src/callCompositeLoader.d.ts +27 -3
- package/dist/dist-esm/acs-ui-javascript-loaders/src/callCompositeLoader.js +12 -2
- package/dist/dist-esm/acs-ui-javascript-loaders/src/callCompositeLoader.js.map +1 -1
- package/dist/dist-esm/acs-ui-javascript-loaders/src/callWithChatCompositeLoader.d.ts +31 -3
- package/dist/dist-esm/acs-ui-javascript-loaders/src/callWithChatCompositeLoader.js +12 -2
- package/dist/dist-esm/acs-ui-javascript-loaders/src/callWithChatCompositeLoader.js.map +1 -1
- package/dist/dist-esm/acs-ui-javascript-loaders/src/chatCompositeLoader.d.ts +22 -3
- package/dist/dist-esm/acs-ui-javascript-loaders/src/chatCompositeLoader.js +11 -2
- package/dist/dist-esm/acs-ui-javascript-loaders/src/chatCompositeLoader.js.map +1 -1
- package/dist/dist-esm/acs-ui-javascript-loaders/src/outboundCallCompositeLoader.d.ts +29 -3
- package/dist/dist-esm/acs-ui-javascript-loaders/src/outboundCallCompositeLoader.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/CaptionsBanner.js +5 -7
- package/dist/dist-esm/react-components/src/components/CaptionsBanner.js.map +1 -1
- package/package.json +1 -1
@@ -1925,14 +1925,38 @@ export declare type CallCompositeIcons = {
|
|
1925
1925
|
*
|
1926
1926
|
* @public
|
1927
1927
|
*/
|
1928
|
-
export declare
|
1928
|
+
export declare interface CallCompositeLoaderProps extends Partial<BaseCompositeProps<CallCompositeIcons>> {
|
1929
|
+
/**
|
1930
|
+
* UserId for the local user.
|
1931
|
+
*/
|
1929
1932
|
userId: CommunicationUserIdentifier;
|
1933
|
+
/**
|
1934
|
+
* CommunicationTokenCredential for the local user.
|
1935
|
+
*/
|
1930
1936
|
credential: CommunicationTokenCredential;
|
1937
|
+
/**
|
1938
|
+
* Display name for the local user.
|
1939
|
+
*/
|
1931
1940
|
displayName: string;
|
1941
|
+
/**
|
1942
|
+
* locator for the call
|
1943
|
+
*/
|
1932
1944
|
locator: CallAdapterLocator;
|
1945
|
+
/**
|
1946
|
+
* Options for the {@link AzureCommunicationCallAdapter}
|
1947
|
+
* This is used to configure the call adapter.
|
1948
|
+
*/
|
1933
1949
|
callAdapterOptions?: AzureCommunicationCallAdapterOptions;
|
1950
|
+
/**
|
1951
|
+
* Options for the {@link CallComposite} {@link CallCompositeOptions}
|
1952
|
+
* This is used to configure the call composite.
|
1953
|
+
*/
|
1934
1954
|
callCompositeOptions?: CallCompositeOptions;
|
1935
|
-
|
1955
|
+
/**
|
1956
|
+
* Device form factor for the composite.
|
1957
|
+
*/
|
1958
|
+
formFactor?: 'mobile' | 'desktop';
|
1959
|
+
}
|
1936
1960
|
|
1937
1961
|
/**
|
1938
1962
|
* Optional features of the {@link CallComposite}.
|
@@ -4420,15 +4444,43 @@ export declare type CallWithChatCompositeIcons = {
|
|
4420
4444
|
* - callCompositeOptions: Options for the {@link CallWithChatComposite} {@link CallWithChatCompositeOptions}
|
4421
4445
|
* @public
|
4422
4446
|
*/
|
4423
|
-
export declare
|
4447
|
+
export declare interface CallWithChatCompositeLoaderProps extends Partial<BaseCompositeProps<CallWithChatCompositeIcons>> {
|
4448
|
+
/**
|
4449
|
+
* UserId for the local user.
|
4450
|
+
*/
|
4424
4451
|
userId: CommunicationUserIdentifier;
|
4452
|
+
/**
|
4453
|
+
* CommunicationTokenCredential for the local user.
|
4454
|
+
*/
|
4425
4455
|
credential: CommunicationTokenCredential;
|
4456
|
+
/**
|
4457
|
+
* Display name for the local user.
|
4458
|
+
*/
|
4426
4459
|
displayName: string;
|
4460
|
+
/**
|
4461
|
+
* Azure communication service endpoint. This used for the token and joining the chat thread.
|
4462
|
+
*/
|
4427
4463
|
endpoint: string;
|
4464
|
+
/**
|
4465
|
+
* Locator for the call and the chat thread.
|
4466
|
+
* This is used to join the call and the chat thread.
|
4467
|
+
*/
|
4428
4468
|
locator: CallAndChatLocator;
|
4469
|
+
/**
|
4470
|
+
* Options for the {@link AzureCommunicationCallAdapterOptions}
|
4471
|
+
* This is used to configure the call adapter.
|
4472
|
+
*/
|
4429
4473
|
callAdapterOptions?: AzureCommunicationCallAdapterOptions;
|
4474
|
+
/**
|
4475
|
+
* Options for the {@link CallWithChatComposite} {@link CallWithChatCompositeOptions}
|
4476
|
+
* This is used to configure the call composite.
|
4477
|
+
*/
|
4430
4478
|
callWithChatCompositeOptions?: CallWithChatCompositeOptions;
|
4431
|
-
|
4479
|
+
/**
|
4480
|
+
* Device form factor for the composite.
|
4481
|
+
*/
|
4482
|
+
formFactor?: 'mobile' | 'desktop';
|
4483
|
+
}
|
4432
4484
|
|
4433
4485
|
/**
|
4434
4486
|
* Optional features of the {@link CallWithChatComposite}.
|
@@ -5885,14 +5937,33 @@ export declare type ChatCompositeIcons = {
|
|
5885
5937
|
* options for the {@link ChatComposite} {@link ChatCompositeOptions}.
|
5886
5938
|
* @public
|
5887
5939
|
*/
|
5888
|
-
export declare
|
5940
|
+
export declare interface ChatCompositeLoaderProps extends Partial<BaseCompositeProps<ChatCompositeIcons>> {
|
5941
|
+
/**
|
5942
|
+
* UserId for the local user.
|
5943
|
+
*/
|
5889
5944
|
userId: CommunicationUserIdentifier;
|
5945
|
+
/**
|
5946
|
+
* CommunicationTokenCredential for the local user.
|
5947
|
+
*/
|
5890
5948
|
credential: CommunicationTokenCredential;
|
5949
|
+
/**
|
5950
|
+
* Display name for the local user.
|
5951
|
+
*/
|
5891
5952
|
displayName?: string;
|
5953
|
+
/**
|
5954
|
+
* Communication service endpoint. This is used for the token and joining the chat thread.
|
5955
|
+
*/
|
5892
5956
|
endpoint: string;
|
5957
|
+
/**
|
5958
|
+
* Communication threadId for the chat thread.
|
5959
|
+
*/
|
5893
5960
|
threadId: string;
|
5961
|
+
/**
|
5962
|
+
* Options for the {@link AzureCommunicationChatAdapter}
|
5963
|
+
* This is used to configure the chat adapter.
|
5964
|
+
*/
|
5894
5965
|
chatCompositeOptions?: ChatCompositeOptions;
|
5895
|
-
}
|
5966
|
+
}
|
5896
5967
|
|
5897
5968
|
/**
|
5898
5969
|
* Optional features of the {@link ChatComposite}.
|
@@ -11075,14 +11146,40 @@ export declare interface OptionsDevice {
|
|
11075
11146
|
*
|
11076
11147
|
* @public
|
11077
11148
|
*/
|
11078
|
-
export declare
|
11149
|
+
export declare interface OutboundCallCompositeLoaderProps extends Partial<BaseCompositeProps<CallCompositeIcons>> {
|
11150
|
+
/**
|
11151
|
+
* UserId for the local user.
|
11152
|
+
*/
|
11079
11153
|
userId: CommunicationUserIdentifier;
|
11154
|
+
/**
|
11155
|
+
* CommunicationTokenCredential for the local user.
|
11156
|
+
*/
|
11080
11157
|
credential: CommunicationTokenCredential;
|
11158
|
+
/**
|
11159
|
+
* Display name for the local user.
|
11160
|
+
*/
|
11081
11161
|
displayName: string;
|
11162
|
+
/**
|
11163
|
+
* Participants that will be called.
|
11164
|
+
* This can be a list of either {@link CommunicationUserIdentifier} or string identifiers.
|
11165
|
+
*/
|
11082
11166
|
targetCallees: string[] | StartCallIdentifier[];
|
11167
|
+
/**
|
11168
|
+
* Options for the {@link AzureCommunicationCallAdapter}
|
11169
|
+
* This is used to configure the call adapter.
|
11170
|
+
*/
|
11083
11171
|
callAdapterOptions?: AzureCommunicationCallAdapterOptions;
|
11172
|
+
/**
|
11173
|
+
* Options for the {@link CallComposite} {@link CallCompositeOptions}
|
11174
|
+
* This is used to configure the call composite.
|
11175
|
+
*/
|
11084
11176
|
callCompositeOptions?: CallCompositeOptions;
|
11085
|
-
|
11177
|
+
/**
|
11178
|
+
* Device form factor for the composite.
|
11179
|
+
* This is used to configure the call composite.
|
11180
|
+
*/
|
11181
|
+
formFactor?: 'mobile' | 'desktop';
|
11182
|
+
}
|
11086
11183
|
|
11087
11184
|
/**
|
11088
11185
|
* Different modes and positions of the overflow gallery in the VideoGallery
|
@@ -4,7 +4,7 @@ var react = require('@fluentui/react');
|
|
4
4
|
var reactChat = require('@fluentui-contrib/react-chat');
|
5
5
|
var reactComponents = require('@fluentui/react-components');
|
6
6
|
require('@azure/communication-common');
|
7
|
-
var index = require('./index-
|
7
|
+
var index = require('./index-Qeoq3j5U.js');
|
8
8
|
var React = require('react');
|
9
9
|
require('reselect');
|
10
10
|
require('@azure/communication-calling');
|
@@ -288,4 +288,4 @@ const ChatMessageComponentAsRichTextEditBox = (props) => {
|
|
288
288
|
|
289
289
|
exports.ChatMessageComponentAsRichTextEditBox = ChatMessageComponentAsRichTextEditBox;
|
290
290
|
exports.default = ChatMessageComponentAsRichTextEditBox;
|
291
|
-
//# sourceMappingURL=ChatMessageComponentAsRichTextEditBox-
|
291
|
+
//# sourceMappingURL=ChatMessageComponentAsRichTextEditBox-D-rMS-Hv.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ChatMessageComponentAsRichTextEditBox-DtjrPSbz.js","sources":["../../../../react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.tsx"],"sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { 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';\n/* @conditional-compile-remove(rich-text-editor-image-upload) */\nimport { AttachmentMetadataInProgress } from '@internal/acs-ui-common';\nimport { useTheme } from '../../../theming';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\n/* @conditional-compile-remove(file-sharing-acs) */\nimport { useReducer } from 'react';\nimport { editBoxWidthStyles, richTextEditBoxActionButtonIcon } from '../../styles/EditBox.styles';\nimport { InputBoxButton } from '../../InputBoxButton';\nimport { MessageThreadStrings } from '../../MessageThread';\nimport { useChatMyMessageStyles } from '../../styles/MessageThread.styles';\nimport { ChatMessage } from '../../../types';\nimport { _AttachmentUploadCards } from '../../Attachment/AttachmentUploadCards';\n/* @conditional-compile-remove(file-sharing-acs) */\nimport { AttachmentMetadata } from '@internal/acs-ui-common';\nimport { useChatMessageRichTextEditContainerStyles } from '../../styles/ChatMessageComponent.styles';\nimport { MAXIMUM_LENGTH_OF_MESSAGE, modifyInlineImagesInContentString } from '../../utils/SendBoxUtils';\n/* @conditional-compile-remove(rich-text-editor-image-upload) */\nimport {\n hasIncompleteAttachmentUploads,\n removeBrokenImageContentAndClearImageSizeStyles,\n getContentWithUpdatedInlineImagesInfo,\n isMessageTooLong,\n inlineImageIds\n} from '../../utils/SendBoxUtils';\nimport {\n getMessageState,\n MessageState,\n onRenderCancelIcon,\n onRenderSubmitIcon\n} from '../../utils/ChatMessageComponentAsEditBoxUtils';\n/* @conditional-compile-remove(file-sharing-acs) */\nimport {\n attachmentMetadataReducer,\n getMessageWithAttachmentMetadata,\n doesMessageContainMultipleAttachments\n} from '../../utils/ChatMessageComponentAsEditBoxUtils';\nimport { RichTextEditorComponentRef } from '../../RichTextEditor/RichTextEditor';\nimport { RichTextInputBoxComponent } from '../../RichTextEditor/RichTextInputBoxComponent';\nimport { editBoxRichTextEditorStyle, richTextActionButtonsStyle } from '../../styles/RichTextEditor.styles';\nimport { RichTextSendBoxErrors } from '../../RichTextEditor/RichTextSendBoxErrors';\nimport { useLocale } from '../../../localization';\n/* @conditional-compile-remove(file-sharing-acs) */\nimport { FluentV9ThemeProvider } from '../../../theming/FluentV9ThemeProvider';\n/* @conditional-compile-remove(file-sharing-acs) */\nimport { attachmentUploadCardsStyles } from '../../styles/SendBox.styles';\n/* @conditional-compile-remove(rich-text-editor-image-upload) */\nimport { SendBoxErrorBarError, SendBoxErrorBarType } from '../../SendBoxErrorBar';\n/* @conditional-compile-remove(rich-text-editor-image-upload) */\nimport { BROKEN_IMAGE_SVG_DATA } from '../../styles/Common.style';\n/* @conditional-compile-remove(rich-text-editor-image-upload) */\nimport { getPreviousInlineImages } from '../../utils/RichTextEditorUtils';\n\n/** @private */\nexport type ChatMessageComponentAsRichTextEditBoxProps = {\n onCancel?: (messageId: string) => void;\n onSubmit: (\n text: string,\n /* @conditional-compile-remove(file-sharing-acs) */\n attachmentMetadata?: AttachmentMetadata[]\n ) => void;\n message: ChatMessage;\n strings: MessageThreadStrings;\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onPaste?: (event: { content: DocumentFragment }) => void;\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onRemoveInlineImage?: (imageAttributes: Record<string, string>, messageId: string) => void;\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onInsertInlineImage?: (imageAttributes: Record<string, string>, messageId: string) => void;\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n inlineImagesWithProgress?: AttachmentMetadataInProgress[];\n};\n\n/**\n * @private\n */\nexport const ChatMessageComponentAsRichTextEditBox = (\n props: ChatMessageComponentAsRichTextEditBoxProps\n): JSX.Element => {\n const {\n onCancel,\n onSubmit,\n strings,\n message,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onPaste,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onInsertInlineImage,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n inlineImagesWithProgress,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onRemoveInlineImage\n } = props;\n\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n const [initialInlineImages, setInitialInlineImages] = useState<Record<string, string>[]>([]);\n\n const initialContent = useMemo(() => {\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n const content = message.content;\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n setInitialInlineImages(getPreviousInlineImages(content));\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n const document = new DOMParser().parseFromString(content ?? '', 'text/html');\n // The broken image element is a div element with all the attributes of the original image element.\n // We need to convert it to a img element so the Rooster knows how to render it.\n // And we need to copy over all the attributes such as id, width, etc.\n // which is needed for sending the message with the images correctly.\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n document.querySelectorAll('.broken-image-wrapper').forEach((brokenImage) => {\n const imageElement = document.createElement('img');\n const attributes = brokenImage.attributes;\n for (const attribute of attributes) {\n imageElement.setAttribute(attribute.name, attribute.value);\n }\n\n imageElement.src = BROKEN_IMAGE_SVG_DATA;\n imageElement.style.width = '3rem';\n imageElement.style.height = '3rem';\n brokenImage.parentElement?.replaceChild(imageElement, brokenImage);\n });\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n return document.body.innerHTML;\n return message.content;\n }, [message]);\n\n const [contentValue, setContentValue] = useState<string>(initialContent || '');\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n const [contentValueWithInlineImagesOverflow, setContentValueWithInlineImagesOverflow] = useState(false);\n\n /* @conditional-compile-remove(file-sharing-acs) */\n const [attachmentMetadata, handleAttachmentAction] = useReducer(\n attachmentMetadataReducer,\n getMessageWithAttachmentMetadata(message) ?? []\n );\n\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n const [attachmentUploadsPendingError, setAttachmentUploadsPendingError] = useState<SendBoxErrorBarError | undefined>(\n undefined\n );\n const editTextFieldRef = React.useRef<RichTextEditorComponentRef>(null);\n const theme = useTheme();\n const messageState: MessageState = useMemo(() => {\n // get plain text content from the editor to check if the message is empty\n // as the content may contain tags even when the content is empty\n const plainTextContent = editTextFieldRef.current?.getPlainContent() ?? contentValue;\n let messageLengthState = getMessageState(\n plainTextContent,\n /* @conditional-compile-remove(file-sharing-acs) */ attachmentMetadata ?? []\n );\n\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n const imageIds = inlineImageIds(contentValue);\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n if (messageLengthState !== 'OK' && imageIds.length > 0) {\n // Check if too long\n if (isMessageTooLong(contentValue.length)) {\n messageLengthState = 'too long';\n } else {\n messageLengthState = 'OK';\n }\n }\n return messageLengthState;\n }, [/* @conditional-compile-remove(file-sharing-acs) */ attachmentMetadata, contentValue]);\n\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n const imageUploadErrorMessage = useMemo(() => {\n return inlineImagesWithProgress?.filter((image) => image.error).pop()?.error?.message;\n }, [inlineImagesWithProgress]);\n\n const editContainerStyles = useChatMessageRichTextEditContainerStyles();\n const chatMyMessageStyles = useChatMyMessageStyles();\n const locale = useLocale().strings;\n\n const setContent = useCallback((newValue?: string): void => {\n setContentValue(newValue ?? '');\n }, []);\n\n useEffect(() => {\n editTextFieldRef.current?.focus();\n }, []);\n\n const textTooLongMessage = useMemo(() => {\n return messageState === 'too long' ||\n /* @conditional-compile-remove(rich-text-editor-image-upload) */ contentValueWithInlineImagesOverflow\n ? _formatString(strings.editBoxTextLimit, { limitNumber: `${MAXIMUM_LENGTH_OF_MESSAGE}` })\n : undefined;\n }, [\n messageState,\n strings.editBoxTextLimit,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */ contentValueWithInlineImagesOverflow\n ]);\n\n const iconClassName = useCallback(\n (isHover: boolean) => {\n const color = isHover ? theme.palette.accent : theme.palette.neutralSecondary;\n return mergeStyles(richTextEditBoxActionButtonIcon, { color });\n },\n [theme.palette.accent, theme.palette.neutralSecondary]\n );\n\n const onRenderThemedCancelIcon = useCallback(\n (isHover: boolean) => {\n return onRenderCancelIcon(iconClassName(isHover));\n },\n [iconClassName]\n );\n\n const onRenderThemedSubmitIcon = useCallback(\n (isHover: boolean) => {\n return onRenderSubmitIcon(iconClassName(isHover));\n },\n [iconClassName]\n );\n\n /* @conditional-compile-remove(file-sharing-acs) */\n const hasMultipleAttachments = useMemo(() => {\n return doesMessageContainMultipleAttachments(message);\n }, [message]);\n\n const onSubmitHandler = useCallback((): void => {\n if (messageState !== 'OK') {\n return;\n }\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n if (inlineImagesWithProgress && inlineImagesWithProgress.length > 0) {\n const contentWithUpdatedInlineImagesInfo = getContentWithUpdatedInlineImagesInfo(\n contentValue,\n inlineImagesWithProgress\n );\n const messageTooLong = isMessageTooLong(contentWithUpdatedInlineImagesInfo.length);\n // Set contentValueWithInlineImagesOverflow state to display the error bar\n setContentValueWithInlineImagesOverflow(messageTooLong);\n // The change from the setContentValueOverflow in the previous line will not kick in yet.\n // We need to rely on the local value of messageTooLong to return early if the message is too long.\n if (messageTooLong) {\n return;\n }\n }\n\n // Don't send message until all attachments have been uploaded successfully\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n setAttachmentUploadsPendingError(undefined);\n\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n if (hasIncompleteAttachmentUploads(inlineImagesWithProgress)) {\n setAttachmentUploadsPendingError({\n message: strings.imageUploadsPendingError,\n timestamp: Date.now(),\n errorBarType: SendBoxErrorBarType.info\n });\n return;\n }\n\n let content = contentValue;\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n content = removeBrokenImageContentAndClearImageSizeStyles(content);\n let initInlineImages: Record<string, string>[] = [];\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n initInlineImages = initialInlineImages ?? [];\n modifyInlineImagesInContentString(content, initInlineImages, (content: string) => {\n // it's very important to pass an empty attachment here\n // so when user removes all attachments, UI can reflect it instantly\n // if you set it to undefined, the attachments pre-edited would still be there\n // until edit message event is received\n onSubmit(content, /* @conditional-compile-remove(file-sharing-acs) */ attachmentMetadata || []);\n });\n }, [\n messageState,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n inlineImagesWithProgress,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n initialInlineImages,\n contentValue,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n strings.imageUploadsPendingError,\n onSubmit,\n /* @conditional-compile-remove(file-sharing-acs) */\n attachmentMetadata\n ]);\n\n const actionButtons = useMemo(() => {\n return (\n <Stack horizontal>\n <InputBoxButton\n className={richTextActionButtonsStyle}\n ariaLabel={strings.editBoxCancelButton}\n tooltipContent={strings.editBoxCancelButton}\n onRenderIcon={onRenderThemedCancelIcon}\n onClick={() => {\n onCancel && onCancel(message.messageId);\n }}\n id={'dismissIconWrapper'}\n data-testId={'chat-message-rich-text-edit-box-cancel-button'}\n />\n <InputBoxButton\n className={richTextActionButtonsStyle}\n ariaLabel={strings.editBoxSubmitButton}\n tooltipContent={strings.editBoxSubmitButton}\n onRenderIcon={onRenderThemedSubmitIcon}\n onClick={(e) => {\n onSubmitHandler();\n e.stopPropagation();\n }}\n id={'submitIconWrapper'}\n data-testId={'chat-message-rich-text-edit-box-submit-button'}\n />\n </Stack>\n );\n }, [\n message.messageId,\n onCancel,\n onRenderThemedCancelIcon,\n onRenderThemedSubmitIcon,\n strings.editBoxCancelButton,\n strings.editBoxSubmitButton,\n onSubmitHandler\n ]);\n const richTextLocaleStrings = useMemo(() => {\n /* @conditional-compile-remove(rich-text-editor) */\n return { ...locale.richTextSendBox, ...strings };\n return locale.sendBox;\n }, [\n /* @conditional-compile-remove(rich-text-editor) */ locale.richTextSendBox,\n /* @conditional-compile-remove(rich-text-editor) */ strings,\n locale.sendBox\n ]);\n\n /* @conditional-compile-remove(file-sharing-acs) */\n const onCancelAttachmentUpload = useCallback((attachmentId: string) => {\n // edit box only capable of removing attachments\n // we need to expand attachment actions\n // if we want to support more actions e.g. add\n handleAttachmentAction({ type: 'remove', id: attachmentId });\n }, []);\n\n /* @conditional-compile-remove(file-sharing-acs) */\n const onRenderAttachmentUploads = useCallback(() => {\n return (\n <Stack className={attachmentUploadCardsStyles}>\n <FluentV9ThemeProvider v8Theme={theme}>\n <_AttachmentUploadCards\n attachments={attachmentMetadata}\n onCancelAttachmentUpload={onCancelAttachmentUpload}\n />\n </FluentV9ThemeProvider>\n </Stack>\n );\n }, [attachmentMetadata, onCancelAttachmentUpload, theme]);\n\n const onChangeHandler = useCallback(\n (\n content: string | undefined,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n removedInlineImages?: Record<string, string>[]\n ) => {\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n removedInlineImages?.forEach((removedInlineImage: Record<string, string>) => {\n onRemoveInlineImage && onRemoveInlineImage(removedInlineImage, message.messageId);\n });\n setContent(content);\n },\n [\n setContent,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */ onRemoveInlineImage,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */ message.messageId\n ]\n );\n\n const getContent = (): JSX.Element => {\n return (\n <Stack className={mergeStyles(editBoxWidthStyles)}>\n <RichTextSendBoxErrors\n textTooLongMessage={textTooLongMessage}\n systemMessage={message.failureReason}\n /* @conditional-compile-remove(rich-text-editor-image-upload) */ attachmentUploadsPendingError={\n attachmentUploadsPendingError\n }\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n attachmentProgressError={\n imageUploadErrorMessage\n ? {\n message: imageUploadErrorMessage,\n timestamp: Date.now(),\n errorBarType: SendBoxErrorBarType.error\n }\n : undefined\n }\n />\n <RichTextInputBoxComponent\n placeholderText={strings.editBoxPlaceholderText}\n onChange={onChangeHandler}\n onEnterKeyDown={onSubmitHandler}\n editorComponentRef={editTextFieldRef}\n initialContent={initialContent}\n strings={richTextLocaleStrings}\n disabled={false}\n actionComponents={actionButtons}\n richTextEditorStyleProps={editBoxRichTextEditorStyle}\n isHorizontalLayoutDisabled={true}\n /* @conditional-compile-remove(file-sharing-acs) */\n onRenderAttachmentUploads={onRenderAttachmentUploads}\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onPaste={onPaste}\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onInsertInlineImage={\n onInsertInlineImage\n ? (imageAttributes: Record<string, string>) => {\n onInsertInlineImage(imageAttributes, message.messageId);\n }\n : undefined\n }\n />\n </Stack>\n );\n };\n\n const attached = message.attached === true ? 'center' : message.attached === 'bottom' ? 'bottom' : 'top';\n return (\n <ChatMyMessage\n attached={attached}\n root={{\n className: mergeClasses(\n chatMyMessageStyles.root,\n /* @conditional-compile-remove(file-sharing-acs) */\n hasMultipleAttachments ? chatMyMessageStyles.multipleAttachmentsInEditing : undefined\n )\n }}\n body={{\n className: mergeClasses(\n editContainerStyles.body,\n attached !== 'top' ? editContainerStyles.bodyAttached : undefined\n )\n }}\n >\n {getContent()}\n </ChatMyMessage>\n );\n};\n\nexport default ChatMessageComponentAsRichTextEditBox;\n"],"names":["useState","useMemo","getPreviousInlineImages","BROKEN_IMAGE_SVG_DATA","useReducer","attachmentMetadataReducer","getMessageWithAttachmentMetadata","useTheme","getMessageState","inlineImageIds","isMessageTooLong","useChatMessageRichTextEditContainerStyles","useChatMyMessageStyles","useLocale","useCallback","useEffect","_formatString","MAXIMUM_LENGTH_OF_MESSAGE","mergeStyles","richTextEditBoxActionButtonIcon","onRenderCancelIcon","onRenderSubmitIcon","doesMessageContainMultipleAttachments","getContentWithUpdatedInlineImagesInfo","hasIncompleteAttachmentUploads","SendBoxErrorBarType","removeBrokenImageContentAndClearImageSizeStyles","modifyInlineImagesInContentString","Stack","InputBoxButton","richTextActionButtonsStyle","attachmentUploadCardsStyles","FluentV9ThemeProvider","_AttachmentUploadCards","editBoxWidthStyles","RichTextSendBoxErrors","RichTextInputBoxComponent","editBoxRichTextEditorStyle","ChatMyMessage","mergeClasses"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"ChatMessageComponentAsRichTextEditBox-D-rMS-Hv.js","sources":["../../../../react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.tsx"],"sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { 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';\n/* @conditional-compile-remove(rich-text-editor-image-upload) */\nimport { AttachmentMetadataInProgress } from '@internal/acs-ui-common';\nimport { useTheme } from '../../../theming';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\n/* @conditional-compile-remove(file-sharing-acs) */\nimport { useReducer } from 'react';\nimport { editBoxWidthStyles, richTextEditBoxActionButtonIcon } from '../../styles/EditBox.styles';\nimport { InputBoxButton } from '../../InputBoxButton';\nimport { MessageThreadStrings } from '../../MessageThread';\nimport { useChatMyMessageStyles } from '../../styles/MessageThread.styles';\nimport { ChatMessage } from '../../../types';\nimport { _AttachmentUploadCards } from '../../Attachment/AttachmentUploadCards';\n/* @conditional-compile-remove(file-sharing-acs) */\nimport { AttachmentMetadata } from '@internal/acs-ui-common';\nimport { useChatMessageRichTextEditContainerStyles } from '../../styles/ChatMessageComponent.styles';\nimport { MAXIMUM_LENGTH_OF_MESSAGE, modifyInlineImagesInContentString } from '../../utils/SendBoxUtils';\n/* @conditional-compile-remove(rich-text-editor-image-upload) */\nimport {\n hasIncompleteAttachmentUploads,\n removeBrokenImageContentAndClearImageSizeStyles,\n getContentWithUpdatedInlineImagesInfo,\n isMessageTooLong,\n inlineImageIds\n} from '../../utils/SendBoxUtils';\nimport {\n getMessageState,\n MessageState,\n onRenderCancelIcon,\n onRenderSubmitIcon\n} from '../../utils/ChatMessageComponentAsEditBoxUtils';\n/* @conditional-compile-remove(file-sharing-acs) */\nimport {\n attachmentMetadataReducer,\n getMessageWithAttachmentMetadata,\n doesMessageContainMultipleAttachments\n} from '../../utils/ChatMessageComponentAsEditBoxUtils';\nimport { RichTextEditorComponentRef } from '../../RichTextEditor/RichTextEditor';\nimport { RichTextInputBoxComponent } from '../../RichTextEditor/RichTextInputBoxComponent';\nimport { editBoxRichTextEditorStyle, richTextActionButtonsStyle } from '../../styles/RichTextEditor.styles';\nimport { RichTextSendBoxErrors } from '../../RichTextEditor/RichTextSendBoxErrors';\nimport { useLocale } from '../../../localization';\n/* @conditional-compile-remove(file-sharing-acs) */\nimport { FluentV9ThemeProvider } from '../../../theming/FluentV9ThemeProvider';\n/* @conditional-compile-remove(file-sharing-acs) */\nimport { attachmentUploadCardsStyles } from '../../styles/SendBox.styles';\n/* @conditional-compile-remove(rich-text-editor-image-upload) */\nimport { SendBoxErrorBarError, SendBoxErrorBarType } from '../../SendBoxErrorBar';\n/* @conditional-compile-remove(rich-text-editor-image-upload) */\nimport { BROKEN_IMAGE_SVG_DATA } from '../../styles/Common.style';\n/* @conditional-compile-remove(rich-text-editor-image-upload) */\nimport { getPreviousInlineImages } from '../../utils/RichTextEditorUtils';\n\n/** @private */\nexport type ChatMessageComponentAsRichTextEditBoxProps = {\n onCancel?: (messageId: string) => void;\n onSubmit: (\n text: string,\n /* @conditional-compile-remove(file-sharing-acs) */\n attachmentMetadata?: AttachmentMetadata[]\n ) => void;\n message: ChatMessage;\n strings: MessageThreadStrings;\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onPaste?: (event: { content: DocumentFragment }) => void;\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onRemoveInlineImage?: (imageAttributes: Record<string, string>, messageId: string) => void;\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onInsertInlineImage?: (imageAttributes: Record<string, string>, messageId: string) => void;\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n inlineImagesWithProgress?: AttachmentMetadataInProgress[];\n};\n\n/**\n * @private\n */\nexport const ChatMessageComponentAsRichTextEditBox = (\n props: ChatMessageComponentAsRichTextEditBoxProps\n): JSX.Element => {\n const {\n onCancel,\n onSubmit,\n strings,\n message,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onPaste,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onInsertInlineImage,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n inlineImagesWithProgress,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onRemoveInlineImage\n } = props;\n\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n const [initialInlineImages, setInitialInlineImages] = useState<Record<string, string>[]>([]);\n\n const initialContent = useMemo(() => {\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n const content = message.content;\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n setInitialInlineImages(getPreviousInlineImages(content));\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n const document = new DOMParser().parseFromString(content ?? '', 'text/html');\n // The broken image element is a div element with all the attributes of the original image element.\n // We need to convert it to a img element so the Rooster knows how to render it.\n // And we need to copy over all the attributes such as id, width, etc.\n // which is needed for sending the message with the images correctly.\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n document.querySelectorAll('.broken-image-wrapper').forEach((brokenImage) => {\n const imageElement = document.createElement('img');\n const attributes = brokenImage.attributes;\n for (const attribute of attributes) {\n imageElement.setAttribute(attribute.name, attribute.value);\n }\n\n imageElement.src = BROKEN_IMAGE_SVG_DATA;\n imageElement.style.width = '3rem';\n imageElement.style.height = '3rem';\n brokenImage.parentElement?.replaceChild(imageElement, brokenImage);\n });\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n return document.body.innerHTML;\n return message.content;\n }, [message]);\n\n const [contentValue, setContentValue] = useState<string>(initialContent || '');\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n const [contentValueWithInlineImagesOverflow, setContentValueWithInlineImagesOverflow] = useState(false);\n\n /* @conditional-compile-remove(file-sharing-acs) */\n const [attachmentMetadata, handleAttachmentAction] = useReducer(\n attachmentMetadataReducer,\n getMessageWithAttachmentMetadata(message) ?? []\n );\n\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n const [attachmentUploadsPendingError, setAttachmentUploadsPendingError] = useState<SendBoxErrorBarError | undefined>(\n undefined\n );\n const editTextFieldRef = React.useRef<RichTextEditorComponentRef>(null);\n const theme = useTheme();\n const messageState: MessageState = useMemo(() => {\n // get plain text content from the editor to check if the message is empty\n // as the content may contain tags even when the content is empty\n const plainTextContent = editTextFieldRef.current?.getPlainContent() ?? contentValue;\n let messageLengthState = getMessageState(\n plainTextContent,\n /* @conditional-compile-remove(file-sharing-acs) */ attachmentMetadata ?? []\n );\n\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n const imageIds = inlineImageIds(contentValue);\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n if (messageLengthState !== 'OK' && imageIds.length > 0) {\n // Check if too long\n if (isMessageTooLong(contentValue.length)) {\n messageLengthState = 'too long';\n } else {\n messageLengthState = 'OK';\n }\n }\n return messageLengthState;\n }, [/* @conditional-compile-remove(file-sharing-acs) */ attachmentMetadata, contentValue]);\n\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n const imageUploadErrorMessage = useMemo(() => {\n return inlineImagesWithProgress?.filter((image) => image.error).pop()?.error?.message;\n }, [inlineImagesWithProgress]);\n\n const editContainerStyles = useChatMessageRichTextEditContainerStyles();\n const chatMyMessageStyles = useChatMyMessageStyles();\n const locale = useLocale().strings;\n\n const setContent = useCallback((newValue?: string): void => {\n setContentValue(newValue ?? '');\n }, []);\n\n useEffect(() => {\n editTextFieldRef.current?.focus();\n }, []);\n\n const textTooLongMessage = useMemo(() => {\n return messageState === 'too long' ||\n /* @conditional-compile-remove(rich-text-editor-image-upload) */ contentValueWithInlineImagesOverflow\n ? _formatString(strings.editBoxTextLimit, { limitNumber: `${MAXIMUM_LENGTH_OF_MESSAGE}` })\n : undefined;\n }, [\n messageState,\n strings.editBoxTextLimit,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */ contentValueWithInlineImagesOverflow\n ]);\n\n const iconClassName = useCallback(\n (isHover: boolean) => {\n const color = isHover ? theme.palette.accent : theme.palette.neutralSecondary;\n return mergeStyles(richTextEditBoxActionButtonIcon, { color });\n },\n [theme.palette.accent, theme.palette.neutralSecondary]\n );\n\n const onRenderThemedCancelIcon = useCallback(\n (isHover: boolean) => {\n return onRenderCancelIcon(iconClassName(isHover));\n },\n [iconClassName]\n );\n\n const onRenderThemedSubmitIcon = useCallback(\n (isHover: boolean) => {\n return onRenderSubmitIcon(iconClassName(isHover));\n },\n [iconClassName]\n );\n\n /* @conditional-compile-remove(file-sharing-acs) */\n const hasMultipleAttachments = useMemo(() => {\n return doesMessageContainMultipleAttachments(message);\n }, [message]);\n\n const onSubmitHandler = useCallback((): void => {\n if (messageState !== 'OK') {\n return;\n }\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n if (inlineImagesWithProgress && inlineImagesWithProgress.length > 0) {\n const contentWithUpdatedInlineImagesInfo = getContentWithUpdatedInlineImagesInfo(\n contentValue,\n inlineImagesWithProgress\n );\n const messageTooLong = isMessageTooLong(contentWithUpdatedInlineImagesInfo.length);\n // Set contentValueWithInlineImagesOverflow state to display the error bar\n setContentValueWithInlineImagesOverflow(messageTooLong);\n // The change from the setContentValueOverflow in the previous line will not kick in yet.\n // We need to rely on the local value of messageTooLong to return early if the message is too long.\n if (messageTooLong) {\n return;\n }\n }\n\n // Don't send message until all attachments have been uploaded successfully\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n setAttachmentUploadsPendingError(undefined);\n\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n if (hasIncompleteAttachmentUploads(inlineImagesWithProgress)) {\n setAttachmentUploadsPendingError({\n message: strings.imageUploadsPendingError,\n timestamp: Date.now(),\n errorBarType: SendBoxErrorBarType.info\n });\n return;\n }\n\n let content = contentValue;\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n content = removeBrokenImageContentAndClearImageSizeStyles(content);\n let initInlineImages: Record<string, string>[] = [];\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n initInlineImages = initialInlineImages ?? [];\n modifyInlineImagesInContentString(content, initInlineImages, (content: string) => {\n // it's very important to pass an empty attachment here\n // so when user removes all attachments, UI can reflect it instantly\n // if you set it to undefined, the attachments pre-edited would still be there\n // until edit message event is received\n onSubmit(content, /* @conditional-compile-remove(file-sharing-acs) */ attachmentMetadata || []);\n });\n }, [\n messageState,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n inlineImagesWithProgress,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n initialInlineImages,\n contentValue,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n strings.imageUploadsPendingError,\n onSubmit,\n /* @conditional-compile-remove(file-sharing-acs) */\n attachmentMetadata\n ]);\n\n const actionButtons = useMemo(() => {\n return (\n <Stack horizontal>\n <InputBoxButton\n className={richTextActionButtonsStyle}\n ariaLabel={strings.editBoxCancelButton}\n tooltipContent={strings.editBoxCancelButton}\n onRenderIcon={onRenderThemedCancelIcon}\n onClick={() => {\n onCancel && onCancel(message.messageId);\n }}\n id={'dismissIconWrapper'}\n data-testId={'chat-message-rich-text-edit-box-cancel-button'}\n />\n <InputBoxButton\n className={richTextActionButtonsStyle}\n ariaLabel={strings.editBoxSubmitButton}\n tooltipContent={strings.editBoxSubmitButton}\n onRenderIcon={onRenderThemedSubmitIcon}\n onClick={(e) => {\n onSubmitHandler();\n e.stopPropagation();\n }}\n id={'submitIconWrapper'}\n data-testId={'chat-message-rich-text-edit-box-submit-button'}\n />\n </Stack>\n );\n }, [\n message.messageId,\n onCancel,\n onRenderThemedCancelIcon,\n onRenderThemedSubmitIcon,\n strings.editBoxCancelButton,\n strings.editBoxSubmitButton,\n onSubmitHandler\n ]);\n const richTextLocaleStrings = useMemo(() => {\n /* @conditional-compile-remove(rich-text-editor) */\n return { ...locale.richTextSendBox, ...strings };\n return locale.sendBox;\n }, [\n /* @conditional-compile-remove(rich-text-editor) */ locale.richTextSendBox,\n /* @conditional-compile-remove(rich-text-editor) */ strings,\n locale.sendBox\n ]);\n\n /* @conditional-compile-remove(file-sharing-acs) */\n const onCancelAttachmentUpload = useCallback((attachmentId: string) => {\n // edit box only capable of removing attachments\n // we need to expand attachment actions\n // if we want to support more actions e.g. add\n handleAttachmentAction({ type: 'remove', id: attachmentId });\n }, []);\n\n /* @conditional-compile-remove(file-sharing-acs) */\n const onRenderAttachmentUploads = useCallback(() => {\n return (\n <Stack className={attachmentUploadCardsStyles}>\n <FluentV9ThemeProvider v8Theme={theme}>\n <_AttachmentUploadCards\n attachments={attachmentMetadata}\n onCancelAttachmentUpload={onCancelAttachmentUpload}\n />\n </FluentV9ThemeProvider>\n </Stack>\n );\n }, [attachmentMetadata, onCancelAttachmentUpload, theme]);\n\n const onChangeHandler = useCallback(\n (\n content: string | undefined,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n removedInlineImages?: Record<string, string>[]\n ) => {\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n removedInlineImages?.forEach((removedInlineImage: Record<string, string>) => {\n onRemoveInlineImage && onRemoveInlineImage(removedInlineImage, message.messageId);\n });\n setContent(content);\n },\n [\n setContent,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */ onRemoveInlineImage,\n /* @conditional-compile-remove(rich-text-editor-image-upload) */ message.messageId\n ]\n );\n\n const getContent = (): JSX.Element => {\n return (\n <Stack className={mergeStyles(editBoxWidthStyles)}>\n <RichTextSendBoxErrors\n textTooLongMessage={textTooLongMessage}\n systemMessage={message.failureReason}\n /* @conditional-compile-remove(rich-text-editor-image-upload) */ attachmentUploadsPendingError={\n attachmentUploadsPendingError\n }\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n attachmentProgressError={\n imageUploadErrorMessage\n ? {\n message: imageUploadErrorMessage,\n timestamp: Date.now(),\n errorBarType: SendBoxErrorBarType.error\n }\n : undefined\n }\n />\n <RichTextInputBoxComponent\n placeholderText={strings.editBoxPlaceholderText}\n onChange={onChangeHandler}\n onEnterKeyDown={onSubmitHandler}\n editorComponentRef={editTextFieldRef}\n initialContent={initialContent}\n strings={richTextLocaleStrings}\n disabled={false}\n actionComponents={actionButtons}\n richTextEditorStyleProps={editBoxRichTextEditorStyle}\n isHorizontalLayoutDisabled={true}\n /* @conditional-compile-remove(file-sharing-acs) */\n onRenderAttachmentUploads={onRenderAttachmentUploads}\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onPaste={onPaste}\n /* @conditional-compile-remove(rich-text-editor-image-upload) */\n onInsertInlineImage={\n onInsertInlineImage\n ? (imageAttributes: Record<string, string>) => {\n onInsertInlineImage(imageAttributes, message.messageId);\n }\n : undefined\n }\n />\n </Stack>\n );\n };\n\n const attached = message.attached === true ? 'center' : message.attached === 'bottom' ? 'bottom' : 'top';\n return (\n <ChatMyMessage\n attached={attached}\n root={{\n className: mergeClasses(\n chatMyMessageStyles.root,\n /* @conditional-compile-remove(file-sharing-acs) */\n hasMultipleAttachments ? chatMyMessageStyles.multipleAttachmentsInEditing : undefined\n )\n }}\n body={{\n className: mergeClasses(\n editContainerStyles.body,\n attached !== 'top' ? editContainerStyles.bodyAttached : undefined\n )\n }}\n >\n {getContent()}\n </ChatMyMessage>\n );\n};\n\nexport default ChatMessageComponentAsRichTextEditBox;\n"],"names":["useState","useMemo","getPreviousInlineImages","BROKEN_IMAGE_SVG_DATA","useReducer","attachmentMetadataReducer","getMessageWithAttachmentMetadata","useTheme","getMessageState","inlineImageIds","isMessageTooLong","useChatMessageRichTextEditContainerStyles","useChatMyMessageStyles","useLocale","useCallback","useEffect","_formatString","MAXIMUM_LENGTH_OF_MESSAGE","mergeStyles","richTextEditBoxActionButtonIcon","onRenderCancelIcon","onRenderSubmitIcon","doesMessageContainMultipleAttachments","getContentWithUpdatedInlineImagesInfo","hasIncompleteAttachmentUploads","SendBoxErrorBarType","removeBrokenImageContentAndClearImageSizeStyles","modifyInlineImagesInContentString","Stack","InputBoxButton","richTextActionButtonsStyle","attachmentUploadCardsStyles","FluentV9ThemeProvider","_AttachmentUploadCards","editBoxWidthStyles","RichTextSendBoxErrors","RichTextInputBoxComponent","editBoxRichTextEditorStyle","ChatMyMessage","mergeClasses"],"mappings":"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"}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
'use strict';
|
2
2
|
|
3
3
|
var React = require('react');
|
4
|
-
var index = require('./index-
|
4
|
+
var index = require('./index-Qeoq3j5U.js');
|
5
5
|
require('@fluentui/react');
|
6
6
|
require('@azure/communication-common');
|
7
7
|
require('@fluentui/react-components');
|
@@ -48,4 +48,4 @@ const RichTextSendBoxWrapper = (props) => {
|
|
48
48
|
};
|
49
49
|
|
50
50
|
exports.RichTextSendBoxWrapper = RichTextSendBoxWrapper;
|
51
|
-
//# sourceMappingURL=RichTextSendBoxWrapper-
|
51
|
+
//# sourceMappingURL=RichTextSendBoxWrapper-CkWpS6-b.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"RichTextSendBoxWrapper-
|
1
|
+
{"version":3,"file":"RichTextSendBoxWrapper-CkWpS6-b.js","sources":["../../../../react-composites/src/composites/common/RichTextSendBoxWrapper.tsx"],"sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/* @conditional-compile-remove(rich-text-editor-composite-support) */\nimport React from 'react';\n/* @conditional-compile-remove(rich-text-editor-composite-support) */\nimport { usePropsFor } from '../ChatComposite/hooks/usePropsFor';\n/* @conditional-compile-remove(rich-text-editor-composite-support) */\nimport { RichTextSendBox, RichTextSendBoxProps } from '@internal/react-components';\n\n/* @conditional-compile-remove(rich-text-editor-composite-support) */\n/**\n * @private\n *\n * Wrapper for RichTextSendBox component to allow us to use usePropsFor with richTextSendBox\n * before lazyLoading is done\n */\nexport const RichTextSendBoxWrapper = (props: RichTextSendBoxProps): JSX.Element => {\n const richTextSendBoxProps = usePropsFor(RichTextSendBox);\n\n return <RichTextSendBox {...richTextSendBoxProps} {...props} />;\n};\n"],"names":["usePropsFor","RichTextSendBox"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AAEA;AAOA;AACA;;;;;AAKG;AACU,MAAA,sBAAsB,GAAG,CAAC,KAA2B,KAAiB;AACjF,IAAA,MAAM,oBAAoB,GAAGA,iBAAW,CAACC,qBAAe,CAAC;AAEzD,IAAA,OAAO,oBAACA,qBAAe,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAK,oBAAoB,EAAM,KAAK,EAAI;AACjE;;;;"}
|
@@ -187,7 +187,7 @@ function getDefaultExportFromCjs (x) {
|
|
187
187
|
// Copyright (c) Microsoft Corporation.
|
188
188
|
// Licensed under the MIT License.
|
189
189
|
// GENERATED FILE. DO NOT EDIT MANUALLY.
|
190
|
-
var telemetryVersion = '1.27.0-alpha-
|
190
|
+
var telemetryVersion = '1.27.0-alpha-202505140018';
|
191
191
|
|
192
192
|
|
193
193
|
var telemetryVersion$1 = /*@__PURE__*/getDefaultExportFromCjs(telemetryVersion);
|
@@ -16401,7 +16401,7 @@ class _ErrorBoundary extends React.Component {
|
|
16401
16401
|
// Copyright (c) Microsoft Corporation.
|
16402
16402
|
// Licensed under the MIT License.
|
16403
16403
|
/* @conditional-compile-remove(rich-text-editor) */
|
16404
|
-
const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-
|
16404
|
+
const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-D-rMS-Hv.js'); }));
|
16405
16405
|
/**
|
16406
16406
|
* @private
|
16407
16407
|
* Use this function to load RoosterJS dependencies early in the lifecycle.
|
@@ -16409,7 +16409,7 @@ const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve()
|
|
16409
16409
|
*
|
16410
16410
|
* @conditional-compile-remove(rich-text-editor)
|
16411
16411
|
*/
|
16412
|
-
const loadChatMessageComponentAsRichTextEditBox = () => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-
|
16412
|
+
const loadChatMessageComponentAsRichTextEditBox = () => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-D-rMS-Hv.js'); });
|
16413
16413
|
/**
|
16414
16414
|
* @private
|
16415
16415
|
*/
|
@@ -26504,10 +26504,10 @@ const CaptionsBanner = (props) => {
|
|
26504
26504
|
.filter((caption) => caption)
|
26505
26505
|
.map((caption) => {
|
26506
26506
|
if ('message' in caption) {
|
26507
|
-
return (React.createElement("
|
26507
|
+
return (React.createElement("div", { key: `RealTimeText - ${caption.id}`, className: captionContainerClassName, "data-is-focusable": true },
|
26508
26508
|
React.createElement(RealTimeText, Object.assign({}, caption))));
|
26509
26509
|
}
|
26510
|
-
return (React.createElement("
|
26510
|
+
return (React.createElement("div", { key: `Captions - ${caption.id}`, className: captionContainerClassName, "data-is-focusable": true },
|
26511
26511
|
React.createElement(_Caption, Object.assign({}, caption, { onRenderAvatar: onRenderAvatar }))));
|
26512
26512
|
})));
|
26513
26513
|
};
|
@@ -26515,12 +26515,11 @@ const CaptionsBanner = (props) => {
|
|
26515
26515
|
(isCaptionsOn || isRealTimeTextOn) && formFactor === 'compact' && (React.createElement(react.Stack, { horizontal: true, horizontalAlign: "space-between", verticalAlign: "center", className: bannerTitleContainerClassName },
|
26516
26516
|
React.createElement(react.Text, { className: titleClassName$2 }, getTitle()),
|
26517
26517
|
React.createElement(react.IconButton, { "data-ui-id": "captions-banner-expand-icon", iconProps: { iconName: expandBannerHeight ? 'MinimizeIcon' : 'ExpandIcon' }, ariaLabel: expandBannerHeight ? strings.minimizeButtonAriaLabel : strings.expandButtonAriaLabel, onClick: () => setExpandBannerHeight(!expandBannerHeight), styles: expandIconClassName(theme) }))),
|
26518
|
-
(isCaptionsOn || isRealTimeTextOn) && (React.createElement("
|
26518
|
+
(isCaptionsOn || isRealTimeTextOn) && (React.createElement("div", { ref: captionsScrollDivRef, className: (captionsOptions === null || captionsOptions === void 0 ? void 0 : captionsOptions.height) === 'full'
|
26519
26519
|
? captionsBannerFullHeightClassName(theme)
|
26520
26520
|
: captionsBannerClassName(formFactor, expandBannerHeight), "data-ui-id": "captions-banner-inner", "data-is-focusable": true },
|
26521
|
-
isRealTimeTextOn && (React.createElement(
|
26522
|
-
React.createElement(
|
26523
|
-
React.createElement(_RTTDisclosureBanner, { strings: realTimeTextDisclosureBannerStrings })))),
|
26521
|
+
isRealTimeTextOn && (React.createElement(react.Stack, { className: rttDisclosureBannerClassName() },
|
26522
|
+
React.createElement(_RTTDisclosureBanner, { strings: realTimeTextDisclosureBannerStrings }))),
|
26524
26523
|
captionsAndRealTimeText())),
|
26525
26524
|
isRealTimeTextOn && onSendRealTimeText && (React.createElement(react.TextField, { styles: realTimeTextInputBoxStyles(theme), placeholder: strings.realTimeTextInputBoxDefaultText, value: textFieldValue, onKeyDown: handleKeyDown, onChange: (_, newValue) => {
|
26526
26525
|
setTextFieldValue(newValue || '');
|
@@ -32297,7 +32296,7 @@ const AttachmentDownloadErrorBar = (props) => {
|
|
32297
32296
|
/**
|
32298
32297
|
* Wrapper for RichTextSendBox component to allow us to use usePropsFor with richTextSendBox with lazy loading
|
32299
32298
|
*/
|
32300
|
-
const RichTextSendBoxWrapper = React.lazy(() => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-
|
32299
|
+
const RichTextSendBoxWrapper = React.lazy(() => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-CkWpS6-b.js'); }).then((module) => ({ default: module.RichTextSendBoxWrapper })));
|
32301
32300
|
/**
|
32302
32301
|
* @private
|
32303
32302
|
* Use this function to load RoosterJS dependencies early in the lifecycle.
|
@@ -32305,7 +32304,7 @@ const RichTextSendBoxWrapper = React.lazy(() => Promise.resolve().then(function
|
|
32305
32304
|
*
|
32306
32305
|
/* @conditional-compile-remove(rich-text-editor-composite-support)
|
32307
32306
|
*/
|
32308
|
-
const loadRichTextSendBox = () => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-
|
32307
|
+
const loadRichTextSendBox = () => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-CkWpS6-b.js'); }).then((module) => ({ default: module.RichTextSendBoxWrapper }));
|
32309
32308
|
/**
|
32310
32309
|
* @private
|
32311
32310
|
*/
|
@@ -47752,4 +47751,4 @@ exports.useTeamsCall = useTeamsCall;
|
|
47752
47751
|
exports.useTeamsCallAdapter = useTeamsCallAdapter;
|
47753
47752
|
exports.useTeamsCallAgent = useTeamsCallAgent;
|
47754
47753
|
exports.useTheme = useTheme;
|
47755
|
-
//# sourceMappingURL=index-
|
47754
|
+
//# sourceMappingURL=index-Qeoq3j5U.js.map
|