@azure/communication-react 1.13.0-alpha-202402230012 → 1.13.0-alpha-202402270012

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 (141) hide show
  1. package/dist/communication-react.d.ts +87 -11
  2. package/dist/dist-cjs/communication-react/index.js +465 -127
  3. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  4. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  5. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  6. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.d.ts +5 -4
  7. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  8. package/dist/dist-esm/calling-component-bindings/src/captionsSelector.d.ts +5 -5
  9. package/dist/dist-esm/calling-component-bindings/src/captionsSelector.js +1 -1
  10. package/dist/dist-esm/calling-component-bindings/src/captionsSelector.js.map +1 -1
  11. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.d.ts +1 -1
  12. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +2 -2
  13. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
  14. package/dist/dist-esm/calling-component-bindings/src/index.d.ts +1 -0
  15. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  16. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js +1 -1
  17. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js.map +1 -1
  18. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.d.ts +3 -1
  19. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +5 -4
  20. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  21. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +4 -4
  22. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  23. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +1 -1
  24. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  25. package/dist/dist-esm/communication-react/src/index.d.ts +1 -0
  26. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  27. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.d.ts +7 -7
  28. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js +11 -17
  29. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js.map +1 -1
  30. package/dist/dist-esm/react-components/src/components/Dialpad/DTMFToneGenerator.d.ts +7 -0
  31. package/dist/dist-esm/react-components/src/components/Dialpad/DTMFToneGenerator.js.map +1 -1
  32. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
  33. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js +3 -3
  34. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
  35. package/dist/dist-esm/react-components/src/components/MessageStatusIcon.d.ts +19 -0
  36. package/dist/dist-esm/react-components/src/components/MessageStatusIcon.js +20 -0
  37. package/dist/dist-esm/react-components/src/components/MessageStatusIcon.js.map +1 -0
  38. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js +4 -64
  39. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js.map +1 -1
  40. package/dist/dist-esm/react-components/src/components/MessageStatusIndicatorInternal.d.ts +42 -0
  41. package/dist/dist-esm/react-components/src/components/MessageStatusIndicatorInternal.js +73 -0
  42. package/dist/dist-esm/react-components/src/components/MessageStatusIndicatorInternal.js.map +1 -0
  43. package/dist/dist-esm/react-components/src/components/MessageThread.js +36 -4
  44. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  45. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js.map +1 -1
  46. package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts +2 -0
  47. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  48. package/dist/dist-esm/react-components/src/components/ParticipantList.js +4 -8
  49. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  50. package/dist/dist-esm/react-components/src/components/RTE/RTEInputBoxComponent.d.ts +2 -0
  51. package/dist/dist-esm/react-components/src/components/RTE/RTEInputBoxComponent.js +1 -1
  52. package/dist/dist-esm/react-components/src/components/RTE/RTEInputBoxComponent.js.map +1 -1
  53. package/dist/dist-esm/react-components/src/components/RTE/RTERibbonButtons.d.ts +12 -0
  54. package/dist/dist-esm/react-components/src/components/RTE/RTERibbonButtons.js +86 -0
  55. package/dist/dist-esm/react-components/src/components/RTE/RTERibbonButtons.js.map +1 -0
  56. package/dist/dist-esm/react-components/src/components/RTE/RTESendBox.d.ts +39 -4
  57. package/dist/dist-esm/react-components/src/components/RTE/RTESendBox.js +10 -5
  58. package/dist/dist-esm/react-components/src/components/RTE/RTESendBox.js.map +1 -1
  59. package/dist/dist-esm/react-components/src/components/RTE/RichTextEditor.d.ts +2 -0
  60. package/dist/dist-esm/react-components/src/components/RTE/RichTextEditor.js +52 -20
  61. package/dist/dist-esm/react-components/src/components/RTE/RichTextEditor.js.map +1 -1
  62. package/dist/dist-esm/react-components/src/components/ReactionButton.d.ts +1 -1
  63. package/dist/dist-esm/react-components/src/components/ReactionButton.js +1 -1
  64. package/dist/dist-esm/react-components/src/components/ReactionButton.js.map +1 -1
  65. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.d.ts +1 -1
  66. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +4 -6
  67. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  68. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.d.ts +4 -6
  69. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.js +21 -11
  70. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.js.map +1 -1
  71. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  72. package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts +2 -0
  73. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  74. package/dist/dist-esm/react-components/src/components/VideoTile.js +1 -1
  75. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  76. package/dist/dist-esm/react-components/src/components/index.d.ts +2 -2
  77. package/dist/dist-esm/react-components/src/components/index.js +1 -1
  78. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  79. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.d.ts +13 -0
  80. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js +112 -0
  81. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js.map +1 -1
  82. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.d.ts +2 -2
  83. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js.map +1 -1
  84. package/dist/dist-esm/react-components/src/components/utils.d.ts +8 -1
  85. package/dist/dist-esm/react-components/src/components/utils.js +8 -0
  86. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  87. package/dist/dist-esm/react-components/src/index.d.ts +1 -1
  88. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  89. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +3 -2
  90. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  91. package/dist/dist-esm/react-components/src/localization/locales/en-US/strings.json +21 -4
  92. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/strings.json +2 -2
  93. package/dist/dist-esm/react-components/src/localization/locales/utils.js +5 -1
  94. package/dist/dist-esm/react-components/src/localization/locales/utils.js.map +1 -1
  95. package/dist/dist-esm/react-components/src/theming/icons.d.ts +8 -0
  96. package/dist/dist-esm/react-components/src/theming/icons.js +19 -1
  97. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  98. package/dist/dist-esm/react-components/src/types/CaptionsAvailableLanguageStrings.d.ts +21 -0
  99. package/dist/dist-esm/react-components/src/types/CaptionsAvailableLanguageStrings.js.map +1 -1
  100. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.d.ts +1 -1
  101. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js.map +1 -1
  102. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +10 -0
  103. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  104. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +1 -1
  105. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +3 -3
  106. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  107. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +1 -1
  108. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  109. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallingSoundSubscriber.js +6 -2
  110. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallingSoundSubscriber.js.map +1 -1
  111. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.d.ts +1 -0
  112. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +13 -5
  113. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  114. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js +2 -2
  115. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js.map +1 -1
  116. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.d.ts +1 -0
  117. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +8 -6
  118. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  119. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +2 -2
  120. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  121. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +8 -2
  122. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  123. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +10 -0
  124. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +9 -3
  125. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  126. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +1 -1
  127. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +3 -3
  128. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  129. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +1 -1
  130. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  131. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +1 -1
  132. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +1 -1
  133. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  134. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +3 -5
  135. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -1
  136. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js +5 -2
  137. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js.map +1 -1
  138. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +8 -0
  139. package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/strings.json +1 -1
  140. package/dist/tsdoc-metadata.json +1 -1
  141. package/package.json +7 -7
@@ -173,7 +173,7 @@ function getDefaultExportFromCjs (x) {
173
173
  // Copyright (c) Microsoft Corporation.
174
174
  // Licensed under the MIT License.
175
175
  // GENERATED FILE. DO NOT EDIT MANUALLY.
176
- var telemetryVersion = '1.13.0-alpha-202402230012';
176
+ var telemetryVersion = '1.13.0-alpha-202402270012';
177
177
 
178
178
 
179
179
  var telemetryVersion$1 = /*@__PURE__*/getDefaultExportFromCjs(telemetryVersion);
@@ -938,7 +938,7 @@ const createDefaultCommonCallingHandlers = memoizeOne((callClient, deviceManager
938
938
  }
939
939
  });
940
940
  /* @conditional-compile-remove(reaction) */
941
- const onReactionClicked = (reaction) => __awaiter$P(void 0, void 0, void 0, function* () {
941
+ const onReactionClick = (reaction) => __awaiter$P(void 0, void 0, void 0, function* () {
942
942
  var _c;
943
943
  if (reaction === 'like' ||
944
944
  reaction === 'applause' ||
@@ -1214,7 +1214,7 @@ const createDefaultCommonCallingHandlers = memoizeOne((callClient, deviceManager
1214
1214
  /* @conditional-compile-remove(raise-hand) */
1215
1215
  onToggleRaiseHand,
1216
1216
  /* @conditional-compile-remove(reaction) */
1217
- onReactionClicked,
1217
+ onReactionClick: onReactionClick,
1218
1218
  /* @conditional-compile-remove(PSTN-calls) */
1219
1219
  onAddParticipant: notImplemented,
1220
1220
  onRemoveParticipant: notImplemented,
@@ -1391,7 +1391,7 @@ const _captionSettingsSelector = reselect__namespace.createSelector([
1391
1391
  ], (supportedCaptionLanguages, currentCaptionLanguage, supportedSpokenLanguages, currentSpokenLanguage, isCaptionsFeatureActive) => {
1392
1392
  return {
1393
1393
  supportedCaptionLanguages: supportedCaptionLanguages !== null && supportedCaptionLanguages !== void 0 ? supportedCaptionLanguages : [],
1394
- currentCaptionLanguage: currentCaptionLanguage !== null && currentCaptionLanguage !== void 0 ? currentCaptionLanguage : '',
1394
+ currentCaptionLanguage: currentCaptionLanguage !== null && currentCaptionLanguage !== void 0 ? currentCaptionLanguage : 'en',
1395
1395
  supportedSpokenLanguages: supportedSpokenLanguages !== null && supportedSpokenLanguages !== void 0 ? supportedSpokenLanguages : ['en-us'],
1396
1396
  currentSpokenLanguage: currentSpokenLanguage !== null && currentSpokenLanguage !== void 0 ? currentSpokenLanguage : 'en-us',
1397
1397
  isCaptionsFeatureActive: isCaptionsFeatureActive !== null && isCaptionsFeatureActive !== void 0 ? isCaptionsFeatureActive : false
@@ -2227,7 +2227,7 @@ let CallContext$2 = class CallContext {
2227
2227
  clearTimeout(this._timeOutId[participantKey]);
2228
2228
  const participant = call.remoteParticipants[participantKey];
2229
2229
  const newReactionState = reactionMessage
2230
- ? { reactionMessage: reactionMessage, receivedAt: new Date() }
2230
+ ? { reactionMessage: reactionMessage, receivedOn: new Date() }
2231
2231
  : undefined;
2232
2232
  if (participantKey === toFlatCommunicationIdentifier(this._state.userId)) {
2233
2233
  call.localParticipantReaction = newReactionState;
@@ -5383,7 +5383,7 @@ const typingIndicatorStringStyle = react.mergeStyles({
5383
5383
  wordBreak: 'break-word'
5384
5384
  });
5385
5385
 
5386
- var participantItem$k={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted",displayNamePlaceholder:"Unnamed participant",participantStateRinging:"Calling...",participantStateHold:"On hold"};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",fileUploadsPendingError:"Uploading... Please wait.",removeFile:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed"};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"};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",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:"{author} said {message}",messageContentMineAriaText:"You said {message}",editBoxTextLimit:"Your message is over the limit of {limitNumber} characters",editBoxPlaceholderText:"Edit your message",newMessagesIndicator:"New messages",noDisplayNameSub:"No name",editBoxCancelButton:"Cancel",editBoxSubmitButton:"Done",messageReadCount:"Read by {messageReadByCount} of {remoteParticipantsCount}",actionMenuMoreOptions:"More Options",downloadFile:"Download file",blockedWarningText:"This message was deleted due to organizational policy.",blockedWarningLinkText:"Details",fileCardGroupMessage:"The message has {fileCount} attachment",messageDeletedAnnouncementAriaLabel:"The message is deleted"};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 videoGallery$k={screenIsBeingSharedMessage:"You are sharing your screen",screenShareLoadingMessage:"Loading {participant}'s screen",localVideoLabel:"You",localVideoCameraSwitcherLabel:"Switch camera",localVideoMovementLabel:"Movable Local Video Tile",localVideoSelectedDescription:"{cameraName} selected",displayNamePlaceholder:"Unnamed participant",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"};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"};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 AttendeeRole$k="Attendee";var en_US$1 = {participantItem:participantItem$k,ParticipantList:ParticipantList$l,typingIndicator:typingIndicator$k,sendBox:sendBox$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,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,AttendeeRole:AttendeeRole$k};
5386
+ 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",fileUploadsPendingError:"Uploading... Please wait.",removeFile:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed"};var richTextSendBox={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",fileUploadsPendingError:"Uploading... Please wait.",removeFile:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed",boldTooltip:"Bold",italicTooltip:"Italic",underlineTooltip:"Underline",bulletListTooltip:"Bulleted list",numberListTooltip:"Numbered list",increaseIndentTooltip:"Increase indent",decreaseIndentTooltip:"Decrease indent"};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"};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",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:"{author} said {message}",messageContentMineAriaText:"You said {message}",editBoxTextLimit:"Your message is over the limit of {limitNumber} characters",editBoxPlaceholderText:"Edit your message",newMessagesIndicator:"New messages",noDisplayNameSub:"No name",editBoxCancelButton:"Cancel",editBoxSubmitButton:"Done",messageReadCount:"Read by {messageReadByCount} of {remoteParticipantsCount}",actionMenuMoreOptions:"More Options",downloadFile:"Download file",blockedWarningText:"This message was deleted due to organizational policy.",blockedWarningLinkText:"Details",fileCardGroupMessage:"The message has {fileCount} attachment",messageDeletedAnnouncementAriaLabel:"The message is deleted"};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 videoGallery$k={screenIsBeingSharedMessage:"You are sharing your screen",screenShareLoadingMessage:"Loading {participant}'s screen",localVideoLabel:"You",localVideoCameraSwitcherLabel:"Switch camera",localVideoMovementLabel:"Movable Local Video Tile",localVideoSelectedDescription:"{cameraName} selected",displayNamePlaceholder:"Unnamed participant",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"};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"};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 en_US$1 = {participantItem:participantItem$k,ParticipantList:ParticipantList$l,typingIndicator:typingIndicator$k,sendBox:sendBox$k,richTextSendBox:richTextSendBox,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,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};
5387
5387
 
5388
5388
  // Copyright (c) Microsoft Corporation.
5389
5389
  // Licensed under the MIT License.
@@ -5840,6 +5840,14 @@ e.nativeEvent.isComposing ||
5840
5840
  * @private
5841
5841
  */
5842
5842
  const nullToUndefined = (value) => (value === null ? undefined : value);
5843
+ /**
5844
+ * Helper function to get the keys of an object
5845
+ *
5846
+ * @private
5847
+ */
5848
+ function getKeys(obj) {
5849
+ return Object.keys(obj);
5850
+ }
5843
5851
 
5844
5852
  // Copyright (c) Microsoft Corporation.
5845
5853
  // Licensed under the MIT License.
@@ -6560,7 +6568,23 @@ const DEFAULT_COMPONENT_ICONS = {
6560
6568
  /* @conditional-compile-remove(spotlight) */
6561
6569
  StopSpotlightContextualMenuItem: React.createElement(reactIcons.VideoPersonStarOff20Filled, null),
6562
6570
  /* @conditional-compile-remove(spotlight) */
6563
- VideoSpotlighted: React.createElement(reactIcons.VideoPersonStar20Filled, { style: { height: '16px', width: '16px' } })
6571
+ VideoSpotlighted: React.createElement(reactIcons.VideoPersonStar20Filled, { style: { height: '16px', width: '16px' } }),
6572
+ /* @conditional-compile-remove(rich-text-editor) */
6573
+ RTEBoldButtonIcon: React.createElement(reactIcons.TextBold20Regular, null),
6574
+ /* @conditional-compile-remove(rich-text-editor) */
6575
+ RTEItalicButtonIcon: React.createElement(reactIcons.TextItalic20Regular, null),
6576
+ /* @conditional-compile-remove(rich-text-editor) */
6577
+ RTEUnderlineButtonIcon: React.createElement(reactIcons.TextUnderlineCharacterU20Regular, null),
6578
+ /* @conditional-compile-remove(rich-text-editor) */
6579
+ RTEBulletListButtonIcon: React.createElement(reactIcons.TextBulletList20Regular, null),
6580
+ /* @conditional-compile-remove(rich-text-editor) */
6581
+ RTEtNumberListButtonIcon: React.createElement(reactIcons.TextNumberListLtr20Regular, null),
6582
+ /* @conditional-compile-remove(rich-text-editor) */
6583
+ RTEIndentDecreaseButtonIcon: React.createElement(reactIcons.TextIndentDecrease20Regular, null),
6584
+ /* @conditional-compile-remove(rich-text-editor) */
6585
+ RTEIndentIncreaseButtonIcon: React.createElement(reactIcons.TextIndentIncrease20Regular, null),
6586
+ /* @conditional-compile-remove(rich-text-editor) */
6587
+ RTEDividerIcon: React.createElement(reactIcons.DividerTall24Regular, null)
6564
6588
  };
6565
6589
 
6566
6590
  // Copyright (c) Microsoft Corporation.
@@ -9074,6 +9098,202 @@ const richTextEditorStyle = react.mergeStyles({
9074
9098
  minHeight: '2.25rem',
9075
9099
  maxHeight: '8.25rem'
9076
9100
  });
9101
+ /**
9102
+ * @private
9103
+ */
9104
+ const ribbonButtonStyle = (theme) => {
9105
+ return {
9106
+ icon: { color: theme.palette.neutralPrimary, height: 'auto' },
9107
+ menuIcon: { color: theme.palette.neutralPrimary, height: 'auto' },
9108
+ root: { minWidth: 'auto', backgroundColor: 'transparent' },
9109
+ rootChecked: {
9110
+ backgroundColor: 'transparent',
9111
+ selectors: {
9112
+ // Icon's color doesn't work here because of the specificity
9113
+ '.ms-Button-icon': {
9114
+ color: theme.palette.themePrimary
9115
+ },
9116
+ '.ms-Button-menuIcon': {
9117
+ color: theme.palette.themePrimary
9118
+ }
9119
+ }
9120
+ },
9121
+ rootHovered: {
9122
+ backgroundColor: 'transparent',
9123
+ selectors: {
9124
+ // Icon's color doesn't work here because of the specificity
9125
+ '.ms-Button-icon': {
9126
+ color: theme.palette.themePrimary
9127
+ },
9128
+ '.ms-Button-menuIcon': {
9129
+ color: theme.palette.themePrimary
9130
+ }
9131
+ }
9132
+ },
9133
+ rootCheckedHovered: {
9134
+ backgroundColor: 'transparent',
9135
+ selectors: {
9136
+ // Icon's color doesn't work here because of the specificity
9137
+ '.ms-Button-icon': {
9138
+ color: theme.palette.themePrimary
9139
+ },
9140
+ '.ms-Button-menuIcon': {
9141
+ color: theme.palette.themePrimary
9142
+ }
9143
+ }
9144
+ },
9145
+ rootCheckedPressed: {
9146
+ backgroundColor: 'transparent',
9147
+ selectors: {
9148
+ // Icon's color doesn't work here because of the specificity
9149
+ '.ms-Button-icon': {
9150
+ color: theme.palette.themePrimary
9151
+ },
9152
+ '.ms-Button-menuIcon': {
9153
+ color: theme.palette.themePrimary
9154
+ }
9155
+ }
9156
+ },
9157
+ rootPressed: {
9158
+ backgroundColor: 'transparent',
9159
+ selectors: {
9160
+ // Icon's color doesn't work here because of the specificity
9161
+ '.ms-Button-icon': {
9162
+ color: theme.palette.themePrimary
9163
+ },
9164
+ '.ms-Button-menuIcon': {
9165
+ color: theme.palette.themePrimary
9166
+ }
9167
+ }
9168
+ },
9169
+ rootExpanded: {
9170
+ backgroundColor: 'transparent',
9171
+ selectors: {
9172
+ // Icon's color doesn't work here because of the specificity
9173
+ '.ms-Button-icon': {
9174
+ color: theme.palette.themePrimary
9175
+ },
9176
+ '.ms-Button-menuIcon': {
9177
+ color: theme.palette.themePrimary
9178
+ }
9179
+ }
9180
+ },
9181
+ rootExpandedHovered: {
9182
+ backgroundColor: 'transparent',
9183
+ selectors: {
9184
+ //icon color is not working here because of the specificity
9185
+ '.ms-Button-icon': {
9186
+ color: theme.palette.themePrimary
9187
+ },
9188
+ '.ms-Button-menuIcon': {
9189
+ color: theme.palette.themePrimary
9190
+ }
9191
+ }
9192
+ }
9193
+ };
9194
+ };
9195
+ /**
9196
+ * @private
9197
+ */
9198
+ const ribbonDividerStyle = (theme) => {
9199
+ return {
9200
+ icon: { color: theme.palette.neutralQuaternaryAlt, margin: '0 -0.5rem', height: 'auto' },
9201
+ root: { margin: '0', padding: '0', minWidth: 'auto' }
9202
+ };
9203
+ };
9204
+ /**
9205
+ * @private
9206
+ */
9207
+ const ribbonStyle = () => {
9208
+ return {
9209
+ // Override for the default white color of the Ribbon component
9210
+ root: { backgroundColor: 'transparent' }
9211
+ };
9212
+ };
9213
+
9214
+ // Copyright (c) Microsoft Corporation.
9215
+ // Licensed under the MIT License.
9216
+ const dividerRibbonButton = (theme) => {
9217
+ return {
9218
+ key: 'Divider',
9219
+ iconName: 'RTEDividerIcon',
9220
+ unlocalizedText: '',
9221
+ onClick: () => { },
9222
+ isDisabled: () => true,
9223
+ commandBarProperties: {
9224
+ buttonStyles: ribbonDividerStyle(theme)
9225
+ }
9226
+ };
9227
+ };
9228
+ const boldButton = (theme) => {
9229
+ return createKnownRibbonButton(roosterjsReact.KnownRibbonButtonKey.Bold, theme, 'RTEBoldButtonIcon');
9230
+ };
9231
+ const italicButton = (theme) => {
9232
+ return createKnownRibbonButton(roosterjsReact.KnownRibbonButtonKey.Italic, theme, 'RTEItalicButtonIcon');
9233
+ };
9234
+ const underlineButton = (theme) => {
9235
+ return createKnownRibbonButton(roosterjsReact.KnownRibbonButtonKey.Underline, theme, 'RTEUnderlineButtonIcon');
9236
+ };
9237
+ const bulletListButton = (theme) => {
9238
+ return createKnownRibbonButton(roosterjsReact.KnownRibbonButtonKey.BulletedList, theme, 'RTEBulletListButtonIcon');
9239
+ };
9240
+ const numberListButton = (theme) => {
9241
+ return createKnownRibbonButton(roosterjsReact.KnownRibbonButtonKey.NumberedList, theme, 'RTEtNumberListButtonIcon');
9242
+ };
9243
+ const indentIncreaseButton = (theme) => {
9244
+ return createKnownRibbonButton(roosterjsReact.KnownRibbonButtonKey.IncreaseIndent, theme, 'RTEIndentIncreaseButtonIcon');
9245
+ };
9246
+ const indentDecreaseButton = (theme) => {
9247
+ return createKnownRibbonButton(roosterjsReact.KnownRibbonButtonKey.DecreaseIndent, theme, 'RTEIndentDecreaseButtonIcon');
9248
+ };
9249
+ const createKnownRibbonButton = (key, theme, icon) => {
9250
+ var _a;
9251
+ const buttons = roosterjsReact.getButtons([key]);
9252
+ if (buttons.length > 0) {
9253
+ const button = buttons[0];
9254
+ // AllButtonStringKeys is a union of all the string keys of all the buttons
9255
+ const result = buttons[0];
9256
+ button.iconName = icon;
9257
+ button.commandBarProperties = Object.assign(Object.assign({}, button.commandBarProperties), { buttonStyles: Object.assign(Object.assign({}, (_a = button.commandBarProperties) === null || _a === void 0 ? void 0 : _a.buttonStyles), ribbonButtonStyle(theme)) });
9258
+ return result;
9259
+ }
9260
+ return undefined;
9261
+ };
9262
+ /**
9263
+ * @private
9264
+ */
9265
+ const ribbonButtons = (theme) => {
9266
+ const buttons = [];
9267
+ [
9268
+ boldButton(theme),
9269
+ italicButton(theme),
9270
+ underlineButton(theme),
9271
+ dividerRibbonButton(theme),
9272
+ bulletListButton(theme),
9273
+ numberListButton(theme),
9274
+ indentIncreaseButton(theme),
9275
+ indentDecreaseButton(theme)
9276
+ ].forEach((item) => {
9277
+ if (item !== undefined) {
9278
+ buttons.push(item);
9279
+ }
9280
+ });
9281
+ return buttons;
9282
+ };
9283
+ /**
9284
+ * @private
9285
+ */
9286
+ const ribbonButtonsStrings = (strings) => {
9287
+ return {
9288
+ buttonNameBold: strings.boldTooltip,
9289
+ buttonNameItalic: strings.italicTooltip,
9290
+ buttonNameUnderline: strings.underlineTooltip,
9291
+ buttonNameBulletedList: strings.bulletListTooltip,
9292
+ buttonNameNumberedList: strings.numberListTooltip,
9293
+ buttonNameIncreaseIndent: strings.increaseIndentTooltip,
9294
+ buttonNameDecreaseIndent: strings.decreaseIndentTooltip
9295
+ };
9296
+ };
9077
9297
 
9078
9298
  // Copyright (c) Microsoft Corporation.
9079
9299
  // Licensed under the MIT License.
@@ -9083,8 +9303,10 @@ const richTextEditorStyle = react.mergeStyles({
9083
9303
  * @beta
9084
9304
  */
9085
9305
  React.forwardRef((props, ref) => {
9086
- const { content, onChange, placeholderText } = props;
9306
+ const { content, onChange, placeholderText, strings } = props;
9087
9307
  const editor = React.useRef(null);
9308
+ const [divComponent, setDivComponent] = React.useState(null);
9309
+ const theme = react.useTheme();
9088
9310
  React.useImperativeHandle(ref, () => {
9089
9311
  return {
9090
9312
  focus() {
@@ -9100,23 +9322,50 @@ React.forwardRef((props, ref) => {
9100
9322
  (_b = editor.current) === null || _b === void 0 ? void 0 : _b.setContent(content || '');
9101
9323
  }
9102
9324
  }, [content]);
9103
- const editorCreator = React.useMemo(() => {
9104
- return (div) => {
9105
- const contentEdit = new roosterjsEditorPlugins.ContentEdit();
9106
- const placeholderPlugin = new roosterjsEditorPlugins.Watermark(placeholderText || '');
9107
- const updateContentPlugin = roosterjsReact.createUpdateContentPlugin(roosterjsReact.UpdateMode.OnContentChangedEvent | roosterjsReact.UpdateMode.OnUserInput, (content) => {
9108
- onChange && onChange(content);
9109
- });
9110
- const options = {
9111
- plugins: [placeholderPlugin, contentEdit, updateContentPlugin],
9112
- imageSelectionBorderColor: 'blue'
9113
- };
9114
- editor.current = new roosterjsEditorCore.Editor(div, options);
9115
- return editor.current;
9116
- };
9117
- }, [onChange, placeholderText]);
9325
+ React.useEffect(() => {
9326
+ if (divComponent !== null && theme.palette.neutralPrimary !== undefined) {
9327
+ // Adjust color prop for the div component when theme is updated
9328
+ // because doNotAdjustEditorColor is set for Rooster
9329
+ divComponent.style.color = theme.palette.neutralPrimary;
9330
+ }
9331
+ }, [divComponent, theme]);
9332
+ const ribbonPlugin = React.useMemo(() => {
9333
+ return roosterjsReact.createRibbonPlugin();
9334
+ }, []);
9335
+ const editorCreator = React.useCallback((div, options) => {
9336
+ editor.current = new roosterjsEditorCore.Editor(div, options);
9337
+ setDivComponent(div);
9338
+ // Remove the background color of the editor
9339
+ div.style.backgroundColor = 'transparent';
9340
+ return editor.current;
9341
+ }, []);
9342
+ const plugins = React.useMemo(() => {
9343
+ const contentEdit = new roosterjsEditorPlugins.ContentEdit();
9344
+ const placeholderPlugin = new roosterjsEditorPlugins.Watermark(placeholderText || '');
9345
+ const updateContentPlugin = roosterjsReact.createUpdateContentPlugin(roosterjsReact.UpdateMode.OnContentChangedEvent | roosterjsReact.UpdateMode.OnUserInput, (content) => {
9346
+ onChange && onChange(content);
9347
+ });
9348
+ return [contentEdit, placeholderPlugin, updateContentPlugin, ribbonPlugin];
9349
+ }, [onChange, placeholderText, ribbonPlugin]);
9350
+ const ribbon = React.useMemo(() => {
9351
+ const buttons = ribbonButtons(theme);
9352
+ return (
9353
+ //TODO: Add localization for watermark plugin https://github.com/microsoft/roosterjs/issues/2430
9354
+ React.createElement(roosterjsReact.Ribbon, { styles: ribbonStyle(), buttons: buttons, plugin: ribbonPlugin, overflowButtonProps: {
9355
+ styles: ribbonButtonStyle(theme),
9356
+ menuProps: {
9357
+ items: [], // CommandBar will determine items rendered in overflow
9358
+ isBeakVisible: false
9359
+ }
9360
+ }, strings: ribbonButtonsStrings(strings) }));
9361
+ }, [strings, ribbonPlugin, theme]);
9118
9362
  return (React.createElement("div", null,
9119
- React.createElement(roosterjsReact.Rooster, { className: richTextEditorStyle, editorCreator: editorCreator })));
9363
+ ribbon,
9364
+ React.createElement(roosterjsReact.Rooster, { inDarkMode: isDarkThemed(theme), plugins: plugins, className: richTextEditorStyle, editorCreator: editorCreator,
9365
+ // TODO: confirm the color during inline images implementation
9366
+ imageSelectionBorderColor: 'blue',
9367
+ // doNotAdjustEditorColor is used to fix the default background color for Rooster component
9368
+ doNotAdjustEditorColor: true })));
9120
9369
  });
9121
9370
 
9122
9371
  // Copyright (c) Microsoft Corporation.
@@ -9185,6 +9434,23 @@ const AnnouncerMessage = (props) => {
9185
9434
  /** @private */
9186
9435
  const LiveMessage = (props) => (React.createElement(AnnouncerContext.Consumer, null, (contextProps) => React.createElement(AnnouncerMessage, Object.assign({}, contextProps, props))));
9187
9436
 
9437
+ // Copyright (c) Microsoft Corporation.
9438
+ // Licensed under the MIT License.
9439
+ /**
9440
+ * Component to display message status icon
9441
+ *
9442
+ * @internal
9443
+ */
9444
+ const MessageStatusIcon = (props) => {
9445
+ const { shouldAnnounce, iconName, iconClassName, ariaLabel } = props;
9446
+ return (React.createElement(React.Fragment, null,
9447
+ ariaLabel && React.createElement(LiveMessage, { message: ariaLabel, ariaLive: "polite" }),
9448
+ React.createElement("div", {
9449
+ // make icon accessible
9450
+ tabIndex: 0 },
9451
+ React.createElement(react.Icon, { role: 'status', "aria-live": shouldAnnounce ? 'polite' : 'off', "data-ui-id": 'chat-composite-message-status-icon', "aria-label": ariaLabel, iconName: iconName, className: iconClassName }))));
9452
+ };
9453
+
9188
9454
  // Copyright (c) Microsoft Corporation.
9189
9455
  // Licensed under the MIT License.
9190
9456
  /**
@@ -9192,10 +9458,10 @@ const LiveMessage = (props) => (React.createElement(AnnouncerContext.Consumer, n
9192
9458
  *
9193
9459
  * Adds an icon and tooltip corresponding to the message status.
9194
9460
  *
9195
- * @public
9461
+ * @internal
9196
9462
  */
9197
- const MessageStatusIndicator = (props) => {
9198
- const { status, styles, remoteParticipantsCount, onToggleToolTip, readCount } = props;
9463
+ const MessageStatusIndicatorInternal = (props) => {
9464
+ const { status, styles, remoteParticipantsCount, onToggleToolTip, readCount, shouldAnnounce } = props;
9199
9465
  const localeStrings = useLocale$1().strings.messageStatusIndicator;
9200
9466
  const [isTooltipToggled, setIsTooltipToggled] = React.useState(false);
9201
9467
  const strings = Object.assign(Object.assign({}, localeStrings), props.strings);
@@ -9210,18 +9476,14 @@ const MessageStatusIndicator = (props) => {
9210
9476
  switch (status) {
9211
9477
  case 'failed':
9212
9478
  return (React.createElement(react.TooltipHost, { content: strings.failedToSendTooltipText, "data-ui-id": "chat-composite-message-tooltip", calloutProps: Object.assign({}, calloutProps), styles: hostStyles$1 },
9213
- strings.failedToSendAriaLabel && (
9214
- // live message is used here and in the following tooltips so that aria labels are announced on mobile
9215
- React.createElement(LiveMessage, { message: strings.failedToSendAriaLabel, ariaLive: "polite" })),
9216
- React.createElement(react.Icon, { role: "status", "data-ui-id": "chat-composite-message-status-icon", "aria-label": strings.failedToSendAriaLabel, iconName: "MessageFailed", className: react.mergeStyles(MessageStatusIndicatorErrorIconStyle, { color: theme.palette.redDark }, styles === null || styles === void 0 ? void 0 : styles.root) })));
9479
+ React.createElement(MemoMessageStatusIcon, { shouldAnnounce: shouldAnnounce, iconName: "MessageFailed", iconClassName: react.mergeStyles(MessageStatusIndicatorErrorIconStyle, { color: theme.palette.redDark }, styles === null || styles === void 0 ? void 0 : styles.root), ariaLabel: strings.failedToSendAriaLabel })));
9217
9480
  case 'sending':
9218
9481
  return (React.createElement(react.TooltipHost, { content: strings.sendingTooltipText, "data-ui-id": "chat-composite-message-tooltip", calloutProps: Object.assign({}, calloutProps), styles: hostStyles$1 },
9219
- strings.sendingAriaLabel && React.createElement(LiveMessage, { message: strings.sendingAriaLabel, ariaLive: "polite" }),
9220
- React.createElement(react.Icon, { role: "status", "data-ui-id": "chat-composite-message-status-icon", "aria-label": strings.sendingAriaLabel, iconName: "MessageSending", className: react.mergeStyles(MessageStatusIndicatorIconStyle, { color: theme.palette.themePrimary }, styles === null || styles === void 0 ? void 0 : styles.root) })));
9482
+ React.createElement(MemoMessageStatusIcon, { shouldAnnounce: shouldAnnounce, iconName: "MessageSending", iconClassName: react.mergeStyles(MessageStatusIndicatorIconStyle, { color: theme.palette.themePrimary }, styles === null || styles === void 0 ? void 0 : styles.root), ariaLabel: strings.sendingAriaLabel })));
9221
9483
  case 'seen':
9222
9484
  return (React.createElement(react.TooltipHost, { calloutProps: Object.assign({}, calloutProps), "data-ui-id": "chat-composite-message-tooltip", styles: hostStyles$1, content:
9223
9485
  // when it's just 1 to 1 texting, we don't need to know who has read the message, just show message as 'seen'
9224
- // when readcount is 0, we have a bug, show 'seen' to cover up as a fall back
9486
+ // when readCount is 0, we have a bug, show 'seen' to cover up as a fall back
9225
9487
  // when participant count is 0, we have a bug, show 'seen' to cover up as a fall back
9226
9488
  readCount === 0 ||
9227
9489
  (remoteParticipantsCount && remoteParticipantsCount <= 1) ||
@@ -9238,12 +9500,10 @@ const MessageStatusIndicator = (props) => {
9238
9500
  setIsTooltipToggled(!isTooltipToggled);
9239
9501
  }
9240
9502
  } },
9241
- strings.seenAriaLabel && React.createElement(LiveMessage, { message: strings.seenAriaLabel, ariaLive: "polite" }),
9242
- React.createElement(react.Icon, { "data-ui-id": "chat-composite-message-status-icon", role: "status", "aria-label": strings.seenAriaLabel, iconName: "MessageSeen", className: react.mergeStyles({ color: theme.palette.themePrimary }, styles === null || styles === void 0 ? void 0 : styles.root) })));
9503
+ React.createElement(MemoMessageStatusIcon, { shouldAnnounce: shouldAnnounce, iconName: "MessageSeen", iconClassName: react.mergeStyles({ color: theme.palette.themePrimary }, styles === null || styles === void 0 ? void 0 : styles.root), ariaLabel: strings.seenAriaLabel })));
9243
9504
  case 'delivered':
9244
9505
  return (React.createElement(react.TooltipHost, { calloutProps: Object.assign({}, calloutProps), content: strings.deliveredTooltipText, "data-ui-id": "chat-composite-message-tooltip", styles: hostStyles$1 },
9245
- strings.deliveredAriaLabel && React.createElement(LiveMessage, { message: strings.deliveredAriaLabel, ariaLive: "polite" }),
9246
- React.createElement(react.Icon, { role: "status", "data-ui-id": "chat-composite-message-status-icon", "aria-label": strings.deliveredAriaLabel, iconName: "MessageDelivered", className: react.mergeStyles(MessageStatusIndicatorIconStyle, { color: theme.palette.themePrimary }, styles === null || styles === void 0 ? void 0 : styles.root) })));
9506
+ React.createElement(MemoMessageStatusIcon, { shouldAnnounce: shouldAnnounce, iconName: "MessageDelivered", iconClassName: react.mergeStyles(MessageStatusIndicatorIconStyle, { color: theme.palette.themePrimary }, styles === null || styles === void 0 ? void 0 : styles.root), ariaLabel: strings.deliveredAriaLabel })));
9247
9507
  default:
9248
9508
  return React.createElement(React.Fragment, null);
9249
9509
  }
@@ -9252,6 +9512,23 @@ const MessageStatusIndicator = (props) => {
9252
9512
  // To prevent sizing issues or tooltip positioning issues, we override to inline-block.
9253
9513
  // For more details see "Icon Button with Tooltip" on https://developer.microsoft.com/en-us/fluentui#/controls/web/button
9254
9514
  const hostStyles$1 = { root: { display: 'inline-block' } };
9515
+ const MemoMessageStatusIcon = React.memo((obj) => {
9516
+ return React.createElement(MessageStatusIcon, Object.assign({}, obj));
9517
+ });
9518
+
9519
+ // Copyright (c) Microsoft Corporation.
9520
+ // Licensed under the MIT License.
9521
+ /**
9522
+ * Component to display the status of a sent message.
9523
+ *
9524
+ * Adds an icon and tooltip corresponding to the message status.
9525
+ *
9526
+ * @public
9527
+ */
9528
+ const MessageStatusIndicator = (props) => {
9529
+ const internalProps = Object.assign(Object.assign({}, props), { shouldAnnounce: true });
9530
+ return React.createElement(MessageStatusIndicatorInternal, Object.assign({}, internalProps));
9531
+ };
9255
9532
 
9256
9533
  // Copyright (c) Microsoft Corporation.
9257
9534
  // Licensed under the MIT License.
@@ -11526,6 +11803,15 @@ const getLastChatMessageIdWithStatus = (messages, status) => {
11526
11803
  }
11527
11804
  return undefined;
11528
11805
  };
11806
+ const getLastChatMessageForCurrentUser = (messages) => {
11807
+ for (let i = messages.length - 1; i >= 0; i--) {
11808
+ const message = messages[i];
11809
+ if (message.messageType === 'chat' && message.mine) {
11810
+ return message;
11811
+ }
11812
+ }
11813
+ return undefined;
11814
+ };
11529
11815
  /**
11530
11816
  * `MessageThread` allows you to easily create a component for rendering chat messages, handling scrolling behavior of new/old messages and customizing icons & controls inside the chat thread.
11531
11817
  * @param props - of type MessageThreadProps
@@ -11593,6 +11879,7 @@ const MessageThreadWrapper = (props) => {
11593
11879
  // reset deleted message label in case if there was a value already (messages are deleted 1 after another)
11594
11880
  setDeletedMessageAriaLabel(undefined);
11595
11881
  setLatestDeletedMessageId(messageId);
11882
+ lastChatMessageStatus.current = 'deleted';
11596
11883
  // we should set up latestDeletedMessageId before the onDeleteMessage call
11597
11884
  // as otherwise in very rare cases the messages array can be updated before latestDeletedMessageId
11598
11885
  yield onDeleteMessage(messageId);
@@ -11787,6 +12074,23 @@ const MessageThreadWrapper = (props) => {
11787
12074
  // Only scroll to bottom if isAtBottomOfScrollRef is true
11788
12075
  isAtBottomOfScrollRef.current && scrollToBottom();
11789
12076
  }, [clientHeight, forceUpdate, scrollToBottom, chatMessagesInitialized]);
12077
+ React.useEffect(() => {
12078
+ var _a;
12079
+ const newStatus = (_a = getLastChatMessageForCurrentUser(newMessages)) === null || _a === void 0 ? void 0 : _a.status;
12080
+ if (newStatus !== undefined) {
12081
+ if (lastChatMessageStatus.current === 'deleted' && newStatus === 'sending') {
12082
+ // enforce message life cycle
12083
+ // message status should always be [ sending -> delivered -> seen (optional) -> deleted ] or [sending -> failed -> deleted]
12084
+ // not any other way around
12085
+ // therefore, if current message status is deleted, we should only update it if newStatus is sending
12086
+ lastChatMessageStatus.current = newStatus;
12087
+ }
12088
+ else if (lastChatMessageStatus.current !== 'deleted') {
12089
+ lastChatMessageStatus.current = newStatus;
12090
+ }
12091
+ }
12092
+ // The hook should depend on newMessages not on messages as otherwise it will skip the sending status for a first message
12093
+ }, [newMessages]);
11790
12094
  /**
11791
12095
  * This needs to run to update latestPreviousChatMessage & latestCurrentChatMessage.
11792
12096
  * These two states are used to manipulate scrollbar
@@ -11815,6 +12119,7 @@ const MessageThreadWrapper = (props) => {
11815
12119
  }
11816
12120
  // eslint-disable-next-line react-hooks/exhaustive-deps
11817
12121
  }, [messages]);
12122
+ const lastChatMessageStatus = React.useRef(undefined);
11818
12123
  const participantCountRef = React.useRef(participantCount);
11819
12124
  const readReceiptsBySenderIdRef = React.useRef(readReceiptsBySenderId);
11820
12125
  participantCountRef.current = participantCount;
@@ -11825,6 +12130,10 @@ const MessageThreadWrapper = (props) => {
11825
12130
  }
11826
12131
  }, []);
11827
12132
  const defaultStatusRenderer = React.useCallback((message, participantCount, readCount, status) => {
12133
+ // we should only announce label if the message status isn't deleted
12134
+ // because after message is deleted, we now need to render statusIndicator for previous messages
12135
+ // and their status has been announced already and we should not announce them again
12136
+ const shouldAnnounce = lastChatMessageStatus.current !== 'deleted';
11828
12137
  const onToggleToolTip = (isToggled) => {
11829
12138
  if (isToggled && readReceiptsBySenderIdRef.current) {
11830
12139
  setReadCountForHoveredIndicator(getParticipantsWhoHaveReadMessage(message, readReceiptsBySenderIdRef.current).length);
@@ -11833,9 +12142,9 @@ const MessageThreadWrapper = (props) => {
11833
12142
  setReadCountForHoveredIndicator(undefined);
11834
12143
  }
11835
12144
  };
11836
- return (React.createElement(MessageStatusIndicator, { status: status, readCount: readCount, onToggleToolTip: onToggleToolTip,
12145
+ return (React.createElement(MessageStatusIndicatorInternal, { status: status, readCount: readCount, onToggleToolTip: onToggleToolTip,
11837
12146
  // -1 because participant count does not include myself
11838
- remoteParticipantsCount: participantCount ? participantCount - 1 : 0 }));
12147
+ remoteParticipantsCount: participantCount ? participantCount - 1 : 0, shouldAnnounce: shouldAnnounce }));
11839
12148
  }, []);
11840
12149
  const theme = useTheme();
11841
12150
  const messagesToDisplay = React.useMemo(() => {
@@ -11863,7 +12172,7 @@ const MessageThreadWrapper = (props) => {
11863
12172
  existsNewChatMessage && !disableJumpToNewMessageButton && (React.createElement("div", { className: react.mergeStyles(newMessageButtonContainerStyle, styles === null || styles === void 0 ? void 0 : styles.newMessageButtonContainer) }, onRenderJumpToNewMessageButton ? (onRenderJumpToNewMessageButton({ text: strings.newMessagesIndicator, onClick: scrollToBottom })) : (React.createElement(DefaultJumpToNewMessageButton, { text: strings.newMessagesIndicator, onClick: scrollToBottom })))),
11864
12173
  React.createElement(LiveAnnouncer, null,
11865
12174
  React.createElement(FluentV9ThemeProvider, { v8Theme: theme },
11866
- React.createElement(Announcer$1, { announcementString: deletedMessageAriaLabel, ariaLive: 'assertive' }),
12175
+ latestDeletedMessageId && (React.createElement(Announcer$1, { key: latestDeletedMessageId, announcementString: deletedMessageAriaLabel, ariaLive: 'assertive' })),
11867
12176
  React.createElement(reactChat.Chat
11868
12177
  // styles?.chatContainer used in className and style prop as style prop can't handle CSS selectors
11869
12178
  , {
@@ -12396,7 +12705,7 @@ const iconStyles$2 = react.mergeStyles({
12396
12705
 
12397
12706
  // Copyright (c) Microsoft Corporation.
12398
12707
  // Licensed under the MIT License.
12399
- const onRenderParticipantDefault = (participant, strings, myUserId, onRenderAvatar, createParticipantMenuItems, styles, onParticipantClick, showParticipantOverflowTooltip, participantAriaLabelledBy, theme, attendeeRoleString) => {
12708
+ const onRenderParticipantDefault = (participant, strings, myUserId, onRenderAvatar, createParticipantMenuItems, styles, onParticipantClick, showParticipantOverflowTooltip, participantAriaLabelledBy, theme) => {
12400
12709
  const callingParticipant = participant;
12401
12710
  let presence = undefined;
12402
12711
  if (callingParticipant) {
@@ -12406,8 +12715,8 @@ const onRenderParticipantDefault = (participant, strings, myUserId, onRenderAvat
12406
12715
  let displayName = participant.displayName;
12407
12716
  /* @conditional-compile-remove(hide-attendee-name) */
12408
12717
  const formatDisplayName = () => {
12409
- if (displayName && attendeeRoleString) {
12410
- return _formatString(displayName, { AttendeeRole: attendeeRoleString });
12718
+ if (displayName && strings.attendeeRole) {
12719
+ return _formatString(displayName, { AttendeeRole: strings.attendeeRole });
12411
12720
  }
12412
12721
  return displayName;
12413
12722
  };
@@ -12506,8 +12815,6 @@ const ParticipantList$k = (props) => {
12506
12815
  const participantItemStrings = useLocale$1().strings.participantItem;
12507
12816
  /* @conditional-compile-remove(total-participant-count) */
12508
12817
  const participantListStrings = useLocale$1().strings.ParticipantList;
12509
- /* @conditional-compile-remove(hide-attendee-name) */
12510
- const attendeeRoleString = useLocale$1().strings.AttendeeRole;
12511
12818
  const displayedParticipants = React.useMemo(() => {
12512
12819
  return onRenderParticipant ? participants : getParticipantsForDefaultRender(participants, excludeMe, myUserId);
12513
12820
  }, [participants, excludeMe, myUserId, onRenderParticipant]);
@@ -12548,9 +12855,7 @@ const ParticipantList$k = (props) => {
12548
12855
  ? onRenderParticipant(participant)
12549
12856
  : onRenderParticipantDefault(participant, participantItemStrings, myUserId, onRenderAvatar, createParticipantMenuItems, participantItemStyles, props.onParticipantClick, showParticipantOverflowTooltip, participantAriaLabelledBy,
12550
12857
  /* @conditional-compile-remove(raise-hand) */
12551
- theme,
12552
- /* @conditional-compile-remove(hide-attendee-name) */
12553
- attendeeRoleString)),
12858
+ theme)),
12554
12859
  /* @conditional-compile-remove(total-participant-count) */ overflowParticipantCountString &&
12555
12860
  totalParticipantCount &&
12556
12861
  totalParticipantCount > displayedParticipants.length && (React.createElement(react.Text, { style: { fontWeight: 400, margin: '0.5rem' } }, _formatString(overflowParticipantCountString, {
@@ -13705,7 +14010,7 @@ const VideoTile = (props) => {
13705
14010
  /* @conditional-compile-remove(reaction) */
13706
14011
  const currentUnixTimeStamp = Math.floor(currentTimestamp.getTime() / 1000);
13707
14012
  /* @conditional-compile-remove(reaction) */
13708
- const receivedUnixTimestamp = reaction ? Math.floor(reaction.receivedAt.getTime() / 1000) : undefined;
14013
+ const receivedUnixTimestamp = reaction ? Math.floor(reaction.receivedOn.getTime() / 1000) : undefined;
13709
14014
  /* @conditional-compile-remove(reaction) */
13710
14015
  const canRenderReaction = (receivedUnixTimestamp ? currentUnixTimeStamp - receivedUnixTimestamp < 3000 : false) &&
13711
14016
  backgroundImageUrl !== undefined;
@@ -13807,7 +14112,7 @@ const bracketedParticipantString = (participantString, withBrackets) => {
13807
14112
  * @internal
13808
14113
  */
13809
14114
  const _RemoteVideoTile = React.memo((props) => {
13810
- var _a;
14115
+ var _a, _b;
13811
14116
  const { isAvailable, isReceiving = true, // default to true to prevent any breaking change
13812
14117
  isScreenSharingOn, onCreateRemoteStreamView, onDisposeRemoteStreamView, remoteVideoViewOptions, renderElement, userId, onRenderAvatar, showMuteIndicator, remoteParticipant, participantState, menuKind, isPinned, onPinParticipant, onUnpinParticipant,
13813
14118
  /* @conditional-compile-remove(spotlight) */ spotlightedParticipantUserIds,
@@ -13879,9 +14184,9 @@ const _RemoteVideoTile = React.memo((props) => {
13879
14184
  setDrawerMenuItemProps(convertContextualMenuItemsToDrawerMenuItemProps$1(contextualMenuProps, () => setDrawerMenuItemProps([])));
13880
14185
  }
13881
14186
  }, [setDrawerMenuItemProps, contextualMenuProps]);
13882
- let displayName = remoteParticipant.displayName || (strings === null || strings === void 0 ? void 0 : strings.displayNamePlaceholder);
14187
+ let displayName = remoteParticipant.displayName || strings.displayNamePlaceholder;
13883
14188
  /* @conditional-compile-remove(hide-attendee-name) */
13884
- const attendeeRoleString = useLocale$1().strings.AttendeeRole;
14189
+ const attendeeRoleString = (_a = props.strings) === null || _a === void 0 ? void 0 : _a.attendeeRole;
13885
14190
  /* @conditional-compile-remove(hide-attendee-name) */
13886
14191
  const formatDisplayName = () => {
13887
14192
  if (displayName && attendeeRoleString) {
@@ -13892,7 +14197,7 @@ const _RemoteVideoTile = React.memo((props) => {
13892
14197
  /* @conditional-compile-remove(hide-attendee-name) */
13893
14198
  displayName = formatDisplayName();
13894
14199
  return (React.createElement(react.Stack, { tabIndex: menuKind === 'drawer' ? 0 : undefined, onKeyDown: menuKind === 'drawer' ? onKeyDown : undefined, style: remoteVideoTileWrapperStyle },
13895
- React.createElement(VideoTile, Object.assign({ key: userId, userId: userId, initialsName: (_a = remoteParticipant.displayName) !== null && _a !== void 0 ? _a : '', renderElement: renderVideoStreamElement, displayName: displayName, onRenderPlaceholder: onRenderAvatar, isMuted: remoteParticipant.isMuted,
14200
+ React.createElement(VideoTile, Object.assign({ key: userId, userId: userId, initialsName: (_b = remoteParticipant.displayName) !== null && _b !== void 0 ? _b : '', renderElement: renderVideoStreamElement, displayName: displayName, onRenderPlaceholder: onRenderAvatar, isMuted: remoteParticipant.isMuted,
13896
14201
  /* @conditional-compile-remove(raise-hand) */
13897
14202
  raisedHand: remoteParticipant.raisedHand,
13898
14203
  /* @conditional-compile-remove(reaction) */
@@ -17975,7 +18280,7 @@ const ReactionButton = (props) => {
17975
18280
  const resourceUrl = emojiResource.get(emoji);
17976
18281
  return (React.createElement(react.TooltipHost, { key: index, "data-ui-id": index, hidden: props.disableTooltip, content: emojiButtonTooltip.get(emoji), styles: reactionToolTipHostStyle(), calloutProps: Object.assign({}, calloutProps) },
17977
18282
  React.createElement(react.IconButton, { key: index, onClick: () => {
17978
- props.onReactionClicked(emoji);
18283
+ props.onReactionClick(emoji);
17979
18284
  setIsHoveredMap((prevMap) => {
17980
18285
  return new Map(prevMap).set(emoji, false);
17981
18286
  });
@@ -18920,20 +19225,26 @@ const _TagsSurvey = (props) => {
18920
19225
  const [selectedTextResponse, setSelectedTextResponse] = React.useState({});
18921
19226
  const [checkedTextFields, setCheckedTextFields] = React.useState([]);
18922
19227
  const tags = React.useMemo(() => {
18923
- const tags = [];
18924
- Object.keys(callIssuesToTag).forEach((issueCategory) => {
18925
- Object.keys(callIssuesToTag[issueCategory]).map((issue) => {
18926
- const issueCapitalized = (issue === null || issue === void 0 ? void 0 : issue.charAt(0).toUpperCase()) + (issue === null || issue === void 0 ? void 0 : issue.slice(1));
19228
+ const tags = {
19229
+ overallRating: [],
19230
+ audioRating: [],
19231
+ videoRating: [],
19232
+ screenshareRating: []
19233
+ };
19234
+ getKeys(callIssuesToTag).forEach((issueCategory) => {
19235
+ getKeys(callIssuesToTag[issueCategory]).map((issue) => {
19236
+ const issueCapitalized = ((issue === null || issue === void 0 ? void 0 : issue.charAt(0).toUpperCase()) + (issue === null || issue === void 0 ? void 0 : issue.slice(1)));
19237
+ const issueMessages = callIssuesToTag[issueCategory];
18927
19238
  if (tags[issueCategory]) {
18928
19239
  tags[issueCategory].push({
18929
- message: callIssuesToTag[issueCategory][issue],
19240
+ message: issueMessages[issue],
18930
19241
  issue: issueCapitalized
18931
19242
  });
18932
19243
  }
18933
19244
  else {
18934
19245
  tags[issueCategory] = [
18935
19246
  {
18936
- message: callIssuesToTag[issueCategory][issue],
19247
+ message: issueMessages[issue],
18937
19248
  issue: issueCapitalized
18938
19249
  }
18939
19250
  ];
@@ -18946,11 +19257,13 @@ const _TagsSurvey = (props) => {
18946
19257
  if (checked) {
18947
19258
  if (issue) {
18948
19259
  setSelectedTags((prevState) => {
18949
- if (prevState[issueCategory]) {
18950
- prevState[issueCategory].issues.push(issue);
19260
+ var _a;
19261
+ const existingIssues = (_a = prevState === null || prevState === void 0 ? void 0 : prevState[issueCategory]) === null || _a === void 0 ? void 0 : _a.issues;
19262
+ if (existingIssues) {
19263
+ prevState[issueCategory].issues = [...existingIssues, issue];
18951
19264
  }
18952
19265
  else {
18953
- prevState[issueCategory] = { score: 1, issues: [issue] };
19266
+ prevState[issueCategory] = { issues: [issue] };
18954
19267
  }
18955
19268
  return prevState;
18956
19269
  });
@@ -18966,7 +19279,8 @@ const _TagsSurvey = (props) => {
18966
19279
  else {
18967
19280
  if (issue) {
18968
19281
  setSelectedTags((prevState) => {
18969
- if (prevState[issueCategory]) {
19282
+ var _a;
19283
+ if ((_a = prevState[issueCategory]) === null || _a === void 0 ? void 0 : _a.issues) {
18970
19284
  prevState[issueCategory].issues = prevState[issueCategory].issues.filter(function (value) {
18971
19285
  return value !== issue;
18972
19286
  });
@@ -19010,7 +19324,7 @@ const _TagsSurvey = (props) => {
19010
19324
  return (React.createElement(React.Fragment, null,
19011
19325
  React.createElement(react.Stack, { verticalAlign: "center" },
19012
19326
  React.createElement(react.Text, { className: questionTextStyle$1(theme) }, strings === null || strings === void 0 ? void 0 : strings.tagsSurveyQuestion)),
19013
- React.createElement(react.Pivot, null, Object.keys(tags).map((key, i) => {
19327
+ React.createElement(react.Pivot, null, getKeys(tags).map((key, i) => {
19014
19328
  return (React.createElement(react.PivotItem, { key: `key-${i}`, headerText: categoryHeadings[key], headerButtonProps: {
19015
19329
  'data-order': i,
19016
19330
  'data-title': key
@@ -19765,22 +20079,18 @@ const _CaptionsSettingsModal = (props) => {
19765
20079
  const theme = react.useTheme();
19766
20080
  const [hasSetSpokenLanguage, setHasSetSpokenLanguage] = React.useState(false);
19767
20081
  const [selectedSpokenLanguage, setSelectedSpokenLanguage] = React.useState({
19768
- key: currentSpokenLanguage !== '' ? currentSpokenLanguage : defaultSpokenLanguage,
19769
- text: currentSpokenLanguage !== '' ? currentSpokenLanguage : defaultSpokenLanguage
20082
+ key: currentSpokenLanguage !== null && currentSpokenLanguage !== void 0 ? currentSpokenLanguage : defaultSpokenLanguage,
20083
+ text: currentSpokenLanguage !== null && currentSpokenLanguage !== void 0 ? currentSpokenLanguage : defaultSpokenLanguage
19770
20084
  });
19771
20085
  const [selectedCaptionLanguage, setSelectedCaptionLanguage] = React.useState({
19772
- key: currentCaptionLanguage !== ''
19773
- ? currentCaptionLanguage
19774
- : _spokenLanguageToCaptionLanguage[selectedSpokenLanguage.key],
19775
- text: currentCaptionLanguage !== ''
19776
- ? currentCaptionLanguage
19777
- : _spokenLanguageToCaptionLanguage[selectedSpokenLanguage.key]
20086
+ key: currentCaptionLanguage !== null && currentCaptionLanguage !== void 0 ? currentCaptionLanguage : _spokenLanguageToCaptionLanguage[selectedSpokenLanguage.key],
20087
+ text: currentCaptionLanguage !== null && currentCaptionLanguage !== void 0 ? currentCaptionLanguage : _spokenLanguageToCaptionLanguage[selectedSpokenLanguage.key]
19778
20088
  });
19779
20089
  React.useEffect(() => {
19780
20090
  // set spoken language when start captions with a spoken language specified.
19781
20091
  // this is to fix the bug when a second user starts captions with a new spoken language, captions bot ignore that spoken language
19782
20092
  if (isCaptionsFeatureActive && !hasSetSpokenLanguage) {
19783
- onSetSpokenLanguage(selectedSpokenLanguage.key.toString());
20093
+ onSetSpokenLanguage(selectedSpokenLanguage.key);
19784
20094
  // we only need to call set spoken language once when first starting captions
19785
20095
  setHasSetSpokenLanguage(true);
19786
20096
  }
@@ -19791,8 +20101,8 @@ const _CaptionsSettingsModal = (props) => {
19791
20101
  }
19792
20102
  }, [onDismissCaptionsSettings]);
19793
20103
  const onConfirm = React.useCallback(() => __awaiter$v(void 0, void 0, void 0, function* () {
19794
- const spokenLanguageCode = selectedSpokenLanguage.key.toString();
19795
- const captionLanguageCode = selectedCaptionLanguage.key.toString();
20104
+ const spokenLanguageCode = selectedSpokenLanguage.key;
20105
+ const captionLanguageCode = selectedCaptionLanguage.key;
19796
20106
  if (isCaptionsFeatureActive) {
19797
20107
  onSetSpokenLanguage(spokenLanguageCode);
19798
20108
  onSetCaptionLanguage(captionLanguageCode);
@@ -19848,15 +20158,13 @@ const _CaptionsSettingsModal = (props) => {
19848
20158
  preventDismissOnEvent: _preventDismissOnEvent
19849
20159
  }), []);
19850
20160
  const CaptionsSettingsComponent = React.useCallback(() => {
19851
- const placeholderSpokenLanguage = currentSpokenLanguage !== '' ? currentSpokenLanguage : defaultSpokenLanguage;
19852
- const placeholderCaptionLanguage = currentCaptionLanguage !== ''
19853
- ? currentCaptionLanguage
19854
- : _spokenLanguageToCaptionLanguage[placeholderSpokenLanguage];
20161
+ const placeholderSpokenLanguage = currentSpokenLanguage !== null && currentSpokenLanguage !== void 0 ? currentSpokenLanguage : defaultSpokenLanguage;
20162
+ const placeholderCaptionLanguage = currentCaptionLanguage !== null && currentCaptionLanguage !== void 0 ? currentCaptionLanguage : _spokenLanguageToCaptionLanguage[placeholderSpokenLanguage];
19855
20163
  return (React.createElement(react.Stack, null,
19856
- React.createElement(react.Dropdown, { label: strings === null || strings === void 0 ? void 0 : strings.captionsSettingsSpokenLanguageDropdownLabel, selectedKey: selectedSpokenLanguage ? selectedSpokenLanguage.key : undefined, onChange: onSpokenLanguageChange, calloutProps: calloutProps, placeholder: placeholderSpokenLanguage, options: sortedSpokenLanguageDropdownOptions, styles: dropdownStyles }),
20164
+ React.createElement(react.Dropdown, { label: strings === null || strings === void 0 ? void 0 : strings.captionsSettingsSpokenLanguageDropdownLabel, selectedKey: selectedSpokenLanguage ? selectedSpokenLanguage.key : undefined, onChange: (ev, option) => onSpokenLanguageChange(ev, option), calloutProps: calloutProps, placeholder: placeholderSpokenLanguage, options: sortedSpokenLanguageDropdownOptions, styles: dropdownStyles }),
19857
20165
  React.createElement(react.Text, { className: dropdownInfoTextStyle(theme) }, strings === null || strings === void 0 ? void 0 : strings.captionsSettingsSpokenLanguageDropdownInfoText),
19858
20166
  changeCaptionLanguage && (React.createElement(React.Fragment, null,
19859
- React.createElement(react.Dropdown, { label: strings === null || strings === void 0 ? void 0 : strings.captionsSettingsCaptionLanguageDropdownLabel, selectedKey: selectedCaptionLanguage ? selectedCaptionLanguage.key : undefined, onChange: onCaptionLanguageChange, calloutProps: calloutProps, placeholder: placeholderCaptionLanguage, options: sortedCaptionLanguageDropdownOptions, styles: dropdownStyles }),
20167
+ React.createElement(react.Dropdown, { label: strings === null || strings === void 0 ? void 0 : strings.captionsSettingsCaptionLanguageDropdownLabel, selectedKey: selectedCaptionLanguage ? selectedCaptionLanguage.key : undefined, onChange: (ev, option) => onCaptionLanguageChange(ev, option), calloutProps: calloutProps, placeholder: placeholderCaptionLanguage, options: sortedCaptionLanguageDropdownOptions, styles: dropdownStyles }),
19860
20168
  React.createElement(react.Text, { className: dropdownInfoTextStyle(theme) }, strings === null || strings === void 0 ? void 0 : strings.captionsSettingsCaptionLanguageDropdownInfoText)))));
19861
20169
  }, [
19862
20170
  calloutProps,
@@ -19894,7 +20202,10 @@ const _CaptionsSettingsModal = (props) => {
19894
20202
  */
19895
20203
  const createComponentStrings = (localizedStrings) => {
19896
20204
  const strings = Object.assign({}, en_US$1);
19897
- Object.keys(localizedStrings).forEach((key) => {
20205
+ getKeys(localizedStrings).forEach((key) => {
20206
+ // mark the value as unknown because the type changes based on the key.
20207
+ // this is unsafe at runtime as we could assign the wrong type based on the key here.
20208
+ // but typescript isn't smart enough to know that the key used across each access will result in the same type
19898
20209
  strings[key] = Object.assign(Object.assign({}, strings[key]), localizedStrings[key]);
19899
20210
  });
19900
20211
  return strings;
@@ -19999,7 +20310,7 @@ var participantItem$b={isMeText:"(tu)",menuTitle:"Altre opzioni",removeButtonLab
19999
20310
  */
20000
20311
  const COMPONENT_LOCALE_IT_IT = { strings: createComponentStrings(it_IT$1) };
20001
20312
 
20002
- var participantItem$a={isMeText:"(自分)",menuTitle:"その他のオプション",removeButtonLabel:"削除",sharingIconLabel:"共有",mutedIconLabel:"ミュート状態",displayNamePlaceholder:"名前のない参加者",participantStateRinging:"呼び出し中...",participantStateHold:"保留中"};var ParticipantList$a={overflowParticipantCount:"その他 {overflowCount} 個"};var typingIndicator$a={singleUser:"{user} さんが入力しています...",multipleUsers:"{users} さんが入力しています...",multipleUsersAbbreviateOne:"{users} さんとその他 1 人が入力しています...",multipleUsersAbbreviateMany:"{users} さんと他 {numOthers} 人が入力しています...",delimiter:","};var sendBox$a={placeholderText:"メッセージを入力",textTooLong:"メッセージの長さが上限を超えています。",sendButtonAriaLabel:"メッセージの送信",fileUploadsPendingError:"アップロード中です... お待ちください。",removeFile:"ファイルを削除します",uploading:"アップロード中",uploadCompleted:"アップロードが完了しました"};var mentionPopover$a={mentionPopoverHeader:"候補"};var imageOverlay$a={downloadButtonLabel:"ダウンロード",dismissButtonAriaLabel:"閉じる"};var messageStatusIndicator$a={deliveredAriaLabel:"メッセージを送信しました",deliveredTooltipText:"送信しました",seenAriaLabel:"他のユーザーが表示したメッセージ",seenTooltipText:"既読",readByTooltipText:"{remoteParticipantsCount} の {messageThreadReadCount} による読み取り",sendingAriaLabel:"メッセージを送信しています",sendingTooltipText:"送信中",failedToSendAriaLabel:"メッセージの送信に失敗しました",failedToSendTooltipText:"送信できませんでした"};var endCallButton$a={label:"退出",tooltipContent:"通話を終了"};var cameraButton$a={onLabel:"カメラ",offLabel:"カメラ",tooltipDisabledContent:"カメラが無効になっています",tooltipOnContent:"カメラをオフ",tooltipOffContent:"カメラをオンにする",tooltipVideoLoadingContent:"ビデオの読み込み中です",cameraMenuTitle:"カメラ",cameraMenuTooltip:"カメラを選択する",cameraButtonSplitRoleDescription:"分割ボタン",onSplitButtonAriaLabel:"カメラとカメラ オプションをオフにする",offSplitButtonAriaLabel:"カメラとカメラ オプションをオンにする",cameraActionTurnedOnAnnouncement:"カメラがオンになっています",cameraActionTurnedOffAnnouncement:"カメラがオフになっています",onSplitButtonPrimaryActionCamera:"カメラをオフにする",offSplitButtonPrimaryActionCamera:"カメラをオンにする",cameraPrimaryActionSplitButtonTitle:"カメラを使用する",videoEffectsMenuItemTitle:"効果"};var microphoneButton$a={onLabel:"マイク",offLabel:"マイク",tooltipDisabledContent:"マイクが無効になっています",tooltipOnContent:"マイクをミュートにする",tooltipOffContent:"マイクのミュートを解除する",microphoneMenuTitle:"マイク",microphoneMenuTooltip:"マイクを選択する",speakerMenuTitle:"スピーカー",speakerMenuTooltip:"スピーカーを選択する",microphoneButtonSplitRoleDescription:"分割ボタン",onSplitButtonAriaLabel:"マイクとオーディオのオプションをミュートにする",offSplitButtonAriaLabel:"マイクとオーディオのオプションのミュートを解除する",microphoneActionTurnedOnAnnouncement:"マイクがオンになっています",microphoneActionTurnedOffAnnouncement:"マイクがオフになっています",offSplitButtonMicrophonePrimaryAction:"マイクのミュートを解除する",onSplitButtonMicrophonePrimaryAction:"マイクをミュートにする",microphonePrimaryActionSplitButtonTitle:"マイクを使用する"};var devicesButton$a={label:"デバイス",tooltipContent:"デバイスの管理",cameraMenuTitle:"カメラ",cameraMenuTooltip:"カメラを選択する",audioDeviceMenuTitle:"オーディオ デバイス",audioDeviceMenuTooltip:"オーディオ デバイスを選択する",microphoneMenuTitle:"マイク",microphoneMenuTooltip:"マイクを選択する",speakerMenuTitle:"スピーカー",speakerMenuTooltip:"スピーカーを選択する"};var participantsButton$a={label:"ユーザー",tooltipContent:"参加者を表示",menuHeader:"この通話で",participantsListButtonLabel:"{numParticipants} 人",muteAllButtonLabel:"全員をミュート",copyInviteLinkButtonLabel:"招待用のリンクをコピー",copyInviteLinkActionedAriaLabel:"招待用のリンクがコピーされました"};var screenShareButton$a={onLabel:"プレゼンテーションの停止",offLabel:"提示",tooltipDisabledContent:"プレゼンテーションは無効です",tooltipOnContent:"画面の表示",tooltipOffContent:"画面のプレゼンテーション"};var raiseHandButton$a={offLabel:"手を挙げる",onLabel:"低い",tooltipDisabledContent:"手を挙げる操作が無効になっています",tooltipOnContent:"手を下げる",tooltipOffContent:"手を挙げる"};var reactionButton$a={label:"リアクションする",tooltipDisabledContent:"リアクション操作が無効になっています",tooltipContent:"リアクションを送信します",likeReactionTooltipContent:"高く評価",heartReactionTooltipContent:"大好き",laughReactionTooltipContent:"笑い",applauseReactionTooltipContent:"喝采",surprisedReactionTooltipContent:"驚いた"};var messageThread$a={yesterday:"昨日",sunday:"日曜日",monday:"月曜日",tuesday:"火曜日",wednesday:"水曜日",thursday:"木曜日",friday:"金曜日",saturday:"土曜日",participantJoined:"チャットに参加しました。",participantLeft:"チャットから退出しました。",editMessage:"編集",removeMessage:"削除",resendMessage:"もう一度送信",failToSendTag:"送信できませんでした",editedTag:"編集済み",liveAuthorIntro:"{author} さんの発言",messageContentAriaText:"{author} が {message} と言いました",messageContentMineAriaText:"{message} と言いました",editBoxTextLimit:"メッセージが{limitNumber}文字の制限を超えています",editBoxPlaceholderText:"メッセージを編集する",newMessagesIndicator:"新しいメッセージ",noDisplayNameSub:"名前がありません",editBoxCancelButton:"取り消し",editBoxSubmitButton:"完了",messageReadCount:"{remoteParticipantsCount} の {messageReadByCount} による読み取り",actionMenuMoreOptions:"その他のオプション",downloadFile:"ファイルをダウンロード",blockedWarningText:"組織のポリシーにより、このメッセージは削除されました。",blockedWarningLinkText:"詳細",fileCardGroupMessage:"メッセージには {fileCount} 個の添付ファイルがあります",messageDeletedAnnouncementAriaLabel:"メッセージが削除されます"};var errorBar$a={unableToReachChatService:"オフラインです",accessDenied:"チャット サービスにアクセスできません- 指定されたユーザー資格情報をご確認ください",userNotInChatThread:"このチャット スレッドにはもう参加していません",sendMessageNotInChatThread:"このチャット スレッドに参加していないため、メッセージを送信できませんでした",sendMessageGeneric:"メッセージを送信できませんでした。",callingNetworkFailure:"通話の接続中に問題が発生しました。オフラインのようです。",startVideoGeneric:"ビデオを開始できませんでした",stopVideoGeneric:"ビデオを停止できませんでした",muteGeneric:"マイクをミュートできませんでした",unmuteGeneric:"マイクのミュートを解除できませんでした",speakingWhileMuted:"マイクがミュートになっています",startScreenShareGeneric:"画面共有の開始中に問題が発生しました。",stopScreenShareGeneric:"画面の共有を停止できませんでした",callNetworkQualityLow:"ネットワークの品質が低くなっています。",callNoSpeakerFound:"スピーカーまたはヘッドフォンが見つかりません。音声デバイスを接続して通話を聞きます。",callNoMicrophoneFound:"マイクが見つかりません。オーディオ入力デバイスを接続します。",callMicrophoneAccessDenied:"マイクにアクセスできません。アドレス バーのロックをクリックして、この Web ページにアクセス許可を付与します。",callMicrophoneAccessDeniedSafari:"マイクにアクセスできません。ページを更新してアクセス許可を可能にするか、このブラウザーの設定を確認し、この Web サイトのアクセス許可が有効になっていることを確認してください。",callMicrophoneMutedBySystem:"システムによってミュートになっています。",callMicrophoneUnmutedBySystem:"マイクが回復し、システムによってミュートが解除されました。",callMacOsMicrophoneAccessDenied:"マイクにアクセスできません。macOS のプライバシー設定でマイクへのアクセス許可を付与します。",callLocalVideoFreeze:"ネットワーク帯域幅が不十分です。通話中に他のユーザーのビデオが一時停止している可能性があります。",callCameraAccessDenied:"カメラにアクセスできません。アドレス バーのロックをクリックして、この Web ページにアクセス許可を付与します。",callCameraAccessDeniedSafari:"カメラにアクセスできません。ページを更新してアクセス許可を可能にするか、このブラウザーの設定を確認し、この Web サイトのアクセス許可が有効になっていることを確認してください。",callCameraAlreadyInUse:"カメラにアクセスできません。別のアプリケーションによって既に使用されている可能性があります。",callVideoStoppedBySystem:"ビデオはシステムによって停止されました。",callVideoRecoveredBySystem:"ビデオが再開されました。",callMacOsCameraAccessDenied:"MacOS がカメラへのアクセスをブロックしています。プライバシー設定を更新して、このブラウザーがカメラにアクセスできるようにします。",callMacOsScreenShareAccessDenied:"MacOS は画面の共有をブロックしています。プライバシー設定を更新して、このブラウザーで画面を録画できるようにします。",dismissButtonAriaLabel:"閉じる",failedToJoinCallGeneric:"通話に参加できませんでした",failedToJoinCallInvalidMeetingLink:"会議に参加できません。リンクが無効です。",cameraFrozenForRemoteParticipants:"通話のユーザーにビデオの表示で問題が発生しています。デバイスとネットワークを確認してください。",unableToStartVideoEffect:"ビデオ効果を適用できません。",startSpotlightWhileMaxParticipantsAreSpotlighted:"Cannot start spotlight on participant(s) because the maximum number of participants are already spotlighted."};var videoGallery$a={screenIsBeingSharedMessage:"画面を共有しています",screenShareLoadingMessage:"{participant} の画面を読み込んでいます",localVideoLabel:"自分",localVideoCameraSwitcherLabel:"カメラを切り替え",localVideoMovementLabel:"移動可能なローカル ビデオ タイル",localVideoSelectedDescription:"{cameraName} が選択されました。",displayNamePlaceholder:"名前のない参加者",fitRemoteParticipantToFrame:"フレームに収める",fillRemoteParticipantFrame:"トリミングする",pinParticipantForMe:"自分用にピン留め",pinParticipantForMeLimitReached:"ピン留め (上限に達しました)",unpinParticipantForMe:"ピンを外す",pinParticipantMenuItemAriaLabel:"{participantName} さんをピン留めする",unpinParticipantMenuItemAriaLabel:"{participantName} さんのピンを外す",pinnedParticipantAnnouncementAriaLabel:"{participantName} さんをピン留めしました",unpinnedParticipantAnnouncementAriaLabel:"{participantName} さんのピンを外しました",startSpotlightVideoTileMenuLabel:"全員にスポットライトを設定",addSpotlightVideoTileMenuLabel:"スポットライトを追加",spotlightLimitReachedMenuTitle:"Spotlight limit reached",stopSpotlightVideoTileMenuLabel:"スポットライトの設定を解除",stopSpotlightOnSelfVideoTileMenuLabel:"スポットライトを終了"};var dialpad$a={placeholderText:"電話番号を入力してください",deleteButtonAriaLabel:"削除"};var holdButton$a={onLabel:"再開",offLabel:"保留",tooltipOnContent:"通話の再開",tooltipOffContent:"通話の保留"};var videoTile$a={participantStateRinging:"呼び出し中...",participantStateHold:"保留中"};var CameraAndMicrophoneSitePermissionsRequest$a={primaryText:"{appName}にカメラとマイクの使用を許可する",secondaryText:"これは、参加者があなたのことを見たり聞いたりできるようにするものです。",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示",primaryButtonText:"カメラとマイクなしで続行する",ariaLabel:"カメラとマイクへのアクセスが許可する"};var CameraSitePermissionsRequest$a={primaryText:"{appName} にカメラの使用を許可する",secondaryText:"これは、参加者に表示されるようにするためです。",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示",primaryButtonText:"カメラなしで続行",ariaLabel:"カメラへのアクセスを許可"};var MicrophoneSitePermissionsRequest$a={primaryText:"{appName} にマイクの使用を許可する",secondaryText:"これは、参加者に聞こえるようにするためです。",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示",primaryButtonText:"マイクなしで続行",ariaLabel:"マイクへのアクセスを許可する"};var CameraAndMicrophoneSitePermissionsCheck$a={primaryText:"カメラとマイクへのアクセスを確認しています",secondaryText:"プロンプトが表示されたら、アクセスを許可します。これは、参加者があなたを見たり聞いたりできるようにするためです。",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示",primaryButtonText:"カメラとマイクなしで続行する",ariaLabel:"カメラとマイクへのアクセスを確認しています。プロンプトが表示されたら、アクセスを許可します。"};var CameraSitePermissionsCheck$a={primaryText:"カメラへのアクセスを確認しています",secondaryText:"プロンプトが表示されたら、アクセスを許可します。これは、参加者があなたを見ることができるようにするためです。",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示",primaryButtonText:"カメラなしで続行する",ariaLabel:"カメラへのアクセスを確認しています。プロンプトが表示されたら、アクセスを許可します。"};var MicrophoneSitePermissionsCheck$a={primaryText:"マイクへのアクセスを確認しています",secondaryText:"プロンプトが表示されたら、アクセスを許可します。これは、参加者があなたの声を聞くことができるようにするためです。",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示",primaryButtonText:"マイクなしで続行する",ariaLabel:"マイクへのアクセスを確認しています。プロンプトが表示されたら、アクセスを許可します。"};var CameraAndMicrophoneSitePermissionsDenied$a={primaryText:"カメラとマイクにアクセスできません",secondaryText:"アドレス バーのロック アイコンをクリックして、この Web ページにマイクのアクセス許可を付与します。ページの更新が必要な可能性があります。",primaryButtonText:"カメラとマイクなしで続行",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示"};var CameraAndMicrophoneSitePermissionsDeniedSafari$a={primaryText:"カメラとマイクにアクセスできません",secondaryText:"ページを更新してアクセス許可を可能にするか、このブラウザーの設定を確認し、この Web サイトのアクセス許可が有効になっていることを確認してください。",primaryButtonText:"カメラとマイクなしで続行",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示"};var CameraSitePermissionsDenied$a={primaryText:"カメラにアクセスできません",secondaryText:"アドレス バーのロック アイコンをクリックして、この Web ページにカメラのアクセス許可を付与します。ページの更新が必要な可能性があります。",primaryButtonText:"カメラなしで続行",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示"};var MicrophoneSitePermissionsDenied$a={primaryText:"マイクにアクセスできません",secondaryText:"アドレス バーのロック アイコンをクリックして、この Web ページにマイクのアクセス許可を付与します。ページの更新が必要な可能性があります。",primaryButtonText:"マイクなしで続行する",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示"};var CameraSitePermissionsDeniedSafari$a={primaryText:"カメラにアクセスできません",secondaryText:"ページを更新してアクセス許可を可能にするか、このブラウザーの設定を確認し、この Web サイトのアクセス許可が有効になっていることを確認してください。",primaryButtonText:"カメラなしで続行する",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示"};var MicrophoneSitePermissionsDeniedSafari$a={primaryText:"マイクにアクセスできません",secondaryText:"ページを更新してアクセス許可を可能にするか、このブラウザーの設定を確認し、この Web サイトのアクセス許可が有効になっていることを確認してください。",primaryButtonText:"マイクなしで続行",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示"};var UnsupportedBrowser$a={primaryText:"サポートされていないブラウザーです",secondaryText:"互換性のあるブラウザーを使用して、この通話に参加してください。",moreHelpLinkText:"互換性要件を確認する"};var UnsupportedBrowserVersion$a={primaryText:"ブラウザーの更新が必要です",secondaryText:"可能な限り最善の通話を行うために、ブラウザーを更新してから、もう一度通話に参加してみてください。",moreHelpLinkText:"互換性要件を確認する",continueAnywayButtonText:"更新せずに通話を開始する"};var UnsupportedOperatingSystem$a={primaryText:"オペレーティング システムがサポートされていません",secondaryText:"互換性のあるオペレーティング システムのデバイスを使用して、この通話に参加してください。",moreHelpLinkText:"互換性要件を確認する"};var BrowserPermissionDenied$a={primaryText:"カメラまたはマイクを使用できません",secondaryText:"お使いのブラウザーはカメラまたはマイクにアクセスできない可能性があります。この問題を解決するには、[システム環境設定] を開きます。",primaryButtonText:"再試行",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示"};var BrowserPermissionDeniedIOS$a={primaryText:"マイクへのアクセスを許可して続行する",secondaryText:"そのため、他の参加者はあなたの声を聞くことができます。",primaryButtonText:"再試行",imageAltText:"iOS のマイクとカメラ デバイスのアクセス許可の場所",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示",step1Text:"設定アプリに移動します。",step2Text:"このブラウザーの設定まで下にスクロール",step3Text:"マイクをオンにする (カメラはオプション)",step4Text:"もう一度通話に参加してみてください",step1DigitText:"1",step2DigitText:"2",step3DigitText:"3",step4DigitText:"4"};var verticalGallery$a={leftNavButtonAriaLabel:"前のページ",rightNavButtonAriaLabel:"次のページ"};var AttendeeRole$a="出席者";var ja_JP$1 = {participantItem:participantItem$a,ParticipantList:ParticipantList$a,typingIndicator:typingIndicator$a,sendBox:sendBox$a,mentionPopover:mentionPopover$a,imageOverlay:imageOverlay$a,messageStatusIndicator:messageStatusIndicator$a,endCallButton:endCallButton$a,cameraButton:cameraButton$a,microphoneButton:microphoneButton$a,devicesButton:devicesButton$a,participantsButton:participantsButton$a,screenShareButton:screenShareButton$a,raiseHandButton:raiseHandButton$a,reactionButton:reactionButton$a,messageThread:messageThread$a,errorBar:errorBar$a,videoGallery:videoGallery$a,dialpad:dialpad$a,holdButton:holdButton$a,videoTile:videoTile$a,CameraAndMicrophoneSitePermissionsRequest:CameraAndMicrophoneSitePermissionsRequest$a,CameraSitePermissionsRequest:CameraSitePermissionsRequest$a,MicrophoneSitePermissionsRequest:MicrophoneSitePermissionsRequest$a,CameraAndMicrophoneSitePermissionsCheck:CameraAndMicrophoneSitePermissionsCheck$a,CameraSitePermissionsCheck:CameraSitePermissionsCheck$a,MicrophoneSitePermissionsCheck:MicrophoneSitePermissionsCheck$a,CameraAndMicrophoneSitePermissionsDenied:CameraAndMicrophoneSitePermissionsDenied$a,CameraAndMicrophoneSitePermissionsDeniedSafari:CameraAndMicrophoneSitePermissionsDeniedSafari$a,CameraSitePermissionsDenied:CameraSitePermissionsDenied$a,MicrophoneSitePermissionsDenied:MicrophoneSitePermissionsDenied$a,CameraSitePermissionsDeniedSafari:CameraSitePermissionsDeniedSafari$a,MicrophoneSitePermissionsDeniedSafari:MicrophoneSitePermissionsDeniedSafari$a,UnsupportedBrowser:UnsupportedBrowser$a,UnsupportedBrowserVersion:UnsupportedBrowserVersion$a,UnsupportedOperatingSystem:UnsupportedOperatingSystem$a,BrowserPermissionDenied:BrowserPermissionDenied$a,BrowserPermissionDeniedIOS:BrowserPermissionDeniedIOS$a,verticalGallery:verticalGallery$a,AttendeeRole:AttendeeRole$a};
20313
+ var participantItem$a={isMeText:"(自分)",menuTitle:"その他のオプション",removeButtonLabel:"削除",sharingIconLabel:"共有",mutedIconLabel:"ミュート状態",displayNamePlaceholder:"名前のない参加者",participantStateRinging:"呼び出し中...",participantStateHold:"保留中"};var ParticipantList$a={overflowParticipantCount:"その他 {overflowCount} 個"};var typingIndicator$a={singleUser:"{user} さんが入力しています...",multipleUsers:"{users} さんが入力しています...",multipleUsersAbbreviateOne:"{users} さんとその他 1 人が入力しています...",multipleUsersAbbreviateMany:"{users} さんと他 {numOthers} 人が入力しています...",delimiter:","};var sendBox$a={placeholderText:"メッセージを入力",textTooLong:"メッセージの長さが上限を超えています。",sendButtonAriaLabel:"メッセージの送信",fileUploadsPendingError:"アップロード中です... お待ちください。",removeFile:"ファイルを削除します",uploading:"アップロード中",uploadCompleted:"アップロードが完了しました"};var mentionPopover$a={mentionPopoverHeader:"候補"};var imageOverlay$a={downloadButtonLabel:"ダウンロード",dismissButtonAriaLabel:"閉じる"};var messageStatusIndicator$a={deliveredAriaLabel:"メッセージを送信しました",deliveredTooltipText:"送信しました",seenAriaLabel:"他のユーザーが表示したメッセージ",seenTooltipText:"既読",readByTooltipText:"{remoteParticipantsCount} の {messageThreadReadCount} による読み取り",sendingAriaLabel:"メッセージを送信しています",sendingTooltipText:"送信中",failedToSendAriaLabel:"メッセージの送信に失敗しました",failedToSendTooltipText:"送信できませんでした"};var endCallButton$a={label:"退出",tooltipContent:"通話を終了"};var cameraButton$a={onLabel:"カメラ",offLabel:"カメラ",tooltipDisabledContent:"カメラが無効になっています",tooltipOnContent:"カメラをオフ",tooltipOffContent:"カメラをオンにする",tooltipVideoLoadingContent:"ビデオの読み込み中です",cameraMenuTitle:"カメラ",cameraMenuTooltip:"カメラを選択する",cameraButtonSplitRoleDescription:"分割ボタン",onSplitButtonAriaLabel:"カメラとカメラ オプションをオフにする",offSplitButtonAriaLabel:"カメラとカメラ オプションをオンにする",cameraActionTurnedOnAnnouncement:"カメラがオンになっています",cameraActionTurnedOffAnnouncement:"カメラがオフになっています",onSplitButtonPrimaryActionCamera:"カメラをオフにする",offSplitButtonPrimaryActionCamera:"カメラをオンにする",cameraPrimaryActionSplitButtonTitle:"カメラを使用する",videoEffectsMenuItemTitle:"効果"};var microphoneButton$a={onLabel:"マイク",offLabel:"マイク",tooltipDisabledContent:"マイクが無効になっています",tooltipOnContent:"マイクをミュートにする",tooltipOffContent:"マイクのミュートを解除する",microphoneMenuTitle:"マイク",microphoneMenuTooltip:"マイクを選択する",speakerMenuTitle:"スピーカー",speakerMenuTooltip:"スピーカーを選択する",microphoneButtonSplitRoleDescription:"分割ボタン",onSplitButtonAriaLabel:"マイクとオーディオのオプションをミュートにする",offSplitButtonAriaLabel:"マイクとオーディオのオプションのミュートを解除する",microphoneActionTurnedOnAnnouncement:"マイクがオンになっています",microphoneActionTurnedOffAnnouncement:"マイクがオフになっています",offSplitButtonMicrophonePrimaryAction:"マイクのミュートを解除する",onSplitButtonMicrophonePrimaryAction:"マイクをミュートにする",microphonePrimaryActionSplitButtonTitle:"マイクを使用する"};var devicesButton$a={label:"デバイス",tooltipContent:"デバイスの管理",cameraMenuTitle:"カメラ",cameraMenuTooltip:"カメラを選択する",audioDeviceMenuTitle:"オーディオ デバイス",audioDeviceMenuTooltip:"オーディオ デバイスを選択する",microphoneMenuTitle:"マイク",microphoneMenuTooltip:"マイクを選択する",speakerMenuTitle:"スピーカー",speakerMenuTooltip:"スピーカーを選択する"};var participantsButton$a={label:"ユーザー",tooltipContent:"参加者を表示",menuHeader:"この通話で",participantsListButtonLabel:"{numParticipants} 人",muteAllButtonLabel:"全員をミュート",copyInviteLinkButtonLabel:"招待用のリンクをコピー",copyInviteLinkActionedAriaLabel:"招待用のリンクがコピーされました"};var screenShareButton$a={onLabel:"プレゼンテーションの停止",offLabel:"提示",tooltipDisabledContent:"プレゼンテーションは無効です",tooltipOnContent:"画面の表示",tooltipOffContent:"画面のプレゼンテーション"};var raiseHandButton$a={offLabel:"手を挙げる",onLabel:"低い",tooltipDisabledContent:"手を挙げる操作が無効になっています",tooltipOnContent:"手を下げる",tooltipOffContent:"手を挙げる"};var reactionButton$a={label:"リアクションする",tooltipDisabledContent:"リアクション操作が無効になっています",tooltipContent:"リアクションを送信します",likeReactionTooltipContent:"高く評価",heartReactionTooltipContent:"大好き",laughReactionTooltipContent:"笑い",applauseReactionTooltipContent:"喝采",surprisedReactionTooltipContent:"驚いた"};var messageThread$a={yesterday:"昨日",sunday:"日曜日",monday:"月曜日",tuesday:"火曜日",wednesday:"水曜日",thursday:"木曜日",friday:"金曜日",saturday:"土曜日",participantJoined:"チャットに参加しました。",participantLeft:"チャットから退出しました。",editMessage:"編集",removeMessage:"削除",resendMessage:"もう一度送信",failToSendTag:"送信できませんでした",editedTag:"編集済み",liveAuthorIntro:"{author} さんの発言",messageContentAriaText:"{author} が {message} と言いました",messageContentMineAriaText:"{message} と言いました",editBoxTextLimit:"メッセージが{limitNumber}文字の制限を超えています",editBoxPlaceholderText:"メッセージを編集する",newMessagesIndicator:"新しいメッセージ",noDisplayNameSub:"名前がありません",editBoxCancelButton:"取り消し",editBoxSubmitButton:"完了",messageReadCount:"{remoteParticipantsCount} の {messageReadByCount} による読み取り",actionMenuMoreOptions:"その他のオプション",downloadFile:"ファイルをダウンロード",blockedWarningText:"組織のポリシーにより、このメッセージは削除されました。",blockedWarningLinkText:"詳細",fileCardGroupMessage:"メッセージには {fileCount} 個の添付ファイルがあります",messageDeletedAnnouncementAriaLabel:"メッセージが削除されます"};var errorBar$a={unableToReachChatService:"オフラインです",accessDenied:"チャット サービスにアクセスできません- 指定されたユーザー資格情報をご確認ください",userNotInChatThread:"このチャット スレッドにはもう参加していません",sendMessageNotInChatThread:"このチャット スレッドに参加していないため、メッセージを送信できませんでした",sendMessageGeneric:"メッセージを送信できませんでした。",callingNetworkFailure:"通話の接続中に問題が発生しました。オフラインのようです。",startVideoGeneric:"ビデオを開始できませんでした",stopVideoGeneric:"ビデオを停止できませんでした",muteGeneric:"マイクをミュートできませんでした",unmuteGeneric:"マイクのミュートを解除できませんでした",speakingWhileMuted:"マイクがミュートになっています",startScreenShareGeneric:"画面共有の開始中に問題が発生しました。",stopScreenShareGeneric:"画面の共有を停止できませんでした",callNetworkQualityLow:"ネットワークの品質が低くなっています。",callNoSpeakerFound:"スピーカーまたはヘッドフォンが見つかりません。音声デバイスを接続して通話を聞きます。",callNoMicrophoneFound:"マイクが見つかりません。オーディオ入力デバイスを接続します。",callMicrophoneAccessDenied:"マイクにアクセスできません。アドレス バーのロックをクリックして、この Web ページにアクセス許可を付与します。",callMicrophoneAccessDeniedSafari:"マイクにアクセスできません。ページを更新してアクセス許可を可能にするか、このブラウザーの設定を確認し、この Web サイトのアクセス許可が有効になっていることを確認してください。",callMicrophoneMutedBySystem:"システムによってミュートになっています。",callMicrophoneUnmutedBySystem:"マイクが回復し、システムによってミュートが解除されました。",callMacOsMicrophoneAccessDenied:"マイクにアクセスできません。macOS のプライバシー設定でマイクへのアクセス許可を付与します。",callLocalVideoFreeze:"ネットワーク帯域幅が不十分です。通話中に他のユーザーのビデオが一時停止している可能性があります。",callCameraAccessDenied:"カメラにアクセスできません。アドレス バーのロックをクリックして、この Web ページにアクセス許可を付与します。",callCameraAccessDeniedSafari:"カメラにアクセスできません。ページを更新してアクセス許可を可能にするか、このブラウザーの設定を確認し、この Web サイトのアクセス許可が有効になっていることを確認してください。",callCameraAlreadyInUse:"カメラにアクセスできません。別のアプリケーションによって既に使用されている可能性があります。",callVideoStoppedBySystem:"ビデオはシステムによって停止されました。",callVideoRecoveredBySystem:"ビデオが再開されました。",callMacOsCameraAccessDenied:"MacOS がカメラへのアクセスをブロックしています。プライバシー設定を更新して、このブラウザーがカメラにアクセスできるようにします。",callMacOsScreenShareAccessDenied:"MacOS は画面の共有をブロックしています。プライバシー設定を更新して、このブラウザーで画面を録画できるようにします。",dismissButtonAriaLabel:"閉じる",failedToJoinCallGeneric:"通話に参加できませんでした",failedToJoinCallInvalidMeetingLink:"会議に参加できません。リンクが無効です。",cameraFrozenForRemoteParticipants:"通話のユーザーにビデオの表示で問題が発生しています。デバイスとネットワークを確認してください。",unableToStartVideoEffect:"ビデオ効果を適用できません。",startSpotlightWhileMaxParticipantsAreSpotlighted:"最大数の参加者に既にスポットライトが設定されているため、参加者にスポットライトを開始できません。"};var videoGallery$a={screenIsBeingSharedMessage:"画面を共有しています",screenShareLoadingMessage:"{participant} の画面を読み込んでいます",localVideoLabel:"自分",localVideoCameraSwitcherLabel:"カメラを切り替え",localVideoMovementLabel:"移動可能なローカル ビデオ タイル",localVideoSelectedDescription:"{cameraName} が選択されました。",displayNamePlaceholder:"名前のない参加者",fitRemoteParticipantToFrame:"フレームに収める",fillRemoteParticipantFrame:"トリミングする",pinParticipantForMe:"自分用にピン留め",pinParticipantForMeLimitReached:"ピン留め (上限に達しました)",unpinParticipantForMe:"ピンを外す",pinParticipantMenuItemAriaLabel:"{participantName} さんをピン留めする",unpinParticipantMenuItemAriaLabel:"{participantName} さんのピンを外す",pinnedParticipantAnnouncementAriaLabel:"{participantName} さんをピン留めしました",unpinnedParticipantAnnouncementAriaLabel:"{participantName} さんのピンを外しました",startSpotlightVideoTileMenuLabel:"全員にスポットライトを設定",addSpotlightVideoTileMenuLabel:"スポットライトを追加",spotlightLimitReachedMenuTitle:"スポットライトの上限に達しました",stopSpotlightVideoTileMenuLabel:"スポットライトの設定を解除",stopSpotlightOnSelfVideoTileMenuLabel:"スポットライトを終了"};var dialpad$a={placeholderText:"電話番号を入力してください",deleteButtonAriaLabel:"削除"};var holdButton$a={onLabel:"再開",offLabel:"保留",tooltipOnContent:"通話の再開",tooltipOffContent:"通話の保留"};var videoTile$a={participantStateRinging:"呼び出し中...",participantStateHold:"保留中"};var CameraAndMicrophoneSitePermissionsRequest$a={primaryText:"{appName}にカメラとマイクの使用を許可する",secondaryText:"これは、参加者があなたのことを見たり聞いたりできるようにするものです。",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示",primaryButtonText:"カメラとマイクなしで続行する",ariaLabel:"カメラとマイクへのアクセスが許可する"};var CameraSitePermissionsRequest$a={primaryText:"{appName} にカメラの使用を許可する",secondaryText:"これは、参加者に表示されるようにするためです。",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示",primaryButtonText:"カメラなしで続行",ariaLabel:"カメラへのアクセスを許可"};var MicrophoneSitePermissionsRequest$a={primaryText:"{appName} にマイクの使用を許可する",secondaryText:"これは、参加者に聞こえるようにするためです。",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示",primaryButtonText:"マイクなしで続行",ariaLabel:"マイクへのアクセスを許可する"};var CameraAndMicrophoneSitePermissionsCheck$a={primaryText:"カメラとマイクへのアクセスを確認しています",secondaryText:"プロンプトが表示されたら、アクセスを許可します。これは、参加者があなたを見たり聞いたりできるようにするためです。",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示",primaryButtonText:"カメラとマイクなしで続行する",ariaLabel:"カメラとマイクへのアクセスを確認しています。プロンプトが表示されたら、アクセスを許可します。"};var CameraSitePermissionsCheck$a={primaryText:"カメラへのアクセスを確認しています",secondaryText:"プロンプトが表示されたら、アクセスを許可します。これは、参加者があなたを見ることができるようにするためです。",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示",primaryButtonText:"カメラなしで続行する",ariaLabel:"カメラへのアクセスを確認しています。プロンプトが表示されたら、アクセスを許可します。"};var MicrophoneSitePermissionsCheck$a={primaryText:"マイクへのアクセスを確認しています",secondaryText:"プロンプトが表示されたら、アクセスを許可します。これは、参加者があなたの声を聞くことができるようにするためです。",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示",primaryButtonText:"マイクなしで続行する",ariaLabel:"マイクへのアクセスを確認しています。プロンプトが表示されたら、アクセスを許可します。"};var CameraAndMicrophoneSitePermissionsDenied$a={primaryText:"カメラとマイクにアクセスできません",secondaryText:"アドレス バーのロック アイコンをクリックして、この Web ページにマイクのアクセス許可を付与します。ページの更新が必要な可能性があります。",primaryButtonText:"カメラとマイクなしで続行",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示"};var CameraAndMicrophoneSitePermissionsDeniedSafari$a={primaryText:"カメラとマイクにアクセスできません",secondaryText:"ページを更新してアクセス許可を可能にするか、このブラウザーの設定を確認し、この Web サイトのアクセス許可が有効になっていることを確認してください。",primaryButtonText:"カメラとマイクなしで続行",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示"};var CameraSitePermissionsDenied$a={primaryText:"カメラにアクセスできません",secondaryText:"アドレス バーのロック アイコンをクリックして、この Web ページにカメラのアクセス許可を付与します。ページの更新が必要な可能性があります。",primaryButtonText:"カメラなしで続行",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示"};var MicrophoneSitePermissionsDenied$a={primaryText:"マイクにアクセスできません",secondaryText:"アドレス バーのロック アイコンをクリックして、この Web ページにマイクのアクセス許可を付与します。ページの更新が必要な可能性があります。",primaryButtonText:"マイクなしで続行する",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示"};var CameraSitePermissionsDeniedSafari$a={primaryText:"カメラにアクセスできません",secondaryText:"ページを更新してアクセス許可を可能にするか、このブラウザーの設定を確認し、この Web サイトのアクセス許可が有効になっていることを確認してください。",primaryButtonText:"カメラなしで続行する",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示"};var MicrophoneSitePermissionsDeniedSafari$a={primaryText:"マイクにアクセスできません",secondaryText:"ページを更新してアクセス許可を可能にするか、このブラウザーの設定を確認し、この Web サイトのアクセス許可が有効になっていることを確認してください。",primaryButtonText:"マイクなしで続行",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示"};var UnsupportedBrowser$a={primaryText:"サポートされていないブラウザーです",secondaryText:"互換性のあるブラウザーを使用して、この通話に参加してください。",moreHelpLinkText:"互換性要件を確認する"};var UnsupportedBrowserVersion$a={primaryText:"ブラウザーの更新が必要です",secondaryText:"可能な限り最善の通話を行うために、ブラウザーを更新してから、もう一度通話に参加してみてください。",moreHelpLinkText:"互換性要件を確認する",continueAnywayButtonText:"更新せずに通話を開始する"};var UnsupportedOperatingSystem$a={primaryText:"オペレーティング システムがサポートされていません",secondaryText:"互換性のあるオペレーティング システムのデバイスを使用して、この通話に参加してください。",moreHelpLinkText:"互換性要件を確認する"};var BrowserPermissionDenied$a={primaryText:"カメラまたはマイクを使用できません",secondaryText:"お使いのブラウザーはカメラまたはマイクにアクセスできない可能性があります。この問題を解決するには、[システム環境設定] を開きます。",primaryButtonText:"再試行",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示"};var BrowserPermissionDeniedIOS$a={primaryText:"マイクへのアクセスを許可して続行する",secondaryText:"そのため、他の参加者はあなたの声を聞くことができます。",primaryButtonText:"再試行",imageAltText:"iOS のマイクとカメラ デバイスのアクセス許可の場所",linkText:"ヘルプが必要ですか? トラブルシューティングのヘルプを表示",step1Text:"設定アプリに移動します。",step2Text:"このブラウザーの設定まで下にスクロール",step3Text:"マイクをオンにする (カメラはオプション)",step4Text:"もう一度通話に参加してみてください",step1DigitText:"1",step2DigitText:"2",step3DigitText:"3",step4DigitText:"4"};var verticalGallery$a={leftNavButtonAriaLabel:"前のページ",rightNavButtonAriaLabel:"次のページ"};var AttendeeRole$a="出席者";var ja_JP$1 = {participantItem:participantItem$a,ParticipantList:ParticipantList$a,typingIndicator:typingIndicator$a,sendBox:sendBox$a,mentionPopover:mentionPopover$a,imageOverlay:imageOverlay$a,messageStatusIndicator:messageStatusIndicator$a,endCallButton:endCallButton$a,cameraButton:cameraButton$a,microphoneButton:microphoneButton$a,devicesButton:devicesButton$a,participantsButton:participantsButton$a,screenShareButton:screenShareButton$a,raiseHandButton:raiseHandButton$a,reactionButton:reactionButton$a,messageThread:messageThread$a,errorBar:errorBar$a,videoGallery:videoGallery$a,dialpad:dialpad$a,holdButton:holdButton$a,videoTile:videoTile$a,CameraAndMicrophoneSitePermissionsRequest:CameraAndMicrophoneSitePermissionsRequest$a,CameraSitePermissionsRequest:CameraSitePermissionsRequest$a,MicrophoneSitePermissionsRequest:MicrophoneSitePermissionsRequest$a,CameraAndMicrophoneSitePermissionsCheck:CameraAndMicrophoneSitePermissionsCheck$a,CameraSitePermissionsCheck:CameraSitePermissionsCheck$a,MicrophoneSitePermissionsCheck:MicrophoneSitePermissionsCheck$a,CameraAndMicrophoneSitePermissionsDenied:CameraAndMicrophoneSitePermissionsDenied$a,CameraAndMicrophoneSitePermissionsDeniedSafari:CameraAndMicrophoneSitePermissionsDeniedSafari$a,CameraSitePermissionsDenied:CameraSitePermissionsDenied$a,MicrophoneSitePermissionsDenied:MicrophoneSitePermissionsDenied$a,CameraSitePermissionsDeniedSafari:CameraSitePermissionsDeniedSafari$a,MicrophoneSitePermissionsDeniedSafari:MicrophoneSitePermissionsDeniedSafari$a,UnsupportedBrowser:UnsupportedBrowser$a,UnsupportedBrowserVersion:UnsupportedBrowserVersion$a,UnsupportedOperatingSystem:UnsupportedOperatingSystem$a,BrowserPermissionDenied:BrowserPermissionDenied$a,BrowserPermissionDeniedIOS:BrowserPermissionDeniedIOS$a,verticalGallery:verticalGallery$a,AttendeeRole:AttendeeRole$a};
20003
20314
 
20004
20315
  // Copyright (c) Microsoft Corporation.
20005
20316
  // Licensed under the MIT License.
@@ -20160,7 +20471,7 @@ const memoizedConvertToVideoTileReaction = memoizeOne((reactionState) => {
20160
20471
  return reactionState && reactionState.reactionMessage
20161
20472
  ? {
20162
20473
  reactionType: reactionState.reactionMessage.reactionType,
20163
- receivedAt: reactionState.receivedAt
20474
+ receivedOn: reactionState.receivedOn
20164
20475
  }
20165
20476
  : undefined;
20166
20477
  });
@@ -20186,7 +20497,8 @@ const _dominantSpeakersWithFlatId = (dominantSpeakers) => {
20186
20497
  return (_a = dominantSpeakers === null || dominantSpeakers === void 0 ? void 0 : dominantSpeakers.speakersList) === null || _a === void 0 ? void 0 : _a.map(toFlatCommunicationIdentifier);
20187
20498
  };
20188
20499
  /** @internal */
20189
- const _videoGalleryRemoteParticipantsMemo = (remoteParticipants, isHideAttendeeNamesEnabled, localUserRole) => {
20500
+ const _videoGalleryRemoteParticipantsMemo = (remoteParticipants, isHideAttendeeNamesEnabled,
20501
+ /* @conditional-compile-remove(hide-attendee-name) */ localUserRole) => {
20190
20502
  if (!remoteParticipants) {
20191
20503
  return [];
20192
20504
  }
@@ -20222,7 +20534,7 @@ const memoizedAllConvertRemoteParticipant = memoizeFnAll((userId, isMuted, isSpe
20222
20534
  raisedHand, // temp unknown type to build stable
20223
20535
  /* @conditional-compile-remove(reaction) */
20224
20536
  reaction, // temp unknown type to build stable
20225
- /* @conditional-compile-remove(reaction) */
20537
+ /* @conditional-compile-remove(spotlight) */
20226
20538
  spotlight // temp unknown type to build stable
20227
20539
  ) => {
20228
20540
  return convertRemoteParticipantToVideoGalleryRemoteParticipant(userId, isMuted, isSpeaking, videoStreams, state, displayName,
@@ -20230,7 +20542,7 @@ spotlight // temp unknown type to build stable
20230
20542
  raisedHand,
20231
20543
  /* @conditional-compile-remove(reaction) */
20232
20544
  reaction,
20233
- /* @conditional-compile-remove(reaction) */
20545
+ /* @conditional-compile-remove(spotlight) */
20234
20546
  spotlight);
20235
20547
  });
20236
20548
  /** @private */
@@ -20239,7 +20551,7 @@ const convertRemoteParticipantToVideoGalleryRemoteParticipant = (userId, isMuted
20239
20551
  raisedHand, // temp unknown type to build stable
20240
20552
  /* @conditional-compile-remove(reaction) */
20241
20553
  reaction, // temp unknown type to build stable
20242
- /* @conditional-compile-remove(reaction) */
20554
+ /* @conditional-compile-remove(spotlight) */
20243
20555
  spotlight // temp unknown type to build stable
20244
20556
  ) => {
20245
20557
  const rawVideoStreamsArray = Object.values(videoStreams);
@@ -25624,8 +25936,8 @@ const createCompositeHandlers = memoizeOne((adapter) => {
25624
25936
  : yield adapter.raiseHand();
25625
25937
  }),
25626
25938
  /* @conditional-compile-remove(reaction) */
25627
- onReactionClicked: (reaction) => __awaiter$j(void 0, void 0, void 0, function* () {
25628
- yield adapter.onReactionClicked(reaction);
25939
+ onReactionClick: (reaction) => __awaiter$j(void 0, void 0, void 0, function* () {
25940
+ yield adapter.onReactionClick(reaction);
25629
25941
  }),
25630
25942
  onSelectCamera: (deviceInfo, options) => __awaiter$j(void 0, void 0, void 0, function* () {
25631
25943
  yield adapter.setCamera(deviceInfo, options);
@@ -27926,7 +28238,7 @@ const inferCallWithChatControlOptions = (callWithChatControls) => {
27926
28238
  };
27927
28239
  /** @private */
27928
28240
  const MoreDrawer = (props) => {
27929
- var _a, _b, _c, _d, _e;
28241
+ var _a, _b, _c, _d, _e, _f, _g;
27930
28242
  /* @conditional-compile-remove(close-captions) */
27931
28243
  const theme = react.useTheme();
27932
28244
  /* @conditional-compile-remove(rooms) */
@@ -28158,11 +28470,9 @@ const MoreDrawer = (props) => {
28158
28470
  /* @conditional-compile-remove(close-captions) */
28159
28471
  const [isCaptionLanguageDrawerOpen, setIsCaptionLanguageDrawerOpen] = React.useState(false);
28160
28472
  /* @conditional-compile-remove(close-captions) */
28161
- const [currentSpokenLanguage, setCurrentSpokenLanguage] = React.useState(captionSettingsProp.currentSpokenLanguage !== '' ? captionSettingsProp.currentSpokenLanguage : 'en-us');
28473
+ const [currentSpokenLanguage, setCurrentSpokenLanguage] = React.useState((_f = captionSettingsProp.currentSpokenLanguage) !== null && _f !== void 0 ? _f : 'en-us');
28162
28474
  /* @conditional-compile-remove(close-captions) */
28163
- const [currentCaptionLanguage, setCurrentCaptionLanguage] = React.useState(captionSettingsProp.currentCaptionLanguage !== ''
28164
- ? captionSettingsProp.currentCaptionLanguage
28165
- : _spokenLanguageToCaptionLanguage[currentSpokenLanguage]);
28475
+ const [currentCaptionLanguage, setCurrentCaptionLanguage] = React.useState((_g = captionSettingsProp.currentCaptionLanguage) !== null && _g !== void 0 ? _g : _spokenLanguageToCaptionLanguage[currentSpokenLanguage]);
28166
28476
  /* @conditional-compile-remove(close-captions) */
28167
28477
  const onToggleChange = React.useCallback(() => __awaiter$g(void 0, void 0, void 0, function* () {
28168
28478
  if (!captionSettingsProp.isCaptionsFeatureActive) {
@@ -29505,10 +29815,10 @@ const LocalAndRemotePIP = (props) => {
29505
29815
  }), [ariaLabel]);
29506
29816
  // If there are no remote participants, show the local participant as the primary tile
29507
29817
  const primaryTileProps = React.useMemo(() => ({
29508
- children: remoteVideoTileProps ? (React.createElement(_RemoteVideoTile, Object.assign({}, remoteVideoTileProps))) : (React.createElement(_LocalVideoTile, Object.assign({}, localVideoTileProps))),
29818
+ children: remoteVideoTileProps ? (React.createElement(_RemoteVideoTile, Object.assign({}, remoteVideoTileProps, { strings: locale.component.strings.videoGallery }))) : (React.createElement(_LocalVideoTile, Object.assign({}, localVideoTileProps))),
29509
29819
  // TODO: when the calling SDK provides height/width stream information - update this to reflect the stream orientation.
29510
29820
  orientation: 'portrait'
29511
- }), [localVideoTileProps, remoteVideoTileProps]);
29821
+ }), [localVideoTileProps, remoteVideoTileProps, locale.component.strings.videoGallery]);
29512
29822
  // If we are showing the local participant as the primary tile, show nothing for the secondary tile
29513
29823
  const secondaryTileProps = React.useMemo(() => remoteVideoTileProps
29514
29824
  ? {
@@ -29691,6 +30001,7 @@ const ModalLocalAndRemotePIP = (props) => {
29691
30001
  const adapter = useAdapter();
29692
30002
  /* @conditional-compile-remove(rooms) */
29693
30003
  const role = (_a = adapter.getState().call) === null || _a === void 0 ? void 0 : _a.role;
30004
+ const locale = useLocale();
29694
30005
  const pictureInPictureProps = useSelector$1(localAndRemotePIPSelector);
29695
30006
  const [touchStartTouches, setTouchStartTouches] = React.useState(null);
29696
30007
  const onTouchEnd = React.useCallback((event) => {
@@ -29719,7 +30030,7 @@ const ModalLocalAndRemotePIP = (props) => {
29719
30030
  /* @conditional-compile-remove(rooms) */
29720
30031
  if (role === 'Consumer' && ((_a = pictureInPictureProps.dominantRemoteParticipant) === null || _a === void 0 ? void 0 : _a.userId)) {
29721
30032
  return (React.createElement(react.Stack, { tabIndex: 0, "aria-label": (_c = (_b = props.strings) === null || _b === void 0 ? void 0 : _b.dismissModalAriaLabel) !== null && _c !== void 0 ? _c : '', onKeyDown: onKeyDown },
29722
- React.createElement(_RemoteVideoTile, Object.assign({}, pictureInPictureProps.dominantRemoteParticipant, { remoteParticipant: pictureInPictureProps.dominantRemoteParticipant }))));
30033
+ React.createElement(_RemoteVideoTile, Object.assign({ strings: locale.component.strings.videoGallery }, pictureInPictureProps.dominantRemoteParticipant, { remoteParticipant: pictureInPictureProps.dominantRemoteParticipant }))));
29723
30034
  }
29724
30035
  return (React.createElement(react.Stack, { tabIndex: 0, "aria-label": (_e = (_d = props.strings) === null || _d === void 0 ? void 0 : _d.dismissModalAriaLabel) !== null && _e !== void 0 ? _e : '', onKeyDown: onKeyDown },
29725
30036
  React.createElement(LocalAndRemotePIP, Object.assign({}, pictureInPictureProps, pictureInPictureHandlers))));
@@ -29728,7 +30039,8 @@ const ModalLocalAndRemotePIP = (props) => {
29728
30039
  onKeyDown,
29729
30040
  pictureInPictureProps,
29730
30041
  props,
29731
- pictureInPictureHandlers
30042
+ pictureInPictureHandlers,
30043
+ locale.component.strings.videoGallery
29732
30044
  ]);
29733
30045
  /* @conditional-compile-remove(rooms) */
29734
30046
  if (role === 'Consumer' && !pictureInPictureProps.dominantRemoteParticipant) {
@@ -30045,7 +30357,7 @@ const CallArrangement = (props) => {
30045
30357
  /* @conditional-compile-remove(spotlight) */
30046
30358
  const videoGalleryProps = usePropsFor$1(VideoGallery);
30047
30359
  /* @conditional-compile-remove(spotlight) */
30048
- const { setPromptProps, setIsPromptOpen } = props;
30360
+ const { setPromptProps, setIsPromptOpen, hideSpotlightButtons } = props;
30049
30361
  /* @conditional-compile-remove(spotlight) */
30050
30362
  const { onStartLocalSpotlight, onStopLocalSpotlight, onStartRemoteSpotlight, onStopRemoteSpotlight, spotlightedParticipants, maxParticipantsToSpotlight, localParticipant } = videoGalleryProps;
30051
30363
  /* @conditional-compile-remove(spotlight) */
@@ -30054,10 +30366,18 @@ const CallArrangement = (props) => {
30054
30366
  const { onStartRemoteSpotlightWithPrompt, onStopRemoteSpotlightWithPrompt } = useRemoteSpotlightCallbacksWithPrompt(onStartRemoteSpotlight, onStopRemoteSpotlight, setIsPromptOpen, setPromptProps);
30055
30367
  const { isPeoplePaneOpen, openPeoplePane, closePeoplePane } = usePeoplePane(Object.assign(Object.assign({}, peoplePaneProps), {
30056
30368
  /* @conditional-compile-remove(spotlight) */ spotlightedParticipantUserIds: spotlightedParticipants,
30057
- /* @conditional-compile-remove(spotlight) */ onStartLocalSpotlight: onStartLocalSpotlightWithPrompt,
30058
- /* @conditional-compile-remove(spotlight) */ onStopLocalSpotlight: onStopLocalSpotlightWithPrompt,
30059
- /* @conditional-compile-remove(spotlight) */ onStartRemoteSpotlight: onStartRemoteSpotlightWithPrompt,
30060
- /* @conditional-compile-remove(spotlight) */ onStopRemoteSpotlight: onStopRemoteSpotlightWithPrompt,
30369
+ /* @conditional-compile-remove(spotlight) */ onStartLocalSpotlight: hideSpotlightButtons
30370
+ ? undefined
30371
+ : onStartLocalSpotlightWithPrompt,
30372
+ /* @conditional-compile-remove(spotlight) */ onStopLocalSpotlight: hideSpotlightButtons
30373
+ ? undefined
30374
+ : onStopLocalSpotlightWithPrompt,
30375
+ /* @conditional-compile-remove(spotlight) */ onStartRemoteSpotlight: hideSpotlightButtons
30376
+ ? undefined
30377
+ : onStartRemoteSpotlightWithPrompt,
30378
+ /* @conditional-compile-remove(spotlight) */ onStopRemoteSpotlight: hideSpotlightButtons
30379
+ ? undefined
30380
+ : onStopRemoteSpotlightWithPrompt,
30061
30381
  /* @conditional-compile-remove(spotlight) */ maxParticipantsToSpotlight }));
30062
30382
  const togglePeoplePane = React.useCallback(() => {
30063
30383
  if (isPeoplePaneOpen) {
@@ -30269,7 +30589,7 @@ const remoteVideoViewOptions = {
30269
30589
  const MediaGallery = (props) => {
30270
30590
  var _a, _b, _c;
30271
30591
  /* @conditional-compile-remove(spotlight) */
30272
- const { setIsPromptOpen, setPromptProps } = props;
30592
+ const { setIsPromptOpen, setPromptProps, hideSpotlightButtons } = props;
30273
30593
  const videoGalleryProps = usePropsFor$1(VideoGallery);
30274
30594
  const cameraSwitcherCameras = useSelector$1(localVideoCameraCycleButtonSelector);
30275
30595
  const cameraSwitcherCallback = useHandlers();
@@ -30344,13 +30664,13 @@ const MediaGallery = (props) => {
30344
30664
  /* @conditional-compile-remove(reaction) */
30345
30665
  reactionResources: reactionResources,
30346
30666
  /* @conditional-compile-remove(spotlight) */
30347
- onStartLocalSpotlight: onStartLocalSpotlightWithPrompt,
30667
+ onStartLocalSpotlight: hideSpotlightButtons ? undefined : onStartLocalSpotlightWithPrompt,
30348
30668
  /* @conditional-compile-remove(spotlight) */
30349
- onStopLocalSpotlight: onStopLocalSpotlightWithPrompt,
30669
+ onStopLocalSpotlight: hideSpotlightButtons ? undefined : onStopLocalSpotlightWithPrompt,
30350
30670
  /* @conditional-compile-remove(spotlight) */
30351
- onStartRemoteSpotlight: onStartRemoteSpotlightWithPrompt,
30671
+ onStartRemoteSpotlight: hideSpotlightButtons ? undefined : onStartRemoteSpotlightWithPrompt,
30352
30672
  /* @conditional-compile-remove(spotlight) */
30353
- onStopRemoteSpotlight: onStopRemoteSpotlightWithPrompt })));
30673
+ onStopRemoteSpotlight: hideSpotlightButtons ? undefined : onStopRemoteSpotlightWithPrompt })));
30354
30674
  }, [
30355
30675
  videoGalleryProps,
30356
30676
  props.isMobile,
@@ -30379,7 +30699,9 @@ const MediaGallery = (props) => {
30379
30699
  /* @conditional-compile-remove(spotlight) */
30380
30700
  onStartRemoteSpotlightWithPrompt,
30381
30701
  /* @conditional-compile-remove(spotlight) */
30382
- onStopRemoteSpotlightWithPrompt
30702
+ onStopRemoteSpotlightWithPrompt,
30703
+ /* @conditional-compile-remove(spotlight) */
30704
+ hideSpotlightButtons
30383
30705
  ]);
30384
30706
  return (React.createElement("div", { ref: containerRef, style: mediaGalleryContainerStyles },
30385
30707
  React.createElement(Announcer$1, { announcementString: announcerString, ariaLive: 'polite' }),
@@ -30717,6 +31039,7 @@ const buttonTextStyles = { label: { fontSize: '0.875rem' } };
30717
31039
  * @private
30718
31040
  */
30719
31041
  const CallPage = (props) => {
31042
+ var _a;
30720
31043
  const { callInvitationURL, onFetchAvatarPersonaData, onFetchParticipantMenuItems, options, mobileView,
30721
31044
  /* @conditional-compile-remove(gallery-layouts) */
30722
31045
  galleryLayout = 'floatingLocalVideo',
@@ -30752,6 +31075,7 @@ const CallPage = (props) => {
30752
31075
  /* @conditional-compile-remove(spotlight) */
30753
31076
  const [promptProps, setPromptProps] = React.useState();
30754
31077
  const onRenderGalleryContentTrampoline = () => {
31078
+ var _a;
30755
31079
  /* @conditional-compile-remove(dtmf-dialer) */
30756
31080
  if (dtmfDialerPresent) {
30757
31081
  return (React.createElement(DtmfDialpadPage, { mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, options: props.options, updateSidePaneRenderer: props.updateSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, latestErrors: props.latestErrors, onDismissError: props.onDismissError,
@@ -30769,7 +31093,9 @@ const CallPage = (props) => {
30769
31093
  /* @conditional-compile-remove(spotlight) */
30770
31094
  setIsPromptOpen: setIsPromptOpen,
30771
31095
  /* @conditional-compile-remove(spotlight) */
30772
- setPromptProps: setPromptProps })));
31096
+ setPromptProps: setPromptProps,
31097
+ /* @conditional-compile-remove(spotlight) */
31098
+ hideSpotlightButtons: (_a = options === null || options === void 0 ? void 0 : options.spotlight) === null || _a === void 0 ? void 0 : _a.hideSpotlightButtons })));
30773
31099
  }
30774
31100
  };
30775
31101
  return (React.createElement(React.Fragment, null,
@@ -30796,7 +31122,9 @@ const CallPage = (props) => {
30796
31122
  /* @conditional-compile-remove(spotlight) */
30797
31123
  setIsPromptOpen: setIsPromptOpen,
30798
31124
  /* @conditional-compile-remove(spotlight) */
30799
- setPromptProps: setPromptProps }),
31125
+ setPromptProps: setPromptProps,
31126
+ /* @conditional-compile-remove(spotlight) */
31127
+ hideSpotlightButtons: (_a = options === null || options === void 0 ? void 0 : options.spotlight) === null || _a === void 0 ? void 0 : _a.hideSpotlightButtons }),
30800
31128
  /* @conditional-compile-remove(spotlight) */
30801
31129
  React.createElement(Prompt, Object.assign({ isOpen: isPromptOpen, onDismiss: () => setIsPromptOpen(false) }, promptProps))));
30802
31130
  };
@@ -33432,6 +33760,8 @@ const createProfileStateModifier = (onFetchProfile, notifyUpdate) => {
33432
33760
  // Licensed under the MIT License.
33433
33761
  /* @conditional-compile-remove(calling-sounds) */
33434
33762
  const CALL_REJECTED_CODE = 603;
33763
+ const CALL_ENDED_CODE = 0;
33764
+ const CALL_TRANSFER_SUBCODE = 7015;
33435
33765
  /**
33436
33766
  * @private
33437
33767
  */
@@ -33439,7 +33769,7 @@ class CallingSoundSubscriber {
33439
33769
  constructor(call, callee, sounds) {
33440
33770
  this.onCallStateChanged = () => {
33441
33771
  this.call.on('stateChanged', () => {
33442
- var _a, _b, _c, _d, _e;
33772
+ var _a, _b, _c, _d, _e, _f, _g;
33443
33773
  if (shouldPlayRinging(this.call, this.callee) && ((_a = this.soundsLoaded) === null || _a === void 0 ? void 0 : _a.callRingingSound)) {
33444
33774
  this.soundsLoaded.callRingingSound.loop = true;
33445
33775
  this.playSound(this.soundsLoaded.callRingingSound);
@@ -33452,7 +33782,9 @@ class CallingSoundSubscriber {
33452
33782
  if (((_c = this.soundsLoaded) === null || _c === void 0 ? void 0 : _c.callBusySound) && ((_d = this.call.callEndReason) === null || _d === void 0 ? void 0 : _d.code) === CALL_REJECTED_CODE) {
33453
33783
  this.playSound(this.soundsLoaded.callBusySound);
33454
33784
  }
33455
- else if ((_e = this.soundsLoaded) === null || _e === void 0 ? void 0 : _e.callEndedSound) {
33785
+ else if (((_e = this.soundsLoaded) === null || _e === void 0 ? void 0 : _e.callEndedSound) &&
33786
+ ((_f = this.call.callEndReason) === null || _f === void 0 ? void 0 : _f.code) === CALL_ENDED_CODE &&
33787
+ ((_g = this.call.callEndReason) === null || _g === void 0 ? void 0 : _g.subCode) !== CALL_TRANSFER_SUBCODE) {
33456
33788
  this.playSound(this.soundsLoaded.callEndedSound);
33457
33789
  }
33458
33790
  }
@@ -33830,7 +34162,7 @@ class AzureCommunicationCallAdapter {
33830
34162
  /* @conditional-compile-remove(raise-hand) */
33831
34163
  this.raiseHand.bind(this);
33832
34164
  /* @conditional-compile-remove(reaction) */
33833
- this.onReactionClicked.bind(this);
34165
+ this.onReactionClick.bind(this);
33834
34166
  this.lowerHand.bind(this);
33835
34167
  this.removeParticipant.bind(this);
33836
34168
  this.createStreamView.bind(this);
@@ -34156,10 +34488,10 @@ class AzureCommunicationCallAdapter {
34156
34488
  });
34157
34489
  }
34158
34490
  /* @conditional-compile-remove(reaction) */
34159
- onReactionClicked(reaction) {
34491
+ onReactionClick(reaction) {
34160
34492
  return __awaiter$5(this, void 0, void 0, function* () {
34161
34493
  return yield this.asyncTeeErrorToEventEmitter(() => __awaiter$5(this, void 0, void 0, function* () {
34162
- yield this.handlers.onReactionClicked(reaction);
34494
+ yield this.handlers.onReactionClick(reaction);
34163
34495
  }));
34164
34496
  });
34165
34497
  }
@@ -35002,7 +35334,7 @@ class CallWithChatBackedCallAdapter {
35002
35334
  /* @conditional-compile-remove(raise-hand) */
35003
35335
  this.lowerHand = () => __awaiter$4(this, void 0, void 0, function* () { return yield this.callWithChatAdapter.lowerHand(); });
35004
35336
  /* @conditional-compile-remove(reaction) */
35005
- this.onReactionClicked = (reaction) => __awaiter$4(this, void 0, void 0, function* () { return yield this.callWithChatAdapter.onReactionClicked(reaction); });
35337
+ this.onReactionClick = (reaction) => __awaiter$4(this, void 0, void 0, function* () { return yield this.callWithChatAdapter.onReactionClick(reaction); });
35006
35338
  this.removeParticipant = (userId) => __awaiter$4(this, void 0, void 0, function* () {
35007
35339
  let participant = userId;
35008
35340
  /* @conditional-compile-remove(PSTN-calls) */
@@ -35548,7 +35880,9 @@ const CallWithChatScreen = (props) => {
35548
35880
  branding: {
35549
35881
  logo: props.logo,
35550
35882
  backgroundImage: props.backgroundImage
35551
- }
35883
+ },
35884
+ /* @conditional-compile-remove(spotlight) */
35885
+ spotlight: props.spotlight
35552
35886
  }), [
35553
35887
  props.callControls,
35554
35888
  callControlOptionsFromProps,
@@ -35573,7 +35907,9 @@ const CallWithChatScreen = (props) => {
35573
35907
  /* @conditional-compile-remove(custom-branding) */
35574
35908
  props.logo,
35575
35909
  /* @conditional-compile-remove(custom-branding) */
35576
- props.backgroundImage
35910
+ props.backgroundImage,
35911
+ /* @conditional-compile-remove(spotlight) */
35912
+ props.spotlight
35577
35913
  ]);
35578
35914
  const onRenderChatContent = React.useCallback(() => (React.createElement(ChatComposite, { adapter: chatAdapter, fluentTheme: theme, options: {
35579
35915
  topic: false,
@@ -35644,7 +35980,9 @@ const CallWithChatComposite = (props) => {
35644
35980
  /* @conditional-compile-remove(custom-branding) */
35645
35981
  backgroundImage: (_b = options === null || options === void 0 ? void 0 : options.branding) === null || _b === void 0 ? void 0 : _b.backgroundImage,
35646
35982
  /* @conditional-compile-remove(end-of-call-survey) */
35647
- surveyOptions: options === null || options === void 0 ? void 0 : options.surveyOptions }))));
35983
+ surveyOptions: options === null || options === void 0 ? void 0 : options.surveyOptions,
35984
+ /* @conditional-compile-remove(spotlight) */
35985
+ spotlight: options === null || options === void 0 ? void 0 : options.spotlight }))));
35648
35986
  };
35649
35987
  const hasJoinedCallFn = (page, callStatus) => {
35650
35988
  /* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(one-to-n-calling) */
@@ -35868,7 +36206,7 @@ class AzureCommunicationCallWithChatAdapter {
35868
36206
  /* @conditional-compile-remove(raise-hand) */
35869
36207
  this.lowerHand.bind(this);
35870
36208
  /* @conditional-compile-remove(reaction) */
35871
- this.onReactionClicked.bind(this);
36209
+ this.onReactionClick.bind(this);
35872
36210
  this.removeParticipant.bind(this);
35873
36211
  this.createStreamView.bind(this);
35874
36212
  this.disposeStreamView.bind(this);
@@ -36076,9 +36414,9 @@ class AzureCommunicationCallWithChatAdapter {
36076
36414
  });
36077
36415
  }
36078
36416
  /* @conditional-compile-remove(reaction) */
36079
- onReactionClicked(reaction) {
36417
+ onReactionClick(reaction) {
36080
36418
  return __awaiter$2(this, void 0, void 0, function* () {
36081
- yield this.callAdapter.onReactionClicked(reaction);
36419
+ yield this.callAdapter.onReactionClick(reaction);
36082
36420
  });
36083
36421
  }
36084
36422
  /** Create a stream view for a remote participants video feed. */
@@ -36726,7 +37064,7 @@ const COMPOSITE_LOCALE_IT_IT = {
36726
37064
  strings: createCompositeStrings(it_IT)
36727
37065
  };
36728
37066
 
36729
- var call$a={cameraLabel:"カメラ",noCamerasLabel:"カメラが見つかりません",cameraPermissionDenied:"お使いのブラウザーがカメラへのアクセスをブロックしています",cameraTurnedOff:"カメラはオフになっています",chatButtonLabel:"チャット",close:"閉じる",complianceBannerNowOnlyRecording:"今はこの会議の録画のみを行っています。",complianceBannerNowOnlyTranscription:"この会議のトランスクリプトを作成しています。",complianceBannerRecordingAndTranscriptionSaved:"レコーディングとトランスクリプトを保存されました。",complianceBannerRecordingAndTranscriptionStarted:"レコーディングとトランスクリプトが開始されました。",complianceBannerRecordingAndTranscriptionStopped:"レコーディングとトランスクリプトを停止しました。",complianceBannerRecordingSaving:"レコーディングを保存しています。",complianceBannerRecordingStarted:"レコーディングを開始しました。",complianceBannerRecordingStopped:"レコーディングを停止しました。",complianceBannerTranscriptionStarted:"トランスクリプトが開始しました。",complianceBannerTranscriptionConsent:"参加すると、この会議のトランスクリプトの作成に同意したことになります。",complianceBannerTranscriptionSaving:"トランスクリプトを保存されました。",complianceBannerTranscriptionStopped:"トランスクリプトが停止しました。",configurationPageTitle:"通話を開始",copyInviteLinkButtonLabel:"招待用のリンクをコピー",copyInviteLinkActionedAriaLabel:"招待用のリンクがコピーされました",defaultPlaceHolder:"オプションを選択する",dismissSidePaneButtonLabel:"閉じる",videoEffectsPaneTitle:"効果",videoEffectsPaneBackgroundSelectionTitle:"バックグラウンド",configurationPageVideoEffectsButtonLabel:"効果",unableToStartVideoEffect:"ビデオ効果を適用できません。",blurBackgroundEffectButtonLabel:"ぼかし",blurBackgroundTooltip:"背景をぼかす",removeBackgroundEffectButtonLabel:"なし",removeBackgroundTooltip:"背景の削除",cameraOffBackgroundEffectWarningText:"カメラがオフになっています。カメラをオンにすると、ビデオ効果が表示されます。",failedToJoinCallDueToNoNetworkMoreDetails:"ネットワークの問題により、通話が切断されました。接続を確認して、もう一度参加してください。",failedToJoinCallDueToNoNetworkTitle:"通話が切断されました",failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails:"通話のエントリが許可されませんでした。これが間違いだった場合は、通話に再参加してください。",failedToJoinTeamsMeetingReasonAccessDeniedTitle:"ロビーから消去しました",learnMore:"詳細情報",leavingCallTitle:"退出中...",leftCallMoreDetails:"これが間違いだった場合は、通話に再度参加してください。",leftCallTitle:"通話を終了しました",lobbyScreenConnectingToCallTitle:"通話に参加中",lobbyScreenWaitingToBeAdmittedTitle:"承認待機中",microphonePermissionDenied:"お使いのブラウザーがマイクへのアクセスをブロックしています",microphoneToggleInLobbyNotAllowed:"ロビーにいる間はミュートまたはミュート解除できません。",mutedMessage:"ミュートになっています",networkReconnectMoreDetails:"問題が発生したようです。通話に戻ろうとしています。",networkReconnectTitle:"お待ちください",notInvitedToRoomDetails:"招待がないため、このルームに参加できません。",notInvitedToRoomTitle:"ルームに招待されていません",peopleButtonLabel:"連絡先",selectedPeopleButtonLabel:"[ユーザー] ボタンが選択されました",peoplePaneTitle:"連絡先",peopleButtonTooltipOpen:"参加者を表示",peopleButtonTooltipClose:"参加者を非表示",peoplePaneSubTitle:"この通話では {numberOfPeople} 人",privacyPolicy:"プライバシー ポリシー",rejoinCallButtonLabel:"通話に再度参加",removedFromCallMoreDetails:"別の参加者があなたを通話から削除しました。",removedFromCallTitle:"削除されました",removeMenuLabel:"削除",startSpotlightParticipantListMenuLabel:"全員にスポットライトを設定",addSpotlightParticipantListMenuLabel:"スポットライトを追加",stopSpotlightParticipantListMenuLabel:"スポットライトの設定を解除",stopSpotlightOnSelfParticipantListMenuLabel:"スポットライトを終了",spotlightLimitReachedParticipantListMenuTitle:"Spotlight limit reached",returnToCallButtonAriaDescription:"通話に戻る",returnToCallButtonAriaLabel:"戻る",roomNotFoundDetails:"指定されたルーム ID が見つかりませんでした。",roomNotFoundTitle:"ルームが見つかりません",roomNotValidDetails:"このルームは現在無効です。",roomNotValidTitle:"ルームが無効です",inviteToRoomRemovedDetails:"このルームに参加するための招待が削除されました。",inviteToRoomRemovedTitle:"ルームへの招待が削除されました",soundLabel:"音声",noMicrophonesLabel:"マイクが見つかりません",noSpeakersLabel:"話者が見つかりません",startCallButtonLabel:"通話を開始",openDialpadButtonLabel:"電話番号をダイヤルする",peoplePaneAddPeopleButtonLabel:"ユーザーの追加",dialpadStartCallButtonLabel:"通話",dialpadModalTitle:"電話番号をダイヤルする",dialpadModalAriaLabel:"ダイヤルパッド",dialpadCloseModalButtonAriaLabel:"ダイヤルパッドを閉じる",moreButtonCallingLabel:"その他",resumeCallButtonLabel:"再開",resumingCallButtonLabel:"再開しています...",resumeCallButtonAriaLabel:"通話の再開",resumingCallButtonAriaLabel:"通話の再開",holdScreenLabel:"保留中です",openDtmfDialpadLabel:"ダイヤルパッドを表示",dtmfDialpadPlaceholderText:"番号を入力してください",outboundCallingNoticeString:"呼び出し中。。。",participantJoinedNoticeString:"{displayName} が参加しました",twoParticipantJoinedNoticeString:"{displayName1} さんと {displayName2} さんが参加しました",threeParticipantJoinedNoticeString:"{displayName1} さん, {displayName2} さんと {displayName3} さんが参加しました",participantLeftNoticeString:"{displayName} さんが退出しました",twoParticipantLeftNoticeString:"{displayName1} さんと {displayName2} さんが退出しました",threeParticipantLeftNoticeString:"{displayName1} さん, {displayName2} さんと {displayName3} さんが退出しました",unnamedParticipantString:"名前のない参加者",manyUnnamedParticipantsJoined:"名前のない参加者と他の参加者 {numOfParticipants} 人が参加しました",manyUnnamedParticipantsLeft:"名前のない参加者と他の参加者 {numOfParticipants} 人が退出しました",manyParticipantsJoined:"{displayName1}、{displayName2}、{displayName3}、その他の参加者{numOfParticipants}参加しました",manyParticipantsLeft:"{displayName1}、{displayName2}、{displayName3}、その他の参加者{numOfParticipants}退出しました",liveCaptionsLabel:"ライブ キャプション",captionsSettingsLabel:"字幕の設定",startCaptionsButtonOnLabel:"キャプションをオンにする",startCaptionsButtonOffLabel:"キャプションをオフにする",startCaptionsButtonTooltipOnContent:"キャプションをオフにする",startCaptionsButtonTooltipOffContent:"キャプションをオンにする",captionsSettingsModalTitle:"ライブ キャプションの設定",captionsSettingsSpokenLanguageDropdownLabel:"音声言語",captionsSettingsCaptionLanguageDropdownLabel:"ライブ キャプションの言語",captionsSettingsSpokenLanguageDropdownInfoText:"この通話の全員が話している言語です。",captionsSettingsCaptionLanguageDropdownInfoText:"ライブ キャプションはこの言語で表示されます。",captionsSettingsConfirmButtonLabel:"確認",captionsSettingsCancelButtonLabel:"キャンセル",captionsSettingsModalAriaLabel:"字幕設定モーダル",captionsSettingsCloseModalButtonAriaLabel:"字幕設定を閉じる",captionsBannerMoreButtonCallingLabel:"その他",captionsBannerMoreButtonTooltip:"その他のオプション",dismissModalAriaLabel:"ローカルとリモートの画像と画像。通話に戻るには Enter キーを押します",callRejectedTitle:"通話を完了できませんでした",callRejectedMoreDetails:"連絡を取ろうとしているユーザーは利用できません。後でもう一度お試しください。",callTimeoutTitle:"通話を完了できませんでした",callTimeoutDetails:"連絡を取ろうとしているユーザーは利用できません。後でもう一度お試しください。",callTimeoutBotTitle:"通話を完了できませんでした",callTimeoutBotDetails:"接続しようとしているサービスは利用できません。後でもう一度お試しください。",dtmfDialerButtonLabel:"ダイヤルパッド",dtmfDialerButtonTooltipOn:"ダイヤルパッドを表示",dtmfDialerButtonTooltipOff:"ダイヤル パッドを非表示",dtmfDialerMoreButtonLabelOn:"ダイヤルパッドを表示",dtmfDialerMoreButtonLabelOff:"ダイヤル パッドを非表示",spokenLanguageStrings:{"ar-ae":"アラビア語 - U.A.E.","ar-sa":"アラビア語 - サウジアラビア","da-dk":"デンマーク語","de-de":"ドイツ語 - ドイツ","en-au":"英語 - オーストラリア","en-ca":"英語 - カナダ","en-gb":"英語 - イギリス","en-in":"英語 - インド","en-nz":"英語 - ニュージーランド","en-us":"英語 - 米国","es-es":"スペイン語 - スペイン (モダン)","es-mx":"スペイン語 - メキシコ","fi-fi":"フィンランド語","fr-ca":"フランス語 - カナダ","fr-fr":"フランス語 - フランス","hi-in":"ヒンディー語","it-it":"イタリア語 - イタリア","ja-jp":"日本語","ko-kr":"韓国語","nb-no":"ノルウェー語 (ブークモール)","nl-be":"オランダ語 - ベルギー","nl-nl":"オランダ語 - オランダ","pl-pl":"ポーランド語","pt-br":"ポルトガル語 - ブラジル","ru-ru":"ロシア語","sv-se":"スウェーデン語","zh-cn":"中国語 - 中国","zh-hk":"中国語 - 香港特別行政区","cs-cz":"チェコ語","pt-pt":"ポルトガル語 - ポルトガル","tr-tr":"トルコ語","vi-vn":"ベトナム語","th-th":"タイ語","he-il":"ヘブライ語","cy-gb":"ウェールズ語","uk-ua":"ウクライナ語","el-gr":"ギリシャ語","hu-hu":"ハンガリー語","ro-ro":"ルーマニア語","sk-sk":"スロバキア語","zh-tw":"中国語 - 台湾"},captionLanguageStrings:{ar:"アラビア語",da:"デンマーク語",de:"ドイツ語",en:"英語",es:"スペイン語",fi:"フィンランド語","fr-ca":"フランス語 - カナダ",fr:"フランス語 - フランス",hi:"ヒンディー語",it:"イタリア語",ja:"日本語",ko:"韓国語",nb:"ノルウェー語 (ブークモール)",nl:"オランダ語",pl:"ポーランド語",pt:"ポルトガル語 - ブラジル",ru:"ロシア語",sv:"スウェーデン語","zh-Hans":"中国語 (簡体字)","zh-Hant":"中国語 (繁体字)",cs:"チェコ語","pt-pt":"ポルトガル語 - ポルトガル",tr:"トルコ語",vi:"ベトナム語",th:"タイ語",he:"ヘブライ語",cy:"ウェールズ語",uk:"ウクライナ語",el:"ギリシャ語",hu:"ハンガリー語",ro:"ルーマニア語",sk:"スロバキア語"},captionsBannerSpinnerText:"キャプションを開始しています...",transferPageTransferorText:"転送しています...",transferPageTransferTargetText:"接続中...",transferPageUnknownTransferorDisplayName:"不明",transferPageUnknownTransferTargetDisplayName:"不明",transferPageNoticeString:"転送中です",participantCouldNotBeReachedTitle:"ターゲットの参加者は現在連絡できません",participantCouldNotBeReachedMoreDetails:"参加者が連絡可能になったら連絡してください",permissionToReachTargetParticipantNotAllowedTitle:"ターゲットの参加者への連絡が許可されていません",permissionToReachTargetParticipantNotAllowedMoreDetails:"ターゲットの参加者が同じテナントにいることを確認してください",unableToResolveTenantTitle:"ターゲット参加者のテナント ID を解決できません",unableToResolveTenantMoreDetails:"参加者 ID が正しく入力チェックしてください",participantIdIsMalformedTitle:"参加者 ID の形式が正しくありません",participantIdIsMalformedMoreDetails:"参加者 ID の形式が正しいことをチェックしてください",moreButtonGalleryControlLabel:"表示",moreButtonGalleryPositionToggleLabel:"ギャラリーを上に移動",moreButtonGallerySpeakerLayoutLabel:"スピーカー",moreButtonGalleryFloatingLocalLayoutLabel:"ダイナミック",moreButtonGalleryDefaultLayoutLabel:"ギャラリー ビュー",moreButtonGalleryFocusedContentLayoutLabel:"コンテンツにフォーカスを移動",moreButtonLargeGalleryDefaultLayoutLabel:"ラージ ギャラリー",capabilityChangedNotification:{turnVideoOn:{lostDueToMeetingOption:"カメラが無効になっています。ビデオを共有できなくなりました。",grantedDueToMeetingOption:"カメラが有効になりました。ビデオを共有する場合はオンにします。"},unmuteMic:{lostDueToMeetingOption:"マイクが無効になっています。ミュートを解除できません。",grantedDueToMeetingOption:"マイクが有効になりました。音声機能を使用する場合は、ミュートを解除します。"},shareScreen:{lostDueToRoleChangeToAttendee:"ロールが変更されました。コンテンツの共有などの一部の操作は利用できません。",grantedDueToRoleChangeToPresenter:"あなたは発表者です。コンテンツの共有と会議の進行を行うことができます。"}},surveyTitle:"品質向上にご協力ください",starSurveyHelperText:"通話の音質はどうでしたか?",starSurveyOneStarText:"品質が悪かった。",starSurveyTwoStarText:"品質は低かった。",starSurveyThreeStarText:"品質は良かった。",starSurveyFourStarText:"品質は優れていた。",starSurveyFiveStarText:"品質は非常に優れていた。",surveyConfirmButtonLabel:"フィードバックの送信",starRatingAriaLabel:"{1} 個中 {0} 個の星を選択する",surveySkipButtonLabel:"スキップ",tagsSurveyQuestion:"何が良くなりましたか?",tagsSurveyTextFieldDefaultText:"その他、特定してください",tagsSurveyHelperText:"発生した問題を確認する",surveyTextboxDefaultText:"その他 (明記してください)",endOfSurveyText:"フィードバックをお送りいただき、ありがとうございます。",surveyIssues:{overallRating:{callCannotJoin:"通話に参加できなかった",callCannotInvite:"他のユーザーを通話に招待できなかった",hadToRejoin:"通話にもう参加し直す必要があった",callEndedUnexpectedly:"通話が突然終了した",otherIssues:"通話で他の問題が発生していた"},audioRating:{noLocalAudio:"相手側で音が聞こえませんでした",noRemoteAudio:"音がまったく聞こえなかった",echo:"通話でエコーが聞こえた",audioNoise:"通話中にノイズが聞こえた",lowVolume:"音量が小さかった",audioStoppedUnexpectedly:"オーディオが突然停止した",distortedSpeech:"オーディオが歪んでいた",audioInterruption:"オーディオが中断された",otherIssues:"この通話で他のオーディオの問題があった"},videoRating:{noVideoReceived:"ビデオを表示できなかった",noVideoSent:"他のユーザーに自分が表示されなかった",lowQuality:"ビデオの品質が低かった",freezes:"ビデオがフリーズした",stoppedUnexpectedly:"ビデオが突然停止した",darkVideoReceived:"他のユーザーがカメラをオンにした場合にのみ暗い画面を表示できる",audioVideoOutOfSync:"オーディオとビデオがずれている",otherIssues:"この通話で他のビデオの問題があった"},screenshareRating:{noContentLocal:"他のユーザーが自分の画面共有を表示できなかった",noContentRemote:"他のユーザーのスクリーン共有が表示されなかった",cannotPresent:"画面をプレゼンテーションできなかった",lowQuality:"画面共有の品質が低かった",freezes:"画面共有がフリーズした",stoppedUnexpectedly:"画面共有が突然停止した",largeDelay:"画面共有に大きな遅延がある",otherIssues:"この通話で他の画面共有の問題があった"}},SurveyIssuesHeadingStrings:{overallRating:"全体",audioRating:"オーディオ",videoRating:"動画",screenshareRating:"発表中"},spotlightPrompt:{startSpotlightHeading:"全員にスポットライトを設定しますか?",startSpotlightText:"会議の全員にこのビデオをハイライトします。",startSpotlightOnSelfText:"会議の全員にビデオをハイライトします。",startSpotlightConfirmButtonLabel:"全員にスポットライトを設定",startSpotlightCancelButtonLabel:"キャンセル",stopSpotlightHeading:"スポットライトの設定を解除しますか?",stopSpotlightOnSelfHeading:"スポットライトを終了しますか?",stopSpotlightText:"このビデオは、会議の全員に対して強調表示されなくなります。",stopSpotlightOnSelfText:"ビデオは、会議の全員に対して強調表示されなくなります。",stopSpotlightConfirmButtonLabel:"スポットライトの設定を解除",stopSpotlightOnSelfConfirmButtonLabel:"スポットライトを終了",stopSpotlightCancelButtonLabel:"キャンセル"}};var chat$a={chatListHeader:"このチャット内",uploadFile:"ファイルのアップロード"};var callWithChat$a={chatButtonLabel:"チャット",chatButtonNewMessageNotificationLabel:"新規メッセージ",chatButtonTooltipClosedWithMessageCount:"チャットを表示する ({unreadMessagesCount} 件の未読)",chatButtonTooltipClose:"チャットを非表示",chatButtonTooltipOpen:"チャットを表示",chatPaneTitle:"チャット",copyInviteLinkButtonLabel:"招待用のリンクをコピー",copyInviteLinkActionedAriaLabel:"招待用のリンクがコピーされました",dismissSidePaneButtonLabel:"閉じる",moreDrawerAudioDeviceMenuTitle:"オーディオ デバイス",moreDrawerButtonLabel:"その他のオプション",moreDrawerButtonTooltip:"その他のオプション",moreDrawerMicrophoneMenuTitle:"マイク",moreDrawerSpeakerMenuTitle:"スピーカー",moreDrawerCaptionsMenuTitle:"ライブ キャプション",moreDrawerSpokenLanguageMenuTitle:"音声言語",moreDrawerCaptionLanguageMenuTitle:"字幕言語",moreDrawerGalleryOptionsMenuTitle:"ギャラリーのオプション",peopleButtonLabel:"ユーザー",selectedPeopleButtonLabel:"[ユーザー] ボタンが選択されました",peopleButtonTooltipOpen:"参加者を表示",peopleButtonTooltipClose:"参加者を非表示",peoplePaneSubTitle:"この通話で",peoplePaneTitle:"ユーザー",pictureInPictureTileAriaLabel:"ビデオ フィード。 クリックすると通話画面に戻ります。",removeMenuLabel:"削除",openDialpadButtonLabel:"電話番号をダイヤルする",returnToCallButtonAriaDescription:"通話に戻る",returnToCallButtonAriaLabel:"戻る",peoplePaneAddPeopleButtonLabel:"ユーザーの追加",dialpadStartCallButtonLabel:"通話",dialpadModalTitle:"電話番号をダイヤルする",dialpadModalAriaLabel:"ダイヤルパッド",dialpadCloseModalButtonAriaLabel:"ダイヤルパッドを閉じる",openDtmfDialpadLabel:"ダイヤルパッドを表示",dtmfDialpadPlaceholderText:"番号を入力してください"};var ja_JP = {call:call$a,chat:chat$a,callWithChat:callWithChat$a};
37067
+ var call$a={cameraLabel:"カメラ",noCamerasLabel:"カメラが見つかりません",cameraPermissionDenied:"お使いのブラウザーがカメラへのアクセスをブロックしています",cameraTurnedOff:"カメラはオフになっています",chatButtonLabel:"チャット",close:"閉じる",complianceBannerNowOnlyRecording:"今はこの会議の録画のみを行っています。",complianceBannerNowOnlyTranscription:"この会議のトランスクリプトを作成しています。",complianceBannerRecordingAndTranscriptionSaved:"レコーディングとトランスクリプトを保存されました。",complianceBannerRecordingAndTranscriptionStarted:"レコーディングとトランスクリプトが開始されました。",complianceBannerRecordingAndTranscriptionStopped:"レコーディングとトランスクリプトを停止しました。",complianceBannerRecordingSaving:"レコーディングを保存しています。",complianceBannerRecordingStarted:"レコーディングを開始しました。",complianceBannerRecordingStopped:"レコーディングを停止しました。",complianceBannerTranscriptionStarted:"トランスクリプトが開始しました。",complianceBannerTranscriptionConsent:"参加すると、この会議のトランスクリプトの作成に同意したことになります。",complianceBannerTranscriptionSaving:"トランスクリプトを保存されました。",complianceBannerTranscriptionStopped:"トランスクリプトが停止しました。",configurationPageTitle:"通話を開始",copyInviteLinkButtonLabel:"招待用のリンクをコピー",copyInviteLinkActionedAriaLabel:"招待用のリンクがコピーされました",defaultPlaceHolder:"オプションを選択する",dismissSidePaneButtonLabel:"閉じる",videoEffectsPaneTitle:"効果",videoEffectsPaneBackgroundSelectionTitle:"バックグラウンド",configurationPageVideoEffectsButtonLabel:"効果",unableToStartVideoEffect:"ビデオ効果を適用できません。",blurBackgroundEffectButtonLabel:"ぼかし",blurBackgroundTooltip:"背景をぼかす",removeBackgroundEffectButtonLabel:"なし",removeBackgroundTooltip:"背景の削除",cameraOffBackgroundEffectWarningText:"カメラがオフになっています。カメラをオンにすると、ビデオ効果が表示されます。",failedToJoinCallDueToNoNetworkMoreDetails:"ネットワークの問題により、通話が切断されました。接続を確認して、もう一度参加してください。",failedToJoinCallDueToNoNetworkTitle:"通話が切断されました",failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails:"通話のエントリが許可されませんでした。これが間違いだった場合は、通話に再参加してください。",failedToJoinTeamsMeetingReasonAccessDeniedTitle:"ロビーから消去しました",learnMore:"詳細情報",leavingCallTitle:"退出中...",leftCallMoreDetails:"これが間違いだった場合は、通話に再度参加してください。",leftCallTitle:"通話を終了しました",lobbyScreenConnectingToCallTitle:"通話に参加中",lobbyScreenWaitingToBeAdmittedTitle:"承認待機中",microphonePermissionDenied:"お使いのブラウザーがマイクへのアクセスをブロックしています",microphoneToggleInLobbyNotAllowed:"ロビーにいる間はミュートまたはミュート解除できません。",mutedMessage:"ミュートになっています",networkReconnectMoreDetails:"問題が発生したようです。通話に戻ろうとしています。",networkReconnectTitle:"お待ちください",notInvitedToRoomDetails:"招待がないため、このルームに参加できません。",notInvitedToRoomTitle:"ルームに招待されていません",peopleButtonLabel:"連絡先",selectedPeopleButtonLabel:"[ユーザー] ボタンが選択されました",peoplePaneTitle:"連絡先",peopleButtonTooltipOpen:"参加者を表示",peopleButtonTooltipClose:"参加者を非表示",peoplePaneSubTitle:"この通話では {numberOfPeople} 人",privacyPolicy:"プライバシー ポリシー",rejoinCallButtonLabel:"通話に再度参加",removedFromCallMoreDetails:"別の参加者があなたを通話から削除しました。",removedFromCallTitle:"削除されました",removeMenuLabel:"削除",startSpotlightParticipantListMenuLabel:"全員にスポットライトを設定",addSpotlightParticipantListMenuLabel:"スポットライトを追加",stopSpotlightParticipantListMenuLabel:"スポットライトの設定を解除",stopSpotlightOnSelfParticipantListMenuLabel:"スポットライトを終了",spotlightLimitReachedParticipantListMenuTitle:"スポットライトの上限に達しました",returnToCallButtonAriaDescription:"通話に戻る",returnToCallButtonAriaLabel:"戻る",roomNotFoundDetails:"指定されたルーム ID が見つかりませんでした。",roomNotFoundTitle:"ルームが見つかりません",roomNotValidDetails:"このルームは現在無効です。",roomNotValidTitle:"ルームが無効です",inviteToRoomRemovedDetails:"このルームに参加するための招待が削除されました。",inviteToRoomRemovedTitle:"ルームへの招待が削除されました",soundLabel:"音声",noMicrophonesLabel:"マイクが見つかりません",noSpeakersLabel:"話者が見つかりません",startCallButtonLabel:"通話を開始",openDialpadButtonLabel:"電話番号をダイヤルする",peoplePaneAddPeopleButtonLabel:"ユーザーの追加",dialpadStartCallButtonLabel:"通話",dialpadModalTitle:"電話番号をダイヤルする",dialpadModalAriaLabel:"ダイヤルパッド",dialpadCloseModalButtonAriaLabel:"ダイヤルパッドを閉じる",moreButtonCallingLabel:"その他",resumeCallButtonLabel:"再開",resumingCallButtonLabel:"再開しています...",resumeCallButtonAriaLabel:"通話の再開",resumingCallButtonAriaLabel:"通話の再開",holdScreenLabel:"保留中です",openDtmfDialpadLabel:"ダイヤルパッドを表示",dtmfDialpadPlaceholderText:"番号を入力してください",outboundCallingNoticeString:"呼び出し中。。。",participantJoinedNoticeString:"{displayName} が参加しました",twoParticipantJoinedNoticeString:"{displayName1} さんと {displayName2} さんが参加しました",threeParticipantJoinedNoticeString:"{displayName1} さん, {displayName2} さんと {displayName3} さんが参加しました",participantLeftNoticeString:"{displayName} さんが退出しました",twoParticipantLeftNoticeString:"{displayName1} さんと {displayName2} さんが退出しました",threeParticipantLeftNoticeString:"{displayName1} さん, {displayName2} さんと {displayName3} さんが退出しました",unnamedParticipantString:"名前のない参加者",manyUnnamedParticipantsJoined:"名前のない参加者と他の参加者 {numOfParticipants} 人が参加しました",manyUnnamedParticipantsLeft:"名前のない参加者と他の参加者 {numOfParticipants} 人が退出しました",manyParticipantsJoined:"{displayName1}、{displayName2}、{displayName3}、その他の参加者{numOfParticipants}参加しました",manyParticipantsLeft:"{displayName1}、{displayName2}、{displayName3}、その他の参加者{numOfParticipants}退出しました",liveCaptionsLabel:"ライブ キャプション",captionsSettingsLabel:"字幕の設定",startCaptionsButtonOnLabel:"キャプションをオンにする",startCaptionsButtonOffLabel:"キャプションをオフにする",startCaptionsButtonTooltipOnContent:"キャプションをオフにする",startCaptionsButtonTooltipOffContent:"キャプションをオンにする",captionsSettingsModalTitle:"ライブ キャプションの設定",captionsSettingsSpokenLanguageDropdownLabel:"音声言語",captionsSettingsCaptionLanguageDropdownLabel:"ライブ キャプションの言語",captionsSettingsSpokenLanguageDropdownInfoText:"この通話の全員が話している言語です。",captionsSettingsCaptionLanguageDropdownInfoText:"ライブ キャプションはこの言語で表示されます。",captionsSettingsConfirmButtonLabel:"確認",captionsSettingsCancelButtonLabel:"キャンセル",captionsSettingsModalAriaLabel:"字幕設定モーダル",captionsSettingsCloseModalButtonAriaLabel:"字幕設定を閉じる",captionsBannerMoreButtonCallingLabel:"その他",captionsBannerMoreButtonTooltip:"その他のオプション",dismissModalAriaLabel:"ローカルとリモートの画像と画像。通話に戻るには Enter キーを押します",callRejectedTitle:"通話を完了できませんでした",callRejectedMoreDetails:"連絡を取ろうとしているユーザーは利用できません。後でもう一度お試しください。",callTimeoutTitle:"通話を完了できませんでした",callTimeoutDetails:"連絡を取ろうとしているユーザーは利用できません。後でもう一度お試しください。",callTimeoutBotTitle:"通話を完了できませんでした",callTimeoutBotDetails:"接続しようとしているサービスは利用できません。後でもう一度お試しください。",dtmfDialerButtonLabel:"ダイヤルパッド",dtmfDialerButtonTooltipOn:"ダイヤルパッドを表示",dtmfDialerButtonTooltipOff:"ダイヤル パッドを非表示",dtmfDialerMoreButtonLabelOn:"ダイヤルパッドを表示",dtmfDialerMoreButtonLabelOff:"ダイヤル パッドを非表示",spokenLanguageStrings:{"ar-ae":"アラビア語 - U.A.E.","ar-sa":"アラビア語 - サウジアラビア","da-dk":"デンマーク語","de-de":"ドイツ語 - ドイツ","en-au":"英語 - オーストラリア","en-ca":"英語 - カナダ","en-gb":"英語 - イギリス","en-in":"英語 - インド","en-nz":"英語 - ニュージーランド","en-us":"英語 - 米国","es-es":"スペイン語 - スペイン (モダン)","es-mx":"スペイン語 - メキシコ","fi-fi":"フィンランド語","fr-ca":"フランス語 - カナダ","fr-fr":"フランス語 - フランス","hi-in":"ヒンディー語","it-it":"イタリア語 - イタリア","ja-jp":"日本語","ko-kr":"韓国語","nb-no":"ノルウェー語 (ブークモール)","nl-be":"オランダ語 - ベルギー","nl-nl":"オランダ語 - オランダ","pl-pl":"ポーランド語","pt-br":"ポルトガル語 - ブラジル","ru-ru":"ロシア語","sv-se":"スウェーデン語","zh-cn":"中国語 - 中国","zh-hk":"中国語 - 香港特別行政区","cs-cz":"チェコ語","pt-pt":"ポルトガル語 - ポルトガル","tr-tr":"トルコ語","vi-vn":"ベトナム語","th-th":"タイ語","he-il":"ヘブライ語","cy-gb":"ウェールズ語","uk-ua":"ウクライナ語","el-gr":"ギリシャ語","hu-hu":"ハンガリー語","ro-ro":"ルーマニア語","sk-sk":"スロバキア語","zh-tw":"中国語 - 台湾"},captionLanguageStrings:{ar:"アラビア語",da:"デンマーク語",de:"ドイツ語",en:"英語",es:"スペイン語",fi:"フィンランド語","fr-ca":"フランス語 - カナダ",fr:"フランス語 - フランス",hi:"ヒンディー語",it:"イタリア語",ja:"日本語",ko:"韓国語",nb:"ノルウェー語 (ブークモール)",nl:"オランダ語",pl:"ポーランド語",pt:"ポルトガル語 - ブラジル",ru:"ロシア語",sv:"スウェーデン語","zh-Hans":"中国語 (簡体字)","zh-Hant":"中国語 (繁体字)",cs:"チェコ語","pt-pt":"ポルトガル語 - ポルトガル",tr:"トルコ語",vi:"ベトナム語",th:"タイ語",he:"ヘブライ語",cy:"ウェールズ語",uk:"ウクライナ語",el:"ギリシャ語",hu:"ハンガリー語",ro:"ルーマニア語",sk:"スロバキア語"},captionsBannerSpinnerText:"キャプションを開始しています...",transferPageTransferorText:"転送しています...",transferPageTransferTargetText:"接続中...",transferPageUnknownTransferorDisplayName:"不明",transferPageUnknownTransferTargetDisplayName:"不明",transferPageNoticeString:"転送中です",participantCouldNotBeReachedTitle:"ターゲットの参加者は現在連絡できません",participantCouldNotBeReachedMoreDetails:"参加者が連絡可能になったら連絡してください",permissionToReachTargetParticipantNotAllowedTitle:"ターゲットの参加者への連絡が許可されていません",permissionToReachTargetParticipantNotAllowedMoreDetails:"ターゲットの参加者が同じテナントにいることを確認してください",unableToResolveTenantTitle:"ターゲット参加者のテナント ID を解決できません",unableToResolveTenantMoreDetails:"参加者 ID が正しく入力チェックしてください",participantIdIsMalformedTitle:"参加者 ID の形式が正しくありません",participantIdIsMalformedMoreDetails:"参加者 ID の形式が正しいことをチェックしてください",moreButtonGalleryControlLabel:"表示",moreButtonGalleryPositionToggleLabel:"ギャラリーを上に移動",moreButtonGallerySpeakerLayoutLabel:"スピーカー",moreButtonGalleryFloatingLocalLayoutLabel:"ダイナミック",moreButtonGalleryDefaultLayoutLabel:"ギャラリー ビュー",moreButtonGalleryFocusedContentLayoutLabel:"コンテンツにフォーカスを移動",moreButtonLargeGalleryDefaultLayoutLabel:"ラージ ギャラリー",capabilityChangedNotification:{turnVideoOn:{lostDueToMeetingOption:"カメラが無効になっています。ビデオを共有できなくなりました。",grantedDueToMeetingOption:"カメラが有効になりました。ビデオを共有する場合はオンにします。"},unmuteMic:{lostDueToMeetingOption:"マイクが無効になっています。ミュートを解除できません。",grantedDueToMeetingOption:"マイクが有効になりました。音声機能を使用する場合は、ミュートを解除します。"},shareScreen:{lostDueToRoleChangeToAttendee:"ロールが変更されました。コンテンツの共有などの一部の操作は利用できません。",grantedDueToRoleChangeToPresenter:"あなたは発表者です。コンテンツの共有と会議の進行を行うことができます。"}},surveyTitle:"品質向上にご協力ください",starSurveyHelperText:"通話の音質はどうでしたか?",starSurveyOneStarText:"品質が悪かった。",starSurveyTwoStarText:"品質は低かった。",starSurveyThreeStarText:"品質は良かった。",starSurveyFourStarText:"品質は優れていた。",starSurveyFiveStarText:"品質は非常に優れていた。",surveyConfirmButtonLabel:"フィードバックの送信",starRatingAriaLabel:"{1} 個中 {0} 個の星を選択する",surveySkipButtonLabel:"スキップ",tagsSurveyQuestion:"何が良くなりましたか?",tagsSurveyTextFieldDefaultText:"その他、特定してください",tagsSurveyHelperText:"発生した問題を確認する",surveyTextboxDefaultText:"その他 (明記してください)",endOfSurveyText:"フィードバックをお送りいただき、ありがとうございます。",surveyIssues:{overallRating:{callCannotJoin:"通話に参加できなかった",callCannotInvite:"他のユーザーを通話に招待できなかった",hadToRejoin:"通話にもう参加し直す必要があった",callEndedUnexpectedly:"通話が突然終了した",otherIssues:"通話で他の問題が発生していた"},audioRating:{noLocalAudio:"相手側で音が聞こえませんでした",noRemoteAudio:"音がまったく聞こえなかった",echo:"通話でエコーが聞こえた",audioNoise:"通話中にノイズが聞こえた",lowVolume:"音量が小さかった",audioStoppedUnexpectedly:"オーディオが突然停止した",distortedSpeech:"オーディオが歪んでいた",audioInterruption:"オーディオが中断された",otherIssues:"この通話で他のオーディオの問題があった"},videoRating:{noVideoReceived:"ビデオを表示できなかった",noVideoSent:"他のユーザーに自分が表示されなかった",lowQuality:"ビデオの品質が低かった",freezes:"ビデオがフリーズした",stoppedUnexpectedly:"ビデオが突然停止した",darkVideoReceived:"他のユーザーがカメラをオンにした場合にのみ暗い画面を表示できる",audioVideoOutOfSync:"オーディオとビデオがずれている",otherIssues:"この通話で他のビデオの問題があった"},screenshareRating:{noContentLocal:"他のユーザーが自分の画面共有を表示できなかった",noContentRemote:"他のユーザーのスクリーン共有が表示されなかった",cannotPresent:"画面をプレゼンテーションできなかった",lowQuality:"画面共有の品質が低かった",freezes:"画面共有がフリーズした",stoppedUnexpectedly:"画面共有が突然停止した",largeDelay:"画面共有に大きな遅延がある",otherIssues:"この通話で他の画面共有の問題があった"}},SurveyIssuesHeadingStrings:{overallRating:"全体",audioRating:"オーディオ",videoRating:"動画",screenshareRating:"発表中"},spotlightPrompt:{startSpotlightHeading:"全員にスポットライトを設定しますか?",startSpotlightText:"会議の全員にこのビデオをハイライトします。",startSpotlightOnSelfText:"会議の全員にビデオをハイライトします。",startSpotlightConfirmButtonLabel:"全員にスポットライトを設定",startSpotlightCancelButtonLabel:"キャンセル",stopSpotlightHeading:"スポットライトの設定を解除しますか?",stopSpotlightOnSelfHeading:"スポットライトを終了しますか?",stopSpotlightText:"このビデオは、会議の全員に対して強調表示されなくなります。",stopSpotlightOnSelfText:"ビデオは、会議の全員に対して強調表示されなくなります。",stopSpotlightConfirmButtonLabel:"スポットライトの設定を解除",stopSpotlightOnSelfConfirmButtonLabel:"スポットライトを終了",stopSpotlightCancelButtonLabel:"キャンセル"}};var chat$a={chatListHeader:"このチャット内",uploadFile:"ファイルのアップロード"};var callWithChat$a={chatButtonLabel:"チャット",chatButtonNewMessageNotificationLabel:"新規メッセージ",chatButtonTooltipClosedWithMessageCount:"チャットを表示する ({unreadMessagesCount} 件の未読)",chatButtonTooltipClose:"チャットを非表示",chatButtonTooltipOpen:"チャットを表示",chatPaneTitle:"チャット",copyInviteLinkButtonLabel:"招待用のリンクをコピー",copyInviteLinkActionedAriaLabel:"招待用のリンクがコピーされました",dismissSidePaneButtonLabel:"閉じる",moreDrawerAudioDeviceMenuTitle:"オーディオ デバイス",moreDrawerButtonLabel:"その他のオプション",moreDrawerButtonTooltip:"その他のオプション",moreDrawerMicrophoneMenuTitle:"マイク",moreDrawerSpeakerMenuTitle:"スピーカー",moreDrawerCaptionsMenuTitle:"ライブ キャプション",moreDrawerSpokenLanguageMenuTitle:"音声言語",moreDrawerCaptionLanguageMenuTitle:"字幕言語",moreDrawerGalleryOptionsMenuTitle:"ギャラリーのオプション",peopleButtonLabel:"ユーザー",selectedPeopleButtonLabel:"[ユーザー] ボタンが選択されました",peopleButtonTooltipOpen:"参加者を表示",peopleButtonTooltipClose:"参加者を非表示",peoplePaneSubTitle:"この通話で",peoplePaneTitle:"ユーザー",pictureInPictureTileAriaLabel:"ビデオ フィード。 クリックすると通話画面に戻ります。",removeMenuLabel:"削除",openDialpadButtonLabel:"電話番号をダイヤルする",returnToCallButtonAriaDescription:"通話に戻る",returnToCallButtonAriaLabel:"戻る",peoplePaneAddPeopleButtonLabel:"ユーザーの追加",dialpadStartCallButtonLabel:"通話",dialpadModalTitle:"電話番号をダイヤルする",dialpadModalAriaLabel:"ダイヤルパッド",dialpadCloseModalButtonAriaLabel:"ダイヤルパッドを閉じる",openDtmfDialpadLabel:"ダイヤルパッドを表示",dtmfDialpadPlaceholderText:"番号を入力してください"};var ja_JP = {call:call$a,chat:chat$a,callWithChat:callWithChat$a};
36730
37068
 
36731
37069
  // Copyright (c) Microsoft Corporation.
36732
37070
  // Licensed under the MIT License.