@azure/communication-react 1.2.3-alpha-202206220015.0 → 1.2.3-alpha-202206280015.0
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 +36 -15
- package/dist/dist-cjs/communication-react/index.js +154 -111
- 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/calling-component-bindings/src/callControlSelectors.js +1 -1
- package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.d.ts.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js +30 -12
- package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/CameraButton.d.ts +2 -2
- package/dist/dist-esm/react-components/src/components/CameraButton.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.d.ts +1 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js +2 -1
- package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ErrorBar.d.ts +16 -3
- package/dist/dist-esm/react-components/src/components/ErrorBar.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/ErrorBar.js +6 -0
- package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +1 -1
- package/dist/dist-esm/react-components/src/components/MessageThread.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/MicrophoneButton.d.ts +3 -3
- package/dist/dist-esm/react-components/src/components/MicrophoneButton.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/MicrophoneButton.js +14 -6
- package/dist/dist-esm/react-components/src/components/MicrophoneButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts +2 -2
- package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/SendBox.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/SendBox.js +3 -2
- package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VoiceOverButton.d.ts +7 -0
- package/dist/dist-esm/react-components/src/components/VoiceOverButton.d.ts.map +1 -0
- package/dist/dist-esm/react-components/src/components/VoiceOverButton.js +32 -0
- package/dist/dist-esm/react-components/src/components/VoiceOverButton.js.map +1 -0
- package/dist/dist-esm/react-components/src/components/styles/VoiceOverButton.style.d.ts +9 -0
- package/dist/dist-esm/react-components/src/components/styles/VoiceOverButton.style.d.ts.map +1 -0
- package/dist/dist-esm/react-components/src/components/styles/VoiceOverButton.style.js +26 -0
- package/dist/dist-esm/react-components/src/components/styles/VoiceOverButton.style.js.map +1 -0
- package/dist/dist-esm/react-components/src/localization/locales/en-US/strings.json +3 -0
- package/dist/dist-esm/react-components/src/theming/icons.d.ts +3 -0
- package/dist/dist-esm/react-components/src/theming/icons.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/theming/icons.js +4 -1
- package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js +3 -3
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +2 -23
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.d.ts.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/CallComposite/components/StartCallButton.d.ts +2 -3
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js +4 -4
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/SidePaneHeader.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/SidePaneHeader.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.d.ts +4 -4
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/MoreDrawer.d.ts +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/MoreDrawer.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js +28 -6
- package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +5 -3
- package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +5 -0
- package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.d.ts +5 -1
- package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js +10 -0
- package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/localization/locales/en-US/strings.json +1 -1
- package/package.json +7 -7
- package/dist/dist-esm/react-composites/src/composites/common/CustomDataModelUtils.d.ts +0 -21
- package/dist/dist-esm/react-composites/src/composites/common/CustomDataModelUtils.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/common/CustomDataModelUtils.js +0 -59
- package/dist/dist-esm/react-composites/src/composites/common/CustomDataModelUtils.js.map +0 -1
@@ -191,7 +191,7 @@ const fromFlatCommunicationIdentifier = (id) => {
|
|
191
191
|
// Copyright (c) Microsoft Corporation.
|
192
192
|
// Licensed under the MIT license.
|
193
193
|
// GENERATED FILE. DO NOT EDIT MANUALLY.
|
194
|
-
var telemetryVersion = '1.2.3-alpha-
|
194
|
+
var telemetryVersion = '1.2.3-alpha-202206280015.0';
|
195
195
|
|
196
196
|
// Copyright (c) Microsoft Corporation.
|
197
197
|
/**
|
@@ -462,7 +462,7 @@ const cameraButtonSelector = reselect__namespace.createSelector([getLocalVideoSt
|
|
462
462
|
const localVideoFromCall = localVideoStreams === null || localVideoStreams === void 0 ? void 0 : localVideoStreams.find((stream) => stream.mediaStreamType === 'Video');
|
463
463
|
const permission = deviceManager.deviceAccess ? deviceManager.deviceAccess.video : true;
|
464
464
|
return {
|
465
|
-
disabled: !deviceManager.selectedCamera || !permission,
|
465
|
+
disabled: !deviceManager.selectedCamera || !permission || !deviceManager.cameras.length,
|
466
466
|
checked: localVideoStreams !== undefined && localVideoStreams.length > 0 ? !!localVideoFromCall : previewOn,
|
467
467
|
cameras: deviceManager.cameras,
|
468
468
|
selectedCamera: deviceManager.selectedCamera
|
@@ -928,7 +928,7 @@ const typingIndicatorStringStyle = react.mergeStyles({
|
|
928
928
|
wordBreak: 'break-word'
|
929
929
|
});
|
930
930
|
|
931
|
-
var participantItem$d={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted",displayNamePlaceholder:"Unnamed Participant"};var typingIndicator$d={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$d={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",fileUploadsPendingError:"Uploading... Please wait.",removeFile:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed"};var messageStatusIndicator$d={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$d={label:"Leave",tooltipContent:"Leave Call"};var cameraButton$d={onLabel:"Turn off",offLabel:"Turn on",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"};var microphoneButton$d={onLabel:"Mute",offLabel:"Unmute",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"};var devicesButton$d={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$d={label:"People",tooltipContent:"Show Participants",menuHeader:"In this call",participantsListButtonLabel:"{numParticipants} people",muteAllButtonLabel:"Mute all",copyInviteLinkButtonLabel:"Copy invite link"};var screenShareButton$d={onLabel:"Stop presenting",offLabel:"Present",tooltipDisabledContent:"Presenting is disabled",tooltipOnContent:"Presenting your screen",tooltipOffContent:"Present your screen"};var messageThread$d={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",editBoxTextLimit:"Your message is over the limit of {limitNumber} characters",editBoxPlaceholderText:"Edit your message",newMessagesIndicator:"New messages",noDisplayNameSub:"No name",editBoxCancelButton:"Cancel",editBoxSubmitButton:"Submit",messageReadCount:"Read by {messageReadByCount} of {remoteParticipantsCount}",actionMenuMoreOptions:"More Options",downloadFile:"Download file"};var errorBar$d={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:"Failed to start screen sharing",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.",callMicrophoneMutedBySystem:"You are muted 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.",callCameraAlreadyInUse:"Unable to access camera. It may already be in use by another application.",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."};var videoGallery$d={screenIsBeingSharedMessage:"You are sharing your screen",screenShareLoadingMessage:"Loading {participant}'s screen",localVideoLabel:"You",localVideoCameraSwitcherLabel:"Switch camera",localVideoMovementLabel:"Movable Local Video Tile",localVideoSelectedDescription:"{cameraName} selected",displayNamePlaceholder:"Unnamed Participant"};var dialpad={placeholderText:"Enter a number"};var HoldButton$1={onLabel:"Resume",offLabel:"Hold",toolTipOnContent:"Resume call",toolTipOffContent:"Hold call"};var en_US$1 = {participantItem:participantItem$d,typingIndicator:typingIndicator$d,sendBox:sendBox$d,messageStatusIndicator:messageStatusIndicator$d,endCallButton:endCallButton$d,cameraButton:cameraButton$d,microphoneButton:microphoneButton$d,devicesButton:devicesButton$d,participantsButton:participantsButton$d,screenShareButton:screenShareButton$d,messageThread:messageThread$d,errorBar:errorBar$d,videoGallery:videoGallery$d,dialpad:dialpad,HoldButton:HoldButton$1};
|
931
|
+
var participantItem$d={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted",displayNamePlaceholder:"Unnamed Participant"};var typingIndicator$d={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$d={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",fileUploadsPendingError:"Uploading... Please wait.",removeFile:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed"};var messageStatusIndicator$d={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$d={label:"Leave",tooltipContent:"Leave Call"};var cameraButton$d={onLabel:"Turn off",offLabel:"Turn on",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"};var microphoneButton$d={onLabel:"Mute",offLabel:"Unmute",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"};var devicesButton$d={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$d={label:"People",tooltipContent:"Show Participants",menuHeader:"In this call",participantsListButtonLabel:"{numParticipants} people",muteAllButtonLabel:"Mute all",copyInviteLinkButtonLabel:"Copy invite link"};var screenShareButton$d={onLabel:"Stop presenting",offLabel:"Present",tooltipDisabledContent:"Presenting is disabled",tooltipOnContent:"Presenting your screen",tooltipOffContent:"Present your screen"};var messageThread$d={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",editBoxTextLimit:"Your message is over the limit of {limitNumber} characters",editBoxPlaceholderText:"Edit your message",newMessagesIndicator:"New messages",noDisplayNameSub:"No name",editBoxCancelButton:"Cancel",editBoxSubmitButton:"Submit",messageReadCount:"Read by {messageReadByCount} of {remoteParticipantsCount}",actionMenuMoreOptions:"More Options",downloadFile:"Download file"};var errorBar$d={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:"Failed to start screen sharing",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.",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.",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."};var videoGallery$d={screenIsBeingSharedMessage:"You are sharing your screen",screenShareLoadingMessage:"Loading {participant}'s screen",localVideoLabel:"You",localVideoCameraSwitcherLabel:"Switch camera",localVideoMovementLabel:"Movable Local Video Tile",localVideoSelectedDescription:"{cameraName} selected",displayNamePlaceholder:"Unnamed Participant"};var dialpad={placeholderText:"Enter a number"};var HoldButton$1={onLabel:"Resume",offLabel:"Hold",toolTipOnContent:"Resume call",toolTipOffContent:"Hold call"};var en_US$1 = {participantItem:participantItem$d,typingIndicator:typingIndicator$d,sendBox:sendBox$d,messageStatusIndicator:messageStatusIndicator$d,endCallButton:endCallButton$d,cameraButton:cameraButton$d,microphoneButton:microphoneButton$d,devicesButton:devicesButton$d,participantsButton:participantsButton$d,screenShareButton:screenShareButton$d,messageThread:messageThread$d,errorBar:errorBar$d,videoGallery:videoGallery$d,dialpad:dialpad,HoldButton:HoldButton$1};
|
932
932
|
|
933
933
|
var participantItem$c={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted"};var typingIndicator$c={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$c={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",fileUploadsPendingError:"Uploading... Please wait."};var messageStatusIndicator$c={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$c={label:"Leave",tooltipContent:"Leave Call"};var cameraButton$c={onLabel:"Turn off",offLabel:"Turn on",tooltipDisabledContent:"Camera is disabled",tooltipOnContent:"Turn off camera",tooltipOffContent:"Turn on camera",tooltipVideoLoadingContent:"Video is loading",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose Camera"};var microphoneButton$c={onLabel:"Mute",offLabel:"Unmute",tooltipDisabledContent:"Microphone is disabled",tooltipOnContent:"Mute microphone",tooltipOffContent:"Unmute microphone",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose Microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose Speaker"};var devicesButton$c={label:"Devices",tooltipContent:"Manage devices",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose Camera",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose Microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose Speaker"};var participantsButton$c={label:"People",tooltipContent:"Show Participants",menuHeader:"In this call",participantsListButtonLabel:"{numParticipants} people",muteAllButtonLabel:"Mute all",copyInviteLinkButtonLabel:"Copy invite link"};var screenShareButton$c={onLabel:"Stop presenting",offLabel:"Present",tooltipDisabledContent:"Presenting is disabled",tooltipOnContent:"Presenting your screen",tooltipOffContent:"Present your screen"};var messageThread$c={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",editedTag:"Edited",liveAuthorIntro:"{author} says",editBoxTextLimit:"Your message is over the limit of {limitNumber} characters",editBoxPlaceholderText:"Edit your message",newMessagesIndicator:"New messages",noDisplayNameSub:"No name",editBoxCancelButton:"Cancel",editBoxSubmitButton:"Submit",messageReadCount:"Read by {messageReadByCount} of {remoteParticipantsCount}"};var errorBar$c={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:"Failed to start screen sharing",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.",callMicrophoneMutedBySystem:"You are muted 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.",callCameraAlreadyInUse:"Unable to access camera. It may already be in use by another application.",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."};var videoGallery$c={screenIsBeingSharedMessage:"You are sharing your screen",screenShareLoadingMessage:"Loading {participant}'s screen",localVideoLabel:"You",localVideoCameraSwitcherLabel:"Cycle camera"};var en_GB$1 = {participantItem:participantItem$c,typingIndicator:typingIndicator$c,sendBox:sendBox$c,messageStatusIndicator:messageStatusIndicator$c,endCallButton:endCallButton$c,cameraButton:cameraButton$c,microphoneButton:microphoneButton$c,devicesButton:devicesButton$c,participantsButton:participantsButton$c,screenShareButton:screenShareButton$c,messageThread:messageThread$c,errorBar:errorBar$c,videoGallery:videoGallery$c};
|
934
934
|
|
@@ -1371,10 +1371,13 @@ const messageBarType = (errorType) => {
|
|
1371
1371
|
case 'callNoMicrophoneFound':
|
1372
1372
|
case 'callMicrophoneAccessDenied':
|
1373
1373
|
case 'callMicrophoneMutedBySystem':
|
1374
|
+
case 'callMicrophoneUnmutedBySystem':
|
1374
1375
|
case 'callMacOsMicrophoneAccessDenied':
|
1375
1376
|
case 'callLocalVideoFreeze':
|
1376
1377
|
case 'callCameraAccessDenied':
|
1377
1378
|
case 'callCameraAlreadyInUse':
|
1379
|
+
case 'callVideoStoppedBySystem':
|
1380
|
+
case 'callVideoRecoveredBySystem':
|
1378
1381
|
case 'callMacOsCameraAccessDenied':
|
1379
1382
|
case 'callMacOsScreenShareAccessDenied':
|
1380
1383
|
return react.MessageBarType.warning;
|
@@ -1392,10 +1395,13 @@ const customIconName = {
|
|
1392
1395
|
callNoMicrophoneFound: 'ErrorBarCallNoMicrophoneFound',
|
1393
1396
|
callMicrophoneAccessDenied: 'ErrorBarCallMicrophoneAccessDenied',
|
1394
1397
|
callMicrophoneMutedBySystem: 'ErrorBarCallMicrophoneMutedBySystem',
|
1398
|
+
callMicrophoneUnmutedBySystem: 'ErrorBarCallMicrophoneUnmutedBySystem',
|
1395
1399
|
callMacOsMicrophoneAccessDenied: 'ErrorBarCallMacOsMicrophoneAccessDenied',
|
1396
1400
|
callLocalVideoFreeze: 'ErrorBarCallLocalVideoFreeze',
|
1397
1401
|
callCameraAccessDenied: 'ErrorBarCallCameraAccessDenied',
|
1398
1402
|
callCameraAlreadyInUse: 'ErrorBarCallCameraAlreadyInUse',
|
1403
|
+
callVideoStoppedBySystem: 'ErrorBarCallVideoStoppedBySystem',
|
1404
|
+
callVideoRecoveredBySystem: 'ErrorBarCallVideoRecoveredBySystem',
|
1399
1405
|
callMacOsCameraAccessDenied: 'ErrorBarCallMacOsCameraAccessDenied'
|
1400
1406
|
};
|
1401
1407
|
|
@@ -1864,9 +1870,12 @@ const DEFAULT_COMPONENT_ICONS = {
|
|
1864
1870
|
ErrorBarCallMacOsMicrophoneAccessDenied: React__default['default'].createElement(reactIcons.MicProhibited16Filled, null),
|
1865
1871
|
ErrorBarCallMicrophoneAccessDenied: React__default['default'].createElement(reactIcons.MicProhibited16Filled, null),
|
1866
1872
|
ErrorBarCallMicrophoneMutedBySystem: React__default['default'].createElement(reactIcons.MicOff16Filled, null),
|
1873
|
+
ErrorBarCallMicrophoneUnmutedBySystem: React__default['default'].createElement(reactIcons.MicOn16Filled, null),
|
1867
1874
|
ErrorBarCallNetworkQualityLow: React__default['default'].createElement(WifiWarning16Filled, null),
|
1868
1875
|
ErrorBarCallNoMicrophoneFound: React__default['default'].createElement(reactIcons.MicProhibited16Filled, null),
|
1869
1876
|
ErrorBarCallNoSpeakerFound: React__default['default'].createElement(reactIcons.SpeakerMute16Filled, null),
|
1877
|
+
ErrorBarCallVideoRecoveredBySystem: React__default['default'].createElement(reactIcons.Video16Filled, null),
|
1878
|
+
ErrorBarCallVideoStoppedBySystem: React__default['default'].createElement(reactIcons.VideoProhibited16Filled, null),
|
1870
1879
|
HorizontalGalleryLeftButton: React__default['default'].createElement(reactIcons.ChevronLeft20Regular, null),
|
1871
1880
|
HorizontalGalleryRightButton: React__default['default'].createElement(reactIcons.ChevronRight20Regular, null),
|
1872
1881
|
MessageDelivered: React__default['default'].createElement(reactIcons.CheckmarkCircle16Regular, null),
|
@@ -2078,6 +2087,55 @@ const InputBoxButton = (props) => {
|
|
2078
2087
|
}, onRenderIcon: () => onRenderIcon(isHover) })));
|
2079
2088
|
};
|
2080
2089
|
|
2090
|
+
// Copyright (c) Microsoft Corporation.
|
2091
|
+
/**
|
2092
|
+
* @private
|
2093
|
+
*/
|
2094
|
+
const buttonStyle$1 = react.mergeStyles({
|
2095
|
+
color: 'grey',
|
2096
|
+
margin: '0',
|
2097
|
+
padding: '0',
|
2098
|
+
width: '1.0625rem',
|
2099
|
+
height: '1.0625rem',
|
2100
|
+
border: 'none',
|
2101
|
+
minWidth: '0',
|
2102
|
+
'&:hover': {
|
2103
|
+
backgroundColor: 'transparent'
|
2104
|
+
}
|
2105
|
+
});
|
2106
|
+
/**
|
2107
|
+
* @private
|
2108
|
+
*/
|
2109
|
+
const iconWrapperStyle$1 = react.mergeStyles({
|
2110
|
+
position: 'absolute',
|
2111
|
+
pointerEvents: 'none'
|
2112
|
+
});
|
2113
|
+
|
2114
|
+
// Copyright (c) Microsoft Corporation.
|
2115
|
+
/**
|
2116
|
+
* @private
|
2117
|
+
*/
|
2118
|
+
const VoiceOverButton = (props) => {
|
2119
|
+
const { onRenderIcon, onClick, ariaLabel, className, id, tooltipContent } = props;
|
2120
|
+
const [isHover, setIsHover] = React.useState(false);
|
2121
|
+
const mergedButtonStyle = react.mergeStyles(buttonStyle$1, className);
|
2122
|
+
const theme = useTheme();
|
2123
|
+
const calloutStyle = { root: { padding: 0 }, calloutMain: { padding: '0.5rem' } };
|
2124
|
+
// Place callout with no gap between it and the button.
|
2125
|
+
const calloutProps = {
|
2126
|
+
gapSpace: 0,
|
2127
|
+
styles: calloutStyle,
|
2128
|
+
backgroundColor: isDarkThemed(theme) ? theme.palette.neutralLighter : ''
|
2129
|
+
};
|
2130
|
+
return (React__default['default'].createElement(react.TooltipHost, { hostClassName: inputButtonTooltipStyle, content: tooltipContent, calloutProps: Object.assign({}, calloutProps) },
|
2131
|
+
React__default['default'].createElement(react.DefaultButton, { className: mergedButtonStyle, ariaLabel: ariaLabel, onClick: onClick, id: id, onMouseEnter: () => {
|
2132
|
+
setIsHover(true);
|
2133
|
+
}, onMouseLeave: () => {
|
2134
|
+
setIsHover(false);
|
2135
|
+
} }),
|
2136
|
+
React__default['default'].createElement("div", { className: iconWrapperStyle$1 }, onRenderIcon(isHover))));
|
2137
|
+
};
|
2138
|
+
|
2081
2139
|
// Copyright (c) Microsoft Corporation.
|
2082
2140
|
/**
|
2083
2141
|
* @private
|
@@ -2438,7 +2496,7 @@ const SendBox = (props) => {
|
|
2438
2496
|
}, onEnterKeyDown: () => {
|
2439
2497
|
sendMessageOnClick();
|
2440
2498
|
}, styles: mergedStyles, supportNewline: supportNewline, maxLength: MAXIMUM_LENGTH_OF_MESSAGE$1 },
|
2441
|
-
React__default['default'].createElement(
|
2499
|
+
React__default['default'].createElement(VoiceOverButton, { onRenderIcon: onRenderSendIcon, onClick: (e) => {
|
2442
2500
|
if (!textValueOverflow) {
|
2443
2501
|
sendMessageOnClick();
|
2444
2502
|
}
|
@@ -3368,6 +3426,7 @@ const generateCustomizedTimestamp = (props, createdOn, locale) => {
|
|
3368
3426
|
};
|
3369
3427
|
/** @private */
|
3370
3428
|
const MessageBubble = (props) => {
|
3429
|
+
var _a;
|
3371
3430
|
const ids = useIdentifiers();
|
3372
3431
|
const theme = useTheme();
|
3373
3432
|
const locale = useLocale$1();
|
@@ -3390,7 +3449,7 @@ const MessageBubble = (props) => {
|
|
3390
3449
|
const actionMenuProps = wasInteractionByTouch
|
3391
3450
|
? undefined
|
3392
3451
|
: chatMessageActionMenuProps({
|
3393
|
-
ariaLabel: strings.actionMenuMoreOptions,
|
3452
|
+
ariaLabel: (_a = strings.actionMenuMoreOptions) !== null && _a !== void 0 ? _a : '',
|
3394
3453
|
enabled: chatActionsEnabled,
|
3395
3454
|
menuButtonRef: messageActionButtonRef,
|
3396
3455
|
// Force show the action button while the flyout is open (otherwise this will dismiss when the pointer is hovered over the flyout)
|
@@ -6686,16 +6745,24 @@ var __awaiter$m = (window && window.__awaiter) || function (thisArg, _arguments,
|
|
6686
6745
|
* @public
|
6687
6746
|
*/
|
6688
6747
|
const MicrophoneButton = (props) => {
|
6689
|
-
var _a, _b, _c, _d, _e, _f, _g;
|
6748
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
|
6690
6749
|
const { onToggleMicrophone } = props;
|
6691
6750
|
const localeStrings = useLocale$1().strings.microphoneButton;
|
6692
6751
|
const strings = Object.assign(Object.assign({}, localeStrings), props.strings);
|
6693
6752
|
const [announcerString, setAnnouncerString] = React.useState(undefined);
|
6753
|
+
const isSplit = (_a = props.split) !== null && _a !== void 0 ? _a : props.enableDeviceSelectionMenu;
|
6754
|
+
// The button should be disabled when there are no mics. However if the button is a split button, if there are
|
6755
|
+
// no mics but there are speakers, then only the primary part of the button should be disabled to allow for
|
6756
|
+
// speaker change.
|
6757
|
+
const primaryDisabled = props.primaryDisabled || (isSplit && !((_b = props.microphones) === null || _b === void 0 ? void 0 : _b.length) ? true : undefined);
|
6758
|
+
const disabled = props.disabled ||
|
6759
|
+
(isSplit && !((_c = props.microphones) === null || _c === void 0 ? void 0 : _c.length) && !((_d = props.speakers) === null || _d === void 0 ? void 0 : _d.length)) ||
|
6760
|
+
(!isSplit && props.microphones && ((_e = props.microphones) === null || _e === void 0 ? void 0 : _e.length) === 0);
|
6694
6761
|
const onRenderMicOnIcon = () => {
|
6695
|
-
return React__default['default'].createElement(HighContrastAwareIcon, { disabled:
|
6762
|
+
return React__default['default'].createElement(HighContrastAwareIcon, { disabled: disabled, iconName: "ControlButtonMicOn" });
|
6696
6763
|
};
|
6697
6764
|
const onRenderMicOffIcon = () => {
|
6698
|
-
return React__default['default'].createElement(HighContrastAwareIcon, { disabled:
|
6765
|
+
return React__default['default'].createElement(HighContrastAwareIcon, { disabled: disabled, iconName: "ControlButtonMicOff" });
|
6699
6766
|
};
|
6700
6767
|
const isMicOn = props.checked;
|
6701
6768
|
const splitButtonAriaString = isMicOn ? strings.onSplitButtonAriaLabel : strings.offSplitButtonAriaLabel;
|
@@ -6716,9 +6783,9 @@ const MicrophoneButton = (props) => {
|
|
6716
6783
|
}), [isMicOn, onToggleMicrophone, toggleAnnouncerString]);
|
6717
6784
|
return (React__default['default'].createElement(React__default['default'].Fragment, null,
|
6718
6785
|
React__default['default'].createElement(Announcer, { announcementString: announcerString, ariaLive: 'polite' }),
|
6719
|
-
React__default['default'].createElement(ControlBarButton, Object.assign({}, props, { onClick: props.onToggleMicrophone ? onToggleClick : props.onClick, onRenderOnIcon: (
|
6720
|
-
? generateDefaultDeviceMenuProps(Object.assign(Object.assign({}, props), { styles: (
|
6721
|
-
: undefined), menuIconProps: ((
|
6786
|
+
React__default['default'].createElement(ControlBarButton, Object.assign({}, props, { onClick: props.onToggleMicrophone ? onToggleClick : props.onClick, onRenderOnIcon: (_f = props.onRenderOnIcon) !== null && _f !== void 0 ? _f : onRenderMicOnIcon, onRenderOffIcon: (_g = props.onRenderOffIcon) !== null && _g !== void 0 ? _g : onRenderMicOffIcon, strings: strings, labelKey: (_h = props.labelKey) !== null && _h !== void 0 ? _h : 'microphoneButtonLabel', menuProps: (_j = props.menuProps) !== null && _j !== void 0 ? _j : (props.enableDeviceSelectionMenu
|
6787
|
+
? generateDefaultDeviceMenuProps(Object.assign(Object.assign({}, props), { styles: (_k = props.styles) === null || _k === void 0 ? void 0 : _k.menuStyles }), strings)
|
6788
|
+
: undefined), menuIconProps: ((_l = props.menuIconProps) !== null && _l !== void 0 ? _l : !props.enableDeviceSelectionMenu) ? { hidden: true } : undefined, split: (_m = props.split) !== null && _m !== void 0 ? _m : props.enableDeviceSelectionMenu, "aria-roledescription": props.enableDeviceSelectionMenu ? strings.microphoneButtonSplitRoleDescription : undefined, splitButtonAriaLabel: props.enableDeviceSelectionMenu ? splitButtonAriaString : undefined, disabled: disabled, primaryDisabled: primaryDisabled }))));
|
6722
6789
|
};
|
6723
6790
|
|
6724
6791
|
// Copyright (c) Microsoft Corporation.
|
@@ -7936,7 +8003,7 @@ const useSelector$4 = (selector, selectorProps) => {
|
|
7936
8003
|
* @public
|
7937
8004
|
*/
|
7938
8005
|
const errorBarSelector$1 = reselect.createSelector([getLatestErrors$1, getDiagnostics, getDeviceManager$1], (latestErrors, diagnostics, deviceManager) => {
|
7939
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l
|
8006
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
7940
8007
|
// The order in which the errors are returned is significant: The `ErrorBar` shows errors on the UI in that order.
|
7941
8008
|
// There are several options for the ordering:
|
7942
8009
|
// - Sorted by when the errors happened (latest first / oldest first).
|
@@ -7956,28 +8023,46 @@ const errorBarSelector$1 = reselect.createSelector([getLatestErrors$1, getDiagno
|
|
7956
8023
|
if (((_d = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.media.latest.noMicrophoneDevicesEnumerated) === null || _d === void 0 ? void 0 : _d.value) === true) {
|
7957
8024
|
activeErrorMessages.push({ type: 'callNoMicrophoneFound' });
|
7958
8025
|
}
|
7959
|
-
if (((_e = deviceManager.deviceAccess) === null || _e === void 0 ? void 0 : _e.audio) === false
|
7960
|
-
((_f = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.media.latest.microphoneNotFunctioning) === null || _f === void 0 ? void 0 : _f.value) === true) {
|
8026
|
+
if (((_e = deviceManager.deviceAccess) === null || _e === void 0 ? void 0 : _e.audio) === false) {
|
7961
8027
|
activeErrorMessages.push({ type: 'callMicrophoneAccessDenied' });
|
7962
8028
|
}
|
7963
|
-
if (((
|
7964
|
-
activeErrorMessages.push({ type: 'callMicrophoneMutedBySystem' });
|
7965
|
-
}
|
7966
|
-
if (((_h = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.media.latest.microphonePermissionDenied) === null || _h === void 0 ? void 0 : _h.value) === true) {
|
8029
|
+
if (((_f = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.media.latest.microphonePermissionDenied) === null || _f === void 0 ? void 0 : _f.value) === true) {
|
7967
8030
|
activeErrorMessages.push({ type: 'callMacOsMicrophoneAccessDenied' });
|
7968
8031
|
}
|
7969
|
-
|
8032
|
+
const microphoneMuteUnexpectedlyDiagnostic = (diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.media.latest.microphoneMuteUnexpectedly) || (diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.media.latest.microphoneNotFunctioning);
|
8033
|
+
if (microphoneMuteUnexpectedlyDiagnostic) {
|
8034
|
+
if (microphoneMuteUnexpectedlyDiagnostic.value === communicationCalling.DiagnosticQuality.Bad) {
|
8035
|
+
// Inform the user that microphone stopped working and inform them to start microphone again
|
8036
|
+
activeErrorMessages.push({ type: 'callMicrophoneMutedBySystem' });
|
8037
|
+
}
|
8038
|
+
else if (microphoneMuteUnexpectedlyDiagnostic.value === communicationCalling.DiagnosticQuality.Good) {
|
8039
|
+
// Inform the user that microphone recovered
|
8040
|
+
activeErrorMessages.push({ type: 'callMicrophoneUnmutedBySystem' });
|
8041
|
+
}
|
8042
|
+
}
|
8043
|
+
const cameraStoppedUnexpectedlyDiagnostic = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.media.latest.cameraStoppedUnexpectedly;
|
8044
|
+
if (cameraStoppedUnexpectedlyDiagnostic) {
|
8045
|
+
if (cameraStoppedUnexpectedlyDiagnostic.value === communicationCalling.DiagnosticQuality.Bad) {
|
8046
|
+
// Inform the user that camera stopped working and inform them to start video again
|
8047
|
+
activeErrorMessages.push({ type: 'callVideoStoppedBySystem' });
|
8048
|
+
}
|
8049
|
+
else if (cameraStoppedUnexpectedlyDiagnostic.value === communicationCalling.DiagnosticQuality.Good) {
|
8050
|
+
// Inform the user that camera recovered
|
8051
|
+
activeErrorMessages.push({ type: 'callVideoRecoveredBySystem' });
|
8052
|
+
}
|
8053
|
+
}
|
8054
|
+
if (((_g = deviceManager.deviceAccess) === null || _g === void 0 ? void 0 : _g.video) === false) {
|
7970
8055
|
activeErrorMessages.push({ type: 'callCameraAccessDenied' });
|
7971
8056
|
}
|
7972
8057
|
else {
|
7973
|
-
if (((
|
8058
|
+
if (((_h = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.media.latest.cameraFreeze) === null || _h === void 0 ? void 0 : _h.value) === true) {
|
7974
8059
|
activeErrorMessages.push({ type: 'callCameraAlreadyInUse' });
|
7975
8060
|
}
|
7976
8061
|
}
|
7977
|
-
if (((
|
8062
|
+
if (((_j = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.media.latest.cameraPermissionDenied) === null || _j === void 0 ? void 0 : _j.value) === true) {
|
7978
8063
|
activeErrorMessages.push({ type: 'callMacOsCameraAccessDenied' });
|
7979
8064
|
}
|
7980
|
-
if (((
|
8065
|
+
if (((_k = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.media.latest.screenshareRecordingDisabled) === null || _k === void 0 ? void 0 : _k.value) === true) {
|
7981
8066
|
activeErrorMessages.push({ type: 'callMacOsScreenShareAccessDenied' });
|
7982
8067
|
}
|
7983
8068
|
// Prefer to show errors with privacy implications.
|
@@ -7986,7 +8071,7 @@ const errorBarSelector$1 = reselect.createSelector([getLatestErrors$1, getDiagno
|
|
7986
8071
|
appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.stopScreenSharing', 'stopScreenShareGeneric');
|
7987
8072
|
appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.startVideo', 'startVideoGeneric');
|
7988
8073
|
appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.unmute', 'unmuteGeneric');
|
7989
|
-
if (((
|
8074
|
+
if (((_l = latestErrors['CallAgent.join']) === null || _l === void 0 ? void 0 : _l.message) === 'CallAgent.join: Invalid meeting link') {
|
7990
8075
|
appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'CallAgent.join', 'failedToJoinCallInvalidMeetingLink');
|
7991
8076
|
}
|
7992
8077
|
else {
|
@@ -12270,7 +12355,7 @@ const CallCompositeIcon = (props) => (React__default['default'].createElement(re
|
|
12270
12355
|
*/
|
12271
12356
|
const CallWithChatCompositeIcon = (props) => (React__default['default'].createElement(react.FontIcon, Object.assign({}, props)));
|
12272
12357
|
|
12273
|
-
var call$d={cameraLabel:"Camera",cameraPermissionDenied:"Your browser is blocking access to your camera",cameraTurnedOff:"Your camera is turned off",close:"Close",complianceBannerNowOnlyRecording:"You are now only recording this meeting.",complianceBannerNowOnlyTranscription:"You are now only transcribing this meeting.",complianceBannerRecordingAndTranscriptionSaved:"Recording and transcription are being saved.",complianceBannerRecordingAndTranscriptionStarted:"Recording and transcription have started.",complianceBannerRecordingAndTranscriptionStopped:"Recording and transcription have stopped.",complianceBannerRecordingSaving:"Recording is being saved.",complianceBannerRecordingStarted:"Recording has started.",complianceBannerRecordingStopped:"Recording has stopped.",complianceBannerTranscriptionStarted:"Transcription has started.",complianceBannerTranscriptionConsent:"By joining, you are giving consent for this meeting to be transcribed.",complianceBannerTranscriptionSaving:"Transcription is being saved.",complianceBannerTranscriptionStopped:"Transcription has stopped.",configurationPageTitle:"Start a call",defaultPlaceHolder:"Select an option",failedToJoinCallDueToNoNetworkMoreDetails:"Call was disconnected due to a network issue. Check your connection and join again.",failedToJoinCallDueToNoNetworkTitle:"Call disconnected",failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails:"You were not granted entry in the call. If this was a mistake, re-join the call.",failedToJoinTeamsMeetingReasonAccessDeniedTitle:"Dismissed from lobby",learnMore:"Learn more",leftCallMoreDetails:"If this was a mistake, re-join the call.",leftCallTitle:"You left the call",lobbyScreenConnectingToCallTitle:"Joining call",lobbyScreenWaitingToBeAdmittedTitle:"Waiting to be admitted",microphonePermissionDenied:"Your browser is blocking access to your microphone",mutedMessage:"You're muted",networkReconnectMoreDetails:"Looks like something went wrong. We're trying to get back into the call.",networkReconnectTitle:"Hold on",privacyPolicy:"Privacy policy",rejoinCallButtonLabel:"Re-join call",removedFromCallMoreDetails:"Another participant removed you from the call.",removedFromCallTitle:"You were removed",soundLabel:"Sound",startCallButtonLabel:"Start call",microphoneToggleInLobbyNotAllowed:"Cannot mute or unmute while in lobby."};var chat$d={chatListHeader:"In this chat",uploadFile:"Upload File"};var callWithChat$d={peopleButtonLabel:"People",peopleButtonTooltipOpen:"Show participants",peopleButtonTooltipClose:"Hide participants",chatButtonLabel:"Chat",chatButtonTooltipClosedWithMessageCount:"Show chat ({unreadMessagesCount} unread)",chatButtonTooltipOpen:"Show chat",chatButtonTooltipClose:"Hide chat",moreDrawerAudioDeviceMenuTitle:"Audio Device",moreDrawerMicrophoneMenuTitle:"Microphone",moreDrawerSpeakerMenuTitle:"Speaker",moreDrawerButtonLabel:"More options",moreDrawerButtonTooltip:"More options",peoplePaneTitle:"People",peoplePaneSubTitle:"In this call",chatPaneTitle:"Chat",chatButtonNewMessageNotificationLabel:"New Message",pictureInPictureTileAriaLabel:"Video Feeds. Click to return to call screen.",removeMenuLabel:"Remove",copyInviteLinkButtonLabel:"Copy invite link",
|
12358
|
+
var call$d={cameraLabel:"Camera",cameraPermissionDenied:"Your browser is blocking access to your camera",cameraTurnedOff:"Your camera is turned off",close:"Close",complianceBannerNowOnlyRecording:"You are now only recording this meeting.",complianceBannerNowOnlyTranscription:"You are now only transcribing this meeting.",complianceBannerRecordingAndTranscriptionSaved:"Recording and transcription are being saved.",complianceBannerRecordingAndTranscriptionStarted:"Recording and transcription have started.",complianceBannerRecordingAndTranscriptionStopped:"Recording and transcription have stopped.",complianceBannerRecordingSaving:"Recording is being saved.",complianceBannerRecordingStarted:"Recording has started.",complianceBannerRecordingStopped:"Recording has stopped.",complianceBannerTranscriptionStarted:"Transcription has started.",complianceBannerTranscriptionConsent:"By joining, you are giving consent for this meeting to be transcribed.",complianceBannerTranscriptionSaving:"Transcription is being saved.",complianceBannerTranscriptionStopped:"Transcription has stopped.",configurationPageTitle:"Start a call",defaultPlaceHolder:"Select an option",failedToJoinCallDueToNoNetworkMoreDetails:"Call was disconnected due to a network issue. Check your connection and join again.",failedToJoinCallDueToNoNetworkTitle:"Call disconnected",failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails:"You were not granted entry in the call. If this was a mistake, re-join the call.",failedToJoinTeamsMeetingReasonAccessDeniedTitle:"Dismissed from lobby",learnMore:"Learn more",leftCallMoreDetails:"If this was a mistake, re-join the call.",leftCallTitle:"You left the call",lobbyScreenConnectingToCallTitle:"Joining call",lobbyScreenWaitingToBeAdmittedTitle:"Waiting to be admitted",microphonePermissionDenied:"Your browser is blocking access to your microphone",mutedMessage:"You're muted",networkReconnectMoreDetails:"Looks like something went wrong. We're trying to get back into the call.",networkReconnectTitle:"Hold on",privacyPolicy:"Privacy policy",rejoinCallButtonLabel:"Re-join call",removedFromCallMoreDetails:"Another participant removed you from the call.",removedFromCallTitle:"You were removed",soundLabel:"Sound",startCallButtonLabel:"Start call",microphoneToggleInLobbyNotAllowed:"Cannot mute or unmute while in lobby."};var chat$d={chatListHeader:"In this chat",uploadFile:"Upload File"};var callWithChat$d={peopleButtonLabel:"People",peopleButtonTooltipOpen:"Show participants",peopleButtonTooltipClose:"Hide participants",chatButtonLabel:"Chat",chatButtonTooltipClosedWithMessageCount:"Show chat ({unreadMessagesCount} unread)",chatButtonTooltipOpen:"Show chat",chatButtonTooltipClose:"Hide chat",moreDrawerAudioDeviceMenuTitle:"Audio Device",moreDrawerMicrophoneMenuTitle:"Microphone",moreDrawerSpeakerMenuTitle:"Speaker",moreDrawerButtonLabel:"More options",moreDrawerButtonTooltip:"More options",peoplePaneTitle:"People",peoplePaneSubTitle:"In this call",chatPaneTitle:"Chat",chatButtonNewMessageNotificationLabel:"New Message",pictureInPictureTileAriaLabel:"Video Feeds. Click to return to call screen.",removeMenuLabel:"Remove",copyInviteLinkButtonLabel:"Copy invite link",dismissSidePaneButtonLabel:"Close",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back"};var en_US = {call:call$d,chat:chat$d,callWithChat:callWithChat$d};
|
12274
12359
|
|
12275
12360
|
var call$c={cameraLabel:"Camera",cameraPermissionDenied:"Your browser is blocking access to your camera",cameraTurnedOff:"Your camera is turned off",close:"Close",complianceBannerNowOnlyRecording:"You are now only recording this meeting.",complianceBannerNowOnlyTranscription:"You are now only transcribing this meeting.",complianceBannerRecordingAndTranscriptionSaved:"Recording and transcription are being saved.",complianceBannerRecordingAndTranscriptionStarted:"Recording and transcription have started.",complianceBannerRecordingAndTranscriptionStopped:"Recording and transcription have stopped.",complianceBannerRecordingSaving:"Recording is being saved.",complianceBannerRecordingStarted:"Recording has started.",complianceBannerRecordingStopped:"Recording has stopped.",complianceBannerTranscriptionStarted:"Transcription has started.",complianceBannerTranscriptionConsent:"By joining, you are giving consent for this meeting to be transcribed.",complianceBannerTranscriptionSaving:"Transcription is being saved.",complianceBannerTranscriptionStopped:"Transcription has stopped.",configurationPageTitle:"Start a call",defaultPlaceHolder:"Select an option",failedToJoinCallDueToNoNetworkMoreDetails:"Call was disconnected due to a network issue. Check your connection and join again.",failedToJoinCallDueToNoNetworkTitle:"Call disconnected",failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails:"You were not granted entry in the call. If this was a mistake, re-join the call.",failedToJoinTeamsMeetingReasonAccessDeniedTitle:"Dismissed from lobby",learnMore:"Learn more",leftCallMoreDetails:"If this was a mistake, re-join the call.",leftCallTitle:"You left the call",lobbyScreenConnectingToCallTitle:"Joining call",lobbyScreenWaitingToBeAdmittedTitle:"Waiting to be admitted",microphonePermissionDenied:"Your browser is blocking access to your microphone",mutedMessage:"You're muted",networkReconnectMoreDetails:"Looks like something went wrong. We're trying to get back into the call.",networkReconnectTitle:"Hold on",privacyPolicy:"Privacy policy",rejoinCallButtonLabel:"Re-join call",removedFromCallMoreDetails:"Another participant removed you from the call.",removedFromCallTitle:"You were removed",soundLabel:"Sound",startCallButtonLabel:"Start call",microphoneToggleInLobbyNotAllowed:"Cannot mute or unmute while in lobby."};var chat$c={chatListHeader:"In this chat"};var callWithChat$c={peopleButtonLabel:"People",peopleButtonTooltipContentOpen:"Show Participants",peopleButtonTooltipContentClose:"Hide Participants",chatButtonLabel:"Chat",chatButtonTooltipContentOpen:"Show Chat",chatButtonTooltipContentClose:"Hide Chat",moreDrawerMicrophoneMenuTitle:"Microphone",moreDrawerSpeakerMenuTitle:"Speaker",moreDrawerButtonLabel:"More options",moreDrawerButtonTooltip:"More options",peoplePaneTitle:"People",peoplePaneSubTitle:"In this call",chatPaneTitle:"Chat",chatButtonNewMessageNotificationLabel:"New Message",pictureInPictureTileAriaLabel:"Video Feeds. Click to return to call screen.",removeMenuLabel:"Remove",copyInviteLinkButtonLabel:"Copy invite link"};var en_GB = {call:call$c,chat:chat$c,callWithChat:callWithChat$c};
|
12276
12361
|
|
@@ -13324,44 +13409,30 @@ var __awaiter$8 = (window && window.__awaiter) || function (thisArg, _arguments,
|
|
13324
13409
|
});
|
13325
13410
|
};
|
13326
13411
|
/**
|
13327
|
-
*
|
13328
|
-
*
|
13329
|
-
*
|
13412
|
+
* An Avatar component made using the `Persona` component.
|
13413
|
+
* It allows you to specify a `userId` and a `dataProvider` to retrieve the `AvatarPersonaData`.
|
13414
|
+
* Read more about `Persona` component at https://developer.microsoft.com/fluentui#/controls/web/persona
|
13415
|
+
*
|
13330
13416
|
* @private
|
13331
13417
|
*/
|
13332
|
-
const
|
13333
|
-
|
13418
|
+
const AvatarPersona = (props) => {
|
13419
|
+
var _a, _b, _c, _d, _e, _f;
|
13420
|
+
const { userId, dataProvider, text, imageUrl, imageInitials, initialsColor, initialsTextColor, showOverflowTooltip } = props;
|
13421
|
+
const [data, setData] = React.useState();
|
13334
13422
|
React.useEffect(() => {
|
13335
13423
|
(() => __awaiter$8(void 0, void 0, void 0, function* () {
|
13336
|
-
|
13337
|
-
|
13338
|
-
|
13424
|
+
if (dataProvider && userId) {
|
13425
|
+
const newData = yield dataProvider(userId);
|
13426
|
+
if (avatarDeepDifferenceCheck(data, newData)) {
|
13427
|
+
setData(newData);
|
13339
13428
|
}
|
13340
|
-
return yield callback(userId);
|
13341
|
-
})));
|
13342
|
-
if (shouldUpdate(data, newData)) {
|
13343
|
-
setData(newData);
|
13344
13429
|
}
|
13345
13430
|
}))();
|
13346
|
-
});
|
13347
|
-
return data
|
13348
|
-
|
13349
|
-
|
13350
|
-
* Function to determine if there is new user avatar data in current render pass.
|
13351
|
-
* @param currentData current set set of avatar persona data present from the custom settings from the previous render
|
13352
|
-
* @param newData new set of avatar persona data after a run of {@link useCustomAvatarPersonData}
|
13353
|
-
* @returns Boolean whether there is new avatar persona data present.
|
13354
|
-
* @private
|
13355
|
-
*/
|
13356
|
-
const shouldUpdate = (currentData, newData) => {
|
13357
|
-
if (currentData.length !== newData.length) {
|
13358
|
-
return true;
|
13359
|
-
}
|
13360
|
-
return currentData.some((data, i) => avatarDeepDifferenceCheck(data, newData[i]));
|
13431
|
+
}, [data, dataProvider, userId]);
|
13432
|
+
return (React__default['default'].createElement(react.Persona, Object.assign({}, props, { text: (_a = data === null || data === void 0 ? void 0 : data.text) !== null && _a !== void 0 ? _a : text, imageUrl: (_b = data === null || data === void 0 ? void 0 : data.imageUrl) !== null && _b !== void 0 ? _b : imageUrl, imageInitials: (_c = data === null || data === void 0 ? void 0 : data.imageInitials) !== null && _c !== void 0 ? _c : imageInitials, initialsColor: (_d = data === null || data === void 0 ? void 0 : data.initialsColor) !== null && _d !== void 0 ? _d : initialsColor, initialsTextColor: (_f = (_e = data === null || data === void 0 ? void 0 : data.initialsTextColor) !== null && _e !== void 0 ? _e : initialsTextColor) !== null && _f !== void 0 ? _f : 'white',
|
13433
|
+
// default disable tooltip unless specified
|
13434
|
+
showOverflowTooltip: showOverflowTooltip !== null && showOverflowTooltip !== void 0 ? showOverflowTooltip : false })));
|
13361
13435
|
};
|
13362
|
-
/**
|
13363
|
-
* @private
|
13364
|
-
*/
|
13365
13436
|
const avatarDeepDifferenceCheck = (currentData, newData) => {
|
13366
13437
|
return ((currentData === null || currentData === void 0 ? void 0 : currentData.text) !== (newData === null || newData === void 0 ? void 0 : newData.text) ||
|
13367
13438
|
(currentData === null || currentData === void 0 ? void 0 : currentData.imageUrl) !== (newData === null || newData === void 0 ? void 0 : newData.imageUrl) ||
|
@@ -13370,26 +13441,6 @@ const avatarDeepDifferenceCheck = (currentData, newData) => {
|
|
13370
13441
|
(currentData === null || currentData === void 0 ? void 0 : currentData.initialsTextColor) !== (newData === null || newData === void 0 ? void 0 : newData.initialsTextColor));
|
13371
13442
|
};
|
13372
13443
|
|
13373
|
-
// Copyright (c) Microsoft Corporation.
|
13374
|
-
/**
|
13375
|
-
* An Avatar component made using the `Persona` component.
|
13376
|
-
* It allows you to specify a `userId` and a `dataProvider` to retrieve the `AvatarPersonaData`.
|
13377
|
-
* Read more about `Persona` component at https://developer.microsoft.com/fluentui#/controls/web/persona
|
13378
|
-
*
|
13379
|
-
* @private
|
13380
|
-
*/
|
13381
|
-
const AvatarPersona = (props) => {
|
13382
|
-
var _a, _b, _c, _d, _e, _f;
|
13383
|
-
const { userId, dataProvider, text, imageUrl, imageInitials, initialsColor, initialsTextColor, showOverflowTooltip } = props;
|
13384
|
-
const userIds = React.useMemo(() => {
|
13385
|
-
return [userId];
|
13386
|
-
}, [userId]);
|
13387
|
-
const [data] = useCustomAvatarPersonaData(userIds, dataProvider);
|
13388
|
-
return (React__default['default'].createElement(react.Persona, Object.assign({}, props, { text: (_a = data === null || data === void 0 ? void 0 : data.text) !== null && _a !== void 0 ? _a : text, imageUrl: (_b = data === null || data === void 0 ? void 0 : data.imageUrl) !== null && _b !== void 0 ? _b : imageUrl, imageInitials: (_c = data === null || data === void 0 ? void 0 : data.imageInitials) !== null && _c !== void 0 ? _c : imageInitials, initialsColor: (_d = data === null || data === void 0 ? void 0 : data.initialsColor) !== null && _d !== void 0 ? _d : initialsColor, initialsTextColor: (_f = (_e = data === null || data === void 0 ? void 0 : data.initialsTextColor) !== null && _e !== void 0 ? _e : initialsTextColor) !== null && _f !== void 0 ? _f : 'white',
|
13389
|
-
// default disable tooltip unless specified
|
13390
|
-
showOverflowTooltip: showOverflowTooltip !== null && showOverflowTooltip !== void 0 ? showOverflowTooltip : false })));
|
13391
|
-
};
|
13392
|
-
|
13393
13444
|
// Copyright (c) Microsoft Corporation.
|
13394
13445
|
/**
|
13395
13446
|
* @private
|
@@ -13628,6 +13679,16 @@ const participantListMobileStyle = {
|
|
13628
13679
|
}
|
13629
13680
|
}
|
13630
13681
|
};
|
13682
|
+
/**
|
13683
|
+
* @private
|
13684
|
+
*/
|
13685
|
+
const displayNameStyles = {
|
13686
|
+
root: {
|
13687
|
+
padding: '0.5rem',
|
13688
|
+
textOverflow: 'ellipsis',
|
13689
|
+
overflow: 'hidden'
|
13690
|
+
}
|
13691
|
+
};
|
13631
13692
|
|
13632
13693
|
// Copyright (c) Microsoft Corporation.
|
13633
13694
|
/**
|
@@ -13655,7 +13716,9 @@ const ParticipantListWithHeading = (props) => {
|
|
13655
13716
|
return (React__default['default'].createElement(react.Stack, { className: participantListStack },
|
13656
13717
|
React__default['default'].createElement(react.Stack.Item, { styles: subheadingStyleThemed }, title),
|
13657
13718
|
React__default['default'].createElement(react.FocusZone, { className: participantListContainerStyle },
|
13658
|
-
React__default['default'].createElement(ParticipantList, Object.assign({}, participantListProps, { styles: props.isMobile ? participantListMobileStyle : participantListStyle, onRenderAvatar: (userId, options) => (React__default['default'].createElement(
|
13719
|
+
React__default['default'].createElement(ParticipantList, Object.assign({}, participantListProps, { styles: props.isMobile ? participantListMobileStyle : participantListStyle, onRenderAvatar: (userId, options) => (React__default['default'].createElement(React__default['default'].Fragment, null,
|
13720
|
+
React__default['default'].createElement(AvatarPersona, Object.assign({ "data-ui-id": "chat-composite-participant-custom-avatar", userId: userId }, options, { hidePersonaDetails: !!(options === null || options === void 0 ? void 0 : options.text) }, { dataProvider: onFetchAvatarPersonaData })),
|
13721
|
+
(options === null || options === void 0 ? void 0 : options.text) && (React__default['default'].createElement(react.Text, { nowrap: true, styles: displayNameStyles }, options === null || options === void 0 ? void 0 : options.text)))), onFetchParticipantMenuItems: onFetchParticipantMenuItems, showParticipantOverflowTooltip: !props.isMobile })))));
|
13659
13722
|
};
|
13660
13723
|
|
13661
13724
|
// Copyright (c) Microsoft Corporation.
|
@@ -14621,13 +14684,12 @@ const MediaGallery = (props) => {
|
|
14621
14684
|
const cameraSwitcherProps = React.useMemo(() => {
|
14622
14685
|
return Object.assign(Object.assign({}, cameraSwitcherCallback), cameraSwitcherCameras);
|
14623
14686
|
}, [cameraSwitcherCallback, cameraSwitcherCameras]);
|
14624
|
-
const remoteParticipants = useRemoteParticipantsWithCustomDisplayNames(videoGalleryProps.remoteParticipants, props.onFetchAvatarPersonaData);
|
14625
14687
|
const onRenderAvatar = React.useCallback((userId, options) => (React__default['default'].createElement(react.Stack, { className: react.mergeStyles({ position: 'absolute', height: '100%', width: '100%' }) },
|
14626
14688
|
React__default['default'].createElement(AvatarPersona, Object.assign({ userId: userId }, options, { dataProvider: props.onFetchAvatarPersonaData })))), [props.onFetchAvatarPersonaData]);
|
14627
14689
|
useLocalVideoStartTrigger(!!props.isVideoStreamOn);
|
14628
14690
|
const VideoGalleryMemoized = React.useMemo(() => {
|
14629
|
-
return (React__default['default'].createElement(VideoGallery, Object.assign({}, videoGalleryProps, {
|
14630
|
-
}, [videoGalleryProps, props.isMobile, onRenderAvatar,
|
14691
|
+
return (React__default['default'].createElement(VideoGallery, Object.assign({}, videoGalleryProps, { localVideoViewOptions: localVideoViewOptions$3, remoteVideoViewOptions: remoteVideoViewOptions$1, styles: VideoGalleryStyles, layout: "floatingLocalVideo", showCameraSwitcherInLocalPreview: props.isMobile, localVideoCameraCycleButtonProps: cameraSwitcherProps, onRenderAvatar: onRenderAvatar })));
|
14692
|
+
}, [videoGalleryProps, props.isMobile, onRenderAvatar, cameraSwitcherProps]);
|
14631
14693
|
return VideoGalleryMemoized;
|
14632
14694
|
};
|
14633
14695
|
/**
|
@@ -14656,25 +14718,6 @@ const useLocalVideoStartTrigger = (isLocalVideoAvailable, shouldTransition) => {
|
|
14656
14718
|
}
|
14657
14719
|
}, [shouldTransition, isButtonStatusSynced, isPreviewCameraOn, isLocalVideoAvailable, mediaGalleryHandlers]);
|
14658
14720
|
};
|
14659
|
-
/**
|
14660
|
-
* Hook to fetch new participant avatar and video gallery displayName information if it is present.
|
14661
|
-
* @param onFetchAvatarPersonaData
|
14662
|
-
*/
|
14663
|
-
const useRemoteParticipantsWithCustomDisplayNames = (remoteParticipants, onFetchAvatarPersonaData) => {
|
14664
|
-
const userIds = React.useMemo(() => {
|
14665
|
-
return remoteParticipants.map((p) => p.userId);
|
14666
|
-
}, [remoteParticipants]);
|
14667
|
-
const avatarPersonaData = useCustomAvatarPersonaData(userIds, onFetchAvatarPersonaData);
|
14668
|
-
const newParticipants = remoteParticipants.map((p, i) => {
|
14669
|
-
var _a;
|
14670
|
-
const newName = (_a = avatarPersonaData[i]) === null || _a === void 0 ? void 0 : _a.text;
|
14671
|
-
if (!newName) {
|
14672
|
-
return p;
|
14673
|
-
}
|
14674
|
-
return Object.assign(Object.assign({}, p), { displayName: newName });
|
14675
|
-
});
|
14676
|
-
return newParticipants;
|
14677
|
-
};
|
14678
14721
|
|
14679
14722
|
// Copyright (c) Microsoft Corporation.
|
14680
14723
|
// Licensed under the MIT license.
|
@@ -14794,11 +14837,11 @@ const NetworkReconnectTile = (props) => {
|
|
14794
14837
|
// This tile may be shown at the beginning of a call.
|
14795
14838
|
// So we need to transition local video to the call.
|
14796
14839
|
useLocalVideoStartTrigger(!!props.localParticipantVideoStream.isAvailable);
|
14797
|
-
return (React__default['default'].createElement(ExpandedLocalVideoTile, Object.assign({ localParticipantVideoStream: props.localParticipantVideoStream, overlayContent: React__default['default'].createElement(react.Stack, { verticalFill: true, horizontalAlign: "center", verticalAlign: "center", className: react.mergeStyles(containerStyle$1) },
|
14840
|
+
return (React__default['default'].createElement(ExpandedLocalVideoTile, Object.assign({ localParticipantVideoStream: props.localParticipantVideoStream, overlayContent: React__default['default'].createElement(react.Stack, { verticalFill: true, horizontalAlign: "center", verticalAlign: "center", className: react.mergeStyles(containerStyle$1), "aria-atomic": true },
|
14798
14841
|
React__default['default'].createElement(react.Stack, { horizontal: true, className: react.mergeStyles(titleContainerStyle) },
|
14799
14842
|
React__default['default'].createElement(CallCompositeIcon, { iconName: "NetworkReconnectIcon", className: react.mergeStyles(titleStyle$1) }),
|
14800
|
-
React__default['default'].createElement(react.Text, { className: react.mergeStyles(titleStyle$1(palette, isVideoReady)), "aria-live": '
|
14801
|
-
React__default['default'].createElement(react.Text, { className: react.mergeStyles(moreDetailsStyle$1(palette, isVideoReady)), "aria-live": '
|
14843
|
+
React__default['default'].createElement(react.Text, { className: react.mergeStyles(titleStyle$1(palette, isVideoReady)), "aria-live": 'assertive' }, strings.networkReconnectTitle)),
|
14844
|
+
React__default['default'].createElement(react.Text, { className: react.mergeStyles(moreDetailsStyle$1(palette, isVideoReady)), "aria-live": 'assertive' }, strings.networkReconnectMoreDetails)) }, handlers)));
|
14802
14845
|
};
|
14803
14846
|
|
14804
14847
|
// Copyright (c) Microsoft Corporation.
|
@@ -15110,9 +15153,9 @@ const buttonWithIconStyles = {
|
|
15110
15153
|
* @private
|
15111
15154
|
*/
|
15112
15155
|
const StartCallButton = (props) => {
|
15113
|
-
const {
|
15156
|
+
const { rejoinCall } = props;
|
15114
15157
|
const locale = useLocale();
|
15115
|
-
return (React__default['default'].createElement(react.PrimaryButton, { "data-ui-id": "call-composite-start-call-button",
|
15158
|
+
return (React__default['default'].createElement(react.PrimaryButton, Object.assign({}, props, { "data-ui-id": "call-composite-start-call-button", className: react.mergeStyles(buttonStyle, props.className), styles: buttonWithIconStyles, text: rejoinCall ? locale.strings.call.rejoinCallButtonLabel : locale.strings.call.startCallButtonLabel, onRenderIcon: () => React__default['default'].createElement(reactIcons.Video20Filled, { className: videoCameraIconStyle }) })));
|
15116
15159
|
};
|
15117
15160
|
|
15118
15161
|
// Copyright (c) Microsoft Corporation.
|
@@ -15342,7 +15385,7 @@ const ConfigurationPage = (props) => {
|
|
15342
15385
|
callDescription),
|
15343
15386
|
React__default['default'].createElement(LocalDeviceSettings, Object.assign({}, options, localDeviceSettingsHandlers, { cameraPermissionGranted: cameraPermissionGranted, microphonePermissionGranted: microphonePermissionGranted })))),
|
15344
15387
|
React__default['default'].createElement(react.Stack, { styles: mobileView ? startCallButtonContainerStyleMobile : startCallButtonContainerStyleDesktop },
|
15345
|
-
React__default['default'].createElement(StartCallButton, { className: mobileView ? startCallButtonStyleMobile : undefined,
|
15388
|
+
React__default['default'].createElement(StartCallButton, { className: mobileView ? startCallButtonStyleMobile : undefined, onClick: startCallHandler, disabled: !microphonePermissionGranted }))))));
|
15346
15389
|
};
|
15347
15390
|
|
15348
15391
|
// Copyright (c) Microsoft Corporation.
|
@@ -15391,13 +15434,13 @@ const moreDetailsStyles = {
|
|
15391
15434
|
*/
|
15392
15435
|
function NoticePage(props) {
|
15393
15436
|
const adapter = useAdapter();
|
15394
|
-
return (React__default['default'].createElement(react.Stack, { verticalFill: true, verticalAlign: "center", horizontalAlign: "center", "data-ui-id": props.dataUiId },
|
15437
|
+
return (React__default['default'].createElement(react.Stack, { verticalFill: true, verticalAlign: "center", horizontalAlign: "center", "data-ui-id": props.dataUiId, "aria-atomic": true },
|
15395
15438
|
React__default['default'].createElement(react.Stack, { className: react.mergeStyles(containerStyle), tokens: containerItemGap },
|
15396
15439
|
props.iconName && React__default['default'].createElement(CallCompositeIcon, { iconName: props.iconName }),
|
15397
|
-
React__default['default'].createElement(react.Text, { className: react.mergeStyles(titleStyles) }, props.title),
|
15398
|
-
React__default['default'].createElement(react.Text, { className: react.mergeStyles(moreDetailsStyles) }, props.moreDetails),
|
15440
|
+
React__default['default'].createElement(react.Text, { className: react.mergeStyles(titleStyles), "aria-live": "assertive" }, props.title),
|
15441
|
+
React__default['default'].createElement(react.Text, { className: react.mergeStyles(moreDetailsStyles), "aria-live": "assertive" }, props.moreDetails),
|
15399
15442
|
React__default['default'].createElement(react.Stack, { styles: rejoinCallButtonContainerStyles },
|
15400
|
-
React__default['default'].createElement(StartCallButton, {
|
15443
|
+
React__default['default'].createElement(StartCallButton, { onClick: () => adapter.joinCall(), disabled: false, rejoinCall: true, autoFocus: true })))));
|
15401
15444
|
}
|
15402
15445
|
|
15403
15446
|
// Copyright (c) Microsoft Corporation.
|
@@ -15438,10 +15481,10 @@ const LobbyTile = (props) => {
|
|
15438
15481
|
const isVideoReady = (_a = videoStream === null || videoStream === void 0 ? void 0 : videoStream.isAvailable) !== null && _a !== void 0 ? _a : false;
|
15439
15482
|
const palette = useTheme().palette;
|
15440
15483
|
const handlers = useHandlers();
|
15441
|
-
return (React__default['default'].createElement(ExpandedLocalVideoTile, Object.assign({ localParticipantVideoStream: props.localParticipantVideoStream, overlayContent: props.overlayProps ? (React__default['default'].createElement(react.Stack, { verticalFill: true, horizontalAlign: "center", verticalAlign: "center", className: react.mergeStyles(overlayContainerStyle) },
|
15484
|
+
return (React__default['default'].createElement(ExpandedLocalVideoTile, Object.assign({ localParticipantVideoStream: props.localParticipantVideoStream, overlayContent: props.overlayProps ? (React__default['default'].createElement(react.Stack, { verticalFill: true, horizontalAlign: "center", verticalAlign: "center", className: react.mergeStyles(overlayContainerStyle), "aria-atomic": true },
|
15442
15485
|
React__default['default'].createElement(react.Stack.Item, { className: react.mergeStyles(titleStyle(palette, isVideoReady)) }, props.overlayProps.overlayIcon),
|
15443
|
-
React__default['default'].createElement(react.Text, { className: react.mergeStyles(titleStyle(palette, isVideoReady)), "aria-live":
|
15444
|
-
props.overlayProps.moreDetails && (React__default['default'].createElement(react.Text, { className: react.mergeStyles(moreDetailsStyle(palette, isVideoReady)) }, props.overlayProps.moreDetails)))) : undefined }, handlers)));
|
15486
|
+
React__default['default'].createElement(react.Text, { className: react.mergeStyles(titleStyle(palette, isVideoReady)), "aria-live": "assertive" }, props.overlayProps.title),
|
15487
|
+
props.overlayProps.moreDetails && (React__default['default'].createElement(react.Text, { className: react.mergeStyles(moreDetailsStyle(palette, isVideoReady)), "aria-live": "assertive" }, props.overlayProps.moreDetails)))) : undefined }, handlers)));
|
15445
15488
|
};
|
15446
15489
|
|
15447
15490
|
// Copyright (c) Microsoft Corporation.
|
@@ -17075,7 +17118,7 @@ const SidePaneHeader = (props) => {
|
|
17075
17118
|
const callWithChatStrings = useCallWithChatCompositeStrings();
|
17076
17119
|
return (React__default['default'].createElement(react.Stack, { horizontal: true, horizontalAlign: "space-between", styles: sidePaneHeaderContainerStyles },
|
17077
17120
|
React__default['default'].createElement(react.Stack.Item, { styles: sidePaneHeaderStyles }, props.headingText),
|
17078
|
-
React__default['default'].createElement(react.CommandBarButton, { ariaLabel: callWithChatStrings.
|
17121
|
+
React__default['default'].createElement(react.CommandBarButton, { ariaLabel: callWithChatStrings.dismissSidePaneButtonLabel, styles: sidePaneCloseButtonStyles, iconProps: { iconName: 'cancel' }, onClick: props.onClose })));
|
17079
17122
|
};
|
17080
17123
|
|
17081
17124
|
// Copyright (c) Microsoft Corporation.
|