@azure/communication-react 1.16.0-alpha-202404180013 → 1.16.0-alpha-202404191930

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 (123) hide show
  1. package/dist/communication-react.d.ts +4 -4
  2. package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-C3t87AZz.js → ChatMessageComponentAsRichTextEditBox-4y1CWxBv.js} +2 -2
  3. package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-C3t87AZz.js.map → ChatMessageComponentAsRichTextEditBox-4y1CWxBv.js.map} +1 -1
  4. package/dist/dist-cjs/communication-react/{index-BP7335hI.js → index-B-wg-pZ5.js} +81 -230
  5. package/dist/dist-cjs/communication-react/index-B-wg-pZ5.js.map +1 -0
  6. package/dist/dist-cjs/communication-react/index.js +1 -1
  7. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  8. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  9. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +0 -1
  10. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  11. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +0 -2
  12. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
  13. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +0 -2
  14. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
  15. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js +0 -2
  16. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  17. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +3 -13
  18. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
  19. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js +1 -3
  20. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js.map +1 -1
  21. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.d.ts +2 -1
  22. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +6 -13
  23. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  24. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js +2 -10
  25. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
  26. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  27. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +0 -4
  28. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  29. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +0 -3
  30. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  31. package/dist/dist-esm/calling-stateful-client/src/Converter.js +0 -1
  32. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  33. package/dist/dist-esm/calling-stateful-client/src/ReactionSubscriber.js +0 -1
  34. package/dist/dist-esm/calling-stateful-client/src/ReactionSubscriber.js.map +1 -1
  35. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  36. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  37. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js +4 -4
  38. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js.map +1 -1
  39. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js +1 -1
  40. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js.map +1 -1
  41. package/dist/dist-esm/react-components/src/components/Drawer/ReactionDrawerMenuItem.js +0 -8
  42. package/dist/dist-esm/react-components/src/components/Drawer/ReactionDrawerMenuItem.js.map +1 -1
  43. package/dist/dist-esm/react-components/src/components/Drawer/index.js +0 -1
  44. package/dist/dist-esm/react-components/src/components/Drawer/index.js.map +1 -1
  45. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js +3 -11
  46. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
  47. package/dist/dist-esm/react-components/src/components/MeetingReactionOverlay.js +0 -7
  48. package/dist/dist-esm/react-components/src/components/MeetingReactionOverlay.js.map +1 -1
  49. package/dist/dist-esm/react-components/src/components/ReactionButton.js +0 -10
  50. package/dist/dist-esm/react-components/src/components/ReactionButton.js.map +1 -1
  51. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +2 -7
  52. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  53. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.js +11 -4
  54. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.js.map +1 -1
  55. package/dist/dist-esm/react-components/src/components/VideoGallery/ParticipantVideoTileOverlay.js +0 -6
  56. package/dist/dist-esm/react-components/src/components/VideoGallery/ParticipantVideoTileOverlay.js.map +1 -1
  57. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteContentShareReactionOverlay.js +0 -10
  58. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteContentShareReactionOverlay.js.map +1 -1
  59. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js +3 -14
  60. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js.map +1 -1
  61. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/reactionUtils.js +0 -6
  62. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/reactionUtils.js.map +1 -1
  63. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +0 -2
  64. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  65. package/dist/dist-esm/react-components/src/components/VideoGallery.js +6 -21
  66. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  67. package/dist/dist-esm/react-components/src/components/VideoTile.js +1 -4
  68. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  69. package/dist/dist-esm/react-components/src/components/index.js +0 -1
  70. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  71. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.d.ts +1 -1
  72. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js +4 -1
  73. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js.map +1 -1
  74. package/dist/dist-esm/react-components/src/components/styles/ReactionButton.styles.js +0 -7
  75. package/dist/dist-esm/react-components/src/components/styles/ReactionButton.styles.js.map +1 -1
  76. package/dist/dist-esm/react-components/src/components/styles/ReactionOverlay.style.js +0 -17
  77. package/dist/dist-esm/react-components/src/components/styles/ReactionOverlay.style.js.map +1 -1
  78. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js +2 -1
  79. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js.map +1 -1
  80. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js +0 -4
  81. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js.map +1 -1
  82. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  83. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  84. package/dist/dist-esm/react-components/src/theming/icons.js +1 -7
  85. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  86. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js.map +1 -1
  87. package/dist/dist-esm/react-components/src/types/ReactionTypes.js.map +1 -1
  88. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
  89. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +1 -3
  90. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  91. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  92. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.d.ts +4 -4
  93. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js.map +1 -1
  94. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js.map +1 -1
  95. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +1 -3
  96. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  97. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +0 -11
  98. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  99. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +1 -5
  100. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  101. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Reaction.js +0 -6
  102. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Reaction.js.map +1 -1
  103. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +0 -1
  104. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  105. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.d.ts +2 -1
  106. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
  107. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +7 -1
  108. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +26 -4
  109. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  110. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  111. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +0 -2
  112. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  113. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js +0 -1
  114. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js.map +1 -1
  115. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +0 -9
  116. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -1
  117. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +0 -2
  118. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -1
  119. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.js.map +1 -1
  120. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  121. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js.map +1 -1
  122. package/package.json +2 -2
  123. package/dist/dist-cjs/communication-react/index-BP7335hI.js.map +0 -1
@@ -176,7 +176,7 @@ function getDefaultExportFromCjs (x) {
176
176
  // Copyright (c) Microsoft Corporation.
177
177
  // Licensed under the MIT License.
178
178
  // GENERATED FILE. DO NOT EDIT MANUALLY.
179
- var telemetryVersion = '1.16.0-alpha-202404180013';
179
+ var telemetryVersion = '1.16.0-alpha-202404191930';
180
180
 
181
181
 
182
182
  var telemetryVersion$1 = /*@__PURE__*/getDefaultExportFromCjs(telemetryVersion);
@@ -424,7 +424,6 @@ const getSpotlightCallFeature = (state, props) => {
424
424
  var _a;
425
425
  return (_a = state.calls[props.callId]) === null || _a === void 0 ? void 0 : _a.spotlight;
426
426
  };
427
- /* @conditional-compile-remove(reaction) */
428
427
  /**
429
428
  * @private
430
429
  */
@@ -685,7 +684,6 @@ const raiseHandButtonSelector = reselect__namespace.createSelector([getLocalPart
685
684
  disabled: callState === 'InLobby' ? true : (_a = callState === 'Connecting') !== null && _a !== void 0 ? _a : false
686
685
  };
687
686
  });
688
- /* @conditional-compile-remove(reaction) */
689
687
  /**
690
688
  * Selector for {@link ReactionButton} component.
691
689
  *
@@ -909,7 +907,6 @@ const createDefaultCommonCallingHandlers = memoizeOne((callClient, deviceManager
909
907
  yield (raiseHandFeature === null || raiseHandFeature === void 0 ? void 0 : raiseHandFeature.raiseHand());
910
908
  }
911
909
  });
912
- /* @conditional-compile-remove(reaction) */
913
910
  const onReactionClick = (reaction) => __awaiter$R(void 0, void 0, void 0, function* () {
914
911
  var _c;
915
912
  if (reaction === 'like' ||
@@ -1190,7 +1187,6 @@ const createDefaultCommonCallingHandlers = memoizeOne((callClient, deviceManager
1190
1187
  onRaiseHand,
1191
1188
  onLowerHand,
1192
1189
  onToggleRaiseHand,
1193
- /* @conditional-compile-remove(reaction) */
1194
1190
  onReactionClick: onReactionClick,
1195
1191
  /* @conditional-compile-remove(PSTN-calls) */
1196
1192
  onAddParticipant: notImplemented,
@@ -1860,7 +1856,6 @@ function convertSdkCallToDeclarativeCall(call) {
1860
1856
  /* @conditional-compile-remove(ppt-live) */
1861
1857
  pptLive: { isActive: false },
1862
1858
  raiseHand: { raisedHands: [] },
1863
- /* @conditional-compile-remove(reaction) */
1864
1859
  localParticipantReaction: undefined,
1865
1860
  transcription: { isTranscriptionActive: false },
1866
1861
  screenShareRemoteParticipant: undefined,
@@ -1961,7 +1956,6 @@ immer.enablePatches();
1961
1956
  * @private
1962
1957
  */
1963
1958
  const MAX_CALL_HISTORY_LENGTH = 10;
1964
- /* @conditional-compile-remove(reaction) */
1965
1959
  /**
1966
1960
  * @private
1967
1961
  */
@@ -1973,7 +1967,6 @@ let CallContext$2 = class CallContext {
1973
1967
  constructor(userId, maxListeners = 50,
1974
1968
  /* @conditional-compile-remove(PSTN-calls) */ alternateCallerId) {
1975
1969
  this._callIdHistory = new CallIdHistory();
1976
- /* @conditional-compile-remove(reaction) */
1977
1970
  this._timeOutId = {};
1978
1971
  /**
1979
1972
  * Tees direct errors to state.
@@ -2325,7 +2318,6 @@ let CallContext$2 = class CallContext {
2325
2318
  }
2326
2319
  });
2327
2320
  }
2328
- /* @conditional-compile-remove(reaction) */
2329
2321
  setReceivedReactionFromParticipant(callId, participantKey, reactionMessage) {
2330
2322
  this.modifyState((draft) => {
2331
2323
  const call = draft.calls[this._callIdHistory.latestCallId(callId)];
@@ -2915,7 +2907,6 @@ const findOldestCallEnded = (calls) => {
2915
2907
  }
2916
2908
  return oldestCallId;
2917
2909
  };
2918
- /* @conditional-compile-remove(reaction) */
2919
2910
  function clearParticipantReactionState(callContext, callId, participantKey) {
2920
2911
  callContext.setReceivedReactionFromParticipant(callId, participantKey, null);
2921
2912
  }
@@ -4106,7 +4097,6 @@ class CapabilitiesSubscriber {
4106
4097
 
4107
4098
  // Copyright (c) Microsoft Corporation.
4108
4099
  // Licensed under the MIT License.
4109
- /* @conditional-compile-remove(reaction) */
4110
4100
  /**
4111
4101
  * @private
4112
4102
  */
@@ -4265,7 +4255,6 @@ class CallSubscriber {
4265
4255
  (_b = this._CaptionsFeatureSubscriber) === null || _b === void 0 ? void 0 : _b.unsubscribe();
4266
4256
  (_c = this._raiseHandSubscriber) === null || _c === void 0 ? void 0 : _c.unsubscribe();
4267
4257
  this._capabilitiesSubscriber.unsubscribe();
4268
- /* @conditional-compile-remove(reaction) */
4269
4258
  (_d = this._reactionSubscriber) === null || _d === void 0 ? void 0 : _d.unsubscribe();
4270
4259
  /* @conditional-compile-remove(spotlight) */
4271
4260
  this._spotlightSubscriber.unsubscribe();
@@ -4364,7 +4353,6 @@ class CallSubscriber {
4364
4353
  this._pptLiveSubscriber = new PPTLiveSubscriber(this._callIdRef, this._context, this._call);
4365
4354
  this._transcriptionSubscriber = new TranscriptionSubscriber(this._callIdRef, this._context, this._call.feature(communicationCalling.Features.Transcription));
4366
4355
  this._raiseHandSubscriber = new RaiseHandSubscriber(this._callIdRef, this._context, this._call.feature(communicationCalling.Features.RaiseHand));
4367
- /* @conditional-compile-remove(reaction) */
4368
4356
  this._reactionSubscriber = new ReactionSubscriber(this._callIdRef, this._context, this._call.feature(communicationCalling.Features.Reaction));
4369
4357
  this._optimalVideoCountSubscriber = new OptimalVideoCountSubscriber({
4370
4358
  callIdRef: this._callIdRef,
@@ -6748,11 +6736,9 @@ const GalleryRightButton = () => {
6748
6736
  return rtl ? React.createElement(reactIcons.ChevronLeft20Regular, null) : React.createElement(reactIcons.ChevronRight20Regular, null);
6749
6737
  };
6750
6738
  const ControlButtonRaiseHandIcon = () => {
6751
- /* @conditional-compile-remove(reaction) */
6752
6739
  return React.createElement(reactIcons.HandRight20Regular, null);
6753
6740
  };
6754
6741
  const ControlButtonLowerHandIcon = () => {
6755
- /* @conditional-compile-remove(reaction) */
6756
6742
  return React.createElement(reactIcons.HandRightOff20Regular, null);
6757
6743
  };
6758
6744
  /**
@@ -6778,7 +6764,6 @@ const DEFAULT_COMPONENT_ICONS = {
6778
6764
  ControlButtonLowerHand: React.createElement(ControlButtonLowerHandIcon, null),
6779
6765
  RaiseHandContextualMenuItem: React.createElement(reactIcons.HandRight20Regular, null),
6780
6766
  LowerHandContextualMenuItem: React.createElement(reactIcons.HandRightOff20Regular, null),
6781
- /* @conditional-compile-remove(reaction) */
6782
6767
  ReactionButtonIcon: React.createElement(reactIcons.Emoji20Regular, null),
6783
6768
  /* @conditional-compile-remove(attachment-upload) */
6784
6769
  CancelAttachmentUpload: React.createElement(reactIcons.Dismiss16Regular, null),
@@ -10072,7 +10057,8 @@ const insertTableMenuFocusZone = (theme) => {
10072
10057
  return react.mergeStyles({
10073
10058
  lineHeight: '12px',
10074
10059
  width: '5.125rem',
10075
- border: `solid 0.0625rem ${theme.palette.neutralTertiaryAlt}`
10060
+ border: `solid 0.0625rem ${theme.palette.neutralTertiaryAlt}`,
10061
+ boxSizing: 'border-box'
10076
10062
  });
10077
10063
  };
10078
10064
  /**
@@ -10642,10 +10628,17 @@ const RichTextEditor = React.forwardRef((props, ref) => {
10642
10628
  onKeyDown: props.onKeyDown, focusOnInit: autoFocus === 'sendBoxTextField' }))));
10643
10629
  });
10644
10630
  const focusAndUpdateContent = (editor, content) => {
10645
- // focus the editor to set correct selection position
10646
- editor.focus();
10647
- // set initial content
10631
+ // setting focus before setting content, works for Chrome and Edge but not Safari
10648
10632
  editor.setContent(content);
10633
+ // this is a recommended way (by RoosterJS team) to set focus at the end of the text
10634
+ // RoosterJS v9 has this issue fixed and this code can be removed
10635
+ editor.insertContent('<span id="focus-position-span"></span>', { position: roosterjsEditorTypesCompatible.CompatibleContentPosition.DomEnd });
10636
+ const elements = editor.queryElements('#focus-position-span');
10637
+ if (elements.length > 0) {
10638
+ const placeholder = editor.queryElements('#focus-position-span')[0];
10639
+ editor.select(placeholder, roosterjsEditorTypesCompatible.CompatiblePositionType.Before);
10640
+ placeholder.remove();
10641
+ }
10649
10642
  };
10650
10643
 
10651
10644
  // Copyright (c) Microsoft Corporation.
@@ -11238,7 +11231,7 @@ const useChatMessageStyles = reactComponents.makeStyles({
11238
11231
  }, '& video': {
11239
11232
  maxWidth: '100% !important', // Add !important to make sure it won't be overridden by style defined in element
11240
11233
  height: 'auto !important'
11241
- }, '& p': Object.assign({}, reactComponents.shorthands.marginBlock('0.125rem')), '& blockquote': Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ backgroundColor: reactComponents.tokens.colorBrandBackgroundInverted, clear: 'left', minHeight: '2.25rem', width: 'fit-content', marginTop: '7px', marginRight: '0px', marginLeft: '0px', marginBottom: '7px', paddingTop: '7px', paddingRight: '15px', paddingLeft: '15px', paddingBottom: '7px' }, reactComponents.shorthands.border('solid')), reactComponents.shorthands.borderRadius('4px')), reactComponents.shorthands.borderWidth('1px')), reactComponents.shorthands.borderColor(reactComponents.tokens.colorNeutralStroke1Selected)), { borderLeftWidth: '4px' }), '& table': Object.assign(Object.assign({ backgroundColor: reactComponents.tokens.colorBrandBackgroundInverted }, reactComponents.shorthands.borderColor(reactComponents.tokens.colorNeutralStroke1Selected)), { borderCollapse: 'collapse', tableLayout: 'auto', width: '100%', '& tr': Object.assign(Object.assign({}, reactComponents.shorthands.border('1px', 'solid', `${reactComponents.tokens.colorNeutralStroke1Selected}`)), { '& td': Object.assign(Object.assign({}, reactComponents.shorthands.border('1px', 'solid', `${reactComponents.tokens.colorNeutralStroke1Selected}`)), { wordBreak: 'normal', paddingTop: '0px', paddingRight: '5px' }) }) }) }),
11234
+ }, '& p': Object.assign({}, reactComponents.shorthands.marginBlock('0.125rem')), '& blockquote': Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ backgroundColor: reactComponents.tokens.colorBrandBackgroundInverted, clear: 'left', minHeight: '2.25rem', width: 'fit-content', marginTop: '7px', marginRight: '0px', marginLeft: '0px', marginBottom: '7px', paddingTop: '7px', paddingRight: '15px', paddingLeft: '15px', paddingBottom: '7px' }, reactComponents.shorthands.border('solid')), reactComponents.shorthands.borderRadius('4px')), reactComponents.shorthands.borderWidth('1px')), reactComponents.shorthands.borderColor(reactComponents.tokens.colorNeutralStroke1Selected)), { borderLeftWidth: '4px' }) }),
11242
11235
  bodyWithPlaceholderImage: {
11243
11236
  '& img[src=""]': {
11244
11237
  display: 'block',
@@ -11274,6 +11267,9 @@ const useChatMessageStyles = reactComponents.makeStyles({
11274
11267
  * @private
11275
11268
  */
11276
11269
  const useChatMessageCommonStyles = reactComponents.makeStyles({
11270
+ body: {
11271
+ '& table': Object.assign(Object.assign({ backgroundColor: reactComponents.tokens.colorBrandBackgroundInverted }, reactComponents.shorthands.borderColor(reactComponents.tokens.colorNeutralStroke1Selected)), { borderCollapse: 'collapse', tableLayout: 'auto', width: '100%', '& tr': Object.assign(Object.assign({}, reactComponents.shorthands.border('1px', 'solid', `${reactComponents.tokens.colorNeutralStroke1Selected}`)), { '& td': Object.assign(Object.assign({}, reactComponents.shorthands.border('1px', 'solid', `${reactComponents.tokens.colorNeutralStroke1Selected}`)), { wordBreak: 'normal', paddingTop: '0px', paddingRight: '5px' }) }) })
11272
+ },
11277
11273
  failed: {
11278
11274
  //TODO: can we reuse a theme color here?
11279
11275
  backgroundColor: 'rgba(168, 0, 0, 0.2)'
@@ -12650,7 +12646,7 @@ const MessageBubble$1 = (props) => {
12650
12646
  React.createElement("div", { key: props.message.messageId },
12651
12647
  React.createElement(reactChat.ChatMyMessage, { attached: attached, key: props.message.messageId, body: {
12652
12648
  // messageContainerStyle used in className and style prop as style prop can't handle CSS selectors
12653
- className: reactComponents.mergeClasses(chatMyMessageStyles.body, isBlockedMessage
12649
+ className: reactComponents.mergeClasses(chatMessageCommonStyles.body, chatMyMessageStyles.body, isBlockedMessage
12654
12650
  ? chatMessageCommonStyles.blocked
12655
12651
  : props.message.status === 'failed'
12656
12652
  ? chatMessageCommonStyles.failed
@@ -12827,7 +12823,7 @@ class ErrorBoundary extends React.Component {
12827
12823
  // Copyright (c) Microsoft Corporation.
12828
12824
  // Licensed under the MIT License.
12829
12825
  /* @conditional-compile-remove(rich-text-editor) */
12830
- const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-C3t87AZz.js'); }));
12826
+ const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-4y1CWxBv.js'); }));
12831
12827
  /**
12832
12828
  * @private
12833
12829
  * Use this function to load RoosterJS dependencies early in the lifecycle.
@@ -12835,7 +12831,7 @@ const ChatMessageComponentAsRichTextEditBox = React.lazy(() => Promise.resolve()
12835
12831
  *
12836
12832
  * @conditional-compile-remove(rich-text-editor)
12837
12833
  */
12838
- const loadChatMessageComponentAsRichTextEditBox = () => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-C3t87AZz.js'); });
12834
+ const loadChatMessageComponentAsRichTextEditBox = () => Promise.resolve().then(function () { return require('./ChatMessageComponentAsRichTextEditBox-4y1CWxBv.js'); });
12839
12835
  /**
12840
12836
  * @private
12841
12837
  */
@@ -13087,9 +13083,7 @@ const MessageBubble = (props) => {
13087
13083
  const isBlockedMessage = /* @conditional-compile-remove(data-loss-prevention) */ message.messageType === 'blocked';
13088
13084
  const chatMessageCommonStyles = useChatMessageCommonStyles();
13089
13085
  const chatMessageStyles = useChatMessageStyles();
13090
- const chatItemMessageContainerClassName = reactComponents.mergeClasses(
13091
- // messageContainerStyle used in className and style prop as style prop can't handle CSS selectors
13092
- chatMessageStyles.body,
13086
+ const chatItemMessageContainerClassName = reactComponents.mergeClasses(chatMessageCommonStyles.body, chatMessageStyles.body,
13093
13087
  // disable placeholder functionality for GA releases as it might confuse users
13094
13088
  chatMessageStyles.bodyWithPlaceholderImage, isBlockedMessage
13095
13089
  ? chatMessageCommonStyles.blocked
@@ -13097,7 +13091,9 @@ const MessageBubble = (props) => {
13097
13091
  ? chatMessageCommonStyles.failed
13098
13092
  : undefined, shouldOverlapAvatarAndMessage ? chatMessageStyles.avatarOverlap : chatMessageStyles.avatarNoOverlap, message.attached === 'top' || message.attached === false
13099
13093
  ? chatMessageStyles.bodyWithAvatar
13100
- : chatMessageStyles.bodyWithoutAvatar, react.mergeStyles(messageContainerStyle));
13094
+ : chatMessageStyles.bodyWithoutAvatar,
13095
+ // messageContainerStyle used in className and style prop as style prop can't handle CSS selectors
13096
+ react.mergeStyles(messageContainerStyle));
13101
13097
  const attached = message.attached === true ? 'center' : message.attached === 'bottom' ? 'bottom' : 'top';
13102
13098
  const chatMessage = (React.createElement(React.Fragment, null,
13103
13099
  React.createElement("div", { key: props.message.messageId },
@@ -14686,8 +14682,6 @@ const _DrawerMenu = (props) => {
14686
14682
 
14687
14683
  // Copyright (c) Microsoft Corporation.
14688
14684
  // Licensed under the MIT License.
14689
- /* @conditional-compile-remove(reaction) */
14690
- /* @conditional-compile-remove(reaction) */
14691
14685
  /**
14692
14686
  * @private
14693
14687
  */
@@ -14699,7 +14693,6 @@ const playFrames$1 = react.memoizeFunction(() => react.keyframes({
14699
14693
  backgroundPosition: '0px 0px'
14700
14694
  }
14701
14695
  }));
14702
- /* @conditional-compile-remove(reaction) */
14703
14696
  /**
14704
14697
  * @param backgroundImage - the uri for the reaction emoji resource
14705
14698
  * @param animationPlayState - the value is either 'running' or 'paused' based on the mouse hover event
@@ -14734,7 +14727,6 @@ const emojiStyles = (backgroundImage, frameCount) => {
14734
14727
  }
14735
14728
  };
14736
14729
  };
14737
- /* @conditional-compile-remove(reaction) */
14738
14730
  /**
14739
14731
  *
14740
14732
  * @private
@@ -14753,7 +14745,6 @@ const reactionEmojiMenuStyles = () => {
14753
14745
  }
14754
14746
  };
14755
14747
  };
14756
- /* @conditional-compile-remove(reaction) */
14757
14748
  /**
14758
14749
  *
14759
14750
  * @private
@@ -14768,7 +14759,6 @@ const reactionToolTipHostStyle = () => {
14768
14759
  }
14769
14760
  };
14770
14761
  };
14771
- /* @conditional-compile-remove(reaction) */
14772
14762
  /**
14773
14763
  *
14774
14764
  * @private
@@ -14783,7 +14773,6 @@ const mobileViewMenuItemStyle = () => {
14783
14773
  height: '2.625rem'
14784
14774
  };
14785
14775
  };
14786
- /* @conditional-compile-remove(reaction) */
14787
14776
  /**
14788
14777
  * @param backgroundImage - the uri for the reaction emoji resource
14789
14778
  * @param animationPlayState - the value is either 'running' or 'paused' based on the mouse hover event
@@ -14815,8 +14804,6 @@ const mobileViewEmojiStyles = (backgroundImage, animationPlayState) => {
14815
14804
 
14816
14805
  // Copyright (c) Microsoft Corporation.
14817
14806
  // Licensed under the MIT License.
14818
- /* @conditional-compile-remove(reaction) */
14819
- /* @conditional-compile-remove(reaction) */
14820
14807
  /**
14821
14808
  * Maps the individual item in menuProps.items passed in the {@link DrawerMenu} into a UI component.
14822
14809
  *
@@ -14851,11 +14838,9 @@ const _ReactionDrawerMenuItem = (props) => {
14851
14838
  }, style: mobileViewEmojiStyles(resourceUrl ? resourceUrl : '', 'running') }));
14852
14839
  }))));
14853
14840
  };
14854
- /* @conditional-compile-remove(reaction) */
14855
14841
  const drawerMenuItemRootStyles = (hoverBackground, fontSize) => (Object.assign(Object.assign({}, fontSize), { height: '3rem', lineHeight: '3rem', padding: '0rem 0.75rem', cursor: 'pointer', ':hover, :focus': {
14856
14842
  background: hoverBackground
14857
14843
  } }));
14858
- /* @conditional-compile-remove(reaction) */
14859
14844
  const disabledDrawerMenuItemRootStyles = (background) => ({
14860
14845
  pointerEvents: 'none',
14861
14846
  background: background,
@@ -15155,25 +15140,19 @@ const useVideoTileContextualMenuProps = (props) => {
15155
15140
 
15156
15141
  // Copyright (c) Microsoft Corporation.
15157
15142
  // Licensed under the MIT License.
15158
- /* @conditional-compile-remove(reaction) */
15159
15143
  /** @private */
15160
15144
  const REACTION_START_DISPLAY_SIZE = 44;
15161
- /* @conditional-compile-remove(reaction) */
15162
15145
  /** @private */
15163
15146
  const REACTION_NUMBER_OF_ANIMATION_FRAMES = 51;
15164
- /* @conditional-compile-remove(reaction) */
15165
15147
  /** @private */
15166
15148
  const REACTION_SCREEN_SHARE_ANIMATION_TIME_MS = 4133;
15167
- /* @conditional-compile-remove(reaction) */
15168
15149
  /** @private */
15169
15150
  const REACTION_DEFAULT_RESOURCE_FRAME_SIZE_PX = 128;
15170
- /* @conditional-compile-remove(reaction) */
15171
15151
  /** @private */
15172
15152
  const getCombinedKey = (userId, reactionType, receivedAt) => {
15173
15153
  const receivedTime = receivedAt.toISOString();
15174
15154
  return userId + reactionType + receivedTime;
15175
15155
  };
15176
- /* @conditional-compile-remove(reaction) */
15177
15156
  /** @private */
15178
15157
  const getReceivedUnixTime = (receivedTime) => {
15179
15158
  return receivedTime.getTime();
@@ -15336,7 +15315,6 @@ const raiseHandLimitedSpaceStyles = {
15336
15315
  // position at the bottom
15337
15316
  bottom: 0
15338
15317
  };
15339
- /* @conditional-compile-remove(reaction) */
15340
15318
  /**
15341
15319
  * @private
15342
15320
  */
@@ -15348,7 +15326,6 @@ const playFrames = react.memoizeFunction((frameHightPx, frameCount) => react.key
15348
15326
  backgroundPosition: `0px ${frameCount * -frameHightPx}px`
15349
15327
  }
15350
15328
  }));
15351
- /* @conditional-compile-remove(reaction) */
15352
15329
  /**
15353
15330
  * @private
15354
15331
  */
@@ -15515,9 +15492,7 @@ const VideoTileMoreOptionsButton = (props) => {
15515
15492
  const VideoTile = (props) => {
15516
15493
  const { children, displayName, initialsName, isMirrored, isMuted,
15517
15494
  /* @conditional-compile-remove(spotlight) */
15518
- isSpotlighted, isPinned, onRenderPlaceholder, renderElement,
15519
- /* @conditional-compile-remove(reaction) */
15520
- overlay: reactionOverlay, showLabel = true, showMuteIndicator = true, styles, userId, noVideoAvailableAriaLabel, isSpeaking, raisedHand, personaMinSize = DEFAULT_PERSONA_MIN_SIZE_PX, personaMaxSize = DEFAULT_PERSONA_MAX_SIZE_PX, contextualMenu } = props;
15495
+ isSpotlighted, isPinned, onRenderPlaceholder, renderElement, overlay: reactionOverlay, showLabel = true, showMuteIndicator = true, styles, userId, noVideoAvailableAriaLabel, isSpeaking, raisedHand, personaMinSize = DEFAULT_PERSONA_MIN_SIZE_PX, personaMaxSize = DEFAULT_PERSONA_MAX_SIZE_PX, contextualMenu } = props;
15521
15496
  const [isHovered, setIsHovered] = React.useState(false);
15522
15497
  const [isFocused, setIsFocused] = React.useState(false);
15523
15498
  // need to set a default otherwise the resizeObserver will get stuck in an infinite loop.
@@ -15625,7 +15600,6 @@ const VideoTile = (props) => {
15625
15600
  ? 0.4
15626
15601
  : 1
15627
15602
  }) }, onRenderPlaceholder ? (onRenderPlaceholder(userId !== null && userId !== void 0 ? userId : '', placeholderOptions, DefaultPlaceholder)) : (React.createElement(DefaultPlaceholder, Object.assign({}, placeholderOptions))))),
15628
- /* @conditional-compile-remove(reaction) */
15629
15603
  reactionOverlay,
15630
15604
  (canShowLabel || participantStateString) && (React.createElement(react.Stack, { horizontal: true, className: tileInfoContainerStyle, tokens: tileInfoContainerTokens },
15631
15605
  React.createElement(react.Stack, { horizontal: true, className: tileInfoStyle },
@@ -15854,7 +15828,6 @@ const putVideoParticipantsFirst = (remoteParticipants) => {
15854
15828
  const remoteParticipantSortedByVideo = videoParticipants.concat(audioParticipants);
15855
15829
  return remoteParticipantSortedByVideo;
15856
15830
  };
15857
- /* @conditional-compile-remove(reaction) */
15858
15831
  /**
15859
15832
  * @private
15860
15833
  */
@@ -15874,7 +15847,6 @@ const getEmojiResource = (reactionName, reactionResources) => {
15874
15847
  }
15875
15848
  return undefined;
15876
15849
  };
15877
- /* @conditional-compile-remove(reaction) */
15878
15850
  /**
15879
15851
  * @private
15880
15852
  */
@@ -15898,8 +15870,6 @@ const getEmojiFrameCount = (reactionName, reactionResources) => {
15898
15870
 
15899
15871
  // Copyright (c) Microsoft Corporation.
15900
15872
  // Licensed under the MIT License.
15901
- /* @conditional-compile-remove(reaction) */
15902
- /* @conditional-compile-remove(reaction) */
15903
15873
  /**
15904
15874
  * Reaction overlay component for Grid
15905
15875
  *
@@ -15957,8 +15927,6 @@ const ParticipantVideoTileOverlay = React.memo((props) => {
15957
15927
 
15958
15928
  // Copyright (c) Microsoft Corporation.
15959
15929
  // Licensed under the MIT License.
15960
- /* @conditional-compile-remove(reaction) */
15961
- /* @conditional-compile-remove(reaction) */
15962
15930
  /**
15963
15931
  * Calculate the start position for a new reaction in the prescriptive wave pattern
15964
15932
  * @private
@@ -15977,7 +15945,6 @@ function generateStartPositionWave(index, halfCanvasWidth, isOriginAtCanvasCente
15977
15945
  const adjustment = scaleStartPos(index);
15978
15946
  return midPointCoordinate + direction * adjustment * halfCanvasWidth;
15979
15947
  }
15980
- /* @conditional-compile-remove(reaction) */
15981
15948
  /**
15982
15949
  * @private
15983
15950
  */
@@ -15988,7 +15955,6 @@ const reactionOverlayStyle = {
15988
15955
  position: 'absolute',
15989
15956
  width: '100%'
15990
15957
  };
15991
- /* @conditional-compile-remove(reaction) */
15992
15958
  /**
15993
15959
  * @private
15994
15960
  */
@@ -15998,7 +15964,6 @@ function getReactionMovementStyle(reactionXPoint) {
15998
15964
  left: `${reactionXPoint}px`
15999
15965
  };
16000
15966
  }
16001
- /* @conditional-compile-remove(reaction) */
16002
15967
  /**
16003
15968
  * Scale metric to determine the start position of a reaction in presentation mode to avoid overlap.
16004
15969
  * @private
@@ -16045,7 +16010,6 @@ function scaleStartPos(index) {
16045
16010
  return 0;
16046
16011
  }
16047
16012
  }
16048
- /* @conditional-compile-remove(reaction) */
16049
16013
  /**
16050
16014
  * We have only one bucket item for presentation style of the reaction animation.
16051
16015
  * We are choosing to keep the array so that, in future, with styles needed to get updated, one
@@ -16061,7 +16025,6 @@ const ReactionStyleBuckets = [
16061
16025
  opacityMax: 0.9
16062
16026
  }
16063
16027
  ];
16064
- /* @conditional-compile-remove(reaction) */
16065
16028
  /**
16066
16029
  * Return a style bucket based on the number of active sprites.
16067
16030
  * For example, the first three reactions should appear at maximum
@@ -16074,7 +16037,6 @@ function getReactionStyleBucket() {
16074
16037
  const index = 0;
16075
16038
  return ReactionStyleBuckets[index];
16076
16039
  }
16077
- /* @conditional-compile-remove(reaction) */
16078
16040
  /**
16079
16041
  * @private
16080
16042
  */
@@ -16086,7 +16048,6 @@ const moveFrames = react.memoizeFunction((maxHeight, travelHeight) => react.keyf
16086
16048
  transform: `translateY(${travelHeight}px)`
16087
16049
  }
16088
16050
  }));
16089
- /* @conditional-compile-remove(reaction) */
16090
16051
  /**
16091
16052
  * @private
16092
16053
  */
@@ -16098,7 +16059,6 @@ const moveAnimationStyles = (maxHeight, travelHeight) => {
16098
16059
  animationTimingFunction: 'cubic-bezier(0, 0.83, 0.19, 1.09)'
16099
16060
  };
16100
16061
  };
16101
- /* @conditional-compile-remove(reaction) */
16102
16062
  /**
16103
16063
  * @private
16104
16064
  */
@@ -16118,7 +16078,6 @@ const opacityTransition = react.memoizeFunction((maxOpacity) => react.keyframes(
16118
16078
  visibility: 'hidden'
16119
16079
  }
16120
16080
  }));
16121
- /* @conditional-compile-remove(reaction) */
16122
16081
  /**
16123
16082
  * @private
16124
16083
  */
@@ -16129,7 +16088,6 @@ const opacityAnimationStyles = (maxOpacity) => {
16129
16088
  animationDuration: `4.133s`
16130
16089
  };
16131
16090
  };
16132
- /* @conditional-compile-remove(reaction) */
16133
16091
  /**
16134
16092
  * @private
16135
16093
  */
@@ -16141,7 +16099,6 @@ const spriteFrames = react.memoizeFunction((numOfFrames, displaySizePx) => react
16141
16099
  backgroundPosition: `0px -${numOfFrames * displaySizePx}px`
16142
16100
  }
16143
16101
  }));
16144
- /* @conditional-compile-remove(reaction) */
16145
16102
  /**
16146
16103
  * @private
16147
16104
  */
@@ -16163,14 +16120,9 @@ const spriteAnimationStyles = (numOfFrames, displaySizePx, imageUrl) => {
16163
16120
 
16164
16121
  // Copyright (c) Microsoft Corporation.
16165
16122
  // Licensed under the MIT License.
16166
- /* @conditional-compile-remove(reaction) */
16167
- /* @conditional-compile-remove(reaction) */
16168
16123
  const MAX_NUMBER_OF_EMOJIS = 50;
16169
- /* @conditional-compile-remove(reaction) */
16170
16124
  const NUMBER_OF_EMOJI_TYPES = 5;
16171
- /* @conditional-compile-remove(reaction) */
16172
16125
  const REACTION_POSITION_ARRAY_SIZE = 55;
16173
- /* @conditional-compile-remove(reaction) */
16174
16126
  /**
16175
16127
  * The overlay responsible for rendering multiple reactions all at once in presentation mode
16176
16128
  * @internal
@@ -16301,26 +16253,21 @@ const RemoteContentShareReactionOverlay = React.memo((props) => {
16301
16253
 
16302
16254
  // Copyright (c) Microsoft Corporation.
16303
16255
  // Licensed under the MIT License.
16304
- /* @conditional-compile-remove(reaction) */
16305
- /* @conditional-compile-remove(reaction) */
16306
16256
  /**
16307
16257
  * Emoji max size
16308
16258
  * @internal
16309
16259
  */
16310
16260
  const DEFAULT_EMOJI_MAX_SIZE_PX = 70;
16311
- /* @conditional-compile-remove(reaction) */
16312
16261
  /**
16313
16262
  * Emoji min size
16314
16263
  * @internal
16315
16264
  */
16316
16265
  const DEFAULT_EMOJI_MIN_SIZE_PX = 32;
16317
- /* @conditional-compile-remove(reaction) */
16318
16266
  /**
16319
16267
  * Emoji resize scale constant
16320
16268
  * @internal
16321
16269
  */
16322
16270
  const REACTION_EMOJI_RESIZE_SCALE_CONSTANT = 3;
16323
- /* @conditional-compile-remove(reaction) */
16324
16271
  /**
16325
16272
  * Reaction overlay component
16326
16273
  *
@@ -16388,8 +16335,7 @@ const _RemoteVideoTile = React.memo((props) => {
16388
16335
  /* @conditional-compile-remove(spotlight) */ isSpotlighted,
16389
16336
  /* @conditional-compile-remove(spotlight) */ onStartSpotlight,
16390
16337
  /* @conditional-compile-remove(spotlight) */ onStopSpotlight,
16391
- /* @conditional-compile-remove(spotlight) */ maxParticipantsToSpotlight, onUpdateScalingMode, disablePinMenuItem, toggleAnnouncerString, strings,
16392
- /* @conditional-compile-remove(reaction) */ reactionResources, streamId } = props;
16338
+ /* @conditional-compile-remove(spotlight) */ maxParticipantsToSpotlight, onUpdateScalingMode, disablePinMenuItem, toggleAnnouncerString, strings, reactionResources, streamId } = props;
16393
16339
  const remoteVideoStreamProps = React.useMemo(() => ({
16394
16340
  isMirrored: remoteVideoViewOptions === null || remoteVideoViewOptions === void 0 ? void 0 : remoteVideoViewOptions.isMirrored,
16395
16341
  isScreenSharingOn,
@@ -16465,7 +16411,6 @@ const _RemoteVideoTile = React.memo((props) => {
16465
16411
  }
16466
16412
  return displayName;
16467
16413
  };
16468
- /* @conditional-compile-remove(reaction) */
16469
16414
  const reactionOverlay = (React.createElement(MeetingReactionOverlay, { overlayMode: "grid-tiles", reaction: remoteParticipant.reaction, reactionResources: reactionResources }));
16470
16415
  /* @conditional-compile-remove(hide-attendee-name) */
16471
16416
  displayName = formatDisplayName();
@@ -16475,9 +16420,7 @@ const _RemoteVideoTile = React.memo((props) => {
16475
16420
  /* @conditional-compile-remove(PSTN-calls) */
16476
16421
  participantState: participantState }, videoTileContextualMenuProps, { isPinned: props.isPinned, onLongTouch: () => setDrawerMenuItemProps(convertContextualMenuItemsToDrawerMenuItemProps$1(contextualMenuProps, () => setDrawerMenuItemProps([]))),
16477
16422
  /* @conditional-compile-remove(spotlight) */
16478
- isSpotlighted: isSpotlighted,
16479
- /* @conditional-compile-remove(reaction) */
16480
- overlay: reactionOverlay })),
16423
+ isSpotlighted: isSpotlighted, overlay: reactionOverlay })),
16481
16424
  drawerMenuItemProps.length > 0 && (React.createElement(react.Layer, { hostId: props.drawerMenuHostId },
16482
16425
  React.createElement(react.Stack, { styles: drawerMenuWrapperStyles },
16483
16426
  React.createElement(_DrawerMenu, { onLightDismiss: () => setDrawerMenuItemProps([]), items: drawerMenuItemProps, heading: remoteParticipant.displayName }))))));
@@ -16587,13 +16530,7 @@ const loadingStyle = react.mergeStyles({
16587
16530
  * https://reactjs.org/docs/react-api.html#reactmemo
16588
16531
  */
16589
16532
  const RemoteScreenShare = React.memo((props) => {
16590
- const { userId, displayName, isMuted, renderElement, onCreateRemoteStreamView, onDisposeRemoteStreamView, isReceiving, participantVideoScalingMode,
16591
- /* @conditional-compile-remove(reaction) */
16592
- reactionResources,
16593
- /* @conditional-compile-remove(reaction) */
16594
- localParticipant,
16595
- /* @conditional-compile-remove(reaction) */
16596
- remoteParticipants,
16533
+ const { userId, displayName, isMuted, renderElement, onCreateRemoteStreamView, onDisposeRemoteStreamView, isReceiving, participantVideoScalingMode, reactionResources, localParticipant, remoteParticipants,
16597
16534
  /* @conditional-compile-remove(ppt-live) */
16598
16535
  isPPTLive } = props;
16599
16536
  const locale = useLocale$1();
@@ -16621,13 +16558,9 @@ const RemoteScreenShare = React.memo((props) => {
16621
16558
  : '';
16622
16559
  /* @conditional-compile-remove(ppt-live) */
16623
16560
  if (isPPTLive) {
16624
- return (React.createElement(VideoTile, { renderElement: renderElement ? (React.createElement(StreamMedia, { videoStreamElement: renderElement, loadingState: isReceiving === false ? 'loading' : 'none' })) : undefined, onRenderPlaceholder: () => React.createElement(LoadingSpinner, { loadingMessage: loadingMessage }),
16625
- /* @conditional-compile-remove(reaction) */
16626
- overlay: React.createElement(MeetingReactionOverlay, { reactionResources: reactionResources, localParticipant: localParticipant, remoteParticipants: remoteParticipants, overlayMode: "screen-share" }) }));
16561
+ return (React.createElement(VideoTile, { renderElement: renderElement ? (React.createElement(StreamMedia, { videoStreamElement: renderElement, loadingState: isReceiving === false ? 'loading' : 'none' })) : undefined, onRenderPlaceholder: () => React.createElement(LoadingSpinner, { loadingMessage: loadingMessage }), overlay: React.createElement(MeetingReactionOverlay, { reactionResources: reactionResources, localParticipant: localParticipant, remoteParticipants: remoteParticipants, overlayMode: "screen-share" }) }));
16627
16562
  }
16628
- return (React.createElement(VideoTile, { displayName: displayName, isMuted: isMuted, renderElement: renderElement ? (React.createElement(StreamMedia, { videoStreamElement: renderElement, loadingState: isReceiving === false ? 'loading' : 'none' })) : undefined, onRenderPlaceholder: () => React.createElement(LoadingSpinner, { loadingMessage: loadingMessage }),
16629
- /* @conditional-compile-remove(reaction) */
16630
- overlay: React.createElement(MeetingReactionOverlay, { reactionResources: reactionResources, localParticipant: localParticipant, remoteParticipants: remoteParticipants, overlayMode: "screen-share" }) }));
16563
+ return (React.createElement(VideoTile, { displayName: displayName, isMuted: isMuted, renderElement: renderElement ? (React.createElement(StreamMedia, { videoStreamElement: renderElement, loadingState: isReceiving === false ? 'loading' : 'none' })) : undefined, onRenderPlaceholder: () => React.createElement(LoadingSpinner, { loadingMessage: loadingMessage }), overlay: React.createElement(MeetingReactionOverlay, { reactionResources: reactionResources, localParticipant: localParticipant, remoteParticipants: remoteParticipants, overlayMode: "screen-share" }) }));
16631
16564
  });
16632
16565
  const LoadingSpinner = (props) => {
16633
16566
  return (React.createElement(react.Stack, { verticalAlign: "center", className: loadingStyle },
@@ -16733,9 +16666,7 @@ const LocalVideoCameraCycleButton = (props) => {
16733
16666
  * @internal
16734
16667
  */
16735
16668
  const _LocalVideoTile = React.memo((props) => {
16736
- const { isAvailable, isMuted, onCreateLocalStreamView, onDisposeLocalStreamView, localVideoViewOptions, renderElement, userId, showLabel, displayName, initialsName, onRenderAvatar, showMuteIndicator, styles, showCameraSwitcherInLocalPreview, localVideoCameraCycleButtonProps, localVideoCameraSwitcherLabel, localVideoSelectedDescription, raisedHand,
16737
- /* @conditional-compile-remove(reaction) */
16738
- reaction,
16669
+ const { isAvailable, isMuted, onCreateLocalStreamView, onDisposeLocalStreamView, localVideoViewOptions, renderElement, userId, showLabel, displayName, initialsName, onRenderAvatar, showMuteIndicator, styles, showCameraSwitcherInLocalPreview, localVideoCameraCycleButtonProps, localVideoCameraSwitcherLabel, localVideoSelectedDescription, raisedHand, reaction,
16739
16670
  /* @conditional-compile-remove(spotlight) */
16740
16671
  isSpotlighted,
16741
16672
  /* @conditional-compile-remove(spotlight) */
@@ -16749,9 +16680,7 @@ const _LocalVideoTile = React.memo((props) => {
16749
16680
  /* @conditional-compile-remove(spotlight) */
16750
16681
  menuKind,
16751
16682
  /* @conditional-compile-remove(spotlight) */
16752
- strings,
16753
- /* @conditional-compile-remove(reaction) */
16754
- reactionResources } = props;
16683
+ strings, reactionResources } = props;
16755
16684
  /* @conditional-compile-remove(spotlight) */
16756
16685
  const theme = useTheme();
16757
16686
  const localVideoStreamProps = React.useMemo(() => ({
@@ -16836,7 +16765,6 @@ const _LocalVideoTile = React.memo((props) => {
16836
16765
  renderElement,
16837
16766
  showCameraSwitcherInLocalPreview
16838
16767
  ]);
16839
- /* @conditional-compile-remove(reaction) */
16840
16768
  const reactionOverlay = reactionResources !== undefined ? (React.createElement(MeetingReactionOverlay, { overlayMode: "grid-tiles", reaction: reaction, reactionResources: reactionResources })) : undefined;
16841
16769
  return (React.createElement(react.Stack, { className: react.mergeStyles({ width: '100%', height: '100%' }),
16842
16770
  /* @conditional-compile-remove(spotlight) */ onKeyDown: menuKind === 'drawer' ? onKeyDown : undefined },
@@ -16844,9 +16772,7 @@ const _LocalVideoTile = React.memo((props) => {
16844
16772
  /* @conditional-compile-remove(spotlight) */
16845
16773
  isSpotlighted: isSpotlighted }, videoTileContextualMenuProps, {
16846
16774
  /* @conditional-compile-remove(spotlight) */
16847
- onLongTouch: () => setDrawerMenuItemProps(convertContextualMenuItemsToDrawerMenuItemProps(contextualMenuProps, () => setDrawerMenuItemProps([]))),
16848
- /* @conditional-compile-remove(reaction) */
16849
- overlay: reactionOverlay }),
16775
+ onLongTouch: () => setDrawerMenuItemProps(convertContextualMenuItemsToDrawerMenuItemProps(contextualMenuProps, () => setDrawerMenuItemProps([]))), overlay: reactionOverlay }),
16850
16776
  /* @conditional-compile-remove(spotlight) */ drawerMenuItemProps.length > 0 && (React.createElement(react.Layer, { hostId: props.drawerMenuHostId },
16851
16777
  React.createElement(react.Stack, { styles: drawerMenuWrapperStyles },
16852
16778
  React.createElement(_DrawerMenu, { onLightDismiss: () => setDrawerMenuItemProps([]), items: drawerMenuItemProps })))))));
@@ -18884,9 +18810,7 @@ const VideoGallery = (props) => {
18884
18810
  /* @conditional-compile-remove(spotlight) */
18885
18811
  onStopRemoteSpotlight,
18886
18812
  /* @conditional-compile-remove(spotlight) */
18887
- maxParticipantsToSpotlight,
18888
- /* @conditional-compile-remove(reaction) */
18889
- reactionResources } = props;
18813
+ maxParticipantsToSpotlight, reactionResources } = props;
18890
18814
  const ids = useIdentifiers();
18891
18815
  const theme = useTheme();
18892
18816
  const localeStrings = useLocale$1().strings.videoGallery;
@@ -18942,9 +18866,7 @@ const VideoGallery = (props) => {
18942
18866
  return layout === 'default' ? strings.localVideoLabel : isNarrow ? '' : strings.localVideoLabel;
18943
18867
  };
18944
18868
  return (React.createElement(react.Stack, { styles: localVideoTileContainerStyles, key: "local-video-tile-key", tabIndex: 0, "aria-label": strings.localVideoMovementLabel, role: 'dialog' },
18945
- React.createElement(_LocalVideoTile, { userId: localParticipant.userId, onCreateLocalStreamView: onCreateLocalStreamView, onDisposeLocalStreamView: onDisposeLocalStreamView, isAvailable: (_a = localParticipant === null || localParticipant === void 0 ? void 0 : localParticipant.videoStream) === null || _a === void 0 ? void 0 : _a.isAvailable, isMuted: localParticipant.isMuted, renderElement: (_b = localParticipant === null || localParticipant === void 0 ? void 0 : localParticipant.videoStream) === null || _b === void 0 ? void 0 : _b.renderElement, displayName: showDisplayNameTrampoline(), initialsName: initialsName, localVideoViewOptions: localVideoViewOptions, onRenderAvatar: onRenderAvatar, showLabel: showLocalVideoTileLabel, showMuteIndicator: showMuteIndicator, showCameraSwitcherInLocalPreview: showCameraSwitcherInLocalPreview, localVideoCameraCycleButtonProps: localVideoCameraCycleButtonProps, localVideoCameraSwitcherLabel: strings.localVideoCameraSwitcherLabel, localVideoSelectedDescription: strings.localVideoSelectedDescription, styles: localVideoTileStyles, raisedHand: localParticipant.raisedHand,
18946
- /* @conditional-compile-remove(reaction) */
18947
- reaction: localParticipant.reaction,
18869
+ React.createElement(_LocalVideoTile, { userId: localParticipant.userId, onCreateLocalStreamView: onCreateLocalStreamView, onDisposeLocalStreamView: onDisposeLocalStreamView, isAvailable: (_a = localParticipant === null || localParticipant === void 0 ? void 0 : localParticipant.videoStream) === null || _a === void 0 ? void 0 : _a.isAvailable, isMuted: localParticipant.isMuted, renderElement: (_b = localParticipant === null || localParticipant === void 0 ? void 0 : localParticipant.videoStream) === null || _b === void 0 ? void 0 : _b.renderElement, displayName: showDisplayNameTrampoline(), initialsName: initialsName, localVideoViewOptions: localVideoViewOptions, onRenderAvatar: onRenderAvatar, showLabel: showLocalVideoTileLabel, showMuteIndicator: showMuteIndicator, showCameraSwitcherInLocalPreview: showCameraSwitcherInLocalPreview, localVideoCameraCycleButtonProps: localVideoCameraCycleButtonProps, localVideoCameraSwitcherLabel: strings.localVideoCameraSwitcherLabel, localVideoSelectedDescription: strings.localVideoSelectedDescription, styles: localVideoTileStyles, raisedHand: localParticipant.raisedHand, reaction: localParticipant.reaction,
18948
18870
  /* @conditional-compile-remove(spotlight) */
18949
18871
  spotlightedParticipantUserIds: spotlightedParticipants,
18950
18872
  /* @conditional-compile-remove(spotlight) */
@@ -18960,9 +18882,7 @@ const VideoGallery = (props) => {
18960
18882
  /* @conditional-compile-remove(spotlight) */
18961
18883
  drawerMenuHostId: drawerMenuHostId,
18962
18884
  /* @conditional-compile-remove(spotlight) */
18963
- strings: strings,
18964
- /* @conditional-compile-remove(reaction) */
18965
- reactionResources: reactionResources })));
18885
+ strings: strings, reactionResources: reactionResources })));
18966
18886
  }, [
18967
18887
  isNarrow,
18968
18888
  localParticipant,
@@ -18994,7 +18914,6 @@ const VideoGallery = (props) => {
18994
18914
  strings,
18995
18915
  /* @conditional-compile-remove(spotlight) */
18996
18916
  drawerMenuHostId,
18997
- /* @conditional-compile-remove(reaction) */
18998
18917
  reactionResources
18999
18918
  ]);
19000
18919
  const onPinParticipant = React.useCallback((userId) => {
@@ -19062,9 +18981,7 @@ const VideoGallery = (props) => {
19062
18981
  /* @conditional-compile-remove(spotlight) */
19063
18982
  onStopSpotlight: onStopRemoteSpotlight,
19064
18983
  /* @conditional-compile-remove(spotlight) */
19065
- maxParticipantsToSpotlight: maxParticipantsToSpotlight,
19066
- /* @conditional-compile-remove(reaction) */
19067
- reactionResources: reactionResources }));
18984
+ maxParticipantsToSpotlight: maxParticipantsToSpotlight, reactionResources: reactionResources }));
19068
18985
  }, [
19069
18986
  onCreateRemoteStreamView,
19070
18987
  onDisposeRemoteVideoStreamView,
@@ -19085,17 +19002,11 @@ const VideoGallery = (props) => {
19085
19002
  /* @conditional-compile-remove(spotlight) */ onStartRemoteSpotlight,
19086
19003
  /* @conditional-compile-remove(spotlight) */ onStopRemoteSpotlight,
19087
19004
  /* @conditional-compile-remove(spotlight) */ maxParticipantsToSpotlight,
19088
- /* @conditional-compile-remove(reaction) */ reactionResources
19005
+ reactionResources
19089
19006
  ]);
19090
19007
  const screenShareParticipant = remoteParticipants.find((participant) => { var _a; return (_a = participant.screenShareStream) === null || _a === void 0 ? void 0 : _a.isAvailable; });
19091
19008
  const localScreenShareStreamComponent = React.createElement(LocalScreenShare, { localParticipant: localParticipant });
19092
- const remoteScreenShareComponent = screenShareParticipant && (React.createElement(RemoteScreenShare, Object.assign({}, screenShareParticipant, { renderElement: (_b = screenShareParticipant.screenShareStream) === null || _b === void 0 ? void 0 : _b.renderElement, onCreateRemoteStreamView: onCreateRemoteStreamView, onDisposeRemoteStreamView: onDisposeRemoteScreenShareStreamView, isReceiving: (_c = screenShareParticipant.screenShareStream) === null || _c === void 0 ? void 0 : _c.isReceiving, participantVideoScalingMode: selectedScalingModeState[screenShareParticipant.userId],
19093
- /* @conditional-compile-remove(reaction) */
19094
- localParticipant: localParticipant,
19095
- /* @conditional-compile-remove(reaction) */
19096
- remoteParticipants: remoteParticipants,
19097
- /* @conditional-compile-remove(reaction) */
19098
- reactionResources: reactionResources,
19009
+ const remoteScreenShareComponent = screenShareParticipant && (React.createElement(RemoteScreenShare, Object.assign({}, screenShareParticipant, { renderElement: (_b = screenShareParticipant.screenShareStream) === null || _b === void 0 ? void 0 : _b.renderElement, onCreateRemoteStreamView: onCreateRemoteStreamView, onDisposeRemoteStreamView: onDisposeRemoteScreenShareStreamView, isReceiving: (_c = screenShareParticipant.screenShareStream) === null || _c === void 0 ? void 0 : _c.isReceiving, participantVideoScalingMode: selectedScalingModeState[screenShareParticipant.userId], localParticipant: localParticipant, remoteParticipants: remoteParticipants, reactionResources: reactionResources,
19099
19010
  /* @conditional-compile-remove(ppt-live) */
19100
19011
  isPPTLive: !((_d = screenShareParticipant.screenShareStream) === null || _d === void 0 ? void 0 : _d.id) })));
19101
19012
  const screenShareComponent = remoteScreenShareComponent
@@ -20385,8 +20296,6 @@ const raiseHandButtonStyles = (theme) => ({
20385
20296
 
20386
20297
  // Copyright (c) Microsoft Corporation.
20387
20298
  // Licensed under the MIT License.
20388
- /* @conditional-compile-remove(reaction) */
20389
- /* @conditional-compile-remove(reaction) */
20390
20299
  /**
20391
20300
  * A button to send reactions.
20392
20301
  *
@@ -20441,7 +20350,6 @@ const ReactionButton = (props) => {
20441
20350
  items: emojiList
20442
20351
  }, onRenderIcon: (_f = props.onRenderIcon) !== null && _f !== void 0 ? _f : onRenderIcon, strings: strings, labelKey: (_g = props.labelKey) !== null && _g !== void 0 ? _g : 'reactionButtonLabel', onRenderMenuIcon: () => React.createElement("div", null), disabled: props.disabled, ariaLabel: strings.ariaLabel })));
20443
20352
  };
20444
- /* @conditional-compile-remove(reaction) */
20445
20353
  const reactionButtonStyles = (theme) => ({
20446
20354
  rootChecked: {
20447
20355
  background: theme.palette.themePrimary,
@@ -22591,7 +22499,7 @@ const convertRemoteParticipantToParticipantListParticipant = (userId, displayNam
22591
22499
  isRemovable: (communicationCommon.getIdentifierKind(identifier).kind === 'communicationUser' ||
22592
22500
  communicationCommon.getIdentifierKind(identifier).kind === 'phoneNumber') &&
22593
22501
  localUserCanRemoveOthers,
22594
- /* @conditional-compile-remove(reaction) */ reaction,
22502
+ reaction,
22595
22503
  /* @conditional-compile-remove(spotlight) */ spotlight
22596
22504
  };
22597
22505
  };
@@ -22601,7 +22509,6 @@ const convertRemoteParticipantToParticipantListParticipant = (userId, displayNam
22601
22509
  const memoizedConvertAllremoteParticipants = memoizeFnAll((userId, displayName, state, isMuted, isScreenSharing, isSpeaking, raisedHand, localUserCanRemoveOthers, reaction, spotlight) => {
22602
22510
  return convertRemoteParticipantToParticipantListParticipant(userId, displayName, state, isMuted, isScreenSharing, isSpeaking, raisedHand, localUserCanRemoveOthers, reaction, spotlight);
22603
22511
  });
22604
- /* @conditional-compile-remove(reaction) */
22605
22512
  /**
22606
22513
  * @private
22607
22514
  */
@@ -22653,22 +22560,19 @@ const _videoGalleryRemoteParticipantsMemo = (remoteParticipants, isHideAttendeeN
22653
22560
  let contentSharingStream = undefined;
22654
22561
  /* @conditional-compile-remove(ppt-live) */
22655
22562
  contentSharingStream = participant.contentSharingStream;
22656
- let remoteParticipantReaction = undefined;
22657
- /* @conditional-compile-remove(reaction) */ remoteParticipantReaction = memoizedConvertToVideoTileReaction(participant.reactionState);
22563
+ const remoteParticipantReaction = memoizedConvertToVideoTileReaction(participant.reactionState);
22658
22564
  let spotlight = undefined;
22659
22565
  /* @conditional-compile-remove(spotlight) */ spotlight = participant.spotlight;
22660
22566
  return memoizedFn(toFlatCommunicationIdentifier(participant.identifier), participant.isMuted, checkIsSpeaking(participant), participant.videoStreams, state, displayName, participant.raisedHand, contentSharingStream, remoteParticipantReaction, spotlight);
22661
22567
  }));
22662
22568
  });
22663
22569
  };
22664
- const memoizedAllConvertRemoteParticipant = memoizeFnAll((userId, isMuted, isSpeaking, videoStreams, state, displayName, raisedHand, contentSharingStream, reaction, // temp unknown type to build stable
22665
- spotlight // temp unknown type to build stable
22570
+ const memoizedAllConvertRemoteParticipant = memoizeFnAll((userId, isMuted, isSpeaking, videoStreams, state, displayName, raisedHand, contentSharingStream, reaction, spotlight // temp unknown type to build stable
22666
22571
  ) => {
22667
22572
  return convertRemoteParticipantToVideoGalleryRemoteParticipant(userId, isMuted, isSpeaking, videoStreams, state, displayName, raisedHand, contentSharingStream, reaction, spotlight);
22668
22573
  });
22669
22574
  /** @private */
22670
- const convertRemoteParticipantToVideoGalleryRemoteParticipant = (userId, isMuted, isSpeaking, videoStreams, state, displayName, raisedHand, contentSharingStream, reaction, // temp unknown type to build stable
22671
- spotlight // temp unknown type to build stable
22575
+ const convertRemoteParticipantToVideoGalleryRemoteParticipant = (userId, isMuted, isSpeaking, videoStreams, state, displayName, raisedHand, contentSharingStream, reaction, spotlight // temp unknown type to build stable
22672
22576
  ) => {
22673
22577
  const rawVideoStreamsArray = Object.values(videoStreams);
22674
22578
  let videoStream = undefined;
@@ -22706,8 +22610,7 @@ spotlight // temp unknown type to build stable
22706
22610
  /* @conditional-compile-remove(PSTN-calls) */
22707
22611
  state,
22708
22612
  raisedHand,
22709
- /* @conditional-compile-remove(reaction) */
22710
- reaction: reaction,
22613
+ reaction,
22711
22614
  /* @conditional-compile-remove(spotlight) */
22712
22615
  spotlight: spotlight
22713
22616
  };
@@ -22735,8 +22638,7 @@ const convertRemoteContentSharingStreamToVideoGalleryStream = (stream) => {
22735
22638
  };
22736
22639
  };
22737
22640
  /** @private */
22738
- const memoizeLocalParticipant = memoizeOne((identifier, displayName, isMuted, isScreenSharingOn, localVideoStream, role, raisedHand,
22739
- /* @conditional-compile-remove(reaction) */ reaction,
22641
+ const memoizeLocalParticipant = memoizeOne((identifier, displayName, isMuted, isScreenSharingOn, localVideoStream, role, raisedHand, reaction,
22740
22642
  /* @conditional-compile-remove(spotlight) */ localSpotlight,
22741
22643
  /* @conditional-compile-remove(spotlight) */ capabilities) => {
22742
22644
  var _a, _b;
@@ -22752,8 +22654,7 @@ const memoizeLocalParticipant = memoizeOne((identifier, displayName, isMuted, is
22752
22654
  },
22753
22655
  role,
22754
22656
  raisedHand: raisedHand,
22755
- /* @conditional-compile-remove(reaction) */
22756
- reaction: reaction,
22657
+ reaction,
22757
22658
  /* @conditional-compile-remove(spotlight) */
22758
22659
  spotlight: localSpotlight,
22759
22660
  /* @conditional-compile-remove(spotlight) */
@@ -22801,7 +22702,6 @@ const videoGallerySelector = reselect.createSelector([
22801
22702
  getLocalParticipantRaisedHand$1,
22802
22703
  /* @conditional-compile-remove(hide-attendee-name) */
22803
22704
  isHideAttendeeNamesEnabled,
22804
- /* @conditional-compile-remove(reaction) */
22805
22705
  getLocalParticipantReactionState,
22806
22706
  /* @conditional-compile-remove(spotlight) */
22807
22707
  getSpotlightCallFeature,
@@ -22809,9 +22709,7 @@ const videoGallerySelector = reselect.createSelector([
22809
22709
  getCapabilities
22810
22710
  ], (screenShareRemoteParticipantId, remoteParticipants, localVideoStreams, isMuted, isScreenSharingOn, displayName, identifier, dominantSpeakers, optimalVideoCount, role, raisedHand,
22811
22711
  /* @conditional-compile-remove(hide-attendee-name) */
22812
- isHideAttendeeNamesEnabled,
22813
- /* @conditional-compile-remove(reaction) */
22814
- localParticipantReaction,
22712
+ isHideAttendeeNamesEnabled, localParticipantReaction,
22815
22713
  /* @conditional-compile-remove(spotlight) */
22816
22714
  spotlightCallFeature,
22817
22715
  /* @conditional-compile-remove(spotlight) */
@@ -22823,7 +22721,6 @@ capabilities) => {
22823
22721
  const dominantSpeakerIds = _dominantSpeakersWithFlatId(dominantSpeakers);
22824
22722
  dominantSpeakerIds === null || dominantSpeakerIds === void 0 ? void 0 : dominantSpeakerIds.forEach((speaker, idx) => (idx));
22825
22723
  const noRemoteParticipants = [];
22826
- /* @conditional-compile-remove(reaction) */
22827
22724
  const localParticipantReactionState = memoizedConvertToVideoTileReaction(localParticipantReaction);
22828
22725
  /* @conditional-compile-remove(spotlight) */
22829
22726
  const spotlightedParticipantIds = memoizeSpotlightedParticipantIds(spotlightCallFeature === null || spotlightCallFeature === void 0 ? void 0 : spotlightCallFeature.spotlightedParticipants);
@@ -22831,9 +22728,7 @@ capabilities) => {
22831
22728
  screenShareParticipant: screenShareRemoteParticipant
22832
22729
  ? convertRemoteParticipantToVideoGalleryRemoteParticipant(toFlatCommunicationIdentifier(screenShareRemoteParticipant.identifier), screenShareRemoteParticipant.isMuted, checkIsSpeaking(screenShareRemoteParticipant), screenShareRemoteParticipant.videoStreams, screenShareRemoteParticipant.state, screenShareRemoteParticipant.displayName, screenShareRemoteParticipant.raisedHand, /* @conditional-compile-remove(ppt-live) */ screenShareRemoteParticipant.contentSharingStream, undefined, /* @conditional-compile-remove(spotlight) */ screenShareRemoteParticipant.spotlight)
22833
22730
  : undefined,
22834
- localParticipant: memoizeLocalParticipant(identifier, displayName, isMuted, isScreenSharingOn, localVideoStream, role, raisedHand,
22835
- /* @conditional-compile-remove(reaction) */
22836
- localParticipantReactionState,
22731
+ localParticipant: memoizeLocalParticipant(identifier, displayName, isMuted, isScreenSharingOn, localVideoStream, role, raisedHand, localParticipantReactionState,
22837
22732
  /* @conditional-compile-remove(spotlight) */
22838
22733
  spotlightCallFeature === null || spotlightCallFeature === void 0 ? void 0 : spotlightCallFeature.localParticipantSpotlight,
22839
22734
  /* @conditional-compile-remove(spotlight) */
@@ -22883,9 +22778,7 @@ const convertRemoteParticipantsToParticipantListParticipants = (remoteParticipan
22883
22778
  let displayName = participant.displayName;
22884
22779
  /* @conditional-compile-remove(hide-attendee-name) */
22885
22780
  displayName = maskDisplayNameWithRole(displayName, localUserRole, participant.role, isHideAttendeeNamesEnabled);
22886
- let remoteParticipantReaction = undefined;
22887
- /* @conditional-compile-remove(reaction) */
22888
- remoteParticipantReaction = memoizedConvertToVideoTileReaction(participant.reactionState);
22781
+ const remoteParticipantReaction = memoizedConvertToVideoTileReaction(participant.reactionState);
22889
22782
  let spotlight = undefined;
22890
22783
  /* @conditional-compile-remove(spotlight) */
22891
22784
  spotlight = memoizedSpotlight(spotlightedParticipants, toFlatCommunicationIdentifier(participant.identifier));
@@ -22924,15 +22817,12 @@ const participantListSelector = reselect.createSelector([
22924
22817
  getParticipantCount,
22925
22818
  /* @conditional-compile-remove(hide-attendee-name) */
22926
22819
  isHideAttendeeNamesEnabled,
22927
- /* @conditional-compile-remove(reaction) */
22928
22820
  getLocalParticipantReactionState,
22929
22821
  /* @conditional-compile-remove(spotlight) */
22930
22822
  getSpotlightCallFeature
22931
22823
  ], (userId, displayName, remoteParticipants, isScreenSharingOn, isMuted, raisedHand, role, partitipantCount,
22932
22824
  /* @conditional-compile-remove(hide-attendee-name) */
22933
- isHideAttendeeNamesEnabled,
22934
- /* @conditional-compile-remove(reaction) */
22935
- localParticipantReactionState,
22825
+ isHideAttendeeNamesEnabled, localParticipantReactionState,
22936
22826
  /* @conditional-compile-remove(spotlight) */
22937
22827
  spotlightCallFeature) => {
22938
22828
  const localUserCanRemoveOthers = localUserCanRemoveOthersTrampoline(role);
@@ -22941,8 +22831,6 @@ spotlightCallFeature) => {
22941
22831
  /* @conditional-compile-remove(spotlight) */
22942
22832
  spotlightCallFeature === null || spotlightCallFeature === void 0 ? void 0 : spotlightCallFeature.spotlightedParticipants)
22943
22833
  : [];
22944
- /* @conditional-compile-remove(reaction) */
22945
- const localParticipantReaction = memoizedConvertToVideoTileReaction(localParticipantReactionState);
22946
22834
  participants.push({
22947
22835
  userId: userId,
22948
22836
  displayName: displayName,
@@ -22952,8 +22840,7 @@ spotlightCallFeature) => {
22952
22840
  state: 'Connected',
22953
22841
  // Local participant can never remove themselves.
22954
22842
  isRemovable: false,
22955
- /* @conditional-compile-remove(reaction) */
22956
- reaction: localParticipantReaction,
22843
+ reaction: memoizedConvertToVideoTileReaction(localParticipantReactionState),
22957
22844
  /* @conditional-compile-remove(spotlight) */
22958
22845
  spotlight: memoizedSpotlight(spotlightCallFeature === null || spotlightCallFeature === void 0 ? void 0 : spotlightCallFeature.spotlightedParticipants, userId)
22959
22846
  });
@@ -26615,11 +26502,6 @@ const useAdapter$1 = () => {
26615
26502
  /**
26616
26503
  * @private
26617
26504
  */
26618
- const UNSUPPORTED_CHAT_THREAD_TYPE = ['@thread.tacv2', '@thread.skype'];
26619
- /**
26620
- * @private
26621
- */
26622
- const TEAMS_LIMITATION_LEARN_MORE = 'https://learn.microsoft.com/en-us/azure/communication-services/concepts/join-teams-meeting#limitations-and-known-issues';
26623
26505
  /**
26624
26506
  * @remarks
26625
26507
  * This value is publicly documented in the ChatComposite API documentation.
@@ -28164,7 +28046,6 @@ const createCompositeHandlers = memoizeOne((adapter, capabilities) => {
28164
28046
  ? yield adapter.lowerHand()
28165
28047
  : yield adapter.raiseHand();
28166
28048
  }),
28167
- /* @conditional-compile-remove(reaction) */
28168
28049
  onReactionClick: (reaction) => __awaiter$k(void 0, void 0, void 0, function* () {
28169
28050
  yield adapter.onReactionClick(reaction);
28170
28051
  }),
@@ -29178,8 +29059,6 @@ const onFetchCustomButtonPropsTrampoline = (options) => {
29178
29059
 
29179
29060
  // Copyright (c) Microsoft Corporation.
29180
29061
  // Licensed under the MIT License.
29181
- /* @conditional-compile-remove(reaction) */
29182
- /* @conditional-compile-remove(reaction) */
29183
29062
  /** @private */
29184
29063
  const Reaction = (props) => {
29185
29064
  const reactionButtonProps = usePropsFor$1(ReactionButton);
@@ -29187,7 +29066,6 @@ const Reaction = (props) => {
29187
29066
  const reactionButtonDisabled = isDisabled(props.option) || reactionButtonProps.disabled;
29188
29067
  return (React.createElement(ReactionButton, Object.assign({ "data-ui-id": "call-composite-reaction-button" }, reactionButtonProps, { showLabel: props.displayType !== 'compact', disabled: reactionButtonDisabled || props.disabled, styles: styles, disableTooltip: props.disableTooltip, persistMenu: true, reactionResources: props.reactionResource })));
29189
29068
  };
29190
- /* @conditional-compile-remove(reaction) */
29191
29069
  const isDisabled = (option) => {
29192
29070
  if (option === undefined || option === true || option === false) {
29193
29071
  return false;
@@ -29254,11 +29132,8 @@ const CallControls = (props) => {
29254
29132
  /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
29255
29133
  const holdButtonProps = usePropsFor$1(HoldButton);
29256
29134
  const raiseHandButtonProps = usePropsFor$1(RaiseHandButton);
29257
- /* @conditional-compile-remove(reaction) */
29258
29135
  const capabilitiesSelector = useSelector$1(capabilitySelector);
29259
- /* @conditional-compile-remove(reaction) */
29260
29136
  const callState = useSelector$1(callStatusSelector);
29261
- /* @conditional-compile-remove(reaction) */
29262
29137
  const isReactionAllowed = callState.callStatus !== 'Connected' ||
29263
29138
  !(capabilitiesSelector === null || capabilitiesSelector === void 0 ? void 0 : capabilitiesSelector.capabilities) ||
29264
29139
  capabilitiesSelector.capabilities.useReactions.isPresent;
@@ -29285,9 +29160,7 @@ const CallControls = (props) => {
29285
29160
  if (showParticipantsButtonInControlBar) {
29286
29161
  numberOfButtons++;
29287
29162
  }
29288
- /* @conditional-compile-remove(reaction) */
29289
29163
  const showReactionButtonInControlBar = isEnabled$2(options === null || options === void 0 ? void 0 : options.reactionButton) && isReactionAllowed && !props.isMobile;
29290
- /* @conditional-compile-remove(reaction) */
29291
29164
  if (showReactionButtonInControlBar) {
29292
29165
  numberOfButtons++;
29293
29166
  }
@@ -29344,7 +29217,6 @@ const CallControls = (props) => {
29344
29217
  showDevicesButtonInControlBar = false;
29345
29218
  showMoreButton = isEnabled$2(options === null || options === void 0 ? void 0 : options.moreButton);
29346
29219
  }
29347
- /* @conditional-compile-remove(reaction) */
29348
29220
  const reactionResources = adapter.getState().reactions;
29349
29221
  const raiseHandButtonIsEnabled = isEnabled$2(options === null || options === void 0 ? void 0 : options.raiseHandButton);
29350
29222
  let showRaiseHandButtonInControlBar = raiseHandButtonIsEnabled;
@@ -29426,7 +29298,6 @@ const CallControls = (props) => {
29426
29298
  React.createElement(ControlBar, { layout: props.displayVertical ? 'vertical' : 'horizontal', styles: controlBarStyles(theme.semanticColors.bodyBackground) },
29427
29299
  microphoneButtonIsEnabled && (React.createElement(Microphone, { displayType: options === null || options === void 0 ? void 0 : options.displayType, disabled: isDisabled$4(options === null || options === void 0 ? void 0 : options.microphoneButton) })),
29428
29300
  cameraButtonIsEnabled && (React.createElement(Camera, { displayType: options === null || options === void 0 ? void 0 : options.displayType, disabled: isDisabled$4(options === null || options === void 0 ? void 0 : options.cameraButton) })),
29429
- /* @conditional-compile-remove(reaction) */
29430
29301
  showReactionButtonInControlBar && reactionResources && (React.createElement(Reaction, { displayType: options === null || options === void 0 ? void 0 : options.displayType, reactionResource: reactionResources })),
29431
29302
  showRaiseHandButtonInControlBar && !hideRaiseHandButtonInRoomsCall && (React.createElement(RaiseHand, { displayType: options === null || options === void 0 ? void 0 : options.displayType })),
29432
29303
  screenShareButtonIsEnabled && (React.createElement(ScreenShare, { option: options === null || options === void 0 ? void 0 : options.screenShareButton, displayType: options === null || options === void 0 ? void 0 : options.displayType, disabled: isDisabled$4(options === null || options === void 0 ? void 0 : options.screenShareButton) })),
@@ -30276,11 +30147,8 @@ const CommonCallControlBar = (props) => {
30276
30147
  // only center control bar buttons based on parent container if there are enough space on the screen and not mobile
30277
30148
  const controlBarDesktopContainerStyles = React.useMemo(() => (!props.mobileView && !isOutOfSpace ? { position: 'relative', minHeight: '4.5rem', width: '100%' } : {}), [props.mobileView, isOutOfSpace]);
30278
30149
  const customButtons = React.useMemo(() => generateCustomCallControlBarButton(onFetchCustomButtonPropsTrampoline(options !== false ? options : undefined), options !== false ? options === null || options === void 0 ? void 0 : options.displayType : undefined), [options]);
30279
- /* @conditional-compile-remove(reaction) */
30280
30150
  const capabilitiesSelector = useSelector$1(capabilitySelector);
30281
- /* @conditional-compile-remove(reaction) */
30282
30151
  const callState = useSelector$1(callStatusSelector);
30283
- /* @conditional-compile-remove(reaction) */
30284
30152
  const isReactionAllowed = callState.callStatus !== 'Connected' ||
30285
30153
  !(capabilitiesSelector === null || capabilitiesSelector === void 0 ? void 0 : capabilitiesSelector.capabilities) ||
30286
30154
  capabilitiesSelector.capabilities.useReactions.isPresent;
@@ -30303,7 +30171,6 @@ const CommonCallControlBar = (props) => {
30303
30171
  props.onUserSetGalleryLayout);
30304
30172
  const role = (_b = props.callAdapter.getState().call) === null || _b === void 0 ? void 0 : _b.role;
30305
30173
  const hideRaiseHandButtonInRoomsCall = props.callAdapter.getState().isRoomsCall && role && ['Consumer', 'Unknown'].includes(role);
30306
- /*@conditional-compile-remove(reaction) */
30307
30174
  const reactionResources = props.callAdapter.getState().reactions;
30308
30175
  return (React.createElement("div", { ref: controlBarSizeRef },
30309
30176
  React.createElement(CallAdapterProvider, { adapter: props.callAdapter },
@@ -30322,7 +30189,6 @@ const CommonCallControlBar = (props) => {
30322
30189
  cameraButtonIsEnabled && (React.createElement(Camera, { displayType: options.displayType, styles: commonButtonStyles, splitButtonsForDeviceSelection: !props.mobileView,
30323
30190
  /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
30324
30191
  disabled: props.disableButtonsForHoldScreen || isDisabled$4(options.cameraButton), onClickVideoEffects: props.onClickVideoEffects, componentRef: props.cameraButtonRef, disableTooltip: props.mobileView })),
30325
- /* @conditional-compile-remove(reaction) */
30326
30192
  !props.mobileView &&
30327
30193
  isReactionAllowed &&
30328
30194
  isEnabled$1(options.reactionButton) &&
@@ -30680,7 +30546,6 @@ const MoreDrawer = (props) => {
30680
30546
  const showCaptionsButton = props.isCaptionsSupported &&
30681
30547
  /* @conditional-compile-remove(acs-close-captions) */ drawerSelectionOptions !== false &&
30682
30548
  /* @conditional-compile-remove(acs-close-captions) */ isEnabled(drawerSelectionOptions.captionsButton);
30683
- /* @conditional-compile-remove(reaction) */
30684
30549
  if (props.reactionResources !== undefined) {
30685
30550
  drawerMenuItems.push({
30686
30551
  itemKey: 'reactions',
@@ -32865,9 +32730,7 @@ const CallArrangement = (props) => {
32865
32730
  isCaptionsSupported: (useTeamsCaptions && hasJoinedCall) ||
32866
32731
  /* @conditional-compile-remove(acs-close-captions) */ hasJoinedCall,
32867
32732
  /* @conditional-compile-remove(close-captions) */
32868
- useTeamsCaptions: useTeamsCaptions, onUserSetGalleryLayout: props.onUserSetGalleryLayoutChange, userSetGalleryLayout: props.userSetGalleryLayout, onSetDialpadPage: props.onSetDialpadPage, dtmfDialerPresent: props.dtmfDialerPresent,
32869
- /* @conditional-compile-remove(reaction) */
32870
- reactionResources: adapter.getState().reactions }))),
32733
+ useTeamsCaptions: useTeamsCaptions, onUserSetGalleryLayout: props.onUserSetGalleryLayoutChange, userSetGalleryLayout: props.userSetGalleryLayout, onSetDialpadPage: props.onSetDialpadPage, dtmfDialerPresent: props.dtmfDialerPresent, reactionResources: adapter.getState().reactions }))),
32871
32734
  React.createElement(react.Stack, { horizontal: true, grow: true },
32872
32735
  React.createElement(react.Stack.Item, { style: callCompositeContainerCSS },
32873
32736
  React.createElement(react.Stack.Item, { styles: callGalleryStyles, grow: true },
@@ -32961,7 +32824,6 @@ const MediaGallery = (props) => {
32961
32824
  const containerWidth = _useContainerWidth(containerRef);
32962
32825
  const containerHeight = _useContainerHeight(containerRef);
32963
32826
  const containerAspectRatio = containerWidth && containerHeight ? containerWidth / containerHeight : 0;
32964
- /* @conditional-compile-remove(reaction) */
32965
32827
  const reactionResources = adapter.getState().reactions;
32966
32828
  const layoutBasedOnTilePosition = getVideoGalleryLayoutBasedOnLocalOptions((_b = props.localVideoTileOptions) === null || _b === void 0 ? void 0 : _b.position);
32967
32829
  const cameraSwitcherProps = React.useMemo(() => {
@@ -33022,9 +32884,7 @@ const MediaGallery = (props) => {
33022
32884
  ? 'hidden'
33023
32885
  : props.isMobile && containerAspectRatio < 1
33024
32886
  ? '9:16'
33025
- : '16:9', pinnedParticipants: pinnedParticipants, onPinParticipant: onPinParticipant, onUnpinParticipant: onUnpinParticipant,
33026
- /* @conditional-compile-remove(reaction) */
33027
- reactionResources: reactionResources,
32887
+ : '16:9', pinnedParticipants: pinnedParticipants, onPinParticipant: onPinParticipant, onUnpinParticipant: onUnpinParticipant, reactionResources: reactionResources,
33028
32888
  /* @conditional-compile-remove(spotlight) */
33029
32889
  onStartLocalSpotlight: hideSpotlightButtons ? undefined : onStartLocalSpotlightWithPrompt,
33030
32890
  /* @conditional-compile-remove(spotlight) */
@@ -33049,7 +32909,6 @@ const MediaGallery = (props) => {
33049
32909
  onPinParticipant,
33050
32910
  onUnpinParticipant,
33051
32911
  layoutBasedOnTilePosition,
33052
- /* @conditional-compile-remove(reaction) */
33053
32912
  reactionResources,
33054
32913
  /* @conditional-compile-remove(spotlight) */
33055
32914
  onStartLocalSpotlightWithPrompt,
@@ -36120,7 +35979,7 @@ class CallContext {
36120
35979
  selectedVideoBackgroundEffect: undefined,
36121
35980
  cameraStatus: undefined,
36122
35981
  sounds: options === null || options === void 0 ? void 0 : options.callingSounds,
36123
- /* @conditional-compile-remove(reaction) */ reactions: options === null || options === void 0 ? void 0 : options.reactionResources
35982
+ reactions: options === null || options === void 0 ? void 0 : options.reactionResources
36124
35983
  };
36125
35984
  this.emitter.setMaxListeners((_d = options === null || options === void 0 ? void 0 : options.maxListeners) !== null && _d !== void 0 ? _d : 50);
36126
35985
  this.bindPublicMethods();
@@ -36376,7 +36235,6 @@ class AzureCommunicationCallAdapter {
36376
36235
  this.startScreenShare.bind(this);
36377
36236
  this.stopScreenShare.bind(this);
36378
36237
  this.raiseHand.bind(this);
36379
- /* @conditional-compile-remove(reaction) */
36380
36238
  this.onReactionClick.bind(this);
36381
36239
  this.lowerHand.bind(this);
36382
36240
  this.removeParticipant.bind(this);
@@ -36710,7 +36568,6 @@ class AzureCommunicationCallAdapter {
36710
36568
  }));
36711
36569
  });
36712
36570
  }
36713
- /* @conditional-compile-remove(reaction) */
36714
36571
  onReactionClick(reaction) {
36715
36572
  return __awaiter$5(this, void 0, void 0, function* () {
36716
36573
  return yield this.asyncTeeErrorToEventEmitter(() => __awaiter$5(this, void 0, void 0, function* () {
@@ -37558,7 +37415,6 @@ class CallWithChatBackedCallAdapter {
37558
37415
  this.stopScreenShare = () => __awaiter$4(this, void 0, void 0, function* () { return yield this.callWithChatAdapter.stopScreenShare(); });
37559
37416
  this.raiseHand = () => __awaiter$4(this, void 0, void 0, function* () { return yield this.callWithChatAdapter.raiseHand(); });
37560
37417
  this.lowerHand = () => __awaiter$4(this, void 0, void 0, function* () { return yield this.callWithChatAdapter.lowerHand(); });
37561
- /* @conditional-compile-remove(reaction) */
37562
37418
  this.onReactionClick = (reaction) => __awaiter$4(this, void 0, void 0, function* () { return yield this.callWithChatAdapter.onReactionClick(reaction); });
37563
37419
  this.removeParticipant = (userId) => __awaiter$4(this, void 0, void 0, function* () {
37564
37420
  let participant = userId;
@@ -37688,7 +37544,6 @@ function callAdapterStateFromCallWithChatAdapterState(callWithChatAdapterState)
37688
37544
  videoBackgroundImages: callWithChatAdapterState.videoBackgroundImages,
37689
37545
  onResolveVideoEffectDependency: callWithChatAdapterState.onResolveVideoEffectDependency,
37690
37546
  selectedVideoBackgroundEffect: callWithChatAdapterState.selectedVideoBackgroundEffect,
37691
- /* @conditional-compile-remove(reaction) */
37692
37547
  reactions: callWithChatAdapterState.reactions
37693
37548
  };
37694
37549
  }
@@ -38240,7 +38095,6 @@ function callWithChatAdapterStateFromBackingStates(callAdapter) {
38240
38095
  /* @conditional-compile-remove(hide-attendee-name) */
38241
38096
  /** Hide attendee names in teams meeting */
38242
38097
  hideAttendeeNames: callAdapterState.hideAttendeeNames,
38243
- /* @conditional-compile-remove(reaction) */
38244
38098
  reactions: callAdapterState.reactions
38245
38099
  };
38246
38100
  }
@@ -38259,30 +38113,6 @@ function mergeCallAdapterStateIntoCallWithChatAdapterState(existingCallWithChatA
38259
38113
  return Object.assign(Object.assign({}, existingCallWithChatAdapterState), { userId: callAdapterState.userId, page: callAdapterState.page, displayName: callAdapterState.displayName, devices: callAdapterState.devices, call: callAdapterState.call, isLocalPreviewMicrophoneEnabled: callAdapterState.isLocalPreviewMicrophoneEnabled, isTeamsCall: callAdapterState.isTeamsCall, latestCallErrors: callAdapterState.latestErrors, videoBackgroundImages: callAdapterState.videoBackgroundImages, onResolveVideoEffectDependency: callAdapterState.onResolveVideoEffectDependency, selectedVideoBackgroundEffect: callAdapterState.selectedVideoBackgroundEffect });
38260
38114
  }
38261
38115
 
38262
- // Copyright (c) Microsoft Corporation.
38263
- // Licensed under the MIT License.
38264
- /**
38265
- * Get chat thread from a teams url.
38266
- * As per documented on the Chat SDK: https://docs.microsoft.com/en-us/azure/communication-services/quickstarts/chat/meeting-interop?pivots=platform-web#get-a-teams-meeting-chat-thread-for-a-communication-services-user
38267
- *
38268
- * @private
38269
- */
38270
- const getChatThreadFromTeamsLink = (teamsMeetingLink) => {
38271
- // Get the threadId from the url - this also contains the call locator ID that will be removed in the threadId.split
38272
- let threadId = teamsMeetingLink.replace('https://teams.microsoft.com/l/meetup-join/', '');
38273
- // Unescape characters that applications like Outlook encode when creating joinable links
38274
- threadId = decodeURIComponent(threadId);
38275
- // Extract just the chat guid from the link, stripping away the call locator ID
38276
- threadId = threadId.split(/^(.*?@thread\.v2)/gm)[1];
38277
- if (!threadId || threadId.length === 0) {
38278
- if (UNSUPPORTED_CHAT_THREAD_TYPE.some((t) => teamsMeetingLink.includes(t))) {
38279
- throw new Error(`Teams Channel Meetings are not currently supported, read more ${TEAMS_LIMITATION_LEARN_MORE}`);
38280
- }
38281
- throw new Error('Could not get chat thread from teams link');
38282
- }
38283
- return threadId;
38284
- };
38285
-
38286
38116
  // Copyright (c) Microsoft Corporation.
38287
38117
  // Licensed under the MIT License.
38288
38118
  var __awaiter$2 = (window && window.__awaiter) || function (thisArg, _arguments, P, generator) {
@@ -38413,7 +38243,6 @@ class AzureCommunicationCallWithChatAdapter {
38413
38243
  this.stopScreenShare.bind(this);
38414
38244
  this.raiseHand.bind(this);
38415
38245
  this.lowerHand.bind(this);
38416
- /* @conditional-compile-remove(reaction) */
38417
38246
  this.onReactionClick.bind(this);
38418
38247
  this.removeParticipant.bind(this);
38419
38248
  this.createStreamView.bind(this);
@@ -38619,7 +38448,7 @@ class AzureCommunicationCallWithChatAdapter {
38619
38448
  yield this.callAdapter.lowerHand();
38620
38449
  });
38621
38450
  }
38622
- /* @conditional-compile-remove(reaction) */
38451
+ /** Reaction clicked by the local user. */
38623
38452
  onReactionClick(reaction) {
38624
38453
  return __awaiter$2(this, void 0, void 0, function* () {
38625
38454
  yield this.callAdapter.onReactionClick(reaction);
@@ -39033,12 +38862,34 @@ class CallAndChatProvider {
39033
38862
  * @public
39034
38863
  */
39035
38864
  class TeamsMeetingLinkProvider {
39036
- constructor(locator) {
38865
+ constructor(locator,
38866
+ /** @conditional-compile-remove(meeting-id) */ callAdapterPromise) {
39037
38867
  this.locator = locator;
38868
+ /** @conditional-compile-remove(meeting-id) */
38869
+ this.callAdapterPromise = callAdapterPromise;
39038
38870
  }
39039
38871
  getChatThread() {
39040
38872
  return __awaiter$2(this, void 0, void 0, function* () {
39041
- return getChatThreadFromTeamsLink(this.locator.meetingLink);
38873
+ /** @conditional-compile-remove(meeting-id) */
38874
+ {
38875
+ // Wait for the call to be connected and get the chat thread ID from `call.callInfo`.
38876
+ const chatThreadPromise = new Promise((resolve) => {
38877
+ this.callAdapterPromise.then((callAdapter) => {
38878
+ // Ensure function is idempotent by removing any existing subscription.
38879
+ this.callAdapterSubscription && callAdapter.offStateChange(this.callAdapterSubscription);
38880
+ this.callAdapterSubscription = (state) => {
38881
+ var _a, _b, _c;
38882
+ if (((_a = state.call) === null || _a === void 0 ? void 0 : _a.state) === 'Connected' && ((_b = state.call.info) === null || _b === void 0 ? void 0 : _b.threadId)) {
38883
+ this.callAdapterSubscription && callAdapter.offStateChange(this.callAdapterSubscription);
38884
+ this.callAdapterSubscription = undefined;
38885
+ resolve((_c = state.call.info) === null || _c === void 0 ? void 0 : _c.threadId);
38886
+ }
38887
+ };
38888
+ callAdapter.onStateChange(this.callAdapterSubscription);
38889
+ });
38890
+ });
38891
+ return chatThreadPromise;
38892
+ }
39042
38893
  });
39043
38894
  }
39044
38895
  }
@@ -39230,7 +39081,7 @@ const isTeamsMeetingLocator = (locator) => {
39230
39081
  };
39231
39082
  const _createChatThreadAdapterInner = (locator, adapter) => {
39232
39083
  if ('meetingLink' in locator) {
39233
- return new TeamsMeetingLinkProvider(locator);
39084
+ return new TeamsMeetingLinkProvider(locator, /** @conditional-compile-remove(meeting-id) */ adapter);
39234
39085
  }
39235
39086
  /** @conditional-compile-remove(meeting-id) */
39236
39087
  if ('meetingId' in locator) {
@@ -39811,4 +39662,4 @@ exports.useTeamsCall = useTeamsCall;
39811
39662
  exports.useTeamsCallAdapter = useTeamsCallAdapter;
39812
39663
  exports.useTeamsCallAgent = useTeamsCallAgent;
39813
39664
  exports.useTheme = useTheme;
39814
- //# sourceMappingURL=index-BP7335hI.js.map
39665
+ //# sourceMappingURL=index-B-wg-pZ5.js.map