@azure/communication-react 1.18.0-alpha-202407060013 → 1.18.0-alpha-202407100014
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 +110 -4
- package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-DMEk2o-G.js → ChatMessageComponentAsRichTextEditBox-B4-VwPSY.js} +62 -17
- package/dist/dist-cjs/communication-react/ChatMessageComponentAsRichTextEditBox-B4-VwPSY.js.map +1 -0
- package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-ByJFtf0Z.js → RichTextSendBoxWrapper-C_Nb8f_T.js} +2 -2
- package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-ByJFtf0Z.js.map → RichTextSendBoxWrapper-C_Nb8f_T.js.map} +1 -1
- package/dist/dist-cjs/communication-react/{index-BPO9X27C.js → index-CTMK90l4.js} +418 -111
- package/dist/dist-cjs/communication-react/index-CTMK90l4.js.map +1 -0
- package/dist/dist-cjs/communication-react/index.js +2 -1
- package/dist/dist-cjs/communication-react/index.js.map +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/calling-component-bindings/src/notificationStackSelector.js +21 -2
- package/dist/dist-esm/calling-component-bindings/src/notificationStackSelector.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js +42 -4
- package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js.map +1 -1
- package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +34 -8
- package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/ChatClientState.d.ts +11 -0
- package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/ResourceDownloadQueue.js +3 -0
- package/dist/dist-esm/chat-stateful-client/src/ResourceDownloadQueue.js.map +1 -1
- package/dist/dist-esm/chat-stateful-client/src/index.d.ts +1 -0
- package/dist/dist-esm/chat-stateful-client/src/index.js.map +1 -1
- package/dist/dist-esm/communication-react/src/index.d.ts +3 -0
- package/dist/dist-esm/communication-react/src/index.js +2 -0
- package/dist/dist-esm/communication-react/src/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.d.ts +4 -0
- package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.js +7 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.d.ts +4 -0
- package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.js +62 -15
- package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.js +1 -3
- package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ErrorBar.d.ts +4 -0
- package/dist/dist-esm/react-components/src/components/ErrorBar.js +2 -2
- package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/IncomingCallNotification.d.ts +64 -0
- package/dist/dist-esm/react-components/src/components/IncomingCallNotification.js +86 -0
- package/dist/dist-esm/react-components/src/components/IncomingCallNotification.js.map +1 -0
- package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +18 -0
- package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/NotificationStack.d.ts +5 -0
- package/dist/dist-esm/react-components/src/components/NotificationStack.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.d.ts +7 -0
- package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.js +5 -1
- package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/TableEditContextMenuProvider.js +0 -1
- package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/TableEditContextMenuProvider.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.d.ts +0 -4
- package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.js +7 -35
- package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/index.d.ts +1 -0
- package/dist/dist-esm/react-components/src/components/index.js +2 -0
- package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/Common.style.d.ts +4 -0
- package/dist/dist-esm/react-components/src/components/styles/Common.style.js +4 -0
- package/dist/dist-esm/react-components/src/components/styles/Common.style.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js +18 -0
- package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.d.ts +17 -1
- package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js +70 -4
- package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/utils.js +2 -0
- package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
- package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +2 -0
- package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
- package/dist/dist-esm/react-components/src/localization/locales/en-US/strings.json +16 -1
- package/dist/dist-esm/react-components/src/theming/icons.d.ts +3 -0
- package/dist/dist-esm/react-components/src/theming/icons.js +5 -1
- package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +10 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js +3 -3
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +71 -24
- package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/SendBoxPicker.js +3 -1
- package/dist/dist-esm/react-composites/src/composites/common/SendBoxPicker.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +3 -0
- package/package.json +1 -1
- package/dist/dist-cjs/communication-react/ChatMessageComponentAsRichTextEditBox-DMEk2o-G.js.map +0 -1
- package/dist/dist-cjs/communication-react/index-BPO9X27C.js.map +0 -1
@@ -175,7 +175,7 @@ function getDefaultExportFromCjs (x) {
|
|
175
175
|
// Copyright (c) Microsoft Corporation.
|
176
176
|
// Licensed under the MIT License.
|
177
177
|
// GENERATED FILE. DO NOT EDIT MANUALLY.
|
178
|
-
var telemetryVersion = '1.18.0-alpha-
|
178
|
+
var telemetryVersion = '1.18.0-alpha-202407100014';
|
179
179
|
|
180
180
|
|
181
181
|
var telemetryVersion$1 = /*@__PURE__*/getDefaultExportFromCjs(telemetryVersion);
|
@@ -526,6 +526,12 @@ const getSupportedSpokenLanguages = (state, props) => {
|
|
526
526
|
var _a;
|
527
527
|
return (_a = state.calls[props.callId]) === null || _a === void 0 ? void 0 : _a.captionsFeature.supportedSpokenLanguages;
|
528
528
|
};
|
529
|
+
/* @conditional-compile-remove(teams-meeting-conference) */
|
530
|
+
/** @private */
|
531
|
+
const getTeamsMeetingConference = (state, props) => {
|
532
|
+
var _a;
|
533
|
+
return (_a = state.calls[props.callId]) === null || _a === void 0 ? void 0 : _a.teamsMeetingConference;
|
534
|
+
};
|
529
535
|
|
530
536
|
// Copyright (c) Microsoft Corporation.
|
531
537
|
// Licensed under the MIT License.
|
@@ -1336,7 +1342,14 @@ const createDefaultTeamsCallingHandlers = memoizeOne((callClient, callAgent, dev
|
|
1336
1342
|
*
|
1337
1343
|
* @beta
|
1338
1344
|
*/
|
1339
|
-
const notificationStackSelector = reselect.createSelector([
|
1345
|
+
const notificationStackSelector = reselect.createSelector([
|
1346
|
+
getLatestErrors$1,
|
1347
|
+
getDiagnostics,
|
1348
|
+
getDeviceManager$1,
|
1349
|
+
getEnvironmentInfo,
|
1350
|
+
/* @conditional-compile-remove(teams-meeting-conference) */ getTeamsMeetingConference
|
1351
|
+
], (latestErrors, diagnostics, deviceManager, environmentInfo,
|
1352
|
+
/* @conditional-compile-remove(teams-meeting-conference) */ meetingConference) => {
|
1340
1353
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
|
1341
1354
|
// The order in which the errors are returned is significant: The `Notification` shows errors on the UI in that order.
|
1342
1355
|
// There are several options for the ordering:
|
@@ -1355,9 +1368,19 @@ const notificationStackSelector = reselect.createSelector([getLatestErrors$1, ge
|
|
1355
1368
|
return (environmentInfo === null || environmentInfo === void 0 ? void 0 : environmentInfo.environment.platform) === 'mac';
|
1356
1369
|
};
|
1357
1370
|
// Errors reported via diagnostics are more reliable than from API method failures, so process those first.
|
1371
|
+
let isTeamsMeetingWithPhones = false;
|
1372
|
+
/* @conditional-compile-remove(teams-meeting-conference) */
|
1373
|
+
if (meetingConference && meetingConference.length > 0) {
|
1374
|
+
isTeamsMeetingWithPhones = true;
|
1375
|
+
}
|
1358
1376
|
if (((_a = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.network.latest.networkReceiveQuality) === null || _a === void 0 ? void 0 : _a.value) === communicationCalling.DiagnosticQuality.Bad ||
|
1359
1377
|
((_b = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.network.latest.networkReceiveQuality) === null || _b === void 0 ? void 0 : _b.value) === communicationCalling.DiagnosticQuality.Poor) {
|
1360
|
-
|
1378
|
+
if (isTeamsMeetingWithPhones) {
|
1379
|
+
activeErrorMessages.push({ type: 'teamsMeetingCallNetworkQualityLow' });
|
1380
|
+
}
|
1381
|
+
else {
|
1382
|
+
activeErrorMessages.push({ type: 'callNetworkQualityLow' });
|
1383
|
+
}
|
1361
1384
|
}
|
1362
1385
|
if (((_c = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.media.latest.noSpeakerDevicesEnumerated) === null || _c === void 0 ? void 0 : _c.value) === true) {
|
1363
1386
|
activeErrorMessages.push({ type: 'callNoSpeakerFound' });
|
@@ -5932,7 +5955,7 @@ const typingIndicatorStringStyle = react.mergeStyles({
|
|
5932
5955
|
wordBreak: 'break-word'
|
5933
5956
|
});
|
5934
5957
|
|
5935
|
-
var participantItem$k={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted",displayNamePlaceholder:"Unnamed participant",participantStateRinging:"Calling...",participantStateHold:"On hold",attendeeRole:"Attendee"};var ParticipantList$l={overflowParticipantCount:"+{overflowCount} more"};var typingIndicator$k={singleUser:"{user} is typing ...",multipleUsers:"{users} are typing ...",multipleUsersAbbreviateOne:"{users} and 1 other are typing ...",multipleUsersAbbreviateMany:"{users} and {numOthers} others are typing ...",delimiter:", "};var sendBox$k={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",attachmentUploadsPendingError:"Uploading... Please wait.",removeAttachment:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed",attachmentMoreMenu:"More Options"};var richTextSendBox$k={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",attachmentUploadsPendingError:"Uploading... Please wait.",removeAttachment:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed",richTextBoldTooltip:"Bold",richTextItalicTooltip:"Italic",richTextUnderlineTooltip:"Underline",richTextBulletListTooltip:"Bulleted list",richTextNumberListTooltip:"Numbered list",richTextIncreaseIndentTooltip:"Increase indent",richTextDecreaseIndentTooltip:"Decrease indent",richTextInsertTableTooltip:"Insert table",richTextFormatButtonTooltip:"Format",richTextInsertRowOrColumnMenu:"Insert",richTextInsertTableMenuTitle:"Insert {column} x {row} table",richTextInsertRowAboveMenu:"Insert above",richTextInsertRowBelowMenu:"Insert below",richTextInsertColumnLeftMenu:"Insert left",richTextInsertColumnRightMenu:"Insert right",richTextDeleteRowOrColumnMenu:"Delete",richTextDeleteColumnMenu:"Delete column",richTextDeleteRowMenu:"Delete row",richTextDeleteTableMenu:"Delete table",richTextToolbarMoreButtonAriaLabel:"More options",attachmentMoreMenu:"More Options"};var mentionPopover$k={mentionPopoverHeader:"Suggestions"};var imageOverlay$k={downloadButtonLabel:"Download",dismissButtonAriaLabel:"Close"};var messageStatusIndicator$k={deliveredAriaLabel:"Message sent",deliveredTooltipText:"Sent",seenAriaLabel:"Message seen by others",seenTooltipText:"Seen",readByTooltipText:"Read by {messageThreadReadCount} of {remoteParticipantsCount}",sendingAriaLabel:"Message sending",sendingTooltipText:"Sending",failedToSendAriaLabel:"Message failed to send",failedToSendTooltipText:"Failed to send"};var endCallButton$k={label:"Leave",tooltipContent:"Leave call",leaveOption:"Leave",endCallOption:"End call for everyone"};var cameraButton$k={onLabel:"Camera",offLabel:"Camera",tooltipDisabledContent:"Camera is disabled",tooltipOnContent:"Turn off camera",tooltipOffContent:"Turn on camera",tooltipVideoLoadingContent:"Video is loading",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",cameraButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Turn off camera and camera options",offSplitButtonAriaLabel:"Turn on camera and camera options",cameraActionTurnedOnAnnouncement:"Your camera has been turned on",cameraActionTurnedOffAnnouncement:"Your camera has been turned off",onSplitButtonPrimaryActionCamera:"Turn off camera",offSplitButtonPrimaryActionCamera:"Turn on camera",cameraPrimaryActionSplitButtonTitle:"Use camera",videoEffectsMenuItemTitle:"Effects"};var microphoneButton$k={onLabel:"Mic",offLabel:"Mic",tooltipDisabledContent:"Microphone is disabled",tooltipOnContent:"Mute microphone",tooltipOffContent:"Unmute microphone",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker",microphoneButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Mute microphone and audio options",offSplitButtonAriaLabel:"Unmute microphone and audio options",microphoneActionTurnedOnAnnouncement:"Your microphone has been turned on",microphoneActionTurnedOffAnnouncement:"Your microphone has been turned off",offSplitButtonMicrophonePrimaryAction:"Unmute microphone",onSplitButtonMicrophonePrimaryAction:"Mute microphone",microphonePrimaryActionSplitButtonTitle:"Use microphone"};var devicesButton$k={label:"Devices",tooltipContent:"Manage devices",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",audioDeviceMenuTitle:"Audio Device",audioDeviceMenuTooltip:"Choose audio device",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker"};var participantsButton$k={label:"People",tooltipContent:"Show participants",menuHeader:"In this call",participantsListButtonLabel:"{numParticipants} people",muteAllButtonLabel:"Mute all",copyInviteLinkButtonLabel:"Copy invite link",copyInviteLinkActionedAriaLabel:"Invite link copied"};var screenShareButton$k={onLabel:"Stop presenting",offLabel:"Present",tooltipDisabledContent:"Presenting is disabled",tooltipOnContent:"Presenting your screen",tooltipOffContent:"Present your screen"};var raiseHandButton$k={offLabel:"Raise",onLabel:"Lower",tooltipDisabledContent:"Raise Hand action is disabled",tooltipOnContent:"Lower Hand",tooltipOffContent:"Raise Hand"};var reactionButton$k={label:"React",ariaLabel:"React Button, Send a reaction",tooltipDisabledContent:"Reaction action is disabled",tooltipContent:"Send a reaction",likeReactionTooltipContent:"Like",heartReactionTooltipContent:"Love",laughReactionTooltipContent:"Laugh",applauseReactionTooltipContent:"Applause",surprisedReactionTooltipContent:"Surprised"};var messageThread$k={yesterday:"Yesterday",sunday:"Sunday",monday:"Monday",tuesday:"Tuesday",wednesday:"Wednesday",thursday:"Thursday",friday:"Friday",saturday:"Saturday",participantJoined:"joined the chat.",participantLeft:"left the chat.",editMessage:"Edit",removeMessage:"Delete",resendMessage:"Try sending again",failToSendTag:"Failed to send",editedTag:"Edited",liveAuthorIntro:"{author} says",messageContentAriaText:"{status} {author} said {message}",messageContentMineAriaText:"{status} You said {message}",editBoxTextLimit:"Your message is over the limit of {limitNumber} characters",editBoxPlaceholderText:"Edit your message",newMessagesIndicator:"New messages",noDisplayNameSub:"No name",editBoxCancelButton:"Cancel",editBoxSubmitButton:"Done",messageReadCount:"Read by {messageReadByCount} of {remoteParticipantsCount}",actionMenuMoreOptions:"More Options",downloadAttachment:"Download file",openAttachment:"Open file",blockedWarningText:"This message was deleted due to organizational policy.",blockedWarningLinkText:"Details",attachmentCardGroupMessage:"The message has {attachmentCount} attachment",messageDeletedAnnouncementAriaLabel:"The message is deleted",richTextBoldTooltip:"Bold",richTextItalicTooltip:"Italic",richTextUnderlineTooltip:"Underline",richTextBulletListTooltip:"Bulleted list",richTextNumberListTooltip:"Numbered list",richTextIncreaseIndentTooltip:"Increase indent",richTextDecreaseIndentTooltip:"Decrease indent",richTextInsertTableTooltip:"Insert table",richTextFormatButtonTooltip:"Format",richTextInsertRowOrColumnMenu:"Insert",richTextInsertTableMenuTitle:"Insert {column} x {row} table",richTextInsertRowAboveMenu:"Insert above",richTextInsertRowBelowMenu:"Insert below",richTextInsertColumnLeftMenu:"Insert left",richTextInsertColumnRightMenu:"Insert right",richTextDeleteRowOrColumnMenu:"Delete",richTextDeleteColumnMenu:"Delete column",richTextDeleteRowMenu:"Delete row",richTextDeleteTableMenu:"Delete table",richTextToolbarMoreButtonAriaLabel:"More options"};var errorBar$k={unableToReachChatService:"You are offline",accessDenied:"Unable to access chat services - please check the user credentials provided",userNotInChatThread:"You are no longer in this chat thread",sendMessageNotInChatThread:"Failed to send message because you are no longer in this chat thread",sendMessageGeneric:"Failed to send message",callingNetworkFailure:"Troubling connecting call - you seem to be offline",startVideoGeneric:"Failed to start video",stopVideoGeneric:"Failed to stop video",muteGeneric:"Failed to mute microphone",unmuteGeneric:"Failed to unmute microphone",speakingWhileMuted:"Your microphone is muted",startScreenShareGeneric:"There was an issue starting screen share.",stopScreenShareGeneric:"Failed to stop screen sharing",callNetworkQualityLow:"Network quality is low.",callNoSpeakerFound:"No speakers or headphones found. Connect an audio device to hear the call.",callNoMicrophoneFound:"No microphones found. Connect an audio input device.",callMicrophoneAccessDenied:"Unable to access microphone. Click the lock in the address bar to grant permission to this webpage.",callMicrophoneAccessDeniedSafari:"Unable to access microphone. Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",callMicrophoneMutedBySystem:"You are muted by your system.",callMicrophoneUnmutedBySystem:"Your microphone recovered and you were unmuted by your system.",callMacOsMicrophoneAccessDenied:"Unable to access microphone. Grant microphone permission in your macOS privacy settings.",callLocalVideoFreeze:"Network bandwidth is poor. Your video may appear paused for others on the call.",callCameraAccessDenied:"Unable to access camera. Click the lock in the address bar to grant permission to this webpage.",callCameraAccessDeniedSafari:"Unable to access camera. Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",callCameraAlreadyInUse:"Unable to access camera. It may already be in use by another application.",callVideoStoppedBySystem:"Your video has been stopped by your system.",callVideoRecoveredBySystem:"Your video has resumed.",callMacOsCameraAccessDenied:"MacOS is blocking access to your camera. Update your privacy settings to allow this browser to access your camera.",callMacOsScreenShareAccessDenied:"MacOS is blocking screen sharing. Update your privacy settings to allow this browser to record your screen.",dismissButtonAriaLabel:"Close",failedToJoinCallGeneric:"Failed to join call.",failedToJoinCallInvalidMeetingLink:"Unable to join Meeting. Invalid Link.",cameraFrozenForRemoteParticipants:"Users in the call are having issues seeing your video. Please check your devices and network.",unableToStartVideoEffect:"Unable to apply video effect.",startSpotlightWhileMaxParticipantsAreSpotlighted:"Cannot start spotlight on participant(s) because the maximum number of participants are already spotlighted.",mutedByRemoteParticipant:"You were muted by another participant."};var notificationStack={callingNetworkFailure:{title:"Troubling connecting call",message:"You seem to be offline. Please check your network connection and try again.",closeButtonAriaLabel:"Close"},startVideoGeneric:{title:"Failed to start video.",closeButtonAriaLabel:"Close"},stopVideoGeneric:{title:"Failed to stop video.",closeButtonAriaLabel:"Close"},muteGeneric:{title:"Failed to mute microphone.",closeButtonAriaLabel:"Close"},unmuteGeneric:{title:"Failed to unmute microphone.",closeButtonAriaLabel:"Close"},speakingWhileMuted:{title:"You're muted.",closeButtonAriaLabel:"Close"},startScreenShareGeneric:{title:"There was an issue starting screen share.",closeButtonAriaLabel:"Close"},stopScreenShareGeneric:{title:"Failed to stop screen sharing.",closeButtonAriaLabel:"Close"},callNetworkQualityLow:{title:"Network quality is low.",closeButtonAriaLabel:"Close"},callNoSpeakerFound:{title:"No speakers or headphones found",message:"Connect an audio device to hear the call.",closeButtonAriaLabel:"Close"},callNoMicrophoneFound:{title:"No microphones found",message:"Connect an audio input device.",closeButtonAriaLabel:"Close"},callMicrophoneAccessDenied:{title:"Unable to access microphone",message:"Click the lock in the address bar to grant permission to this webpage.",closeButtonAriaLabel:"Close"},callMicrophoneAccessDeniedSafari:{title:"Unable to access microphone",message:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",closeButtonAriaLabel:"Close"},callMicrophoneMutedBySystem:{title:"You are muted by your system.",closeButtonAriaLabel:"Close"},callMicrophoneUnmutedBySystem:{title:"Your microphone recovered and you were unmuted by your system.",closeButtonAriaLabel:"Close"},callMacOsMicrophoneAccessDenied:{title:"Unable to access microphone",message:"Grant microphone permission in your macOS privacy settings.",closeButtonAriaLabel:"Close"},callLocalVideoFreeze:{title:"Network bandwidth is poor",message:"Your video may appear paused for others on the call.",closeButtonAriaLabel:"Close"},callCameraAccessDenied:{title:"Unable to access camera",message:"Click the lock in the address bar to grant permission to this webpage.",closeButtonAriaLabel:"Close"},callCameraAccessDeniedSafari:{title:"Unable to access camera",message:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",closeButtonAriaLabel:"Close"},callCameraAlreadyInUse:{title:"Unable to access camera",message:"It may already be in use by another application.",closeButtonAriaLabel:"Close"},callVideoStoppedBySystem:{title:"Your video has been stopped by your system.",closeButtonAriaLabel:"Close"},callVideoRecoveredBySystem:{title:"Your video has resumed.",closeButtonAriaLabel:"Close"},callMacOsCameraAccessDenied:{title:"MacOS is blocking access to your camera",message:"Update your privacy settings to allow this browser to access your camera.",closeButtonAriaLabel:"Close"},callMacOsScreenShareAccessDenied:{title:"MacOS is blocking screen sharing",message:"Update your privacy settings to allow this browser to record your screen.",closeButtonAriaLabel:"Close"},failedToJoinCallGeneric:{title:"Failed to join call.",closeButtonAriaLabel:"Close"},failedToJoinCallInvalidMeetingLink:{title:"Unable to join Meeting. Invalid Link.",closeButtonAriaLabel:"Close"},cameraFrozenForRemoteParticipants:{title:"Users in the call are having issues seeing your video",message:"Please check your devices and network.",closeButtonAriaLabel:"Close"},unableToStartVideoEffect:{title:"Unable to apply video effect.",closeButtonAriaLabel:"Close"},startSpotlightWhileMaxParticipantsAreSpotlighted:{title:"Cannot start spotlight on participant(s)",message:"The maximum number of participants are already spotlighted.",closeButtonAriaLabel:"Close"},mutedByRemoteParticipant:{title:"You were muted by another participant.",closeButtonAriaLabel:"Close"},recordingStarted:{title:"Recording has started.",message:"By joining, you are giving consent for this meeting to be transcribed.",closeButtonAriaLabel:"Close"},transcriptionStarted:{title:"Transcription has started.",message:"By joining, you are giving consent for this meeting to be transcribed.",closeButtonAriaLabel:"Close"},recordingStopped:{title:"Recording is being saved.",message:"Recording has stopped.",closeButtonAriaLabel:"Close"},transcriptionStopped:{title:"Transcription is being saved.",message:"Transcription has stopped.",closeButtonAriaLabel:"Close"},recordingAndTranscriptionStarted:{title:"Recording and transcription have started.",message:"By joining, you are giving consent for this meeting to be transcribed.",closeButtonAriaLabel:"Close"},recordingAndTranscriptionStopped:{title:"Recording and transcription are being saved.",message:"Recording and transcription have stopped.",closeButtonAriaLabel:"Close"},recordingStoppedStillTranscribing:{title:"Recording has stopped.",message:"You are now only transcribing this meeting.",closeButtonAriaLabel:"Close"},transcriptionStoppedStillRecording:{title:"Transcription has stopped.",message:"You are now only recording this meeting.",closeButtonAriaLabel:"Close"}};var videoGallery$k={screenIsBeingSharedMessage:"You are sharing your screen",screenShareLoadingMessage:"Loading {participant}'s screen",localVideoLabel:"You",localVideoCameraSwitcherLabel:"Switch camera",localVideoMovementLabel:"Movable Local Video Tile",localVideoMovementAriaLabel:"Movable Local Video Tile",localVideoSelectedDescription:"{cameraName} selected",displayNamePlaceholder:"Unnamed participant",fitRemoteParticipantToFrame:"Fit to frame",fillRemoteParticipantFrame:"Fill frame",pinParticipantForMe:"Pin for me",pinParticipantForMeLimitReached:"Pin (limit reached)",unpinParticipantForMe:"Unpin",pinParticipantMenuItemAriaLabel:"Pin {participantName}",unpinParticipantMenuItemAriaLabel:"Unpin {participantName}",pinnedParticipantAnnouncementAriaLabel:"Pinned {participantName}",unpinnedParticipantAnnouncementAriaLabel:"Unpinned {participantName}",startSpotlightVideoTileMenuLabel:"Spotlight for everyone",addSpotlightVideoTileMenuLabel:"Add spotlight",spotlightLimitReachedMenuTitle:"Spotlight limit reached",stopSpotlightVideoTileMenuLabel:"Stop spotlighting",stopSpotlightOnSelfVideoTileMenuLabel:"Exit spotlight",attendeeRole:"Attendee",muteParticipantMenuItemLabel:"Mute"};var dialpad$k={placeholderText:"Enter phone number",deleteButtonAriaLabel:"Delete"};var holdButton$k={onLabel:"Resume",offLabel:"Hold",tooltipOnContent:"Resume call",tooltipOffContent:"Hold call"};var videoTile$k={participantStateRinging:"Calling...",participantStateHold:"On hold",moreOptionsButtonAriaLabel:"More Options"};var CameraAndMicrophoneSitePermissionsRequest$k={primaryText:"Allow {appName} to use your camera and microphone",secondaryText:"This is so participants can see and hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera and microphone",ariaLabel:"Allow camera and microphone access"};var CameraSitePermissionsRequest$k={primaryText:"Allow {appName} to use your camera",secondaryText:"This is so participants can see you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera",ariaLabel:"Allow camera access"};var MicrophoneSitePermissionsRequest$k={primaryText:"Allow {appName} to use your microphone",secondaryText:"This is so participants can hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without microphone",ariaLabel:"Allow microphone access"};var CameraAndMicrophoneSitePermissionsCheck$k={primaryText:"Checking for camera and microphone access",secondaryText:"Allow access if prompted. This is so participants can see and hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera and microphone",ariaLabel:"Checking for camera and microphone access. Allow access if prompted."};var CameraSitePermissionsCheck$k={primaryText:"Checking for camera access",secondaryText:"Allow access if prompted. This is so participants can see you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera",ariaLabel:"Checking for camera access. Allow access if prompted."};var MicrophoneSitePermissionsCheck$k={primaryText:"Checking for microphone access",secondaryText:"Allow access if prompted. This is so participants can hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without microphone",ariaLabel:"Checking for microphone access. Allow access if prompted."};var CameraAndMicrophoneSitePermissionsDenied$k={primaryText:"Unable to access camera and microphone",secondaryText:"Click the lock icon in the address bar to grant microphone permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without camera and microphone",linkText:"Need help? Get troubleshooting help"};var CameraAndMicrophoneSitePermissionsDeniedSafari$k={primaryText:"Unable to access camera and microphone",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without camera and microphone",linkText:"Need help? Get troubleshooting help"};var CameraSitePermissionsDenied$k={primaryText:"Unable to access camera",secondaryText:"Click the lock icon in the address bar to grant camera permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without camera",linkText:"Need help? Get troubleshooting help"};var MicrophoneSitePermissionsDenied$k={primaryText:"Unable to access microphone",secondaryText:"Click the lock icon in the address bar to grant microphone permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without microphone",linkText:"Need help? Get troubleshooting help"};var CameraSitePermissionsDeniedSafari$k={primaryText:"Unable to access camera",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without camera",linkText:"Need help? Get troubleshooting help"};var MicrophoneSitePermissionsDeniedSafari$k={primaryText:"Unable to access microphone",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without microphone",linkText:"Need help? Get troubleshooting help"};var UnsupportedBrowser$l={primaryText:"Browser not supported",secondaryText:"Please join this call using a compatible browser.",moreHelpLinkText:"See compatibility requirements"};var UnsupportedBrowserVersion$l={primaryText:"Browser update needed",secondaryText:"To ensure the best call possible, please update your browser and then try joining the call again.",moreHelpLinkText:"See compatibility requirements",continueAnywayButtonText:"Start call without updating"};var UnsupportedOperatingSystem$l={primaryText:"Operating system not supported",secondaryText:"Please join this call using a device with a compatible operating system.",moreHelpLinkText:"See compatibility requirements"};var BrowserPermissionDenied$k={primaryText:"Can't use your camera or microphone",secondaryText:"Your browser might not have access to your camera or microphone. To fix this, open System Preferences.",primaryButtonText:"Try again",linkText:"Need help? Get troubleshooting help"};var BrowserPermissionDeniedIOS$k={primaryText:"Allow microphone access to continue",secondaryText:"So other participants can hear you.",primaryButtonText:"Try again",imageAltText:"Microphone and camera device permission location for iOS",linkText:"Need help? Get troubleshooting help",step1Text:"Go to the Settings app",step2Text:"Scroll down to settings for this browser",step3Text:"Turn on Microphone (Camera optional)",step4Text:"Try joining the call again",step1DigitText:"1",step2DigitText:"2",step3DigitText:"3",step4DigitText:"4"};var verticalGallery$k={leftNavButtonAriaLabel:"previous page",rightNavButtonAriaLabel:"next page"};var MeetingConferencePhoneInfo$k={meetingConferencePhoneInfoModalTitle:"Join call from your phone",meetingConferencePhoneInfoModalDialIn:"Dial number",meetingConferencePhoneInfoModalMeetingId:"Enter meeting ID",meetingConferencePhoneInfoModalWait:"Wait to be admitted by organizer",meetingConferencePhoneInfoModalNoPhoneAvailable:"No phone available",meetingConferencePhoneInfoModalTollGeoData:"{country}, {city}",meetingConferencePhoneInfoModalTollFree:"(Toll-free)",meetingConferencePhoneInfoModalToll:"(Toll)"};var en_US$1 = {participantItem:participantItem$k,ParticipantList:ParticipantList$l,typingIndicator:typingIndicator$k,sendBox:sendBox$k,richTextSendBox:richTextSendBox$k,mentionPopover:mentionPopover$k,imageOverlay:imageOverlay$k,messageStatusIndicator:messageStatusIndicator$k,endCallButton:endCallButton$k,cameraButton:cameraButton$k,microphoneButton:microphoneButton$k,devicesButton:devicesButton$k,participantsButton:participantsButton$k,screenShareButton:screenShareButton$k,raiseHandButton:raiseHandButton$k,reactionButton:reactionButton$k,messageThread:messageThread$k,errorBar:errorBar$k,notificationStack:notificationStack,videoGallery:videoGallery$k,dialpad:dialpad$k,holdButton:holdButton$k,videoTile:videoTile$k,CameraAndMicrophoneSitePermissionsRequest:CameraAndMicrophoneSitePermissionsRequest$k,CameraSitePermissionsRequest:CameraSitePermissionsRequest$k,MicrophoneSitePermissionsRequest:MicrophoneSitePermissionsRequest$k,CameraAndMicrophoneSitePermissionsCheck:CameraAndMicrophoneSitePermissionsCheck$k,CameraSitePermissionsCheck:CameraSitePermissionsCheck$k,MicrophoneSitePermissionsCheck:MicrophoneSitePermissionsCheck$k,CameraAndMicrophoneSitePermissionsDenied:CameraAndMicrophoneSitePermissionsDenied$k,CameraAndMicrophoneSitePermissionsDeniedSafari:CameraAndMicrophoneSitePermissionsDeniedSafari$k,CameraSitePermissionsDenied:CameraSitePermissionsDenied$k,MicrophoneSitePermissionsDenied:MicrophoneSitePermissionsDenied$k,CameraSitePermissionsDeniedSafari:CameraSitePermissionsDeniedSafari$k,MicrophoneSitePermissionsDeniedSafari:MicrophoneSitePermissionsDeniedSafari$k,UnsupportedBrowser:UnsupportedBrowser$l,UnsupportedBrowserVersion:UnsupportedBrowserVersion$l,UnsupportedOperatingSystem:UnsupportedOperatingSystem$l,BrowserPermissionDenied:BrowserPermissionDenied$k,BrowserPermissionDeniedIOS:BrowserPermissionDeniedIOS$k,verticalGallery:verticalGallery$k,MeetingConferencePhoneInfo:MeetingConferencePhoneInfo$k};
|
5958
|
+
var participantItem$k={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted",displayNamePlaceholder:"Unnamed participant",participantStateRinging:"Calling...",participantStateHold:"On hold",attendeeRole:"Attendee"};var ParticipantList$l={overflowParticipantCount:"+{overflowCount} more"};var typingIndicator$k={singleUser:"{user} is typing ...",multipleUsers:"{users} are typing ...",multipleUsersAbbreviateOne:"{users} and 1 other are typing ...",multipleUsersAbbreviateMany:"{users} and {numOthers} others are typing ...",delimiter:", "};var sendBox$k={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",attachmentUploadsPendingError:"Uploading... Please wait.",removeAttachment:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed",attachmentMoreMenu:"More Options"};var richTextSendBox$k={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",attachmentUploadsPendingError:"Uploading... Please wait.",removeAttachment:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed",richTextBoldTooltip:"Bold",richTextItalicTooltip:"Italic",richTextUnderlineTooltip:"Underline",richTextBulletListTooltip:"Bulleted list",richTextNumberListTooltip:"Numbered list",richTextIncreaseIndentTooltip:"Increase indent",richTextDecreaseIndentTooltip:"Decrease indent",richTextInsertTableTooltip:"Insert table",richTextFormatButtonTooltip:"Format",richTextInsertRowOrColumnMenu:"Insert",richTextInsertTableMenuTitle:"Insert {column} x {row} table",richTextInsertRowAboveMenu:"Insert above",richTextInsertRowBelowMenu:"Insert below",richTextInsertColumnLeftMenu:"Insert left",richTextInsertColumnRightMenu:"Insert right",richTextDeleteRowOrColumnMenu:"Delete",richTextDeleteColumnMenu:"Delete column",richTextDeleteRowMenu:"Delete row",richTextDeleteTableMenu:"Delete table",richTextToolbarMoreButtonAriaLabel:"More options",attachmentMoreMenu:"More Options"};var mentionPopover$k={mentionPopoverHeader:"Suggestions"};var imageOverlay$k={downloadButtonLabel:"Download",dismissButtonAriaLabel:"Close"};var messageStatusIndicator$k={deliveredAriaLabel:"Message sent",deliveredTooltipText:"Sent",seenAriaLabel:"Message seen by others",seenTooltipText:"Seen",readByTooltipText:"Read by {messageThreadReadCount} of {remoteParticipantsCount}",sendingAriaLabel:"Message sending",sendingTooltipText:"Sending",failedToSendAriaLabel:"Message failed to send",failedToSendTooltipText:"Failed to send"};var endCallButton$k={label:"Leave",tooltipContent:"Leave call",leaveOption:"Leave",endCallOption:"End call for everyone"};var cameraButton$k={onLabel:"Camera",offLabel:"Camera",tooltipDisabledContent:"Camera is disabled",tooltipOnContent:"Turn off camera",tooltipOffContent:"Turn on camera",tooltipVideoLoadingContent:"Video is loading",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",cameraButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Turn off camera and camera options",offSplitButtonAriaLabel:"Turn on camera and camera options",cameraActionTurnedOnAnnouncement:"Your camera has been turned on",cameraActionTurnedOffAnnouncement:"Your camera has been turned off",onSplitButtonPrimaryActionCamera:"Turn off camera",offSplitButtonPrimaryActionCamera:"Turn on camera",cameraPrimaryActionSplitButtonTitle:"Use camera",videoEffectsMenuItemTitle:"Effects"};var microphoneButton$k={onLabel:"Mic",offLabel:"Mic",tooltipDisabledContent:"Microphone is disabled",tooltipOnContent:"Mute microphone",tooltipOffContent:"Unmute microphone",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker",microphoneButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Mute microphone and audio options",offSplitButtonAriaLabel:"Unmute microphone and audio options",microphoneActionTurnedOnAnnouncement:"Your microphone has been turned on",microphoneActionTurnedOffAnnouncement:"Your microphone has been turned off",offSplitButtonMicrophonePrimaryAction:"Unmute microphone",onSplitButtonMicrophonePrimaryAction:"Mute microphone",microphonePrimaryActionSplitButtonTitle:"Use microphone"};var devicesButton$k={label:"Devices",tooltipContent:"Manage devices",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",audioDeviceMenuTitle:"Audio Device",audioDeviceMenuTooltip:"Choose audio device",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker"};var participantsButton$k={label:"People",tooltipContent:"Show participants",menuHeader:"In this call",participantsListButtonLabel:"{numParticipants} people",muteAllButtonLabel:"Mute all",copyInviteLinkButtonLabel:"Copy invite link",copyInviteLinkActionedAriaLabel:"Invite link copied"};var screenShareButton$k={onLabel:"Stop presenting",offLabel:"Present",tooltipDisabledContent:"Presenting is disabled",tooltipOnContent:"Presenting your screen",tooltipOffContent:"Present your screen"};var raiseHandButton$k={offLabel:"Raise",onLabel:"Lower",tooltipDisabledContent:"Raise Hand action is disabled",tooltipOnContent:"Lower Hand",tooltipOffContent:"Raise Hand"};var reactionButton$k={label:"React",ariaLabel:"React Button, Send a reaction",tooltipDisabledContent:"Reaction action is disabled",tooltipContent:"Send a reaction",likeReactionTooltipContent:"Like",heartReactionTooltipContent:"Love",laughReactionTooltipContent:"Laugh",applauseReactionTooltipContent:"Applause",surprisedReactionTooltipContent:"Surprised"};var messageThread$k={yesterday:"Yesterday",sunday:"Sunday",monday:"Monday",tuesday:"Tuesday",wednesday:"Wednesday",thursday:"Thursday",friday:"Friday",saturday:"Saturday",participantJoined:"joined the chat.",participantLeft:"left the chat.",editMessage:"Edit",removeMessage:"Delete",resendMessage:"Try sending again",failToSendTag:"Failed to send",editedTag:"Edited",liveAuthorIntro:"{author} says",messageContentAriaText:"{status} {author} said {message}",messageContentMineAriaText:"{status} You said {message}",editBoxTextLimit:"Your message is over the limit of {limitNumber} characters",editBoxPlaceholderText:"Edit your message",newMessagesIndicator:"New messages",noDisplayNameSub:"No name",editBoxCancelButton:"Cancel",editBoxSubmitButton:"Done",messageReadCount:"Read by {messageReadByCount} of {remoteParticipantsCount}",actionMenuMoreOptions:"More Options",downloadAttachment:"Download file",openAttachment:"Open file",blockedWarningText:"This message was deleted due to organizational policy.",blockedWarningLinkText:"Details",attachmentCardGroupMessage:"The message has {attachmentCount} attachment",messageDeletedAnnouncementAriaLabel:"The message is deleted",richTextBoldTooltip:"Bold",richTextItalicTooltip:"Italic",richTextUnderlineTooltip:"Underline",richTextBulletListTooltip:"Bulleted list",richTextNumberListTooltip:"Numbered list",richTextIncreaseIndentTooltip:"Increase indent",richTextDecreaseIndentTooltip:"Decrease indent",richTextInsertTableTooltip:"Insert table",richTextFormatButtonTooltip:"Format",richTextInsertRowOrColumnMenu:"Insert",richTextInsertTableMenuTitle:"Insert {column} x {row} table",richTextInsertRowAboveMenu:"Insert above",richTextInsertRowBelowMenu:"Insert below",richTextInsertColumnLeftMenu:"Insert left",richTextInsertColumnRightMenu:"Insert right",richTextDeleteRowOrColumnMenu:"Delete",richTextDeleteColumnMenu:"Delete column",richTextDeleteRowMenu:"Delete row",richTextDeleteTableMenu:"Delete table",richTextToolbarMoreButtonAriaLabel:"More options",attachmentUploadsPendingError:"Uploading... Please wait."};var errorBar$k={unableToReachChatService:"You are offline",accessDenied:"Unable to access chat services - please check the user credentials provided",userNotInChatThread:"You are no longer in this chat thread",sendMessageNotInChatThread:"Failed to send message because you are no longer in this chat thread",sendMessageGeneric:"Failed to send message",callingNetworkFailure:"Troubling connecting call - you seem to be offline",startVideoGeneric:"Failed to start video",stopVideoGeneric:"Failed to stop video",muteGeneric:"Failed to mute microphone",unmuteGeneric:"Failed to unmute microphone",speakingWhileMuted:"Your microphone is muted",startScreenShareGeneric:"There was an issue starting screen share.",stopScreenShareGeneric:"Failed to stop screen sharing",callNetworkQualityLow:"Network quality is low.",teamsMeetingCallNetworkQualityLow:"Network quality is low.",callNoSpeakerFound:"No speakers or headphones found. Connect an audio device to hear the call.",callNoMicrophoneFound:"No microphones found. Connect an audio input device.",callMicrophoneAccessDenied:"Unable to access microphone. Click the lock in the address bar to grant permission to this webpage.",callMicrophoneAccessDeniedSafari:"Unable to access microphone. Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",callMicrophoneMutedBySystem:"You are muted by your system.",callMicrophoneUnmutedBySystem:"Your microphone recovered and you were unmuted by your system.",callMacOsMicrophoneAccessDenied:"Unable to access microphone. Grant microphone permission in your macOS privacy settings.",callLocalVideoFreeze:"Network bandwidth is poor. Your video may appear paused for others on the call.",callCameraAccessDenied:"Unable to access camera. Click the lock in the address bar to grant permission to this webpage.",callCameraAccessDeniedSafari:"Unable to access camera. Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",callCameraAlreadyInUse:"Unable to access camera. It may already be in use by another application.",callVideoStoppedBySystem:"Your video has been stopped by your system.",callVideoRecoveredBySystem:"Your video has resumed.",callMacOsCameraAccessDenied:"MacOS is blocking access to your camera. Update your privacy settings to allow this browser to access your camera.",callMacOsScreenShareAccessDenied:"MacOS is blocking screen sharing. Update your privacy settings to allow this browser to record your screen.",dismissButtonAriaLabel:"Close",failedToJoinCallGeneric:"Failed to join call.",failedToJoinCallInvalidMeetingLink:"Unable to join Meeting. Invalid Link.",cameraFrozenForRemoteParticipants:"Users in the call are having issues seeing your video. Please check your devices and network.",unableToStartVideoEffect:"Unable to apply video effect.",startSpotlightWhileMaxParticipantsAreSpotlighted:"Cannot start spotlight on participant(s) because the maximum number of participants are already spotlighted.",mutedByRemoteParticipant:"You were muted by another participant."};var notificationStack={callingNetworkFailure:{title:"Troubling connecting call",message:"You seem to be offline. Please check your network connection and try again.",closeButtonAriaLabel:"Close"},startVideoGeneric:{title:"Failed to start video.",closeButtonAriaLabel:"Close"},stopVideoGeneric:{title:"Failed to stop video.",closeButtonAriaLabel:"Close"},muteGeneric:{title:"Failed to mute microphone.",closeButtonAriaLabel:"Close"},unmuteGeneric:{title:"Failed to unmute microphone.",closeButtonAriaLabel:"Close"},speakingWhileMuted:{title:"You're muted.",closeButtonAriaLabel:"Close"},startScreenShareGeneric:{title:"There was an issue starting screen share.",closeButtonAriaLabel:"Close"},stopScreenShareGeneric:{title:"Failed to stop screen sharing.",closeButtonAriaLabel:"Close"},callNetworkQualityLow:{title:"Network quality is low.",closeButtonAriaLabel:"Close"},teamsMeetingCallNetworkQualityLow:{title:"Network quality is low.",closeButtonAriaLabel:"Close",message:"Join this call from your phone for better sound. You can continue viewing the meeting on this device.",primaryButtonLabel:"Join by Phone"},callNoSpeakerFound:{title:"No speakers or headphones found",message:"Connect an audio device to hear the call.",closeButtonAriaLabel:"Close"},callNoMicrophoneFound:{title:"No microphones found",message:"Connect an audio input device.",closeButtonAriaLabel:"Close"},callMicrophoneAccessDenied:{title:"Unable to access microphone",message:"Click the lock in the address bar to grant permission to this webpage.",closeButtonAriaLabel:"Close"},callMicrophoneAccessDeniedSafari:{title:"Unable to access microphone",message:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",closeButtonAriaLabel:"Close"},callMicrophoneMutedBySystem:{title:"You are muted by your system.",closeButtonAriaLabel:"Close"},callMicrophoneUnmutedBySystem:{title:"Your microphone recovered and you were unmuted by your system.",closeButtonAriaLabel:"Close"},callMacOsMicrophoneAccessDenied:{title:"Unable to access microphone",message:"Grant microphone permission in your macOS privacy settings.",closeButtonAriaLabel:"Close"},callLocalVideoFreeze:{title:"Network bandwidth is poor",message:"Your video may appear paused for others on the call.",closeButtonAriaLabel:"Close"},callCameraAccessDenied:{title:"Unable to access camera",message:"Click the lock in the address bar to grant permission to this webpage.",closeButtonAriaLabel:"Close"},callCameraAccessDeniedSafari:{title:"Unable to access camera",message:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",closeButtonAriaLabel:"Close"},callCameraAlreadyInUse:{title:"Unable to access camera",message:"It may already be in use by another application.",closeButtonAriaLabel:"Close"},callVideoStoppedBySystem:{title:"Your video has been stopped by your system.",closeButtonAriaLabel:"Close"},callVideoRecoveredBySystem:{title:"Your video has resumed.",closeButtonAriaLabel:"Close"},callMacOsCameraAccessDenied:{title:"MacOS is blocking access to your camera",message:"Update your privacy settings to allow this browser to access your camera.",closeButtonAriaLabel:"Close"},callMacOsScreenShareAccessDenied:{title:"MacOS is blocking screen sharing",message:"Update your privacy settings to allow this browser to record your screen.",closeButtonAriaLabel:"Close"},failedToJoinCallGeneric:{title:"Failed to join call.",closeButtonAriaLabel:"Close"},failedToJoinCallInvalidMeetingLink:{title:"Unable to join Meeting. Invalid Link.",closeButtonAriaLabel:"Close"},cameraFrozenForRemoteParticipants:{title:"Users in the call are having issues seeing your video",message:"Please check your devices and network.",closeButtonAriaLabel:"Close"},unableToStartVideoEffect:{title:"Unable to apply video effect.",closeButtonAriaLabel:"Close"},startSpotlightWhileMaxParticipantsAreSpotlighted:{title:"Cannot start spotlight on participant(s)",message:"The maximum number of participants are already spotlighted.",closeButtonAriaLabel:"Close"},mutedByRemoteParticipant:{title:"You were muted by another participant.",closeButtonAriaLabel:"Close"},recordingStarted:{title:"Recording has started.",message:"By joining, you are giving consent for this meeting to be transcribed.",closeButtonAriaLabel:"Close"},transcriptionStarted:{title:"Transcription has started.",message:"By joining, you are giving consent for this meeting to be transcribed.",closeButtonAriaLabel:"Close"},recordingStopped:{title:"Recording is being saved.",message:"Recording has stopped.",closeButtonAriaLabel:"Close"},transcriptionStopped:{title:"Transcription is being saved.",message:"Transcription has stopped.",closeButtonAriaLabel:"Close"},recordingAndTranscriptionStarted:{title:"Recording and transcription have started.",message:"By joining, you are giving consent for this meeting to be transcribed.",closeButtonAriaLabel:"Close"},recordingAndTranscriptionStopped:{title:"Recording and transcription are being saved.",message:"Recording and transcription have stopped.",closeButtonAriaLabel:"Close"},recordingStoppedStillTranscribing:{title:"Recording has stopped.",message:"You are now only transcribing this meeting.",closeButtonAriaLabel:"Close"},transcriptionStoppedStillRecording:{title:"Transcription has stopped.",message:"You are now only recording this meeting.",closeButtonAriaLabel:"Close"}};var videoGallery$k={screenIsBeingSharedMessage:"You are sharing your screen",screenShareLoadingMessage:"Loading {participant}'s screen",localVideoLabel:"You",localVideoCameraSwitcherLabel:"Switch camera",localVideoMovementLabel:"Movable Local Video Tile",localVideoMovementAriaLabel:"Movable Local Video Tile",localVideoSelectedDescription:"{cameraName} selected",displayNamePlaceholder:"Unnamed participant",fitRemoteParticipantToFrame:"Fit to frame",fillRemoteParticipantFrame:"Fill frame",pinParticipantForMe:"Pin for me",pinParticipantForMeLimitReached:"Pin (limit reached)",unpinParticipantForMe:"Unpin",pinParticipantMenuItemAriaLabel:"Pin {participantName}",unpinParticipantMenuItemAriaLabel:"Unpin {participantName}",pinnedParticipantAnnouncementAriaLabel:"Pinned {participantName}",unpinnedParticipantAnnouncementAriaLabel:"Unpinned {participantName}",startSpotlightVideoTileMenuLabel:"Spotlight for everyone",addSpotlightVideoTileMenuLabel:"Add spotlight",spotlightLimitReachedMenuTitle:"Spotlight limit reached",stopSpotlightVideoTileMenuLabel:"Stop spotlighting",stopSpotlightOnSelfVideoTileMenuLabel:"Exit spotlight",attendeeRole:"Attendee",muteParticipantMenuItemLabel:"Mute"};var dialpad$k={placeholderText:"Enter phone number",deleteButtonAriaLabel:"Delete"};var holdButton$k={onLabel:"Resume",offLabel:"Hold",tooltipOnContent:"Resume call",tooltipOffContent:"Hold call"};var videoTile$k={participantStateRinging:"Calling...",participantStateHold:"On hold",moreOptionsButtonAriaLabel:"More Options"};var CameraAndMicrophoneSitePermissionsRequest$k={primaryText:"Allow {appName} to use your camera and microphone",secondaryText:"This is so participants can see and hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera and microphone",ariaLabel:"Allow camera and microphone access"};var CameraSitePermissionsRequest$k={primaryText:"Allow {appName} to use your camera",secondaryText:"This is so participants can see you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera",ariaLabel:"Allow camera access"};var MicrophoneSitePermissionsRequest$k={primaryText:"Allow {appName} to use your microphone",secondaryText:"This is so participants can hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without microphone",ariaLabel:"Allow microphone access"};var CameraAndMicrophoneSitePermissionsCheck$k={primaryText:"Checking for camera and microphone access",secondaryText:"Allow access if prompted. This is so participants can see and hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera and microphone",ariaLabel:"Checking for camera and microphone access. Allow access if prompted."};var CameraSitePermissionsCheck$k={primaryText:"Checking for camera access",secondaryText:"Allow access if prompted. This is so participants can see you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera",ariaLabel:"Checking for camera access. Allow access if prompted."};var MicrophoneSitePermissionsCheck$k={primaryText:"Checking for microphone access",secondaryText:"Allow access if prompted. This is so participants can hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without microphone",ariaLabel:"Checking for microphone access. Allow access if prompted."};var CameraAndMicrophoneSitePermissionsDenied$k={primaryText:"Unable to access camera and microphone",secondaryText:"Click the lock icon in the address bar to grant microphone permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without camera and microphone",linkText:"Need help? Get troubleshooting help"};var CameraAndMicrophoneSitePermissionsDeniedSafari$k={primaryText:"Unable to access camera and microphone",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without camera and microphone",linkText:"Need help? Get troubleshooting help"};var CameraSitePermissionsDenied$k={primaryText:"Unable to access camera",secondaryText:"Click the lock icon in the address bar to grant camera permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without camera",linkText:"Need help? Get troubleshooting help"};var MicrophoneSitePermissionsDenied$k={primaryText:"Unable to access microphone",secondaryText:"Click the lock icon in the address bar to grant microphone permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without microphone",linkText:"Need help? Get troubleshooting help"};var CameraSitePermissionsDeniedSafari$k={primaryText:"Unable to access camera",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without camera",linkText:"Need help? Get troubleshooting help"};var MicrophoneSitePermissionsDeniedSafari$k={primaryText:"Unable to access microphone",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without microphone",linkText:"Need help? Get troubleshooting help"};var UnsupportedBrowser$l={primaryText:"Browser not supported",secondaryText:"Please join this call using a compatible browser.",moreHelpLinkText:"See compatibility requirements"};var UnsupportedBrowserVersion$l={primaryText:"Browser update needed",secondaryText:"To ensure the best call possible, please update your browser and then try joining the call again.",moreHelpLinkText:"See compatibility requirements",continueAnywayButtonText:"Start call without updating"};var UnsupportedOperatingSystem$l={primaryText:"Operating system not supported",secondaryText:"Please join this call using a device with a compatible operating system.",moreHelpLinkText:"See compatibility requirements"};var BrowserPermissionDenied$k={primaryText:"Can't use your camera or microphone",secondaryText:"Your browser might not have access to your camera or microphone. To fix this, open System Preferences.",primaryButtonText:"Try again",linkText:"Need help? Get troubleshooting help"};var BrowserPermissionDeniedIOS$k={primaryText:"Allow microphone access to continue",secondaryText:"So other participants can hear you.",primaryButtonText:"Try again",imageAltText:"Microphone and camera device permission location for iOS",linkText:"Need help? Get troubleshooting help",step1Text:"Go to the Settings app",step2Text:"Scroll down to settings for this browser",step3Text:"Turn on Microphone (Camera optional)",step4Text:"Try joining the call again",step1DigitText:"1",step2DigitText:"2",step3DigitText:"3",step4DigitText:"4"};var verticalGallery$k={leftNavButtonAriaLabel:"previous page",rightNavButtonAriaLabel:"next page"};var MeetingConferencePhoneInfo$k={meetingConferencePhoneInfoModalTitle:"Join call from your phone",meetingConferencePhoneInfoModalDialIn:"Dial number",meetingConferencePhoneInfoModalMeetingId:"Enter meeting ID",meetingConferencePhoneInfoModalWait:"Wait to be admitted by organizer",meetingConferencePhoneInfoModalNoPhoneAvailable:"No phone available",meetingConferencePhoneInfoModalTollGeoData:"{country}, {city}",meetingConferencePhoneInfoModalTollFree:"(Toll-free)",meetingConferencePhoneInfoModalToll:"(Toll)"};var IncomingCallNotification$1={incomingCallNotificationPlaceholderId:"Unknown User",incomingCallNotificationPlaceholderAlert:"Incoming call",incomingCallNoticicationAcceptWithAudioAriaLabel:"Accept with audio",incomingCallNoticicationAcceptWithVideoAriaLabel:"Accept with video",incomingCallNoticicationRejectAriaLabel:"Reject"};var en_US$1 = {participantItem:participantItem$k,ParticipantList:ParticipantList$l,typingIndicator:typingIndicator$k,sendBox:sendBox$k,richTextSendBox:richTextSendBox$k,mentionPopover:mentionPopover$k,imageOverlay:imageOverlay$k,messageStatusIndicator:messageStatusIndicator$k,endCallButton:endCallButton$k,cameraButton:cameraButton$k,microphoneButton:microphoneButton$k,devicesButton:devicesButton$k,participantsButton:participantsButton$k,screenShareButton:screenShareButton$k,raiseHandButton:raiseHandButton$k,reactionButton:reactionButton$k,messageThread:messageThread$k,errorBar:errorBar$k,notificationStack:notificationStack,videoGallery:videoGallery$k,dialpad:dialpad$k,holdButton:holdButton$k,videoTile:videoTile$k,CameraAndMicrophoneSitePermissionsRequest:CameraAndMicrophoneSitePermissionsRequest$k,CameraSitePermissionsRequest:CameraSitePermissionsRequest$k,MicrophoneSitePermissionsRequest:MicrophoneSitePermissionsRequest$k,CameraAndMicrophoneSitePermissionsCheck:CameraAndMicrophoneSitePermissionsCheck$k,CameraSitePermissionsCheck:CameraSitePermissionsCheck$k,MicrophoneSitePermissionsCheck:MicrophoneSitePermissionsCheck$k,CameraAndMicrophoneSitePermissionsDenied:CameraAndMicrophoneSitePermissionsDenied$k,CameraAndMicrophoneSitePermissionsDeniedSafari:CameraAndMicrophoneSitePermissionsDeniedSafari$k,CameraSitePermissionsDenied:CameraSitePermissionsDenied$k,MicrophoneSitePermissionsDenied:MicrophoneSitePermissionsDenied$k,CameraSitePermissionsDeniedSafari:CameraSitePermissionsDeniedSafari$k,MicrophoneSitePermissionsDeniedSafari:MicrophoneSitePermissionsDeniedSafari$k,UnsupportedBrowser:UnsupportedBrowser$l,UnsupportedBrowserVersion:UnsupportedBrowserVersion$l,UnsupportedOperatingSystem:UnsupportedOperatingSystem$l,BrowserPermissionDenied:BrowserPermissionDenied$k,BrowserPermissionDeniedIOS:BrowserPermissionDeniedIOS$k,verticalGallery:verticalGallery$k,MeetingConferencePhoneInfo:MeetingConferencePhoneInfo$k,IncomingCallNotification:IncomingCallNotification$1};
|
5936
5959
|
|
5937
5960
|
// Copyright (c) Microsoft Corporation.
|
5938
5961
|
// Licensed under the MIT License.
|
@@ -6431,6 +6454,8 @@ const NotificationIconProps = (notificationType) => {
|
|
6431
6454
|
*/
|
6432
6455
|
const customNotificationIconName = {
|
6433
6456
|
callNetworkQualityLow: 'ErrorBarCallNetworkQualityLow',
|
6457
|
+
/* @conditional-compile-remove(teams-meeting-conference) */
|
6458
|
+
teamsMeetingCallNetworkQualityLow: 'ErrorBarCallNetworkQualityLow',
|
6434
6459
|
callNoSpeakerFound: 'ErrorBarCallNoSpeakerFound',
|
6435
6460
|
callNoMicrophoneFound: 'ErrorBarCallNoMicrophoneFound',
|
6436
6461
|
callMicrophoneAccessDenied: 'ErrorBarCallMicrophoneAccessDenied',
|
@@ -6554,8 +6579,8 @@ const ErrorBar = (props) => {
|
|
6554
6579
|
lineHeight: 'inherit'
|
6555
6580
|
},
|
6556
6581
|
dismissal: {
|
6557
|
-
height:
|
6558
|
-
|
6582
|
+
height: '2rem',
|
6583
|
+
paddingBottom: '0.8rem'
|
6559
6584
|
}
|
6560
6585
|
}, key: error.type, messageBarType: messageBarType(error.type), messageBarIconProps: messageBarIconProps(error.type), onDismiss: () => {
|
6561
6586
|
var _a;
|
@@ -7265,7 +7290,10 @@ const DEFAULT_COMPONENT_ICONS = {
|
|
7265
7290
|
/* @conditional-compile-remove(rich-text-editor) */
|
7266
7291
|
RichTextTableDeleteMenuIcon: React.createElement(reactIcons.TableDismiss20Regular, null),
|
7267
7292
|
/* @conditional-compile-remove(soft-mute) */
|
7268
|
-
ContextualMenuMicMutedIcon: React.createElement(reactIcons.MicOff20Regular, null)
|
7293
|
+
ContextualMenuMicMutedIcon: React.createElement(reactIcons.MicOff20Regular, null),
|
7294
|
+
IncomingCallNotificationRejectIcon: React.createElement(reactIcons.CallEnd20Filled, null),
|
7295
|
+
IncomingCallNotificationAcceptIcon: React.createElement(reactIcons.Call20Filled, null),
|
7296
|
+
IncomingCallNotificationAcceptWithVideoIcon: React.createElement(reactIcons.Video20Filled, null)
|
7269
7297
|
};
|
7270
7298
|
|
7271
7299
|
// Copyright (c) Microsoft Corporation.
|
@@ -9510,15 +9538,21 @@ const isAttachmentUploadCompleted = (attachmentsWithProgress) => {
|
|
9510
9538
|
};
|
9511
9539
|
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
9512
9540
|
/**
|
9513
|
-
* @
|
9541
|
+
* @internal
|
9514
9542
|
*/
|
9515
9543
|
// Before sending the image, we need to add the image id we get back after uploading the images to the message content.
|
9516
9544
|
const addUploadedImagesToMessage = (message, uploadInlineImages) => {
|
9545
|
+
if (message === '') {
|
9546
|
+
return message;
|
9547
|
+
}
|
9517
9548
|
const document = new DOMParser().parseFromString(message !== null && message !== void 0 ? message : '', 'text/html');
|
9518
9549
|
document.querySelectorAll('img').forEach((img) => {
|
9519
|
-
var _a
|
9520
|
-
|
9521
|
-
|
9550
|
+
var _a;
|
9551
|
+
if (!img.id) {
|
9552
|
+
const uploadInlineImage = uploadInlineImages.find((imageUpload) => !imageUpload.error && (imageUpload.url === img.src || imageUpload.id === img.id));
|
9553
|
+
img.id = (_a = uploadInlineImage === null || uploadInlineImage === void 0 ? void 0 : uploadInlineImage.id) !== null && _a !== void 0 ? _a : '';
|
9554
|
+
img.src = '';
|
9555
|
+
}
|
9522
9556
|
});
|
9523
9557
|
const newMessage = document.body.innerHTML;
|
9524
9558
|
return newMessage;
|
@@ -9559,6 +9593,66 @@ hasCompletedAttachmentUploads, hasError, disabled }) => {
|
|
9559
9593
|
hasError ||
|
9560
9594
|
disabled);
|
9561
9595
|
};
|
9596
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
9597
|
+
/**
|
9598
|
+
* @internal
|
9599
|
+
*/
|
9600
|
+
const cancelInlineImageUpload = (imageSrcArray, imageUploadsInProgress, onCancelInlineImageUpload) => {
|
9601
|
+
if (imageSrcArray && imageUploadsInProgress && (imageUploadsInProgress === null || imageUploadsInProgress === void 0 ? void 0 : imageUploadsInProgress.length) > 0) {
|
9602
|
+
imageUploadsInProgress === null || imageUploadsInProgress === void 0 ? void 0 : imageUploadsInProgress.map((uploadImage) => {
|
9603
|
+
if (uploadImage.url && imageSrcArray && !(imageSrcArray === null || imageSrcArray === void 0 ? void 0 : imageSrcArray.includes(uploadImage.url))) {
|
9604
|
+
onCancelInlineImageUpload === null || onCancelInlineImageUpload === void 0 ? void 0 : onCancelInlineImageUpload(uploadImage.id);
|
9605
|
+
}
|
9606
|
+
});
|
9607
|
+
}
|
9608
|
+
};
|
9609
|
+
/* @conditional-compile-remove(file-sharing-acs) */
|
9610
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
9611
|
+
/**
|
9612
|
+
* @internal
|
9613
|
+
*/
|
9614
|
+
const toAttachmentMetadata = (attachmentsWithProgress,
|
9615
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */ attachmentType) => {
|
9616
|
+
return attachmentsWithProgress === null || attachmentsWithProgress === void 0 ? void 0 : attachmentsWithProgress.filter((attachment) => {
|
9617
|
+
var _a;
|
9618
|
+
return !('error' in attachment) && !((_a = attachment.error) === null || _a === void 0 ? void 0 : _a.message);
|
9619
|
+
}).map((attachment) => {
|
9620
|
+
let url = attachment.url || '';
|
9621
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
9622
|
+
if (attachmentType === 'image') {
|
9623
|
+
url = '';
|
9624
|
+
}
|
9625
|
+
return {
|
9626
|
+
id: attachment.id,
|
9627
|
+
name: attachment.name,
|
9628
|
+
url,
|
9629
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
9630
|
+
attachmentType: attachmentType
|
9631
|
+
};
|
9632
|
+
});
|
9633
|
+
};
|
9634
|
+
/* @conditional-compile-remove(file-sharing-acs) */
|
9635
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
9636
|
+
/**
|
9637
|
+
* @internal
|
9638
|
+
*/
|
9639
|
+
const insertAttachmentsAndImages = (content, attachments, imageUploadsInProgress) => {
|
9640
|
+
if (!attachments && !imageUploadsInProgress) {
|
9641
|
+
return { content, attachmentArray: undefined };
|
9642
|
+
}
|
9643
|
+
/* @conditional-compile-remove(file-sharing-acs) */
|
9644
|
+
let attachmentArray = toAttachmentMetadata(attachments);
|
9645
|
+
let newContent = content;
|
9646
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
9647
|
+
if (imageUploadsInProgress) {
|
9648
|
+
newContent = addUploadedImagesToMessage(content, imageUploadsInProgress);
|
9649
|
+
const imageArray = toAttachmentMetadata(imageUploadsInProgress, 'image');
|
9650
|
+
if (imageArray) {
|
9651
|
+
attachmentArray = attachmentArray ? attachmentArray === null || attachmentArray === void 0 ? void 0 : attachmentArray.concat(imageArray) : imageArray;
|
9652
|
+
}
|
9653
|
+
}
|
9654
|
+
return { content: newContent, attachmentArray };
|
9655
|
+
};
|
9562
9656
|
|
9563
9657
|
// Copyright (c) Microsoft Corporation.
|
9564
9658
|
// Licensed under the MIT License.
|
@@ -10730,6 +10824,10 @@ class CopyPastePlugin {
|
|
10730
10824
|
}
|
10731
10825
|
}
|
10732
10826
|
}
|
10827
|
+
/**
|
10828
|
+
* @internal
|
10829
|
+
* Exported only for unit testing
|
10830
|
+
*/
|
10733
10831
|
const handleBeforePasteEvent = (event,
|
10734
10832
|
/* @conditional-compile-remove(rich-text-editor-image-upload) */ onPaste) => {
|
10735
10833
|
if (event.eventType === PluginEventType.BeforePaste && event.pasteType === 'normal') {
|
@@ -11482,7 +11580,6 @@ class TableEditContextMenuProvider {
|
|
11482
11580
|
this.editor = null;
|
11483
11581
|
}
|
11484
11582
|
getContextMenuItems(node) {
|
11485
|
-
// return this.items;
|
11486
11583
|
if (this.editor && isTableEditable(this.editor, node)) {
|
11487
11584
|
return this.items;
|
11488
11585
|
}
|
@@ -12015,8 +12112,8 @@ const RichTextSendBox = (props) => {
|
|
12015
12112
|
}
|
12016
12113
|
setContent(newValue);
|
12017
12114
|
}, [
|
12018
|
-
/* @conditional-compile-remove(rich-text-editor-image-upload) */ onCancelInlineImageUpload,
|
12019
12115
|
setContent,
|
12116
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */ onCancelInlineImageUpload,
|
12020
12117
|
/* @conditional-compile-remove(rich-text-editor-image-upload) */ imageUploadsInProgress
|
12021
12118
|
]);
|
12022
12119
|
const hasContent = React.useMemo(() => {
|
@@ -12026,28 +12123,6 @@ const RichTextSendBox = (props) => {
|
|
12026
12123
|
const plainTextContent = (_a = editorComponentRef.current) === null || _a === void 0 ? void 0 : _a.getPlainContent();
|
12027
12124
|
return sanitizeText(contentValue !== null && contentValue !== void 0 ? contentValue : '').length > 0 && sanitizeText(plainTextContent !== null && plainTextContent !== void 0 ? plainTextContent : '').length > 0;
|
12028
12125
|
}, [contentValue]);
|
12029
|
-
/* @conditional-compile-remove(file-sharing-acs) */
|
12030
|
-
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
12031
|
-
const toAttachmentMetadata = React.useCallback((attachmentsWithProgress,
|
12032
|
-
/* @conditional-compile-remove(rich-text-editor-image-upload) */ attachmentType) => {
|
12033
|
-
return attachmentsWithProgress === null || attachmentsWithProgress === void 0 ? void 0 : attachmentsWithProgress.filter((attachment) => {
|
12034
|
-
var _a;
|
12035
|
-
return !('error' in attachment) && !((_a = attachment.error) === null || _a === void 0 ? void 0 : _a.message);
|
12036
|
-
}).map((attachment) => {
|
12037
|
-
let url = attachment.url || '';
|
12038
|
-
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
12039
|
-
if (attachmentType === 'image') {
|
12040
|
-
url = '';
|
12041
|
-
}
|
12042
|
-
return {
|
12043
|
-
id: attachment.id,
|
12044
|
-
name: attachment.name,
|
12045
|
-
url,
|
12046
|
-
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
12047
|
-
attachmentType: attachmentType
|
12048
|
-
};
|
12049
|
-
});
|
12050
|
-
}, []);
|
12051
12126
|
const sendMessageOnClick = React.useCallback(() => {
|
12052
12127
|
var _a, _b;
|
12053
12128
|
if (disabled || contentValueOverflow) {
|
@@ -12071,15 +12146,12 @@ const RichTextSendBox = (props) => {
|
|
12071
12146
|
/* @conditional-compile-remove(file-sharing-acs) */ isAttachmentUploadCompleted(attachments) ||
|
12072
12147
|
/* @conditional-compile-remove(rich-text-editor-image-upload) */ isAttachmentUploadCompleted(imageUploadsInProgress)) {
|
12073
12148
|
/* @conditional-compile-remove(file-sharing-acs) */
|
12074
|
-
let attachmentArray = toAttachmentMetadata(attachments);
|
12075
12149
|
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
12076
|
-
|
12077
|
-
|
12078
|
-
|
12079
|
-
|
12080
|
-
|
12081
|
-
}
|
12082
|
-
}
|
12150
|
+
const { content, attachmentArray } = insertAttachmentsAndImages(contentValue,
|
12151
|
+
/* @conditional-compile-remove(file-sharing-acs) */ attachments,
|
12152
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */ imageUploadsInProgress);
|
12153
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
12154
|
+
message = content;
|
12083
12155
|
onSendMessage(message,
|
12084
12156
|
/* @conditional-compile-remove(file-sharing-acs) */ /* @conditional-compile-remove(rich-text-editor-composite-support) */
|
12085
12157
|
{
|
@@ -12105,9 +12177,6 @@ const RichTextSendBox = (props) => {
|
|
12105
12177
|
/* @conditional-compile-remove(file-sharing-acs) */
|
12106
12178
|
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
12107
12179
|
strings.attachmentUploadsPendingError,
|
12108
|
-
/* @conditional-compile-remove(file-sharing-acs) */
|
12109
|
-
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
12110
|
-
toAttachmentMetadata,
|
12111
12180
|
onSendMessage
|
12112
12181
|
]);
|
12113
12182
|
const hasErrorMessage = React.useMemo(() => {
|
@@ -12289,6 +12358,26 @@ const MessageStatusIndicatorIconStyle = react.mergeStyles({
|
|
12289
12358
|
height: `${MESSAGE_STATUS_INDICATOR_SIZE_REM}rem`
|
12290
12359
|
});
|
12291
12360
|
|
12361
|
+
// Copyright (c) Microsoft Corporation.
|
12362
|
+
// Licensed under the MIT License.
|
12363
|
+
/**
|
12364
|
+
* @private
|
12365
|
+
*/
|
12366
|
+
const scrollbarStyles = {
|
12367
|
+
'::-webkit-scrollbar, *::-webkit-scrollbar': {
|
12368
|
+
width: '0.3rem',
|
12369
|
+
height: '0.3rem'
|
12370
|
+
},
|
12371
|
+
'::-webkit-scrollbar-thumb, *::-webkit-scrollbar-thumb': {
|
12372
|
+
borderRadius: '10px',
|
12373
|
+
background: 'rgba(150, 150, 150)'
|
12374
|
+
}
|
12375
|
+
};
|
12376
|
+
/**
|
12377
|
+
* @private
|
12378
|
+
*/
|
12379
|
+
const ERROR_IMAGE_SVG_PATH = 'M2.85 2.15a.5.5 0 1 0-.7.7l1.4 1.41A2.99 2.99 0 0 0 3 6v8a3 3 0 0 0 3 3h8c.65 0 1.25-.2 1.74-.55l1.4 1.4a.5.5 0 0 0 .71-.7l-15-15Zm6.56 7.97a1.5 1.5 0 0 0-.46.31l-4.67 4.59A2 2 0 0 1 4 14V6a2 2 0 0 1 .28-1.02l5.13 5.14ZM6 16a2 2 0 0 1-1.01-.27l4.66-4.58c.2-.2.5-.2.7 0l4.66 4.58A2 2 0 0 1 14 16H6ZM16 6v7.88l.9.9A3 3 0 0 0 17 14V6a3 3 0 0 0-3-3H6a3 3 0 0 0-.78.1l.9.9H14a2 2 0 0 1 2 2Zm-2 1.5a1.5 1.5 0 1 0-3 0 1.5 1.5 0 0 0 3 0Zm-1 0a.5.5 0 1 1-1 0 .5.5 0 0 1 1 0Z';
|
12380
|
+
|
12292
12381
|
// Copyright (c) Microsoft Corporation.
|
12293
12382
|
// Licensed under the MIT License.
|
12294
12383
|
// Minimum chat bubble width. This matches the minimum chat bubble width from FluentUI
|
@@ -12482,6 +12571,23 @@ const useChatMessageStyles = reactComponents.makeStyles({
|
|
12482
12571
|
top: '0',
|
12483
12572
|
left: '0',
|
12484
12573
|
display: 'block'
|
12574
|
+
},
|
12575
|
+
'& .broken-image-wrapper': {
|
12576
|
+
width: '12rem',
|
12577
|
+
height: '12rem',
|
12578
|
+
marginTop: '0.75rem',
|
12579
|
+
display: 'flex',
|
12580
|
+
justifyContent: 'center',
|
12581
|
+
alignItems: 'center',
|
12582
|
+
outline: `1px solid ${reactComponents.tokens.colorNeutralForegroundDisabled}`,
|
12583
|
+
backgroundColor: reactComponents.tokens.colorNeutralBackground2
|
12584
|
+
},
|
12585
|
+
'& .broken-image-wrapper:after': {
|
12586
|
+
content: `''`,
|
12587
|
+
maskImage: `url("data:image/svg+xml,%3Csvg width='3rem' height='3rem' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' fill='currentColor'%3E%3Cpath d='${ERROR_IMAGE_SVG_PATH}' fill='currentColor' /%3E%3C/svg%3E");`,
|
12588
|
+
width: '3rem',
|
12589
|
+
height: '3rem',
|
12590
|
+
backgroundColor: `${reactComponents.tokens.colorNeutralForeground2}`
|
12485
12591
|
}
|
12486
12592
|
},
|
12487
12593
|
bodyWithoutAvatar: {
|
@@ -14161,7 +14267,7 @@ class _ErrorBoundary extends React.Component {
|
|
14161
14267
|
// Copyright (c) Microsoft Corporation.
|
14162
14268
|
// Licensed under the MIT License.
|
14163
14269
|
/* @conditional-compile-remove(rich-text-editor) */
|
14164
|
-
const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-
|
14270
|
+
const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-B4-VwPSY.js'); }));
|
14165
14271
|
/**
|
14166
14272
|
* @private
|
14167
14273
|
* Use this function to load RoosterJS dependencies early in the lifecycle.
|
@@ -14169,7 +14275,7 @@ const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve()
|
|
14169
14275
|
*
|
14170
14276
|
* @conditional-compile-remove(rich-text-editor)
|
14171
14277
|
*/
|
14172
|
-
const loadChatMessageComponentAsRichTextEditBox = () => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-
|
14278
|
+
const loadChatMessageComponentAsRichTextEditBox = () => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-B4-VwPSY.js'); });
|
14173
14279
|
/**
|
14174
14280
|
* @private
|
14175
14281
|
*/
|
@@ -14185,7 +14291,13 @@ const ChatMessageComponentAsEditBoxPicker = (props) => {
|
|
14185
14291
|
React.createElement(React.Suspense, { fallback: simpleEditBox },
|
14186
14292
|
React.createElement(ChatMessageComponentAsRichTextEditBox, Object.assign({}, props, {
|
14187
14293
|
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
14188
|
-
onPaste: richTextEditorOptions === null || richTextEditorOptions === void 0 ? void 0 : richTextEditorOptions.onPaste
|
14294
|
+
onPaste: richTextEditorOptions === null || richTextEditorOptions === void 0 ? void 0 : richTextEditorOptions.onPaste,
|
14295
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
14296
|
+
onUploadInlineImage: richTextEditorOptions === null || richTextEditorOptions === void 0 ? void 0 : richTextEditorOptions.onUploadInlineImage,
|
14297
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
14298
|
+
imageUploadsInProgress: richTextEditorOptions === null || richTextEditorOptions === void 0 ? void 0 : richTextEditorOptions.imageUploadsInProgress,
|
14299
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
14300
|
+
onCancelInlineImageUpload: richTextEditorOptions === null || richTextEditorOptions === void 0 ? void 0 : richTextEditorOptions.onCancelInlineImageUpload })))));
|
14189
14301
|
}
|
14190
14302
|
return simpleEditBox;
|
14191
14303
|
};
|
@@ -14246,9 +14358,7 @@ const ChatMyMessageComponent = (props) => {
|
|
14246
14358
|
message.messageId &&
|
14247
14359
|
(yield props.onUpdateMessage(message.messageId, text,
|
14248
14360
|
/* @conditional-compile-remove(file-sharing-acs) */
|
14249
|
-
{
|
14250
|
-
attachments: attachments
|
14251
|
-
}));
|
14361
|
+
{ attachments: attachments }));
|
14252
14362
|
setIsEditing(false);
|
14253
14363
|
});
|
14254
14364
|
}, [message, props]);
|
@@ -22857,22 +22967,6 @@ const _VideoBackgroundEffectsPicker = (props) => {
|
|
22857
22967
|
})));
|
22858
22968
|
};
|
22859
22969
|
|
22860
|
-
// Copyright (c) Microsoft Corporation.
|
22861
|
-
// Licensed under the MIT License.
|
22862
|
-
/**
|
22863
|
-
* @private
|
22864
|
-
*/
|
22865
|
-
const scrollbarStyles = {
|
22866
|
-
'::-webkit-scrollbar, *::-webkit-scrollbar': {
|
22867
|
-
width: '0.3rem',
|
22868
|
-
height: '0.3rem'
|
22869
|
-
},
|
22870
|
-
'::-webkit-scrollbar-thumb, *::-webkit-scrollbar-thumb': {
|
22871
|
-
borderRadius: '10px',
|
22872
|
-
background: 'rgba(150, 150, 150)'
|
22873
|
-
}
|
22874
|
-
};
|
22875
|
-
|
22876
22970
|
// Copyright (c) Microsoft Corporation.
|
22877
22971
|
// Licensed under the MIT License.
|
22878
22972
|
/**
|
@@ -23650,6 +23744,88 @@ const NotificationStack = (props) => {
|
|
23650
23744
|
})));
|
23651
23745
|
};
|
23652
23746
|
|
23747
|
+
// Copyright (c) Microsoft Corporation.
|
23748
|
+
// Licensed under the MIT License.
|
23749
|
+
/**
|
23750
|
+
* A Notification component that is to be used to represent incoming calls to the end user.
|
23751
|
+
* Allows the user to accept or reject the incoming call.
|
23752
|
+
* @beta
|
23753
|
+
*/
|
23754
|
+
const IncomingCallNotification = (props) => {
|
23755
|
+
const { callerName, alertText, avatar, onAcceptWithAudio, onAcceptWithVideo, onReject } = props;
|
23756
|
+
const theme = react.useTheme();
|
23757
|
+
/* @conditional-compile-remove(one-to-n-calling) */
|
23758
|
+
const localeStrings = useLocale$1().strings.IncomingCallNotification;
|
23759
|
+
return (React.createElement(react.Stack, { horizontal: true, verticalAlign: "center", styles: incomingCallToastStyle(theme) },
|
23760
|
+
React.createElement(react.Stack, { horizontalAlign: "start", styles: incomingCallToastAvatarContainerStyle },
|
23761
|
+
React.createElement(react.Persona, { imageUrl: avatar, text: callerName, size: react.PersonaSize.size40, hidePersonaDetails: true, "aria-label": callerName })),
|
23762
|
+
React.createElement(react.Stack, { grow: 1, horizontalAlign: "center", style: { alignItems: 'flex-start', fontFamily: 'Segoe UI' } },
|
23763
|
+
React.createElement(react.Stack, { style: { fontSize: '0.875rem' } },
|
23764
|
+
React.createElement(react.Text, null, callerName !== null && callerName !== void 0 ? callerName :
|
23765
|
+
/* @conditional-compile-remove(one-to-n-calling) */ localeStrings.incomingCallNotificationPlaceholderId)),
|
23766
|
+
React.createElement(react.Stack, { style: { fontSize: '0.75rem' } },
|
23767
|
+
React.createElement(react.Text, null, alertText !== null && alertText !== void 0 ? alertText :
|
23768
|
+
/* @conditional-compile-remove(one-to-n-calling) */ localeStrings.incomingCallNotificationPlaceholderAlert))),
|
23769
|
+
React.createElement(react.Stack, { horizontal: true, tokens: { childrenGap: 10 } },
|
23770
|
+
React.createElement(react.IconButton, { styles: incomingCallRejectButtonStyle(theme), onClick: () => onReject(), iconProps: { iconName: 'IncomingCallNotificationRejectIcon' },
|
23771
|
+
/* @conditional-compile-remove(one-to-n-calling) */
|
23772
|
+
ariaLabel: localeStrings.incomingCallNoticicationRejectAriaLabel }),
|
23773
|
+
React.createElement(react.IconButton, { styles: incomingCallAcceptButtonStyle(theme), onClick: () => onAcceptWithVideo(), iconProps: { iconName: 'IncomingCallNotificationAcceptWithVideoIcon' },
|
23774
|
+
/* @conditional-compile-remove(one-to-n-calling) */
|
23775
|
+
ariaLabel: localeStrings.incomingCallNoticicationAcceptWithVideoAriaLabel }),
|
23776
|
+
React.createElement(react.IconButton, { styles: incomingCallAcceptButtonStyle(theme), onClick: () => onAcceptWithAudio(), iconProps: { iconName: 'IncomingCallNotificationAcceptIcon' },
|
23777
|
+
/* @conditional-compile-remove(one-to-n-calling) */
|
23778
|
+
ariaLabel: localeStrings.incomingCallNoticicationAcceptWithAudioAriaLabel }))));
|
23779
|
+
};
|
23780
|
+
const incomingCallToastStyle = (theme) => {
|
23781
|
+
return {
|
23782
|
+
root: {
|
23783
|
+
minWidth: '20rem',
|
23784
|
+
opacity: 0.95,
|
23785
|
+
borderRadius: '0.5rem',
|
23786
|
+
boxShadow: theme.effects.elevation8,
|
23787
|
+
padding: '1rem'
|
23788
|
+
}
|
23789
|
+
};
|
23790
|
+
};
|
23791
|
+
const incomingCallToastAvatarContainerStyle = {
|
23792
|
+
root: {
|
23793
|
+
marginRight: '0.5rem'
|
23794
|
+
}
|
23795
|
+
};
|
23796
|
+
const incomingCallAcceptButtonStyle = (theme) => {
|
23797
|
+
return {
|
23798
|
+
root: {
|
23799
|
+
backgroundColor: theme.palette.greenDark,
|
23800
|
+
color: theme.palette.white,
|
23801
|
+
borderRadius: '2rem',
|
23802
|
+
minWidth: '2rem',
|
23803
|
+
width: '2rem',
|
23804
|
+
border: 'none'
|
23805
|
+
},
|
23806
|
+
rootHovered: {
|
23807
|
+
backgroundColor: theme.palette.green,
|
23808
|
+
color: theme.palette.white
|
23809
|
+
}
|
23810
|
+
};
|
23811
|
+
};
|
23812
|
+
const incomingCallRejectButtonStyle = (theme) => {
|
23813
|
+
return {
|
23814
|
+
root: {
|
23815
|
+
backgroundColor: theme.palette.redDark,
|
23816
|
+
color: theme.palette.white,
|
23817
|
+
borderRadius: '2rem',
|
23818
|
+
minWidth: '2rem',
|
23819
|
+
width: '2rem',
|
23820
|
+
border: 'none'
|
23821
|
+
},
|
23822
|
+
rootHovered: {
|
23823
|
+
backgroundColor: theme.palette.red,
|
23824
|
+
color: theme.palette.white
|
23825
|
+
}
|
23826
|
+
};
|
23827
|
+
};
|
23828
|
+
|
23653
23829
|
// Copyright (c) Microsoft Corporation.
|
23654
23830
|
// Licensed under the MIT License.
|
23655
23831
|
/**
|
@@ -24643,19 +24819,38 @@ const createDefaultChatHandlers = memoizeOne((chatClient, chatThreadClient) => {
|
|
24643
24819
|
// affecting conditional-compile-remove(attachment-upload)
|
24644
24820
|
onSendMessage: function (content, options) {
|
24645
24821
|
return __awaiter$w(this, void 0, void 0, function* () {
|
24822
|
+
var _a, _b;
|
24646
24823
|
const sendMessageRequest = {
|
24647
24824
|
content,
|
24648
24825
|
senderDisplayName: chatClient.getState().displayName
|
24649
24826
|
};
|
24650
24827
|
/* @conditional-compile-remove(file-sharing-acs) */
|
24828
|
+
const fileAttachments = (_a = options === null || options === void 0 ? void 0 : options.attachments) === null || _a === void 0 ? void 0 : _a.filter((attachment) => {
|
24829
|
+
const file = attachment;
|
24830
|
+
return file.attachmentType === undefined;
|
24831
|
+
});
|
24832
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
24833
|
+
let imageAttachments;
|
24651
24834
|
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
24835
|
+
(_b = options === null || options === void 0 ? void 0 : options.attachments) === null || _b === void 0 ? void 0 : _b.map((attachment) => {
|
24836
|
+
const image = attachment;
|
24837
|
+
if (image.attachmentType === 'image') {
|
24838
|
+
imageAttachments === undefined ? (imageAttachments = [image]) : imageAttachments.push(image);
|
24839
|
+
}
|
24840
|
+
});
|
24652
24841
|
if (options &&
|
24653
24842
|
'attachments' in options &&
|
24654
24843
|
options.attachments &&
|
24655
|
-
|
24656
|
-
|
24844
|
+
/* @conditional-compile-remove(file-sharing-acs) */
|
24845
|
+
((fileAttachments && fileAttachments.length > 0) ||
|
24846
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
24847
|
+
(imageAttachments && imageAttachments.length > 0))) {
|
24657
24848
|
const chatSDKOptions = {
|
24658
|
-
metadata: Object.assign(Object.assign({}, options === null || options === void 0 ? void 0 : options.metadata), {
|
24849
|
+
metadata: Object.assign(Object.assign({}, options === null || options === void 0 ? void 0 : options.metadata), {
|
24850
|
+
/* @conditional-compile-remove(file-sharing-acs) */
|
24851
|
+
fileSharingMetadata: JSON.stringify(fileAttachments) }),
|
24852
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
24853
|
+
attachments: imageAttachments,
|
24659
24854
|
type: options.type
|
24660
24855
|
};
|
24661
24856
|
yield chatThreadClient.sendMessage(sendMessageRequest, chatSDKOptions);
|
@@ -24684,10 +24879,29 @@ const createDefaultChatHandlers = memoizeOne((chatClient, chatThreadClient) => {
|
|
24684
24879
|
/* @conditional-compile-remove(file-sharing-acs) */
|
24685
24880
|
options) {
|
24686
24881
|
return __awaiter$w(this, void 0, void 0, function* () {
|
24882
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
24883
|
+
let imageAttachments;
|
24884
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
24885
|
+
// get image attachments from content, including the ones before the editing and newly added ones during editing.
|
24886
|
+
const document = new DOMParser().parseFromString(content !== null && content !== void 0 ? content : '', 'text/html');
|
24887
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
24888
|
+
document.querySelectorAll('img').forEach((img) => {
|
24889
|
+
if (imageAttachments === undefined) {
|
24890
|
+
imageAttachments = [];
|
24891
|
+
}
|
24892
|
+
imageAttachments.push({
|
24893
|
+
id: img.id,
|
24894
|
+
attachmentType: 'image'
|
24895
|
+
});
|
24896
|
+
});
|
24897
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
24898
|
+
content = document.body.innerHTML;
|
24687
24899
|
const updateMessageOptions = {
|
24688
24900
|
content,
|
24689
24901
|
/* @conditional-compile-remove(file-sharing-acs) */
|
24690
|
-
metadata: Object.assign(Object.assign({}, options === null || options === void 0 ? void 0 : options.metadata), { fileSharingMetadata: JSON.stringify(options === null || options === void 0 ? void 0 : options.attachments) })
|
24902
|
+
metadata: Object.assign(Object.assign({}, options === null || options === void 0 ? void 0 : options.metadata), { fileSharingMetadata: JSON.stringify(options === null || options === void 0 ? void 0 : options.attachments) }),
|
24903
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
24904
|
+
attachments: imageAttachments
|
24691
24905
|
};
|
24692
24906
|
yield chatThreadClient.updateMessage(messageId, updateMessageOptions);
|
24693
24907
|
});
|
@@ -25129,11 +25343,20 @@ const processChatMessageContent = (message) => {
|
|
25129
25343
|
if (content) {
|
25130
25344
|
const document = new DOMParser().parseFromString(content !== null && content !== void 0 ? content : '', 'text/html');
|
25131
25345
|
document.querySelectorAll('img').forEach((img) => {
|
25132
|
-
var _a, _b;
|
25346
|
+
var _a, _b, _c;
|
25133
25347
|
const attachmentPreviewUrl = (_a = attachments.find((attachment) => attachment.id === img.id)) === null || _a === void 0 ? void 0 : _a.previewUrl;
|
25134
25348
|
if (attachmentPreviewUrl) {
|
25135
25349
|
const resourceCache = (_b = message.resourceCache) === null || _b === void 0 ? void 0 : _b[attachmentPreviewUrl];
|
25136
|
-
|
25350
|
+
const src = getResourceSourceUrl(resourceCache);
|
25351
|
+
// if in error state
|
25352
|
+
if (src === undefined) {
|
25353
|
+
const brokenImageView = getBrokenImageViewNode(img);
|
25354
|
+
(_c = img.parentElement) === null || _c === void 0 ? void 0 : _c.replaceChild(brokenImageView, img);
|
25355
|
+
}
|
25356
|
+
else {
|
25357
|
+
// else in loading or success state
|
25358
|
+
img.setAttribute('src', src);
|
25359
|
+
}
|
25137
25360
|
}
|
25138
25361
|
});
|
25139
25362
|
content = document.body.innerHTML;
|
@@ -25159,22 +25382,28 @@ const generateImageAttachmentImgHtml = (message, attachment) => {
|
|
25159
25382
|
const contentType = extractAttachmentContentTypeFromName(attachment.name);
|
25160
25383
|
const resourceCache = (_a = message.resourceCache) === null || _a === void 0 ? void 0 : _a[attachment.previewUrl];
|
25161
25384
|
const src = getResourceSourceUrl(resourceCache);
|
25385
|
+
// if in error state
|
25386
|
+
if (src === undefined) {
|
25387
|
+
return `\r\n<p>${getBrokenImageViewNode()}</p>`;
|
25388
|
+
}
|
25389
|
+
// else in loading or success state
|
25162
25390
|
return `\r\n<p><img alt="image" src="${src}" itemscope="${contentType}" id="${attachment.id}"></p>`;
|
25163
25391
|
}
|
25164
25392
|
return '';
|
25165
25393
|
};
|
25166
25394
|
const getResourceSourceUrl = (result) => {
|
25167
|
-
let src = '';
|
25168
25395
|
if (result) {
|
25169
|
-
if (result.error
|
25170
|
-
//
|
25171
|
-
|
25396
|
+
if (!result.error && result.sourceUrl) {
|
25397
|
+
// return sourceUrl for success state
|
25398
|
+
return result.sourceUrl;
|
25172
25399
|
}
|
25173
25400
|
else {
|
25174
|
-
|
25401
|
+
// return undefined for error state
|
25402
|
+
return undefined;
|
25175
25403
|
}
|
25176
25404
|
}
|
25177
|
-
return
|
25405
|
+
// return empty string for loading state
|
25406
|
+
return '';
|
25178
25407
|
};
|
25179
25408
|
const extractAttachmentContentTypeFromName = (name) => {
|
25180
25409
|
if (name === undefined) {
|
@@ -25308,6 +25537,17 @@ const sanitizedMessageContentType = (type) => {
|
|
25308
25537
|
? lowerCaseType
|
25309
25538
|
: 'unknown';
|
25310
25539
|
};
|
25540
|
+
const getBrokenImageViewNode = (img) => {
|
25541
|
+
var _a;
|
25542
|
+
const wrapper = document.createElement('div');
|
25543
|
+
Array.from((_a = img === null || img === void 0 ? void 0 : img.attributes) !== null && _a !== void 0 ? _a : []).forEach((attr) => {
|
25544
|
+
var _a;
|
25545
|
+
wrapper.setAttribute(attr.nodeName, (_a = attr.nodeValue) !== null && _a !== void 0 ? _a : '');
|
25546
|
+
});
|
25547
|
+
wrapper.setAttribute('class', 'broken-image-wrapper');
|
25548
|
+
wrapper.setAttribute('data-ui-id', 'broken-image-icon');
|
25549
|
+
return wrapper;
|
25550
|
+
};
|
25311
25551
|
const isMessageValidToRender = (message) => {
|
25312
25552
|
var _a, _b, _c, _d, _e;
|
25313
25553
|
if (message.deletedOn) {
|
@@ -25781,6 +26021,9 @@ const fetchImageSource = (src, authentication, options) => __awaiter$v(void 0, v
|
|
25781
26021
|
token = (yield authentication.credential.getToken()).token;
|
25782
26022
|
}
|
25783
26023
|
const response = yield fetchWithAuthentication(src, token, options);
|
26024
|
+
if (response.status >= 400) {
|
26025
|
+
throw new Error(`Failed to fetch image source. Status code: ${response.status}`);
|
26026
|
+
}
|
25784
26027
|
const blob = yield response.blob();
|
25785
26028
|
return URL.createObjectURL(blob);
|
25786
26029
|
});
|
@@ -28372,7 +28615,7 @@ const AttachmentDownloadErrorBar = (props) => {
|
|
28372
28615
|
/**
|
28373
28616
|
* Wrapper for RichTextSendBox component to allow us to use usePropsFor with richTextSendBox with lazy loading
|
28374
28617
|
*/
|
28375
|
-
const RichTextSendBoxWrapper = React.lazy(() => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-
|
28618
|
+
const RichTextSendBoxWrapper = React.lazy(() => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-C_Nb8f_T.js'); }).then((module) => ({ default: module.RichTextSendBoxWrapper })));
|
28376
28619
|
/**
|
28377
28620
|
* @private
|
28378
28621
|
* Use this function to load RoosterJS dependencies early in the lifecycle.
|
@@ -28380,13 +28623,15 @@ const RichTextSendBoxWrapper = React.lazy(() => Promise.resolve().then(function
|
|
28380
28623
|
*
|
28381
28624
|
/* @conditional-compile-remove(rich-text-editor-composite-support)
|
28382
28625
|
*/
|
28383
|
-
const loadRichTextSendBox = () => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-
|
28626
|
+
const loadRichTextSendBox = () => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-C_Nb8f_T.js'); }).then((module) => ({ default: module.RichTextSendBoxWrapper }));
|
28384
28627
|
/**
|
28385
28628
|
* @private
|
28386
28629
|
*/
|
28387
28630
|
const SendBoxPicker = (props) => {
|
28388
28631
|
/* @conditional-compile-remove(rich-text-editor-composite-support) */
|
28389
28632
|
const { richTextEditorOptions } = props;
|
28633
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
28634
|
+
const { onPaste, onUploadInlineImage, imageUploadsInProgress, onCancelInlineImageUpload } = richTextEditorOptions || {};
|
28390
28635
|
const sendBoxProps = usePropsFor$2(SendBox);
|
28391
28636
|
/* @conditional-compile-remove(rich-text-editor-composite-support) */
|
28392
28637
|
const isRichTextEditorEnabled = React.useMemo(() => {
|
@@ -28397,7 +28642,7 @@ const SendBoxPicker = (props) => {
|
|
28397
28642
|
if (isRichTextEditorEnabled) {
|
28398
28643
|
return (React.createElement(_ErrorBoundary, { fallback: sendBox },
|
28399
28644
|
React.createElement(React.Suspense, { fallback: sendBox },
|
28400
|
-
React.createElement(RichTextSendBoxWrapper, Object.assign({}, props)))));
|
28645
|
+
React.createElement(RichTextSendBoxWrapper, Object.assign({}, props, { onPaste: onPaste, onUploadInlineImage: onUploadInlineImage, imageUploadsInProgress: imageUploadsInProgress, onCancelInlineImageUpload: onCancelInlineImageUpload })))));
|
28401
28646
|
}
|
28402
28647
|
return sendBox;
|
28403
28648
|
};
|
@@ -28553,6 +28798,20 @@ const ChatScreen = (props) => {
|
|
28553
28798
|
const theme = useTheme();
|
28554
28799
|
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
28555
28800
|
const [inlineImageUploads, handleInlineImageUploadAction, onUploadInlineImage, onCancelInlineImageUploadHandler] = useImageUpload();
|
28801
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
28802
|
+
const [textOnlyChat, setTextOnlyChat] = React.useState(false);
|
28803
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
28804
|
+
React.useEffect(() => {
|
28805
|
+
const updateChatState = (newState) => {
|
28806
|
+
var _a, _b;
|
28807
|
+
setTextOnlyChat(((_b = (_a = newState.thread.properties) === null || _a === void 0 ? void 0 : _a.messagingPolicy) === null || _b === void 0 ? void 0 : _b.textOnlyChat) === true);
|
28808
|
+
};
|
28809
|
+
updateChatState(adapter.getState());
|
28810
|
+
adapter.onStateChange(updateChatState);
|
28811
|
+
return () => {
|
28812
|
+
adapter.offStateChange(updateChatState);
|
28813
|
+
};
|
28814
|
+
}, [adapter]);
|
28556
28815
|
React.useEffect(() => {
|
28557
28816
|
// Initial data should be always fetched by the composite(or external caller) instead of the adapter
|
28558
28817
|
const fetchData = () => __awaiter$m(void 0, void 0, void 0, function* () {
|
@@ -28770,9 +29029,11 @@ const ChatScreen = (props) => {
|
|
28770
29029
|
}
|
28771
29030
|
}, [overlayImageItem === null || overlayImageItem === void 0 ? void 0 : overlayImageItem.attachmentId]);
|
28772
29031
|
/* @conditional-compile-remove(file-sharing-acs) */
|
28773
|
-
const
|
29032
|
+
const attachmentButton = React.useMemo(() => {
|
28774
29033
|
var _a, _b, _c;
|
28775
|
-
if (!((_a = attachmentOptions === null || attachmentOptions === void 0 ? void 0 : attachmentOptions.uploadOptions) === null || _a === void 0 ? void 0 : _a.handleAttachmentSelection)
|
29034
|
+
if (!((_a = attachmentOptions === null || attachmentOptions === void 0 ? void 0 : attachmentOptions.uploadOptions) === null || _a === void 0 ? void 0 : _a.handleAttachmentSelection) ||
|
29035
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
29036
|
+
textOnlyChat) {
|
28776
29037
|
return null;
|
28777
29038
|
}
|
28778
29039
|
return (React.createElement(AttachmentUploadButtonWrapper, { supportedMediaTypes: (_b = attachmentOptions === null || attachmentOptions === void 0 ? void 0 : attachmentOptions.uploadOptions) === null || _b === void 0 ? void 0 : _b.supportedMediaTypes, disableMultipleUploads: (_c = attachmentOptions === null || attachmentOptions === void 0 ? void 0 : attachmentOptions.uploadOptions) === null || _c === void 0 ? void 0 : _c.disableMultipleUploads, onChange: attachmentUploadButtonOnChange }));
|
@@ -28780,7 +29041,9 @@ const ChatScreen = (props) => {
|
|
28780
29041
|
(_c = attachmentOptions === null || attachmentOptions === void 0 ? void 0 : attachmentOptions.uploadOptions) === null || _c === void 0 ? void 0 : _c.handleAttachmentSelection,
|
28781
29042
|
(_d = attachmentOptions === null || attachmentOptions === void 0 ? void 0 : attachmentOptions.uploadOptions) === null || _d === void 0 ? void 0 : _d.supportedMediaTypes,
|
28782
29043
|
(_e = attachmentOptions === null || attachmentOptions === void 0 ? void 0 : attachmentOptions.uploadOptions) === null || _e === void 0 ? void 0 : _e.disableMultipleUploads,
|
28783
|
-
attachmentUploadButtonOnChange
|
29044
|
+
attachmentUploadButtonOnChange,
|
29045
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
29046
|
+
textOnlyChat
|
28784
29047
|
]);
|
28785
29048
|
/* @conditional-compile-remove(file-sharing-acs) */
|
28786
29049
|
const attachments = React.useMemo(() => {
|
@@ -28810,33 +29073,47 @@ const ChatScreen = (props) => {
|
|
28810
29073
|
return;
|
28811
29074
|
});
|
28812
29075
|
}, [adapter, /* @conditional-compile-remove(rich-text-editor-image-upload) */ handleInlineImageUploadAction]);
|
29076
|
+
const onUpdateMessageHandler = React.useCallback((messageId, content) => __awaiter$m(void 0, void 0, void 0, function* () {
|
29077
|
+
yield messageThreadProps.onUpdateMessage(messageId, content);
|
29078
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
29079
|
+
handleInlineImageUploadAction({ type: AttachmentUploadActionType.Clear });
|
29080
|
+
}), [/* @conditional-compile-remove(rich-text-editor-image-upload) */ handleInlineImageUploadAction, messageThreadProps]);
|
29081
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
29082
|
+
const onCancelEditMessageHandler = React.useCallback(() => {
|
29083
|
+
handleInlineImageUploadAction({ type: AttachmentUploadActionType.Clear });
|
29084
|
+
}, [handleInlineImageUploadAction]);
|
28813
29085
|
/* @conditional-compile-remove(file-sharing-acs) */
|
28814
29086
|
const onCancelUploadHandler = React.useCallback((id) => {
|
28815
29087
|
var _a, _b;
|
28816
29088
|
handleUploadAction({ type: AttachmentUploadActionType.Remove, id });
|
28817
29089
|
(_b = (_a = attachmentOptions === null || attachmentOptions === void 0 ? void 0 : attachmentOptions.uploadOptions) === null || _a === void 0 ? void 0 : _a.handleAttachmentRemoval) === null || _b === void 0 ? void 0 : _b.call(_a, id);
|
28818
29090
|
}, [attachmentOptions === null || attachmentOptions === void 0 ? void 0 : attachmentOptions.uploadOptions]);
|
28819
|
-
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
28820
|
-
const removeImageTags = React.useCallback((event) => {
|
28821
|
-
event.content.querySelectorAll('img').forEach((image) => {
|
28822
|
-
// If the image is the only child of its parent, remove all the parents of this img element.
|
28823
|
-
let parentNode = image.parentElement;
|
28824
|
-
let currentNode = image;
|
28825
|
-
while ((parentNode === null || parentNode === void 0 ? void 0 : parentNode.childNodes.length) === 1) {
|
28826
|
-
currentNode = parentNode;
|
28827
|
-
parentNode = parentNode.parentElement;
|
28828
|
-
}
|
28829
|
-
currentNode === null || currentNode === void 0 ? void 0 : currentNode.remove();
|
28830
|
-
});
|
28831
|
-
}, []);
|
28832
29091
|
/* @conditional-compile-remove(rich-text-editor-composite-support) */
|
28833
29092
|
const richTextEditorOptions = React.useMemo(() => {
|
28834
29093
|
return (options === null || options === void 0 ? void 0 : options.richTextEditor)
|
28835
29094
|
? {
|
28836
|
-
/* @conditional-compile-remove(rich-text-editor-image-upload) */ onPaste:
|
29095
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */ onPaste: textOnlyChat
|
29096
|
+
? removeImageTags
|
29097
|
+
: undefined,
|
29098
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
29099
|
+
onUploadInlineImage: onUploadInlineImage,
|
29100
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
29101
|
+
imageUploadsInProgress: imageUploadsInProgress,
|
29102
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
29103
|
+
onCancelInlineImageUpload: onCancelInlineImageUploadHandler
|
28837
29104
|
}
|
28838
29105
|
: undefined;
|
28839
|
-
}, [
|
29106
|
+
}, [
|
29107
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
29108
|
+
imageUploadsInProgress,
|
29109
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
29110
|
+
onCancelInlineImageUploadHandler,
|
29111
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
29112
|
+
onUploadInlineImage,
|
29113
|
+
options === null || options === void 0 ? void 0 : options.richTextEditor,
|
29114
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
29115
|
+
textOnlyChat
|
29116
|
+
]);
|
28840
29117
|
return (React.createElement(react.Stack, { className: chatContainer, grow: true },
|
28841
29118
|
(options === null || options === void 0 ? void 0 : options.topic) !== false && React.createElement(ChatHeader, Object.assign({}, headerProps)),
|
28842
29119
|
React.createElement(react.Stack, { className: chatArea, tokens: participantListContainerPadding, horizontal: true, grow: true },
|
@@ -28846,7 +29123,9 @@ const ChatScreen = (props) => {
|
|
28846
29123
|
React.createElement(AttachmentDownloadErrorBar, { onDismissDownloadErrorMessage: React.useCallback(() => {
|
28847
29124
|
setDownloadErrorMessage('');
|
28848
29125
|
}, []), attachmentDownloadErrorMessage: downloadErrorMessage || '' }),
|
28849
|
-
React.createElement(MessageThread, Object.assign({}, messageThreadProps, {
|
29126
|
+
React.createElement(MessageThread, Object.assign({}, messageThreadProps, { onUpdateMessage: onUpdateMessageHandler,
|
29127
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
29128
|
+
onCancelEditMessage: onCancelEditMessageHandler, onRenderAvatar: onRenderAvatarCallback, onRenderMessage: onRenderMessage,
|
28850
29129
|
/* @conditional-compile-remove(file-sharing-acs) */
|
28851
29130
|
onRenderAttachmentDownloads: onRenderAttachmentDownloads, inlineImageOptions: inlineImageOptions, numberOfChatMessagesToReload: defaultNumberOfChatMessagesToReload, styles: messageThreadStyles,
|
28852
29131
|
/* @conditional-compile-remove(rich-text-editor-composite-support) */
|
@@ -28856,8 +29135,7 @@ const ChatScreen = (props) => {
|
|
28856
29135
|
React.createElement(react.Stack, { horizontal: formFactor === 'mobile' },
|
28857
29136
|
formFactor === 'mobile' && (
|
28858
29137
|
/* @conditional-compile-remove(file-sharing-acs) */
|
28859
|
-
React.createElement(react.Stack, { verticalAlign: "center" },
|
28860
|
-
React.createElement(AttachmentButton, null))),
|
29138
|
+
React.createElement(react.Stack, { verticalAlign: "center" }, attachmentButton)),
|
28861
29139
|
React.createElement(react.Stack, { grow: true },
|
28862
29140
|
React.createElement(SendBoxPicker, { styles: sendBoxStyles, autoFocus: options === null || options === void 0 ? void 0 : options.autoFocus,
|
28863
29141
|
/* @conditional-compile-remove(rich-text-editor-composite-support) */
|
@@ -28875,9 +29153,9 @@ const ChatScreen = (props) => {
|
|
28875
29153
|
imageUploadsInProgress: imageUploadsInProgress,
|
28876
29154
|
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
28877
29155
|
onCancelInlineImageUpload: onCancelInlineImageUploadHandler })),
|
28878
|
-
formFactor !== 'mobile' &&
|
28879
|
-
|
28880
|
-
|
29156
|
+
formFactor !== 'mobile' &&
|
29157
|
+
/* @conditional-compile-remove(file-sharing-acs) */
|
29158
|
+
attachmentButton))),
|
28881
29159
|
/* @conditional-compile-remove(chat-composite-participant-pane) */
|
28882
29160
|
(options === null || options === void 0 ? void 0 : options.participantPane) === true && (React.createElement(ChatScreenPeoplePane, { onFetchAvatarPersonaData: onFetchAvatarPersonaData, onFetchParticipantMenuItems: props.onFetchParticipantMenuItems, isMobile: formFactor === 'mobile' }))),
|
28883
29161
|
overlayImageItem && (React.createElement(ImageOverlay, Object.assign({}, overlayImageItem, { isOpen: isImageOverlayOpen, onDismiss: () => {
|
@@ -28890,6 +29168,20 @@ const ChatScreen = (props) => {
|
|
28890
29168
|
});
|
28891
29169
|
}, onDownloadButtonClicked: onDownloadButtonClicked })))));
|
28892
29170
|
};
|
29171
|
+
// TODO-vhuseinova: delete after the function is added to utils
|
29172
|
+
/* @conditional-compile-remove(rich-text-editor-image-upload) */
|
29173
|
+
const removeImageTags = (event) => {
|
29174
|
+
event.content.querySelectorAll('img').forEach((image) => {
|
29175
|
+
// If the image is the only child of its parent, remove all the parents of this img element.
|
29176
|
+
let parentNode = image.parentElement;
|
29177
|
+
let currentNode = image;
|
29178
|
+
while ((parentNode === null || parentNode === void 0 ? void 0 : parentNode.childNodes.length) === 1) {
|
29179
|
+
currentNode = parentNode;
|
29180
|
+
parentNode = parentNode.parentElement;
|
29181
|
+
}
|
29182
|
+
currentNode === null || currentNode === void 0 ? void 0 : currentNode.remove();
|
29183
|
+
});
|
29184
|
+
};
|
28893
29185
|
|
28894
29186
|
// Copyright (c) Microsoft Corporation.
|
28895
29187
|
// Licensed under the MIT License.
|
@@ -34796,6 +35088,16 @@ const CallArrangement = (props) => {
|
|
34796
35088
|
const isCaptionsOn = useSelector$1(getCaptionsStatus);
|
34797
35089
|
const minMaxDragPosition = useMinMaxDragPosition(props.modalLayerHostId);
|
34798
35090
|
const pipStyles = React.useMemo(() => getPipStyles(theme), [theme]);
|
35091
|
+
/* @conditional-compile-remove(notifications) */
|
35092
|
+
if (isTeamsMeeting) {
|
35093
|
+
filteredLatestErrorNotifications
|
35094
|
+
.filter((notification) => notification.type === 'teamsMeetingCallNetworkQualityLow')
|
35095
|
+
.forEach((notification) => {
|
35096
|
+
notification.onClickPrimaryButton = props.mobileView
|
35097
|
+
? toggleMeetingPhoneInfoPane
|
35098
|
+
: toggleTeamsMeetingConferenceModal;
|
35099
|
+
});
|
35100
|
+
}
|
34799
35101
|
const verticalControlBar = props.mobileView && containerWidth && containerHeight && containerWidth / containerHeight > 1 ? true : false;
|
34800
35102
|
// Filter out shareScreen capability notifications if on mobile
|
34801
35103
|
const filteredCapabilitesChangedNotifications = props.mobileView
|
@@ -35181,7 +35483,7 @@ const NetworkReconnectTile = (props) => {
|
|
35181
35483
|
React.createElement(react.Stack, { horizontal: true, horizontalAlign: "space-between", verticalAlign: "center", className: phoneInfoInstructionLine },
|
35182
35484
|
React.createElement(react.Stack.Item, null,
|
35183
35485
|
React.createElement(react.Stack, { horizontal: true },
|
35184
|
-
React.createElement(react.Stack, { className: infoConnectionLinkStyle(theme) }),
|
35486
|
+
!props.isMobile && React.createElement(react.Stack, { className: infoConnectionLinkStyle(theme) }),
|
35185
35487
|
React.createElement(react.Stack.Item, { className: phoneInfoIcon(theme) },
|
35186
35488
|
React.createElement(react.Icon, { iconName: "DtmfDialpadButton", className: phoneInfoIconStyle(theme) })),
|
35187
35489
|
React.createElement(react.Stack.Item, null,
|
@@ -35189,12 +35491,12 @@ const NetworkReconnectTile = (props) => {
|
|
35189
35491
|
React.createElement(react.Text, { className: phoneInfoTextStyle },
|
35190
35492
|
meetingCoordinates[0].conferenceId,
|
35191
35493
|
"#")),
|
35192
|
-
React.createElement(react.Stack, { horizontal: true, horizontalAlign: "space-between", verticalAlign: "center", className: phoneInfoInstructionLine },
|
35494
|
+
!props.isMobile && (React.createElement(react.Stack, { horizontal: true, horizontalAlign: "space-between", verticalAlign: "center", className: phoneInfoInstructionLine },
|
35193
35495
|
React.createElement(react.Stack, { horizontal: true },
|
35194
35496
|
React.createElement(react.Stack.Item, { className: phoneInfoIcon(theme), style: { marginLeft: _pxToRem(2) } },
|
35195
35497
|
React.createElement(react.Icon, { iconName: "PhoneInfoWait", className: phoneInfoIconStyle(theme) })),
|
35196
35498
|
React.createElement(react.Stack.Item, null,
|
35197
|
-
React.createElement(react.Text, { className: phoneInfoLabelStyle }, localeStrings.meetingConferencePhoneInfoModalWait))))))) }, handlers)));
|
35499
|
+
React.createElement(react.Text, { className: phoneInfoLabelStyle }, localeStrings.meetingConferencePhoneInfoModalWait)))))))) }, handlers)));
|
35198
35500
|
};
|
35199
35501
|
|
35200
35502
|
// Copyright (c) Microsoft Corporation.
|
@@ -41891,6 +42193,7 @@ exports.FluentV9ThemeProvider = FluentV9ThemeProvider;
|
|
41891
42193
|
exports.GridLayout = GridLayout;
|
41892
42194
|
exports.HoldButton = HoldButton;
|
41893
42195
|
exports.ImageOverlay = ImageOverlay;
|
42196
|
+
exports.IncomingCallNotification = IncomingCallNotification;
|
41894
42197
|
exports.InputBoxButton = InputBoxButton;
|
41895
42198
|
exports.LocalizationProvider = LocalizationProvider$1;
|
41896
42199
|
exports.MAXIMUM_LENGTH_OF_MESSAGE = MAXIMUM_LENGTH_OF_MESSAGE;
|
@@ -41921,6 +42224,7 @@ exports._IdentifierProvider = _IdentifierProvider;
|
|
41921
42224
|
exports._formatString = _formatString;
|
41922
42225
|
exports.attachmentMetadataReducer = attachmentMetadataReducer;
|
41923
42226
|
exports.attachmentUploadCardsStyles = attachmentUploadCardsStyles;
|
42227
|
+
exports.cancelInlineImageUpload = cancelInlineImageUpload;
|
41924
42228
|
exports.createAzureCommunicationCallAdapter = createAzureCommunicationCallAdapter;
|
41925
42229
|
exports.createAzureCommunicationCallAdapterFromClient = createAzureCommunicationCallAdapterFromClient;
|
41926
42230
|
exports.createAzureCommunicationCallWithChatAdapter = createAzureCommunicationCallWithChatAdapter;
|
@@ -41944,7 +42248,10 @@ exports.getMessageState = getMessageState;
|
|
41944
42248
|
exports.getMessageWithAttachmentMetadata = getMessageWithAttachmentMetadata;
|
41945
42249
|
exports.getSelector = getSelector$1;
|
41946
42250
|
exports.getSelector$1 = getSelector;
|
42251
|
+
exports.hasIncompleteAttachmentUploads = hasIncompleteAttachmentUploads;
|
41947
42252
|
exports.imageOverlayTheme = imageOverlayTheme;
|
42253
|
+
exports.insertAttachmentsAndImages = insertAttachmentsAndImages;
|
42254
|
+
exports.isAttachmentUploadCompleted = isAttachmentUploadCompleted;
|
41948
42255
|
exports.lightTheme = lightTheme;
|
41949
42256
|
exports.onRenderCancelIcon = onRenderCancelIcon;
|
41950
42257
|
exports.onRenderSubmitIcon = onRenderSubmitIcon;
|
@@ -41972,4 +42279,4 @@ exports.useTeamsCall = useTeamsCall;
|
|
41972
42279
|
exports.useTeamsCallAdapter = useTeamsCallAdapter;
|
41973
42280
|
exports.useTeamsCallAgent = useTeamsCallAgent;
|
41974
42281
|
exports.useTheme = useTheme;
|
41975
|
-
//# sourceMappingURL=index-
|
42282
|
+
//# sourceMappingURL=index-CTMK90l4.js.map
|