@azure/communication-react 1.4.2-alpha-202211300015.0 → 1.4.2-alpha-202212010027.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/communication-react.d.ts +43 -7
  2. package/dist/dist-cjs/communication-react/index.js +87 -29
  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-stateful-client/src/Logger.d.ts +1 -0
  7. package/dist/dist-esm/calling-stateful-client/src/Logger.js +1 -0
  8. package/dist/dist-esm/calling-stateful-client/src/Logger.js.map +1 -1
  9. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js +33 -10
  10. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js.map +1 -1
  11. package/dist/dist-esm/communication-react/src/index.d.ts +2 -0
  12. package/dist/dist-esm/communication-react/src/index.js +2 -0
  13. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  14. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.d.ts +5 -5
  15. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js +4 -23
  16. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js.map +1 -1
  17. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.d.ts +33 -0
  18. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js +15 -0
  19. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js.map +1 -0
  20. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.d.ts +30 -0
  21. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js +29 -0
  22. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js.map +1 -0
  23. package/dist/dist-esm/react-components/src/components/index.d.ts +2 -0
  24. package/dist/dist-esm/react-components/src/components/index.js +1 -1
  25. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  26. package/dist/dist-esm/react-components/src/components/styles/{UnsupportedBrowser.styles.d.ts → UnsupportedEnvironment.styles.d.ts} +1 -1
  27. package/dist/dist-esm/react-components/src/components/styles/{UnsupportedBrowser.styles.js → UnsupportedEnvironment.styles.js} +3 -2
  28. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js.map +1 -0
  29. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +3 -0
  30. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  31. package/dist/dist-esm/react-components/src/localization/locales/en-US/strings.json +6 -1
  32. package/dist/dist-esm/react-components/src/theming/icons.d.ts +1 -1
  33. package/dist/dist-esm/react-components/src/theming/icons.js +2 -2
  34. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  35. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +1 -1
  36. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  37. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +0 -1
  38. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  39. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.d.ts +2 -0
  40. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js +12 -7
  41. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js.map +1 -1
  42. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +6 -1
  43. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  44. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +1 -1
  45. package/package.json +8 -8
  46. package/dist/dist-esm/react-components/src/components/styles/UnsupportedBrowser.styles.js.map +0 -1
@@ -3814,6 +3814,8 @@ export declare interface ComponentStrings {
3814
3814
  MicrophoneDomainPermissionsDenied: DomainPermissionsStrings;
3815
3815
  /** Strings for unsupported browser UI */
3816
3816
  UnsupportedBrowser: UnsupportedBrowserStrings;
3817
+ /** Strings for unsupported browser version UI */
3818
+ UnsupportedBrowserVersion: UnsupportedBrowserVersionStrings;
3817
3819
  /** Strings for BrowserPemissionDenied */
3818
3820
  BrowserPermissionDenied: BrowserPermissionDeniedStrings;
3819
3821
  /** Strings for BrowserPemissionDeniedIOS */
@@ -4550,7 +4552,7 @@ export declare const DEFAULT_COMPONENT_ICONS: {
4550
4552
  DomainPermissionMic: JSX.Element;
4551
4553
  DomainPermissionCameraDenied: JSX.Element;
4552
4554
  DomainPermissionMicDenied: JSX.Element;
4553
- UnsupportedBrowserWarning: JSX.Element;
4555
+ UnsupportedEnvironmentWarning: JSX.Element;
4554
4556
  BrowserPermissionDeniedError: JSX.Element;
4555
4557
  VideoTilePinned: JSX.Element;
4556
4558
  VideoTileMoreOptions: JSX.Element;
@@ -4647,7 +4649,7 @@ export declare const DEFAULT_COMPOSITE_ICONS: {
4647
4649
  DomainPermissionMic: JSX.Element;
4648
4650
  DomainPermissionCameraDenied: JSX.Element;
4649
4651
  DomainPermissionMicDenied: JSX.Element;
4650
- UnsupportedBrowserWarning: JSX.Element;
4652
+ UnsupportedEnvironmentWarning: JSX.Element;
4651
4653
  BrowserPermissionDeniedError: JSX.Element;
4652
4654
  VideoTilePinned: JSX.Element;
4653
4655
  VideoTileMoreOptions: JSX.Element;
@@ -7841,19 +7843,19 @@ export declare interface TypingIndicatorStylesProps extends BaseCustomStyles {
7841
7843
  }
7842
7844
 
7843
7845
  /**
7844
- * UI to display to the user that the browser they are using is not supported by calling application.
7846
+ * UI to display to the user that the browser they are using is not supported by Azure Communications Calling service.
7845
7847
  *
7846
7848
  * @beta
7847
7849
  */
7848
7850
  export declare const UnsupportedBrowser: (props: UnsupportedBrowserProps) => JSX.Element;
7849
7851
 
7850
7852
  /**
7851
- * props for UnsupportedBrowser UI
7853
+ * props for {@link UnsupportedBrowser} UI
7852
7854
  *
7853
7855
  * @beta
7854
7856
  */
7855
7857
  export declare interface UnsupportedBrowserProps {
7856
- /** Handler to perform a action when the help link is actioned */
7858
+ /** Handler to perform an action when the help link is actioned */
7857
7859
  onTroubleshootingClick?: () => void;
7858
7860
  /** String overrides for the component */
7859
7861
  strings: UnsupportedBrowserStrings;
@@ -7869,8 +7871,42 @@ export declare interface UnsupportedBrowserStrings {
7869
7871
  primaryText: string;
7870
7872
  /** String for the secondary text */
7871
7873
  secondaryText: string;
7872
- /** String for the help link */
7873
- moreHelpLink: string;
7874
+ /** String to display in the text for the help link */
7875
+ moreHelpText: string;
7876
+ }
7877
+
7878
+ /**
7879
+ * UI to display to the user that the browser version they are using is out of date
7880
+ * and not supported by Azure Communications Calling service.
7881
+ *
7882
+ * @beta
7883
+ */
7884
+ export declare const UnsupportedBrowserVersion: (props: UnsupportedBrowserVersionProps) => JSX.Element;
7885
+
7886
+ /**
7887
+ * props for {@link UnsupportedBrowserVersion} UI
7888
+ *
7889
+ * @beta
7890
+ */
7891
+ export declare interface UnsupportedBrowserVersionProps {
7892
+ /** Handler to perform an action when the help link is actioned */
7893
+ onTroubleshootingClick?: () => void;
7894
+ /** String overrides for the component */
7895
+ strings: UnsupportedBrowserVersionStrings;
7896
+ }
7897
+
7898
+ /**
7899
+ * Strings for UnsupportedBrowser component
7900
+ *
7901
+ * @beta
7902
+ */
7903
+ export declare interface UnsupportedBrowserVersionStrings {
7904
+ /** String for the primary text */
7905
+ primaryText: string;
7906
+ /** String for the secondary text */
7907
+ secondaryText: string;
7908
+ /** String to display in the text for the help link */
7909
+ moreHelpText: string;
7874
7910
  }
7875
7911
 
7876
7912
  /**
@@ -202,7 +202,7 @@ const _toCommunicationIdentifier = (id) => {
202
202
  // Copyright (c) Microsoft Corporation.
203
203
  // Licensed under the MIT license.
204
204
  // GENERATED FILE. DO NOT EDIT MANUALLY.
205
- var telemetryVersion = '1.4.2-alpha-202211300015.0';
205
+ var telemetryVersion = '1.4.2-alpha-202212010027.0';
206
206
 
207
207
  // Copyright (c) Microsoft Corporation.
208
208
  /**
@@ -1141,6 +1141,7 @@ var EventNames;
1141
1141
  EventNames["CREATE_STREAM_INVALID_PARAMS"] = "CREATE_STREAM_INVALID_PARAMS";
1142
1142
  EventNames["DISPOSE_STREAM_INVALID_PARAMS"] = "DISPOSE_LOCAL_STREAM_INVALID_PARAMS";
1143
1143
  EventNames["LOCAL_STREAM_ALREADY_RENDERED"] = "LOCAL_STREAM_ALREADY_RENDERED";
1144
+ EventNames["LOCAL_STREAM_ALREADY_DISPOSED"] = "LOCAL_STREAM_ALREADY_DISPOSED";
1144
1145
  EventNames["LOCAL_STREAM_STOPPING"] = "LOCAL_STREAM_STOPPING";
1145
1146
  EventNames["LOCAL_CREATED_STREAM_STOPPING"] = "LOCAL_CREATED_STREAM_STOPPING";
1146
1147
  EventNames["LOCAL_STREAM_RENDERING"] = "LOCAL_STREAM_RENDERING";
@@ -2146,13 +2147,15 @@ function createViewLocalVideo(context, internalContext, callId, options) {
2146
2147
  });
2147
2148
  return;
2148
2149
  }
2150
+ // "Stopping" only happens if the stream was in "rendering" but `disposeView` was called.
2151
+ // Now that `createView` has been re-called, we can flip the state back to "rendering".
2149
2152
  if (renderInfo.status === 'Stopping') {
2150
2153
  _logEvent(callingStatefulLogger, {
2151
2154
  name: EventNames.LOCAL_STREAM_STOPPING,
2152
2155
  level: 'warning',
2153
- message: 'LocalVideoStream is in the middle of stopping.'
2156
+ message: 'LocalVideoStream was marked as stopping by dispose view. Resetting state to "Rendering".'
2154
2157
  });
2155
- console.warn('LocalVideoStream is in the middle of stopping');
2158
+ internalContext.setLocalRenderInfo(callId, renderInfo.stream, 'Rendering', renderInfo.renderer);
2156
2159
  return;
2157
2160
  }
2158
2161
  const renderer = new communicationCalling.VideoStreamRenderer(renderInfo.stream);
@@ -2363,21 +2366,42 @@ function disposeViewLocalVideo(context, internalContext, callId) {
2363
2366
  });
2364
2367
  return;
2365
2368
  }
2366
- // Sets the status and also renderer. I think we need to always set renderer to undefined since in all status when
2367
- // cleaned up should have renderer as undefined. If the status is 'Rendered' and renderer is not defined it should
2368
- // be cleaned up below so we can set it to undefined here.
2369
- if (renderInfo.status === 'Rendering') {
2369
+ // Nothing to dispose of or clean up -- we can safely exit early here.
2370
+ if (renderInfo.status === 'NotRendered') {
2371
+ _logEvent(callingStatefulLogger, {
2372
+ name: EventNames.LOCAL_STREAM_ALREADY_DISPOSED,
2373
+ level: 'info',
2374
+ message: 'LocalVideoStream is already disposed.'
2375
+ });
2376
+ return;
2377
+ }
2378
+ // Status is already marked as "stopping" so we can exit early here. This is because stopping only occurs
2379
+ // when the stream is being created in createView but hasn't been completed being created yet. The createView
2380
+ // method will see the "stopping" status and perform the cleanup
2381
+ if (renderInfo.status === 'Stopping') {
2370
2382
  _logEvent(callingStatefulLogger, {
2371
2383
  name: EventNames.LOCAL_STREAM_STOPPING,
2372
2384
  level: 'info',
2373
- message: 'Local stream is still rendering. Changing status to stopping.',
2385
+ message: 'Local stream is already stopping.',
2374
2386
  data: streamLogInfo
2375
2387
  });
2376
- internalContext.setLocalRenderInfo(callId, renderInfo.stream, 'Stopping', undefined);
2388
+ return;
2377
2389
  }
2378
- else {
2379
- internalContext.setLocalRenderInfo(callId, renderInfo.stream, 'NotRendered', undefined);
2390
+ // If the stream is in the middle of being rendered (i.e. has state "Rendering"), we need the status as
2391
+ // "stopping" without performing any cleanup. This will tell the `createView` method that it should stop
2392
+ // rendering and clean up the state once the view has finished being created.
2393
+ if (renderInfo.status === 'Rendering') {
2394
+ _logEvent(callingStatefulLogger, {
2395
+ name: EventNames.REMOTE_STREAM_STOPPING,
2396
+ level: 'info',
2397
+ message: 'Remote stream is still rendering. Changing status to stopping.',
2398
+ data: streamLogInfo
2399
+ });
2400
+ internalContext.setLocalRenderInfo(callId, renderInfo.stream, 'Stopping', renderInfo.renderer);
2401
+ return;
2380
2402
  }
2403
+ // Else the state must be in the "Rendered" state, so we can dispose the renderer and clean up the state.
2404
+ internalContext.setLocalRenderInfo(callId, renderInfo.stream, 'NotRendered', undefined);
2381
2405
  if (renderInfo.renderer) {
2382
2406
  _logEvent(callingStatefulLogger, {
2383
2407
  name: EventNames.DISPOSING_LOCAL_RENDERER,
@@ -3916,7 +3940,7 @@ const typingIndicatorStringStyle = react.mergeStyles({
3916
3940
  wordBreak: 'break-word'
3917
3941
  });
3918
3942
 
3919
- var participantItem$d={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted",displayNamePlaceholder:"Unnamed participant",participantStateConnecting:"Calling...",participantStateRinging:"Calling...",participantStateHold:"On hold"};var typingIndicator$d={singleUser:"{user} is typing ...",multipleUsers:"{users} are typing ...",multipleUsersAbbreviateOne:"{users} and 1 other are typing ...",multipleUsersAbbreviateMany:"{users} and {numOthers} others are typing ...",delimiter:", "};var sendBox$d={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",fileUploadsPendingError:"Uploading... Please wait.",removeFile:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed"};var messageStatusIndicator$d={deliveredAriaLabel:"Message sent",deliveredTooltipText:"Sent",seenAriaLabel:"Message seen by others",seenTooltipText:"Seen",readByTooltipText:"Read by {messageThreadReadCount} of {remoteParticipantsCount}",sendingAriaLabel:"Message sending",sendingTooltipText:"Sending",failedToSendAriaLabel:"Message failed to send",failedToSendTooltipText:"Failed to send"};var endCallButton$d={label:"Leave",tooltipContent:"Leave call"};var cameraButton$d={onLabel:"Turn off",offLabel:"Turn on",tooltipDisabledContent:"Camera is disabled",tooltipOnContent:"Turn off camera",tooltipOffContent:"Turn on camera",tooltipVideoLoadingContent:"Video is loading",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",cameraButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Turn off camera and camera options",offSplitButtonAriaLabel:"Turn on camera and camera options",cameraActionTurnedOnAnnouncement:"Your camera has been turned on",cameraActionTurnedOffAnnouncement:"Your camera has been turned off"};var microphoneButton$d={onLabel:"Mute",offLabel:"Unmute",tooltipDisabledContent:"Microphone is disabled",tooltipOnContent:"Mute microphone",tooltipOffContent:"Unmute microphone",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker",microphoneButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Mute microphone and audio options",offSplitButtonAriaLabel:"Unmute microphone and audio options",microphoneActionTurnedOnAnnouncement:"Your microphone has been turned on",microphoneActionTurnedOffAnnouncement:"Your microphone has been turned off"};var devicesButton$d={label:"Devices",tooltipContent:"Manage devices",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",audioDeviceMenuTitle:"Audio Device",audioDeviceMenuTooltip:"Choose audio device",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker"};var participantsButton$d={label:"People",tooltipContent:"Show participants",menuHeader:"In this call",participantsListButtonLabel:"{numParticipants} people",muteAllButtonLabel:"Mute all",copyInviteLinkButtonLabel:"Copy invite link"};var screenShareButton$d={onLabel:"Stop presenting",offLabel:"Present",tooltipDisabledContent:"Presenting is disabled",tooltipOnContent:"Presenting your screen",tooltipOffContent:"Present your screen"};var messageThread$d={yesterday:"Yesterday",sunday:"Sunday",monday:"Monday",tuesday:"Tuesday",wednesday:"Wednesday",thursday:"Thursday",friday:"Friday",saturday:"Saturday",participantJoined:"joined the chat.",participantLeft:"left the chat.",editMessage:"Edit",removeMessage:"Delete",resendMessage:"Try sending again",failToSendTag:"Failed to send",editedTag:"Edited",liveAuthorIntro:"{author} says",messageContentAriaText:"{author} said {message}",messageContentMineAriaText:"You said {message}",editBoxTextLimit:"Your message is over the limit of {limitNumber} characters",editBoxPlaceholderText:"Edit your message",newMessagesIndicator:"New messages",noDisplayNameSub:"No name",editBoxCancelButton:"Cancel",editBoxSubmitButton:"Submit",messageReadCount:"Read by {messageReadByCount} of {remoteParticipantsCount}",actionMenuMoreOptions:"More Options",downloadFile:"Download file"};var errorBar$d={unableToReachChatService:"You are offline",accessDenied:"Unable to access chat services - please check the user credentials provided",userNotInChatThread:"You are no longer in this chat thread",sendMessageNotInChatThread:"Failed to send message because you are no longer in this chat thread",sendMessageGeneric:"Failed to send message",callingNetworkFailure:"Troubling connecting call - you seem to be offline",startVideoGeneric:"Failed to start video",stopVideoGeneric:"Failed to stop video",muteGeneric:"Failed to mute microphone",unmuteGeneric:"Failed to unmute microphone",speakingWhileMuted:"Your microphone is muted",startScreenShareGeneric:"Failed to start screen sharing",stopScreenShareGeneric:"Failed to stop screen sharing",callNetworkQualityLow:"Network quality is low.",callNoSpeakerFound:"No speakers or headphones found. Connect an audio device to hear the call.",callNoMicrophoneFound:"No microphones found. Connect an audio input device.",callMicrophoneAccessDenied:"Unable to access microphone. Click the lock in the address bar to grant permission to this webpage.",callMicrophoneMutedBySystem:"You are muted by your system.",callMicrophoneUnmutedBySystem:"Your microphone recovered and you were unmuted by your system.",callMacOsMicrophoneAccessDenied:"Unable to access microphone. Grant microphone permission in your macOS privacy settings.",callLocalVideoFreeze:"Network bandwidth is poor. Your video may appear paused for others on the call.",callCameraAccessDenied:"Unable to access camera. Click the lock in the address bar to grant permission to this webpage.",callCameraAlreadyInUse:"Unable to access camera. It may already be in use by another application.",callVideoStoppedBySystem:"Your video has been stopped by your system.",callVideoRecoveredBySystem:"Your video has resumed.",callMacOsCameraAccessDenied:"MacOS is blocking access to your camera. Update your privacy settings to allow this browser to access your camera.",callMacOsScreenShareAccessDenied:"MacOS is blocking screen sharing. Update your privacy settings to allow this browser to record your screen.",dismissButtonAriaLabel:"Close",failedToJoinCallGeneric:"Failed to join call.",failedToJoinCallInvalidMeetingLink:"Unable to join Meeting. Invalid Link."};var videoGallery$d={screenIsBeingSharedMessage:"You are sharing your screen",screenShareLoadingMessage:"Loading {participant}'s screen",localVideoLabel:"You",localVideoCameraSwitcherLabel:"Switch camera",localVideoMovementLabel:"Movable Local Video Tile",localVideoSelectedDescription:"{cameraName} selected",displayNamePlaceholder:"Unnamed participant"};var dialpad$d={placeholderText:"Enter phone number",deleteButtonAriaLabel:"Delete"};var holdButton$d={onLabel:"Resume",offLabel:"Hold",tooltipOnContent:"Resume call",tooltipOffContent:"Hold call"};var videoTile$d={participantStateConnecting:"Calling...",participantStateRinging:"Calling...",participantStateHold:"On hold"};var CameraAndMicrophoneDomainPermissionsRequest={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 CameraDomainPermissionsRequest={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 MicrophoneDomainPermissionsRequest={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 CameraAndMicrophoneDomainPermissionsCheck={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 CameraDomainPermissionsCheck={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 MicrophoneDomainPermissionsCheck={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 CameraAndMicrophoneDomainPermissionsDenied={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 CameraDomainPermissionsDenied={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 MicrophoneDomainPermissionsDenied={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 UnsupportedBrowser$e={primaryText:"Browser not supported",secondaryText:"Please join this call using a compatible browser.",moreHelpLink:"More help"};var BrowserPermissionDenied$d={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$d={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 en_US$1 = {participantItem:participantItem$d,typingIndicator:typingIndicator$d,sendBox:sendBox$d,messageStatusIndicator:messageStatusIndicator$d,endCallButton:endCallButton$d,cameraButton:cameraButton$d,microphoneButton:microphoneButton$d,devicesButton:devicesButton$d,participantsButton:participantsButton$d,screenShareButton:screenShareButton$d,messageThread:messageThread$d,errorBar:errorBar$d,videoGallery:videoGallery$d,dialpad:dialpad$d,holdButton:holdButton$d,videoTile:videoTile$d,CameraAndMicrophoneDomainPermissionsRequest:CameraAndMicrophoneDomainPermissionsRequest,CameraDomainPermissionsRequest:CameraDomainPermissionsRequest,MicrophoneDomainPermissionsRequest:MicrophoneDomainPermissionsRequest,CameraAndMicrophoneDomainPermissionsCheck:CameraAndMicrophoneDomainPermissionsCheck,CameraDomainPermissionsCheck:CameraDomainPermissionsCheck,MicrophoneDomainPermissionsCheck:MicrophoneDomainPermissionsCheck,CameraAndMicrophoneDomainPermissionsDenied:CameraAndMicrophoneDomainPermissionsDenied,CameraDomainPermissionsDenied:CameraDomainPermissionsDenied,MicrophoneDomainPermissionsDenied:MicrophoneDomainPermissionsDenied,UnsupportedBrowser:UnsupportedBrowser$e,BrowserPermissionDenied:BrowserPermissionDenied$d,BrowserPermissionDeniedIOS:BrowserPermissionDeniedIOS$d};
3943
+ var participantItem$d={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted",displayNamePlaceholder:"Unnamed participant",participantStateConnecting:"Calling...",participantStateRinging:"Calling...",participantStateHold:"On hold"};var typingIndicator$d={singleUser:"{user} is typing ...",multipleUsers:"{users} are typing ...",multipleUsersAbbreviateOne:"{users} and 1 other are typing ...",multipleUsersAbbreviateMany:"{users} and {numOthers} others are typing ...",delimiter:", "};var sendBox$d={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",fileUploadsPendingError:"Uploading... Please wait.",removeFile:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed"};var messageStatusIndicator$d={deliveredAriaLabel:"Message sent",deliveredTooltipText:"Sent",seenAriaLabel:"Message seen by others",seenTooltipText:"Seen",readByTooltipText:"Read by {messageThreadReadCount} of {remoteParticipantsCount}",sendingAriaLabel:"Message sending",sendingTooltipText:"Sending",failedToSendAriaLabel:"Message failed to send",failedToSendTooltipText:"Failed to send"};var endCallButton$d={label:"Leave",tooltipContent:"Leave call"};var cameraButton$d={onLabel:"Turn off",offLabel:"Turn on",tooltipDisabledContent:"Camera is disabled",tooltipOnContent:"Turn off camera",tooltipOffContent:"Turn on camera",tooltipVideoLoadingContent:"Video is loading",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",cameraButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Turn off camera and camera options",offSplitButtonAriaLabel:"Turn on camera and camera options",cameraActionTurnedOnAnnouncement:"Your camera has been turned on",cameraActionTurnedOffAnnouncement:"Your camera has been turned off"};var microphoneButton$d={onLabel:"Mute",offLabel:"Unmute",tooltipDisabledContent:"Microphone is disabled",tooltipOnContent:"Mute microphone",tooltipOffContent:"Unmute microphone",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker",microphoneButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Mute microphone and audio options",offSplitButtonAriaLabel:"Unmute microphone and audio options",microphoneActionTurnedOnAnnouncement:"Your microphone has been turned on",microphoneActionTurnedOffAnnouncement:"Your microphone has been turned off"};var devicesButton$d={label:"Devices",tooltipContent:"Manage devices",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",audioDeviceMenuTitle:"Audio Device",audioDeviceMenuTooltip:"Choose audio device",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker"};var participantsButton$d={label:"People",tooltipContent:"Show participants",menuHeader:"In this call",participantsListButtonLabel:"{numParticipants} people",muteAllButtonLabel:"Mute all",copyInviteLinkButtonLabel:"Copy invite link"};var screenShareButton$d={onLabel:"Stop presenting",offLabel:"Present",tooltipDisabledContent:"Presenting is disabled",tooltipOnContent:"Presenting your screen",tooltipOffContent:"Present your screen"};var messageThread$d={yesterday:"Yesterday",sunday:"Sunday",monday:"Monday",tuesday:"Tuesday",wednesday:"Wednesday",thursday:"Thursday",friday:"Friday",saturday:"Saturday",participantJoined:"joined the chat.",participantLeft:"left the chat.",editMessage:"Edit",removeMessage:"Delete",resendMessage:"Try sending again",failToSendTag:"Failed to send",editedTag:"Edited",liveAuthorIntro:"{author} says",messageContentAriaText:"{author} said {message}",messageContentMineAriaText:"You said {message}",editBoxTextLimit:"Your message is over the limit of {limitNumber} characters",editBoxPlaceholderText:"Edit your message",newMessagesIndicator:"New messages",noDisplayNameSub:"No name",editBoxCancelButton:"Cancel",editBoxSubmitButton:"Submit",messageReadCount:"Read by {messageReadByCount} of {remoteParticipantsCount}",actionMenuMoreOptions:"More Options",downloadFile:"Download file"};var errorBar$d={unableToReachChatService:"You are offline",accessDenied:"Unable to access chat services - please check the user credentials provided",userNotInChatThread:"You are no longer in this chat thread",sendMessageNotInChatThread:"Failed to send message because you are no longer in this chat thread",sendMessageGeneric:"Failed to send message",callingNetworkFailure:"Troubling connecting call - you seem to be offline",startVideoGeneric:"Failed to start video",stopVideoGeneric:"Failed to stop video",muteGeneric:"Failed to mute microphone",unmuteGeneric:"Failed to unmute microphone",speakingWhileMuted:"Your microphone is muted",startScreenShareGeneric:"Failed to start screen sharing",stopScreenShareGeneric:"Failed to stop screen sharing",callNetworkQualityLow:"Network quality is low.",callNoSpeakerFound:"No speakers or headphones found. Connect an audio device to hear the call.",callNoMicrophoneFound:"No microphones found. Connect an audio input device.",callMicrophoneAccessDenied:"Unable to access microphone. Click the lock in the address bar to grant permission to this webpage.",callMicrophoneMutedBySystem:"You are muted by your system.",callMicrophoneUnmutedBySystem:"Your microphone recovered and you were unmuted by your system.",callMacOsMicrophoneAccessDenied:"Unable to access microphone. Grant microphone permission in your macOS privacy settings.",callLocalVideoFreeze:"Network bandwidth is poor. Your video may appear paused for others on the call.",callCameraAccessDenied:"Unable to access camera. Click the lock in the address bar to grant permission to this webpage.",callCameraAlreadyInUse:"Unable to access camera. It may already be in use by another application.",callVideoStoppedBySystem:"Your video has been stopped by your system.",callVideoRecoveredBySystem:"Your video has resumed.",callMacOsCameraAccessDenied:"MacOS is blocking access to your camera. Update your privacy settings to allow this browser to access your camera.",callMacOsScreenShareAccessDenied:"MacOS is blocking screen sharing. Update your privacy settings to allow this browser to record your screen.",dismissButtonAriaLabel:"Close",failedToJoinCallGeneric:"Failed to join call.",failedToJoinCallInvalidMeetingLink:"Unable to join Meeting. Invalid Link."};var videoGallery$d={screenIsBeingSharedMessage:"You are sharing your screen",screenShareLoadingMessage:"Loading {participant}'s screen",localVideoLabel:"You",localVideoCameraSwitcherLabel:"Switch camera",localVideoMovementLabel:"Movable Local Video Tile",localVideoSelectedDescription:"{cameraName} selected",displayNamePlaceholder:"Unnamed participant"};var dialpad$d={placeholderText:"Enter phone number",deleteButtonAriaLabel:"Delete"};var holdButton$d={onLabel:"Resume",offLabel:"Hold",tooltipOnContent:"Resume call",tooltipOffContent:"Hold call"};var videoTile$d={participantStateConnecting:"Calling...",participantStateRinging:"Calling...",participantStateHold:"On hold"};var CameraAndMicrophoneDomainPermissionsRequest={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 CameraDomainPermissionsRequest={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 MicrophoneDomainPermissionsRequest={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 CameraAndMicrophoneDomainPermissionsCheck={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 CameraDomainPermissionsCheck={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 MicrophoneDomainPermissionsCheck={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 CameraAndMicrophoneDomainPermissionsDenied={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 CameraDomainPermissionsDenied={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 MicrophoneDomainPermissionsDenied={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 UnsupportedBrowser$e={primaryText:"Browser not supported",secondaryText:"Please join this call using a compatible browser.",moreHelpText:"More help"};var UnsupportedBrowserVersion$1={primaryText:"Browser version not supported",secondaryText:"Please update your browser and then try joining the call again.",moreHelpText:"See compatibility requirements"};var BrowserPermissionDenied$d={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$d={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 en_US$1 = {participantItem:participantItem$d,typingIndicator:typingIndicator$d,sendBox:sendBox$d,messageStatusIndicator:messageStatusIndicator$d,endCallButton:endCallButton$d,cameraButton:cameraButton$d,microphoneButton:microphoneButton$d,devicesButton:devicesButton$d,participantsButton:participantsButton$d,screenShareButton:screenShareButton$d,messageThread:messageThread$d,errorBar:errorBar$d,videoGallery:videoGallery$d,dialpad:dialpad$d,holdButton:holdButton$d,videoTile:videoTile$d,CameraAndMicrophoneDomainPermissionsRequest:CameraAndMicrophoneDomainPermissionsRequest,CameraDomainPermissionsRequest:CameraDomainPermissionsRequest,MicrophoneDomainPermissionsRequest:MicrophoneDomainPermissionsRequest,CameraAndMicrophoneDomainPermissionsCheck:CameraAndMicrophoneDomainPermissionsCheck,CameraDomainPermissionsCheck:CameraDomainPermissionsCheck,MicrophoneDomainPermissionsCheck:MicrophoneDomainPermissionsCheck,CameraAndMicrophoneDomainPermissionsDenied:CameraAndMicrophoneDomainPermissionsDenied,CameraDomainPermissionsDenied:CameraDomainPermissionsDenied,MicrophoneDomainPermissionsDenied:MicrophoneDomainPermissionsDenied,UnsupportedBrowser:UnsupportedBrowser$e,UnsupportedBrowserVersion:UnsupportedBrowserVersion$1,BrowserPermissionDenied:BrowserPermissionDenied$d,BrowserPermissionDeniedIOS:BrowserPermissionDeniedIOS$d};
3920
3944
 
3921
3945
  var participantItem$c={isMeText:"(you)",menuTitle:"More Options",removeButtonLabel:"Remove",sharingIconLabel:"Sharing",mutedIconLabel:"Muted",displayNamePlaceholder:"Unnamed participant",participantStateConnecting:"Calling...",participantStateRinging:"Calling...",participantStateHold:"On hold"};var typingIndicator$c={singleUser:"{user} is typing ...",multipleUsers:"{users} are typing ...",multipleUsersAbbreviateOne:"{users} and 1 other are typing ...",multipleUsersAbbreviateMany:"{users} and {numOthers} others are typing ...",delimiter:", "};var sendBox$c={placeholderText:"Enter a message",textTooLong:"Your message length is over the maximum limit.",sendButtonAriaLabel:"Send message",fileUploadsPendingError:"Uploading... Please wait.",removeFile:"Remove file",uploading:"Uploading",uploadCompleted:"Upload completed"};var messageStatusIndicator$c={deliveredAriaLabel:"Message sent",deliveredTooltipText:"Sent",seenAriaLabel:"Message seen by others",seenTooltipText:"Seen",readByTooltipText:"Read by {messageThreadReadCount} of {remoteParticipantsCount}",sendingAriaLabel:"Message sending",sendingTooltipText:"Sending",failedToSendAriaLabel:"Message failed to send",failedToSendTooltipText:"Failed to send"};var endCallButton$c={label:"Leave",tooltipContent:"Leave call"};var cameraButton$c={onLabel:"Turn off",offLabel:"Turn on",tooltipDisabledContent:"Camera is disabled",tooltipOnContent:"Turn off camera",tooltipOffContent:"Turn on camera",tooltipVideoLoadingContent:"Video is loading",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",cameraButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Turn off camera and camera options",offSplitButtonAriaLabel:"Turn on camera and camera options",cameraActionTurnedOnAnnouncement:"Your camera has been turned on",cameraActionTurnedOffAnnouncement:"Your camera has been turned off"};var microphoneButton$c={onLabel:"Mute",offLabel:"Unmute",tooltipDisabledContent:"Microphone is disabled",tooltipOnContent:"Mute microphone",tooltipOffContent:"Unmute microphone",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker",microphoneButtonSplitRoleDescription:"Split button",onSplitButtonAriaLabel:"Mute microphone and audio options",offSplitButtonAriaLabel:"Unmute microphone and audio options",microphoneActionTurnedOnAnnouncement:"Your microphone has been turned on",microphoneActionTurnedOffAnnouncement:"Your microphone has been turned off"};var devicesButton$c={label:"Devices",tooltipContent:"Manage devices",cameraMenuTitle:"Camera",cameraMenuTooltip:"Choose camera",audioDeviceMenuTitle:"Audio Device",audioDeviceMenuTooltip:"Choose audio device",microphoneMenuTitle:"Microphone",microphoneMenuTooltip:"Choose microphone",speakerMenuTitle:"Speaker",speakerMenuTooltip:"Choose speaker"};var participantsButton$c={label:"People",tooltipContent:"Show participants",menuHeader:"In this call",participantsListButtonLabel:"{numParticipants} people",muteAllButtonLabel:"Mute all",copyInviteLinkButtonLabel:"Copy invite link"};var screenShareButton$c={onLabel:"Stop presenting",offLabel:"Present",tooltipDisabledContent:"Presenting is disabled",tooltipOnContent:"Presenting your screen",tooltipOffContent:"Present your screen"};var messageThread$c={yesterday:"Yesterday",sunday:"Sunday",monday:"Monday",tuesday:"Tuesday",wednesday:"Wednesday",thursday:"Thursday",friday:"Friday",saturday:"Saturday",participantJoined:"joined the chat.",participantLeft:"left the chat.",editMessage:"Edit",removeMessage:"Delete",resendMessage:"Try sending again",failToSendTag:"Failed to send",editedTag:"Edited",liveAuthorIntro:"{author} says",messageContentAriaText:"{author} said {message}",messageContentMineAriaText:"You said {message}",editBoxTextLimit:"Your message is over the limit of {limitNumber} characters",editBoxPlaceholderText:"Edit your message",newMessagesIndicator:"New messages",noDisplayNameSub:"No name",editBoxCancelButton:"Cancel",editBoxSubmitButton:"Submit",messageReadCount:"Read by {messageReadByCount} of {remoteParticipantsCount}",actionMenuMoreOptions:"More Options",downloadFile:"Download file"};var errorBar$c={unableToReachChatService:"You are offline",accessDenied:"Unable to access chat services - please check the user credentials provided",userNotInChatThread:"You are no longer in this chat thread",sendMessageNotInChatThread:"Failed to send message because you are no longer in this chat thread",sendMessageGeneric:"Failed to send message",callingNetworkFailure:"Troubling connecting call - you seem to be offline",startVideoGeneric:"Failed to start video",stopVideoGeneric:"Failed to stop video",muteGeneric:"Failed to mute microphone",unmuteGeneric:"Failed to unmute microphone",speakingWhileMuted:"Your microphone is muted",startScreenShareGeneric:"Failed to start screen sharing",stopScreenShareGeneric:"Failed to stop screen sharing",callNetworkQualityLow:"Network quality is low.",callNoSpeakerFound:"No speakers or headphones found. Connect an audio device to hear the call.",callNoMicrophoneFound:"No microphones found. Connect an audio input device.",callMicrophoneAccessDenied:"Unable to access microphone. Click the lock in the address bar to grant permission to this webpage.",callMicrophoneMutedBySystem:"You are muted by your system.",callMicrophoneUnmutedBySystem:"Your microphone recovered and you were unmuted by your system.",callMacOsMicrophoneAccessDenied:"Unable to access microphone. Grant microphone permission in your macOS privacy settings.",callLocalVideoFreeze:"Network bandwidth is poor. Your video may appear paused for others on the call.",callCameraAccessDenied:"Unable to access camera. Click the lock in the address bar to grant permission to this webpage.",callCameraAlreadyInUse:"Unable to access camera. It may already be in use by another application.",callVideoStoppedBySystem:"Your video has been stopped by your system.",callVideoRecoveredBySystem:"Your video has resumed.",callMacOsCameraAccessDenied:"MacOS is blocking access to your camera. Update your privacy settings to allow this browser to access your camera.",callMacOsScreenShareAccessDenied:"MacOS is blocking screen sharing. Update your privacy settings to allow this browser to record your screen.",dismissButtonAriaLabel:"Close",failedToJoinCallGeneric:"Failed to join call.",failedToJoinCallInvalidMeetingLink:"Unable to join Meeting. Invalid Link."};var videoGallery$c={screenIsBeingSharedMessage:"You are sharing your screen",screenShareLoadingMessage:"Loading {participant}'s screen",localVideoLabel:"You",localVideoCameraSwitcherLabel:"Switch camera",localVideoMovementLabel:"Movable Local Video Tile",localVideoSelectedDescription:"{cameraName} selected",displayNamePlaceholder:"Unnamed participant"};var dialpad$c={placeholderText:"Enter phone number",deleteButtonAriaLabel:"Delete"};var holdButton$c={onLabel:"Resume",offLabel:"Hold",tooltipOnContent:"Resume call",tooltipOffContent:"Hold call"};var videoTile$c={participantStateConnecting:"Calling...",participantStateRinging:"Calling...",participantStateHold:"On hold"};var DomainPermissions$c={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:"Allow Access"};var UnsupportedBrowser$d={primaryText:"Browser not supported",secondaryText:"Please join this call using a compatible browser.",moreHelpLink:"More help"};var BrowserPermissionDenied$c={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$c={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 en_GB$1 = {participantItem:participantItem$c,typingIndicator:typingIndicator$c,sendBox:sendBox$c,messageStatusIndicator:messageStatusIndicator$c,endCallButton:endCallButton$c,cameraButton:cameraButton$c,microphoneButton:microphoneButton$c,devicesButton:devicesButton$c,participantsButton:participantsButton$c,screenShareButton:screenShareButton$c,messageThread:messageThread$c,errorBar:errorBar$c,videoGallery:videoGallery$c,dialpad:dialpad$c,holdButton:holdButton$c,videoTile:videoTile$c,DomainPermissions:DomainPermissions$c,UnsupportedBrowser:UnsupportedBrowser$d,BrowserPermissionDenied:BrowserPermissionDenied$c,BrowserPermissionDeniedIOS:BrowserPermissionDeniedIOS$c};
3922
3946
 
@@ -4952,7 +4976,7 @@ const DomainPermissionsCameraDenied20Filled = () => {
4952
4976
  const DomainPermissionSparkle20Filled = () => (React__default['default'].createElement("div", { className: react.mergeStyles({ transform: 'scale(2)' }) },
4953
4977
  React__default['default'].createElement(reactIcons.Sparkle20Filled, null)));
4954
4978
  /* @conditional-compile-remove(unsupported-browser) */
4955
- const UnsupportedBrowserWarning = () => {
4979
+ const UnsupportedEnvironmentWarning = () => {
4956
4980
  const theme = useTheme();
4957
4981
  return (React__default['default'].createElement(react.Stack, { horizontalAlign: 'center', styles: {
4958
4982
  root: {
@@ -5051,7 +5075,7 @@ const DEFAULT_COMPONENT_ICONS = {
5051
5075
  /* @conditional-compile-remove(call-readiness) */
5052
5076
  DomainPermissionMicDenied: React__default['default'].createElement(DomainPermissionsMicDenied20Filled, null),
5053
5077
  /* @conditional-compile-remove(unsupported-browser) */
5054
- UnsupportedBrowserWarning: React__default['default'].createElement(UnsupportedBrowserWarning, null),
5078
+ UnsupportedEnvironmentWarning: React__default['default'].createElement(UnsupportedEnvironmentWarning, null),
5055
5079
  /* @conditional-compile-remove(call-readiness) */
5056
5080
  BrowserPermissionDeniedError: React__default['default'].createElement(BrowserPermissionDenied20Filled, null),
5057
5081
  /* @conditional-compile-remove(pinned-participants) */
@@ -11444,7 +11468,8 @@ const secondaryTextStyles = {
11444
11468
  root: {
11445
11469
  margin: 'auto',
11446
11470
  fontWeight: 400,
11447
- paddingBottom: '0.5rem'
11471
+ paddingBottom: '0.5rem',
11472
+ textAlign: 'center'
11448
11473
  }
11449
11474
  };
11450
11475
  /**
@@ -11476,26 +11501,47 @@ const iconStyles$1 = {
11476
11501
 
11477
11502
  // Copyright (c) Microsoft Corporation.
11478
11503
  /* @conditional-compile-remove(unsupported-browser) */
11479
- const UnsupportedBrowserContainer = (props) => {
11504
+ const UnsupportedEnvironmentContainer = (props) => {
11480
11505
  const { onTroubleshootingClick, strings } = props;
11481
11506
  return (React__default['default'].createElement(react.Stack, { styles: containerStyles$2 },
11482
- React__default['default'].createElement(react.Icon, { styles: iconStyles$1, iconName: "UnsupportedBrowserWarning", "data-ui-id": "unsupportedBrowserIcon" }),
11507
+ React__default['default'].createElement(react.Icon, { styles: iconStyles$1, iconName: "UnsupportedEnvironmentWarning", "data-ui-id": "unsupported-environment-icon" }),
11483
11508
  React__default['default'].createElement(react.Text, { styles: mainTextStyles }, strings.primaryText),
11484
11509
  React__default['default'].createElement(react.Text, { styles: secondaryTextStyles }, strings.secondaryText),
11485
11510
  onTroubleshootingClick && (React__default['default'].createElement(react.Link, { styles: linkTextStyles, onClick: () => {
11486
11511
  onTroubleshootingClick();
11487
- }, "data-ui-id": "unsupportedBrowserLink" }, strings.moreHelpLink))));
11512
+ }, "data-ui-id": "unsupported-environment-link" }, strings.moreHelpText))));
11488
11513
  };
11489
11514
  /**
11490
11515
  * UI to display to the user that the browser they are using is not supported by calling application.
11491
11516
  *
11517
+ * @private
11518
+ */
11519
+ const UnsupportedEnvironment = (props) => {
11520
+ /* @conditional-compile-remove(unsupported-browser) */
11521
+ return React__default['default'].createElement(UnsupportedEnvironmentContainer, Object.assign({}, props));
11522
+ };
11523
+
11524
+ // Copyright (c) Microsoft Corporation.
11525
+ /**
11526
+ * UI to display to the user that the browser they are using is not supported by Azure Communications Calling service.
11527
+ *
11492
11528
  * @beta
11493
11529
  */
11494
11530
  const UnsupportedBrowser = (props) => {
11495
- /* @conditional-compile-remove(unsupported-browser) */
11496
- const strings = useLocale$1().strings.UnsupportedBrowser;
11497
- /* @conditional-compile-remove(unsupported-browser) */
11498
- return React__default['default'].createElement(UnsupportedBrowserContainer, Object.assign({}, props, { strings: strings }));
11531
+ const { onTroubleshootingClick, strings } = props;
11532
+ return React__default['default'].createElement(UnsupportedEnvironment, { onTroubleshootingClick: onTroubleshootingClick, strings: strings });
11533
+ };
11534
+
11535
+ // Copyright (c) Microsoft Corporation.
11536
+ /**
11537
+ * UI to display to the user that the browser version they are using is out of date
11538
+ * and not supported by Azure Communications Calling service.
11539
+ *
11540
+ * @beta
11541
+ */
11542
+ const UnsupportedBrowserVersion = (props) => {
11543
+ const { onTroubleshootingClick, strings } = props;
11544
+ return React__default['default'].createElement(UnsupportedEnvironment, { onTroubleshootingClick: onTroubleshootingClick, strings: strings });
11499
11545
  };
11500
11546
 
11501
11547
  // Copyright (c) Microsoft Corporation.
@@ -15755,7 +15801,7 @@ const getCallEndReason = (call) => {
15755
15801
  */
15756
15802
  const getCallCompositePage = (call, previousCall, environmentInfo, features) => {
15757
15803
  /* @conditional-compile-remove(unsupported-browser) */
15758
- if ((features === null || features === void 0 ? void 0 : features.unsupportedEnvironment) && (environmentInfo === null || environmentInfo === void 0 ? void 0 : environmentInfo.isSupportedBrowser) === false) {
15804
+ if (isUnsupportedEnvironment(features, environmentInfo)) {
15759
15805
  return 'unsupportedEnvironment';
15760
15806
  }
15761
15807
  if (call) {
@@ -15889,6 +15935,11 @@ const getDevicePermissionState = (setVideoState, setAudioState) => {
15889
15935
  setAudioState('unsupported');
15890
15936
  });
15891
15937
  };
15938
+ /* @conditional-compile-remove(unsupported-browser) */
15939
+ const isUnsupportedEnvironment = (features, environmentInfo) => {
15940
+ return !!((features === null || features === void 0 ? void 0 : features.unsupportedEnvironment) &&
15941
+ ((environmentInfo === null || environmentInfo === void 0 ? void 0 : environmentInfo.isSupportedBrowser) === false || (environmentInfo === null || environmentInfo === void 0 ? void 0 : environmentInfo.isSupportedBrowserVersion) === false));
15942
+ };
15892
15943
 
15893
15944
  // Copyright (c) Microsoft Corporation.
15894
15945
  // Licensed under the MIT license.
@@ -19321,16 +19372,23 @@ const HoldPage = (props) => {
19321
19372
  */
19322
19373
  const UnsupportedBrowserPage = (props) => {
19323
19374
  /* @conditional-compile-remove(unsupported-browser) */
19324
- const { onTroubleshootingClick } = props;
19375
+ const { onTroubleshootingClick, environmentInfo } = props;
19325
19376
  /* @conditional-compile-remove(unsupported-browser) */
19326
19377
  const locale = useLocale();
19327
19378
  /* @conditional-compile-remove(unsupported-browser) */
19328
19379
  const unsupportedBrowserStrings = locale.component.strings.UnsupportedBrowser;
19329
19380
  /* @conditional-compile-remove(unsupported-browser) */
19330
- return (React__default['default'].createElement(react.Stack, { styles: containerStyles },
19331
- React__default['default'].createElement(UnsupportedBrowser, { onTroubleshootingClick: onTroubleshootingClick, strings: unsupportedBrowserStrings })));
19381
+ const unsupportedBrowserVersionStrings = locale.component.strings.UnsupportedBrowserVersion;
19382
+ let pageElement = React__default['default'].createElement(React__default['default'].Fragment, null);
19383
+ /* @conditional-compile-remove(unsupported-browser) */
19384
+ if (!(environmentInfo === null || environmentInfo === void 0 ? void 0 : environmentInfo.isSupportedBrowser)) {
19385
+ pageElement = (React__default['default'].createElement(UnsupportedBrowser, { onTroubleshootingClick: onTroubleshootingClick, strings: unsupportedBrowserStrings }));
19386
+ }
19387
+ else if (!(environmentInfo === null || environmentInfo === void 0 ? void 0 : environmentInfo.isSupportedBrowserVersion)) {
19388
+ pageElement = (React__default['default'].createElement(UnsupportedBrowserVersion, { onTroubleshootingClick: onTroubleshootingClick, strings: unsupportedBrowserVersionStrings }));
19389
+ }
19390
+ return React__default['default'].createElement(react.Stack, { styles: containerStyles }, pageElement);
19332
19391
  };
19333
- /* @conditional-compile-remove(unsupported-browser) */
19334
19392
  const containerStyles = {
19335
19393
  root: {
19336
19394
  margin: 'auto',
@@ -19414,7 +19472,7 @@ const MainScreen = (props) => {
19414
19472
  case 'unsupportedEnvironment':
19415
19473
  pageElement = (React__default['default'].createElement(React__default['default'].Fragment, null,
19416
19474
  /* @conditional-compile-remove(unsupported-browser) */
19417
- React__default['default'].createElement(UnsupportedBrowserPage, { onTroubleshootingClick: (_e = props.options) === null || _e === void 0 ? void 0 : _e.onEnvironmentInfoTroubleshootingClick })));
19475
+ React__default['default'].createElement(UnsupportedBrowserPage, { onTroubleshootingClick: (_e = props.options) === null || _e === void 0 ? void 0 : _e.onEnvironmentInfoTroubleshootingClick, environmentInfo: adapter.getState().environmentInfo })));
19418
19476
  break;
19419
19477
  }
19420
19478
  if (!pageElement) {
@@ -19692,7 +19750,6 @@ class AzureCommunicationCallAdapter {
19692
19750
  isMuted: (_a = this.call) === null || _a === void 0 ? void 0 : _a.isMuted
19693
19751
  });
19694
19752
  };
19695
- console.log(options);
19696
19753
  this.bindPublicMethods();
19697
19754
  this.callClient = callClient;
19698
19755
  this.callAgent = callAgent;
@@ -22370,6 +22427,7 @@ exports.SendBox = SendBox;
22370
22427
  exports.StreamMedia = StreamMedia;
22371
22428
  exports.TypingIndicator = TypingIndicator;
22372
22429
  exports.UnsupportedBrowser = UnsupportedBrowser;
22430
+ exports.UnsupportedBrowserVersion = UnsupportedBrowserVersion;
22373
22431
  exports.VideoGallery = VideoGallery;
22374
22432
  exports.VideoTile = VideoTile;
22375
22433
  exports._DevicePermissionDropdown = _DevicePermissionDropdown;