@azure/communication-react 1.25.0-alpha-202502270016 → 1.25.0-beta.1

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 (1120) hide show
  1. package/dist/communication-react.d.ts +30 -56
  2. package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-D-c4G2X8.js → ChatMessageComponentAsRichTextEditBox-DDbI_4qb.js} +41 -115
  3. package/dist/dist-cjs/communication-react/ChatMessageComponentAsRichTextEditBox-DDbI_4qb.js.map +1 -0
  4. package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-DZ0B-aeu.js → RichTextSendBoxWrapper-DmoSn5h1.js} +2 -4
  5. package/dist/dist-cjs/communication-react/RichTextSendBoxWrapper-DmoSn5h1.js.map +1 -0
  6. package/dist/dist-cjs/communication-react/{index-BJy8rF6U.js → index-CYhCyRf_.js} +5582 -7282
  7. package/dist/dist-cjs/communication-react/index-CYhCyRf_.js.map +1 -0
  8. package/dist/dist-cjs/communication-react/index.js +1 -1
  9. package/dist/dist-esm/acs-ui-common/src/MessageStatus.js.map +1 -1
  10. package/dist/dist-esm/acs-ui-common/src/areEqual.js.map +1 -1
  11. package/dist/dist-esm/acs-ui-common/src/common.js.map +1 -1
  12. package/dist/dist-esm/acs-ui-common/src/commonProperties.js.map +1 -1
  13. package/dist/dist-esm/acs-ui-common/src/constants.js +0 -1
  14. package/dist/dist-esm/acs-ui-common/src/constants.js.map +1 -1
  15. package/dist/dist-esm/acs-ui-common/src/cssUtils.js.map +1 -1
  16. package/dist/dist-esm/acs-ui-common/src/dataConversion.js +0 -1
  17. package/dist/dist-esm/acs-ui-common/src/dataConversion.js.map +1 -1
  18. package/dist/dist-esm/acs-ui-common/src/identifier.js +1 -4
  19. package/dist/dist-esm/acs-ui-common/src/identifier.js.map +1 -1
  20. package/dist/dist-esm/acs-ui-common/src/index.js +0 -3
  21. package/dist/dist-esm/acs-ui-common/src/index.js.map +1 -1
  22. package/dist/dist-esm/acs-ui-common/src/localizationUtils.js.map +1 -1
  23. package/dist/dist-esm/acs-ui-common/src/logEvent.js.map +1 -1
  24. package/dist/dist-esm/acs-ui-common/src/memoizeFnAll.js.map +1 -1
  25. package/dist/dist-esm/acs-ui-common/src/removeImageTags.js +1 -1
  26. package/dist/dist-esm/acs-ui-common/src/removeImageTags.js.map +1 -1
  27. package/dist/dist-esm/acs-ui-common/src/safeStringify.js.map +1 -1
  28. package/dist/dist-esm/acs-ui-common/src/telemetry.js.map +1 -1
  29. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  30. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  31. package/dist/dist-esm/acs-ui-javascript-loaders/src/callCompositeLoader.js +4 -1
  32. package/dist/dist-esm/acs-ui-javascript-loaders/src/callCompositeLoader.js.map +1 -1
  33. package/dist/dist-esm/acs-ui-javascript-loaders/src/callWithChatCompositeLoader.js +4 -1
  34. package/dist/dist-esm/acs-ui-javascript-loaders/src/callWithChatCompositeLoader.js.map +1 -1
  35. package/dist/dist-esm/acs-ui-javascript-loaders/src/chatCompositeLoader.js +4 -1
  36. package/dist/dist-esm/acs-ui-javascript-loaders/src/chatCompositeLoader.js.map +1 -1
  37. package/dist/dist-esm/acs-ui-javascript-loaders/src/index.js.map +1 -1
  38. package/dist/dist-esm/acs-ui-javascript-loaders/src/outboundCallCompositeLoader.js +7 -6
  39. package/dist/dist-esm/acs-ui-javascript-loaders/src/outboundCallCompositeLoader.js.map +1 -1
  40. package/dist/dist-esm/acs-ui-javascript-loaders/src/utils.js +1 -1
  41. package/dist/dist-esm/acs-ui-javascript-loaders/src/utils.js.map +1 -1
  42. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +0 -5
  43. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  44. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +8 -18
  45. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
  46. package/dist/dist-esm/calling-component-bindings/src/captionsSelector.js +14 -55
  47. package/dist/dist-esm/calling-component-bindings/src/captionsSelector.js.map +1 -1
  48. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js +55 -20
  49. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js.map +1 -1
  50. package/dist/dist-esm/calling-component-bindings/src/getRemoteParticipantsExcludingConsumers.js +1 -1
  51. package/dist/dist-esm/calling-component-bindings/src/getRemoteParticipantsExcludingConsumers.js.map +1 -1
  52. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +81 -88
  53. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
  54. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js +2 -2
  55. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js.map +1 -1
  56. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js +5 -1
  57. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js.map +1 -1
  58. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js +10 -12
  59. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js.map +1 -1
  60. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.d.ts +1 -1
  61. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.js.map +1 -1
  62. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  63. package/dist/dist-esm/calling-component-bindings/src/hooks/useSelector.js.map +1 -1
  64. package/dist/dist-esm/calling-component-bindings/src/incomingCallStackSelector.js +2 -8
  65. package/dist/dist-esm/calling-component-bindings/src/incomingCallStackSelector.js.map +1 -1
  66. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  67. package/dist/dist-esm/calling-component-bindings/src/notificationStackSelector.js +61 -44
  68. package/dist/dist-esm/calling-component-bindings/src/notificationStackSelector.js.map +1 -1
  69. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +9 -30
  70. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
  71. package/dist/dist-esm/calling-component-bindings/src/participantsButtonSelector.js.map +1 -1
  72. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.js.map +1 -1
  73. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js +3 -6
  74. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js.map +1 -1
  75. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js.map +1 -1
  76. package/dist/dist-esm/calling-component-bindings/src/providers/index.js.map +1 -1
  77. package/dist/dist-esm/calling-component-bindings/src/utils/SelectorUtils.js.map +1 -1
  78. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js +7 -18
  79. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js.map +1 -1
  80. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js +9 -11
  81. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js.map +1 -1
  82. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.d.ts +1 -1
  83. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +12 -22
  84. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  85. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js +7 -37
  86. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
  87. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.js.map +1 -1
  88. package/dist/dist-esm/calling-stateful-client/src/BreakoutRoomsSubscriber.js +8 -16
  89. package/dist/dist-esm/calling-stateful-client/src/BreakoutRoomsSubscriber.js.map +1 -1
  90. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
  91. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js +74 -65
  92. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js.map +1 -1
  93. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +3 -24
  94. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  95. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +40 -71
  96. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  97. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js +8 -7
  98. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js.map +1 -1
  99. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js +108 -99
  100. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js.map +1 -1
  101. package/dist/dist-esm/calling-stateful-client/src/CallFeatureStreamUtils.js +13 -16
  102. package/dist/dist-esm/calling-stateful-client/src/CallFeatureStreamUtils.js.map +1 -1
  103. package/dist/dist-esm/calling-stateful-client/src/CallIdHistory.js.map +1 -1
  104. package/dist/dist-esm/calling-stateful-client/src/CallIdRef.js.map +1 -1
  105. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +9 -27
  106. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  107. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js +2 -6
  108. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js.map +1 -1
  109. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.js.map +1 -1
  110. package/dist/dist-esm/calling-stateful-client/src/Converter.js +27 -18
  111. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  112. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js +73 -58
  113. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js.map +1 -1
  114. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js +16 -14
  115. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js.map +1 -1
  116. package/dist/dist-esm/calling-stateful-client/src/IncomingCallSubscriber.js.map +1 -1
  117. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js +22 -16
  118. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js.map +1 -1
  119. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.js +0 -3
  120. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.js.map +1 -1
  121. package/dist/dist-esm/calling-stateful-client/src/LocalVideoStreamVideoEffectsSubscriber.js.map +1 -1
  122. package/dist/dist-esm/calling-stateful-client/src/Logger.js.map +1 -1
  123. package/dist/dist-esm/calling-stateful-client/src/MediaAccessSubscriber.js.map +1 -1
  124. package/dist/dist-esm/calling-stateful-client/src/OptimalVideoCountSubscriber.js +3 -1
  125. package/dist/dist-esm/calling-stateful-client/src/OptimalVideoCountSubscriber.js.map +1 -1
  126. package/dist/dist-esm/calling-stateful-client/src/PPTLiveSubscriber.js.map +1 -1
  127. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js.map +1 -1
  128. package/dist/dist-esm/calling-stateful-client/src/RaiseHandSubscriber.js.map +1 -1
  129. package/dist/dist-esm/calling-stateful-client/src/ReactionSubscriber.js.map +1 -1
  130. package/dist/dist-esm/calling-stateful-client/src/RealTimeTextSubscriber.js +0 -3
  131. package/dist/dist-esm/calling-stateful-client/src/RealTimeTextSubscriber.js.map +1 -1
  132. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js +1 -6
  133. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js.map +1 -1
  134. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js.map +1 -1
  135. package/dist/dist-esm/calling-stateful-client/src/SpotlightSubscriber.js.map +1 -1
  136. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts +2 -2
  137. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js +64 -64
  138. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
  139. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js +24 -34
  140. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js.map +1 -1
  141. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js +11 -8
  142. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js.map +1 -1
  143. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js.map +1 -1
  144. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js +8 -8
  145. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js.map +1 -1
  146. package/dist/dist-esm/calling-stateful-client/src/TeamsIncomingCallDeclarative.js +16 -14
  147. package/dist/dist-esm/calling-stateful-client/src/TeamsIncomingCallDeclarative.js.map +1 -1
  148. package/dist/dist-esm/calling-stateful-client/src/TogetherModeSubscriber.js +4 -15
  149. package/dist/dist-esm/calling-stateful-client/src/TogetherModeSubscriber.js.map +1 -1
  150. package/dist/dist-esm/calling-stateful-client/src/TogetherModeVideoStreamSubscriber.js +0 -3
  151. package/dist/dist-esm/calling-stateful-client/src/TogetherModeVideoStreamSubscriber.js.map +1 -1
  152. package/dist/dist-esm/calling-stateful-client/src/TranscriptionSubscriber.js.map +1 -1
  153. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js.map +1 -1
  154. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.d.ts +0 -1
  155. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js +3 -34
  156. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js.map +1 -1
  157. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js +7 -6
  158. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js.map +1 -1
  159. package/dist/dist-esm/calling-stateful-client/src/index-public.d.ts +0 -1
  160. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  161. package/dist/dist-esm/calling-stateful-client/src/index.js.map +1 -1
  162. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js +4 -4
  163. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js.map +1 -1
  164. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js +2 -2
  165. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js.map +1 -1
  166. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js +15 -15
  167. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js.map +1 -1
  168. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.d.ts +1 -1
  169. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js +10 -28
  170. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js.map +1 -1
  171. package/dist/dist-esm/chat-component-bindings/src/hooks/useHandlers.js.map +1 -1
  172. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js +0 -1
  173. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  174. package/dist/dist-esm/chat-component-bindings/src/hooks/useSelector.js.map +1 -1
  175. package/dist/dist-esm/chat-component-bindings/src/index.js.map +1 -1
  176. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +16 -43
  177. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
  178. package/dist/dist-esm/chat-component-bindings/src/providers/ChatClientProvider.js.map +1 -1
  179. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js +1 -1
  180. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js.map +1 -1
  181. package/dist/dist-esm/chat-component-bindings/src/sendBoxSelector.js.map +1 -1
  182. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js +7 -3
  183. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js.map +1 -1
  184. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js +1 -3
  185. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js.map +1 -1
  186. package/dist/dist-esm/chat-component-bindings/src/utils/constants.js.map +1 -1
  187. package/dist/dist-esm/chat-component-bindings/src/utils/getImageAttachmentsFromHTMLContent.js +1 -4
  188. package/dist/dist-esm/chat-component-bindings/src/utils/getImageAttachmentsFromHTMLContent.js.map +1 -1
  189. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js +3 -10
  190. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js.map +1 -1
  191. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.d.ts +1 -1
  192. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js.map +1 -1
  193. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js +22 -16
  194. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js.map +1 -1
  195. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js +11 -9
  196. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js.map +1 -1
  197. package/dist/dist-esm/chat-stateful-client/src/Logger.js.map +1 -1
  198. package/dist/dist-esm/chat-stateful-client/src/ResourceDownloadQueue.js +16 -4
  199. package/dist/dist-esm/chat-stateful-client/src/ResourceDownloadQueue.js.map +1 -1
  200. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js +67 -57
  201. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js.map +1 -1
  202. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js +128 -114
  203. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js.map +1 -1
  204. package/dist/dist-esm/chat-stateful-client/src/constants.js.map +1 -1
  205. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js.map +1 -1
  206. package/dist/dist-esm/chat-stateful-client/src/index.js.map +1 -1
  207. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedIterator.js.map +1 -1
  208. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListMessages.js.map +1 -1
  209. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListParticipants.js.map +1 -1
  210. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListReadReceipts.js.map +1 -1
  211. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListThreads.js.map +1 -1
  212. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.js.map +1 -1
  213. package/dist/dist-esm/communication-react/src/api-summary.js.map +1 -1
  214. package/dist/dist-esm/communication-react/src/index.js +0 -9
  215. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  216. package/dist/dist-esm/communication-react/src/javascript-loaders.js.map +1 -1
  217. package/dist/dist-esm/communication-react/src/mergedHooks.js.map +1 -1
  218. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js +6 -3
  219. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js.map +1 -1
  220. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerContext.js.map +1 -1
  221. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerMessage.js.map +1 -1
  222. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js +10 -4
  223. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js.map +1 -1
  224. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js +1 -1
  225. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js.map +1 -1
  226. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js +1 -1
  227. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js.map +1 -1
  228. package/dist/dist-esm/react-components/src/components/Announcer.js +1 -1
  229. package/dist/dist-esm/react-components/src/components/Announcer.js.map +1 -1
  230. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentCard.js +11 -11
  231. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentCard.js.map +1 -1
  232. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentCardGroup.js +1 -1
  233. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentCardGroup.js.map +1 -1
  234. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentDownloadCards.js +6 -14
  235. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentDownloadCards.js.map +1 -1
  236. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentUploadCards.js +18 -21
  237. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentUploadCards.js.map +1 -1
  238. package/dist/dist-esm/react-components/src/components/CameraButton.js +20 -13
  239. package/dist/dist-esm/react-components/src/components/CameraButton.js.map +1 -1
  240. package/dist/dist-esm/react-components/src/components/Caption.js +2 -2
  241. package/dist/dist-esm/react-components/src/components/Caption.js.map +1 -1
  242. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js +28 -58
  243. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js.map +1 -1
  244. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js +20 -38
  245. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js.map +1 -1
  246. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js +5 -2
  247. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js.map +1 -1
  248. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js +22 -38
  249. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js.map +1 -1
  250. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.d.ts +1 -1
  251. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.js +25 -25
  252. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.js.map +1 -1
  253. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +29 -35
  254. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
  255. package/dist/dist-esm/react-components/src/components/ChatMessage/DefaultSystemMessage.js +5 -9
  256. package/dist/dist-esm/react-components/src/components/ChatMessage/DefaultSystemMessage.js.map +1 -1
  257. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js +1 -1
  258. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js.map +1 -1
  259. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.d.ts +1 -1
  260. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js +9 -35
  261. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js.map +1 -1
  262. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.d.ts +1 -1
  263. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.js +12 -47
  264. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.js.map +1 -1
  265. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.js +37 -42
  266. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.js.map +1 -1
  267. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.d.ts +0 -7
  268. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.js +2 -13
  269. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.js.map +1 -1
  270. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.js +39 -121
  271. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.js.map +1 -1
  272. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.d.ts +1 -1
  273. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.js +11 -44
  274. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.js.map +1 -1
  275. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.d.ts +1 -1
  276. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js +16 -57
  277. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js.map +1 -1
  278. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/FluentChatMyMessageComponent.js +15 -80
  279. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/FluentChatMyMessageComponent.js.map +1 -1
  280. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js +18 -18
  281. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js.map +1 -1
  282. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js +4 -7
  283. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js.map +1 -1
  284. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js +2 -2
  285. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js.map +1 -1
  286. package/dist/dist-esm/react-components/src/components/ComplianceBanner/Utils.js.map +1 -1
  287. package/dist/dist-esm/react-components/src/components/ComplianceBanner/index.js.map +1 -1
  288. package/dist/dist-esm/react-components/src/components/ComplianceBanner/types.js.map +1 -1
  289. package/dist/dist-esm/react-components/src/components/ControlBar.js +14 -10
  290. package/dist/dist-esm/react-components/src/components/ControlBar.js.map +1 -1
  291. package/dist/dist-esm/react-components/src/components/ControlBarButton.js +4 -14
  292. package/dist/dist-esm/react-components/src/components/ControlBarButton.js.map +1 -1
  293. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js +16 -5
  294. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js.map +1 -1
  295. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js +10 -11
  296. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js.map +1 -1
  297. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js +31 -22
  298. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js.map +1 -1
  299. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js +14 -15
  300. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js.map +1 -1
  301. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js +6 -41
  302. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js.map +1 -1
  303. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js +20 -12
  304. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js.map +1 -1
  305. package/dist/dist-esm/react-components/src/components/DevicesButton.js +27 -19
  306. package/dist/dist-esm/react-components/src/components/DevicesButton.js.map +1 -1
  307. package/dist/dist-esm/react-components/src/components/Dialpad/DTMFToneGenerator.js +48 -12
  308. package/dist/dist-esm/react-components/src/components/Dialpad/DTMFToneGenerator.js.map +1 -1
  309. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +51 -45
  310. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
  311. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js +4 -4
  312. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js.map +1 -1
  313. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js +6 -2
  314. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js.map +1 -1
  315. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js +9 -11
  316. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js.map +1 -1
  317. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js +23 -11
  318. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js.map +1 -1
  319. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js +4 -6
  320. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js.map +1 -1
  321. package/dist/dist-esm/react-components/src/components/Drawer/ReactionDrawerMenuItem.js +5 -11
  322. package/dist/dist-esm/react-components/src/components/Drawer/ReactionDrawerMenuItem.js.map +1 -1
  323. package/dist/dist-esm/react-components/src/components/Drawer/index.js.map +1 -1
  324. package/dist/dist-esm/react-components/src/components/EndCallButton.js +13 -12
  325. package/dist/dist-esm/react-components/src/components/EndCallButton.js.map +1 -1
  326. package/dist/dist-esm/react-components/src/components/ErrorBar.js +5 -9
  327. package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
  328. package/dist/dist-esm/react-components/src/components/ErrorBoundary.js +6 -2
  329. package/dist/dist-esm/react-components/src/components/ErrorBoundary.js.map +1 -1
  330. package/dist/dist-esm/react-components/src/components/GridLayout.js +37 -37
  331. package/dist/dist-esm/react-components/src/components/GridLayout.js.map +1 -1
  332. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js +2 -2
  333. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js.map +1 -1
  334. package/dist/dist-esm/react-components/src/components/HoldButton.js +1 -1
  335. package/dist/dist-esm/react-components/src/components/HoldButton.js.map +1 -1
  336. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js +9 -7
  337. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js.map +1 -1
  338. package/dist/dist-esm/react-components/src/components/ImageOverlay.js +14 -11
  339. package/dist/dist-esm/react-components/src/components/ImageOverlay.js.map +1 -1
  340. package/dist/dist-esm/react-components/src/components/IncomingCallNotification.js +39 -26
  341. package/dist/dist-esm/react-components/src/components/IncomingCallNotification.js.map +1 -1
  342. package/dist/dist-esm/react-components/src/components/IncomingCallStack.js +7 -5
  343. package/dist/dist-esm/react-components/src/components/IncomingCallStack.js.map +1 -1
  344. package/dist/dist-esm/react-components/src/components/InputBoxButton.js +10 -3
  345. package/dist/dist-esm/react-components/src/components/InputBoxButton.js.map +1 -1
  346. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js +7 -8
  347. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js.map +1 -1
  348. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js +5 -3
  349. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js.map +1 -1
  350. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js +22 -40
  351. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
  352. package/dist/dist-esm/react-components/src/components/MeetingConferencePhoneInfo.js +23 -15
  353. package/dist/dist-esm/react-components/src/components/MeetingConferencePhoneInfo.js.map +1 -1
  354. package/dist/dist-esm/react-components/src/components/MeetingReactionOverlay.js +15 -11
  355. package/dist/dist-esm/react-components/src/components/MeetingReactionOverlay.js.map +1 -1
  356. package/dist/dist-esm/react-components/src/components/MentionPopover.js +13 -20
  357. package/dist/dist-esm/react-components/src/components/MentionPopover.js.map +1 -1
  358. package/dist/dist-esm/react-components/src/components/MessageStatusIcon.js +2 -2
  359. package/dist/dist-esm/react-components/src/components/MessageStatusIcon.js.map +1 -1
  360. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js.map +1 -1
  361. package/dist/dist-esm/react-components/src/components/MessageStatusIndicatorInternal.js +33 -20
  362. package/dist/dist-esm/react-components/src/components/MessageStatusIndicatorInternal.js.map +1 -1
  363. package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +2 -2
  364. package/dist/dist-esm/react-components/src/components/MessageThread.js +49 -106
  365. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  366. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js +17 -16
  367. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js.map +1 -1
  368. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js +102 -95
  369. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js.map +1 -1
  370. package/dist/dist-esm/react-components/src/components/Notification.js +14 -6
  371. package/dist/dist-esm/react-components/src/components/Notification.js.map +1 -1
  372. package/dist/dist-esm/react-components/src/components/NotificationStack.js +9 -13
  373. package/dist/dist-esm/react-components/src/components/NotificationStack.js.map +1 -1
  374. package/dist/dist-esm/react-components/src/components/ParticipantItem.js +22 -21
  375. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  376. package/dist/dist-esm/react-components/src/components/ParticipantList.js +52 -59
  377. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  378. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js +32 -46
  379. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js.map +1 -1
  380. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js +3 -3
  381. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js.map +1 -1
  382. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js +3 -3
  383. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js.map +1 -1
  384. package/dist/dist-esm/react-components/src/components/RTTDisclosureBanner.js +4 -7
  385. package/dist/dist-esm/react-components/src/components/RTTDisclosureBanner.js.map +1 -1
  386. package/dist/dist-esm/react-components/src/components/RaiseHandButton.js +12 -6
  387. package/dist/dist-esm/react-components/src/components/RaiseHandButton.js.map +1 -1
  388. package/dist/dist-esm/react-components/src/components/ReactionButton.js +23 -24
  389. package/dist/dist-esm/react-components/src/components/ReactionButton.js.map +1 -1
  390. package/dist/dist-esm/react-components/src/components/RealTimeText.js +2 -7
  391. package/dist/dist-esm/react-components/src/components/RealTimeText.js.map +1 -1
  392. package/dist/dist-esm/react-components/src/components/RealTimeTextModal.js +7 -9
  393. package/dist/dist-esm/react-components/src/components/RealTimeTextModal.js.map +1 -1
  394. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +16 -25
  395. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  396. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js +2 -2
  397. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js.map +1 -1
  398. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js +2 -2
  399. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js.map +1 -1
  400. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/ContextMenuPlugin.js.map +1 -1
  401. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.js +11 -25
  402. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.js.map +1 -1
  403. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/KeyboardInputPlugin.js +3 -1
  404. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/KeyboardInputPlugin.js.map +1 -1
  405. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/PlaceholderPlugin.js.map +1 -1
  406. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/RichTextToolbarPlugin.js +2 -4
  407. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/RichTextToolbarPlugin.js.map +1 -1
  408. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/TableEditContextMenuProvider.js.map +1 -1
  409. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UndoRedoPlugin.js +3 -17
  410. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UndoRedoPlugin.js.map +1 -1
  411. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UpdateContentPlugin.js +7 -4
  412. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UpdateContentPlugin.js.map +1 -1
  413. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.js +29 -76
  414. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.js.map +1 -1
  415. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.js +11 -33
  416. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.js.map +1 -1
  417. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.js +32 -136
  418. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.js.map +1 -1
  419. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.js +16 -18
  420. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.js.map +1 -1
  421. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/RichTextToolbar.js +26 -37
  422. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/RichTextToolbar.js.map +1 -1
  423. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTableCommandBarItem.js +10 -8
  424. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTableCommandBarItem.js.map +1 -1
  425. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTablePane.js +3 -6
  426. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTablePane.js.map +1 -1
  427. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextToolbarTableIcon.js +2 -2
  428. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextToolbarTableIcon.js.map +1 -1
  429. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js +14 -6
  430. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js.map +1 -1
  431. package/dist/dist-esm/react-components/src/components/SendBox.js +30 -70
  432. package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
  433. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js +1 -17
  434. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js.map +1 -1
  435. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js +1 -3
  436. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js.map +1 -1
  437. package/dist/dist-esm/react-components/src/components/StartCaptionsButton.js +4 -2
  438. package/dist/dist-esm/react-components/src/components/StartCaptionsButton.js.map +1 -1
  439. package/dist/dist-esm/react-components/src/components/StartRealTimeTextButton.js +1 -6
  440. package/dist/dist-esm/react-components/src/components/StartRealTimeTextButton.js.map +1 -1
  441. package/dist/dist-esm/react-components/src/components/StreamMedia.js +3 -14
  442. package/dist/dist-esm/react-components/src/components/StreamMedia.js.map +1 -1
  443. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.js +3 -10
  444. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.js.map +1 -1
  445. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.styles.js.map +1 -1
  446. package/dist/dist-esm/react-components/src/components/Survey/SurveyTypes.js.map +1 -1
  447. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.js +23 -23
  448. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.js.map +1 -1
  449. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.js.map +1 -1
  450. package/dist/dist-esm/react-components/src/components/SystemMessage.js +4 -2
  451. package/dist/dist-esm/react-components/src/components/SystemMessage.js.map +1 -1
  452. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js +22 -67
  453. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js.map +1 -1
  454. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js +48 -50
  455. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js.map +1 -1
  456. package/dist/dist-esm/react-components/src/components/TogetherModeOverlay.js +25 -41
  457. package/dist/dist-esm/react-components/src/components/TogetherModeOverlay.js.map +1 -1
  458. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js +10 -10
  459. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js.map +1 -1
  460. package/dist/dist-esm/react-components/src/components/TypingIndicator.js +6 -9
  461. package/dist/dist-esm/react-components/src/components/TypingIndicator.js.map +1 -1
  462. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js +1 -2
  463. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js.map +1 -1
  464. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js +1 -2
  465. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js.map +1 -1
  466. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js +8 -9
  467. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js.map +1 -1
  468. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js +1 -2
  469. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js.map +1 -1
  470. package/dist/dist-esm/react-components/src/components/VerticalGallery.js +39 -19
  471. package/dist/dist-esm/react-components/src/components/VerticalGallery.js.map +1 -1
  472. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js +1 -3
  473. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js.map +1 -1
  474. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js +13 -9
  475. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js.map +1 -1
  476. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js +22 -8
  477. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js.map +1 -1
  478. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js +2 -6
  479. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js.map +1 -1
  480. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js +8 -19
  481. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js.map +1 -1
  482. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js +13 -15
  483. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js.map +1 -1
  484. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js +16 -40
  485. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js.map +1 -1
  486. package/dist/dist-esm/react-components/src/components/VideoGallery/FocusContentLayout.js +2 -2
  487. package/dist/dist-esm/react-components/src/components/VideoGallery/FocusContentLayout.js.map +1 -1
  488. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.js.map +1 -1
  489. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js +2 -4
  490. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js.map +1 -1
  491. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js +4 -6
  492. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js.map +1 -1
  493. package/dist/dist-esm/react-components/src/components/VideoGallery/ParticipantVideoTileOverlay.js +11 -17
  494. package/dist/dist-esm/react-components/src/components/VideoGallery/ParticipantVideoTileOverlay.js.map +1 -1
  495. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteContentShareReactionOverlay.js +24 -29
  496. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteContentShareReactionOverlay.js.map +1 -1
  497. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js +6 -8
  498. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js.map +1 -1
  499. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js +4 -2
  500. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js.map +1 -1
  501. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.js +10 -34
  502. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.js.map +1 -1
  503. package/dist/dist-esm/react-components/src/components/VideoGallery/TogetherModeLayout.js +0 -3
  504. package/dist/dist-esm/react-components/src/components/VideoGallery/TogetherModeLayout.js.map +1 -1
  505. package/dist/dist-esm/react-components/src/components/VideoGallery/TogetherModeStream.js +2 -8
  506. package/dist/dist-esm/react-components/src/components/VideoGallery/TogetherModeStream.js.map +1 -1
  507. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js +6 -1
  508. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js.map +1 -1
  509. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js +34 -9
  510. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js.map +1 -1
  511. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js +11 -2
  512. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js.map +1 -1
  513. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/Layout.styles.js.map +1 -1
  514. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteScreenShare.styles.js.map +1 -1
  515. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteVideoTile.styles.js.map +1 -1
  516. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js +3 -1
  517. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js.map +1 -1
  518. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js +11 -10
  519. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js.map +1 -1
  520. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js +28 -22
  521. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js.map +1 -1
  522. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js +5 -12
  523. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js.map +1 -1
  524. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js +73 -57
  525. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js.map +1 -1
  526. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/OverflowGalleryUtils.js.map +1 -1
  527. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/reactionUtils.js.map +1 -1
  528. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +31 -39
  529. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  530. package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts +1 -1
  531. package/dist/dist-esm/react-components/src/components/VideoGallery.js +31 -168
  532. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  533. package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +0 -2
  534. package/dist/dist-esm/react-components/src/components/VideoTile.js +77 -60
  535. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  536. package/dist/dist-esm/react-components/src/components/assets/RaisedHandIcon.js +2 -2
  537. package/dist/dist-esm/react-components/src/components/assets/RaisedHandIcon.js.map +1 -1
  538. package/dist/dist-esm/react-components/src/components/index.js +0 -10
  539. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  540. package/dist/dist-esm/react-components/src/components/styles/AttachmentCard.styles.js.map +1 -1
  541. package/dist/dist-esm/react-components/src/components/styles/AttachmentCardGroup.styles.js.map +1 -1
  542. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js.map +1 -1
  543. package/dist/dist-esm/react-components/src/components/styles/Captions.style.js +3 -8
  544. package/dist/dist-esm/react-components/src/components/styles/Captions.style.js.map +1 -1
  545. package/dist/dist-esm/react-components/src/components/styles/CaptionsSettingsModal.styles.js.map +1 -1
  546. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js +10 -3
  547. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js.map +1 -1
  548. package/dist/dist-esm/react-components/src/components/styles/Common.style.js.map +1 -1
  549. package/dist/dist-esm/react-components/src/components/styles/ControlBar.styles.js.map +1 -1
  550. package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.js.map +1 -1
  551. package/dist/dist-esm/react-components/src/components/styles/EditBox.styles.js.map +1 -1
  552. package/dist/dist-esm/react-components/src/components/styles/GridLayout.styles.js.map +1 -1
  553. package/dist/dist-esm/react-components/src/components/styles/HorizontalGallery.styles.js.map +1 -1
  554. package/dist/dist-esm/react-components/src/components/styles/ImageOverlay.style.js +5 -2
  555. package/dist/dist-esm/react-components/src/components/styles/ImageOverlay.style.js.map +1 -1
  556. package/dist/dist-esm/react-components/src/components/styles/InputBoxButton.style.js.map +1 -1
  557. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js +5 -2
  558. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js.map +1 -1
  559. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js.map +1 -1
  560. package/dist/dist-esm/react-components/src/components/styles/MessageBarLink.styles.js.map +1 -1
  561. package/dist/dist-esm/react-components/src/components/styles/MessageStatusIndicator.styles.js.map +1 -1
  562. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js +10 -5
  563. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js.map +1 -1
  564. package/dist/dist-esm/react-components/src/components/styles/Notification.styles.js.map +1 -1
  565. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js +4 -6
  566. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js.map +1 -1
  567. package/dist/dist-esm/react-components/src/components/styles/ParticipantList.styles.js.map +1 -1
  568. package/dist/dist-esm/react-components/src/components/styles/RTTDisclosureBanner.styles.js +0 -4
  569. package/dist/dist-esm/react-components/src/components/styles/RTTDisclosureBanner.styles.js.map +1 -1
  570. package/dist/dist-esm/react-components/src/components/styles/ReactionButton.styles.js +3 -1
  571. package/dist/dist-esm/react-components/src/components/styles/ReactionButton.styles.js.map +1 -1
  572. package/dist/dist-esm/react-components/src/components/styles/ReactionOverlay.style.js +2 -2
  573. package/dist/dist-esm/react-components/src/components/styles/ReactionOverlay.style.js.map +1 -1
  574. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js +34 -9
  575. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js.map +1 -1
  576. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.js +12 -8
  577. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.js.map +1 -1
  578. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js +10 -2
  579. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js.map +1 -1
  580. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js.map +1 -1
  581. package/dist/dist-esm/react-components/src/components/styles/Stack.style.js.map +1 -1
  582. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js +6 -3
  583. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js.map +1 -1
  584. package/dist/dist-esm/react-components/src/components/styles/SystemMessage.styles.js.map +1 -1
  585. package/dist/dist-esm/react-components/src/components/styles/TeamsMeetingConferenceInfo.js.map +1 -1
  586. package/dist/dist-esm/react-components/src/components/styles/TogetherMode.styles.js +7 -28
  587. package/dist/dist-esm/react-components/src/components/styles/TogetherMode.styles.js.map +1 -1
  588. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js +2 -1
  589. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js.map +1 -1
  590. package/dist/dist-esm/react-components/src/components/styles/TypingIndicator.styles.js.map +1 -1
  591. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js.map +1 -1
  592. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js +2 -1
  593. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js.map +1 -1
  594. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js +19 -5
  595. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js.map +1 -1
  596. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js +1 -1
  597. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js.map +1 -1
  598. package/dist/dist-esm/react-components/src/components/styles/v8StyleShim.js.map +1 -1
  599. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.js +4 -15
  600. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.js.map +1 -1
  601. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.d.ts +2 -2
  602. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.js +10 -26
  603. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.js.map +1 -1
  604. package/dist/dist-esm/react-components/src/components/utils/Datetime.js +4 -1
  605. package/dist/dist-esm/react-components/src/components/utils/Datetime.js.map +1 -1
  606. package/dist/dist-esm/react-components/src/components/utils/Logger.js.map +1 -1
  607. package/dist/dist-esm/react-components/src/components/utils/RichTextEditorUtils.js +8 -16
  608. package/dist/dist-esm/react-components/src/components/utils/RichTextEditorUtils.js.map +1 -1
  609. package/dist/dist-esm/react-components/src/components/utils/RichTextTableUtils.js +18 -26
  610. package/dist/dist-esm/react-components/src/components/utils/RichTextTableUtils.js.map +1 -1
  611. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js +12 -28
  612. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js.map +1 -1
  613. package/dist/dist-esm/react-components/src/components/utils/common.js +0 -2
  614. package/dist/dist-esm/react-components/src/components/utils/common.js.map +1 -1
  615. package/dist/dist-esm/react-components/src/components/utils/delay.js.map +1 -1
  616. package/dist/dist-esm/react-components/src/components/utils/formatPhoneNumber.js.map +1 -1
  617. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.d.ts +1 -1
  618. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js +5 -2
  619. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js.map +1 -1
  620. package/dist/dist-esm/react-components/src/components/utils/keyboardNavigation.js.map +1 -1
  621. package/dist/dist-esm/react-components/src/components/utils/merge.js.map +1 -1
  622. package/dist/dist-esm/react-components/src/components/utils/overFlowGalleriesUtils.js.map +1 -1
  623. package/dist/dist-esm/react-components/src/components/utils/responsive.js +2 -2
  624. package/dist/dist-esm/react-components/src/components/utils/responsive.js.map +1 -1
  625. package/dist/dist-esm/react-components/src/components/utils/sortCaptionsAndRealTimeTexts.js +3 -11
  626. package/dist/dist-esm/react-components/src/components/utils/sortCaptionsAndRealTimeTexts.js.map +1 -1
  627. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js +1 -10
  628. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js.map +1 -1
  629. package/dist/dist-esm/react-components/src/components/utils.js +27 -41
  630. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  631. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js +6 -8
  632. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js.map +1 -1
  633. package/dist/dist-esm/react-components/src/gallery/index.js.map +1 -1
  634. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js +0 -2
  635. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js.map +1 -1
  636. package/dist/dist-esm/react-components/src/identifiers/index.js.map +1 -1
  637. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  638. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  639. package/dist/dist-esm/react-components/src/localization/index.js.map +1 -1
  640. package/dist/dist-esm/react-components/src/localization/locales/ar-SA/ComponentLocale.js.map +1 -1
  641. package/dist/dist-esm/react-components/src/localization/locales/cs-CZ/ComponentLocale.js.map +1 -1
  642. package/dist/dist-esm/react-components/src/localization/locales/cy-GB/ComponentLocale.js.map +1 -1
  643. package/dist/dist-esm/react-components/src/localization/locales/de-DE/ComponentLocale.js.map +1 -1
  644. package/dist/dist-esm/react-components/src/localization/locales/en-GB/ComponentLocale.js.map +1 -1
  645. package/dist/dist-esm/react-components/src/localization/locales/es-ES/ComponentLocale.js.map +1 -1
  646. package/dist/dist-esm/react-components/src/localization/locales/es-MX/ComponentLocale.js.map +1 -1
  647. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/ComponentLocale.js.map +1 -1
  648. package/dist/dist-esm/react-components/src/localization/locales/fr-CA/ComponentLocale.js.map +1 -1
  649. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/ComponentLocale.js.map +1 -1
  650. package/dist/dist-esm/react-components/src/localization/locales/he-IL/ComponentLocale.js.map +1 -1
  651. package/dist/dist-esm/react-components/src/localization/locales/index.js +3 -1
  652. package/dist/dist-esm/react-components/src/localization/locales/index.js.map +1 -1
  653. package/dist/dist-esm/react-components/src/localization/locales/it-IT/ComponentLocale.js.map +1 -1
  654. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/ComponentLocale.js.map +1 -1
  655. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/ComponentLocale.js.map +1 -1
  656. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/ComponentLocale.js.map +1 -1
  657. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/ComponentLocale.js.map +1 -1
  658. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/ComponentLocale.js.map +1 -1
  659. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/ComponentLocale.js.map +1 -1
  660. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/ComponentLocale.js.map +1 -1
  661. package/dist/dist-esm/react-components/src/localization/locales/sv-SE/ComponentLocale.js.map +1 -1
  662. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/ComponentLocale.js.map +1 -1
  663. package/dist/dist-esm/react-components/src/localization/locales/utils.js +1 -1
  664. package/dist/dist-esm/react-components/src/localization/locales/utils.js.map +1 -1
  665. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/ComponentLocale.js.map +1 -1
  666. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/ComponentLocale.js.map +1 -1
  667. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js +5 -3
  668. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js.map +1 -1
  669. package/dist/dist-esm/react-components/src/theming/FluentV9ThemeProvider.js +2 -2
  670. package/dist/dist-esm/react-components/src/theming/FluentV9ThemeProvider.js.map +1 -1
  671. package/dist/dist-esm/react-components/src/theming/generateTheme.js +1 -15
  672. package/dist/dist-esm/react-components/src/theming/generateTheme.js.map +1 -1
  673. package/dist/dist-esm/react-components/src/theming/icons.js +30 -73
  674. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  675. package/dist/dist-esm/react-components/src/theming/icons.styles.js.map +1 -1
  676. package/dist/dist-esm/react-components/src/theming/index.js.map +1 -1
  677. package/dist/dist-esm/react-components/src/theming/themeDuplicates.js.map +1 -1
  678. package/dist/dist-esm/react-components/src/theming/themeUtils.js.map +1 -1
  679. package/dist/dist-esm/react-components/src/theming/themes.js +0 -1
  680. package/dist/dist-esm/react-components/src/theming/themes.js.map +1 -1
  681. package/dist/dist-esm/react-components/src/theming/v9ThemeShim.js +7 -1
  682. package/dist/dist-esm/react-components/src/theming/v9ThemeShim.js.map +1 -1
  683. package/dist/dist-esm/react-components/src/types/Attachment.js.map +1 -1
  684. package/dist/dist-esm/react-components/src/types/CallSurveyImprovementSuggestions.js.map +1 -1
  685. package/dist/dist-esm/react-components/src/types/CaptionsAvailableLanguageStrings.js.map +1 -1
  686. package/dist/dist-esm/react-components/src/types/ChatMessage.d.ts +1 -1
  687. package/dist/dist-esm/react-components/src/types/ChatMessage.js.map +1 -1
  688. package/dist/dist-esm/react-components/src/types/CommunicationParticipant.js.map +1 -1
  689. package/dist/dist-esm/react-components/src/types/ComponentSlotStyle.js.map +1 -1
  690. package/dist/dist-esm/react-components/src/types/CustomStylesProps.js.map +1 -1
  691. package/dist/dist-esm/react-components/src/types/OnRender.js.map +1 -1
  692. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js.map +1 -1
  693. package/dist/dist-esm/react-components/src/types/ReactionTypes.js.map +1 -1
  694. package/dist/dist-esm/react-components/src/types/ReadReceiptsBySenderId.js.map +1 -1
  695. package/dist/dist-esm/react-components/src/types/SurveyIssues.js.map +1 -1
  696. package/dist/dist-esm/react-components/src/types/SurveyIssuesHeadingStrings.js.map +1 -1
  697. package/dist/dist-esm/react-components/src/types/TogetherModeTypes.js +0 -2
  698. package/dist/dist-esm/react-components/src/types/TogetherModeTypes.js.map +1 -1
  699. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.d.ts +0 -2
  700. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
  701. package/dist/dist-esm/react-components/src/types/index.js +0 -1
  702. package/dist/dist-esm/react-components/src/types/index.js.map +1 -1
  703. package/dist/dist-esm/react-composites/src/Logger.js.map +1 -1
  704. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +51 -70
  705. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  706. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  707. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +5 -5
  708. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +64 -149
  709. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  710. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +1 -1
  711. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js +1 -7
  712. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  713. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapterProvider.js.map +1 -1
  714. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallingSoundSubscriber.js +3 -8
  715. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallingSoundSubscriber.js.map +1 -1
  716. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/DiagnosticsForwarder.js.map +1 -1
  717. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js +3 -1
  718. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js.map +1 -1
  719. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/ParticipantSubcriber.js.map +1 -1
  720. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js +2 -2
  721. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js.map +1 -1
  722. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js.map +1 -1
  723. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/Banner.js +3 -3
  724. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/Banner.js.map +1 -1
  725. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/BreakoutRoomsBanner.js +11 -18
  726. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/BreakoutRoomsBanner.js.map +1 -1
  727. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +41 -106
  728. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  729. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +60 -36
  730. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  731. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js +135 -152
  732. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js.map +1 -1
  733. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js +18 -10
  734. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js.map +1 -1
  735. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js +7 -9
  736. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js.map +1 -1
  737. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js +4 -14
  738. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js.map +1 -1
  739. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js +7 -9
  740. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js.map +1 -1
  741. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js +4 -5
  742. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js.map +1 -1
  743. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js +4 -4
  744. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js.map +1 -1
  745. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js +4 -4
  746. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js.map +1 -1
  747. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js +22 -33
  748. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js.map +1 -1
  749. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js +23 -39
  750. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
  751. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js +30 -26
  752. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js.map +1 -1
  753. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +41 -68
  754. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  755. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js +2 -2
  756. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js.map +1 -1
  757. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js +12 -12
  758. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js.map +1 -1
  759. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/Prompt.js +32 -10
  760. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/Prompt.js.map +1 -1
  761. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js +11 -29
  762. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js.map +1 -1
  763. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePaneProvider.js.map +1 -1
  764. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useMeetingPhoneInfo.js +1 -1
  765. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useMeetingPhoneInfo.js.map +1 -1
  766. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js +191 -226
  767. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js.map +1 -1
  768. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js +4 -4
  769. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js.map +1 -1
  770. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js +1 -1
  771. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js.map +1 -1
  772. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SvgWithWordWrapping.js +5 -3
  773. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SvgWithWordWrapping.js.map +1 -1
  774. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js +1 -3
  775. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js.map +1 -1
  776. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js +7 -10
  777. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js.map +1 -1
  778. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js +15 -31
  779. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js.map +1 -1
  780. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js +1 -3
  781. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js.map +1 -1
  782. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js +2 -5
  783. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js.map +1 -1
  784. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js +1 -1
  785. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js.map +1 -1
  786. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/RaiseHand.js +1 -1
  787. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/RaiseHand.js.map +1 -1
  788. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Reaction.js +1 -1
  789. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Reaction.js.map +1 -1
  790. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js +1 -1
  791. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js.map +1 -1
  792. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js +7 -4
  793. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js.map +1 -1
  794. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useCompositeStringsForNotificationStack.js +1 -8
  795. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useCompositeStringsForNotificationStack.js.map +1 -1
  796. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +37 -71
  797. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  798. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.js.map +1 -1
  799. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js +1 -1
  800. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js.map +1 -1
  801. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
  802. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +24 -24
  803. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  804. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +22 -87
  805. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  806. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/DtmfDialpadPage.js +13 -5
  807. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/DtmfDialpadPage.js.map +1 -1
  808. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +6 -14
  809. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +1 -1
  810. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js +7 -17
  811. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js.map +1 -1
  812. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js +3 -3
  813. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js.map +1 -1
  814. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/SurveyPage.js +2 -2
  815. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/SurveyPage.js.map +1 -1
  816. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ThankYouForFeedbackPage.js +2 -2
  817. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ThankYouForFeedbackPage.js.map +1 -1
  818. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js +21 -20
  819. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js.map +1 -1
  820. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js +3 -16
  821. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js.map +1 -1
  822. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.d.ts +2 -2
  823. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js +1 -1
  824. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js.map +1 -1
  825. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.js +1 -2
  826. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.js.map +1 -1
  827. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +0 -8
  828. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
  829. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.d.ts +1 -1
  830. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.js.map +1 -1
  831. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.d.ts +1 -1
  832. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.js +4 -1
  833. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.js.map +1 -1
  834. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitySelector.d.ts +1 -1
  835. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitySelector.js +1 -1
  836. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitySelector.js.map +1 -1
  837. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.d.ts +1 -1
  838. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.js.map +1 -1
  839. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/deviceCountSelector.d.ts +1 -1
  840. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/deviceCountSelector.js.map +1 -1
  841. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.d.ts +2 -2
  842. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js +1 -1
  843. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js.map +1 -1
  844. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.d.ts +1 -1
  845. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js +1 -3
  846. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js.map +1 -1
  847. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/getFirstSpotlightedRemoteParticipantSelector.d.ts +1 -1
  848. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/getFirstSpotlightedRemoteParticipantSelector.js +4 -10
  849. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/getFirstSpotlightedRemoteParticipantSelector.js.map +1 -1
  850. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.d.ts +4 -4
  851. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js +1 -1
  852. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js.map +1 -1
  853. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.d.ts +10 -10
  854. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js +2 -10
  855. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js.map +1 -1
  856. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.d.ts +2 -2
  857. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js +4 -4
  858. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js.map +1 -1
  859. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.d.ts +1 -1
  860. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js +1 -1
  861. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js.map +1 -1
  862. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.d.ts +5 -5
  863. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js +4 -4
  864. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js.map +1 -1
  865. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.d.ts +2 -2
  866. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js +1 -1
  867. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js.map +1 -1
  868. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.d.ts +5 -5
  869. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.js.map +1 -1
  870. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js +1 -1
  871. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js.map +1 -1
  872. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js +6 -2
  873. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js.map +1 -1
  874. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js +29 -41
  875. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js.map +1 -1
  876. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallControls.styles.js.map +1 -1
  877. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js +2 -1
  878. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js.map +1 -1
  879. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/DtmfDialpadPage.styles.js.map +1 -1
  880. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js +5 -2
  881. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js.map +1 -1
  882. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js.map +1 -1
  883. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js +9 -2
  884. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js.map +1 -1
  885. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalDeviceSettings.styles.js.map +1 -1
  886. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js +4 -2
  887. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js.map +1 -1
  888. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NetworkReconnectTile.styles.js.map +1 -1
  889. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NoticePage.styles.js.map +1 -1
  890. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js +2 -1
  891. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js.map +1 -1
  892. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.js +24 -6
  893. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.js.map +1 -1
  894. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.js.map +1 -1
  895. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CapabilityChangedNotificationTracking.js.map +1 -1
  896. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/ErrorTracking.js.map +1 -1
  897. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js +12 -10
  898. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js.map +1 -1
  899. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackCapabilityChangedNotifications.js +7 -19
  900. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackCapabilityChangedNotifications.js.map +1 -1
  901. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js +2 -4
  902. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js.map +1 -1
  903. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +30 -48
  904. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  905. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/index.js.map +1 -1
  906. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/spotlightUtils.js +5 -15
  907. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/spotlightUtils.js.map +1 -1
  908. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/timerUtils.js +2 -2
  909. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/timerUtils.js.map +1 -1
  910. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/useConsoleErrors.js.map +1 -1
  911. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +23 -98
  912. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  913. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.js +1 -1
  914. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.js.map +1 -1
  915. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.js +7 -9
  916. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.js.map +1 -1
  917. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.js +9 -6
  918. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.js.map +1 -1
  919. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.js +2 -2
  920. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.js.map +1 -1
  921. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.js.map +1 -1
  922. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +2 -2
  923. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +39 -103
  924. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  925. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +3 -3
  926. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  927. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +0 -8
  928. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  929. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts +1 -1
  930. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js +2 -8
  931. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  932. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/hooks/useCallWithChatCompositeStrings.js.map +1 -1
  933. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.js.map +1 -1
  934. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js +1 -1
  935. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js.map +1 -1
  936. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js +1 -4
  937. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js.map +1 -1
  938. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/styles/CallWithChatCompositeStyles.js +0 -1
  939. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/styles/CallWithChatCompositeStyles.js.map +1 -1
  940. package/dist/dist-esm/react-composites/src/composites/ChatComposite/AttachmentDownloadErrorBar.js +5 -3
  941. package/dist/dist-esm/react-composites/src/composites/ChatComposite/AttachmentDownloadErrorBar.js.map +1 -1
  942. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js +2 -9
  943. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js.map +1 -1
  944. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js +5 -3
  945. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js.map +1 -1
  946. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +90 -183
  947. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  948. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js +1 -1
  949. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +1 -1
  950. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadReducer.js +7 -11
  951. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadReducer.js.map +1 -1
  952. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadUtils.js +22 -30
  953. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadUtils.js.map +1 -1
  954. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.js.map +1 -1
  955. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +2 -2
  956. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +37 -47
  957. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  958. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +2 -2
  959. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  960. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js.map +1 -1
  961. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUpload.js +7 -12
  962. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUpload.js.map +1 -1
  963. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUploadButton.js +6 -21
  964. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUploadButton.js.map +1 -1
  965. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js.map +1 -1
  966. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js +3 -1
  967. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js.map +1 -1
  968. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js +4 -17
  969. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js.map +1 -1
  970. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/usePropsFor.js.map +1 -1
  971. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js +1 -1
  972. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js.map +1 -1
  973. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js.map +1 -1
  974. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js +0 -2
  975. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js.map +1 -1
  976. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js +6 -2
  977. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js.map +1 -1
  978. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js +17 -9
  979. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js.map +1 -1
  980. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js +25 -24
  981. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js.map +1 -1
  982. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js.map +1 -1
  983. package/dist/dist-esm/react-composites/src/composites/common/AudioProvider.js.map +1 -1
  984. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js +3 -7
  985. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js.map +1 -1
  986. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js +14 -5
  987. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js.map +1 -1
  988. package/dist/dist-esm/react-composites/src/composites/common/CallingCaptionsBanner.js +15 -25
  989. package/dist/dist-esm/react-composites/src/composites/common/CallingCaptionsBanner.js.map +1 -1
  990. package/dist/dist-esm/react-composites/src/composites/common/CallingCaptionsSettingsModal.js +1 -1
  991. package/dist/dist-esm/react-composites/src/composites/common/CallingCaptionsSettingsModal.js.map +1 -1
  992. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js +23 -9
  993. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js.map +1 -1
  994. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js.map +1 -1
  995. package/dist/dist-esm/react-composites/src/composites/common/CallingRealTimeTextModal.js +1 -5
  996. package/dist/dist-esm/react-composites/src/composites/common/CallingRealTimeTextModal.js.map +1 -1
  997. package/dist/dist-esm/react-composites/src/composites/common/CalloutWithIcon.js +5 -3
  998. package/dist/dist-esm/react-composites/src/composites/common/CalloutWithIcon.js.map +1 -1
  999. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.js +16 -12
  1000. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.js.map +1 -1
  1001. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js +5 -1
  1002. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js.map +1 -1
  1003. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +48 -98
  1004. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -1
  1005. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js +37 -39
  1006. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js.map +1 -1
  1007. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js +92 -125
  1008. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js.map +1 -1
  1009. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DtmfDialerButton.js +1 -1
  1010. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DtmfDialerButton.js.map +1 -1
  1011. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js +1 -1
  1012. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js.map +1 -1
  1013. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/Timer.js +4 -2
  1014. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/Timer.js.map +1 -1
  1015. package/dist/dist-esm/react-composites/src/composites/common/ConvertContextualMenuItemToDrawerMenuItem.js.map +1 -1
  1016. package/dist/dist-esm/react-composites/src/composites/common/Drawer/CaptionLanguageSettingsDrawer.js +7 -5
  1017. package/dist/dist-esm/react-composites/src/composites/common/Drawer/CaptionLanguageSettingsDrawer.js.map +1 -1
  1018. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +145 -118
  1019. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -1
  1020. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.styles.js.map +1 -1
  1021. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.js.map +1 -1
  1022. package/dist/dist-esm/react-composites/src/composites/common/Drawer/SpokenLanguageSettingsDrawer.js +7 -5
  1023. package/dist/dist-esm/react-composites/src/composites/common/Drawer/SpokenLanguageSettingsDrawer.js.map +1 -1
  1024. package/dist/dist-esm/react-composites/src/composites/common/Drawer/captionSettingsDrawer.styles.js.map +1 -1
  1025. package/dist/dist-esm/react-composites/src/composites/common/ExitSpotlightButton.js +1 -1
  1026. package/dist/dist-esm/react-composites/src/composites/common/ExitSpotlightButton.js.map +1 -1
  1027. package/dist/dist-esm/react-composites/src/composites/common/MeetingPhoneInfoPaneContent.js +9 -11
  1028. package/dist/dist-esm/react-composites/src/composites/common/MeetingPhoneInfoPaneContent.js.map +1 -1
  1029. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js +12 -23
  1030. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js.map +1 -1
  1031. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js +1 -1
  1032. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js.map +1 -1
  1033. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +16 -15
  1034. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
  1035. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js +10 -14
  1036. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js.map +1 -1
  1037. package/dist/dist-esm/react-composites/src/composites/common/RichTextSendBoxWrapper.js +0 -4
  1038. package/dist/dist-esm/react-composites/src/composites/common/RichTextSendBoxWrapper.js.map +1 -1
  1039. package/dist/dist-esm/react-composites/src/composites/common/SendBoxPicker.d.ts +0 -7
  1040. package/dist/dist-esm/react-composites/src/composites/common/SendBoxPicker.js +8 -26
  1041. package/dist/dist-esm/react-composites/src/composites/common/SendBoxPicker.js.map +1 -1
  1042. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js +16 -8
  1043. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js.map +1 -1
  1044. package/dist/dist-esm/react-composites/src/composites/common/StarSurvey.js.map +1 -1
  1045. package/dist/dist-esm/react-composites/src/composites/common/Survey.js +34 -19
  1046. package/dist/dist-esm/react-composites/src/composites/common/Survey.js.map +1 -1
  1047. package/dist/dist-esm/react-composites/src/composites/common/SurveyContent.js +2 -2
  1048. package/dist/dist-esm/react-composites/src/composites/common/SurveyContent.js.map +1 -1
  1049. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js +8 -11
  1050. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js.map +1 -1
  1051. package/dist/dist-esm/react-composites/src/composites/common/TagsSurvey.js +1 -1
  1052. package/dist/dist-esm/react-composites/src/composites/common/TagsSurvey.js.map +1 -1
  1053. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js +13 -18
  1054. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js.map +1 -1
  1055. package/dist/dist-esm/react-composites/src/composites/common/adapters.js.map +1 -1
  1056. package/dist/dist-esm/react-composites/src/composites/common/constants.js +0 -1
  1057. package/dist/dist-esm/react-composites/src/composites/common/constants.js.map +1 -1
  1058. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +7 -1
  1059. package/dist/dist-esm/react-composites/src/composites/common/icons.js +3 -7
  1060. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  1061. package/dist/dist-esm/react-composites/src/composites/common/resolveDeepNoiseSuppressionDependency.js +3 -1
  1062. package/dist/dist-esm/react-composites/src/composites/common/resolveDeepNoiseSuppressionDependency.js.map +1 -1
  1063. package/dist/dist-esm/react-composites/src/composites/common/resolveDeepNoiseSuppressionDependencyLazy.js +3 -1
  1064. package/dist/dist-esm/react-composites/src/composites/common/resolveDeepNoiseSuppressionDependencyLazy.js.map +1 -1
  1065. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependency.js.map +1 -1
  1066. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependencyLazy.js.map +1 -1
  1067. package/dist/dist-esm/react-composites/src/composites/common/styles/Composite.styles.js.map +1 -1
  1068. package/dist/dist-esm/react-composites/src/composites/common/styles/GlobalHostLayer.styles.js.map +1 -1
  1069. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js +10 -4
  1070. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js.map +1 -1
  1071. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js +44 -11
  1072. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js.map +1 -1
  1073. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js +29 -6
  1074. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js.map +1 -1
  1075. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js +22 -4
  1076. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js.map +1 -1
  1077. package/dist/dist-esm/react-composites/src/composites/common/styles/Survey.styles.js +13 -15
  1078. package/dist/dist-esm/react-composites/src/composites/common/styles/Survey.styles.js.map +1 -1
  1079. package/dist/dist-esm/react-composites/src/composites/common/styles/TeamsMeetingConferenceInfo.style.js.map +1 -1
  1080. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js.map +1 -1
  1081. package/dist/dist-esm/react-composites/src/composites/common/utils.js +14 -20
  1082. package/dist/dist-esm/react-composites/src/composites/common/utils.js.map +1 -1
  1083. package/dist/dist-esm/react-composites/src/composites/index.js.map +1 -1
  1084. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js +2 -2
  1085. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js.map +1 -1
  1086. package/dist/dist-esm/react-composites/src/composites/localization/index.js.map +1 -1
  1087. package/dist/dist-esm/react-composites/src/composites/localization/locales/ar-SA/CompositeLocale.js.map +1 -1
  1088. package/dist/dist-esm/react-composites/src/composites/localization/locales/cs-CZ/CompositeLocale.js.map +1 -1
  1089. package/dist/dist-esm/react-composites/src/composites/localization/locales/cy-GB/CompositeLocale.js.map +1 -1
  1090. package/dist/dist-esm/react-composites/src/composites/localization/locales/de-DE/CompositeLocale.js.map +1 -1
  1091. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-GB/CompositeLocale.js.map +1 -1
  1092. package/dist/dist-esm/react-composites/src/composites/localization/locales/es-ES/CompositeLocale.js.map +1 -1
  1093. package/dist/dist-esm/react-composites/src/composites/localization/locales/es-MX/CompositeLocale.js.map +1 -1
  1094. package/dist/dist-esm/react-composites/src/composites/localization/locales/fi-FI/CompositeLocale.js.map +1 -1
  1095. package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-CA/CompositeLocale.js.map +1 -1
  1096. package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-FR/CompositeLocale.js.map +1 -1
  1097. package/dist/dist-esm/react-composites/src/composites/localization/locales/he-IL/CompositeLocale.js.map +1 -1
  1098. package/dist/dist-esm/react-composites/src/composites/localization/locales/index.js.map +1 -1
  1099. package/dist/dist-esm/react-composites/src/composites/localization/locales/it-IT/CompositeLocale.js.map +1 -1
  1100. package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/CompositeLocale.js.map +1 -1
  1101. package/dist/dist-esm/react-composites/src/composites/localization/locales/ko-KR/CompositeLocale.js.map +1 -1
  1102. package/dist/dist-esm/react-composites/src/composites/localization/locales/nb-NO/CompositeLocale.js.map +1 -1
  1103. package/dist/dist-esm/react-composites/src/composites/localization/locales/nl-NL/CompositeLocale.js.map +1 -1
  1104. package/dist/dist-esm/react-composites/src/composites/localization/locales/pl-PL/CompositeLocale.js.map +1 -1
  1105. package/dist/dist-esm/react-composites/src/composites/localization/locales/pt-BR/CompositeLocale.js.map +1 -1
  1106. package/dist/dist-esm/react-composites/src/composites/localization/locales/ru-RU/CompositeLocale.js.map +1 -1
  1107. package/dist/dist-esm/react-composites/src/composites/localization/locales/sv-SE/CompositeLocale.js.map +1 -1
  1108. package/dist/dist-esm/react-composites/src/composites/localization/locales/tr-TR/CompositeLocale.js.map +1 -1
  1109. package/dist/dist-esm/react-composites/src/composites/localization/locales/utils.js +1 -1
  1110. package/dist/dist-esm/react-composites/src/composites/localization/locales/utils.js.map +1 -1
  1111. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-CN/CompositeLocale.js.map +1 -1
  1112. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-TW/CompositeLocale.js.map +1 -1
  1113. package/dist/dist-esm/react-composites/src/index-public.js.map +1 -1
  1114. package/package.json +1 -1
  1115. package/dist/dist-cjs/communication-react/ChatMessageComponentAsRichTextEditBox-D-c4G2X8.js.map +0 -1
  1116. package/dist/dist-cjs/communication-react/RichTextSendBoxWrapper-DZ0B-aeu.js.map +0 -1
  1117. package/dist/dist-cjs/communication-react/index-BJy8rF6U.js.map +0 -1
  1118. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.d.ts +0 -17
  1119. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js +0 -99
  1120. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"StatefulCallClient.js","sourceRoot":"","sources":["../../../../../calling-stateful-client/src/StatefulCallClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { deviceManagerDeclaratify } from './DeviceManagerDeclarative';\nimport {\n CallClient,\n CallClientOptions,\n CreateViewOptions,\n DeviceManager,\n Features\n} from '@azure/communication-calling';\nimport { CallClientState, LocalVideoStreamState, RemoteVideoStreamState } from './CallClientState';\n/* @conditional-compile-remove(together-mode) */\nimport { CallFeatureStreamState } from './CallClientState';\nimport { CallContext } from './CallContext';\nimport { callAgentDeclaratify, DeclarativeCallAgent } from './CallAgentDeclarative';\nimport { InternalCallContext } from './InternalCallContext';\nimport { createView, disposeView, CreateViewResult } from './StreamUtils';\nimport { CommunicationIdentifier, CommunicationUserIdentifier, getIdentifierKind } from '@azure/communication-common';\nimport {\n toFlatCommunicationIdentifier,\n _getApplicationId,\n _TelemetryImplementationHint\n} from '@internal/acs-ui-common';\nimport { callingStatefulLogger } from './Logger';\nimport { DeclarativeTeamsCallAgent, teamsCallAgentDeclaratify } from './TeamsCallAgentDeclarative';\nimport { MicrosoftTeamsUserIdentifier } from '@azure/communication-common';\nimport { videoStreamRendererViewDeclaratify } from './VideoStreamRendererViewDeclarative';\n/* @conditional-compile-remove(together-mode) */\nimport { createView as createCallFeatureView, disposeView as disposeCallFeatureView } from './CallFeatureStreamUtils';\n\n/**\n * Defines the methods that allow CallClient {@link @azure/communication-calling#CallClient} to be used statefully.\n * The interface provides access to proxied state and also allows registering a handler for state change events. For\n * state definition see {@link CallClientState}.\n *\n * State change events are driven by:\n * - Returned data from {@link @azure/communication-calling#DeviceManager} APIs.\n * - Returned data from {@link @azure/communication-calling#CallAgent} APIs.\n * - Listeners automatically attached to various azure communication-calling objects:\n * - CallAgent 'incomingCall'\n * - CallAgent 'callsUpdated'\n * - DeviceManager 'videoDevicesUpdated'\n * - DeviceManager 'audioDevicesUpdated\n * - DeviceManager 'selectedMicrophoneChanged'\n * - DeviceManager 'selectedSpeakerChanged'\n * - Call 'stateChanged'\n * - Call 'idChanged'\n * - Call 'isMutedChanged'\n * - Call 'isScreenSharingOnChanged'\n * - Call 'remoteParticipantsUpdated'\n * - Call 'localVideoStreamsUpdated'\n * - IncomingCall 'callEnded'\n * - RemoteParticipant 'stateChanged'\n * - RemoteParticipant 'isMutedChanged'\n * - RemoteParticipant 'displayNameChanged'\n * - RemoteParticipant 'isSpeakingChanged'\n * - RemoteParticipant 'videoStreamsUpdated'\n * - RemoteVideoStream 'isAvailableChanged'\n * - TranscriptionCallFeature 'isTranscriptionActiveChanged'\n * - RecordingCallFeature 'isRecordingActiveChanged'\n * - LocalRecordingCallFeature 'isLocalRecordingActiveChanged'\n * - RaiseHandCallFeature 'raisedHandEvent'\n * - RaiseHandCallFeature 'loweredHandEvent'\n * - PPTLiveCallFeature 'isAciveChanged'\n * - ReactionCallFeature 'reaction'\n *\n * @public\n */\nexport interface StatefulCallClient extends CallClient {\n /**\n * Holds all the state that we could proxy from CallClient {@link @azure/communication-calling#CallClient} as\n * CallClientState {@link CallClientState}.\n */\n getState(): CallClientState;\n /**\n * Allows a handler to be registered for 'stateChanged' events.\n *\n * @param handler - Callback to receive the state.\n */\n onStateChange(handler: (state: CallClientState) => void): void;\n /**\n * Allows unregistering for 'stateChanged' events.\n *\n * @param handler - Original callback to be unsubscribed.\n */\n offStateChange(handler: (state: CallClientState) => void): void;\n /**\n * Renders a {@link RemoteVideoStreamState} or {@link LocalVideoStreamState} and stores the resulting\n * {@link VideoStreamRendererViewState} under the relevant {@link RemoteVideoStreamState} or\n * {@link LocalVideoStreamState} or as unparented view in the state. Under the hood calls\n * {@link @azure/communication-calling#VideoStreamRenderer.createView}.\n *\n * Scenario 1: Render RemoteVideoStreamState\n * - CallId is required, participantId is required, and stream of type RemoteVideoStreamState is required\n * - Resulting {@link VideoStreamRendererViewState} is stored in the given callId and participantId in\n * {@link CallClientState}\n *\n * Scenario 2: Render LocalVideoStreamState for a call\n * - CallId is required, participantId must be undefined, and stream of type LocalVideoStreamState is required.\n * - The {@link @azure/communication-calling#Call.localVideoStreams} must already be started using\n * {@link @azure/communication-calling#Call.startVideo}.\n * - Resulting {@link VideoStreamRendererViewState} is stored in the given callId {@link CallState.localVideoStreams}\n * in {@link CallClientState}.\n *\n * - Scenario 2: Render LocalVideoStreamState not part of a call (example rendering camera for local preview)\n * - CallId must be undefined, participantId must be undefined, and stream of type LocalVideoStreamState is required.\n * - Resulting {@link VideoStreamRendererViewState} is stored in under the given LocalVideoStreamState in\n * {@link CallClientState.deviceManager.unparentedViews}\n *\n * @param callId - CallId for the given stream. Can be undefined if the stream is not part of any call.\n * @param participantId - {@link RemoteParticipant.identifier} associated with the given RemoteVideoStreamState. Could\n * be undefined if rendering LocalVideoStreamState.\n * @param stream - The LocalVideoStreamState or RemoteVideoStreamState to start rendering.\n * @param options - Options that are passed to the {@link @azure/communication-calling#VideoStreamRenderer}.\n */\n createView(\n callId: string | undefined,\n participantId: CommunicationIdentifier | undefined,\n stream:\n | LocalVideoStreamState\n | RemoteVideoStreamState\n | /* @conditional-compile-remove(together-mode) */ CallFeatureStreamState,\n options?: CreateViewOptions\n ): Promise<CreateViewResult | undefined>;\n /**\n * Stops rendering a {@link RemoteVideoStreamState} or {@link LocalVideoStreamState} and removes the\n * {@link VideoStreamRendererView} from the relevant {@link RemoteVideoStreamState} in {@link CallClientState} or\n * {@link LocalVideoStream} in {@link CallClientState} or appropriate\n * {@link CallClientState.deviceManager.unparentedViews} Under the hood calls\n * {@link @azure/communication-calling#VideoStreamRenderer.dispose}.\n *\n * Its important to disposeView to clean up resources properly.\n *\n * Scenario 1: Dispose RemoteVideoStreamState\n * - CallId is required, participantId is required, and stream of type RemoteVideoStreamState is required\n *\n * Scenario 2: Dispose LocalVideoStreamState for a call\n * - CallId is required, participantId must be undefined, and stream of type LocalVideoStreamState is required.\n *\n * - Scenario 2: Dispose LocalVideoStreamState not part of a call\n * - CallId must be undefined, participantId must be undefined, and stream of type LocalVideoStreamState is required.\n * - LocalVideoStreamState must be the original one passed to createView.\n *\n * @param callId - CallId for the given stream. Can be undefined if the stream is not part of any call.\n * @param participantId - {@link RemoteParticipant.identifier} associated with the given RemoteVideoStreamState. Could\n * be undefined if disposing LocalVideoStreamState.\n * @param stream - The LocalVideoStreamState or RemoteVideoStreamState to dispose.\n */\n disposeView(\n callId: string | undefined,\n participantId: CommunicationIdentifier | undefined,\n stream:\n | LocalVideoStreamState\n | RemoteVideoStreamState\n | /* @conditional-compile-remove(together-mode) */ CallFeatureStreamState\n ): void;\n /**\n * The CallAgent is used to handle calls.\n * To create the CallAgent, pass a CommunicationTokenCredential object provided from SDK.\n * - The CallClient can only have one active CallAgent instance at a time.\n * - You can create a new CallClient instance to create a new CallAgent.\n * - You can dispose of a CallClient's current active CallAgent, and call the CallClient's\n * createCallAgent() method again to create a new CallAgent.\n * @param tokenCredential - The token credential. Use AzureCommunicationTokenCredential from `@azure/communication-common` to create a credential.\n * @param options - The CallAgentOptions for additional options like display name.\n * @public\n */\n createCallAgent(...args: Parameters<CallClient['createCallAgent']>): Promise<DeclarativeCallAgent>;\n\n /**\n * The TeamsCallAgent is used to handle calls.\n * To create the TeamsCallAgent, pass a CommunicationTokenCredential object provided from SDK.\n * - The CallClient can only have one active TeamsCallAgent instance at a time.\n * - You can create a new CallClient instance to create a new TeamsCallAgent.\n * - You can dispose of a CallClient's current active TeamsCallAgent, and call the CallClient's\n * createTeamsCallAgent() method again to create a new TeamsCallAgent.\n * @param tokenCredential - The token credential. Use AzureCommunicationTokenCredential from `@azure/communication-common` to create a credential.\n * @param options - The TeamsCallAgentOptions for additional options like display name.\n * @public\n */\n createTeamsCallAgent(...args: Parameters<CallClient['createTeamsCallAgent']>): Promise<DeclarativeTeamsCallAgent>;\n}\n\n/**\n * A function to modify the state of the StatefulCallClient.\n *\n * Provided as a callback to the {@link StatefulCallClient.modifyState} method.\n *\n * The function must modify the provided state in place as much as possible.\n * Making large modifications can lead to bad performance by causing spurious rerendering of the UI.\n *\n * Consider using commonly used modifier functions exported from this package.\n */\nexport type CallStateModifier = (state: CallClientState) => void;\n\n/**\n * ProxyCallClient proxies CallClient {@link @azure/communication-calling#CallClient} and subscribes to all events that\n * affect state. ProxyCallClient keeps its own copy of the call state and when state is updated, ProxyCallClient emits\n * the event 'stateChanged'.\n */\nclass ProxyCallClient implements ProxyHandler<CallClient> {\n private _context: CallContext;\n private _internalContext: InternalCallContext;\n private _callAgent: DeclarativeCallAgent | DeclarativeTeamsCallAgent | undefined;\n private _deviceManager: DeviceManager | undefined;\n private _sdkDeviceManager: DeviceManager | undefined;\n\n constructor(context: CallContext, internalContext: InternalCallContext) {\n this._context = context;\n this._internalContext = internalContext;\n }\n\n public get<P extends keyof CallClient>(target: CallClient, prop: P): any {\n switch (prop) {\n case 'createCallAgent': {\n return this._context.withAsyncErrorTeedToState(\n async (...args: Parameters<CallClient['createCallAgent']>): Promise<DeclarativeCallAgent> => {\n // createCallAgent will throw an exception if the previous callAgent was not disposed. If the previous\n // callAgent was disposed then it would have unsubscribed to events so we can just create a new declarative\n // callAgent if the createCallAgent succeeds.\n const callAgent = await target.createCallAgent(...args);\n this._callAgent = callAgentDeclaratify(callAgent, this._context, this._internalContext);\n this._context.setCallAgent({\n displayName: this._callAgent.displayName\n });\n return this._callAgent;\n },\n 'CallClient.createCallAgent'\n );\n }\n case 'createTeamsCallAgent': {\n return this._context.withAsyncErrorTeedToState(\n async (...args: Parameters<CallClient['createTeamsCallAgent']>): Promise<DeclarativeTeamsCallAgent> => {\n // createCallAgent will throw an exception if the previous callAgent was not disposed. If the previous\n // callAgent was disposed then it would have unsubscribed to events so we can just create a new declarative\n // callAgent if the createCallAgent succeeds.\n const callAgent = await target.createTeamsCallAgent(...args);\n this._callAgent = teamsCallAgentDeclaratify(callAgent, this._context, this._internalContext);\n this._context.setCallAgent({\n displayName: undefined\n });\n return this._callAgent;\n },\n 'CallClient.createTeamsCallAgent'\n );\n }\n case 'getDeviceManager': {\n return this._context.withAsyncErrorTeedToState(async () => {\n // As of writing, the SDK always returns the same instance of DeviceManager so we keep a reference of\n // DeviceManager and if it does not change we return the cached DeclarativeDeviceManager. If it does not we'll\n // throw an error that indicate we need to fix this issue as our implementation has diverged from the SDK.\n const deviceManager = await target.getDeviceManager();\n if (this._sdkDeviceManager) {\n if (this._sdkDeviceManager === deviceManager) {\n return this._deviceManager;\n } else {\n throw new Error(\n 'Multiple DeviceManager not supported. This means a incompatible version of communication-calling is ' +\n 'used OR calling declarative was not properly updated to communication-calling version.'\n );\n }\n } else {\n this._sdkDeviceManager = deviceManager;\n }\n this._deviceManager = deviceManagerDeclaratify(deviceManager, this._context, this._internalContext);\n return this._deviceManager;\n }, 'CallClient.getDeviceManager');\n }\n case 'feature': {\n return this._context.withErrorTeedToState((...args: Parameters<CallClient['feature']>) => {\n if (args[0] === Features.DebugInfo) {\n const feature = target.feature(Features.DebugInfo);\n /**\n * add to this object if we want to proxy anything else off the DebugInfo feature object.\n */\n return {\n ...feature,\n getEnvironmentInfo: async () => {\n const environmentInfo = await feature.getEnvironmentInfo();\n this._context.setEnvironmentInfo(environmentInfo);\n return environmentInfo;\n }\n };\n }\n return Reflect.get(target, prop);\n }, 'CallClient.feature');\n }\n default:\n return Reflect.get(target, prop);\n }\n }\n}\n\n/**\n * Arguments to construct the StatefulCallClient.\n *\n * @public\n */\nexport type StatefulCallClientArgs = {\n /**\n * UserId from SDK. This is provided for developer convenience to easily access the userId from the\n * state. It is not used by StatefulCallClient.\n */\n userId: CommunicationUserIdentifier | MicrosoftTeamsUserIdentifier;\n};\n\n/**\n * Options to construct the StatefulCallClient with.\n *\n * @public\n */\nexport type StatefulCallClientOptions = {\n /**\n * Options to construct the {@link @axure/communication-calling#CallClient} with.\n */\n callClientOptions: CallClientOptions;\n /**\n * Sets the max listeners limit of the 'stateChange' event. Defaults to the node.js EventEmitter.defaultMaxListeners\n * if not specified.\n */\n maxStateChangeListeners?: number;\n};\n\n/**\n * Creates a StatefulCallClient {@link StatefulCallClient} by proxying CallClient\n * {@link @azure/communication-calling#CallClient} with ProxyCallClient {@link ProxyCallClient} which then allows access\n * to state in a declarative way.\n *\n * It is important to use the {@link @azure/communication-calling#DeviceManager} and\n * {@link @azure/communication-calling#CallAgent} and {@link @azure/communication-calling#Call} (and etc.) that are\n * obtained from the StatefulCallClient in order for their state changes to be proxied properly.\n *\n * @param args - {@link StatefulCallClientArgs}\n * @param options - {@link StatefulCallClientOptions}\n *\n * @public\n */\nexport const createStatefulCallClient = (\n args: StatefulCallClientArgs,\n options?: StatefulCallClientOptions\n): StatefulCallClient => {\n return _createStatefulCallClientInner(args, options);\n};\n\n/**\n * This inner function is used to allow injection of TelemetryImplementationHint without changing the public API.\n *\n * @internal\n */\nexport const _createStatefulCallClientInner = (\n args: StatefulCallClientArgs,\n options?: StatefulCallClientOptions,\n telemetryImplementationHint: _TelemetryImplementationHint = 'StatefulComponents'\n): StatefulCallClient => {\n callingStatefulLogger.info(\n `Creating calling stateful client using library version: ${_getApplicationId(telemetryImplementationHint)}`\n );\n return createStatefulCallClientWithDeps(\n new CallClient(withTelemetryTag(telemetryImplementationHint, options?.callClientOptions)),\n new CallContext(getIdentifierKind(args.userId), options?.maxStateChangeListeners),\n new InternalCallContext()\n );\n};\n\n/**\n * Package-internal version of createStatefulCallClient that allows dependency injection.\n *\n * This function should not be exported from the package.\n */\nexport const createStatefulCallClientWithDeps = (\n callClient: CallClient,\n context: CallContext,\n internalContext: InternalCallContext\n): StatefulCallClient => {\n Object.defineProperty(callClient, 'getState', {\n configurable: false,\n value: () => context.getState()\n });\n Object.defineProperty(callClient, 'onStateChange', {\n configurable: false,\n value: (handler: (state: CallClientState) => void) => context.onStateChange(handler)\n });\n Object.defineProperty(callClient, 'offStateChange', {\n configurable: false,\n value: (handler: (state: CallClientState) => void) => context.offStateChange(handler)\n });\n Object.defineProperty(callClient, 'createView', {\n configurable: false,\n value: async (\n callId: string | undefined,\n participantId: CommunicationIdentifier | undefined,\n stream:\n | LocalVideoStreamState\n | RemoteVideoStreamState\n | /* @conditional-compile-remove(together-mode) */ CallFeatureStreamState,\n options?: CreateViewOptions\n ): Promise<CreateViewResult | undefined> => {\n /* @conditional-compile-remove(together-mode) */\n if ('feature' in stream) {\n return await createCallFeatureView(context, internalContext, callId, stream, options);\n }\n const participantIdKind = participantId ? getIdentifierKind(participantId) : undefined;\n const result = await createView(context, internalContext, callId, participantIdKind, stream, options);\n // We only need to declaratify the VideoStreamRendererView object for remote participants. Because the updateScalingMode only needs to be called on remote participant stream views.\n if ('id' in stream && callId && participantId && result) {\n const participantKey = toFlatCommunicationIdentifier(participantId);\n result.view = videoStreamRendererViewDeclaratify(result.view, context, callId, participantKey, stream.id);\n }\n return result;\n }\n });\n Object.defineProperty(callClient, 'disposeView', {\n configurable: false,\n value: (\n callId: string | undefined,\n participantId: CommunicationIdentifier | undefined,\n stream:\n | LocalVideoStreamState\n | RemoteVideoStreamState\n | /* @conditional-compile-remove(together-mode) */ CallFeatureStreamState\n ): void => {\n /* @conditional-compile-remove(together-mode) */\n if ('feature' in stream) {\n disposeCallFeatureView(context, internalContext, callId, stream);\n }\n const participantIdKind = participantId ? getIdentifierKind(participantId) : undefined;\n disposeView(context, internalContext, callId, participantIdKind, stream);\n }\n });\n\n const newStatefulCallClient = new Proxy(\n callClient,\n new ProxyCallClient(context, internalContext)\n ) as StatefulCallClient;\n\n // Populate initial state\n newStatefulCallClient.feature(Features.DebugInfo).getEnvironmentInfo();\n\n return newStatefulCallClient;\n};\n\nconst withTelemetryTag = (\n telemetryImplementationHint: _TelemetryImplementationHint,\n options?: CallClientOptions\n): CallClientOptions => {\n const tags = options?.diagnostics?.tags ?? [];\n tags.push(_getApplicationId(telemetryImplementationHint));\n return {\n ...options,\n diagnostics: {\n ...options?.diagnostics,\n tags\n }\n };\n};\n"]}
1
+ {"version":3,"file":"StatefulCallClient.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/StatefulCallClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { deviceManagerDeclaratify } from './DeviceManagerDeclarative';\nimport { CallClient, CallClientOptions, CreateViewOptions, DeviceManager, Features } from '@azure/communication-calling';\nimport { CallClientState, LocalVideoStreamState, RemoteVideoStreamState } from './CallClientState';\nimport { CallFeatureStreamState } from './CallClientState';\nimport { CallContext } from './CallContext';\nimport { callAgentDeclaratify, DeclarativeCallAgent } from './CallAgentDeclarative';\nimport { InternalCallContext } from './InternalCallContext';\nimport { createView, disposeView, CreateViewResult } from './StreamUtils';\nimport { CommunicationIdentifier, CommunicationUserIdentifier, getIdentifierKind } from '@azure/communication-common';\nimport { toFlatCommunicationIdentifier, _getApplicationId, _TelemetryImplementationHint } from '@internal/acs-ui-common';\nimport { callingStatefulLogger } from './Logger';\nimport { DeclarativeTeamsCallAgent, teamsCallAgentDeclaratify } from './TeamsCallAgentDeclarative';\nimport { MicrosoftTeamsUserIdentifier } from '@azure/communication-common';\nimport { videoStreamRendererViewDeclaratify } from './VideoStreamRendererViewDeclarative';\nimport { createView as createCallFeatureView, disposeView as disposeCallFeatureView } from './CallFeatureStreamUtils';\n\n/**\n * Defines the methods that allow CallClient {@link @azure/communication-calling#CallClient} to be used statefully.\n * The interface provides access to proxied state and also allows registering a handler for state change events. For\n * state definition see {@link CallClientState}.\n *\n * State change events are driven by:\n * - Returned data from {@link @azure/communication-calling#DeviceManager} APIs.\n * - Returned data from {@link @azure/communication-calling#CallAgent} APIs.\n * - Listeners automatically attached to various azure communication-calling objects:\n * - CallAgent 'incomingCall'\n * - CallAgent 'callsUpdated'\n * - DeviceManager 'videoDevicesUpdated'\n * - DeviceManager 'audioDevicesUpdated\n * - DeviceManager 'selectedMicrophoneChanged'\n * - DeviceManager 'selectedSpeakerChanged'\n * - Call 'stateChanged'\n * - Call 'idChanged'\n * - Call 'isMutedChanged'\n * - Call 'isScreenSharingOnChanged'\n * - Call 'remoteParticipantsUpdated'\n * - Call 'localVideoStreamsUpdated'\n * - IncomingCall 'callEnded'\n * - RemoteParticipant 'stateChanged'\n * - RemoteParticipant 'isMutedChanged'\n * - RemoteParticipant 'displayNameChanged'\n * - RemoteParticipant 'isSpeakingChanged'\n * - RemoteParticipant 'videoStreamsUpdated'\n * - RemoteVideoStream 'isAvailableChanged'\n * - TranscriptionCallFeature 'isTranscriptionActiveChanged'\n * - RecordingCallFeature 'isRecordingActiveChanged'\n * - LocalRecordingCallFeature 'isLocalRecordingActiveChanged'\n * - RaiseHandCallFeature 'raisedHandEvent'\n * - RaiseHandCallFeature 'loweredHandEvent'\n * - PPTLiveCallFeature 'isAciveChanged'\n * - ReactionCallFeature 'reaction'\n *\n * @public\n */\nexport interface StatefulCallClient extends CallClient {\n /**\n * Holds all the state that we could proxy from CallClient {@link @azure/communication-calling#CallClient} as\n * CallClientState {@link CallClientState}.\n */\n getState(): CallClientState;\n /**\n * Allows a handler to be registered for 'stateChanged' events.\n *\n * @param handler - Callback to receive the state.\n */\n onStateChange(handler: (state: CallClientState) => void): void;\n /**\n * Allows unregistering for 'stateChanged' events.\n *\n * @param handler - Original callback to be unsubscribed.\n */\n offStateChange(handler: (state: CallClientState) => void): void;\n /**\n * Renders a {@link RemoteVideoStreamState} or {@link LocalVideoStreamState} and stores the resulting\n * {@link VideoStreamRendererViewState} under the relevant {@link RemoteVideoStreamState} or\n * {@link LocalVideoStreamState} or as unparented view in the state. Under the hood calls\n * {@link @azure/communication-calling#VideoStreamRenderer.createView}.\n *\n * Scenario 1: Render RemoteVideoStreamState\n * - CallId is required, participantId is required, and stream of type RemoteVideoStreamState is required\n * - Resulting {@link VideoStreamRendererViewState} is stored in the given callId and participantId in\n * {@link CallClientState}\n *\n * Scenario 2: Render LocalVideoStreamState for a call\n * - CallId is required, participantId must be undefined, and stream of type LocalVideoStreamState is required.\n * - The {@link @azure/communication-calling#Call.localVideoStreams} must already be started using\n * {@link @azure/communication-calling#Call.startVideo}.\n * - Resulting {@link VideoStreamRendererViewState} is stored in the given callId {@link CallState.localVideoStreams}\n * in {@link CallClientState}.\n *\n * - Scenario 2: Render LocalVideoStreamState not part of a call (example rendering camera for local preview)\n * - CallId must be undefined, participantId must be undefined, and stream of type LocalVideoStreamState is required.\n * - Resulting {@link VideoStreamRendererViewState} is stored in under the given LocalVideoStreamState in\n * {@link CallClientState.deviceManager.unparentedViews}\n *\n * @param callId - CallId for the given stream. Can be undefined if the stream is not part of any call.\n * @param participantId - {@link RemoteParticipant.identifier} associated with the given RemoteVideoStreamState. Could\n * be undefined if rendering LocalVideoStreamState.\n * @param stream - The LocalVideoStreamState or RemoteVideoStreamState to start rendering.\n * @param options - Options that are passed to the {@link @azure/communication-calling#VideoStreamRenderer}.\n */\n createView(callId: string | undefined, participantId: CommunicationIdentifier | undefined, stream: LocalVideoStreamState | RemoteVideoStreamState | CallFeatureStreamState, options?: CreateViewOptions): Promise<CreateViewResult | undefined>;\n /**\n * Stops rendering a {@link RemoteVideoStreamState} or {@link LocalVideoStreamState} and removes the\n * {@link VideoStreamRendererView} from the relevant {@link RemoteVideoStreamState} in {@link CallClientState} or\n * {@link LocalVideoStream} in {@link CallClientState} or appropriate\n * {@link CallClientState.deviceManager.unparentedViews} Under the hood calls\n * {@link @azure/communication-calling#VideoStreamRenderer.dispose}.\n *\n * Its important to disposeView to clean up resources properly.\n *\n * Scenario 1: Dispose RemoteVideoStreamState\n * - CallId is required, participantId is required, and stream of type RemoteVideoStreamState is required\n *\n * Scenario 2: Dispose LocalVideoStreamState for a call\n * - CallId is required, participantId must be undefined, and stream of type LocalVideoStreamState is required.\n *\n * - Scenario 2: Dispose LocalVideoStreamState not part of a call\n * - CallId must be undefined, participantId must be undefined, and stream of type LocalVideoStreamState is required.\n * - LocalVideoStreamState must be the original one passed to createView.\n *\n * @param callId - CallId for the given stream. Can be undefined if the stream is not part of any call.\n * @param participantId - {@link RemoteParticipant.identifier} associated with the given RemoteVideoStreamState. Could\n * be undefined if disposing LocalVideoStreamState.\n * @param stream - The LocalVideoStreamState or RemoteVideoStreamState to dispose.\n */\n disposeView(callId: string | undefined, participantId: CommunicationIdentifier | undefined, stream: LocalVideoStreamState | RemoteVideoStreamState | CallFeatureStreamState): void;\n /**\n * The CallAgent is used to handle calls.\n * To create the CallAgent, pass a CommunicationTokenCredential object provided from SDK.\n * - The CallClient can only have one active CallAgent instance at a time.\n * - You can create a new CallClient instance to create a new CallAgent.\n * - You can dispose of a CallClient's current active CallAgent, and call the CallClient's\n * createCallAgent() method again to create a new CallAgent.\n * @param tokenCredential - The token credential. Use AzureCommunicationTokenCredential from `@azure/communication-common` to create a credential.\n * @param options - The CallAgentOptions for additional options like display name.\n * @public\n */\n createCallAgent(...args: Parameters<CallClient['createCallAgent']>): Promise<DeclarativeCallAgent>;\n\n /**\n * The TeamsCallAgent is used to handle calls.\n * To create the TeamsCallAgent, pass a CommunicationTokenCredential object provided from SDK.\n * - The CallClient can only have one active TeamsCallAgent instance at a time.\n * - You can create a new CallClient instance to create a new TeamsCallAgent.\n * - You can dispose of a CallClient's current active TeamsCallAgent, and call the CallClient's\n * createTeamsCallAgent() method again to create a new TeamsCallAgent.\n * @param tokenCredential - The token credential. Use AzureCommunicationTokenCredential from `@azure/communication-common` to create a credential.\n * @param options - The TeamsCallAgentOptions for additional options like display name.\n * @public\n */\n createTeamsCallAgent(...args: Parameters<CallClient['createTeamsCallAgent']>): Promise<DeclarativeTeamsCallAgent>;\n}\n\n/**\n * A function to modify the state of the StatefulCallClient.\n *\n * Provided as a callback to the {@link StatefulCallClient.modifyState} method.\n *\n * The function must modify the provided state in place as much as possible.\n * Making large modifications can lead to bad performance by causing spurious rerendering of the UI.\n *\n * Consider using commonly used modifier functions exported from this package.\n */\nexport type CallStateModifier = (state: CallClientState) => void;\n\n/**\n * ProxyCallClient proxies CallClient {@link @azure/communication-calling#CallClient} and subscribes to all events that\n * affect state. ProxyCallClient keeps its own copy of the call state and when state is updated, ProxyCallClient emits\n * the event 'stateChanged'.\n */\nclass ProxyCallClient implements ProxyHandler<CallClient> {\n private _context: CallContext;\n private _internalContext: InternalCallContext;\n private _callAgent: DeclarativeCallAgent | DeclarativeTeamsCallAgent | undefined;\n private _deviceManager: DeviceManager | undefined;\n private _sdkDeviceManager: DeviceManager | undefined;\n constructor(context: CallContext, internalContext: InternalCallContext) {\n this._context = context;\n this._internalContext = internalContext;\n }\n public get<P extends keyof CallClient>(target: CallClient, prop: P): any {\n switch (prop) {\n case 'createCallAgent':\n {\n return this._context.withAsyncErrorTeedToState(async (...args: Parameters<CallClient['createCallAgent']>): Promise<DeclarativeCallAgent> => {\n // createCallAgent will throw an exception if the previous callAgent was not disposed. If the previous\n // callAgent was disposed then it would have unsubscribed to events so we can just create a new declarative\n // callAgent if the createCallAgent succeeds.\n const callAgent = await target.createCallAgent(...args);\n this._callAgent = callAgentDeclaratify(callAgent, this._context, this._internalContext);\n this._context.setCallAgent({\n displayName: this._callAgent.displayName\n });\n return this._callAgent;\n }, 'CallClient.createCallAgent');\n }\n case 'createTeamsCallAgent':\n {\n return this._context.withAsyncErrorTeedToState(async (...args: Parameters<CallClient['createTeamsCallAgent']>): Promise<DeclarativeTeamsCallAgent> => {\n // createCallAgent will throw an exception if the previous callAgent was not disposed. If the previous\n // callAgent was disposed then it would have unsubscribed to events so we can just create a new declarative\n // callAgent if the createCallAgent succeeds.\n const callAgent = await target.createTeamsCallAgent(...args);\n this._callAgent = teamsCallAgentDeclaratify(callAgent, this._context, this._internalContext);\n this._context.setCallAgent({\n displayName: undefined\n });\n return this._callAgent;\n }, 'CallClient.createTeamsCallAgent');\n }\n case 'getDeviceManager':\n {\n return this._context.withAsyncErrorTeedToState(async () => {\n // As of writing, the SDK always returns the same instance of DeviceManager so we keep a reference of\n // DeviceManager and if it does not change we return the cached DeclarativeDeviceManager. If it does not we'll\n // throw an error that indicate we need to fix this issue as our implementation has diverged from the SDK.\n const deviceManager = await target.getDeviceManager();\n if (this._sdkDeviceManager) {\n if (this._sdkDeviceManager === deviceManager) {\n return this._deviceManager;\n } else {\n throw new Error('Multiple DeviceManager not supported. This means a incompatible version of communication-calling is ' + 'used OR calling declarative was not properly updated to communication-calling version.');\n }\n } else {\n this._sdkDeviceManager = deviceManager;\n }\n this._deviceManager = deviceManagerDeclaratify(deviceManager, this._context, this._internalContext);\n return this._deviceManager;\n }, 'CallClient.getDeviceManager');\n }\n case 'feature':\n {\n return this._context.withErrorTeedToState((...args: Parameters<CallClient['feature']>) => {\n if (args[0] === Features.DebugInfo) {\n const feature = target.feature(Features.DebugInfo);\n /**\n * add to this object if we want to proxy anything else off the DebugInfo feature object.\n */\n return {\n ...feature,\n getEnvironmentInfo: async () => {\n const environmentInfo = await feature.getEnvironmentInfo();\n this._context.setEnvironmentInfo(environmentInfo);\n return environmentInfo;\n }\n };\n }\n return Reflect.get(target, prop);\n }, 'CallClient.feature');\n }\n default:\n return Reflect.get(target, prop);\n }\n }\n}\n\n/**\n * Arguments to construct the StatefulCallClient.\n *\n * @public\n */\nexport type StatefulCallClientArgs = {\n /**\n * UserId from SDK. This is provided for developer convenience to easily access the userId from the\n * state. It is not used by StatefulCallClient.\n */\n userId: CommunicationUserIdentifier | MicrosoftTeamsUserIdentifier;\n};\n\n/**\n * Options to construct the StatefulCallClient with.\n *\n * @public\n */\nexport type StatefulCallClientOptions = {\n /**\n * Options to construct the {@link @axure/communication-calling#CallClient} with.\n */\n callClientOptions: CallClientOptions;\n /**\n * Sets the max listeners limit of the 'stateChange' event. Defaults to the node.js EventEmitter.defaultMaxListeners\n * if not specified.\n */\n maxStateChangeListeners?: number;\n};\n\n/**\n * Creates a StatefulCallClient {@link StatefulCallClient} by proxying CallClient\n * {@link @azure/communication-calling#CallClient} with ProxyCallClient {@link ProxyCallClient} which then allows access\n * to state in a declarative way.\n *\n * It is important to use the {@link @azure/communication-calling#DeviceManager} and\n * {@link @azure/communication-calling#CallAgent} and {@link @azure/communication-calling#Call} (and etc.) that are\n * obtained from the StatefulCallClient in order for their state changes to be proxied properly.\n *\n * @param args - {@link StatefulCallClientArgs}\n * @param options - {@link StatefulCallClientOptions}\n *\n * @public\n */\nexport const createStatefulCallClient = (args: StatefulCallClientArgs, options?: StatefulCallClientOptions): StatefulCallClient => {\n return _createStatefulCallClientInner(args, options);\n};\n\n/**\n * This inner function is used to allow injection of TelemetryImplementationHint without changing the public API.\n *\n * @internal\n */\nexport const _createStatefulCallClientInner = (args: StatefulCallClientArgs, options?: StatefulCallClientOptions, telemetryImplementationHint: _TelemetryImplementationHint = 'StatefulComponents'): StatefulCallClient => {\n callingStatefulLogger.info(`Creating calling stateful client using library version: ${_getApplicationId(telemetryImplementationHint)}`);\n return createStatefulCallClientWithDeps(new CallClient(withTelemetryTag(telemetryImplementationHint, options?.callClientOptions)), new CallContext(getIdentifierKind(args.userId), options?.maxStateChangeListeners), new InternalCallContext());\n};\n\n/**\n * Package-internal version of createStatefulCallClient that allows dependency injection.\n *\n * This function should not be exported from the package.\n */\nexport const createStatefulCallClientWithDeps = (callClient: CallClient, context: CallContext, internalContext: InternalCallContext): StatefulCallClient => {\n Object.defineProperty(callClient, 'getState', {\n configurable: false,\n value: () => context.getState()\n });\n Object.defineProperty(callClient, 'onStateChange', {\n configurable: false,\n value: (handler: (state: CallClientState) => void) => context.onStateChange(handler)\n });\n Object.defineProperty(callClient, 'offStateChange', {\n configurable: false,\n value: (handler: (state: CallClientState) => void) => context.offStateChange(handler)\n });\n Object.defineProperty(callClient, 'createView', {\n configurable: false,\n value: async (callId: string | undefined, participantId: CommunicationIdentifier | undefined, stream: LocalVideoStreamState | RemoteVideoStreamState | CallFeatureStreamState, options?: CreateViewOptions): Promise<CreateViewResult | undefined> => {\n if ('feature' in stream) {\n return await createCallFeatureView(context, internalContext, callId, stream, options);\n }\n const participantIdKind = participantId ? getIdentifierKind(participantId) : undefined;\n const result = await createView(context, internalContext, callId, participantIdKind, stream, options);\n // We only need to declaratify the VideoStreamRendererView object for remote participants. Because the updateScalingMode only needs to be called on remote participant stream views.\n if ('id' in stream && callId && participantId && result) {\n const participantKey = toFlatCommunicationIdentifier(participantId);\n result.view = videoStreamRendererViewDeclaratify(result.view, context, callId, participantKey, stream.id);\n }\n return result;\n }\n });\n Object.defineProperty(callClient, 'disposeView', {\n configurable: false,\n value: (callId: string | undefined, participantId: CommunicationIdentifier | undefined, stream: LocalVideoStreamState | RemoteVideoStreamState | CallFeatureStreamState): void => {\n if ('feature' in stream) {\n disposeCallFeatureView(context, internalContext, callId, stream);\n }\n const participantIdKind = participantId ? getIdentifierKind(participantId) : undefined;\n disposeView(context, internalContext, callId, participantIdKind, stream);\n }\n });\n const newStatefulCallClient = new Proxy(callClient, new ProxyCallClient(context, internalContext)) as StatefulCallClient;\n\n // Populate initial state\n newStatefulCallClient.feature(Features.DebugInfo).getEnvironmentInfo();\n return newStatefulCallClient;\n};\nconst withTelemetryTag = (telemetryImplementationHint: _TelemetryImplementationHint, options?: CallClientOptions): CallClientOptions => {\n const tags = options?.diagnostics?.tags ?? [];\n tags.push(_getApplicationId(telemetryImplementationHint));\n return {\n ...options,\n diagnostics: {\n ...options?.diagnostics,\n tags\n }\n };\n};"]}
@@ -34,11 +34,7 @@ function createViewVideo(context, internalContext, callId, stream, participantId
34
34
  const localStreamKey = stream.mediaStreamType;
35
35
  const remoteStreamId = stream.id;
36
36
  // we want to check to see if there is a participantId this will tell us whether its a local stream or a remote one.
37
- const participantKey = streamEventType === 'createViewRemote' && participantId
38
- ? typeof participantId === 'string'
39
- ? participantId
40
- : toFlatCommunicationIdentifier(participantId)
41
- : undefined;
37
+ const participantKey = streamEventType === 'createViewRemote' && participantId ? typeof participantId === 'string' ? participantId : toFlatCommunicationIdentifier(participantId) : undefined;
42
38
  const streamLogInfo = {
43
39
  callId,
44
40
  participantKey,
@@ -49,9 +45,7 @@ function createViewVideo(context, internalContext, callId, stream, participantId
49
45
  // make different logging announcement based on whether or not we are starting a local or remote
50
46
  _logStreamEvent(EventNames.CREATING_VIEW, streamLogInfo);
51
47
  // if we have a participant Id and a stream get the remote info, else get the local render info from state.
52
- const renderInfo = streamEventType === 'createViewRemote' && participantKey
53
- ? internalContext.getRemoteRenderInfoForParticipant(callId, participantKey, remoteStreamId)
54
- : internalContext.getLocalRenderInfo(callId, localStreamKey);
48
+ const renderInfo = streamEventType === 'createViewRemote' && participantKey ? internalContext.getRemoteRenderInfoForParticipant(callId, participantKey, remoteStreamId) : internalContext.getLocalRenderInfo(callId, localStreamKey);
55
49
  if (!renderInfo) {
56
50
  _logStreamEvent(EventNames.STREAM_NOT_FOUND, streamLogInfo);
57
51
  return;
@@ -80,9 +74,7 @@ function createViewVideo(context, internalContext, callId, stream, participantId
80
74
  return;
81
75
  }
82
76
  const renderer = new VideoStreamRenderer(renderInfo.stream);
83
- streamEventType === 'createViewRemote' && participantKey
84
- ? internalContext.setRemoteRenderInfo(callId, participantKey, remoteStreamId, renderInfo.stream, 'Rendering', undefined)
85
- : internalContext.setLocalRenderInfo(callId, localStreamKey, renderInfo.stream, 'Rendering', renderer);
77
+ streamEventType === 'createViewRemote' && participantKey ? internalContext.setRemoteRenderInfo(callId, participantKey, remoteStreamId, renderInfo.stream, 'Rendering', undefined) : internalContext.setLocalRenderInfo(callId, localStreamKey, renderInfo.stream, 'Rendering', renderer);
86
78
  let view;
87
79
  try {
88
80
  view = yield renderer.createView(options);
@@ -100,17 +92,13 @@ function createViewVideo(context, internalContext, callId, stream, participantId
100
92
  }
101
93
  // Since render could take some time, we need to check if the stream is still valid and if we received a signal to
102
94
  // stop rendering.
103
- const refreshedRenderInfo = streamEventType === 'createViewRemote' && participantKey
104
- ? internalContext.getRemoteRenderInfoForParticipant(callId, participantKey, remoteStreamId)
105
- : internalContext.getLocalRenderInfo(callId, localStreamKey);
95
+ const refreshedRenderInfo = streamEventType === 'createViewRemote' && participantKey ? internalContext.getRemoteRenderInfoForParticipant(callId, participantKey, remoteStreamId) : internalContext.getLocalRenderInfo(callId, localStreamKey);
106
96
  if (!refreshedRenderInfo) {
107
97
  // RenderInfo was removed. This should not happen unless stream was removed from the call so dispose the renderer
108
98
  // and clean up the state.
109
99
  _logStreamEvent(EventNames.RENDER_INFO_NOT_FOUND, streamLogInfo);
110
100
  renderer.dispose();
111
- streamEventType === 'createViewRemote' && participantKey
112
- ? context.setRemoteVideoStreamRendererView(callId, participantKey, remoteStreamId, undefined)
113
- : context.setLocalVideoStreamRendererView(callId, localStreamKey, undefined);
101
+ streamEventType === 'createViewRemote' && participantKey ? context.setRemoteVideoStreamRendererView(callId, participantKey, remoteStreamId, undefined) : context.setLocalVideoStreamRendererView(callId, localStreamKey, undefined);
114
102
  return;
115
103
  }
116
104
  if (refreshedRenderInfo.status === 'Stopping') {
@@ -225,19 +213,18 @@ function disposeViewVideo(context, internalContext, callId, stream, participantI
225
213
  const localStreamKey = stream.mediaStreamType;
226
214
  const remoteStreamId = stream.id;
227
215
  // we want to check to see if there is a participantId this will tell us whether its a local stream or a remote one.
228
- const participantKey = streamEventType === 'disposeViewRemote' && participantId
229
- ? typeof participantId === 'string'
230
- ? participantId
231
- : toFlatCommunicationIdentifier(participantId)
232
- : undefined;
233
- const streamLogInfo = { callId, participantKey, streamId: remoteStreamId !== null && remoteStreamId !== void 0 ? remoteStreamId : localStreamKey, streamType };
216
+ const participantKey = streamEventType === 'disposeViewRemote' && participantId ? typeof participantId === 'string' ? participantId : toFlatCommunicationIdentifier(participantId) : undefined;
217
+ const streamLogInfo = {
218
+ callId,
219
+ participantKey,
220
+ streamId: remoteStreamId !== null && remoteStreamId !== void 0 ? remoteStreamId : localStreamKey,
221
+ streamType
222
+ };
234
223
  _logStreamEvent(EventNames.START_DISPOSE_STREAM, streamLogInfo);
235
224
  if (streamEventType === 'disposeViewRemote' && participantKey) {
236
225
  context.setRemoteVideoStreamRendererView(callId, participantKey, remoteStreamId, undefined);
237
226
  }
238
- const renderInfo = streamEventType === 'disposeViewRemote' && participantKey
239
- ? internalContext.getRemoteRenderInfoForParticipant(callId, participantKey, remoteStreamId)
240
- : internalContext.getLocalRenderInfo(callId, localStreamKey);
227
+ const renderInfo = streamEventType === 'disposeViewRemote' && participantKey ? internalContext.getRemoteRenderInfoForParticipant(callId, participantKey, remoteStreamId) : internalContext.getLocalRenderInfo(callId, localStreamKey);
241
228
  if (!renderInfo) {
242
229
  _logStreamEvent(EventNames.DISPOSE_INFO_NOT_FOUND, streamLogInfo);
243
230
  return;
@@ -259,9 +246,7 @@ function disposeViewVideo(context, internalContext, callId, stream, participantI
259
246
  // rendering and clean up the state once the view has finished being created.
260
247
  if (renderInfo.status === 'Rendering') {
261
248
  _logStreamEvent(EventNames.STREAM_STOPPING, streamLogInfo);
262
- streamEventType === 'disposeViewRemote' && participantKey
263
- ? internalContext.setRemoteRenderInfo(callId, participantKey, remoteStreamId, renderInfo.stream, 'Stopping', undefined)
264
- : internalContext.setLocalRenderInfo(callId, localStreamKey, renderInfo.stream, 'Stopping', renderInfo.renderer);
249
+ streamEventType === 'disposeViewRemote' && participantKey ? internalContext.setRemoteRenderInfo(callId, participantKey, remoteStreamId, renderInfo.stream, 'Stopping', undefined) : internalContext.setLocalRenderInfo(callId, localStreamKey, renderInfo.stream, 'Stopping', renderInfo.renderer);
265
250
  return;
266
251
  }
267
252
  if (renderInfo.renderer) {
@@ -282,7 +267,10 @@ function disposeViewVideo(context, internalContext, callId, stream, participantI
282
267
  }
283
268
  function disposeViewUnparentedVideo(context, internalContext, stream) {
284
269
  const streamType = stream.mediaStreamType;
285
- const streamLogInfo = { streamType, streamEventType: 'disposeViewUnparented' };
270
+ const streamLogInfo = {
271
+ streamType,
272
+ streamEventType: 'disposeViewUnparented'
273
+ };
286
274
  _logStreamEvent(EventNames.START_DISPOSE_STREAM, streamLogInfo);
287
275
  context.deleteDeviceManagerUnparentedView(stream);
288
276
  const renderInfo = internalContext.getUnparentedRenderInfo(stream);
@@ -320,7 +308,9 @@ export function createView(context, internalContext, callId, participantId, stre
320
308
  return context.withAsyncErrorTeedToState(() => __awaiter(this, void 0, void 0, function* () { return yield createViewUnparentedVideo(context, internalContext, stream, options); }), 'Call.startVideo')();
321
309
  }
322
310
  else {
323
- _logStreamEvent(EventNames.CREATE_STREAM_INVALID_PARAMS, { streamType });
311
+ _logStreamEvent(EventNames.CREATE_STREAM_INVALID_PARAMS, {
312
+ streamType
313
+ });
324
314
  return Promise.resolve(undefined);
325
315
  }
326
316
  }
@@ -339,7 +329,9 @@ export function disposeView(context, internalContext, callId, participantId, str
339
329
  context.withErrorTeedToState(() => disposeViewUnparentedVideo(context, internalContext, stream), 'Call.stopVideo')();
340
330
  }
341
331
  else {
342
- _logStreamEvent(EventNames.DISPOSE_STREAM_INVALID_PARAMS, { streamType });
332
+ _logStreamEvent(EventNames.DISPOSE_STREAM_INVALID_PARAMS, {
333
+ streamType
334
+ });
343
335
  return;
344
336
  }
345
337
  }
@@ -368,9 +360,7 @@ export function disposeAllViewsFromCall(context, internalContext, callId) {
368
360
  }
369
361
  }
370
362
  }
371
- /* @conditional-compile-remove(together-mode) */
372
363
  const callFeatureStreams = internalContext.getCallFeatureRenderInfosForCall(callId);
373
- /* @conditional-compile-remove(together-mode) */
374
364
  if (callFeatureStreams) {
375
365
  for (const featureStreams of callFeatureStreams.values()) {
376
366
  for (const streamAndRenderer of featureStreams.values()) {
@@ -1 +1 @@
1
- {"version":3,"file":"StreamUtils.js","sourceRoot":"","sources":["../../../../../calling-stateful-client/src/StreamUtils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n CreateViewOptions,\n LocalVideoStream,\n RemoteVideoStream,\n VideoStreamRenderer,\n VideoStreamRendererView\n} from '@azure/communication-calling';\nimport { CommunicationIdentifierKind } from '@azure/communication-common';\nimport { LocalVideoStreamState, RemoteVideoStreamState } from './CallClientState';\nimport { CallContext } from './CallContext';\nimport {\n convertSdkLocalStreamToDeclarativeLocalStream,\n convertSdkRemoteStreamToDeclarativeRemoteStream,\n convertFromSDKToDeclarativeVideoStreamRendererView\n} from './Converter';\nimport { InternalCallContext } from './InternalCallContext';\nimport { toFlatCommunicationIdentifier, _logEvent } from '@internal/acs-ui-common';\nimport { EventNames } from './Logger';\nimport { _logStreamEvent } from './StreamUtilsLogging';\n\n/**\n * Return result from {@link StatefulCallClient.createView}.\n *\n * @public\n */\nexport type CreateViewResult = {\n renderer: VideoStreamRenderer;\n view: VideoStreamRendererView;\n};\n\nasync function createViewVideo(\n context: CallContext,\n internalContext: InternalCallContext,\n callId: string,\n stream?: RemoteVideoStreamState | LocalVideoStreamState,\n participantId?: CommunicationIdentifierKind | string,\n options?: CreateViewOptions\n): Promise<CreateViewResult | undefined> {\n // we can only have 3 types of createView\n let streamEventType: 'createViewLocal' | 'createViewRemote' | 'createViewUnparented';\n\n // we will reuse these for local as well but we need to make sure the remote stream is passed in like before.\n\n if (participantId) {\n streamEventType = 'createViewRemote';\n } else if (callId) {\n streamEventType = 'createViewLocal';\n } else {\n // TODO update for when unparented view.\n throw new Error('unparented createView not implemented yet here');\n streamEventType = 'createViewUnparented';\n }\n\n const streamType = stream?.mediaStreamType;\n const localStreamKey = (stream as LocalVideoStream).mediaStreamType;\n const remoteStreamId = (stream as RemoteVideoStream).id;\n\n // we want to check to see if there is a participantId this will tell us whether its a local stream or a remote one.\n const participantKey =\n streamEventType === 'createViewRemote' && participantId\n ? typeof participantId === 'string'\n ? participantId\n : toFlatCommunicationIdentifier(participantId)\n : undefined;\n\n const streamLogInfo = {\n callId,\n participantKey,\n streamId: remoteStreamId ?? localStreamKey,\n streamType,\n streamEventType\n };\n\n // make different logging announcement based on whether or not we are starting a local or remote\n _logStreamEvent(EventNames.CREATING_VIEW, streamLogInfo);\n\n // if we have a participant Id and a stream get the remote info, else get the local render info from state.\n const renderInfo =\n streamEventType === 'createViewRemote' && participantKey\n ? internalContext.getRemoteRenderInfoForParticipant(callId, participantKey, remoteStreamId)\n : internalContext.getLocalRenderInfo(callId, localStreamKey);\n\n if (!renderInfo) {\n _logStreamEvent(EventNames.STREAM_NOT_FOUND, streamLogInfo);\n return;\n }\n\n if (renderInfo.status === 'Rendered') {\n _logStreamEvent(EventNames.STREAM_ALREADY_RENDERED, streamLogInfo);\n return;\n }\n\n if (renderInfo.status === 'Rendering') {\n // Do not log to console here as this is a very common situation due to UI rerenders while\n // the video rendering is in progress.\n _logStreamEvent(EventNames.STREAM_RENDERING, streamLogInfo);\n return;\n }\n\n // \"Stopping\" only happens if the stream was in \"rendering\" but `disposeView` was called.\n // Now that `createView` has been re-called, we can flip the state back to \"rendering\".\n if (renderInfo.status === 'Stopping') {\n if (streamEventType === 'createViewRemote' && participantKey) {\n _logStreamEvent(EventNames.STREAM_STOPPING, streamLogInfo);\n internalContext.setRemoteRenderInfo(\n callId,\n participantKey,\n remoteStreamId,\n renderInfo.stream as RemoteVideoStream,\n 'Rendering',\n renderInfo.renderer\n );\n } else if (streamEventType === 'createViewLocal') {\n _logStreamEvent(EventNames.STREAM_STOPPING, streamLogInfo);\n internalContext.setLocalRenderInfo(\n callId,\n localStreamKey,\n renderInfo.stream as LocalVideoStream,\n 'Rendering',\n renderInfo.renderer\n );\n }\n return;\n }\n\n const renderer = new VideoStreamRenderer(renderInfo.stream);\n\n streamEventType === 'createViewRemote' && participantKey\n ? internalContext.setRemoteRenderInfo(\n callId,\n participantKey,\n remoteStreamId,\n renderInfo.stream as RemoteVideoStream,\n 'Rendering',\n undefined\n )\n : internalContext.setLocalRenderInfo(\n callId,\n localStreamKey,\n renderInfo.stream as LocalVideoStream,\n 'Rendering',\n renderer\n );\n\n let view;\n try {\n view = await renderer.createView(options);\n } catch (e) {\n if (streamEventType === 'createViewRemote' && participantKey) {\n _logStreamEvent(EventNames.CREATE_STREAM_FAIL, streamLogInfo);\n internalContext.setRemoteRenderInfo(\n callId,\n participantKey,\n remoteStreamId,\n renderInfo.stream as RemoteVideoStream,\n 'NotRendered',\n undefined\n );\n } else if (streamEventType === 'createViewLocal') {\n _logStreamEvent(EventNames.CREATE_STREAM_FAIL, streamLogInfo, e);\n internalContext.setLocalRenderInfo(\n callId,\n localStreamKey,\n renderInfo.stream as LocalVideoStream,\n 'NotRendered',\n undefined\n );\n }\n throw e;\n }\n\n // Since render could take some time, we need to check if the stream is still valid and if we received a signal to\n // stop rendering.\n const refreshedRenderInfo =\n streamEventType === 'createViewRemote' && participantKey\n ? internalContext.getRemoteRenderInfoForParticipant(callId, participantKey, remoteStreamId)\n : internalContext.getLocalRenderInfo(callId, localStreamKey);\n\n if (!refreshedRenderInfo) {\n // RenderInfo was removed. This should not happen unless stream was removed from the call so dispose the renderer\n // and clean up the state.\n _logStreamEvent(EventNames.RENDER_INFO_NOT_FOUND, streamLogInfo);\n renderer.dispose();\n streamEventType === 'createViewRemote' && participantKey\n ? context.setRemoteVideoStreamRendererView(callId, participantKey, remoteStreamId, undefined)\n : context.setLocalVideoStreamRendererView(callId, localStreamKey, undefined);\n return;\n }\n\n if (refreshedRenderInfo.status === 'Stopping') {\n // Stop render was called on this stream after we had started rendering. We will dispose this view and do not\n // put the view into the state.\n streamEventType === 'createViewRemote';\n _logStreamEvent(EventNames.CREATED_STREAM_STOPPING, streamLogInfo);\n renderer.dispose();\n if (streamEventType === 'createViewRemote' && participantKey) {\n internalContext.setRemoteRenderInfo(\n callId,\n participantKey,\n remoteStreamId,\n refreshedRenderInfo.stream as RemoteVideoStream,\n 'NotRendered',\n undefined\n );\n context.setRemoteVideoStreamRendererView(callId, participantKey, remoteStreamId, undefined);\n } else if (streamEventType === 'createViewLocal') {\n internalContext.setLocalRenderInfo(\n callId,\n localStreamKey,\n refreshedRenderInfo.stream as LocalVideoStream,\n 'NotRendered',\n undefined\n );\n context.setLocalVideoStreamRendererView(callId, localStreamKey, undefined);\n }\n return;\n }\n\n // Else the stream still exists and status is not telling us to stop rendering. Complete the render process by\n // updating the state.\n if (streamEventType === 'createViewRemote' && participantKey) {\n internalContext.setRemoteRenderInfo(\n callId,\n participantKey,\n remoteStreamId,\n refreshedRenderInfo.stream as RemoteVideoStream,\n 'Rendered',\n renderer\n );\n context.setRemoteVideoStreamRendererView(\n callId,\n participantKey,\n remoteStreamId,\n convertFromSDKToDeclarativeVideoStreamRendererView(view)\n );\n _logStreamEvent(EventNames.VIEW_RENDER_SUCCEED, streamLogInfo);\n } else if (streamEventType === 'createViewLocal') {\n internalContext.setLocalRenderInfo(\n callId,\n localStreamKey,\n refreshedRenderInfo.stream as LocalVideoStream,\n 'Rendered',\n renderer\n );\n context.setLocalVideoStreamRendererView(\n callId,\n localStreamKey,\n convertFromSDKToDeclarativeVideoStreamRendererView(view)\n );\n _logStreamEvent(EventNames.VIEW_RENDER_SUCCEED, streamLogInfo);\n }\n\n return {\n renderer,\n view\n };\n}\n\nasync function createViewUnparentedVideo(\n context: CallContext,\n internalContext: InternalCallContext,\n stream: LocalVideoStreamState,\n options?: CreateViewOptions\n): Promise<CreateViewResult | undefined> {\n const renderInfo = internalContext.getUnparentedRenderInfo(stream);\n\n if (renderInfo && renderInfo.status === 'Rendered') {\n console.warn('Unparented LocalVideoStream is already rendered');\n return;\n }\n\n if (renderInfo && renderInfo.status === 'Rendering') {\n // Do not log to console here as this is a very common situation due to UI rerenders while\n // the video rendering is in progress.\n return;\n }\n\n if (renderInfo && renderInfo.status === 'Stopping') {\n console.warn('Unparented LocalVideoStream is in the middle of stopping');\n return;\n }\n\n const localVideoStream = new LocalVideoStream(stream.source);\n const renderer = new VideoStreamRenderer(localVideoStream);\n\n internalContext.setUnparentedRenderInfo(stream, localVideoStream, 'Rendering', undefined);\n\n let view: VideoStreamRendererView;\n try {\n view = await renderer.createView(options);\n } catch (e) {\n // Special case for unparented views. Since they are not tied to anything and created by us based on the calls to\n // this function we'll delete it to clean up the data since keeping it around doesn't help us and if developer wants\n // to create a new view they can check that the view is not rendered and call this function again.\n internalContext.deleteUnparentedRenderInfo(stream);\n throw e;\n }\n\n // Since render could take some time, we need to check if the stream is still valid and if we received a signal to\n // stop rendering.\n const refreshedRenderInfo = internalContext.getUnparentedRenderInfo(stream);\n if (!refreshedRenderInfo) {\n // Unparented stream's RenderInfo was deleted. Currently this shouldn't happen but if it does we'll just dispose the\n // renderer and clean up state. If developer wanted the stream they could call this function again and that should\n // generate new working state via this function.\n renderer.dispose();\n context.deleteDeviceManagerUnparentedView(stream);\n return;\n }\n\n if (refreshedRenderInfo.status === 'Stopping') {\n // Stop render was called on this stream after we had started rendering. We will dispose this view and do not\n // put the view into the state. Special case for unparented views, delete them from state when stopped to free up\n // the memory since we were the ones generating this and not tied to any Call state.\n internalContext.deleteUnparentedRenderInfo(stream);\n context.deleteDeviceManagerUnparentedView(stream);\n return;\n }\n // Else the stream still exists and status is not telling us to stop rendering. Complete the render process by\n // updating the state.\n internalContext.setUnparentedRenderInfo(stream, localVideoStream, 'Rendered', renderer);\n internalContext.subscribeToUnparentedViewVideoEffects(localVideoStream, context);\n context.setDeviceManagerUnparentedView(stream, convertFromSDKToDeclarativeVideoStreamRendererView(view));\n\n return {\n renderer,\n view\n };\n}\n\nfunction disposeViewVideo(\n context: CallContext,\n internalContext: InternalCallContext,\n callId: string,\n stream: RemoteVideoStreamState | LocalVideoStreamState,\n participantId?: CommunicationIdentifierKind | string\n): void {\n // we can only have 3 types of createView\n let streamEventType: 'disposeViewLocal' | 'disposeViewRemote' | 'disposeViewUnparented';\n\n // we will reuse these for local as well but we need to make sure the remote stream is passed in like before.\n\n if (participantId) {\n streamEventType = 'disposeViewRemote';\n } else if (callId) {\n streamEventType = 'disposeViewLocal';\n } else {\n // TODO update for when unparented view.\n streamEventType = 'disposeViewUnparented';\n }\n\n const streamType = stream.mediaStreamType;\n const localStreamKey = (stream as LocalVideoStream).mediaStreamType;\n const remoteStreamId = (stream as RemoteVideoStream).id;\n\n // we want to check to see if there is a participantId this will tell us whether its a local stream or a remote one.\n const participantKey =\n streamEventType === 'disposeViewRemote' && participantId\n ? typeof participantId === 'string'\n ? participantId\n : toFlatCommunicationIdentifier(participantId)\n : undefined;\n const streamLogInfo = { callId, participantKey, streamId: remoteStreamId ?? localStreamKey, streamType };\n\n _logStreamEvent(EventNames.START_DISPOSE_STREAM, streamLogInfo);\n\n if (streamEventType === 'disposeViewRemote' && participantKey) {\n context.setRemoteVideoStreamRendererView(callId, participantKey, remoteStreamId, undefined);\n }\n\n const renderInfo =\n streamEventType === 'disposeViewRemote' && participantKey\n ? internalContext.getRemoteRenderInfoForParticipant(callId, participantKey, remoteStreamId)\n : internalContext.getLocalRenderInfo(callId, localStreamKey);\n\n if (!renderInfo) {\n _logStreamEvent(EventNames.DISPOSE_INFO_NOT_FOUND, streamLogInfo);\n return;\n }\n\n // Nothing to dispose of or clean up -- we can safely exit early here.\n if (renderInfo.status === 'NotRendered') {\n _logStreamEvent(EventNames.STREAM_ALREADY_DISPOSED, streamLogInfo);\n return;\n }\n\n // Status is already marked as \"stopping\" so we can exit early here. This is because stopping only occurs\n // when the stream is being created in createView but hasn't been completed being created yet. The createView\n // method will see the \"stopping\" status and perform the cleanup\n if (renderInfo.status === 'Stopping') {\n _logStreamEvent(EventNames.STREAM_STOPPING, streamLogInfo);\n return;\n }\n\n // If the stream is in the middle of being rendered (i.e. has state \"Rendering\"), we need the status as\n // \"stopping\" without performing any cleanup. This will tell the `createView` method that it should stop\n // rendering and clean up the state once the view has finished being created.\n if (renderInfo.status === 'Rendering') {\n _logStreamEvent(EventNames.STREAM_STOPPING, streamLogInfo);\n streamEventType === 'disposeViewRemote' && participantKey\n ? internalContext.setRemoteRenderInfo(\n callId,\n participantKey,\n remoteStreamId,\n renderInfo.stream as RemoteVideoStream,\n 'Stopping',\n undefined\n )\n : internalContext.setLocalRenderInfo(\n callId,\n localStreamKey,\n renderInfo.stream as LocalVideoStream,\n 'Stopping',\n renderInfo.renderer\n );\n return;\n }\n\n if (renderInfo.renderer) {\n _logStreamEvent(EventNames.DISPOSING_RENDERER, streamLogInfo);\n renderInfo.renderer.dispose();\n // Else the state must be in the \"Rendered\" state, so we can dispose the renderer and clean up the state.\n if (streamEventType === 'disposeViewRemote' && participantKey) {\n internalContext.setRemoteRenderInfo(\n callId,\n participantKey,\n remoteStreamId,\n renderInfo.stream as RemoteVideoStream,\n 'NotRendered',\n undefined\n );\n } else if (streamEventType === 'disposeViewLocal') {\n internalContext.setLocalRenderInfo(\n callId,\n localStreamKey,\n renderInfo.stream as LocalVideoStream,\n 'NotRendered',\n undefined\n );\n context.setLocalVideoStreamRendererView(callId, localStreamKey, undefined);\n }\n } else {\n _logStreamEvent(EventNames.RENDERER_NOT_FOUND, streamLogInfo);\n }\n}\n\nfunction disposeViewUnparentedVideo(\n context: CallContext,\n internalContext: InternalCallContext,\n stream: LocalVideoStreamState\n): void {\n const streamType = stream.mediaStreamType;\n const streamLogInfo = { streamType, streamEventType: 'disposeViewUnparented' };\n\n _logStreamEvent(EventNames.START_DISPOSE_STREAM, streamLogInfo);\n\n context.deleteDeviceManagerUnparentedView(stream);\n\n const renderInfo = internalContext.getUnparentedRenderInfo(stream);\n if (!renderInfo) {\n _logStreamEvent(EventNames.DISPOSE_INFO_NOT_FOUND, streamLogInfo);\n return;\n }\n\n if (renderInfo.status === 'Rendering') {\n _logStreamEvent(EventNames.STREAM_STOPPING, streamLogInfo);\n internalContext.setUnparentedRenderInfo(stream, renderInfo.stream, 'Stopping', undefined);\n } else {\n internalContext.deleteUnparentedRenderInfo(stream);\n }\n\n if (renderInfo.renderer) {\n _logStreamEvent(EventNames.DISPOSING_RENDERER, streamLogInfo);\n renderInfo.renderer.dispose();\n } else {\n _logStreamEvent(EventNames.RENDERER_NOT_FOUND, streamLogInfo);\n }\n}\n\n/**\n * @private\n */\nexport function createView(\n context: CallContext,\n internalContext: InternalCallContext,\n callId: string | undefined,\n participantId: CommunicationIdentifierKind | string | undefined,\n stream: LocalVideoStreamState | RemoteVideoStreamState,\n options?: CreateViewOptions\n): Promise<CreateViewResult | undefined> {\n const streamType = stream.mediaStreamType;\n\n if (callId) {\n return createViewVideo(context, internalContext, callId, stream, participantId, options);\n } else if (!('id' in stream) && !callId) {\n // Render LocalVideoStream that is not part of a Call\n // Because it is not part of the call we don't tee errors to state naturally (e.g. via a Call Client function such as startVideo).\n // We do not have a startLocalPreviewVideo function, so as a workaround we ensure any errors are propagated here.\n return context.withAsyncErrorTeedToState(\n async () => await createViewUnparentedVideo(context, internalContext, stream, options),\n 'Call.startVideo'\n )();\n } else {\n _logStreamEvent(EventNames.CREATE_STREAM_INVALID_PARAMS, { streamType });\n return Promise.resolve(undefined);\n }\n}\n\n/**\n * @private\n */\nexport function disposeView(\n context: CallContext,\n internalContext: InternalCallContext,\n callId: string | undefined,\n participantId: CommunicationIdentifierKind | string | undefined,\n stream: LocalVideoStreamState | RemoteVideoStreamState\n): void {\n const streamType = stream.mediaStreamType;\n if (callId) {\n disposeViewVideo(context, internalContext, callId, stream, participantId);\n } else if (!('id' in stream) && !callId) {\n // Stop rendering LocalVideoStream that is not part of a Call\n // Because it is not part of the call we don't tee errors to state naturally (e.g. via a Call Client function such as startVideo).\n // We do not have a stopLocalPreviewVideo function, so as a workaround we ensure any errors are propagated here.\n context.withErrorTeedToState(\n () => disposeViewUnparentedVideo(context, internalContext, stream),\n 'Call.stopVideo'\n )();\n } else {\n _logStreamEvent(EventNames.DISPOSE_STREAM_INVALID_PARAMS, { streamType });\n return;\n }\n}\n\n/**\n * @private\n * Only stops videos that are tied to a Call.\n */\nexport function disposeAllViewsFromCall(\n context: CallContext,\n internalContext: InternalCallContext,\n callId: string\n): void {\n const remoteStreams = internalContext.getRemoteRenderInfoForCall(callId);\n if (remoteStreams) {\n for (const [participantKey, participantStreams] of remoteStreams.entries()) {\n for (const [_, remoteStreamAndRenderer] of participantStreams.entries()) {\n // We don't want to accept SDK stream as parameter but we also don't cache the declarative stream so we have to\n // convert the SDK stream to declarative stream which is not pretty so this could use some further refactoring.\n disposeView(\n context,\n internalContext,\n callId,\n participantKey,\n convertSdkRemoteStreamToDeclarativeRemoteStream(remoteStreamAndRenderer.stream)\n );\n }\n }\n }\n\n const localStreams = internalContext.getLocalRenderInfosForCall(callId);\n if (localStreams) {\n for (const localStreamAndRenderer of localStreams.values()) {\n if (localStreamAndRenderer && localStreamAndRenderer.renderer) {\n // We don't want to accept SDK stream as parameter but we also don't cache the declarative stream so we have to\n // convert the SDK stream to declarative stream which is not pretty so this could use some further refactoring.\n disposeView(\n context,\n internalContext,\n callId,\n undefined,\n convertSdkLocalStreamToDeclarativeLocalStream(localStreamAndRenderer.stream)\n );\n }\n }\n }\n /* @conditional-compile-remove(together-mode) */\n const callFeatureStreams = internalContext.getCallFeatureRenderInfosForCall(callId);\n /* @conditional-compile-remove(together-mode) */\n if (callFeatureStreams) {\n for (const featureStreams of callFeatureStreams.values()) {\n for (const streamAndRenderer of featureStreams.values()) {\n disposeView(\n context,\n internalContext,\n callId,\n undefined,\n convertSdkRemoteStreamToDeclarativeRemoteStream(streamAndRenderer.stream as RemoteVideoStream)\n );\n }\n }\n }\n}\n\n/**\n * @private\n */\nexport function disposeAllViews(context: CallContext, internalContext: InternalCallContext): void {\n const callIds = internalContext.getCallIds();\n for (const callId of callIds) {\n disposeAllViewsFromCall(context, internalContext, callId);\n }\n}\n"]}
1
+ {"version":3,"file":"StreamUtils.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/StreamUtils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { CreateViewOptions, LocalVideoStream, RemoteVideoStream, VideoStreamRenderer, VideoStreamRendererView } from '@azure/communication-calling';\nimport { CommunicationIdentifierKind } from '@azure/communication-common';\nimport { LocalVideoStreamState, RemoteVideoStreamState } from './CallClientState';\nimport { CallContext } from './CallContext';\nimport { convertSdkLocalStreamToDeclarativeLocalStream, convertSdkRemoteStreamToDeclarativeRemoteStream, convertFromSDKToDeclarativeVideoStreamRendererView } from './Converter';\nimport { InternalCallContext } from './InternalCallContext';\nimport { toFlatCommunicationIdentifier, _logEvent } from '@internal/acs-ui-common';\nimport { EventNames } from './Logger';\nimport { _logStreamEvent } from './StreamUtilsLogging';\n\n/**\n * Return result from {@link StatefulCallClient.createView}.\n *\n * @public\n */\nexport type CreateViewResult = {\n renderer: VideoStreamRenderer;\n view: VideoStreamRendererView;\n};\nasync function createViewVideo(context: CallContext, internalContext: InternalCallContext, callId: string, stream?: RemoteVideoStreamState | LocalVideoStreamState, participantId?: CommunicationIdentifierKind | string, options?: CreateViewOptions): Promise<CreateViewResult | undefined> {\n // we can only have 3 types of createView\n let streamEventType: 'createViewLocal' | 'createViewRemote' | 'createViewUnparented';\n\n // we will reuse these for local as well but we need to make sure the remote stream is passed in like before.\n\n if (participantId) {\n streamEventType = 'createViewRemote';\n } else if (callId) {\n streamEventType = 'createViewLocal';\n } else {\n // TODO update for when unparented view.\n throw new Error('unparented createView not implemented yet here');\n streamEventType = 'createViewUnparented';\n }\n const streamType = stream?.mediaStreamType;\n const localStreamKey = (stream as LocalVideoStream).mediaStreamType;\n const remoteStreamId = (stream as RemoteVideoStream).id;\n\n // we want to check to see if there is a participantId this will tell us whether its a local stream or a remote one.\n const participantKey = streamEventType === 'createViewRemote' && participantId ? typeof participantId === 'string' ? participantId : toFlatCommunicationIdentifier(participantId) : undefined;\n const streamLogInfo = {\n callId,\n participantKey,\n streamId: remoteStreamId ?? localStreamKey,\n streamType,\n streamEventType\n };\n\n // make different logging announcement based on whether or not we are starting a local or remote\n _logStreamEvent(EventNames.CREATING_VIEW, streamLogInfo);\n\n // if we have a participant Id and a stream get the remote info, else get the local render info from state.\n const renderInfo = streamEventType === 'createViewRemote' && participantKey ? internalContext.getRemoteRenderInfoForParticipant(callId, participantKey, remoteStreamId) : internalContext.getLocalRenderInfo(callId, localStreamKey);\n if (!renderInfo) {\n _logStreamEvent(EventNames.STREAM_NOT_FOUND, streamLogInfo);\n return;\n }\n if (renderInfo.status === 'Rendered') {\n _logStreamEvent(EventNames.STREAM_ALREADY_RENDERED, streamLogInfo);\n return;\n }\n if (renderInfo.status === 'Rendering') {\n // Do not log to console here as this is a very common situation due to UI rerenders while\n // the video rendering is in progress.\n _logStreamEvent(EventNames.STREAM_RENDERING, streamLogInfo);\n return;\n }\n\n // \"Stopping\" only happens if the stream was in \"rendering\" but `disposeView` was called.\n // Now that `createView` has been re-called, we can flip the state back to \"rendering\".\n if (renderInfo.status === 'Stopping') {\n if (streamEventType === 'createViewRemote' && participantKey) {\n _logStreamEvent(EventNames.STREAM_STOPPING, streamLogInfo);\n internalContext.setRemoteRenderInfo(callId, participantKey, remoteStreamId, renderInfo.stream as RemoteVideoStream, 'Rendering', renderInfo.renderer);\n } else if (streamEventType === 'createViewLocal') {\n _logStreamEvent(EventNames.STREAM_STOPPING, streamLogInfo);\n internalContext.setLocalRenderInfo(callId, localStreamKey, renderInfo.stream as LocalVideoStream, 'Rendering', renderInfo.renderer);\n }\n return;\n }\n const renderer = new VideoStreamRenderer(renderInfo.stream);\n streamEventType === 'createViewRemote' && participantKey ? internalContext.setRemoteRenderInfo(callId, participantKey, remoteStreamId, renderInfo.stream as RemoteVideoStream, 'Rendering', undefined) : internalContext.setLocalRenderInfo(callId, localStreamKey, renderInfo.stream as LocalVideoStream, 'Rendering', renderer);\n let view;\n try {\n view = await renderer.createView(options);\n } catch (e) {\n if (streamEventType === 'createViewRemote' && participantKey) {\n _logStreamEvent(EventNames.CREATE_STREAM_FAIL, streamLogInfo);\n internalContext.setRemoteRenderInfo(callId, participantKey, remoteStreamId, renderInfo.stream as RemoteVideoStream, 'NotRendered', undefined);\n } else if (streamEventType === 'createViewLocal') {\n _logStreamEvent(EventNames.CREATE_STREAM_FAIL, streamLogInfo, e);\n internalContext.setLocalRenderInfo(callId, localStreamKey, renderInfo.stream as LocalVideoStream, 'NotRendered', undefined);\n }\n throw e;\n }\n\n // Since render could take some time, we need to check if the stream is still valid and if we received a signal to\n // stop rendering.\n const refreshedRenderInfo = streamEventType === 'createViewRemote' && participantKey ? internalContext.getRemoteRenderInfoForParticipant(callId, participantKey, remoteStreamId) : internalContext.getLocalRenderInfo(callId, localStreamKey);\n if (!refreshedRenderInfo) {\n // RenderInfo was removed. This should not happen unless stream was removed from the call so dispose the renderer\n // and clean up the state.\n _logStreamEvent(EventNames.RENDER_INFO_NOT_FOUND, streamLogInfo);\n renderer.dispose();\n streamEventType === 'createViewRemote' && participantKey ? context.setRemoteVideoStreamRendererView(callId, participantKey, remoteStreamId, undefined) : context.setLocalVideoStreamRendererView(callId, localStreamKey, undefined);\n return;\n }\n if (refreshedRenderInfo.status === 'Stopping') {\n // Stop render was called on this stream after we had started rendering. We will dispose this view and do not\n // put the view into the state.\n streamEventType === 'createViewRemote';\n _logStreamEvent(EventNames.CREATED_STREAM_STOPPING, streamLogInfo);\n renderer.dispose();\n if (streamEventType === 'createViewRemote' && participantKey) {\n internalContext.setRemoteRenderInfo(callId, participantKey, remoteStreamId, refreshedRenderInfo.stream as RemoteVideoStream, 'NotRendered', undefined);\n context.setRemoteVideoStreamRendererView(callId, participantKey, remoteStreamId, undefined);\n } else if (streamEventType === 'createViewLocal') {\n internalContext.setLocalRenderInfo(callId, localStreamKey, refreshedRenderInfo.stream as LocalVideoStream, 'NotRendered', undefined);\n context.setLocalVideoStreamRendererView(callId, localStreamKey, undefined);\n }\n return;\n }\n\n // Else the stream still exists and status is not telling us to stop rendering. Complete the render process by\n // updating the state.\n if (streamEventType === 'createViewRemote' && participantKey) {\n internalContext.setRemoteRenderInfo(callId, participantKey, remoteStreamId, refreshedRenderInfo.stream as RemoteVideoStream, 'Rendered', renderer);\n context.setRemoteVideoStreamRendererView(callId, participantKey, remoteStreamId, convertFromSDKToDeclarativeVideoStreamRendererView(view));\n _logStreamEvent(EventNames.VIEW_RENDER_SUCCEED, streamLogInfo);\n } else if (streamEventType === 'createViewLocal') {\n internalContext.setLocalRenderInfo(callId, localStreamKey, refreshedRenderInfo.stream as LocalVideoStream, 'Rendered', renderer);\n context.setLocalVideoStreamRendererView(callId, localStreamKey, convertFromSDKToDeclarativeVideoStreamRendererView(view));\n _logStreamEvent(EventNames.VIEW_RENDER_SUCCEED, streamLogInfo);\n }\n return {\n renderer,\n view\n };\n}\nasync function createViewUnparentedVideo(context: CallContext, internalContext: InternalCallContext, stream: LocalVideoStreamState, options?: CreateViewOptions): Promise<CreateViewResult | undefined> {\n const renderInfo = internalContext.getUnparentedRenderInfo(stream);\n if (renderInfo && renderInfo.status === 'Rendered') {\n console.warn('Unparented LocalVideoStream is already rendered');\n return;\n }\n if (renderInfo && renderInfo.status === 'Rendering') {\n // Do not log to console here as this is a very common situation due to UI rerenders while\n // the video rendering is in progress.\n return;\n }\n if (renderInfo && renderInfo.status === 'Stopping') {\n console.warn('Unparented LocalVideoStream is in the middle of stopping');\n return;\n }\n const localVideoStream = new LocalVideoStream(stream.source);\n const renderer = new VideoStreamRenderer(localVideoStream);\n internalContext.setUnparentedRenderInfo(stream, localVideoStream, 'Rendering', undefined);\n let view: VideoStreamRendererView;\n try {\n view = await renderer.createView(options);\n } catch (e) {\n // Special case for unparented views. Since they are not tied to anything and created by us based on the calls to\n // this function we'll delete it to clean up the data since keeping it around doesn't help us and if developer wants\n // to create a new view they can check that the view is not rendered and call this function again.\n internalContext.deleteUnparentedRenderInfo(stream);\n throw e;\n }\n\n // Since render could take some time, we need to check if the stream is still valid and if we received a signal to\n // stop rendering.\n const refreshedRenderInfo = internalContext.getUnparentedRenderInfo(stream);\n if (!refreshedRenderInfo) {\n // Unparented stream's RenderInfo was deleted. Currently this shouldn't happen but if it does we'll just dispose the\n // renderer and clean up state. If developer wanted the stream they could call this function again and that should\n // generate new working state via this function.\n renderer.dispose();\n context.deleteDeviceManagerUnparentedView(stream);\n return;\n }\n if (refreshedRenderInfo.status === 'Stopping') {\n // Stop render was called on this stream after we had started rendering. We will dispose this view and do not\n // put the view into the state. Special case for unparented views, delete them from state when stopped to free up\n // the memory since we were the ones generating this and not tied to any Call state.\n internalContext.deleteUnparentedRenderInfo(stream);\n context.deleteDeviceManagerUnparentedView(stream);\n return;\n }\n // Else the stream still exists and status is not telling us to stop rendering. Complete the render process by\n // updating the state.\n internalContext.setUnparentedRenderInfo(stream, localVideoStream, 'Rendered', renderer);\n internalContext.subscribeToUnparentedViewVideoEffects(localVideoStream, context);\n context.setDeviceManagerUnparentedView(stream, convertFromSDKToDeclarativeVideoStreamRendererView(view));\n return {\n renderer,\n view\n };\n}\nfunction disposeViewVideo(context: CallContext, internalContext: InternalCallContext, callId: string, stream: RemoteVideoStreamState | LocalVideoStreamState, participantId?: CommunicationIdentifierKind | string): void {\n // we can only have 3 types of createView\n let streamEventType: 'disposeViewLocal' | 'disposeViewRemote' | 'disposeViewUnparented';\n\n // we will reuse these for local as well but we need to make sure the remote stream is passed in like before.\n\n if (participantId) {\n streamEventType = 'disposeViewRemote';\n } else if (callId) {\n streamEventType = 'disposeViewLocal';\n } else {\n // TODO update for when unparented view.\n streamEventType = 'disposeViewUnparented';\n }\n const streamType = stream.mediaStreamType;\n const localStreamKey = (stream as LocalVideoStream).mediaStreamType;\n const remoteStreamId = (stream as RemoteVideoStream).id;\n\n // we want to check to see if there is a participantId this will tell us whether its a local stream or a remote one.\n const participantKey = streamEventType === 'disposeViewRemote' && participantId ? typeof participantId === 'string' ? participantId : toFlatCommunicationIdentifier(participantId) : undefined;\n const streamLogInfo = {\n callId,\n participantKey,\n streamId: remoteStreamId ?? localStreamKey,\n streamType\n };\n _logStreamEvent(EventNames.START_DISPOSE_STREAM, streamLogInfo);\n if (streamEventType === 'disposeViewRemote' && participantKey) {\n context.setRemoteVideoStreamRendererView(callId, participantKey, remoteStreamId, undefined);\n }\n const renderInfo = streamEventType === 'disposeViewRemote' && participantKey ? internalContext.getRemoteRenderInfoForParticipant(callId, participantKey, remoteStreamId) : internalContext.getLocalRenderInfo(callId, localStreamKey);\n if (!renderInfo) {\n _logStreamEvent(EventNames.DISPOSE_INFO_NOT_FOUND, streamLogInfo);\n return;\n }\n\n // Nothing to dispose of or clean up -- we can safely exit early here.\n if (renderInfo.status === 'NotRendered') {\n _logStreamEvent(EventNames.STREAM_ALREADY_DISPOSED, streamLogInfo);\n return;\n }\n\n // Status is already marked as \"stopping\" so we can exit early here. This is because stopping only occurs\n // when the stream is being created in createView but hasn't been completed being created yet. The createView\n // method will see the \"stopping\" status and perform the cleanup\n if (renderInfo.status === 'Stopping') {\n _logStreamEvent(EventNames.STREAM_STOPPING, streamLogInfo);\n return;\n }\n\n // If the stream is in the middle of being rendered (i.e. has state \"Rendering\"), we need the status as\n // \"stopping\" without performing any cleanup. This will tell the `createView` method that it should stop\n // rendering and clean up the state once the view has finished being created.\n if (renderInfo.status === 'Rendering') {\n _logStreamEvent(EventNames.STREAM_STOPPING, streamLogInfo);\n streamEventType === 'disposeViewRemote' && participantKey ? internalContext.setRemoteRenderInfo(callId, participantKey, remoteStreamId, renderInfo.stream as RemoteVideoStream, 'Stopping', undefined) : internalContext.setLocalRenderInfo(callId, localStreamKey, renderInfo.stream as LocalVideoStream, 'Stopping', renderInfo.renderer);\n return;\n }\n if (renderInfo.renderer) {\n _logStreamEvent(EventNames.DISPOSING_RENDERER, streamLogInfo);\n renderInfo.renderer.dispose();\n // Else the state must be in the \"Rendered\" state, so we can dispose the renderer and clean up the state.\n if (streamEventType === 'disposeViewRemote' && participantKey) {\n internalContext.setRemoteRenderInfo(callId, participantKey, remoteStreamId, renderInfo.stream as RemoteVideoStream, 'NotRendered', undefined);\n } else if (streamEventType === 'disposeViewLocal') {\n internalContext.setLocalRenderInfo(callId, localStreamKey, renderInfo.stream as LocalVideoStream, 'NotRendered', undefined);\n context.setLocalVideoStreamRendererView(callId, localStreamKey, undefined);\n }\n } else {\n _logStreamEvent(EventNames.RENDERER_NOT_FOUND, streamLogInfo);\n }\n}\nfunction disposeViewUnparentedVideo(context: CallContext, internalContext: InternalCallContext, stream: LocalVideoStreamState): void {\n const streamType = stream.mediaStreamType;\n const streamLogInfo = {\n streamType,\n streamEventType: 'disposeViewUnparented'\n };\n _logStreamEvent(EventNames.START_DISPOSE_STREAM, streamLogInfo);\n context.deleteDeviceManagerUnparentedView(stream);\n const renderInfo = internalContext.getUnparentedRenderInfo(stream);\n if (!renderInfo) {\n _logStreamEvent(EventNames.DISPOSE_INFO_NOT_FOUND, streamLogInfo);\n return;\n }\n if (renderInfo.status === 'Rendering') {\n _logStreamEvent(EventNames.STREAM_STOPPING, streamLogInfo);\n internalContext.setUnparentedRenderInfo(stream, renderInfo.stream, 'Stopping', undefined);\n } else {\n internalContext.deleteUnparentedRenderInfo(stream);\n }\n if (renderInfo.renderer) {\n _logStreamEvent(EventNames.DISPOSING_RENDERER, streamLogInfo);\n renderInfo.renderer.dispose();\n } else {\n _logStreamEvent(EventNames.RENDERER_NOT_FOUND, streamLogInfo);\n }\n}\n\n/**\n * @private\n */\nexport function createView(context: CallContext, internalContext: InternalCallContext, callId: string | undefined, participantId: CommunicationIdentifierKind | string | undefined, stream: LocalVideoStreamState | RemoteVideoStreamState, options?: CreateViewOptions): Promise<CreateViewResult | undefined> {\n const streamType = stream.mediaStreamType;\n if (callId) {\n return createViewVideo(context, internalContext, callId, stream, participantId, options);\n } else if (!('id' in stream) && !callId) {\n // Render LocalVideoStream that is not part of a Call\n // Because it is not part of the call we don't tee errors to state naturally (e.g. via a Call Client function such as startVideo).\n // We do not have a startLocalPreviewVideo function, so as a workaround we ensure any errors are propagated here.\n return context.withAsyncErrorTeedToState(async () => await createViewUnparentedVideo(context, internalContext, stream, options), 'Call.startVideo')();\n } else {\n _logStreamEvent(EventNames.CREATE_STREAM_INVALID_PARAMS, {\n streamType\n });\n return Promise.resolve(undefined);\n }\n}\n\n/**\n * @private\n */\nexport function disposeView(context: CallContext, internalContext: InternalCallContext, callId: string | undefined, participantId: CommunicationIdentifierKind | string | undefined, stream: LocalVideoStreamState | RemoteVideoStreamState): void {\n const streamType = stream.mediaStreamType;\n if (callId) {\n disposeViewVideo(context, internalContext, callId, stream, participantId);\n } else if (!('id' in stream) && !callId) {\n // Stop rendering LocalVideoStream that is not part of a Call\n // Because it is not part of the call we don't tee errors to state naturally (e.g. via a Call Client function such as startVideo).\n // We do not have a stopLocalPreviewVideo function, so as a workaround we ensure any errors are propagated here.\n context.withErrorTeedToState(() => disposeViewUnparentedVideo(context, internalContext, stream), 'Call.stopVideo')();\n } else {\n _logStreamEvent(EventNames.DISPOSE_STREAM_INVALID_PARAMS, {\n streamType\n });\n return;\n }\n}\n\n/**\n * @private\n * Only stops videos that are tied to a Call.\n */\nexport function disposeAllViewsFromCall(context: CallContext, internalContext: InternalCallContext, callId: string): void {\n const remoteStreams = internalContext.getRemoteRenderInfoForCall(callId);\n if (remoteStreams) {\n for (const [participantKey, participantStreams] of remoteStreams.entries()) {\n for (const [_, remoteStreamAndRenderer] of participantStreams.entries()) {\n // We don't want to accept SDK stream as parameter but we also don't cache the declarative stream so we have to\n // convert the SDK stream to declarative stream which is not pretty so this could use some further refactoring.\n disposeView(context, internalContext, callId, participantKey, convertSdkRemoteStreamToDeclarativeRemoteStream(remoteStreamAndRenderer.stream));\n }\n }\n }\n const localStreams = internalContext.getLocalRenderInfosForCall(callId);\n if (localStreams) {\n for (const localStreamAndRenderer of localStreams.values()) {\n if (localStreamAndRenderer && localStreamAndRenderer.renderer) {\n // We don't want to accept SDK stream as parameter but we also don't cache the declarative stream so we have to\n // convert the SDK stream to declarative stream which is not pretty so this could use some further refactoring.\n disposeView(context, internalContext, callId, undefined, convertSdkLocalStreamToDeclarativeLocalStream(localStreamAndRenderer.stream));\n }\n }\n }\n const callFeatureStreams = internalContext.getCallFeatureRenderInfosForCall(callId);\n if (callFeatureStreams) {\n for (const featureStreams of callFeatureStreams.values()) {\n for (const streamAndRenderer of featureStreams.values()) {\n disposeView(context, internalContext, callId, undefined, convertSdkRemoteStreamToDeclarativeRemoteStream(streamAndRenderer.stream as RemoteVideoStream));\n }\n }\n }\n}\n\n/**\n * @private\n */\nexport function disposeAllViews(context: CallContext, internalContext: InternalCallContext): void {\n const callIds = internalContext.getCallIds();\n for (const callId of callIds) {\n disposeAllViewsFromCall(context, internalContext, callId);\n }\n}"]}
@@ -16,7 +16,9 @@ function _logDisposeStreamEvent(eventName, streamLogInfo) {
16
16
  name: EventNames.DISPOSE_STREAM_INVALID_PARAMS,
17
17
  level: 'warning',
18
18
  message: 'Dispose View invalid combination of parameters.',
19
- data: { streamType: streamLogInfo.streamType }
19
+ data: {
20
+ streamType: streamLogInfo.streamType
21
+ }
20
22
  });
21
23
  return;
22
24
  case EventNames.START_DISPOSE_STREAM:
@@ -86,7 +88,9 @@ function _logCreateStreamEvent(eventName, streamLogInfo, error) {
86
88
  name: EventNames.CREATE_STREAM_INVALID_PARAMS,
87
89
  level: 'warning',
88
90
  message: 'Create View invalid combination of parameters.',
89
- data: { streamType: streamLogInfo.streamType }
91
+ data: {
92
+ streamType: streamLogInfo.streamType
93
+ }
90
94
  });
91
95
  return;
92
96
  case EventNames.START_STREAM_RENDERING:
@@ -102,7 +106,9 @@ function _logCreateStreamEvent(eventName, streamLogInfo, error) {
102
106
  name: EventNames.STREAM_NOT_FOUND,
103
107
  level: 'error',
104
108
  message: 'Stream not found in state.',
105
- data: { callId: streamLogInfo.callId }
109
+ data: {
110
+ callId: streamLogInfo.callId
111
+ }
106
112
  });
107
113
  return;
108
114
  case EventNames.STREAM_ALREADY_RENDERED:
@@ -185,13 +191,10 @@ function _logCreateStreamEvent(eventName, streamLogInfo, error) {
185
191
  * @param error if any errors present will be added to message in logging
186
192
  */
187
193
  export function _logStreamEvent(eventName, streamLogInfo, error) {
188
- if (streamLogInfo.streamEventType === 'disposeViewLocal' ||
189
- streamLogInfo.streamEventType === 'disposeViewRemote' ||
190
- streamLogInfo.streamEventType === 'disposeViewUnparented') {
194
+ if (streamLogInfo.streamEventType === 'disposeViewLocal' || streamLogInfo.streamEventType === 'disposeViewRemote' || streamLogInfo.streamEventType === 'disposeViewUnparented') {
191
195
  _logDisposeStreamEvent(eventName, streamLogInfo);
192
196
  }
193
- else if (streamLogInfo.streamEventType === 'createViewLocal' ||
194
- streamLogInfo.streamEventType === 'createViewRemote') {
197
+ else if (streamLogInfo.streamEventType === 'createViewLocal' || streamLogInfo.streamEventType === 'createViewRemote') {
195
198
  _logCreateStreamEvent(eventName, streamLogInfo, error);
196
199
  }
197
200
  }
@@ -1 +1 @@
1
- {"version":3,"file":"StreamUtilsLogging.js","sourceRoot":"","sources":["../../../../../calling-stateful-client/src/StreamUtilsLogging.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { MediaStreamType } from '@azure/communication-calling';\nimport { _logEvent } from '@internal/acs-ui-common';\nimport { callingStatefulLogger, EventNames } from './Logger';\n\n/**\n * helper function to manage logging for stream disposals\n *\n * @param eventName Name of event that occured when managing streams\n * @param streamLogInfo Data about the stream in the event\n * @returns\n */\nfunction _logDisposeStreamEvent(\n eventName: EventNames,\n streamLogInfo: {\n callId?: string;\n participantKey?: any;\n streamId?: number | string;\n streamType?: MediaStreamType;\n streamEventType?: string;\n }\n): void {\n switch (eventName) {\n case EventNames.DISPOSE_STREAM_INVALID_PARAMS:\n _logEvent(callingStatefulLogger, {\n name: EventNames.DISPOSE_STREAM_INVALID_PARAMS,\n level: 'warning',\n message: 'Dispose View invalid combination of parameters.',\n data: { streamType: streamLogInfo.streamType }\n });\n return;\n case EventNames.START_DISPOSE_STREAM:\n _logEvent(callingStatefulLogger, {\n name: EventNames.START_DISPOSE_STREAM,\n level: 'info',\n message: 'Start disposing stream.',\n data: streamLogInfo\n });\n return;\n case EventNames.DISPOSE_INFO_NOT_FOUND:\n _logEvent(callingStatefulLogger, {\n name: EventNames.DISPOSE_INFO_NOT_FOUND,\n level: 'error',\n message: 'Cannot find render info when disposing stream.',\n data: streamLogInfo\n });\n return;\n case EventNames.STREAM_STOPPING:\n _logEvent(callingStatefulLogger, {\n name: EventNames.STREAM_STOPPING,\n level: 'info',\n message: 'Stream is currently marked as stopping, will continue if is local preview',\n data: streamLogInfo\n });\n return;\n case EventNames.DISPOSING_RENDERER:\n _logEvent(callingStatefulLogger, {\n name: EventNames.DISPOSING_RENDERER,\n level: 'info',\n message: 'Disposing view renderer.',\n data: streamLogInfo\n });\n return;\n case EventNames.RENDERER_NOT_FOUND:\n _logEvent(callingStatefulLogger, {\n name: EventNames.RENDERER_NOT_FOUND,\n level: 'error',\n message: 'Cannot find renderer when disposing stream.',\n data: streamLogInfo\n });\n return;\n case EventNames.STREAM_ALREADY_DISPOSED:\n _logEvent(callingStatefulLogger, {\n name: EventNames.STREAM_ALREADY_DISPOSED,\n level: 'info',\n message: 'Stream is already disposed.',\n data: streamLogInfo\n });\n return;\n default:\n return;\n }\n}\n\n/**\n * helper function to manage logging for local stream creations\n *\n * @param eventName Name of the event to occured when creating a local stream\n * @param streamLogInfo Data about the stream in the event\n * @param error that is thrown by caller\n * @returns\n */\nfunction _logCreateStreamEvent(\n eventName: string,\n streamLogInfo: {\n callId?: string;\n participantKey?: any;\n streamId?: number | string;\n streamType?: MediaStreamType;\n streamEventType?: string;\n },\n error?: unknown\n): void {\n switch (eventName) {\n case EventNames.CREATE_STREAM_INVALID_PARAMS:\n _logEvent(callingStatefulLogger, {\n name: EventNames.CREATE_STREAM_INVALID_PARAMS,\n level: 'warning',\n message: 'Create View invalid combination of parameters.',\n data: { streamType: streamLogInfo.streamType }\n });\n return;\n case EventNames.START_STREAM_RENDERING:\n _logEvent(callingStatefulLogger, {\n name: EventNames.START_STREAM_RENDERING,\n level: 'info',\n message: 'Start creating view for local video.',\n data: streamLogInfo\n });\n return;\n case EventNames.STREAM_NOT_FOUND:\n _logEvent(callingStatefulLogger, {\n name: EventNames.STREAM_NOT_FOUND,\n level: 'error',\n message: 'Stream not found in state.',\n data: { callId: streamLogInfo.callId }\n });\n return;\n case EventNames.STREAM_ALREADY_RENDERED:\n _logEvent(callingStatefulLogger, {\n name: EventNames.STREAM_ALREADY_RENDERED,\n level: 'warning',\n message: 'Stream is already rendered.',\n data: streamLogInfo\n });\n return;\n case EventNames.STREAM_RENDERING:\n _logEvent(callingStatefulLogger, {\n name: EventNames.STREAM_RENDERING,\n level: 'warning',\n message: 'Stream is rendering.',\n data: streamLogInfo\n });\n return;\n case EventNames.STREAM_STOPPING:\n _logEvent(callingStatefulLogger, {\n name: EventNames.STREAM_STOPPING,\n level: 'warning',\n message: 'Stream was marked as stopping by dispose view. Resetting state to \"Rendering\".',\n data: streamLogInfo\n });\n return;\n case EventNames.CREATE_STREAM_FAIL:\n _logEvent(callingStatefulLogger, {\n name: EventNames.CREATE_STREAM_FAIL,\n level: 'error',\n message: 'Failed to create view.',\n data: {\n error: error,\n streamType: streamLogInfo.streamType,\n callId: streamLogInfo.callId\n }\n });\n return;\n case EventNames.RENDER_INFO_NOT_FOUND:\n _logEvent(callingStatefulLogger, {\n name: EventNames.RENDER_INFO_NOT_FOUND,\n level: 'error',\n message: 'Cannot find render info after create the view. ',\n data: streamLogInfo\n });\n return;\n case EventNames.CREATED_STREAM_STOPPING:\n _logEvent(callingStatefulLogger, {\n name: EventNames.CREATED_STREAM_STOPPING,\n level: 'warning',\n message: 'Render info status is stopping, dispose renderer.',\n data: streamLogInfo\n });\n return;\n case EventNames.VIEW_RENDER_SUCCEED:\n _logEvent(callingStatefulLogger, {\n name: EventNames.VIEW_RENDER_SUCCEED,\n level: 'info',\n message: `Successfully render the view.`,\n data: streamLogInfo\n });\n return;\n case EventNames.CREATING_VIEW:\n _logEvent(callingStatefulLogger, {\n name: EventNames.CREATING_VIEW,\n level: 'info',\n message: 'Start creating view for remote video.',\n data: streamLogInfo\n });\n return;\n default:\n return;\n }\n}\n\n/**\n * helper function to fire streamUtils logging events\n *\n * @param eventName Name of event from streamUtils\n * @param streamLogInfo informaiton about the event and who called it\n * @param error if any errors present will be added to message in logging\n */\nexport function _logStreamEvent(\n eventName: EventNames,\n streamLogInfo: {\n callId?: string;\n participantKey?: any;\n streamId?: number | string;\n streamType?: MediaStreamType;\n streamEventType?: string;\n },\n error?: unknown\n): void {\n if (\n streamLogInfo.streamEventType === 'disposeViewLocal' ||\n streamLogInfo.streamEventType === 'disposeViewRemote' ||\n streamLogInfo.streamEventType === 'disposeViewUnparented'\n ) {\n _logDisposeStreamEvent(eventName, streamLogInfo);\n } else if (\n streamLogInfo.streamEventType === 'createViewLocal' ||\n streamLogInfo.streamEventType === 'createViewRemote'\n ) {\n _logCreateStreamEvent(eventName, streamLogInfo, error);\n }\n}\n"]}
1
+ {"version":3,"file":"StreamUtilsLogging.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/StreamUtilsLogging.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { MediaStreamType } from '@azure/communication-calling';\nimport { _logEvent } from '@internal/acs-ui-common';\nimport { callingStatefulLogger, EventNames } from './Logger';\n\n/**\n * helper function to manage logging for stream disposals\n *\n * @param eventName Name of event that occured when managing streams\n * @param streamLogInfo Data about the stream in the event\n * @returns\n */\nfunction _logDisposeStreamEvent(eventName: EventNames, streamLogInfo: {\n callId?: string;\n participantKey?: any;\n streamId?: number | string;\n streamType?: MediaStreamType;\n streamEventType?: string;\n}): void {\n switch (eventName) {\n case EventNames.DISPOSE_STREAM_INVALID_PARAMS:\n _logEvent(callingStatefulLogger, {\n name: EventNames.DISPOSE_STREAM_INVALID_PARAMS,\n level: 'warning',\n message: 'Dispose View invalid combination of parameters.',\n data: {\n streamType: streamLogInfo.streamType\n }\n });\n return;\n case EventNames.START_DISPOSE_STREAM:\n _logEvent(callingStatefulLogger, {\n name: EventNames.START_DISPOSE_STREAM,\n level: 'info',\n message: 'Start disposing stream.',\n data: streamLogInfo\n });\n return;\n case EventNames.DISPOSE_INFO_NOT_FOUND:\n _logEvent(callingStatefulLogger, {\n name: EventNames.DISPOSE_INFO_NOT_FOUND,\n level: 'error',\n message: 'Cannot find render info when disposing stream.',\n data: streamLogInfo\n });\n return;\n case EventNames.STREAM_STOPPING:\n _logEvent(callingStatefulLogger, {\n name: EventNames.STREAM_STOPPING,\n level: 'info',\n message: 'Stream is currently marked as stopping, will continue if is local preview',\n data: streamLogInfo\n });\n return;\n case EventNames.DISPOSING_RENDERER:\n _logEvent(callingStatefulLogger, {\n name: EventNames.DISPOSING_RENDERER,\n level: 'info',\n message: 'Disposing view renderer.',\n data: streamLogInfo\n });\n return;\n case EventNames.RENDERER_NOT_FOUND:\n _logEvent(callingStatefulLogger, {\n name: EventNames.RENDERER_NOT_FOUND,\n level: 'error',\n message: 'Cannot find renderer when disposing stream.',\n data: streamLogInfo\n });\n return;\n case EventNames.STREAM_ALREADY_DISPOSED:\n _logEvent(callingStatefulLogger, {\n name: EventNames.STREAM_ALREADY_DISPOSED,\n level: 'info',\n message: 'Stream is already disposed.',\n data: streamLogInfo\n });\n return;\n default:\n return;\n }\n}\n\n/**\n * helper function to manage logging for local stream creations\n *\n * @param eventName Name of the event to occured when creating a local stream\n * @param streamLogInfo Data about the stream in the event\n * @param error that is thrown by caller\n * @returns\n */\nfunction _logCreateStreamEvent(eventName: string, streamLogInfo: {\n callId?: string;\n participantKey?: any;\n streamId?: number | string;\n streamType?: MediaStreamType;\n streamEventType?: string;\n}, error?: unknown): void {\n switch (eventName) {\n case EventNames.CREATE_STREAM_INVALID_PARAMS:\n _logEvent(callingStatefulLogger, {\n name: EventNames.CREATE_STREAM_INVALID_PARAMS,\n level: 'warning',\n message: 'Create View invalid combination of parameters.',\n data: {\n streamType: streamLogInfo.streamType\n }\n });\n return;\n case EventNames.START_STREAM_RENDERING:\n _logEvent(callingStatefulLogger, {\n name: EventNames.START_STREAM_RENDERING,\n level: 'info',\n message: 'Start creating view for local video.',\n data: streamLogInfo\n });\n return;\n case EventNames.STREAM_NOT_FOUND:\n _logEvent(callingStatefulLogger, {\n name: EventNames.STREAM_NOT_FOUND,\n level: 'error',\n message: 'Stream not found in state.',\n data: {\n callId: streamLogInfo.callId\n }\n });\n return;\n case EventNames.STREAM_ALREADY_RENDERED:\n _logEvent(callingStatefulLogger, {\n name: EventNames.STREAM_ALREADY_RENDERED,\n level: 'warning',\n message: 'Stream is already rendered.',\n data: streamLogInfo\n });\n return;\n case EventNames.STREAM_RENDERING:\n _logEvent(callingStatefulLogger, {\n name: EventNames.STREAM_RENDERING,\n level: 'warning',\n message: 'Stream is rendering.',\n data: streamLogInfo\n });\n return;\n case EventNames.STREAM_STOPPING:\n _logEvent(callingStatefulLogger, {\n name: EventNames.STREAM_STOPPING,\n level: 'warning',\n message: 'Stream was marked as stopping by dispose view. Resetting state to \"Rendering\".',\n data: streamLogInfo\n });\n return;\n case EventNames.CREATE_STREAM_FAIL:\n _logEvent(callingStatefulLogger, {\n name: EventNames.CREATE_STREAM_FAIL,\n level: 'error',\n message: 'Failed to create view.',\n data: {\n error: error,\n streamType: streamLogInfo.streamType,\n callId: streamLogInfo.callId\n }\n });\n return;\n case EventNames.RENDER_INFO_NOT_FOUND:\n _logEvent(callingStatefulLogger, {\n name: EventNames.RENDER_INFO_NOT_FOUND,\n level: 'error',\n message: 'Cannot find render info after create the view. ',\n data: streamLogInfo\n });\n return;\n case EventNames.CREATED_STREAM_STOPPING:\n _logEvent(callingStatefulLogger, {\n name: EventNames.CREATED_STREAM_STOPPING,\n level: 'warning',\n message: 'Render info status is stopping, dispose renderer.',\n data: streamLogInfo\n });\n return;\n case EventNames.VIEW_RENDER_SUCCEED:\n _logEvent(callingStatefulLogger, {\n name: EventNames.VIEW_RENDER_SUCCEED,\n level: 'info',\n message: `Successfully render the view.`,\n data: streamLogInfo\n });\n return;\n case EventNames.CREATING_VIEW:\n _logEvent(callingStatefulLogger, {\n name: EventNames.CREATING_VIEW,\n level: 'info',\n message: 'Start creating view for remote video.',\n data: streamLogInfo\n });\n return;\n default:\n return;\n }\n}\n\n/**\n * helper function to fire streamUtils logging events\n *\n * @param eventName Name of event from streamUtils\n * @param streamLogInfo informaiton about the event and who called it\n * @param error if any errors present will be added to message in logging\n */\nexport function _logStreamEvent(eventName: EventNames, streamLogInfo: {\n callId?: string;\n participantKey?: any;\n streamId?: number | string;\n streamType?: MediaStreamType;\n streamEventType?: string;\n}, error?: unknown): void {\n if (streamLogInfo.streamEventType === 'disposeViewLocal' || streamLogInfo.streamEventType === 'disposeViewRemote' || streamLogInfo.streamEventType === 'disposeViewUnparented') {\n _logDisposeStreamEvent(eventName, streamLogInfo);\n } else if (streamLogInfo.streamEventType === 'createViewLocal' || streamLogInfo.streamEventType === 'createViewRemote') {\n _logCreateStreamEvent(eventName, streamLogInfo, error);\n }\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"TeamsCallAgentDeclarative.js","sourceRoot":"","sources":["../../../../../calling-stateful-client/src/TeamsCallAgentDeclarative.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { TeamsCallAgent } from '@azure/communication-calling';\nimport { TeamsIncomingCall } from '@azure/communication-calling';\nimport { CallCommon, CallAgentCommon } from './BetaToStableTypes';\nimport { clearCallRelatedState, DeclarativeCallCommon, ProxyCallAgentCommon } from './CallAgentDeclarativeCommon';\nimport { CallContext } from './CallContext';\nimport { _isTeamsCall, _isTeamsCallAgent } from './TypeGuards';\nimport { InternalCallContext } from './InternalCallContext';\nimport { teamsCallDeclaratify } from './TeamsCallDeclarative';\n\n/**\n * @public\n * Proxies the {@link @azure/communication-calling#TeamsIncomingCall} interface.\n */\nexport type TeamsIncomingCallManagement = {\n /**\n * @beta\n * @Remark This attribute doesn't exist on the {@link @azure/communication-calling#TeamsCallAgent} interface.\n * @returns readonly array of {@link DeclarativeTeamsIncomingCall}\n */\n incomingCalls: ReadonlyArray<TeamsIncomingCall>;\n};\n\n/**\n * @public\n * `DeclarativeTeamsCallAgent` extends and proxies the {@link @azure/communication-calling#TeamsCallAgent}\n */\nexport type DeclarativeTeamsCallAgent = TeamsCallAgent & TeamsIncomingCallManagement;\n\n/**\n * ProxyTeamsCallAgent proxies TeamsCallAgent and saves any returned state in the given context. It will subscribe to all state\n * updates in the TeamsCallAgent and in the contained TeamsCalls and RemoteParticipants. When dispose is called it will\n * unsubscribe from all state updates.\n */\nclass ProxyTeamsCallAgent extends ProxyCallAgentCommon implements ProxyHandler<DeclarativeTeamsCallAgent> {\n private _callAgent: TeamsCallAgent;\n\n constructor(callAgent: TeamsCallAgent, context: CallContext, internalContext: InternalCallContext) {\n super(context, internalContext);\n\n this._callAgent = callAgent;\n this.subscribe();\n }\n\n private subscribe = (): void => {\n this._callAgent.on('callsUpdated', this.callsUpdated);\n this._callAgent.on('incomingCall', this.incomingCall);\n // There could be scenario that when ProxyTeamsCallAgent is created that the given CallAgent already has TeamsCalls. In this\n // case we need to make sure to subscribe to those already existing Calls.\n for (const call of this._callAgent.calls) {\n this.addCall(call);\n }\n };\n\n protected unsubscribe = (): void => {\n this._callAgent.off('callsUpdated', this.callsUpdated);\n this._callAgent.off('incomingCall', this.incomingCall);\n this.unregisterSubscriber();\n };\n\n protected callDeclaratify(call: CallCommon, context: CallContext): DeclarativeCallCommon {\n if (_isTeamsCall(call)) {\n return teamsCallDeclaratify(call, context);\n }\n throw new Error('Not reachable code, DeclarativeTeamsCallAgent.callDeclaratify must be called with an TeamsCall.');\n }\n\n protected startCall(agent: TeamsCallAgent, args: Parameters<TeamsCallAgent['startCall']>): CallCommon {\n if (_isTeamsCallAgent(agent)) {\n return agent.startCall(...args);\n }\n throw new Error('Not reachable code, DeclarativeTeamsCallAgent.startCall must be called with an TeamsCallAgent.');\n }\n\n protected joinCall(agent: CallAgentCommon, args: Parameters<TeamsCallAgent['join']>): CallCommon {\n if (_isTeamsCallAgent(agent)) {\n return agent.join(...args);\n }\n throw new Error('Not reachable code, DeclarativeTeamsCallAgent.joinCall must be called with an TeamsCallAgent.');\n }\n\n protected agentSubscribe(agent: CallAgentCommon, args: Parameters<TeamsCallAgent['on']>): void {\n if (_isTeamsCallAgent(agent)) {\n agent.on(...args);\n return;\n }\n throw new Error(\n 'Not reachable code, DeclarativeTeamsCallAgent.agentSubscribe must be called with an TeamsCallAgent.'\n );\n }\n\n protected agentUnsubscribe(agent: CallAgentCommon, args: Parameters<TeamsCallAgent['off']>): void {\n if (_isTeamsCallAgent(agent)) {\n agent.off(...args);\n return;\n }\n throw new Error(\n 'Not reachable code, DeclarativeTeamsCallAgent.agentUnsubscribe must be called with an TeamsCallAgent.'\n );\n }\n\n public get<P extends keyof CallAgentCommon>(target: TeamsCallAgent, prop: P): any {\n return super.getCommon(target, prop);\n }\n}\n\n/**\n * Creates a declarative CallAgent by proxying TeamsCallAgent with ProxyTeamsCallAgent which will track state updates by updating\n * the given context.\n *\n * @param callAgent - TeamsCallAgent from SDK\n * @param context - CallContext from StatefulCallClient\n * @param internalContext- InternalCallContext from StatefulCallClient\n */\nexport const teamsCallAgentDeclaratify = (\n callAgent: TeamsCallAgent,\n context: CallContext,\n internalContext: InternalCallContext\n): DeclarativeTeamsCallAgent => {\n clearCallRelatedState(context, internalContext);\n return new Proxy(\n callAgent,\n new ProxyTeamsCallAgent(callAgent, context, internalContext)\n ) as DeclarativeTeamsCallAgent;\n};\n"]}
1
+ {"version":3,"file":"TeamsCallAgentDeclarative.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/TeamsCallAgentDeclarative.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { TeamsCallAgent } from '@azure/communication-calling';\nimport { TeamsIncomingCall } from '@azure/communication-calling';\nimport { CallCommon, CallAgentCommon } from './BetaToStableTypes';\nimport { clearCallRelatedState, DeclarativeCallCommon, ProxyCallAgentCommon } from './CallAgentDeclarativeCommon';\nimport { CallContext } from './CallContext';\nimport { _isTeamsCall, _isTeamsCallAgent } from './TypeGuards';\nimport { InternalCallContext } from './InternalCallContext';\nimport { teamsCallDeclaratify } from './TeamsCallDeclarative';\n\n/**\n * @public\n * Proxies the {@link @azure/communication-calling#TeamsIncomingCall} interface.\n */\nexport type TeamsIncomingCallManagement = {\n /**\n * @beta\n * @Remark This attribute doesn't exist on the {@link @azure/communication-calling#TeamsCallAgent} interface.\n * @returns readonly array of {@link DeclarativeTeamsIncomingCall}\n */\n incomingCalls: ReadonlyArray<TeamsIncomingCall>;\n};\n\n/**\n * @public\n * `DeclarativeTeamsCallAgent` extends and proxies the {@link @azure/communication-calling#TeamsCallAgent}\n */\nexport type DeclarativeTeamsCallAgent = TeamsCallAgent & TeamsIncomingCallManagement;\n\n/**\n * ProxyTeamsCallAgent proxies TeamsCallAgent and saves any returned state in the given context. It will subscribe to all state\n * updates in the TeamsCallAgent and in the contained TeamsCalls and RemoteParticipants. When dispose is called it will\n * unsubscribe from all state updates.\n */\nclass ProxyTeamsCallAgent extends ProxyCallAgentCommon implements ProxyHandler<DeclarativeTeamsCallAgent> {\n private _callAgent: TeamsCallAgent;\n constructor(callAgent: TeamsCallAgent, context: CallContext, internalContext: InternalCallContext) {\n super(context, internalContext);\n this._callAgent = callAgent;\n this.subscribe();\n }\n private subscribe = (): void => {\n this._callAgent.on('callsUpdated', this.callsUpdated);\n this._callAgent.on('incomingCall', this.incomingCall);\n // There could be scenario that when ProxyTeamsCallAgent is created that the given CallAgent already has TeamsCalls. In this\n // case we need to make sure to subscribe to those already existing Calls.\n for (const call of this._callAgent.calls) {\n this.addCall(call);\n }\n };\n protected unsubscribe = (): void => {\n this._callAgent.off('callsUpdated', this.callsUpdated);\n this._callAgent.off('incomingCall', this.incomingCall);\n this.unregisterSubscriber();\n };\n protected callDeclaratify(call: CallCommon, context: CallContext): DeclarativeCallCommon {\n if (_isTeamsCall(call)) {\n return teamsCallDeclaratify(call, context);\n }\n throw new Error('Not reachable code, DeclarativeTeamsCallAgent.callDeclaratify must be called with an TeamsCall.');\n }\n protected startCall(agent: TeamsCallAgent, args: Parameters<TeamsCallAgent['startCall']>): CallCommon {\n if (_isTeamsCallAgent(agent)) {\n return agent.startCall(...args);\n }\n throw new Error('Not reachable code, DeclarativeTeamsCallAgent.startCall must be called with an TeamsCallAgent.');\n }\n protected joinCall(agent: CallAgentCommon, args: Parameters<TeamsCallAgent['join']>): CallCommon {\n if (_isTeamsCallAgent(agent)) {\n return agent.join(...args);\n }\n throw new Error('Not reachable code, DeclarativeTeamsCallAgent.joinCall must be called with an TeamsCallAgent.');\n }\n protected agentSubscribe(agent: CallAgentCommon, args: Parameters<TeamsCallAgent['on']>): void {\n if (_isTeamsCallAgent(agent)) {\n agent.on(...args);\n return;\n }\n throw new Error('Not reachable code, DeclarativeTeamsCallAgent.agentSubscribe must be called with an TeamsCallAgent.');\n }\n protected agentUnsubscribe(agent: CallAgentCommon, args: Parameters<TeamsCallAgent['off']>): void {\n if (_isTeamsCallAgent(agent)) {\n agent.off(...args);\n return;\n }\n throw new Error('Not reachable code, DeclarativeTeamsCallAgent.agentUnsubscribe must be called with an TeamsCallAgent.');\n }\n public get<P extends keyof CallAgentCommon>(target: TeamsCallAgent, prop: P): any {\n return super.getCommon(target, prop);\n }\n}\n\n/**\n * Creates a declarative CallAgent by proxying TeamsCallAgent with ProxyTeamsCallAgent which will track state updates by updating\n * the given context.\n *\n * @param callAgent - TeamsCallAgent from SDK\n * @param context - CallContext from StatefulCallClient\n * @param internalContext- InternalCallContext from StatefulCallClient\n */\nexport const teamsCallAgentDeclaratify = (callAgent: TeamsCallAgent, context: CallContext, internalContext: InternalCallContext): DeclarativeTeamsCallAgent => {\n clearCallRelatedState(context, internalContext);\n return new Proxy(callAgent, new ProxyTeamsCallAgent(callAgent, context, internalContext)) as DeclarativeTeamsCallAgent;\n};"]}