@azure/communication-react 1.5.2-alpha-202301190014.0 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1026) hide show
  1. package/README.md +3 -4
  2. package/dist/communication-react.d.ts +267 -2071
  3. package/dist/dist-cjs/communication-react/index.js +9461 -12549
  4. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  5. package/dist/dist-esm/acs-ui-common/src/MessageStatus.js.map +1 -1
  6. package/dist/dist-esm/acs-ui-common/src/areEqual.js.map +1 -1
  7. package/dist/dist-esm/acs-ui-common/src/common.js.map +1 -1
  8. package/dist/dist-esm/acs-ui-common/src/commonProperties.js.map +1 -1
  9. package/dist/dist-esm/acs-ui-common/src/constants.js.map +1 -1
  10. package/dist/dist-esm/acs-ui-common/src/cssUtils.js.map +1 -1
  11. package/dist/dist-esm/acs-ui-common/src/identifier.d.ts +6 -0
  12. package/dist/dist-esm/acs-ui-common/src/identifier.js +12 -2
  13. package/dist/dist-esm/acs-ui-common/src/identifier.js.map +1 -1
  14. package/dist/dist-esm/acs-ui-common/src/index.d.ts +1 -1
  15. package/dist/dist-esm/acs-ui-common/src/index.js +1 -1
  16. package/dist/dist-esm/acs-ui-common/src/index.js.map +1 -1
  17. package/dist/dist-esm/acs-ui-common/src/localizationUtils.js.map +1 -1
  18. package/dist/dist-esm/acs-ui-common/src/logEvent.js.map +1 -1
  19. package/dist/dist-esm/acs-ui-common/src/memoizeFnAll.js.map +1 -1
  20. package/dist/dist-esm/acs-ui-common/src/safeStringify.js.map +1 -1
  21. package/dist/dist-esm/acs-ui-common/src/telemetry.js.map +1 -1
  22. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  23. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  24. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.d.ts +3 -11
  25. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +4 -12
  26. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  27. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.d.ts +0 -13
  28. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +5 -20
  29. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
  30. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js +86 -30
  31. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js.map +1 -1
  32. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.d.ts +9 -11
  33. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +32 -39
  34. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
  35. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js +1 -11
  36. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js.map +1 -1
  37. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js +2 -14
  38. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js.map +1 -1
  39. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.d.ts +1 -1
  40. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.js.map +1 -1
  41. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.d.ts +1 -4
  42. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js +0 -22
  43. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  44. package/dist/dist-esm/calling-component-bindings/src/hooks/useSelector.js.map +1 -1
  45. package/dist/dist-esm/calling-component-bindings/src/index.d.ts +0 -6
  46. package/dist/dist-esm/calling-component-bindings/src/index.js +0 -8
  47. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  48. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +11 -24
  49. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
  50. package/dist/dist-esm/calling-component-bindings/src/participantsButtonSelector.js.map +1 -1
  51. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.d.ts +3 -4
  52. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.js.map +1 -1
  53. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js +3 -6
  54. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js.map +1 -1
  55. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.d.ts +2 -14
  56. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js +1 -20
  57. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js.map +1 -1
  58. package/dist/dist-esm/calling-component-bindings/src/providers/index.js.map +1 -1
  59. package/dist/dist-esm/calling-component-bindings/src/utils/SelectorUtils.js.map +1 -1
  60. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.d.ts +0 -7
  61. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js +7 -21
  62. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js.map +1 -1
  63. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.d.ts +0 -5
  64. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js +0 -11
  65. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js.map +1 -1
  66. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +15 -33
  67. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  68. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js +5 -21
  69. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
  70. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.d.ts +5 -6
  71. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.js.map +1 -1
  72. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.d.ts +1 -15
  73. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
  74. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.d.ts +1 -2
  75. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js +67 -62
  76. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js.map +1 -1
  77. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +1 -27
  78. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  79. package/dist/dist-esm/calling-stateful-client/src/CallContext.d.ts +12 -7
  80. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +18 -56
  81. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  82. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js +8 -7
  83. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js.map +1 -1
  84. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js +71 -56
  85. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js.map +1 -1
  86. package/dist/dist-esm/calling-stateful-client/src/CallIdHistory.js.map +1 -1
  87. package/dist/dist-esm/calling-stateful-client/src/CallIdRef.js.map +1 -1
  88. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.d.ts +0 -1
  89. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +3 -9
  90. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  91. package/dist/dist-esm/calling-stateful-client/src/Converter.js +8 -13
  92. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  93. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.d.ts +4 -1
  94. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js +60 -52
  95. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js.map +1 -1
  96. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js +16 -14
  97. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js.map +1 -1
  98. package/dist/dist-esm/calling-stateful-client/src/IncomingCallSubscriber.js.map +1 -1
  99. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.d.ts +3 -0
  100. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js +21 -3
  101. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js.map +1 -1
  102. package/dist/dist-esm/calling-stateful-client/src/Logger.d.ts +16 -27
  103. package/dist/dist-esm/calling-stateful-client/src/Logger.js +16 -27
  104. package/dist/dist-esm/calling-stateful-client/src/Logger.js.map +1 -1
  105. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.d.ts +0 -1
  106. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js +0 -8
  107. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js.map +1 -1
  108. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js.map +1 -1
  109. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.d.ts +0 -1
  110. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js +0 -8
  111. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js.map +1 -1
  112. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts +1 -25
  113. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js +40 -69
  114. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
  115. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js +133 -328
  116. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js.map +1 -1
  117. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.d.ts +17 -0
  118. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js +201 -0
  119. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js.map +1 -0
  120. package/dist/dist-esm/calling-stateful-client/src/TranscriptionSubscriber.js.map +1 -1
  121. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.d.ts +2 -2
  122. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js +0 -8
  123. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js.map +1 -1
  124. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js +3 -3
  125. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js.map +1 -1
  126. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js +7 -6
  127. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js.map +1 -1
  128. package/dist/dist-esm/calling-stateful-client/src/index-public.d.ts +0 -2
  129. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  130. package/dist/dist-esm/calling-stateful-client/src/index.js.map +1 -1
  131. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js +4 -4
  132. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js.map +1 -1
  133. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js +3 -3
  134. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js.map +1 -1
  135. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js +14 -13
  136. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js.map +1 -1
  137. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.d.ts +1 -4
  138. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js +10 -3
  139. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js.map +1 -1
  140. package/dist/dist-esm/chat-component-bindings/src/hooks/useHandlers.js.map +1 -1
  141. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  142. package/dist/dist-esm/chat-component-bindings/src/hooks/useSelector.js.map +1 -1
  143. package/dist/dist-esm/chat-component-bindings/src/index.js.map +1 -1
  144. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +16 -44
  145. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
  146. package/dist/dist-esm/chat-component-bindings/src/providers/ChatClientProvider.js.map +1 -1
  147. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js +1 -1
  148. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js.map +1 -1
  149. package/dist/dist-esm/chat-component-bindings/src/sendBoxSelector.js.map +1 -1
  150. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js +7 -3
  151. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js.map +1 -1
  152. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js +1 -3
  153. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js.map +1 -1
  154. package/dist/dist-esm/chat-component-bindings/src/utils/constants.d.ts +4 -0
  155. package/dist/dist-esm/chat-component-bindings/src/utils/constants.js +4 -0
  156. package/dist/dist-esm/chat-component-bindings/src/utils/constants.js.map +1 -1
  157. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js +25 -26
  158. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js.map +1 -1
  159. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js.map +1 -1
  160. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js +9 -5
  161. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js.map +1 -1
  162. package/dist/dist-esm/chat-stateful-client/src/Constants.js.map +1 -1
  163. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js +22 -9
  164. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js.map +1 -1
  165. package/dist/dist-esm/chat-stateful-client/src/Logger.js.map +1 -1
  166. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js +67 -57
  167. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js.map +1 -1
  168. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js +127 -113
  169. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js.map +1 -1
  170. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js.map +1 -1
  171. package/dist/dist-esm/chat-stateful-client/src/index.js.map +1 -1
  172. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedIterator.js.map +1 -1
  173. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListMessages.js.map +1 -1
  174. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListParticipants.js.map +1 -1
  175. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListReadReceipts.js.map +1 -1
  176. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListThreads.js.map +1 -1
  177. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.js.map +1 -1
  178. package/dist/dist-esm/communication-react/src/index.d.ts +1 -22
  179. package/dist/dist-esm/communication-react/src/index.js +0 -14
  180. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  181. package/dist/dist-esm/communication-react/src/mergedHooks.js.map +1 -1
  182. package/dist/dist-esm/northstar-wrapper/src/index.js +2 -0
  183. package/dist/dist-esm/northstar-wrapper/src/index.js.LICENSE.txt +41 -0
  184. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.d.ts +20 -0
  185. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js +47 -0
  186. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js.map +1 -0
  187. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerContext.d.ts +10 -0
  188. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerContext.js +14 -0
  189. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerContext.js.map +1 -0
  190. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerMessage.d.ts +10 -0
  191. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerMessage.js +29 -0
  192. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerMessage.js.map +1 -0
  193. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.d.ts +7 -0
  194. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js +32 -0
  195. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js.map +1 -0
  196. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.d.ts +9 -0
  197. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js +10 -0
  198. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js.map +1 -0
  199. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.d.ts +8 -0
  200. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js +19 -0
  201. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js.map +1 -0
  202. package/dist/dist-esm/react-components/src/components/Announcer.js.map +1 -1
  203. package/dist/dist-esm/react-components/src/components/CameraButton.d.ts +12 -0
  204. package/dist/dist-esm/react-components/src/components/CameraButton.js +33 -7
  205. package/dist/dist-esm/react-components/src/components/CameraButton.js.map +1 -1
  206. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.d.ts +1 -1
  207. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js +9 -8
  208. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js.map +1 -1
  209. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js +28 -38
  210. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js.map +1 -1
  211. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.d.ts +12 -3
  212. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js +16 -21
  213. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js.map +1 -1
  214. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.d.ts +1 -1
  215. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js +49 -31
  216. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js.map +1 -1
  217. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.d.ts +1 -2
  218. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js +37 -58
  219. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js.map +1 -1
  220. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.d.ts +2 -2
  221. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +42 -13
  222. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
  223. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js +18 -18
  224. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js.map +1 -1
  225. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js +4 -7
  226. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js.map +1 -1
  227. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js +2 -2
  228. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js.map +1 -1
  229. package/dist/dist-esm/react-components/src/components/ComplianceBanner/Utils.js.map +1 -1
  230. package/dist/dist-esm/react-components/src/components/ComplianceBanner/index.js.map +1 -1
  231. package/dist/dist-esm/react-components/src/components/ComplianceBanner/types.js.map +1 -1
  232. package/dist/dist-esm/react-components/src/components/ControlBar.js +14 -10
  233. package/dist/dist-esm/react-components/src/components/ControlBar.js.map +1 -1
  234. package/dist/dist-esm/react-components/src/components/ControlBarButton.js +4 -14
  235. package/dist/dist-esm/react-components/src/components/ControlBarButton.js.map +1 -1
  236. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js +14 -3
  237. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js.map +1 -1
  238. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js +8 -5
  239. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js.map +1 -1
  240. package/dist/dist-esm/react-components/src/components/DevicesButton.d.ts +1 -1
  241. package/dist/dist-esm/react-components/src/components/DevicesButton.js +88 -59
  242. package/dist/dist-esm/react-components/src/components/DevicesButton.js.map +1 -1
  243. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +44 -42
  244. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
  245. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js +4 -4
  246. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js.map +1 -1
  247. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js +6 -2
  248. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js.map +1 -1
  249. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.d.ts +5 -0
  250. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js +6 -6
  251. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js.map +1 -1
  252. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.d.ts +2 -0
  253. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js +24 -11
  254. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js.map +1 -1
  255. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.d.ts +5 -0
  256. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js +23 -7
  257. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js.map +1 -1
  258. package/dist/dist-esm/react-components/src/components/Drawer/index.js.map +1 -1
  259. package/dist/dist-esm/react-components/src/components/EndCallButton.js +7 -3
  260. package/dist/dist-esm/react-components/src/components/EndCallButton.js.map +1 -1
  261. package/dist/dist-esm/react-components/src/components/ErrorBar.d.ts +4 -0
  262. package/dist/dist-esm/react-components/src/components/ErrorBar.js +5 -4
  263. package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
  264. package/dist/dist-esm/react-components/src/components/FileCard.js +8 -7
  265. package/dist/dist-esm/react-components/src/components/FileCard.js.map +1 -1
  266. package/dist/dist-esm/react-components/src/components/FileCardGroup.d.ts +1 -0
  267. package/dist/dist-esm/react-components/src/components/FileCardGroup.js +2 -2
  268. package/dist/dist-esm/react-components/src/components/FileCardGroup.js.map +1 -1
  269. package/dist/dist-esm/react-components/src/components/FileDownloadCards.d.ts +1 -0
  270. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js +22 -16
  271. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js.map +1 -1
  272. package/dist/dist-esm/react-components/src/components/FileUploadCards.js +8 -11
  273. package/dist/dist-esm/react-components/src/components/FileUploadCards.js.map +1 -1
  274. package/dist/dist-esm/react-components/src/components/GridLayout.js +37 -37
  275. package/dist/dist-esm/react-components/src/components/GridLayout.js.map +1 -1
  276. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js +2 -2
  277. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js.map +1 -1
  278. package/dist/dist-esm/react-components/src/components/HorizontalGallery.d.ts +4 -0
  279. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js +33 -26
  280. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js.map +1 -1
  281. package/dist/dist-esm/react-components/src/components/InputBoxComponent.d.ts +1 -1
  282. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js +47 -13
  283. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js.map +1 -1
  284. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js +5 -3
  285. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js.map +1 -1
  286. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js +9 -27
  287. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
  288. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js +40 -27
  289. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js.map +1 -1
  290. package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +24 -29
  291. package/dist/dist-esm/react-components/src/components/MessageThread.js +128 -171
  292. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  293. package/dist/dist-esm/react-components/src/components/MicrophoneButton.d.ts +12 -0
  294. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js +34 -9
  295. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js.map +1 -1
  296. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js +101 -94
  297. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js.map +1 -1
  298. package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts +0 -13
  299. package/dist/dist-esm/react-components/src/components/ParticipantItem.js +16 -17
  300. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  301. package/dist/dist-esm/react-components/src/components/ParticipantList.js +9 -25
  302. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  303. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js +33 -46
  304. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js.map +1 -1
  305. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js +3 -3
  306. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js.map +1 -1
  307. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js +3 -3
  308. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js.map +1 -1
  309. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.d.ts +1 -0
  310. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +12 -65
  311. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  312. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.d.ts +4 -2
  313. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js +6 -42
  314. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js.map +1 -1
  315. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js +22 -6
  316. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js.map +1 -1
  317. package/dist/dist-esm/react-components/src/components/SendBox.d.ts +0 -35
  318. package/dist/dist-esm/react-components/src/components/SendBox.js +24 -42
  319. package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
  320. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js +2 -2
  321. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js.map +1 -1
  322. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js.map +1 -1
  323. package/dist/dist-esm/react-components/src/components/StreamMedia.js +3 -3
  324. package/dist/dist-esm/react-components/src/components/StreamMedia.js.map +1 -1
  325. package/dist/dist-esm/react-components/src/components/SystemMessage.d.ts +1 -1
  326. package/dist/dist-esm/react-components/src/components/SystemMessage.js +4 -2
  327. package/dist/dist-esm/react-components/src/components/SystemMessage.js.map +1 -1
  328. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js +10 -10
  329. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js.map +1 -1
  330. package/dist/dist-esm/react-components/src/components/TypingIndicator.js +6 -9
  331. package/dist/dist-esm/react-components/src/components/TypingIndicator.js.map +1 -1
  332. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js +1 -3
  333. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js.map +1 -1
  334. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js +1 -3
  335. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js.map +1 -1
  336. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js +0 -20
  337. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js.map +1 -1
  338. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js +1 -3
  339. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js.map +1 -1
  340. package/dist/dist-esm/react-components/src/components/VerticalGallery.d.ts +67 -0
  341. package/dist/dist-esm/react-components/src/components/VerticalGallery.js +115 -0
  342. package/dist/dist-esm/react-components/src/components/VerticalGallery.js.map +1 -0
  343. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.d.ts +21 -0
  344. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js +63 -0
  345. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js.map +1 -0
  346. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.d.ts +75 -0
  347. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js +56 -0
  348. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js.map +1 -0
  349. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.d.ts +88 -0
  350. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js +39 -0
  351. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js.map +1 -0
  352. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.d.ts +11 -0
  353. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js +53 -0
  354. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js.map +1 -0
  355. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.d.ts +1 -1
  356. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js +30 -28
  357. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js.map +1 -1
  358. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.d.ts +10 -3
  359. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js +18 -16
  360. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js.map +1 -1
  361. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.d.ts +1 -1
  362. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js +45 -37
  363. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js.map +1 -1
  364. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.d.ts +5 -1
  365. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.js.map +1 -1
  366. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js +7 -7
  367. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js.map +1 -1
  368. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.d.ts +16 -0
  369. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js +23 -0
  370. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js.map +1 -0
  371. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js +6 -8
  372. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js.map +1 -1
  373. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js +6 -1
  374. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js.map +1 -1
  375. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.d.ts +32 -7
  376. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js +56 -15
  377. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js.map +1 -1
  378. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js +11 -2
  379. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js.map +1 -1
  380. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/Layout.styles.js.map +1 -1
  381. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/LocalScreenShare.styles.js.map +1 -1
  382. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteScreenShare.styles.js.map +1 -1
  383. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteVideoTile.styles.js.map +1 -1
  384. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.d.ts +4 -1
  385. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js +16 -14
  386. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js.map +1 -1
  387. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.d.ts +64 -0
  388. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js +85 -0
  389. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js.map +1 -0
  390. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js +5 -10
  391. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js.map +1 -1
  392. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.d.ts +5 -0
  393. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js +60 -30
  394. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js.map +1 -1
  395. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/OverflowGalleryUtils.d.ts +25 -0
  396. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/OverflowGalleryUtils.js +94 -0
  397. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/OverflowGalleryUtils.js.map +1 -0
  398. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.d.ts +4 -4
  399. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +39 -88
  400. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  401. package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts +11 -59
  402. package/dist/dist-esm/react-components/src/components/VideoGallery.js +27 -134
  403. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  404. package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +0 -22
  405. package/dist/dist-esm/react-components/src/components/VideoTile.js +47 -91
  406. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  407. package/dist/dist-esm/react-components/src/components/index.d.ts +7 -14
  408. package/dist/dist-esm/react-components/src/components/index.js +3 -8
  409. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  410. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.d.ts +10 -0
  411. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js +22 -3
  412. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js.map +1 -1
  413. package/dist/dist-esm/react-components/src/components/styles/ControlBar.styles.js.map +1 -1
  414. package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.js.map +1 -1
  415. package/dist/dist-esm/react-components/src/components/styles/EditBox.styles.js +6 -7
  416. package/dist/dist-esm/react-components/src/components/styles/EditBox.styles.js.map +1 -1
  417. package/dist/dist-esm/react-components/src/components/styles/GridLayout.styles.js.map +1 -1
  418. package/dist/dist-esm/react-components/src/components/styles/HorizontalGallery.styles.js +1 -0
  419. package/dist/dist-esm/react-components/src/components/styles/HorizontalGallery.styles.js.map +1 -1
  420. package/dist/dist-esm/react-components/src/components/styles/IconButton.styles.js.map +1 -1
  421. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.d.ts +3 -3
  422. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js +11 -12
  423. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js.map +1 -1
  424. package/dist/dist-esm/react-components/src/components/styles/MessageStatusIndicator.styles.js.map +1 -1
  425. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.d.ts +3 -3
  426. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js +43 -6
  427. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js.map +1 -1
  428. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js +1 -0
  429. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js.map +1 -1
  430. package/dist/dist-esm/react-components/src/components/styles/ParticipantList.styles.js +4 -1
  431. package/dist/dist-esm/react-components/src/components/styles/ParticipantList.styles.js.map +1 -1
  432. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.d.ts +0 -4
  433. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js +10 -8
  434. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js.map +1 -1
  435. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js +3 -0
  436. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js.map +1 -1
  437. package/dist/dist-esm/react-components/src/components/styles/SystemMessage.styles.js.map +1 -1
  438. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js +1 -0
  439. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js.map +1 -1
  440. package/dist/dist-esm/react-components/src/components/styles/TypingIndicator.styles.js.map +1 -1
  441. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.d.ts +32 -0
  442. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js +66 -0
  443. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js.map +1 -0
  444. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js +13 -2
  445. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js.map +1 -1
  446. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js +3 -1
  447. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js.map +1 -1
  448. package/dist/dist-esm/react-components/src/components/utils/Datetime.js.map +1 -1
  449. package/dist/dist-esm/react-components/src/components/utils/common.js +0 -4
  450. package/dist/dist-esm/react-components/src/components/utils/common.js.map +1 -1
  451. package/dist/dist-esm/react-components/src/components/utils/delay.js.map +1 -1
  452. package/dist/dist-esm/react-components/src/components/utils/formatPhoneNumber.js.map +1 -1
  453. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.d.ts +5 -4
  454. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js +7 -4
  455. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js.map +1 -1
  456. package/dist/dist-esm/react-components/src/components/utils/keyboardNavigation.js.map +1 -1
  457. package/dist/dist-esm/react-components/src/components/utils/overFlowGalleriesUtils.d.ts +11 -0
  458. package/dist/dist-esm/react-components/src/components/utils/overFlowGalleriesUtils.js +22 -0
  459. package/dist/dist-esm/react-components/src/components/utils/overFlowGalleriesUtils.js.map +1 -0
  460. package/dist/dist-esm/react-components/src/components/utils/responsive.d.ts +6 -0
  461. package/dist/dist-esm/react-components/src/components/utils/responsive.js +9 -2
  462. package/dist/dist-esm/react-components/src/components/utils/responsive.js.map +1 -1
  463. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js +1 -10
  464. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js.map +1 -1
  465. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js +3 -1
  466. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js.map +1 -1
  467. package/dist/dist-esm/react-components/src/components/utils.d.ts +23 -0
  468. package/dist/dist-esm/react-components/src/components/utils.js +58 -10
  469. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  470. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js +8 -18
  471. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js.map +1 -1
  472. package/dist/dist-esm/react-components/src/gallery/index.js.map +1 -1
  473. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.d.ts +6 -4
  474. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js +3 -2
  475. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js.map +1 -1
  476. package/dist/dist-esm/react-components/src/identifiers/index.js.map +1 -1
  477. package/dist/dist-esm/react-components/src/index.d.ts +1 -3
  478. package/dist/dist-esm/react-components/src/index.js +0 -2
  479. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  480. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +0 -54
  481. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  482. package/dist/dist-esm/react-components/src/localization/index.js.map +1 -1
  483. package/dist/dist-esm/react-components/src/localization/locales/ar-SA/strings.json +331 -0
  484. package/dist/dist-esm/react-components/src/localization/locales/de-DE/strings.json +125 -13
  485. package/dist/dist-esm/react-components/src/localization/locales/en-GB/strings.json +124 -12
  486. package/dist/dist-esm/react-components/src/localization/locales/en-US/strings.json +29 -6
  487. package/dist/dist-esm/react-components/src/localization/locales/es-ES/strings.json +124 -12
  488. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/strings.json +331 -0
  489. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/strings.json +125 -13
  490. package/dist/dist-esm/react-components/src/localization/locales/he-IL/strings.json +331 -0
  491. package/dist/dist-esm/react-components/src/localization/locales/index.d.ts +36 -0
  492. package/dist/dist-esm/react-components/src/localization/locales/index.js +96 -14
  493. package/dist/dist-esm/react-components/src/localization/locales/index.js.map +1 -1
  494. package/dist/dist-esm/react-components/src/localization/locales/it-IT/strings.json +124 -12
  495. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/strings.json +124 -12
  496. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/strings.json +124 -12
  497. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/strings.json +331 -0
  498. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/strings.json +124 -12
  499. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/strings.json +331 -0
  500. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/strings.json +125 -13
  501. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/strings.json +124 -12
  502. package/dist/dist-esm/react-components/src/localization/locales/sv-SE/strings.json +331 -0
  503. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/strings.json +125 -13
  504. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/strings.json +124 -12
  505. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/strings.json +124 -12
  506. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js +7 -4
  507. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js.map +1 -1
  508. package/dist/dist-esm/react-components/src/theming/icons.d.ts +4 -20
  509. package/dist/dist-esm/react-components/src/theming/icons.js +27 -124
  510. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  511. package/dist/dist-esm/react-components/src/theming/index.js.map +1 -1
  512. package/dist/dist-esm/react-components/src/theming/themeUtils.js.map +1 -1
  513. package/dist/dist-esm/react-components/src/theming/themes.js.map +1 -1
  514. package/dist/dist-esm/react-components/src/types/CaptionsAvailableLanguageStrings.d.ts +48 -0
  515. package/dist/dist-esm/react-components/src/{permissions/index.js → types/CaptionsAvailableLanguageStrings.js} +2 -2
  516. package/dist/dist-esm/react-components/src/types/CaptionsAvailableLanguageStrings.js.map +1 -0
  517. package/dist/dist-esm/react-components/src/types/ChatMessage.d.ts +1 -7
  518. package/dist/dist-esm/react-components/src/types/ChatMessage.js.map +1 -1
  519. package/dist/dist-esm/react-components/src/types/CommunicationParticipant.js.map +1 -1
  520. package/dist/dist-esm/react-components/src/types/ComponentSlotStyle.d.ts +9 -0
  521. package/dist/dist-esm/react-components/src/types/ComponentSlotStyle.js +4 -0
  522. package/dist/dist-esm/react-components/src/types/ComponentSlotStyle.js.map +1 -0
  523. package/dist/dist-esm/react-components/src/types/CustomStylesProps.js.map +1 -1
  524. package/dist/dist-esm/react-components/src/types/OnRender.d.ts +0 -8
  525. package/dist/dist-esm/react-components/src/types/OnRender.js.map +1 -1
  526. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.d.ts +0 -3
  527. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js +0 -2
  528. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js.map +1 -1
  529. package/dist/dist-esm/react-components/src/types/ReadReceiptsBySenderId.js.map +1 -1
  530. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.d.ts +0 -8
  531. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js +0 -2
  532. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
  533. package/dist/dist-esm/react-components/src/types/index.d.ts +2 -0
  534. package/dist/dist-esm/react-components/src/types/index.js +2 -0
  535. package/dist/dist-esm/react-components/src/types/index.js.map +1 -1
  536. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +12 -89
  537. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +52 -95
  538. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  539. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +4 -120
  540. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js +0 -2
  541. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  542. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +33 -76
  543. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +59 -251
  544. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  545. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +1 -102
  546. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js +1 -9
  547. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  548. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapterProvider.js.map +1 -1
  549. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/DiagnosticsForwarder.js.map +1 -1
  550. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.d.ts +23 -0
  551. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js +47 -0
  552. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js.map +1 -0
  553. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/ParticipantSubcriber.js.map +1 -1
  554. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.d.ts +2 -3
  555. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js +2 -8
  556. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js.map +1 -1
  557. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.d.ts +0 -5
  558. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js +0 -2
  559. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js.map +1 -1
  560. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.d.ts +4 -2
  561. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +90 -76
  562. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  563. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts +0 -2
  564. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +14 -132
  565. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  566. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.d.ts +0 -2
  567. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js +0 -21
  568. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js.map +1 -1
  569. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js +2 -20
  570. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js.map +1 -1
  571. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.d.ts +0 -2
  572. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js +0 -21
  573. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js.map +1 -1
  574. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js +4 -5
  575. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js.map +1 -1
  576. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js +2 -2
  577. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js.map +1 -1
  578. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js +22 -32
  579. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js.map +1 -1
  580. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.d.ts +0 -1
  581. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js +23 -66
  582. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
  583. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js +41 -19
  584. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js.map +1 -1
  585. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.d.ts +0 -2
  586. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +25 -25
  587. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  588. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js +2 -2
  589. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js.map +1 -1
  590. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js +3 -3
  591. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js.map +1 -1
  592. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.d.ts +14 -0
  593. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js +55 -0
  594. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js.map +1 -0
  595. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePaneProvider.d.ts +58 -0
  596. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePaneProvider.js +31 -0
  597. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePaneProvider.js.map +1 -0
  598. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.d.ts +17 -0
  599. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js +45 -0
  600. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js.map +1 -0
  601. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js +1 -1
  602. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js.map +1 -1
  603. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.d.ts +1 -1
  604. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js +1 -1
  605. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js.map +1 -1
  606. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.d.ts +2 -6
  607. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.js +9 -40
  608. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.js.map +1 -1
  609. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.d.ts +1 -1
  610. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js +5 -44
  611. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js.map +1 -1
  612. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.d.ts +1 -1
  613. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js +2 -5
  614. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js.map +1 -1
  615. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.d.ts +1 -1
  616. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js +6 -8
  617. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js.map +1 -1
  618. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.d.ts +1 -1
  619. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js +2 -5
  620. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js.map +1 -1
  621. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.d.ts +1 -1
  622. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js +1 -3
  623. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js.map +1 -1
  624. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js +9 -13
  625. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js.map +1 -1
  626. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.d.ts +1 -2
  627. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +7 -29
  628. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  629. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.js.map +1 -1
  630. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js +1 -1
  631. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js.map +1 -1
  632. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.d.ts +1 -8
  633. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js +0 -2
  634. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
  635. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.d.ts +4 -0
  636. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +2 -8
  637. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  638. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.d.ts +2 -7
  639. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +42 -149
  640. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  641. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.d.ts +4 -0
  642. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js +7 -19
  643. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js.map +1 -1
  644. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.d.ts +4 -1
  645. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js +3 -3
  646. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js.map +1 -1
  647. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.d.ts +2 -2
  648. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js +1 -1
  649. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js.map +1 -1
  650. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.d.ts +2 -7
  651. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +1 -7
  652. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
  653. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.d.ts +1 -1
  654. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.js.map +1 -1
  655. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.d.ts +1 -1
  656. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.js.map +1 -1
  657. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.d.ts +2 -2
  658. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js +1 -1
  659. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js.map +1 -1
  660. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.d.ts +2 -2
  661. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js +5 -11
  662. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js.map +1 -1
  663. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.d.ts +1 -1
  664. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js +1 -1
  665. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js.map +1 -1
  666. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.d.ts +4 -4
  667. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js.map +1 -1
  668. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.d.ts +2 -2
  669. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js +4 -4
  670. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js.map +1 -1
  671. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.d.ts +1 -1
  672. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js +1 -1
  673. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js.map +1 -1
  674. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.d.ts +5 -5
  675. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js +4 -4
  676. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js.map +1 -1
  677. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.d.ts +2 -2
  678. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js +1 -1
  679. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js.map +1 -1
  680. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.d.ts +2 -2
  681. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.js.map +1 -1
  682. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js +1 -1
  683. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js.map +1 -1
  684. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.d.ts +6 -1
  685. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js +13 -2
  686. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js.map +1 -1
  687. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.d.ts +13 -1
  688. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js +65 -2
  689. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js.map +1 -1
  690. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallControls.styles.js.map +1 -1
  691. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.d.ts +4 -0
  692. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js +4 -1
  693. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js.map +1 -1
  694. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js +4 -1
  695. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js.map +1 -1
  696. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js +8 -5
  697. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js.map +1 -1
  698. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalDeviceSettings.styles.js.map +1 -1
  699. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.d.ts +20 -0
  700. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js +22 -1
  701. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js.map +1 -1
  702. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NetworkReconnectTile.styles.js.map +1 -1
  703. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NoticePage.styles.js.map +1 -1
  704. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js +1 -0
  705. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js.map +1 -1
  706. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.d.ts +11 -86
  707. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.js.map +1 -1
  708. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.d.ts +1 -1
  709. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js +14 -12
  710. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js.map +1 -1
  711. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts +19 -20
  712. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +62 -112
  713. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  714. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/index.js.map +1 -1
  715. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +13 -133
  716. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +92 -171
  717. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  718. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/{ChatButton.d.ts → ChatButton/ChatButton.d.ts} +1 -1
  719. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/{ChatButton.js → ChatButton/ChatButton.js} +2 -2
  720. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.js.map +1 -0
  721. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/{ChatButtonWithUnreadMessagesBadge.d.ts → ChatButton/ChatButtonWithUnreadMessagesBadge.d.ts} +2 -2
  722. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/{ChatButtonWithUnreadMessagesBadge.js → ChatButton/ChatButtonWithUnreadMessagesBadge.js} +10 -12
  723. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.js.map +1 -0
  724. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/{NotificationIcon.js → ChatButton/NotificationIcon.js} +6 -3
  725. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.js.map +1 -0
  726. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.d.ts +0 -32
  727. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.js.map +1 -1
  728. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +4 -25
  729. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +7 -139
  730. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  731. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +0 -60
  732. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  733. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +2 -10
  734. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +1 -39
  735. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  736. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts +0 -9
  737. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js +1 -31
  738. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  739. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js +4 -0
  740. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js.map +1 -1
  741. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/hooks/useCallWithChatCompositeStrings.js.map +1 -1
  742. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.d.ts +0 -1
  743. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.js.map +1 -1
  744. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js +1 -1
  745. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js.map +1 -1
  746. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.d.ts +0 -22
  747. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js +2 -10
  748. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js.map +1 -1
  749. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/styles/CallWithChatCompositeStyles.d.ts +1 -1
  750. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/styles/CallWithChatCompositeStyles.js +6 -3
  751. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/styles/CallWithChatCompositeStyles.js.map +1 -1
  752. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.d.ts +0 -20
  753. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js +2 -6
  754. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js.map +1 -1
  755. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js +5 -3
  756. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js.map +1 -1
  757. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +25 -42
  758. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  759. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.d.ts +0 -4
  760. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.js.map +1 -1
  761. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +1 -10
  762. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +36 -93
  763. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  764. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.d.ts +0 -28
  765. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js +1 -154
  766. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js.map +1 -1
  767. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +2 -13
  768. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  769. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js +0 -2
  770. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js.map +1 -1
  771. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUpload.js.map +1 -1
  772. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js +6 -18
  773. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js.map +1 -1
  774. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadHandler.js.map +1 -1
  775. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js.map +1 -1
  776. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js +5 -3
  777. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js.map +1 -1
  778. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js +1 -3
  779. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js.map +1 -1
  780. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/usePropsFor.js.map +1 -1
  781. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.d.ts +0 -3
  782. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js.map +1 -1
  783. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js +6 -2
  784. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js.map +1 -1
  785. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.d.ts +1 -5
  786. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js +6 -17
  787. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js.map +1 -1
  788. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.d.ts +0 -5
  789. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js +4 -10
  790. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js.map +1 -1
  791. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js +14 -5
  792. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js.map +1 -1
  793. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js +5 -1
  794. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js.map +1 -1
  795. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.d.ts +27 -0
  796. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +251 -0
  797. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -0
  798. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.d.ts +83 -0
  799. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js +77 -0
  800. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js.map +1 -0
  801. package/dist/dist-esm/react-composites/src/composites/{CallWithChatComposite → common/ControlBar}/PeopleButton.d.ts +1 -1
  802. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js +24 -0
  803. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js.map +1 -0
  804. package/dist/dist-esm/react-composites/src/composites/common/ConvertContextualMenuItemToDrawerMenuItem.js.map +1 -0
  805. package/dist/dist-esm/react-composites/src/composites/{CallWithChatComposite/components → common/Drawer}/MoreDrawer.d.ts +2 -2
  806. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +105 -0
  807. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -0
  808. package/dist/dist-esm/react-composites/src/composites/{CallWithChatComposite → common/Drawer}/PreparedMoreDrawer.d.ts +2 -3
  809. package/dist/dist-esm/react-composites/src/composites/{CallWithChatComposite → common/Drawer}/PreparedMoreDrawer.js +5 -5
  810. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.js.map +1 -0
  811. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js +1 -1
  812. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js.map +1 -1
  813. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js +6 -21
  814. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js.map +1 -1
  815. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js +1 -1
  816. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js.map +1 -1
  817. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +9 -7
  818. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
  819. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.d.ts +0 -9
  820. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js +22 -29
  821. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js.map +1 -1
  822. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.d.ts +4 -4
  823. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js +44 -7
  824. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js.map +1 -1
  825. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.d.ts +8 -5
  826. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js +17 -12
  827. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js.map +1 -1
  828. package/dist/dist-esm/react-composites/src/composites/common/adapters.js.map +1 -1
  829. package/dist/dist-esm/react-composites/src/composites/common/constants.d.ts +9 -0
  830. package/dist/dist-esm/react-composites/src/composites/common/constants.js +11 -0
  831. package/dist/dist-esm/react-composites/src/composites/common/constants.js.map +1 -0
  832. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +7 -34
  833. package/dist/dist-esm/react-composites/src/composites/common/icons.js +12 -32
  834. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  835. package/dist/dist-esm/react-composites/src/composites/common/styles/Composite.styles.d.ts +7 -0
  836. package/dist/dist-esm/react-composites/src/composites/common/styles/Composite.styles.js +9 -0
  837. package/dist/dist-esm/react-composites/src/composites/common/styles/Composite.styles.js.map +1 -0
  838. package/dist/dist-esm/react-composites/src/composites/common/styles/GlobalHostLayer.styles.js.map +1 -1
  839. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js +16 -5
  840. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js.map +1 -1
  841. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js +51 -12
  842. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js.map +1 -1
  843. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.d.ts +4 -0
  844. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js +32 -5
  845. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js.map +1 -1
  846. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js +22 -4
  847. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js.map +1 -1
  848. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.d.ts +151 -0
  849. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js +4 -0
  850. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js.map +1 -0
  851. package/dist/dist-esm/react-composites/src/composites/common/utils.d.ts +4 -0
  852. package/dist/dist-esm/react-composites/src/composites/common/utils.js +16 -17
  853. package/dist/dist-esm/react-composites/src/composites/common/utils.js.map +1 -1
  854. package/dist/dist-esm/react-composites/src/composites/index.d.ts +1 -0
  855. package/dist/dist-esm/react-composites/src/composites/index.js.map +1 -1
  856. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js +2 -2
  857. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js.map +1 -1
  858. package/dist/dist-esm/react-composites/src/composites/localization/index.js.map +1 -1
  859. package/dist/dist-esm/react-composites/src/composites/localization/locales/ar-SA/strings.json +199 -0
  860. package/dist/dist-esm/react-composites/src/composites/localization/locales/de-DE/strings.json +92 -3
  861. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-GB/strings.json +92 -3
  862. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-US/strings.json +76 -1
  863. package/dist/dist-esm/react-composites/src/composites/localization/locales/es-ES/strings.json +92 -3
  864. package/dist/dist-esm/react-composites/src/composites/localization/locales/fi-FI/strings.json +199 -0
  865. package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-FR/strings.json +92 -3
  866. package/dist/dist-esm/react-composites/src/composites/localization/locales/he-IL/strings.json +199 -0
  867. package/dist/dist-esm/react-composites/src/composites/localization/locales/index.d.ts +36 -0
  868. package/dist/dist-esm/react-composites/src/composites/localization/locales/index.js +61 -1
  869. package/dist/dist-esm/react-composites/src/composites/localization/locales/index.js.map +1 -1
  870. package/dist/dist-esm/react-composites/src/composites/localization/locales/it-IT/strings.json +92 -3
  871. package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/strings.json +92 -3
  872. package/dist/dist-esm/react-composites/src/composites/localization/locales/ko-KR/strings.json +92 -3
  873. package/dist/dist-esm/react-composites/src/composites/localization/locales/nb-NO/strings.json +199 -0
  874. package/dist/dist-esm/react-composites/src/composites/localization/locales/nl-NL/strings.json +92 -3
  875. package/dist/dist-esm/react-composites/src/composites/localization/locales/pl-PL/strings.json +199 -0
  876. package/dist/dist-esm/react-composites/src/composites/localization/locales/pt-BR/strings.json +92 -3
  877. package/dist/dist-esm/react-composites/src/composites/localization/locales/ru-RU/strings.json +92 -3
  878. package/dist/dist-esm/react-composites/src/composites/localization/locales/sv-SE/strings.json +199 -0
  879. package/dist/dist-esm/react-composites/src/composites/localization/locales/tr-TR/strings.json +92 -3
  880. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-CN/strings.json +92 -3
  881. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-TW/strings.json +92 -3
  882. package/dist/dist-esm/react-composites/src/index-public.js.map +1 -1
  883. package/package.json +37 -33
  884. package/CHANGELOG.beta.md +0 -668
  885. package/CHANGELOG.json +0 -10238
  886. package/CHANGELOG.stable.md +0 -373
  887. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.d.ts +0 -43
  888. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js +0 -81
  889. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js.map +0 -1
  890. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.d.ts +0 -19
  891. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js +0 -89
  892. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js.map +0 -1
  893. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.d.ts +0 -23
  894. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js +0 -48
  895. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js.map +0 -1
  896. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.d.ts +0 -69
  897. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js +0 -37
  898. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js.map +0 -1
  899. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.d.ts +0 -75
  900. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js +0 -58
  901. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js.map +0 -1
  902. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.d.ts +0 -105
  903. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js +0 -86
  904. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js.map +0 -1
  905. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.d.ts +0 -86
  906. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js +0 -31
  907. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js.map +0 -1
  908. package/dist/dist-esm/react-components/src/components/HoldButton.d.ts +0 -49
  909. package/dist/dist-esm/react-components/src/components/HoldButton.js +0 -25
  910. package/dist/dist-esm/react-components/src/components/HoldButton.js.map +0 -1
  911. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.d.ts +0 -9
  912. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js +0 -18
  913. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js.map +0 -1
  914. package/dist/dist-esm/react-components/src/components/VideoGallery/VideoGalleryResponsiveHorizontalGallery.d.ts +0 -14
  915. package/dist/dist-esm/react-components/src/components/VideoGallery/VideoGalleryResponsiveHorizontalGallery.js +0 -19
  916. package/dist/dist-esm/react-components/src/components/VideoGallery/VideoGalleryResponsiveHorizontalGallery.js.map +0 -1
  917. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.d.ts +0 -10
  918. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js +0 -29
  919. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js.map +0 -1
  920. package/dist/dist-esm/react-components/src/components/VoiceOverButton.d.ts +0 -7
  921. package/dist/dist-esm/react-components/src/components/VoiceOverButton.js +0 -32
  922. package/dist/dist-esm/react-components/src/components/VoiceOverButton.js.map +0 -1
  923. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.d.ts +0 -58
  924. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js +0 -144
  925. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js.map +0 -1
  926. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.d.ts +0 -38
  927. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js +0 -92
  928. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js.map +0 -1
  929. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.d.ts +0 -26
  930. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js +0 -67
  931. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js.map +0 -1
  932. package/dist/dist-esm/react-components/src/components/styles/VoiceOverButton.style.d.ts +0 -9
  933. package/dist/dist-esm/react-components/src/components/styles/VoiceOverButton.style.js +0 -26
  934. package/dist/dist-esm/react-components/src/components/styles/VoiceOverButton.style.js.map +0 -1
  935. package/dist/dist-esm/react-components/src/components/utils/merge.d.ts +0 -7
  936. package/dist/dist-esm/react-components/src/components/utils/merge.js +0 -16
  937. package/dist/dist-esm/react-components/src/components/utils/merge.js.map +0 -1
  938. package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.d.ts +0 -61
  939. package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.js +0 -74
  940. package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.js.map +0 -1
  941. package/dist/dist-esm/react-components/src/permissions/index.d.ts +0 -2
  942. package/dist/dist-esm/react-components/src/permissions/index.js.map +0 -1
  943. package/dist/dist-esm/react-components/src/theming/icons.styles.d.ts +0 -6
  944. package/dist/dist-esm/react-components/src/theming/icons.styles.js +0 -25
  945. package/dist/dist-esm/react-components/src/theming/icons.styles.js.map +0 -1
  946. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallPane.d.ts +0 -24
  947. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallPane.js +0 -80
  948. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallPane.js.map +0 -1
  949. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.d.ts +0 -48
  950. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js +0 -210
  951. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js.map +0 -1
  952. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.d.ts +0 -12
  953. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js +0 -93
  954. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js.map +0 -1
  955. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.d.ts +0 -8
  956. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js +0 -26
  957. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js.map +0 -1
  958. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSidePaneState.d.ts +0 -16
  959. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSidePaneState.js +0 -38
  960. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSidePaneState.js.map +0 -1
  961. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.d.ts +0 -15
  962. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +0 -38
  963. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +0 -1
  964. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.d.ts +0 -15
  965. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js +0 -54
  966. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js.map +0 -1
  967. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.d.ts +0 -32
  968. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js +0 -81
  969. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js.map +0 -1
  970. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatControlBar.d.ts +0 -27
  971. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatControlBar.js +0 -190
  972. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatControlBar.js.map +0 -1
  973. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatPane.d.ts +0 -34
  974. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatPane.js +0 -90
  975. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatPane.js.map +0 -1
  976. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton.js.map +0 -1
  977. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButtonWithUnreadMessagesBadge.js.map +0 -1
  978. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ConvertContextualMenuItemToDrawerMenuItem.js.map +0 -1
  979. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CustomButton.d.ts +0 -67
  980. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CustomButton.js +0 -75
  981. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CustomButton.js.map +0 -1
  982. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/NotificationIcon.js.map +0 -1
  983. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/PeopleButton.js +0 -24
  984. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/PeopleButton.js.map +0 -1
  985. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/PreparedMoreDrawer.js.map +0 -1
  986. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.d.ts +0 -13
  987. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.js +0 -65
  988. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/DesktopMoreButton.js.map +0 -1
  989. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/MoreDrawer.js +0 -150
  990. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/components/MoreDrawer.js.map +0 -1
  991. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.d.ts +0 -18
  992. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js +0 -18
  993. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +0 -1
  994. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.d.ts +0 -15
  995. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js +0 -21
  996. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js.map +0 -1
  997. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.d.ts +0 -6
  998. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js +0 -11
  999. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js.map +0 -1
  1000. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.d.ts +0 -12
  1001. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js +0 -13
  1002. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js.map +0 -1
  1003. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.d.ts +0 -23
  1004. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js +0 -12
  1005. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js.map +0 -1
  1006. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.d.ts +0 -22
  1007. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js +0 -105
  1008. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js.map +0 -1
  1009. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.d.ts +0 -17
  1010. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js +0 -32
  1011. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js.map +0 -1
  1012. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.d.ts +0 -22
  1013. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js +0 -60
  1014. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js.map +0 -1
  1015. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.d.ts +0 -15
  1016. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js +0 -61
  1017. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js.map +0 -1
  1018. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.d.ts +0 -17
  1019. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js +0 -42
  1020. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js.map +0 -1
  1021. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.d.ts +0 -11
  1022. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js +0 -40
  1023. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js.map +0 -1
  1024. /package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/{NotificationIcon.d.ts → ChatButton/NotificationIcon.d.ts} +0 -0
  1025. /package/dist/dist-esm/react-composites/src/composites/{CallWithChatComposite → common}/ConvertContextualMenuItemToDrawerMenuItem.d.ts +0 -0
  1026. /package/dist/dist-esm/react-composites/src/composites/{CallWithChatComposite → common}/ConvertContextualMenuItemToDrawerMenuItem.js +0 -0
@@ -28,9 +28,22 @@ export const MAX_CALL_HISTORY_LENGTH = 10;
28
28
  * @private
29
29
  */
30
30
  export class CallContext {
31
- constructor(userId, maxListeners = 50,
32
- /* @conditional-compile-remove(PSTN-calls) */ alternateCallerId) {
31
+ constructor(userId, maxListeners = 50) {
33
32
  this._callIdHistory = new CallIdHistory();
33
+ /**
34
+ * Tees direct errors to state.
35
+ * @remarks
36
+ * This is typically used for errors that are caught and intended to be shown to the user.
37
+ *
38
+ * @param error The raw error to report.
39
+ * @param target The error target to tee error to.
40
+ *
41
+ * @private
42
+ */
43
+ this.teeErrorToState = (error, target) => {
44
+ const callError = toCallError(target, error);
45
+ this.setLatestError(target, callError);
46
+ };
34
47
  this._logger = createClientLogger('communication-react:calling-context');
35
48
  this._state = {
36
49
  calls: {},
@@ -46,8 +59,6 @@ export class CallContext {
46
59
  },
47
60
  callAgent: undefined,
48
61
  userId: userId,
49
- /* @conditional-compile-remove(unsupported-browser) */ environmentInfo: undefined,
50
- /* @conditional-compile-remove(PSTN-calls) */ alternateCallerId: alternateCallerId,
51
62
  latestErrors: {}
52
63
  };
53
64
  this._emitter = new EventEmitter();
@@ -105,10 +116,7 @@ export class CallContext {
105
116
  existingCall.localVideoStreams = call.localVideoStreams;
106
117
  existingCall.remoteParticipants = call.remoteParticipants;
107
118
  existingCall.transcription.isTranscriptionActive = call.transcription.isTranscriptionActive;
108
- existingCall.recording.isRecordingActive = call.recording.isRecordingActive;
109
- /* @conditional-compile-remove(rooms) */
110
- existingCall.role = call.role;
111
- // We don't update the startTime and endTime if we are updating an existing active call
119
+ existingCall.recording.isRecordingActive = call.recording.isRecordingActive; // We don't update the startTime and endTime if we are updating an existing active call
112
120
  }
113
121
  else {
114
122
  draft.calls[latestCallId] = call;
@@ -156,12 +164,6 @@ export class CallContext {
156
164
  }
157
165
  });
158
166
  }
159
- /* @conditional-compile-remove(unsupported-browser) */
160
- setEnvironmentInfo(envInfo) {
161
- this.modifyState((draft) => {
162
- draft.environmentInfo = envInfo;
163
- });
164
- }
165
167
  setCallIsScreenSharingOn(callId, isScreenSharingOn) {
166
168
  this.modifyState((draft) => {
167
169
  const call = draft.calls[this._callIdHistory.latestCallId(callId)];
@@ -212,15 +214,6 @@ export class CallContext {
212
214
  }
213
215
  });
214
216
  }
215
- /* @conditional-compile-remove(rooms) */
216
- setRole(callId, role) {
217
- this.modifyState((draft) => {
218
- const call = draft.calls[this._callIdHistory.latestCallId(callId)];
219
- if (call) {
220
- call.role = role;
221
- }
222
- });
223
- }
224
217
  setCallDominantSpeakers(callId, dominantSpeakers) {
225
218
  this.modifyState((draft) => {
226
219
  const call = draft.calls[this._callIdHistory.latestCallId(callId)];
@@ -285,18 +278,6 @@ export class CallContext {
285
278
  }
286
279
  });
287
280
  }
288
- /* @conditional-compile-remove(rooms) */
289
- setParticipantRole(callId, participantKey, role) {
290
- this.modifyState((draft) => {
291
- const call = draft.calls[this._callIdHistory.latestCallId(callId)];
292
- if (call) {
293
- const participant = call.remoteParticipants[participantKey];
294
- if (participant) {
295
- participant.role = role;
296
- }
297
- }
298
- });
299
- }
300
281
  setParticipantDisplayName(callId, participantKey, displayName) {
301
282
  this.modifyState((draft) => {
302
283
  const call = draft.calls[this._callIdHistory.latestCallId(callId)];
@@ -330,8 +311,6 @@ export class CallContext {
330
311
  const existingStream = participant.videoStreams[stream.id];
331
312
  if (existingStream) {
332
313
  existingStream.isAvailable = stream.isAvailable;
333
- /* @conditional-compile-remove(video-stream-is-receiving-flag) */
334
- existingStream.isReceiving = stream.isReceiving;
335
314
  existingStream.mediaStreamType = stream.mediaStreamType;
336
315
  }
337
316
  else {
@@ -355,21 +334,6 @@ export class CallContext {
355
334
  }
356
335
  });
357
336
  }
358
- /* @conditional-compile-remove(video-stream-is-receiving-flag) */
359
- setRemoteVideoStreamIsReceiving(callId, participantKey, streamId, isReceiving) {
360
- this.modifyState((draft) => {
361
- const call = draft.calls[this._callIdHistory.latestCallId(callId)];
362
- if (call) {
363
- const participant = call.remoteParticipants[participantKey];
364
- if (participant) {
365
- const stream = participant.videoStreams[streamId];
366
- if (stream) {
367
- stream.isReceiving = isReceiving;
368
- }
369
- }
370
- }
371
- });
372
- }
373
337
  setRemoteVideoStreams(callId, participantKey, addRemoteVideoStream, removeRemoteVideoStream) {
374
338
  this.modifyState((draft) => {
375
339
  const call = draft.calls[this._callIdHistory.latestCallId(callId)];
@@ -386,8 +350,6 @@ export class CallContext {
386
350
  if (stream) {
387
351
  stream.mediaStreamType = newStream.mediaStreamType;
388
352
  stream.isAvailable = newStream.isAvailable;
389
- /* @conditional-compile-remove(video-stream-is-receiving-flag) */
390
- stream.isReceiving = newStream.isReceiving;
391
353
  }
392
354
  else {
393
355
  participant.videoStreams[newStream.id] = newStream;
@@ -484,7 +446,7 @@ export class CallContext {
484
446
  * camera permissions are granted. So selectedCamera will have this value before the actual cameras are obtained. Therefore we should reset
485
447
  * selectedCamera to the first camera when there are cameras AND when current selectedCamera does not exist in the new array of cameras *
486
448
  */
487
- if (cameras.length > 0 && !cameras.some((camera) => { var _a; return camera.id === ((_a = draft.deviceManager.selectedCamera) === null || _a === void 0 ? void 0 : _a.id); })) {
449
+ if (cameras.length > 0 && !cameras.some(camera => { var _a; return camera.id === ((_a = draft.deviceManager.selectedCamera) === null || _a === void 0 ? void 0 : _a.id); })) {
488
450
  draft.deviceManager.selectedCamera = cameras[0];
489
451
  }
490
452
  draft.deviceManager.cameras = cameras;
@@ -516,7 +478,7 @@ export class CallContext {
516
478
  }
517
479
  deleteDeviceManagerUnparentedView(localVideoStream) {
518
480
  this.modifyState((draft) => {
519
- const foundIndex = draft.deviceManager.unparentedViews.findIndex((stream) => stream.source.id === localVideoStream.source.id && stream.mediaStreamType === localVideoStream.mediaStreamType);
481
+ const foundIndex = draft.deviceManager.unparentedViews.findIndex(stream => stream.source.id === localVideoStream.source.id && stream.mediaStreamType === localVideoStream.mediaStreamType);
520
482
  if (foundIndex !== -1) {
521
483
  draft.deviceManager.unparentedViews.splice(foundIndex, 1);
522
484
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CallContext.js","sourceRoot":"","sources":["../../../../../calling-stateful-client/src/CallContext.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { CommunicationIdentifierKind } from '@azure/communication-common';\nimport {\n AudioDeviceInfo,\n DeviceAccess,\n DominantSpeakersInfo,\n ScalingMode,\n VideoDeviceInfo\n} from '@azure/communication-calling';\n/* @conditional-compile-remove(unsupported-browser) */\nimport { EnvironmentInfo } from '@azure/communication-calling';\n/* @conditional-compile-remove(rooms) */\nimport { ParticipantRole } from '@azure/communication-calling';\nimport { AzureLogger, createClientLogger, getLogLevel } from '@azure/logger';\nimport EventEmitter from 'events';\nimport { enableMapSet, enablePatches, Patch, produce } from 'immer';\nimport {\n CallEndReason,\n CallState as CallStatus,\n RemoteParticipantState as RemoteParticipantStatus\n} from '@azure/communication-calling';\nimport { _safeJSONStringify, toFlatCommunicationIdentifier } from '@internal/acs-ui-common';\nimport {\n CallState,\n CallClientState,\n LocalVideoStreamState,\n RemoteParticipantState,\n RemoteVideoStreamState,\n IncomingCallState,\n VideoStreamRendererViewState,\n CallAgentState,\n CallErrors,\n CallErrorTarget,\n CallError\n} from './CallClientState';\nimport { callingStatefulLogger } from './Logger';\nimport { CallIdHistory } from './CallIdHistory';\n\nenableMapSet();\n// Needed to generate state diff for verbose logging.\nenablePatches();\n\n// TODO: How can we make this configurable?\n/**\n * @private\n */\nexport const MAX_CALL_HISTORY_LENGTH = 10;\n\n/**\n * @private\n */\nexport class CallContext {\n private _logger: AzureLogger;\n private _state: CallClientState;\n private _emitter: EventEmitter;\n private _atomicId: number;\n private _callIdHistory: CallIdHistory = new CallIdHistory();\n\n constructor(\n userId: CommunicationIdentifierKind,\n maxListeners = 50,\n /* @conditional-compile-remove(PSTN-calls) */ alternateCallerId?: string\n ) {\n this._logger = createClientLogger('communication-react:calling-context');\n this._state = {\n calls: {},\n callsEnded: {},\n incomingCalls: {},\n incomingCallsEnded: {},\n deviceManager: {\n isSpeakerSelectionAvailable: false,\n cameras: [],\n microphones: [],\n speakers: [],\n unparentedViews: []\n },\n callAgent: undefined,\n userId: userId,\n /* @conditional-compile-remove(unsupported-browser) */ environmentInfo: undefined,\n /* @conditional-compile-remove(PSTN-calls) */ alternateCallerId: alternateCallerId,\n latestErrors: {} as CallErrors\n };\n this._emitter = new EventEmitter();\n this._emitter.setMaxListeners(maxListeners);\n this._atomicId = 0;\n }\n\n public getState(): CallClientState {\n return this._state;\n }\n\n public modifyState(modifier: (draft: CallClientState) => void): void {\n const priorState = this._state;\n this._state = produce(this._state, modifier, (patches: Patch[]) => {\n if (getLogLevel() === 'verbose') {\n // Log to `info` because AzureLogger.verbose() doesn't show up in console.\n this._logger.info(`State change: ${_safeJSONStringify(patches)}`);\n }\n });\n if (this._state !== priorState) {\n this._emitter.emit('stateChanged', this._state);\n }\n }\n\n public onStateChange(handler: (state: CallClientState) => void): void {\n this._emitter.on('stateChanged', handler);\n }\n\n public offStateChange(handler: (state: CallClientState) => void): void {\n this._emitter.off('stateChanged', handler);\n }\n\n // Disposing of the CallAgentDeclarative will not clear the state. If we create a new CallAgentDeclarative, we should\n // make sure the state is clean because any left over state (if previous CallAgentDeclarative was disposed) may be\n // invalid.\n public clearCallRelatedState(): void {\n this.modifyState((draft: CallClientState) => {\n draft.calls = {};\n draft.incomingCalls = {};\n draft.callsEnded = {};\n draft.incomingCallsEnded = {};\n });\n }\n\n public setCallAgent(callAgent: CallAgentState): void {\n this.modifyState((draft: CallClientState) => {\n draft.callAgent = callAgent;\n });\n }\n\n public setCall(call: CallState): void {\n this.modifyState((draft: CallClientState) => {\n const latestCallId = this._callIdHistory.latestCallId(call.id);\n const existingCall = draft.calls[latestCallId];\n if (existingCall) {\n existingCall.callerInfo = call.callerInfo;\n existingCall.state = call.state;\n existingCall.callEndReason = call.callEndReason;\n existingCall.direction = call.direction;\n existingCall.isMuted = call.isMuted;\n existingCall.isScreenSharingOn = call.isScreenSharingOn;\n existingCall.localVideoStreams = call.localVideoStreams;\n existingCall.remoteParticipants = call.remoteParticipants;\n existingCall.transcription.isTranscriptionActive = call.transcription.isTranscriptionActive;\n existingCall.recording.isRecordingActive = call.recording.isRecordingActive;\n /* @conditional-compile-remove(rooms) */\n existingCall.role = call.role;\n // We don't update the startTime and endTime if we are updating an existing active call\n } else {\n draft.calls[latestCallId] = call;\n }\n });\n }\n\n public removeCall(callId: string): void {\n this.modifyState((draft: CallClientState) => {\n delete draft.calls[this._callIdHistory.latestCallId(callId)];\n });\n }\n\n public setCallEnded(callId: string, callEndReason: CallEndReason | undefined): void {\n const latestCallId = this._callIdHistory.latestCallId(callId);\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[latestCallId];\n if (call) {\n call.endTime = new Date();\n call.callEndReason = callEndReason;\n delete draft.calls[latestCallId];\n // Performance note: This loop should run only once because the number of entries\n // is never allowed to exceed MAX_CALL_HISTORY_LENGTH. A loop is used for correctness.\n while (Object.keys(draft.callsEnded).length >= MAX_CALL_HISTORY_LENGTH) {\n delete draft.callsEnded[findOldestCallEnded(draft.callsEnded)];\n }\n draft.callsEnded[latestCallId] = call;\n }\n });\n }\n\n public setCallState(callId: string, state: CallStatus): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.state = state;\n }\n });\n }\n\n public setCallId(newCallId: string, oldCallId: string): void {\n this._callIdHistory.updateCallIdHistory(newCallId, oldCallId);\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[oldCallId];\n if (call) {\n call.id = newCallId;\n delete draft.calls[oldCallId];\n draft.calls[newCallId] = call;\n }\n });\n }\n\n /* @conditional-compile-remove(unsupported-browser) */\n public setEnvironmentInfo(envInfo: EnvironmentInfo): void {\n this.modifyState((draft: CallClientState) => {\n draft.environmentInfo = envInfo;\n });\n }\n\n public setCallIsScreenSharingOn(callId: string, isScreenSharingOn: boolean): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.isScreenSharingOn = isScreenSharingOn;\n }\n });\n }\n\n public setCallRemoteParticipants(\n callId: string,\n addRemoteParticipant: RemoteParticipantState[],\n removeRemoteParticipant: string[]\n ): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n removeRemoteParticipant.forEach((id: string) => {\n delete call.remoteParticipants[id];\n });\n addRemoteParticipant.forEach((participant: RemoteParticipantState) => {\n call.remoteParticipants[toFlatCommunicationIdentifier(participant.identifier)] = participant;\n });\n }\n });\n }\n\n public setCallRemoteParticipantsEnded(\n callId: string,\n addRemoteParticipant: RemoteParticipantState[],\n removeRemoteParticipant: string[]\n ): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n removeRemoteParticipant.forEach((id: string) => {\n delete call.remoteParticipantsEnded[id];\n });\n addRemoteParticipant.forEach((participant: RemoteParticipantState) => {\n call.remoteParticipantsEnded[toFlatCommunicationIdentifier(participant.identifier)] = participant;\n });\n }\n });\n }\n\n public setCallLocalVideoStream(callId: string, streams: LocalVideoStreamState[]): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.localVideoStreams = streams;\n }\n });\n }\n\n public setCallIsMicrophoneMuted(callId: string, isMicrophoneMuted: boolean): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.isMuted = isMicrophoneMuted;\n }\n });\n }\n\n /* @conditional-compile-remove(rooms) */\n public setRole(callId: string, role: ParticipantRole): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.role = role;\n }\n });\n }\n\n public setCallDominantSpeakers(callId: string, dominantSpeakers: DominantSpeakersInfo): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.dominantSpeakers = dominantSpeakers;\n }\n });\n }\n\n public setCallRecordingActive(callId: string, isRecordingActive: boolean): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.recording.isRecordingActive = isRecordingActive;\n }\n });\n }\n\n public setCallTranscriptionActive(callId: string, isTranscriptionActive: boolean): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.transcription.isTranscriptionActive = isTranscriptionActive;\n }\n });\n }\n\n public setCallScreenShareParticipant(callId: string, participantKey: string | undefined): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.screenShareRemoteParticipant = participantKey;\n }\n });\n }\n\n public setLocalVideoStreamRendererView(callId: string, view: VideoStreamRendererViewState | undefined): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n if (call.localVideoStreams.length > 0) {\n call.localVideoStreams[0].view = view;\n }\n }\n });\n }\n\n public setParticipantState(callId: string, participantKey: string, state: RemoteParticipantStatus): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n participant.state = state;\n }\n }\n });\n }\n\n public setParticipantIsMuted(callId: string, participantKey: string, muted: boolean): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n participant.isMuted = muted;\n }\n }\n });\n }\n\n /* @conditional-compile-remove(rooms) */\n public setParticipantRole(callId: string, participantKey: string, role: ParticipantRole): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n participant.role = role;\n }\n }\n });\n }\n\n public setParticipantDisplayName(callId: string, participantKey: string, displayName: string): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n participant.displayName = displayName;\n }\n }\n });\n }\n\n public setParticipantIsSpeaking(callId: string, participantKey: string, isSpeaking: boolean): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n participant.isSpeaking = isSpeaking;\n }\n }\n });\n }\n\n public setParticipantVideoStream(callId: string, participantKey: string, stream: RemoteVideoStreamState): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n // Set is called by subscriber will not modify any rendered stream so if there is existing stream only\n // modify the values that subscriber has access to.\n const existingStream = participant.videoStreams[stream.id];\n if (existingStream) {\n existingStream.isAvailable = stream.isAvailable;\n /* @conditional-compile-remove(video-stream-is-receiving-flag) */\n existingStream.isReceiving = stream.isReceiving;\n existingStream.mediaStreamType = stream.mediaStreamType;\n } else {\n participant.videoStreams[stream.id] = stream;\n }\n }\n }\n });\n }\n\n public setRemoteVideoStreamIsAvailable(\n callId: string,\n participantKey: string,\n streamId: number,\n isAvailable: boolean\n ): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n const stream = participant.videoStreams[streamId];\n if (stream) {\n stream.isAvailable = isAvailable;\n }\n }\n }\n });\n }\n\n /* @conditional-compile-remove(video-stream-is-receiving-flag) */\n public setRemoteVideoStreamIsReceiving(\n callId: string,\n participantKey: string,\n streamId: number,\n isReceiving: boolean\n ): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n const stream = participant.videoStreams[streamId];\n if (stream) {\n stream.isReceiving = isReceiving;\n }\n }\n }\n });\n }\n\n public setRemoteVideoStreams(\n callId: string,\n participantKey: string,\n addRemoteVideoStream: RemoteVideoStreamState[],\n removeRemoteVideoStream: number[]\n ): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n for (const id of removeRemoteVideoStream) {\n delete participant.videoStreams[id];\n }\n\n for (const newStream of addRemoteVideoStream) {\n // This should only be called by the subscriber and some properties are add by other components so if the\n // stream already exists, only update the values that subscriber knows about.\n const stream = participant.videoStreams[newStream.id];\n if (stream) {\n stream.mediaStreamType = newStream.mediaStreamType;\n stream.isAvailable = newStream.isAvailable;\n /* @conditional-compile-remove(video-stream-is-receiving-flag) */\n stream.isReceiving = newStream.isReceiving;\n } else {\n participant.videoStreams[newStream.id] = newStream;\n }\n }\n }\n }\n });\n }\n\n public setRemoteVideoStreamRendererView(\n callId: string,\n participantKey: string,\n streamId: number,\n view: VideoStreamRendererViewState | undefined\n ): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n const stream = participant.videoStreams[streamId];\n if (stream) {\n stream.view = view;\n }\n }\n }\n });\n }\n\n public setRemoteVideoStreamViewScalingMode(\n callId: string,\n participantKey: string,\n streamId: number,\n scalingMode: ScalingMode\n ): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n const stream = participant.videoStreams[streamId];\n if (stream && stream.view) {\n stream.view.scalingMode = scalingMode;\n }\n }\n }\n });\n }\n\n public setIncomingCall(call: IncomingCallState): void {\n this.modifyState((draft: CallClientState) => {\n const existingCall = draft.incomingCalls[call.id];\n if (existingCall) {\n existingCall.callerInfo = call.callerInfo;\n } else {\n draft.incomingCalls[call.id] = call;\n }\n });\n }\n\n public removeIncomingCall(callId: string): void {\n this.modifyState((draft: CallClientState) => {\n delete draft.incomingCalls[callId];\n });\n }\n\n public setIncomingCallEnded(callId: string, callEndReason: CallEndReason | undefined): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.incomingCalls[callId];\n if (call) {\n call.endTime = new Date();\n call.callEndReason = callEndReason;\n delete draft.incomingCalls[callId];\n // Performance note: This loop should run only once because the number of entries\n // is never allowed to exceed MAX_CALL_HISTORY_LENGTH. A loop is used for correctness.\n while (Object.keys(draft.incomingCallsEnded).length >= MAX_CALL_HISTORY_LENGTH) {\n delete draft.incomingCallsEnded[findOldestCallEnded(draft.incomingCallsEnded)];\n }\n draft.incomingCallsEnded[callId] = call;\n }\n });\n }\n\n public setDeviceManagerIsSpeakerSelectionAvailable(isSpeakerSelectionAvailable: boolean): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.isSpeakerSelectionAvailable = isSpeakerSelectionAvailable;\n });\n }\n\n public setDeviceManagerSelectedMicrophone(selectedMicrophone?: AudioDeviceInfo): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.selectedMicrophone = selectedMicrophone;\n });\n }\n\n public setDeviceManagerSelectedSpeaker(selectedSpeaker?: AudioDeviceInfo): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.selectedSpeaker = selectedSpeaker;\n });\n }\n\n public setDeviceManagerSelectedCamera(selectedCamera?: VideoDeviceInfo): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.selectedCamera = selectedCamera;\n });\n }\n\n public setDeviceManagerCameras(cameras: VideoDeviceInfo[]): void {\n this.modifyState((draft: CallClientState) => {\n /**\n * SDK initializes cameras with one dummy camera with value { id: 'camera:id', name: '', deviceType: 'USBCamera' } immediately after\n * camera permissions are granted. So selectedCamera will have this value before the actual cameras are obtained. Therefore we should reset\n * selectedCamera to the first camera when there are cameras AND when current selectedCamera does not exist in the new array of cameras *\n */\n if (cameras.length > 0 && !cameras.some((camera) => camera.id === draft.deviceManager.selectedCamera?.id)) {\n draft.deviceManager.selectedCamera = cameras[0];\n }\n draft.deviceManager.cameras = cameras;\n });\n }\n\n public setDeviceManagerMicrophones(microphones: AudioDeviceInfo[]): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.microphones = microphones;\n });\n }\n\n public setDeviceManagerSpeakers(speakers: AudioDeviceInfo[]): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.speakers = speakers;\n });\n }\n\n public setDeviceManagerDeviceAccess(deviceAccess: DeviceAccess): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.deviceAccess = deviceAccess;\n });\n }\n\n public setDeviceManagerUnparentedView(\n localVideoStream: LocalVideoStreamState,\n view: VideoStreamRendererViewState | undefined\n ): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.unparentedViews.push({\n source: localVideoStream.source,\n mediaStreamType: localVideoStream.mediaStreamType,\n view: view\n });\n });\n }\n\n public deleteDeviceManagerUnparentedView(localVideoStream: LocalVideoStreamState): void {\n this.modifyState((draft: CallClientState) => {\n const foundIndex = draft.deviceManager.unparentedViews.findIndex(\n (stream) =>\n stream.source.id === localVideoStream.source.id && stream.mediaStreamType === localVideoStream.mediaStreamType\n );\n if (foundIndex !== -1) {\n draft.deviceManager.unparentedViews.splice(foundIndex, 1);\n }\n });\n }\n\n public getAndIncrementAtomicId(): number {\n const id = this._atomicId;\n this._atomicId++;\n return id;\n }\n\n /**\n * Tees any errors encountered in an async function to the state.\n *\n * @param action Async function to execute.\n * @param target The error target to tee error to.\n * @returns Result of calling `f`. Also re-raises any exceptions thrown from `f`.\n * @throws CallError. Exceptions thrown from `f` are tagged with the failed `target.\n */\n public withAsyncErrorTeedToState<Args extends unknown[], R>(\n action: (...args: Args) => Promise<R>,\n target: CallErrorTarget\n ): (...args: Args) => Promise<R> {\n return async (...args: Args): Promise<R> => {\n try {\n return await action(...args);\n } catch (error) {\n const callError = toCallError(target, error);\n this.setLatestError(target, callError);\n throw callError;\n }\n };\n }\n\n /**\n * Tees any errors encountered in an function to the state.\n *\n * @param action Function to execute.\n * @param target The error target to tee error to.\n * @returns Result of calling `f`. Also re-raises any exceptions thrown from `f`.\n * @throws CallError. Exceptions thrown from `f` are tagged with the failed `target.\n */\n public withErrorTeedToState<Args extends unknown[], R>(\n action: (...args: Args) => R,\n target: CallErrorTarget\n ): (...args: Args) => R {\n return (...args: Args): R => {\n try {\n callingStatefulLogger.info(`Calling stateful client target function called: ${target}`);\n return action(...args);\n } catch (error) {\n const callError = toCallError(target, error);\n this.setLatestError(target, callError);\n throw callError;\n }\n };\n }\n\n private setLatestError(target: CallErrorTarget, error: CallError): void {\n this.modifyState((draft: CallClientState) => {\n draft.latestErrors[target] = error;\n });\n }\n}\n\nconst toCallError = (target: CallErrorTarget, error: unknown): CallError => {\n if (error instanceof Error) {\n return new CallError(target, error);\n }\n return new CallError(target, new Error(error as string));\n};\n\nconst findOldestCallEnded = (calls: { [key: string]: { endTime?: Date } }): string => {\n const callEntries = Object.entries(calls);\n let [oldestCallId, oldestCall] = callEntries[0];\n if (oldestCall.endTime === undefined) {\n return oldestCallId;\n }\n for (const [callId, call] of callEntries.slice(1)) {\n if (call.endTime === undefined) {\n return callId;\n }\n if ((call.endTime?.getTime() ?? 0) < (oldestCall.endTime?.getTime() ?? 0)) {\n [oldestCallId, oldestCall] = [callId, call];\n }\n }\n return oldestCallId;\n};\n\"../../acs-ui-common/src\""]}
1
+ {"version":3,"file":"CallContext.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/CallContext.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { CommunicationIdentifierKind } from '@azure/communication-common';\nimport { AudioDeviceInfo, DeviceAccess, DominantSpeakersInfo, ScalingMode, VideoDeviceInfo } from '@azure/communication-calling';\nimport { AzureLogger, createClientLogger, getLogLevel } from '@azure/logger';\nimport EventEmitter from 'events';\nimport { enableMapSet, enablePatches, Patch, produce } from 'immer';\nimport { CallEndReason, CallState as CallStatus, RemoteParticipantState as RemoteParticipantStatus } from '@azure/communication-calling';\nimport { _safeJSONStringify, toFlatCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { CallState, CallClientState, LocalVideoStreamState, RemoteParticipantState, RemoteVideoStreamState, IncomingCallState, VideoStreamRendererViewState, CallAgentState, CallErrors, CallErrorTarget, CallError } from './CallClientState';\nimport { callingStatefulLogger } from './Logger';\nimport { CallIdHistory } from './CallIdHistory';\nenableMapSet();\n// Needed to generate state diff for verbose logging.\nenablePatches();\n\n// TODO: How can we make this configurable?\n/**\n * @private\n */\nexport const MAX_CALL_HISTORY_LENGTH = 10;\n\n/**\n * @private\n */\nexport class CallContext {\n private _logger: AzureLogger;\n private _state: CallClientState;\n private _emitter: EventEmitter;\n private _atomicId: number;\n private _callIdHistory: CallIdHistory = new CallIdHistory();\n constructor(userId: CommunicationIdentifierKind, maxListeners = 50) {\n this._logger = createClientLogger('communication-react:calling-context');\n this._state = {\n calls: {},\n callsEnded: {},\n incomingCalls: {},\n incomingCallsEnded: {},\n deviceManager: {\n isSpeakerSelectionAvailable: false,\n cameras: [],\n microphones: [],\n speakers: [],\n unparentedViews: []\n },\n callAgent: undefined,\n userId: userId,\n latestErrors: ({} as CallErrors)\n };\n this._emitter = new EventEmitter();\n this._emitter.setMaxListeners(maxListeners);\n this._atomicId = 0;\n }\n public getState(): CallClientState {\n return this._state;\n }\n public modifyState(modifier: (draft: CallClientState) => void): void {\n const priorState = this._state;\n this._state = produce(this._state, modifier, (patches: Patch[]) => {\n if (getLogLevel() === 'verbose') {\n // Log to `info` because AzureLogger.verbose() doesn't show up in console.\n this._logger.info(`State change: ${_safeJSONStringify(patches)}`);\n }\n });\n if (this._state !== priorState) {\n this._emitter.emit('stateChanged', this._state);\n }\n }\n public onStateChange(handler: (state: CallClientState) => void): void {\n this._emitter.on('stateChanged', handler);\n }\n public offStateChange(handler: (state: CallClientState) => void): void {\n this._emitter.off('stateChanged', handler);\n }\n\n // Disposing of the CallAgentDeclarative will not clear the state. If we create a new CallAgentDeclarative, we should\n // make sure the state is clean because any left over state (if previous CallAgentDeclarative was disposed) may be\n // invalid.\n public clearCallRelatedState(): void {\n this.modifyState((draft: CallClientState) => {\n draft.calls = {};\n draft.incomingCalls = {};\n draft.callsEnded = {};\n draft.incomingCallsEnded = {};\n });\n }\n public setCallAgent(callAgent: CallAgentState): void {\n this.modifyState((draft: CallClientState) => {\n draft.callAgent = callAgent;\n });\n }\n public setCall(call: CallState): void {\n this.modifyState((draft: CallClientState) => {\n const latestCallId = this._callIdHistory.latestCallId(call.id);\n const existingCall = draft.calls[latestCallId];\n if (existingCall) {\n existingCall.callerInfo = call.callerInfo;\n existingCall.state = call.state;\n existingCall.callEndReason = call.callEndReason;\n existingCall.direction = call.direction;\n existingCall.isMuted = call.isMuted;\n existingCall.isScreenSharingOn = call.isScreenSharingOn;\n existingCall.localVideoStreams = call.localVideoStreams;\n existingCall.remoteParticipants = call.remoteParticipants;\n existingCall.transcription.isTranscriptionActive = call.transcription.isTranscriptionActive;\n existingCall.recording.isRecordingActive = call.recording.isRecordingActive; // We don't update the startTime and endTime if we are updating an existing active call\n } else {\n draft.calls[latestCallId] = call;\n }\n });\n }\n public removeCall(callId: string): void {\n this.modifyState((draft: CallClientState) => {\n delete draft.calls[this._callIdHistory.latestCallId(callId)];\n });\n }\n public setCallEnded(callId: string, callEndReason: CallEndReason | undefined): void {\n const latestCallId = this._callIdHistory.latestCallId(callId);\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[latestCallId];\n if (call) {\n call.endTime = new Date();\n call.callEndReason = callEndReason;\n delete draft.calls[latestCallId];\n // Performance note: This loop should run only once because the number of entries\n // is never allowed to exceed MAX_CALL_HISTORY_LENGTH. A loop is used for correctness.\n while (Object.keys(draft.callsEnded).length >= MAX_CALL_HISTORY_LENGTH) {\n delete draft.callsEnded[findOldestCallEnded(draft.callsEnded)];\n }\n draft.callsEnded[latestCallId] = call;\n }\n });\n }\n public setCallState(callId: string, state: CallStatus): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.state = state;\n }\n });\n }\n public setCallId(newCallId: string, oldCallId: string): void {\n this._callIdHistory.updateCallIdHistory(newCallId, oldCallId);\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[oldCallId];\n if (call) {\n call.id = newCallId;\n delete draft.calls[oldCallId];\n draft.calls[newCallId] = call;\n }\n });\n }\n public setCallIsScreenSharingOn(callId: string, isScreenSharingOn: boolean): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.isScreenSharingOn = isScreenSharingOn;\n }\n });\n }\n public setCallRemoteParticipants(callId: string, addRemoteParticipant: RemoteParticipantState[], removeRemoteParticipant: string[]): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n removeRemoteParticipant.forEach((id: string) => {\n delete call.remoteParticipants[id];\n });\n addRemoteParticipant.forEach((participant: RemoteParticipantState) => {\n call.remoteParticipants[toFlatCommunicationIdentifier(participant.identifier)] = participant;\n });\n }\n });\n }\n public setCallRemoteParticipantsEnded(callId: string, addRemoteParticipant: RemoteParticipantState[], removeRemoteParticipant: string[]): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n removeRemoteParticipant.forEach((id: string) => {\n delete call.remoteParticipantsEnded[id];\n });\n addRemoteParticipant.forEach((participant: RemoteParticipantState) => {\n call.remoteParticipantsEnded[toFlatCommunicationIdentifier(participant.identifier)] = participant;\n });\n }\n });\n }\n public setCallLocalVideoStream(callId: string, streams: LocalVideoStreamState[]): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.localVideoStreams = streams;\n }\n });\n }\n public setCallIsMicrophoneMuted(callId: string, isMicrophoneMuted: boolean): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.isMuted = isMicrophoneMuted;\n }\n });\n }\n public setCallDominantSpeakers(callId: string, dominantSpeakers: DominantSpeakersInfo): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.dominantSpeakers = dominantSpeakers;\n }\n });\n }\n public setCallRecordingActive(callId: string, isRecordingActive: boolean): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.recording.isRecordingActive = isRecordingActive;\n }\n });\n }\n public setCallTranscriptionActive(callId: string, isTranscriptionActive: boolean): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.transcription.isTranscriptionActive = isTranscriptionActive;\n }\n });\n }\n public setCallScreenShareParticipant(callId: string, participantKey: string | undefined): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n call.screenShareRemoteParticipant = participantKey;\n }\n });\n }\n public setLocalVideoStreamRendererView(callId: string, view: VideoStreamRendererViewState | undefined): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n if (call.localVideoStreams.length > 0) {\n call.localVideoStreams[0].view = view;\n }\n }\n });\n }\n public setParticipantState(callId: string, participantKey: string, state: RemoteParticipantStatus): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n participant.state = state;\n }\n }\n });\n }\n public setParticipantIsMuted(callId: string, participantKey: string, muted: boolean): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n participant.isMuted = muted;\n }\n }\n });\n }\n public setParticipantDisplayName(callId: string, participantKey: string, displayName: string): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n participant.displayName = displayName;\n }\n }\n });\n }\n public setParticipantIsSpeaking(callId: string, participantKey: string, isSpeaking: boolean): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n participant.isSpeaking = isSpeaking;\n }\n }\n });\n }\n public setParticipantVideoStream(callId: string, participantKey: string, stream: RemoteVideoStreamState): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n // Set is called by subscriber will not modify any rendered stream so if there is existing stream only\n // modify the values that subscriber has access to.\n const existingStream = participant.videoStreams[stream.id];\n if (existingStream) {\n existingStream.isAvailable = stream.isAvailable;\n existingStream.mediaStreamType = stream.mediaStreamType;\n } else {\n participant.videoStreams[stream.id] = stream;\n }\n }\n }\n });\n }\n public setRemoteVideoStreamIsAvailable(callId: string, participantKey: string, streamId: number, isAvailable: boolean): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n const stream = participant.videoStreams[streamId];\n if (stream) {\n stream.isAvailable = isAvailable;\n }\n }\n }\n });\n }\n public setRemoteVideoStreams(callId: string, participantKey: string, addRemoteVideoStream: RemoteVideoStreamState[], removeRemoteVideoStream: number[]): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n for (const id of removeRemoteVideoStream) {\n delete participant.videoStreams[id];\n }\n for (const newStream of addRemoteVideoStream) {\n // This should only be called by the subscriber and some properties are add by other components so if the\n // stream already exists, only update the values that subscriber knows about.\n const stream = participant.videoStreams[newStream.id];\n if (stream) {\n stream.mediaStreamType = newStream.mediaStreamType;\n stream.isAvailable = newStream.isAvailable;\n } else {\n participant.videoStreams[newStream.id] = newStream;\n }\n }\n }\n }\n });\n }\n public setRemoteVideoStreamRendererView(callId: string, participantKey: string, streamId: number, view: VideoStreamRendererViewState | undefined): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n const stream = participant.videoStreams[streamId];\n if (stream) {\n stream.view = view;\n }\n }\n }\n });\n }\n public setRemoteVideoStreamViewScalingMode(callId: string, participantKey: string, streamId: number, scalingMode: ScalingMode): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.calls[this._callIdHistory.latestCallId(callId)];\n if (call) {\n const participant = call.remoteParticipants[participantKey];\n if (participant) {\n const stream = participant.videoStreams[streamId];\n if (stream && stream.view) {\n stream.view.scalingMode = scalingMode;\n }\n }\n }\n });\n }\n public setIncomingCall(call: IncomingCallState): void {\n this.modifyState((draft: CallClientState) => {\n const existingCall = draft.incomingCalls[call.id];\n if (existingCall) {\n existingCall.callerInfo = call.callerInfo;\n } else {\n draft.incomingCalls[call.id] = call;\n }\n });\n }\n public removeIncomingCall(callId: string): void {\n this.modifyState((draft: CallClientState) => {\n delete draft.incomingCalls[callId];\n });\n }\n public setIncomingCallEnded(callId: string, callEndReason: CallEndReason | undefined): void {\n this.modifyState((draft: CallClientState) => {\n const call = draft.incomingCalls[callId];\n if (call) {\n call.endTime = new Date();\n call.callEndReason = callEndReason;\n delete draft.incomingCalls[callId];\n // Performance note: This loop should run only once because the number of entries\n // is never allowed to exceed MAX_CALL_HISTORY_LENGTH. A loop is used for correctness.\n while (Object.keys(draft.incomingCallsEnded).length >= MAX_CALL_HISTORY_LENGTH) {\n delete draft.incomingCallsEnded[findOldestCallEnded(draft.incomingCallsEnded)];\n }\n draft.incomingCallsEnded[callId] = call;\n }\n });\n }\n public setDeviceManagerIsSpeakerSelectionAvailable(isSpeakerSelectionAvailable: boolean): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.isSpeakerSelectionAvailable = isSpeakerSelectionAvailable;\n });\n }\n public setDeviceManagerSelectedMicrophone(selectedMicrophone?: AudioDeviceInfo): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.selectedMicrophone = selectedMicrophone;\n });\n }\n public setDeviceManagerSelectedSpeaker(selectedSpeaker?: AudioDeviceInfo): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.selectedSpeaker = selectedSpeaker;\n });\n }\n public setDeviceManagerSelectedCamera(selectedCamera?: VideoDeviceInfo): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.selectedCamera = selectedCamera;\n });\n }\n public setDeviceManagerCameras(cameras: VideoDeviceInfo[]): void {\n this.modifyState((draft: CallClientState) => {\n /**\n * SDK initializes cameras with one dummy camera with value { id: 'camera:id', name: '', deviceType: 'USBCamera' } immediately after\n * camera permissions are granted. So selectedCamera will have this value before the actual cameras are obtained. Therefore we should reset\n * selectedCamera to the first camera when there are cameras AND when current selectedCamera does not exist in the new array of cameras *\n */\n if (cameras.length > 0 && !cameras.some(camera => camera.id === draft.deviceManager.selectedCamera?.id)) {\n draft.deviceManager.selectedCamera = cameras[0];\n }\n draft.deviceManager.cameras = cameras;\n });\n }\n public setDeviceManagerMicrophones(microphones: AudioDeviceInfo[]): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.microphones = microphones;\n });\n }\n public setDeviceManagerSpeakers(speakers: AudioDeviceInfo[]): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.speakers = speakers;\n });\n }\n public setDeviceManagerDeviceAccess(deviceAccess: DeviceAccess): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.deviceAccess = deviceAccess;\n });\n }\n public setDeviceManagerUnparentedView(localVideoStream: LocalVideoStreamState, view: VideoStreamRendererViewState | undefined): void {\n this.modifyState((draft: CallClientState) => {\n draft.deviceManager.unparentedViews.push({\n source: localVideoStream.source,\n mediaStreamType: localVideoStream.mediaStreamType,\n view: view\n });\n });\n }\n public deleteDeviceManagerUnparentedView(localVideoStream: LocalVideoStreamState): void {\n this.modifyState((draft: CallClientState) => {\n const foundIndex = draft.deviceManager.unparentedViews.findIndex(stream => stream.source.id === localVideoStream.source.id && stream.mediaStreamType === localVideoStream.mediaStreamType);\n if (foundIndex !== -1) {\n draft.deviceManager.unparentedViews.splice(foundIndex, 1);\n }\n });\n }\n public getAndIncrementAtomicId(): number {\n const id = this._atomicId;\n this._atomicId++;\n return id;\n }\n /**\n * Tees any errors encountered in an async function to the state.\n *\n * @param action Async function to execute.\n * @param target The error target to tee error to.\n * @returns Result of calling `f`. Also re-raises any exceptions thrown from `f`.\n * @throws CallError. Exceptions thrown from `f` are tagged with the failed `target.\n */\n public withAsyncErrorTeedToState<Args extends unknown[], R>(action: (...args: Args) => Promise<R>, target: CallErrorTarget): (...args: Args) => Promise<R> {\n return async (...args: Args): Promise<R> => {\n try {\n return await action(...args);\n } catch (error) {\n const callError = toCallError(target, error);\n this.setLatestError(target, callError);\n throw callError;\n }\n };\n }\n\n /**\n * Tees any errors encountered in an function to the state.\n *\n * @param action Function to execute.\n * @param target The error target to tee error to.\n * @returns Result of calling `f`. Also re-raises any exceptions thrown from `f`.\n * @throws CallError. Exceptions thrown from `f` are tagged with the failed `target.\n */\n public withErrorTeedToState<Args extends unknown[], R>(action: (...args: Args) => R, target: CallErrorTarget): (...args: Args) => R {\n return (...args: Args): R => {\n try {\n callingStatefulLogger.info(`Calling stateful client target function called: ${target}`);\n return action(...args);\n } catch (error) {\n const callError = toCallError(target, error);\n this.setLatestError(target, callError);\n throw callError;\n }\n };\n }\n\n /**\n * Tees direct errors to state.\n * @remarks\n * This is typically used for errors that are caught and intended to be shown to the user.\n *\n * @param error The raw error to report.\n * @param target The error target to tee error to.\n *\n * @private\n */\n public teeErrorToState = (error: Error, target: CallErrorTarget): void => {\n const callError = toCallError(target, error);\n this.setLatestError(target, callError);\n };\n private setLatestError(target: CallErrorTarget, error: CallError): void {\n this.modifyState((draft: CallClientState) => {\n draft.latestErrors[target] = error;\n });\n }\n}\nconst toCallError = (target: CallErrorTarget, error: unknown): CallError => {\n if (error instanceof Error) {\n return new CallError(target, error);\n }\n return new CallError(target, new Error((error as string)));\n};\nconst findOldestCallEnded = (calls: {\n [key: string]: {\n endTime?: Date;\n };\n}): string => {\n const callEntries = Object.entries(calls);\n let [oldestCallId, oldestCall] = callEntries[0];\n if (oldestCall.endTime === undefined) {\n return oldestCallId;\n }\n for (const [callId, call] of callEntries.slice(1)) {\n if (call.endTime === undefined) {\n return callId;\n }\n if ((call.endTime?.getTime() ?? 0) < (oldestCall.endTime?.getTime() ?? 0)) {\n [oldestCallId, oldestCall] = [callId, call];\n }\n }\n return oldestCallId;\n};\"../../acs-ui-common/src\""]}
@@ -13,13 +13,14 @@ import { ProxyCallCommon } from './CallDeclarativeCommon';
13
13
  class ProxyCall extends ProxyCallCommon {
14
14
  get(target, prop) {
15
15
  switch (prop) {
16
- case 'addParticipant': {
17
- return this.getContext().withAsyncErrorTeedToState(function (...args) {
18
- return __awaiter(this, void 0, void 0, function* () {
19
- return yield target.addParticipant(...args);
20
- });
21
- }, 'Call.addParticipant');
22
- }
16
+ case 'addParticipant':
17
+ {
18
+ return this.getContext().withAsyncErrorTeedToState(function (...args) {
19
+ return __awaiter(this, void 0, void 0, function* () {
20
+ return yield target.addParticipant(...args);
21
+ });
22
+ }, 'Call.addParticipant');
23
+ }
23
24
  default:
24
25
  return super.get(target, prop);
25
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CallDeclarative.js","sourceRoot":"","sources":["../../../../../calling-stateful-client/src/CallDeclarative.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;AAGlC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAe1D,MAAM,SAAU,SAAQ,eAAe;IAC9B,GAAG,CAAuB,MAAY,EAAE,IAAO;QACpD,QAAQ,IAAI,EAAE;YACZ,KAAK,gBAAgB,CAAC,CAAC;gBACrB,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,yBAAyB,CAAC,UACjD,GAAG,IAAwC;;wBAE3C,OAAO,MAAM,MAAM,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,CAAC;oBAC9C,CAAC;iBAAA,EACD,qBAAqB,CAAC,CAAC;aACxB;YACD;gBACE,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAW,CAAC,CAAC;SACzC;IACH,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAU,EAAE,OAAoB,EAAmB,EAAE;IACnF,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE;QACzC,YAAY,EAAE,KAAK;QACnB,KAAK,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE;KACrC,CAAC,CAAC;IAEH,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,SAAS,CAAoB,CAAC;AACvD,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { Call } from '@azure/communication-calling';\nimport { ProxyCallCommon } from './CallDeclarativeCommon';\nimport { CallContext } from './CallContext';\n\n/**\n * TODO: This should likely be exported?\n *\n * @private\n */\nexport interface DeclarativeCall extends Call {\n /**\n * Stop any declarative specific subscriptions and remove declarative subscribers.\n */\n unsubscribe(): void;\n}\n\nclass ProxyCall extends ProxyCallCommon implements ProxyHandler<Call> {\n public get<P extends keyof Call>(target: Call, prop: P): any {\n switch (prop) {\n case 'addParticipant': {\n return this.getContext().withAsyncErrorTeedToState(async function (\n ...args: Parameters<Call['addParticipant']>\n ) {\n return await target.addParticipant(...args);\n },\n 'Call.addParticipant');\n }\n default:\n return super.get(target, prop as any);\n }\n }\n}\n\n/**\n * Creates a declarative Call by proxying Call with ProxyCall.\n * This should only be used with CallAgentDeclarative as CallAgentDeclarative will add that\n * call to the context properly (need to have the Call in context to update it - CallAgentDeclarative will add Call to\n * context)\n *\n * @param call - Call from SDK\n * @param context - CallContext from StatefulCallClient\n */\nexport const callDeclaratify = (call: Call, context: CallContext): DeclarativeCall => {\n const proxyCall = new ProxyCall(context);\n Object.defineProperty(call, 'unsubscribe', {\n configurable: false,\n value: () => proxyCall.unsubscribe()\n });\n\n return new Proxy(call, proxyCall) as DeclarativeCall;\n};\n"]}
1
+ {"version":3,"file":"CallDeclarative.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/CallDeclarative.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;AAGlC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAc1D,MAAM,SAAU,SAAQ,eAAe;IAC9B,GAAG,CAAuB,MAAY,EAAE,IAAO;QACpD,QAAQ,IAAI,EAAE;YACZ,KAAK,gBAAgB;gBACnB;oBACE,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,yBAAyB,CAAC,UAAgB,GAAG,IAAwC;;4BAC5G,OAAO,MAAM,MAAM,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,CAAC;wBAC9C,CAAC;qBAAA,EAAE,qBAAqB,CAAC,CAAC;iBAC3B;YACH;gBACE,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,EAAG,IAAY,CAAC,CAAC;SAC3C;IACH,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAU,EAAE,OAAoB,EAAmB,EAAE;IACnF,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE;QACzC,YAAY,EAAE,KAAK;QACnB,KAAK,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE;KACrC,CAAC,CAAC;IACH,OAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,SAAS,CAAqB,CAAC;AACzD,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { Call } from '@azure/communication-calling';\nimport { ProxyCallCommon } from './CallDeclarativeCommon';\nimport { CallContext } from './CallContext';\n\n/**\n * TODO: This should likely be exported?\n *\n * @private\n */\nexport interface DeclarativeCall extends Call {\n /**\n * Stop any declarative specific subscriptions and remove declarative subscribers.\n */\n unsubscribe(): void;\n}\nclass ProxyCall extends ProxyCallCommon implements ProxyHandler<Call> {\n public get<P extends keyof Call>(target: Call, prop: P): any {\n switch (prop) {\n case 'addParticipant':\n {\n return this.getContext().withAsyncErrorTeedToState(async function (...args: Parameters<Call['addParticipant']>) {\n return await target.addParticipant(...args);\n }, 'Call.addParticipant');\n }\n default:\n return super.get(target, (prop as any));\n }\n }\n}\n\n/**\n * Creates a declarative Call by proxying Call with ProxyCall.\n * This should only be used with CallAgentDeclarative as CallAgentDeclarative will add that\n * call to the context properly (need to have the Call in context to update it - CallAgentDeclarative will add Call to\n * context)\n *\n * @param call - Call from SDK\n * @param context - CallContext from StatefulCallClient\n */\nexport const callDeclaratify = (call: Call, context: CallContext): DeclarativeCall => {\n const proxyCall = new ProxyCall(context);\n Object.defineProperty(call, 'unsubscribe', {\n configurable: false,\n value: () => proxyCall.unsubscribe()\n });\n return (new Proxy(call, proxyCall) as DeclarativeCall);\n};"]}
@@ -24,62 +24,77 @@ export class ProxyCallCommon {
24
24
  }
25
25
  get(target, prop) {
26
26
  switch (prop) {
27
- case 'mute': {
28
- return this._context.withAsyncErrorTeedToState(function (...args) {
29
- return __awaiter(this, void 0, void 0, function* () {
30
- return yield target.mute(...args);
31
- });
32
- }, 'Call.mute');
33
- }
34
- case 'unmute': {
35
- return this._context.withAsyncErrorTeedToState(function (...args) {
36
- return __awaiter(this, void 0, void 0, function* () {
37
- return yield target.unmute(...args);
38
- });
39
- }, 'Call.unmute');
40
- }
41
- case 'startVideo': {
42
- return this._context.withAsyncErrorTeedToState(function (...args) {
43
- return __awaiter(this, void 0, void 0, function* () {
44
- return yield target.startVideo(...args);
45
- });
46
- }, 'Call.startVideo');
47
- }
48
- case 'stopVideo': {
49
- return this._context.withAsyncErrorTeedToState(function (...args) {
50
- return __awaiter(this, void 0, void 0, function* () {
51
- return yield target.stopVideo(...args);
52
- });
53
- }, 'Call.stopVideo');
54
- }
55
- case 'startScreenSharing': {
56
- return this._context.withAsyncErrorTeedToState(function (...args) {
57
- return __awaiter(this, void 0, void 0, function* () {
58
- return yield target.startScreenSharing(...args);
59
- });
60
- }, 'Call.startScreenSharing');
61
- }
62
- case 'stopScreenSharing': {
63
- return this._context.withAsyncErrorTeedToState(function (...args) {
64
- return __awaiter(this, void 0, void 0, function* () {
65
- return yield target.stopScreenSharing(...args);
66
- });
67
- }, 'Call.stopScreenSharing');
68
- }
69
- case 'hold': {
70
- return this._context.withAsyncErrorTeedToState(function (...args) {
71
- return __awaiter(this, void 0, void 0, function* () {
72
- return yield target.hold(...args);
73
- });
74
- }, 'Call.hold');
75
- }
76
- case 'resume': {
77
- return this._context.withAsyncErrorTeedToState(function (...args) {
78
- return __awaiter(this, void 0, void 0, function* () {
79
- return yield target.resume(...args);
80
- });
81
- }, 'Call.resume');
82
- }
27
+ case 'mute':
28
+ {
29
+ return this._context.withAsyncErrorTeedToState(function (...args) {
30
+ return __awaiter(this, void 0, void 0, function* () {
31
+ return yield target.mute(...args);
32
+ });
33
+ }, 'Call.mute');
34
+ }
35
+ case 'unmute':
36
+ {
37
+ return this._context.withAsyncErrorTeedToState(function (...args) {
38
+ return __awaiter(this, void 0, void 0, function* () {
39
+ return yield target.unmute(...args);
40
+ });
41
+ }, 'Call.unmute');
42
+ }
43
+ case 'startVideo':
44
+ {
45
+ return this._context.withAsyncErrorTeedToState(function (...args) {
46
+ return __awaiter(this, void 0, void 0, function* () {
47
+ return yield target.startVideo(...args);
48
+ });
49
+ }, 'Call.startVideo');
50
+ }
51
+ case 'stopVideo':
52
+ {
53
+ return this._context.withAsyncErrorTeedToState(function (...args) {
54
+ return __awaiter(this, void 0, void 0, function* () {
55
+ return yield target.stopVideo(...args);
56
+ });
57
+ }, 'Call.stopVideo');
58
+ }
59
+ case 'startScreenSharing':
60
+ {
61
+ return this._context.withAsyncErrorTeedToState(function (...args) {
62
+ return __awaiter(this, void 0, void 0, function* () {
63
+ return yield target.startScreenSharing(...args);
64
+ });
65
+ }, 'Call.startScreenSharing');
66
+ }
67
+ case 'stopScreenSharing':
68
+ {
69
+ return this._context.withAsyncErrorTeedToState(function (...args) {
70
+ return __awaiter(this, void 0, void 0, function* () {
71
+ return yield target.stopScreenSharing(...args);
72
+ });
73
+ }, 'Call.stopScreenSharing');
74
+ }
75
+ case 'hold':
76
+ {
77
+ return this._context.withAsyncErrorTeedToState(function (...args) {
78
+ return __awaiter(this, void 0, void 0, function* () {
79
+ return yield target.hold(...args);
80
+ });
81
+ }, 'Call.hold');
82
+ }
83
+ case 'resume':
84
+ {
85
+ return this._context.withAsyncErrorTeedToState(function (...args) {
86
+ return __awaiter(this, void 0, void 0, function* () {
87
+ return yield target.resume(...args);
88
+ });
89
+ }, 'Call.resume');
90
+ }
91
+ case 'feature':
92
+ {
93
+ // these are mini version of Proxy object - if it grows too big, a real Proxy object should be used.
94
+ return this._context.withErrorTeedToState((...args) => {
95
+ return target.feature(...args);
96
+ }, 'Call.feature');
97
+ }
83
98
  default:
84
99
  return Reflect.get(target, prop);
85
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CallDeclarativeCommon.js","sourceRoot":"","sources":["../../../../../calling-stateful-client/src/CallDeclarativeCommon.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;AAKlC;;GAEG;AACH,MAAM,OAAgB,eAAe;IAGnC,YAAY,OAAoB;QAC9B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAEM,WAAW;QAChB,6EAA6E;IAC/E,CAAC;IAES,UAAU;QAClB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAEM,GAAG,CAA6B,MAAkB,EAAE,IAAO;QAChE,QAAQ,IAAI,EAAE;YACZ,KAAK,MAAM,CAAC,CAAC;gBACX,OAAO,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,UAAgB,GAAG,IAAoC;;wBACpG,OAAO,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;oBACpC,CAAC;iBAAA,EAAE,WAAW,CAAC,CAAC;aACjB;YACD,KAAK,QAAQ,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,UAAgB,GAAG,IAAsC;;wBACtG,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;oBACtC,CAAC;iBAAA,EAAE,aAAa,CAAC,CAAC;aACnB;YACD,KAAK,YAAY,CAAC,CAAC;gBACjB,OAAO,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,UAAgB,GAAG,IAA0C;;wBAC1G,OAAO,MAAM,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC;oBAC1C,CAAC;iBAAA,EAAE,iBAAiB,CAAC,CAAC;aACvB;YACD,KAAK,WAAW,CAAC,CAAC;gBAChB,OAAO,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,UAAgB,GAAG,IAAyC;;wBACzG,OAAO,MAAM,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;oBACzC,CAAC;iBAAA,EAAE,gBAAgB,CAAC,CAAC;aACtB;YACD,KAAK,oBAAoB,CAAC,CAAC;gBACzB,OAAO,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,UAC7C,GAAG,IAAkD;;wBAErD,OAAO,MAAM,MAAM,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,CAAC;oBAClD,CAAC;iBAAA,EACD,yBAAyB,CAAC,CAAC;aAC5B;YACD,KAAK,mBAAmB,CAAC,CAAC;gBACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,UAC7C,GAAG,IAAiD;;wBAEpD,OAAO,MAAM,MAAM,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,CAAC;oBACjD,CAAC;iBAAA,EACD,wBAAwB,CAAC,CAAC;aAC3B;YACD,KAAK,MAAM,CAAC,CAAC;gBACX,OAAO,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,UAAgB,GAAG,IAAoC;;wBACpG,OAAO,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;oBACpC,CAAC;iBAAA,EAAE,WAAW,CAAC,CAAC;aACjB;YACD,KAAK,QAAQ,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,UAAgB,GAAG,IAAsC;;wBACtG,OAAO,MAAM,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;oBACtC,CAAC;iBAAA,EAAE,aAAa,CAAC,CAAC;aACnB;YACD;gBACE,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SACpC;IACH,CAAC;CACF","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { CallContext } from './CallContext';\nimport { CallCommon } from './BetaToStableTypes';\n\n/**\n * @private\n */\nexport abstract class ProxyCallCommon implements ProxyHandler<CallCommon> {\n private _context: CallContext;\n\n constructor(context: CallContext) {\n this._context = context;\n }\n\n public unsubscribe(): void {\n /** No subscriptions yet. But there will be one for transfer feature soon. */\n }\n\n protected getContext(): CallContext {\n return this._context;\n }\n\n public get<P extends keyof CallCommon>(target: CallCommon, prop: P): any {\n switch (prop) {\n case 'mute': {\n return this._context.withAsyncErrorTeedToState(async function (...args: Parameters<CallCommon['mute']>) {\n return await target.mute(...args);\n }, 'Call.mute');\n }\n case 'unmute': {\n return this._context.withAsyncErrorTeedToState(async function (...args: Parameters<CallCommon['unmute']>) {\n return await target.unmute(...args);\n }, 'Call.unmute');\n }\n case 'startVideo': {\n return this._context.withAsyncErrorTeedToState(async function (...args: Parameters<CallCommon['startVideo']>) {\n return await target.startVideo(...args);\n }, 'Call.startVideo');\n }\n case 'stopVideo': {\n return this._context.withAsyncErrorTeedToState(async function (...args: Parameters<CallCommon['stopVideo']>) {\n return await target.stopVideo(...args);\n }, 'Call.stopVideo');\n }\n case 'startScreenSharing': {\n return this._context.withAsyncErrorTeedToState(async function (\n ...args: Parameters<CallCommon['startScreenSharing']>\n ) {\n return await target.startScreenSharing(...args);\n },\n 'Call.startScreenSharing');\n }\n case 'stopScreenSharing': {\n return this._context.withAsyncErrorTeedToState(async function (\n ...args: Parameters<CallCommon['stopScreenSharing']>\n ) {\n return await target.stopScreenSharing(...args);\n },\n 'Call.stopScreenSharing');\n }\n case 'hold': {\n return this._context.withAsyncErrorTeedToState(async function (...args: Parameters<CallCommon['hold']>) {\n return await target.hold(...args);\n }, 'Call.hold');\n }\n case 'resume': {\n return this._context.withAsyncErrorTeedToState(async function (...args: Parameters<CallCommon['resume']>) {\n return await target.resume(...args);\n }, 'Call.resume');\n }\n default:\n return Reflect.get(target, prop);\n }\n }\n}\n"]}
1
+ {"version":3,"file":"CallDeclarativeCommon.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/CallDeclarativeCommon.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { CallContext } from './CallContext';\nimport { CallCommon } from './BetaToStableTypes';\n/**\n * @private\n */\nexport abstract class ProxyCallCommon implements ProxyHandler<CallCommon> {\n private _context: CallContext;\n constructor(context: CallContext) {\n this._context = context;\n }\n public unsubscribe(): void {\n /** No subscriptions yet. But there will be one for transfer feature soon. */\n }\n protected getContext(): CallContext {\n return this._context;\n }\n public get<P extends keyof CallCommon>(target: CallCommon, prop: P): any {\n switch (prop) {\n case 'mute':\n {\n return this._context.withAsyncErrorTeedToState(async function (...args: Parameters<CallCommon['mute']>) {\n return await target.mute(...args);\n }, 'Call.mute');\n }\n case 'unmute':\n {\n return this._context.withAsyncErrorTeedToState(async function (...args: Parameters<CallCommon['unmute']>) {\n return await target.unmute(...args);\n }, 'Call.unmute');\n }\n case 'startVideo':\n {\n return this._context.withAsyncErrorTeedToState(async function (...args: Parameters<CallCommon['startVideo']>) {\n return await target.startVideo(...args);\n }, 'Call.startVideo');\n }\n case 'stopVideo':\n {\n return this._context.withAsyncErrorTeedToState(async function (...args: Parameters<CallCommon['stopVideo']>) {\n return await target.stopVideo(...args);\n }, 'Call.stopVideo');\n }\n case 'startScreenSharing':\n {\n return this._context.withAsyncErrorTeedToState(async function (...args: Parameters<CallCommon['startScreenSharing']>) {\n return await target.startScreenSharing(...args);\n }, 'Call.startScreenSharing');\n }\n case 'stopScreenSharing':\n {\n return this._context.withAsyncErrorTeedToState(async function (...args: Parameters<CallCommon['stopScreenSharing']>) {\n return await target.stopScreenSharing(...args);\n }, 'Call.stopScreenSharing');\n }\n case 'hold':\n {\n return this._context.withAsyncErrorTeedToState(async function (...args: Parameters<CallCommon['hold']>) {\n return await target.hold(...args);\n }, 'Call.hold');\n }\n case 'resume':\n {\n return this._context.withAsyncErrorTeedToState(async function (...args: Parameters<CallCommon['resume']>) {\n return await target.resume(...args);\n }, 'Call.resume');\n }\n case 'feature':\n {\n // these are mini version of Proxy object - if it grows too big, a real Proxy object should be used.\n return this._context.withErrorTeedToState((...args: Parameters<CallCommon['feature']>) => {\n return target.feature(...args);\n }, 'Call.feature');\n }\n default:\n return Reflect.get(target, prop);\n }\n }\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"CallIdHistory.js","sourceRoot":"","sources":["../../../../../calling-stateful-client/src/CallIdHistory.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC;;;;;GAKG;AACH,MAAM,OAAO,aAAa;IAA1B;QACU,mBAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;IA4BrD,CAAC;IA1BQ,mBAAmB,CAAC,SAAiB,EAAE,SAAiB;QAC7D,8DAA8D;QAC9D,mFAAmF;QACnF,wEAAwE;QACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,SAAS,EAAE;YACxE,OAAO,CAAC,KAAK,CAAC,GAAG,SAAS,8BAA8B,QAAQ,8BAA8B,SAAS,EAAE,CAAC,CAAC;SAC5G;QAED,kDAAkD;QAClD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACtC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAChD,CAAC;IAEM,YAAY,CAAC,MAAc;QAChC,IAAI,MAAM,GAAG,MAAM,CAAC;QACpB,sEAAsE;QACtE,OAAO,IAAI,EAAE;YACX,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,KAAK,KAAK,SAAS,EAAE;gBACvB,MAAM;aACP;YACD,MAAM,GAAG,KAAK,CAAC;SAChB;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * @private\n * Call Id will change during the call for at least 1 time\n * This is to avoid async bug that call id has been changed during an async-await function\n * but the function still uses stale call id to access state\n */\nexport class CallIdHistory {\n private _callIdHistory = new Map<string, string>();\n\n public updateCallIdHistory(newCallId: string, oldCallId: string): void {\n // callId for a call can fluctuate between some set of values.\n // But if a newCallId already exists, and maps to different call, we're in trouble.\n // This can only happen if a callId is reused across two distinct calls.\n const existing = this._callIdHistory.get(newCallId);\n if (existing !== undefined && this.latestCallId(newCallId) !== oldCallId) {\n console.trace(`${newCallId} alredy exists and maps to ${existing}, which is not the same as ${oldCallId}`);\n }\n\n // The latest callId never maps to another callId.\n this._callIdHistory.delete(newCallId);\n this._callIdHistory.set(oldCallId, newCallId);\n }\n\n public latestCallId(callId: string): string {\n let latest = callId;\n /* eslint no-constant-condition: [\"error\", { \"checkLoops\": false }] */\n while (true) {\n const newer = this._callIdHistory.get(latest);\n if (newer === undefined) {\n break;\n }\n latest = newer;\n }\n return latest;\n }\n}\n"]}
1
+ {"version":3,"file":"CallIdHistory.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/CallIdHistory.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC;;;;;GAKG;AACH,MAAM,OAAO,aAAa;IAA1B;QACU,mBAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;IA0BrD,CAAC;IAzBQ,mBAAmB,CAAC,SAAiB,EAAE,SAAiB;QAC7D,8DAA8D;QAC9D,mFAAmF;QACnF,wEAAwE;QACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,SAAS,EAAE;YACxE,OAAO,CAAC,KAAK,CAAC,GAAG,SAAS,8BAA8B,QAAQ,8BAA8B,SAAS,EAAE,CAAC,CAAC;SAC5G;QAED,kDAAkD;QAClD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACtC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAChD,CAAC;IACM,YAAY,CAAC,MAAc;QAChC,IAAI,MAAM,GAAG,MAAM,CAAC;QACpB,sEAAsE;QACtE,OAAO,IAAI,EAAE;YACX,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,KAAK,KAAK,SAAS,EAAE;gBACvB,MAAM;aACP;YACD,MAAM,GAAG,KAAK,CAAC;SAChB;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * @private\n * Call Id will change during the call for at least 1 time\n * This is to avoid async bug that call id has been changed during an async-await function\n * but the function still uses stale call id to access state\n */\nexport class CallIdHistory {\n private _callIdHistory = new Map<string, string>();\n public updateCallIdHistory(newCallId: string, oldCallId: string): void {\n // callId for a call can fluctuate between some set of values.\n // But if a newCallId already exists, and maps to different call, we're in trouble.\n // This can only happen if a callId is reused across two distinct calls.\n const existing = this._callIdHistory.get(newCallId);\n if (existing !== undefined && this.latestCallId(newCallId) !== oldCallId) {\n console.trace(`${newCallId} alredy exists and maps to ${existing}, which is not the same as ${oldCallId}`);\n }\n\n // The latest callId never maps to another callId.\n this._callIdHistory.delete(newCallId);\n this._callIdHistory.set(oldCallId, newCallId);\n }\n public latestCallId(callId: string): string {\n let latest = callId;\n /* eslint no-constant-condition: [\"error\", { \"checkLoops\": false }] */\n while (true) {\n const newer = this._callIdHistory.get(latest);\n if (newer === undefined) {\n break;\n }\n latest = newer;\n }\n return latest;\n }\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"CallIdRef.js","sourceRoot":"","sources":["../../../../../calling-stateful-client/src/CallIdRef.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * Internal object used to hold callId. This is so when we create the closure that includes this container we can update\n * the container contents without needing to update the closure since the closure is referencing this object otherwise\n * if the closure contains a primitive the updating of the primitive does not get picked up by the closure.\n */\nexport interface CallIdRef {\n callId: string;\n}\n"]}
1
+ {"version":3,"file":"CallIdRef.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/CallIdRef.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * Internal object used to hold callId. This is so when we create the closure that includes this container we can update\n * the container contents without needing to update the closure since the closure is referencing this object otherwise\n * if the closure contains a primitive the updating of the primitive does not get picked up by the closure.\n */\nexport interface CallIdRef {\n callId: string;\n}"]}
@@ -24,7 +24,6 @@ export declare class CallSubscriber {
24
24
  private idChanged;
25
25
  private isScreenSharingOnChanged;
26
26
  private isMuteChanged;
27
- private callRoleChangedHandler;
28
27
  private remoteParticipantsUpdated;
29
28
  private localVideoStreamsUpdated;
30
29
  private dominantSpeakersChanged;