@azure/communication-react 1.5.0 → 1.5.1-alpha-202301220014

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 (839) hide show
  1. package/dist/communication-react.d.ts +1975 -28
  2. package/dist/dist-cjs/communication-react/index.js +12543 -8236
  3. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  4. package/dist/dist-esm/acs-ui-common/src/MessageStatus.js.map +1 -1
  5. package/dist/dist-esm/acs-ui-common/src/areEqual.js.map +1 -1
  6. package/dist/dist-esm/acs-ui-common/src/common.js.map +1 -1
  7. package/dist/dist-esm/acs-ui-common/src/commonProperties.js.map +1 -1
  8. package/dist/dist-esm/acs-ui-common/src/constants.js.map +1 -1
  9. package/dist/dist-esm/acs-ui-common/src/cssUtils.js.map +1 -1
  10. package/dist/dist-esm/acs-ui-common/src/identifier.js +3 -64
  11. package/dist/dist-esm/acs-ui-common/src/identifier.js.map +1 -1
  12. package/dist/dist-esm/acs-ui-common/src/index.js.map +1 -1
  13. package/dist/dist-esm/acs-ui-common/src/localizationUtils.js.map +1 -1
  14. package/dist/dist-esm/acs-ui-common/src/logEvent.js.map +1 -1
  15. package/dist/dist-esm/acs-ui-common/src/memoizeFnAll.js.map +1 -1
  16. package/dist/dist-esm/acs-ui-common/src/safeStringify.js.map +1 -1
  17. package/dist/dist-esm/acs-ui-common/src/telemetry.js.map +1 -1
  18. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  19. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  20. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.d.ts +11 -1
  21. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +12 -0
  22. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  23. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.d.ts +13 -0
  24. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +20 -5
  25. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
  26. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js +20 -49
  27. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js.map +1 -1
  28. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.d.ts +11 -1
  29. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +35 -31
  30. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
  31. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js +11 -1
  32. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js.map +1 -1
  33. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js +13 -1
  34. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js.map +1 -1
  35. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.d.ts +43 -0
  36. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js +81 -0
  37. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js.map +1 -0
  38. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.d.ts +1 -1
  39. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.js.map +1 -1
  40. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.d.ts +4 -1
  41. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js +22 -0
  42. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  43. package/dist/dist-esm/calling-component-bindings/src/hooks/useSelector.js.map +1 -1
  44. package/dist/dist-esm/calling-component-bindings/src/index.d.ts +6 -0
  45. package/dist/dist-esm/calling-component-bindings/src/index.js +8 -0
  46. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  47. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +31 -10
  48. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
  49. package/dist/dist-esm/calling-component-bindings/src/participantsButtonSelector.js.map +1 -1
  50. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.d.ts +4 -3
  51. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.js.map +1 -1
  52. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js +6 -3
  53. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js.map +1 -1
  54. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.d.ts +14 -2
  55. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js +20 -1
  56. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js.map +1 -1
  57. package/dist/dist-esm/calling-component-bindings/src/providers/index.js.map +1 -1
  58. package/dist/dist-esm/calling-component-bindings/src/utils/SelectorUtils.js.map +1 -1
  59. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.d.ts +14 -0
  60. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js +25 -4
  61. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js.map +1 -1
  62. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.d.ts +5 -0
  63. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js +11 -0
  64. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js.map +1 -1
  65. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +25 -9
  66. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  67. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js +21 -5
  68. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
  69. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.d.ts +6 -5
  70. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.js.map +1 -1
  71. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.d.ts +15 -1
  72. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
  73. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.d.ts +2 -1
  74. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js +62 -67
  75. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js.map +1 -1
  76. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +27 -1
  77. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  78. package/dist/dist-esm/calling-stateful-client/src/CallContext.d.ts +7 -1
  79. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +56 -4
  80. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  81. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js +7 -8
  82. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js.map +1 -1
  83. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js +56 -64
  84. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js.map +1 -1
  85. package/dist/dist-esm/calling-stateful-client/src/CallIdHistory.js.map +1 -1
  86. package/dist/dist-esm/calling-stateful-client/src/CallIdRef.js.map +1 -1
  87. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.d.ts +1 -0
  88. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +9 -3
  89. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  90. package/dist/dist-esm/calling-stateful-client/src/Converter.js +13 -8
  91. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  92. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js +51 -57
  93. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js.map +1 -1
  94. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js +14 -16
  95. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js.map +1 -1
  96. package/dist/dist-esm/calling-stateful-client/src/IncomingCallSubscriber.js.map +1 -1
  97. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js +3 -15
  98. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js.map +1 -1
  99. package/dist/dist-esm/calling-stateful-client/src/Logger.js.map +1 -1
  100. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.d.ts +1 -0
  101. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js +8 -0
  102. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js.map +1 -1
  103. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js.map +1 -1
  104. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.d.ts +1 -0
  105. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js +8 -0
  106. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js.map +1 -1
  107. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts +25 -1
  108. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js +69 -40
  109. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
  110. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js +3 -13
  111. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js.map +1 -1
  112. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.d.ts +19 -0
  113. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js +89 -0
  114. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js.map +1 -0
  115. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.d.ts +23 -0
  116. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js +48 -0
  117. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js.map +1 -0
  118. package/dist/dist-esm/calling-stateful-client/src/TranscriptionSubscriber.js.map +1 -1
  119. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.d.ts +2 -2
  120. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js +8 -0
  121. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js.map +1 -1
  122. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js +3 -3
  123. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js.map +1 -1
  124. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js +6 -7
  125. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js.map +1 -1
  126. package/dist/dist-esm/calling-stateful-client/src/index-public.d.ts +2 -0
  127. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  128. package/dist/dist-esm/calling-stateful-client/src/index.js.map +1 -1
  129. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js +4 -4
  130. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js.map +1 -1
  131. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js +3 -3
  132. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js.map +1 -1
  133. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js +13 -14
  134. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js.map +1 -1
  135. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.d.ts +4 -1
  136. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js +3 -10
  137. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js.map +1 -1
  138. package/dist/dist-esm/chat-component-bindings/src/hooks/useHandlers.js.map +1 -1
  139. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  140. package/dist/dist-esm/chat-component-bindings/src/hooks/useSelector.js.map +1 -1
  141. package/dist/dist-esm/chat-component-bindings/src/index.js.map +1 -1
  142. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +41 -10
  143. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
  144. package/dist/dist-esm/chat-component-bindings/src/providers/ChatClientProvider.js.map +1 -1
  145. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js +1 -1
  146. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js.map +1 -1
  147. package/dist/dist-esm/chat-component-bindings/src/sendBoxSelector.js.map +1 -1
  148. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js +3 -7
  149. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js.map +1 -1
  150. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js +3 -1
  151. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js.map +1 -1
  152. package/dist/dist-esm/chat-component-bindings/src/utils/constants.js.map +1 -1
  153. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js.map +1 -1
  154. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js.map +1 -1
  155. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js +5 -9
  156. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js.map +1 -1
  157. package/dist/dist-esm/chat-stateful-client/src/Constants.js.map +1 -1
  158. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js +7 -12
  159. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js.map +1 -1
  160. package/dist/dist-esm/chat-stateful-client/src/Logger.js.map +1 -1
  161. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js +57 -67
  162. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js.map +1 -1
  163. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js +113 -127
  164. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js.map +1 -1
  165. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js.map +1 -1
  166. package/dist/dist-esm/chat-stateful-client/src/index.js.map +1 -1
  167. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedIterator.js.map +1 -1
  168. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListMessages.js.map +1 -1
  169. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListParticipants.js.map +1 -1
  170. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListReadReceipts.js.map +1 -1
  171. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListThreads.js.map +1 -1
  172. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.js.map +1 -1
  173. package/dist/dist-esm/communication-react/src/index.d.ts +21 -0
  174. package/dist/dist-esm/communication-react/src/index.js +14 -0
  175. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  176. package/dist/dist-esm/communication-react/src/mergedHooks.js.map +1 -1
  177. package/dist/dist-esm/react-components/src/components/Announcer.js.map +1 -1
  178. package/dist/dist-esm/react-components/src/components/CameraButton.js +6 -6
  179. package/dist/dist-esm/react-components/src/components/CameraButton.js.map +1 -1
  180. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js +7 -8
  181. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js.map +1 -1
  182. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js +36 -17
  183. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js.map +1 -1
  184. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js +8 -4
  185. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js.map +1 -1
  186. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js +24 -30
  187. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js.map +1 -1
  188. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js +55 -24
  189. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js.map +1 -1
  190. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +7 -11
  191. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
  192. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js +18 -18
  193. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js.map +1 -1
  194. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js +7 -4
  195. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js.map +1 -1
  196. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js +2 -2
  197. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js.map +1 -1
  198. package/dist/dist-esm/react-components/src/components/ComplianceBanner/Utils.js.map +1 -1
  199. package/dist/dist-esm/react-components/src/components/ComplianceBanner/index.js.map +1 -1
  200. package/dist/dist-esm/react-components/src/components/ComplianceBanner/types.js.map +1 -1
  201. package/dist/dist-esm/react-components/src/components/ControlBar.js +10 -14
  202. package/dist/dist-esm/react-components/src/components/ControlBar.js.map +1 -1
  203. package/dist/dist-esm/react-components/src/components/ControlBarButton.js +14 -4
  204. package/dist/dist-esm/react-components/src/components/ControlBarButton.js.map +1 -1
  205. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js +3 -14
  206. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js.map +1 -1
  207. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.d.ts +69 -0
  208. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js +37 -0
  209. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js.map +1 -0
  210. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.d.ts +75 -0
  211. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js +58 -0
  212. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js.map +1 -0
  213. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js +5 -8
  214. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js.map +1 -1
  215. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.d.ts +105 -0
  216. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js +86 -0
  217. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js.map +1 -0
  218. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.d.ts +86 -0
  219. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js +31 -0
  220. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js.map +1 -0
  221. package/dist/dist-esm/react-components/src/components/DevicesButton.js +7 -30
  222. package/dist/dist-esm/react-components/src/components/DevicesButton.js.map +1 -1
  223. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +42 -44
  224. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
  225. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.d.ts +1 -0
  226. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js +18 -2
  227. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js.map +1 -1
  228. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js +2 -6
  229. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js.map +1 -1
  230. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.d.ts +4 -0
  231. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js +6 -6
  232. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js.map +1 -1
  233. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js +11 -23
  234. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js.map +1 -1
  235. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.d.ts +4 -0
  236. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js +3 -3
  237. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js.map +1 -1
  238. package/dist/dist-esm/react-components/src/components/Drawer/index.js.map +1 -1
  239. package/dist/dist-esm/react-components/src/components/EndCallButton.js +3 -7
  240. package/dist/dist-esm/react-components/src/components/EndCallButton.js.map +1 -1
  241. package/dist/dist-esm/react-components/src/components/ErrorBar.js +3 -7
  242. package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
  243. package/dist/dist-esm/react-components/src/components/FileCard.js +2 -3
  244. package/dist/dist-esm/react-components/src/components/FileCard.js.map +1 -1
  245. package/dist/dist-esm/react-components/src/components/FileCardGroup.js +1 -1
  246. package/dist/dist-esm/react-components/src/components/FileCardGroup.js.map +1 -1
  247. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js +12 -9
  248. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js.map +1 -1
  249. package/dist/dist-esm/react-components/src/components/FileUploadCards.js +8 -7
  250. package/dist/dist-esm/react-components/src/components/FileUploadCards.js.map +1 -1
  251. package/dist/dist-esm/react-components/src/components/GridLayout.js +37 -37
  252. package/dist/dist-esm/react-components/src/components/GridLayout.js.map +1 -1
  253. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js +2 -2
  254. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js.map +1 -1
  255. package/dist/dist-esm/react-components/src/components/HoldButton.d.ts +49 -0
  256. package/dist/dist-esm/react-components/src/components/HoldButton.js +25 -0
  257. package/dist/dist-esm/react-components/src/components/HoldButton.js.map +1 -0
  258. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js +5 -7
  259. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js.map +1 -1
  260. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js +5 -12
  261. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js.map +1 -1
  262. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js +3 -5
  263. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js.map +1 -1
  264. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js +27 -9
  265. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
  266. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js +23 -36
  267. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js.map +1 -1
  268. package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +23 -1
  269. package/dist/dist-esm/react-components/src/components/MessageThread.js +157 -97
  270. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  271. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js +9 -6
  272. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js.map +1 -1
  273. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js +94 -101
  274. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js.map +1 -1
  275. package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts +13 -0
  276. package/dist/dist-esm/react-components/src/components/ParticipantItem.js +22 -21
  277. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  278. package/dist/dist-esm/react-components/src/components/ParticipantList.js +25 -9
  279. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  280. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js +47 -32
  281. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js.map +1 -1
  282. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js +3 -3
  283. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js.map +1 -1
  284. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js +3 -3
  285. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js.map +1 -1
  286. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.d.ts +2 -1
  287. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +68 -12
  288. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  289. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js +2 -2
  290. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js.map +1 -1
  291. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js +6 -12
  292. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js.map +1 -1
  293. package/dist/dist-esm/react-components/src/components/SendBox.d.ts +35 -0
  294. package/dist/dist-esm/react-components/src/components/SendBox.js +32 -8
  295. package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
  296. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js +2 -2
  297. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js.map +1 -1
  298. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js.map +1 -1
  299. package/dist/dist-esm/react-components/src/components/StreamMedia.js +3 -3
  300. package/dist/dist-esm/react-components/src/components/StreamMedia.js.map +1 -1
  301. package/dist/dist-esm/react-components/src/components/SystemMessage.js +2 -4
  302. package/dist/dist-esm/react-components/src/components/SystemMessage.js.map +1 -1
  303. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js +10 -10
  304. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js.map +1 -1
  305. package/dist/dist-esm/react-components/src/components/TypingIndicator.js +9 -6
  306. package/dist/dist-esm/react-components/src/components/TypingIndicator.js.map +1 -1
  307. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.d.ts +1 -1
  308. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js +12 -1
  309. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js.map +1 -1
  310. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js +13 -1
  311. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js.map +1 -1
  312. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js +20 -0
  313. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js.map +1 -1
  314. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.d.ts +1 -1
  315. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js +12 -1
  316. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js.map +1 -1
  317. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js +31 -12
  318. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js.map +1 -1
  319. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js +11 -14
  320. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js.map +1 -1
  321. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js +39 -20
  322. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js.map +1 -1
  323. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.d.ts +4 -0
  324. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.js.map +1 -1
  325. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js +7 -7
  326. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js.map +1 -1
  327. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js +8 -6
  328. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js.map +1 -1
  329. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.d.ts +9 -0
  330. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js +18 -0
  331. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js.map +1 -0
  332. package/dist/dist-esm/react-components/src/components/VideoGallery/VideoGalleryResponsiveHorizontalGallery.js +2 -7
  333. package/dist/dist-esm/react-components/src/components/VideoGallery/VideoGalleryResponsiveHorizontalGallery.js.map +1 -1
  334. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js +1 -6
  335. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js.map +1 -1
  336. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js +8 -29
  337. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js.map +1 -1
  338. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js +2 -11
  339. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js.map +1 -1
  340. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/Layout.styles.d.ts +6 -0
  341. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/Layout.styles.js +9 -0
  342. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/Layout.styles.js.map +1 -0
  343. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/LocalScreenShare.styles.js.map +1 -1
  344. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteScreenShare.styles.js.map +1 -1
  345. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteVideoTile.styles.js.map +1 -1
  346. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.d.ts +10 -0
  347. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js +29 -0
  348. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js.map +1 -0
  349. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js +10 -10
  350. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js.map +1 -1
  351. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js +10 -5
  352. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js.map +1 -1
  353. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.d.ts +2 -0
  354. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js +31 -30
  355. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js.map +1 -1
  356. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.d.ts +7 -16
  357. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +55 -26
  358. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  359. package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts +66 -0
  360. package/dist/dist-esm/react-components/src/components/VideoGallery.js +140 -20
  361. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  362. package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +22 -1
  363. package/dist/dist-esm/react-components/src/components/VideoTile.js +98 -46
  364. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  365. package/dist/dist-esm/react-components/src/components/VoiceOverButton.js +3 -10
  366. package/dist/dist-esm/react-components/src/components/VoiceOverButton.js.map +1 -1
  367. package/dist/dist-esm/react-components/src/components/index.d.ts +13 -0
  368. package/dist/dist-esm/react-components/src/components/index.js +8 -0
  369. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  370. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.d.ts +58 -0
  371. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js +144 -0
  372. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js.map +1 -0
  373. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js +3 -12
  374. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js.map +1 -1
  375. package/dist/dist-esm/react-components/src/components/styles/ControlBar.styles.js.map +1 -1
  376. package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.js.map +1 -1
  377. package/dist/dist-esm/react-components/src/components/styles/EditBox.styles.js.map +1 -1
  378. package/dist/dist-esm/react-components/src/components/styles/GridLayout.styles.js.map +1 -1
  379. package/dist/dist-esm/react-components/src/components/styles/HorizontalGallery.styles.js.map +1 -1
  380. package/dist/dist-esm/react-components/src/components/styles/IconButton.styles.js.map +1 -1
  381. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js +1 -4
  382. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js.map +1 -1
  383. package/dist/dist-esm/react-components/src/components/styles/MessageStatusIndicator.styles.js.map +1 -1
  384. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js +2 -7
  385. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js.map +1 -1
  386. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js +0 -1
  387. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js.map +1 -1
  388. package/dist/dist-esm/react-components/src/components/styles/ParticipantList.styles.js.map +1 -1
  389. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js +2 -10
  390. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js.map +1 -1
  391. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.d.ts +38 -0
  392. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js +92 -0
  393. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js.map +1 -0
  394. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js +0 -3
  395. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js.map +1 -1
  396. package/dist/dist-esm/react-components/src/components/styles/SystemMessage.styles.js.map +1 -1
  397. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js +2 -2
  398. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js.map +1 -1
  399. package/dist/dist-esm/react-components/src/components/styles/TypingIndicator.styles.js.map +1 -1
  400. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.d.ts +26 -0
  401. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js +67 -0
  402. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js.map +1 -0
  403. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js +2 -13
  404. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js.map +1 -1
  405. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js.map +1 -1
  406. package/dist/dist-esm/react-components/src/components/styles/VoiceOverButton.style.js.map +1 -1
  407. package/dist/dist-esm/react-components/src/components/utils/Datetime.js.map +1 -1
  408. package/dist/dist-esm/react-components/src/components/utils/common.js +4 -0
  409. package/dist/dist-esm/react-components/src/components/utils/common.js.map +1 -1
  410. package/dist/dist-esm/react-components/src/components/utils/delay.js.map +1 -1
  411. package/dist/dist-esm/react-components/src/components/utils/formatPhoneNumber.js.map +1 -1
  412. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js +2 -5
  413. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js.map +1 -1
  414. package/dist/dist-esm/react-components/src/components/utils/keyboardNavigation.js.map +1 -1
  415. package/dist/dist-esm/react-components/src/components/utils/merge.d.ts +7 -0
  416. package/dist/dist-esm/react-components/src/components/utils/merge.js +16 -0
  417. package/dist/dist-esm/react-components/src/components/utils/merge.js.map +1 -0
  418. package/dist/dist-esm/react-components/src/components/utils/responsive.js +2 -2
  419. package/dist/dist-esm/react-components/src/components/utils/responsive.js.map +1 -1
  420. package/dist/dist-esm/react-components/src/components/utils/useLongPress.d.ts +1 -0
  421. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js +15 -2
  422. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js.map +1 -1
  423. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js +1 -3
  424. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js.map +1 -1
  425. package/dist/dist-esm/react-components/src/components/utils.js +9 -8
  426. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  427. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js +14 -10
  428. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js.map +1 -1
  429. package/dist/dist-esm/react-components/src/gallery/index.js.map +1 -1
  430. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js.map +1 -1
  431. package/dist/dist-esm/react-components/src/identifiers/index.js.map +1 -1
  432. package/dist/dist-esm/react-components/src/index.d.ts +2 -0
  433. package/dist/dist-esm/react-components/src/index.js +2 -0
  434. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  435. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +54 -0
  436. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  437. package/dist/dist-esm/react-components/src/localization/index.js.map +1 -1
  438. package/dist/dist-esm/react-components/src/localization/locales/de-DE/strings.json +6 -96
  439. package/dist/dist-esm/react-components/src/localization/locales/en-GB/strings.json +5 -95
  440. package/dist/dist-esm/react-components/src/localization/locales/en-US/strings.json +1 -2
  441. package/dist/dist-esm/react-components/src/localization/locales/es-ES/strings.json +5 -95
  442. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/strings.json +6 -96
  443. package/dist/dist-esm/react-components/src/localization/locales/index.js +14 -42
  444. package/dist/dist-esm/react-components/src/localization/locales/index.js.map +1 -1
  445. package/dist/dist-esm/react-components/src/localization/locales/it-IT/strings.json +5 -95
  446. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/strings.json +5 -95
  447. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/strings.json +5 -95
  448. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/strings.json +5 -95
  449. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/strings.json +6 -96
  450. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/strings.json +5 -95
  451. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/strings.json +6 -96
  452. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/strings.json +5 -95
  453. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/strings.json +5 -95
  454. package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.d.ts +61 -0
  455. package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.js +74 -0
  456. package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.js.map +1 -0
  457. package/dist/dist-esm/react-components/src/permissions/index.d.ts +2 -0
  458. package/dist/dist-esm/react-components/src/permissions/index.js +4 -0
  459. package/dist/dist-esm/react-components/src/permissions/index.js.map +1 -0
  460. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js +3 -6
  461. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js.map +1 -1
  462. package/dist/dist-esm/react-components/src/theming/icons.d.ts +20 -0
  463. package/dist/dist-esm/react-components/src/theming/icons.js +121 -11
  464. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  465. package/dist/dist-esm/react-components/src/theming/icons.styles.d.ts +6 -0
  466. package/dist/dist-esm/react-components/src/theming/icons.styles.js +25 -0
  467. package/dist/dist-esm/react-components/src/theming/icons.styles.js.map +1 -0
  468. package/dist/dist-esm/react-components/src/theming/index.js.map +1 -1
  469. package/dist/dist-esm/react-components/src/theming/themeUtils.js.map +1 -1
  470. package/dist/dist-esm/react-components/src/theming/themes.js.map +1 -1
  471. package/dist/dist-esm/react-components/src/types/ChatMessage.d.ts +7 -0
  472. package/dist/dist-esm/react-components/src/types/ChatMessage.js.map +1 -1
  473. package/dist/dist-esm/react-components/src/types/CommunicationParticipant.js.map +1 -1
  474. package/dist/dist-esm/react-components/src/types/CustomStylesProps.js.map +1 -1
  475. package/dist/dist-esm/react-components/src/types/OnRender.d.ts +8 -0
  476. package/dist/dist-esm/react-components/src/types/OnRender.js.map +1 -1
  477. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.d.ts +3 -0
  478. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js +2 -0
  479. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js.map +1 -1
  480. package/dist/dist-esm/react-components/src/types/ReadReceiptsBySenderId.js.map +1 -1
  481. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.d.ts +8 -0
  482. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js +2 -0
  483. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
  484. package/dist/dist-esm/react-components/src/types/index.js.map +1 -1
  485. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +89 -0
  486. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +95 -17
  487. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  488. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +120 -0
  489. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  490. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +77 -6
  491. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +248 -31
  492. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  493. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +108 -1
  494. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js +9 -1
  495. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  496. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapterProvider.js.map +1 -1
  497. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/DiagnosticsForwarder.js.map +1 -1
  498. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/ParticipantSubcriber.js.map +1 -1
  499. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.d.ts +3 -2
  500. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js +8 -2
  501. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js.map +1 -1
  502. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.d.ts +5 -0
  503. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js +2 -0
  504. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js.map +1 -1
  505. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.d.ts +3 -0
  506. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +76 -10
  507. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  508. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts +2 -0
  509. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +135 -13
  510. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  511. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallPane.d.ts +24 -0
  512. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallPane.js +80 -0
  513. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallPane.js.map +1 -0
  514. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.d.ts +48 -0
  515. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js +210 -0
  516. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js.map +1 -0
  517. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.d.ts +2 -0
  518. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js +21 -0
  519. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js.map +1 -1
  520. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js +20 -2
  521. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js.map +1 -1
  522. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.d.ts +2 -0
  523. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js +21 -0
  524. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js.map +1 -1
  525. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js +5 -4
  526. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js.map +1 -1
  527. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.d.ts +12 -0
  528. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js +93 -0
  529. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js.map +1 -0
  530. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js +2 -2
  531. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js.map +1 -1
  532. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js +32 -22
  533. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js.map +1 -1
  534. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.d.ts +1 -0
  535. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js +66 -19
  536. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
  537. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js +16 -21
  538. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js.map +1 -1
  539. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.d.ts +2 -0
  540. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +25 -17
  541. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  542. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js +2 -2
  543. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js.map +1 -1
  544. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js +2 -2
  545. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js.map +1 -1
  546. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js +1 -1
  547. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js.map +1 -1
  548. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js +1 -1
  549. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js.map +1 -1
  550. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.d.ts +17 -0
  551. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.js +63 -0
  552. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.js.map +1 -0
  553. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js +44 -5
  554. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js.map +1 -1
  555. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js +5 -2
  556. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js.map +1 -1
  557. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js +8 -6
  558. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js.map +1 -1
  559. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js +5 -2
  560. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js.map +1 -1
  561. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.d.ts +8 -0
  562. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js +26 -0
  563. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js.map +1 -0
  564. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js +3 -1
  565. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js.map +1 -1
  566. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js +13 -9
  567. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js.map +1 -1
  568. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +27 -6
  569. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  570. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.js.map +1 -1
  571. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js +1 -1
  572. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js.map +1 -1
  573. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSidePaneState.d.ts +16 -0
  574. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSidePaneState.js +38 -0
  575. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSidePaneState.js.map +1 -0
  576. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.d.ts +7 -0
  577. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js +2 -0
  578. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
  579. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.d.ts +1 -0
  580. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +8 -2
  581. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  582. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.d.ts +8 -0
  583. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +140 -12
  584. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  585. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.d.ts +15 -0
  586. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +38 -0
  587. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +1 -0
  588. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.d.ts +1 -0
  589. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js +19 -7
  590. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js.map +1 -1
  591. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js +2 -2
  592. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js.map +1 -1
  593. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.d.ts +15 -0
  594. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js +54 -0
  595. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js.map +1 -0
  596. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.d.ts +2 -2
  597. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js +1 -1
  598. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js.map +1 -1
  599. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.d.ts +10 -0
  600. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +10 -0
  601. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
  602. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.d.ts +1 -1
  603. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.js.map +1 -1
  604. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.d.ts +1 -1
  605. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.js.map +1 -1
  606. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.d.ts +2 -2
  607. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js +1 -1
  608. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js.map +1 -1
  609. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.d.ts +2 -2
  610. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js +11 -5
  611. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js.map +1 -1
  612. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.d.ts +1 -1
  613. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js +1 -1
  614. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js.map +1 -1
  615. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.d.ts +4 -4
  616. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js.map +1 -1
  617. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.d.ts +2 -2
  618. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js +4 -4
  619. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js.map +1 -1
  620. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.d.ts +1 -1
  621. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js +1 -1
  622. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js.map +1 -1
  623. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.d.ts +5 -5
  624. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js +4 -4
  625. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js.map +1 -1
  626. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.d.ts +2 -2
  627. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js +1 -1
  628. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js.map +1 -1
  629. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.d.ts +2 -2
  630. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.js.map +1 -1
  631. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js +1 -1
  632. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js.map +1 -1
  633. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js +2 -6
  634. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js.map +1 -1
  635. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js +2 -6
  636. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js.map +1 -1
  637. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallControls.styles.js.map +1 -1
  638. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js +2 -0
  639. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js.map +1 -1
  640. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js +1 -4
  641. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js.map +1 -1
  642. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.d.ts +32 -0
  643. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js +81 -0
  644. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js.map +1 -0
  645. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js +1 -4
  646. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js.map +1 -1
  647. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalDeviceSettings.styles.js.map +1 -1
  648. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js.map +1 -1
  649. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NetworkReconnectTile.styles.js.map +1 -1
  650. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NoticePage.styles.js.map +1 -1
  651. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js +0 -1
  652. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js.map +1 -1
  653. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.d.ts +23 -3
  654. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.js.map +1 -1
  655. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js +9 -11
  656. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js.map +1 -1
  657. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts +15 -3
  658. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +106 -12
  659. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  660. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/index.js.map +1 -1
  661. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +87 -4
  662. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +78 -14
  663. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  664. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatControlBar.d.ts +1 -0
  665. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatControlBar.js +41 -15
  666. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatControlBar.js.map +1 -1
  667. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatPane.d.ts +2 -0
  668. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatPane.js +34 -12
  669. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatPane.js.map +1 -1
  670. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton.js +1 -1
  671. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton.js.map +1 -1
  672. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButtonWithUnreadMessagesBadge.js +9 -7
  673. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButtonWithUnreadMessagesBadge.js.map +1 -1
  674. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ConvertContextualMenuItemToDrawerMenuItem.js.map +1 -1
  675. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CustomButton.d.ts +67 -0
  676. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CustomButton.js +75 -0
  677. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CustomButton.js.map +1 -0
  678. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/NotificationIcon.js +3 -6
  679. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/NotificationIcon.js.map +1 -1
  680. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/PeopleButton.js +1 -1
  681. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/PeopleButton.js.map +1 -1
  682. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/PreparedMoreDrawer.d.ts +1 -0
  683. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/PreparedMoreDrawer.js.map +1 -1
  684. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.d.ts +32 -0
  685. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.js.map +1 -1
  686. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +25 -4
  687. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +139 -7
  688. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  689. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +60 -0
  690. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  691. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +10 -2
  692. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +39 -1
  693. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  694. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts +9 -0
  695. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js +31 -1
  696. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  697. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js.map +1 -1
  698. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.d.ts +13 -0
  699. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.js +65 -0
  700. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.js.map +1 -0
  701. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/MoreDrawer.js +67 -21
  702. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/MoreDrawer.js.map +1 -1
  703. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/hooks/useCallWithChatCompositeStrings.js.map +1 -1
  704. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.d.ts +1 -0
  705. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.js.map +1 -1
  706. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js +1 -1
  707. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js.map +1 -1
  708. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.d.ts +22 -0
  709. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js +10 -2
  710. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js.map +1 -1
  711. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/styles/CallWithChatCompositeStyles.js.map +1 -1
  712. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.d.ts +20 -0
  713. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js +6 -2
  714. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js.map +1 -1
  715. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js +3 -5
  716. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js.map +1 -1
  717. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +41 -9
  718. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  719. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.d.ts +18 -0
  720. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js +18 -0
  721. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +1 -0
  722. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.d.ts +15 -0
  723. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js +21 -0
  724. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js.map +1 -0
  725. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.d.ts +4 -0
  726. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.js.map +1 -1
  727. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +9 -0
  728. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +88 -25
  729. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  730. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.d.ts +28 -0
  731. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js +154 -1
  732. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js.map +1 -1
  733. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +13 -2
  734. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  735. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js +2 -0
  736. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js.map +1 -1
  737. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUpload.js.map +1 -1
  738. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js +18 -6
  739. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js.map +1 -1
  740. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadHandler.js.map +1 -1
  741. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js.map +1 -1
  742. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js +3 -5
  743. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js.map +1 -1
  744. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js +3 -1
  745. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js.map +1 -1
  746. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/usePropsFor.js.map +1 -1
  747. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.d.ts +6 -0
  748. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js +11 -0
  749. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js.map +1 -0
  750. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.d.ts +3 -0
  751. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js.map +1 -1
  752. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.d.ts +12 -0
  753. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js +13 -0
  754. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js.map +1 -0
  755. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.d.ts +23 -0
  756. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js +12 -0
  757. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js.map +1 -0
  758. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js +2 -6
  759. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js.map +1 -1
  760. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.d.ts +5 -1
  761. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js +17 -6
  762. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js.map +1 -1
  763. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.d.ts +22 -0
  764. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js +105 -0
  765. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js.map +1 -0
  766. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.d.ts +17 -0
  767. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js +32 -0
  768. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js.map +1 -0
  769. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.d.ts +5 -0
  770. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js +10 -4
  771. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js.map +1 -1
  772. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js +5 -14
  773. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js.map +1 -1
  774. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.d.ts +22 -0
  775. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js +60 -0
  776. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js.map +1 -0
  777. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.d.ts +15 -0
  778. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js +61 -0
  779. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js.map +1 -0
  780. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js +1 -5
  781. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js.map +1 -1
  782. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js +1 -1
  783. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js.map +1 -1
  784. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js +21 -6
  785. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js.map +1 -1
  786. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js +1 -1
  787. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js.map +1 -1
  788. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +7 -9
  789. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
  790. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.d.ts +6 -1
  791. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js +24 -5
  792. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js.map +1 -1
  793. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.d.ts +17 -0
  794. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js +42 -0
  795. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js.map +1 -0
  796. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.d.ts +11 -0
  797. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js +40 -0
  798. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js.map +1 -0
  799. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.d.ts +2 -1
  800. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js +6 -18
  801. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js.map +1 -1
  802. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.d.ts +2 -1
  803. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js +10 -8
  804. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js.map +1 -1
  805. package/dist/dist-esm/react-composites/src/composites/common/adapters.js.map +1 -1
  806. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +33 -1
  807. package/dist/dist-esm/react-composites/src/composites/common/icons.js +19 -5
  808. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  809. package/dist/dist-esm/react-composites/src/composites/common/styles/GlobalHostLayer.styles.js.map +1 -1
  810. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js +6 -16
  811. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js.map +1 -1
  812. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js +12 -51
  813. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js.map +1 -1
  814. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js +5 -22
  815. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js.map +1 -1
  816. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js +4 -22
  817. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js.map +1 -1
  818. package/dist/dist-esm/react-composites/src/composites/common/utils.js +17 -12
  819. package/dist/dist-esm/react-composites/src/composites/common/utils.js.map +1 -1
  820. package/dist/dist-esm/react-composites/src/composites/index.js.map +1 -1
  821. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js +2 -2
  822. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js.map +1 -1
  823. package/dist/dist-esm/react-composites/src/composites/localization/index.js.map +1 -1
  824. package/dist/dist-esm/react-composites/src/composites/localization/locales/de-DE/strings.json +3 -17
  825. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-GB/strings.json +3 -17
  826. package/dist/dist-esm/react-composites/src/composites/localization/locales/es-ES/strings.json +3 -17
  827. package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-FR/strings.json +3 -17
  828. package/dist/dist-esm/react-composites/src/composites/localization/locales/index.js.map +1 -1
  829. package/dist/dist-esm/react-composites/src/composites/localization/locales/it-IT/strings.json +3 -17
  830. package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/strings.json +3 -17
  831. package/dist/dist-esm/react-composites/src/composites/localization/locales/ko-KR/strings.json +3 -17
  832. package/dist/dist-esm/react-composites/src/composites/localization/locales/nl-NL/strings.json +3 -17
  833. package/dist/dist-esm/react-composites/src/composites/localization/locales/pt-BR/strings.json +3 -17
  834. package/dist/dist-esm/react-composites/src/composites/localization/locales/ru-RU/strings.json +3 -17
  835. package/dist/dist-esm/react-composites/src/composites/localization/locales/tr-TR/strings.json +3 -17
  836. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-CN/strings.json +3 -17
  837. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-TW/strings.json +3 -17
  838. package/dist/dist-esm/react-composites/src/index-public.js.map +1 -1
  839. package/package.json +14 -13
@@ -1 +1 @@
1
- {"version":3,"file":"errorBarSelector.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-component-bindings/src/errorBarSelector.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { CallingBaseSelectorProps, getDeviceManager, getDiagnostics, getLatestErrors, getEnvironmentInfo } from './baseSelectors';\nimport { ActiveErrorMessage, ErrorType } from '@internal/react-components';\nimport { createSelector } from 'reselect';\nimport { CallClientState, CallErrors, CallErrorTarget } from '@internal/calling-stateful-client';\nimport { DiagnosticQuality } from '@azure/communication-calling';\n/**\n * Selector type for {@link ErrorBar} component.\n *\n * @public\n */\nexport type ErrorBarSelector = (state: CallClientState, props: CallingBaseSelectorProps) => {\n activeErrorMessages: ActiveErrorMessage[];\n};\n\n/**\n * Select the first 3 active errors from the state for the `ErrorBar` component.\n *\n * In case there are many errors, only the first three errors are returned to avoid\n * filling up the UI with too many errors.\n *\n * Invariants:\n * - `ErrorType` is never repeated in the returned errors.\n * - Errors are returned in a fixed order by `ErrorType`.\n *\n * @public\n */\nexport const errorBarSelector: ErrorBarSelector = createSelector([getLatestErrors, getDiagnostics, getDeviceManager, getEnvironmentInfo], (latestErrors: CallErrors, diagnostics, deviceManager, environmentInfo): {\n activeErrorMessages: ActiveErrorMessage[];\n} => {\n // The order in which the errors are returned is significant: The `ErrorBar` shows errors on the UI in that order.\n // There are several options for the ordering:\n // - Sorted by when the errors happened (latest first / oldest first).\n // - Stable sort by error type.\n //\n // We chose to stable sort by error type: We intend to show only a small number of errors on the UI and we do not\n // have timestamps for errors.\n const activeErrorMessages: ActiveErrorMessage[] = [];\n const isSafari = (): boolean => {\n return /^((?!chrome|android|crios|fxios).)*safari/i.test(navigator.userAgent);\n };\n\n // Errors reported via diagnostics are more reliable than from API method failures, so process those first.\n if (diagnostics?.network.latest.networkReceiveQuality?.value === DiagnosticQuality.Bad || diagnostics?.network.latest.networkReceiveQuality?.value === DiagnosticQuality.Poor) {\n activeErrorMessages.push({\n type: 'callNetworkQualityLow'\n });\n }\n if (diagnostics?.media.latest.noSpeakerDevicesEnumerated?.value === true) {\n activeErrorMessages.push({\n type: 'callNoSpeakerFound'\n });\n }\n if (diagnostics?.media.latest.noMicrophoneDevicesEnumerated?.value === true) {\n activeErrorMessages.push({\n type: 'callNoMicrophoneFound'\n });\n }\n if (deviceManager.deviceAccess?.audio === false && isSafari()) {\n activeErrorMessages.push({\n type: 'callMicrophoneAccessDeniedSafari'\n });\n }\n if (deviceManager.deviceAccess?.audio === false && !isSafari()) {\n activeErrorMessages.push({\n type: 'callMicrophoneAccessDenied'\n });\n }\n if (diagnostics?.media.latest.microphonePermissionDenied?.value === true) {\n activeErrorMessages.push({\n type: 'callMacOsMicrophoneAccessDenied'\n });\n }\n const microphoneMuteUnexpectedlyDiagnostic = diagnostics?.media.latest.microphoneMuteUnexpectedly || diagnostics?.media.latest.microphoneNotFunctioning;\n if (microphoneMuteUnexpectedlyDiagnostic) {\n if (microphoneMuteUnexpectedlyDiagnostic.value === DiagnosticQuality.Bad) {\n // Inform the user that microphone stopped working and inform them to start microphone again\n activeErrorMessages.push({\n type: 'callMicrophoneMutedBySystem'\n });\n } else if (microphoneMuteUnexpectedlyDiagnostic.value === DiagnosticQuality.Good) {\n // Inform the user that microphone recovered\n activeErrorMessages.push({\n type: 'callMicrophoneUnmutedBySystem'\n });\n }\n }\n const cameraStoppedUnexpectedlyDiagnostic = diagnostics?.media.latest.cameraStoppedUnexpectedly;\n if (cameraStoppedUnexpectedlyDiagnostic) {\n if (cameraStoppedUnexpectedlyDiagnostic.value === DiagnosticQuality.Bad) {\n // Inform the user that camera stopped working and inform them to start video again\n activeErrorMessages.push({\n type: 'callVideoStoppedBySystem'\n });\n } else if (cameraStoppedUnexpectedlyDiagnostic.value === DiagnosticQuality.Good) {\n // Inform the user that camera recovered\n activeErrorMessages.push({\n type: 'callVideoRecoveredBySystem'\n });\n }\n }\n if (deviceManager.deviceAccess?.video === false && isSafari()) {\n activeErrorMessages.push({\n type: 'callCameraAccessDeniedSafari'\n });\n } else if (deviceManager.deviceAccess?.video === false) {\n activeErrorMessages.push({\n type: 'callCameraAccessDenied'\n });\n } else {\n if (diagnostics?.media.latest.cameraFreeze?.value === true) {\n activeErrorMessages.push({\n type: 'callCameraAlreadyInUse'\n });\n }\n }\n if (diagnostics?.media.latest.cameraPermissionDenied?.value === true) {\n activeErrorMessages.push({\n type: 'callMacOsCameraAccessDenied'\n });\n }\n if (diagnostics?.media.latest.screenshareRecordingDisabled?.value === true) {\n activeErrorMessages.push({\n type: 'callMacOsScreenShareAccessDenied'\n });\n }\n\n // Prefer to show errors with privacy implications.\n appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.stopVideo', 'stopVideoGeneric');\n appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.mute', 'muteGeneric');\n appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.stopScreenSharing', 'stopScreenShareGeneric');\n appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.startVideo', 'startVideoGeneric');\n appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.unmute', 'unmuteGeneric');\n if (latestErrors['CallAgent.join']?.message === 'CallAgent.join: Invalid meeting link') {\n appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'CallAgent.join', 'failedToJoinCallInvalidMeetingLink');\n } else {\n appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'CallAgent.join', 'failedToJoinCallGeneric');\n }\n\n // We only return the first few errors to avoid filling up the UI with too many `MessageBar`s.\n activeErrorMessages.splice(maxErrorCount);\n return {\n activeErrorMessages: activeErrorMessages\n };\n});\nconst appendActiveErrorIfDefined = (activeErrorMessages: ActiveErrorMessage[], latestErrors: CallErrors, target: CallErrorTarget, activeErrorType: ErrorType): void => {\n if (latestErrors[target] === undefined) {\n return;\n }\n activeErrorMessages.push({\n type: activeErrorType,\n timestamp: latestErrors[target].timestamp\n });\n};\nconst maxErrorCount = 3;\"../../react-components/src\"\"../../calling-stateful-client/src\""]}
1
+ {"version":3,"file":"errorBarSelector.js","sourceRoot":"","sources":["../../../../../calling-component-bindings/src/errorBarSelector.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n CallingBaseSelectorProps,\n getDeviceManager,\n getDiagnostics,\n getLatestErrors,\n getEnvironmentInfo\n} from './baseSelectors';\nimport { ActiveErrorMessage, ErrorType } from '@internal/react-components';\nimport { createSelector } from 'reselect';\nimport { CallClientState, CallErrors, CallErrorTarget } from '@internal/calling-stateful-client';\nimport { DiagnosticQuality } from '@azure/communication-calling';\n/**\n * Selector type for {@link ErrorBar} component.\n *\n * @public\n */\nexport type ErrorBarSelector = (\n state: CallClientState,\n props: CallingBaseSelectorProps\n) => {\n activeErrorMessages: ActiveErrorMessage[];\n};\n\n/**\n * Select the first 3 active errors from the state for the `ErrorBar` component.\n *\n * In case there are many errors, only the first three errors are returned to avoid\n * filling up the UI with too many errors.\n *\n * Invariants:\n * - `ErrorType` is never repeated in the returned errors.\n * - Errors are returned in a fixed order by `ErrorType`.\n *\n * @public\n */\nexport const errorBarSelector: ErrorBarSelector = createSelector(\n [getLatestErrors, getDiagnostics, getDeviceManager, getEnvironmentInfo],\n (\n latestErrors: CallErrors,\n diagnostics,\n deviceManager,\n environmentInfo\n ): { activeErrorMessages: ActiveErrorMessage[] } => {\n // The order in which the errors are returned is significant: The `ErrorBar` shows errors on the UI in that order.\n // There are several options for the ordering:\n // - Sorted by when the errors happened (latest first / oldest first).\n // - Stable sort by error type.\n //\n // We chose to stable sort by error type: We intend to show only a small number of errors on the UI and we do not\n // have timestamps for errors.\n const activeErrorMessages: ActiveErrorMessage[] = [];\n\n const isSafari = (): boolean => {\n /* @conditional-compile-remove(unsupported-browser) */\n return environmentInfo?.environment.browser === 'safari';\n return /^((?!chrome|android|crios|fxios).)*safari/i.test(navigator.userAgent);\n };\n\n // Errors reported via diagnostics are more reliable than from API method failures, so process those first.\n if (\n diagnostics?.network.latest.networkReceiveQuality?.value === DiagnosticQuality.Bad ||\n diagnostics?.network.latest.networkReceiveQuality?.value === DiagnosticQuality.Poor\n ) {\n activeErrorMessages.push({ type: 'callNetworkQualityLow' });\n }\n if (diagnostics?.media.latest.noSpeakerDevicesEnumerated?.value === true) {\n activeErrorMessages.push({ type: 'callNoSpeakerFound' });\n }\n if (diagnostics?.media.latest.noMicrophoneDevicesEnumerated?.value === true) {\n activeErrorMessages.push({ type: 'callNoMicrophoneFound' });\n }\n if (deviceManager.deviceAccess?.audio === false && isSafari()) {\n activeErrorMessages.push({ type: 'callMicrophoneAccessDeniedSafari' });\n }\n if (deviceManager.deviceAccess?.audio === false && !isSafari()) {\n activeErrorMessages.push({ type: 'callMicrophoneAccessDenied' });\n }\n if (diagnostics?.media.latest.microphonePermissionDenied?.value === true) {\n activeErrorMessages.push({ type: 'callMacOsMicrophoneAccessDenied' });\n }\n\n const microphoneMuteUnexpectedlyDiagnostic =\n diagnostics?.media.latest.microphoneMuteUnexpectedly || diagnostics?.media.latest.microphoneNotFunctioning;\n if (microphoneMuteUnexpectedlyDiagnostic) {\n if (microphoneMuteUnexpectedlyDiagnostic.value === DiagnosticQuality.Bad) {\n // Inform the user that microphone stopped working and inform them to start microphone again\n activeErrorMessages.push({ type: 'callMicrophoneMutedBySystem' });\n } else if (microphoneMuteUnexpectedlyDiagnostic.value === DiagnosticQuality.Good) {\n // Inform the user that microphone recovered\n activeErrorMessages.push({ type: 'callMicrophoneUnmutedBySystem' });\n }\n }\n\n const cameraStoppedUnexpectedlyDiagnostic = diagnostics?.media.latest.cameraStoppedUnexpectedly;\n if (cameraStoppedUnexpectedlyDiagnostic) {\n if (cameraStoppedUnexpectedlyDiagnostic.value === DiagnosticQuality.Bad) {\n // Inform the user that camera stopped working and inform them to start video again\n activeErrorMessages.push({ type: 'callVideoStoppedBySystem' });\n } else if (cameraStoppedUnexpectedlyDiagnostic.value === DiagnosticQuality.Good) {\n // Inform the user that camera recovered\n activeErrorMessages.push({ type: 'callVideoRecoveredBySystem' });\n }\n }\n if (deviceManager.deviceAccess?.video === false && isSafari()) {\n activeErrorMessages.push({ type: 'callCameraAccessDeniedSafari' });\n } else if (deviceManager.deviceAccess?.video === false) {\n activeErrorMessages.push({ type: 'callCameraAccessDenied' });\n } else {\n if (diagnostics?.media.latest.cameraFreeze?.value === true) {\n activeErrorMessages.push({ type: 'callCameraAlreadyInUse' });\n }\n }\n\n if (diagnostics?.media.latest.cameraPermissionDenied?.value === true) {\n activeErrorMessages.push({ type: 'callMacOsCameraAccessDenied' });\n }\n if (diagnostics?.media.latest.screenshareRecordingDisabled?.value === true) {\n activeErrorMessages.push({ type: 'callMacOsScreenShareAccessDenied' });\n }\n\n // Prefer to show errors with privacy implications.\n appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.stopVideo', 'stopVideoGeneric');\n appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.mute', 'muteGeneric');\n appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.stopScreenSharing', 'stopScreenShareGeneric');\n\n appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.startVideo', 'startVideoGeneric');\n appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'Call.unmute', 'unmuteGeneric');\n\n if (latestErrors['CallAgent.join']?.message === 'CallAgent.join: Invalid meeting link') {\n appendActiveErrorIfDefined(\n activeErrorMessages,\n latestErrors,\n 'CallAgent.join',\n 'failedToJoinCallInvalidMeetingLink'\n );\n } else {\n appendActiveErrorIfDefined(activeErrorMessages, latestErrors, 'CallAgent.join', 'failedToJoinCallGeneric');\n }\n\n // We only return the first few errors to avoid filling up the UI with too many `MessageBar`s.\n activeErrorMessages.splice(maxErrorCount);\n return { activeErrorMessages: activeErrorMessages };\n }\n);\n\nconst appendActiveErrorIfDefined = (\n activeErrorMessages: ActiveErrorMessage[],\n latestErrors: CallErrors,\n target: CallErrorTarget,\n activeErrorType: ErrorType\n): void => {\n if (latestErrors[target] === undefined) {\n return;\n }\n activeErrorMessages.push({\n type: activeErrorType,\n timestamp: latestErrors[target].timestamp\n });\n};\n\nconst maxErrorCount = 3;\n\"../../react-components/src\"\"../../calling-stateful-client/src\""]}
@@ -1,7 +1,11 @@
1
1
  import { AudioDeviceInfo, Call, LocalVideoStream, StartCallOptions, VideoDeviceInfo } from '@azure/communication-calling';
2
+ import { DtmfTone, AddPhoneNumberOptions } from '@azure/communication-calling';
3
+ import { TeamsCall } from '@azure/communication-calling';
4
+ import { PermissionConstraints } from '@azure/communication-calling';
2
5
  import { StatefulCallClient, StatefulDeviceManager } from "../../../calling-stateful-client/src";
3
6
  import { CreateVideoStreamViewResult, VideoStreamOptions } from "../../../react-components/src";
4
7
  import { CommunicationUserIdentifier, PhoneNumberIdentifier, UnknownIdentifier } from '@azure/communication-common';
8
+ import { CommunicationIdentifier } from '@azure/communication-common';
5
9
  /**
6
10
  * Object containing all the handlers required for calling components.
7
11
  *
@@ -21,11 +25,17 @@ export interface CommonCallingHandlers {
21
25
  onStopScreenShare: () => Promise<void>;
22
26
  onToggleScreenShare: () => Promise<void>;
23
27
  onHangUp: (forEveryone?: boolean) => Promise<void>;
28
+ onToggleHold: () => Promise<void>;
29
+ onAddParticipant(participant: CommunicationUserIdentifier): Promise<void>;
30
+ onAddParticipant(participant: PhoneNumberIdentifier, options: AddPhoneNumberOptions): Promise<void>;
24
31
  onCreateLocalStreamView: (options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;
25
32
  onCreateRemoteStreamView: (userId: string, options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;
26
33
  onDisposeRemoteStreamView: (userId: string) => Promise<void>;
27
34
  onDisposeLocalStreamView: () => Promise<void>;
35
+ onSendDtmfTone: (dtmfTone: DtmfTone) => Promise<void>;
28
36
  onRemoveParticipant(userId: string): Promise<void>;
37
+ onRemoveParticipant(participant: CommunicationIdentifier): Promise<void>;
38
+ askDevicePermission: (constrain: PermissionConstraints) => Promise<void>;
29
39
  onStartCall: (participants: (CommunicationUserIdentifier | PhoneNumberIdentifier | UnknownIdentifier)[], options?: StartCallOptions) => void;
30
40
  }
31
41
  /**
@@ -37,5 +47,5 @@ export declare const areStreamsEqual: (prevStream: LocalVideoStream, newStream:
37
47
  *
38
48
  * @private
39
49
  */
40
- export declare const createDefaultCommonCallingHandlers: (callClient: StatefulCallClient, deviceManager: StatefulDeviceManager | undefined, call: Call | undefined) => CommonCallingHandlers;
50
+ export declare const createDefaultCommonCallingHandlers: (callClient: StatefulCallClient, deviceManager: StatefulDeviceManager | undefined, call: Call | /* @conditional-compile-remove(teams-identity-support) */ TeamsCall | undefined) => CommonCallingHandlers;
41
51
  //# sourceMappingURL=createCommonHandlers.d.ts.map
@@ -41,7 +41,7 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
41
41
  return;
42
42
  }
43
43
  const stream = new LocalVideoStream(videoDeviceInfo);
44
- if (call && !call.localVideoStreams.find(s => areStreamsEqual(s, stream))) {
44
+ if (call && !call.localVideoStreams.find((s) => areStreamsEqual(s, stream))) {
45
45
  yield call.startVideo(stream);
46
46
  }
47
47
  });
@@ -50,7 +50,7 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
50
50
  if (!callId) {
51
51
  return;
52
52
  }
53
- if (call && call.localVideoStreams.find(s => areStreamsEqual(s, stream))) {
53
+ if (call && call.localVideoStreams.find((s) => areStreamsEqual(s, stream))) {
54
54
  yield call.stopVideo(stream);
55
55
  yield callClient.disposeView(callId, undefined, {
56
56
  source: stream.source,
@@ -83,7 +83,7 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
83
83
  return;
84
84
  }
85
85
  if (call && (_isInCall(call.state) || _isInLobbyOrConnecting(call.state))) {
86
- const stream = call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video');
86
+ const stream = call.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video');
87
87
  if (stream) {
88
88
  yield onStopLocalVideo(stream);
89
89
  }
@@ -124,7 +124,7 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
124
124
  }
125
125
  if (call && _isInCall(call.state)) {
126
126
  deviceManager.selectCamera(device);
127
- const stream = call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video');
127
+ const stream = call.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video');
128
128
  return stream === null || stream === void 0 ? void 0 : stream.switchSource(device);
129
129
  }
130
130
  else {
@@ -150,15 +150,10 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
150
150
  const onStartScreenShare = () => __awaiter(void 0, void 0, void 0, function* () { return yield (call === null || call === void 0 ? void 0 : call.startScreenSharing()); });
151
151
  const onStopScreenShare = () => __awaiter(void 0, void 0, void 0, function* () { return yield (call === null || call === void 0 ? void 0 : call.stopScreenSharing()); });
152
152
  const onToggleScreenShare = () => __awaiter(void 0, void 0, void 0, function* () { return (call === null || call === void 0 ? void 0 : call.isScreenSharingOn) ? yield onStopScreenShare() : yield onStartScreenShare(); });
153
- const onHangUp = (forEveryone) => __awaiter(void 0, void 0, void 0, function* () {
154
- return yield (call === null || call === void 0 ? void 0 : call.hangUp({
155
- forEveryone: forEveryone === true ? true : false
156
- }));
157
- });
158
- const onCreateLocalStreamView = (options = {
159
- scalingMode: 'Crop',
160
- isMirrored: true
161
- }) => __awaiter(void 0, void 0, void 0, function* () {
153
+ const onHangUp = (forEveryone) => __awaiter(void 0, void 0, void 0, function* () { return yield (call === null || call === void 0 ? void 0 : call.hangUp({ forEveryone: forEveryone === true ? true : false })); });
154
+ /* @conditional-compile-remove(PSTN-calls) */
155
+ 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()); });
156
+ const onCreateLocalStreamView = (options = { scalingMode: 'Crop', isMirrored: true }) => __awaiter(void 0, void 0, void 0, function* () {
162
157
  var _a;
163
158
  if (!call || call.localVideoStreams.length === 0) {
164
159
  return;
@@ -167,18 +162,14 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
167
162
  if (!callState) {
168
163
  return;
169
164
  }
170
- const localStream = callState.localVideoStreams.find(item => item.mediaStreamType === 'Video');
165
+ const localStream = callState.localVideoStreams.find((item) => item.mediaStreamType === 'Video');
171
166
  if (!localStream) {
172
167
  return;
173
168
  }
174
169
  const { view } = (_a = (yield callClient.createView(call.id, undefined, localStream, options))) !== null && _a !== void 0 ? _a : {};
175
- return view ? {
176
- view
177
- } : undefined;
170
+ return view ? { view } : undefined;
178
171
  });
179
- const onCreateRemoteStreamView = (userId, options = {
180
- scalingMode: 'Crop'
181
- }) => __awaiter(void 0, void 0, void 0, function* () {
172
+ const onCreateRemoteStreamView = (userId, options = { scalingMode: 'Crop' }) => __awaiter(void 0, void 0, void 0, function* () {
182
173
  if (!call) {
183
174
  return;
184
175
  }
@@ -186,12 +177,12 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
186
177
  if (!callState) {
187
178
  throw new Error(`Call Not Found: ${call.id}`);
188
179
  }
189
- const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);
180
+ const participant = Object.values(callState.remoteParticipants).find((participant) => toFlatCommunicationIdentifier(participant.identifier) === userId);
190
181
  if (!participant || !participant.videoStreams) {
191
182
  return;
192
183
  }
193
- const remoteVideoStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'Video');
194
- const screenShareStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'ScreenSharing');
184
+ const remoteVideoStream = Object.values(participant.videoStreams).find((i) => i.mediaStreamType === 'Video');
185
+ const screenShareStream = Object.values(participant.videoStreams).find((i) => i.mediaStreamType === 'ScreenSharing');
195
186
  let createViewResult = undefined;
196
187
  if (remoteVideoStream && remoteVideoStream.isAvailable && !remoteVideoStream.view) {
197
188
  createViewResult = yield callClient.createView(call.id, participant.identifier, remoteVideoStream, options);
@@ -204,9 +195,7 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
204
195
  scalingMode: 'Fit'
205
196
  });
206
197
  }
207
- return (createViewResult === null || createViewResult === void 0 ? void 0 : createViewResult.view) ? {
208
- view: createViewResult === null || createViewResult === void 0 ? void 0 : createViewResult.view
209
- } : undefined;
198
+ return (createViewResult === null || createViewResult === void 0 ? void 0 : createViewResult.view) ? { view: createViewResult === null || createViewResult === void 0 ? void 0 : createViewResult.view } : undefined;
210
199
  });
211
200
  const onDisposeRemoteStreamView = (userId) => __awaiter(void 0, void 0, void 0, function* () {
212
201
  if (!call) {
@@ -216,12 +205,12 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
216
205
  if (!callState) {
217
206
  throw new Error(`Call Not Found: ${call.id}`);
218
207
  }
219
- const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);
208
+ const participant = Object.values(callState.remoteParticipants).find((participant) => toFlatCommunicationIdentifier(participant.identifier) === userId);
220
209
  if (!participant || !participant.videoStreams) {
221
210
  return;
222
211
  }
223
- const remoteVideoStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'Video');
224
- const screenShareStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'ScreenSharing');
212
+ const remoteVideoStream = Object.values(participant.videoStreams).find((i) => i.mediaStreamType === 'Video');
213
+ const screenShareStream = Object.values(participant.videoStreams).find((i) => i.mediaStreamType === 'ScreenSharing');
225
214
  if (remoteVideoStream && remoteVideoStream.view) {
226
215
  callClient.disposeView(call.id, participant.identifier, remoteVideoStream);
227
216
  }
@@ -232,7 +221,7 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
232
221
  const onDisposeLocalStreamView = () => __awaiter(void 0, void 0, void 0, function* () {
233
222
  // If the user is currently in a call, dispose of the local stream view attached to that call.
234
223
  const callState = call && callClient.getState().calls[call.id];
235
- const localStream = callState === null || callState === void 0 ? void 0 : callState.localVideoStreams.find(item => item.mediaStreamType === 'Video');
224
+ const localStream = callState === null || callState === void 0 ? void 0 : callState.localVideoStreams.find((item) => item.mediaStreamType === 'Video');
236
225
  if (call && callState && localStream) {
237
226
  callClient.disposeView(call.id, undefined, localStream);
238
227
  }
@@ -241,11 +230,21 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
241
230
  // TODO: we need to remember which LocalVideoStream was used for LocalPreview and dispose that one.
242
231
  yield disposeAllLocalPreviewViews(callClient);
243
232
  });
233
+ /* @conditional-compile-remove(dialpad) */ /* @conditional-compile-remove(PSTN-calls) */
234
+ const onSendDtmfTone = (dtmfTone) => __awaiter(void 0, void 0, void 0, function* () { return yield (call === null || call === void 0 ? void 0 : call.sendDtmf(dtmfTone)); });
244
235
  const notImplemented = () => {
245
236
  throw new Error('Not implemented, cannot call a method from an abstract object');
246
237
  };
238
+ /* @conditional-compile-remove(call-readiness) */
239
+ const askDevicePermission = (constrain) => __awaiter(void 0, void 0, void 0, function* () {
240
+ if (deviceManager) {
241
+ yield (deviceManager === null || deviceManager === void 0 ? void 0 : deviceManager.askDevicePermission(constrain));
242
+ }
243
+ });
247
244
  return {
248
245
  onHangUp,
246
+ /* @conditional-compile-remove(PSTN-calls) */
247
+ onToggleHold,
249
248
  onSelectCamera,
250
249
  onSelectMicrophone,
251
250
  onSelectSpeaker,
@@ -259,8 +258,13 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
259
258
  onStartLocalVideo,
260
259
  onDisposeRemoteStreamView,
261
260
  onDisposeLocalStreamView,
261
+ /* @conditional-compile-remove(PSTN-calls) */
262
+ onAddParticipant: notImplemented,
262
263
  onRemoveParticipant: notImplemented,
263
- onStartCall: notImplemented
264
+ onStartCall: notImplemented,
265
+ /* @conditional-compile-remove(dialpad) */ /* @conditional-compile-remove(PSTN-calls) */ onSendDtmfTone,
266
+ /* @conditional-compile-remove(call-readiness) */
267
+ askDevicePermission
264
268
  };
265
269
  });
266
270
  //# 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 } 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';\nimport { CommunicationUserIdentifier, PhoneNumberIdentifier, UnknownIdentifier } from '@azure/communication-common';\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 onCreateLocalStreamView: (options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;\n onCreateRemoteStreamView: (userId: string, options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;\n onDisposeRemoteStreamView: (userId: string) => Promise<void>;\n onDisposeLocalStreamView: () => Promise<void>;\n onRemoveParticipant(userId: string): Promise<void>;\n onStartCall: (participants: (CommunicationUserIdentifier | PhoneNumberIdentifier | UnknownIdentifier)[], options?: StartCallOptions) => void;\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 * 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): 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 await callClient.disposeView(callId, undefined, {\n source: stream.source,\n mediaStreamType: stream.mediaStreamType\n });\n }\n };\n const onToggleCamera = async (options?: VideoStreamOptions): Promise<void> => {\n const previewOn = _isPreviewOn(callClient.getState().deviceManager);\n if (previewOn && call && call.state === 'Connecting') {\n // This 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 await onDisposeLocalStreamView();\n return;\n }\n if (call && (_isInCall(call.state) || _isInLobbyOrConnecting(call.state))) {\n const stream = call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video');\n if (stream) {\n await onStopLocalVideo(stream);\n } else {\n await onStartLocalVideo();\n }\n } else {\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 return stream?.switchSource(device);\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 onToggleMicrophone = async (): Promise<void> => {\n if (!call || !_isInCall(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 const remoteVideoStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'Video');\n const screenShareStream = Object.values(participant.videoStreams).find(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 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 notImplemented = (): any => {\n throw new Error('Not implemented, cannot call a method from an abstract object');\n };\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 onRemoveParticipant: notImplemented,\n onStartCall: notImplemented\n };\n});\"../../../acs-ui-common/src\"\"../../../calling-stateful-client/src\"\"../../../react-components/src\""]}
1
+ {"version":3,"file":"createCommonHandlers.js","sourceRoot":"","sources":["../../../../../../calling-component-bindings/src/handlers/createCommonHandlers.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;AAElC,OAAO,EAGL,gBAAgB,EAGjB,MAAM,8BAA8B,CAAC;AAOtC,OAAO,EAAE,6BAA6B,EAAE,mCAAgC;AAExE,OAAO,UAAU,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,2BAA2B,EAAE,SAAS,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAkDlH;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,UAA4B,EAAE,SAA2B,EAAW,EAAE;IACpG,OAAO,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,SAAS,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,KAAK,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;AACrF,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,UAAU,CAC1D,CACE,UAA8B,EAC9B,aAAgD,EAChD,IAA4F,EACrE,EAAE;IACzB,MAAM,iBAAiB,GAAG,GAAwB,EAAE;QAClD,iFAAiF;QACjF,mFAAmF;QACnF,0CAA0C;QAC1C,MAAM,2BAA2B,CAAC,UAAU,CAAC,CAAC;QAE9C,MAAM,MAAM,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,EAAE,CAAC;QACxB,IAAI,eAAe,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC,aAAa,CAAC,cAAc,CAAC;QACzE,IAAI,CAAC,eAAe,EAAE;YACpB,MAAM,OAAO,GAAG,MAAM,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,UAAU,EAAE,CAAA,CAAC;YAClD,eAAe,GAAG,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACzE,eAAe,KAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,YAAY,CAAC,eAAe,CAAC,CAAA,CAAC;SACjE;QACD,IAAI,CAAC,MAAM,IAAI,CAAC,eAAe,EAAE;YAC/B,OAAO;SACR;QACD,MAAM,MAAM,GAAG,IAAI,gBAAgB,CAAC,eAAe,CAAC,CAAC;QACrD,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE;YAC3E,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;SAC/B;IACH,CAAC,CAAA,CAAC;IAEF,MAAM,gBAAgB,GAAG,CAAO,MAAwB,EAAiB,EAAE;QACzE,MAAM,MAAM,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,EAAE,CAAC;QACxB,IAAI,CAAC,MAAM,EAAE;YACX,OAAO;SACR;QACD,IAAI,IAAI,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE;YAC1E,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC7B,MAAM,UAAU,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,EAAE;gBAC9C,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,eAAe,EAAE,MAAM,CAAC,eAAe;aACxC,CAAC,CAAC;SACJ;IACH,CAAC,CAAA,CAAC;IAEF,MAAM,cAAc,GAAG,CAAO,OAA4B,EAAiB,EAAE;QAC3E,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,aAAa,CAAC,CAAC;QAEpE,IAAI,SAAS,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,YAAY,EAAE;YACpD,uFAAuF;YACvF,0FAA0F;YAC1F,0FAA0F;YAC1F,EAAE;YACF,2FAA2F;YAC3F,oFAAoF;YACpF,yFAAyF;YACzF,wFAAwF;YACxF,EAAE;YACF,sFAAsF;YACtF,4FAA4F;YAC5F,6FAA6F;YAC7F,wFAAwF;YACxF,EAAE;YACF,sFAAsF;YACtF,yFAAyF;YACzF,sFAAsF;YACtF,6EAA6E;YAC7E,MAAM,wBAAwB,EAAE,CAAC;YACjC,OAAO;SACR;QAED,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;YACzE,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,eAAe,KAAK,OAAO,CAAC,CAAC;YAC3F,IAAI,MAAM,EAAE;gBACV,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAC;aAChC;iBAAM;gBACL,MAAM,iBAAiB,EAAE,CAAC;aAC3B;SACF;aAAM;YACL,MAAM,cAAc,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC,aAAa,CAAC,cAAc,CAAC;YAC1E,IAAI,cAAc,EAAE;gBAClB,IAAI,SAAS,EAAE;oBACb,MAAM,wBAAwB,EAAE,CAAC;iBAClC;qBAAM;oBACL,MAAM,UAAU,CAAC,UAAU,CACzB,SAAS,EACT,SAAS,EACT;wBACE,MAAM,EAAE,cAAc;wBACtB,eAAe,EAAE,OAAO;qBACzB,EACD,OAAO,CACR,CAAC;iBACH;aACF;SACF;IACH,CAAC,CAAA,CAAC;IAEF,MAAM,kBAAkB,GAAG,CAAO,MAAuB,EAAiB,EAAE;QAC1E,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO;SACR;QACD,OAAO,aAAa,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC,CAAA,CAAC;IAEF,MAAM,eAAe,GAAG,CAAO,MAAuB,EAAiB,EAAE;QACvE,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO;SACR;QACD,OAAO,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC,CAAA,CAAC;IAEF,MAAM,cAAc,GAAG,CAAO,MAAuB,EAAE,OAA4B,EAAiB,EAAE;QACpG,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO;SACR;QACD,IAAI,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACjC,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,eAAe,KAAK,OAAO,CAAC,CAAC;YAC3F,OAAO,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,YAAY,CAAC,MAAM,CAAC,CAAC;SACrC;aAAM;YACL,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,aAAa,CAAC,CAAC;YAEpE,IAAI,CAAC,SAAS,EAAE;gBACd,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;gBACnC,OAAO;aACR;YAED,MAAM,wBAAwB,EAAE,CAAC;YAEjC,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YACnC,MAAM,UAAU,CAAC,UAAU,CACzB,SAAS,EACT,SAAS,EACT;gBACE,MAAM,EAAE,MAAM;gBACd,eAAe,EAAE,OAAO;aACzB,EACD,OAAO,CACR,CAAC;SACH;IACH,CAAC,CAAA,CAAC;IAEF,MAAM,kBAAkB,GAAG,GAAwB,EAAE;QACnD,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;SAC3E;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IAChE,CAAC,CAAA,CAAC;IAEF,MAAM,kBAAkB,GAAG,GAAwB,EAAE,kDAAC,OAAA,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,EAAE,CAAA,CAAA,GAAA,CAAC;IAEvF,MAAM,iBAAiB,GAAG,GAAwB,EAAE,kDAAC,OAAA,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,iBAAiB,EAAE,CAAA,CAAA,GAAA,CAAC;IAErF,MAAM,mBAAmB,GAAG,GAAwB,EAAE,kDACpD,OAAA,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,iBAAiB,EAAC,CAAC,CAAC,MAAM,iBAAiB,EAAE,CAAC,CAAC,CAAC,MAAM,kBAAkB,EAAE,CAAA,GAAA,CAAC;IAEnF,MAAM,QAAQ,GAAG,CAAO,WAAqB,EAAiB,EAAE,kDAC9D,OAAA,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,EAAE,WAAW,EAAE,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA,CAAA,GAAA,CAAC;IAE3E,6CAA6C;IAC7C,MAAM,YAAY,GAAG,GAAwB,EAAE,kDAC7C,OAAA,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,MAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAE,CAAA,CAAC,CAAC,CAAC,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,EAAE,CAAA,CAAA,GAAA,CAAC;IAE1E,MAAM,uBAAuB,GAAG,CAC9B,UAAU,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAC5B,EAAE;;QAC/C,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE;YAChD,OAAO;SACR;QAED,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,SAAS,EAAE;YACd,OAAO;SACR;QAED,MAAM,WAAW,GAAG,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,KAAK,OAAO,CAAC,CAAC;QACjG,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO;SACR;QAED,MAAM,EAAE,IAAI,EAAE,GAAG,MAAA,CAAC,MAAM,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,mCAAI,EAAE,CAAC;QAC/F,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACrC,CAAC,CAAA,CAAC;IAEF,MAAM,wBAAwB,GAAG,CAC/B,MAAc,EACd,UAAU,EAAE,WAAW,EAAE,MAAM,EAAwB,EACV,EAAE;QAC/C,IAAI,CAAC,IAAI,EAAE;YACT,OAAO;SACR;QACD,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,SAAS,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;SAC/C;QAED,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAClE,CAAC,WAAW,EAAE,EAAE,CAAC,6BAA6B,CAAC,WAAW,CAAC,UAAU,CAAC,KAAK,MAAM,CAClF,CAAC;QAEF,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;YAC7C,OAAO;SACR;QAED,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,KAAK,OAAO,CAAC,CAAC;QAC7G,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,IAAI,CACpE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,KAAK,eAAe,CAC7C,CAAC;QAEF,IAAI,gBAAgB,GAAiC,SAAS,CAAC;QAC/D,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,WAAW,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE;YACjF,gBAAgB,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,UAAU,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAC;SAC7G;QAED,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,WAAW,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE;YACjF,oIAAoI;YACpI,mFAAmF;YACnF,kFAAkF;YAClF,gBAAgB,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,UAAU,EAAE,iBAAiB,EAAE;gBACjG,WAAW,EAAE,KAAK;aACnB,CAAC,CAAC;SACJ;QAED,OAAO,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,EAAC,CAAC,CAAC,EAAE,IAAI,EAAE,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/E,CAAC,CAAA,CAAC;IAEF,MAAM,yBAAyB,GAAG,CAAO,MAAc,EAAiB,EAAE;QACxE,IAAI,CAAC,IAAI,EAAE;YACT,OAAO;SACR;QACD,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,SAAS,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;SAC/C;QAED,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAClE,CAAC,WAAW,EAAE,EAAE,CAAC,6BAA6B,CAAC,WAAW,CAAC,UAAU,CAAC,KAAK,MAAM,CAClF,CAAC;QAEF,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;YAC7C,OAAO;SACR;QAED,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,KAAK,OAAO,CAAC,CAAC;QAC7G,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,IAAI,CACpE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,KAAK,eAAe,CAC7C,CAAC;QAEF,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,IAAI,EAAE;YAC/C,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;SAC5E;QAED,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,IAAI,EAAE;YAC/C,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;SAC5E;IACH,CAAC,CAAA,CAAC;IAEF,MAAM,wBAAwB,GAAG,GAAwB,EAAE;QACzD,8FAA8F;QAC9F,MAAM,SAAS,GAAG,IAAI,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAG,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,KAAK,OAAO,CAAC,CAAC;QAClG,IAAI,IAAI,IAAI,SAAS,IAAI,WAAW,EAAE;YACpC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;SACzD;QAED,sGAAsG;QACtG,wDAAwD;QACxD,mGAAmG;QACnG,MAAM,2BAA2B,CAAC,UAAU,CAAC,CAAC;IAChD,CAAC,CAAA,CAAC;IAEF,0CAA0C,CAAC,6CAA6C;IACxF,MAAM,cAAc,GAAG,CAAO,QAAkB,EAAiB,EAAE,kDAAC,OAAA,MAAM,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,QAAQ,CAAC,CAAA,CAAA,GAAA,CAAC;IAEnG,MAAM,cAAc,GAAG,GAAQ,EAAE;QAC/B,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACnF,CAAC,CAAC;IAEF,iDAAiD;IACjD,MAAM,mBAAmB,GAAG,CAAO,SAAgC,EAAiB,EAAE;QACpF,IAAI,aAAa,EAAE;YACjB,MAAM,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,mBAAmB,CAAC,SAAS,CAAC,CAAA,CAAC;SACrD;IACH,CAAC,CAAA,CAAC;IAEF,OAAO;QACL,QAAQ;QACR,6CAA6C;QAC7C,YAAY;QACZ,cAAc;QACd,kBAAkB;QAClB,eAAe;QACf,kBAAkB;QAClB,iBAAiB;QACjB,cAAc;QACd,kBAAkB;QAClB,mBAAmB;QACnB,uBAAuB;QACvB,wBAAwB;QACxB,iBAAiB;QACjB,yBAAyB;QACzB,wBAAwB;QACxB,6CAA6C;QAC7C,gBAAgB,EAAE,cAAc;QAChC,mBAAmB,EAAE,cAAc;QACnC,WAAW,EAAE,cAAc;QAC3B,0CAA0C,CAAC,6CAA6C,CAAC,cAAc;QACvG,iDAAiD;QACjD,mBAAmB;KACpB,CAAC;AACJ,CAAC,CACF,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n AudioDeviceInfo,\n Call,\n LocalVideoStream,\n StartCallOptions,\n VideoDeviceInfo\n} from '@azure/communication-calling';\n/* @conditional-compile-remove(dialpad) */ /* @conditional-compile-remove(PSTN-calls) */\nimport { DtmfTone, 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';\nimport { CommunicationUserIdentifier, PhoneNumberIdentifier, UnknownIdentifier } from '@azure/communication-common';\n/* @conditional-compile-remove(PSTN-calls) */\nimport { CommunicationIdentifier } from '@azure/communication-common';\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 /* @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: (\n userId: string,\n options?: VideoStreamOptions\n ) => Promise<void | CreateVideoStreamViewResult>;\n onDisposeRemoteStreamView: (userId: string) => Promise<void>;\n onDisposeLocalStreamView: () => Promise<void>;\n /* @conditional-compile-remove(dialpad) */ /* @conditional-compile-remove(PSTN-calls) */\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: (\n participants: (CommunicationUserIdentifier | PhoneNumberIdentifier | UnknownIdentifier)[],\n options?: StartCallOptions\n ) => void;\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 * Create the common implementation of {@link CallingHandlers} for all types of Call\n *\n * @private\n */\nexport const createDefaultCommonCallingHandlers = memoizeOne(\n (\n callClient: StatefulCallClient,\n deviceManager: StatefulDeviceManager | undefined,\n call: Call | /* @conditional-compile-remove(teams-identity-support) */ TeamsCall | undefined\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\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\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 await callClient.disposeView(callId, undefined, {\n source: stream.source,\n mediaStreamType: stream.mediaStreamType\n });\n }\n };\n\n const onToggleCamera = async (options?: VideoStreamOptions): Promise<void> => {\n const previewOn = _isPreviewOn(callClient.getState().deviceManager);\n\n if (previewOn && call && call.state === 'Connecting') {\n // This 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 await onDisposeLocalStreamView();\n return;\n }\n\n if (call && (_isInCall(call.state) || _isInLobbyOrConnecting(call.state))) {\n const stream = call.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video');\n if (stream) {\n await onStopLocalVideo(stream);\n } else {\n await onStartLocalVideo();\n }\n } else {\n const selectedCamera = callClient.getState().deviceManager.selectedCamera;\n if (selectedCamera) {\n if (previewOn) {\n await onDisposeLocalStreamView();\n } else {\n await callClient.createView(\n undefined,\n undefined,\n {\n source: selectedCamera,\n mediaStreamType: 'Video'\n },\n options\n );\n }\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\n const onSelectSpeaker = async (device: AudioDeviceInfo): Promise<void> => {\n if (!deviceManager) {\n return;\n }\n return deviceManager.selectSpeaker(device);\n };\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 return stream?.switchSource(device);\n } else {\n const previewOn = _isPreviewOn(callClient.getState().deviceManager);\n\n if (!previewOn) {\n deviceManager.selectCamera(device);\n return;\n }\n\n await onDisposeLocalStreamView();\n\n deviceManager.selectCamera(device);\n await callClient.createView(\n undefined,\n undefined,\n {\n source: device,\n mediaStreamType: 'Video'\n },\n options\n );\n }\n };\n\n const onToggleMicrophone = async (): Promise<void> => {\n if (!call || !_isInCall(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\n const onStartScreenShare = async (): Promise<void> => await call?.startScreenSharing();\n\n const onStopScreenShare = async (): Promise<void> => await call?.stopScreenSharing();\n\n const onToggleScreenShare = async (): Promise<void> =>\n call?.isScreenSharingOn ? await onStopScreenShare() : await onStartScreenShare();\n\n const onHangUp = async (forEveryone?: boolean): Promise<void> =>\n await call?.hangUp({ forEveryone: forEveryone === true ? true : false });\n\n /* @conditional-compile-remove(PSTN-calls) */\n const onToggleHold = async (): Promise<void> =>\n call?.state === 'LocalHold' ? await call?.resume() : await call?.hold();\n\n const onCreateLocalStreamView = async (\n options = { scalingMode: 'Crop', isMirrored: true } as VideoStreamOptions\n ): Promise<void | CreateVideoStreamViewResult> => {\n if (!call || call.localVideoStreams.length === 0) {\n return;\n }\n\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n return;\n }\n\n const localStream = callState.localVideoStreams.find((item) => item.mediaStreamType === 'Video');\n if (!localStream) {\n return;\n }\n\n const { view } = (await callClient.createView(call.id, undefined, localStream, options)) ?? {};\n return view ? { view } : undefined;\n };\n\n const onCreateRemoteStreamView = async (\n userId: string,\n options = { scalingMode: 'Crop' } as VideoStreamOptions\n ): 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\n const participant = Object.values(callState.remoteParticipants).find(\n (participant) => toFlatCommunicationIdentifier(participant.identifier) === userId\n );\n\n if (!participant || !participant.videoStreams) {\n return;\n }\n\n const remoteVideoStream = Object.values(participant.videoStreams).find((i) => i.mediaStreamType === 'Video');\n const screenShareStream = Object.values(participant.videoStreams).find(\n (i) => i.mediaStreamType === 'ScreenSharing'\n );\n\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\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\n return createViewResult?.view ? { view: createViewResult?.view } : undefined;\n };\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\n const participant = Object.values(callState.remoteParticipants).find(\n (participant) => toFlatCommunicationIdentifier(participant.identifier) === userId\n );\n\n if (!participant || !participant.videoStreams) {\n return;\n }\n\n const remoteVideoStream = Object.values(participant.videoStreams).find((i) => i.mediaStreamType === 'Video');\n const screenShareStream = Object.values(participant.videoStreams).find(\n (i) => i.mediaStreamType === 'ScreenSharing'\n );\n\n if (remoteVideoStream && remoteVideoStream.view) {\n callClient.disposeView(call.id, participant.identifier, remoteVideoStream);\n }\n\n if (screenShareStream && screenShareStream.view) {\n callClient.disposeView(call.id, participant.identifier, screenShareStream);\n }\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\n /* @conditional-compile-remove(dialpad) */ /* @conditional-compile-remove(PSTN-calls) */\n const onSendDtmfTone = async (dtmfTone: DtmfTone): Promise<void> => await call?.sendDtmf(dtmfTone);\n\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\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 /* @conditional-compile-remove(PSTN-calls) */\n onAddParticipant: notImplemented,\n onRemoveParticipant: notImplemented,\n onStartCall: notImplemented,\n /* @conditional-compile-remove(dialpad) */ /* @conditional-compile-remove(PSTN-calls) */ onSendDtmfTone,\n /* @conditional-compile-remove(call-readiness) */\n askDevicePermission\n };\n }\n);\n\"../../../acs-ui-common/src\"\"../../../calling-stateful-client/src\"\"../../../react-components/src\""]}
@@ -1,4 +1,10 @@
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";
1
5
  import { _isACSCall, _isACSCallAgent } from "../../../calling-stateful-client/src";
6
+ /* @conditional-compile-remove(teams-identity-support) */
7
+ import { createDefaultTeamsCallingHandlers } from './createTeamsCallHandlers';
2
8
  import { createDefaultCallingHandlers } from './createHandlers';
3
9
  /**
4
10
  * Create a set of default handlers for given component. Memoization is applied to the result. Multiple invocations with
@@ -18,7 +24,11 @@ export const createDefaultCallingHandlersForComponent = (callClient, callAgent,
18
24
  if (!callAgent && !call && !deviceManager) {
19
25
  return createDefaultCallingHandlers(callClient, callAgent, deviceManager, call);
20
26
  }
21
- if (callAgent && _isACSCallAgent(callAgent) && (!call || call && _isACSCall(call))) {
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
+ if (callAgent && _isACSCallAgent(callAgent) && (!call || (call && _isACSCall(call)))) {
22
32
  return createDefaultCallingHandlers(callClient, callAgent, deviceManager, call);
23
33
  }
24
34
  throw new Error('CallAgent type and Call type are not compatible!');
@@ -1 +1 @@
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;QACzC,OAAO,4BAA4B,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;KACjF;IACD,IAAI,SAAS,IAAI,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE;QAClF,OAAO,4BAA4B,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;KACjF;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};\"../../../acs-ui-common/src\"\"../../../calling-stateful-client/src\""]}
1
+ {"version":3,"file":"createDefaultCallingHandlersForComponent.js","sourceRoot":"","sources":["../../../../../../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,EAKL,UAAU,EACV,eAAe,EAChB,6CAA0C;AAE3C,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,CACtD,UAA8B,EAC9B,SAAsC,EACtC,aAAgD,EAChD,IAA4B,EAC5B,UAAiD,EACX,EAAE;IACxC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE;QACzC,OAAO,4BAA4B,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;KACjF;IACD,yDAAyD;IACzD,IAAI,SAAS,IAAI,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;QACxF,OAAO,iCAAiC,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;KACtF;IACD,IAAI,SAAS,IAAI,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;QACpF,OAAO,4BAA4B,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;KACjF;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 {\n StatefulCallClient,\n StatefulDeviceManager,\n CallAgentCommon,\n CallCommon,\n _isACSCall,\n _isACSCallAgent\n} 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>(\n callClient: StatefulCallClient,\n callAgent: CallAgentCommon | undefined,\n deviceManager: StatefulDeviceManager | undefined,\n call: CallCommon | undefined,\n _Component: (props: Props) => ReactElement | null\n): 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};\n\"../../../calling-stateful-client/src\"\"../../../acs-ui-common/src\""]}
@@ -9,6 +9,8 @@ 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';
12
14
  import { _toCommunicationIdentifier } from "../../../acs-ui-common/src";
13
15
  import memoizeOne from 'memoize-one';
14
16
  import { isACSCallParticipants } from '../utils/callUtils';
@@ -29,7 +31,17 @@ export const createDefaultCallingHandlers = memoizeOne((callClient, callAgent, d
29
31
  throw new Error('TeamsUserIdentifier in Teams call is not supported!');
30
32
  }
31
33
  return callAgent ? callAgent.startCall(participants, options) : undefined;
32
- }, onRemoveParticipant: (userId) => __awaiter(void 0, void 0, void 0, function* () {
34
+ },
35
+ /* @conditional-compile-remove(PSTN-calls) */
36
+ onAddParticipant: (userId, options) => __awaiter(void 0, void 0, void 0, function* () {
37
+ const participant = _toCommunicationIdentifier(userId);
38
+ if (isPhoneNumberIdentifier(participant)) {
39
+ call === null || call === void 0 ? void 0 : call.addParticipant(participant, options);
40
+ }
41
+ else if (isCommunicationUserIdentifier(participant) || isMicrosoftTeamsUserIdentifier(participant)) {
42
+ call === null || call === void 0 ? void 0 : call.addParticipant(participant);
43
+ }
44
+ }), onRemoveParticipant: (userId) => __awaiter(void 0, void 0, void 0, function* () {
33
45
  const participant = _toCommunicationIdentifier(userId);
34
46
  yield (call === null || call === void 0 ? void 0 : call.removeParticipant(participant));
35
47
  }) });
@@ -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;;;;;;;;;;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;AAcnG;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,UAAU,CAAC,CAAC,UAA8B,EAAE,SAAgC,EAAE,aAAgD,EAAE,IAAsB,EAAmB,EAAE;IACrN,uCACK,kCAAkC,CAAC,UAAU,EAAE,aAAa,EAAE,IAAI,CAAC;QACtE,0EAA0E;QAC1E,WAAW,EAAE,CAAC,YAAuC,EAAE,OAA0B,EAAoB,EAAE;YACrG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,EAAE;gBACxC,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;aACxE;YACD,OAAO,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,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';\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 * 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 = memoizeOne((callClient: StatefulCallClient, callAgent: CallAgent | undefined, deviceManager: StatefulDeviceManager | undefined, call: Call | undefined): CallingHandlers => {\n return {\n ...createDefaultCommonCallingHandlers(callClient, deviceManager, call),\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 ? callAgent.startCall(participants, options) : undefined;\n },\n onRemoveParticipant: async (userId: string): Promise<void> => {\n const participant = _toCommunicationIdentifier(userId);\n await call?.removeParticipant(participant);\n }\n };\n});\"../../../acs-ui-common/src\"\"../../../calling-stateful-client/src\""]}
1
+ {"version":3,"file":"createHandlers.js","sourceRoot":"","sources":["../../../../../../calling-component-bindings/src/handlers/createHandlers.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;AAMlC,6CAA6C;AAC7C,OAAO,EACL,6BAA6B,EAC7B,8BAA8B,EAC9B,uBAAuB,EACxB,MAAM,6BAA6B,CAAC;AAGrC,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;AAcnG;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,UAAU,CACpD,CACE,UAA8B,EAC9B,SAAgC,EAChC,aAAgD,EAChD,IAAsB,EACL,EAAE;IACnB,uCACK,kCAAkC,CAAC,UAAU,EAAE,aAAa,EAAE,IAAI,CAAC;QACtE,0EAA0E;QAC1E,WAAW,EAAE,CAAC,YAAuC,EAAE,OAA0B,EAAoB,EAAE;YACrG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,EAAE;gBACxC,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;aACxE;YACD,OAAO,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,CAAC;QACD,6CAA6C;QAC7C,gBAAgB,EAAE,CAChB,MAAwC,EACxC,OAA+B,EAChB,EAAE;YACjB,MAAM,WAAW,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;YACvD,IAAI,uBAAuB,CAAC,WAAW,CAAC,EAAE;gBACxC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;aAC5C;iBAAM,IAAI,6BAA6B,CAAC,WAAW,CAAC,IAAI,8BAA8B,CAAC,WAAW,CAAC,EAAE;gBACpG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,cAAc,CAAC,WAAW,CAAC,CAAC;aACnC;QACH,CAAC,CAAA,EACD,mBAAmB,EAAE,CACnB,MAAsF,EACvE,EAAE;YACjB,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,CACF,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(dialpad) */ /* @conditional-compile-remove(PSTN-calls) */\n/* @conditional-compile-remove(PSTN-calls) */\nimport { AddPhoneNumberOptions } from '@azure/communication-calling';\n/* @conditional-compile-remove(PSTN-calls) */\nimport {\n isCommunicationUserIdentifier,\n isMicrosoftTeamsUserIdentifier,\n isPhoneNumberIdentifier\n} from '@azure/communication-common';\nimport { CommunicationIdentifier } from '@azure/communication-common';\n\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';\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 * 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 = memoizeOne(\n (\n callClient: StatefulCallClient,\n callAgent: CallAgent | undefined,\n deviceManager: StatefulDeviceManager | undefined,\n call: Call | undefined\n ): CallingHandlers => {\n return {\n ...createDefaultCommonCallingHandlers(callClient, deviceManager, call),\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 ? callAgent.startCall(participants, options) : undefined;\n },\n /* @conditional-compile-remove(PSTN-calls) */\n onAddParticipant: async (\n userId: string | CommunicationIdentifier,\n options?: AddPhoneNumberOptions\n ): 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 (\n userId: string | /* @conditional-compile-remove(PSTN-calls) */ CommunicationIdentifier\n ): Promise<void> => {\n const participant = _toCommunicationIdentifier(userId);\n await call?.removeParticipant(participant);\n }\n };\n }\n);\n\"../../../acs-ui-common/src\"\"../../../calling-stateful-client/src\""]}
@@ -0,0 +1,43 @@
1
+ import { StartCallOptions } from '@azure/communication-calling';
2
+ import { TeamsCall, TeamsCallAgent } from '@azure/communication-calling';
3
+ import { CommunicationIdentifier } from '@azure/communication-common';
4
+ import { Common } from "../../../acs-ui-common/src";
5
+ import { StatefulCallClient, StatefulDeviceManager } from "../../../calling-stateful-client/src";
6
+ import { ReactElement } from 'react';
7
+ import { CommonCallingHandlers } from './createCommonHandlers';
8
+ /**
9
+ * Object containing all the teams call handlers required for calling components.
10
+ *
11
+ * Calling related components from this package are able to pick out relevant handlers from this object.
12
+ * See {@link useHandlers} and {@link usePropsFor}.
13
+ *
14
+ * @beta
15
+ */
16
+ export interface TeamsCallingHandlers extends CommonCallingHandlers {
17
+ onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => undefined | /* @conditional-compile-remove(teams-identity-support) */ TeamsCall;
18
+ }
19
+ /**
20
+ * Create the default implementation of {@link TeamsCallingHandlers} for teams call.
21
+ *
22
+ * Useful when implementing a custom component that utilizes the providers
23
+ * exported from this library.
24
+ *
25
+ * @beta
26
+ */
27
+ export declare const createDefaultTeamsCallingHandlers: (callClient: StatefulCallClient, callAgent: undefined | /* @conditional-compile-remove(teams-identity-support) */ TeamsCallAgent, deviceManager: StatefulDeviceManager | undefined, call: undefined | /* @conditional-compile-remove(teams-identity-support) */ TeamsCall) => never | TeamsCallingHandlers;
28
+ /**
29
+ * Create a set of default handlers for given component. Memoization is applied to the result. Multiple invocations with
30
+ * the same arguments will return the same handler instances. DeclarativeCallAgent, DeclarativeDeviceManager, and
31
+ * DeclarativeCall may be undefined. If undefined, their associated handlers will not be created and returned.
32
+ *
33
+ * @param callClient - StatefulCallClient returned from
34
+ * {@link @azure/communication-react#createStatefulCallClient}.
35
+ * @param callAgent - Instance of {@link @azure/communication-calling#TeamsCallClient}.
36
+ * @param deviceManager - Instance of {@link @azure/communication-calling#DeviceManager}.
37
+ * @param call - Instance of {@link @azure/communication-calling#TeamsCall}.
38
+ * @param _ - React component that you want to generate handlers for.
39
+ *
40
+ * @beta
41
+ */
42
+ export declare const createTeamsCallingHandlersForComponent: <Props>(callClient: StatefulCallClient, callAgent: undefined | /* @conditional-compile-remove(teams-identity-support) */ TeamsCallAgent, deviceManager: StatefulDeviceManager | undefined, call: undefined | /* @conditional-compile-remove(teams-identity-support) */ TeamsCall, _Component: (props: Props) => ReactElement | null) => Common<TeamsCallingHandlers, Props>;
43
+ //# sourceMappingURL=createTeamsCallHandlers.d.ts.map
@@ -0,0 +1,81 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT license.
3
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
4
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
5
+ return new (P || (P = Promise))(function (resolve, reject) {
6
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
8
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
9
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
10
+ });
11
+ };
12
+ import { isCommunicationUserIdentifier } from '@azure/communication-common';
13
+ /* @conditional-compile-remove(teams-identity-support) */
14
+ import { isPhoneNumberIdentifier } from '@azure/communication-common';
15
+ import { _toCommunicationIdentifier } from "../../../acs-ui-common/src";
16
+ import memoizeOne from 'memoize-one';
17
+ import { isTeamsCallParticipants } from '../utils/callUtils';
18
+ import { createDefaultCommonCallingHandlers } from './createCommonHandlers';
19
+ /**
20
+ * Create the default implementation of {@link TeamsCallingHandlers} for teams call.
21
+ *
22
+ * Useful when implementing a custom component that utilizes the providers
23
+ * exported from this library.
24
+ *
25
+ * @beta
26
+ */
27
+ export const createDefaultTeamsCallingHandlers = memoizeOne((callClient, callAgent, deviceManager, call) => {
28
+ return Object.assign(Object.assign({}, createDefaultCommonCallingHandlers(callClient, deviceManager, call)), { onStartCall: (participants, options) => {
29
+ /* @conditional-compile-remove(teams-identity-support) */
30
+ const threadId = options === null || options === void 0 ? void 0 : options.threadId;
31
+ if (!isTeamsCallParticipants(participants)) {
32
+ throw new Error('CommunicationIdentifier in Teams call is not supported!');
33
+ }
34
+ /* @conditional-compile-remove(teams-identity-support) */
35
+ if (callAgent) {
36
+ return callAgent.startCall(participants, threadId ? { threadId } : undefined);
37
+ }
38
+ return undefined;
39
+ },
40
+ /* @conditional-compile-remove(teams-identity-support) */
41
+ /* @conditional-compile-remove(PSTN-calls) */
42
+ onAddParticipant: (userId, options) => __awaiter(void 0, void 0, void 0, function* () {
43
+ const participant = _toCommunicationIdentifier(userId);
44
+ /* @conditional-compile-remove(teams-identity-support) */
45
+ const threadId = options === null || options === void 0 ? void 0 : options.threadId;
46
+ if (isCommunicationUserIdentifier(participant)) {
47
+ throw new Error('CommunicationIdentifier in Teams call is not supported!');
48
+ }
49
+ /* @conditional-compile-remove(teams-identity-support) */
50
+ if (isPhoneNumberIdentifier(participant)) {
51
+ call === null || call === void 0 ? void 0 : call.addParticipant(participant, threadId ? { threadId } : undefined);
52
+ }
53
+ /* @conditional-compile-remove(teams-identity-support) */
54
+ call === null || call === void 0 ? void 0 : call.addParticipant(participant);
55
+ }), onRemoveParticipant: (userId) => __awaiter(void 0, void 0, void 0, function* () {
56
+ const participant = _toCommunicationIdentifier(userId);
57
+ if (isCommunicationUserIdentifier(participant)) {
58
+ throw new Error('CommunicationIdentifier in Teams call is not supported!');
59
+ }
60
+ /* @conditional-compile-remove(teams-identity-support) */
61
+ yield (call === null || call === void 0 ? void 0 : call.removeParticipant(participant));
62
+ }) });
63
+ });
64
+ /**
65
+ * Create a set of default handlers for given component. Memoization is applied to the result. Multiple invocations with
66
+ * the same arguments will return the same handler instances. DeclarativeCallAgent, DeclarativeDeviceManager, and
67
+ * DeclarativeCall may be undefined. If undefined, their associated handlers will not be created and returned.
68
+ *
69
+ * @param callClient - StatefulCallClient returned from
70
+ * {@link @azure/communication-react#createStatefulCallClient}.
71
+ * @param callAgent - Instance of {@link @azure/communication-calling#TeamsCallClient}.
72
+ * @param deviceManager - Instance of {@link @azure/communication-calling#DeviceManager}.
73
+ * @param call - Instance of {@link @azure/communication-calling#TeamsCall}.
74
+ * @param _ - React component that you want to generate handlers for.
75
+ *
76
+ * @beta
77
+ */
78
+ export const createTeamsCallingHandlersForComponent = (callClient, callAgent, deviceManager, call, _Component) => {
79
+ return createDefaultTeamsCallingHandlers(callClient, callAgent, deviceManager, call);
80
+ };
81
+ //# sourceMappingURL=createTeamsCallHandlers.js.map