@azure/communication-react 1.19.0-alpha-202408210014 → 1.19.0-alpha-202408230014

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.
Files changed (88) hide show
  1. package/dist/communication-react.d.ts +12 -7
  2. package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-CpySAJfO.js → ChatMessageComponentAsRichTextEditBox-pRNZJbdQ.js} +2 -2
  3. package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-CpySAJfO.js.map → ChatMessageComponentAsRichTextEditBox-pRNZJbdQ.js.map} +1 -1
  4. package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-BYHKieLB.js → RichTextSendBoxWrapper-Bz_KlOv9.js} +2 -2
  5. package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-BYHKieLB.js.map → RichTextSendBoxWrapper-Bz_KlOv9.js.map} +1 -1
  6. package/dist/dist-cjs/communication-react/{index-UUXpaHCi.js → index-C6b4-4lG.js} +281 -219
  7. package/dist/dist-cjs/communication-react/index-C6b4-4lG.js.map +1 -0
  8. package/dist/dist-cjs/communication-react/index.js +1 -1
  9. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  10. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  11. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js +3 -11
  12. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  13. package/dist/dist-esm/calling-component-bindings/src/index.js +0 -1
  14. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  15. package/dist/dist-esm/calling-component-bindings/src/notificationStackSelector.js +14 -6
  16. package/dist/dist-esm/calling-component-bindings/src/notificationStackSelector.js.map +1 -1
  17. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +0 -1
  18. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  19. package/dist/dist-esm/calling-stateful-client/src/BreakoutRoomsSubscriber.d.ts +1 -0
  20. package/dist/dist-esm/calling-stateful-client/src/BreakoutRoomsSubscriber.js +51 -11
  21. package/dist/dist-esm/calling-stateful-client/src/BreakoutRoomsSubscriber.js.map +1 -1
  22. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +2 -1
  23. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  24. package/dist/dist-esm/calling-stateful-client/src/CallContext.d.ts +4 -2
  25. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +23 -5
  26. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  27. package/dist/dist-esm/calling-stateful-client/src/Converter.js +0 -1
  28. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  29. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js +0 -3
  30. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js.map +1 -1
  31. package/dist/dist-esm/communication-react/src/index.js +0 -1
  32. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  33. package/dist/dist-esm/react-components/src/components/NotificationStack.d.ts +4 -4
  34. package/dist/dist-esm/react-components/src/components/NotificationStack.js +0 -2
  35. package/dist/dist-esm/react-components/src/components/NotificationStack.js.map +1 -1
  36. package/dist/dist-esm/react-components/src/components/index.js +0 -2
  37. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  38. package/dist/dist-esm/react-components/src/components/utils.js +2 -10
  39. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  40. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  41. package/dist/dist-esm/react-components/src/localization/locales/en-US/strings.json +6 -2
  42. package/dist/dist-esm/react-components/src/theming/icons.d.ts +1 -1
  43. package/dist/dist-esm/react-components/src/theming/icons.js +6 -8
  44. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  45. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +22 -52
  46. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  47. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +4 -0
  48. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  49. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.d.ts +3 -2
  50. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +17 -41
  51. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  52. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.d.ts +1 -0
  53. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js +4 -1
  54. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js.map +1 -1
  55. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useCompositeStringsForNotificationStack.d.ts +7 -0
  56. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useCompositeStringsForNotificationStack.js +21 -0
  57. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useCompositeStringsForNotificationStack.js.map +1 -0
  58. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.d.ts +2 -2
  59. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +6 -14
  60. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  61. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +1 -1
  62. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  63. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.d.ts +2 -2
  64. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +5 -9
  65. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +1 -1
  66. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.d.ts +2 -2
  67. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js +5 -9
  68. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js.map +1 -1
  69. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js +5 -9
  70. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js.map +1 -1
  71. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.d.ts +4 -0
  72. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +5 -0
  73. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
  74. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/ErrorTracking.d.ts +1 -1
  75. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/ErrorTracking.js.map +1 -1
  76. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.d.ts +3 -3
  77. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js.map +1 -1
  78. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +0 -3
  79. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  80. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +16 -2
  81. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -1
  82. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/Timer.d.ts +12 -0
  83. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/Timer.js +50 -0
  84. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/Timer.js.map +1 -0
  85. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +1 -1
  86. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-US/strings.json +8 -2
  87. package/package.json +1 -1
  88. package/dist/dist-cjs/communication-react/index-UUXpaHCi.js.map +0 -1
@@ -189,7 +189,7 @@ function getDefaultExportFromCjs (x) {
189
189
  // Copyright (c) Microsoft Corporation.
190
190
  // Licensed under the MIT License.
191
191
  // GENERATED FILE. DO NOT EDIT MANUALLY.
192
- var telemetryVersion = '1.19.0-alpha-202408210014';
192
+ var telemetryVersion = '1.19.0-alpha-202408230014';
193
193
 
194
194
 
195
195
  var telemetryVersion$1 = /*@__PURE__*/getDefaultExportFromCjs(telemetryVersion);
@@ -2008,7 +2008,7 @@ const typingIndicatorStringStyle = react.mergeStyles({
2008
2008
  wordBreak: 'break-word'
2009
2009
  });
2010
2010
 
2011
- var participantItem$k={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted",displayNamePlaceholder:"Unnamed participant",participantStateRinging:"Calling...",participantStateHold:"On hold",attendeeRole:"Attendee"};var ParticipantList$l={overflowParticipantCount:"+{overflowCount} more"};var typingIndicator$k={singleUser:"{user} is typing ...",multipleUsers:"{users} are typing ...",multipleUsersAbbreviateOne:"{users} and 1 other are typing ...",multipleUsersAbbreviateMany:"{users} and {numOthers} others are typing ...",delimiter:", "};var sendBox$k={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",attachmentUploadsPendingError:"File is uploading, please wait.",removeAttachment:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed",attachmentMoreMenu:"More Options"};var richTextSendBox$k={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",attachmentUploadsPendingError:"File is uploading, please wait.",imageUploadsPendingError:"Image is uploading, please wait.",removeAttachment:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed",richTextBoldTooltip:"Bold",richTextItalicTooltip:"Italic",richTextUnderlineTooltip:"Underline",richTextBulletListTooltip:"Bulleted list",richTextNumberListTooltip:"Numbered list",richTextIncreaseIndentTooltip:"Increase indent",richTextDecreaseIndentTooltip:"Decrease indent",richTextInsertTableTooltip:"Insert table",richTextFormatButtonTooltip:"Format",richTextInsertRowOrColumnMenu:"Insert",richTextInsertTableMenuTitle:"Insert {column} x {row} table",richTextInsertRowAboveMenu:"Insert above",richTextInsertRowBelowMenu:"Insert below",richTextInsertColumnLeftMenu:"Insert left",richTextInsertColumnRightMenu:"Insert right",richTextDeleteRowOrColumnMenu:"Delete",richTextDeleteColumnMenu:"Delete column",richTextDeleteRowMenu:"Delete row",richTextDeleteTableMenu:"Delete table",richTextToolbarMoreButtonAriaLabel:"More options",attachmentMoreMenu:"More Options",richTextNewBulletedListItemAnnouncement:"Bullet, new line",richTextNewNumberedListItemAnnouncement:"{0}, new line",richTextBulletedListAppliedAnnouncement:"Bulleted list applied",richTextNumberedListAppliedAnnouncement:"Numbered list applied"};var mentionPopover$k={mentionPopoverHeader:"Suggestions"};var imageOverlay$k={downloadButtonLabel:"Download",dismissButtonAriaLabel:"Close"};var messageStatusIndicator$k={deliveredAriaLabel:"Message sent",deliveredTooltipText:"Sent",seenAriaLabel:"Message seen by others",seenTooltipText:"Seen",readByTooltipText:"Read by {messageThreadReadCount} of {remoteParticipantsCount}",sendingAriaLabel:"Message sending",sendingTooltipText:"Sending",failedToSendAriaLabel:"Message failed to send",failedToSendTooltipText:"Failed to send"};var endCallButton$k={label:"Leave",tooltipContent:"Leave call",leaveOption:"Leave",endCallOption:"End call for everyone"};var cameraButton$k={onLabel:"Camera",offLabel:"Camera",tooltipDisabledContent:"Camera is disabled",tooltipOnContent:"Turn off camera",tooltipOffContent:"Turn on camera",tooltipVideoLoadingContent:"Video is loading",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",cameraButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Turn off camera and camera options",offSplitButtonAriaLabel:"Turn on camera and camera options",cameraActionTurnedOnAnnouncement:"Your camera has been turned on",cameraActionTurnedOffAnnouncement:"Your camera has been turned off",onSplitButtonPrimaryActionCamera:"Turn off camera",offSplitButtonPrimaryActionCamera:"Turn on camera",cameraPrimaryActionSplitButtonTitle:"Use camera",videoEffectsMenuItemTitle:"Effects"};var microphoneButton$k={onLabel:"Mic",offLabel:"Mic",tooltipDisabledContent:"Microphone is disabled",tooltipOnContent:"Mute microphone",tooltipOffContent:"Unmute microphone",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker",microphoneButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Mute microphone and audio options",offSplitButtonAriaLabel:"Unmute microphone and audio options",microphoneActionTurnedOnAnnouncement:"Your microphone has been turned on",microphoneActionTurnedOffAnnouncement:"Your microphone has been turned off",offSplitButtonMicrophonePrimaryAction:"Unmute microphone",onSplitButtonMicrophonePrimaryAction:"Mute microphone",microphonePrimaryActionSplitButtonTitle:"Use microphone"};var devicesButton$k={label:"Devices",tooltipContent:"Manage devices",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",audioDeviceMenuTitle:"Audio Device",audioDeviceMenuTooltip:"Choose audio device",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker"};var participantsButton$k={label:"People",tooltipContent:"Show participants",menuHeader:"In this call",participantsListButtonLabel:"{numParticipants} people",muteAllButtonLabel:"Mute all",copyInviteLinkButtonLabel:"Copy invite link",copyInviteLinkActionedAriaLabel:"Invite link copied"};var screenShareButton$k={onLabel:"Stop presenting",offLabel:"Present",tooltipDisabledContent:"Presenting is disabled",tooltipOnContent:"Presenting your screen",tooltipOffContent:"Present your screen"};var raiseHandButton$k={offLabel:"Raise",onLabel:"Lower",tooltipDisabledContent:"Raise Hand action is disabled",tooltipOnContent:"Lower Hand",tooltipOffContent:"Raise Hand"};var reactionButton$k={label:"React",ariaLabel:"React Button, Send a reaction",tooltipDisabledContent:"Reaction action is disabled",tooltipContent:"Send a reaction",likeReactionTooltipContent:"Like",heartReactionTooltipContent:"Love",laughReactionTooltipContent:"Laugh",applauseReactionTooltipContent:"Applause",surprisedReactionTooltipContent:"Surprised"};var messageThread$k={yesterday:"Yesterday",sunday:"Sunday",monday:"Monday",tuesday:"Tuesday",wednesday:"Wednesday",thursday:"Thursday",friday:"Friday",saturday:"Saturday",participantJoined:"joined the chat.",participantLeft:"left the chat.",editMessage:"Edit",removeMessage:"Delete",resendMessage:"Try sending again",failToSendTag:"Failed to send",editedTag:"Edited",liveAuthorIntro:"{author} says",messageContentAriaText:"{status} {author} said {message}",messageContentMineAriaText:"{status} You said {message}",editBoxTextLimit:"Your message is over the limit of {limitNumber} characters",editBoxPlaceholderText:"Edit your message",newMessagesIndicator:"New messages",noDisplayNameSub:"No name",editBoxCancelButton:"Cancel",editBoxSubmitButton:"Done",messageReadCount:"Read by {messageReadByCount} of {remoteParticipantsCount}",actionMenuMoreOptions:"More Options",downloadAttachment:"Download file",openAttachment:"Open file",blockedWarningText:"This message was deleted due to organizational policy.",blockedWarningLinkText:"Details",attachmentCardGroupMessage:"The message has {attachmentCount} attachment",messageDeletedAnnouncementAriaLabel:"The message is deleted",richTextBoldTooltip:"Bold",richTextItalicTooltip:"Italic",richTextUnderlineTooltip:"Underline",richTextBulletListTooltip:"Bulleted list",richTextNumberListTooltip:"Numbered list",richTextIncreaseIndentTooltip:"Increase indent",richTextDecreaseIndentTooltip:"Decrease indent",richTextInsertTableTooltip:"Insert table",richTextFormatButtonTooltip:"Format",richTextInsertRowOrColumnMenu:"Insert",richTextInsertTableMenuTitle:"Insert {column} x {row} table",richTextInsertRowAboveMenu:"Insert above",richTextInsertRowBelowMenu:"Insert below",richTextInsertColumnLeftMenu:"Insert left",richTextInsertColumnRightMenu:"Insert right",richTextDeleteRowOrColumnMenu:"Delete",richTextDeleteColumnMenu:"Delete column",richTextDeleteRowMenu:"Delete row",richTextDeleteTableMenu:"Delete table",richTextToolbarMoreButtonAriaLabel:"More options",attachmentUploadsPendingError:"File is uploading, please wait.",imageUploadsPendingError:"Image is uploading, please wait.",richTextNewBulletedListItemAnnouncement:"Bullet, new line",richTextNewNumberedListItemAnnouncement:"{0}, new line",richTextBulletedListAppliedAnnouncement:"Bulleted list applied",richTextNumberedListAppliedAnnouncement:"Numbered list applied"};var errorBar$k={unableToReachChatService:"You are offline",accessDenied:"Unable to access chat services - please check the user credentials provided",userNotInChatThread:"You are no longer in this chat thread",sendMessageNotInChatThread:"Failed to send message because you are no longer in this chat thread",sendMessageGeneric:"Failed to send message",callingNetworkFailure:"Troubling connecting call - you seem to be offline",startVideoGeneric:"Failed to start video",stopVideoGeneric:"Failed to stop video",muteGeneric:"Failed to mute microphone",unmuteGeneric:"Failed to unmute microphone",speakingWhileMuted:"Your microphone is muted",startScreenShareGeneric:"There was an issue starting screen share.",stopScreenShareGeneric:"Failed to stop screen sharing",callNetworkQualityLow:"Network quality is low.",teamsMeetingCallNetworkQualityLow:"Network quality is low.",callNoSpeakerFound:"No speakers or headphones found. Connect an audio device to hear the call.",callNoMicrophoneFound:"No microphones found. Connect an audio input device.",callMicrophoneAccessDenied:"Unable to access microphone. Click the lock in the address bar to grant permission to this webpage.",callMicrophoneAccessDeniedSafari:"Unable to access microphone. Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",callMicrophoneMutedBySystem:"You are muted by your system.",callMicrophoneUnmutedBySystem:"Your microphone recovered and you were unmuted by your system.",callMacOsMicrophoneAccessDenied:"Unable to access microphone. Grant microphone permission in your macOS privacy settings.",callLocalVideoFreeze:"Network bandwidth is poor. Your video may appear paused for others on the call.",callCameraAccessDenied:"Unable to access camera. Click the lock in the address bar to grant permission to this webpage.",callCameraAccessDeniedSafari:"Unable to access camera. Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",callCameraAlreadyInUse:"Unable to access camera. It may already be in use by another application.",callVideoStoppedBySystem:"Your video has been stopped by your system.",callVideoRecoveredBySystem:"Your video has resumed.",callMacOsCameraAccessDenied:"MacOS is blocking access to your camera. Update your privacy settings to allow this browser to access your camera.",callMacOsScreenShareAccessDenied:"MacOS is blocking screen sharing. Update your privacy settings to allow this browser to record your screen.",dismissButtonAriaLabel:"Close",failedToJoinCallGeneric:"Failed to join call.",failedToJoinCallInvalidMeetingLink:"Unable to join Meeting. Invalid Link.",cameraFrozenForRemoteParticipants:"Users in the call are having issues seeing your video. Please check your devices and network.",unableToStartVideoEffect:"Unable to apply video effect.",startSpotlightWhileMaxParticipantsAreSpotlighted:"Cannot start spotlight on participant(s) because the maximum number of participants are already spotlighted.",mutedByRemoteParticipant:"You were muted by another participant."};var notificationStack$k={callingNetworkFailure:{title:"Troubling connecting call",message:"You seem to be offline. Please check your network connection and try again.",dismissButtonAriaLabel:"Close"},startVideoGeneric:{title:"Failed to start video.",dismissButtonAriaLabel:"Close"},stopVideoGeneric:{title:"Failed to stop video.",dismissButtonAriaLabel:"Close"},muteGeneric:{title:"Failed to mute microphone.",dismissButtonAriaLabel:"Close"},unmuteGeneric:{title:"Failed to unmute microphone.",dismissButtonAriaLabel:"Close"},speakingWhileMuted:{title:"You're muted.",dismissButtonAriaLabel:"Close"},startScreenShareGeneric:{title:"There was an issue starting screen share.",dismissButtonAriaLabel:"Close"},stopScreenShareGeneric:{title:"Failed to stop screen sharing.",dismissButtonAriaLabel:"Close"},callNetworkQualityLow:{title:"Network quality is low.",dismissButtonAriaLabel:"Close"},teamsMeetingCallNetworkQualityLow:{title:"Network quality is low.",dismissButtonAriaLabel:"Close",message:"Join this call from your phone for better sound. You can continue viewing the meeting on this device.",primaryButtonLabel:"Join by Phone"},callNoSpeakerFound:{title:"No speakers or headphones found",message:"Connect an audio device to hear the call.",dismissButtonAriaLabel:"Close"},callNoMicrophoneFound:{title:"No microphones found",message:"Connect an audio input device.",dismissButtonAriaLabel:"Close"},callMicrophoneAccessDenied:{title:"Unable to access microphone",message:"Click the lock in the address bar to grant permission to this webpage.",dismissButtonAriaLabel:"Close"},callMicrophoneAccessDeniedSafari:{title:"Unable to access microphone",message:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",dismissButtonAriaLabel:"Close"},callMicrophoneMutedBySystem:{title:"You are muted by your system.",dismissButtonAriaLabel:"Close"},callMicrophoneUnmutedBySystem:{title:"Your microphone recovered and you were unmuted by your system.",dismissButtonAriaLabel:"Close"},callMacOsMicrophoneAccessDenied:{title:"Unable to access microphone",message:"Grant microphone permission in your macOS privacy settings.",dismissButtonAriaLabel:"Close"},callLocalVideoFreeze:{title:"Network bandwidth is poor",message:"Your video may appear paused for others on the call.",dismissButtonAriaLabel:"Close"},callCameraAccessDenied:{title:"Unable to access camera",message:"Click the lock in the address bar to grant permission to this webpage.",dismissButtonAriaLabel:"Close"},callCameraAccessDeniedSafari:{title:"Unable to access camera",message:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",dismissButtonAriaLabel:"Close"},callCameraAlreadyInUse:{title:"Unable to access camera",message:"It may already be in use by another application.",dismissButtonAriaLabel:"Close"},callVideoStoppedBySystem:{title:"Your video has been stopped by your system.",dismissButtonAriaLabel:"Close"},callVideoRecoveredBySystem:{title:"Your video has resumed.",dismissButtonAriaLabel:"Close"},callMacOsCameraAccessDenied:{title:"MacOS is blocking access to your camera",message:"Update your privacy settings to allow this browser to access your camera.",dismissButtonAriaLabel:"Close"},callMacOsScreenShareAccessDenied:{title:"MacOS is blocking screen sharing",message:"Update your privacy settings to allow this browser to record your screen.",dismissButtonAriaLabel:"Close"},failedToJoinCallGeneric:{title:"Failed to join call.",dismissButtonAriaLabel:"Close"},failedToJoinCallInvalidMeetingLink:{title:"Unable to join Meeting. Invalid Link.",dismissButtonAriaLabel:"Close"},cameraFrozenForRemoteParticipants:{title:"Users in the call are having issues seeing your video",message:"Please check your devices and network.",dismissButtonAriaLabel:"Close"},unableToStartVideoEffect:{title:"Unable to apply video effect.",dismissButtonAriaLabel:"Close"},startSpotlightWhileMaxParticipantsAreSpotlighted:{title:"Cannot start spotlight on participant(s)",message:"The maximum number of participants are already spotlighted.",dismissButtonAriaLabel:"Close"},mutedByRemoteParticipant:{title:"You were muted by another participant.",dismissButtonAriaLabel:"Close"},recordingStarted:{title:"Recording has started.",message:"By joining, you are giving consent for this meeting to be transcribed.",dismissButtonAriaLabel:"Close"},transcriptionStarted:{title:"Transcription has started.",message:"By joining, you are giving consent for this meeting to be transcribed.",dismissButtonAriaLabel:"Close"},recordingStopped:{title:"Recording is being saved.",message:"Recording has stopped.",dismissButtonAriaLabel:"Close"},transcriptionStopped:{title:"Transcription is being saved.",message:"Transcription has stopped.",dismissButtonAriaLabel:"Close"},recordingAndTranscriptionStarted:{title:"Recording and transcription have started.",message:"By joining, you are giving consent for this meeting to be transcribed.",dismissButtonAriaLabel:"Close"},recordingAndTranscriptionStopped:{title:"Recording and transcription are being saved.",message:"Recording and transcription have stopped.",dismissButtonAriaLabel:"Close"},recordingStoppedStillTranscribing:{title:"Recording has stopped.",message:"You are now only transcribing this meeting.",dismissButtonAriaLabel:"Close"},transcriptionStoppedStillRecording:{title:"Transcription has stopped.",message:"You are now only recording this meeting.",dismissButtonAriaLabel:"Close"},assignedBreakoutRoomOpened:{title:"We'll move you to your assigned room in 5 seconds.",dismissButtonAriaLabel:"Close"},assignedBreakoutRoomChanged:{title:"Your breakout room has changed",message:"We'll move you to your assigned room in 5 seconds.",dismissButtonAriaLabel:"Close"},assignedBreakoutRoomOpenedPromptJoin:{title:"Join breakout room?",message:"You've been assigned to a breakout room.",dismissButtonAriaLabel:"Close",primaryButtonLabel:"Join room",secondaryButtonLabel:"Later"},assignedBreakoutRoomClosingSoon:{title:"Room time limit about to expire",message:"This room will close in 30 seconds",dismissButtonAriaLabel:"Close"}};var videoGallery$k={screenIsBeingSharedMessage:"You are sharing your screen",screenShareLoadingMessage:"Loading {participant}'s screen",localScreenShareLoadingMessage:"Loading your screen",localVideoLabel:"You",localVideoCameraSwitcherLabel:"Switch camera",localVideoMovementLabel:"Movable Local Video Tile",localVideoMovementAriaLabel:"Movable Local Video Tile",localVideoSelectedDescription:"{cameraName} selected",displayNamePlaceholder:"Unnamed participant",fitRemoteParticipantToFrame:"Fit to frame",fillRemoteParticipantFrame:"Fill frame",pinParticipantForMe:"Pin for me",pinParticipantForMeLimitReached:"Pin (limit reached)",unpinParticipantForMe:"Unpin",pinParticipantMenuItemAriaLabel:"Pin {participantName}",unpinParticipantMenuItemAriaLabel:"Unpin {participantName}",pinnedParticipantAnnouncementAriaLabel:"Pinned {participantName}",unpinnedParticipantAnnouncementAriaLabel:"Unpinned {participantName}",startSpotlightVideoTileMenuLabel:"Spotlight for everyone",addSpotlightVideoTileMenuLabel:"Add spotlight",spotlightLimitReachedMenuTitle:"Spotlight limit reached",stopSpotlightVideoTileMenuLabel:"Stop spotlighting",stopSpotlightOnSelfVideoTileMenuLabel:"Exit spotlight",attendeeRole:"Attendee",muteParticipantMenuItemLabel:"Mute"};var dialpad$k={placeholderText:"Enter phone number",deleteButtonAriaLabel:"Delete"};var holdButton$k={onLabel:"Resume",offLabel:"Hold",tooltipOnContent:"Resume call",tooltipOffContent:"Hold call"};var videoTile$k={participantStateRinging:"Calling...",participantStateHold:"On hold",moreOptionsButtonAriaLabel:"More Options"};var CameraAndMicrophoneSitePermissionsRequest$k={primaryText:"Allow {appName} to use your camera and microphone",secondaryText:"This is so participants can see and hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera and microphone",ariaLabel:"Allow camera and microphone access"};var CameraSitePermissionsRequest$k={primaryText:"Allow {appName} to use your camera",secondaryText:"This is so participants can see you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera",ariaLabel:"Allow camera access"};var MicrophoneSitePermissionsRequest$k={primaryText:"Allow {appName} to use your microphone",secondaryText:"This is so participants can hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without microphone",ariaLabel:"Allow microphone access"};var CameraAndMicrophoneSitePermissionsCheck$k={primaryText:"Checking for camera and microphone access",secondaryText:"Allow access if prompted. This is so participants can see and hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera and microphone",ariaLabel:"Checking for camera and microphone access. Allow access if prompted."};var CameraSitePermissionsCheck$k={primaryText:"Checking for camera access",secondaryText:"Allow access if prompted. This is so participants can see you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera",ariaLabel:"Checking for camera access. Allow access if prompted."};var MicrophoneSitePermissionsCheck$k={primaryText:"Checking for microphone access",secondaryText:"Allow access if prompted. This is so participants can hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without microphone",ariaLabel:"Checking for microphone access. Allow access if prompted."};var CameraAndMicrophoneSitePermissionsDenied$k={primaryText:"Unable to access camera and microphone",secondaryText:"Click the lock icon in the address bar to grant microphone permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without camera and microphone",linkText:"Need help? Get troubleshooting help"};var CameraAndMicrophoneSitePermissionsDeniedSafari$k={primaryText:"Unable to access camera and microphone",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without camera and microphone",linkText:"Need help? Get troubleshooting help"};var CameraSitePermissionsDenied$k={primaryText:"Unable to access camera",secondaryText:"Click the lock icon in the address bar to grant camera permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without camera",linkText:"Need help? Get troubleshooting help"};var MicrophoneSitePermissionsDenied$k={primaryText:"Unable to access microphone",secondaryText:"Click the lock icon in the address bar to grant microphone permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without microphone",linkText:"Need help? Get troubleshooting help"};var CameraSitePermissionsDeniedSafari$k={primaryText:"Unable to access camera",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without camera",linkText:"Need help? Get troubleshooting help"};var MicrophoneSitePermissionsDeniedSafari$k={primaryText:"Unable to access microphone",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without microphone",linkText:"Need help? Get troubleshooting help"};var UnsupportedBrowser$l={primaryText:"Browser not supported",secondaryText:"Please join this call using a compatible browser.",moreHelpLinkText:"See compatibility requirements"};var UnsupportedBrowserVersion$l={primaryText:"Browser update needed",secondaryText:"To ensure the best call possible, please update your browser and then try joining the call again.",moreHelpLinkText:"See compatibility requirements",continueAnywayButtonText:"Start call without updating"};var UnsupportedOperatingSystem$l={primaryText:"Operating system not supported",secondaryText:"Please join this call using a device with a compatible operating system.",moreHelpLinkText:"See compatibility requirements"};var BrowserPermissionDenied$k={primaryText:"Can't use your camera or microphone",secondaryText:"Your browser might not have access to your camera or microphone. To fix this, open System Preferences.",primaryButtonText:"Try again",linkText:"Need help? Get troubleshooting help"};var BrowserPermissionDeniedIOS$k={primaryText:"Allow microphone access to continue",secondaryText:"So other participants can hear you.",primaryButtonText:"Try again",imageAltText:"Microphone and camera device permission location for iOS",linkText:"Need help? Get troubleshooting help",step1Text:"Go to the Settings app",step2Text:"Scroll down to settings for this browser",step3Text:"Turn on Microphone (Camera optional)",step4Text:"Try joining the call again",step1DigitText:"1",step2DigitText:"2",step3DigitText:"3",step4DigitText:"4"};var verticalGallery$k={leftNavButtonAriaLabel:"previous page",rightNavButtonAriaLabel:"next page"};var meetingConferencePhoneInfo$k={meetingConferencePhoneInfoModalTitle:"Join call from your phone",meetingConferencePhoneInfoModalDialIn:"Dial number",meetingConferencePhoneInfoModalMeetingId:"Enter meeting ID",meetingConferencePhoneInfoModalWait:"Wait to be admitted by organizer",meetingConferencePhoneInfoModalNoPhoneAvailable:"No phone available",meetingConferencePhoneInfoModalTollGeoData:"{country}, {city}",meetingConferencePhoneInfoModalTollFree:"(Toll-free)",meetingConferencePhoneInfoModalToll:"(Toll)"};var IncomingCallNotification$l={incomingCallNotificationPlaceholderId:"Unknown User",incomingCallNotificationPlaceholderAlert:"{callerName} is calling",incomingCallNoticicationAcceptWithAudioAriaLabel:"Accept with audio",incomingCallNoticicationAcceptWithVideoAriaLabel:"Accept with video",incomingCallNoticicationRejectAriaLabel:"Reject",incomingCallNotificationAcceptButtonLabel:"Accept",incomingCallNotificationRejectButtonLabel:"Decline",incomingCallNotificationAccceptWithVideoButtonLabel:"Accept with Video"};var en_US$1 = {participantItem:participantItem$k,ParticipantList:ParticipantList$l,typingIndicator:typingIndicator$k,sendBox:sendBox$k,richTextSendBox:richTextSendBox$k,mentionPopover:mentionPopover$k,imageOverlay:imageOverlay$k,messageStatusIndicator:messageStatusIndicator$k,endCallButton:endCallButton$k,cameraButton:cameraButton$k,microphoneButton:microphoneButton$k,devicesButton:devicesButton$k,participantsButton:participantsButton$k,screenShareButton:screenShareButton$k,raiseHandButton:raiseHandButton$k,reactionButton:reactionButton$k,messageThread:messageThread$k,errorBar:errorBar$k,notificationStack:notificationStack$k,videoGallery:videoGallery$k,dialpad:dialpad$k,holdButton:holdButton$k,videoTile:videoTile$k,CameraAndMicrophoneSitePermissionsRequest:CameraAndMicrophoneSitePermissionsRequest$k,CameraSitePermissionsRequest:CameraSitePermissionsRequest$k,MicrophoneSitePermissionsRequest:MicrophoneSitePermissionsRequest$k,CameraAndMicrophoneSitePermissionsCheck:CameraAndMicrophoneSitePermissionsCheck$k,CameraSitePermissionsCheck:CameraSitePermissionsCheck$k,MicrophoneSitePermissionsCheck:MicrophoneSitePermissionsCheck$k,CameraAndMicrophoneSitePermissionsDenied:CameraAndMicrophoneSitePermissionsDenied$k,CameraAndMicrophoneSitePermissionsDeniedSafari:CameraAndMicrophoneSitePermissionsDeniedSafari$k,CameraSitePermissionsDenied:CameraSitePermissionsDenied$k,MicrophoneSitePermissionsDenied:MicrophoneSitePermissionsDenied$k,CameraSitePermissionsDeniedSafari:CameraSitePermissionsDeniedSafari$k,MicrophoneSitePermissionsDeniedSafari:MicrophoneSitePermissionsDeniedSafari$k,UnsupportedBrowser:UnsupportedBrowser$l,UnsupportedBrowserVersion:UnsupportedBrowserVersion$l,UnsupportedOperatingSystem:UnsupportedOperatingSystem$l,BrowserPermissionDenied:BrowserPermissionDenied$k,BrowserPermissionDeniedIOS:BrowserPermissionDeniedIOS$k,verticalGallery:verticalGallery$k,meetingConferencePhoneInfo:meetingConferencePhoneInfo$k,IncomingCallNotification:IncomingCallNotification$l};
2011
+ var participantItem$k={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted",displayNamePlaceholder:"Unnamed participant",participantStateRinging:"Calling...",participantStateHold:"On hold",attendeeRole:"Attendee"};var ParticipantList$l={overflowParticipantCount:"+{overflowCount} more"};var typingIndicator$k={singleUser:"{user} is typing ...",multipleUsers:"{users} are typing ...",multipleUsersAbbreviateOne:"{users} and 1 other are typing ...",multipleUsersAbbreviateMany:"{users} and {numOthers} others are typing ...",delimiter:", "};var sendBox$k={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",attachmentUploadsPendingError:"File is uploading, please wait.",removeAttachment:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed",attachmentMoreMenu:"More Options"};var richTextSendBox$k={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",attachmentUploadsPendingError:"File is uploading, please wait.",imageUploadsPendingError:"Image is uploading, please wait.",removeAttachment:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed",richTextBoldTooltip:"Bold",richTextItalicTooltip:"Italic",richTextUnderlineTooltip:"Underline",richTextBulletListTooltip:"Bulleted list",richTextNumberListTooltip:"Numbered list",richTextIncreaseIndentTooltip:"Increase indent",richTextDecreaseIndentTooltip:"Decrease indent",richTextInsertTableTooltip:"Insert table",richTextFormatButtonTooltip:"Format",richTextInsertRowOrColumnMenu:"Insert",richTextInsertTableMenuTitle:"Insert {column} x {row} table",richTextInsertRowAboveMenu:"Insert above",richTextInsertRowBelowMenu:"Insert below",richTextInsertColumnLeftMenu:"Insert left",richTextInsertColumnRightMenu:"Insert right",richTextDeleteRowOrColumnMenu:"Delete",richTextDeleteColumnMenu:"Delete column",richTextDeleteRowMenu:"Delete row",richTextDeleteTableMenu:"Delete table",richTextToolbarMoreButtonAriaLabel:"More options",attachmentMoreMenu:"More Options",richTextNewBulletedListItemAnnouncement:"Bullet, new line",richTextNewNumberedListItemAnnouncement:"{0}, new line",richTextBulletedListAppliedAnnouncement:"Bulleted list applied",richTextNumberedListAppliedAnnouncement:"Numbered list applied"};var mentionPopover$k={mentionPopoverHeader:"Suggestions"};var imageOverlay$k={downloadButtonLabel:"Download",dismissButtonAriaLabel:"Close"};var messageStatusIndicator$k={deliveredAriaLabel:"Message sent",deliveredTooltipText:"Sent",seenAriaLabel:"Message seen by others",seenTooltipText:"Seen",readByTooltipText:"Read by {messageThreadReadCount} of {remoteParticipantsCount}",sendingAriaLabel:"Message sending",sendingTooltipText:"Sending",failedToSendAriaLabel:"Message failed to send",failedToSendTooltipText:"Failed to send"};var endCallButton$k={label:"Leave",tooltipContent:"Leave call",leaveOption:"Leave",endCallOption:"End call for everyone"};var cameraButton$k={onLabel:"Camera",offLabel:"Camera",tooltipDisabledContent:"Camera is disabled",tooltipOnContent:"Turn off camera",tooltipOffContent:"Turn on camera",tooltipVideoLoadingContent:"Video is loading",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",cameraButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Turn off camera and camera options",offSplitButtonAriaLabel:"Turn on camera and camera options",cameraActionTurnedOnAnnouncement:"Your camera has been turned on",cameraActionTurnedOffAnnouncement:"Your camera has been turned off",onSplitButtonPrimaryActionCamera:"Turn off camera",offSplitButtonPrimaryActionCamera:"Turn on camera",cameraPrimaryActionSplitButtonTitle:"Use camera",videoEffectsMenuItemTitle:"Effects"};var microphoneButton$k={onLabel:"Mic",offLabel:"Mic",tooltipDisabledContent:"Microphone is disabled",tooltipOnContent:"Mute microphone",tooltipOffContent:"Unmute microphone",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker",microphoneButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Mute microphone and audio options",offSplitButtonAriaLabel:"Unmute microphone and audio options",microphoneActionTurnedOnAnnouncement:"Your microphone has been turned on",microphoneActionTurnedOffAnnouncement:"Your microphone has been turned off",offSplitButtonMicrophonePrimaryAction:"Unmute microphone",onSplitButtonMicrophonePrimaryAction:"Mute microphone",microphonePrimaryActionSplitButtonTitle:"Use microphone"};var devicesButton$k={label:"Devices",tooltipContent:"Manage devices",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",audioDeviceMenuTitle:"Audio Device",audioDeviceMenuTooltip:"Choose audio device",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker"};var participantsButton$k={label:"People",tooltipContent:"Show participants",menuHeader:"In this call",participantsListButtonLabel:"{numParticipants} people",muteAllButtonLabel:"Mute all",copyInviteLinkButtonLabel:"Copy invite link",copyInviteLinkActionedAriaLabel:"Invite link copied"};var screenShareButton$k={onLabel:"Stop presenting",offLabel:"Present",tooltipDisabledContent:"Presenting is disabled",tooltipOnContent:"Presenting your screen",tooltipOffContent:"Present your screen"};var raiseHandButton$k={offLabel:"Raise",onLabel:"Lower",tooltipDisabledContent:"Raise Hand action is disabled",tooltipOnContent:"Lower Hand",tooltipOffContent:"Raise Hand"};var reactionButton$k={label:"React",ariaLabel:"React Button, Send a reaction",tooltipDisabledContent:"Reaction action is disabled",tooltipContent:"Send a reaction",likeReactionTooltipContent:"Like",heartReactionTooltipContent:"Love",laughReactionTooltipContent:"Laugh",applauseReactionTooltipContent:"Applause",surprisedReactionTooltipContent:"Surprised"};var messageThread$k={yesterday:"Yesterday",sunday:"Sunday",monday:"Monday",tuesday:"Tuesday",wednesday:"Wednesday",thursday:"Thursday",friday:"Friday",saturday:"Saturday",participantJoined:"joined the chat.",participantLeft:"left the chat.",editMessage:"Edit",removeMessage:"Delete",resendMessage:"Try sending again",failToSendTag:"Failed to send",editedTag:"Edited",liveAuthorIntro:"{author} says",messageContentAriaText:"{status} {author} said {message}",messageContentMineAriaText:"{status} You said {message}",editBoxTextLimit:"Your message is over the limit of {limitNumber} characters",editBoxPlaceholderText:"Edit your message",newMessagesIndicator:"New messages",noDisplayNameSub:"No name",editBoxCancelButton:"Cancel",editBoxSubmitButton:"Done",messageReadCount:"Read by {messageReadByCount} of {remoteParticipantsCount}",actionMenuMoreOptions:"More Options",downloadAttachment:"Download file",openAttachment:"Open file",blockedWarningText:"This message was deleted due to organizational policy.",blockedWarningLinkText:"Details",attachmentCardGroupMessage:"The message has {attachmentCount} attachment",messageDeletedAnnouncementAriaLabel:"The message is deleted",richTextBoldTooltip:"Bold",richTextItalicTooltip:"Italic",richTextUnderlineTooltip:"Underline",richTextBulletListTooltip:"Bulleted list",richTextNumberListTooltip:"Numbered list",richTextIncreaseIndentTooltip:"Increase indent",richTextDecreaseIndentTooltip:"Decrease indent",richTextInsertTableTooltip:"Insert table",richTextFormatButtonTooltip:"Format",richTextInsertRowOrColumnMenu:"Insert",richTextInsertTableMenuTitle:"Insert {column} x {row} table",richTextInsertRowAboveMenu:"Insert above",richTextInsertRowBelowMenu:"Insert below",richTextInsertColumnLeftMenu:"Insert left",richTextInsertColumnRightMenu:"Insert right",richTextDeleteRowOrColumnMenu:"Delete",richTextDeleteColumnMenu:"Delete column",richTextDeleteRowMenu:"Delete row",richTextDeleteTableMenu:"Delete table",richTextToolbarMoreButtonAriaLabel:"More options",attachmentUploadsPendingError:"File is uploading, please wait.",imageUploadsPendingError:"Image is uploading, please wait.",richTextNewBulletedListItemAnnouncement:"Bullet, new line",richTextNewNumberedListItemAnnouncement:"{0}, new line",richTextBulletedListAppliedAnnouncement:"Bulleted list applied",richTextNumberedListAppliedAnnouncement:"Numbered list applied"};var errorBar$k={unableToReachChatService:"You are offline",accessDenied:"Unable to access chat services - please check the user credentials provided",userNotInChatThread:"You are no longer in this chat thread",sendMessageNotInChatThread:"Failed to send message because you are no longer in this chat thread",sendMessageGeneric:"Failed to send message",callingNetworkFailure:"Troubling connecting call - you seem to be offline",startVideoGeneric:"Failed to start video",stopVideoGeneric:"Failed to stop video",muteGeneric:"Failed to mute microphone",unmuteGeneric:"Failed to unmute microphone",speakingWhileMuted:"Your microphone is muted",startScreenShareGeneric:"There was an issue starting screen share.",stopScreenShareGeneric:"Failed to stop screen sharing",callNetworkQualityLow:"Network quality is low.",teamsMeetingCallNetworkQualityLow:"Network quality is low.",callNoSpeakerFound:"No speakers or headphones found. Connect an audio device to hear the call.",callNoMicrophoneFound:"No microphones found. Connect an audio input device.",callMicrophoneAccessDenied:"Unable to access microphone. Click the lock in the address bar to grant permission to this webpage.",callMicrophoneAccessDeniedSafari:"Unable to access microphone. Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",callMicrophoneMutedBySystem:"You are muted by your system.",callMicrophoneUnmutedBySystem:"Your microphone recovered and you were unmuted by your system.",callMacOsMicrophoneAccessDenied:"Unable to access microphone. Grant microphone permission in your macOS privacy settings.",callLocalVideoFreeze:"Network bandwidth is poor. Your video may appear paused for others on the call.",callCameraAccessDenied:"Unable to access camera. Click the lock in the address bar to grant permission to this webpage.",callCameraAccessDeniedSafari:"Unable to access camera. Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",callCameraAlreadyInUse:"Unable to access camera. It may already be in use by another application.",callVideoStoppedBySystem:"Your video has been stopped by your system.",callVideoRecoveredBySystem:"Your video has resumed.",callMacOsCameraAccessDenied:"MacOS is blocking access to your camera. Update your privacy settings to allow this browser to access your camera.",callMacOsScreenShareAccessDenied:"MacOS is blocking screen sharing. Update your privacy settings to allow this browser to record your screen.",dismissButtonAriaLabel:"Close",failedToJoinCallGeneric:"Failed to join call.",failedToJoinCallInvalidMeetingLink:"Unable to join Meeting. Invalid Link.",cameraFrozenForRemoteParticipants:"Users in the call are having issues seeing your video. Please check your devices and network.",unableToStartVideoEffect:"Unable to apply video effect.",startSpotlightWhileMaxParticipantsAreSpotlighted:"Cannot start spotlight on participant(s) because the maximum number of participants are already spotlighted.",mutedByRemoteParticipant:"You were muted by another participant."};var notificationStack$k={callingNetworkFailure:{title:"Troubling connecting call",message:"You seem to be offline. Please check your network connection and try again.",dismissButtonAriaLabel:"Close"},startVideoGeneric:{title:"Failed to start video.",dismissButtonAriaLabel:"Close"},stopVideoGeneric:{title:"Failed to stop video.",dismissButtonAriaLabel:"Close"},muteGeneric:{title:"Failed to mute microphone.",dismissButtonAriaLabel:"Close"},unmuteGeneric:{title:"Failed to unmute microphone.",dismissButtonAriaLabel:"Close"},speakingWhileMuted:{title:"You're muted.",dismissButtonAriaLabel:"Close"},startScreenShareGeneric:{title:"There was an issue starting screen share.",dismissButtonAriaLabel:"Close"},stopScreenShareGeneric:{title:"Failed to stop screen sharing.",dismissButtonAriaLabel:"Close"},callNetworkQualityLow:{title:"Network quality is low.",dismissButtonAriaLabel:"Close"},teamsMeetingCallNetworkQualityLow:{title:"Network quality is low.",dismissButtonAriaLabel:"Close",message:"Join this call from your phone for better sound. You can continue viewing the meeting on this device.",primaryButtonLabel:"Join by Phone"},callNoSpeakerFound:{title:"No speakers or headphones found",message:"Connect an audio device to hear the call.",dismissButtonAriaLabel:"Close"},callNoMicrophoneFound:{title:"No microphones found",message:"Connect an audio input device.",dismissButtonAriaLabel:"Close"},callMicrophoneAccessDenied:{title:"Unable to access microphone",message:"Click the lock in the address bar to grant permission to this webpage.",dismissButtonAriaLabel:"Close"},callMicrophoneAccessDeniedSafari:{title:"Unable to access microphone",message:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",dismissButtonAriaLabel:"Close"},callMicrophoneMutedBySystem:{title:"You are muted by your system.",dismissButtonAriaLabel:"Close"},callMicrophoneUnmutedBySystem:{title:"Your microphone recovered and you were unmuted by your system.",dismissButtonAriaLabel:"Close"},callMacOsMicrophoneAccessDenied:{title:"Unable to access microphone",message:"Grant microphone permission in your macOS privacy settings.",dismissButtonAriaLabel:"Close"},callLocalVideoFreeze:{title:"Network bandwidth is poor",message:"Your video may appear paused for others on the call.",dismissButtonAriaLabel:"Close"},callCameraAccessDenied:{title:"Unable to access camera",message:"Click the lock in the address bar to grant permission to this webpage.",dismissButtonAriaLabel:"Close"},callCameraAccessDeniedSafari:{title:"Unable to access camera",message:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",dismissButtonAriaLabel:"Close"},callCameraAlreadyInUse:{title:"Unable to access camera",message:"It may already be in use by another application.",dismissButtonAriaLabel:"Close"},callVideoStoppedBySystem:{title:"Your video has been stopped by your system.",dismissButtonAriaLabel:"Close"},callVideoRecoveredBySystem:{title:"Your video has resumed.",dismissButtonAriaLabel:"Close"},callMacOsCameraAccessDenied:{title:"MacOS is blocking access to your camera",message:"Update your privacy settings to allow this browser to access your camera.",dismissButtonAriaLabel:"Close"},callMacOsScreenShareAccessDenied:{title:"MacOS is blocking screen sharing",message:"Update your privacy settings to allow this browser to record your screen.",dismissButtonAriaLabel:"Close"},failedToJoinCallGeneric:{title:"Failed to join call.",dismissButtonAriaLabel:"Close"},failedToJoinCallInvalidMeetingLink:{title:"Unable to join Meeting. Invalid Link.",dismissButtonAriaLabel:"Close"},cameraFrozenForRemoteParticipants:{title:"Users in the call are having issues seeing your video",message:"Please check your devices and network.",dismissButtonAriaLabel:"Close"},unableToStartVideoEffect:{title:"Unable to apply video effect.",dismissButtonAriaLabel:"Close"},startSpotlightWhileMaxParticipantsAreSpotlighted:{title:"Cannot start spotlight on participant(s)",message:"The maximum number of participants are already spotlighted.",dismissButtonAriaLabel:"Close"},mutedByRemoteParticipant:{title:"You were muted by another participant.",dismissButtonAriaLabel:"Close"},recordingStarted:{title:"Recording has started.",message:"By joining, you are giving consent for this meeting to be transcribed.",dismissButtonAriaLabel:"Close"},transcriptionStarted:{title:"Transcription has started.",message:"By joining, you are giving consent for this meeting to be transcribed.",dismissButtonAriaLabel:"Close"},recordingStopped:{title:"Recording is being saved.",message:"Recording has stopped.",dismissButtonAriaLabel:"Close"},transcriptionStopped:{title:"Transcription is being saved.",message:"Transcription has stopped.",dismissButtonAriaLabel:"Close"},recordingAndTranscriptionStarted:{title:"Recording and transcription have started.",message:"By joining, you are giving consent for this meeting to be transcribed.",dismissButtonAriaLabel:"Close"},recordingAndTranscriptionStopped:{title:"Recording and transcription are being saved.",message:"Recording and transcription have stopped.",dismissButtonAriaLabel:"Close"},recordingStoppedStillTranscribing:{title:"Recording has stopped.",message:"You are now only transcribing this meeting.",dismissButtonAriaLabel:"Close"},transcriptionStoppedStillRecording:{title:"Transcription has stopped.",message:"You are now only recording this meeting.",dismissButtonAriaLabel:"Close"},assignedBreakoutRoomOpened:{title:"We'll move you to your assigned room in 5 seconds.",dismissButtonAriaLabel:"Close"},assignedBreakoutRoomChanged:{title:"Your breakout room has changed",message:"We'll move you to your assigned room in 5 seconds.",dismissButtonAriaLabel:"Close"},assignedBreakoutRoomOpenedPromptJoin:{title:"Join breakout room?",message:"You've been assigned to a breakout room.",dismissButtonAriaLabel:"Close",primaryButtonLabel:"Join room",secondaryButtonLabel:"Later"},breakoutRoomJoined:{title:"You have joined a breakout room.",dismissButtonAriaLabel:"Close"},breakoutRoomClosingSoon:{title:"Room time limit about to expire.",message:"This room will close in 30 seconds",dismissButtonAriaLabel:"Close"}};var videoGallery$k={screenIsBeingSharedMessage:"You are sharing your screen",screenShareLoadingMessage:"Loading {participant}'s screen",localScreenShareLoadingMessage:"Loading your screen",localVideoLabel:"You",localVideoCameraSwitcherLabel:"Switch camera",localVideoMovementLabel:"Movable Local Video Tile",localVideoMovementAriaLabel:"Movable Local Video Tile",localVideoSelectedDescription:"{cameraName} selected",displayNamePlaceholder:"Unnamed participant",fitRemoteParticipantToFrame:"Fit to frame",fillRemoteParticipantFrame:"Fill frame",pinParticipantForMe:"Pin for me",pinParticipantForMeLimitReached:"Pin (limit reached)",unpinParticipantForMe:"Unpin",pinParticipantMenuItemAriaLabel:"Pin {participantName}",unpinParticipantMenuItemAriaLabel:"Unpin {participantName}",pinnedParticipantAnnouncementAriaLabel:"Pinned {participantName}",unpinnedParticipantAnnouncementAriaLabel:"Unpinned {participantName}",startSpotlightVideoTileMenuLabel:"Spotlight for everyone",addSpotlightVideoTileMenuLabel:"Add spotlight",spotlightLimitReachedMenuTitle:"Spotlight limit reached",stopSpotlightVideoTileMenuLabel:"Stop spotlighting",stopSpotlightOnSelfVideoTileMenuLabel:"Exit spotlight",attendeeRole:"Attendee",muteParticipantMenuItemLabel:"Mute"};var dialpad$k={placeholderText:"Enter phone number",deleteButtonAriaLabel:"Delete"};var holdButton$k={onLabel:"Resume",offLabel:"Hold",tooltipOnContent:"Resume call",tooltipOffContent:"Hold call"};var videoTile$k={participantStateRinging:"Calling...",participantStateHold:"On hold",moreOptionsButtonAriaLabel:"More Options"};var CameraAndMicrophoneSitePermissionsRequest$k={primaryText:"Allow {appName} to use your camera and microphone",secondaryText:"This is so participants can see and hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera and microphone",ariaLabel:"Allow camera and microphone access"};var CameraSitePermissionsRequest$k={primaryText:"Allow {appName} to use your camera",secondaryText:"This is so participants can see you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera",ariaLabel:"Allow camera access"};var MicrophoneSitePermissionsRequest$k={primaryText:"Allow {appName} to use your microphone",secondaryText:"This is so participants can hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without microphone",ariaLabel:"Allow microphone access"};var CameraAndMicrophoneSitePermissionsCheck$k={primaryText:"Checking for camera and microphone access",secondaryText:"Allow access if prompted. This is so participants can see and hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera and microphone",ariaLabel:"Checking for camera and microphone access. Allow access if prompted."};var CameraSitePermissionsCheck$k={primaryText:"Checking for camera access",secondaryText:"Allow access if prompted. This is so participants can see you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera",ariaLabel:"Checking for camera access. Allow access if prompted."};var MicrophoneSitePermissionsCheck$k={primaryText:"Checking for microphone access",secondaryText:"Allow access if prompted. This is so participants can hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without microphone",ariaLabel:"Checking for microphone access. Allow access if prompted."};var CameraAndMicrophoneSitePermissionsDenied$k={primaryText:"Unable to access camera and microphone",secondaryText:"Click the lock icon in the address bar to grant microphone permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without camera and microphone",linkText:"Need help? Get troubleshooting help"};var CameraAndMicrophoneSitePermissionsDeniedSafari$k={primaryText:"Unable to access camera and microphone",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without camera and microphone",linkText:"Need help? Get troubleshooting help"};var CameraSitePermissionsDenied$k={primaryText:"Unable to access camera",secondaryText:"Click the lock icon in the address bar to grant camera permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without camera",linkText:"Need help? Get troubleshooting help"};var MicrophoneSitePermissionsDenied$k={primaryText:"Unable to access microphone",secondaryText:"Click the lock icon in the address bar to grant microphone permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without microphone",linkText:"Need help? Get troubleshooting help"};var CameraSitePermissionsDeniedSafari$k={primaryText:"Unable to access camera",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without camera",linkText:"Need help? Get troubleshooting help"};var MicrophoneSitePermissionsDeniedSafari$k={primaryText:"Unable to access microphone",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without microphone",linkText:"Need help? Get troubleshooting help"};var UnsupportedBrowser$l={primaryText:"Browser not supported",secondaryText:"Please join this call using a compatible browser.",moreHelpLinkText:"See compatibility requirements"};var UnsupportedBrowserVersion$l={primaryText:"Browser update needed",secondaryText:"To ensure the best call possible, please update your browser and then try joining the call again.",moreHelpLinkText:"See compatibility requirements",continueAnywayButtonText:"Start call without updating"};var UnsupportedOperatingSystem$l={primaryText:"Operating system not supported",secondaryText:"Please join this call using a device with a compatible operating system.",moreHelpLinkText:"See compatibility requirements"};var BrowserPermissionDenied$k={primaryText:"Can't use your camera or microphone",secondaryText:"Your browser might not have access to your camera or microphone. To fix this, open System Preferences.",primaryButtonText:"Try again",linkText:"Need help? Get troubleshooting help"};var BrowserPermissionDeniedIOS$k={primaryText:"Allow microphone access to continue",secondaryText:"So other participants can hear you.",primaryButtonText:"Try again",imageAltText:"Microphone and camera device permission location for iOS",linkText:"Need help? Get troubleshooting help",step1Text:"Go to the Settings app",step2Text:"Scroll down to settings for this browser",step3Text:"Turn on Microphone (Camera optional)",step4Text:"Try joining the call again",step1DigitText:"1",step2DigitText:"2",step3DigitText:"3",step4DigitText:"4"};var verticalGallery$k={leftNavButtonAriaLabel:"previous page",rightNavButtonAriaLabel:"next page"};var meetingConferencePhoneInfo$k={meetingConferencePhoneInfoModalTitle:"Join call from your phone",meetingConferencePhoneInfoModalDialIn:"Dial number",meetingConferencePhoneInfoModalMeetingId:"Enter meeting ID",meetingConferencePhoneInfoModalWait:"Wait to be admitted by organizer",meetingConferencePhoneInfoModalNoPhoneAvailable:"No phone available",meetingConferencePhoneInfoModalTollGeoData:"{country}, {city}",meetingConferencePhoneInfoModalTollFree:"(Toll-free)",meetingConferencePhoneInfoModalToll:"(Toll)"};var IncomingCallNotification$l={incomingCallNotificationPlaceholderId:"Unknown User",incomingCallNotificationPlaceholderAlert:"{callerName} is calling",incomingCallNoticicationAcceptWithAudioAriaLabel:"Accept with audio",incomingCallNoticicationAcceptWithVideoAriaLabel:"Accept with video",incomingCallNoticicationRejectAriaLabel:"Reject",incomingCallNotificationAcceptButtonLabel:"Accept",incomingCallNotificationRejectButtonLabel:"Decline",incomingCallNotificationAccceptWithVideoButtonLabel:"Accept with Video"};var en_US$1 = {participantItem:participantItem$k,ParticipantList:ParticipantList$l,typingIndicator:typingIndicator$k,sendBox:sendBox$k,richTextSendBox:richTextSendBox$k,mentionPopover:mentionPopover$k,imageOverlay:imageOverlay$k,messageStatusIndicator:messageStatusIndicator$k,endCallButton:endCallButton$k,cameraButton:cameraButton$k,microphoneButton:microphoneButton$k,devicesButton:devicesButton$k,participantsButton:participantsButton$k,screenShareButton:screenShareButton$k,raiseHandButton:raiseHandButton$k,reactionButton:reactionButton$k,messageThread:messageThread$k,errorBar:errorBar$k,notificationStack:notificationStack$k,videoGallery:videoGallery$k,dialpad:dialpad$k,holdButton:holdButton$k,videoTile:videoTile$k,CameraAndMicrophoneSitePermissionsRequest:CameraAndMicrophoneSitePermissionsRequest$k,CameraSitePermissionsRequest:CameraSitePermissionsRequest$k,MicrophoneSitePermissionsRequest:MicrophoneSitePermissionsRequest$k,CameraAndMicrophoneSitePermissionsCheck:CameraAndMicrophoneSitePermissionsCheck$k,CameraSitePermissionsCheck:CameraSitePermissionsCheck$k,MicrophoneSitePermissionsCheck:MicrophoneSitePermissionsCheck$k,CameraAndMicrophoneSitePermissionsDenied:CameraAndMicrophoneSitePermissionsDenied$k,CameraAndMicrophoneSitePermissionsDeniedSafari:CameraAndMicrophoneSitePermissionsDeniedSafari$k,CameraSitePermissionsDenied:CameraSitePermissionsDenied$k,MicrophoneSitePermissionsDenied:MicrophoneSitePermissionsDenied$k,CameraSitePermissionsDeniedSafari:CameraSitePermissionsDeniedSafari$k,MicrophoneSitePermissionsDeniedSafari:MicrophoneSitePermissionsDeniedSafari$k,UnsupportedBrowser:UnsupportedBrowser$l,UnsupportedBrowserVersion:UnsupportedBrowserVersion$l,UnsupportedOperatingSystem:UnsupportedOperatingSystem$l,BrowserPermissionDenied:BrowserPermissionDenied$k,BrowserPermissionDeniedIOS:BrowserPermissionDeniedIOS$k,verticalGallery:verticalGallery$k,meetingConferencePhoneInfo:meetingConferencePhoneInfo$k,IncomingCallNotification:IncomingCallNotification$l};
2012
2012
 
2013
2013
  // Copyright (c) Microsoft Corporation.
2014
2014
  // Licensed under the MIT License.
@@ -2526,21 +2526,13 @@ const customNotificationIconName = {
2526
2526
  /* @conditional-compile-remove(soft-mute) */
2527
2527
  mutedByRemoteParticipant: 'ErrorBarMutedByRemoteParticipant',
2528
2528
  speakingWhileMuted: 'ErrorBarCallMicrophoneMutedBySystem',
2529
- /* @conditional-compile-remove(notifications) */
2530
2529
  recordingStarted: 'NotificationBarRecording',
2531
- /* @conditional-compile-remove(notifications) */
2532
2530
  transcriptionStarted: 'NotificationBarRecording',
2533
- /* @conditional-compile-remove(notifications) */
2534
2531
  recordingStopped: 'NotificationBarRecording',
2535
- /* @conditional-compile-remove(notifications) */
2536
2532
  transcriptionStopped: 'NotificationBarRecording',
2537
- /* @conditional-compile-remove(notifications) */
2538
2533
  recordingAndTranscriptionStarted: 'NotificationBarRecording',
2539
- /* @conditional-compile-remove(notifications) */
2540
2534
  recordingAndTranscriptionStopped: 'NotificationBarRecording',
2541
- /* @conditional-compile-remove(notifications) */
2542
2535
  recordingStoppedStillTranscribing: 'NotificationBarRecording',
2543
- /* @conditional-compile-remove(notifications) */
2544
2536
  transcriptionStoppedStillRecording: 'NotificationBarRecording',
2545
2537
  /* @conditional-compile-remove(breakout-rooms) */
2546
2538
  assignedBreakoutRoomOpened: 'NotificationBarBreakoutRoomOpened',
@@ -2549,9 +2541,9 @@ const customNotificationIconName = {
2549
2541
  /* @conditional-compile-remove(breakout-rooms) */
2550
2542
  assignedBreakoutRoomChanged: 'NotificationBarBreakoutRoomChanged',
2551
2543
  /* @conditional-compile-remove(breakout-rooms) */
2552
- assignedBreakoutRoomClosingSoon: 'NotificationBarBreakoutRoom',
2544
+ breakoutRoomJoined: 'NotificationBarBreakoutRoomJoined',
2553
2545
  /* @conditional-compile-remove(breakout-rooms) */
2554
- assignedBreakoutRoomClosed: 'NotificationBarBreakoutRoomClosed'
2546
+ breakoutRoomClosingSoon: 'NotificationBarBreakoutRoomClosingSoon'
2555
2547
  };
2556
2548
  /**
2557
2549
  * @private
@@ -3252,18 +3244,17 @@ const DEFAULT_COMPONENT_ICONS = {
3252
3244
  ErrorBarCallVideoStoppedBySystem: React.createElement(reactIcons.VideoProhibited16Filled, null),
3253
3245
  /* @conditional-compile-remove(soft-mute) */
3254
3246
  ErrorBarMutedByRemoteParticipant: React.createElement(reactIcons.MicOff16Regular, null),
3255
- /* @conditional-compile-remove(notifications) */
3256
3247
  NotificationBarRecording: React.createElement(reactIcons.Record16Regular, null),
3257
3248
  /* @conditional-compile-remove(breakout-rooms) */
3258
- NotificationBarBreakoutRoomOpened: React.createElement(React.Fragment, null),
3249
+ NotificationBarBreakoutRoomOpened: React.createElement(reactIcons.DoorArrowRight16Regular, null),
3259
3250
  /* @conditional-compile-remove(breakout-rooms) */
3260
- NotificationBarBreakoutRoomPromptJoin: React.createElement(reactIcons.ConferenceRoom20Regular, null),
3251
+ NotificationBarBreakoutRoomPromptJoin: React.createElement(reactIcons.DoorArrowRight16Regular, null),
3261
3252
  /* @conditional-compile-remove(breakout-rooms) */
3262
- NotificationBarBreakoutRoomChanged: React.createElement(reactIcons.ConferenceRoom20Regular, null),
3253
+ NotificationBarBreakoutRoomChanged: React.createElement(reactIcons.DoorArrowRight16Regular, null),
3263
3254
  /* @conditional-compile-remove(breakout-rooms) */
3264
- NotificationBarBreakoutRoomClosingSoon: React.createElement(reactIcons.ConferenceRoom20Regular, null),
3255
+ NotificationBarBreakoutRoomJoined: React.createElement(reactIcons.ConferenceRoom16Regular, null),
3265
3256
  /* @conditional-compile-remove(breakout-rooms) */
3266
- NotificationBarBreakoutRoomClosed: React.createElement(React.Fragment, null),
3257
+ NotificationBarBreakoutRoomClosingSoon: React.createElement(reactIcons.DoorArrowLeft16Regular, null),
3267
3258
  HorizontalGalleryLeftButton: React.createElement(GalleryLeftButton, null),
3268
3259
  HorizontalGalleryRightButton: React.createElement(GalleryRightButton, null),
3269
3260
  MessageDelivered: React.createElement(reactIcons.CheckmarkCircle16Regular, null),
@@ -10762,7 +10753,7 @@ class _ErrorBoundary extends React.Component {
10762
10753
  // Copyright (c) Microsoft Corporation.
10763
10754
  // Licensed under the MIT License.
10764
10755
  /* @conditional-compile-remove(rich-text-editor) */
10765
- const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-CpySAJfO.js'); }));
10756
+ const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-pRNZJbdQ.js'); }));
10766
10757
  /**
10767
10758
  * @private
10768
10759
  * Use this function to load RoosterJS dependencies early in the lifecycle.
@@ -10770,7 +10761,7 @@ const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve()
10770
10761
  *
10771
10762
  * @conditional-compile-remove(rich-text-editor)
10772
10763
  */
10773
- const loadChatMessageComponentAsRichTextEditBox = () => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-CpySAJfO.js'); });
10764
+ const loadChatMessageComponentAsRichTextEditBox = () => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-pRNZJbdQ.js'); });
10774
10765
  /**
10775
10766
  * @private
10776
10767
  */
@@ -20211,7 +20202,6 @@ const Notification = (props) => {
20211
20202
  */
20212
20203
  const NotificationStack = (props) => {
20213
20204
  var _a, _b;
20214
- /* @conditional-compile-remove(notifications) */
20215
20205
  const localeStrings = useLocale$1().strings.notificationStack;
20216
20206
  const strings = (_a = props.strings) !== null && _a !== void 0 ? _a : localeStrings;
20217
20207
  const maxNotificationsToShow = (_b = props.maxNotificationsToShow) !== null && _b !== void 0 ? _b : 2;
@@ -22038,7 +22028,7 @@ const isChatError = (e) => {
22038
22028
  return 'target' in e && e['target'] !== undefined && 'innerError' in e && e['innerError'] !== undefined;
22039
22029
  };
22040
22030
 
22041
- var call$k={cameraLabel:"Camera",noCamerasLabel:"No cameras found",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",copyInviteLinkButtonActionedLabel:"Link copied",copyInviteLinkActionedAriaLabel:"Invite link copied",defaultPlaceHolder:"Select an option",dismissSidePaneButtonLabel:"Close",videoEffectsPaneTitle:"Effects",videoEffectsPaneBackgroundSelectionTitle:"Background",configurationPageVideoEffectsButtonLabel:"Effects",unableToStartVideoEffect:"Unable to apply video effect.",blurBackgroundEffectButtonLabel:"Blur",blurBackgroundTooltip:"Blur Background",removeBackgroundEffectButtonLabel:"None",removeBackgroundTooltip:"Remove Background",cameraOffBackgroundEffectWarningText:"Your camera is off. Turn on camera to see video effect.",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",leavingCallTitle:"Leaving...",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",notInvitedToRoomDetails:"You are not able to join this room because you do not have an invite.",notInvitedToRoomTitle:"Not invited to room",peopleButtonLabel:"People",selectedPeopleButtonLabel:"People Button Selected",peoplePaneTitle:"People",peoplePaneMoreButtonAriaLabel:"More",peopleButtonTooltipOpen:"Show participants",peopleButtonTooltipClose:"Hide participants",peoplePaneSubTitle:"In this call {numberOfPeople}",privacyPolicy:"Privacy policy",rejoinCallButtonLabel:"Re-join call",removedFromCallMoreDetails:"Another participant removed you from the call.",removedFromCallTitle:"You were removed",removeMenuLabel:"Remove",startSpotlightMenuLabel:"Spotlight for everyone",addSpotlightMenuLabel:"Add spotlight",stopSpotlightMenuLabel:"Stop spotlighting",stopSpotlightOnSelfMenuLabel:"Exit spotlight",spotlightLimitReachedMenuTitle:"Spotlight limit reached",stopAllSpotlightMenuLabel:"Stop all spotlights",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back",roomNotFoundDetails:"The room ID provided could not be found.",roomNotFoundTitle:"Room not found",roomNotValidDetails:"This room is not valid at this current time.",roomNotValidTitle:"Room not valid",inviteToRoomRemovedDetails:"Your invite to join this room was removed.",inviteToRoomRemovedTitle:"Invite to room removed",soundLabel:"Sound",noMicrophonesLabel:"No microphones found",noSpeakersLabel:"No speakers found",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",resumingCallButtonLabel:"Resuming...",resumeCallButtonAriaLabel:"Resume call",resumingCallButtonAriaLabel:"Resume call",holdScreenLabel:"You're on hold",openDtmfDialpadLabel:"Show dialpad",dtmfDialpadPlaceholderText:"Enter number",outboundCallingNoticeString:"Calling...",participantJoinedNoticeString:"{displayName} joined",twoParticipantJoinedNoticeString:"{displayName1} and {displayName2} have joined",threeParticipantJoinedNoticeString:"{displayName1}, {displayName2} and {displayName3} have joined",participantLeftNoticeString:"{displayName} left",twoParticipantLeftNoticeString:"{displayName1} and {displayName2} have left",threeParticipantLeftNoticeString:"{displayName1}, {displayName2} and {displayName3} have left",unnamedParticipantString:"unnamed participant",manyUnnamedParticipantsJoined:"unnamed participant and {numOfParticipants} other participants joined",manyUnnamedParticipantsLeft:"unnamed participant and {numOfParticipants} other participants left",manyParticipantsJoined:"{displayName1}, {displayName2}, {displayName3} and {numOfParticipants} other participants joined",manyParticipantsLeft:"{displayName1}, {displayName2}, {displayName3} and {numOfParticipants} other participants left",liveCaptionsLabel:"Live captions",captionsSettingsLabel:"Caption settings",startCaptionsButtonOnLabel:"Turn on captions",startCaptionsButtonOffLabel:"Turn off captions",startCaptionsButtonTooltipOnContent:"Turn off captions",startCaptionsButtonTooltipOffContent:"Turn on captions",captionsSettingsModalTitle:"Captions Settings",captionsSettingsSpokenLanguageDropdownLabel:"Spoken language",captionsSettingsCaptionLanguageDropdownLabel:"Captions language",captionsSettingsSpokenLanguageDropdownInfoText:"Language that everyone on this call is speaking.",captionsSettingsCaptionLanguageDropdownInfoText:"Captions will appear in this langugage.",captionsSettingsConfirmButtonLabel:"Confirm",captionsSettingsCancelButtonLabel:"Cancel",captionsSettingsModalAriaLabel:"Captions Setting Modal",captionsSettingsCloseModalButtonAriaLabel:"Close Captions Setting",captionsBannerMoreButtonCallingLabel:"More",captionsBannerMoreButtonTooltip:"More options",dismissModalAriaLabel:"Local and remote picture and picture, press enter to return to call",callRejectedTitle:"The call could not be completed",callRejectedMoreDetails:"The person you are trying to reach is unavailable. Please try again later.",callTimeoutTitle:"The call could not be completed",callTimeoutDetails:"The person you are trying to reach is unavailable. Please try again later.",callTimeoutBotTitle:"The call could not be completed",callTimeoutBotDetails:"The service that you are trying to reach is unavailable. Please try again later.",dtmfDialerButtonLabel:"Dialpad",dtmfDialerButtonTooltipOn:"Show dialpad",dtmfDialerButtonTooltipOff:"Hide dialpad",dtmfDialerMoreButtonLabelOn:"Show dialpad",dtmfDialerMoreButtonLabelOff:"Hide dialpad",phoneCallMoreButtonLabel:"Phone Call",spokenLanguageStrings:{"ar-ae":"Arabic - U.A.E.","ar-sa":"Arabic - Saudi Arabia","da-dk":"Danish","de-de":"German - Germany","en-au":"English - Australia","en-ca":"English - Canada","en-gb":"English - United Kingdom","en-in":"English - India","en-nz":"English - New Zealand","en-us":"English - United States","es-es":"Spanish - Spain (Modern Sort)","es-mx":"Spanish - Mexico","fi-fi":"Finnish","fr-ca":"French - Canada","fr-fr":"French - France","hi-in":"Hindi","it-it":"Italian - Italy","ja-jp":"Japanese","ko-kr":"Korean","nb-no":"Norwegian (Bokmål)","nl-be":"Dutch - Belgium","nl-nl":"Dutch - Netherlands","pl-pl":"Polish","pt-br":"Portuguese - Brazil","ru-ru":"Russian","sv-se":"Swedish","zh-cn":"Chinese - People's Republic of China","zh-hk":"Chinese - Hong Kong SAR","cs-cz":"Czech","pt-pt":"Portuguese - Portugal","tr-tr":"Turkish","vi-vn":"Vietnamese","th-th":"Thai","he-il":"Hebrew","cy-gb":"Welsh","uk-ua":"Ukrainian","el-gr":"Greek","hu-hu":"Hungarian","ro-ro":"Romanian","sk-sk":"Slovak","zh-tw":"Chinese - Taiwan"},captionLanguageStrings:{ar:"Arabic",da:"Danish",de:"German",en:"English",es:"Spanish",fi:"Finnish","fr-ca":"French - Canada",fr:"French - France",hi:"Hindi",it:"Italian",ja:"Japanese",ko:"Korean",nb:"Norwegian (Bokmål)",nl:"Dutch",pl:"Polish",pt:"Portuguese - Brazil",ru:"Russian",sv:"Swedish","zh-Hans":"Chinese (Simplified)","zh-Hant":"Chinese (Traditional)",cs:"Czech","pt-pt":"Portuguese - Portugal",tr:"Turkish",vi:"Vietnamese",th:"Thai",he:"Hebrew",cy:"Welsh",uk:"Ukrainian",el:"Greek",hu:"Hungarian",ro:"Romanian",sk:"Slovak"},captionsBannerSpinnerText:"Starting captions...",transferPageTransferorText:"Transferring...",transferPageTransferTargetText:"Connecting...",transferPageUnknownTransferorDisplayName:"Unknown",transferPageUnknownTransferTargetDisplayName:"Unknown",transferPageNoticeString:"You are being transferred",participantCouldNotBeReachedTitle:"Target participant is currently not available",participantCouldNotBeReachedMoreDetails:"Please contact participant when they are available",permissionToReachTargetParticipantNotAllowedTitle:"Permission to reach target participant is not allowed",permissionToReachTargetParticipantNotAllowedMoreDetails:"Please check that the target participant is in the same tenant",unableToResolveTenantTitle:"Unable to resolve tenant id for the target participant",unableToResolveTenantMoreDetails:"Please check the participant id is entered correctly",participantIdIsMalformedTitle:"Participant id is not in the correct format",participantIdIsMalformedMoreDetails:"Please check that the participant id is in the correct format",moreButtonGalleryControlLabel:"View",moreButtonGalleryPositionToggleLabel:"Move gallery to top",moreButtonGallerySpeakerLayoutLabel:"Speaker",moreButtonGalleryFloatingLocalLayoutLabel:"Dynamic",moreButtonGalleryDefaultLayoutLabel:"Gallery view",moreButtonGalleryFocusedContentLayoutLabel:"Focus on content",moreButtonLargeGalleryDefaultLayoutLabel:"Large Gallery",capabilityChangedNotification:{turnVideoOn:{lostDueToMeetingOption:"Your camera has been disabled. You can no longer share video.",grantedDueToMeetingOption:"Your camera has been enabled. Turn it on if you'd like to share video."},unmuteMic:{lostDueToMeetingOption:"Your mic has been disabled. You can no longer unmute.",grantedDueToMeetingOption:"Your mic has been enabled. Unmute if you'd like to speak."},shareScreen:{lostDueToRoleChangeToAttendee:"Your role has been changed. Some actions, like sharing content, won't be available to you.",grantedDueToRoleChangeToPresenter:"You're a presenter. You can share content and facilitate the meeting."},hideAttendeeNames:{hideAttendeeNameAttendee:"Your name is hidden from other attendees. Organizers and presenters can see your real name.",hideAttendeeNamePresenter:"Attendee names are hidden. Only organizers and presenters can see names to protect attendee privacy."}},surveyTitle:"Help us improve",starSurveyHelperText:"How was the quality of the call?",starSurveyOneStarText:"The quality was bad.",starSurveyTwoStarText:"The quality was poor.",starSurveyThreeStarText:"The quality was good.",starSurveyFourStarText:"The quality was great.",starSurveyFiveStarText:"The quality was excellent.",surveyConfirmButtonLabel:"Send Feedback",starRatingAriaLabel:"Select {0} of {1} stars",surveySkipButtonLabel:"Skip",tagsSurveyQuestion:"What could have been better?",tagsSurveyTextFieldDefaultText:"Other, please specify",tagsSurveyHelperText:"Check any issues you experienced",endOfSurveyText:"Thank you for your feedback!",surveyIssues:{overallRating:{callCannotJoin:"I could not join call",callCannotInvite:"I could not invite others into the call",hadToRejoin:"I had to rejoin the call",callEndedUnexpectedly:"Call ended for me unexpectedly",otherIssues:"I was having other issues with the call"},audioRating:{noLocalAudio:"The other side could not hear any sound",noRemoteAudio:"I could not hear any sound",echo:"I heard echos on the call",audioNoise:"I heard noise on the call",lowVolume:"Volume was low",audioStoppedUnexpectedly:"Audio stopped unexpectedly",distortedSpeech:"Audio was distorted",audioInterruption:"Audio was interrupted",otherIssues:"I was having other audio issues in this call"},videoRating:{noVideoReceived:"I could not see any video",noVideoSent:"Others could not see me",lowQuality:"Video quality was low",freezes:"Video frozen",stoppedUnexpectedly:"Video stopped unexpectedly",darkVideoReceived:"I can only see dark screens when others turn on their camera",audioVideoOutOfSync:"Audio and Video was out of sync",otherIssues:"I was having other video issues in this call"},screenshareRating:{noContentLocal:"Other people could not see my screenshare",noContentRemote:"I could not see other people's screenshare",cannotPresent:"I could not present my screen",lowQuality:"Screen share quality was low",freezes:"Screen share frozen",stoppedUnexpectedly:"Screen share stopped unexpectedly",largeDelay:"Screen share has a large delay",otherIssues:"I was having other screen share issues in this call"}},surveyIssuesHeadingStrings:{overallRating:"Overall",audioRating:"Audio",videoRating:"Video",screenshareRating:"Presenting"},spotlightPrompt:{startSpotlightHeading:"Spotlight for everyone?",startSpotlightText:"You'll highlight this video for everyone in the meeting.",startSpotlightOnSelfText:"You'll highlight your video for everyone in the meeting.",startSpotlightConfirmButtonLabel:"Spotlight for everyone",startSpotlightCancelButtonLabel:"Cancel",stopSpotlightHeading:"Stop spotlighting this video?",stopSpotlightOnSelfHeading:"Exit spotlight?",stopAllSpotlightHeading:"Stop spotlighting all videos?",stopSpotlightText:"This video will no longer be highlighted for everyone in the meeting.",stopSpotlightOnSelfText:"Your video will no longer be highlighted for everyone in the meeting.",stopAllSpotlightText:"The videos will no longer be highlighted for everyone in the meeting.",stopSpotlightConfirmButtonLabel:"Stop spotlighting",stopSpotlightOnSelfConfirmButtonLabel:"Exit spotlight",stopSpotlightCancelButtonLabel:"Cancel"},exitSpotlightButtonLabel:"Exit spotlight",exitSpotlightButtonTooltip:"Exit spotlight",leaveConfirmButtonLabel:"Leave",endCallConfirmButtonLabel:"End call",hangUpCancelButtonLabel:"Cancel",leaveConfirmDialogTitle:"Leave the call?",leaveConfirmDialogContent:"Are you sure you want to leave the call?",endCallConfirmDialogTitle:"End the call?",endCallConfirmDialogContent:"You'll end the call for everyone.",invalidMeetingIdentifier:"Invalid meeting ID or passcode",pinParticipantMenuLabel:"Pin for me",pinParticipantLimitReachedMenuLabel:"Pin (limit reached)",unpinParticipantMenuLabel:"Unpin",pinParticipantMenuItemAriaLabel:"Pin",unpinParticipantMenuItemAriaLabel:"Unpin",muteAllMenuLabel:"Mute all",muteAllDialogTitle:"Mute everyone?",muteAllDialogContent:"This will mute everyone in the meeting but you.",muteAllConfirmButtonLabel:"Mute all",muteAllCancelButtonLabel:"Cancel",joinBreakoutRoomButtonLabel:"Join breakout room",returnFromBreakoutRoomButtonLabel:"Leave room",leaveBreakoutRoomAndMeetingButtonLabel:"Leave meeting"};var chat$k={chatListHeader:"In this chat",uploadAttachment:"Upload Attachment",uploadImageDataNotProvided:"Image data is not provided.",uploadImageIsTooLarge:"Image is too large. Choose one that's less than {maxImageSize} MB.",uploadImageExtensionIsNotAllowed:"Uploading .{imageExtension} image is not allowed.",uploadImageFailed:"Unable to upload image. Please try again later."};var callWithChat$k={chatButtonLabel:"Chat",chatButtonNewMessageNotificationLabel:"New Message",chatButtonTooltipClosedWithMessageCount:"Show chat ({unreadMessagesCount} unread)",chatButtonTooltipClose:"Hide chat",chatButtonTooltipOpen:"Show chat",chatPaneTitle:"Chat",copyInviteLinkButtonLabel:"Copy invite link",copyInviteLinkButtonActionedLabel:"Link copied",copyInviteLinkActionedAriaLabel:"Invite link copied",dismissSidePaneButtonLabel:"Close",moreDrawerAudioDeviceMenuTitle:"Audio Device",moreDrawerButtonLabel:"More options",moreDrawerButtonTooltip:"More options",moreDrawerMicrophoneMenuTitle:"Microphone",moreDrawerSpeakerMenuTitle:"Speaker",moreDrawerCaptionsMenuTitle:"Live captions",moreDrawerSpokenLanguageMenuTitle:"Spoken language",moreDrawerCaptionLanguageMenuTitle:"Caption language",moreDrawerGalleryOptionsMenuTitle:"Gallery options",peopleButtonLabel:"People",selectedPeopleButtonLabel:"People Button Selected",peopleButtonTooltipOpen:"Show participants",peopleButtonTooltipClose:"Hide participants",peopleButtonTooltipOpenAriaLabel:"People button, Show participants",peopleButtonTooltipCloseAriaLabel:"People button, 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",openDtmfDialpadLabel:"Show dialpad",dtmfDialpadPlaceholderText:"Enter number"};var en_US = {call:call$k,chat:chat$k,callWithChat:callWithChat$k};
22031
+ var call$k={cameraLabel:"Camera",noCamerasLabel:"No cameras found",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",copyInviteLinkButtonActionedLabel:"Link copied",copyInviteLinkActionedAriaLabel:"Invite link copied",defaultPlaceHolder:"Select an option",dismissSidePaneButtonLabel:"Close",videoEffectsPaneTitle:"Effects",videoEffectsPaneBackgroundSelectionTitle:"Background",configurationPageVideoEffectsButtonLabel:"Effects",unableToStartVideoEffect:"Unable to apply video effect.",blurBackgroundEffectButtonLabel:"Blur",blurBackgroundTooltip:"Blur Background",removeBackgroundEffectButtonLabel:"None",removeBackgroundTooltip:"Remove Background",cameraOffBackgroundEffectWarningText:"Your camera is off. Turn on camera to see video effect.",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",leavingCallTitle:"Leaving...",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",notInvitedToRoomDetails:"You are not able to join this room because you do not have an invite.",notInvitedToRoomTitle:"Not invited to room",peopleButtonLabel:"People",selectedPeopleButtonLabel:"People Button Selected",peoplePaneTitle:"People",peoplePaneMoreButtonAriaLabel:"More",peopleButtonTooltipOpen:"Show participants",peopleButtonTooltipClose:"Hide participants",peoplePaneSubTitle:"In this call {numberOfPeople}",privacyPolicy:"Privacy policy",rejoinCallButtonLabel:"Re-join call",removedFromCallMoreDetails:"Another participant removed you from the call.",removedFromCallTitle:"You were removed",removeMenuLabel:"Remove",startSpotlightMenuLabel:"Spotlight for everyone",addSpotlightMenuLabel:"Add spotlight",stopSpotlightMenuLabel:"Stop spotlighting",stopSpotlightOnSelfMenuLabel:"Exit spotlight",spotlightLimitReachedMenuTitle:"Spotlight limit reached",stopAllSpotlightMenuLabel:"Stop all spotlights",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back",roomNotFoundDetails:"The room ID provided could not be found.",roomNotFoundTitle:"Room not found",roomNotValidDetails:"This room is not valid at this current time.",roomNotValidTitle:"Room not valid",inviteToRoomRemovedDetails:"Your invite to join this room was removed.",inviteToRoomRemovedTitle:"Invite to room removed",soundLabel:"Sound",noMicrophonesLabel:"No microphones found",noSpeakersLabel:"No speakers found",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",resumingCallButtonLabel:"Resuming...",resumeCallButtonAriaLabel:"Resume call",resumingCallButtonAriaLabel:"Resume call",holdScreenLabel:"You're on hold",openDtmfDialpadLabel:"Show dialpad",dtmfDialpadPlaceholderText:"Enter number",outboundCallingNoticeString:"Calling...",participantJoinedNoticeString:"{displayName} joined",twoParticipantJoinedNoticeString:"{displayName1} and {displayName2} have joined",threeParticipantJoinedNoticeString:"{displayName1}, {displayName2} and {displayName3} have joined",participantLeftNoticeString:"{displayName} left",twoParticipantLeftNoticeString:"{displayName1} and {displayName2} have left",threeParticipantLeftNoticeString:"{displayName1}, {displayName2} and {displayName3} have left",unnamedParticipantString:"unnamed participant",manyUnnamedParticipantsJoined:"unnamed participant and {numOfParticipants} other participants joined",manyUnnamedParticipantsLeft:"unnamed participant and {numOfParticipants} other participants left",manyParticipantsJoined:"{displayName1}, {displayName2}, {displayName3} and {numOfParticipants} other participants joined",manyParticipantsLeft:"{displayName1}, {displayName2}, {displayName3} and {numOfParticipants} other participants left",liveCaptionsLabel:"Live captions",captionsSettingsLabel:"Caption settings",startCaptionsButtonOnLabel:"Turn on captions",startCaptionsButtonOffLabel:"Turn off captions",startCaptionsButtonTooltipOnContent:"Turn off captions",startCaptionsButtonTooltipOffContent:"Turn on captions",captionsSettingsModalTitle:"Captions Settings",captionsSettingsSpokenLanguageDropdownLabel:"Spoken language",captionsSettingsCaptionLanguageDropdownLabel:"Captions language",captionsSettingsSpokenLanguageDropdownInfoText:"Language that everyone on this call is speaking.",captionsSettingsCaptionLanguageDropdownInfoText:"Captions will appear in this langugage.",captionsSettingsConfirmButtonLabel:"Confirm",captionsSettingsCancelButtonLabel:"Cancel",captionsSettingsModalAriaLabel:"Captions Setting Modal",captionsSettingsCloseModalButtonAriaLabel:"Close Captions Setting",captionsBannerMoreButtonCallingLabel:"More",captionsBannerMoreButtonTooltip:"More options",dismissModalAriaLabel:"Local and remote picture and picture, press enter to return to call",callRejectedTitle:"The call could not be completed",callRejectedMoreDetails:"The person you are trying to reach is unavailable. Please try again later.",callTimeoutTitle:"The call could not be completed",callTimeoutDetails:"The person you are trying to reach is unavailable. Please try again later.",callTimeoutBotTitle:"The call could not be completed",callTimeoutBotDetails:"The service that you are trying to reach is unavailable. Please try again later.",dtmfDialerButtonLabel:"Dialpad",dtmfDialerButtonTooltipOn:"Show dialpad",dtmfDialerButtonTooltipOff:"Hide dialpad",dtmfDialerMoreButtonLabelOn:"Show dialpad",dtmfDialerMoreButtonLabelOff:"Hide dialpad",phoneCallMoreButtonLabel:"Phone Call",spokenLanguageStrings:{"ar-ae":"Arabic - U.A.E.","ar-sa":"Arabic - Saudi Arabia","da-dk":"Danish","de-de":"German - Germany","en-au":"English - Australia","en-ca":"English - Canada","en-gb":"English - United Kingdom","en-in":"English - India","en-nz":"English - New Zealand","en-us":"English - United States","es-es":"Spanish - Spain (Modern Sort)","es-mx":"Spanish - Mexico","fi-fi":"Finnish","fr-ca":"French - Canada","fr-fr":"French - France","hi-in":"Hindi","it-it":"Italian - Italy","ja-jp":"Japanese","ko-kr":"Korean","nb-no":"Norwegian (Bokmål)","nl-be":"Dutch - Belgium","nl-nl":"Dutch - Netherlands","pl-pl":"Polish","pt-br":"Portuguese - Brazil","ru-ru":"Russian","sv-se":"Swedish","zh-cn":"Chinese - People's Republic of China","zh-hk":"Chinese - Hong Kong SAR","cs-cz":"Czech","pt-pt":"Portuguese - Portugal","tr-tr":"Turkish","vi-vn":"Vietnamese","th-th":"Thai","he-il":"Hebrew","cy-gb":"Welsh","uk-ua":"Ukrainian","el-gr":"Greek","hu-hu":"Hungarian","ro-ro":"Romanian","sk-sk":"Slovak","zh-tw":"Chinese - Taiwan"},captionLanguageStrings:{ar:"Arabic",da:"Danish",de:"German",en:"English",es:"Spanish",fi:"Finnish","fr-ca":"French - Canada",fr:"French - France",hi:"Hindi",it:"Italian",ja:"Japanese",ko:"Korean",nb:"Norwegian (Bokmål)",nl:"Dutch",pl:"Polish",pt:"Portuguese - Brazil",ru:"Russian",sv:"Swedish","zh-Hans":"Chinese (Simplified)","zh-Hant":"Chinese (Traditional)",cs:"Czech","pt-pt":"Portuguese - Portugal",tr:"Turkish",vi:"Vietnamese",th:"Thai",he:"Hebrew",cy:"Welsh",uk:"Ukrainian",el:"Greek",hu:"Hungarian",ro:"Romanian",sk:"Slovak"},captionsBannerSpinnerText:"Starting captions...",transferPageTransferorText:"Transferring...",transferPageTransferTargetText:"Connecting...",transferPageUnknownTransferorDisplayName:"Unknown",transferPageUnknownTransferTargetDisplayName:"Unknown",transferPageNoticeString:"You are being transferred",participantCouldNotBeReachedTitle:"Target participant is currently not available",participantCouldNotBeReachedMoreDetails:"Please contact participant when they are available",permissionToReachTargetParticipantNotAllowedTitle:"Permission to reach target participant is not allowed",permissionToReachTargetParticipantNotAllowedMoreDetails:"Please check that the target participant is in the same tenant",unableToResolveTenantTitle:"Unable to resolve tenant id for the target participant",unableToResolveTenantMoreDetails:"Please check the participant id is entered correctly",participantIdIsMalformedTitle:"Participant id is not in the correct format",participantIdIsMalformedMoreDetails:"Please check that the participant id is in the correct format",moreButtonGalleryControlLabel:"View",moreButtonGalleryPositionToggleLabel:"Move gallery to top",moreButtonGallerySpeakerLayoutLabel:"Speaker",moreButtonGalleryFloatingLocalLayoutLabel:"Dynamic",moreButtonGalleryDefaultLayoutLabel:"Gallery view",moreButtonGalleryFocusedContentLayoutLabel:"Focus on content",moreButtonLargeGalleryDefaultLayoutLabel:"Large Gallery",capabilityChangedNotification:{turnVideoOn:{lostDueToMeetingOption:"Your camera has been disabled. You can no longer share video.",grantedDueToMeetingOption:"Your camera has been enabled. Turn it on if you'd like to share video."},unmuteMic:{lostDueToMeetingOption:"Your mic has been disabled. You can no longer unmute.",grantedDueToMeetingOption:"Your mic has been enabled. Unmute if you'd like to speak."},shareScreen:{lostDueToRoleChangeToAttendee:"Your role has been changed. Some actions, like sharing content, won't be available to you.",grantedDueToRoleChangeToPresenter:"You're a presenter. You can share content and facilitate the meeting."},hideAttendeeNames:{hideAttendeeNameAttendee:"Your name is hidden from other attendees. Organizers and presenters can see your real name.",hideAttendeeNamePresenter:"Attendee names are hidden. Only organizers and presenters can see names to protect attendee privacy."}},surveyTitle:"Help us improve",starSurveyHelperText:"How was the quality of the call?",starSurveyOneStarText:"The quality was bad.",starSurveyTwoStarText:"The quality was poor.",starSurveyThreeStarText:"The quality was good.",starSurveyFourStarText:"The quality was great.",starSurveyFiveStarText:"The quality was excellent.",surveyConfirmButtonLabel:"Send Feedback",starRatingAriaLabel:"Select {0} of {1} stars",surveySkipButtonLabel:"Skip",tagsSurveyQuestion:"What could have been better?",tagsSurveyTextFieldDefaultText:"Other, please specify",tagsSurveyHelperText:"Check any issues you experienced",endOfSurveyText:"Thank you for your feedback!",surveyIssues:{overallRating:{callCannotJoin:"I could not join call",callCannotInvite:"I could not invite others into the call",hadToRejoin:"I had to rejoin the call",callEndedUnexpectedly:"Call ended for me unexpectedly",otherIssues:"I was having other issues with the call"},audioRating:{noLocalAudio:"The other side could not hear any sound",noRemoteAudio:"I could not hear any sound",echo:"I heard echos on the call",audioNoise:"I heard noise on the call",lowVolume:"Volume was low",audioStoppedUnexpectedly:"Audio stopped unexpectedly",distortedSpeech:"Audio was distorted",audioInterruption:"Audio was interrupted",otherIssues:"I was having other audio issues in this call"},videoRating:{noVideoReceived:"I could not see any video",noVideoSent:"Others could not see me",lowQuality:"Video quality was low",freezes:"Video frozen",stoppedUnexpectedly:"Video stopped unexpectedly",darkVideoReceived:"I can only see dark screens when others turn on their camera",audioVideoOutOfSync:"Audio and Video was out of sync",otherIssues:"I was having other video issues in this call"},screenshareRating:{noContentLocal:"Other people could not see my screenshare",noContentRemote:"I could not see other people's screenshare",cannotPresent:"I could not present my screen",lowQuality:"Screen share quality was low",freezes:"Screen share frozen",stoppedUnexpectedly:"Screen share stopped unexpectedly",largeDelay:"Screen share has a large delay",otherIssues:"I was having other screen share issues in this call"}},surveyIssuesHeadingStrings:{overallRating:"Overall",audioRating:"Audio",videoRating:"Video",screenshareRating:"Presenting"},spotlightPrompt:{startSpotlightHeading:"Spotlight for everyone?",startSpotlightText:"You'll highlight this video for everyone in the meeting.",startSpotlightOnSelfText:"You'll highlight your video for everyone in the meeting.",startSpotlightConfirmButtonLabel:"Spotlight for everyone",startSpotlightCancelButtonLabel:"Cancel",stopSpotlightHeading:"Stop spotlighting this video?",stopSpotlightOnSelfHeading:"Exit spotlight?",stopAllSpotlightHeading:"Stop spotlighting all videos?",stopSpotlightText:"This video will no longer be highlighted for everyone in the meeting.",stopSpotlightOnSelfText:"Your video will no longer be highlighted for everyone in the meeting.",stopAllSpotlightText:"The videos will no longer be highlighted for everyone in the meeting.",stopSpotlightConfirmButtonLabel:"Stop spotlighting",stopSpotlightOnSelfConfirmButtonLabel:"Exit spotlight",stopSpotlightCancelButtonLabel:"Cancel"},exitSpotlightButtonLabel:"Exit spotlight",exitSpotlightButtonTooltip:"Exit spotlight",leaveConfirmButtonLabel:"Leave",endCallConfirmButtonLabel:"End call",hangUpCancelButtonLabel:"Cancel",leaveConfirmDialogTitle:"Leave the call?",leaveConfirmDialogContent:"Are you sure you want to leave the call?",endCallConfirmDialogTitle:"End the call?",endCallConfirmDialogContent:"You'll end the call for everyone.",invalidMeetingIdentifier:"Invalid meeting ID or passcode",pinParticipantMenuLabel:"Pin for me",pinParticipantLimitReachedMenuLabel:"Pin (limit reached)",unpinParticipantMenuLabel:"Unpin",pinParticipantMenuItemAriaLabel:"Pin",unpinParticipantMenuItemAriaLabel:"Unpin",muteAllMenuLabel:"Mute all",muteAllDialogTitle:"Mute everyone?",muteAllDialogContent:"This will mute everyone in the meeting but you.",muteAllConfirmButtonLabel:"Mute all",muteAllCancelButtonLabel:"Cancel",joinBreakoutRoomButtonLabel:"Join breakout room",returnFromBreakoutRoomButtonLabel:"Leave room",leaveBreakoutRoomAndMeetingButtonLabel:"Leave meeting",breakoutRoomJoinedNotificationTitle:"You've joined Breakout room '{roomName}'",joinBreakoutRoomBannerTitle:"Breakout room '{roomName}' is open",joinBreakoutRoomBannerButtonLabel:"Join",returnFromBreakoutRoomBannerTitle:"Return to main meeting",returnFromBreakoutRoomBannerButtonLabel:"Rejoin"};var chat$k={chatListHeader:"In this chat",uploadAttachment:"Upload Attachment",uploadImageDataNotProvided:"Image data is not provided.",uploadImageIsTooLarge:"Image is too large. Choose one that's less than {maxImageSize} MB.",uploadImageExtensionIsNotAllowed:"Uploading .{imageExtension} image is not allowed.",uploadImageFailed:"Unable to upload image. Please try again later."};var callWithChat$k={chatButtonLabel:"Chat",chatButtonNewMessageNotificationLabel:"New Message",chatButtonTooltipClosedWithMessageCount:"Show chat ({unreadMessagesCount} unread)",chatButtonTooltipClose:"Hide chat",chatButtonTooltipOpen:"Show chat",chatPaneTitle:"Chat",copyInviteLinkButtonLabel:"Copy invite link",copyInviteLinkButtonActionedLabel:"Link copied",copyInviteLinkActionedAriaLabel:"Invite link copied",dismissSidePaneButtonLabel:"Close",moreDrawerAudioDeviceMenuTitle:"Audio Device",moreDrawerButtonLabel:"More options",moreDrawerButtonTooltip:"More options",moreDrawerMicrophoneMenuTitle:"Microphone",moreDrawerSpeakerMenuTitle:"Speaker",moreDrawerCaptionsMenuTitle:"Live captions",moreDrawerSpokenLanguageMenuTitle:"Spoken language",moreDrawerCaptionLanguageMenuTitle:"Caption language",moreDrawerGalleryOptionsMenuTitle:"Gallery options",peopleButtonLabel:"People",selectedPeopleButtonLabel:"People Button Selected",peopleButtonTooltipOpen:"Show participants",peopleButtonTooltipClose:"Hide participants",peopleButtonTooltipOpenAriaLabel:"People button, Show participants",peopleButtonTooltipCloseAriaLabel:"People button, 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",openDtmfDialpadLabel:"Show dialpad",dtmfDialpadPlaceholderText:"Enter number",breakoutRoomChatPaneTitle:"Breakout Room Chat"};var en_US = {call:call$k,chat:chat$k,callWithChat:callWithChat$k};
22042
22032
 
22043
22033
  // Copyright (c) Microsoft Corporation.
22044
22034
  // Licensed under the MIT License.
@@ -22992,7 +22982,7 @@ const AttachmentDownloadErrorBar = (props) => {
22992
22982
  /**
22993
22983
  * Wrapper for RichTextSendBox component to allow us to use usePropsFor with richTextSendBox with lazy loading
22994
22984
  */
22995
- const RichTextSendBoxWrapper = React.lazy(() => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-BYHKieLB.js'); }).then((module) => ({ default: module.RichTextSendBoxWrapper })));
22985
+ const RichTextSendBoxWrapper = React.lazy(() => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-Bz_KlOv9.js'); }).then((module) => ({ default: module.RichTextSendBoxWrapper })));
22996
22986
  /**
22997
22987
  * @private
22998
22988
  * Use this function to load RoosterJS dependencies early in the lifecycle.
@@ -23000,7 +22990,7 @@ const RichTextSendBoxWrapper = React.lazy(() => Promise.resolve().then(function
23000
22990
  *
23001
22991
  /* @conditional-compile-remove(rich-text-editor-composite-support)
23002
22992
  */
23003
- const loadRichTextSendBox = () => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-BYHKieLB.js'); }).then((module) => ({ default: module.RichTextSendBoxWrapper }));
22993
+ const loadRichTextSendBox = () => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-Bz_KlOv9.js'); }).then((module) => ({ default: module.RichTextSendBoxWrapper }));
23004
22994
  /**
23005
22995
  * @private
23006
22996
  */
@@ -24884,8 +24874,6 @@ const createDefaultTeamsCallingHandlers = memoizeOne((callClient, callAgent, dev
24884
24874
 
24885
24875
  // Copyright (c) Microsoft Corporation.
24886
24876
  // Licensed under the MIT License.
24887
- /* @conditional-compile-remove(notifications) */
24888
- /* @conditional-compile-remove(notifications) */
24889
24877
  /**
24890
24878
  * Select the active errors from the state for the `Notification` component.
24891
24879
  *
@@ -25058,9 +25046,22 @@ const notificationStackSelector = reselect.createSelector([
25058
25046
  timestamp: latestNotifications['assignedBreakoutRoomChanged'].timestamp
25059
25047
  });
25060
25048
  }
25049
+ /* @conditional-compile-remove(breakout-rooms) */
25050
+ if (latestNotifications['breakoutRoomJoined']) {
25051
+ activeNotifications.push({
25052
+ type: 'breakoutRoomJoined',
25053
+ timestamp: latestNotifications['breakoutRoomJoined'].timestamp
25054
+ });
25055
+ }
25056
+ /* @conditional-compile-remove(breakout-rooms) */
25057
+ if (latestNotifications['breakoutRoomClosingSoon']) {
25058
+ activeNotifications.push({
25059
+ type: 'breakoutRoomClosingSoon',
25060
+ timestamp: latestNotifications['breakoutRoomClosingSoon'].timestamp
25061
+ });
25062
+ }
25061
25063
  return { activeErrorMessages: activeErrorMessages, activeNotifications: activeNotifications };
25062
25064
  });
25063
- /* @conditional-compile-remove(notifications) */
25064
25065
  const appendActiveErrorIfDefined$1 = (activeErrorMessages, latestErrors, target, activeErrorType) => {
25065
25066
  if (latestErrors[target] === undefined) {
25066
25067
  return;
@@ -25465,7 +25466,6 @@ function convertSdkRemoteStreamToDeclarativeRemoteStream(stream) {
25465
25466
  id: stream.id,
25466
25467
  mediaStreamType: stream.mediaStreamType,
25467
25468
  isAvailable: stream.isAvailable,
25468
- /* @conditional-compile-remove(video-stream-is-receiving-flag) */
25469
25469
  isReceiving: stream.isReceiving,
25470
25470
  view: undefined,
25471
25471
  streamSize: stream.size
@@ -25782,6 +25782,8 @@ let CallContext$2 = class CallContext {
25782
25782
  /* @conditional-compile-remove(PSTN-calls) */ alternateCallerId) {
25783
25783
  this._callIdHistory = new CallIdHistory();
25784
25784
  this._timeOutId = {};
25785
+ /* @conditional-compile-remove(breakout-rooms) */
25786
+ this._latestCallIdsThatPushedNotifications = {};
25785
25787
  /**
25786
25788
  * Tees direct errors to state.
25787
25789
  * @remarks
@@ -26272,6 +26274,15 @@ let CallContext$2 = class CallContext {
26272
26274
  }
26273
26275
  });
26274
26276
  }
26277
+ /* @conditional-compile-remove(breakout-rooms) */
26278
+ setBreakoutRoomDisplayName(callId, breakoutRoomDisplayName) {
26279
+ this.modifyState((draft) => {
26280
+ const call = draft.calls[this._callIdHistory.latestCallId(callId)];
26281
+ if (call) {
26282
+ call.breakoutRooms = Object.assign(Object.assign({}, call.breakoutRooms), { breakoutRoomDisplayName });
26283
+ }
26284
+ });
26285
+ }
26275
26286
  setCallScreenShareParticipant(callId, participantKey) {
26276
26287
  this.modifyState((draft) => {
26277
26288
  const call = draft.calls[this._callIdHistory.latestCallId(callId)];
@@ -26365,7 +26376,6 @@ let CallContext$2 = class CallContext {
26365
26376
  const existingStream = participant.videoStreams[stream.id];
26366
26377
  if (existingStream) {
26367
26378
  existingStream.isAvailable = stream.isAvailable;
26368
- /* @conditional-compile-remove(video-stream-is-receiving-flag) */
26369
26379
  existingStream.isReceiving = stream.isReceiving;
26370
26380
  existingStream.mediaStreamType = stream.mediaStreamType;
26371
26381
  }
@@ -26390,7 +26400,6 @@ let CallContext$2 = class CallContext {
26390
26400
  }
26391
26401
  });
26392
26402
  }
26393
- /* @conditional-compile-remove(video-stream-is-receiving-flag) */
26394
26403
  setRemoteVideoStreamIsReceiving(callId, participantKey, streamId, isReceiving) {
26395
26404
  this.modifyState((draft) => {
26396
26405
  const call = draft.calls[this._callIdHistory.latestCallId(callId)];
@@ -26435,7 +26444,6 @@ let CallContext$2 = class CallContext {
26435
26444
  if (stream) {
26436
26445
  stream.mediaStreamType = newStream.mediaStreamType;
26437
26446
  stream.isAvailable = newStream.isAvailable;
26438
- /* @conditional-compile-remove(video-stream-is-receiving-flag) */
26439
26447
  stream.isReceiving = newStream.isReceiving;
26440
26448
  }
26441
26449
  else {
@@ -26756,13 +26764,23 @@ let CallContext$2 = class CallContext {
26756
26764
  });
26757
26765
  }
26758
26766
  /* @conditional-compile-remove(breakout-rooms) */
26759
- setLatestNotification(notification) {
26767
+ setLatestNotification(callId, notification) {
26768
+ this._latestCallIdsThatPushedNotifications[notification.target] = callId;
26760
26769
  this.modifyState((draft) => {
26761
26770
  draft.latestNotifications[notification.target] = notification;
26762
26771
  });
26763
26772
  }
26764
26773
  /* @conditional-compile-remove(breakout-rooms) */
26765
- deleteLatestNotification(notificationTarget) {
26774
+ deleteLatestNotification(callId, notificationTarget) {
26775
+ let callIdToPushLatestNotification = this._latestCallIdsThatPushedNotifications[notificationTarget];
26776
+ callIdToPushLatestNotification = callIdToPushLatestNotification
26777
+ ? this._callIdHistory.latestCallId(callIdToPushLatestNotification)
26778
+ : undefined;
26779
+ // Only delete the notification if the call that pushed the notification is the same as the call that is trying
26780
+ // to delete it.
26781
+ if (callIdToPushLatestNotification !== callId) {
26782
+ return;
26783
+ }
26766
26784
  this.modifyState((draft) => {
26767
26785
  delete draft.latestNotifications[notificationTarget];
26768
26786
  });
@@ -26975,14 +26993,12 @@ class RemoteVideoStreamSubscriber {
26975
26993
  constructor(callIdRef, participantKey, remoteVideoStream, context) {
26976
26994
  this.subscribe = () => {
26977
26995
  this._remoteVideoStream.on('isAvailableChanged', this.isAvailableChanged);
26978
- /* @conditional-compile-remove(video-stream-is-receiving-flag) */
26979
26996
  this._remoteVideoStream.on('isReceivingChanged', this.isReceivingChanged);
26980
26997
  this._remoteVideoStream.on('sizeChanged', this.isSizeChanged);
26981
26998
  this.checkAndUpdateScreenShareState();
26982
26999
  };
26983
27000
  this.unsubscribe = () => {
26984
27001
  this._remoteVideoStream.off('isAvailableChanged', this.isAvailableChanged);
26985
- /* @conditional-compile-remove(video-stream-is-receiving-flag) */
26986
27002
  this._remoteVideoStream.off('isReceivingChanged', this.isReceivingChanged);
26987
27003
  this._remoteVideoStream.off('sizeChanged', this.isSizeChanged);
26988
27004
  };
@@ -27033,7 +27049,6 @@ class RemoteVideoStreamSubscriber {
27033
27049
  this._context.setRemoteVideoStreamIsAvailable(this._callIdRef.callId, this._participantKey, this._remoteVideoStream.id, this._remoteVideoStream.isAvailable);
27034
27050
  this.checkAndUpdateScreenShareState();
27035
27051
  };
27036
- /* @conditional-compile-remove(video-stream-is-receiving-flag) */
27037
27052
  this.isReceivingChanged = () => {
27038
27053
  this._context.setRemoteVideoStreamIsReceiving(this._callIdRef.callId, this._participantKey, this._remoteVideoStream.id, this._remoteVideoStream.isReceiving);
27039
27054
  };
@@ -28104,6 +28119,8 @@ class LocalRecordingSubscriber {
28104
28119
  // Copyright (c) Microsoft Corporation.
28105
28120
  // Licensed under the MIT License.
28106
28121
  /* @conditional-compile-remove(breakout-rooms) */
28122
+ const MILLSECONDS_BEFORE_END_TIME_TO_SHOW_CLOSING_NOTIFICATION = 30000;
28123
+ /* @conditional-compile-remove(breakout-rooms) */
28107
28124
  /**
28108
28125
  * @private
28109
28126
  */
@@ -28111,6 +28128,11 @@ class BreakoutRoomsSubscriber {
28111
28128
  constructor(callIdRef, context, breakoutRoomsFeature) {
28112
28129
  this.unsubscribe = () => {
28113
28130
  this._breakoutRoomsFeature.off('breakoutRoomsUpdated', this.onBreakoutRoomsUpdated);
28131
+ // Clear breakout room joined notification for this call.
28132
+ this._context.deleteLatestNotification(this._callIdRef.callId, 'breakoutRoomJoined');
28133
+ // Clear breakout room closing soon notification for this call.
28134
+ this._context.deleteLatestNotification(this._callIdRef.callId, 'breakoutRoomClosingSoon');
28135
+ clearTimeout(this._breakoutRoomClosingSoonTimeoutId);
28114
28136
  };
28115
28137
  this.onBreakoutRoomsUpdated = (eventData) => {
28116
28138
  if (!eventData.data) {
@@ -28138,29 +28160,62 @@ class BreakoutRoomsSubscriber {
28138
28160
  if (breakoutRoom.state === 'open' &&
28139
28161
  (currentAssignedBreakoutRoom === null || currentAssignedBreakoutRoom === void 0 ? void 0 : currentAssignedBreakoutRoom.state) === 'open' &&
28140
28162
  ((_b = currentAssignedBreakoutRoom === null || currentAssignedBreakoutRoom === void 0 ? void 0 : currentAssignedBreakoutRoom.call) === null || _b === void 0 ? void 0 : _b.id) !== ((_c = breakoutRoom.call) === null || _c === void 0 ? void 0 : _c.id)) {
28141
- this._context.setLatestNotification({ target: 'assignedBreakoutRoomChanged', timestamp: new Date(Date.now()) });
28163
+ if (!this._context.getState().latestNotifications['assignedBreakoutRoomOpened'] &&
28164
+ !this._context.getState().latestNotifications['assignedBreakoutRoomOpenedPromptJoin']) {
28165
+ this._context.setLatestNotification(this._callIdRef.callId, {
28166
+ target: 'assignedBreakoutRoomChanged',
28167
+ timestamp: new Date(Date.now())
28168
+ });
28169
+ }
28142
28170
  }
28143
28171
  else if (breakoutRoom.state === 'open') {
28144
- const target = breakoutRoom.autoMoveParticipantToBreakoutRoom === false
28145
- ? 'assignedBreakoutRoomOpenedPromptJoin'
28146
- : 'assignedBreakoutRoomOpened';
28147
- this._context.setLatestNotification({ target, timestamp: new Date(Date.now()) });
28172
+ if (!this._context.getState().latestNotifications['assignedBreakoutRoomChanged']) {
28173
+ const target = breakoutRoom.autoMoveParticipantToBreakoutRoom === false
28174
+ ? 'assignedBreakoutRoomOpenedPromptJoin'
28175
+ : 'assignedBreakoutRoomOpened';
28176
+ this._context.setLatestNotification(this._callIdRef.callId, { target, timestamp: new Date(Date.now()) });
28177
+ }
28148
28178
  }
28149
28179
  else if (breakoutRoom.state === 'closed' && (currentAssignedBreakoutRoom === null || currentAssignedBreakoutRoom === void 0 ? void 0 : currentAssignedBreakoutRoom.state) === 'closed') {
28150
28180
  // This scenario covers the case where the breakout room is opened but then closed before the user joins.
28151
- this._context.deleteLatestNotification('assignedBreakoutRoomOpened');
28152
- this._context.deleteLatestNotification('assignedBreakoutRoomOpenedPromptJoin');
28153
- this._context.deleteLatestNotification('assignedBreakoutRoomChanged');
28181
+ this._context.deleteLatestNotification(this._callIdRef.callId, 'assignedBreakoutRoomOpened');
28182
+ this._context.deleteLatestNotification(this._callIdRef.callId, 'assignedBreakoutRoomOpenedPromptJoin');
28183
+ this._context.deleteLatestNotification(this._callIdRef.callId, 'assignedBreakoutRoomChanged');
28154
28184
  }
28155
28185
  this._context.setAssignedBreakoutRoom(this._callIdRef.callId, breakoutRoom);
28156
28186
  };
28157
28187
  this.onBreakoutRoomsJoined = (call) => {
28188
+ var _a, _b;
28158
28189
  this._context.setBreakoutRoomOriginCallId(this._callIdRef.callId, call.id);
28159
- this._context.deleteLatestNotification('assignedBreakoutRoomOpened');
28160
- this._context.deleteLatestNotification('assignedBreakoutRoomOpenedPromptJoin');
28161
- this._context.deleteLatestNotification('assignedBreakoutRoomChanged');
28190
+ this._context.deleteLatestNotification(this._callIdRef.callId, 'assignedBreakoutRoomOpened');
28191
+ this._context.deleteLatestNotification(this._callIdRef.callId, 'assignedBreakoutRoomOpenedPromptJoin');
28192
+ this._context.deleteLatestNotification(this._callIdRef.callId, 'assignedBreakoutRoomChanged');
28193
+ // Send latest notification for breakoutRoomJoined on behalf of the call that was joined.
28194
+ this._context.setLatestNotification(call.id, {
28195
+ target: 'breakoutRoomJoined',
28196
+ timestamp: new Date(Date.now())
28197
+ });
28198
+ // If assigned breakout room has a display name, set the display name for its call state.
28199
+ const assignedBreakoutRoomDisplayName = (_b = (_a = this._context.getState().calls[this._callIdRef.callId].breakoutRooms) === null || _a === void 0 ? void 0 : _a.assignedBreakoutRoom) === null || _b === void 0 ? void 0 : _b.displayName;
28200
+ if (assignedBreakoutRoomDisplayName) {
28201
+ this._context.setBreakoutRoomDisplayName(call.id, assignedBreakoutRoomDisplayName);
28202
+ }
28162
28203
  };
28163
28204
  this.onBreakoutRoomSettingsUpdated = (breakoutRoomSettings) => {
28205
+ // If the roomEndTime is available, set a timeout to show a notification before the room closes.
28206
+ if (typeof breakoutRoomSettings.roomEndTime === 'string' &&
28207
+ !Number.isNaN(Date.parse(breakoutRoomSettings.roomEndTime))) {
28208
+ const now = new Date(Date.now());
28209
+ const roomClosingTime = new Date(breakoutRoomSettings.roomEndTime).getTime();
28210
+ const timeBeforeClosing = roomClosingTime - now.getTime();
28211
+ const timeBeforeSendingClosingSoonNotification = Math.max(timeBeforeClosing - MILLSECONDS_BEFORE_END_TIME_TO_SHOW_CLOSING_NOTIFICATION, 0);
28212
+ if (!this._breakoutRoomClosingSoonTimeoutId) {
28213
+ this._breakoutRoomClosingSoonTimeoutId = setTimeout(() => this._context.setLatestNotification(this._callIdRef.callId, {
28214
+ target: 'breakoutRoomClosingSoon',
28215
+ timestamp: now
28216
+ }), timeBeforeSendingClosingSoonNotification);
28217
+ }
28218
+ }
28164
28219
  this._context.setBreakoutRoomSettings(this._callIdRef.callId, breakoutRoomSettings);
28165
28220
  };
28166
28221
  this._callIdRef = callIdRef;
@@ -29912,7 +29967,6 @@ const convertRemoteVideoStreamToVideoGalleryStream = (stream) => {
29912
29967
  return {
29913
29968
  id: stream.id,
29914
29969
  isAvailable: stream.isAvailable,
29915
- /* @conditional-compile-remove(video-stream-is-receiving-flag) */
29916
29970
  isReceiving: stream.isReceiving,
29917
29971
  isMirrored: (_a = stream.view) === null || _a === void 0 ? void 0 : _a.isMirrored,
29918
29972
  renderElement: (_b = stream.view) === null || _b === void 0 ? void 0 : _b.target,
@@ -30417,10 +30471,6 @@ const getSelector = (component) => {
30417
30471
  if (component === HoldButton) {
30418
30472
  return findConditionalCompiledSelector(component);
30419
30473
  }
30420
- /* @conditional-compile-remove(notifications) */
30421
- if (component === NotificationStack) {
30422
- return findConditionalCompiledSelector(component);
30423
- }
30424
30474
  /* @conditional-compile-remove(one-to-n-calling) */
30425
30475
  if (component === IncomingCallStack) {
30426
30476
  return findConditionalCompiledSelector(component);
@@ -30455,20 +30505,18 @@ const findSelector = (component) => {
30455
30505
  return raiseHandButtonSelector;
30456
30506
  case ReactionButton:
30457
30507
  return reactionButtonSelector;
30508
+ case NotificationStack:
30509
+ return notificationStackSelector;
30458
30510
  }
30459
30511
  return undefined;
30460
30512
  };
30461
- /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(notifications) */ /* @conditional-compile-remove(one-to-n-calling) */
30513
+ /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
30462
30514
  const findConditionalCompiledSelector = (component) => {
30463
30515
  switch (component) {
30464
30516
  /* @conditional-compile-remove(PSTN-calls) */
30465
30517
  case HoldButton:
30466
30518
  /* @conditional-compile-remove(PSTN-calls) */
30467
30519
  return holdButtonSelector;
30468
- /* @conditional-compile-remove(notifications) */
30469
- case NotificationStack:
30470
- /* @conditional-compile-remove(notifications) */
30471
- return notificationStackSelector;
30472
30520
  /* @conditional-compile-remove(one-to-n-calling) */
30473
30521
  case IncomingCallStack:
30474
30522
  /* @conditional-compile-remove(one-to-n-calling) */
@@ -31099,7 +31147,6 @@ const getSelectedCameraFromAdapterState = (state) => state.devices.selectedCamer
31099
31147
  const getLocatorOrTargetCallees = (locatorOrTargetCallees) => {
31100
31148
  return !!Array.isArray(locatorOrTargetCallees);
31101
31149
  };
31102
- /* @conditional-compile-remove(notifications) */
31103
31150
  /**
31104
31151
  * Return different conditions based on the current and previous state of recording and transcribing
31105
31152
  *
@@ -31139,7 +31186,6 @@ const computeVariant = (callRecordState, callTranscribeState) => {
31139
31186
  return 'noState';
31140
31187
  }
31141
31188
  };
31142
- /* @conditional-compile-remove(notifications) */
31143
31189
  /**
31144
31190
  * @private
31145
31191
  */
@@ -31160,7 +31206,6 @@ function determineStates(previous, current) {
31160
31206
  }
31161
31207
  }
31162
31208
  }
31163
- /* @conditional-compile-remove(notifications) */
31164
31209
  /**
31165
31210
  * Compute compliance notification based on latest compliance state and cached props.
31166
31211
  * @private
@@ -32007,6 +32052,11 @@ const getAssignedBreakoutRoom = (state) => { var _a, _b; return (_b = (_a = stat
32007
32052
  * @private
32008
32053
  */
32009
32054
  const getBreakoutRoomSettings = (state) => { var _a, _b; return (_b = (_a = state.call) === null || _a === void 0 ? void 0 : _a.breakoutRooms) === null || _b === void 0 ? void 0 : _b.breakoutRoomSettings; };
32055
+ /* @conditional-compile-remove(breakout-rooms) */
32056
+ /**
32057
+ * @private
32058
+ */
32059
+ const getBreakoutRoomDisplayName = (state) => { var _a, _b; return (_b = (_a = state.call) === null || _a === void 0 ? void 0 : _a.breakoutRooms) === null || _b === void 0 ? void 0 : _b.breakoutRoomDisplayName; };
32010
32060
 
32011
32061
  // Copyright (c) Microsoft Corporation.
32012
32062
  // Licensed under the MIT License.
@@ -33305,6 +33355,82 @@ const useMinMaxDragPosition = (modalLayerHostId, rtl) => {
33305
33355
  return { minDragPosition: minDragPosition, maxDragPosition: maxDragPosition };
33306
33356
  };
33307
33357
 
33358
+ // Copyright (c) Microsoft Corporation.
33359
+ // Licensed under the MIT License.
33360
+ /**
33361
+ * @internal
33362
+ */
33363
+ const getMinutes$1 = (time) => {
33364
+ return Math.floor(getSeconds$1(time) / 60);
33365
+ };
33366
+ /**
33367
+ * @internal
33368
+ */
33369
+ const getSeconds$1 = (time) => {
33370
+ return Math.floor(time / 1000);
33371
+ };
33372
+ /**
33373
+ * @internal
33374
+ */
33375
+ const getHours$1 = (time) => {
33376
+ return Math.floor(getMinutes$1(time) / 60);
33377
+ };
33378
+ /**
33379
+ * @internal
33380
+ */
33381
+ const getReadableTime$1 = (time) => {
33382
+ const hours = getHours$1(time);
33383
+ const readableMinutes = ('0' + (getMinutes$1(time) % 60)).slice(-2);
33384
+ const readableSeconds = ('0' + (getSeconds$1(time) % 60)).slice(-2);
33385
+ return `${hours > 0 ? hours + ':' : ''}${readableMinutes}:${readableSeconds}`;
33386
+ };
33387
+
33388
+ // Copyright (c) Microsoft Corporation.
33389
+ // Licensed under the MIT License.
33390
+ // eslint-disable-next-line no-restricted-imports
33391
+ /**
33392
+ * @private
33393
+ */
33394
+ const Timer = (props) => {
33395
+ const { timeStampInfo } = props;
33396
+ const endTimeMs = new Date(timeStampInfo).getTime();
33397
+ const theme = react.useTheme();
33398
+ const [time, setTime] = React.useState(0);
33399
+ const timeRemaining = getReadableTime$1(time);
33400
+ React.useEffect(() => {
33401
+ const interval = setInterval(() => {
33402
+ setTime(Math.max(endTimeMs - Date.now(), 0));
33403
+ }, 10);
33404
+ return () => {
33405
+ clearInterval(interval);
33406
+ };
33407
+ }, [endTimeMs]);
33408
+ return (React.createElement(react.Stack, { horizontal: true, className: timerContainerClass(theme), tokens: { childrenGap: '0.5rem' } },
33409
+ React.createElement(react.FontIcon, { iconName: 'Clock', className: iconClass$1 }),
33410
+ React.createElement(react.Text, { styles: timerTextStyle }, timeRemaining)));
33411
+ };
33412
+ const timerContainerClass = (theme) => react.mergeStyles({
33413
+ backgroundColor: theme.palette.neutralLight,
33414
+ display: 'flex',
33415
+ alignItems: 'center',
33416
+ borderColor: theme.palette.neutralQuaternaryAlt,
33417
+ borderWidth: '0.0625rem',
33418
+ borderRadius: '0.25rem',
33419
+ padding: '0.5rem'
33420
+ });
33421
+ const iconClass$1 = react.mergeStyles({
33422
+ fontSize: 18
33423
+ });
33424
+ const timerTextStyle = {
33425
+ root: {
33426
+ color: 'inherit',
33427
+ fontWeight: 400,
33428
+ fontSize: _pxToRem(14),
33429
+ lineHeight: _pxToRem(20),
33430
+ margin: 'auto'
33431
+ }
33432
+ };
33433
+
33308
33434
  // Copyright (c) Microsoft Corporation.
33309
33435
  // Licensed under the MIT License.
33310
33436
  var __awaiter$l = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
@@ -33421,7 +33547,16 @@ const CommonCallControlBar = (props) => {
33421
33547
  // only center control bar buttons based on parent container if there are enough space on the screen and not mobile
33422
33548
  () => (!props.mobileView && !isOutOfSpace ? (rtl ? wrapperDesktopRtlStyles : wrapperDesktopStyles) : {}), [props.mobileView, rtl, isOutOfSpace]);
33423
33549
  // only center control bar buttons based on parent container if there are enough space on the screen and not mobile
33424
- const controlBarDesktopContainerStyles = React.useMemo(() => (!props.mobileView && !isOutOfSpace ? { position: 'relative', minHeight: '4.5rem', width: '100%' } : {}), [props.mobileView, isOutOfSpace]);
33550
+ const controlBarDesktopContainerStyles = React.useMemo(() => !props.mobileView && !isOutOfSpace
33551
+ ? {
33552
+ position: 'relative',
33553
+ minHeight: '4.5rem',
33554
+ width: '100%',
33555
+ display: 'flex',
33556
+ alignItems: 'center',
33557
+ paddingLeft: '1rem'
33558
+ }
33559
+ : {}, [props.mobileView, isOutOfSpace]);
33425
33560
  const customButtons = React.useMemo(() => generateCustomCallControlBarButton(onFetchCustomButtonPropsTrampoline(options !== false ? options : undefined), options !== false ? options === null || options === void 0 ? void 0 : options.displayType : undefined), [options]);
33426
33561
  const capabilitiesSelector = useSelector$1(capabilitySelector);
33427
33562
  const callState = useSelector$1(callStatusSelector);
@@ -33530,7 +33665,10 @@ const CommonCallControlBar = (props) => {
33530
33665
  isDisabled$4(options.peopleButton), strings: peopleButtonStrings, styles: commonButtonStyles, componentRef: props.peopleButtonRef })), (_o = customButtons['secondary']) === null || _o === void 0 ? void 0 :
33531
33666
  _o.slice(0, CUSTOM_BUTTON_OPTIONS.MAX_SECONDARY_DESKTOP_CUSTOM_BUTTONS).map((CustomButton, i) => {
33532
33667
  return (React.createElement(CustomButton, { key: `secondary-custom-button-${i}`, styles: commonButtonStyles, showLabel: options.displayType !== 'compact' }));
33533
- }))))))));
33668
+ }))))),
33669
+ /* @conditional-compile-remove(breakout-rooms) */
33670
+ (breakoutRoomSettings === null || breakoutRoomSettings === void 0 ? void 0 : breakoutRoomSettings.roomEndTime) && !props.mobileView && !isOutOfSpace && (React.createElement(react.Stack.Item, null,
33671
+ React.createElement(Timer, { timeStampInfo: breakoutRoomSettings === null || breakoutRoomSettings === void 0 ? void 0 : breakoutRoomSettings.roomEndTime.toString() }))))));
33534
33672
  };
33535
33673
  const desktopButtonContainerStyle = {
33536
33674
  padding: '0.75rem',
@@ -33644,11 +33782,6 @@ const showDtmfDialerButton = (options) => {
33644
33782
  }
33645
33783
  };
33646
33784
 
33647
- // Copyright (c) Microsoft Corporation.
33648
- // Licensed under the MIT License.
33649
- Object.assign({}, react.AnimationStyles.fadeIn100);
33650
- Object.assign(Object.assign({}, react.AnimationStyles.fadeOut200), { display: 'none' });
33651
-
33652
33785
  // Copyright (c) Microsoft Corporation.
33653
33786
  // Licensed under the MIT License.
33654
33787
  /**
@@ -36160,6 +36293,24 @@ const getStopAllSpotlightCallbackWithPromptCallback = (stopAllSpotlight, setIsPr
36160
36293
  });
36161
36294
  };
36162
36295
 
36296
+ // Copyright (c) Microsoft Corporation.
36297
+ // Licensed under the MIT License.
36298
+ /* @conditional-compile-remove(breakout-rooms) */
36299
+ /* @conditional-compile-remove(breakout-rooms) */
36300
+ /**
36301
+ * @private
36302
+ */
36303
+ const useCompositeStringsForNotificationStackStrings = (locale) => {
36304
+ const breakoutRoomDisplayName = useSelector$1(getBreakoutRoomDisplayName);
36305
+ const notificationStackStrings = locale.component.strings.notificationStack;
36306
+ if (notificationStackStrings.breakoutRoomJoined &&
36307
+ locale.strings.call.breakoutRoomJoinedNotificationTitle &&
36308
+ breakoutRoomDisplayName) {
36309
+ notificationStackStrings.breakoutRoomJoined.title = locale.strings.call.breakoutRoomJoinedNotificationTitle.replace('{roomName}', breakoutRoomDisplayName);
36310
+ }
36311
+ return notificationStackStrings;
36312
+ };
36313
+
36163
36314
  // Copyright (c) Microsoft Corporation.
36164
36315
  // Licensed under the MIT License.
36165
36316
  /**
@@ -36369,24 +36520,19 @@ const CallArrangement = (props) => {
36369
36520
  togglePeoplePane();
36370
36521
  }, [togglePeoplePane]);
36371
36522
  const drawerContainerStylesValue = React.useMemo(() => drawerContainerStyles(DRAWER_Z_INDEX), []);
36372
- let filteredLatestErrors = props.errorBarProps !== false ? props.latestErrors : [];
36373
- /* @conditional-compile-remove(notifications) */
36374
36523
  let filteredLatestErrorNotifications = props.showErrorNotifications
36375
36524
  ? props.latestErrors
36376
36525
  : [];
36377
36526
  const isCameraOn = useSelector$1(localVideoSelector).isAvailable;
36378
36527
  // TODO: move this logic to the error bar selector once role is plumbed from the headless SDK
36379
- if (role === 'Consumer' &&
36380
- (props.errorBarProps || /* @conditional-compile-remove(notifications) */ props.showErrorNotifications)) {
36381
- filteredLatestErrors = filteredLatestErrors.filter((e) => e.type !== 'callCameraAccessDenied' && e.type !== 'callCameraAccessDeniedSafari');
36382
- /* @conditional-compile-remove(notifications) */
36528
+ if (role === 'Consumer' && (props.errorBarProps || props.showErrorNotifications)) {
36529
+ filteredLatestErrorNotifications = filteredLatestErrorNotifications.filter((e) => e.type !== 'callCameraAccessDenied' && e.type !== 'callCameraAccessDeniedSafari');
36530
+ }
36531
+ if (props.doNotShowCameraAccessNotifications) {
36383
36532
  filteredLatestErrorNotifications = filteredLatestErrorNotifications.filter((e) => e.type !== 'callCameraAccessDenied' && e.type !== 'callCameraAccessDeniedSafari');
36384
36533
  }
36385
36534
  const isVideoPaneOpen = useIsParticularSidePaneOpen(VIDEO_EFFECTS_SIDE_PANE_ID);
36386
- if ((isVideoPaneOpen || !isCameraOn) &&
36387
- (props.errorBarProps || /* @conditional-compile-remove(notifications) */ props.showErrorNotifications)) {
36388
- filteredLatestErrors = filteredLatestErrors.filter((e) => e.type !== 'unableToStartVideoEffect');
36389
- /* @conditional-compile-remove(notifications) */
36535
+ if ((isVideoPaneOpen || !isCameraOn) && (props.errorBarProps || props.showErrorNotifications)) {
36390
36536
  filteredLatestErrorNotifications = filteredLatestErrorNotifications.filter((e) => e.type !== 'unableToStartVideoEffect');
36391
36537
  }
36392
36538
  /* @conditional-compile-remove(acs-close-captions) */
@@ -36401,7 +36547,6 @@ const CallArrangement = (props) => {
36401
36547
  const isCaptionsOn = useSelector$1(getCaptionsStatus);
36402
36548
  const minMaxDragPosition = useMinMaxDragPosition(props.modalLayerHostId);
36403
36549
  const pipStyles = React.useMemo(() => getPipStyles(theme), [theme]);
36404
- /* @conditional-compile-remove(notifications) */
36405
36550
  if (isTeamsMeeting) {
36406
36551
  filteredLatestErrorNotifications
36407
36552
  .filter((notification) => notification.type === 'teamsMeetingCallNetworkQualityLow')
@@ -36416,19 +36561,8 @@ const CallArrangement = (props) => {
36416
36561
  const filteredCapabilitesChangedNotifications = props.mobileView
36417
36562
  ? (_e = props.capabilitiesChangedNotificationBarProps) === null || _e === void 0 ? void 0 : _e.capabilitiesChangedNotifications.filter((notification) => notification.capabilityName !== 'shareScreen')
36418
36563
  : (_f = props.capabilitiesChangedNotificationBarProps) === null || _f === void 0 ? void 0 : _f.capabilitiesChangedNotifications;
36419
- const errorNotificationTrampoline = () => {
36420
- /* @conditional-compile-remove(notifications) */
36421
- return (React.createElement(React.Fragment, null, props.showErrorNotifications && (React.createElement(react.Stack, { styles: notificationStackStyles, horizontalAlign: "center", verticalAlign: "center" },
36422
- React.createElement(NotificationStack, { onDismissNotification: props.onDismissError, activeNotifications: filteredLatestErrorNotifications })))));
36423
- };
36424
- const mutedNotificationTrampoline = () => {
36425
- /* @conditional-compile-remove(notifications) */
36426
- return React.createElement(React.Fragment, null);
36427
- };
36428
- const complianceBannerTrampoline = () => {
36429
- /* @conditional-compile-remove(notifications) */
36430
- return React.createElement(React.Fragment, null);
36431
- };
36564
+ /* @conditional-compile-remove(breakout-rooms) */
36565
+ const notificationStackStrings = useCompositeStringsForNotificationStackStrings(locale);
36432
36566
  return (React.createElement("div", { ref: containerRef, className: react.mergeStyles(containerDivStyles), id: props.id },
36433
36567
  React.createElement(react.Stack, { verticalFill: true, horizontalAlign: "stretch", className: containerClassName, "data-ui-id": props.dataUiId },
36434
36568
  React.createElement(react.Stack, { reversed: true, horizontal: verticalControlBar, grow: true, styles: callArrangementContainerStyles(verticalControlBar) },
@@ -36459,14 +36593,15 @@ const CallArrangement = (props) => {
36459
36593
  React.createElement(react.Stack.Item, { styles: callGalleryStyles, grow: true },
36460
36594
  React.createElement(react.Stack, { verticalFill: true, styles: mediaGalleryContainerStyles$1 },
36461
36595
  React.createElement(react.Stack.Item, { styles: notificationsContainerStyles },
36462
- complianceBannerTrampoline(),
36463
- errorNotificationTrampoline(),
36464
- /* @conditional-compile-remove(notifications) */ props.latestNotifications && (React.createElement(react.Stack, { styles: notificationStackStyles, horizontalAlign: "center", verticalAlign: "center" },
36465
- React.createElement(NotificationStack, { activeNotifications: props.latestNotifications, onDismissNotification: props.onDismissNotification }))),
36596
+ props.showErrorNotifications && (React.createElement(react.Stack, { styles: notificationStackStyles, horizontalAlign: "center", verticalAlign: "center" },
36597
+ React.createElement(NotificationStack, { onDismissNotification: props.onDismissError, activeNotifications: filteredLatestErrorNotifications }))),
36598
+ props.latestNotifications && (React.createElement(react.Stack, { styles: notificationStackStyles, horizontalAlign: "center", verticalAlign: "center" },
36599
+ React.createElement(NotificationStack, { activeNotifications: props.latestNotifications, onDismissNotification: props.onDismissNotification,
36600
+ /* @conditional-compile-remove(breakout-rooms) */
36601
+ strings: notificationStackStrings }))),
36466
36602
  props.capabilitiesChangedNotificationBarProps &&
36467
36603
  props.capabilitiesChangedNotificationBarProps.capabilitiesChangedNotifications.length > 0 && (React.createElement(react.Stack, { styles: bannerNotificationStyles },
36468
- React.createElement(CapabilitiesChangedNotificationBar, Object.assign({}, props.capabilitiesChangedNotificationBarProps, { capabilitiesChangedNotifications: filteredCapabilitesChangedNotifications !== null && filteredCapabilitesChangedNotifications !== void 0 ? filteredCapabilitesChangedNotifications : [] })))),
36469
- mutedNotificationTrampoline()),
36604
+ React.createElement(CapabilitiesChangedNotificationBar, Object.assign({}, props.capabilitiesChangedNotificationBarProps, { capabilitiesChangedNotifications: filteredCapabilitesChangedNotifications !== null && filteredCapabilitesChangedNotifications !== void 0 ? filteredCapabilitesChangedNotifications : [] }))))),
36470
36605
  renderGallery && props.onRenderGalleryContent && props.onRenderGalleryContent(),
36471
36606
  /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */ !isInLocalHold && (React.createElement(CaptionsBanner, { isMobile: props.mobileView, onFetchAvatarPersonaData: props.onFetchAvatarPersonaData, useTeamsCaptions: useTeamsCaptions }))))),
36472
36607
  React.createElement(SidePane, { mobileView: props.mobileView, maxWidth: isVideoPaneOpen ? `${VIDEO_EFFECTS_SIDE_PANE_WIDTH_REM}rem` : undefined, minWidth: isVideoPaneOpen ? `${VIDEO_EFFECTS_SIDE_PANE_WIDTH_REM}rem` : undefined, updateSidePaneRenderer: props.updateSidePaneRenderer, onPeopleButtonClicked: props.mobileView && !shouldShowPeopleTabHeaderButton(props.callControlProps.options)
@@ -36860,36 +36995,6 @@ const networkReconnectTileSelector = reselect__namespace.createSelector([getUser
36860
36995
  };
36861
36996
  });
36862
36997
 
36863
- // Copyright (c) Microsoft Corporation.
36864
- // Licensed under the MIT License.
36865
- /**
36866
- * @internal
36867
- */
36868
- const getMinutes$1 = (time) => {
36869
- return Math.floor(getSeconds$1(time) / 60);
36870
- };
36871
- /**
36872
- * @internal
36873
- */
36874
- const getSeconds$1 = (time) => {
36875
- return Math.floor(time / 1000);
36876
- };
36877
- /**
36878
- * @internal
36879
- */
36880
- const getHours$1 = (time) => {
36881
- return Math.floor(getMinutes$1(time) / 60);
36882
- };
36883
- /**
36884
- * @internal
36885
- */
36886
- const getReadableTime$1 = (time) => {
36887
- const hours = getHours$1(time);
36888
- const readableMinutes = ('0' + (getMinutes$1(time) % 60)).slice(-2);
36889
- const readableSeconds = ('0' + (getSeconds$1(time) % 60)).slice(-2);
36890
- return `${hours > 0 ? hours + ':' : ''}${readableMinutes}:${readableSeconds}`;
36891
- };
36892
-
36893
36998
  // Copyright (c) Microsoft Corporation.
36894
36999
  // Licensed under the MIT License.
36895
37000
  /**
@@ -36975,12 +37080,8 @@ const DtmfDialpadPage = (props) => {
36975
37080
  * @private
36976
37081
  */
36977
37082
  const CallPage = (props) => {
36978
- var _a, _b;
36979
- const { callInvitationURL, onFetchAvatarPersonaData, onFetchParticipantMenuItems, options, mobileView, galleryLayout = 'floatingLocalVideo', onUserSetGalleryLayoutChange, userSetOverflowGalleryPosition = 'Responsive', onSetUserSetOverflowGalleryPosition, onCloseChatPane, pinnedParticipants = [], setPinnedParticipants, compositeAudioContext, disableAutoShowDtmfDialer = false,
36980
- /* @conditional-compile-remove(notifications) */
36981
- latestNotifications,
36982
- /* @conditional-compile-remove(notifications) */
36983
- onDismissNotification } = props;
37083
+ var _a, _b, _c, _d;
37084
+ const { callInvitationURL, onFetchAvatarPersonaData, onFetchParticipantMenuItems, options, mobileView, galleryLayout = 'floatingLocalVideo', onUserSetGalleryLayoutChange, userSetOverflowGalleryPosition = 'Responsive', onSetUserSetOverflowGalleryPosition, onCloseChatPane, pinnedParticipants = [], setPinnedParticipants, compositeAudioContext, disableAutoShowDtmfDialer = false, latestNotifications, onDismissNotification } = props;
36984
37085
  // To use useProps to get these states, we need to create another file wrapping Call,
36985
37086
  // It seems unnecessary in this case, so we get the updated states using this approach.
36986
37087
  const { callStatus } = useSelector$1(callStatusSelector);
@@ -37011,19 +37112,15 @@ const CallPage = (props) => {
37011
37112
  }
37012
37113
  };
37013
37114
  return (React.createElement(React.Fragment, null,
37014
- React.createElement(CallArrangement, { id: drawerMenuHostId, complianceBannerProps: Object.assign(Object.assign({}, complianceBannerProps), { strings }), errorBarProps: (options === null || options === void 0 ? void 0 : options.errorBar) !== false && errorBarProps,
37015
- /* @conditional-compile-remove(notifications) */
37016
- showErrorNotifications: (_a = options === null || options === void 0 ? void 0 : options.errorBar) !== null && _a !== void 0 ? _a : true, mutedNotificationProps: mutedNotificationProps, callControlProps: {
37115
+ React.createElement(CallArrangement, { id: drawerMenuHostId, complianceBannerProps: Object.assign(Object.assign({}, complianceBannerProps), { strings }), errorBarProps: (options === null || options === void 0 ? void 0 : options.errorBar) !== false && errorBarProps, showErrorNotifications: (_a = options === null || options === void 0 ? void 0 : options.errorBar) !== null && _a !== void 0 ? _a : true, mutedNotificationProps: mutedNotificationProps, callControlProps: {
37017
37116
  callInvitationURL: callInvitationURL,
37018
37117
  onFetchParticipantMenuItems: onFetchParticipantMenuItems,
37019
37118
  options: callControlOptions,
37020
37119
  increaseFlyoutItemSize: mobileView
37021
37120
  }, onFetchAvatarPersonaData: onFetchAvatarPersonaData, mobileView: mobileView, modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => _isInCall(callStatus) ? (isNetworkHealthy(networkReconnectTileProps.networkReconnectValue) ? (onRenderGalleryContentTrampoline()) : (React.createElement(NetworkReconnectTile, Object.assign({}, networkReconnectTileProps, {
37022
- /* /* @conditional-compile-remove(teams-meeting-conference) */ isMobile: mobileView })))) : (React.createElement(React.Fragment, null)), updateSidePaneRenderer: props.updateSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, onCloseChatPane: onCloseChatPane, dataUiId: 'call-page', latestErrors: props.latestErrors,
37023
- /* @conditional-compile-remove(notifications) */
37024
- latestNotifications: latestNotifications, onDismissError: props.onDismissError,
37025
- /* @conditional-compile-remove(notifications) */
37026
- onDismissNotification: onDismissNotification, onUserSetOverflowGalleryPositionChange: onSetUserSetOverflowGalleryPosition, onUserSetGalleryLayoutChange: onUserSetGalleryLayoutChange, userSetGalleryLayout: galleryLayout, capabilitiesChangedNotificationBarProps: props.capabilitiesChangedNotificationBarProps, onSetDialpadPage: () => setDtmfDialerPresent(!dtmfDialerPresent), dtmfDialerPresent: dtmfDialerPresent, setIsPromptOpen: setIsPromptOpen, setPromptProps: setPromptProps, hideSpotlightButtons: (_b = options === null || options === void 0 ? void 0 : options.spotlight) === null || _b === void 0 ? void 0 : _b.hideSpotlightButtons, pinnedParticipants: pinnedParticipantsChecked, setPinnedParticipants: setPinnedParticipants }),
37121
+ /* /* @conditional-compile-remove(teams-meeting-conference) */ isMobile: mobileView })))) : (React.createElement(React.Fragment, null)), updateSidePaneRenderer: props.updateSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, onCloseChatPane: onCloseChatPane, dataUiId: 'call-page', latestErrors: props.latestErrors, latestNotifications: latestNotifications, onDismissError: props.onDismissError, onDismissNotification: onDismissNotification, onUserSetOverflowGalleryPositionChange: onSetUserSetOverflowGalleryPosition, onUserSetGalleryLayoutChange: onUserSetGalleryLayoutChange, userSetGalleryLayout: galleryLayout, capabilitiesChangedNotificationBarProps: props.capabilitiesChangedNotificationBarProps, onSetDialpadPage: () => setDtmfDialerPresent(!dtmfDialerPresent), dtmfDialerPresent: dtmfDialerPresent, setIsPromptOpen: setIsPromptOpen, setPromptProps: setPromptProps, hideSpotlightButtons: (_b = options === null || options === void 0 ? void 0 : options.spotlight) === null || _b === void 0 ? void 0 : _b.hideSpotlightButtons, pinnedParticipants: pinnedParticipantsChecked, setPinnedParticipants: setPinnedParticipants,
37122
+ /* @conditional-compile-remove(call-readiness) */
37123
+ doNotShowCameraAccessNotifications: ((_d = (_c = props.options) === null || _c === void 0 ? void 0 : _c.deviceChecks) === null || _d === void 0 ? void 0 : _d.camera) === 'doNotPrompt' }),
37027
37124
  React.createElement(Prompt, Object.assign({ isOpen: isPromptOpen, onDismiss: () => setIsPromptOpen(false) }, promptProps))));
37028
37125
  };
37029
37126
  /**
@@ -37840,7 +37937,10 @@ const CallReadinessModal = (props) => {
37840
37937
  // On Safari browser with 2 options: don't allow/never for this website again, when don't allow is clicked, permissionAPI returns prompt and PermissionGranted from calling sdk returns false (the right value)
37841
37938
  const videoState = permissionsState.camera;
37842
37939
  const audioState = permissionsState.microphone;
37843
- const showModal = videoState === 'denied' || videoState === 'prompt' || audioState === 'denied' || audioState === 'prompt';
37940
+ const showModal = (!props.doNotPromptCamera && videoState === 'denied') ||
37941
+ (!props.doNotPromptCamera && videoState === 'prompt') ||
37942
+ audioState === 'denied' ||
37943
+ audioState === 'prompt';
37844
37944
  /* @conditional-compile-remove(unsupported-browser) */
37845
37945
  const isSafari = _isSafari(environmentInfo);
37846
37946
  const modal = !showModal
@@ -38231,7 +38331,7 @@ const ConfigurationPage = (props) => {
38231
38331
  // show the following screen if permission API is availible (not unsupported) and videoState, audioState is assigned values
38232
38332
  videoState && videoState !== 'unsupported' && audioState && audioState !== 'unsupported' && (React.createElement(CallReadinessModal, { modalLayerHostId: modalLayerHostId, mobileView: mobileView,
38233
38333
  /* @conditional-compile-remove(unsupported-browser) */
38234
- environmentInfo: environmentInfo, permissionsState: permissionsState, isPermissionsModalDismissed: isPermissionsModalDismissed, setIsPermissionsModalDismissed: setIsPermissionsModalDismissed, onPermissionsTroubleshootingClick: onPermissionsTroubleshootingClick })),
38334
+ environmentInfo: environmentInfo, permissionsState: permissionsState, isPermissionsModalDismissed: isPermissionsModalDismissed, setIsPermissionsModalDismissed: setIsPermissionsModalDismissed, onPermissionsTroubleshootingClick: onPermissionsTroubleshootingClick, doNotPromptCamera: (deviceChecks === null || deviceChecks === void 0 ? void 0 : deviceChecks.camera) === 'doNotPrompt' })),
38235
38335
  /* @conditional-compile-remove(call-readiness) */
38236
38336
  // show the following screen if permission API is not availible (unsupported) and videoState, audioState is assigned values
38237
38337
  videoState && audioState && (videoState === 'unsupported' || audioState === 'unsupported') && (React.createElement(CallReadinessModalFallBack
@@ -38417,7 +38517,7 @@ const LobbyTile = (props) => {
38417
38517
  * @private
38418
38518
  */
38419
38519
  const LobbyPage = (props) => {
38420
- var _a, _b, _c, _d, _e, _f;
38520
+ var _a, _b, _c, _d, _e, _f, _g, _h;
38421
38521
  const errorBarProps = usePropsFor$1(ErrorBar);
38422
38522
  const lobbyProps = useSelector$1(lobbySelector);
38423
38523
  const strings = useLocale().strings.call;
@@ -38429,16 +38529,12 @@ const LobbyPage = (props) => {
38429
38529
  ? reduceCallControlsForMobile((_b = props.options) === null || _b === void 0 ? void 0 : _b.callControls)
38430
38530
  : (_c = props.options) === null || _c === void 0 ? void 0 : _c.callControls;
38431
38531
  callControlOptions = disableCallControls(callControlOptions, ['screenShareButton', 'participantsButton']);
38432
- return (React.createElement(CallArrangement, { complianceBannerProps: { strings }, errorBarProps: ((_d = props.options) === null || _d === void 0 ? void 0 : _d.errorBar) !== false && errorBarProps,
38433
- /* @conditional-compile-remove(notifications) */
38434
- showErrorNotifications: (_f = (_e = props.options) === null || _e === void 0 ? void 0 : _e.errorBar) !== null && _f !== void 0 ? _f : true, callControlProps: {
38532
+ return (React.createElement(CallArrangement, { complianceBannerProps: { strings }, errorBarProps: ((_d = props.options) === null || _d === void 0 ? void 0 : _d.errorBar) !== false && errorBarProps, showErrorNotifications: (_f = (_e = props.options) === null || _e === void 0 ? void 0 : _e.errorBar) !== null && _f !== void 0 ? _f : true, callControlProps: {
38435
38533
  options: callControlOptions,
38436
38534
  increaseFlyoutItemSize: props.mobileView
38437
- }, mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => (React.createElement(LobbyTile, Object.assign({}, lobbyProps, { showLocalVideoCameraCycleButton: props.mobileView, overlayProps: overlayProps(strings, inLobby, Object.values(participants)) }))), dataUiId: 'lobby-page', updateSidePaneRenderer: props.updateSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, latestErrors: props.latestErrors, onDismissError: props.onDismissError,
38438
- /* @conditional-compile-remove(notifications) */
38439
- latestNotifications: props.latestNotifications,
38440
- /* @conditional-compile-remove(notifications) */
38441
- onDismissNotification: props.onDismissNotification }));
38535
+ }, mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => (React.createElement(LobbyTile, Object.assign({}, lobbyProps, { showLocalVideoCameraCycleButton: props.mobileView, overlayProps: overlayProps(strings, inLobby, Object.values(participants)) }))), dataUiId: 'lobby-page', updateSidePaneRenderer: props.updateSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, latestErrors: props.latestErrors, onDismissError: props.onDismissError, latestNotifications: props.latestNotifications, onDismissNotification: props.onDismissNotification,
38536
+ /* @conditional-compile-remove(call-readiness) */
38537
+ doNotShowCameraAccessNotifications: ((_h = (_g = props.options) === null || _g === void 0 ? void 0 : _g.deviceChecks) === null || _h === void 0 ? void 0 : _h.camera) === 'doNotPrompt' }));
38442
38538
  };
38443
38539
  const overlayProps = (strings, inLobby, remoteParticipants) => {
38444
38540
  /**
@@ -38547,7 +38643,7 @@ const statusTextStyles = { textAlign: 'center', fontSize: '1rem' };
38547
38643
  * @private
38548
38644
  */
38549
38645
  const TransferPage = (props) => {
38550
- var _a, _b, _c, _d, _e, _f, _g;
38646
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
38551
38647
  const errorBarProps = usePropsFor$1(ErrorBar);
38552
38648
  const strings = useLocale().strings.call;
38553
38649
  const remoteParticipants = useSelector$1(getRemoteParticipants);
@@ -38581,18 +38677,14 @@ const TransferPage = (props) => {
38581
38677
  React.createElement(Announcer$1, { announcementString: announcerString, ariaLive: "polite" }),
38582
38678
  React.createElement(CallArrangement, { complianceBannerProps: { strings },
38583
38679
  // Ignore errors from before current call. This avoids old errors from showing up when a user re-joins a call.
38584
- errorBarProps: ((_e = props.options) === null || _e === void 0 ? void 0 : _e.errorBar) !== false && errorBarProps,
38585
- /* @conditional-compile-remove(notifications) */
38586
- showErrorNotifications: (_g = (_f = props.options) === null || _f === void 0 ? void 0 : _f.errorBar) !== null && _g !== void 0 ? _g : true, callControlProps: {
38680
+ errorBarProps: ((_e = props.options) === null || _e === void 0 ? void 0 : _e.errorBar) !== false && errorBarProps, showErrorNotifications: (_g = (_f = props.options) === null || _f === void 0 ? void 0 : _f.errorBar) !== null && _g !== void 0 ? _g : true, callControlProps: {
38587
38681
  options: callControlOptions,
38588
38682
  increaseFlyoutItemSize: props.mobileView
38589
38683
  }, mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => (React.createElement(TransferTile, { userId: transferTileParticipant ? toFlatCommunicationIdentifier(transferTileParticipant === null || transferTileParticipant === void 0 ? void 0 : transferTileParticipant.identifier) : undefined, displayName: transferParticipantDisplayName, initialsName: transferParticipantDisplayName, statusText: pageSubject === 'transferTarget'
38590
38684
  ? strings.transferPageTransferTargetText
38591
- : strings.transferPageTransferorText, onFetchAvatarPersonaData: props.onFetchAvatarPersonaData })), dataUiId: 'transfer-page', updateSidePaneRenderer: props.updateSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, latestErrors: props.latestErrors, onDismissError: props.onDismissError,
38592
- /* @conditional-compile-remove(notifications) */
38593
- onDismissNotification: props.onDismissNotification,
38594
- /* @conditional-compile-remove(notifications) */
38595
- latestNotifications: props.latestNotifications })));
38685
+ : strings.transferPageTransferorText, onFetchAvatarPersonaData: props.onFetchAvatarPersonaData })), dataUiId: 'transfer-page', updateSidePaneRenderer: props.updateSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, latestErrors: props.latestErrors, onDismissError: props.onDismissError, onDismissNotification: props.onDismissNotification, latestNotifications: props.latestNotifications,
38686
+ /* @conditional-compile-remove(call-readiness) */
38687
+ doNotShowCameraAccessNotifications: ((_j = (_h = props.options) === null || _h === void 0 ? void 0 : _h.deviceChecks) === null || _j === void 0 ? void 0 : _j.camera) === 'doNotPrompt' })));
38596
38688
  };
38597
38689
  const TransferTile = (props) => {
38598
38690
  const { displayName, initialsName, userId, onFetchAvatarPersonaData, statusText } = props;
@@ -38795,7 +38887,7 @@ const stringsTrampoline = (locale) => {
38795
38887
  * @beta
38796
38888
  */
38797
38889
  const HoldPage = (props) => {
38798
- var _a, _b, _c, _d, _e;
38890
+ var _a, _b, _c, _d, _e, _f, _g;
38799
38891
  const errorBarProps = usePropsFor$1(ErrorBar);
38800
38892
  const strings = useLocale().strings.call;
38801
38893
  let callControlOptions = props.mobileView
@@ -38810,16 +38902,12 @@ const HoldPage = (props) => {
38810
38902
  /* @conditional-compile-remove(one-to-n-calling) */
38811
38903
  'holdButton'
38812
38904
  ]);
38813
- return (React.createElement(CallArrangement, { complianceBannerProps: { strings }, errorBarProps: ((_c = props.options) === null || _c === void 0 ? void 0 : _c.errorBar) !== false && errorBarProps,
38814
- /* @conditional-compile-remove(notifications) */
38815
- showErrorNotifications: (_e = (_d = props.options) === null || _d === void 0 ? void 0 : _d.errorBar) !== null && _e !== void 0 ? _e : true, callControlProps: {
38905
+ return (React.createElement(CallArrangement, { complianceBannerProps: { strings }, errorBarProps: ((_c = props.options) === null || _c === void 0 ? void 0 : _c.errorBar) !== false && errorBarProps, showErrorNotifications: (_e = (_d = props.options) === null || _d === void 0 ? void 0 : _d.errorBar) !== null && _e !== void 0 ? _e : true, callControlProps: {
38816
38906
  options: callControlOptions,
38817
38907
  increaseFlyoutItemSize: props.mobileView
38818
- }, mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => React.createElement(HoldPane, null), dataUiId: 'hold-page', updateSidePaneRenderer: props.updateSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, latestErrors: props.latestErrors,
38819
- /* @conditional-compile-remove(notifications) */
38820
- latestNotifications: props.latestNotifications, onDismissError: props.onDismissError,
38821
- /* @conditional-compile-remove(notifications) */
38822
- onDismissNotification: props.onDismissNotification }));
38908
+ }, mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => React.createElement(HoldPane, null), dataUiId: 'hold-page', updateSidePaneRenderer: props.updateSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, latestErrors: props.latestErrors, latestNotifications: props.latestNotifications, onDismissError: props.onDismissError, onDismissNotification: props.onDismissNotification,
38909
+ /* @conditional-compile-remove(call-readiness) */
38910
+ doNotShowCameraAccessNotifications: ((_g = (_f = props.options) === null || _f === void 0 ? void 0 : _f.deviceChecks) === null || _g === void 0 ? void 0 : _g.camera) === 'doNotPrompt' }));
38823
38911
  };
38824
38912
 
38825
38913
  // Copyright (c) Microsoft Corporation.
@@ -39264,17 +39352,22 @@ const isShowing = (overrideSidePane) => {
39264
39352
  return !!(overrideSidePane === null || overrideSidePane === void 0 ? void 0 : overrideSidePane.isActive);
39265
39353
  };
39266
39354
  const MainScreen = (props) => {
39267
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
39355
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
39268
39356
  const adapter = useAdapter();
39269
39357
  const { camerasCount, microphonesCount } = useSelector$1(deviceCountSelector);
39270
39358
  const hasCameras = camerasCount > 0;
39271
39359
  const hasMicrophones = microphonesCount > 0;
39272
39360
  React.useEffect(() => {
39273
39361
  (() => __awaiter$b(void 0, void 0, void 0, function* () {
39274
- var _a;
39362
+ var _a, _b, _c, _d, _e;
39275
39363
  const constrain = getQueryOptions({
39276
39364
  role: (_a = adapter.getState().call) === null || _a === void 0 ? void 0 : _a.role
39277
39365
  });
39366
+ /* @conditional-compile-remove(call-readiness) */
39367
+ {
39368
+ constrain.audio = ((_c = (_b = props.options) === null || _b === void 0 ? void 0 : _b.deviceChecks) === null || _c === void 0 ? void 0 : _c.microphone) === 'doNotPrompt' ? false : constrain.audio;
39369
+ constrain.video = ((_e = (_d = props.options) === null || _d === void 0 ? void 0 : _d.deviceChecks) === null || _e === void 0 ? void 0 : _e.camera) === 'doNotPrompt' ? false : constrain.video;
39370
+ }
39278
39371
  yield adapter.askDevicePermission(constrain);
39279
39372
  adapter.queryCameras();
39280
39373
  adapter.queryMicrophones();
@@ -39282,6 +39375,8 @@ const MainScreen = (props) => {
39282
39375
  }))();
39283
39376
  }, [
39284
39377
  adapter,
39378
+ /* @conditional-compile-remove(call-readiness) */
39379
+ (_a = props.options) === null || _a === void 0 ? void 0 : _a.deviceChecks,
39285
39380
  // Ensure we re-ask for permissions if the number of devices goes from 0 -> n during a call
39286
39381
  // as we cannot request permissions when there are no devices.
39287
39382
  hasCameras,
@@ -39292,7 +39387,7 @@ const MainScreen = (props) => {
39292
39387
  const endedCall = useSelector$1(getEndedCall);
39293
39388
  const [sidePaneRenderer, setSidePaneRenderer] = React.useState();
39294
39389
  const [injectedSidePaneProps, setInjectedSidePaneProps] = React.useState();
39295
- const [userSetGalleryLayout, setUserSetGalleryLayout] = React.useState((_c = (_b = (_a = props.options) === null || _a === void 0 ? void 0 : _a.galleryOptions) === null || _b === void 0 ? void 0 : _b.layout) !== null && _c !== void 0 ? _c : 'floatingLocalVideo');
39390
+ const [userSetGalleryLayout, setUserSetGalleryLayout] = React.useState((_d = (_c = (_b = props.options) === null || _b === void 0 ? void 0 : _b.galleryOptions) === null || _c === void 0 ? void 0 : _c.layout) !== null && _d !== void 0 ? _d : 'floatingLocalVideo');
39296
39391
  const [userSetOverflowGalleryPosition, setUserSetOverflowGalleryPosition] = React.useState('Responsive');
39297
39392
  const overridePropsRef = React.useRef(props.overrideSidePane);
39298
39393
  React.useEffect(() => {
@@ -39325,13 +39420,9 @@ const MainScreen = (props) => {
39325
39420
  // This works by tracking the most recent timestamp of any active error type.
39326
39421
  // And then tracking when that error type was last dismissed.
39327
39422
  const activeErrors = usePropsFor$1(ErrorBar).activeErrorMessages;
39328
- /* @conditional-compile-remove(notifications) */
39329
39423
  const activeInCallErrors = usePropsFor$1(NotificationStack).activeErrorMessages;
39330
- /* @conditional-compile-remove(notifications) */
39331
39424
  const activeNotifications = usePropsFor$1(NotificationStack).activeNotifications;
39332
- /* @conditional-compile-remove(notifications) */
39333
39425
  const complianceProps = useSelector$1(complianceBannerSelector);
39334
- /* @conditional-compile-remove(notifications) */
39335
39426
  const cachedProps = React.useRef({
39336
39427
  latestBooleanState: {
39337
39428
  callTranscribeState: false,
@@ -39343,11 +39434,9 @@ const MainScreen = (props) => {
39343
39434
  },
39344
39435
  lastUpdated: Date.now()
39345
39436
  });
39346
- /* @conditional-compile-remove(notifications) */
39347
39437
  const complianceNotification = React.useMemo(() => {
39348
39438
  return computeComplianceNotification(complianceProps, cachedProps);
39349
39439
  }, [complianceProps, cachedProps]);
39350
- /* @conditional-compile-remove(notifications) */
39351
39440
  React.useEffect(() => {
39352
39441
  if (complianceNotification) {
39353
39442
  activeNotifications.forEach((notification, index) => {
@@ -39369,28 +39458,21 @@ const MainScreen = (props) => {
39369
39458
  setTrackedNotifications((prev) => updateTrackedNotificationsWithActiveNotifications(prev, activeNotifications));
39370
39459
  }, [complianceNotification, activeNotifications]);
39371
39460
  const [trackedErrors, setTrackedErrors] = React.useState({});
39372
- /* @conditional-compile-remove(notifications) */
39373
39461
  const [trackedInCallErrors, setTrackedInCallErrors] = React.useState({});
39374
- /* @conditional-compile-remove(notifications) */
39375
39462
  const [trackedNotifications, setTrackedNotifications] = React.useState({});
39376
39463
  React.useEffect(() => {
39377
39464
  setTrackedErrors((prev) => updateTrackedNotificationsWithActiveNotifications(prev, activeErrors));
39378
- /* @conditional-compile-remove(notifications) */
39379
39465
  setTrackedInCallErrors((prev) => updateTrackedNotificationsWithActiveNotifications(prev, activeInCallErrors));
39380
- }, [activeErrors, /* @conditional-compile-remove(notifications) */ activeInCallErrors]);
39466
+ }, [activeErrors, activeInCallErrors]);
39381
39467
  const onDismissError = React.useCallback((error) => {
39382
39468
  setTrackedErrors((prev) => trackNotificationAsDismissed(error.type, prev));
39383
- /* @conditional-compile-remove(notifications) */
39384
39469
  setTrackedInCallErrors((prev) => trackNotificationAsDismissed(error.type, prev));
39385
39470
  }, []);
39386
- /* @conditional-compile-remove(notifications) */
39387
39471
  const onDismissNotification = React.useCallback((notification) => {
39388
39472
  setTrackedNotifications((prev) => trackNotificationAsDismissed(notification.type, prev));
39389
39473
  }, []);
39390
39474
  const latestErrors = React.useMemo(() => filterLatestNotifications(activeErrors, trackedErrors), [activeErrors, trackedErrors]);
39391
- /* @conditional-compile-remove(notifications) */
39392
39475
  const latestInCallErrors = React.useMemo(() => filterLatestNotifications(activeInCallErrors, trackedInCallErrors), [activeInCallErrors, trackedInCallErrors]);
39393
- /* @conditional-compile-remove(notifications) */
39394
39476
  const latestNotifications = React.useMemo(() => {
39395
39477
  const result = filterLatestNotifications(activeNotifications, trackedNotifications);
39396
39478
  // sort notifications by timestamp from earliest to latest
@@ -39405,10 +39487,6 @@ const MainScreen = (props) => {
39405
39487
  const leavePageStyle = React.useMemo(() => leavingPageStyle(palette), [palette]);
39406
39488
  let pageElement;
39407
39489
  const [pinnedParticipants, setPinnedParticipants] = React.useState([]);
39408
- const getLatestErrorsTrampoline = () => {
39409
- /* @conditional-compile-remove(notifications) */
39410
- return latestInCallErrors;
39411
- };
39412
39490
  switch (page) {
39413
39491
  case 'configuration':
39414
39492
  pageElement = (React.createElement(ConfigurationPage, { mobileView: props.mobileView, startCallHandler: () => {
@@ -39426,11 +39504,11 @@ const MainScreen = (props) => {
39426
39504
  }
39427
39505
  }, updateSidePaneRenderer: setSidePaneRenderer, latestErrors: latestErrors, onDismissError: onDismissError, modalLayerHostId: props.modalLayerHostId,
39428
39506
  /* @conditional-compile-remove(call-readiness) */
39429
- deviceChecks: (_d = props.options) === null || _d === void 0 ? void 0 : _d.deviceChecks,
39507
+ deviceChecks: (_e = props.options) === null || _e === void 0 ? void 0 : _e.deviceChecks,
39430
39508
  /* @conditional-compile-remove(call-readiness) */
39431
- onPermissionsTroubleshootingClick: (_e = props.options) === null || _e === void 0 ? void 0 : _e.onPermissionsTroubleshootingClick,
39509
+ onPermissionsTroubleshootingClick: (_f = props.options) === null || _f === void 0 ? void 0 : _f.onPermissionsTroubleshootingClick,
39432
39510
  /* @conditional-compile-remove(call-readiness) */
39433
- onNetworkingTroubleShootingClick: (_f = props.options) === null || _f === void 0 ? void 0 : _f.onNetworkingTroubleShootingClick, capabilitiesChangedNotificationBarProps: capabilitiesChangedNotificationBarProps, logo: (_h = (_g = props.options) === null || _g === void 0 ? void 0 : _g.branding) === null || _h === void 0 ? void 0 : _h.logo, backgroundImage: (_k = (_j = props.options) === null || _j === void 0 ? void 0 : _j.branding) === null || _k === void 0 ? void 0 : _k.backgroundImage }));
39511
+ onNetworkingTroubleShootingClick: (_g = props.options) === null || _g === void 0 ? void 0 : _g.onNetworkingTroubleShootingClick, capabilitiesChangedNotificationBarProps: capabilitiesChangedNotificationBarProps, logo: (_j = (_h = props.options) === null || _h === void 0 ? void 0 : _h.branding) === null || _j === void 0 ? void 0 : _j.logo, backgroundImage: (_l = (_k = props.options) === null || _k === void 0 ? void 0 : _k.branding) === null || _l === void 0 ? void 0 : _l.backgroundImage }));
39434
39512
  break;
39435
39513
  case 'accessDeniedTeamsMeeting':
39436
39514
  pageElement = (React.createElement(NoticePage, { iconName: "NoticePageAccessDeniedTeamsMeeting", title: locale.strings.call.failedToJoinTeamsMeetingReasonAccessDeniedTitle, moreDetails: locale.strings.call.failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails, dataUiId: 'access-denied-teams-meeting-page' }));
@@ -39442,7 +39520,7 @@ const MainScreen = (props) => {
39442
39520
  pageElement = (React.createElement(NoticePage, { iconName: "NoticePageJoinCallFailedDueToNoNetwork", title: locale.strings.call.failedToJoinCallDueToNoNetworkTitle, moreDetails: locale.strings.call.failedToJoinCallDueToNoNetworkMoreDetails, dataUiId: 'join-call-failed-due-to-no-network-page' }));
39443
39521
  break;
39444
39522
  case 'leaving':
39445
- pageElement = (React.createElement(NoticePage, { title: (_l = locale.strings.call.leavingCallTitle) !== null && _l !== void 0 ? _l : 'Leaving...', dataUiId: 'leaving-page', pageStyle: leavePageStyle, disableStartCallButton: true }));
39523
+ pageElement = (React.createElement(NoticePage, { title: (_m = locale.strings.call.leavingCallTitle) !== null && _m !== void 0 ? _m : 'Leaving...', dataUiId: 'leaving-page', pageStyle: leavePageStyle, disableStartCallButton: true }));
39446
39524
  break;
39447
39525
  case 'badRequest': {
39448
39526
  const { title, moreDetails, disableStartCallButton, iconName } = getEndedCallPageProps(locale, endedCall);
@@ -39451,41 +39529,25 @@ const MainScreen = (props) => {
39451
39529
  }
39452
39530
  case 'leftCall': {
39453
39531
  const { title, moreDetails, disableStartCallButton, iconName } = getEndedCallPageProps(locale, endedCall);
39454
- if (!((_o = (_m = props.options) === null || _m === void 0 ? void 0 : _m.surveyOptions) === null || _o === void 0 ? void 0 : _o.disableSurvey)) {
39455
- pageElement = (React.createElement(SurveyPage, { dataUiId: 'left-call-page', surveyOptions: (_p = props.options) === null || _p === void 0 ? void 0 : _p.surveyOptions, iconName: iconName, title: title, moreDetails: moreDetails, disableStartCallButton: disableStartCallButton, mobileView: props.mobileView }));
39532
+ if (!((_p = (_o = props.options) === null || _o === void 0 ? void 0 : _o.surveyOptions) === null || _p === void 0 ? void 0 : _p.disableSurvey)) {
39533
+ pageElement = (React.createElement(SurveyPage, { dataUiId: 'left-call-page', surveyOptions: (_q = props.options) === null || _q === void 0 ? void 0 : _q.surveyOptions, iconName: iconName, title: title, moreDetails: moreDetails, disableStartCallButton: disableStartCallButton, mobileView: props.mobileView }));
39456
39534
  break;
39457
39535
  }
39458
39536
  pageElement = (React.createElement(NoticePage, { iconName: iconName, title: title, moreDetails: callees ? '' : moreDetails, dataUiId: 'left-call-page', disableStartCallButton: disableStartCallButton }));
39459
39537
  break;
39460
39538
  }
39461
39539
  case 'lobby':
39462
- pageElement = (React.createElement(LobbyPage, { mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, options: props.options, updateSidePaneRenderer: setSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, latestErrors: getLatestErrorsTrampoline(),
39463
- /* @conditional-compile-remove(notifications) */
39464
- latestNotifications: latestNotifications, onDismissError: onDismissError,
39465
- /* @conditional-compile-remove(notifications) */
39466
- onDismissNotification: onDismissNotification, capabilitiesChangedNotificationBarProps: capabilitiesChangedNotificationBarProps }));
39540
+ pageElement = (React.createElement(LobbyPage, { mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, options: props.options, updateSidePaneRenderer: setSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, latestErrors: latestInCallErrors, latestNotifications: latestNotifications, onDismissError: onDismissError, onDismissNotification: onDismissNotification, capabilitiesChangedNotificationBarProps: capabilitiesChangedNotificationBarProps }));
39467
39541
  break;
39468
39542
  case 'transferring':
39469
- pageElement = (React.createElement(TransferPage, { mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, options: props.options, updateSidePaneRenderer: setSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, onFetchAvatarPersonaData: onFetchAvatarPersonaData, latestErrors: getLatestErrorsTrampoline(),
39470
- /* @conditional-compile-remove(notifications) */
39471
- latestNotifications: latestNotifications, onDismissError: onDismissError,
39472
- /* @conditional-compile-remove(notifications) */
39473
- onDismissNotification: onDismissNotification, capabilitiesChangedNotificationBarProps: capabilitiesChangedNotificationBarProps }));
39543
+ pageElement = (React.createElement(TransferPage, { mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, options: props.options, updateSidePaneRenderer: setSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, onFetchAvatarPersonaData: onFetchAvatarPersonaData, latestErrors: latestInCallErrors, latestNotifications: latestNotifications, onDismissError: onDismissError, onDismissNotification: onDismissNotification, capabilitiesChangedNotificationBarProps: capabilitiesChangedNotificationBarProps }));
39474
39544
  break;
39475
39545
  case 'call':
39476
- pageElement = (React.createElement(CallPage, { callInvitationURL: callInvitationUrl, onFetchAvatarPersonaData: onFetchAvatarPersonaData, onFetchParticipantMenuItems: onFetchParticipantMenuItems, mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, options: props.options, updateSidePaneRenderer: setSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, onCloseChatPane: props.onCloseChatPane, latestErrors: getLatestErrorsTrampoline(),
39477
- /* @conditional-compile-remove(notifications) */
39478
- latestNotifications: latestNotifications, onDismissError: onDismissError,
39479
- /* @conditional-compile-remove(notifications) */
39480
- onDismissNotification: onDismissNotification, galleryLayout: userSetGalleryLayout, onUserSetGalleryLayoutChange: setUserSetGalleryLayout, onSetUserSetOverflowGalleryPosition: setUserSetOverflowGalleryPosition, userSetOverflowGalleryPosition: userSetOverflowGalleryPosition, capabilitiesChangedNotificationBarProps: capabilitiesChangedNotificationBarProps, pinnedParticipants: pinnedParticipants, setPinnedParticipants: setPinnedParticipants, compositeAudioContext: compositeAudioContext, disableAutoShowDtmfDialer: (_q = props.options) === null || _q === void 0 ? void 0 : _q.disableAutoShowDtmfDialer }));
39546
+ pageElement = (React.createElement(CallPage, { callInvitationURL: callInvitationUrl, onFetchAvatarPersonaData: onFetchAvatarPersonaData, onFetchParticipantMenuItems: onFetchParticipantMenuItems, mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, options: props.options, updateSidePaneRenderer: setSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, onCloseChatPane: props.onCloseChatPane, latestErrors: latestInCallErrors, latestNotifications: latestNotifications, onDismissError: onDismissError, onDismissNotification: onDismissNotification, galleryLayout: userSetGalleryLayout, onUserSetGalleryLayoutChange: setUserSetGalleryLayout, onSetUserSetOverflowGalleryPosition: setUserSetOverflowGalleryPosition, userSetOverflowGalleryPosition: userSetOverflowGalleryPosition, capabilitiesChangedNotificationBarProps: capabilitiesChangedNotificationBarProps, pinnedParticipants: pinnedParticipants, setPinnedParticipants: setPinnedParticipants, compositeAudioContext: compositeAudioContext, disableAutoShowDtmfDialer: (_r = props.options) === null || _r === void 0 ? void 0 : _r.disableAutoShowDtmfDialer }));
39481
39547
  break;
39482
39548
  /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
39483
39549
  case 'hold':
39484
- pageElement = (React.createElement(React.Fragment, null, React.createElement(HoldPage, { mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, options: props.options, updateSidePaneRenderer: setSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, latestErrors: getLatestErrorsTrampoline(),
39485
- /* @conditional-compile-remove(notifications) */
39486
- latestNotifications: latestNotifications, onDismissError: onDismissError,
39487
- /* @conditional-compile-remove(notifications) */
39488
- onDismissNotification: onDismissNotification, capabilitiesChangedNotificationBarProps: capabilitiesChangedNotificationBarProps })));
39550
+ pageElement = (React.createElement(React.Fragment, null, React.createElement(HoldPage, { mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, options: props.options, updateSidePaneRenderer: setSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, latestErrors: latestInCallErrors, latestNotifications: latestNotifications, onDismissError: onDismissError, onDismissNotification: onDismissNotification, capabilitiesChangedNotificationBarProps: capabilitiesChangedNotificationBarProps })));
39489
39551
  break;
39490
39552
  }
39491
39553
  useEndedCallConsoleErrors(endedCall);
@@ -39494,7 +39556,7 @@ const MainScreen = (props) => {
39494
39556
  case 'unsupportedEnvironment':
39495
39557
  pageElement = (React.createElement(React.Fragment, null,
39496
39558
  /* @conditional-compile-remove(unsupported-browser) */
39497
- React.createElement(UnsupportedBrowserPage, { onTroubleshootingClick: (_r = props.options) === null || _r === void 0 ? void 0 : _r.onEnvironmentInfoTroubleshootingClick, environmentInfo: adapter.getState().environmentInfo })));
39559
+ React.createElement(UnsupportedBrowserPage, { onTroubleshootingClick: (_s = props.options) === null || _s === void 0 ? void 0 : _s.onEnvironmentInfoTroubleshootingClick, environmentInfo: adapter.getState().environmentInfo })));
39498
39560
  break;
39499
39561
  }
39500
39562
  if (!pageElement) {
@@ -43850,4 +43912,4 @@ exports.useTeamsCall = useTeamsCall;
43850
43912
  exports.useTeamsCallAdapter = useTeamsCallAdapter;
43851
43913
  exports.useTeamsCallAgent = useTeamsCallAgent;
43852
43914
  exports.useTheme = useTheme;
43853
- //# sourceMappingURL=index-UUXpaHCi.js.map
43915
+ //# sourceMappingURL=index-C6b4-4lG.js.map