@azure/communication-react 1.18.0-alpha-202406260014 → 1.18.0-alpha-202406280014

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 (124) hide show
  1. package/dist/communication-react.d.ts +98 -106
  2. package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-_hqOwT_h.js → ChatMessageComponentAsRichTextEditBox-Bl9FzI6X.js} +2 -2
  3. package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-_hqOwT_h.js.map → ChatMessageComponentAsRichTextEditBox-Bl9FzI6X.js.map} +1 -1
  4. package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-D-KYGmZ9.js → RichTextSendBoxWrapper-G-04IaQB.js} +2 -2
  5. package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-D-KYGmZ9.js.map → RichTextSendBoxWrapper-G-04IaQB.js.map} +1 -1
  6. package/dist/dist-cjs/communication-react/{index-DCf8u3Nr.js → index-CWs0GTYF.js} +75 -158
  7. package/dist/dist-cjs/communication-react/index-CWs0GTYF.js.map +1 -0
  8. package/dist/dist-cjs/communication-react/index.js +3 -3
  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/errorBarSelector.js +5 -20
  12. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js.map +1 -1
  13. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  14. package/dist/dist-esm/calling-component-bindings/src/index.d.ts +2 -2
  15. package/dist/dist-esm/calling-component-bindings/src/index.js +1 -1
  16. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  17. package/dist/dist-esm/calling-component-bindings/src/{errorNotificationsSelector.d.ts → notificationStackSelector.d.ts} +4 -3
  18. package/dist/dist-esm/calling-component-bindings/src/{errorNotificationsSelector.js → notificationStackSelector.js} +7 -3
  19. package/dist/dist-esm/calling-component-bindings/src/notificationStackSelector.js.map +1 -0
  20. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +1 -1
  21. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  22. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js.map +1 -1
  23. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js.map +1 -1
  24. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.d.ts +1 -0
  25. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +9 -0
  26. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  27. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js.map +1 -1
  28. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  29. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js.map +1 -1
  30. package/dist/dist-esm/communication-react/src/index.d.ts +2 -2
  31. package/dist/dist-esm/communication-react/src/index.js +1 -1
  32. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  33. package/dist/dist-esm/communication-react/src/mergedHooks.js.map +1 -1
  34. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js.map +1 -1
  35. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js.map +1 -1
  36. package/dist/dist-esm/react-components/src/components/ControlBarButton.js.map +1 -1
  37. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js.map +1 -1
  38. package/dist/dist-esm/react-components/src/components/ErrorBar.d.ts +4 -0
  39. package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
  40. package/dist/dist-esm/react-components/src/components/MeetingConferencePhoneInfo.d.ts +1 -21
  41. package/dist/dist-esm/react-components/src/components/MeetingConferencePhoneInfo.js +8 -8
  42. package/dist/dist-esm/react-components/src/components/MeetingConferencePhoneInfo.js.map +1 -1
  43. package/dist/dist-esm/react-components/src/components/{NotificationBar.d.ts → Notification.d.ts} +8 -8
  44. package/dist/dist-esm/react-components/src/components/{NotificationBar.js → Notification.js} +5 -5
  45. package/dist/dist-esm/react-components/src/components/Notification.js.map +1 -0
  46. package/dist/dist-esm/react-components/src/components/{Notifications.d.ts → NotificationStack.d.ts} +46 -42
  47. package/dist/dist-esm/react-components/src/components/{Notifications.js → NotificationStack.js} +7 -7
  48. package/dist/dist-esm/react-components/src/components/NotificationStack.js.map +1 -0
  49. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  50. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.js.map +1 -1
  51. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js +1 -1
  52. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js.map +1 -1
  53. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js.map +1 -1
  54. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.js.map +1 -1
  55. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js.map +1 -1
  56. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  57. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  58. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  59. package/dist/dist-esm/react-components/src/components/index.d.ts +2 -2
  60. package/dist/dist-esm/react-components/src/components/index.js +2 -2
  61. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  62. package/dist/dist-esm/react-components/src/components/styles/{NotificationBar.styles.d.ts → Notification.styles.d.ts} +1 -1
  63. package/dist/dist-esm/react-components/src/components/styles/{NotificationBar.styles.js → Notification.styles.js} +1 -1
  64. package/dist/dist-esm/react-components/src/components/styles/Notification.styles.js.map +1 -0
  65. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.js.map +1 -1
  66. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.js.map +1 -1
  67. package/dist/dist-esm/react-components/src/components/utils/merge.js.map +1 -1
  68. package/dist/dist-esm/react-components/src/components/utils.d.ts +1 -1
  69. package/dist/dist-esm/react-components/src/components/utils.js +3 -1
  70. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  71. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +4 -4
  72. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  73. package/dist/dist-esm/react-components/src/localization/locales/en-US/strings.json +10 -10
  74. package/dist/dist-esm/react-components/src/theming/icons.d.ts +1 -0
  75. package/dist/dist-esm/react-components/src/theming/icons.js +4 -0
  76. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  77. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +3 -13
  78. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  79. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +2 -0
  80. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  81. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +9 -1
  82. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  83. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.d.ts +0 -2
  84. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +3 -9
  85. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  86. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
  87. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  88. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.d.ts +1 -0
  89. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js +12 -3
  90. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js.map +1 -1
  91. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js.map +1 -1
  92. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js.map +1 -1
  93. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.d.ts +2 -3
  94. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js +1 -1
  95. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js.map +1 -1
  96. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.d.ts +0 -2
  97. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +2 -3
  98. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  99. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  100. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js.map +1 -1
  101. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.js.map +1 -1
  102. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  103. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.js.map +1 -1
  104. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.d.ts +1 -1
  105. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js.map +1 -1
  106. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js.map +1 -1
  107. package/dist/dist-esm/react-composites/src/composites/common/MeetingPhoneInfoPaneContent.js +6 -0
  108. package/dist/dist-esm/react-composites/src/composites/common/MeetingPhoneInfoPaneContent.js.map +1 -1
  109. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.d.ts +2 -3
  110. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js +2 -40
  111. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js.map +1 -1
  112. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +1 -7
  113. package/package.json +2 -2
  114. package/dist/dist-cjs/communication-react/index-DCf8u3Nr.js.map +0 -1
  115. package/dist/dist-esm/calling-component-bindings/src/errorNotificationsSelector.js.map +0 -1
  116. package/dist/dist-esm/react-components/src/components/NotificationBar.js.map +0 -1
  117. package/dist/dist-esm/react-components/src/components/Notifications.js.map +0 -1
  118. package/dist/dist-esm/react-components/src/components/styles/NotificationBar.styles.js.map +0 -1
  119. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/BadNetworkQualityNotificationBar.d.ts +0 -22
  120. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/BadNetworkQualityNotificationBar.js +0 -40
  121. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/BadNetworkQualityNotificationBar.js.map +0 -1
  122. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/badNetworkQualitySelector.d.ts +0 -19
  123. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/badNetworkQualitySelector.js +0 -26
  124. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/badNetworkQualitySelector.js.map +0 -1
@@ -175,7 +175,7 @@ function getDefaultExportFromCjs (x) {
175
175
  // Copyright (c) Microsoft Corporation.
176
176
  // Licensed under the MIT License.
177
177
  // GENERATED FILE. DO NOT EDIT MANUALLY.
178
- var telemetryVersion = '1.18.0-alpha-202406260014';
178
+ var telemetryVersion = '1.18.0-alpha-202406280014';
179
179
 
180
180
 
181
181
  var telemetryVersion$1 = /*@__PURE__*/getDefaultExportFromCjs(telemetryVersion);
@@ -509,12 +509,6 @@ const getSupportedSpokenLanguages = (state, props) => {
509
509
  var _a;
510
510
  return (_a = state.calls[props.callId]) === null || _a === void 0 ? void 0 : _a.captionsFeature.supportedSpokenLanguages;
511
511
  };
512
- /* @conditional-compile-remove(teams-meeting-conference) */
513
- /** @private */
514
- const getTeamsMeetingConference = (state, props) => {
515
- var _a;
516
- return (_a = state.calls[props.callId]) === null || _a === void 0 ? void 0 : _a.teamsMeetingConference;
517
- };
518
512
 
519
513
  // Copyright (c) Microsoft Corporation.
520
514
  // Licensed under the MIT License.
@@ -1325,7 +1319,7 @@ const createDefaultTeamsCallingHandlers = memoizeOne((callClient, callAgent, dev
1325
1319
  *
1326
1320
  * @beta
1327
1321
  */
1328
- const errorNotificationsSelector = reselect.createSelector([getLatestErrors$1, getDiagnostics, getDeviceManager$1, getEnvironmentInfo], (latestErrors, diagnostics, deviceManager, environmentInfo) => {
1322
+ const notificationStackSelector = reselect.createSelector([getLatestErrors$1, getDiagnostics, getDeviceManager$1, getEnvironmentInfo], (latestErrors, diagnostics, deviceManager, environmentInfo) => {
1329
1323
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
1330
1324
  // The order in which the errors are returned is significant: The `Notification` shows errors on the UI in that order.
1331
1325
  // There are several options for the ordering:
@@ -1428,6 +1422,8 @@ const errorNotificationsSelector = reselect.createSelector([getLatestErrors$1, g
1428
1422
  appendActiveErrorIfDefined$1(activeErrorMessages, latestErrors, 'Call.startVideo', 'startVideoGeneric');
1429
1423
  }
1430
1424
  appendActiveErrorIfDefined$1(activeErrorMessages, latestErrors, 'Call.unmute', 'unmuteGeneric');
1425
+ /* @conditional-compile-remove(soft-mute) */
1426
+ appendActiveErrorIfDefined$1(activeErrorMessages, latestErrors, 'Call.mutedByOthers', 'mutedByRemoteParticipant');
1431
1427
  appendActiveErrorIfDefined$1(activeErrorMessages, latestErrors, 'VideoEffectsFeature.startEffects', 'unableToStartVideoEffect');
1432
1428
  if (((_s = latestErrors['CallAgent.join']) === null || _s === void 0 ? void 0 : _s.message) === 'CallAgent.join: Invalid meeting link') {
1433
1429
  appendActiveErrorIfDefined$1(activeErrorMessages, latestErrors, 'CallAgent.join', 'failedToJoinCallInvalidMeetingLink');
@@ -1438,7 +1434,9 @@ const errorNotificationsSelector = reselect.createSelector([getLatestErrors$1, g
1438
1434
  if ((_t = latestErrors['Call.feature']) === null || _t === void 0 ? void 0 : _t.message.match(/Call\.feature: startSpotlight failed\. \d+ is the max number of participants that can be Spotlighted/g)) {
1439
1435
  appendActiveErrorIfDefined$1(activeErrorMessages, latestErrors, 'Call.feature', 'startSpotlightWhileMaxParticipantsAreSpotlighted');
1440
1436
  }
1441
- return { activeErrorMessages: activeErrorMessages };
1437
+ //below is for active notifications
1438
+ const activeNotifications = [];
1439
+ return { activeErrorMessages: activeErrorMessages, activeNotifications: activeNotifications };
1442
1440
  });
1443
1441
  /* @conditional-compile-remove(notifications) */
1444
1442
  const appendActiveErrorIfDefined$1 = (activeErrorMessages, latestErrors, target, activeErrorType) => {
@@ -4372,6 +4370,8 @@ class CallSubscriber {
4372
4370
  this._call.feature(communicationCalling.Features.DominantSpeakers).on('dominantSpeakersChanged', this.dominantSpeakersChanged);
4373
4371
  /* @conditional-compile-remove(total-participant-count) */
4374
4372
  this._call.on('totalParticipantCountChanged', this.totalParticipantCountChangedHandler);
4373
+ /* @conditional-compile-remove(soft-mute) */
4374
+ this._call.on('mutedByOthers', this.mutedByOthersHandler);
4375
4375
  for (const localVideoStream of this._call.localVideoStreams) {
4376
4376
  this._internalContext.setLocalRenderInfo(this._callIdRef.callId, localVideoStream.mediaStreamType, localVideoStream, 'NotRendered', undefined);
4377
4377
  }
@@ -4398,6 +4398,8 @@ class CallSubscriber {
4398
4398
  this._call.off('roleChanged', this.callRoleChangedHandler);
4399
4399
  /* @conditional-compile-remove(total-participant-count) */
4400
4400
  this._call.off('totalParticipantCountChanged', this.totalParticipantCountChangedHandler);
4401
+ /* @conditional-compile-remove(soft-mute) */
4402
+ this._call.off('mutedByOthers', this.mutedByOthersHandler);
4401
4403
  this._participantSubscribers.forEach((participantSubscriber) => {
4402
4404
  participantSubscriber.unsubscribe();
4403
4405
  });
@@ -4471,6 +4473,11 @@ class CallSubscriber {
4471
4473
  this.totalParticipantCountChangedHandler = () => {
4472
4474
  this._context.setTotalParticipantCount(this._callIdRef.callId, this._call.totalParticipantCount);
4473
4475
  };
4476
+ // TODO: Tee to notification state once available
4477
+ /* @conditional-compile-remove(soft-mute) */
4478
+ this.mutedByOthersHandler = () => {
4479
+ this._context.teeErrorToState({ name: 'mutedByOthers', message: 'Muted by another participant' }, 'Call.mutedByOthers');
4480
+ };
4474
4481
  this.remoteParticipantsUpdated = (event) => {
4475
4482
  event.added.forEach((participant) => {
4476
4483
  this.addParticipantListener(participant);
@@ -5903,7 +5910,7 @@ const typingIndicatorStringStyle = react.mergeStyles({
5903
5910
  wordBreak: 'break-word'
5904
5911
  });
5905
5912
 
5906
- var participantItem$k={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted",displayNamePlaceholder:"Unnamed participant",participantStateRinging:"Calling...",participantStateHold:"On hold",attendeeRole:"Attendee"};var ParticipantList$l={overflowParticipantCount:"+{overflowCount} more"};var typingIndicator$k={singleUser:"{user} is typing ...",multipleUsers:"{users} are typing ...",multipleUsersAbbreviateOne:"{users} and 1 other are typing ...",multipleUsersAbbreviateMany:"{users} and {numOthers} others are typing ...",delimiter:", "};var sendBox$k={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",attachmentUploadsPendingError:"Uploading... Please wait.",removeAttachment:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed",attachmentMoreMenu:"More Options"};var richTextSendBox$k={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",attachmentUploadsPendingError:"Uploading... Please wait.",removeAttachment:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed",richTextBoldTooltip:"Bold",richTextItalicTooltip:"Italic",richTextUnderlineTooltip:"Underline",richTextBulletListTooltip:"Bulleted list",richTextNumberListTooltip:"Numbered list",richTextIncreaseIndentTooltip:"Increase indent",richTextDecreaseIndentTooltip:"Decrease indent",richTextInsertTableTooltip:"Insert table",richTextFormatButtonTooltip:"Format",richTextInsertRowOrColumnMenu:"Insert",richTextInsertTableMenuTitle:"Insert {column} x {row} table",richTextInsertRowAboveMenu:"Insert above",richTextInsertRowBelowMenu:"Insert below",richTextInsertColumnLeftMenu:"Insert left",richTextInsertColumnRightMenu:"Insert right",richTextDeleteRowOrColumnMenu:"Delete",richTextDeleteColumnMenu:"Delete column",richTextDeleteRowMenu:"Delete row",richTextDeleteTableMenu:"Delete table",richTextToolbarMoreButtonAriaLabel:"More options",attachmentMoreMenu:"More Options"};var mentionPopover$k={mentionPopoverHeader:"Suggestions"};var imageOverlay$k={downloadButtonLabel:"Download",dismissButtonAriaLabel:"Close"};var messageStatusIndicator$k={deliveredAriaLabel:"Message sent",deliveredTooltipText:"Sent",seenAriaLabel:"Message seen by others",seenTooltipText:"Seen",readByTooltipText:"Read by {messageThreadReadCount} of {remoteParticipantsCount}",sendingAriaLabel:"Message sending",sendingTooltipText:"Sending",failedToSendAriaLabel:"Message failed to send",failedToSendTooltipText:"Failed to send"};var endCallButton$k={label:"Leave",tooltipContent:"Leave call",leaveOption:"Leave",endCallOption:"End call for everyone"};var cameraButton$k={onLabel:"Camera",offLabel:"Camera",tooltipDisabledContent:"Camera is disabled",tooltipOnContent:"Turn off camera",tooltipOffContent:"Turn on camera",tooltipVideoLoadingContent:"Video is loading",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",cameraButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Turn off camera and camera options",offSplitButtonAriaLabel:"Turn on camera and camera options",cameraActionTurnedOnAnnouncement:"Your camera has been turned on",cameraActionTurnedOffAnnouncement:"Your camera has been turned off",onSplitButtonPrimaryActionCamera:"Turn off camera",offSplitButtonPrimaryActionCamera:"Turn on camera",cameraPrimaryActionSplitButtonTitle:"Use camera",videoEffectsMenuItemTitle:"Effects"};var microphoneButton$k={onLabel:"Mic",offLabel:"Mic",tooltipDisabledContent:"Microphone is disabled",tooltipOnContent:"Mute microphone",tooltipOffContent:"Unmute microphone",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker",microphoneButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Mute microphone and audio options",offSplitButtonAriaLabel:"Unmute microphone and audio options",microphoneActionTurnedOnAnnouncement:"Your microphone has been turned on",microphoneActionTurnedOffAnnouncement:"Your microphone has been turned off",offSplitButtonMicrophonePrimaryAction:"Unmute microphone",onSplitButtonMicrophonePrimaryAction:"Mute microphone",microphonePrimaryActionSplitButtonTitle:"Use microphone"};var devicesButton$k={label:"Devices",tooltipContent:"Manage devices",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",audioDeviceMenuTitle:"Audio Device",audioDeviceMenuTooltip:"Choose audio device",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker"};var participantsButton$k={label:"People",tooltipContent:"Show participants",menuHeader:"In this call",participantsListButtonLabel:"{numParticipants} people",muteAllButtonLabel:"Mute all",copyInviteLinkButtonLabel:"Copy invite link",copyInviteLinkActionedAriaLabel:"Invite link copied"};var screenShareButton$k={onLabel:"Stop presenting",offLabel:"Present",tooltipDisabledContent:"Presenting is disabled",tooltipOnContent:"Presenting your screen",tooltipOffContent:"Present your screen"};var raiseHandButton$k={offLabel:"Raise",onLabel:"Lower",tooltipDisabledContent:"Raise Hand action is disabled",tooltipOnContent:"Lower Hand",tooltipOffContent:"Raise Hand"};var reactionButton$k={label:"React",ariaLabel:"React Button, Send a reaction",tooltipDisabledContent:"Reaction action is disabled",tooltipContent:"Send a reaction",likeReactionTooltipContent:"Like",heartReactionTooltipContent:"Love",laughReactionTooltipContent:"Laugh",applauseReactionTooltipContent:"Applause",surprisedReactionTooltipContent:"Surprised"};var messageThread$k={yesterday:"Yesterday",sunday:"Sunday",monday:"Monday",tuesday:"Tuesday",wednesday:"Wednesday",thursday:"Thursday",friday:"Friday",saturday:"Saturday",participantJoined:"joined the chat.",participantLeft:"left the chat.",editMessage:"Edit",removeMessage:"Delete",resendMessage:"Try sending again",failToSendTag:"Failed to send",editedTag:"Edited",liveAuthorIntro:"{author} says",messageContentAriaText:"{status} {author} said {message}",messageContentMineAriaText:"{status} You said {message}",editBoxTextLimit:"Your message is over the limit of {limitNumber} characters",editBoxPlaceholderText:"Edit your message",newMessagesIndicator:"New messages",noDisplayNameSub:"No name",editBoxCancelButton:"Cancel",editBoxSubmitButton:"Done",messageReadCount:"Read by {messageReadByCount} of {remoteParticipantsCount}",actionMenuMoreOptions:"More Options",downloadAttachment:"Download file",openAttachment:"Open file",blockedWarningText:"This message was deleted due to organizational policy.",blockedWarningLinkText:"Details",attachmentCardGroupMessage:"The message has {attachmentCount} attachment",messageDeletedAnnouncementAriaLabel:"The message is deleted",richTextBoldTooltip:"Bold",richTextItalicTooltip:"Italic",richTextUnderlineTooltip:"Underline",richTextBulletListTooltip:"Bulleted list",richTextNumberListTooltip:"Numbered list",richTextIncreaseIndentTooltip:"Increase indent",richTextDecreaseIndentTooltip:"Decrease indent",richTextInsertTableTooltip:"Insert table",richTextFormatButtonTooltip:"Format",richTextInsertRowOrColumnMenu:"Insert",richTextInsertTableMenuTitle:"Insert {column} x {row} table",richTextInsertRowAboveMenu:"Insert above",richTextInsertRowBelowMenu:"Insert below",richTextInsertColumnLeftMenu:"Insert left",richTextInsertColumnRightMenu:"Insert right",richTextDeleteRowOrColumnMenu:"Delete",richTextDeleteColumnMenu:"Delete column",richTextDeleteRowMenu:"Delete row",richTextDeleteTableMenu:"Delete table",richTextToolbarMoreButtonAriaLabel:"More options"};var errorBar$k={unableToReachChatService:"You are offline",accessDenied:"Unable to access chat services - please check the user credentials provided",userNotInChatThread:"You are no longer in this chat thread",sendMessageNotInChatThread:"Failed to send message because you are no longer in this chat thread",sendMessageGeneric:"Failed to send message",callingNetworkFailure:"Troubling connecting call - you seem to be offline",startVideoGeneric:"Failed to start video",stopVideoGeneric:"Failed to stop video",muteGeneric:"Failed to mute microphone",unmuteGeneric:"Failed to unmute microphone",speakingWhileMuted:"Your microphone is muted",startScreenShareGeneric:"There was an issue starting screen share.",stopScreenShareGeneric:"Failed to stop screen sharing",callNetworkQualityLow:"Network quality is low.",callNoSpeakerFound:"No speakers or headphones found. Connect an audio device to hear the call.",callNoMicrophoneFound:"No microphones found. Connect an audio input device.",callMicrophoneAccessDenied:"Unable to access microphone. Click the lock in the address bar to grant permission to this webpage.",callMicrophoneAccessDeniedSafari:"Unable to access microphone. Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",callMicrophoneMutedBySystem:"You are muted by your system.",callMicrophoneUnmutedBySystem:"Your microphone recovered and you were unmuted by your system.",callMacOsMicrophoneAccessDenied:"Unable to access microphone. Grant microphone permission in your macOS privacy settings.",callLocalVideoFreeze:"Network bandwidth is poor. Your video may appear paused for others on the call.",callCameraAccessDenied:"Unable to access camera. Click the lock in the address bar to grant permission to this webpage.",callCameraAccessDeniedSafari:"Unable to access camera. Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",callCameraAlreadyInUse:"Unable to access camera. It may already be in use by another application.",callVideoStoppedBySystem:"Your video has been stopped by your system.",callVideoRecoveredBySystem:"Your video has resumed.",callMacOsCameraAccessDenied:"MacOS is blocking access to your camera. Update your privacy settings to allow this browser to access your camera.",callMacOsScreenShareAccessDenied:"MacOS is blocking screen sharing. Update your privacy settings to allow this browser to record your screen.",dismissButtonAriaLabel:"Close",failedToJoinCallGeneric:"Failed to join call.",failedToJoinCallInvalidMeetingLink:"Unable to join Meeting. Invalid Link.",cameraFrozenForRemoteParticipants:"Users in the call are having issues seeing your video. Please check your devices and network.",unableToStartVideoEffect:"Unable to apply video effect.",startSpotlightWhileMaxParticipantsAreSpotlighted:"Cannot start spotlight on participant(s) because the maximum number of participants are already spotlighted."};var notifications$k={callingNetworkFailure:{title:"Troubling connecting call",message:"You seem to be offline. Please check your network connection and try again.",closeButtonAriaLabel:"Close"},startVideoGeneric:{title:"Failed to start video.",closeButtonAriaLabel:"Close"},stopVideoGeneric:{title:"Failed to stop video.",closeButtonAriaLabel:"Close"},muteGeneric:{title:"Failed to mute microphone.",closeButtonAriaLabel:"Close"},unmuteGeneric:{title:"Failed to unmute microphone.",closeButtonAriaLabel:"Close"},speakingWhileMuted:{title:"You're muted.",closeButtonAriaLabel:"Close"},startScreenShareGeneric:{title:"There was an issue starting screen share.",closeButtonAriaLabel:"Close"},stopScreenShareGeneric:{title:"Failed to stop screen sharing.",closeButtonAriaLabel:"Close"},callNetworkQualityLow:{title:"Network quality is low.",closeButtonAriaLabel:"Close"},callNoSpeakerFound:{title:"No speakers or headphones found",message:"Connect an audio device to hear the call.",closeButtonAriaLabel:"Close"},callNoMicrophoneFound:{title:"No microphones found",message:"Connect an audio input device.",closeButtonAriaLabel:"Close"},callMicrophoneAccessDenied:{title:"Unable to access microphone",message:"Click the lock in the address bar to grant permission to this webpage.",closeButtonAriaLabel:"Close"},callMicrophoneAccessDeniedSafari:{title:"Unable to access microphone",message:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",closeButtonAriaLabel:"Close"},callMicrophoneMutedBySystem:{title:"You are muted by your system.",closeButtonAriaLabel:"Close"},callMicrophoneUnmutedBySystem:{title:"Your microphone recovered and you were unmuted by your system.",closeButtonAriaLabel:"Close"},callMacOsMicrophoneAccessDenied:{title:"Unable to access microphone",message:"Grant microphone permission in your macOS privacy settings.",closeButtonAriaLabel:"Close"},callLocalVideoFreeze:{title:"Network bandwidth is poor",message:"Your video may appear paused for others on the call.",closeButtonAriaLabel:"Close"},callCameraAccessDenied:{title:"Unable to access camera",message:"Click the lock in the address bar to grant permission to this webpage.",closeButtonAriaLabel:"Close"},callCameraAccessDeniedSafari:{title:"Unable to access camera",message:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",closeButtonAriaLabel:"Close"},callCameraAlreadyInUse:{title:"Unable to access camera",message:"It may already be in use by another application.",closeButtonAriaLabel:"Close"},callVideoStoppedBySystem:{title:"Your video has been stopped by your system.",closeButtonAriaLabel:"Close"},callVideoRecoveredBySystem:{title:"Your video has resumed.",closeButtonAriaLabel:"Close"},callMacOsCameraAccessDenied:{title:"MacOS is blocking access to your camera",message:"Update your privacy settings to allow this browser to access your camera.",closeButtonAriaLabel:"Close"},callMacOsScreenShareAccessDenied:{title:"MacOS is blocking screen sharing",message:"Update your privacy settings to allow this browser to record your screen.",closeButtonAriaLabel:"Close"},failedToJoinCallGeneric:{title:"Failed to join call.",closeButtonAriaLabel:"Close"},failedToJoinCallInvalidMeetingLink:{title:"Unable to join Meeting. Invalid Link.",closeButtonAriaLabel:"Close"},cameraFrozenForRemoteParticipants:{title:"Users in the call are having issues seeing your video",message:"Please check your devices and network.",closeButtonAriaLabel:"Close"},unableToStartVideoEffect:{title:"Unable to apply video effect.",closeButtonAriaLabel:"Close"},startSpotlightWhileMaxParticipantsAreSpotlighted:{title:"Cannot start spotlight on participant(s)",message:"The maximum number of participants are already spotlighted.",closeButtonAriaLabel:"Close"}};var videoGallery$k={screenIsBeingSharedMessage:"You are sharing your screen",screenShareLoadingMessage:"Loading {participant}'s screen",localVideoLabel:"You",localVideoCameraSwitcherLabel:"Switch camera",localVideoMovementLabel:"Movable Local Video Tile",localVideoMovementAriaLabel:"Movable Local Video Tile",localVideoSelectedDescription:"{cameraName} selected",displayNamePlaceholder:"Unnamed participant",fitRemoteParticipantToFrame:"Fit to frame",fillRemoteParticipantFrame:"Fill frame",pinParticipantForMe:"Pin for me",pinParticipantForMeLimitReached:"Pin (limit reached)",unpinParticipantForMe:"Unpin",pinParticipantMenuItemAriaLabel:"Pin {participantName}",unpinParticipantMenuItemAriaLabel:"Unpin {participantName}",pinnedParticipantAnnouncementAriaLabel:"Pinned {participantName}",unpinnedParticipantAnnouncementAriaLabel:"Unpinned {participantName}",startSpotlightVideoTileMenuLabel:"Spotlight for everyone",addSpotlightVideoTileMenuLabel:"Add spotlight",spotlightLimitReachedMenuTitle:"Spotlight limit reached",stopSpotlightVideoTileMenuLabel:"Stop spotlighting",stopSpotlightOnSelfVideoTileMenuLabel:"Exit spotlight",attendeeRole:"Attendee",muteParticipantMenuItemLabel:"Mute"};var dialpad$k={placeholderText:"Enter phone number",deleteButtonAriaLabel:"Delete"};var holdButton$k={onLabel:"Resume",offLabel:"Hold",tooltipOnContent:"Resume call",tooltipOffContent:"Hold call"};var videoTile$k={participantStateRinging:"Calling...",participantStateHold:"On hold",moreOptionsButtonAriaLabel:"More Options"};var CameraAndMicrophoneSitePermissionsRequest$k={primaryText:"Allow {appName} to use your camera and microphone",secondaryText:"This is so participants can see and hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera and microphone",ariaLabel:"Allow camera and microphone access"};var CameraSitePermissionsRequest$k={primaryText:"Allow {appName} to use your camera",secondaryText:"This is so participants can see you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera",ariaLabel:"Allow camera access"};var MicrophoneSitePermissionsRequest$k={primaryText:"Allow {appName} to use your microphone",secondaryText:"This is so participants can hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without microphone",ariaLabel:"Allow microphone access"};var CameraAndMicrophoneSitePermissionsCheck$k={primaryText:"Checking for camera and microphone access",secondaryText:"Allow access if prompted. This is so participants can see and hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera and microphone",ariaLabel:"Checking for camera and microphone access. Allow access if prompted."};var CameraSitePermissionsCheck$k={primaryText:"Checking for camera access",secondaryText:"Allow access if prompted. This is so participants can see you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera",ariaLabel:"Checking for camera access. Allow access if prompted."};var MicrophoneSitePermissionsCheck$k={primaryText:"Checking for microphone access",secondaryText:"Allow access if prompted. This is so participants can hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without microphone",ariaLabel:"Checking for microphone access. Allow access if prompted."};var CameraAndMicrophoneSitePermissionsDenied$k={primaryText:"Unable to access camera and microphone",secondaryText:"Click the lock icon in the address bar to grant microphone permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without camera and microphone",linkText:"Need help? Get troubleshooting help"};var CameraAndMicrophoneSitePermissionsDeniedSafari$k={primaryText:"Unable to access camera and microphone",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without camera and microphone",linkText:"Need help? Get troubleshooting help"};var CameraSitePermissionsDenied$k={primaryText:"Unable to access camera",secondaryText:"Click the lock icon in the address bar to grant camera permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without camera",linkText:"Need help? Get troubleshooting help"};var MicrophoneSitePermissionsDenied$k={primaryText:"Unable to access microphone",secondaryText:"Click the lock icon in the address bar to grant microphone permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without microphone",linkText:"Need help? Get troubleshooting help"};var CameraSitePermissionsDeniedSafari$k={primaryText:"Unable to access camera",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without camera",linkText:"Need help? Get troubleshooting help"};var MicrophoneSitePermissionsDeniedSafari$k={primaryText:"Unable to access microphone",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without microphone",linkText:"Need help? Get troubleshooting help"};var UnsupportedBrowser$l={primaryText:"Browser not supported",secondaryText:"Please join this call using a compatible browser.",moreHelpLinkText:"See compatibility requirements"};var UnsupportedBrowserVersion$l={primaryText:"Browser update needed",secondaryText:"To ensure the best call possible, please update your browser and then try joining the call again.",moreHelpLinkText:"See compatibility requirements",continueAnywayButtonText:"Start call without updating"};var UnsupportedOperatingSystem$l={primaryText:"Operating system not supported",secondaryText:"Please join this call using a device with a compatible operating system.",moreHelpLinkText:"See compatibility requirements"};var BrowserPermissionDenied$k={primaryText:"Can't use your camera or microphone",secondaryText:"Your browser might not have access to your camera or microphone. To fix this, open System Preferences.",primaryButtonText:"Try again",linkText:"Need help? Get troubleshooting help"};var BrowserPermissionDeniedIOS$k={primaryText:"Allow microphone access to continue",secondaryText:"So other participants can hear you.",primaryButtonText:"Try again",imageAltText:"Microphone and camera device permission location for iOS",linkText:"Need help? Get troubleshooting help",step1Text:"Go to the Settings app",step2Text:"Scroll down to settings for this browser",step3Text:"Turn on Microphone (Camera optional)",step4Text:"Try joining the call again",step1DigitText:"1",step2DigitText:"2",step3DigitText:"3",step4DigitText:"4"};var verticalGallery$k={leftNavButtonAriaLabel:"previous page",rightNavButtonAriaLabel:"next page"};var MeetingConferencePhoneInfo$k={meetingConferencePhoneInfoModalTitle:"Join call from your phone",meetingConferencePhoneInfoModalDialIn:"Dial number",meetingConferencePhoneInfoModalMeetingId:"Enter meeting ID",meetingConferencePhoneInfoModalWait:"Wait to be admitted by organizer",meetingConferencePhoneInfoModalNoPhoneAvailable:"No phone available",meetingConferencePhoneInfoModalTollFree:"(Toll-free) {country}, {city}",meetingConferencePhoneInfoModalTollFreeWithoutGeoData:"(Toll-free)",meetingConferencePhoneInfoModalToll:"(Toll) {country}, {city}",meetingConferencePhoneInfoModalTollWithoutGeoData:"(Toll)",badQualityBarTitle:"Poor Network Quality",badQualityBarClose:"Close",badQualityBarMessage:"Join this call from your phone for better sound. You can continue viewing the meeting on this device.",badQualityBarJoin:"Join by Phone"};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,notifications:notifications$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};
5913
+ var participantItem$k={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted",displayNamePlaceholder:"Unnamed participant",participantStateRinging:"Calling...",participantStateHold:"On hold",attendeeRole:"Attendee"};var ParticipantList$l={overflowParticipantCount:"+{overflowCount} more"};var typingIndicator$k={singleUser:"{user} is typing ...",multipleUsers:"{users} are typing ...",multipleUsersAbbreviateOne:"{users} and 1 other are typing ...",multipleUsersAbbreviateMany:"{users} and {numOthers} others are typing ...",delimiter:", "};var sendBox$k={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",attachmentUploadsPendingError:"Uploading... Please wait.",removeAttachment:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed",attachmentMoreMenu:"More Options"};var richTextSendBox$k={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",attachmentUploadsPendingError:"Uploading... Please wait.",removeAttachment:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed",richTextBoldTooltip:"Bold",richTextItalicTooltip:"Italic",richTextUnderlineTooltip:"Underline",richTextBulletListTooltip:"Bulleted list",richTextNumberListTooltip:"Numbered list",richTextIncreaseIndentTooltip:"Increase indent",richTextDecreaseIndentTooltip:"Decrease indent",richTextInsertTableTooltip:"Insert table",richTextFormatButtonTooltip:"Format",richTextInsertRowOrColumnMenu:"Insert",richTextInsertTableMenuTitle:"Insert {column} x {row} table",richTextInsertRowAboveMenu:"Insert above",richTextInsertRowBelowMenu:"Insert below",richTextInsertColumnLeftMenu:"Insert left",richTextInsertColumnRightMenu:"Insert right",richTextDeleteRowOrColumnMenu:"Delete",richTextDeleteColumnMenu:"Delete column",richTextDeleteRowMenu:"Delete row",richTextDeleteTableMenu:"Delete table",richTextToolbarMoreButtonAriaLabel:"More options",attachmentMoreMenu:"More Options"};var mentionPopover$k={mentionPopoverHeader:"Suggestions"};var imageOverlay$k={downloadButtonLabel:"Download",dismissButtonAriaLabel:"Close"};var messageStatusIndicator$k={deliveredAriaLabel:"Message sent",deliveredTooltipText:"Sent",seenAriaLabel:"Message seen by others",seenTooltipText:"Seen",readByTooltipText:"Read by {messageThreadReadCount} of {remoteParticipantsCount}",sendingAriaLabel:"Message sending",sendingTooltipText:"Sending",failedToSendAriaLabel:"Message failed to send",failedToSendTooltipText:"Failed to send"};var endCallButton$k={label:"Leave",tooltipContent:"Leave call",leaveOption:"Leave",endCallOption:"End call for everyone"};var cameraButton$k={onLabel:"Camera",offLabel:"Camera",tooltipDisabledContent:"Camera is disabled",tooltipOnContent:"Turn off camera",tooltipOffContent:"Turn on camera",tooltipVideoLoadingContent:"Video is loading",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",cameraButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Turn off camera and camera options",offSplitButtonAriaLabel:"Turn on camera and camera options",cameraActionTurnedOnAnnouncement:"Your camera has been turned on",cameraActionTurnedOffAnnouncement:"Your camera has been turned off",onSplitButtonPrimaryActionCamera:"Turn off camera",offSplitButtonPrimaryActionCamera:"Turn on camera",cameraPrimaryActionSplitButtonTitle:"Use camera",videoEffectsMenuItemTitle:"Effects"};var microphoneButton$k={onLabel:"Mic",offLabel:"Mic",tooltipDisabledContent:"Microphone is disabled",tooltipOnContent:"Mute microphone",tooltipOffContent:"Unmute microphone",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker",microphoneButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Mute microphone and audio options",offSplitButtonAriaLabel:"Unmute microphone and audio options",microphoneActionTurnedOnAnnouncement:"Your microphone has been turned on",microphoneActionTurnedOffAnnouncement:"Your microphone has been turned off",offSplitButtonMicrophonePrimaryAction:"Unmute microphone",onSplitButtonMicrophonePrimaryAction:"Mute microphone",microphonePrimaryActionSplitButtonTitle:"Use microphone"};var devicesButton$k={label:"Devices",tooltipContent:"Manage devices",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",audioDeviceMenuTitle:"Audio Device",audioDeviceMenuTooltip:"Choose audio device",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker"};var participantsButton$k={label:"People",tooltipContent:"Show participants",menuHeader:"In this call",participantsListButtonLabel:"{numParticipants} people",muteAllButtonLabel:"Mute all",copyInviteLinkButtonLabel:"Copy invite link",copyInviteLinkActionedAriaLabel:"Invite link copied"};var screenShareButton$k={onLabel:"Stop presenting",offLabel:"Present",tooltipDisabledContent:"Presenting is disabled",tooltipOnContent:"Presenting your screen",tooltipOffContent:"Present your screen"};var raiseHandButton$k={offLabel:"Raise",onLabel:"Lower",tooltipDisabledContent:"Raise Hand action is disabled",tooltipOnContent:"Lower Hand",tooltipOffContent:"Raise Hand"};var reactionButton$k={label:"React",ariaLabel:"React Button, Send a reaction",tooltipDisabledContent:"Reaction action is disabled",tooltipContent:"Send a reaction",likeReactionTooltipContent:"Like",heartReactionTooltipContent:"Love",laughReactionTooltipContent:"Laugh",applauseReactionTooltipContent:"Applause",surprisedReactionTooltipContent:"Surprised"};var messageThread$k={yesterday:"Yesterday",sunday:"Sunday",monday:"Monday",tuesday:"Tuesday",wednesday:"Wednesday",thursday:"Thursday",friday:"Friday",saturday:"Saturday",participantJoined:"joined the chat.",participantLeft:"left the chat.",editMessage:"Edit",removeMessage:"Delete",resendMessage:"Try sending again",failToSendTag:"Failed to send",editedTag:"Edited",liveAuthorIntro:"{author} says",messageContentAriaText:"{status} {author} said {message}",messageContentMineAriaText:"{status} You said {message}",editBoxTextLimit:"Your message is over the limit of {limitNumber} characters",editBoxPlaceholderText:"Edit your message",newMessagesIndicator:"New messages",noDisplayNameSub:"No name",editBoxCancelButton:"Cancel",editBoxSubmitButton:"Done",messageReadCount:"Read by {messageReadByCount} of {remoteParticipantsCount}",actionMenuMoreOptions:"More Options",downloadAttachment:"Download file",openAttachment:"Open file",blockedWarningText:"This message was deleted due to organizational policy.",blockedWarningLinkText:"Details",attachmentCardGroupMessage:"The message has {attachmentCount} attachment",messageDeletedAnnouncementAriaLabel:"The message is deleted",richTextBoldTooltip:"Bold",richTextItalicTooltip:"Italic",richTextUnderlineTooltip:"Underline",richTextBulletListTooltip:"Bulleted list",richTextNumberListTooltip:"Numbered list",richTextIncreaseIndentTooltip:"Increase indent",richTextDecreaseIndentTooltip:"Decrease indent",richTextInsertTableTooltip:"Insert table",richTextFormatButtonTooltip:"Format",richTextInsertRowOrColumnMenu:"Insert",richTextInsertTableMenuTitle:"Insert {column} x {row} table",richTextInsertRowAboveMenu:"Insert above",richTextInsertRowBelowMenu:"Insert below",richTextInsertColumnLeftMenu:"Insert left",richTextInsertColumnRightMenu:"Insert right",richTextDeleteRowOrColumnMenu:"Delete",richTextDeleteColumnMenu:"Delete column",richTextDeleteRowMenu:"Delete row",richTextDeleteTableMenu:"Delete table",richTextToolbarMoreButtonAriaLabel:"More options"};var errorBar$k={unableToReachChatService:"You are offline",accessDenied:"Unable to access chat services - please check the user credentials provided",userNotInChatThread:"You are no longer in this chat thread",sendMessageNotInChatThread:"Failed to send message because you are no longer in this chat thread",sendMessageGeneric:"Failed to send message",callingNetworkFailure:"Troubling connecting call - you seem to be offline",startVideoGeneric:"Failed to start video",stopVideoGeneric:"Failed to stop video",muteGeneric:"Failed to mute microphone",unmuteGeneric:"Failed to unmute microphone",speakingWhileMuted:"Your microphone is muted",startScreenShareGeneric:"There was an issue starting screen share.",stopScreenShareGeneric:"Failed to stop screen sharing",callNetworkQualityLow:"Network quality is low.",callNoSpeakerFound:"No speakers or headphones found. Connect an audio device to hear the call.",callNoMicrophoneFound:"No microphones found. Connect an audio input device.",callMicrophoneAccessDenied:"Unable to access microphone. Click the lock in the address bar to grant permission to this webpage.",callMicrophoneAccessDeniedSafari:"Unable to access microphone. Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",callMicrophoneMutedBySystem:"You are muted by your system.",callMicrophoneUnmutedBySystem:"Your microphone recovered and you were unmuted by your system.",callMacOsMicrophoneAccessDenied:"Unable to access microphone. Grant microphone permission in your macOS privacy settings.",callLocalVideoFreeze:"Network bandwidth is poor. Your video may appear paused for others on the call.",callCameraAccessDenied:"Unable to access camera. Click the lock in the address bar to grant permission to this webpage.",callCameraAccessDeniedSafari:"Unable to access camera. Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",callCameraAlreadyInUse:"Unable to access camera. It may already be in use by another application.",callVideoStoppedBySystem:"Your video has been stopped by your system.",callVideoRecoveredBySystem:"Your video has resumed.",callMacOsCameraAccessDenied:"MacOS is blocking access to your camera. Update your privacy settings to allow this browser to access your camera.",callMacOsScreenShareAccessDenied:"MacOS is blocking screen sharing. Update your privacy settings to allow this browser to record your screen.",dismissButtonAriaLabel:"Close",failedToJoinCallGeneric:"Failed to join call.",failedToJoinCallInvalidMeetingLink:"Unable to join Meeting. Invalid Link.",cameraFrozenForRemoteParticipants:"Users in the call are having issues seeing your video. Please check your devices and network.",unableToStartVideoEffect:"Unable to apply video effect.",startSpotlightWhileMaxParticipantsAreSpotlighted:"Cannot start spotlight on participant(s) because the maximum number of participants are already spotlighted.",mutedByRemoteParticipant:"You were muted by another participant."};var notificationStack={callingNetworkFailure:{title:"Troubling connecting call",message:"You seem to be offline. Please check your network connection and try again.",closeButtonAriaLabel:"Close"},startVideoGeneric:{title:"Failed to start video.",closeButtonAriaLabel:"Close"},stopVideoGeneric:{title:"Failed to stop video.",closeButtonAriaLabel:"Close"},muteGeneric:{title:"Failed to mute microphone.",closeButtonAriaLabel:"Close"},unmuteGeneric:{title:"Failed to unmute microphone.",closeButtonAriaLabel:"Close"},speakingWhileMuted:{title:"You're muted.",closeButtonAriaLabel:"Close"},startScreenShareGeneric:{title:"There was an issue starting screen share.",closeButtonAriaLabel:"Close"},stopScreenShareGeneric:{title:"Failed to stop screen sharing.",closeButtonAriaLabel:"Close"},callNetworkQualityLow:{title:"Network quality is low.",closeButtonAriaLabel:"Close"},callNoSpeakerFound:{title:"No speakers or headphones found",message:"Connect an audio device to hear the call.",closeButtonAriaLabel:"Close"},callNoMicrophoneFound:{title:"No microphones found",message:"Connect an audio input device.",closeButtonAriaLabel:"Close"},callMicrophoneAccessDenied:{title:"Unable to access microphone",message:"Click the lock in the address bar to grant permission to this webpage.",closeButtonAriaLabel:"Close"},callMicrophoneAccessDeniedSafari:{title:"Unable to access microphone",message:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",closeButtonAriaLabel:"Close"},callMicrophoneMutedBySystem:{title:"You are muted by your system.",closeButtonAriaLabel:"Close"},callMicrophoneUnmutedBySystem:{title:"Your microphone recovered and you were unmuted by your system.",closeButtonAriaLabel:"Close"},callMacOsMicrophoneAccessDenied:{title:"Unable to access microphone",message:"Grant microphone permission in your macOS privacy settings.",closeButtonAriaLabel:"Close"},callLocalVideoFreeze:{title:"Network bandwidth is poor",message:"Your video may appear paused for others on the call.",closeButtonAriaLabel:"Close"},callCameraAccessDenied:{title:"Unable to access camera",message:"Click the lock in the address bar to grant permission to this webpage.",closeButtonAriaLabel:"Close"},callCameraAccessDeniedSafari:{title:"Unable to access camera",message:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",closeButtonAriaLabel:"Close"},callCameraAlreadyInUse:{title:"Unable to access camera",message:"It may already be in use by another application.",closeButtonAriaLabel:"Close"},callVideoStoppedBySystem:{title:"Your video has been stopped by your system.",closeButtonAriaLabel:"Close"},callVideoRecoveredBySystem:{title:"Your video has resumed.",closeButtonAriaLabel:"Close"},callMacOsCameraAccessDenied:{title:"MacOS is blocking access to your camera",message:"Update your privacy settings to allow this browser to access your camera.",closeButtonAriaLabel:"Close"},callMacOsScreenShareAccessDenied:{title:"MacOS is blocking screen sharing",message:"Update your privacy settings to allow this browser to record your screen.",closeButtonAriaLabel:"Close"},failedToJoinCallGeneric:{title:"Failed to join call.",closeButtonAriaLabel:"Close"},failedToJoinCallInvalidMeetingLink:{title:"Unable to join Meeting. Invalid Link.",closeButtonAriaLabel:"Close"},cameraFrozenForRemoteParticipants:{title:"Users in the call are having issues seeing your video",message:"Please check your devices and network.",closeButtonAriaLabel:"Close"},unableToStartVideoEffect:{title:"Unable to apply video effect.",closeButtonAriaLabel:"Close"},startSpotlightWhileMaxParticipantsAreSpotlighted:{title:"Cannot start spotlight on participant(s)",message:"The maximum number of participants are already spotlighted.",closeButtonAriaLabel:"Close"},mutedByRemoteParticipant:{title:"You were muted by another participant.",closeButtonAriaLabel:"Close"}};var videoGallery$k={screenIsBeingSharedMessage:"You are sharing your screen",screenShareLoadingMessage:"Loading {participant}'s screen",localVideoLabel:"You",localVideoCameraSwitcherLabel:"Switch camera",localVideoMovementLabel:"Movable Local Video Tile",localVideoMovementAriaLabel:"Movable Local Video Tile",localVideoSelectedDescription:"{cameraName} selected",displayNamePlaceholder:"Unnamed participant",fitRemoteParticipantToFrame:"Fit to frame",fillRemoteParticipantFrame:"Fill frame",pinParticipantForMe:"Pin for me",pinParticipantForMeLimitReached:"Pin (limit reached)",unpinParticipantForMe:"Unpin",pinParticipantMenuItemAriaLabel:"Pin {participantName}",unpinParticipantMenuItemAriaLabel:"Unpin {participantName}",pinnedParticipantAnnouncementAriaLabel:"Pinned {participantName}",unpinnedParticipantAnnouncementAriaLabel:"Unpinned {participantName}",startSpotlightVideoTileMenuLabel:"Spotlight for everyone",addSpotlightVideoTileMenuLabel:"Add spotlight",spotlightLimitReachedMenuTitle:"Spotlight limit reached",stopSpotlightVideoTileMenuLabel:"Stop spotlighting",stopSpotlightOnSelfVideoTileMenuLabel:"Exit spotlight",attendeeRole:"Attendee",muteParticipantMenuItemLabel:"Mute"};var dialpad$k={placeholderText:"Enter phone number",deleteButtonAriaLabel:"Delete"};var holdButton$k={onLabel:"Resume",offLabel:"Hold",tooltipOnContent:"Resume call",tooltipOffContent:"Hold call"};var videoTile$k={participantStateRinging:"Calling...",participantStateHold:"On hold",moreOptionsButtonAriaLabel:"More Options"};var CameraAndMicrophoneSitePermissionsRequest$k={primaryText:"Allow {appName} to use your camera and microphone",secondaryText:"This is so participants can see and hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera and microphone",ariaLabel:"Allow camera and microphone access"};var CameraSitePermissionsRequest$k={primaryText:"Allow {appName} to use your camera",secondaryText:"This is so participants can see you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera",ariaLabel:"Allow camera access"};var MicrophoneSitePermissionsRequest$k={primaryText:"Allow {appName} to use your microphone",secondaryText:"This is so participants can hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without microphone",ariaLabel:"Allow microphone access"};var CameraAndMicrophoneSitePermissionsCheck$k={primaryText:"Checking for camera and microphone access",secondaryText:"Allow access if prompted. This is so participants can see and hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera and microphone",ariaLabel:"Checking for camera and microphone access. Allow access if prompted."};var CameraSitePermissionsCheck$k={primaryText:"Checking for camera access",secondaryText:"Allow access if prompted. This is so participants can see you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without camera",ariaLabel:"Checking for camera access. Allow access if prompted."};var MicrophoneSitePermissionsCheck$k={primaryText:"Checking for microphone access",secondaryText:"Allow access if prompted. This is so participants can hear you.",linkText:"Need help? Get troubleshooting help",primaryButtonText:"Continue without microphone",ariaLabel:"Checking for microphone access. Allow access if prompted."};var CameraAndMicrophoneSitePermissionsDenied$k={primaryText:"Unable to access camera and microphone",secondaryText:"Click the lock icon in the address bar to grant microphone permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without camera and microphone",linkText:"Need help? Get troubleshooting help"};var CameraAndMicrophoneSitePermissionsDeniedSafari$k={primaryText:"Unable to access camera and microphone",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without camera and microphone",linkText:"Need help? Get troubleshooting help"};var CameraSitePermissionsDenied$k={primaryText:"Unable to access camera",secondaryText:"Click the lock icon in the address bar to grant camera permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without camera",linkText:"Need help? Get troubleshooting help"};var MicrophoneSitePermissionsDenied$k={primaryText:"Unable to access microphone",secondaryText:"Click the lock icon in the address bar to grant microphone permissions to this webpage. A page refresh may be required.",primaryButtonText:"Continue without microphone",linkText:"Need help? Get troubleshooting help"};var CameraSitePermissionsDeniedSafari$k={primaryText:"Unable to access camera",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without camera",linkText:"Need help? Get troubleshooting help"};var MicrophoneSitePermissionsDeniedSafari$k={primaryText:"Unable to access microphone",secondaryText:"Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",primaryButtonText:"Continue without microphone",linkText:"Need help? Get troubleshooting help"};var UnsupportedBrowser$l={primaryText:"Browser not supported",secondaryText:"Please join this call using a compatible browser.",moreHelpLinkText:"See compatibility requirements"};var UnsupportedBrowserVersion$l={primaryText:"Browser update needed",secondaryText:"To ensure the best call possible, please update your browser and then try joining the call again.",moreHelpLinkText:"See compatibility requirements",continueAnywayButtonText:"Start call without updating"};var UnsupportedOperatingSystem$l={primaryText:"Operating system not supported",secondaryText:"Please join this call using a device with a compatible operating system.",moreHelpLinkText:"See compatibility requirements"};var BrowserPermissionDenied$k={primaryText:"Can't use your camera or microphone",secondaryText:"Your browser might not have access to your camera or microphone. To fix this, open System Preferences.",primaryButtonText:"Try again",linkText:"Need help? Get troubleshooting help"};var BrowserPermissionDeniedIOS$k={primaryText:"Allow microphone access to continue",secondaryText:"So other participants can hear you.",primaryButtonText:"Try again",imageAltText:"Microphone and camera device permission location for iOS",linkText:"Need help? Get troubleshooting help",step1Text:"Go to the Settings app",step2Text:"Scroll down to settings for this browser",step3Text:"Turn on Microphone (Camera optional)",step4Text:"Try joining the call again",step1DigitText:"1",step2DigitText:"2",step3DigitText:"3",step4DigitText:"4"};var verticalGallery$k={leftNavButtonAriaLabel:"previous page",rightNavButtonAriaLabel:"next page"};var MeetingConferencePhoneInfo$k={meetingConferencePhoneInfoModalTitle:"Join call from your phone",meetingConferencePhoneInfoModalDialIn:"Dial number",meetingConferencePhoneInfoModalMeetingId:"Enter meeting ID",meetingConferencePhoneInfoModalWait:"Wait to be admitted by organizer",meetingConferencePhoneInfoModalNoPhoneAvailable:"No phone available",meetingConferencePhoneInfoModalTollGeoData:"{country}, {city}",meetingConferencePhoneInfoModalTollFree:"(Toll-free)",meetingConferencePhoneInfoModalToll:"(Toll)"};var en_US$1 = {participantItem:participantItem$k,ParticipantList:ParticipantList$l,typingIndicator:typingIndicator$k,sendBox:sendBox$k,richTextSendBox:richTextSendBox$k,mentionPopover:mentionPopover$k,imageOverlay:imageOverlay$k,messageStatusIndicator:messageStatusIndicator$k,endCallButton:endCallButton$k,cameraButton:cameraButton$k,microphoneButton:microphoneButton$k,devicesButton:devicesButton$k,participantsButton:participantsButton$k,screenShareButton:screenShareButton$k,raiseHandButton:raiseHandButton$k,reactionButton:reactionButton$k,messageThread:messageThread$k,errorBar:errorBar$k,notificationStack:notificationStack,videoGallery:videoGallery$k,dialpad:dialpad$k,holdButton:holdButton$k,videoTile:videoTile$k,CameraAndMicrophoneSitePermissionsRequest:CameraAndMicrophoneSitePermissionsRequest$k,CameraSitePermissionsRequest:CameraSitePermissionsRequest$k,MicrophoneSitePermissionsRequest:MicrophoneSitePermissionsRequest$k,CameraAndMicrophoneSitePermissionsCheck:CameraAndMicrophoneSitePermissionsCheck$k,CameraSitePermissionsCheck:CameraSitePermissionsCheck$k,MicrophoneSitePermissionsCheck:MicrophoneSitePermissionsCheck$k,CameraAndMicrophoneSitePermissionsDenied:CameraAndMicrophoneSitePermissionsDenied$k,CameraAndMicrophoneSitePermissionsDeniedSafari:CameraAndMicrophoneSitePermissionsDeniedSafari$k,CameraSitePermissionsDenied:CameraSitePermissionsDenied$k,MicrophoneSitePermissionsDenied:MicrophoneSitePermissionsDenied$k,CameraSitePermissionsDeniedSafari:CameraSitePermissionsDeniedSafari$k,MicrophoneSitePermissionsDeniedSafari:MicrophoneSitePermissionsDeniedSafari$k,UnsupportedBrowser:UnsupportedBrowser$l,UnsupportedBrowserVersion:UnsupportedBrowserVersion$l,UnsupportedOperatingSystem:UnsupportedOperatingSystem$l,BrowserPermissionDenied:BrowserPermissionDenied$k,BrowserPermissionDeniedIOS:BrowserPermissionDeniedIOS$k,verticalGallery:verticalGallery$k,MeetingConferencePhoneInfo:MeetingConferencePhoneInfo$k};
5907
5914
 
5908
5915
  // Copyright (c) Microsoft Corporation.
5909
5916
  // Licensed under the MIT License.
@@ -6415,7 +6422,9 @@ const customNotificationIconName = {
6415
6422
  callCameraAlreadyInUse: 'ErrorBarCallCameraAlreadyInUse',
6416
6423
  callVideoStoppedBySystem: 'ErrorBarCallVideoStoppedBySystem',
6417
6424
  callVideoRecoveredBySystem: 'ErrorBarCallVideoRecoveredBySystem',
6418
- callMacOsCameraAccessDenied: 'ErrorBarCallMacOsCameraAccessDenied'
6425
+ callMacOsCameraAccessDenied: 'ErrorBarCallMacOsCameraAccessDenied',
6426
+ /* @conditional-compile-remove(soft-mute) */
6427
+ mutedByRemoteParticipant: 'ErrorBarMutedByRemoteParticipant'
6419
6428
  };
6420
6429
  /**
6421
6430
  * @private
@@ -7114,6 +7123,8 @@ const DEFAULT_COMPONENT_ICONS = {
7114
7123
  ErrorBarClear: React.createElement(reactIcons.Dismiss16Regular, null),
7115
7124
  ErrorBarCallVideoRecoveredBySystem: React.createElement(reactIcons.Video16Filled, null),
7116
7125
  ErrorBarCallVideoStoppedBySystem: React.createElement(reactIcons.VideoProhibited16Filled, null),
7126
+ /* @conditional-compile-remove(soft-mute) */
7127
+ ErrorBarMutedByRemoteParticipant: React.createElement(reactIcons.MicOff16Regular, null),
7117
7128
  HorizontalGalleryLeftButton: React.createElement(GalleryLeftButton, null),
7118
7129
  HorizontalGalleryRightButton: React.createElement(GalleryRightButton, null),
7119
7130
  MessageDelivered: React.createElement(reactIcons.CheckmarkCircle16Regular, null),
@@ -13939,7 +13950,7 @@ class _ErrorBoundary extends React.Component {
13939
13950
  // Copyright (c) Microsoft Corporation.
13940
13951
  // Licensed under the MIT License.
13941
13952
  /* @conditional-compile-remove(rich-text-editor) */
13942
- const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-_hqOwT_h.js'); }));
13953
+ const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-Bl9FzI6X.js'); }));
13943
13954
  /**
13944
13955
  * @private
13945
13956
  * Use this function to load RoosterJS dependencies early in the lifecycle.
@@ -13947,7 +13958,7 @@ const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve()
13947
13958
  *
13948
13959
  * @conditional-compile-remove(rich-text-editor)
13949
13960
  */
13950
- const loadChatMessageComponentAsRichTextEditBox = () => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-_hqOwT_h.js'); });
13961
+ const loadChatMessageComponentAsRichTextEditBox = () => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-Bl9FzI6X.js'); });
13951
13962
  /**
13952
13963
  * @private
13953
13964
  */
@@ -22863,7 +22874,7 @@ const _VideoBackgroundEffectsPicker = (props) => {
22863
22874
  React.createElement(react.Label, { className: react.mergeStyles((_c = props.styles) === null || _c === void 0 ? void 0 : _c.label) }, props.label),
22864
22875
  optionsByRow.map((options, rowIndex) => {
22865
22876
  var _a;
22866
- return (React.createElement(react.Stack, { className: react.mergeStyles((_a = props.styles) === null || _a === void 0 ? void 0 : _a.rowRoot), wrap: props.itemsPerRow === 'wrap', horizontal: true, key: rowIndex, tokens: { childrenGap: '0.5rem' }, "data-ui-id": "video-effects-picker-row", horizontalAlign: "center" },
22877
+ return (React.createElement(react.Stack, { className: react.mergeStyles((_a = props.styles) === null || _a === void 0 ? void 0 : _a.rowRoot), wrap: props.itemsPerRow === 'wrap', horizontal: true, key: rowIndex, tokens: { childrenGap: '0.5rem' }, "data-ui-id": "video-effects-picker-row" },
22867
22878
  options.map((option, i) => {
22868
22879
  if (i === 0 && rowIndex === 0) {
22869
22880
  return (React.createElement(_VideoEffectsItem, Object.assign({}, option, { itemKey: option.itemKey, key: option.itemKey, componentRef: props.componentRef })));
@@ -23449,7 +23460,13 @@ const MeetingConferencePhoneInfoModal = (props) => {
23449
23460
  React.createElement(react.Stack.Item, null,
23450
23461
  React.createElement(react.Text, { className: stepTextStyle }, strings === null || strings === void 0 ? void 0 : strings.meetingConferencePhoneInfoModalDialIn)))),
23451
23462
  React.createElement(react.Stack.Item, { className: phoneInfoStep$1 }, conferencePhoneInfoList.map((phoneNumber, index) => (React.createElement(react.Stack.Item, { key: index },
23452
- React.createElement(react.Text, { className: phoneInfoTextStyle$1 }, formatPhoneNumber(phoneNumber.phoneNumber)),
23463
+ React.createElement(react.Text, { className: phoneInfoTextStyle$1 },
23464
+ formatPhoneNumber(phoneNumber.phoneNumber),
23465
+ ' ',
23466
+ phoneNumber.isTollFree
23467
+ ? strings.meetingConferencePhoneInfoModalTollFree
23468
+ : strings.meetingConferencePhoneInfoModalToll),
23469
+ React.createElement("br", null),
23453
23470
  React.createElement(react.Text, { className: phoneInfoTextStyle$1 },
23454
23471
  " ",
23455
23472
  formatPhoneNumberInfo(phoneNumber, strings))))))),
@@ -23503,13 +23520,7 @@ const formatPhoneNumberLink = (phoneNumber) => {
23503
23520
  * format phone number
23504
23521
  */
23505
23522
  const formatPhoneNumberInfo = (phoneNumber, strings) => {
23506
- const templateText = phoneNumber.isTollFree
23507
- ? phoneNumber.country && phoneNumber.city
23508
- ? strings === null || strings === void 0 ? void 0 : strings.meetingConferencePhoneInfoModalTollFree
23509
- : strings === null || strings === void 0 ? void 0 : strings.meetingConferencePhoneInfoModalTollFreeWithoutGeoData
23510
- : phoneNumber.country && phoneNumber.city
23511
- ? strings === null || strings === void 0 ? void 0 : strings.meetingConferencePhoneInfoModalToll
23512
- : strings === null || strings === void 0 ? void 0 : strings.meetingConferencePhoneInfoModalTollWithoutGeoData;
23523
+ const templateText = phoneNumber.country && phoneNumber.city ? strings === null || strings === void 0 ? void 0 : strings.meetingConferencePhoneInfoModalTollGeoData : '';
23513
23524
  return ((templateText === null || templateText === void 0 ? void 0 : templateText.replace('{phoneNumber}', formatPhoneNumber(phoneNumber.phoneNumber)).replace('{country}', phoneNumber.country || '').replace('{city}', phoneNumber.city || '').trim()) || '');
23514
23525
  };
23515
23526
  /* @conditional-compile-remove(teams-meeting-conference) */
@@ -23588,9 +23599,9 @@ const notificationIconClassName = react.mergeStyles({
23588
23599
  *
23589
23600
  * @beta
23590
23601
  */
23591
- const NotificationBar = (props) => {
23602
+ const Notification = (props) => {
23592
23603
  var _a, _b;
23593
- const strings = props.notificationBarStrings;
23604
+ const strings = props.notificationStrings;
23594
23605
  const theme = react.useTheme();
23595
23606
  const [show, setShow] = React.useState(true);
23596
23607
  if (props.autoDismiss) {
@@ -23607,7 +23618,7 @@ const NotificationBar = (props) => {
23607
23618
  React.createElement(react.Stack, { "data-ui-id": "notification-bar", className: containerStyles$2(theme) },
23608
23619
  React.createElement(react.Stack, { horizontal: true, horizontalAlign: "space-between" },
23609
23620
  React.createElement(react.Stack, { horizontal: true },
23610
- React.createElement(react.Icon, Object.assign({ className: notificationIconClassName, iconName: (_b = (_a = props.notificationBarIconProps) === null || _a === void 0 ? void 0 : _a.iconName) !== null && _b !== void 0 ? _b : 'ErrorBadge' }, props.notificationBarIconProps)),
23621
+ React.createElement(react.Icon, Object.assign({ className: notificationIconClassName, iconName: (_b = (_a = props.notificationIconProps) === null || _a === void 0 ? void 0 : _a.iconName) !== null && _b !== void 0 ? _b : 'ErrorBadge' }, props.notificationIconProps)),
23611
23622
  React.createElement(react.Text, { className: titleTextClassName }, strings === null || strings === void 0 ? void 0 : strings.title)),
23612
23623
  React.createElement(react.IconButton, { iconProps: cancelIcon, ariaLabel: strings === null || strings === void 0 ? void 0 : strings.closeButtonAriaLabel, "aria-live": 'polite', onClick: props.onDismiss })),
23613
23624
  React.createElement(react.Text, { className: messageTextStyle(theme) }, strings === null || strings === void 0 ? void 0 : strings.message),
@@ -23621,8 +23632,8 @@ const NotificationBar = (props) => {
23621
23632
  // Licensed under the MIT License.
23622
23633
  /**
23623
23634
  * A component to show notifications on the UI.
23624
- * All strings that can be shown are accepted as the {@link NotificationsProps.strings} so that they can be localized.
23625
- * Active notifications are selected by {@link NotificationsProps.activeNotifications}.
23635
+ * All strings that can be shown are accepted as the {@link NotificationStackProps.strings} so that they can be localized.
23636
+ * Active notifications are selected by {@link NotificationStackProps.activeNotifications}.
23626
23637
  *
23627
23638
  * This component internally tracks dismissed by the user.
23628
23639
  * * Notifications that have an associated timestamp: The notification is shown on the UI again if it occurs after being dismissed.
@@ -23632,10 +23643,10 @@ const NotificationBar = (props) => {
23632
23643
  *
23633
23644
  * @beta
23634
23645
  */
23635
- const Notifications = (props) => {
23646
+ const NotificationStack = (props) => {
23636
23647
  var _a, _b;
23637
23648
  /* @conditional-compile-remove(notifications) */
23638
- const localeStrings = useLocale$1().strings.notifications;
23649
+ const localeStrings = useLocale$1().strings.notificationStack;
23639
23650
  const strings = (_a = props.strings) !== null && _a !== void 0 ? _a : localeStrings;
23640
23651
  const maxNotificationsToShow = (_b = props.maxNotificationsToShow) !== null && _b !== void 0 ? _b : 2;
23641
23652
  const trackDismissedNotificationsInternally = !props.onDismissNotification;
@@ -23655,7 +23666,7 @@ const Notifications = (props) => {
23655
23666
  } }, activeNotifications.map((notification, index) => {
23656
23667
  if (index < maxNotificationsToShow) {
23657
23668
  return (React.createElement("div", { key: index, style: { marginBottom: `${index === maxNotificationsToShow - 1 ? 0 : '0.25rem'}` } },
23658
- React.createElement(NotificationBar, { notificationBarStrings: strings ? strings[notification.type] : undefined, notificationBarIconProps: NotificationIconProps(notification.type), onClickPrimaryButton: () => { var _a; return (_a = notification.onClickPrimaryButton) === null || _a === void 0 ? void 0 : _a.call(notification); }, onClickSecondaryButton: () => { var _a; return (_a = notification.onClickSecondaryButton) === null || _a === void 0 ? void 0 : _a.call(notification); }, onDismiss: () => {
23669
+ React.createElement(Notification, { notificationStrings: strings ? strings[notification.type] : undefined, notificationIconProps: NotificationIconProps(notification.type), onClickPrimaryButton: () => { var _a; return (_a = notification.onClickPrimaryButton) === null || _a === void 0 ? void 0 : _a.call(notification); }, onClickSecondaryButton: () => { var _a; return (_a = notification.onClickSecondaryButton) === null || _a === void 0 ? void 0 : _a.call(notification); }, onDismiss: () => {
23659
23670
  var _a;
23660
23671
  trackDismissedNotificationsInternally
23661
23672
  ? setDismissedNotifications(dismissNotification(dismissedNotifications, notification))
@@ -24436,15 +24447,7 @@ const useSelector$3 = (selector, selectorProps) => {
24436
24447
  *
24437
24448
  * @public
24438
24449
  */
24439
- const errorBarSelector$1 = reselect.createSelector([
24440
- getLatestErrors$1,
24441
- getDiagnostics,
24442
- getDeviceManager$1,
24443
- getEnvironmentInfo,
24444
- /* @conditional-compile-remove(teams-meeting-conference) */ getTeamsMeetingConference
24445
- ], (latestErrors, diagnostics, deviceManager, environmentInfo,
24446
- /* @conditional-compile-remove(teams-meeting-conference) */
24447
- meetingConference) => {
24450
+ const errorBarSelector$1 = reselect.createSelector([getLatestErrors$1, getDiagnostics, getDeviceManager$1, getEnvironmentInfo], (latestErrors, diagnostics, deviceManager, environmentInfo) => {
24448
24451
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
24449
24452
  // The order in which the errors are returned is significant: The `ErrorBar` shows errors on the UI in that order.
24450
24453
  // There are several options for the ordering:
@@ -24462,15 +24465,8 @@ meetingConference) => {
24462
24465
  /* @conditional-compile-remove(calling-environment-info) */
24463
24466
  return (environmentInfo === null || environmentInfo === void 0 ? void 0 : environmentInfo.environment.platform) === 'mac';
24464
24467
  };
24465
- // Errors reported via diagnostics are more reliable than from API method failures, so process those first.
24466
- let isTeamsMeetingWithPhones = false;
24467
- /* @conditional-compile-remove(teams-meeting-conference) */
24468
- if (meetingConference && meetingConference.length > 0) {
24469
- isTeamsMeetingWithPhones = true;
24470
- }
24471
- if (!isTeamsMeetingWithPhones && // Teams meeting with conference phones has separate notification
24472
- (((_a = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.network.latest.networkReceiveQuality) === null || _a === void 0 ? void 0 : _a.value) === communicationCalling.DiagnosticQuality.Bad ||
24473
- ((_b = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.network.latest.networkReceiveQuality) === null || _b === void 0 ? void 0 : _b.value) === communicationCalling.DiagnosticQuality.Poor)) {
24468
+ if (((_a = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.network.latest.networkReceiveQuality) === null || _a === void 0 ? void 0 : _a.value) === communicationCalling.DiagnosticQuality.Bad ||
24469
+ ((_b = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.network.latest.networkReceiveQuality) === null || _b === void 0 ? void 0 : _b.value) === communicationCalling.DiagnosticQuality.Poor) {
24474
24470
  activeErrorMessages.push({ type: 'callNetworkQualityLow' });
24475
24471
  }
24476
24472
  if (((_c = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.media.latest.noSpeakerDevicesEnumerated) === null || _c === void 0 ? void 0 : _c.value) === true) {
@@ -24553,6 +24549,8 @@ meetingConference) => {
24553
24549
  appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.startVideo', 'startVideoGeneric');
24554
24550
  }
24555
24551
  appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.unmute', 'unmuteGeneric');
24552
+ /* @conditional-compile-remove(soft-mute) */
24553
+ appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.mutedByOthers', 'mutedByRemoteParticipant');
24556
24554
  appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'VideoEffectsFeature.startEffects', 'unableToStartVideoEffect');
24557
24555
  if (((_s = latestErrors['CallAgent.join']) === null || _s === void 0 ? void 0 : _s.message) === 'CallAgent.join: Invalid meeting link') {
24558
24556
  appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'CallAgent.join', 'failedToJoinCallInvalidMeetingLink');
@@ -28357,7 +28355,7 @@ const AttachmentDownloadErrorBar = (props) => {
28357
28355
  /**
28358
28356
  * Wrapper for RichTextSendBox component to allow us to use usePropsFor with richTextSendBox with lazy loading
28359
28357
  */
28360
- const RichTextSendBoxWrapper = React.lazy(() => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-D-KYGmZ9.js'); }).then((module) => ({ default: module.RichTextSendBoxWrapper })));
28358
+ const RichTextSendBoxWrapper = React.lazy(() => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-G-04IaQB.js'); }).then((module) => ({ default: module.RichTextSendBoxWrapper })));
28361
28359
  /**
28362
28360
  * @private
28363
28361
  * Use this function to load RoosterJS dependencies early in the lifecycle.
@@ -28365,7 +28363,7 @@ const RichTextSendBoxWrapper = React.lazy(() => Promise.resolve().then(function
28365
28363
  *
28366
28364
  /* @conditional-compile-remove(rich-text-editor-composite-support)
28367
28365
  */
28368
- const loadRichTextSendBox = () => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-D-KYGmZ9.js'); }).then((module) => ({ default: module.RichTextSendBoxWrapper }));
28366
+ const loadRichTextSendBox = () => Promise.resolve().then(function () { return require('./RichTextSendBoxWrapper-G-04IaQB.js'); }).then((module) => ({ default: module.RichTextSendBoxWrapper }));
28369
28367
  /**
28370
28368
  * @private
28371
28369
  */
@@ -33533,6 +33531,12 @@ const MeetingPhoneInfoPaneContent = (props) => {
33533
33531
  React.createElement(react.Text, { className: phoneInfoLabelStyle }, localeStrings.meetingConferencePhoneInfoModalDialIn)))),
33534
33532
  React.createElement(react.Stack.Item, { className: phoneInfoStep }, conferencePhoneInfoList.map((phoneNumber, index) => (React.createElement(react.Stack.Item, { key: index },
33535
33533
  React.createElement(react.Link, { className: phoneInfoTextStyle, href: formatPhoneNumberLink(phoneNumber) }, formatPhoneNumber(phoneNumber.phoneNumber)),
33534
+ React.createElement(react.Text, { className: phoneInfoTextStyle },
33535
+ ' ',
33536
+ phoneNumber.isTollFree
33537
+ ? localeStrings.meetingConferencePhoneInfoModalTollFree
33538
+ : localeStrings.meetingConferencePhoneInfoModalToll),
33539
+ React.createElement("br", null),
33536
33540
  React.createElement(react.Text, { className: phoneInfoTextStyle },
33537
33541
  " ",
33538
33542
  formatPhoneNumberInfo(phoneNumber, localeStrings))))))),
@@ -33596,41 +33600,6 @@ const useMeetingPhoneInfoPane = (props) => {
33596
33600
  };
33597
33601
  };
33598
33602
 
33599
- // Copyright (c) Microsoft Corporation.
33600
- // Licensed under the MIT License.
33601
- /* @conditional-compile-remove(teams-meeting-conference) */
33602
- /* @conditional-compile-remove(teams-meeting-conference) */
33603
- /**
33604
- * Create a record for bad network when the notification recieved.
33605
- *
33606
- * @private
33607
- */
33608
- const useBadNetworkQualityNotifications = (connectionLostFlag) => {
33609
- const [currentConnectionLost, setCurrentConnectionLost] = React.useState(false);
33610
- React.useEffect(() => {
33611
- setCurrentConnectionLost(connectionLostFlag);
33612
- }, [connectionLostFlag]);
33613
- const connectionLost = React.useMemo(() => currentConnectionLost, [currentConnectionLost]);
33614
- return {
33615
- isPoorNetworkQuality: connectionLost
33616
- };
33617
- };
33618
- /* @conditional-compile-remove(teams-meeting-conference) */
33619
- /**
33620
- * Connection lost notification bar during teams meeting, which provides a message to use PSTN option.
33621
- * @beta
33622
- */
33623
- const BadNetworkQualityNotificationBar = (props) => {
33624
- const localeStrings = useLocale().component.strings.MeetingConferencePhoneInfo;
33625
- const barStrings = {
33626
- title: localeStrings.badQualityBarTitle ? localeStrings.badQualityBarTitle : '',
33627
- closeButtonAriaLabel: localeStrings.badQualityBarClose ? localeStrings.badQualityBarClose : '',
33628
- message: localeStrings.badQualityBarMessage ? localeStrings.badQualityBarMessage : '',
33629
- primaryButtonLabel: localeStrings.badQualityBarJoin ? localeStrings.badQualityBarJoin : ''
33630
- };
33631
- return (React.createElement(NotificationBar, { notificationBarStrings: barStrings, notificationBarIconProps: { iconName: 'ErrorBarCallNetworkQualityLow' }, onClickPrimaryButton: () => props.onPrimaryButtonClick && props.onPrimaryButtonClick(), onDismiss: () => props.onDismissNotification && props.onDismissNotification() }));
33632
- };
33633
-
33634
33603
  // Copyright (c) Microsoft Corporation.
33635
33604
  // Licensed under the MIT License.
33636
33605
  /**
@@ -33781,40 +33750,13 @@ const VideoEffectsPaneContent = (props) => {
33781
33750
  return VideoEffectsPaneTrampoline(onDismissError, props.updateFocusHandle, activeVideoEffectError, selectableVideoEffects, onEffectChange);
33782
33751
  };
33783
33752
  const VideoEffectsPaneTrampoline = (onDismissError, updateFocusHandle, activeVideoEffectError, selectableVideoEffects, onEffectChange) => {
33784
- var _a, _b;
33785
33753
  const selectedEffect = useSelector$1(activeVideoBackgroundEffectSelector);
33786
33754
  const isCameraOn = useSelector$1(localVideoSelector).isAvailable;
33787
33755
  const showWarning = !isCameraOn && selectedEffect !== 'none';
33788
33756
  const locale = useLocale();
33789
- /* @conditional-compile-remove(notifications) */
33790
- const videoEffectErrorStrings = {
33791
- title: (_a = locale.strings.call.unableToStartVideoEffect) !== null && _a !== void 0 ? _a : '',
33792
- closeButtonAriaLabel: locale.strings.call.close
33793
- };
33794
- /* @conditional-compile-remove(notifications) */
33795
- const warningStrings = {
33796
- title: (_b = locale.strings.call.cameraOffBackgroundEffectWarningText) !== null && _b !== void 0 ? _b : '',
33797
- closeButtonAriaLabel: locale.strings.call.close
33798
- };
33799
- /* @conditional-compile-remove(notifications) */
33800
- const [errorNotificationDismissed, setErrorNotificationDismissed] = React.useState(false);
33801
- /* @conditional-compile-remove(notifications) */
33802
- const [warningNotificationDismissed, setWarningNotificationDismissed] = React.useState(false);
33803
- const videoEffectErrorTrampoline = () => {
33804
- /* @conditional-compile-remove(notifications) */
33805
- return (React.createElement(React.Fragment, null,
33806
- activeVideoEffectError && isCameraOn && !errorNotificationDismissed && (React.createElement(NotificationBar, { onDismiss: () => {
33807
- if (activeVideoEffectError) {
33808
- onDismissError(activeVideoEffectError);
33809
- }
33810
- setErrorNotificationDismissed(true);
33811
- }, notificationBarStrings: videoEffectErrorStrings })),
33812
- showWarning && !warningNotificationDismissed && (React.createElement(NotificationBar, { onDismiss: () => {
33813
- setWarningNotificationDismissed(true);
33814
- }, notificationBarStrings: warningStrings }))));
33815
- };
33816
33757
  return (React.createElement(react.Stack, { tokens: { childrenGap: '0.75rem' }, className: react.mergeStyles({ paddingLeft: '0.5rem' }) },
33817
- videoEffectErrorTrampoline(),
33758
+ activeVideoEffectError && isCameraOn && (React.createElement(react.MessageBar, { messageBarType: react.MessageBarType.error, onDismiss: () => onDismissError(activeVideoEffectError) }, locale.strings.call.unableToStartVideoEffect)),
33759
+ showWarning && (React.createElement(react.MessageBar, { messageBarType: react.MessageBarType.warning }, locale.strings.call.cameraOffBackgroundEffectWarningText)),
33818
33760
  React.createElement(_VideoBackgroundEffectsPicker, { label: locale.strings.call.videoEffectsPaneBackgroundSelectionTitle, styles: backgroundPickerStyles, options: selectableVideoEffects !== null && selectableVideoEffects !== void 0 ? selectableVideoEffects : [], onChange: onEffectChange, selectedEffectKey: selectedEffect, componentRef: updateFocusHandle })));
33819
33761
  };
33820
33762
  const backgroundPickerStyles = {
@@ -33830,7 +33772,7 @@ const backgroundPickerStyles = {
33830
33772
  /** @private */
33831
33773
  const VIDEO_EFFECTS_SIDE_PANE_ID = 'videoeffects';
33832
33774
  /** @private */
33833
- const VIDEO_EFFECTS_SIDE_PANE_WIDTH_REM = 22;
33775
+ const VIDEO_EFFECTS_SIDE_PANE_WIDTH_REM = 17.5;
33834
33776
  /** @private */
33835
33777
  const useVideoEffectsPane = (updateSidePaneRenderer, mobileView, latestErrors, onDismissError, cameraButtonRef) => {
33836
33778
  const closePane = React.useCallback(() => {
@@ -34629,7 +34571,7 @@ const CallArrangement = (props) => {
34629
34571
  const errorNotificationTrampoline = () => {
34630
34572
  /* @conditional-compile-remove(notifications) */
34631
34573
  return (React.createElement(React.Fragment, null, props.showErrorNotifications && (React.createElement(react.Stack, { styles: bannerNotificationStyles, horizontalAlign: "center", verticalAlign: "center" },
34632
- React.createElement(Notifications, { onDismissNotification: props.onDismissError, activeNotifications: filteredLatestErrorNotifications })))));
34574
+ React.createElement(NotificationStack, { onDismissNotification: props.onDismissError, activeNotifications: filteredLatestErrorNotifications })))));
34633
34575
  };
34634
34576
  return (React.createElement("div", { ref: containerRef, className: react.mergeStyles(containerDivStyles), id: props.id },
34635
34577
  React.createElement(react.Stack, { verticalFill: true, horizontalAlign: "stretch", className: containerClassName, "data-ui-id": props.dataUiId },
@@ -34667,11 +34609,7 @@ const CallArrangement = (props) => {
34667
34609
  props.capabilitiesChangedNotificationBarProps &&
34668
34610
  props.capabilitiesChangedNotificationBarProps.capabilitiesChangedNotifications.length > 0 && (React.createElement(react.Stack, { styles: bannerNotificationStyles },
34669
34611
  React.createElement(CapabilitiesChangedNotificationBar, Object.assign({}, props.capabilitiesChangedNotificationBarProps, { capabilitiesChangedNotifications: filteredCapabilitesChangedNotifications !== null && filteredCapabilitesChangedNotifications !== void 0 ? filteredCapabilitesChangedNotifications : [] })))),
34670
- canUnmute && !!props.mutedNotificationProps && (React.createElement(MutedNotification, Object.assign({}, props.mutedNotificationProps))),
34671
- /* @conditional-compile-remove(teams-meeting-conference) */ props.badNetworkQualityBannerProps &&
34672
- props.badNetworkQualityBannerProps.isPoorNetworkQuality &&
34673
- isTeamsCall && (React.createElement(react.Stack, { styles: bannerNotificationStyles },
34674
- React.createElement(BadNetworkQualityNotificationBar, Object.assign({}, props.badNetworkQualityBannerProps, { onPrimaryButtonClick: toggleTeamsMeetingConferenceModal }))))),
34612
+ canUnmute && !!props.mutedNotificationProps && (React.createElement(MutedNotification, Object.assign({}, props.mutedNotificationProps)))),
34675
34613
  renderGallery && props.onRenderGalleryContent && props.onRenderGalleryContent(),
34676
34614
  /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */ !isInLocalHold && (React.createElement(CaptionsBanner, { isMobile: props.mobileView, onFetchAvatarPersonaData: props.onFetchAvatarPersonaData, useTeamsCaptions: useTeamsCaptions }))))),
34677
34615
  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)
@@ -34978,16 +34916,23 @@ const NetworkReconnectTile = (props) => {
34978
34916
  React.createElement(react.Stack, { horizontal: true, horizontalAlign: "center", verticalAlign: "center", className: titleContainerClassName },
34979
34917
  React.createElement(react.Text, { className: titleClassName }, localeStrings.meetingConferencePhoneInfoModalTitle)),
34980
34918
  React.createElement(react.Stack, { horizontal: true, horizontalAlign: "space-between", className: phoneInfoInstructionLine },
34919
+ React.createElement(react.Stack, { className: infoConnectionLinkStyle(theme) }),
34981
34920
  React.createElement(react.Stack.Item, null,
34982
34921
  React.createElement(react.Stack, { horizontal: true, className: phoneInfoStep },
34983
- React.createElement(react.Stack, { className: infoConnectionLinkStyle(theme) }),
34984
34922
  React.createElement(react.Stack.Item, { className: phoneInfoIcon(theme) },
34985
34923
  React.createElement(react.Stack, { verticalAlign: "center", horizontalAlign: "center" },
34986
34924
  React.createElement(react.Icon, { iconName: "PhoneNumberButton", className: phoneInfoIconStyle(theme) }))),
34987
34925
  React.createElement(react.Stack.Item, null,
34988
34926
  React.createElement(react.Text, { className: phoneInfoLabelStyle }, localeStrings.meetingConferencePhoneInfoModalDialIn)))),
34989
34927
  React.createElement(react.Stack.Item, { className: phoneInfoStep }, meetingCoordinates.map((phoneNumber, index) => (React.createElement(react.Stack.Item, { key: index },
34990
- React.createElement(react.Text, { className: phoneInfoTextStyle }, formatPhoneNumber(phoneNumber.phoneNumber)),
34928
+ React.createElement(react.Text, { className: phoneInfoTextStyle },
34929
+ props.isMobile && (React.createElement(react.Link, { className: phoneInfoTextStyle, href: formatPhoneNumberLink(phoneNumber) }, formatPhoneNumber(phoneNumber.phoneNumber))),
34930
+ !props.isMobile && (React.createElement(react.Text, { className: phoneInfoTextStyle }, formatPhoneNumber(phoneNumber.phoneNumber))),
34931
+ ' ',
34932
+ phoneNumber.isTollFree
34933
+ ? localeStrings.meetingConferencePhoneInfoModalTollFree
34934
+ : localeStrings.meetingConferencePhoneInfoModalToll),
34935
+ React.createElement("br", null),
34991
34936
  React.createElement(react.Text, { className: phoneInfoTextStyle },
34992
34937
  ' ',
34993
34938
  formatPhoneNumberInfo(phoneNumber, localeStrings))))))),
@@ -35211,9 +35156,8 @@ const CallPage = (props) => {
35211
35156
  onFetchParticipantMenuItems: onFetchParticipantMenuItems,
35212
35157
  options: callControlOptions,
35213
35158
  increaseFlyoutItemSize: mobileView
35214
- }, onFetchAvatarPersonaData: onFetchAvatarPersonaData, mobileView: mobileView, modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => _isInCall(callStatus) ? (isNetworkHealthy(networkReconnectTileProps.networkReconnectValue) ? (onRenderGalleryContentTrampoline()) : (React.createElement(NetworkReconnectTile, Object.assign({}, networkReconnectTileProps)))) : (React.createElement(React.Fragment, null)), updateSidePaneRenderer: props.updateSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, onCloseChatPane: onCloseChatPane, dataUiId: 'call-page', latestErrors: props.latestErrors, onDismissError: props.onDismissError, 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: pinnedParticipants, setPinnedParticipants: setPinnedParticipants,
35215
- /* @conditional-compile-remove(teams-meeting-conference) */
35216
- badNetworkQualityBannerProps: props.badNetworkQualityBannerProps }),
35159
+ }, onFetchAvatarPersonaData: onFetchAvatarPersonaData, mobileView: mobileView, modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => _isInCall(callStatus) ? (isNetworkHealthy(networkReconnectTileProps.networkReconnectValue) ? (onRenderGalleryContentTrampoline()) : (React.createElement(NetworkReconnectTile, Object.assign({}, networkReconnectTileProps, {
35160
+ /* /* @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, onDismissError: props.onDismissError, 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: pinnedParticipants, setPinnedParticipants: setPinnedParticipants }),
35217
35161
  React.createElement(Prompt, Object.assign({ isOpen: isPromptOpen, onDismiss: () => setIsPromptOpen(false) }, promptProps))));
35218
35162
  };
35219
35163
  /**
@@ -37414,27 +37358,6 @@ function SurveyPage(props) {
37414
37358
  React.createElement(Survey, Object.assign({}, handlers, props, { onSurveySubmittedCustom: (_a = props.surveyOptions) === null || _a === void 0 ? void 0 : _a.onSurveySubmitted, onSurveyClosed: (_b = props.surveyOptions) === null || _b === void 0 ? void 0 : _b.onSurveyClosed, isMobile: props.mobileView })))));
37415
37359
  }
37416
37360
 
37417
- // Copyright (c) Microsoft Corporation.
37418
- // Licensed under the MIT License.
37419
- /* @conditional-compile-remove(teams-meeting-conference) */
37420
- /* @conditional-compile-remove(teams-meeting-conference) */
37421
- /**
37422
- * @private
37423
- */
37424
- const badNetworkQualityBannerSelector = reselect__namespace.createSelector([getUserFacingDiagnostics], (diagnostics) => {
37425
- var _a;
37426
- return {
37427
- isPoorNetworkQuality: isNetworkQualityPoor((_a = diagnostics === null || diagnostics === void 0 ? void 0 : diagnostics.network.latest.networkReceiveQuality) === null || _a === void 0 ? void 0 : _a.value)
37428
- };
37429
- });
37430
- /* @conditional-compile-remove(teams-meeting-conference) */
37431
- /**
37432
- * @prative
37433
- */
37434
- const isNetworkQualityPoor = (diagnostics) => {
37435
- return diagnostics === communicationCalling.DiagnosticQuality.Poor || diagnostics === communicationCalling.DiagnosticQuality.Bad;
37436
- };
37437
-
37438
37361
  // Copyright (c) Microsoft Corporation.
37439
37362
  // Licensed under the MIT License.
37440
37363
  var __awaiter$7 = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
@@ -37507,16 +37430,12 @@ const MainScreen = (props) => {
37507
37430
  const compositeAudioContext = useAudio();
37508
37431
  const capabilitiesChangedInfoAndRole = useSelector$1(capabilitiesChangedInfoAndRoleSelector);
37509
37432
  const capabilitiesChangedNotificationBarProps = useTrackedCapabilityChangedNotifications(capabilitiesChangedInfoAndRole);
37510
- /* @conditional-compile-remove(teams-meeting-conference) */
37511
- const badNetworkQualityFlag = useSelector$1(badNetworkQualityBannerSelector);
37512
- /* @conditional-compile-remove(teams-meeting-conference) */
37513
- const badNetworkQualityBannerProps = useBadNetworkQualityNotifications(badNetworkQualityFlag.isPoorNetworkQuality);
37514
37433
  // Track the last dismissed errors of any error kind to prevent errors from re-appearing on subsequent page navigation
37515
37434
  // This works by tracking the most recent timestamp of any active error type.
37516
37435
  // And then tracking when that error type was last dismissed.
37517
37436
  const activeErrors = usePropsFor$1(ErrorBar).activeErrorMessages;
37518
37437
  /* @conditional-compile-remove(notifications) */
37519
- const activeInCallErrors = useAdaptedSelector(errorNotificationsSelector).activeErrorMessages;
37438
+ const activeInCallErrors = useAdaptedSelector(notificationStackSelector).activeErrorMessages;
37520
37439
  const [trackedErrors, setTrackedErrors] = React.useState({});
37521
37440
  /* @conditional-compile-remove(notifications) */
37522
37441
  const [trackedInCallErrors, setTrackedInCallErrors] = React.useState({});
@@ -37601,9 +37520,7 @@ const MainScreen = (props) => {
37601
37520
  pageElement = (React.createElement(TransferPage, { mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, options: props.options, updateSidePaneRenderer: setSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, onFetchAvatarPersonaData: onFetchAvatarPersonaData, latestErrors: getLatestErrorsTrampoline(), onDismissError: onDismissError, capabilitiesChangedNotificationBarProps: capabilitiesChangedNotificationBarProps }));
37602
37521
  break;
37603
37522
  case 'call':
37604
- 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(), onDismissError: onDismissError, 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,
37605
- /* @conditional-compile-remove(teams-meeting-conference) */
37606
- badNetworkQualityBannerProps: badNetworkQualityBannerProps }));
37523
+ 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(), onDismissError: onDismissError, 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 }));
37607
37524
  break;
37608
37525
  /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
37609
37526
  case 'hold':
@@ -41623,8 +41540,8 @@ exports.MessageStatusIndicator = MessageStatusIndicator;
41623
41540
  exports.MessageThread = MessageThread;
41624
41541
  exports.MicrophoneButton = MicrophoneButton;
41625
41542
  exports.MicrophoneSitePermissions = MicrophoneSitePermissions;
41626
- exports.NotificationBar = NotificationBar;
41627
- exports.Notifications = Notifications;
41543
+ exports.Notification = Notification;
41544
+ exports.NotificationStack = NotificationStack;
41628
41545
  exports.ParticipantItem = ParticipantItem;
41629
41546
  exports.ParticipantList = ParticipantList$k;
41630
41547
  exports.ParticipantsButton = ParticipantsButton;
@@ -41697,4 +41614,4 @@ exports.useTeamsCall = useTeamsCall;
41697
41614
  exports.useTeamsCallAdapter = useTeamsCallAdapter;
41698
41615
  exports.useTeamsCallAgent = useTeamsCallAgent;
41699
41616
  exports.useTheme = useTheme;
41700
- //# sourceMappingURL=index-DCf8u3Nr.js.map
41617
+ //# sourceMappingURL=index-CWs0GTYF.js.map