@azure/communication-react 1.15.0-beta.2 → 1.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (664) hide show
  1. package/dist/communication-react.d.ts +586 -1782
  2. package/dist/dist-cjs/communication-react/index.js +7510 -10404
  3. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  4. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  5. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  6. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.d.ts +11 -2
  7. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +16 -6
  8. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  9. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.d.ts +15 -12
  10. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +19 -21
  11. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
  12. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js +5 -5
  13. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js.map +1 -1
  14. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.d.ts +8 -11
  15. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +74 -21
  16. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
  17. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js +0 -10
  18. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js.map +1 -1
  19. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.d.ts +14 -0
  20. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js +1 -15
  21. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js.map +1 -1
  22. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.d.ts +3 -4
  23. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js +6 -17
  24. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  25. package/dist/dist-esm/calling-component-bindings/src/index.d.ts +1 -5
  26. package/dist/dist-esm/calling-component-bindings/src/index.js +1 -7
  27. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  28. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.d.ts +0 -1
  29. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +28 -12
  30. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
  31. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.d.ts +3 -4
  32. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.js.map +1 -1
  33. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.d.ts +2 -14
  34. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js +1 -20
  35. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js.map +1 -1
  36. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.d.ts +0 -7
  37. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js +0 -12
  38. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js.map +1 -1
  39. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.d.ts +13 -1
  40. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js +31 -7
  41. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js.map +1 -1
  42. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.d.ts +8 -2
  43. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +42 -8
  44. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  45. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.d.ts +2 -0
  46. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js +23 -7
  47. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
  48. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.d.ts +5 -6
  49. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.js.map +1 -1
  50. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.d.ts +1 -15
  51. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
  52. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.d.ts +1 -2
  53. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js +0 -5
  54. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js.map +1 -1
  55. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +97 -47
  56. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  57. package/dist/dist-esm/calling-stateful-client/src/CallContext.d.ts +14 -9
  58. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +99 -39
  59. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  60. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js +32 -0
  61. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js.map +1 -1
  62. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.d.ts +3 -3
  63. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +20 -30
  64. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  65. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js +0 -1
  66. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js.map +1 -1
  67. package/dist/dist-esm/calling-stateful-client/src/Converter.js +8 -8
  68. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  69. package/dist/dist-esm/calling-stateful-client/src/PPTLiveSubscriber.d.ts +18 -0
  70. package/dist/dist-esm/calling-stateful-client/src/PPTLiveSubscriber.js +49 -0
  71. package/dist/dist-esm/calling-stateful-client/src/PPTLiveSubscriber.js.map +1 -0
  72. package/dist/dist-esm/calling-stateful-client/src/ReactionSubscriber.d.ts +16 -0
  73. package/dist/dist-esm/calling-stateful-client/src/ReactionSubscriber.js +24 -0
  74. package/dist/dist-esm/calling-stateful-client/src/ReactionSubscriber.js.map +1 -0
  75. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.d.ts +0 -1
  76. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js +0 -11
  77. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js.map +1 -1
  78. package/dist/dist-esm/calling-stateful-client/src/SpotlightSubscriber.d.ts +16 -0
  79. package/dist/dist-esm/calling-stateful-client/src/SpotlightSubscriber.js +30 -0
  80. package/dist/dist-esm/calling-stateful-client/src/SpotlightSubscriber.js.map +1 -0
  81. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts +1 -25
  82. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js +2 -33
  83. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
  84. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.d.ts +2 -2
  85. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js +0 -8
  86. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js.map +1 -1
  87. package/dist/dist-esm/calling-stateful-client/src/index-public.d.ts +3 -3
  88. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  89. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.d.ts +1 -5
  90. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js +1 -5
  91. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js.map +1 -1
  92. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +1 -87
  93. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
  94. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js +3 -3
  95. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js.map +1 -1
  96. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.d.ts +1 -1
  97. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js.map +1 -1
  98. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js +1 -4
  99. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js.map +1 -1
  100. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.d.ts +0 -1
  101. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.js.map +1 -1
  102. package/dist/dist-esm/communication-react/src/index.d.ts +2 -21
  103. package/dist/dist-esm/communication-react/src/index.js +0 -12
  104. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  105. package/dist/dist-esm/react-components/src/components/AttachmentCard.d.ts +13 -19
  106. package/dist/dist-esm/react-components/src/components/AttachmentCard.js +65 -63
  107. package/dist/dist-esm/react-components/src/components/AttachmentCard.js.map +1 -1
  108. package/dist/dist-esm/react-components/src/components/AttachmentDownloadCards.d.ts +19 -12
  109. package/dist/dist-esm/react-components/src/components/AttachmentDownloadCards.js +68 -68
  110. package/dist/dist-esm/react-components/src/components/AttachmentDownloadCards.js.map +1 -1
  111. package/dist/dist-esm/react-components/src/components/AttachmentUploadCards.d.ts +7 -36
  112. package/dist/dist-esm/react-components/src/components/AttachmentUploadCards.js +22 -10
  113. package/dist/dist-esm/react-components/src/components/AttachmentUploadCards.js.map +1 -1
  114. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.d.ts +1 -8
  115. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.js +2 -10
  116. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.js.map +1 -1
  117. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.d.ts +0 -11
  118. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +2 -35
  119. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
  120. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.d.ts +1 -17
  121. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js +4 -10
  122. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js.map +1 -1
  123. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.d.ts +1 -2
  124. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.js +4 -27
  125. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.js.map +1 -1
  126. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.d.ts +15 -0
  127. package/dist/dist-esm/react-components/src/components/ChatMessage/{ChatMessageComponentAsEditBox.js → MyMessageComponents/ChatMessageComponentAsEditBox.js} +14 -40
  128. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.js.map +1 -0
  129. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.d.ts +18 -0
  130. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.js +11 -0
  131. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.js.map +1 -0
  132. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.d.ts +3 -26
  133. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.js +5 -9
  134. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.js.map +1 -1
  135. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.d.ts +1 -17
  136. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js +5 -11
  137. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js.map +1 -1
  138. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/FluentChatMyMessageComponent.js +4 -25
  139. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/FluentChatMyMessageComponent.js.map +1 -1
  140. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.d.ts +4 -0
  141. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +2 -2
  142. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
  143. package/dist/dist-esm/react-components/src/components/Drawer/ReactionDrawerMenuItem.d.ts +29 -0
  144. package/dist/dist-esm/react-components/src/components/Drawer/ReactionDrawerMenuItem.js +54 -0
  145. package/dist/dist-esm/react-components/src/components/Drawer/ReactionDrawerMenuItem.js.map +1 -0
  146. package/dist/dist-esm/react-components/src/components/Drawer/index.d.ts +2 -0
  147. package/dist/dist-esm/react-components/src/components/Drawer/index.js +2 -0
  148. package/dist/dist-esm/react-components/src/components/Drawer/index.js.map +1 -1
  149. package/dist/dist-esm/react-components/src/components/EndCallButton.d.ts +1 -1
  150. package/dist/dist-esm/react-components/src/components/EndCallButton.js +64 -57
  151. package/dist/dist-esm/react-components/src/components/EndCallButton.js.map +1 -1
  152. package/dist/dist-esm/react-components/src/components/ErrorBar.d.ts +4 -0
  153. package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
  154. package/dist/dist-esm/react-components/src/components/ImageOverlay.js +0 -4
  155. package/dist/dist-esm/react-components/src/components/ImageOverlay.js.map +1 -1
  156. package/dist/dist-esm/react-components/src/components/InputBoxComponent.d.ts +0 -2
  157. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js +0 -18
  158. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js.map +1 -1
  159. package/dist/dist-esm/react-components/src/components/LocalVideoTile.d.ts +13 -0
  160. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js +104 -5
  161. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
  162. package/dist/dist-esm/react-components/src/components/MeetingReactionOverlay.d.ts +40 -0
  163. package/dist/dist-esm/react-components/src/components/MeetingReactionOverlay.js +85 -0
  164. package/dist/dist-esm/react-components/src/components/MeetingReactionOverlay.js.map +1 -0
  165. package/dist/dist-esm/react-components/src/components/MessageStatusIcon.js +1 -1
  166. package/dist/dist-esm/react-components/src/components/MessageStatusIcon.js.map +1 -1
  167. package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +2 -39
  168. package/dist/dist-esm/react-components/src/components/MessageThread.js +7 -16
  169. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  170. package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts +0 -13
  171. package/dist/dist-esm/react-components/src/components/ParticipantItem.js +0 -3
  172. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  173. package/dist/dist-esm/react-components/src/components/ParticipantList.d.ts +0 -15
  174. package/dist/dist-esm/react-components/src/components/ParticipantList.js +6 -23
  175. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  176. package/dist/dist-esm/react-components/src/components/ReactionButton.d.ts +56 -0
  177. package/dist/dist-esm/react-components/src/components/ReactionButton.js +85 -0
  178. package/dist/dist-esm/react-components/src/components/ReactionButton.js.map +1 -0
  179. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.d.ts +8 -0
  180. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +23 -7
  181. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  182. package/dist/dist-esm/react-components/src/components/SendBox.d.ts +0 -42
  183. package/dist/dist-esm/react-components/src/components/SendBox.js +8 -63
  184. package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
  185. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js +0 -2
  186. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js.map +1 -1
  187. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js +0 -2
  188. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js.map +1 -1
  189. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js +0 -24
  190. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js.map +1 -1
  191. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js +0 -2
  192. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js.map +1 -1
  193. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.d.ts +8 -0
  194. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js +1 -1
  195. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js.map +1 -1
  196. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js +5 -3
  197. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js.map +1 -1
  198. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js +4 -2
  199. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js.map +1 -1
  200. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.d.ts +4 -0
  201. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.js.map +1 -1
  202. package/dist/dist-esm/react-components/src/components/VideoGallery/ParticipantVideoTileOverlay.d.ts +15 -0
  203. package/dist/dist-esm/react-components/src/components/VideoGallery/ParticipantVideoTileOverlay.js +63 -0
  204. package/dist/dist-esm/react-components/src/components/VideoGallery/ParticipantVideoTileOverlay.js.map +1 -0
  205. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteContentShareReactionOverlay.d.ts +14 -0
  206. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteContentShareReactionOverlay.js +144 -0
  207. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteContentShareReactionOverlay.js.map +1 -0
  208. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.d.ts +5 -0
  209. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js +18 -2
  210. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js.map +1 -1
  211. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.d.ts +1 -0
  212. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js +8 -2
  213. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js.map +1 -1
  214. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.d.ts +11 -0
  215. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js +51 -3
  216. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js.map +1 -1
  217. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/reactionUtils.d.ts +13 -0
  218. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/reactionUtils.js +26 -0
  219. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/reactionUtils.js.map +1 -0
  220. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.d.ts +13 -0
  221. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +65 -15
  222. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  223. package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts +39 -0
  224. package/dist/dist-esm/react-components/src/components/VideoGallery.js +58 -10
  225. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  226. package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +13 -7
  227. package/dist/dist-esm/react-components/src/components/VideoTile.js +42 -11
  228. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  229. package/dist/dist-esm/react-components/src/components/index.d.ts +3 -17
  230. package/dist/dist-esm/react-components/src/components/index.js +2 -10
  231. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  232. package/dist/dist-esm/react-components/src/components/styles/AttachmentCard.styles.d.ts +9 -0
  233. package/dist/dist-esm/react-components/src/components/styles/AttachmentCard.styles.js +28 -0
  234. package/dist/dist-esm/react-components/src/components/styles/AttachmentCard.styles.js.map +1 -0
  235. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.d.ts +2 -2
  236. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js +3 -1
  237. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js.map +1 -1
  238. package/dist/dist-esm/react-components/src/components/styles/ReactionButton.styles.d.ts +36 -0
  239. package/dist/dist-esm/react-components/src/components/styles/ReactionButton.styles.js +130 -0
  240. package/dist/dist-esm/react-components/src/components/styles/ReactionButton.styles.js.map +1 -0
  241. package/dist/dist-esm/react-components/src/components/styles/ReactionOverlay.style.d.ts +71 -0
  242. package/dist/dist-esm/react-components/src/components/styles/ReactionOverlay.style.js +251 -0
  243. package/dist/dist-esm/react-components/src/components/styles/ReactionOverlay.style.js.map +1 -0
  244. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.d.ts +0 -1
  245. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js +2 -3
  246. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js.map +1 -1
  247. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.d.ts +13 -0
  248. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js +40 -0
  249. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js.map +1 -1
  250. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.d.ts +1 -8
  251. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.js +3 -13
  252. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.js.map +1 -1
  253. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.d.ts +5 -5
  254. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.js +3 -27
  255. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.js.map +1 -1
  256. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.d.ts +0 -9
  257. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js +0 -14
  258. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js.map +1 -1
  259. package/dist/dist-esm/react-components/src/components/utils/common.d.ts +1 -1
  260. package/dist/dist-esm/react-components/src/components/utils/common.js +3 -6
  261. package/dist/dist-esm/react-components/src/components/utils/common.js.map +1 -1
  262. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.d.ts +1 -2
  263. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js.map +1 -1
  264. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.d.ts +0 -4
  265. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js +1 -5
  266. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js.map +1 -1
  267. package/dist/dist-esm/react-components/src/index.d.ts +2 -1
  268. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  269. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +5 -57
  270. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  271. package/dist/dist-esm/react-components/src/localization/locales/ar-SA/strings.json +16 -2
  272. package/dist/dist-esm/react-components/src/localization/locales/cs-CZ/strings.json +16 -2
  273. package/dist/dist-esm/react-components/src/localization/locales/de-DE/strings.json +16 -2
  274. package/dist/dist-esm/react-components/src/localization/locales/en-GB/strings.json +16 -2
  275. package/dist/dist-esm/react-components/src/localization/locales/en-US/strings.json +19 -3
  276. package/dist/dist-esm/react-components/src/localization/locales/es-ES/strings.json +16 -2
  277. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/strings.json +16 -2
  278. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/strings.json +16 -2
  279. package/dist/dist-esm/react-components/src/localization/locales/he-IL/strings.json +16 -2
  280. package/dist/dist-esm/react-components/src/localization/locales/it-IT/strings.json +16 -2
  281. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/strings.json +16 -2
  282. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/strings.json +16 -2
  283. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/strings.json +16 -2
  284. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/strings.json +16 -2
  285. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/strings.json +16 -2
  286. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/strings.json +16 -2
  287. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/strings.json +16 -2
  288. package/dist/dist-esm/react-components/src/localization/locales/sv-SE/strings.json +16 -2
  289. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/strings.json +16 -2
  290. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/strings.json +16 -2
  291. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/strings.json +16 -2
  292. package/dist/dist-esm/react-components/src/theming/FluentV9ThemeProvider.js +1 -1
  293. package/dist/dist-esm/react-components/src/theming/FluentV9ThemeProvider.js.map +1 -1
  294. package/dist/dist-esm/react-components/src/theming/icons.d.ts +5 -13
  295. package/dist/dist-esm/react-components/src/theming/icons.js +22 -103
  296. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  297. package/dist/dist-esm/react-components/src/theming/themes.d.ts +0 -6
  298. package/dist/dist-esm/react-components/src/theming/themes.js +0 -10
  299. package/dist/dist-esm/react-components/src/theming/themes.js.map +1 -1
  300. package/dist/dist-esm/react-components/src/types/Attachment.d.ts +69 -73
  301. package/dist/dist-esm/react-components/src/types/Attachment.js.map +1 -1
  302. package/dist/dist-esm/react-components/src/types/CallSurveyImprovementSuggestions.d.ts +1 -1
  303. package/dist/dist-esm/react-components/src/types/CallSurveyImprovementSuggestions.js.map +1 -1
  304. package/dist/dist-esm/react-components/src/types/ChatMessage.d.ts +1 -27
  305. package/dist/dist-esm/react-components/src/types/ChatMessage.js.map +1 -1
  306. package/dist/dist-esm/react-components/src/types/OnRender.d.ts +0 -8
  307. package/dist/dist-esm/react-components/src/types/OnRender.js.map +1 -1
  308. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.d.ts +34 -0
  309. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js.map +1 -1
  310. package/dist/dist-esm/react-components/src/types/ReactionTypes.d.ts +49 -1
  311. package/dist/dist-esm/react-components/src/types/ReactionTypes.js +2 -1
  312. package/dist/dist-esm/react-components/src/types/ReactionTypes.js.map +1 -1
  313. package/dist/dist-esm/react-components/src/types/SurveyIssues.d.ts +1 -1
  314. package/dist/dist-esm/react-components/src/types/SurveyIssues.js.map +1 -1
  315. package/dist/dist-esm/react-components/src/types/SurveyIssuesHeadingStrings.d.ts +1 -1
  316. package/dist/dist-esm/react-components/src/types/SurveyIssuesHeadingStrings.js.map +1 -1
  317. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.d.ts +15 -6
  318. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js +0 -2
  319. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
  320. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +10 -72
  321. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +10 -43
  322. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  323. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +26 -97
  324. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  325. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +21 -77
  326. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +47 -187
  327. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  328. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +48 -92
  329. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js +1 -1
  330. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  331. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.d.ts +1 -2
  332. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js +1 -7
  333. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js.map +1 -1
  334. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.d.ts +1 -5
  335. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js +0 -2
  336. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js.map +1 -1
  337. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.d.ts +4 -0
  338. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +48 -33
  339. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  340. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts +0 -1
  341. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +26 -39
  342. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  343. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js +0 -7
  344. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js.map +1 -1
  345. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.d.ts +0 -2
  346. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js +0 -27
  347. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js.map +1 -1
  348. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js +2 -20
  349. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js.map +1 -1
  350. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.d.ts +0 -2
  351. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js +0 -27
  352. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js.map +1 -1
  353. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.d.ts +0 -1
  354. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js +8 -34
  355. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
  356. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js +2 -2
  357. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js.map +1 -1
  358. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.d.ts +4 -0
  359. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +27 -3
  360. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  361. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/Prompt.d.ts +83 -0
  362. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/Prompt.js +58 -0
  363. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/Prompt.js.map +1 -0
  364. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.d.ts +7 -0
  365. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js +99 -3
  366. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js.map +1 -1
  367. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js +1 -4
  368. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js.map +1 -1
  369. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.d.ts +1 -0
  370. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js +2 -1
  371. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js.map +1 -1
  372. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js +1 -4
  373. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js.map +1 -1
  374. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Reaction.d.ts +16 -0
  375. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Reaction.js +26 -0
  376. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Reaction.js.map +1 -0
  377. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js +0 -1
  378. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js.map +1 -1
  379. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js +2 -6
  380. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js.map +1 -1
  381. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.d.ts +2 -1
  382. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +40 -31
  383. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  384. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.d.ts +2 -1
  385. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.js.map +1 -1
  386. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.d.ts +2 -4
  387. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js +0 -2
  388. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
  389. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.d.ts +1 -0
  390. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +19 -7
  391. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  392. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.d.ts +0 -7
  393. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +9 -87
  394. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  395. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/DtmfDialpadPage.d.ts +1 -0
  396. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/DtmfDialpadPage.js +2 -2
  397. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/DtmfDialpadPage.js.map +1 -1
  398. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js.map +1 -1
  399. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.d.ts +5 -5
  400. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +5 -7
  401. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
  402. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.js +0 -3
  403. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.js.map +1 -1
  404. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitySelector.d.ts +14 -0
  405. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitySelector.js +13 -0
  406. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitySelector.js.map +1 -0
  407. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js.map +1 -1
  408. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/getFirstSpotlightedRemoteParticipantSelector.d.ts +15 -0
  409. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/getFirstSpotlightedRemoteParticipantSelector.js +26 -0
  410. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/getFirstSpotlightedRemoteParticipantSelector.js.map +1 -0
  411. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.d.ts +1 -1
  412. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js +7 -5
  413. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js.map +1 -1
  414. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.d.ts +1 -1
  415. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js +10 -7
  416. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js.map +1 -1
  417. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalDeviceSettings.styles.d.ts +5 -1
  418. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalDeviceSettings.styles.js +12 -0
  419. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalDeviceSettings.styles.js.map +1 -1
  420. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.d.ts +2 -14
  421. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js +16 -11
  422. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js.map +1 -1
  423. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CapabilityChangedNotificationTracking.js.map +1 -1
  424. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackCapabilityChangedNotifications.js +0 -6
  425. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackCapabilityChangedNotifications.js.map +1 -1
  426. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts +2 -14
  427. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +1 -96
  428. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  429. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/spotlightUtils.d.ts +22 -0
  430. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/spotlightUtils.js +162 -0
  431. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/spotlightUtils.js.map +1 -0
  432. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +11 -61
  433. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +11 -34
  434. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  435. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.d.ts +0 -32
  436. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.js.map +1 -1
  437. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +47 -26
  438. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +168 -137
  439. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  440. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +26 -53
  441. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  442. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +6 -9
  443. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +23 -33
  444. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  445. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts +0 -9
  446. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js +1 -31
  447. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  448. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.d.ts +7 -24
  449. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js +7 -14
  450. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js.map +1 -1
  451. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.d.ts +0 -20
  452. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js +1 -6
  453. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js.map +1 -1
  454. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.d.ts +2 -34
  455. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +20 -35
  456. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  457. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.d.ts +0 -4
  458. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.js.map +1 -1
  459. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationAttachmentUploadAdapter.d.ts +19 -0
  460. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationAttachmentUploadAdapter.js +4 -0
  461. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationAttachmentUploadAdapter.js.map +1 -0
  462. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +7 -13
  463. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +22 -68
  464. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  465. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +2 -13
  466. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  467. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.d.ts +2 -2
  468. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js +8 -10
  469. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js.map +1 -1
  470. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/{FileUpload.d.ts → AttachmentUpload.d.ts} +11 -11
  471. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/{FileUpload.js → AttachmentUpload.js} +13 -13
  472. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUpload.js.map +1 -0
  473. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUploadButton.d.ts +38 -0
  474. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/{FileUploadButton.js → AttachmentUploadButton.js} +13 -18
  475. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUploadButton.js.map +1 -0
  476. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.d.ts +4 -3
  477. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js +2 -2
  478. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js.map +1 -1
  479. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js +2 -4
  480. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js.map +1 -1
  481. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.d.ts +0 -3
  482. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js.map +1 -1
  483. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.d.ts +1 -5
  484. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js +0 -15
  485. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js.map +1 -1
  486. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.d.ts +0 -5
  487. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js +2 -3
  488. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js.map +1 -1
  489. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.d.ts +1 -1
  490. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +39 -13
  491. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -1
  492. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js +0 -26
  493. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js.map +1 -1
  494. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.d.ts +3 -0
  495. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +13 -24
  496. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -1
  497. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.d.ts +2 -1
  498. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.js.map +1 -1
  499. package/dist/dist-esm/react-composites/src/composites/common/ExitSpotlightButton.d.ts +14 -0
  500. package/dist/dist-esm/react-composites/src/composites/common/ExitSpotlightButton.js +16 -0
  501. package/dist/dist-esm/react-composites/src/composites/common/ExitSpotlightButton.js.map +1 -0
  502. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.d.ts +4 -0
  503. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +13 -4
  504. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
  505. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.d.ts +2 -0
  506. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js +13 -16
  507. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js.map +1 -1
  508. package/dist/dist-esm/react-composites/src/composites/common/TagsSurvey.js +1 -1
  509. package/dist/dist-esm/react-composites/src/composites/common/TagsSurvey.js.map +1 -1
  510. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +17 -24
  511. package/dist/dist-esm/react-composites/src/composites/common/icons.js +9 -16
  512. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  513. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.d.ts +15 -15
  514. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js.map +1 -1
  515. package/dist/dist-esm/react-composites/src/composites/common/utils.d.ts +4 -0
  516. package/dist/dist-esm/react-composites/src/composites/common/utils.js +6 -0
  517. package/dist/dist-esm/react-composites/src/composites/common/utils.js.map +1 -1
  518. package/dist/dist-esm/react-composites/src/composites/localization/locales/ar-SA/strings.json +9 -2
  519. package/dist/dist-esm/react-composites/src/composites/localization/locales/cs-CZ/strings.json +9 -2
  520. package/dist/dist-esm/react-composites/src/composites/localization/locales/de-DE/strings.json +9 -2
  521. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-GB/strings.json +9 -2
  522. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-US/strings.json +11 -4
  523. package/dist/dist-esm/react-composites/src/composites/localization/locales/es-ES/strings.json +9 -2
  524. package/dist/dist-esm/react-composites/src/composites/localization/locales/fi-FI/strings.json +9 -2
  525. package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-FR/strings.json +9 -2
  526. package/dist/dist-esm/react-composites/src/composites/localization/locales/he-IL/strings.json +9 -2
  527. package/dist/dist-esm/react-composites/src/composites/localization/locales/it-IT/strings.json +9 -2
  528. package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/strings.json +9 -2
  529. package/dist/dist-esm/react-composites/src/composites/localization/locales/ko-KR/strings.json +9 -2
  530. package/dist/dist-esm/react-composites/src/composites/localization/locales/nb-NO/strings.json +9 -2
  531. package/dist/dist-esm/react-composites/src/composites/localization/locales/nl-NL/strings.json +9 -2
  532. package/dist/dist-esm/react-composites/src/composites/localization/locales/pl-PL/strings.json +9 -2
  533. package/dist/dist-esm/react-composites/src/composites/localization/locales/pt-BR/strings.json +9 -2
  534. package/dist/dist-esm/react-composites/src/composites/localization/locales/ru-RU/strings.json +9 -2
  535. package/dist/dist-esm/react-composites/src/composites/localization/locales/sv-SE/strings.json +9 -2
  536. package/dist/dist-esm/react-composites/src/composites/localization/locales/tr-TR/strings.json +9 -2
  537. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-CN/strings.json +9 -2
  538. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-TW/strings.json +9 -2
  539. package/package.json +19 -17
  540. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.d.ts +0 -45
  541. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js +0 -91
  542. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js.map +0 -1
  543. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.d.ts +0 -17
  544. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.js +0 -36
  545. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.js.map +0 -1
  546. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.d.ts +0 -19
  547. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js +0 -91
  548. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js.map +0 -1
  549. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.d.ts +0 -23
  550. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js +0 -49
  551. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js.map +0 -1
  552. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.d.ts +0 -20
  553. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js.map +0 -1
  554. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.d.ts +0 -10
  555. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js +0 -15
  556. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js.map +0 -1
  557. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.d.ts +0 -69
  558. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js +0 -43
  559. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js.map +0 -1
  560. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.d.ts +0 -75
  561. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js +0 -75
  562. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js.map +0 -1
  563. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.d.ts +0 -105
  564. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js +0 -68
  565. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js.map +0 -1
  566. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.d.ts +0 -86
  567. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js +0 -39
  568. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js.map +0 -1
  569. package/dist/dist-esm/react-components/src/components/HoldButton.d.ts +0 -49
  570. package/dist/dist-esm/react-components/src/components/HoldButton.js +0 -25
  571. package/dist/dist-esm/react-components/src/components/HoldButton.js.map +0 -1
  572. package/dist/dist-esm/react-components/src/components/MentionPopover.d.ts +0 -121
  573. package/dist/dist-esm/react-components/src/components/MentionPopover.js +0 -123
  574. package/dist/dist-esm/react-components/src/components/MentionPopover.js.map +0 -1
  575. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.d.ts +0 -34
  576. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js +0 -42
  577. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js.map +0 -1
  578. package/dist/dist-esm/react-components/src/components/SendBoxErrors.d.ts +0 -14
  579. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js +0 -18
  580. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js.map +0 -1
  581. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.d.ts +0 -24
  582. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js +0 -550
  583. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js.map +0 -1
  584. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.d.ts +0 -152
  585. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js +0 -816
  586. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js.map +0 -1
  587. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.d.ts +0 -58
  588. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js +0 -144
  589. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js.map +0 -1
  590. package/dist/dist-esm/react-components/src/components/styles/IconButton.styles.d.ts +0 -5
  591. package/dist/dist-esm/react-components/src/components/styles/IconButton.styles.js +0 -17
  592. package/dist/dist-esm/react-components/src/components/styles/IconButton.styles.js.map +0 -1
  593. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.d.ts +0 -26
  594. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js +0 -69
  595. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js.map +0 -1
  596. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.d.ts +0 -38
  597. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js +0 -92
  598. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js.map +0 -1
  599. package/dist/dist-esm/react-components/src/components/styles/Stack.style.d.ts +0 -5
  600. package/dist/dist-esm/react-components/src/components/styles/Stack.style.js +0 -32
  601. package/dist/dist-esm/react-components/src/components/styles/Stack.style.js.map +0 -1
  602. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.d.ts +0 -26
  603. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js +0 -67
  604. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js.map +0 -1
  605. package/dist/dist-esm/react-components/src/components/utils/merge.d.ts +0 -7
  606. package/dist/dist-esm/react-components/src/components/utils/merge.js +0 -16
  607. package/dist/dist-esm/react-components/src/components/utils/merge.js.map +0 -1
  608. package/dist/dist-esm/react-components/src/theming/icons.styles.d.ts +0 -6
  609. package/dist/dist-esm/react-components/src/theming/icons.styles.js +0 -25
  610. package/dist/dist-esm/react-components/src/theming/icons.styles.js.map +0 -1
  611. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.d.ts +0 -48
  612. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js +0 -218
  613. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js.map +0 -1
  614. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.d.ts +0 -12
  615. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js +0 -93
  616. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js.map +0 -1
  617. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.d.ts +0 -8
  618. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js +0 -26
  619. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js.map +0 -1
  620. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.d.ts +0 -24
  621. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +0 -28
  622. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +0 -1
  623. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.d.ts +0 -15
  624. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js +0 -54
  625. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js.map +0 -1
  626. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.d.ts +0 -32
  627. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js +0 -81
  628. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js.map +0 -1
  629. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.d.ts +0 -18
  630. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js +0 -18
  631. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +0 -1
  632. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.d.ts +0 -15
  633. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js +0 -23
  634. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js.map +0 -1
  635. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.d.ts +0 -48
  636. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js +0 -165
  637. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js.map +0 -1
  638. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUpload.js.map +0 -1
  639. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.d.ts +0 -36
  640. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js.map +0 -1
  641. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.d.ts +0 -6
  642. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js +0 -11
  643. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js.map +0 -1
  644. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.d.ts +0 -12
  645. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js +0 -15
  646. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js.map +0 -1
  647. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.d.ts +0 -27
  648. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js +0 -14
  649. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js.map +0 -1
  650. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.d.ts +0 -22
  651. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js +0 -107
  652. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js.map +0 -1
  653. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.d.ts +0 -17
  654. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js +0 -32
  655. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js.map +0 -1
  656. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.d.ts +0 -22
  657. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js +0 -74
  658. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js.map +0 -1
  659. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.d.ts +0 -15
  660. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js +0 -61
  661. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js.map +0 -1
  662. package/dist/dist-esm/react-composites/src/composites/common/SendBox.d.ts +0 -17
  663. package/dist/dist-esm/react-composites/src/composites/common/SendBox.js +0 -28
  664. package/dist/dist-esm/react-composites/src/composites/common/SendBox.js.map +0 -1
@@ -11,6 +11,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  };
12
12
  import { LocalVideoStream } from '@azure/communication-calling';
13
13
  import { toFlatCommunicationIdentifier } from "../../../acs-ui-common/src";
14
+ /* @conditional-compile-remove(spotlight) */
15
+ import { _toCommunicationIdentifier } from "../../../acs-ui-common/src";
14
16
  import memoizeOne from 'memoize-one';
15
17
  import { disposeAllLocalPreviewViews, _isInCall, _isInLobbyOrConnecting, _isPreviewOn } from '../utils/callUtils';
16
18
  import { Features } from '@azure/communication-calling';
@@ -166,6 +168,19 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
166
168
  yield (raiseHandFeature === null || raiseHandFeature === void 0 ? void 0 : raiseHandFeature.raiseHand());
167
169
  }
168
170
  });
171
+ /* @conditional-compile-remove(reaction) */
172
+ const onReactionClick = (reaction) => __awaiter(void 0, void 0, void 0, function* () {
173
+ var _c;
174
+ if (reaction === 'like' || reaction === 'applause' || reaction === 'heart' || reaction === 'laugh' || reaction === 'surprised') {
175
+ yield ((_c = call === null || call === void 0 ? void 0 : call.feature(Features.Reaction)) === null || _c === void 0 ? void 0 : _c.sendReaction({
176
+ reactionType: reaction
177
+ }));
178
+ }
179
+ else {
180
+ console.warn(`Can not recognize ${reaction} as meeting reaction`);
181
+ }
182
+ return;
183
+ });
169
184
  const onToggleMicrophone = () => __awaiter(void 0, void 0, void 0, function* () {
170
185
  if (!call || !(_isInCall(call.state) || _isInLobbyOrConnecting(call.state))) {
171
186
  throw new Error(`Please invoke onToggleMicrophone after call is started`);
@@ -180,13 +195,11 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
180
195
  forEveryone: forEveryone === true ? true : false
181
196
  }));
182
197
  });
183
- /* @conditional-compile-remove(PSTN-calls) */
184
- const onToggleHold = () => __awaiter(void 0, void 0, void 0, function* () { return (call === null || call === void 0 ? void 0 : call.state) === 'LocalHold' ? yield (call === null || call === void 0 ? void 0 : call.resume()) : yield (call === null || call === void 0 ? void 0 : call.hold()); });
185
198
  const onCreateLocalStreamView = (...args_1) => __awaiter(void 0, [...args_1], void 0, function* (options = {
186
199
  scalingMode: 'Crop',
187
200
  isMirrored: true
188
201
  }) {
189
- var _c;
202
+ var _d;
190
203
  if (!call || call.localVideoStreams.length === 0) {
191
204
  return;
192
205
  }
@@ -198,7 +211,7 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
198
211
  if (!localStream) {
199
212
  return;
200
213
  }
201
- const { view } = (_c = (yield callClient.createView(call.id, undefined, localStream, options))) !== null && _c !== void 0 ? _c : {};
214
+ const { view } = (_d = (yield callClient.createView(call.id, undefined, localStream, options))) !== null && _d !== void 0 ? _d : {};
202
215
  return view ? {
203
216
  view
204
217
  } : undefined;
@@ -314,12 +327,6 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
314
327
  const notImplemented = () => {
315
328
  throw new Error('Not implemented, cannot call a method from an abstract object');
316
329
  };
317
- /* @conditional-compile-remove(call-readiness) */
318
- const askDevicePermission = (constrain) => __awaiter(void 0, void 0, void 0, function* () {
319
- if (deviceManager) {
320
- yield (deviceManager === null || deviceManager === void 0 ? void 0 : deviceManager.askDevicePermission(constrain));
321
- }
322
- });
323
330
  const onRemoveVideoBackgroundEffects = () => __awaiter(void 0, void 0, void 0, function* () {
324
331
  const stream = (call === null || call === void 0 ? void 0 : call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video')) || (deviceManager === null || deviceManager === void 0 ? void 0 : deviceManager.getUnparentedVideoStreams().find(stream => stream.mediaStreamType === 'Video'));
325
332
  if (stream) {
@@ -332,24 +339,24 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
332
339
  }
333
340
  });
334
341
  const onBlurVideoBackground = (backgroundBlurConfig) => __awaiter(void 0, void 0, void 0, function* () {
335
- var _d;
342
+ var _e;
336
343
  const stream = (call === null || call === void 0 ? void 0 : call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video')) || (deviceManager === null || deviceManager === void 0 ? void 0 : deviceManager.getUnparentedVideoStreams().find(stream => stream.mediaStreamType === 'Video'));
337
344
  if (stream) {
338
345
  if (!(options === null || options === void 0 ? void 0 : options.onResolveVideoBackgroundEffectsDependency)) {
339
346
  throw new Error(`Video background effects dependency not resolved`);
340
347
  }
341
- const createEffect = (options === null || options === void 0 ? void 0 : options.onResolveVideoBackgroundEffectsDependency) && ((_d = (yield options.onResolveVideoBackgroundEffectsDependency())) === null || _d === void 0 ? void 0 : _d.createBackgroundBlurEffect);
348
+ const createEffect = (options === null || options === void 0 ? void 0 : options.onResolveVideoBackgroundEffectsDependency) && ((_e = (yield options.onResolveVideoBackgroundEffectsDependency())) === null || _e === void 0 ? void 0 : _e.createBackgroundBlurEffect);
342
349
  return createEffect && stream.feature(Features.VideoEffects).startEffects(createEffect(backgroundBlurConfig));
343
350
  }
344
351
  });
345
352
  const onReplaceVideoBackground = (backgroundReplacementConfig) => __awaiter(void 0, void 0, void 0, function* () {
346
- var _e;
353
+ var _f;
347
354
  const stream = (call === null || call === void 0 ? void 0 : call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video')) || (deviceManager === null || deviceManager === void 0 ? void 0 : deviceManager.getUnparentedVideoStreams().find(stream => stream.mediaStreamType === 'Video'));
348
355
  if (stream) {
349
356
  if (!(options === null || options === void 0 ? void 0 : options.onResolveVideoBackgroundEffectsDependency)) {
350
357
  throw new Error(`Video background effects dependency not resolved`);
351
358
  }
352
- const createEffect = (options === null || options === void 0 ? void 0 : options.onResolveVideoBackgroundEffectsDependency) && ((_e = (yield options.onResolveVideoBackgroundEffectsDependency())) === null || _e === void 0 ? void 0 : _e.createBackgroundReplacementEffect);
359
+ const createEffect = (options === null || options === void 0 ? void 0 : options.onResolveVideoBackgroundEffectsDependency) && ((_f = (yield options.onResolveVideoBackgroundEffectsDependency())) === null || _f === void 0 ? void 0 : _f.createBackgroundReplacementEffect);
353
360
  return createEffect && stream.feature(Features.VideoEffects).startEffects(createEffect(backgroundReplacementConfig));
354
361
  }
355
362
  });
@@ -375,10 +382,44 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
375
382
  });
376
383
  /* @conditional-compile-remove(end-of-call-survey) */
377
384
  const onSubmitSurvey = (survey) => __awaiter(void 0, void 0, void 0, function* () { return yield (call === null || call === void 0 ? void 0 : call.feature(Features.CallSurvey).submitSurvey(survey)); });
385
+ /* @conditional-compile-remove(spotlight) */
386
+ const onStartSpotlight = (userIds) => __awaiter(void 0, void 0, void 0, function* () {
387
+ const participants = userIds === null || userIds === void 0 ? void 0 : userIds.map(userId => _toCommunicationIdentifier(userId));
388
+ yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).startSpotlight(participants));
389
+ });
390
+ /* @conditional-compile-remove(spotlight) */
391
+ const onStopSpotlight = (userIds) => __awaiter(void 0, void 0, void 0, function* () {
392
+ const participants = userIds === null || userIds === void 0 ? void 0 : userIds.map(userId => _toCommunicationIdentifier(userId));
393
+ yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).stopSpotlight(participants));
394
+ });
395
+ /* @conditional-compile-remove(spotlight) */
396
+ const onStopAllSpotlight = () => __awaiter(void 0, void 0, void 0, function* () {
397
+ yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).stopAllSpotlight());
398
+ });
399
+ /* @conditional-compile-remove(spotlight) */
400
+ const canStartSpotlight = call === null || call === void 0 ? void 0 : call.feature(Features.Capabilities).capabilities.spotlightParticipant.isPresent;
401
+ /* @conditional-compile-remove(spotlight) */
402
+ const canRemoveSpotlight = call === null || call === void 0 ? void 0 : call.feature(Features.Capabilities).capabilities.removeParticipantsSpotlight.isPresent;
403
+ /* @conditional-compile-remove(spotlight) */
404
+ const onStartLocalSpotlight = canStartSpotlight ? () => __awaiter(void 0, void 0, void 0, function* () {
405
+ yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).startSpotlight());
406
+ }) : undefined;
407
+ /* @conditional-compile-remove(spotlight) */
408
+ const onStopLocalSpotlight = () => __awaiter(void 0, void 0, void 0, function* () {
409
+ yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).stopSpotlight());
410
+ });
411
+ /* @conditional-compile-remove(spotlight) */
412
+ const onStartRemoteSpotlight = canStartSpotlight ? (userIds) => __awaiter(void 0, void 0, void 0, function* () {
413
+ const participants = userIds === null || userIds === void 0 ? void 0 : userIds.map(userId => _toCommunicationIdentifier(userId));
414
+ yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).startSpotlight(participants));
415
+ }) : undefined;
416
+ /* @conditional-compile-remove(spotlight) */
417
+ const onStopRemoteSpotlight = canRemoveSpotlight ? (userIds) => __awaiter(void 0, void 0, void 0, function* () {
418
+ const participants = userIds === null || userIds === void 0 ? void 0 : userIds.map(userId => _toCommunicationIdentifier(userId));
419
+ yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).stopSpotlight(participants));
420
+ }) : undefined;
378
421
  return {
379
422
  onHangUp,
380
- /* @conditional-compile-remove(PSTN-calls) */
381
- onToggleHold,
382
423
  onSelectCamera,
383
424
  onSelectMicrophone,
384
425
  onSelectSpeaker,
@@ -397,13 +438,11 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
397
438
  onRaiseHand,
398
439
  onLowerHand,
399
440
  onToggleRaiseHand,
400
- /* @conditional-compile-remove(PSTN-calls) */
401
- onAddParticipant: notImplemented,
441
+ /* @conditional-compile-remove(reaction) */
442
+ onReactionClick: onReactionClick,
402
443
  onRemoveParticipant: notImplemented,
403
444
  onStartCall: notImplemented,
404
445
  onSendDtmfTone,
405
- /* @conditional-compile-remove(call-readiness) */
406
- askDevicePermission,
407
446
  onRemoveVideoBackgroundEffects,
408
447
  onBlurVideoBackground,
409
448
  onReplaceVideoBackground,
@@ -416,7 +455,21 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
416
455
  /* @conditional-compile-remove(close-captions) */
417
456
  onSetSpokenLanguage,
418
457
  /* @conditional-compile-remove(end-of-call-survey) */
419
- onSubmitSurvey
458
+ onSubmitSurvey,
459
+ /* @conditional-compile-remove(spotlight) */
460
+ onStartSpotlight,
461
+ /* @conditional-compile-remove(spotlight) */
462
+ onStopSpotlight,
463
+ /* @conditional-compile-remove(spotlight) */
464
+ onStopAllSpotlight,
465
+ /* @conditional-compile-remove(spotlight) */
466
+ onStartLocalSpotlight,
467
+ /* @conditional-compile-remove(spotlight) */
468
+ onStopLocalSpotlight,
469
+ /* @conditional-compile-remove(spotlight) */
470
+ onStartRemoteSpotlight,
471
+ /* @conditional-compile-remove(spotlight) */
472
+ onStopRemoteSpotlight
420
473
  };
421
474
  });
422
475
  //# sourceMappingURL=createCommonHandlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createCommonHandlers.js","sourceRoot":"","sources":["../../../../../preprocess-dist/calling-component-bindings/src/handlers/createCommonHandlers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { AudioDeviceInfo, Call, LocalVideoStream, StartCallOptions, VideoDeviceInfo, BackgroundBlurEffect, BackgroundReplacementEffect, BackgroundBlurConfig, BackgroundReplacementConfig } from '@azure/communication-calling';\n/* @conditional-compile-remove(end-of-call-survey) */\nimport { CallSurvey, CallSurveyResponse } from '@azure/communication-calling';\nimport { DtmfTone } from '@azure/communication-calling';\n/* @conditional-compile-remove(PSTN-calls) */\nimport { AddPhoneNumberOptions } from '@azure/communication-calling';\n/* @conditional-compile-remove(teams-identity-support) */\nimport { TeamsCall } from '@azure/communication-calling';\n/* @conditional-compile-remove(call-readiness) */\nimport { PermissionConstraints } from '@azure/communication-calling';\nimport { toFlatCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { CreateViewResult, StatefulCallClient, StatefulDeviceManager } from '@internal/calling-stateful-client';\nimport memoizeOne from 'memoize-one';\nimport { CreateVideoStreamViewResult, VideoStreamOptions } from '@internal/react-components';\nimport { disposeAllLocalPreviewViews, _isInCall, _isInLobbyOrConnecting, _isPreviewOn } from '../utils/callUtils';\n/* @conditional-compile-remove(PSTN-calls) */\nimport { CommunicationUserIdentifier, PhoneNumberIdentifier } from '@azure/communication-common';\nimport { CommunicationIdentifier } from '@azure/communication-common';\nimport { Features } from '@azure/communication-calling';\n/* @conditional-compile-remove(close-captions) */\nimport { TeamsCaptions } from '@azure/communication-calling';\n/**\n * Object containing all the handlers required for calling components.\n *\n * Calling related components from this package are able to pick out relevant handlers from this object.\n * See {@link useHandlers} and {@link usePropsFor}.\n *\n * @public\n */\nexport interface CommonCallingHandlers {\n onStartLocalVideo: () => Promise<void>;\n onToggleCamera: (options?: VideoStreamOptions) => Promise<void>;\n onSelectMicrophone: (device: AudioDeviceInfo) => Promise<void>;\n onSelectSpeaker: (device: AudioDeviceInfo) => Promise<void>;\n onSelectCamera: (device: VideoDeviceInfo, options?: VideoStreamOptions) => Promise<void>;\n onToggleMicrophone: () => Promise<void>;\n onStartScreenShare: () => Promise<void>;\n onStopScreenShare: () => Promise<void>;\n onToggleScreenShare: () => Promise<void>;\n onHangUp: (forEveryone?: boolean) => Promise<void>;\n onRaiseHand: () => Promise<void>;\n onLowerHand: () => Promise<void>;\n onToggleRaiseHand: () => Promise<void>;\n /* @conditional-compile-remove(PSTN-calls) */\n onToggleHold: () => Promise<void>;\n /* @conditional-compile-remove(PSTN-calls) */\n onAddParticipant(participant: CommunicationUserIdentifier): Promise<void>;\n /* @conditional-compile-remove(PSTN-calls) */\n onAddParticipant(participant: PhoneNumberIdentifier, options: AddPhoneNumberOptions): Promise<void>;\n onCreateLocalStreamView: (options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;\n onCreateRemoteStreamView: (userId: string, options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;\n /**\n * @deprecated use {@link onDisposeRemoteVideoStreamView} and {@link onDisposeRemoteScreenShareStreamView} instead.\n */\n onDisposeRemoteStreamView: (userId: string) => Promise<void>;\n onDisposeLocalStreamView: () => Promise<void>;\n onDisposeRemoteVideoStreamView: (userId: string) => Promise<void>;\n onDisposeRemoteScreenShareStreamView: (userId: string) => Promise<void>;\n onSendDtmfTone: (dtmfTone: DtmfTone) => Promise<void>;\n onRemoveParticipant(userId: string): Promise<void>;\n /* @conditional-compile-remove(PSTN-calls) */\n onRemoveParticipant(participant: CommunicationIdentifier): Promise<void>;\n /* @conditional-compile-remove(call-readiness) */\n askDevicePermission: (constrain: PermissionConstraints) => Promise<void>;\n onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => void;\n onRemoveVideoBackgroundEffects: () => Promise<void>;\n onBlurVideoBackground: (backgroundBlurConfig?: BackgroundBlurConfig) => Promise<void>;\n onReplaceVideoBackground: (backgroundReplacementConfig: BackgroundReplacementConfig) => Promise<void>;\n /* @conditional-compile-remove(close-captions) */\n onStartCaptions: (options?: CaptionsOptions) => Promise<void>;\n /* @conditional-compile-remove(close-captions) */\n onStopCaptions: () => Promise<void>;\n /* @conditional-compile-remove(close-captions) */\n onSetSpokenLanguage: (language: string) => Promise<void>;\n /* @conditional-compile-remove(close-captions) */\n onSetCaptionLanguage: (language: string) => Promise<void>;\n /* @conditional-compile-remove(end-of-call-survey) */\n onSubmitSurvey(survey: CallSurvey): Promise<CallSurveyResponse | undefined>;\n}\n\n/**\n * options bag to start captions\n *\n * @public\n */\nexport type CaptionsOptions = {\n spokenLanguage: string;\n};\n\n/**\n * @private\n */\nexport const areStreamsEqual = (prevStream: LocalVideoStream, newStream: LocalVideoStream): boolean => {\n return !!prevStream && !!newStream && prevStream.source.id === newStream.source.id;\n};\n\n/**\n * Dependency type to be injected for video background effects\n *\n * @public\n */\nexport type VideoBackgroundEffectsDependency = {\n createBackgroundBlurEffect: (config?: BackgroundBlurConfig) => BackgroundBlurEffect;\n createBackgroundReplacementEffect: (config: BackgroundReplacementConfig) => BackgroundReplacementEffect;\n};\n\n/**\n * Create the common implementation of {@link CallingHandlers} for all types of Call\n *\n * @private\n */\nexport const createDefaultCommonCallingHandlers = memoizeOne((callClient: StatefulCallClient, deviceManager: StatefulDeviceManager | undefined, call: Call | /* @conditional-compile-remove(teams-identity-support) */TeamsCall | undefined, options?: {\n onResolveVideoBackgroundEffectsDependency?: () => Promise<VideoBackgroundEffectsDependency>;\n}): CommonCallingHandlers => {\n const onStartLocalVideo = async (): Promise<void> => {\n // Before the call object creates a stream, dispose of any local preview streams.\n // @TODO: is there any way to parent the unparented view to the call object instead\n // of disposing and creating a new stream?\n await disposeAllLocalPreviewViews(callClient);\n const callId = call?.id;\n let videoDeviceInfo = callClient.getState().deviceManager.selectedCamera;\n if (!videoDeviceInfo) {\n const cameras = await deviceManager?.getCameras();\n videoDeviceInfo = cameras && cameras.length > 0 ? cameras[0] : undefined;\n videoDeviceInfo && deviceManager?.selectCamera(videoDeviceInfo);\n }\n if (!callId || !videoDeviceInfo) {\n return;\n }\n const stream = new LocalVideoStream(videoDeviceInfo);\n if (call && !call.localVideoStreams.find(s => areStreamsEqual(s, stream))) {\n await call.startVideo(stream);\n }\n };\n const onStopLocalVideo = async (stream: LocalVideoStream): Promise<void> => {\n const callId = call?.id;\n if (!callId) {\n return;\n }\n if (call && call.localVideoStreams.find(s => areStreamsEqual(s, stream))) {\n await call.stopVideo(stream);\n }\n };\n const onToggleCamera = async (options?: VideoStreamOptions): Promise<void> => {\n const previewOn = _isPreviewOn(callClient.getState().deviceManager);\n\n // the disposal of the unparented views is to workaround: https://skype.visualstudio.com/SPOOL/_workitems/edit/3030558.\n // The root cause of the issue is caused by never transitioning the unparented view to the\n // call object when going from configuration page (disconnected call state) to connecting.\n //\n // Currently the only time the local video stream is moved from unparented view to the call\n // object is when we transition from connecting -> call state. If the camera was on,\n // inside the MediaGallery we trigger toggleCamera. This triggers onStartLocalVideo which\n // destroys the unparentedView and creates a new stream in the call - so all looks well.\n //\n // However, if someone turns off their camera during the lobbyOrConnecting screen, the\n // call.localVideoStreams will be empty (as the stream is currently stored in the unparented\n // views and was never transitioned to the call object) and thus we incorrectly try to create\n // a new video stream for the call object, instead of only stopping the unparented view.\n //\n // The correct fix for this is to ensure that callAgent.onStartCall is called with the\n // localvideostream as a videoOption. That will mean call.onLocalVideoStreamsUpdated will\n // be triggered when the call is in connecting state, which we can then transition the\n // local video stream to the stateful call client and get into a clean state.\n\n if (call && (_isInCall(call.state) || _isInLobbyOrConnecting(call.state))) {\n const stream = call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video');\n const unparentedViews = callClient.getState().deviceManager.unparentedViews;\n if (stream || unparentedViews.length > 0) {\n unparentedViews && (await unparentedViews.forEach(view => view.mediaStreamType === 'Video' && callClient.disposeView(undefined, undefined, view)));\n stream && (await onStopLocalVideo(stream));\n } else {\n await onStartLocalVideo();\n }\n } else {\n /**\n * This will create a unparented view to be used on the configuration page and the connecting screen\n *\n * If the device that the stream will come from is not on from permissions checks, then it will take time\n * to create the stream since device is off. If we are turn the camera on immedietly on the configuration page we see it is\n * fast but that is because the device is already primed to return a stream.\n *\n * On the connecting page the device has already turned off and the connecting window is so small we do not see the resulting\n * unparented view from the code below.\n */\n const selectedCamera = callClient.getState().deviceManager.selectedCamera;\n if (selectedCamera) {\n if (previewOn) {\n await onDisposeLocalStreamView();\n } else {\n await callClient.createView(undefined, undefined, {\n source: selectedCamera,\n mediaStreamType: 'Video'\n }, options);\n }\n }\n }\n };\n const onSelectMicrophone = async (device: AudioDeviceInfo): Promise<void> => {\n if (!deviceManager) {\n return;\n }\n return deviceManager.selectMicrophone(device);\n };\n const onSelectSpeaker = async (device: AudioDeviceInfo): Promise<void> => {\n if (!deviceManager) {\n return;\n }\n return deviceManager.selectSpeaker(device);\n };\n const onSelectCamera = async (device: VideoDeviceInfo, options?: VideoStreamOptions): Promise<void> => {\n if (!deviceManager) {\n return;\n }\n if (call && _isInCall(call.state)) {\n deviceManager.selectCamera(device);\n const stream = call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video');\n await stream?.switchSource(device);\n\n /// TODO: TEMPORARY SOLUTION\n /// The Calling SDK needs to wait until the stream is ready before resolving the switchSource promise.\n /// This is a temporary solution to wait for the stream to be ready before resolving the promise.\n /// This allows the onSelectCamera to be throttled to prevent the streams from getting in to a frozen state\n /// if the user switches cameras too rapidly.\n /// This is to be removed once the Calling SDK has issued a fix.\n await stream?.getMediaStream();\n } else {\n const previewOn = _isPreviewOn(callClient.getState().deviceManager);\n if (!previewOn) {\n deviceManager.selectCamera(device);\n return;\n }\n await onDisposeLocalStreamView();\n deviceManager.selectCamera(device);\n await callClient.createView(undefined, undefined, {\n source: device,\n mediaStreamType: 'Video'\n }, options);\n }\n };\n const onRaiseHand = async (): Promise<void> => await call?.feature(Features.RaiseHand)?.raiseHand();\n const onLowerHand = async (): Promise<void> => await call?.feature(Features.RaiseHand)?.lowerHand();\n const onToggleRaiseHand = async (): Promise<void> => {\n const raiseHandFeature = call?.feature(Features.RaiseHand);\n const localUserId = callClient.getState().userId;\n const isLocalRaisedHand = raiseHandFeature?.getRaisedHands().find(publishedState => toFlatCommunicationIdentifier(publishedState.identifier) === toFlatCommunicationIdentifier(localUserId));\n if (isLocalRaisedHand) {\n await raiseHandFeature?.lowerHand();\n } else {\n await raiseHandFeature?.raiseHand();\n }\n };\n const onToggleMicrophone = async (): Promise<void> => {\n if (!call || !(_isInCall(call.state) || _isInLobbyOrConnecting(call.state))) {\n throw new Error(`Please invoke onToggleMicrophone after call is started`);\n }\n return call.isMuted ? await call.unmute() : await call.mute();\n };\n const onStartScreenShare = async (): Promise<void> => await call?.startScreenSharing();\n const onStopScreenShare = async (): Promise<void> => await call?.stopScreenSharing();\n const onToggleScreenShare = async (): Promise<void> => call?.isScreenSharingOn ? await onStopScreenShare() : await onStartScreenShare();\n const onHangUp = async (forEveryone?: boolean): Promise<void> => await call?.hangUp({\n forEveryone: forEveryone === true ? true : false\n });\n\n /* @conditional-compile-remove(PSTN-calls) */\n const onToggleHold = async (): Promise<void> => call?.state === 'LocalHold' ? await call?.resume() : await call?.hold();\n const onCreateLocalStreamView = async (options = ({\n scalingMode: 'Crop',\n isMirrored: true\n } as VideoStreamOptions)): Promise<void | CreateVideoStreamViewResult> => {\n if (!call || call.localVideoStreams.length === 0) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n return;\n }\n const localStream = callState.localVideoStreams.find(item => item.mediaStreamType === 'Video');\n if (!localStream) {\n return;\n }\n const {\n view\n } = (await callClient.createView(call.id, undefined, localStream, options)) ?? {};\n return view ? {\n view\n } : undefined;\n };\n const onCreateRemoteStreamView = async (userId: string, options = ({\n scalingMode: 'Crop'\n } as VideoStreamOptions)): Promise<void | CreateVideoStreamViewResult> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);\n if (!participant || !participant.videoStreams) {\n return;\n }\n\n /**\n * There is a bug from the calling sdk where if a user leaves and rejoins immediately\n * it adds 2 more potential streams this remote participant can use. The old 2 streams\n * still show as available and that is how we got a frozen stream in this case. The stopgap\n * until streams accurately reflect their availability is to always prioritize the latest streams of a certain type\n * e.g findLast instead of find\n */\n // Find the first available stream, if there is none, then get the first stream\n const remoteVideoStream = Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'Video' && i.isAvailable) || Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'Video');\n const screenShareStream = Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'ScreenSharing' && i.isAvailable) || Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'ScreenSharing');\n let createViewResult: CreateViewResult | undefined = undefined;\n if (remoteVideoStream && remoteVideoStream.isAvailable && !remoteVideoStream.view) {\n createViewResult = await callClient.createView(call.id, participant.identifier, remoteVideoStream, options);\n }\n if (screenShareStream && screenShareStream.isAvailable && !screenShareStream.view) {\n // Hardcoded `scalingMode` since it is highly unlikely that CONTOSO would ever want to use a different scaling mode for screenshare.\n // Using `Crop` would crop the contents of screenshare and `Stretch` would warp it.\n // `Fit` is the only mode that maintains the integrity of the screen being shared.\n createViewResult = await callClient.createView(call.id, participant.identifier, screenShareStream, {\n scalingMode: 'Fit'\n });\n }\n return createViewResult?.view ? {\n view: createViewResult?.view\n } : undefined;\n };\n const onDisposeRemoteStreamView = async (userId: string): Promise<void> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);\n if (!participant || !participant.videoStreams) {\n return;\n }\n const remoteVideoStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'Video');\n const screenShareStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'ScreenSharing');\n if (remoteVideoStream && remoteVideoStream.view) {\n callClient.disposeView(call.id, participant.identifier, remoteVideoStream);\n }\n if (screenShareStream && screenShareStream.view) {\n callClient.disposeView(call.id, participant.identifier, screenShareStream);\n }\n };\n const onDisposeRemoteVideoStreamView = async (userId: string): Promise<void> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);\n if (!participant || !participant.videoStreams) {\n return;\n }\n const remoteVideoStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'Video');\n if (remoteVideoStream && remoteVideoStream.view) {\n callClient.disposeView(call.id, participant.identifier, remoteVideoStream);\n }\n };\n const onDisposeRemoteScreenShareStreamView = async (userId: string): Promise<void> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);\n if (!participant || !participant.videoStreams) {\n return;\n }\n const screenShareStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'ScreenSharing');\n if (screenShareStream && screenShareStream.view) {\n callClient.disposeView(call.id, participant.identifier, screenShareStream);\n }\n };\n const onDisposeLocalStreamView = async (): Promise<void> => {\n // If the user is currently in a call, dispose of the local stream view attached to that call.\n const callState = call && callClient.getState().calls[call.id];\n const localStream = callState?.localVideoStreams.find(item => item.mediaStreamType === 'Video');\n if (call && callState && localStream) {\n callClient.disposeView(call.id, undefined, localStream);\n }\n\n // If the user is not in a call we currently assume any unparented view is a LocalPreview and stop all\n // since those are only used for LocalPreview currently.\n // TODO: we need to remember which LocalVideoStream was used for LocalPreview and dispose that one.\n await disposeAllLocalPreviewViews(callClient);\n };\n const onSendDtmfTone = async (dtmfTone: DtmfTone): Promise<void> => await call?.sendDtmf(dtmfTone);\n const notImplemented = (): any => {\n throw new Error('Not implemented, cannot call a method from an abstract object');\n };\n\n /* @conditional-compile-remove(call-readiness) */\n const askDevicePermission = async (constrain: PermissionConstraints): Promise<void> => {\n if (deviceManager) {\n await deviceManager?.askDevicePermission(constrain);\n }\n };\n const onRemoveVideoBackgroundEffects = async (): Promise<void> => {\n const stream = call?.localVideoStreams.find(stream => stream.mediaStreamType === 'Video') || deviceManager?.getUnparentedVideoStreams().find(stream => stream.mediaStreamType === 'Video');\n if (stream) {\n if (!options?.onResolveVideoBackgroundEffectsDependency) {\n throw new Error(`Video background effects dependency not resolved`);\n } else {\n return stream.feature(Features.VideoEffects).stopEffects();\n }\n }\n };\n const onBlurVideoBackground = async (backgroundBlurConfig?: BackgroundBlurConfig): Promise<void> => {\n const stream = call?.localVideoStreams.find(stream => stream.mediaStreamType === 'Video') || deviceManager?.getUnparentedVideoStreams().find(stream => stream.mediaStreamType === 'Video');\n if (stream) {\n if (!options?.onResolveVideoBackgroundEffectsDependency) {\n throw new Error(`Video background effects dependency not resolved`);\n }\n const createEffect = options?.onResolveVideoBackgroundEffectsDependency && (await options.onResolveVideoBackgroundEffectsDependency())?.createBackgroundBlurEffect;\n return createEffect && stream.feature(Features.VideoEffects).startEffects(createEffect(backgroundBlurConfig));\n }\n };\n const onReplaceVideoBackground = async (backgroundReplacementConfig: BackgroundReplacementConfig): Promise<void> => {\n const stream = call?.localVideoStreams.find(stream => stream.mediaStreamType === 'Video') || deviceManager?.getUnparentedVideoStreams().find(stream => stream.mediaStreamType === 'Video');\n if (stream) {\n if (!options?.onResolveVideoBackgroundEffectsDependency) {\n throw new Error(`Video background effects dependency not resolved`);\n }\n const createEffect = options?.onResolveVideoBackgroundEffectsDependency && (await options.onResolveVideoBackgroundEffectsDependency())?.createBackgroundReplacementEffect;\n return createEffect && stream.feature(Features.VideoEffects).startEffects(createEffect(backgroundReplacementConfig));\n }\n };\n\n /* @conditional-compile-remove(close-captions) */\n const onStartCaptions = async (options?: CaptionsOptions): Promise<void> => {\n const captionsFeature = call?.feature(Features.Captions).captions;\n await captionsFeature?.startCaptions(options);\n };\n /* @conditional-compile-remove(close-captions) */\n const onStopCaptions = async (): Promise<void> => {\n const captionsFeature = call?.feature(Features.Captions).captions;\n await captionsFeature?.stopCaptions();\n };\n /* @conditional-compile-remove(close-captions) */\n const onSetSpokenLanguage = async (language: string): Promise<void> => {\n const captionsFeature = call?.feature(Features.Captions).captions;\n await captionsFeature?.setSpokenLanguage(language);\n };\n /* @conditional-compile-remove(close-captions) */\n const onSetCaptionLanguage = async (language: string): Promise<void> => {\n const captionsFeature = (call?.feature(Features.Captions).captions as TeamsCaptions);\n await captionsFeature.setCaptionLanguage(language);\n };\n /* @conditional-compile-remove(end-of-call-survey) */\n const onSubmitSurvey = async (survey: CallSurvey): Promise<CallSurveyResponse | undefined> => await call?.feature(Features.CallSurvey).submitSurvey(survey);\n return {\n onHangUp,\n /* @conditional-compile-remove(PSTN-calls) */\n onToggleHold,\n onSelectCamera,\n onSelectMicrophone,\n onSelectSpeaker,\n onStartScreenShare,\n onStopScreenShare,\n onToggleCamera,\n onToggleMicrophone,\n onToggleScreenShare,\n onCreateLocalStreamView,\n onCreateRemoteStreamView,\n onStartLocalVideo,\n onDisposeRemoteStreamView,\n onDisposeLocalStreamView,\n onDisposeRemoteScreenShareStreamView,\n onDisposeRemoteVideoStreamView,\n onRaiseHand,\n onLowerHand,\n onToggleRaiseHand,\n /* @conditional-compile-remove(PSTN-calls) */\n onAddParticipant: notImplemented,\n onRemoveParticipant: notImplemented,\n onStartCall: notImplemented,\n onSendDtmfTone,\n /* @conditional-compile-remove(call-readiness) */\n askDevicePermission,\n onRemoveVideoBackgroundEffects,\n onBlurVideoBackground,\n onReplaceVideoBackground,\n /* @conditional-compile-remove(close-captions) */\n onStartCaptions,\n /* @conditional-compile-remove(close-captions) */\n onStopCaptions,\n /* @conditional-compile-remove(close-captions) */\n onSetCaptionLanguage,\n /* @conditional-compile-remove(close-captions) */\n onSetSpokenLanguage,\n /* @conditional-compile-remove(end-of-call-survey) */\n onSubmitSurvey\n };\n});"]}
1
+ {"version":3,"file":"createCommonHandlers.js","sourceRoot":"","sources":["../../../../../preprocess-dist/calling-component-bindings/src/handlers/createCommonHandlers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { AudioDeviceInfo, Call, LocalVideoStream, StartCallOptions, VideoDeviceInfo, BackgroundBlurEffect, BackgroundReplacementEffect, BackgroundBlurConfig, BackgroundReplacementConfig } from '@azure/communication-calling';\n/* @conditional-compile-remove(end-of-call-survey) */\nimport { CallSurvey, CallSurveyResponse } from '@azure/communication-calling';\nimport { DtmfTone } from '@azure/communication-calling';\nimport { toFlatCommunicationIdentifier } from '@internal/acs-ui-common';\n/* @conditional-compile-remove(spotlight) */\nimport { _toCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { CreateViewResult, StatefulCallClient, StatefulDeviceManager } from '@internal/calling-stateful-client';\nimport memoizeOne from 'memoize-one';\nimport { CreateVideoStreamViewResult, VideoStreamOptions } from '@internal/react-components';\nimport { disposeAllLocalPreviewViews, _isInCall, _isInLobbyOrConnecting, _isPreviewOn } from '../utils/callUtils';\nimport { CommunicationIdentifier } from '@azure/communication-common';\nimport { Features } from '@azure/communication-calling';\n/* @conditional-compile-remove(close-captions) */\nimport { TeamsCaptions } from '@azure/communication-calling';\n/* @conditional-compile-remove(reaction) */\nimport { Reaction } from '@azure/communication-calling';\n/* @conditional-compile-remove(spotlight) */\nimport { _ComponentCallingHandlers } from './createHandlers';\n\n/**\n * Object containing all the handlers required for calling components.\n *\n * Calling related components from this package are able to pick out relevant handlers from this object.\n * See {@link useHandlers} and {@link usePropsFor}.\n *\n * @public\n */\nexport interface CommonCallingHandlers {\n onStartLocalVideo: () => Promise<void>;\n onToggleCamera: (options?: VideoStreamOptions) => Promise<void>;\n onSelectMicrophone: (device: AudioDeviceInfo) => Promise<void>;\n onSelectSpeaker: (device: AudioDeviceInfo) => Promise<void>;\n onSelectCamera: (device: VideoDeviceInfo, options?: VideoStreamOptions) => Promise<void>;\n onToggleMicrophone: () => Promise<void>;\n onStartScreenShare: () => Promise<void>;\n onStopScreenShare: () => Promise<void>;\n onToggleScreenShare: () => Promise<void>;\n onHangUp: (forEveryone?: boolean) => Promise<void>;\n onRaiseHand: () => Promise<void>;\n onLowerHand: () => Promise<void>;\n onToggleRaiseHand: () => Promise<void>;\n /* @conditional-compile-remove(reaction) */\n onReactionClick: (reaction: Reaction) => Promise<void>;\n onCreateLocalStreamView: (options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;\n onCreateRemoteStreamView: (userId: string, options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;\n /**\n * @deprecated use {@link onDisposeRemoteVideoStreamView} and {@link onDisposeRemoteScreenShareStreamView} instead.\n */\n onDisposeRemoteStreamView: (userId: string) => Promise<void>;\n onDisposeLocalStreamView: () => Promise<void>;\n onDisposeRemoteVideoStreamView: (userId: string) => Promise<void>;\n onDisposeRemoteScreenShareStreamView: (userId: string) => Promise<void>;\n onSendDtmfTone: (dtmfTone: DtmfTone) => Promise<void>;\n onRemoveParticipant(userId: string): Promise<void>;\n onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => void;\n onRemoveVideoBackgroundEffects: () => Promise<void>;\n onBlurVideoBackground: (backgroundBlurConfig?: BackgroundBlurConfig) => Promise<void>;\n onReplaceVideoBackground: (backgroundReplacementConfig: BackgroundReplacementConfig) => Promise<void>;\n /* @conditional-compile-remove(close-captions) */\n onStartCaptions: (options?: CaptionsOptions) => Promise<void>;\n /* @conditional-compile-remove(close-captions) */\n onStopCaptions: () => Promise<void>;\n /* @conditional-compile-remove(close-captions) */\n onSetSpokenLanguage: (language: string) => Promise<void>;\n /* @conditional-compile-remove(close-captions) */\n onSetCaptionLanguage: (language: string) => Promise<void>;\n /* @conditional-compile-remove(end-of-call-survey) */\n onSubmitSurvey(survey: CallSurvey): Promise<CallSurveyResponse | undefined>;\n /* @conditional-compile-remove(spotlight) */\n onStartSpotlight: (userIds?: string[]) => Promise<void>;\n /* @conditional-compile-remove(spotlight) */\n onStopSpotlight: (userIds?: string[]) => Promise<void>;\n /* @conditional-compile-remove(spotlight) */\n onStopAllSpotlight: () => Promise<void>;\n}\n\n/**\n * options bag to start captions\n *\n * @public\n */\nexport type CaptionsOptions = {\n spokenLanguage: string;\n};\n\n/**\n * @private\n */\nexport const areStreamsEqual = (prevStream: LocalVideoStream, newStream: LocalVideoStream): boolean => {\n return !!prevStream && !!newStream && prevStream.source.id === newStream.source.id;\n};\n\n/**\n * Dependency type to be injected for video background effects\n *\n * @public\n */\nexport type VideoBackgroundEffectsDependency = {\n createBackgroundBlurEffect: (config?: BackgroundBlurConfig) => BackgroundBlurEffect;\n createBackgroundReplacementEffect: (config: BackgroundReplacementConfig) => BackgroundReplacementEffect;\n};\n\n/**\n * Create the common implementation of {@link CallingHandlers} for all types of Call\n *\n * @private\n */\nexport const createDefaultCommonCallingHandlers = memoizeOne((callClient: StatefulCallClient, deviceManager: StatefulDeviceManager | undefined, call: Call | undefined, options?: {\n onResolveVideoBackgroundEffectsDependency?: () => Promise<VideoBackgroundEffectsDependency>;\n}): CommonCallingHandlers & /* @conditional-compile-remove(spotlight) */Partial<_ComponentCallingHandlers> => {\n const onStartLocalVideo = async (): Promise<void> => {\n // Before the call object creates a stream, dispose of any local preview streams.\n // @TODO: is there any way to parent the unparented view to the call object instead\n // of disposing and creating a new stream?\n await disposeAllLocalPreviewViews(callClient);\n const callId = call?.id;\n let videoDeviceInfo = callClient.getState().deviceManager.selectedCamera;\n if (!videoDeviceInfo) {\n const cameras = await deviceManager?.getCameras();\n videoDeviceInfo = cameras && cameras.length > 0 ? cameras[0] : undefined;\n videoDeviceInfo && deviceManager?.selectCamera(videoDeviceInfo);\n }\n if (!callId || !videoDeviceInfo) {\n return;\n }\n const stream = new LocalVideoStream(videoDeviceInfo);\n if (call && !call.localVideoStreams.find(s => areStreamsEqual(s, stream))) {\n await call.startVideo(stream);\n }\n };\n const onStopLocalVideo = async (stream: LocalVideoStream): Promise<void> => {\n const callId = call?.id;\n if (!callId) {\n return;\n }\n if (call && call.localVideoStreams.find(s => areStreamsEqual(s, stream))) {\n await call.stopVideo(stream);\n }\n };\n const onToggleCamera = async (options?: VideoStreamOptions): Promise<void> => {\n const previewOn = _isPreviewOn(callClient.getState().deviceManager);\n\n // the disposal of the unparented views is to workaround: https://skype.visualstudio.com/SPOOL/_workitems/edit/3030558.\n // The root cause of the issue is caused by never transitioning the unparented view to the\n // call object when going from configuration page (disconnected call state) to connecting.\n //\n // Currently the only time the local video stream is moved from unparented view to the call\n // object is when we transition from connecting -> call state. If the camera was on,\n // inside the MediaGallery we trigger toggleCamera. This triggers onStartLocalVideo which\n // destroys the unparentedView and creates a new stream in the call - so all looks well.\n //\n // However, if someone turns off their camera during the lobbyOrConnecting screen, the\n // call.localVideoStreams will be empty (as the stream is currently stored in the unparented\n // views and was never transitioned to the call object) and thus we incorrectly try to create\n // a new video stream for the call object, instead of only stopping the unparented view.\n //\n // The correct fix for this is to ensure that callAgent.onStartCall is called with the\n // localvideostream as a videoOption. That will mean call.onLocalVideoStreamsUpdated will\n // be triggered when the call is in connecting state, which we can then transition the\n // local video stream to the stateful call client and get into a clean state.\n\n if (call && (_isInCall(call.state) || _isInLobbyOrConnecting(call.state))) {\n const stream = call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video');\n const unparentedViews = callClient.getState().deviceManager.unparentedViews;\n if (stream || unparentedViews.length > 0) {\n unparentedViews && (await unparentedViews.forEach(view => view.mediaStreamType === 'Video' && callClient.disposeView(undefined, undefined, view)));\n stream && (await onStopLocalVideo(stream));\n } else {\n await onStartLocalVideo();\n }\n } else {\n /**\n * This will create a unparented view to be used on the configuration page and the connecting screen\n *\n * If the device that the stream will come from is not on from permissions checks, then it will take time\n * to create the stream since device is off. If we are turn the camera on immedietly on the configuration page we see it is\n * fast but that is because the device is already primed to return a stream.\n *\n * On the connecting page the device has already turned off and the connecting window is so small we do not see the resulting\n * unparented view from the code below.\n */\n const selectedCamera = callClient.getState().deviceManager.selectedCamera;\n if (selectedCamera) {\n if (previewOn) {\n await onDisposeLocalStreamView();\n } else {\n await callClient.createView(undefined, undefined, {\n source: selectedCamera,\n mediaStreamType: 'Video'\n }, options);\n }\n }\n }\n };\n const onSelectMicrophone = async (device: AudioDeviceInfo): Promise<void> => {\n if (!deviceManager) {\n return;\n }\n return deviceManager.selectMicrophone(device);\n };\n const onSelectSpeaker = async (device: AudioDeviceInfo): Promise<void> => {\n if (!deviceManager) {\n return;\n }\n return deviceManager.selectSpeaker(device);\n };\n const onSelectCamera = async (device: VideoDeviceInfo, options?: VideoStreamOptions): Promise<void> => {\n if (!deviceManager) {\n return;\n }\n if (call && _isInCall(call.state)) {\n deviceManager.selectCamera(device);\n const stream = call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video');\n await stream?.switchSource(device);\n\n /// TODO: TEMPORARY SOLUTION\n /// The Calling SDK needs to wait until the stream is ready before resolving the switchSource promise.\n /// This is a temporary solution to wait for the stream to be ready before resolving the promise.\n /// This allows the onSelectCamera to be throttled to prevent the streams from getting in to a frozen state\n /// if the user switches cameras too rapidly.\n /// This is to be removed once the Calling SDK has issued a fix.\n await stream?.getMediaStream();\n } else {\n const previewOn = _isPreviewOn(callClient.getState().deviceManager);\n if (!previewOn) {\n deviceManager.selectCamera(device);\n return;\n }\n await onDisposeLocalStreamView();\n deviceManager.selectCamera(device);\n await callClient.createView(undefined, undefined, {\n source: device,\n mediaStreamType: 'Video'\n }, options);\n }\n };\n const onRaiseHand = async (): Promise<void> => await call?.feature(Features.RaiseHand)?.raiseHand();\n const onLowerHand = async (): Promise<void> => await call?.feature(Features.RaiseHand)?.lowerHand();\n const onToggleRaiseHand = async (): Promise<void> => {\n const raiseHandFeature = call?.feature(Features.RaiseHand);\n const localUserId = callClient.getState().userId;\n const isLocalRaisedHand = raiseHandFeature?.getRaisedHands().find(publishedState => toFlatCommunicationIdentifier(publishedState.identifier) === toFlatCommunicationIdentifier(localUserId));\n if (isLocalRaisedHand) {\n await raiseHandFeature?.lowerHand();\n } else {\n await raiseHandFeature?.raiseHand();\n }\n };\n\n /* @conditional-compile-remove(reaction) */\n const onReactionClick = async (reaction: Reaction): Promise<void> => {\n if (reaction === 'like' || reaction === 'applause' || reaction === 'heart' || reaction === 'laugh' || reaction === 'surprised') {\n await call?.feature(Features.Reaction)?.sendReaction({\n reactionType: reaction\n });\n } else {\n console.warn(`Can not recognize ${reaction} as meeting reaction`);\n }\n return;\n };\n const onToggleMicrophone = async (): Promise<void> => {\n if (!call || !(_isInCall(call.state) || _isInLobbyOrConnecting(call.state))) {\n throw new Error(`Please invoke onToggleMicrophone after call is started`);\n }\n return call.isMuted ? await call.unmute() : await call.mute();\n };\n const onStartScreenShare = async (): Promise<void> => await call?.startScreenSharing();\n const onStopScreenShare = async (): Promise<void> => await call?.stopScreenSharing();\n const onToggleScreenShare = async (): Promise<void> => call?.isScreenSharingOn ? await onStopScreenShare() : await onStartScreenShare();\n const onHangUp = async (forEveryone?: boolean): Promise<void> => await call?.hangUp({\n forEveryone: forEveryone === true ? true : false\n });\n const onCreateLocalStreamView = async (options = ({\n scalingMode: 'Crop',\n isMirrored: true\n } as VideoStreamOptions)): Promise<void | CreateVideoStreamViewResult> => {\n if (!call || call.localVideoStreams.length === 0) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n return;\n }\n const localStream = callState.localVideoStreams.find(item => item.mediaStreamType === 'Video');\n if (!localStream) {\n return;\n }\n const {\n view\n } = (await callClient.createView(call.id, undefined, localStream, options)) ?? {};\n return view ? {\n view\n } : undefined;\n };\n const onCreateRemoteStreamView = async (userId: string, options = ({\n scalingMode: 'Crop'\n } as VideoStreamOptions)): Promise<void | CreateVideoStreamViewResult> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);\n if (!participant || !participant.videoStreams) {\n return;\n }\n\n /**\n * There is a bug from the calling sdk where if a user leaves and rejoins immediately\n * it adds 2 more potential streams this remote participant can use. The old 2 streams\n * still show as available and that is how we got a frozen stream in this case. The stopgap\n * until streams accurately reflect their availability is to always prioritize the latest streams of a certain type\n * e.g findLast instead of find\n */\n // Find the first available stream, if there is none, then get the first stream\n const remoteVideoStream = Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'Video' && i.isAvailable) || Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'Video');\n const screenShareStream = Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'ScreenSharing' && i.isAvailable) || Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'ScreenSharing');\n let createViewResult: CreateViewResult | undefined = undefined;\n if (remoteVideoStream && remoteVideoStream.isAvailable && !remoteVideoStream.view) {\n createViewResult = await callClient.createView(call.id, participant.identifier, remoteVideoStream, options);\n }\n if (screenShareStream && screenShareStream.isAvailable && !screenShareStream.view) {\n // Hardcoded `scalingMode` since it is highly unlikely that CONTOSO would ever want to use a different scaling mode for screenshare.\n // Using `Crop` would crop the contents of screenshare and `Stretch` would warp it.\n // `Fit` is the only mode that maintains the integrity of the screen being shared.\n createViewResult = await callClient.createView(call.id, participant.identifier, screenShareStream, {\n scalingMode: 'Fit'\n });\n }\n return createViewResult?.view ? {\n view: createViewResult?.view\n } : undefined;\n };\n const onDisposeRemoteStreamView = async (userId: string): Promise<void> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);\n if (!participant || !participant.videoStreams) {\n return;\n }\n const remoteVideoStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'Video');\n const screenShareStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'ScreenSharing');\n if (remoteVideoStream && remoteVideoStream.view) {\n callClient.disposeView(call.id, participant.identifier, remoteVideoStream);\n }\n if (screenShareStream && screenShareStream.view) {\n callClient.disposeView(call.id, participant.identifier, screenShareStream);\n }\n };\n const onDisposeRemoteVideoStreamView = async (userId: string): Promise<void> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);\n if (!participant || !participant.videoStreams) {\n return;\n }\n const remoteVideoStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'Video');\n if (remoteVideoStream && remoteVideoStream.view) {\n callClient.disposeView(call.id, participant.identifier, remoteVideoStream);\n }\n };\n const onDisposeRemoteScreenShareStreamView = async (userId: string): Promise<void> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);\n if (!participant || !participant.videoStreams) {\n return;\n }\n const screenShareStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'ScreenSharing');\n if (screenShareStream && screenShareStream.view) {\n callClient.disposeView(call.id, participant.identifier, screenShareStream);\n }\n };\n const onDisposeLocalStreamView = async (): Promise<void> => {\n // If the user is currently in a call, dispose of the local stream view attached to that call.\n const callState = call && callClient.getState().calls[call.id];\n const localStream = callState?.localVideoStreams.find(item => item.mediaStreamType === 'Video');\n if (call && callState && localStream) {\n callClient.disposeView(call.id, undefined, localStream);\n }\n\n // If the user is not in a call we currently assume any unparented view is a LocalPreview and stop all\n // since those are only used for LocalPreview currently.\n // TODO: we need to remember which LocalVideoStream was used for LocalPreview and dispose that one.\n await disposeAllLocalPreviewViews(callClient);\n };\n const onSendDtmfTone = async (dtmfTone: DtmfTone): Promise<void> => await call?.sendDtmf(dtmfTone);\n const notImplemented = (): any => {\n throw new Error('Not implemented, cannot call a method from an abstract object');\n };\n const onRemoveVideoBackgroundEffects = async (): Promise<void> => {\n const stream = call?.localVideoStreams.find(stream => stream.mediaStreamType === 'Video') || deviceManager?.getUnparentedVideoStreams().find(stream => stream.mediaStreamType === 'Video');\n if (stream) {\n if (!options?.onResolveVideoBackgroundEffectsDependency) {\n throw new Error(`Video background effects dependency not resolved`);\n } else {\n return stream.feature(Features.VideoEffects).stopEffects();\n }\n }\n };\n const onBlurVideoBackground = async (backgroundBlurConfig?: BackgroundBlurConfig): Promise<void> => {\n const stream = call?.localVideoStreams.find(stream => stream.mediaStreamType === 'Video') || deviceManager?.getUnparentedVideoStreams().find(stream => stream.mediaStreamType === 'Video');\n if (stream) {\n if (!options?.onResolveVideoBackgroundEffectsDependency) {\n throw new Error(`Video background effects dependency not resolved`);\n }\n const createEffect = options?.onResolveVideoBackgroundEffectsDependency && (await options.onResolveVideoBackgroundEffectsDependency())?.createBackgroundBlurEffect;\n return createEffect && stream.feature(Features.VideoEffects).startEffects(createEffect(backgroundBlurConfig));\n }\n };\n const onReplaceVideoBackground = async (backgroundReplacementConfig: BackgroundReplacementConfig): Promise<void> => {\n const stream = call?.localVideoStreams.find(stream => stream.mediaStreamType === 'Video') || deviceManager?.getUnparentedVideoStreams().find(stream => stream.mediaStreamType === 'Video');\n if (stream) {\n if (!options?.onResolveVideoBackgroundEffectsDependency) {\n throw new Error(`Video background effects dependency not resolved`);\n }\n const createEffect = options?.onResolveVideoBackgroundEffectsDependency && (await options.onResolveVideoBackgroundEffectsDependency())?.createBackgroundReplacementEffect;\n return createEffect && stream.feature(Features.VideoEffects).startEffects(createEffect(backgroundReplacementConfig));\n }\n };\n\n /* @conditional-compile-remove(close-captions) */\n const onStartCaptions = async (options?: CaptionsOptions): Promise<void> => {\n const captionsFeature = call?.feature(Features.Captions).captions;\n await captionsFeature?.startCaptions(options);\n };\n /* @conditional-compile-remove(close-captions) */\n const onStopCaptions = async (): Promise<void> => {\n const captionsFeature = call?.feature(Features.Captions).captions;\n await captionsFeature?.stopCaptions();\n };\n /* @conditional-compile-remove(close-captions) */\n const onSetSpokenLanguage = async (language: string): Promise<void> => {\n const captionsFeature = call?.feature(Features.Captions).captions;\n await captionsFeature?.setSpokenLanguage(language);\n };\n /* @conditional-compile-remove(close-captions) */\n const onSetCaptionLanguage = async (language: string): Promise<void> => {\n const captionsFeature = (call?.feature(Features.Captions).captions as TeamsCaptions);\n await captionsFeature.setCaptionLanguage(language);\n };\n /* @conditional-compile-remove(end-of-call-survey) */\n const onSubmitSurvey = async (survey: CallSurvey): Promise<CallSurveyResponse | undefined> => await call?.feature(Features.CallSurvey).submitSurvey(survey);\n /* @conditional-compile-remove(spotlight) */\n const onStartSpotlight = async (userIds?: string[]): Promise<void> => {\n const participants = userIds?.map(userId => _toCommunicationIdentifier(userId));\n await call?.feature(Features.Spotlight).startSpotlight(participants);\n };\n /* @conditional-compile-remove(spotlight) */\n const onStopSpotlight = async (userIds?: string[]): Promise<void> => {\n const participants = userIds?.map(userId => _toCommunicationIdentifier(userId));\n await call?.feature(Features.Spotlight).stopSpotlight(participants);\n };\n /* @conditional-compile-remove(spotlight) */\n const onStopAllSpotlight = async (): Promise<void> => {\n await call?.feature(Features.Spotlight).stopAllSpotlight();\n };\n /* @conditional-compile-remove(spotlight) */\n const canStartSpotlight = call?.feature(Features.Capabilities).capabilities.spotlightParticipant.isPresent;\n /* @conditional-compile-remove(spotlight) */\n const canRemoveSpotlight = call?.feature(Features.Capabilities).capabilities.removeParticipantsSpotlight.isPresent;\n /* @conditional-compile-remove(spotlight) */\n const onStartLocalSpotlight = canStartSpotlight ? async (): Promise<void> => {\n await call?.feature(Features.Spotlight).startSpotlight();\n } : undefined;\n /* @conditional-compile-remove(spotlight) */\n const onStopLocalSpotlight = async (): Promise<void> => {\n await call?.feature(Features.Spotlight).stopSpotlight();\n };\n /* @conditional-compile-remove(spotlight) */\n const onStartRemoteSpotlight = canStartSpotlight ? async (userIds?: string[]): Promise<void> => {\n const participants = userIds?.map(userId => _toCommunicationIdentifier(userId));\n await call?.feature(Features.Spotlight).startSpotlight(participants);\n } : undefined;\n /* @conditional-compile-remove(spotlight) */\n const onStopRemoteSpotlight = canRemoveSpotlight ? async (userIds?: string[]): Promise<void> => {\n const participants = userIds?.map(userId => _toCommunicationIdentifier(userId));\n await call?.feature(Features.Spotlight).stopSpotlight(participants);\n } : undefined;\n return {\n onHangUp,\n onSelectCamera,\n onSelectMicrophone,\n onSelectSpeaker,\n onStartScreenShare,\n onStopScreenShare,\n onToggleCamera,\n onToggleMicrophone,\n onToggleScreenShare,\n onCreateLocalStreamView,\n onCreateRemoteStreamView,\n onStartLocalVideo,\n onDisposeRemoteStreamView,\n onDisposeLocalStreamView,\n onDisposeRemoteScreenShareStreamView,\n onDisposeRemoteVideoStreamView,\n onRaiseHand,\n onLowerHand,\n onToggleRaiseHand,\n /* @conditional-compile-remove(reaction) */\n onReactionClick: onReactionClick,\n onRemoveParticipant: notImplemented,\n onStartCall: notImplemented,\n onSendDtmfTone,\n onRemoveVideoBackgroundEffects,\n onBlurVideoBackground,\n onReplaceVideoBackground,\n /* @conditional-compile-remove(close-captions) */\n onStartCaptions,\n /* @conditional-compile-remove(close-captions) */\n onStopCaptions,\n /* @conditional-compile-remove(close-captions) */\n onSetCaptionLanguage,\n /* @conditional-compile-remove(close-captions) */\n onSetSpokenLanguage,\n /* @conditional-compile-remove(end-of-call-survey) */\n onSubmitSurvey,\n /* @conditional-compile-remove(spotlight) */\n onStartSpotlight,\n /* @conditional-compile-remove(spotlight) */\n onStopSpotlight,\n /* @conditional-compile-remove(spotlight) */\n onStopAllSpotlight,\n /* @conditional-compile-remove(spotlight) */\n onStartLocalSpotlight,\n /* @conditional-compile-remove(spotlight) */\n onStopLocalSpotlight,\n /* @conditional-compile-remove(spotlight) */\n onStartRemoteSpotlight,\n /* @conditional-compile-remove(spotlight) */\n onStopRemoteSpotlight\n };\n});"]}
@@ -1,10 +1,4 @@
1
- // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT License.
3
- /* @conditional-compile-remove(teams-identity-support) */
4
- import { _isTeamsCall, _isTeamsCallAgent } from "../../../calling-stateful-client/src";
5
1
  import { _isACSCall, _isACSCallAgent } from "../../../calling-stateful-client/src";
6
- /* @conditional-compile-remove(teams-identity-support) */
7
- import { createDefaultTeamsCallingHandlers } from './createTeamsCallHandlers';
8
2
  import { createDefaultCallingHandlers } from './createHandlers';
9
3
  /**
10
4
  * Create a set of default handlers for given component. Memoization is applied to the result. Multiple invocations with
@@ -24,10 +18,6 @@ export const createDefaultCallingHandlersForComponent = (callClient, callAgent,
24
18
  if (!callAgent && !call && !deviceManager) {
25
19
  return createDefaultCallingHandlers(callClient, callAgent, deviceManager, call);
26
20
  }
27
- /* @conditional-compile-remove(teams-identity-support) */
28
- if (callAgent && _isTeamsCallAgent(callAgent) && (!call || call && _isTeamsCall(call))) {
29
- return createDefaultTeamsCallingHandlers(callClient, callAgent, deviceManager, call);
30
- }
31
21
  if (callAgent && _isACSCallAgent(callAgent) && (!call || call && _isACSCall(call))) {
32
22
  return createDefaultCallingHandlers(callClient, callAgent, deviceManager, call);
33
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createDefaultCallingHandlersForComponent.js","sourceRoot":"","sources":["../../../../../preprocess-dist/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,yDAAyD;AACzD,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,6CAA0C;AAEpF,OAAO,EAA0E,UAAU,EAAE,eAAe,EAAE,6CAA0C;AAExJ,yDAAyD;AACzD,OAAO,EAAE,iCAAiC,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,kBAAkB,CAAC;AAGhE;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,wCAAwC,GAAG,CAAS,UAA8B,EAAE,SAAsC,EAAE,aAAgD,EAAE,IAA4B,EAAE,UAAiD,EAAwC,EAAE;IAClT,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1C,OAAO,4BAA4B,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;IACD,yDAAyD;IACzD,IAAI,SAAS,IAAI,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACvF,OAAO,iCAAiC,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IACvF,CAAC;IACD,IAAI,SAAS,IAAI,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACnF,OAAO,4BAA4B,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;AACtE,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/* @conditional-compile-remove(teams-identity-support) */\nimport { _isTeamsCall, _isTeamsCallAgent } from '@internal/calling-stateful-client';\nimport { Common } from '@internal/acs-ui-common';\nimport { StatefulCallClient, StatefulDeviceManager, CallAgentCommon, CallCommon, _isACSCall, _isACSCallAgent } from '@internal/calling-stateful-client';\nimport { ReactElement } from 'react';\n/* @conditional-compile-remove(teams-identity-support) */\nimport { createDefaultTeamsCallingHandlers } from './createTeamsCallHandlers';\nimport { createDefaultCallingHandlers } from './createHandlers';\nimport { CommonCallingHandlers } from './createCommonHandlers';\n\n/**\n * Create a set of default handlers for given component. Memoization is applied to the result. Multiple invocations with\n * the same arguments will return the same handler instances. DeclarativeCallAgent, DeclarativeDeviceManager, and\n * DeclarativeCall may be undefined. If undefined, their associated handlers will not be created and returned.\n *\n * @param callClient - StatefulCallClient returned from\n * {@link @azure/communication-react#createStatefulCallClient}.\n * @param callAgent - Instance of {@link @azure/communication-calling#CallClient}.\n * @param deviceManager - Instance of {@link @azure/communication-calling#DeviceManager}.\n * @param call - Instance of {@link @azure/communication-calling#Call}.\n * @param _ - React component that you want to generate handlers for.\n *\n * @public\n */\nexport const createDefaultCallingHandlersForComponent = <Props,>(callClient: StatefulCallClient, callAgent: CallAgentCommon | undefined, deviceManager: StatefulDeviceManager | undefined, call: CallCommon | undefined, _Component: (props: Props) => ReactElement | null): Common<CommonCallingHandlers, Props> => {\n if (!callAgent && !call && !deviceManager) {\n return createDefaultCallingHandlers(callClient, callAgent, deviceManager, call);\n }\n /* @conditional-compile-remove(teams-identity-support) */\n if (callAgent && _isTeamsCallAgent(callAgent) && (!call || call && _isTeamsCall(call))) {\n return createDefaultTeamsCallingHandlers(callClient, callAgent, deviceManager, call);\n }\n if (callAgent && _isACSCallAgent(callAgent) && (!call || call && _isACSCall(call))) {\n return createDefaultCallingHandlers(callClient, callAgent, deviceManager, call);\n }\n throw new Error('CallAgent type and Call type are not compatible!');\n};"]}
1
+ {"version":3,"file":"createDefaultCallingHandlersForComponent.js","sourceRoot":"","sources":["../../../../../preprocess-dist/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.ts"],"names":[],"mappings":"AAGA,OAAO,EAA0E,UAAU,EAAE,eAAe,EAAE,6CAA0C;AAExJ,OAAO,EAAE,4BAA4B,EAAE,MAAM,kBAAkB,CAAC;AAGhE;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,wCAAwC,GAAG,CAAS,UAA8B,EAAE,SAAsC,EAAE,aAAgD,EAAE,IAA4B,EAAE,UAAiD,EAAwC,EAAE;IAClT,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1C,OAAO,4BAA4B,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;IACD,IAAI,SAAS,IAAI,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACnF,OAAO,4BAA4B,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;AACtE,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport { Common } from '@internal/acs-ui-common';\nimport { StatefulCallClient, StatefulDeviceManager, CallAgentCommon, CallCommon, _isACSCall, _isACSCallAgent } from '@internal/calling-stateful-client';\nimport { ReactElement } from 'react';\nimport { createDefaultCallingHandlers } from './createHandlers';\nimport { CommonCallingHandlers } from './createCommonHandlers';\n\n/**\n * Create a set of default handlers for given component. Memoization is applied to the result. Multiple invocations with\n * the same arguments will return the same handler instances. DeclarativeCallAgent, DeclarativeDeviceManager, and\n * DeclarativeCall may be undefined. If undefined, their associated handlers will not be created and returned.\n *\n * @param callClient - StatefulCallClient returned from\n * {@link @azure/communication-react#createStatefulCallClient}.\n * @param callAgent - Instance of {@link @azure/communication-calling#CallClient}.\n * @param deviceManager - Instance of {@link @azure/communication-calling#DeviceManager}.\n * @param call - Instance of {@link @azure/communication-calling#Call}.\n * @param _ - React component that you want to generate handlers for.\n *\n * @public\n */\nexport const createDefaultCallingHandlersForComponent = <Props,>(callClient: StatefulCallClient, callAgent: CallAgentCommon | undefined, deviceManager: StatefulDeviceManager | undefined, call: CallCommon | undefined, _Component: (props: Props) => ReactElement | null): Common<CommonCallingHandlers, Props> => {\n if (!callAgent && !call && !deviceManager) {\n return createDefaultCallingHandlers(callClient, callAgent, deviceManager, call);\n }\n if (callAgent && _isACSCallAgent(callAgent) && (!call || call && _isACSCall(call))) {\n return createDefaultCallingHandlers(callClient, callAgent, deviceManager, call);\n }\n throw new Error('CallAgent type and Call type are not compatible!');\n};"]}
@@ -36,4 +36,18 @@ export type CreateDefaultCallingHandlers = (callClient: StatefulCallClient, call
36
36
  * @public
37
37
  */
38
38
  export declare const createDefaultCallingHandlers: CreateDefaultCallingHandlers;
39
+ /**
40
+ * Handlers only for calling components
41
+ * @internal
42
+ */
43
+ export interface _ComponentCallingHandlers {
44
+ /** VideoGallery callback prop to start local spotlight */
45
+ onStartLocalSpotlight: () => Promise<void>;
46
+ /** VideoGallery callback prop to stop local spotlight */
47
+ onStopLocalSpotlight: () => Promise<void>;
48
+ /** VideoGallery callback prop to start remote spotlight */
49
+ onStartRemoteSpotlight: (userIds: string[]) => Promise<void>;
50
+ /** VideoGallery callback prop to stop remote spotlight */
51
+ onStopRemoteSpotlight: (userIds: string[]) => Promise<void>;
52
+ }
39
53
  //# sourceMappingURL=createHandlers.d.ts.map
@@ -9,8 +9,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  step((generator = generator.apply(thisArg, _arguments || [])).next());
10
10
  });
11
11
  };
12
- /* @conditional-compile-remove(PSTN-calls) */
13
- import { isCommunicationUserIdentifier, isMicrosoftTeamsUserIdentifier, isPhoneNumberIdentifier } from '@azure/communication-common';
14
12
  import { _toCommunicationIdentifier } from "../../../acs-ui-common/src";
15
13
  import memoizeOne from 'memoize-one';
16
14
  import { isACSCallParticipants } from '../utils/callUtils';
@@ -28,23 +26,11 @@ export const createDefaultCallingHandlers = memoizeOne((...args) => {
28
26
  return Object.assign(Object.assign({}, createDefaultCommonCallingHandlers(callClient, deviceManager, call, options)), {
29
27
  // FIXME: onStartCall API should use string, not the underlying SDK types.
30
28
  onStartCall: (participants, options) => {
31
- /* @conditional-compile-remove(teams-adhoc-call) */
32
- return callAgent === null || callAgent === void 0 ? void 0 : callAgent.startCall(participants, options);
33
29
  if (!isACSCallParticipants(participants)) {
34
30
  throw new Error('TeamsUserIdentifier in Teams call is not supported!');
35
31
  }
36
32
  return callAgent === null || callAgent === void 0 ? void 0 : callAgent.startCall(participants, options);
37
- },
38
- /* @conditional-compile-remove(PSTN-calls) */
39
- onAddParticipant: (userId, options) => __awaiter(void 0, void 0, void 0, function* () {
40
- const participant = _toCommunicationIdentifier(userId);
41
- if (isPhoneNumberIdentifier(participant)) {
42
- call === null || call === void 0 ? void 0 : call.addParticipant(participant, options);
43
- }
44
- else if (isCommunicationUserIdentifier(participant) || isMicrosoftTeamsUserIdentifier(participant)) {
45
- call === null || call === void 0 ? void 0 : call.addParticipant(participant);
46
- }
47
- }), onRemoveParticipant: (userId) => __awaiter(void 0, void 0, void 0, function* () {
33
+ }, onRemoveParticipant: (userId) => __awaiter(void 0, void 0, void 0, function* () {
48
34
  const participant = _toCommunicationIdentifier(userId);
49
35
  yield (call === null || call === void 0 ? void 0 : call.removeParticipant(participant));
50
36
  }) });
@@ -1 +1 @@
1
- {"version":3,"file":"createHandlers.js","sourceRoot":"","sources":["../../../../../preprocess-dist/calling-component-bindings/src/handlers/createHandlers.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;AAKlC,6CAA6C;AAC7C,OAAO,EAAE,6BAA6B,EAAE,8BAA8B,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAErI,OAAO,EAAE,0BAA0B,EAAE,mCAAgC;AAErE,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,kCAAkC,EAAyB,MAAM,wBAAwB,CAAC;AA8BnG;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAiC,UAAU,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE;IAC/F,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACnE,uCACK,kCAAkC,CAAC,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,CAAC;QAC/E,0EAA0E;QAC1E,WAAW,EAAE,CAAC,YAAuC,EAAE,OAA0B,EAAoB,EAAE;YACrG,mDAAmD;YACnD,OAAO,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACnD,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,EAAE,CAAC;gBACzC,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;YACzE,CAAC;YACD,OAAO,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACrD,CAAC;QACD,6CAA6C;QAC7C,gBAAgB,EAAE,CAAO,MAAwC,EAAE,OAA+B,EAAiB,EAAE;YACnH,MAAM,WAAW,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;YACvD,IAAI,uBAAuB,CAAC,WAAW,CAAC,EAAE,CAAC;gBACzC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YAC7C,CAAC;iBAAM,IAAI,6BAA6B,CAAC,WAAW,CAAC,IAAI,8BAA8B,CAAC,WAAW,CAAC,EAAE,CAAC;gBACrG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,CAAC,WAAW,CAAC,CAAC;YACpC,CAAC;QACH,CAAC,CAAA,EACD,mBAAmB,EAAE,CAAO,MAAqF,EAAiB,EAAE;YAClI,MAAM,WAAW,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;YACvD,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,iBAAiB,CAAC,WAAW,CAAC,CAAA,CAAC;QAC7C,CAAC,CAAA,IACD;AACJ,CAAC,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Call, CallAgent, StartCallOptions } from '@azure/communication-calling';\n/* @conditional-compile-remove(PSTN-calls) */\nimport { AddPhoneNumberOptions } from '@azure/communication-calling';\n/* @conditional-compile-remove(PSTN-calls) */\nimport { isCommunicationUserIdentifier, isMicrosoftTeamsUserIdentifier, isPhoneNumberIdentifier } from '@azure/communication-common';\nimport { CommunicationIdentifier } from '@azure/communication-common';\nimport { _toCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { StatefulCallClient, StatefulDeviceManager } from '@internal/calling-stateful-client';\nimport memoizeOne from 'memoize-one';\nimport { isACSCallParticipants } from '../utils/callUtils';\nimport { createDefaultCommonCallingHandlers, CommonCallingHandlers } from './createCommonHandlers';\nimport { VideoBackgroundEffectsDependency } from './createCommonHandlers';\n\n/**\n * Object containing all the handlers required for calling components.\n *\n * Calling related components from this package are able to pick out relevant handlers from this object.\n * See {@link useHandlers} and {@link usePropsFor}.\n *\n * @public\n */\nexport interface CallingHandlers extends CommonCallingHandlers {\n onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => Call | undefined;\n}\n\n/**\n * Configuration options to include video effect background dependency.\n * @public\n */\nexport type CallingHandlersOptions = {\n onResolveVideoBackgroundEffectsDependency?: () => Promise<VideoBackgroundEffectsDependency>;\n};\n\n/**\n * Type of {@link createDefaultCallingHandlers}.\n *\n * @public\n */\nexport type CreateDefaultCallingHandlers = (callClient: StatefulCallClient, callAgent: CallAgent | undefined, deviceManager: StatefulDeviceManager | undefined, call: Call | undefined, options?: CallingHandlersOptions) => CallingHandlers;\n\n/**\n * Create the default implementation of {@link CallingHandlers} for teams call.\n *\n * Useful when implementing a custom component that utilizes the providers\n * exported from this library.\n *\n * @public\n */\nexport const createDefaultCallingHandlers: CreateDefaultCallingHandlers = memoizeOne((...args) => {\n const [callClient, callAgent, deviceManager, call, options] = args;\n return {\n ...createDefaultCommonCallingHandlers(callClient, deviceManager, call, options),\n // FIXME: onStartCall API should use string, not the underlying SDK types.\n onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions): Call | undefined => {\n /* @conditional-compile-remove(teams-adhoc-call) */\n return callAgent?.startCall(participants, options);\n if (!isACSCallParticipants(participants)) {\n throw new Error('TeamsUserIdentifier in Teams call is not supported!');\n }\n return callAgent?.startCall(participants, options);\n },\n /* @conditional-compile-remove(PSTN-calls) */\n onAddParticipant: async (userId: string | CommunicationIdentifier, options?: AddPhoneNumberOptions): Promise<void> => {\n const participant = _toCommunicationIdentifier(userId);\n if (isPhoneNumberIdentifier(participant)) {\n call?.addParticipant(participant, options);\n } else if (isCommunicationUserIdentifier(participant) || isMicrosoftTeamsUserIdentifier(participant)) {\n call?.addParticipant(participant);\n }\n },\n onRemoveParticipant: async (userId: string | /* @conditional-compile-remove(PSTN-calls) */CommunicationIdentifier): Promise<void> => {\n const participant = _toCommunicationIdentifier(userId);\n await call?.removeParticipant(participant);\n }\n };\n});"]}
1
+ {"version":3,"file":"createHandlers.js","sourceRoot":"","sources":["../../../../../preprocess-dist/calling-component-bindings/src/handlers/createHandlers.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;AAIlC,OAAO,EAAE,0BAA0B,EAAE,mCAAgC;AAErE,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,kCAAkC,EAAyB,MAAM,wBAAwB,CAAC;AA8BnG;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAiC,UAAU,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE;IAC/F,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACnE,uCACK,kCAAkC,CAAC,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,CAAC;QAC/E,0EAA0E;QAC1E,WAAW,EAAE,CAAC,YAAuC,EAAE,OAA0B,EAAoB,EAAE;YACrG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,EAAE,CAAC;gBACzC,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;YACzE,CAAC;YACD,OAAO,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACrD,CAAC,EACD,mBAAmB,EAAE,CAAO,MAAc,EAAiB,EAAE;YAC3D,MAAM,WAAW,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;YACvD,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,iBAAiB,CAAC,WAAW,CAAC,CAAA,CAAC;QAC7C,CAAC,CAAA,IACD;AACJ,CAAC,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Call, CallAgent, StartCallOptions } from '@azure/communication-calling';\nimport { CommunicationIdentifier } from '@azure/communication-common';\nimport { _toCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { StatefulCallClient, StatefulDeviceManager } from '@internal/calling-stateful-client';\nimport memoizeOne from 'memoize-one';\nimport { isACSCallParticipants } from '../utils/callUtils';\nimport { createDefaultCommonCallingHandlers, CommonCallingHandlers } from './createCommonHandlers';\nimport { VideoBackgroundEffectsDependency } from './createCommonHandlers';\n\n/**\n * Object containing all the handlers required for calling components.\n *\n * Calling related components from this package are able to pick out relevant handlers from this object.\n * See {@link useHandlers} and {@link usePropsFor}.\n *\n * @public\n */\nexport interface CallingHandlers extends CommonCallingHandlers {\n onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => Call | undefined;\n}\n\n/**\n * Configuration options to include video effect background dependency.\n * @public\n */\nexport type CallingHandlersOptions = {\n onResolveVideoBackgroundEffectsDependency?: () => Promise<VideoBackgroundEffectsDependency>;\n};\n\n/**\n * Type of {@link createDefaultCallingHandlers}.\n *\n * @public\n */\nexport type CreateDefaultCallingHandlers = (callClient: StatefulCallClient, callAgent: CallAgent | undefined, deviceManager: StatefulDeviceManager | undefined, call: Call | undefined, options?: CallingHandlersOptions) => CallingHandlers;\n\n/**\n * Create the default implementation of {@link CallingHandlers} for teams call.\n *\n * Useful when implementing a custom component that utilizes the providers\n * exported from this library.\n *\n * @public\n */\nexport const createDefaultCallingHandlers: CreateDefaultCallingHandlers = memoizeOne((...args) => {\n const [callClient, callAgent, deviceManager, call, options] = args;\n return {\n ...createDefaultCommonCallingHandlers(callClient, deviceManager, call, options),\n // FIXME: onStartCall API should use string, not the underlying SDK types.\n onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions): Call | undefined => {\n if (!isACSCallParticipants(participants)) {\n throw new Error('TeamsUserIdentifier in Teams call is not supported!');\n }\n return callAgent?.startCall(participants, options);\n },\n onRemoveParticipant: async (userId: string): Promise<void> => {\n const participant = _toCommunicationIdentifier(userId);\n await call?.removeParticipant(participant);\n }\n };\n});\n\n/* @conditional-compile-remove(spotlight) */\n/**\n * Handlers only for calling components\n * @internal\n */\nexport interface _ComponentCallingHandlers {\n /** VideoGallery callback prop to start local spotlight */\n onStartLocalSpotlight: () => Promise<void>;\n /** VideoGallery callback prop to stop local spotlight */\n onStopLocalSpotlight: () => Promise<void>;\n /** VideoGallery callback prop to start remote spotlight */\n onStartRemoteSpotlight: (userIds: string[]) => Promise<void>;\n /** VideoGallery callback prop to stop remote spotlight */\n onStopRemoteSpotlight: (userIds: string[]) => Promise<void>;\n}"]}
@@ -1,9 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { CameraButton, EndCallButton, ErrorBar, MicrophoneButton, DevicesButton, ParticipantList, ScreenShareButton, VideoGallery } from "../../../react-components/src";
3
3
  import { Dialpad } from "../../../react-components/src";
4
- import { HoldButton } from "../../../react-components/src";
5
4
  import { CameraButtonSelector, MicrophoneButtonSelector, DevicesButtonSelector, ScreenShareButtonSelector } from '../callControlSelectors';
6
- import { HoldButtonSelector } from '../callControlSelectors';
7
5
  import { VideoGallerySelector } from '../videoGallerySelector';
8
6
  import { ParticipantListSelector } from '../participantListSelector';
9
7
  import { ParticipantsButtonSelector } from '../participantsButtonSelector';
@@ -12,6 +10,7 @@ import { AreEqual } from "../../../acs-ui-common/src";
12
10
  import { ParticipantsButton } from "../../../react-components/src";
13
11
  import { ErrorBarSelector } from '../errorBarSelector';
14
12
  import { CommonCallingHandlers } from '../handlers/createCommonHandlers';
13
+ import { _ComponentCallingHandlers } from '../handlers/createHandlers';
15
14
  /**
16
15
  * Primary hook to get all hooks necessary for a calling Component.
17
16
  *
@@ -30,7 +29,7 @@ import { CommonCallingHandlers } from '../handlers/createCommonHandlers';
30
29
  *
31
30
  * @public
32
31
  */
33
- export declare const usePropsFor: <Component extends (props: any) => JSX.Element>(component: Component) => GetSelector<Component> extends (props: any) => any ? ReturnType<GetSelector<Component>> & Common<CommonCallingHandlers, Parameters<Component>[0]> : undefined;
32
+ export declare const usePropsFor: <Component extends (props: any) => JSX.Element>(component: Component) => GetSelector<Component> extends (props: any) => any ? ReturnType<GetSelector<Component>> & Common<CommonCallingHandlers & _ComponentCallingHandlers, Parameters<Component>[0]> : undefined;
34
33
  /**
35
34
  * A type for trivial selectors that return no data.
36
35
  *
@@ -44,7 +43,7 @@ export type EmptySelector = () => Record<string, never>;
44
43
  *
45
44
  * @public
46
45
  */
47
- export type GetSelector<Component extends (props: any) => JSX.Element | undefined> = AreEqual<Component, typeof VideoGallery> extends true ? VideoGallerySelector : AreEqual<Component, typeof DevicesButton> extends true ? DevicesButtonSelector : AreEqual<Component, typeof MicrophoneButton> extends true ? MicrophoneButtonSelector : AreEqual<Component, typeof CameraButton> extends true ? CameraButtonSelector : AreEqual<Component, typeof ScreenShareButton> extends true ? ScreenShareButtonSelector : AreEqual<Component, typeof ParticipantList> extends true ? ParticipantListSelector : AreEqual<Component, typeof ParticipantsButton> extends true ? ParticipantsButtonSelector : AreEqual<Component, typeof EndCallButton> extends true ? EmptySelector : AreEqual<Component, typeof ErrorBar> extends true ? ErrorBarSelector : AreEqual<Component, typeof Dialpad> extends true ? EmptySelector : AreEqual<Component, typeof HoldButton> extends true ? HoldButtonSelector : undefined;
46
+ export type GetSelector<Component extends (props: any) => JSX.Element | undefined> = AreEqual<Component, typeof VideoGallery> extends true ? VideoGallerySelector : AreEqual<Component, typeof DevicesButton> extends true ? DevicesButtonSelector : AreEqual<Component, typeof MicrophoneButton> extends true ? MicrophoneButtonSelector : AreEqual<Component, typeof CameraButton> extends true ? CameraButtonSelector : AreEqual<Component, typeof ScreenShareButton> extends true ? ScreenShareButtonSelector : AreEqual<Component, typeof ParticipantList> extends true ? ParticipantListSelector : AreEqual<Component, typeof ParticipantsButton> extends true ? ParticipantsButtonSelector : AreEqual<Component, typeof EndCallButton> extends true ? EmptySelector : AreEqual<Component, typeof ErrorBar> extends true ? ErrorBarSelector : AreEqual<Component, typeof Dialpad> extends true ? EmptySelector : undefined;
48
47
  /**
49
48
  * Get the selector for a specified component.
50
49
  *