@azure/communication-react 1.3.2-alpha-202208110020.0 → 1.3.3-alpha-202208170014.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/CHANGELOG.md +10 -5
- package/dist/communication-react.d.ts +49 -4
- package/dist/dist-cjs/communication-react/index.js +468 -86
- 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/handlers/createHandlers.d.ts +1 -1
- package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.d.ts.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js +2 -3
- package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.d.ts.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js +2 -2
- package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.d.ts.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js +1 -1
- package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js.map +1 -1
- package/dist/dist-esm/communication-react/src/index.js +1 -1
- package/dist/dist-esm/communication-react/src/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.d.ts +3 -1
- package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +4 -4
- package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/HoldButton.d.ts +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts.map +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantItem.js +1 -1
- package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
- package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +3 -0
- package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts.map +1 -1
- 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 +3 -3
- package/dist/dist-esm/react-components/src/theming/icons.js +5 -5
- package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +13 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +16 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +2 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +8 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +8 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +67 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.d.ts +12 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.d.ts.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js +72 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js +11 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +4 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.d.ts +15 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.d.ts.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +27 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.d.ts +32 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.d.ts.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js +73 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.d.ts +5 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +5 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +8 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +5 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatControlBar.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatControlBar.js +28 -6
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatControlBar.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +2 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +8 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +7 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +2 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +4 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.d.ts +8 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.d.ts.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.js +49 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/MoreDrawer.d.ts.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/MoreDrawer.js +21 -0
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/MoreDrawer.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js +5 -5
- package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.d.ts +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/{CallWithChatComposite → common}/MoreButton.d.ts +0 -0
- package/dist/dist-esm/react-composites/src/composites/common/MoreButton.d.ts.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/{CallWithChatComposite → common}/MoreButton.js +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.d.ts +16 -0
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.d.ts.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js +36 -0
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.d.ts +11 -0
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.d.ts.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js +38 -0
- package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js.map +1 -0
- package/dist/dist-esm/react-composites/src/composites/localization/locales/en-US/strings.json +5 -1
- package/package.json +8 -8
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/MoreButton.d.ts.map +0 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/MoreButton.js.map +0 -1
@@ -192,7 +192,7 @@ const fromFlatCommunicationIdentifier = (id) => {
|
|
192
192
|
// Copyright (c) Microsoft Corporation.
|
193
193
|
// Licensed under the MIT license.
|
194
194
|
// GENERATED FILE. DO NOT EDIT MANUALLY.
|
195
|
-
var telemetryVersion = '1.3.
|
195
|
+
var telemetryVersion = '1.3.3-alpha-202208170014.0';
|
196
196
|
|
197
197
|
// Copyright (c) Microsoft Corporation.
|
198
198
|
/**
|
@@ -405,7 +405,7 @@ var __awaiter$u = (window && window.__awaiter) || function (thisArg, _arguments,
|
|
405
405
|
*
|
406
406
|
* @internal
|
407
407
|
*/
|
408
|
-
const _isInCall = (callStatus) => !!callStatus && !['None', 'Disconnected', 'Connecting'].includes(callStatus);
|
408
|
+
const _isInCall = (callStatus) => !!callStatus && !['None', 'Disconnected', 'Connecting', 'LocalHold', 'RemoteHold', 'Ringing'].includes(callStatus);
|
409
409
|
/**
|
410
410
|
* Check if the call state represents being in the lobby or waiting to be admitted.
|
411
411
|
*
|
@@ -759,7 +759,7 @@ const createDefaultCallingHandlers = memoizeOne__default['default']((callClient,
|
|
759
759
|
yield (call === null || call === void 0 ? void 0 : call.addParticipant(participant));
|
760
760
|
}
|
761
761
|
});
|
762
|
-
/* @conditional-compile-remove(dialpad) */
|
762
|
+
/* @conditional-compile-remove(dialpad) */ /* @conditional-compile-remove(PSTN-calls) */
|
763
763
|
const onSendDtmfTone = (dtmfTone) => __awaiter$t(void 0, void 0, void 0, function* () { return yield (call === null || call === void 0 ? void 0 : call.sendDtmf(dtmfTone)); });
|
764
764
|
return {
|
765
765
|
onHangUp,
|
@@ -782,8 +782,7 @@ const createDefaultCallingHandlers = memoizeOne__default['default']((callClient,
|
|
782
782
|
onStartLocalVideo,
|
783
783
|
onDisposeRemoteStreamView,
|
784
784
|
onDisposeLocalStreamView,
|
785
|
-
/* @conditional-compile-remove(dialpad) */
|
786
|
-
onSendDtmfTone
|
785
|
+
/* @conditional-compile-remove(dialpad) */ /* @conditional-compile-remove(PSTN-calls) */ onSendDtmfTone
|
787
786
|
};
|
788
787
|
});
|
789
788
|
/**
|
@@ -958,7 +957,7 @@ const typingIndicatorStringStyle = react.mergeStyles({
|
|
958
957
|
wordBreak: 'break-word'
|
959
958
|
});
|
960
959
|
|
961
|
-
var participantItem$d={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted",displayNamePlaceholder:"Unnamed Participant",participantStateConnecting:"Calling...",participantStateRinging:"Calling...",participantStateHold:"On Hold"};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",messageContentAriaText:"{author} said {message}",messageContentMineAriaText:"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:"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$d={placeholderText:"Enter phone number",deleteButtonAriaLabel:"Delete"};var
|
960
|
+
var participantItem$d={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted",displayNamePlaceholder:"Unnamed Participant",participantStateConnecting:"Calling...",participantStateRinging:"Calling...",participantStateHold:"On Hold"};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",messageContentAriaText:"{author} said {message}",messageContentMineAriaText:"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:"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$d={placeholderText:"Enter phone number",deleteButtonAriaLabel:"Delete"};var holdButton={onLabel:"Resume",offLabel:"Hold",tooltipOnContent:"Resume call",tooltipOffContent:"Hold call"};var videoTile={participantStateConnecting:"Calling...",participantStateRinging:"Calling...",participantStateHold:"On Hold"};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$d,holdButton:holdButton,videoTile:videoTile};
|
962
961
|
|
963
962
|
var participantItem$c={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted",displayNamePlaceholder:"Unnamed Participant"};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",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$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",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$c={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$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",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"};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.",dismissButtonAriaLabel:"Close",failedToJoinCallGeneric:"Failed to join call.",failedToJoinCallInvalidMeetingLink:"Unable to join Meeting. Invalid Link."};var videoGallery$c={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$c={placeholderText:"Enter a number"};var HoldButton$d={onLabel:"Resume",offLabel:"Hold",toolTipOnContent:"Resume call",toolTipOffContent:"Hold call"};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,dialpad:dialpad$c,HoldButton:HoldButton$d};
|
964
963
|
|
@@ -1939,13 +1938,13 @@ const DEFAULT_COMPONENT_ICONS = {
|
|
1939
1938
|
ParticipantItemOptionsHovered: React__default['default'].createElement(reactIcons.MoreHorizontal20Filled, null),
|
1940
1939
|
ParticipantItemScreenShareStart: React__default['default'].createElement(reactIcons.ShareScreenStart20Filled, null),
|
1941
1940
|
/* @conditional-compile-remove(PSTN-calls) */
|
1942
|
-
HoldCall: React__default['default'].createElement(reactIcons.
|
1941
|
+
HoldCall: React__default['default'].createElement(reactIcons.Pause20Regular, null),
|
1943
1942
|
/* @conditional-compile-remove(PSTN-calls) */
|
1944
|
-
ResumeCall: React__default['default'].createElement(reactIcons.
|
1943
|
+
ResumeCall: React__default['default'].createElement(reactIcons.Play20Regular, null),
|
1945
1944
|
SendBoxSend: React__default['default'].createElement(reactIcons.Send20Regular, null),
|
1946
1945
|
SendBoxSendHovered: React__default['default'].createElement(reactIcons.Send20Filled, null),
|
1947
1946
|
VideoTileMicOff: React__default['default'].createElement(reactIcons.MicOff16Filled, null),
|
1948
|
-
/* @conditional-compile-remove(dialpad) */
|
1947
|
+
/* @conditional-compile-remove(dialpad) */ /* @conditional-compile-remove(PSTN-calls) */
|
1949
1948
|
BackSpace: React__default['default'].createElement(reactIcons.Backspace20Regular, null)
|
1950
1949
|
};
|
1951
1950
|
|
@@ -4437,7 +4436,7 @@ const ParticipantItem = (props) => {
|
|
4437
4436
|
avatar,
|
4438
4437
|
me && React__default['default'].createElement(react.Text, { className: meTextStyle }, strings.isMeText),
|
4439
4438
|
React__default['default'].createElement(react.Stack, { horizontal: true, className: react.mergeStyles(infoContainerStyle) }, onRenderIcon && onRenderIcon(props))),
|
4440
|
-
!me && participantStateString ? (React__default['default'].createElement(react.Text, { className: react.mergeStyles(participantStateStringStyles) }, participantStateString)) : (React__default['default'].createElement("div", null, menuItems && menuItems.length > 0 && (React__default['default'].createElement(React__default['default'].Fragment, null,
|
4439
|
+
!me && participantStateString ? (React__default['default'].createElement(react.Text, { "data-ui-id": "participant-item-state-string", className: react.mergeStyles(participantStateStringStyles) }, participantStateString)) : (React__default['default'].createElement("div", null, menuItems && menuItems.length > 0 && (React__default['default'].createElement(React__default['default'].Fragment, null,
|
4441
4440
|
menuButton,
|
4442
4441
|
React__default['default'].createElement(react.ContextualMenu, { items: menuItems, hidden: menuHidden, target: containerRef, onItemClick: onDismissMenu, onDismiss: onDismissMenu, directionalHint: react.DirectionalHint.bottomRightEdge, className: contextualMenuStyle, calloutProps: {
|
4443
4442
|
preventDismissOnEvent: _preventDismissOnEvent
|
@@ -7821,7 +7820,7 @@ const DialpadContainer = (props) => {
|
|
7821
7820
|
var _a, _b;
|
7822
7821
|
const theme = react.useTheme();
|
7823
7822
|
const [textValue, setTextValue] = React.useState('');
|
7824
|
-
const { onSendDtmfTone, onClickDialpadButton, onDisplayDialpadInput, onChange } = props;
|
7823
|
+
const { onSendDtmfTone, onClickDialpadButton, onDisplayDialpadInput, onChange, showDeleteButton = true } = props;
|
7825
7824
|
const sanitizeInput = (input) => {
|
7826
7825
|
// remove non-valid characters from input: letters,special characters excluding +, *,#
|
7827
7826
|
return input.replace(/[^\d*#+]/g, '');
|
@@ -7868,7 +7867,7 @@ const DialpadContainer = (props) => {
|
|
7868
7867
|
}
|
7869
7868
|
}, placeholder: props.strings.placeholderText, "data-test-id": "dialpad-input", onRenderSuffix: () => {
|
7870
7869
|
var _a;
|
7871
|
-
return (React__default['default'].createElement(React__default['default'].Fragment, null, textValue.length !== 0 && (React__default['default'].createElement(react.IconButton, { ariaLabel: props.strings.deleteButtonAriaLabel, onClick: deleteNumbers, styles: react.concatStyleSets(iconButtonStyles(theme), (_a = props.styles) === null || _a === void 0 ? void 0 : _a.deleteIcon), iconProps: { iconName: 'BackSpace' } }))));
|
7870
|
+
return (React__default['default'].createElement(React__default['default'].Fragment, null, showDeleteButton && textValue.length !== 0 && (React__default['default'].createElement(react.IconButton, { ariaLabel: props.strings.deleteButtonAriaLabel, onClick: deleteNumbers, styles: react.concatStyleSets(iconButtonStyles(theme), (_a = props.styles) === null || _a === void 0 ? void 0 : _a.deleteIcon), iconProps: { iconName: 'BackSpace' } }))));
|
7872
7871
|
} }),
|
7873
7872
|
React__default['default'].createElement(react.FocusZone, null, dialPadButtonsDefault.map((rows, rowIndex) => {
|
7874
7873
|
return (React__default['default'].createElement(react.Stack, { horizontal: true, key: `row_${rowIndex}`, horizontalAlign: "stretch" }, rows.map((button, columnIndex) => (React__default['default'].createElement(DialpadButton, { key: `button_${columnIndex}`,
|
@@ -7899,10 +7898,10 @@ const DialpadContainer = (props) => {
|
|
7899
7898
|
* @beta
|
7900
7899
|
*/
|
7901
7900
|
const Dialpad = (props) => {
|
7902
|
-
/* @conditional-compile-remove(dialpad) */
|
7901
|
+
/* @conditional-compile-remove(dialpad) */ /* @conditional-compile-remove(PSTN-calls) */
|
7903
7902
|
const localeStrings = useLocale$1().strings.dialpad;
|
7904
7903
|
const dialpadLocaleStringsTrampoline = () => {
|
7905
|
-
/* @conditional-compile-remove(dialpad) */
|
7904
|
+
/* @conditional-compile-remove(dialpad) */ /* @conditional-compile-remove(PSTN-calls) */
|
7906
7905
|
return localeStrings;
|
7907
7906
|
};
|
7908
7907
|
const strings = Object.assign(Object.assign({}, dialpadLocaleStringsTrampoline()), props.strings);
|
@@ -8335,7 +8334,7 @@ const getSelector$1 = (component) => {
|
|
8335
8334
|
return findSelector$1(component);
|
8336
8335
|
};
|
8337
8336
|
const findSelector$1 = (component) => {
|
8338
|
-
/* @conditional-compile-remove(dialpad) */
|
8337
|
+
/* @conditional-compile-remove(dialpad) */ /* @conditional-compile-remove(PSTN-calls) */
|
8339
8338
|
// Dialpad only has handlers currently and doesn't require any props from the stateful layer so return the emptySelector
|
8340
8339
|
if (component === Dialpad) {
|
8341
8340
|
return emptySelector;
|
@@ -12664,7 +12663,7 @@ const CallCompositeIcon = (props) => (React__default['default'].createElement(re
|
|
12664
12663
|
*/
|
12665
12664
|
const CallWithChatCompositeIcon = (props) => (React__default['default'].createElement(react.FontIcon, Object.assign({}, props)));
|
12666
12665
|
|
12667
|
-
var call$d={cameraLabel:"Camera",cameraPermissionDenied:"Your browser is blocking access to your camera",cameraTurnedOff:"Your camera is turned off",chatButtonLabel:"Chat",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",copyInviteLinkButtonLabel:"Copy invite link",defaultPlaceHolder:"Select an option",dismissSidePaneButtonLabel:"Close",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",microphoneToggleInLobbyNotAllowed:"Cannot mute or unmute while in lobby.",mutedMessage:"You're muted",networkReconnectMoreDetails:"Looks like something went wrong. We're trying to get back into the call.",networkReconnectTitle:"Hold on",peopleButtonLabel:"People",peoplePaneTitle:"People",peoplePaneSubTitle:"In this call",privacyPolicy:"Privacy policy",rejoinCallButtonLabel:"Re-join call",removedFromCallMoreDetails:"Another participant removed you from the call.",removedFromCallTitle:"You were removed",removeMenuLabel:"Remove",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back",soundLabel:"Sound",startCallButtonLabel:"Start call",openDialpadButtonLabel:"Dial phone number",peoplePaneAddPeopleButtonLabel:"Add People",dialpadStartCallButtonLabel:"Call",dialpadModalTitle:"Dial Phone Number",dialpadModalAriaLabel:"Dialpad",dialpadCloseModalButtonAriaLabel:"Close Dialpad"};var chat$d={chatListHeader:"In this chat",uploadFile:"Upload File"};var callWithChat$d={chatButtonLabel:"Chat",chatButtonNewMessageNotificationLabel:"New Message",chatButtonTooltipClosedWithMessageCount:"Show chat ({unreadMessagesCount} unread)",chatButtonTooltipClose:"Hide chat",chatButtonTooltipOpen:"Show chat",chatPaneTitle:"Chat",copyInviteLinkButtonLabel:"Copy invite link",dismissSidePaneButtonLabel:"Close",moreDrawerAudioDeviceMenuTitle:"Audio Device",moreDrawerButtonLabel:"More options",moreDrawerButtonTooltip:"More options",moreDrawerMicrophoneMenuTitle:"Microphone",moreDrawerSpeakerMenuTitle:"Speaker",peopleButtonLabel:"People",peopleButtonTooltipOpen:"Show participants",peopleButtonTooltipClose:"Hide participants",peoplePaneSubTitle:"In this call",peoplePaneTitle:"People",pictureInPictureTileAriaLabel:"Video Feeds. Click to return to call screen.",removeMenuLabel:"Remove",openDialpadButtonLabel:"Dial phone number",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back",peoplePaneAddPeopleButtonLabel:"Add People",dialpadStartCallButtonLabel:"Call",dialpadModalTitle:"Dial Phone Number",dialpadModalAriaLabel:"Dialpad",dialpadCloseModalButtonAriaLabel:"Close Dialpad"};var en_US = {call:call$d,chat:chat$d,callWithChat:callWithChat$d};
|
12666
|
+
var call$d={cameraLabel:"Camera",cameraPermissionDenied:"Your browser is blocking access to your camera",cameraTurnedOff:"Your camera is turned off",chatButtonLabel:"Chat",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",copyInviteLinkButtonLabel:"Copy invite link",defaultPlaceHolder:"Select an option",dismissSidePaneButtonLabel:"Close",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",microphoneToggleInLobbyNotAllowed:"Cannot mute or unmute while in lobby.",mutedMessage:"You're muted",networkReconnectMoreDetails:"Looks like something went wrong. We're trying to get back into the call.",networkReconnectTitle:"Hold on",peopleButtonLabel:"People",peoplePaneTitle:"People",peoplePaneSubTitle:"In this call",privacyPolicy:"Privacy policy",rejoinCallButtonLabel:"Re-join call",removedFromCallMoreDetails:"Another participant removed you from the call.",removedFromCallTitle:"You were removed",removeMenuLabel:"Remove",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back",soundLabel:"Sound",startCallButtonLabel:"Start call",openDialpadButtonLabel:"Dial phone number",peoplePaneAddPeopleButtonLabel:"Add People",dialpadStartCallButtonLabel:"Call",dialpadModalTitle:"Dial Phone Number",dialpadModalAriaLabel:"Dialpad",dialpadCloseModalButtonAriaLabel:"Close Dialpad",moreButtonCallingLabel:"More",resumeCallButtonLabel:"Resume",resumeCallButtonAriaLabel:"Resume call",holdScreenLabel:"You're on hold"};var chat$d={chatListHeader:"In this chat",uploadFile:"Upload File"};var callWithChat$d={chatButtonLabel:"Chat",chatButtonNewMessageNotificationLabel:"New Message",chatButtonTooltipClosedWithMessageCount:"Show chat ({unreadMessagesCount} unread)",chatButtonTooltipClose:"Hide chat",chatButtonTooltipOpen:"Show chat",chatPaneTitle:"Chat",copyInviteLinkButtonLabel:"Copy invite link",dismissSidePaneButtonLabel:"Close",moreDrawerAudioDeviceMenuTitle:"Audio Device",moreDrawerButtonLabel:"More options",moreDrawerButtonTooltip:"More options",moreDrawerMicrophoneMenuTitle:"Microphone",moreDrawerSpeakerMenuTitle:"Speaker",peopleButtonLabel:"People",peopleButtonTooltipOpen:"Show participants",peopleButtonTooltipClose:"Hide participants",peoplePaneSubTitle:"In this call",peoplePaneTitle:"People",pictureInPictureTileAriaLabel:"Video Feeds. Click to return to call screen.",removeMenuLabel:"Remove",openDialpadButtonLabel:"Dial phone number",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back",peoplePaneAddPeopleButtonLabel:"Add People",dialpadStartCallButtonLabel:"Call",dialpadModalTitle:"Dial Phone Number",dialpadModalAriaLabel:"Dialpad",dialpadCloseModalButtonAriaLabel:"Close Dialpad"};var en_US = {call:call$d,chat:chat$d,callWithChat:callWithChat$d};
|
12668
12667
|
|
12669
12668
|
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",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",dismissSidePaneButton:"Close",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back"};var en_GB = {call:call$c,chat:chat$c,callWithChat:callWithChat$c};
|
12670
12669
|
|
@@ -14397,6 +14396,10 @@ const getCallCompositePage = (call, previousCall) => {
|
|
14397
14396
|
else if (_isInCall(call === null || call === void 0 ? void 0 : call.state)) {
|
14398
14397
|
return 'call';
|
14399
14398
|
}
|
14399
|
+
else if ((call === null || call === void 0 ? void 0 : call.state) === 'LocalHold') {
|
14400
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
14401
|
+
return 'hold';
|
14402
|
+
}
|
14400
14403
|
else {
|
14401
14404
|
// When the call object has been constructed after clicking , but before 'connecting' has been
|
14402
14405
|
// set on the call object, we continue to show the configuration screen.
|
@@ -14463,6 +14466,10 @@ const createCompositeHandlers = memoizeOne__default['default']((adapter) => ({
|
|
14463
14466
|
onAddParticipant: (participant, options) => __awaiter$9(void 0, void 0, void 0, function* () {
|
14464
14467
|
return yield adapter.addParticipant(participant, options);
|
14465
14468
|
}),
|
14469
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
14470
|
+
onSendDtmfTone: (dtmfTone) => __awaiter$9(void 0, void 0, void 0, function* () {
|
14471
|
+
yield adapter.sendDtmfTone(dtmfTone);
|
14472
|
+
}),
|
14466
14473
|
onRemoveParticipant: (userId) => __awaiter$9(void 0, void 0, void 0, function* () {
|
14467
14474
|
yield adapter.removeParticipant(userId);
|
14468
14475
|
}),
|
@@ -14821,6 +14828,12 @@ const icon$2 = () => React__default['default'].createElement(CallCompositeIcon,
|
|
14821
14828
|
/** @beta */
|
14822
14829
|
const People = (props) => {
|
14823
14830
|
const { strings, onRenderOnIcon, onRenderOffIcon, onClick } = props;
|
14831
|
+
/* @conditional-compile-remove(rooms) */
|
14832
|
+
let disabled = props.disabled;
|
14833
|
+
/* @conditional-compile-remove(rooms) */
|
14834
|
+
const permissions = _usePermissions();
|
14835
|
+
/* @conditional-compile-remove(rooms) */
|
14836
|
+
disabled = disabled || !permissions.participantList;
|
14824
14837
|
const theme = useTheme();
|
14825
14838
|
const styles = React.useMemo(() => {
|
14826
14839
|
var _a;
|
@@ -14830,7 +14843,125 @@ const People = (props) => {
|
|
14830
14843
|
}
|
14831
14844
|
}, (_a = props.styles) !== null && _a !== void 0 ? _a : {}, controlButtonBaseStyle);
|
14832
14845
|
}, [props.styles, theme.palette.neutralLight]);
|
14833
|
-
return (React__default['default'].createElement(ControlBarButton, Object.assign({}, props, { "data-ui-id": "call-composite-participants-button", strings: strings, labelKey: 'peopleButtonLabelKey', onRenderOnIcon: onRenderOnIcon !== null && onRenderOnIcon !== void 0 ? onRenderOnIcon : icon$2, onRenderOffIcon: onRenderOffIcon !== null && onRenderOffIcon !== void 0 ? onRenderOffIcon : icon$2, onClick: onClick, styles: styles
|
14846
|
+
return (React__default['default'].createElement(ControlBarButton, Object.assign({}, props, { "data-ui-id": "call-composite-participants-button", strings: strings, labelKey: 'peopleButtonLabelKey', onRenderOnIcon: onRenderOnIcon !== null && onRenderOnIcon !== void 0 ? onRenderOnIcon : icon$2, onRenderOffIcon: onRenderOffIcon !== null && onRenderOffIcon !== void 0 ? onRenderOffIcon : icon$2, onClick: onClick, styles: styles,
|
14847
|
+
/* @conditional-compile-remove(rooms) */
|
14848
|
+
disabled: disabled })));
|
14849
|
+
};
|
14850
|
+
|
14851
|
+
// Copyright (c) Microsoft Corporation.
|
14852
|
+
const icon$1 = () => React__default['default'].createElement(reactIcons.MoreHorizontal20Filled, { key: 'chatOnIconKey', primaryFill: "currentColor" });
|
14853
|
+
/**
|
14854
|
+
* @private
|
14855
|
+
*/
|
14856
|
+
const MoreButton = (props) => {
|
14857
|
+
return (React__default['default'].createElement(ControlBarButton, Object.assign({}, props, { labelKey: 'optionsButtonLabelKey', showLabel: props.showLabel, onRenderOnIcon: icon$1, onRenderOffIcon: icon$1, onClick: props.onClick, "data-ui-id": 'call-with-chat-composite-more-button' })));
|
14858
|
+
};
|
14859
|
+
|
14860
|
+
// Copyright (c) Microsoft Corporation.
|
14861
|
+
// Licensed under the MIT license.
|
14862
|
+
/**
|
14863
|
+
* @private
|
14864
|
+
*/
|
14865
|
+
const themeddialpadModalStyle$1 = (theme) => ({
|
14866
|
+
main: {
|
14867
|
+
borderRadius: theme.effects.roundedCorner6,
|
14868
|
+
padding: '1rem'
|
14869
|
+
}
|
14870
|
+
});
|
14871
|
+
/**
|
14872
|
+
* @private
|
14873
|
+
*/
|
14874
|
+
const themedDialpadStyle$1 = (isMobile, theme) => ({
|
14875
|
+
root: {
|
14876
|
+
padding: 0,
|
14877
|
+
marginLeft: 0,
|
14878
|
+
marginRight: 0,
|
14879
|
+
maxWidth: '100%'
|
14880
|
+
},
|
14881
|
+
textField: {
|
14882
|
+
root: {
|
14883
|
+
borderBottom: `1px solid ${theme.palette.neutralTertiaryAlt}`
|
14884
|
+
},
|
14885
|
+
field: {
|
14886
|
+
backgroundColor: theme.palette.white,
|
14887
|
+
fontSize: theme.fonts.large.fontSize,
|
14888
|
+
padding: '1.063rem 0.5rem',
|
14889
|
+
textAlign: 'center',
|
14890
|
+
paddingTop: 0
|
14891
|
+
}
|
14892
|
+
},
|
14893
|
+
primaryContent: {
|
14894
|
+
color: theme.palette.themeDarkAlt
|
14895
|
+
}
|
14896
|
+
});
|
14897
|
+
|
14898
|
+
// Copyright (c) Microsoft Corporation.
|
14899
|
+
// Licensed under the MIT license.
|
14900
|
+
/**
|
14901
|
+
* @private
|
14902
|
+
*/
|
14903
|
+
const compositeOuterContainerStyles = {
|
14904
|
+
root: {
|
14905
|
+
width: '100%',
|
14906
|
+
// Create a new stacking context so that DrawerMenu can be positioned absolutely.
|
14907
|
+
position: 'relative'
|
14908
|
+
}
|
14909
|
+
};
|
14910
|
+
/** @private */
|
14911
|
+
const callCompositeContainerStyles = {
|
14912
|
+
root: {
|
14913
|
+
// Start a new stacking context so that any `position:absolute` elements
|
14914
|
+
// inside the call composite do not compete with its siblings.
|
14915
|
+
position: 'relative'
|
14916
|
+
}
|
14917
|
+
};
|
14918
|
+
/** @private */
|
14919
|
+
const controlBarContainerStyles$1 = {
|
14920
|
+
root: {
|
14921
|
+
// Start a new stacking context so that any `position:absolute` elements
|
14922
|
+
// inside the control bar do not compete with its siblings.
|
14923
|
+
position: 'relative'
|
14924
|
+
}
|
14925
|
+
};
|
14926
|
+
/** @private */
|
14927
|
+
const drawerContainerStyles$1 = {
|
14928
|
+
root: {
|
14929
|
+
position: 'absolute',
|
14930
|
+
top: 0,
|
14931
|
+
left: 0,
|
14932
|
+
width: '100%',
|
14933
|
+
height: '100%',
|
14934
|
+
// Any zIndex > 0 will work because this is the only absolutely
|
14935
|
+
// positioned element in the container.
|
14936
|
+
zIndex: 1
|
14937
|
+
}
|
14938
|
+
};
|
14939
|
+
|
14940
|
+
// Copyright (c) Microsoft Corporation.
|
14941
|
+
/** @private */
|
14942
|
+
const SendDtmfDialpad = (props) => {
|
14943
|
+
const dialpadProps = usePropsFor$1(Dialpad);
|
14944
|
+
const { strings, isMobile, showDialpad, onDismissDialpad } = props;
|
14945
|
+
const theme = react.useTheme();
|
14946
|
+
const onDismissTriggered = () => {
|
14947
|
+
onDismissDialpad();
|
14948
|
+
};
|
14949
|
+
const dialpadModalStyle = React.useMemo(() => themeddialpadModalStyle$1(theme), [theme]);
|
14950
|
+
const dialpadStyle = React.useMemo(() => themedDialpadStyle$1(isMobile, theme), [theme, isMobile]);
|
14951
|
+
const dialpadStrings = {
|
14952
|
+
placeholderText: ''
|
14953
|
+
};
|
14954
|
+
if (isMobile) {
|
14955
|
+
return (React__default['default'].createElement(react.Stack, null, showDialpad && (React__default['default'].createElement(react.Stack, { styles: drawerContainerStyles$1 },
|
14956
|
+
React__default['default'].createElement(_DrawerSurface, { onLightDismiss: onDismissTriggered },
|
14957
|
+
React__default['default'].createElement(react.Stack, { style: { padding: '1rem' } },
|
14958
|
+
React__default['default'].createElement(Dialpad, Object.assign({ styles: dialpadStyle }, dialpadProps, { showDeleteButton: false }))))))));
|
14959
|
+
}
|
14960
|
+
return (React__default['default'].createElement(React__default['default'].Fragment, null, React__default['default'].createElement(react.Modal, { titleAriaId: strings.dialpadModalAriaLabel, isOpen: showDialpad, onDismiss: onDismissTriggered, isBlocking: true, styles: dialpadModalStyle },
|
14961
|
+
React__default['default'].createElement(react.Stack, { horizontal: true, horizontalAlign: "end", verticalAlign: "center" },
|
14962
|
+
React__default['default'].createElement(react.IconButton, { iconProps: { iconName: 'Cancel' }, ariaLabel: strings.dialpadCloseModalButtonAriaLabel, onClick: onDismissTriggered, style: { color: theme.palette.black } })),
|
14963
|
+
React__default['default'].createElement(react.Stack, null,
|
14964
|
+
React__default['default'].createElement(Dialpad, Object.assign({ styles: dialpadStyle }, dialpadProps, { showDeleteButton: false, strings: dialpadStrings }))))));
|
14834
14965
|
};
|
14835
14966
|
|
14836
14967
|
// Copyright (c) Microsoft Corporation.
|
@@ -14849,6 +14980,51 @@ const CallControls = (props) => {
|
|
14849
14980
|
tooltipOffContent: localeStrings.strings.callWithChat.peopleButtonTooltipOpen,
|
14850
14981
|
tooltipOnContent: localeStrings.strings.callWithChat.peopleButtonTooltipClose
|
14851
14982
|
}), [localeStrings]);
|
14983
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
14984
|
+
const moreButtonStrings = React.useMemo(() => ({
|
14985
|
+
label: localeStrings.strings.call.moreButtonCallingLabel,
|
14986
|
+
tooltipOffContent: localeStrings.strings.callWithChat.moreDrawerButtonTooltip
|
14987
|
+
}), [localeStrings]);
|
14988
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
14989
|
+
const dialpadStrings = React.useMemo(() => ({
|
14990
|
+
dialpadModalAriaLabel: localeStrings.strings.call.dialpadModalAriaLabel,
|
14991
|
+
dialpadCloseModalButtonAriaLabel: localeStrings.strings.call.dialpadCloseModalButtonAriaLabel
|
14992
|
+
}), [localeStrings]);
|
14993
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
14994
|
+
const holdButtonProps = usePropsFor$1(HoldButton);
|
14995
|
+
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(one-to-n-calling) */
|
14996
|
+
const moreButtonContextualMenuItems = () => {
|
14997
|
+
const items = [];
|
14998
|
+
if (props.isMobile && props.onPeopleButtonClicked) {
|
14999
|
+
items.push({
|
15000
|
+
key: 'peopleButtonKey',
|
15001
|
+
text: localeStrings.component.strings.participantsButton.label,
|
15002
|
+
onClick: () => {
|
15003
|
+
if (props.onPeopleButtonClicked) {
|
15004
|
+
props.onPeopleButtonClicked();
|
15005
|
+
}
|
15006
|
+
},
|
15007
|
+
iconProps: { iconName: 'ControlButtonParticipants', styles: { root: { lineHeight: 0 } } },
|
15008
|
+
itemProps: {
|
15009
|
+
styles: buttonFlyoutIncreasedSizeStyles
|
15010
|
+
}
|
15011
|
+
});
|
15012
|
+
}
|
15013
|
+
items.push({
|
15014
|
+
key: 'holdButtonKey',
|
15015
|
+
text: localeStrings.component.strings.holdButton.tooltipOffContent,
|
15016
|
+
onClick: () => {
|
15017
|
+
holdButtonProps.onToggleHold();
|
15018
|
+
},
|
15019
|
+
iconProps: { iconName: 'HoldCall', styles: { root: { lineHeight: 0 } } },
|
15020
|
+
itemProps: {
|
15021
|
+
styles: buttonFlyoutIncreasedSizeStyles
|
15022
|
+
}
|
15023
|
+
});
|
15024
|
+
return items;
|
15025
|
+
};
|
15026
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
15027
|
+
const [showDialpad, setShowDialpad] = React.useState(false);
|
14852
15028
|
const theme = react.useTheme();
|
14853
15029
|
/* @conditional-compile-remove(control-bar-button-injection) */
|
14854
15030
|
const customButtons = React.useMemo(() => generateCustomControlBarButtons(onFetchCustomButtonPropsTrampoline$1(options), options === null || options === void 0 ? void 0 : options.displayType), [options]);
|
@@ -14856,16 +15032,25 @@ const CallControls = (props) => {
|
|
14856
15032
|
if (props.options === false) {
|
14857
15033
|
return React__default['default'].createElement(React__default['default'].Fragment, null);
|
14858
15034
|
}
|
15035
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
15036
|
+
const onDismissDialpad = () => {
|
15037
|
+
setShowDialpad(false);
|
15038
|
+
};
|
14859
15039
|
return (React__default['default'].createElement(react.Stack, { horizontalAlign: "center" },
|
15040
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
15041
|
+
React__default['default'].createElement(SendDtmfDialpad, { isMobile: !!props.isMobile, strings: dialpadStrings, showDialpad: showDialpad, onDismissDialpad: onDismissDialpad }),
|
14860
15042
|
React__default['default'].createElement(react.Stack.Item, null,
|
14861
15043
|
React__default['default'].createElement(ControlBar, { layout: "horizontal", styles: controlBarStyles(theme.semanticColors.bodyBackground) },
|
14862
15044
|
isEnabled$2(options === null || options === void 0 ? void 0 : options.microphoneButton) && React__default['default'].createElement(Microphone, { displayType: options === null || options === void 0 ? void 0 : options.displayType }),
|
14863
15045
|
isEnabled$2(options === null || options === void 0 ? void 0 : options.cameraButton) && React__default['default'].createElement(Camera, { displayType: options === null || options === void 0 ? void 0 : options.displayType }),
|
14864
15046
|
isEnabled$2(options === null || options === void 0 ? void 0 : options.screenShareButton) && (React__default['default'].createElement(ScreenShare, { option: options === null || options === void 0 ? void 0 : options.screenShareButton, displayType: options === null || options === void 0 ? void 0 : options.displayType })),
|
14865
|
-
isEnabled$2(options === null || options === void 0 ? void 0 : options.participantsButton) &&
|
15047
|
+
isEnabled$2(options === null || options === void 0 ? void 0 : options.participantsButton) &&
|
15048
|
+
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(one-to-n-calling) */ !props.isMobile && (React__default['default'].createElement(Participants, { option: options === null || options === void 0 ? void 0 : options.participantsButton, callInvitationURL: props.callInvitationURL, onFetchParticipantMenuItems: props.onFetchParticipantMenuItems, displayType: options === null || options === void 0 ? void 0 : options.displayType, increaseFlyoutItemSize: props.increaseFlyoutItemSize, isMobile: props.isMobile })) && (
|
14866
15049
|
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(one-to-n-calling) */
|
14867
15050
|
React__default['default'].createElement(People, { checked: props.peopleButtonChecked, showLabel: (options === null || options === void 0 ? void 0 : options.displayType) !== 'compact', onClick: props.onPeopleButtonClicked, "data-ui-id": "call-with-chat-composite-people-button", disabled: isDisabled(options === null || options === void 0 ? void 0 : options.participantsButton), strings: peopleButtonStrings })),
|
14868
15051
|
isEnabled$2(options === null || options === void 0 ? void 0 : options.devicesButton) && (React__default['default'].createElement(Devices, { displayType: options === null || options === void 0 ? void 0 : options.displayType, increaseFlyoutItemSize: props.increaseFlyoutItemSize })),
|
15052
|
+
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(one-to-n-calling) */
|
15053
|
+
isEnabled$2(options === null || options === void 0 ? void 0 : options.moreButton) && (React__default['default'].createElement(MoreButton, { strings: moreButtonStrings, menuIconProps: { hidden: true }, menuProps: { items: moreButtonContextualMenuItems() }, showLabel: !props.isMobile })),
|
14869
15054
|
customButtons['primary'],
|
14870
15055
|
isEnabled$2(options === null || options === void 0 ? void 0 : options.endCallButton) && React__default['default'].createElement(EndCall, { displayType: options === null || options === void 0 ? void 0 : options.displayType })))));
|
14871
15056
|
};
|
@@ -14892,7 +15077,7 @@ const callStatusSelector = reselect.createSelector([getCallStatus, getIsScreenSh
|
|
14892
15077
|
// Copyright (c) Microsoft Corporation.
|
14893
15078
|
// Licensed under the MIT license.
|
14894
15079
|
/** @private */
|
14895
|
-
const controlBarContainerStyles
|
15080
|
+
const controlBarContainerStyles = {
|
14896
15081
|
paddingTop: '0.25rem',
|
14897
15082
|
paddingBottom: '0.25rem',
|
14898
15083
|
// @TODO: this should be exposed through a custom CallComposite Theme API that extends the fluent theme with semantic values
|
@@ -14911,7 +15096,7 @@ const NOTIFICATION_CONTAINER_Z_INDEX = Math.max(CONTROL_BAR_Z_INDEX, VIDEO_GALLE
|
|
14911
15096
|
/**
|
14912
15097
|
* @private
|
14913
15098
|
*/
|
14914
|
-
const callControlsContainerStyles = react.mergeStyles(controlBarContainerStyles
|
15099
|
+
const callControlsContainerStyles = react.mergeStyles(controlBarContainerStyles, {
|
14915
15100
|
zIndex: CONTROL_BAR_Z_INDEX
|
14916
15101
|
});
|
14917
15102
|
const containerStyle$2 = {
|
@@ -15336,7 +15521,7 @@ const iconStyles = {
|
|
15336
15521
|
/**
|
15337
15522
|
* @private
|
15338
15523
|
*/
|
15339
|
-
const
|
15524
|
+
const themeddialpadModalStyle = (theme) => ({
|
15340
15525
|
main: {
|
15341
15526
|
borderRadius: theme.effects.roundedCorner6,
|
15342
15527
|
padding: '1rem'
|
@@ -15385,48 +15570,6 @@ const themedCallButtonStyle = (theme) => ({
|
|
15385
15570
|
}
|
15386
15571
|
});
|
15387
15572
|
|
15388
|
-
// Copyright (c) Microsoft Corporation.
|
15389
|
-
// Licensed under the MIT license.
|
15390
|
-
/**
|
15391
|
-
* @private
|
15392
|
-
*/
|
15393
|
-
const compositeOuterContainerStyles = {
|
15394
|
-
root: {
|
15395
|
-
width: '100%',
|
15396
|
-
// Create a new stacking context so that DrawerMenu can be positioned absolutely.
|
15397
|
-
position: 'relative'
|
15398
|
-
}
|
15399
|
-
};
|
15400
|
-
/** @private */
|
15401
|
-
const callCompositeContainerStyles = {
|
15402
|
-
root: {
|
15403
|
-
// Start a new stacking context so that any `position:absolute` elements
|
15404
|
-
// inside the call composite do not compete with its siblings.
|
15405
|
-
position: 'relative'
|
15406
|
-
}
|
15407
|
-
};
|
15408
|
-
/** @private */
|
15409
|
-
const controlBarContainerStyles = {
|
15410
|
-
root: {
|
15411
|
-
// Start a new stacking context so that any `position:absolute` elements
|
15412
|
-
// inside the control bar do not compete with its siblings.
|
15413
|
-
position: 'relative'
|
15414
|
-
}
|
15415
|
-
};
|
15416
|
-
/** @private */
|
15417
|
-
const drawerContainerStyles$1 = {
|
15418
|
-
root: {
|
15419
|
-
position: 'absolute',
|
15420
|
-
top: 0,
|
15421
|
-
left: 0,
|
15422
|
-
width: '100%',
|
15423
|
-
height: '100%',
|
15424
|
-
// Any zIndex > 0 will work because this is the only absolutely
|
15425
|
-
// positioned element in the container.
|
15426
|
-
zIndex: 1
|
15427
|
-
}
|
15428
|
-
};
|
15429
|
-
|
15430
15573
|
// Copyright (c) Microsoft Corporation.
|
15431
15574
|
/** @private */
|
15432
15575
|
const CallingDialpad = (props) => {
|
@@ -15448,7 +15591,7 @@ const CallingDialpad = (props) => {
|
|
15448
15591
|
onDismissTriggered();
|
15449
15592
|
}
|
15450
15593
|
};
|
15451
|
-
const
|
15594
|
+
const dialpadModalStyle = React.useMemo(() => themeddialpadModalStyle(theme), [theme]);
|
15452
15595
|
const dialpadStyle = React.useMemo(() => themedDialpadStyle(isMobile, theme), [theme, isMobile]);
|
15453
15596
|
const callButtonStyle = React.useMemo(() => themedCallButtonStyle(theme), [theme]);
|
15454
15597
|
const dialpadComponent = () => {
|
@@ -15459,12 +15602,12 @@ const CallingDialpad = (props) => {
|
|
15459
15602
|
if (isMobile) {
|
15460
15603
|
return (React__default['default'].createElement(react.Stack, { "data-ui-id": "call-with-chat-composite-dialpad" }, showDialpad && (React__default['default'].createElement(react.Stack, { styles: drawerContainerStyles$1 },
|
15461
15604
|
React__default['default'].createElement(_DrawerSurface, { onLightDismiss: onDismissTriggered },
|
15462
|
-
React__default['default'].createElement(react.Stack, { style: { padding: '
|
15605
|
+
React__default['default'].createElement(react.Stack, { style: { padding: '1rem' } }, dialpadComponent()))))));
|
15463
15606
|
}
|
15464
|
-
return (React__default['default'].createElement(React__default['default'].Fragment, null, React__default['default'].createElement(react.Modal, { titleAriaId: strings.dialpadModalAriaLabel, isOpen: showDialpad, onDismiss: onDismissTriggered, isBlocking: true, styles:
|
15607
|
+
return (React__default['default'].createElement(React__default['default'].Fragment, null, React__default['default'].createElement(react.Modal, { titleAriaId: strings.dialpadModalAriaLabel, isOpen: showDialpad, onDismiss: onDismissTriggered, isBlocking: true, styles: dialpadModalStyle, "data-ui-id": "call-with-chat-composite-dialpad" },
|
15465
15608
|
React__default['default'].createElement(react.Stack, { horizontal: true, horizontalAlign: "space-between", verticalAlign: "center" },
|
15466
15609
|
React__default['default'].createElement(react.Text, null, strings.dialpadModalTitle),
|
15467
|
-
React__default['default'].createElement(react.IconButton, { iconProps: { iconName: 'Cancel' }, ariaLabel: strings.dialpadCloseModalButtonAriaLabel, onClick: onDismissTriggered, style: { color:
|
15610
|
+
React__default['default'].createElement(react.IconButton, { iconProps: { iconName: 'Cancel' }, ariaLabel: strings.dialpadCloseModalButtonAriaLabel, onClick: onDismissTriggered, style: { color: theme.palette.black } })),
|
15468
15611
|
React__default['default'].createElement(react.Stack, null, dialpadComponent()))));
|
15469
15612
|
};
|
15470
15613
|
function DialpadStartCallIconTrampoline() {
|
@@ -16961,6 +17104,154 @@ const overlayPropsWaitingToBeAdmitted = (strings) => ({
|
|
16961
17104
|
overlayIcon: React__default['default'].createElement(CallCompositeIcon, { iconName: "LobbyScreenWaitingToBeAdmitted" })
|
16962
17105
|
});
|
16963
17106
|
|
17107
|
+
// Copyright (c) Microsoft Corporation.
|
17108
|
+
/**
|
17109
|
+
* styles for hold pane resume button
|
17110
|
+
*
|
17111
|
+
* @private
|
17112
|
+
*/
|
17113
|
+
const resumeButtonStyles = {
|
17114
|
+
root: {
|
17115
|
+
borderRadius: _pxToRem(4),
|
17116
|
+
padding: `${_pxToRem(6)} ${_pxToRem(20)} `
|
17117
|
+
},
|
17118
|
+
label: {
|
17119
|
+
fontWeight: 400,
|
17120
|
+
display: 'flex',
|
17121
|
+
fontSize: _pxToRem(14)
|
17122
|
+
}
|
17123
|
+
};
|
17124
|
+
/**
|
17125
|
+
* styles for hold pane main text
|
17126
|
+
*
|
17127
|
+
* @private
|
17128
|
+
*/
|
17129
|
+
const holdPaneLabelStyles = {
|
17130
|
+
root: {
|
17131
|
+
color: '#FFFFFF',
|
17132
|
+
fontWeight: 600,
|
17133
|
+
fontHeight: _pxToRem(22),
|
17134
|
+
fontSize: _pxToRem(16),
|
17135
|
+
margin: '1rem auto 0.5rem'
|
17136
|
+
}
|
17137
|
+
};
|
17138
|
+
/**
|
17139
|
+
* styles for hold pane timer
|
17140
|
+
*
|
17141
|
+
* @private
|
17142
|
+
*/
|
17143
|
+
const holdPaneTimerStyles = {
|
17144
|
+
root: {
|
17145
|
+
color: '#FFFFFF',
|
17146
|
+
fontWeight: 600,
|
17147
|
+
fontSize: _pxToRem(20),
|
17148
|
+
lineHeight: _pxToRem(28),
|
17149
|
+
margin: 'auto'
|
17150
|
+
}
|
17151
|
+
};
|
17152
|
+
/**
|
17153
|
+
* styles for hold pane container
|
17154
|
+
*
|
17155
|
+
* @private
|
17156
|
+
*/
|
17157
|
+
const paneStyles = {
|
17158
|
+
root: {
|
17159
|
+
width: '100%',
|
17160
|
+
height: '100%',
|
17161
|
+
background: 'rgba(0, 0, 0, 0.5)'
|
17162
|
+
}
|
17163
|
+
};
|
17164
|
+
/**
|
17165
|
+
* styles for the hold pane content container
|
17166
|
+
*
|
17167
|
+
* @private
|
17168
|
+
*/
|
17169
|
+
const holdPaneContentStyles = {
|
17170
|
+
root: {
|
17171
|
+
display: 'flex',
|
17172
|
+
margin: 'auto',
|
17173
|
+
flexDirection: 'column',
|
17174
|
+
justifyContent: 'center'
|
17175
|
+
}
|
17176
|
+
};
|
17177
|
+
|
17178
|
+
// Copyright (c) Microsoft Corporation.
|
17179
|
+
/**
|
17180
|
+
* Hold pane to display when the user places themselves on hold
|
17181
|
+
*
|
17182
|
+
* @beta
|
17183
|
+
*/
|
17184
|
+
const HoldPane = () => {
|
17185
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
17186
|
+
const holdButtonProps = usePropsFor$1(HoldButton);
|
17187
|
+
const locale = useLocale();
|
17188
|
+
const strings = stringsTrampoline(locale);
|
17189
|
+
const [time, setTime] = React.useState(0);
|
17190
|
+
const elapsedTime = getReadableTime(time);
|
17191
|
+
const startTime = React.useRef(performance.now());
|
17192
|
+
React__default['default'].useEffect(() => {
|
17193
|
+
const interval = setInterval(() => {
|
17194
|
+
setTime(performance.now() - startTime.current);
|
17195
|
+
}, 10);
|
17196
|
+
return () => {
|
17197
|
+
clearInterval(interval);
|
17198
|
+
};
|
17199
|
+
}, [startTime]);
|
17200
|
+
return (React__default['default'].createElement(react.Stack, { styles: paneStyles },
|
17201
|
+
React__default['default'].createElement(react.Stack, { horizontal: true, styles: holdPaneContentStyles },
|
17202
|
+
React__default['default'].createElement(react.Text, { styles: holdPaneTimerStyles }, elapsedTime),
|
17203
|
+
React__default['default'].createElement(react.Text, { styles: holdPaneLabelStyles }, strings.holdScreenLabel),
|
17204
|
+
React__default['default'].createElement(react.PrimaryButton, { text: strings.resumeCallButtonLabel, ariaLabel: strings.resumeCallButtonAriaLabel, styles: resumeButtonStyles, onClick: () => {
|
17205
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
17206
|
+
holdButtonProps.onToggleHold();
|
17207
|
+
} }))));
|
17208
|
+
};
|
17209
|
+
const getMinutes = (time) => {
|
17210
|
+
return Math.floor(getSeconds(time) / 60);
|
17211
|
+
};
|
17212
|
+
const getSeconds = (time) => {
|
17213
|
+
return Math.floor(time / 1000);
|
17214
|
+
};
|
17215
|
+
const getHours = (time) => {
|
17216
|
+
return Math.floor(getMinutes(time) / 60);
|
17217
|
+
};
|
17218
|
+
/**
|
17219
|
+
* @internal
|
17220
|
+
*/
|
17221
|
+
const getReadableTime = (time) => {
|
17222
|
+
const hours = getHours(time);
|
17223
|
+
const readableMinutes = ('0' + (getMinutes(time) % 60)).slice(-2);
|
17224
|
+
const readableSeconds = ('0' + (getSeconds(time) % 60)).slice(-2);
|
17225
|
+
return `${hours > 0 ? hours + ':' : ''}${readableMinutes}:${readableSeconds}`;
|
17226
|
+
};
|
17227
|
+
const stringsTrampoline = (locale) => {
|
17228
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
17229
|
+
return {
|
17230
|
+
holdScreenLabel: locale.strings.call.holdScreenLabel,
|
17231
|
+
resumeCallButtonLabel: locale.strings.call.resumeCallButtonLabel,
|
17232
|
+
resumeCallButtonAriaLabel: locale.strings.call.resumeCallButtonAriaLabel
|
17233
|
+
};
|
17234
|
+
};
|
17235
|
+
|
17236
|
+
// Copyright (c) Microsoft Corporation.
|
17237
|
+
/**
|
17238
|
+
* @beta
|
17239
|
+
*/
|
17240
|
+
const HoldPage = (props) => {
|
17241
|
+
var _a, _b, _c;
|
17242
|
+
const errorBarProps = usePropsFor$1(ErrorBar);
|
17243
|
+
const strings = useLocale().strings.call;
|
17244
|
+
const callControlOptions = props.mobileView
|
17245
|
+
? reduceCallControlsForMobile((_a = props.options) === null || _a === void 0 ? void 0 : _a.callControls)
|
17246
|
+
: (_b = props.options) === null || _b === void 0 ? void 0 : _b.callControls;
|
17247
|
+
return (React__default['default'].createElement(CallArrangement, { complianceBannerProps: { strings }, errorBarProps: ((_c = props.options) === null || _c === void 0 ? void 0 : _c.errorBar) !== false && Object.assign({}, errorBarProps), callControlProps: {
|
17248
|
+
options: callControlOptions,
|
17249
|
+
increaseFlyoutItemSize: props.mobileView
|
17250
|
+
}, mobileView: props.mobileView,
|
17251
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
17252
|
+
modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => React__default['default'].createElement(HoldPane, null), dataUiId: 'hold-page' }));
|
17253
|
+
};
|
17254
|
+
|
16964
17255
|
// Copyright (c) Microsoft Corporation.
|
16965
17256
|
// Licensed under the MIT license.
|
16966
17257
|
var __awaiter$5 = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
|
@@ -17006,6 +17297,11 @@ const MainScreen = (props) => {
|
|
17006
17297
|
/* @conditional-compile-remove(one-to-n-calling) */
|
17007
17298
|
modalLayerHostId: props.modalLayerHostId, options: props.options }));
|
17008
17299
|
break;
|
17300
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
17301
|
+
case holdPageTrampoline():
|
17302
|
+
pageElement = (React__default['default'].createElement(React__default['default'].Fragment, null,
|
17303
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */ React__default['default'].createElement(HoldPage, { mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, options: props.options })));
|
17304
|
+
break;
|
17009
17305
|
default:
|
17010
17306
|
throw new Error('Invalid call composite page');
|
17011
17307
|
}
|
@@ -17061,6 +17357,11 @@ const CallComposite = (props) => {
|
|
17061
17357
|
/* @conditional-compile-remove(one-to-n-calling) */
|
17062
17358
|
mobileView && React__default['default'].createElement(react.LayerHost, { id: modalLayerHostId, className: react.mergeStyles(modalLayerHostStyle) })))));
|
17063
17359
|
};
|
17360
|
+
const holdPageTrampoline = () => {
|
17361
|
+
/* @conditional-compile-remove(one-to-n-calling) */
|
17362
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
17363
|
+
return 'hold';
|
17364
|
+
};
|
17064
17365
|
|
17065
17366
|
/**
|
17066
17367
|
* @private
|
@@ -17295,6 +17596,8 @@ class AzureCommunicationCallAdapter {
|
|
17295
17596
|
this.holdCall.bind(this);
|
17296
17597
|
/* @conditional-compile-remove(PSTN-calls) */
|
17297
17598
|
this.resumeCall.bind(this);
|
17599
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
17600
|
+
this.sendDtmfTone.bind(this);
|
17298
17601
|
}
|
17299
17602
|
dispose() {
|
17300
17603
|
this.resetDiagnosticsForwarder();
|
@@ -17554,6 +17857,12 @@ class AzureCommunicationCallAdapter {
|
|
17554
17857
|
}
|
17555
17858
|
});
|
17556
17859
|
}
|
17860
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
17861
|
+
sendDtmfTone(dtmfTone) {
|
17862
|
+
return __awaiter$4(this, void 0, void 0, function* () {
|
17863
|
+
this.handlers.onSendDtmfTone(dtmfTone);
|
17864
|
+
});
|
17865
|
+
}
|
17557
17866
|
getState() {
|
17558
17867
|
return this.context.getState();
|
17559
17868
|
}
|
@@ -17794,7 +18103,7 @@ const isOutboundCall = (callLocator) => {
|
|
17794
18103
|
};
|
17795
18104
|
|
17796
18105
|
// Copyright (c) Microsoft Corporation.
|
17797
|
-
const icon
|
18106
|
+
const icon = () => React__default['default'].createElement(CallWithChatCompositeIcon, { iconName: 'ControlBarPeopleButton' });
|
17798
18107
|
/**
|
17799
18108
|
* @private
|
17800
18109
|
*/
|
@@ -17809,7 +18118,7 @@ const PeopleButton = (props) => {
|
|
17809
18118
|
}
|
17810
18119
|
}, (_a = props.styles) !== null && _a !== void 0 ? _a : {});
|
17811
18120
|
}, [props.styles, theme.palette.neutralLight]);
|
17812
|
-
return (React__default['default'].createElement(ControlBarButton, Object.assign({}, props, { strings: strings, labelKey: 'peopleButtonLabelKey', onRenderOnIcon: onRenderOnIcon !== null && onRenderOnIcon !== void 0 ? onRenderOnIcon : icon
|
18121
|
+
return (React__default['default'].createElement(ControlBarButton, Object.assign({}, props, { strings: strings, labelKey: 'peopleButtonLabelKey', onRenderOnIcon: onRenderOnIcon !== null && onRenderOnIcon !== void 0 ? onRenderOnIcon : icon, onRenderOffIcon: onRenderOffIcon !== null && onRenderOffIcon !== void 0 ? onRenderOffIcon : icon, onClick: onClick, styles: styles })));
|
17813
18122
|
};
|
17814
18123
|
|
17815
18124
|
// Copyright (c) Microsoft Corporation.
|
@@ -17945,15 +18254,6 @@ const chatNotificationContainerStyles = {
|
|
17945
18254
|
}
|
17946
18255
|
};
|
17947
18256
|
|
17948
|
-
// Copyright (c) Microsoft Corporation.
|
17949
|
-
const icon = () => React__default['default'].createElement(reactIcons.MoreHorizontal20Filled, { key: 'chatOnIconKey', primaryFill: "currentColor" });
|
17950
|
-
/**
|
17951
|
-
* @private
|
17952
|
-
*/
|
17953
|
-
const MoreButton = (props) => {
|
17954
|
-
return (React__default['default'].createElement(ControlBarButton, Object.assign({}, props, { labelKey: 'optionsButtonLabelKey', showLabel: false, onRenderOnIcon: icon, onRenderOffIcon: icon, onClick: props.onClick, "data-ui-id": 'call-with-chat-composite-more-button' })));
|
17955
|
-
};
|
17956
|
-
|
17957
18257
|
// Copyright (c) Microsoft Corporation.
|
17958
18258
|
/**
|
17959
18259
|
* Max number of Custom Buttons in primary and secondary ControlBar
|
@@ -18016,6 +18316,42 @@ const onFetchCustomButtonPropsTrampoline = (options) => {
|
|
18016
18316
|
return response;
|
18017
18317
|
};
|
18018
18318
|
|
18319
|
+
// Copyright (c) Microsoft Corporation.
|
18320
|
+
/**
|
18321
|
+
*
|
18322
|
+
* @private
|
18323
|
+
*/
|
18324
|
+
const DesktopMoreButton = (props) => {
|
18325
|
+
/*@conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
18326
|
+
const localeStrings = useLocale();
|
18327
|
+
/*@conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
18328
|
+
const holdButtonProps = usePropsFor$1(HoldButton);
|
18329
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
18330
|
+
const moreButtonStrings = React.useMemo(() => ({
|
18331
|
+
label: localeStrings.strings.call.moreButtonCallingLabel,
|
18332
|
+
tooltipOffContent: localeStrings.strings.callWithChat.moreDrawerButtonTooltip
|
18333
|
+
}), [localeStrings]);
|
18334
|
+
const moreButtonContextualMenuItems = () => {
|
18335
|
+
const items = [];
|
18336
|
+
/*@conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
18337
|
+
items.push({
|
18338
|
+
key: 'holdButtonKey',
|
18339
|
+
text: localeStrings.component.strings.holdButton.tooltipOffContent,
|
18340
|
+
onClick: () => {
|
18341
|
+
holdButtonProps.onToggleHold();
|
18342
|
+
},
|
18343
|
+
iconProps: { iconName: 'HoldCall', styles: { root: { lineHeight: 0 } } },
|
18344
|
+
itemProps: {
|
18345
|
+
styles: buttonFlyoutIncreasedSizeStyles
|
18346
|
+
}
|
18347
|
+
});
|
18348
|
+
return items;
|
18349
|
+
};
|
18350
|
+
return (React__default['default'].createElement(MoreButton, Object.assign({}, props, { "data-ui-id": "call-with-chat-composite-more-button",
|
18351
|
+
/*@conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
18352
|
+
strings: moreButtonStrings, menuIconProps: { hidden: true }, menuProps: { items: moreButtonContextualMenuItems() } })));
|
18353
|
+
};
|
18354
|
+
|
18019
18355
|
// Copyright (c) Microsoft Corporation.
|
18020
18356
|
const inferCallWithChatControlOptions$1 = (mobileView, callWithChatControls) => {
|
18021
18357
|
if (callWithChatControls === false) {
|
@@ -18037,7 +18373,7 @@ const inferCallWithChatControlOptions$1 = (mobileView, callWithChatControls) =>
|
|
18037
18373
|
* @private
|
18038
18374
|
*/
|
18039
18375
|
const CallWithChatControlBar = (props) => {
|
18040
|
-
var _a, _b;
|
18376
|
+
var _a, _b, _c;
|
18041
18377
|
const theme = react.useTheme();
|
18042
18378
|
const callWithChatStrings = useCallWithChatCompositeStrings();
|
18043
18379
|
const options = inferCallWithChatControlOptions$1(props.mobileView, props.callControls);
|
@@ -18069,14 +18405,27 @@ const CallWithChatControlBar = (props) => {
|
|
18069
18405
|
const endCallButtonStyles = React.useMemo(() => (!props.mobileView ? getDesktopEndCallButtonStyles(theme) : undefined), [props.mobileView, theme]);
|
18070
18406
|
/* @conditional-compile-remove(control-bar-button-injection) */
|
18071
18407
|
const customButtons = React.useMemo(() => generateCustomCallWithChatControlBarButton(onFetchCustomButtonPropsTrampoline(options !== false ? options : undefined), options !== false ? options === null || options === void 0 ? void 0 : options.displayType : undefined), [options]);
|
18408
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
18409
|
+
const dialpadStrings = React.useMemo(() => ({
|
18410
|
+
dialpadModalAriaLabel: callWithChatStrings.dialpadModalAriaLabel,
|
18411
|
+
dialpadCloseModalButtonAriaLabel: callWithChatStrings.dialpadCloseModalButtonAriaLabel
|
18412
|
+
}), [callWithChatStrings]);
|
18413
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
18414
|
+
const [showDialpad, setShowDialpad] = React.useState(false);
|
18072
18415
|
// when options is false then we want to hide the whole control bar.
|
18073
18416
|
if (options === false) {
|
18074
18417
|
return React__default['default'].createElement(React__default['default'].Fragment, null);
|
18075
18418
|
}
|
18076
18419
|
const chatButton = (React__default['default'].createElement(ChatButtonWithUnreadMessagesBadge, { chatAdapter: props.chatAdapter, checked: props.chatButtonChecked, showLabel: options.displayType !== 'compact', isChatPaneVisible: props.chatButtonChecked, onClick: props.onChatButtonClicked, disabled: props.disableButtonsForLobbyPage, strings: chatButtonStrings, styles: commonButtonStyles, newMessageLabel: callWithChatStrings.chatButtonNewMessageNotificationLabel }));
|
18077
|
-
|
18420
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
18421
|
+
const onDismissDialpad = () => {
|
18422
|
+
setShowDialpad(false);
|
18423
|
+
};
|
18424
|
+
return (React__default['default'].createElement(react.Stack, { horizontal: true, className: react.mergeStyles(callControlsContainerStyles, controlBarContainerStyles) },
|
18078
18425
|
React__default['default'].createElement(react.Stack.Item, { grow: true },
|
18079
18426
|
React__default['default'].createElement(CallAdapterProvider, { adapter: props.callAdapter },
|
18427
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
18428
|
+
React__default['default'].createElement(SendDtmfDialpad, { isMobile: (_a = props.mobileView) !== null && _a !== void 0 ? _a : false, strings: dialpadStrings, showDialpad: showDialpad, onDismissDialpad: onDismissDialpad }),
|
18080
18429
|
React__default['default'].createElement(react.Stack, { horizontalAlign: "center" },
|
18081
18430
|
React__default['default'].createElement(react.Stack.Item, null,
|
18082
18431
|
React__default['default'].createElement(ControlBar, { layout: "horizontal", styles: centerContainerStyles },
|
@@ -18085,18 +18434,21 @@ const CallWithChatControlBar = (props) => {
|
|
18085
18434
|
props.mobileView && isEnabled$1(options === null || options === void 0 ? void 0 : options.chatButton) && chatButton,
|
18086
18435
|
isEnabled$1(options.screenShareButton) && (React__default['default'].createElement(ScreenShare, { option: options.screenShareButton, displayType: options.displayType, styles: screenShareButtonStyles })),
|
18087
18436
|
/* @conditional-compile-remove(control-bar-button-injection) */
|
18088
|
-
(
|
18089
|
-
|
18437
|
+
(_b = customButtons['primary']) === null || _b === void 0 ? void 0 :
|
18438
|
+
_b.props.children.slice(0, props.mobileView
|
18090
18439
|
? CUSTOM_BUTTON_OPTIONS.MAX_PRIMARY_MOBILE_CUSTOM_BUTTONS
|
18091
18440
|
: CUSTOM_BUTTON_OPTIONS.MAX_PRIMARY_DESKTOP_CUSTOM_BUTTONS).map((element) => {
|
18092
18441
|
return (React__default['default'].createElement(element.type, Object.assign({}, element.props, { key: element.props.strings.label, styles: commonButtonStyles, displayType: options.displayType, showLabel: options.displayType !== 'compact' })));
|
18093
18442
|
}),
|
18094
18443
|
props.mobileView && (React__default['default'].createElement(MoreButton, { "data-ui-id": "call-with-chat-composite-more-button", strings: moreButtonStrings, onClick: props.onMoreButtonClicked, disabled: props.disableButtonsForLobbyPage })),
|
18444
|
+
/*@conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */ isEnabled$1(options === null || options === void 0 ? void 0 : options.moreButton) &&
|
18445
|
+
/*@conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */ isEnabled$1(options === null || options === void 0 ? void 0 : options.holdButton) &&
|
18446
|
+
!props.mobileView && (React__default['default'].createElement(DesktopMoreButton, { disabled: props.disableButtonsForLobbyPage, styles: commonButtonStyles })),
|
18095
18447
|
React__default['default'].createElement(EndCall, { displayType: "compact", styles: endCallButtonStyles })))))),
|
18096
18448
|
!props.mobileView && (React__default['default'].createElement(react.Stack, { horizontal: true, className: !props.mobileView ? react.mergeStyles(desktopButtonContainerStyle) : undefined },
|
18097
18449
|
/* @conditional-compile-remove(control-bar-button-injection) */
|
18098
|
-
(
|
18099
|
-
|
18450
|
+
(_c = customButtons['secondary']) === null || _c === void 0 ? void 0 :
|
18451
|
+
_c.props.children.slice(0, CUSTOM_BUTTON_OPTIONS.MAX_SECONDARY_DESKTOP_CUSTOM_BUTTONS).map((element) => {
|
18100
18452
|
return (React__default['default'].createElement(element.type, Object.assign({}, element.props, { key: element.props.key, styles: commonButtonStyles, displayType: options.displayType, showLabel: options.displayType !== 'compact' })));
|
18101
18453
|
}),
|
18102
18454
|
isEnabled$1(options === null || options === void 0 ? void 0 : options.peopleButton) && (React__default['default'].createElement(PeopleButton, { checked: props.peopleButtonChecked, showLabel: options.displayType !== 'compact', onClick: props.onPeopleButtonClicked, "data-ui-id": "call-with-chat-composite-people-button", disabled: props.disableButtonsForLobbyPage, strings: peopleButtonStrings, styles: commonButtonStyles })),
|
@@ -18270,6 +18622,10 @@ class CallWithChatBackedCallAdapter {
|
|
18270
18622
|
this.addParticipant = (participant, options) => __awaiter$3(this, void 0, void 0, function* () {
|
18271
18623
|
yield this.callWithChatAdapter.addParticipant(participant, options);
|
18272
18624
|
});
|
18625
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
18626
|
+
this.sendDtmfTone = (dtmfTone) => __awaiter$3(this, void 0, void 0, function* () {
|
18627
|
+
yield this.callWithChatAdapter.sendDtmfTone(dtmfTone);
|
18628
|
+
});
|
18273
18629
|
this.callWithChatAdapter = callWithChatAdapter;
|
18274
18630
|
}
|
18275
18631
|
}
|
@@ -18421,6 +18777,10 @@ const MoreDrawer = (props) => {
|
|
18421
18777
|
var _a, _b, _c, _d, _e;
|
18422
18778
|
const drawerMenuItems = [];
|
18423
18779
|
const { speakers, onSelectSpeaker, onLightDismiss } = props;
|
18780
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
18781
|
+
const localeStrings = useLocale();
|
18782
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
18783
|
+
const holdButtonProps = usePropsFor$1(HoldButton);
|
18424
18784
|
const onSpeakerItemClick = React.useCallback((_ev, itemKey) => {
|
18425
18785
|
const selected = speakers === null || speakers === void 0 ? void 0 : speakers.find((speaker) => speaker.id === itemKey);
|
18426
18786
|
if (selected) {
|
@@ -18491,6 +18851,17 @@ const MoreDrawer = (props) => {
|
|
18491
18851
|
onItemClick: props.onPeopleButtonClicked
|
18492
18852
|
});
|
18493
18853
|
}
|
18854
|
+
/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
|
18855
|
+
if (drawerSelectionOptions !== false && isEnabled(drawerSelectionOptions === null || drawerSelectionOptions === void 0 ? void 0 : drawerSelectionOptions.peopleButton)) {
|
18856
|
+
drawerMenuItems.push({
|
18857
|
+
itemKey: 'holdButtonKey',
|
18858
|
+
text: localeStrings.component.strings.holdButton.tooltipOffContent,
|
18859
|
+
onItemClick: () => {
|
18860
|
+
holdButtonProps.onToggleHold();
|
18861
|
+
},
|
18862
|
+
iconProps: { iconName: 'HoldCall', styles: { root: { lineHeight: 0 } } }
|
18863
|
+
});
|
18864
|
+
}
|
18494
18865
|
/* @conditional-compile-remove(control-bar-button-injection) */
|
18495
18866
|
const customDrawerButtons = React.useMemo(() => generateCustomCallWithChatDrawerButtons(onFetchCustomButtonPropsTrampoline(drawerSelectionOptions !== false ? drawerSelectionOptions : undefined), drawerSelectionOptions !== false ? drawerSelectionOptions === null || drawerSelectionOptions === void 0 ? void 0 : drawerSelectionOptions.displayType : undefined), [drawerSelectionOptions]);
|
18496
18867
|
/* @conditional-compile-remove(control-bar-button-injection) */
|
@@ -18713,7 +19084,7 @@ const CallWithChatScreen = (props) => {
|
|
18713
19084
|
/* @conditional-compile-remove(file-sharing) */
|
18714
19085
|
fileSharing: props.fileSharing, rtl: props.rtl }))),
|
18715
19086
|
showControlBar && !isMobileWithActivePane && (React__default['default'].createElement(ChatAdapterProvider, { adapter: chatProps.adapter },
|
18716
|
-
React__default['default'].createElement(react.Stack.Item, { styles: controlBarContainerStyles },
|
19087
|
+
React__default['default'].createElement(react.Stack.Item, { styles: controlBarContainerStyles$1 },
|
18717
19088
|
React__default['default'].createElement(CallWithChatControlBar, { callAdapter: callAdapter, chatAdapter: chatProps.adapter, chatButtonChecked: activePane === 'chat', onChatButtonClicked: toggleChat, peopleButtonChecked: activePane === 'people', onPeopleButtonClicked: togglePeople, onMoreButtonClicked: onMoreButtonClicked, mobileView: mobileView, disableButtonsForLobbyPage: isInLobbyOrConnecting, callControls: props.callControls, containerHeight: containerHeight, containerWidth: containerWidth })))),
|
18718
19089
|
showControlBar && showDrawer && (React__default['default'].createElement(ChatAdapterProvider, { adapter: chatProps.adapter },
|
18719
19090
|
React__default['default'].createElement(CallAdapterProvider, { adapter: callAdapter },
|
@@ -18736,7 +19107,10 @@ const CallWithChatComposite = (props) => {
|
|
18736
19107
|
/* @conditional-compile-remove(file-sharing) */
|
18737
19108
|
fileSharing: options === null || options === void 0 ? void 0 : options.fileSharing }))));
|
18738
19109
|
};
|
18739
|
-
const hasJoinedCallFn = (page, callStatus) =>
|
19110
|
+
const hasJoinedCallFn = (page, callStatus) => {
|
19111
|
+
/* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(one-to-n-calling) */
|
19112
|
+
return (page === 'call' && callStatus === 'Connected') || (page === 'hold' && callStatus === 'LocalHold');
|
19113
|
+
};
|
18740
19114
|
const showShowChatTabHeaderButton = (callControls) => {
|
18741
19115
|
if (callControls === undefined || callControls === true) {
|
18742
19116
|
return true;
|
@@ -18959,6 +19333,8 @@ class AzureCommunicationCallWithChatAdapter {
|
|
18959
19333
|
this.resumeCall.bind(this);
|
18960
19334
|
/* @conditional-compile-remove(PSTN-calls) */
|
18961
19335
|
this.addParticipant.bind(this);
|
19336
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
19337
|
+
this.sendDtmfTone.bind(this);
|
18962
19338
|
}
|
18963
19339
|
/** Join existing Call. */
|
18964
19340
|
joinCall(microphoneOn) {
|
@@ -19155,6 +19531,12 @@ class AzureCommunicationCallWithChatAdapter {
|
|
19155
19531
|
return yield this.callAdapter.addParticipant(participant, options);
|
19156
19532
|
});
|
19157
19533
|
}
|
19534
|
+
/* @conditional-compile-remove(PSTN-calls) */
|
19535
|
+
sendDtmfTone(dtmfTone) {
|
19536
|
+
return __awaiter(this, void 0, void 0, function* () {
|
19537
|
+
return yield this.callAdapter.sendDtmfTone(dtmfTone);
|
19538
|
+
});
|
19539
|
+
}
|
19158
19540
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
19159
19541
|
on(event, listener) {
|
19160
19542
|
switch (event) {
|