@azure/communication-react 1.12.1-alpha-202401310012 → 1.13.0-alpha-202402020012

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 (86) hide show
  1. package/dist/communication-react.d.ts +14 -10
  2. package/dist/dist-cjs/communication-react/index.js +85 -183
  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/utils/videoGalleryUtils.js +0 -2
  7. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  8. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  9. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +0 -1
  10. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  11. package/dist/dist-esm/calling-stateful-client/src/Converter.js +0 -1
  12. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  13. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js +0 -3
  14. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js.map +1 -1
  15. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +13 -11
  16. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
  17. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js +2 -2
  18. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js.map +1 -1
  19. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js +3 -2
  20. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js.map +1 -1
  21. package/dist/dist-esm/communication-react/src/index.d.ts +1 -2
  22. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  23. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +1 -1
  24. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
  25. package/dist/dist-esm/react-components/src/components/FileDownloadCards.d.ts +0 -4
  26. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js.map +1 -1
  27. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +6 -28
  28. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  29. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js +1 -1
  30. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js.map +1 -1
  31. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js +1 -1
  32. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js.map +1 -1
  33. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js +1 -1
  34. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js.map +1 -1
  35. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js +0 -1
  36. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js.map +1 -1
  37. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.js +1 -1
  38. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.js.map +1 -1
  39. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js +1 -6
  40. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js.map +1 -1
  41. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +0 -3
  42. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  43. package/dist/dist-esm/react-components/src/components/VideoGallery.js +13 -57
  44. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  45. package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +1 -2
  46. package/dist/dist-esm/react-components/src/components/VideoTile.js +4 -35
  47. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  48. package/dist/dist-esm/react-components/src/components/index.d.ts +1 -2
  49. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  50. package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.d.ts +1 -1
  51. package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.js +5 -3
  52. package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.js.map +1 -1
  53. package/dist/dist-esm/react-components/src/theming/icons.js +1 -9
  54. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  55. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
  56. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  57. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +8 -0
  58. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  59. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +1 -5
  60. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  61. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.d.ts +1 -2
  62. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
  63. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +2 -6
  64. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  65. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts +4 -0
  66. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +16 -3
  67. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  68. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +1 -5
  69. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  70. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +3 -3
  71. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +3 -3
  72. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  73. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +3 -3
  74. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  75. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts +3 -3
  76. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js +2 -2
  77. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  78. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +3 -3
  79. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  80. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +3 -3
  81. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +5 -9
  82. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  83. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +3 -3
  84. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  85. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-US/strings.json +2 -0
  86. package/package.json +1 -1
@@ -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.12.1-alpha-202401310012';
176
+ var telemetryVersion = '1.13.0-alpha-202402020012';
177
177
 
178
178
 
179
179
  var telemetryVersion$1 = /*@__PURE__*/getDefaultExportFromCjs(telemetryVersion);
@@ -1719,7 +1719,6 @@ function convertSdkRemoteStreamToDeclarativeRemoteStream(stream) {
1719
1719
  /* @conditional-compile-remove(video-stream-is-receiving-flag) */
1720
1720
  isReceiving: stream.isReceiving,
1721
1721
  view: undefined,
1722
- /* @conditional-compile-remove(pinned-participants) */
1723
1722
  streamSize: stream.size
1724
1723
  };
1725
1724
  }
@@ -2382,7 +2381,6 @@ let CallContext$2 = class CallContext {
2382
2381
  }
2383
2382
  });
2384
2383
  }
2385
- /* @conditional-compile-remove(pinned-participants) */
2386
2384
  setRemoteVideoStreamSize(callId, participantKey, streamId, size) {
2387
2385
  this.modifyState((draft) => {
2388
2386
  const call = draft.calls[this._callIdHistory.latestCallId(callId)];
@@ -2852,7 +2850,6 @@ class RemoteVideoStreamSubscriber {
2852
2850
  this._remoteVideoStream.on('isAvailableChanged', this.isAvailableChanged);
2853
2851
  /* @conditional-compile-remove(video-stream-is-receiving-flag) */
2854
2852
  this._remoteVideoStream.on('isReceivingChanged', this.isReceivingChanged);
2855
- /* @conditional-compile-remove(pinned-participants) */
2856
2853
  this._remoteVideoStream.on('sizeChanged', this.isSizeChanged);
2857
2854
  this.checkAndUpdateScreenShareState();
2858
2855
  };
@@ -2860,7 +2857,6 @@ class RemoteVideoStreamSubscriber {
2860
2857
  this._remoteVideoStream.off('isAvailableChanged', this.isAvailableChanged);
2861
2858
  /* @conditional-compile-remove(video-stream-is-receiving-flag) */
2862
2859
  this._remoteVideoStream.off('isReceivingChanged', this.isReceivingChanged);
2863
- /* @conditional-compile-remove(pinned-participants) */
2864
2860
  this._remoteVideoStream.off('sizeChanged', this.isSizeChanged);
2865
2861
  };
2866
2862
  this.includesActiveScreenShareStream = (streams) => {
@@ -2914,7 +2910,6 @@ class RemoteVideoStreamSubscriber {
2914
2910
  this.isReceivingChanged = () => {
2915
2911
  this._context.setRemoteVideoStreamIsReceiving(this._callIdRef.callId, this._participantKey, this._remoteVideoStream.id, this._remoteVideoStream.isReceiving);
2916
2912
  };
2917
- /* @conditional-compile-remove(pinned-participants) */
2918
2913
  this.isSizeChanged = () => {
2919
2914
  var _a, _b, _c, _d, _e, _f, _g;
2920
2915
  if (((_a = this._remoteVideoStream) === null || _a === void 0 ? void 0 : _a.size.width) === 0 && ((_b = this._remoteVideoStream) === null || _b === void 0 ? void 0 : _b.size.height) === 0) {
@@ -6444,17 +6439,11 @@ const DEFAULT_COMPONENT_ICONS = {
6444
6439
  UnsupportedEnvironmentWarning: React.createElement(UnsupportedEnvironmentWarning, null),
6445
6440
  /* @conditional-compile-remove(call-readiness) */
6446
6441
  BrowserPermissionDeniedError: React.createElement(BrowserPermissionDenied20Filled, null),
6447
- /* @conditional-compile-remove(pinned-participants) */
6448
6442
  VideoTilePinned: React.createElement(reactIcons.Pin16Filled, null),
6449
- /* @conditional-compile-remove(pinned-participants) */
6450
6443
  VideoTileMoreOptions: React.createElement(reactIcons.MoreHorizontal20Filled, null),
6451
- /* @conditional-compile-remove(pinned-participants) */
6452
6444
  VideoTileScaleFit: React.createElement(reactIcons.ScaleFit20Regular, null),
6453
- /* @conditional-compile-remove(pinned-participants) */
6454
6445
  VideoTileScaleFill: React.createElement(reactIcons.ScaleFill20Regular, null),
6455
- /* @conditional-compile-remove(pinned-participants) */
6456
6446
  PinParticipant: React.createElement(reactIcons.Pin16Regular, null),
6457
- /* @conditional-compile-remove(pinned-participants) */
6458
6447
  UnpinParticipant: React.createElement(reactIcons.PinOff16Regular, null),
6459
6448
  SplitButtonPrimaryActionCameraOn: React.createElement(reactIcons.Video20Filled, null),
6460
6449
  SplitButtonPrimaryActionCameraOff: React.createElement(reactIcons.VideoOff20Filled, null),
@@ -12777,12 +12766,8 @@ const useVideoTileContextualMenuProps = (props) => {
12777
12766
  /* @conditional-compile-remove(spotlight) */ onStopSpotlight } = props;
12778
12767
  const scalingMode = React.useMemo(() => {
12779
12768
  var _a;
12780
- /* @conditional-compile-remove(pinned-participants) */
12781
12769
  return (_a = props.remoteParticipant.videoStream) === null || _a === void 0 ? void 0 : _a.scalingMode;
12782
- }, [
12783
- /* @conditional-compile-remove(pinned-participants) */
12784
- (_a = props.remoteParticipant.videoStream) === null || _a === void 0 ? void 0 : _a.scalingMode
12785
- ]);
12770
+ }, [(_a = props.remoteParticipant.videoStream) === null || _a === void 0 ? void 0 : _a.scalingMode]);
12786
12771
  const contextualMenuProps = React.useMemo(() => {
12787
12772
  const items = [];
12788
12773
  if (isPinned !== undefined) {
@@ -13379,7 +13364,6 @@ const _useOrganizedParticipants = (props) => {
13379
13364
  const overflowGalleryParticipants = getOverflowGalleryRemoteParticipants();
13380
13365
  return { gridParticipants, overflowGalleryParticipants: overflowGalleryParticipants };
13381
13366
  };
13382
- /* @conditional-compile-remove(pinned-participants) */
13383
13367
  const _useOrganizedParticipantsWithFocusedParticipants = (props) => {
13384
13368
  var _a, _b;
13385
13369
  // map remote participants by userId
@@ -13438,7 +13422,6 @@ const putVideoParticipantsFirst = (remoteParticipants) => {
13438
13422
  * @private
13439
13423
  */
13440
13424
  const useOrganizedParticipants = (args) => {
13441
- /* @conditional-compile-remove(pinned-participants) */
13442
13425
  return _useOrganizedParticipantsWithFocusedParticipants(args);
13443
13426
  };
13444
13427
  /* @conditional-compile-remove(reaction) */
@@ -13474,15 +13457,12 @@ const DefaultPlaceholder = (props) => {
13474
13457
  React.createElement(react.Stack, { styles: defaultPersonaStyles$1 }, coinSize && (React.createElement(react.Persona, { coinSize: coinSize, hidePersonaDetails: hidePersonaDetails, text: text !== null && text !== void 0 ? text : '', initialsTextColor: "white", "aria-label": noVideoAvailableAriaLabel !== null && noVideoAvailableAriaLabel !== void 0 ? noVideoAvailableAriaLabel : '', showOverflowTooltip: false })))));
13475
13458
  };
13476
13459
  const defaultPersonaStyles$1 = { root: { margin: 'auto', maxHeight: '100%' } };
13477
- /* @conditional-compile-remove(pinned-participants) */
13478
13460
  const videoTileMoreMenuIconProps = { iconName: undefined, style: { display: 'none' } };
13479
- /* @conditional-compile-remove(pinned-participants) */
13480
13461
  const videoTileMoreMenuProps = {
13481
13462
  directionalHint: react.DirectionalHint.topLeftEdge,
13482
13463
  isBeakVisible: false,
13483
13464
  styles: { container: { maxWidth: '8rem' } }
13484
13465
  };
13485
- /* @conditional-compile-remove(pinned-participants) */
13486
13466
  const VideoTileMoreOptionsButton = (props) => {
13487
13467
  const { contextualMenu, canShowContextMenuButton } = props;
13488
13468
  if (!contextualMenu) {
@@ -13501,20 +13481,14 @@ const VideoTileMoreOptionsButton = (props) => {
13501
13481
  const VideoTile = (props) => {
13502
13482
  const { children, displayName, initialsName, isMirrored, isMuted,
13503
13483
  /* @conditional-compile-remove(spotlight) */
13504
- isSpotlighted,
13505
- /* @conditional-compile-remove(pinned-participants) */
13506
- isPinned, onRenderPlaceholder, renderElement, showLabel = true, showMuteIndicator = true, styles, userId, noVideoAvailableAriaLabel, isSpeaking,
13484
+ isSpotlighted, isPinned, onRenderPlaceholder, renderElement, showLabel = true, showMuteIndicator = true, styles, userId, noVideoAvailableAriaLabel, isSpeaking,
13507
13485
  /* @conditional-compile-remove(raise-hand) */
13508
13486
  raisedHand,
13509
13487
  /* @conditional-compile-remove(reaction) */
13510
- reaction, personaMinSize = DEFAULT_PERSONA_MIN_SIZE_PX, personaMaxSize = DEFAULT_PERSONA_MAX_SIZE_PX,
13511
- /* @conditional-compile-remove(pinned-participants) */
13512
- contextualMenu,
13488
+ reaction, personaMinSize = DEFAULT_PERSONA_MIN_SIZE_PX, personaMaxSize = DEFAULT_PERSONA_MAX_SIZE_PX, contextualMenu,
13513
13489
  /* @conditional-compile-remove(reaction) */
13514
13490
  reactionResources } = props;
13515
- /* @conditional-compile-remove(pinned-participants) */
13516
13491
  const [isHovered, setIsHovered] = React.useState(false);
13517
- /* @conditional-compile-remove(pinned-participants) */
13518
13492
  const [isFocused, setIsFocused] = React.useState(false);
13519
13493
  // need to set a default otherwise the resizeObserver will get stuck in an infinite loop.
13520
13494
  const [personaSize, setPersonaSize] = React.useState(1);
@@ -13539,7 +13513,6 @@ const VideoTile = (props) => {
13539
13513
  const currentObserver = observer.current;
13540
13514
  return () => currentObserver.disconnect();
13541
13515
  }, [videoTileRef]);
13542
- /* @conditional-compile-remove(pinned-participants) */
13543
13516
  const useLongPressProps = React.useMemo(() => {
13544
13517
  return {
13545
13518
  onLongPress: () => {
@@ -13550,17 +13523,8 @@ const VideoTile = (props) => {
13550
13523
  };
13551
13524
  // eslint-disable-next-line react-hooks/exhaustive-deps
13552
13525
  }, [props.onLongTouch]);
13553
- /* @conditional-compile-remove(pinned-participants) */
13554
13526
  const longPressHandlers = useLongPress(useLongPressProps);
13555
- const longPressHandlersTrampoline = React.useMemo(() => {
13556
- /* @conditional-compile-remove(pinned-participants) */
13557
- return longPressHandlers;
13558
- }, [
13559
- /* @conditional-compile-remove(pinned-participants) */
13560
- longPressHandlers
13561
- ]);
13562
13527
  const hoverHandlers = React.useMemo(() => {
13563
- /* @conditional-compile-remove(pinned-participants) */
13564
13528
  return {
13565
13529
  onMouseEnter: () => setIsHovered(true),
13566
13530
  onMouseLeave: () => setIsHovered(false),
@@ -13581,7 +13545,6 @@ const VideoTile = (props) => {
13581
13545
  const ids = useIdentifiers();
13582
13546
  const canShowLabel = showLabel && (displayName || (showMuteIndicator && isMuted));
13583
13547
  const participantStateString = participantStateStringTrampoline(props, locale);
13584
- /* @conditional-compile-remove(pinned-participants) */
13585
13548
  const canShowContextMenuButton = isHovered || isFocused;
13586
13549
  let raisedHandBackgroundColor = '';
13587
13550
  /* @conditional-compile-remove(raise-hand) */
@@ -13631,7 +13594,7 @@ const VideoTile = (props) => {
13631
13594
  height: '100%',
13632
13595
  pointerEvents: 'none'
13633
13596
  }
13634
- }, styles === null || styles === void 0 ? void 0 : styles.root) }, longPressHandlersTrampoline),
13597
+ }, styles === null || styles === void 0 ? void 0 : styles.root) }, longPressHandlers),
13635
13598
  React.createElement("div", Object.assign({ ref: videoTileRef, style: { width: '100%', height: '100%' } }, hoverHandlers, { "data-is-focusable": true }),
13636
13599
  isVideoRendered ? (React.createElement(react.Stack, { className: react.mergeStyles(videoContainerStyles, isMirrored && { transform: 'scaleX(-1)' }, styles === null || styles === void 0 ? void 0 : styles.videoContainer) }, renderElement)) : (React.createElement(react.Stack, { className: react.mergeStyles(videoContainerStyles, {
13637
13600
  opacity: participantStateString ||
@@ -13658,10 +13621,8 @@ const VideoTile = (props) => {
13658
13621
  /* @conditional-compile-remove(spotlight) */
13659
13622
  isSpotlighted && (React.createElement(react.Stack, { className: react.mergeStyles(iconContainerStyle) },
13660
13623
  React.createElement(react.Icon, { iconName: "VideoSpotlighted" }))),
13661
- /* @conditional-compile-remove(pinned-participants) */
13662
13624
  isPinned && (React.createElement(react.Stack, { className: react.mergeStyles(iconContainerStyle) },
13663
13625
  React.createElement(react.Icon, { iconName: "VideoTilePinned", className: react.mergeStyles(pinIconStyle) }))),
13664
- /* @conditional-compile-remove(pinned-participants) */
13665
13626
  React.createElement(VideoTileMoreOptionsButton, { contextualMenu: contextualMenu, canShowContextMenuButton: canShowContextMenuButton })))),
13666
13627
  children && (React.createElement(react.Stack, { className: react.mergeStyles(overlayContainerStyles, styles === null || styles === void 0 ? void 0 : styles.overlayContainer) }, children)),
13667
13628
  /* @conditional-compile-remove(raise-hand) */ raisedHand && (React.createElement(react.Stack, { horizontal: true, tokens: { childrenGap: '0.2rem' }, className: raiseHandContainerStyles(theme, !canShowLabel) },
@@ -13735,7 +13696,6 @@ const _RemoteVideoTile = React.memo((props) => {
13735
13696
  const contextualMenuProps = useVideoTileContextualMenuProps({
13736
13697
  remoteParticipant,
13737
13698
  view: createVideoStreamResult === null || createVideoStreamResult === void 0 ? void 0 : createVideoStreamResult.view,
13738
- /* @conditional-compile-remove(pinned-participants) */
13739
13699
  strings: Object.assign({}, props.strings),
13740
13700
  isPinned,
13741
13701
  onPinParticipant,
@@ -13749,10 +13709,12 @@ const _RemoteVideoTile = React.memo((props) => {
13749
13709
  /* @conditional-compile-remove(spotlight) */ onStopSpotlight
13750
13710
  });
13751
13711
  const videoTileContextualMenuProps = React.useMemo(() => {
13752
- if (menuKind !== 'contextual') {
13712
+ if (menuKind !== 'contextual' || !contextualMenuProps) {
13753
13713
  return {};
13754
13714
  }
13755
- return videoTileContextualMenuPropsTrampoline(contextualMenuProps);
13715
+ return {
13716
+ contextualMenu: contextualMenuProps
13717
+ };
13756
13718
  }, [contextualMenuProps, menuKind]);
13757
13719
  const showLoadingIndicator = isAvailable && isReceiving === false && participantState !== 'Disconnected';
13758
13720
  const [drawerMenuItemProps, setDrawerMenuItemProps] = React.useState([]);
@@ -13765,7 +13727,6 @@ const _RemoteVideoTile = React.memo((props) => {
13765
13727
  }
13766
13728
  return (React.createElement(StreamMedia, { videoStreamElement: renderElement, loadingState: showLoadingIndicator ? 'loading' : 'none' }));
13767
13729
  }, [renderElement, showLoadingIndicator]);
13768
- /* @conditional-compile-remove(pinned-participants) */
13769
13730
  const onKeyDown = React.useCallback((e) => {
13770
13731
  if (e.key === 'Enter') {
13771
13732
  setDrawerMenuItemProps(convertContextualMenuItemsToDrawerMenuItemProps(contextualMenuProps, () => setDrawerMenuItemProps([])));
@@ -13783,13 +13744,7 @@ const _RemoteVideoTile = React.memo((props) => {
13783
13744
  };
13784
13745
  /* @conditional-compile-remove(hide-attendee-name) */
13785
13746
  displayName = formatDisplayName();
13786
- return (React.createElement(react.Stack
13787
- /* @conditional-compile-remove(pinned-participants) */
13788
- , {
13789
- /* @conditional-compile-remove(pinned-participants) */
13790
- tabIndex: menuKind === 'drawer' ? 0 : undefined,
13791
- /* @conditional-compile-remove(pinned-participants) */
13792
- onKeyDown: menuKind === 'drawer' ? onKeyDown : undefined, style: remoteVideoTileWrapperStyle },
13747
+ return (React.createElement(react.Stack, { tabIndex: menuKind === 'drawer' ? 0 : undefined, onKeyDown: menuKind === 'drawer' ? onKeyDown : undefined, style: remoteVideoTileWrapperStyle },
13793
13748
  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,
13794
13749
  /* @conditional-compile-remove(raise-hand) */
13795
13750
  raisedHand: remoteParticipant.raisedHand,
@@ -13797,11 +13752,7 @@ const _RemoteVideoTile = React.memo((props) => {
13797
13752
  reaction: remoteParticipant.reaction, isSpeaking: remoteParticipant.isSpeaking, showMuteIndicator: showMuteIndicator, personaMinSize: props.personaMinSize, showLabel: props.showLabel,
13798
13753
  /* @conditional-compile-remove(one-to-n-calling) */
13799
13754
  /* @conditional-compile-remove(PSTN-calls) */
13800
- participantState: participantState }, videoTileContextualMenuProps, {
13801
- /* @conditional-compile-remove(pinned-participants) */
13802
- isPinned: props.isPinned,
13803
- /* @conditional-compile-remove(pinned-participants) */
13804
- onLongTouch: () => setDrawerMenuItemProps(convertContextualMenuItemsToDrawerMenuItemProps(contextualMenuProps, () => setDrawerMenuItemProps([]))),
13755
+ participantState: participantState }, videoTileContextualMenuProps, { isPinned: props.isPinned, onLongTouch: () => setDrawerMenuItemProps(convertContextualMenuItemsToDrawerMenuItemProps(contextualMenuProps, () => setDrawerMenuItemProps([]))),
13805
13756
  /* @conditional-compile-remove(spotlight) */
13806
13757
  isSpotlighted: isSpotlighted,
13807
13758
  /* @conditional-compile-remove(reaction) */
@@ -13810,16 +13761,6 @@ const _RemoteVideoTile = React.memo((props) => {
13810
13761
  React.createElement(react.Stack, { styles: drawerMenuWrapperStyles },
13811
13762
  React.createElement(_DrawerMenu, { onLightDismiss: () => setDrawerMenuItemProps([]), items: drawerMenuItemProps, heading: remoteParticipant.displayName }))))));
13812
13763
  });
13813
- const videoTileContextualMenuPropsTrampoline = (contextualMenuProps) => {
13814
- if (!contextualMenuProps) {
13815
- return {};
13816
- }
13817
- /* @conditional-compile-remove(pinned-participants) */
13818
- return {
13819
- contextualMenu: contextualMenuProps
13820
- };
13821
- };
13822
- /* @conditional-compile-remove(pinned-participants) */
13823
13764
  const convertContextualMenuItemsToDrawerMenuItemProps = (contextualMenuProps, onLightDismiss) => {
13824
13765
  if (!contextualMenuProps) {
13825
13766
  return [];
@@ -14929,7 +14870,6 @@ const OverflowGallery = (props) => {
14929
14870
  if (overflowGalleryPosition === 'verticalRight') {
14930
14871
  return (React.createElement(ResponsiveVerticalGallery, { key: "responsive-vertical-gallery", containerStyles: containerStyles, verticalGalleryStyles: galleryStyles, controlBarHeightRem: HORIZONTAL_GALLERY_BUTTON_WIDTH, gapHeightRem: HORIZONTAL_GALLERY_GAP, isShort: isShort, onFetchTilesToRender: onFetchTilesToRender, onChildrenPerPageChange: onChildrenPerPageChange }, overflowGalleryElements ? overflowGalleryElements : [React.createElement(React.Fragment, null)]));
14931
14872
  }
14932
- /* @conditional-compile-remove(pinned-participants) */
14933
14873
  if (isNarrow) {
14934
14874
  // There are no pages for ScrollableHorizontalGallery so we will approximate the first 3 remote
14935
14875
  // participant tiles are visible
@@ -14969,7 +14909,7 @@ const DefaultLayout = (props) => {
14969
14909
  maxOverflowGalleryDominantSpeakers: screenShareComponent
14970
14910
  ? childrenPerPage.current - ((pinnedParticipantUserIds.length + 1) % childrenPerPage.current)
14971
14911
  : childrenPerPage.current,
14972
- /* @conditional-compile-remove(pinned-participants) */ pinnedParticipantUserIds,
14912
+ pinnedParticipantUserIds,
14973
14913
  /* @conditional-compile-remove(gallery-layouts) */ layout: 'default',
14974
14914
  /* @conditional-compile-remove(spotlight) */ spotlightedParticipantUserIds
14975
14915
  });
@@ -15810,7 +15750,7 @@ const FloatingLocalVideoLayout = (props) => {
15810
15750
  maxOverflowGalleryDominantSpeakers: screenShareComponent
15811
15751
  ? childrenPerPage.current - (pinnedParticipantUserIds.length % childrenPerPage.current)
15812
15752
  : childrenPerPage.current,
15813
- /* @conditional-compile-remove(pinned-participants) */ pinnedParticipantUserIds,
15753
+ pinnedParticipantUserIds,
15814
15754
  /* @conditional-compile-remove(gallery-layouts) */ layout: 'floatingLocalVideo',
15815
15755
  /* @conditional-compile-remove(spotlight) */ spotlightedParticipantUserIds
15816
15756
  });
@@ -15947,7 +15887,7 @@ const SpeakerVideoLayout = (props) => {
15947
15887
  maxOverflowGalleryDominantSpeakers: screenShareComponent
15948
15888
  ? childrenPerPage.current - (pinnedParticipantUserIds.length % childrenPerPage.current)
15949
15889
  : childrenPerPage.current,
15950
- /* @conditional-compile-remove(pinned-participants) */ pinnedParticipantUserIds,
15890
+ pinnedParticipantUserIds,
15951
15891
  /* @conditional-compile-remove(gallery-layouts) */ layout: 'speaker'
15952
15892
  });
15953
15893
  let activeVideoStreams = 0;
@@ -16104,7 +16044,7 @@ const LargeGalleryLayout = (props) => {
16104
16044
  maxOverflowGalleryDominantSpeakers: screenShareComponent
16105
16045
  ? childrenPerPage.current - ((pinnedParticipantUserIds.length + 1) % childrenPerPage.current)
16106
16046
  : childrenPerPage.current,
16107
- /* @conditional-compile-remove(pinned-participants) */ pinnedParticipantUserIds,
16047
+ pinnedParticipantUserIds,
16108
16048
  /* @conditional-compile-remove(large-gallery) */ layout: 'largeGallery'
16109
16049
  });
16110
16050
  let activeVideoStreams = 0;
@@ -16202,7 +16142,6 @@ const unselectable = {
16202
16142
  const DEFAULT_REMOTE_VIDEO_TILE_MENU_OPTIONS = {
16203
16143
  kind: 'contextual'
16204
16144
  };
16205
- /* @conditional-compile-remove(pinned-participants) */
16206
16145
  /**
16207
16146
  * @private
16208
16147
  * Maximum number of remote video tiles that can be pinned
@@ -16216,13 +16155,7 @@ const MAX_PINNED_REMOTE_VIDEO_TILES = 4;
16216
16155
  */
16217
16156
  const VideoGallery = (props) => {
16218
16157
  var _a, _b, _c;
16219
- const { localParticipant, remoteParticipants = [], localVideoViewOptions, remoteVideoViewOptions, dominantSpeakers, onRenderLocalVideoTile, onRenderRemoteVideoTile, onCreateLocalStreamView, onDisposeLocalStreamView, onCreateRemoteStreamView, onDisposeRemoteScreenShareStreamView, onDisposeRemoteVideoStreamView, styles, layout, onRenderAvatar, showMuteIndicator, maxRemoteVideoStreams = DEFAULT_MAX_REMOTE_VIDEO_STREAMS, showCameraSwitcherInLocalPreview, localVideoCameraCycleButtonProps,
16220
- /* @conditional-compile-remove(pinned-participants) */
16221
- onPinParticipant: onPinParticipantHandler,
16222
- /* @conditional-compile-remove(pinned-participants) */
16223
- onUnpinParticipant: onUnpinParticipantHandler,
16224
- /* @conditional-compile-remove(pinned-participants) */
16225
- remoteVideoTileMenu = DEFAULT_REMOTE_VIDEO_TILE_MENU_OPTIONS,
16158
+ const { localParticipant, remoteParticipants = [], localVideoViewOptions, remoteVideoViewOptions, dominantSpeakers, onRenderLocalVideoTile, onRenderRemoteVideoTile, onCreateLocalStreamView, onDisposeLocalStreamView, onCreateRemoteStreamView, onDisposeRemoteScreenShareStreamView, onDisposeRemoteVideoStreamView, styles, layout, onRenderAvatar, showMuteIndicator, maxRemoteVideoStreams = DEFAULT_MAX_REMOTE_VIDEO_STREAMS, showCameraSwitcherInLocalPreview, localVideoCameraCycleButtonProps, onPinParticipant: onPinParticipantHandler, onUnpinParticipant: onUnpinParticipantHandler, remoteVideoTileMenu = DEFAULT_REMOTE_VIDEO_TILE_MENU_OPTIONS,
16226
16159
  /* @conditional-compile-remove(vertical-gallery) */
16227
16160
  overflowGalleryPosition = 'horizontalBottom',
16228
16161
  /* @conditional-compile-remove(rooms) */
@@ -16239,11 +16172,9 @@ const VideoGallery = (props) => {
16239
16172
  const theme = useTheme();
16240
16173
  const localeStrings = useLocale$1().strings.videoGallery;
16241
16174
  const strings = React.useMemo(() => (Object.assign(Object.assign({}, localeStrings), props.strings)), [localeStrings, props.strings]);
16242
- /* @conditional-compile-remove(pinned-participants) */
16243
16175
  const drawerMenuHostIdFromProp = remoteVideoTileMenu && remoteVideoTileMenu.kind === 'drawer'
16244
16176
  ? remoteVideoTileMenu.hostId
16245
16177
  : undefined;
16246
- /* @conditional-compile-remove(pinned-participants) */
16247
16178
  const drawerMenuHostId = reactHooks.useId('drawerMenuHost', drawerMenuHostIdFromProp);
16248
16179
  const localTileNotInGrid = (layout === 'floatingLocalVideo' || /* @conditional-compile-remove(gallery-layouts) */ layout === 'speaker') &&
16249
16180
  remoteParticipants.length > 0;
@@ -16251,18 +16182,14 @@ const VideoGallery = (props) => {
16251
16182
  const containerWidth = _useContainerWidth(containerRef);
16252
16183
  const containerHeight = _useContainerHeight(containerRef);
16253
16184
  const isNarrow = containerWidth ? isNarrowWidth(containerWidth) : false;
16254
- /* @conditional-compile-remove(pinned-participants) */
16255
16185
  const [pinnedParticipantsState, setPinnedParticipantsState] = React.useState([]);
16256
- /* @conditional-compile-remove(pinned-participants) */
16257
16186
  const [selectedScalingModeState, setselectedScalingModeState] = React.useState({});
16258
- /* @conditional-compile-remove(pinned-participants) */
16259
16187
  const onUpdateScalingMode = React.useCallback((remoteUserId, scalingMode) => {
16260
16188
  setselectedScalingModeState((current) => (Object.assign(Object.assign({}, current), { [remoteUserId]: {
16261
16189
  scalingMode,
16262
16190
  isMirrored: remoteVideoViewOptions === null || remoteVideoViewOptions === void 0 ? void 0 : remoteVideoViewOptions.isMirrored
16263
16191
  } })));
16264
16192
  }, [remoteVideoViewOptions === null || remoteVideoViewOptions === void 0 ? void 0 : remoteVideoViewOptions.isMirrored]);
16265
- /* @conditional-compile-remove(pinned-participants) */
16266
16193
  React.useEffect(() => {
16267
16194
  var _a;
16268
16195
  (_a = props.pinnedParticipants) === null || _a === void 0 ? void 0 : _a.forEach((pinParticipant) => {
@@ -16273,7 +16200,6 @@ const VideoGallery = (props) => {
16273
16200
  }
16274
16201
  });
16275
16202
  }, [props.pinnedParticipants, props.remoteParticipants]);
16276
- /* @conditional-compile-remove(pinned-participants) */
16277
16203
  // Use pinnedParticipants from props but if it is not defined use the maintained state of pinned participants
16278
16204
  const pinnedParticipants = (_a = props.pinnedParticipants) !== null && _a !== void 0 ? _a : pinnedParticipantsState;
16279
16205
  const showLocalVideoTileLabel = !((localTileNotInGrid && isNarrow) ||
@@ -16339,7 +16265,6 @@ const VideoGallery = (props) => {
16339
16265
  /* @conditional-compile-remove(reaction) */
16340
16266
  reactionResources
16341
16267
  ]);
16342
- /* @conditional-compile-remove(pinned-participants) */
16343
16268
  const onPinParticipant = React.useCallback((userId) => {
16344
16269
  if (pinnedParticipants.length >= MAX_PINNED_REMOTE_VIDEO_TILES) {
16345
16270
  return;
@@ -16349,14 +16274,11 @@ const VideoGallery = (props) => {
16349
16274
  }
16350
16275
  onPinParticipantHandler === null || onPinParticipantHandler === void 0 ? void 0 : onPinParticipantHandler(userId);
16351
16276
  }, [pinnedParticipants.length, pinnedParticipantsState, setPinnedParticipantsState, onPinParticipantHandler]);
16352
- /* @conditional-compile-remove(pinned-participants) */
16353
16277
  const onUnpinParticipant = React.useCallback((userId) => {
16354
16278
  setPinnedParticipantsState(pinnedParticipantsState.filter((p) => p !== userId));
16355
16279
  onUnpinParticipantHandler === null || onUnpinParticipantHandler === void 0 ? void 0 : onUnpinParticipantHandler(userId);
16356
16280
  }, [pinnedParticipantsState, setPinnedParticipantsState, onUnpinParticipantHandler]);
16357
- /* @conditional-compile-remove(pinned-participants) */
16358
16281
  const [announcementString, setAnnouncementString] = React.useState('');
16359
- /* @conditional-compile-remove(pinned-participants) */
16360
16282
  /**
16361
16283
  * sets the announcement string for VideoGallery actions so that the screenreader will trigger
16362
16284
  */
@@ -16371,9 +16293,7 @@ const VideoGallery = (props) => {
16371
16293
  }, [setAnnouncementString]);
16372
16294
  const defaultOnRenderVideoTile = React.useCallback((participant, isVideoParticipant) => {
16373
16295
  const remoteVideoStream = participant.videoStream;
16374
- /* @conditional-compile-remove(pinned-participants) */
16375
16296
  const selectedScalingMode = remoteVideoStream ? selectedScalingModeState[participant.userId] : undefined;
16376
- /* @conditional-compile-remove(pinned-participants) */
16377
16297
  let isPinned = pinnedParticipants === null || pinnedParticipants === void 0 ? void 0 : pinnedParticipants.includes(participant.userId);
16378
16298
  /* @conditional-compile-remove(spotlight) */
16379
16299
  const isSpotlighted = spotlightedParticipants === null || spotlightedParticipants === void 0 ? void 0 : spotlightedParticipants.includes(participant.userId);
@@ -16381,11 +16301,9 @@ const VideoGallery = (props) => {
16381
16301
  isPinned = isSpotlighted ? false : isPinned;
16382
16302
  const createViewOptions = () => {
16383
16303
  var _a, _b;
16384
- /* @conditional-compile-remove(pinned-participants) */
16385
16304
  if (selectedScalingMode) {
16386
16305
  return selectedScalingMode;
16387
16306
  }
16388
- /* @conditional-compile-remove(pinned-participants) */
16389
16307
  return (remoteVideoStream === null || remoteVideoStream === void 0 ? void 0 : remoteVideoStream.streamSize) &&
16390
16308
  ((_a = remoteVideoStream.streamSize) === null || _a === void 0 ? void 0 : _a.height) > ((_b = remoteVideoStream.streamSize) === null || _b === void 0 ? void 0 : _b.width)
16391
16309
  ? {
@@ -16396,29 +16314,13 @@ const VideoGallery = (props) => {
16396
16314
  };
16397
16315
  return (React.createElement(_RemoteVideoTile, { key: participant.userId, userId: participant.userId, remoteParticipant: participant, onCreateRemoteStreamView: isVideoParticipant ? onCreateRemoteStreamView : undefined, onDisposeRemoteStreamView: isVideoParticipant ? onDisposeRemoteVideoStreamView : undefined, isAvailable: isVideoParticipant ? remoteVideoStream === null || remoteVideoStream === void 0 ? void 0 : remoteVideoStream.isAvailable : false, isReceiving: isVideoParticipant ? remoteVideoStream === null || remoteVideoStream === void 0 ? void 0 : remoteVideoStream.isReceiving : false, renderElement: isVideoParticipant ? remoteVideoStream === null || remoteVideoStream === void 0 ? void 0 : remoteVideoStream.renderElement : undefined, remoteVideoViewOptions: createViewOptions(), onRenderAvatar: onRenderAvatar, showMuteIndicator: showMuteIndicator, strings: strings,
16398
16316
  /* @conditional-compile-remove(PSTN-calls) */
16399
- participantState: participant.state,
16400
- /* @conditional-compile-remove(pinned-participants) */
16401
- menuKind: participant.userId === localParticipant.userId
16317
+ participantState: participant.state, menuKind: participant.userId === localParticipant.userId
16402
16318
  ? undefined
16403
16319
  : remoteVideoTileMenu
16404
16320
  ? remoteVideoTileMenu.kind === 'drawer'
16405
16321
  ? 'drawer'
16406
16322
  : 'contextual'
16407
- : undefined,
16408
- /* @conditional-compile-remove(pinned-participants) */
16409
- drawerMenuHostId: drawerMenuHostId,
16410
- /* @conditional-compile-remove(pinned-participants) */
16411
- onPinParticipant: onPinParticipant,
16412
- /* @conditional-compile-remove(pinned-participants) */
16413
- onUnpinParticipant: onUnpinParticipant,
16414
- /* @conditional-compile-remove(pinned-participants) */
16415
- onUpdateScalingMode: onUpdateScalingMode,
16416
- /* @conditional-compile-remove(pinned-participants) */
16417
- isPinned: isPinned,
16418
- /* @conditional-compile-remove(pinned-participants) */
16419
- disablePinMenuItem: pinnedParticipants.length >= MAX_PINNED_REMOTE_VIDEO_TILES,
16420
- /* @conditional-compile-remove(pinned-participants) */
16421
- toggleAnnouncerString: toggleAnnouncerString,
16323
+ : undefined, drawerMenuHostId: drawerMenuHostId, onPinParticipant: onPinParticipant, onUnpinParticipant: onUnpinParticipant, onUpdateScalingMode: onUpdateScalingMode, isPinned: isPinned, disablePinMenuItem: pinnedParticipants.length >= MAX_PINNED_REMOTE_VIDEO_TILES, toggleAnnouncerString: toggleAnnouncerString,
16422
16324
  /* @conditional-compile-remove(spotlight) */
16423
16325
  spotlightedParticipantUserIds: spotlightedParticipants,
16424
16326
  /* @conditional-compile-remove(spotlight) */
@@ -16437,14 +16339,14 @@ const VideoGallery = (props) => {
16437
16339
  onRenderAvatar,
16438
16340
  showMuteIndicator,
16439
16341
  strings,
16440
- /* @conditional-compile-remove(pinned-participants) */ drawerMenuHostId,
16441
- /* @conditional-compile-remove(pinned-participants) */ remoteVideoTileMenu,
16442
- /* @conditional-compile-remove(pinned-participants) */ selectedScalingModeState,
16443
- /* @conditional-compile-remove(pinned-participants) */ pinnedParticipants,
16444
- /* @conditional-compile-remove(pinned-participants) */ onPinParticipant,
16445
- /* @conditional-compile-remove(pinned-participants) */ onUnpinParticipant,
16446
- /* @conditional-compile-remove(pinned-participants) */ toggleAnnouncerString,
16447
- /* @conditional-compile-remove(pinned-participants) */ onUpdateScalingMode,
16342
+ drawerMenuHostId,
16343
+ remoteVideoTileMenu,
16344
+ selectedScalingModeState,
16345
+ pinnedParticipants,
16346
+ onPinParticipant,
16347
+ onUnpinParticipant,
16348
+ toggleAnnouncerString,
16349
+ onUpdateScalingMode,
16448
16350
  /* @conditional-compile-remove(spotlight) */ spotlightedParticipants,
16449
16351
  /* @conditional-compile-remove(spotlight) */ onStartSpotlight,
16450
16352
  /* @conditional-compile-remove(spotlight) */ onStopSpotlight,
@@ -16470,7 +16372,7 @@ const VideoGallery = (props) => {
16470
16372
  localVideoComponent: localVideoTile,
16471
16373
  parentWidth: containerWidth,
16472
16374
  parentHeight: containerHeight,
16473
- /* @conditional-compile-remove(pinned-participants) */ pinnedParticipantUserIds: pinnedParticipants,
16375
+ pinnedParticipantUserIds: pinnedParticipants,
16474
16376
  /* @conditional-compile-remove(vertical-gallery) */ overflowGalleryPosition,
16475
16377
  /* @conditional-compile-remove(click-to-call) */ localVideoTileSize,
16476
16378
  /* @conditional-compile-remove(spotlight) */ spotlightedParticipantUserIds: spotlightedParticipants
@@ -16487,7 +16389,7 @@ const VideoGallery = (props) => {
16487
16389
  containerHeight,
16488
16390
  onRenderRemoteVideoTile,
16489
16391
  defaultOnRenderVideoTile,
16490
- /* @conditional-compile-remove(pinned-participants) */ pinnedParticipants,
16392
+ pinnedParticipants,
16491
16393
  /* @conditional-compile-remove(vertical-gallery) */ overflowGalleryPosition,
16492
16394
  /* @conditional-compile-remove(click-to-call) */ localVideoTileSize,
16493
16395
  /* @conditional-compile-remove(spotlight) */ spotlightedParticipants
@@ -16511,11 +16413,9 @@ const VideoGallery = (props) => {
16511
16413
  return React.createElement(DefaultLayout, Object.assign({}, layoutProps));
16512
16414
  }, [layout, layoutProps, /* @conditional-compile-remove(gallery-layouts) */ screenShareParticipant]);
16513
16415
  return (React.createElement("div", {
16514
- /* @conditional-compile-remove(pinned-participants) */
16515
16416
  // We don't assign an drawer menu host id to the VideoGallery when a drawerMenuHostId is assigned from props
16516
16417
  id: drawerMenuHostIdFromProp ? undefined : drawerMenuHostId, "data-ui-id": ids.videoGallery, ref: containerRef, className: react.mergeStyles(videoGalleryOuterDivStyle, styles === null || styles === void 0 ? void 0 : styles.root, unselectable) },
16517
16418
  videoGalleryLayout,
16518
- /* @conditional-compile-remove(pinned-participants) */
16519
16419
  React.createElement(Announcer$1, { announcementString: announcementString, ariaLive: "polite" })));
16520
16420
  };
16521
16421
 
@@ -18198,17 +18098,18 @@ const digitStyles = (theme) => {
18198
18098
  /**
18199
18099
  * @private
18200
18100
  */
18201
- const textFieldStyles = (theme) => ({
18101
+ const textFieldStyles = (theme, buttonPresent) => ({
18202
18102
  field: {
18203
18103
  padding: 0,
18204
18104
  textAlign: 'center',
18205
18105
  fontSize: `${_pxToRem(18)}`,
18206
18106
  fontWeight: 400,
18207
- width: `${_pxToRem(192)}`,
18107
+ width: `${buttonPresent ? '10rem' : '12rem'}`,
18208
18108
  height: '3rem',
18209
18109
  borderRadius: '0.5rem',
18210
18110
  position: 'relative',
18211
- overflowX: 'auto'
18111
+ overflowX: 'hidden',
18112
+ textOverflow: 'clip'
18212
18113
  },
18213
18114
  root: {
18214
18115
  backgroundColor: `${theme.palette.neutralLighter}`,
@@ -18219,6 +18120,7 @@ const textFieldStyles = (theme) => ({
18219
18120
  fieldGroup: {
18220
18121
  border: 'none',
18221
18122
  borderRadius: '0.5rem',
18123
+ width: '12rem',
18222
18124
  height: '3rem',
18223
18125
  backgroundColor: `${theme.palette.neutralLighter}`,
18224
18126
  ':after': {
@@ -18533,7 +18435,7 @@ const DialpadContainer = (props) => {
18533
18435
  setText(modifiedInput);
18534
18436
  };
18535
18437
  return (React.createElement(react.Stack, { className: react.mergeStyles(containerStyles$3(theme), (_a = props.styles) === null || _a === void 0 ? void 0 : _a.root), "data-test-id": "dialpadContainer", "data-ui-id": "dialpadContainer", horizontalAlign: 'center' },
18536
- dialpadMode === 'dialer' && (React.createElement(react.TextField, { styles: react.concatStyleSets(textFieldStyles(theme), (_b = props.styles) === null || _b === void 0 ? void 0 : _b.textField), value: textFieldValue ? textFieldValue : formatPhoneNumber(plainTextValue),
18438
+ dialpadMode === 'dialer' && (React.createElement(react.TextField, { styles: react.concatStyleSets(textFieldStyles(theme, plainTextValue !== ''), (_b = props.styles) === null || _b === void 0 ? void 0 : _b.textField), value: textFieldValue ? textFieldValue : formatPhoneNumber(plainTextValue),
18537
18439
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
18538
18440
  onChange: (e) => {
18539
18441
  setText(e.target.value);
@@ -20108,9 +20010,7 @@ const convertRemoteVideoStreamToVideoGalleryStream = (stream) => {
20108
20010
  isReceiving: stream.isReceiving,
20109
20011
  isMirrored: (_a = stream.view) === null || _a === void 0 ? void 0 : _a.isMirrored,
20110
20012
  renderElement: (_b = stream.view) === null || _b === void 0 ? void 0 : _b.target,
20111
- /* @conditional-compile-remove(pinned-participants) */
20112
20013
  scalingMode: (_c = stream.view) === null || _c === void 0 ? void 0 : _c.scalingMode,
20113
- /* @conditional-compile-remove(pinned-participants) */
20114
20014
  streamSize: stream.streamSize
20115
20015
  };
20116
20016
  };
@@ -21203,20 +21103,22 @@ const processChatMessageContent = (message) => {
21203
21103
  var _a, _b, _c;
21204
21104
  let content = (_a = message.content) === null || _a === void 0 ? void 0 : _a.message;
21205
21105
  /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
21206
- if (content && ((_b = message.content) === null || _b === void 0 ? void 0 : _b.attachments) && sanitizedMessageContentType(message.type).includes('html')) {
21106
+ if (((_b = message.content) === null || _b === void 0 ? void 0 : _b.attachments) && sanitizedMessageContentType(message.type).includes('html')) {
21207
21107
  const attachments = (_c = message.content) === null || _c === void 0 ? void 0 : _c.attachments;
21208
21108
  // Fill in the src here
21209
- const document = new DOMParser().parseFromString(content, 'text/html');
21210
- document.querySelectorAll('img').forEach((img) => {
21211
- var _a, _b, _c;
21212
- const attachmentPreviewUrl = (_a = attachments.find((attachment) => attachment.id === img.id)) === null || _a === void 0 ? void 0 : _a.previewUrl;
21213
- if (attachmentPreviewUrl) {
21214
- const src = (_c = (_b = message.resourceCache) === null || _b === void 0 ? void 0 : _b[attachmentPreviewUrl]) !== null && _c !== void 0 ? _c : '';
21215
- img.src = src;
21216
- }
21217
- });
21218
21109
  /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
21219
- content = document.documentElement.innerHTML;
21110
+ if (content) {
21111
+ const document = new DOMParser().parseFromString(content !== null && content !== void 0 ? content : '', 'text/html');
21112
+ document.querySelectorAll('img').forEach((img) => {
21113
+ var _a, _b, _c;
21114
+ const attachmentPreviewUrl = (_a = attachments.find((attachment) => attachment.id === img.id)) === null || _a === void 0 ? void 0 : _a.previewUrl;
21115
+ if (attachmentPreviewUrl) {
21116
+ const src = (_c = (_b = message.resourceCache) === null || _b === void 0 ? void 0 : _b[attachmentPreviewUrl]) !== null && _c !== void 0 ? _c : '';
21117
+ img.src = src;
21118
+ }
21119
+ });
21120
+ content = document.documentElement.innerHTML;
21121
+ }
21220
21122
  const teamsImageHtmlContent = attachments
21221
21123
  .filter((attachment) => {
21222
21124
  var _a, _b;
@@ -22098,9 +22000,9 @@ let ChatContext$1 = class ChatContext {
22098
22000
  }
22099
22001
  /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
22100
22002
  parseAttachments(threadId, message) {
22101
- var _a, _b;
22003
+ var _a;
22102
22004
  const attachments = (_a = message.content) === null || _a === void 0 ? void 0 : _a.attachments;
22103
- if (message.type === 'html' && ((_b = message.content) === null || _b === void 0 ? void 0 : _b.message) && attachments && attachments.length > 0) {
22005
+ if (message.type === 'html' && attachments && attachments.length > 0) {
22104
22006
  if (this._messageQueue &&
22105
22007
  !this._messageQueue.containsMessageWithSameAttachments(message) &&
22106
22008
  message.resourceCache === undefined) {
@@ -22221,12 +22123,13 @@ const toChatError = (target, error) => {
22221
22123
  * @private
22222
22124
  */
22223
22125
  const convertChatMessage = (message, status = 'delivered', clientMessageId) => {
22224
- var _a, _b;
22126
+ var _a, _b, _c;
22225
22127
  return Object.assign(Object.assign({}, message), { clientMessageId: clientMessageId, status,
22226
22128
  /* @conditional-compile-remove(data-loss-prevention) */
22227
22129
  policyViolation: !!(((_a = message.sender) === null || _a === void 0 ? void 0 : _a.kind) === 'microsoftTeamsUser' &&
22228
22130
  !!message.editedOn &&
22229
- ((_b = message.content) === null || _b === void 0 ? void 0 : _b.message) === '') });
22131
+ ((_b = message.content) === null || _b === void 0 ? void 0 : _b.message) === '' &&
22132
+ ((_c = message.content.attachments) === null || _c === void 0 ? void 0 : _c.length) === 0) });
22230
22133
  };
22231
22134
 
22232
22135
  // Copyright (c) Microsoft Corporation.
@@ -22992,7 +22895,7 @@ const CallCompositeIcon = (props) => (React.createElement(react.FontIcon, Object
22992
22895
  */
22993
22896
  const CallWithChatCompositeIcon = (props) => (React.createElement(react.FontIcon, Object.assign({}, props)));
22994
22897
 
22995
- var call$k={cameraLabel:"Camera",noCamerasLabel:"No cameras found",cameraPermissionDenied:"Your browser is blocking access to your camera",cameraTurnedOff:"Your camera is turned off",chatButtonLabel:"Chat",close:"Close",complianceBannerNowOnlyRecording:"You are now only recording this meeting.",complianceBannerNowOnlyTranscription:"You are now only transcribing this meeting.",complianceBannerRecordingAndTranscriptionSaved:"Recording and transcription are being saved.",complianceBannerRecordingAndTranscriptionStarted:"Recording and transcription have started.",complianceBannerRecordingAndTranscriptionStopped:"Recording and transcription have stopped.",complianceBannerRecordingSaving:"Recording is being saved.",complianceBannerRecordingStarted:"Recording has started.",complianceBannerRecordingStopped:"Recording has stopped.",complianceBannerTranscriptionStarted:"Transcription has started.",complianceBannerTranscriptionConsent:"By joining, you are giving consent for this meeting to be transcribed.",complianceBannerTranscriptionSaving:"Transcription is being saved.",complianceBannerTranscriptionStopped:"Transcription has stopped.",configurationPageTitle:"Start a call",copyInviteLinkButtonLabel:"Copy invite link",copyInviteLinkActionedAriaLabel:"Invite link copied",defaultPlaceHolder:"Select an option",dismissSidePaneButtonLabel:"Close",videoEffectsPaneTitle:"Effects",videoEffectsPaneBackgroundSelectionTitle:"Background",configurationPageVideoEffectsButtonLabel:"Effects",unableToStartVideoEffect:"Unable to apply video effect.",blurBackgroundEffectButtonLabel:"Blur",blurBackgroundTooltip:"Blur Background",removeBackgroundEffectButtonLabel:"None",removeBackgroundTooltip:"Remove Background",cameraOffBackgroundEffectWarningText:"Your camera is off. Turn on camera to see video effect.",failedToJoinCallDueToNoNetworkMoreDetails:"Call was disconnected due to a network issue. Check your connection and join again.",failedToJoinCallDueToNoNetworkTitle:"Call disconnected",failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails:"You were not granted entry in the call. If this was a mistake, re-join the call.",failedToJoinTeamsMeetingReasonAccessDeniedTitle:"Dismissed from lobby",learnMore:"Learn more",leavingCallTitle:"Leaving...",leftCallMoreDetails:"If this was a mistake, re-join the call.",leftCallTitle:"You left the call",lobbyScreenConnectingToCallTitle:"Joining call",lobbyScreenWaitingToBeAdmittedTitle:"Waiting to be admitted",microphonePermissionDenied:"Your browser is blocking access to your microphone",microphoneToggleInLobbyNotAllowed:"Cannot mute or unmute while in lobby.",mutedMessage:"You're muted",networkReconnectMoreDetails:"Looks like something went wrong. We're trying to get back into the call.",networkReconnectTitle:"Hold on",notInvitedToRoomDetails:"You are not able to join this room because you do not have an invite.",notInvitedToRoomTitle:"Not invited to room",peopleButtonLabel:"People",selectedPeopleButtonLabel:"People Button Selected",peoplePaneTitle:"People",peopleButtonTooltipOpen:"Show participants",peopleButtonTooltipClose:"Hide participants",peoplePaneSubTitle:"In this call {numberOfPeople}",privacyPolicy:"Privacy policy",rejoinCallButtonLabel:"Re-join call",removedFromCallMoreDetails:"Another participant removed you from the call.",removedFromCallTitle:"You were removed",removeMenuLabel:"Remove",startSpotlightParticipantListMenuLabel:"Spotlight for everyone",addSpotlightParticipantListMenuLabel:"Add spotlight",stopSpotlightParticipantListMenuLabel:"Stop spotlighting",stopSpotlightOnSelfParticipantListMenuLabel:"Exit spotlight",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back",roomNotFoundDetails:"The room ID provided could not be found.",roomNotFoundTitle:"Room not found",roomNotValidDetails:"This room is not valid at this current time.",roomNotValidTitle:"Room not valid",inviteToRoomRemovedDetails:"Your invite to join this room was removed.",inviteToRoomRemovedTitle:"Invite to room removed",soundLabel:"Sound",noMicrophonesLabel:"No microphones found",noSpeakersLabel:"No speakers found",startCallButtonLabel:"Start call",openDialpadButtonLabel:"Dial phone number",peoplePaneAddPeopleButtonLabel:"Add People",dialpadStartCallButtonLabel:"Call",dialpadModalTitle:"Dial Phone Number",dialpadModalAriaLabel:"Dialpad",dialpadCloseModalButtonAriaLabel:"Close dialpad",moreButtonCallingLabel:"More",resumeCallButtonLabel:"Resume",resumingCallButtonLabel:"Resuming...",resumeCallButtonAriaLabel:"Resume call",resumingCallButtonAriaLabel:"Resume call",holdScreenLabel:"You're on hold",openDtmfDialpadLabel:"Show dialpad",dtmfDialpadPlaceholderText:"Enter number",outboundCallingNoticeString:"Calling...",participantJoinedNoticeString:"{displayName} joined",twoParticipantJoinedNoticeString:"{displayName1} and {displayName2} have joined",threeParticipantJoinedNoticeString:"{displayName1}, {displayName2} and {displayName3} have joined",participantLeftNoticeString:"{displayName} left",twoParticipantLeftNoticeString:"{displayName1} and {displayName2} have left",threeParticipantLeftNoticeString:"{displayName1}, {displayName2} and {displayName3} have left",unnamedParticipantString:"unnamed participant",manyUnnamedParticipantsJoined:"unnamed participant and {numOfParticipants} other participants joined",manyUnnamedParticipantsLeft:"unnamed participant and {numOfParticipants} other participants left",manyParticipantsJoined:"{displayName1}, {displayName2}, {displayName3} and {numOfParticipants} other participants joined",manyParticipantsLeft:"{displayName1}, {displayName2}, {displayName3} and {numOfParticipants} other participants left",liveCaptionsLabel:"Live captions",captionsSettingsLabel:"Caption settings",startCaptionsButtonOnLabel:"Turn on captions",startCaptionsButtonOffLabel:"Turn off captions",startCaptionsButtonTooltipOnContent:"Turn off captions",startCaptionsButtonTooltipOffContent:"Turn on captions",captionsSettingsModalTitle:"Captions Settings",captionsSettingsSpokenLanguageDropdownLabel:"Spoken language",captionsSettingsCaptionLanguageDropdownLabel:"Captions language",captionsSettingsSpokenLanguageDropdownInfoText:"Language that everyone on this call is speaking.",captionsSettingsCaptionLanguageDropdownInfoText:"Captions will appear in this langugage.",captionsSettingsConfirmButtonLabel:"Confirm",captionsSettingsCancelButtonLabel:"Cancel",captionsSettingsModalAriaLabel:"Captions Setting Modal",captionsSettingsCloseModalButtonAriaLabel:"Close Captions Setting",captionsBannerMoreButtonCallingLabel:"More",captionsBannerMoreButtonTooltip:"More options",dismissModalAriaLabel:"Local and remote picture and picture, press enter to return to call",callRejectedTitle:"The call could not be completed",callRejectedMoreDetails:"The person you are trying to reach is unavailable. Please try again later.",callTimeoutTitle:"The call could not be completed",callTimeoutDetails:"The person you are trying to reach is unavailable. Please try again later.",dtmfDialerButtonLabel:"Dialpad",dtmfDialerButtonTooltipOn:"Show dialpad",dtmfDialerButtonTooltipOff:"Hide dialpad",dtmfDialerMoreButtonLabelOn:"Show dialpad",dtmfDialerMoreButtonLabelOff:"Hide dialpad",spokenLanguageStrings:{"ar-ae":"Arabic - U.A.E.","ar-sa":"Arabic - Saudi Arabia","da-dk":"Danish","de-de":"German - Germany","en-au":"English - Australia","en-ca":"English - Canada","en-gb":"English - United Kingdom","en-in":"English - India","en-nz":"English - New Zealand","en-us":"English - United States","es-es":"Spanish - Spain (Modern Sort)","es-mx":"Spanish - Mexico","fi-fi":"Finnish","fr-ca":"French - Canada","fr-fr":"French - France","hi-in":"Hindi","it-it":"Italian - Italy","ja-jp":"Japanese","ko-kr":"Korean","nb-no":"Norwegian (Bokmål)","nl-be":"Dutch - Belgium","nl-nl":"Dutch - Netherlands","pl-pl":"Polish","pt-br":"Portuguese - Brazil","ru-ru":"Russian","sv-se":"Swedish","zh-cn":"Chinese - People's Republic of China","zh-hk":"Chinese - Hong Kong SAR","cs-cz":"Czech","pt-pt":"Portuguese - Portugal","tr-tr":"Turkish","vi-vn":"Vietnamese","th-th":"Thai","he-il":"Hebrew","cy-gb":"Welsh","uk-ua":"Ukrainian","el-gr":"Greek","hu-hu":"Hungarian","ro-ro":"Romanian","sk-sk":"Slovak","zh-tw":"Chinese - Taiwan"},captionLanguageStrings:{ar:"Arabic",da:"Danish",de:"German",en:"English",es:"Spanish",fi:"Finnish","fr-ca":"French - Canada",fr:"French - France",hi:"Hindi",it:"Italian",ja:"Japanese",ko:"Korean",nb:"Norwegian (Bokmål)",nl:"Dutch",pl:"Polish",pt:"Portuguese - Brazil",ru:"Russian",sv:"Swedish","zh-Hans":"Chinese (Simplified)","zh-Hant":"Chinese (Traditional)",cs:"Czech","pt-pt":"Portuguese - Portugal",tr:"Turkish",vi:"Vietnamese",th:"Thai",he:"Hebrew",cy:"Welsh",uk:"Ukrainian",el:"Greek",hu:"Hungarian",ro:"Romanian",sk:"Slovak"},captionsBannerSpinnerText:"Starting captions...",transferPageTransferorText:"Transferring...",transferPageTransferTargetText:"Connecting...",transferPageUnknownTransferorDisplayName:"Unknown",transferPageUnknownTransferTargetDisplayName:"Unknown",transferPageNoticeString:"You are being transferred",participantCouldNotBeReachedTitle:"Target participant is currently not available",participantCouldNotBeReachedMoreDetails:"Please contact participant when they are available",permissionToReachTargetParticipantNotAllowedTitle:"Permission to reach target participant is not allowed",permissionToReachTargetParticipantNotAllowedMoreDetails:"Please check that the target participant is in the same tenant",unableToResolveTenantTitle:"Unable to resolve tenant id for the target participant",unableToResolveTenantMoreDetails:"Please check the participant id is entered correctly",participantIdIsMalformedTitle:"Participant id is not in the correct format",participantIdIsMalformedMoreDetails:"Please check that the participant id is in the correct format",moreButtonGalleryControlLabel:"View",moreButtonGalleryPositionToggleLabel:"Move gallery to top",moreButtonGallerySpeakerLayoutLabel:"Speaker",moreButtonGalleryFloatingLocalLayoutLabel:"Dynamic",moreButtonGalleryDefaultLayoutLabel:"Gallery view",moreButtonGalleryFocusedContentLayoutLabel:"Focus on content",moreButtonLargeGalleryDefaultLayoutLabel:"Large Gallery",capabilityChangedNotification:{turnVideoOn:{lostDueToMeetingOption:"Your camera has been disabled. You can no longer share video.",grantedDueToMeetingOption:"Your camera has been enabled. Turn it on if you'd like to share video."},unmuteMic:{lostDueToMeetingOption:"Your mic has been disabled. You can no longer unmute.",grantedDueToMeetingOption:"Your mic has been enabled. Unmute if you'd like to speak."},shareScreen:{lostDueToRoleChangeToAttendee:"Your role has been changed. Some actions, like sharing content, won't be available to you.",grantedDueToRoleChangeToPresenter:"You're a presenter. You can share content and facilitate the meeting."}},surveyQuestion:"How was your call today?",starSurveyHelperText:"How was the quality of the call?",starSurveyOneStarText:"The quality was bad.",starSurveyTwoStarText:"The quality was poor.",starSurveyThreeStarText:"The quality was good.",starSurveyFourStarText:"The quality was great.",starSurveyFiveStarText:"The quality was excellent.",surveyConfirmButtonLabel:"Send Feedback",starRatingAriaLabel:"Select {0} of {1} stars",surveyCancelButtonAriaLabel:"Cancel",tagsSurveyQuestion:"What could have been better?",tagsSurveyTextFieldDefaultText:"Other, please specify",tagsSurveyHelperText:"Check any issues you experienced",surveyTextboxDefaultText:"Other, please specify",surveyIssues:{overallRating:{callCannotJoin:"I could not join call",callCannotInvite:"I could not invite others into the call",hadToRejoin:"I had to rejoin the call",callEndedUnexpectedly:"Call ended for me unexpectedly",otherIssues:"I was having other issues with the call"},audioRating:{noLocalAudio:"The other side could not hear any sound",noRemoteAudio:"I could not hear any sound",echo:"I heard echos on the call",audioNoise:"I heard noise on the call",lowVolume:"Volume was low",audioStoppedUnexpectedly:"Audio stopped unexpectedly",distortedSpeech:"Audio was distorted",audioInterruption:"Audio was interrupted",otherIssues:"I was having other audio issues in this call"},videoRating:{noVideoReceived:"I could not see any video",noVideoSent:"Others could not see me",lowQuality:"Video quality was low",freezes:"Video frozen",stoppedUnexpectedly:"Video stopped unexpectedly",darkVideoReceived:"I can only see dark screens when others turn on their camera",audioVideoOutOfSync:"Audio and Video was out of sync",otherIssues:"I was having other video issues in this call"},screenshareRating:{noContentLocal:"Other people could not see my screenshare",noContentRemote:"I could not see other people's screenshare",cannotPresent:"I could not present my screen",lowQuality:"Screen share quality was low",freezes:"Screen share frozen",stoppedUnexpectedly:"Screen share stopped unexpectedly",largeDelay:"Screen share has a large delay",otherIssues:"I was having other screen share issues in this call"}},SurveyIssuesHeadingStrings:{overallRating:"Overall",audioRating:"Audio",videoRating:"Video",screenshareRating:"Presenting"}};var chat$k={chatListHeader:"In this chat",uploadFile:"Upload File"};var callWithChat$k={chatButtonLabel:"Chat",chatButtonNewMessageNotificationLabel:"New Message",chatButtonTooltipClosedWithMessageCount:"Show chat ({unreadMessagesCount} unread)",chatButtonTooltipClose:"Hide chat",chatButtonTooltipOpen:"Show chat",chatPaneTitle:"Chat",copyInviteLinkButtonLabel:"Copy invite link",copyInviteLinkActionedAriaLabel:"Invite link copied",dismissSidePaneButtonLabel:"Close",moreDrawerAudioDeviceMenuTitle:"Audio Device",moreDrawerButtonLabel:"More options",moreDrawerButtonTooltip:"More options",moreDrawerMicrophoneMenuTitle:"Microphone",moreDrawerSpeakerMenuTitle:"Speaker",moreDrawerCaptionsMenuTitle:"Live captions",moreDrawerSpokenLanguageMenuTitle:"Spoken language",moreDrawerCaptionLanguageMenuTitle:"Caption language",moreDrawerGalleryOptionsMenuTitle:"Gallery options",peopleButtonLabel:"People",selectedPeopleButtonLabel:"People Button Selected",peopleButtonTooltipOpen:"Show participants",peopleButtonTooltipClose:"Hide participants",peoplePaneSubTitle:"In this call",peoplePaneTitle:"People",pictureInPictureTileAriaLabel:"Video Feeds. Click to return to call screen.",removeMenuLabel:"Remove",openDialpadButtonLabel:"Dial phone number",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back",peoplePaneAddPeopleButtonLabel:"Add People",dialpadStartCallButtonLabel:"Call",dialpadModalTitle:"Dial Phone Number",dialpadModalAriaLabel:"Dialpad",dialpadCloseModalButtonAriaLabel:"Close dialpad",openDtmfDialpadLabel:"Show dialpad",dtmfDialpadPlaceholderText:"Enter number"};var en_US = {call:call$k,chat:chat$k,callWithChat:callWithChat$k};
22898
+ var call$k={cameraLabel:"Camera",noCamerasLabel:"No cameras found",cameraPermissionDenied:"Your browser is blocking access to your camera",cameraTurnedOff:"Your camera is turned off",chatButtonLabel:"Chat",close:"Close",complianceBannerNowOnlyRecording:"You are now only recording this meeting.",complianceBannerNowOnlyTranscription:"You are now only transcribing this meeting.",complianceBannerRecordingAndTranscriptionSaved:"Recording and transcription are being saved.",complianceBannerRecordingAndTranscriptionStarted:"Recording and transcription have started.",complianceBannerRecordingAndTranscriptionStopped:"Recording and transcription have stopped.",complianceBannerRecordingSaving:"Recording is being saved.",complianceBannerRecordingStarted:"Recording has started.",complianceBannerRecordingStopped:"Recording has stopped.",complianceBannerTranscriptionStarted:"Transcription has started.",complianceBannerTranscriptionConsent:"By joining, you are giving consent for this meeting to be transcribed.",complianceBannerTranscriptionSaving:"Transcription is being saved.",complianceBannerTranscriptionStopped:"Transcription has stopped.",configurationPageTitle:"Start a call",copyInviteLinkButtonLabel:"Copy invite link",copyInviteLinkActionedAriaLabel:"Invite link copied",defaultPlaceHolder:"Select an option",dismissSidePaneButtonLabel:"Close",videoEffectsPaneTitle:"Effects",videoEffectsPaneBackgroundSelectionTitle:"Background",configurationPageVideoEffectsButtonLabel:"Effects",unableToStartVideoEffect:"Unable to apply video effect.",blurBackgroundEffectButtonLabel:"Blur",blurBackgroundTooltip:"Blur Background",removeBackgroundEffectButtonLabel:"None",removeBackgroundTooltip:"Remove Background",cameraOffBackgroundEffectWarningText:"Your camera is off. Turn on camera to see video effect.",failedToJoinCallDueToNoNetworkMoreDetails:"Call was disconnected due to a network issue. Check your connection and join again.",failedToJoinCallDueToNoNetworkTitle:"Call disconnected",failedToJoinTeamsMeetingReasonAccessDeniedMoreDetails:"You were not granted entry in the call. If this was a mistake, re-join the call.",failedToJoinTeamsMeetingReasonAccessDeniedTitle:"Dismissed from lobby",learnMore:"Learn more",leavingCallTitle:"Leaving...",leftCallMoreDetails:"If this was a mistake, re-join the call.",leftCallTitle:"You left the call",lobbyScreenConnectingToCallTitle:"Joining call",lobbyScreenWaitingToBeAdmittedTitle:"Waiting to be admitted",microphonePermissionDenied:"Your browser is blocking access to your microphone",microphoneToggleInLobbyNotAllowed:"Cannot mute or unmute while in lobby.",mutedMessage:"You're muted",networkReconnectMoreDetails:"Looks like something went wrong. We're trying to get back into the call.",networkReconnectTitle:"Hold on",notInvitedToRoomDetails:"You are not able to join this room because you do not have an invite.",notInvitedToRoomTitle:"Not invited to room",peopleButtonLabel:"People",selectedPeopleButtonLabel:"People Button Selected",peoplePaneTitle:"People",peopleButtonTooltipOpen:"Show participants",peopleButtonTooltipClose:"Hide participants",peoplePaneSubTitle:"In this call {numberOfPeople}",privacyPolicy:"Privacy policy",rejoinCallButtonLabel:"Re-join call",removedFromCallMoreDetails:"Another participant removed you from the call.",removedFromCallTitle:"You were removed",removeMenuLabel:"Remove",startSpotlightParticipantListMenuLabel:"Spotlight for everyone",addSpotlightParticipantListMenuLabel:"Add spotlight",stopSpotlightParticipantListMenuLabel:"Stop spotlighting",stopSpotlightOnSelfParticipantListMenuLabel:"Exit spotlight",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back",roomNotFoundDetails:"The room ID provided could not be found.",roomNotFoundTitle:"Room not found",roomNotValidDetails:"This room is not valid at this current time.",roomNotValidTitle:"Room not valid",inviteToRoomRemovedDetails:"Your invite to join this room was removed.",inviteToRoomRemovedTitle:"Invite to room removed",soundLabel:"Sound",noMicrophonesLabel:"No microphones found",noSpeakersLabel:"No speakers found",startCallButtonLabel:"Start call",openDialpadButtonLabel:"Dial phone number",peoplePaneAddPeopleButtonLabel:"Add People",dialpadStartCallButtonLabel:"Call",dialpadModalTitle:"Dial Phone Number",dialpadModalAriaLabel:"Dialpad",dialpadCloseModalButtonAriaLabel:"Close dialpad",moreButtonCallingLabel:"More",resumeCallButtonLabel:"Resume",resumingCallButtonLabel:"Resuming...",resumeCallButtonAriaLabel:"Resume call",resumingCallButtonAriaLabel:"Resume call",holdScreenLabel:"You're on hold",openDtmfDialpadLabel:"Show dialpad",dtmfDialpadPlaceholderText:"Enter number",outboundCallingNoticeString:"Calling...",participantJoinedNoticeString:"{displayName} joined",twoParticipantJoinedNoticeString:"{displayName1} and {displayName2} have joined",threeParticipantJoinedNoticeString:"{displayName1}, {displayName2} and {displayName3} have joined",participantLeftNoticeString:"{displayName} left",twoParticipantLeftNoticeString:"{displayName1} and {displayName2} have left",threeParticipantLeftNoticeString:"{displayName1}, {displayName2} and {displayName3} have left",unnamedParticipantString:"unnamed participant",manyUnnamedParticipantsJoined:"unnamed participant and {numOfParticipants} other participants joined",manyUnnamedParticipantsLeft:"unnamed participant and {numOfParticipants} other participants left",manyParticipantsJoined:"{displayName1}, {displayName2}, {displayName3} and {numOfParticipants} other participants joined",manyParticipantsLeft:"{displayName1}, {displayName2}, {displayName3} and {numOfParticipants} other participants left",liveCaptionsLabel:"Live captions",captionsSettingsLabel:"Caption settings",startCaptionsButtonOnLabel:"Turn on captions",startCaptionsButtonOffLabel:"Turn off captions",startCaptionsButtonTooltipOnContent:"Turn off captions",startCaptionsButtonTooltipOffContent:"Turn on captions",captionsSettingsModalTitle:"Captions Settings",captionsSettingsSpokenLanguageDropdownLabel:"Spoken language",captionsSettingsCaptionLanguageDropdownLabel:"Captions language",captionsSettingsSpokenLanguageDropdownInfoText:"Language that everyone on this call is speaking.",captionsSettingsCaptionLanguageDropdownInfoText:"Captions will appear in this langugage.",captionsSettingsConfirmButtonLabel:"Confirm",captionsSettingsCancelButtonLabel:"Cancel",captionsSettingsModalAriaLabel:"Captions Setting Modal",captionsSettingsCloseModalButtonAriaLabel:"Close Captions Setting",captionsBannerMoreButtonCallingLabel:"More",captionsBannerMoreButtonTooltip:"More options",dismissModalAriaLabel:"Local and remote picture and picture, press enter to return to call",callRejectedTitle:"The call could not be completed",callRejectedMoreDetails:"The person you are trying to reach is unavailable. Please try again later.",callTimeoutTitle:"The call could not be completed",callTimeoutDetails:"The person you are trying to reach is unavailable. Please try again later.",callTimeoutBotTitle:"The call could not be completed",callTimeoutBotDetails:"The service that you are trying to reach is unavailable. Please try again later.",dtmfDialerButtonLabel:"Dialpad",dtmfDialerButtonTooltipOn:"Show dialpad",dtmfDialerButtonTooltipOff:"Hide dialpad",dtmfDialerMoreButtonLabelOn:"Show dialpad",dtmfDialerMoreButtonLabelOff:"Hide dialpad",spokenLanguageStrings:{"ar-ae":"Arabic - U.A.E.","ar-sa":"Arabic - Saudi Arabia","da-dk":"Danish","de-de":"German - Germany","en-au":"English - Australia","en-ca":"English - Canada","en-gb":"English - United Kingdom","en-in":"English - India","en-nz":"English - New Zealand","en-us":"English - United States","es-es":"Spanish - Spain (Modern Sort)","es-mx":"Spanish - Mexico","fi-fi":"Finnish","fr-ca":"French - Canada","fr-fr":"French - France","hi-in":"Hindi","it-it":"Italian - Italy","ja-jp":"Japanese","ko-kr":"Korean","nb-no":"Norwegian (Bokmål)","nl-be":"Dutch - Belgium","nl-nl":"Dutch - Netherlands","pl-pl":"Polish","pt-br":"Portuguese - Brazil","ru-ru":"Russian","sv-se":"Swedish","zh-cn":"Chinese - People's Republic of China","zh-hk":"Chinese - Hong Kong SAR","cs-cz":"Czech","pt-pt":"Portuguese - Portugal","tr-tr":"Turkish","vi-vn":"Vietnamese","th-th":"Thai","he-il":"Hebrew","cy-gb":"Welsh","uk-ua":"Ukrainian","el-gr":"Greek","hu-hu":"Hungarian","ro-ro":"Romanian","sk-sk":"Slovak","zh-tw":"Chinese - Taiwan"},captionLanguageStrings:{ar:"Arabic",da:"Danish",de:"German",en:"English",es:"Spanish",fi:"Finnish","fr-ca":"French - Canada",fr:"French - France",hi:"Hindi",it:"Italian",ja:"Japanese",ko:"Korean",nb:"Norwegian (Bokmål)",nl:"Dutch",pl:"Polish",pt:"Portuguese - Brazil",ru:"Russian",sv:"Swedish","zh-Hans":"Chinese (Simplified)","zh-Hant":"Chinese (Traditional)",cs:"Czech","pt-pt":"Portuguese - Portugal",tr:"Turkish",vi:"Vietnamese",th:"Thai",he:"Hebrew",cy:"Welsh",uk:"Ukrainian",el:"Greek",hu:"Hungarian",ro:"Romanian",sk:"Slovak"},captionsBannerSpinnerText:"Starting captions...",transferPageTransferorText:"Transferring...",transferPageTransferTargetText:"Connecting...",transferPageUnknownTransferorDisplayName:"Unknown",transferPageUnknownTransferTargetDisplayName:"Unknown",transferPageNoticeString:"You are being transferred",participantCouldNotBeReachedTitle:"Target participant is currently not available",participantCouldNotBeReachedMoreDetails:"Please contact participant when they are available",permissionToReachTargetParticipantNotAllowedTitle:"Permission to reach target participant is not allowed",permissionToReachTargetParticipantNotAllowedMoreDetails:"Please check that the target participant is in the same tenant",unableToResolveTenantTitle:"Unable to resolve tenant id for the target participant",unableToResolveTenantMoreDetails:"Please check the participant id is entered correctly",participantIdIsMalformedTitle:"Participant id is not in the correct format",participantIdIsMalformedMoreDetails:"Please check that the participant id is in the correct format",moreButtonGalleryControlLabel:"View",moreButtonGalleryPositionToggleLabel:"Move gallery to top",moreButtonGallerySpeakerLayoutLabel:"Speaker",moreButtonGalleryFloatingLocalLayoutLabel:"Dynamic",moreButtonGalleryDefaultLayoutLabel:"Gallery view",moreButtonGalleryFocusedContentLayoutLabel:"Focus on content",moreButtonLargeGalleryDefaultLayoutLabel:"Large Gallery",capabilityChangedNotification:{turnVideoOn:{lostDueToMeetingOption:"Your camera has been disabled. You can no longer share video.",grantedDueToMeetingOption:"Your camera has been enabled. Turn it on if you'd like to share video."},unmuteMic:{lostDueToMeetingOption:"Your mic has been disabled. You can no longer unmute.",grantedDueToMeetingOption:"Your mic has been enabled. Unmute if you'd like to speak."},shareScreen:{lostDueToRoleChangeToAttendee:"Your role has been changed. Some actions, like sharing content, won't be available to you.",grantedDueToRoleChangeToPresenter:"You're a presenter. You can share content and facilitate the meeting."}},surveyQuestion:"How was your call today?",starSurveyHelperText:"How was the quality of the call?",starSurveyOneStarText:"The quality was bad.",starSurveyTwoStarText:"The quality was poor.",starSurveyThreeStarText:"The quality was good.",starSurveyFourStarText:"The quality was great.",starSurveyFiveStarText:"The quality was excellent.",surveyConfirmButtonLabel:"Send Feedback",starRatingAriaLabel:"Select {0} of {1} stars",surveyCancelButtonAriaLabel:"Cancel",tagsSurveyQuestion:"What could have been better?",tagsSurveyTextFieldDefaultText:"Other, please specify",tagsSurveyHelperText:"Check any issues you experienced",surveyTextboxDefaultText:"Other, please specify",surveyIssues:{overallRating:{callCannotJoin:"I could not join call",callCannotInvite:"I could not invite others into the call",hadToRejoin:"I had to rejoin the call",callEndedUnexpectedly:"Call ended for me unexpectedly",otherIssues:"I was having other issues with the call"},audioRating:{noLocalAudio:"The other side could not hear any sound",noRemoteAudio:"I could not hear any sound",echo:"I heard echos on the call",audioNoise:"I heard noise on the call",lowVolume:"Volume was low",audioStoppedUnexpectedly:"Audio stopped unexpectedly",distortedSpeech:"Audio was distorted",audioInterruption:"Audio was interrupted",otherIssues:"I was having other audio issues in this call"},videoRating:{noVideoReceived:"I could not see any video",noVideoSent:"Others could not see me",lowQuality:"Video quality was low",freezes:"Video frozen",stoppedUnexpectedly:"Video stopped unexpectedly",darkVideoReceived:"I can only see dark screens when others turn on their camera",audioVideoOutOfSync:"Audio and Video was out of sync",otherIssues:"I was having other video issues in this call"},screenshareRating:{noContentLocal:"Other people could not see my screenshare",noContentRemote:"I could not see other people's screenshare",cannotPresent:"I could not present my screen",lowQuality:"Screen share quality was low",freezes:"Screen share frozen",stoppedUnexpectedly:"Screen share stopped unexpectedly",largeDelay:"Screen share has a large delay",otherIssues:"I was having other screen share issues in this call"}},SurveyIssuesHeadingStrings:{overallRating:"Overall",audioRating:"Audio",videoRating:"Video",screenshareRating:"Presenting"}};var chat$k={chatListHeader:"In this chat",uploadFile:"Upload File"};var callWithChat$k={chatButtonLabel:"Chat",chatButtonNewMessageNotificationLabel:"New Message",chatButtonTooltipClosedWithMessageCount:"Show chat ({unreadMessagesCount} unread)",chatButtonTooltipClose:"Hide chat",chatButtonTooltipOpen:"Show chat",chatPaneTitle:"Chat",copyInviteLinkButtonLabel:"Copy invite link",copyInviteLinkActionedAriaLabel:"Invite link copied",dismissSidePaneButtonLabel:"Close",moreDrawerAudioDeviceMenuTitle:"Audio Device",moreDrawerButtonLabel:"More options",moreDrawerButtonTooltip:"More options",moreDrawerMicrophoneMenuTitle:"Microphone",moreDrawerSpeakerMenuTitle:"Speaker",moreDrawerCaptionsMenuTitle:"Live captions",moreDrawerSpokenLanguageMenuTitle:"Spoken language",moreDrawerCaptionLanguageMenuTitle:"Caption language",moreDrawerGalleryOptionsMenuTitle:"Gallery options",peopleButtonLabel:"People",selectedPeopleButtonLabel:"People Button Selected",peopleButtonTooltipOpen:"Show participants",peopleButtonTooltipClose:"Hide participants",peoplePaneSubTitle:"In this call",peoplePaneTitle:"People",pictureInPictureTileAriaLabel:"Video Feeds. Click to return to call screen.",removeMenuLabel:"Remove",openDialpadButtonLabel:"Dial phone number",returnToCallButtonAriaDescription:"Return to Call",returnToCallButtonAriaLabel:"Back",peoplePaneAddPeopleButtonLabel:"Add People",dialpadStartCallButtonLabel:"Call",dialpadModalTitle:"Dial Phone Number",dialpadModalAriaLabel:"Dialpad",dialpadCloseModalButtonAriaLabel:"Close dialpad",openDtmfDialpadLabel:"Show dialpad",dtmfDialpadPlaceholderText:"Enter number"};var en_US = {call:call$k,chat:chat$k,callWithChat:callWithChat$k};
22996
22899
 
22997
22900
  // Copyright (c) Microsoft Corporation.
22998
22901
  // Licensed under the MIT License.
@@ -23378,7 +23281,7 @@ class AzureCommunicationChatAdapter {
23378
23281
  /* @conditional-compile-remove(file-sharing) */
23379
23282
  this.updateFileUploadMetadata = this.updateFileUploadMetadata.bind(this);
23380
23283
  /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
23381
- this.downloadAttachments = this.downloadAttachments.bind(this);
23284
+ this.downloadAttachment = this.downloadAttachment.bind(this);
23382
23285
  }
23383
23286
  dispose() {
23384
23287
  this.unsubscribeAllEvents();
@@ -23520,7 +23423,7 @@ class AzureCommunicationChatAdapter {
23520
23423
  this.fileUploadAdapter.updateFileUploadMetadata(id, metadata);
23521
23424
  }
23522
23425
  /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
23523
- downloadAttachments(options) {
23426
+ downloadAttachment(options) {
23524
23427
  return __awaiter$l(this, void 0, void 0, function* () {
23525
23428
  return this.asyncTeeErrorToEventEmitter(() => __awaiter$l(this, void 0, void 0, function* () {
23526
23429
  if (this.credential === undefined) {
@@ -23549,13 +23452,9 @@ class AzureCommunicationChatAdapter {
23549
23452
  }
23550
23453
  });
23551
23454
  }
23552
- const attachmentDownloadResults = [];
23553
- for (const id in options.attachmentUrls) {
23554
- const response = yield fetchWithAuthentication(options.attachmentUrls[id], accessToken);
23555
- const blob = yield response.blob();
23556
- attachmentDownloadResults.push({ attachmentId: id, blobUrl: URL.createObjectURL(blob) });
23557
- }
23558
- return attachmentDownloadResults;
23455
+ const response = yield fetchWithAuthentication(options.attachmentUrl, accessToken);
23456
+ const blob = yield response.blob();
23457
+ return { blobUrl: URL.createObjectURL(blob) };
23559
23458
  });
23560
23459
  }
23561
23460
  messageReceivedListener(event) {
@@ -24590,9 +24489,9 @@ const ChatScreen = (props) => {
24590
24489
  }
24591
24490
  if (attachment.attachmentType === 'inlineImage' && attachment.url) {
24592
24491
  // TBD: Need to begin investigating how to download HQ images.
24593
- const blob = yield adapter.downloadAttachments({ attachmentUrls: { [attachment.id]: attachment.url } });
24594
- if (blob[0]) {
24595
- const blobUrl = blob[0].blobUrl;
24492
+ const blob = yield adapter.downloadAttachment({ attachmentUrl: attachment.url });
24493
+ if (blob) {
24494
+ const blobUrl = blob.blobUrl;
24596
24495
  setFullSizeAttachments((prev) => (Object.assign(Object.assign({}, prev), { [attachment.id]: blobUrl })));
24597
24496
  setGalleryImages([
24598
24497
  Object.assign(Object.assign({}, galleryImage), { imageUrl: blobUrl })
@@ -24888,6 +24787,10 @@ const INVITE_TO_ROOM_REMOVED_SUB_CODE = 5317;
24888
24787
  const CALL_TIMEOUT_SUB_CODE = 10004;
24889
24788
  /** @private */
24890
24789
  const CALL_TIMEOUT_CODE = 487;
24790
+ /** @private */
24791
+ const BOT_TIMEOUT_CODE = 486;
24792
+ /** @private */
24793
+ const BOT_TIMEOUT_SUB_CODE = 10321;
24891
24794
  /**
24892
24795
  * @private
24893
24796
  */
@@ -24963,7 +24866,7 @@ const getCallEndReason = (call) => {
24963
24866
  * @private
24964
24867
  */
24965
24868
  const getEndedCallPageProps = (locale, endedCall) => {
24966
- var _a, _b, _c, _d;
24869
+ var _a, _b, _c, _d, _e;
24967
24870
  let title = locale.strings.call.leftCallTitle;
24968
24871
  let moreDetails = locale.strings.call.leftCallMoreDetails;
24969
24872
  let disableStartCallButton = false;
@@ -25009,9 +24912,18 @@ const getEndedCallPageProps = (locale, endedCall) => {
25009
24912
  disableStartCallButton = true;
25010
24913
  iconName = 'NoticePageCallTimeout';
25011
24914
  }
24915
+ break;
24916
+ case BOT_TIMEOUT_SUB_CODE:
24917
+ if (((_c = endedCall === null || endedCall === void 0 ? void 0 : endedCall.callEndReason) === null || _c === void 0 ? void 0 : _c.code) === BOT_TIMEOUT_CODE && locale.strings.call.callTimeoutBotTitle) {
24918
+ title = locale.strings.call.callTimeoutBotTitle;
24919
+ moreDetails = locale.strings.call.callTimeoutBotDetails;
24920
+ disableStartCallButton = true;
24921
+ iconName = 'NoticePageCallTimeout';
24922
+ }
24923
+ break;
25012
24924
  }
25013
24925
  /* @conditional-compile-remove(calling-sounds) */
25014
- switch ((_c = endedCall === null || endedCall === void 0 ? void 0 : endedCall.callEndReason) === null || _c === void 0 ? void 0 : _c.code) {
24926
+ switch ((_d = endedCall === null || endedCall === void 0 ? void 0 : endedCall.callEndReason) === null || _d === void 0 ? void 0 : _d.code) {
25015
24927
  case CALL_REJECTED_CODE$1:
25016
24928
  if (locale.strings.call.callRejectedTitle) {
25017
24929
  title = locale.strings.call.callRejectedTitle;
@@ -25022,7 +24934,7 @@ const getEndedCallPageProps = (locale, endedCall) => {
25022
24934
  break;
25023
24935
  }
25024
24936
  /* @conditional-compile-remove(teams-adhoc-call) */
25025
- switch ((_d = endedCall === null || endedCall === void 0 ? void 0 : endedCall.callEndReason) === null || _d === void 0 ? void 0 : _d.subCode) {
24937
+ switch ((_e = endedCall === null || endedCall === void 0 ? void 0 : endedCall.callEndReason) === null || _e === void 0 ? void 0 : _e.subCode) {
25026
24938
  case 10037:
25027
24939
  if (locale.strings.call.participantCouldNotBeReachedTitle) {
25028
24940
  title = locale.strings.call.participantCouldNotBeReachedTitle;
@@ -29796,7 +29708,6 @@ const MediaGallery = (props) => {
29796
29708
  return (React.createElement(react.Stack, { className: react.mergeStyles({ position: 'absolute', height: '100%', width: '100%' }) },
29797
29709
  React.createElement(react.Stack, { styles: { root: { margin: 'auto', maxHeight: '100%' } } }, (options === null || options === void 0 ? void 0 : options.coinSize) && (React.createElement(AvatarPersona, Object.assign({ userId: userId }, options, { dataProvider: props.onFetchAvatarPersonaData }))))));
29798
29710
  }, [props.onFetchAvatarPersonaData]);
29799
- /* @conditional-compile-remove(pinned-participants) */
29800
29711
  const remoteVideoTileMenuOptions = React.useMemo(() => {
29801
29712
  var _a;
29802
29713
  return ((_a = props.remoteVideoTileMenuOptions) === null || _a === void 0 ? void 0 : _a.isHidden)
@@ -29826,9 +29737,7 @@ const MediaGallery = (props) => {
29826
29737
  /* @conditional-compile-remove(gallery-layouts) */
29827
29738
  return props.localVideoTileOptions ? layoutBasedOnTilePosition : props.userSetGalleryLayout;
29828
29739
  };
29829
- return (React.createElement(VideoGallery, Object.assign({}, videoGalleryProps, { localVideoViewOptions: localVideoViewOptions$2, remoteVideoViewOptions: remoteVideoViewOptions, styles: VideoGalleryStyles, layout: layoutBasedOnUserSelection(), showCameraSwitcherInLocalPreview: props.isMobile, localVideoCameraCycleButtonProps: cameraSwitcherProps, onRenderAvatar: onRenderAvatar,
29830
- /* @conditional-compile-remove(pinned-participants) */
29831
- remoteVideoTileMenu: remoteVideoTileMenuOptions,
29740
+ return (React.createElement(VideoGallery, Object.assign({}, videoGalleryProps, { localVideoViewOptions: localVideoViewOptions$2, remoteVideoViewOptions: remoteVideoViewOptions, styles: VideoGalleryStyles, layout: layoutBasedOnUserSelection(), showCameraSwitcherInLocalPreview: props.isMobile, localVideoCameraCycleButtonProps: cameraSwitcherProps, onRenderAvatar: onRenderAvatar, remoteVideoTileMenu: remoteVideoTileMenuOptions,
29832
29741
  /* @conditional-compile-remove(vertical-gallery) */
29833
29742
  overflowGalleryPosition: overflowGalleryPosition,
29834
29743
  /* @conditional-compile-remove(rooms) */
@@ -29850,7 +29759,6 @@ const MediaGallery = (props) => {
29850
29759
  props.localVideoTileOptions,
29851
29760
  cameraSwitcherProps,
29852
29761
  onRenderAvatar,
29853
- /* @conditional-compile-remove(pinned-participants) */
29854
29762
  remoteVideoTileMenuOptions,
29855
29763
  /* @conditional-compile-remove(vertical-gallery) */
29856
29764
  overflowGalleryPosition,
@@ -30219,9 +30127,7 @@ const CallPage = (props) => {
30219
30127
  capabilitiesChangedNotificationBarProps: props.capabilitiesChangedNotificationBarProps, onSetDialpadPage: () => setDtmfDialerPresent(!dtmfDialerPresent), dtmfDialerPresent: dtmfDialerPresent }));
30220
30128
  }
30221
30129
  else {
30222
- return (React.createElement(MediaGallery, Object.assign({ isMobile: mobileView }, mediaGalleryProps, mediaGalleryHandlers, { onFetchAvatarPersonaData: onFetchAvatarPersonaData,
30223
- /* @conditional-compile-remove(pinned-participants) */
30224
- remoteVideoTileMenuOptions: options === null || options === void 0 ? void 0 : options.remoteVideoTileMenuOptions, drawerMenuHostId: drawerMenuHostId,
30130
+ return (React.createElement(MediaGallery, Object.assign({ isMobile: mobileView }, mediaGalleryProps, mediaGalleryHandlers, { onFetchAvatarPersonaData: onFetchAvatarPersonaData, remoteVideoTileMenuOptions: options === null || options === void 0 ? void 0 : options.remoteVideoTileMenuOptions, drawerMenuHostId: drawerMenuHostId,
30225
30131
  /* @conditional-compile-remove(click-to-call) */
30226
30132
  localVideoTileOptions: options === null || options === void 0 ? void 0 : options.localVideoTile,
30227
30133
  /* @conditional-compile-remove(gallery-layouts) */
@@ -34577,9 +34483,9 @@ class CallWithChatBackedChatAdapter {
34577
34483
  this.callWithChatAdapter = callWithChatAdapter;
34578
34484
  }
34579
34485
  /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
34580
- downloadAttachments(options) {
34486
+ downloadAttachment(options) {
34581
34487
  return __awaiter$3(this, void 0, void 0, function* () {
34582
- return yield this.callWithChatAdapter.downloadAttachments(options);
34488
+ return yield this.callWithChatAdapter.downloadAttachment(options);
34583
34489
  });
34584
34490
  }
34585
34491
  }
@@ -34865,7 +34771,6 @@ const CallWithChatScreen = (props) => {
34865
34771
  onPermissionsTroubleshootingClick: props.onPermissionsTroubleshootingClick,
34866
34772
  /* @conditional-compile-remove(unsupported-browser) */
34867
34773
  onEnvironmentInfoTroubleshootingClick: props.onEnvironmentInfoTroubleshootingClick,
34868
- /* @conditional-compile-remove(pinned-participants) */
34869
34774
  remoteVideoTileMenuOptions: props.remoteVideoTileMenuOptions,
34870
34775
  /* @conditional-compile-remove(gallery-layouts) */
34871
34776
  galleryOptions: props.galleryOptions,
@@ -34896,7 +34801,6 @@ const CallWithChatScreen = (props) => {
34896
34801
  props.galleryOptions,
34897
34802
  /* @conditional-compile-remove(click-to-call) */
34898
34803
  props.localVideoTile,
34899
- /* @conditional-compile-remove(pinned-participants) */
34900
34804
  props.remoteVideoTileMenuOptions,
34901
34805
  /* @conditional-compile-remove(end-of-call-survey) */
34902
34806
  surveyOptions,
@@ -34962,9 +34866,7 @@ const CallWithChatComposite = (props) => {
34962
34866
  return (React.createElement(BaseProvider, { fluentTheme: fluentTheme, rtl: rtl, locale: props.locale, icons: props.icons },
34963
34867
  React.createElement(CallWithChatScreen, Object.assign({}, props, {
34964
34868
  /* @conditional-compile-remove(call-readiness) */
34965
- deviceChecks: options === null || options === void 0 ? void 0 : options.deviceChecks, callWithChatAdapter: adapter, formFactor: formFactor, callControls: options === null || options === void 0 ? void 0 : options.callControls, joinInvitationURL: joinInvitationURL, fluentTheme: fluentTheme,
34966
- /* @conditional-compile-remove(pinned-participants) */
34967
- remoteVideoTileMenuOptions: options === null || options === void 0 ? void 0 : options.remoteVideoTileMenuOptions,
34869
+ deviceChecks: options === null || options === void 0 ? void 0 : options.deviceChecks, callWithChatAdapter: adapter, formFactor: formFactor, callControls: options === null || options === void 0 ? void 0 : options.callControls, joinInvitationURL: joinInvitationURL, fluentTheme: fluentTheme, remoteVideoTileMenuOptions: options === null || options === void 0 ? void 0 : options.remoteVideoTileMenuOptions,
34968
34870
  /* @conditional-compile-remove(file-sharing) */
34969
34871
  fileSharing: options === null || options === void 0 ? void 0 : options.fileSharing,
34970
34872
  /* @conditional-compile-remove(click-to-call) */
@@ -35227,7 +35129,7 @@ class AzureCommunicationCallWithChatAdapter {
35227
35129
  /* @conditional-compile-remove(file-sharing) */
35228
35130
  this.updateFileUploadMetadata = this.updateFileUploadMetadata.bind(this);
35229
35131
  /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
35230
- this.downloadAttachments = this.downloadAttachments.bind(this);
35132
+ this.downloadAttachment = this.downloadAttachment.bind(this);
35231
35133
  /* @conditional-compile-remove(PSTN-calls) */
35232
35134
  this.holdCall.bind(this);
35233
35135
  /* @conditional-compile-remove(PSTN-calls) */
@@ -35478,9 +35380,9 @@ class AzureCommunicationCallWithChatAdapter {
35478
35380
  });
35479
35381
  }
35480
35382
  /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
35481
- downloadAttachments(options) {
35383
+ downloadAttachment(options) {
35482
35384
  return __awaiter$2(this, void 0, void 0, function* () {
35483
- return yield this.chatAdapter.downloadAttachments(options);
35385
+ return yield this.chatAdapter.downloadAttachment(options);
35484
35386
  });
35485
35387
  }
35486
35388
  /* @conditional-compile-remove(PSTN-calls) */