@azure/communication-react 1.28.0-alpha-202505310018 → 1.28.0-alpha-202506050019
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/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-CyXlGIQx.js → ChatMessageComponentAsRichTextEditBox-BgVYjCUI.js} +2 -2
- package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-CyXlGIQx.js.map → ChatMessageComponentAsRichTextEditBox-BgVYjCUI.js.map} +1 -1
- package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-XG4-Fmtd.js → RichTextSendBoxWrapper-B3kbCK2M.js} +2 -2
- package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-XG4-Fmtd.js.map → RichTextSendBoxWrapper-B3kbCK2M.js.map} +1 -1
- package/dist/dist-cjs/communication-react/{index-ypV7CI7O.js → index-CGdfw6nK.js} +25 -13
- package/dist/dist-cjs/communication-react/{index-ypV7CI7O.js.map → index-CGdfw6nK.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/react-components/src/components/RaiseHandButton.js +19 -7
- package/dist/dist-esm/react-components/src/components/RaiseHandButton.js.map +1 -1
- package/package.json +2 -2
@@ -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-CGdfw6nK.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-BgVYjCUI.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ChatMessageComponentAsRichTextEditBox-CyXlGIQx.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-BgVYjCUI.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-CGdfw6nK.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-B3kbCK2M.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"RichTextSendBoxWrapper-
|
1
|
+
{"version":3,"file":"RichTextSendBoxWrapper-B3kbCK2M.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.28.0-alpha-
|
190
|
+
var telemetryVersion = '1.28.0-alpha-202506050019';
|
191
191
|
|
192
192
|
|
193
193
|
var telemetryVersion$1 = /*@__PURE__*/getDefaultExportFromCjs(telemetryVersion);
|
@@ -16391,7 +16391,7 @@ class _ErrorBoundary extends React.Component {
|
|
16391
16391
|
// Copyright (c) Microsoft Corporation.
|
16392
16392
|
// Licensed under the MIT License.
|
16393
16393
|
/* @conditional-compile-remove(rich-text-editor) */
|
16394
|
-
const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-
|
16394
|
+
const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-BgVYjCUI.js'); }));
|
16395
16395
|
/**
|
16396
16396
|
* @private
|
16397
16397
|
* Use this function to load RoosterJS dependencies early in the lifecycle.
|
@@ -16399,7 +16399,7 @@ const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve()
|
|
16399
16399
|
*
|
16400
16400
|
* @conditional-compile-remove(rich-text-editor)
|
16401
16401
|
*/
|
16402
|
-
const loadChatMessageComponentAsRichTextEditBox = () => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-
|
16402
|
+
const loadChatMessageComponentAsRichTextEditBox = () => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-BgVYjCUI.js'); });
|
16403
16403
|
/**
|
16404
16404
|
* @private
|
16405
16405
|
*/
|
@@ -24510,16 +24510,28 @@ const RaiseHandButton = (props) => {
|
|
24510
24510
|
};
|
24511
24511
|
const raiseHandButtonStyles = (theme) => ({
|
24512
24512
|
rootChecked: {
|
24513
|
-
background: theme.
|
24514
|
-
color:
|
24515
|
-
':focus::after': { outlineColor: `${react.DefaultPalette.white}` }
|
24513
|
+
background: theme.semanticColors.primaryButtonBackground,
|
24514
|
+
color: theme.semanticColors.primaryButtonText,
|
24515
|
+
':focus::after': { outlineColor: `${react.DefaultPalette.white} !important` }, // added !important to avoid override by FluentUI button styles
|
24516
|
+
'@media (forced-colors: active)': {
|
24517
|
+
border: '1px solid',
|
24518
|
+
borderColor: theme.palette.black
|
24519
|
+
}
|
24516
24520
|
},
|
24517
24521
|
rootCheckedHovered: {
|
24518
|
-
background: theme.
|
24519
|
-
color:
|
24520
|
-
':focus::after': { outlineColor: `${react.DefaultPalette.white}` }
|
24522
|
+
background: theme.semanticColors.primaryButtonBackgroundHovered,
|
24523
|
+
color: theme.semanticColors.primaryButtonTextHovered,
|
24524
|
+
':focus::after': { outlineColor: `${react.DefaultPalette.white} !important` }, // added !important to avoid override by FluentUI button styles
|
24525
|
+
'@media (forced-colors: active)': {
|
24526
|
+
border: '1px solid',
|
24527
|
+
borderColor: theme.palette.black
|
24528
|
+
}
|
24521
24529
|
},
|
24522
|
-
|
24530
|
+
rootCheckedPressed: {
|
24531
|
+
background: theme.semanticColors.primaryButtonBackgroundPressed,
|
24532
|
+
color: theme.semanticColors.primaryButtonTextPressed
|
24533
|
+
},
|
24534
|
+
labelChecked: { color: theme.semanticColors.primaryButtonText }
|
24523
24535
|
});
|
24524
24536
|
|
24525
24537
|
// Copyright (c) Microsoft Corporation.
|
@@ -32220,7 +32232,7 @@ const AttachmentDownloadErrorBar = (props) => {
|
|
32220
32232
|
/**
|
32221
32233
|
* Wrapper for RichTextSendBox component to allow us to use usePropsFor with richTextSendBox with lazy loading
|
32222
32234
|
*/
|
32223
|
-
const RichTextSendBoxWrapper = React.lazy(() => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-
|
32235
|
+
const RichTextSendBoxWrapper = React.lazy(() => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-B3kbCK2M.js'); }).then((module) => ({ default: module.RichTextSendBoxWrapper })));
|
32224
32236
|
/**
|
32225
32237
|
* @private
|
32226
32238
|
* Use this function to load RoosterJS dependencies early in the lifecycle.
|
@@ -32228,7 +32240,7 @@ const RichTextSendBoxWrapper = React.lazy(() => Promise.resolve().then(function
|
|
32228
32240
|
*
|
32229
32241
|
/* @conditional-compile-remove(rich-text-editor-composite-support)
|
32230
32242
|
*/
|
32231
|
-
const loadRichTextSendBox = () => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-
|
32243
|
+
const loadRichTextSendBox = () => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-B3kbCK2M.js'); }).then((module) => ({ default: module.RichTextSendBoxWrapper }));
|
32232
32244
|
/**
|
32233
32245
|
* @private
|
32234
32246
|
*/
|
@@ -47640,4 +47652,4 @@ exports.useTeamsCall = useTeamsCall;
|
|
47640
47652
|
exports.useTeamsCallAdapter = useTeamsCallAdapter;
|
47641
47653
|
exports.useTeamsCallAgent = useTeamsCallAgent;
|
47642
47654
|
exports.useTheme = useTheme;
|
47643
|
-
//# sourceMappingURL=index-
|
47655
|
+
//# sourceMappingURL=index-CGdfw6nK.js.map
|