@azure/communication-react 1.18.0 → 1.19.0-alpha-202407230014

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 (1201) hide show
  1. package/dist/communication-react.d.ts +2254 -161
  2. package/dist/dist-cjs/communication-react/ChatMessageComponentAsRichTextEditBox-DKLA2xEh.js +251 -0
  3. package/dist/dist-cjs/communication-react/ChatMessageComponentAsRichTextEditBox-DKLA2xEh.js.map +1 -0
  4. package/dist/dist-cjs/communication-react/RichTextSendBoxWrapper-CBXO5qQp.js +54 -0
  5. package/dist/dist-cjs/communication-react/RichTextSendBoxWrapper-CBXO5qQp.js.map +1 -0
  6. package/dist/dist-cjs/communication-react/index-C-_eEXgc.js +42813 -0
  7. package/dist/dist-cjs/communication-react/index-C-_eEXgc.js.map +1 -0
  8. package/dist/dist-cjs/communication-react/index.js +166 -34363
  9. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  10. package/dist/dist-esm/acs-ui-common/src/MessageStatus.js.map +1 -1
  11. package/dist/dist-esm/acs-ui-common/src/areEqual.js.map +1 -1
  12. package/dist/dist-esm/acs-ui-common/src/common.d.ts +13 -0
  13. package/dist/dist-esm/acs-ui-common/src/common.js.map +1 -1
  14. package/dist/dist-esm/acs-ui-common/src/commonProperties.js.map +1 -1
  15. package/dist/dist-esm/acs-ui-common/src/constants.js.map +1 -1
  16. package/dist/dist-esm/acs-ui-common/src/cssUtils.js.map +1 -1
  17. package/dist/dist-esm/acs-ui-common/src/dataConversion.d.ts +6 -0
  18. package/dist/dist-esm/acs-ui-common/src/dataConversion.js +17 -0
  19. package/dist/dist-esm/acs-ui-common/src/dataConversion.js.map +1 -0
  20. package/dist/dist-esm/acs-ui-common/src/identifier.js +4 -1
  21. package/dist/dist-esm/acs-ui-common/src/identifier.js.map +1 -1
  22. package/dist/dist-esm/acs-ui-common/src/index.d.ts +2 -0
  23. package/dist/dist-esm/acs-ui-common/src/index.js +2 -0
  24. package/dist/dist-esm/acs-ui-common/src/index.js.map +1 -1
  25. package/dist/dist-esm/acs-ui-common/src/localizationUtils.js.map +1 -1
  26. package/dist/dist-esm/acs-ui-common/src/logEvent.js.map +1 -1
  27. package/dist/dist-esm/acs-ui-common/src/memoizeFnAll.js.map +1 -1
  28. package/dist/dist-esm/acs-ui-common/src/safeStringify.js.map +1 -1
  29. package/dist/dist-esm/acs-ui-common/src/telemetry.js.map +1 -1
  30. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  31. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  32. package/dist/dist-esm/acs-ui-javascript-loaders/src/callCompositeLoader.d.ts +19 -0
  33. package/dist/dist-esm/acs-ui-javascript-loaders/src/callCompositeLoader.js +51 -0
  34. package/dist/dist-esm/acs-ui-javascript-loaders/src/callCompositeLoader.js.map +1 -0
  35. package/dist/dist-esm/acs-ui-javascript-loaders/src/index.d.ts +5 -0
  36. package/dist/dist-esm/acs-ui-javascript-loaders/src/index.js +5 -0
  37. package/dist/dist-esm/acs-ui-javascript-loaders/src/index.js.map +1 -0
  38. package/dist/dist-esm/acs-ui-javascript-loaders/src/outboundCallCompositeLoader.d.ts +19 -0
  39. package/dist/dist-esm/acs-ui-javascript-loaders/src/outboundCallCompositeLoader.js +57 -0
  40. package/dist/dist-esm/acs-ui-javascript-loaders/src/outboundCallCompositeLoader.js.map +1 -0
  41. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.d.ts +5 -1
  42. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +11 -0
  43. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  44. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.d.ts +12 -0
  45. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +25 -7
  46. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
  47. package/dist/dist-esm/calling-component-bindings/src/captionsSelector.js +7 -1
  48. package/dist/dist-esm/calling-component-bindings/src/captionsSelector.js.map +1 -1
  49. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js +26 -55
  50. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js.map +1 -1
  51. package/dist/dist-esm/calling-component-bindings/src/getRemoteParticipantsExcludingConsumers.js +1 -1
  52. package/dist/dist-esm/calling-component-bindings/src/getRemoteParticipantsExcludingConsumers.js.map +1 -1
  53. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.d.ts +10 -0
  54. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +96 -60
  55. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
  56. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js +2 -2
  57. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js.map +1 -1
  58. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js +15 -1
  59. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js.map +1 -1
  60. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js +25 -1
  61. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js.map +1 -1
  62. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.d.ts +1 -1
  63. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.js.map +1 -1
  64. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.d.ts +3 -1
  65. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js +12 -0
  66. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  67. package/dist/dist-esm/calling-component-bindings/src/hooks/useSelector.js.map +1 -1
  68. package/dist/dist-esm/calling-component-bindings/src/index.d.ts +2 -0
  69. package/dist/dist-esm/calling-component-bindings/src/index.js +2 -0
  70. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  71. package/dist/dist-esm/calling-component-bindings/src/notificationStackSelector.js +37 -66
  72. package/dist/dist-esm/calling-component-bindings/src/notificationStackSelector.js.map +1 -1
  73. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.d.ts +1 -0
  74. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +38 -12
  75. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
  76. package/dist/dist-esm/calling-component-bindings/src/participantsButtonSelector.js.map +1 -1
  77. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.js.map +1 -1
  78. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js +6 -3
  79. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js.map +1 -1
  80. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js.map +1 -1
  81. package/dist/dist-esm/calling-component-bindings/src/providers/index.js.map +1 -1
  82. package/dist/dist-esm/calling-component-bindings/src/utils/SelectorUtils.js.map +1 -1
  83. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.d.ts +7 -0
  84. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js +23 -7
  85. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js.map +1 -1
  86. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js +11 -9
  87. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js.map +1 -1
  88. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.d.ts +1 -1
  89. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +19 -10
  90. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  91. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js +36 -7
  92. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
  93. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.js.map +1 -1
  94. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.d.ts +15 -1
  95. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
  96. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.d.ts +1 -1
  97. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js +80 -77
  98. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js.map +1 -1
  99. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +58 -2
  100. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  101. package/dist/dist-esm/calling-stateful-client/src/CallContext.d.ts +12 -1
  102. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +100 -33
  103. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  104. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js +7 -8
  105. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js.map +1 -1
  106. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js +145 -86
  107. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js.map +1 -1
  108. package/dist/dist-esm/calling-stateful-client/src/CallIdHistory.js.map +1 -1
  109. package/dist/dist-esm/calling-stateful-client/src/CallIdRef.js.map +1 -1
  110. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.d.ts +4 -0
  111. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +44 -9
  112. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  113. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js.map +1 -1
  114. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.d.ts +17 -0
  115. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.js +61 -3
  116. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.js.map +1 -1
  117. package/dist/dist-esm/calling-stateful-client/src/Converter.d.ts +5 -0
  118. package/dist/dist-esm/calling-stateful-client/src/Converter.js +25 -20
  119. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  120. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js +58 -73
  121. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js.map +1 -1
  122. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.d.ts +2 -8
  123. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js +14 -16
  124. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js.map +1 -1
  125. package/dist/dist-esm/calling-stateful-client/src/IncomingCallSubscriber.js.map +1 -1
  126. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js +3 -15
  127. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js.map +1 -1
  128. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.d.ts +17 -0
  129. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.js +36 -0
  130. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.js.map +1 -0
  131. package/dist/dist-esm/calling-stateful-client/src/LocalVideoStreamVideoEffectsSubscriber.js.map +1 -1
  132. package/dist/dist-esm/calling-stateful-client/src/Logger.js.map +1 -1
  133. package/dist/dist-esm/calling-stateful-client/src/OptimalVideoCountSubscriber.js +1 -3
  134. package/dist/dist-esm/calling-stateful-client/src/OptimalVideoCountSubscriber.js.map +1 -1
  135. package/dist/dist-esm/calling-stateful-client/src/PPTLiveSubscriber.js.map +1 -1
  136. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js.map +1 -1
  137. package/dist/dist-esm/calling-stateful-client/src/RaiseHandSubscriber.js.map +1 -1
  138. package/dist/dist-esm/calling-stateful-client/src/ReactionSubscriber.js.map +1 -1
  139. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.d.ts +1 -0
  140. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js +11 -0
  141. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js.map +1 -1
  142. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js.map +1 -1
  143. package/dist/dist-esm/calling-stateful-client/src/SpotlightSubscriber.js.map +1 -1
  144. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts +23 -0
  145. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js +67 -51
  146. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
  147. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js +32 -24
  148. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js.map +1 -1
  149. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js +8 -11
  150. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js.map +1 -1
  151. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.d.ts +14 -1
  152. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js.map +1 -1
  153. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js +17 -0
  154. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js.map +1 -1
  155. package/dist/dist-esm/calling-stateful-client/src/TeamsIncomingCallDeclarative.d.ts +17 -0
  156. package/dist/dist-esm/calling-stateful-client/src/TeamsIncomingCallDeclarative.js +49 -0
  157. package/dist/dist-esm/calling-stateful-client/src/TeamsIncomingCallDeclarative.js.map +1 -0
  158. package/dist/dist-esm/calling-stateful-client/src/TranscriptionSubscriber.js.map +1 -1
  159. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.d.ts +9 -1
  160. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js +16 -0
  161. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js.map +1 -1
  162. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js +3 -3
  163. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js.map +1 -1
  164. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js +6 -7
  165. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js.map +1 -1
  166. package/dist/dist-esm/calling-stateful-client/src/index-public.d.ts +3 -0
  167. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  168. package/dist/dist-esm/calling-stateful-client/src/index.js.map +1 -1
  169. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js +4 -4
  170. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js.map +1 -1
  171. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js +3 -3
  172. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js.map +1 -1
  173. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js +15 -15
  174. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js.map +1 -1
  175. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.d.ts +6 -2
  176. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js +54 -8
  177. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js.map +1 -1
  178. package/dist/dist-esm/chat-component-bindings/src/hooks/useHandlers.js.map +1 -1
  179. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.d.ts +2 -1
  180. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js +5 -0
  181. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  182. package/dist/dist-esm/chat-component-bindings/src/hooks/useSelector.js.map +1 -1
  183. package/dist/dist-esm/chat-component-bindings/src/index.js.map +1 -1
  184. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +78 -18
  185. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
  186. package/dist/dist-esm/chat-component-bindings/src/providers/ChatClientProvider.js.map +1 -1
  187. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js +1 -1
  188. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js.map +1 -1
  189. package/dist/dist-esm/chat-component-bindings/src/sendBoxSelector.js.map +1 -1
  190. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js +3 -7
  191. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js.map +1 -1
  192. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js +3 -1
  193. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js.map +1 -1
  194. package/dist/dist-esm/chat-component-bindings/src/utils/constants.js.map +1 -1
  195. package/dist/dist-esm/chat-component-bindings/src/utils/getImageAttachmentsFromHTMLContent.d.ts +6 -0
  196. package/dist/dist-esm/chat-component-bindings/src/utils/getImageAttachmentsFromHTMLContent.js +23 -0
  197. package/dist/dist-esm/chat-component-bindings/src/utils/getImageAttachmentsFromHTMLContent.js.map +1 -0
  198. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js +10 -3
  199. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js.map +1 -1
  200. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.d.ts +15 -1
  201. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js.map +1 -1
  202. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js +16 -22
  203. package/dist/dist-esm/chat-stateful-client/src/ChatContext.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/EventSubscriber.js +11 -12
  206. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js.map +1 -1
  207. package/dist/dist-esm/chat-stateful-client/src/Logger.js.map +1 -1
  208. package/dist/dist-esm/chat-stateful-client/src/ResourceDownloadQueue.js +4 -16
  209. package/dist/dist-esm/chat-stateful-client/src/ResourceDownloadQueue.js.map +1 -1
  210. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js +57 -67
  211. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js.map +1 -1
  212. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js +114 -128
  213. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js.map +1 -1
  214. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js.map +1 -1
  215. package/dist/dist-esm/chat-stateful-client/src/index.d.ts +1 -0
  216. package/dist/dist-esm/chat-stateful-client/src/index.js.map +1 -1
  217. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedIterator.js.map +1 -1
  218. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListMessages.js.map +1 -1
  219. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListParticipants.js.map +1 -1
  220. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListReadReceipts.js.map +1 -1
  221. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListThreads.js.map +1 -1
  222. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.js.map +1 -1
  223. package/dist/dist-esm/communication-react/src/index.d.ts +34 -0
  224. package/dist/dist-esm/communication-react/src/index.js +18 -0
  225. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  226. package/dist/dist-esm/communication-react/src/mergedHooks.js.map +1 -1
  227. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js +3 -6
  228. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js.map +1 -1
  229. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerContext.js.map +1 -1
  230. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerMessage.js.map +1 -1
  231. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js +4 -10
  232. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js.map +1 -1
  233. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js +1 -1
  234. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js.map +1 -1
  235. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js +1 -1
  236. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js.map +1 -1
  237. package/dist/dist-esm/react-components/src/components/Announcer.js.map +1 -1
  238. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentCard.js +21 -15
  239. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentCard.js.map +1 -1
  240. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentCardGroup.js +1 -1
  241. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentCardGroup.js.map +1 -1
  242. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentDownloadCards.d.ts +2 -0
  243. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentDownloadCards.js +17 -6
  244. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentDownloadCards.js.map +1 -1
  245. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentUploadCards.js +21 -18
  246. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentUploadCards.js.map +1 -1
  247. package/dist/dist-esm/react-components/src/components/CameraButton.js +8 -19
  248. package/dist/dist-esm/react-components/src/components/CameraButton.js.map +1 -1
  249. package/dist/dist-esm/react-components/src/components/Caption.js +2 -2
  250. package/dist/dist-esm/react-components/src/components/Caption.js.map +1 -1
  251. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js +9 -8
  252. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js.map +1 -1
  253. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js +36 -19
  254. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js.map +1 -1
  255. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js +2 -5
  256. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js.map +1 -1
  257. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js +37 -22
  258. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js.map +1 -1
  259. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.d.ts +13 -1
  260. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.js +30 -24
  261. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.js.map +1 -1
  262. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.d.ts +11 -0
  263. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +64 -30
  264. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
  265. package/dist/dist-esm/react-components/src/components/ChatMessage/DefaultSystemMessage.js +9 -5
  266. package/dist/dist-esm/react-components/src/components/ChatMessage/DefaultSystemMessage.js.map +1 -1
  267. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.d.ts +10 -0
  268. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js +15 -0
  269. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js.map +1 -0
  270. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.d.ts +8 -1
  271. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js +43 -9
  272. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js.map +1 -1
  273. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.d.ts +2 -1
  274. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.js +51 -16
  275. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.js.map +1 -1
  276. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.d.ts +4 -1
  277. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.js +57 -27
  278. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.js.map +1 -1
  279. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.d.ts +23 -2
  280. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.js +20 -0
  281. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.js.map +1 -1
  282. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.d.ts +24 -0
  283. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.js +243 -0
  284. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.js.map +1 -0
  285. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.d.ts +23 -2
  286. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.js +54 -7
  287. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.js.map +1 -1
  288. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.d.ts +8 -1
  289. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js +53 -12
  290. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js.map +1 -1
  291. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/FluentChatMyMessageComponent.js +91 -20
  292. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/FluentChatMyMessageComponent.js.map +1 -1
  293. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js +18 -18
  294. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js.map +1 -1
  295. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js +7 -4
  296. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js.map +1 -1
  297. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js +2 -2
  298. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js.map +1 -1
  299. package/dist/dist-esm/react-components/src/components/ComplianceBanner/Utils.js.map +1 -1
  300. package/dist/dist-esm/react-components/src/components/ComplianceBanner/index.js.map +1 -1
  301. package/dist/dist-esm/react-components/src/components/ComplianceBanner/types.js.map +1 -1
  302. package/dist/dist-esm/react-components/src/components/ControlBar.js +10 -14
  303. package/dist/dist-esm/react-components/src/components/ControlBar.js.map +1 -1
  304. package/dist/dist-esm/react-components/src/components/ControlBarButton.js +14 -4
  305. package/dist/dist-esm/react-components/src/components/ControlBarButton.js.map +1 -1
  306. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js +3 -14
  307. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js.map +1 -1
  308. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.d.ts +69 -0
  309. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js +37 -0
  310. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js.map +1 -0
  311. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.d.ts +75 -0
  312. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js +58 -0
  313. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js.map +1 -0
  314. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js +5 -8
  315. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js.map +1 -1
  316. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.d.ts +105 -0
  317. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js +86 -0
  318. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js.map +1 -0
  319. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.d.ts +86 -0
  320. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js +31 -0
  321. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js.map +1 -0
  322. package/dist/dist-esm/react-components/src/components/DevicesButton.js +19 -27
  323. package/dist/dist-esm/react-components/src/components/DevicesButton.js.map +1 -1
  324. package/dist/dist-esm/react-components/src/components/Dialpad/DTMFToneGenerator.js +12 -48
  325. package/dist/dist-esm/react-components/src/components/Dialpad/DTMFToneGenerator.js.map +1 -1
  326. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +45 -51
  327. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
  328. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js +4 -4
  329. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js.map +1 -1
  330. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js +2 -6
  331. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js.map +1 -1
  332. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js +11 -9
  333. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js.map +1 -1
  334. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js +11 -23
  335. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js.map +1 -1
  336. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js +6 -4
  337. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js.map +1 -1
  338. package/dist/dist-esm/react-components/src/components/Drawer/ReactionDrawerMenuItem.js +11 -5
  339. package/dist/dist-esm/react-components/src/components/Drawer/ReactionDrawerMenuItem.js.map +1 -1
  340. package/dist/dist-esm/react-components/src/components/Drawer/index.js.map +1 -1
  341. package/dist/dist-esm/react-components/src/components/EndCallButton.js +16 -16
  342. package/dist/dist-esm/react-components/src/components/EndCallButton.js.map +1 -1
  343. package/dist/dist-esm/react-components/src/components/ErrorBar.d.ts +4 -0
  344. package/dist/dist-esm/react-components/src/components/ErrorBar.js +9 -5
  345. package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
  346. package/dist/dist-esm/react-components/src/components/ErrorBoundary.js +2 -6
  347. package/dist/dist-esm/react-components/src/components/ErrorBoundary.js.map +1 -1
  348. package/dist/dist-esm/react-components/src/components/GridLayout.js +37 -37
  349. package/dist/dist-esm/react-components/src/components/GridLayout.js.map +1 -1
  350. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js +2 -2
  351. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js.map +1 -1
  352. package/dist/dist-esm/react-components/src/components/HoldButton.d.ts +49 -0
  353. package/dist/dist-esm/react-components/src/components/HoldButton.js +25 -0
  354. package/dist/dist-esm/react-components/src/components/HoldButton.js.map +1 -0
  355. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js +7 -9
  356. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js.map +1 -1
  357. package/dist/dist-esm/react-components/src/components/ImageOverlay.js +13 -14
  358. package/dist/dist-esm/react-components/src/components/ImageOverlay.js.map +1 -1
  359. package/dist/dist-esm/react-components/src/components/IncomingCallNotification.d.ts +102 -0
  360. package/dist/dist-esm/react-components/src/components/IncomingCallNotification.js +88 -0
  361. package/dist/dist-esm/react-components/src/components/IncomingCallNotification.js.map +1 -0
  362. package/dist/dist-esm/react-components/src/components/InputBoxButton.js +3 -10
  363. package/dist/dist-esm/react-components/src/components/InputBoxButton.js.map +1 -1
  364. package/dist/dist-esm/react-components/src/components/InputBoxComponent.d.ts +2 -0
  365. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js +23 -7
  366. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js.map +1 -1
  367. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js +3 -5
  368. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js.map +1 -1
  369. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js +32 -19
  370. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
  371. package/dist/dist-esm/react-components/src/components/MeetingConferencePhoneInfo.js +15 -23
  372. package/dist/dist-esm/react-components/src/components/MeetingConferencePhoneInfo.js.map +1 -1
  373. package/dist/dist-esm/react-components/src/components/MeetingReactionOverlay.js +4 -12
  374. package/dist/dist-esm/react-components/src/components/MeetingReactionOverlay.js.map +1 -1
  375. package/dist/dist-esm/react-components/src/components/MentionPopover.d.ts +121 -0
  376. package/dist/dist-esm/react-components/src/components/MentionPopover.js +126 -0
  377. package/dist/dist-esm/react-components/src/components/MentionPopover.js.map +1 -0
  378. package/dist/dist-esm/react-components/src/components/MessageStatusIcon.js +2 -2
  379. package/dist/dist-esm/react-components/src/components/MessageStatusIcon.js.map +1 -1
  380. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js.map +1 -1
  381. package/dist/dist-esm/react-components/src/components/MessageStatusIndicatorInternal.js +20 -33
  382. package/dist/dist-esm/react-components/src/components/MessageStatusIndicatorInternal.js.map +1 -1
  383. package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +68 -5
  384. package/dist/dist-esm/react-components/src/components/MessageThread.js +115 -45
  385. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  386. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js +17 -14
  387. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js.map +1 -1
  388. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js +94 -101
  389. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js.map +1 -1
  390. package/dist/dist-esm/react-components/src/components/Notification.js +4 -8
  391. package/dist/dist-esm/react-components/src/components/Notification.js.map +1 -1
  392. package/dist/dist-esm/react-components/src/components/NotificationStack.d.ts +4 -0
  393. package/dist/dist-esm/react-components/src/components/NotificationStack.js +9 -8
  394. package/dist/dist-esm/react-components/src/components/NotificationStack.js.map +1 -1
  395. package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts +13 -0
  396. package/dist/dist-esm/react-components/src/components/ParticipantItem.js +17 -21
  397. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  398. package/dist/dist-esm/react-components/src/components/ParticipantList.d.ts +17 -0
  399. package/dist/dist-esm/react-components/src/components/ParticipantList.js +57 -41
  400. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  401. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js +46 -32
  402. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js.map +1 -1
  403. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js +3 -3
  404. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js.map +1 -1
  405. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js +3 -3
  406. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js.map +1 -1
  407. package/dist/dist-esm/react-components/src/components/RaiseHandButton.js +6 -12
  408. package/dist/dist-esm/react-components/src/components/RaiseHandButton.js.map +1 -1
  409. package/dist/dist-esm/react-components/src/components/ReactionButton.js +27 -28
  410. package/dist/dist-esm/react-components/src/components/ReactionButton.js.map +1 -1
  411. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.d.ts +1 -0
  412. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +31 -18
  413. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  414. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js +2 -2
  415. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js.map +1 -1
  416. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js +2 -2
  417. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js.map +1 -1
  418. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/ContextMenuPlugin.d.ts +9 -0
  419. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/ContextMenuPlugin.js +29 -0
  420. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/ContextMenuPlugin.js.map +1 -0
  421. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.d.ts +33 -0
  422. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.js +101 -0
  423. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.js.map +1 -0
  424. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/KeyboardInputPlugin.d.ts +12 -0
  425. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/KeyboardInputPlugin.js +23 -0
  426. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/KeyboardInputPlugin.js.map +1 -0
  427. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/PlaceholderPlugin.d.ts +15 -0
  428. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/PlaceholderPlugin.js +42 -0
  429. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/PlaceholderPlugin.js.map +1 -0
  430. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/RichTextToolbarPlugin.d.ts +24 -0
  431. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/RichTextToolbarPlugin.js +66 -0
  432. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/RichTextToolbarPlugin.js.map +1 -0
  433. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/TableEditContextMenuProvider.d.ts +20 -0
  434. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/TableEditContextMenuProvider.js +45 -0
  435. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/TableEditContextMenuProvider.js.map +1 -0
  436. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UpdateContentPlugin.d.ts +29 -0
  437. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UpdateContentPlugin.js +92 -0
  438. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UpdateContentPlugin.js.map +1 -0
  439. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.d.ts +58 -0
  440. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.js +277 -0
  441. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.js.map +1 -0
  442. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.d.ts +37 -0
  443. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.js +100 -0
  444. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.js.map +1 -0
  445. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.d.ts +216 -0
  446. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.js +262 -0
  447. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.js.map +1 -0
  448. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.d.ts +16 -0
  449. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.js +68 -0
  450. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.js.map +1 -0
  451. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/RichTextToolbar.d.ts +19 -0
  452. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/RichTextToolbar.js +229 -0
  453. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/RichTextToolbar.js.map +1 -0
  454. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTableCommandBarItem.d.ts +7 -0
  455. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTableCommandBarItem.js +49 -0
  456. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTableCommandBarItem.js.map +1 -0
  457. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTablePane.d.ts +15 -0
  458. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTablePane.js +67 -0
  459. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTablePane.js.map +1 -0
  460. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextToolbarTableIcon.d.ts +6 -0
  461. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextToolbarTableIcon.js +13 -0
  462. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextToolbarTableIcon.js.map +1 -0
  463. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js +6 -14
  464. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js.map +1 -1
  465. package/dist/dist-esm/react-components/src/components/SendBox.d.ts +47 -1
  466. package/dist/dist-esm/react-components/src/components/SendBox.js +112 -13
  467. package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
  468. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.d.ts +34 -0
  469. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js +39 -0
  470. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js.map +1 -0
  471. package/dist/dist-esm/react-components/src/components/SendBoxErrors.d.ts +14 -0
  472. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js +20 -0
  473. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js.map +1 -0
  474. package/dist/dist-esm/react-components/src/components/StartCaptionsButton.js +2 -4
  475. package/dist/dist-esm/react-components/src/components/StartCaptionsButton.js.map +1 -1
  476. package/dist/dist-esm/react-components/src/components/StreamMedia.js +3 -3
  477. package/dist/dist-esm/react-components/src/components/StreamMedia.js.map +1 -1
  478. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.js +10 -3
  479. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.js.map +1 -1
  480. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.styles.js.map +1 -1
  481. package/dist/dist-esm/react-components/src/components/Survey/SurveyTypes.js.map +1 -1
  482. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.js +23 -23
  483. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.js.map +1 -1
  484. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.js.map +1 -1
  485. package/dist/dist-esm/react-components/src/components/SystemMessage.js +2 -4
  486. package/dist/dist-esm/react-components/src/components/SystemMessage.js.map +1 -1
  487. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.d.ts +24 -0
  488. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js +595 -0
  489. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js.map +1 -0
  490. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.d.ts +152 -0
  491. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js +822 -0
  492. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js.map +1 -0
  493. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js +10 -10
  494. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js.map +1 -1
  495. package/dist/dist-esm/react-components/src/components/TypingIndicator.js +9 -6
  496. package/dist/dist-esm/react-components/src/components/TypingIndicator.js.map +1 -1
  497. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js +3 -1
  498. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js.map +1 -1
  499. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js +3 -1
  500. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js.map +1 -1
  501. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js +20 -0
  502. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js.map +1 -1
  503. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js +3 -1
  504. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js.map +1 -1
  505. package/dist/dist-esm/react-components/src/components/VerticalGallery.js +13 -31
  506. package/dist/dist-esm/react-components/src/components/VerticalGallery.js.map +1 -1
  507. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js +3 -1
  508. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js.map +1 -1
  509. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js +8 -12
  510. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js.map +1 -1
  511. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js +7 -11
  512. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js.map +1 -1
  513. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js +6 -2
  514. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js.map +1 -1
  515. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js +26 -11
  516. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js.map +1 -1
  517. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js +14 -10
  518. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js.map +1 -1
  519. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js +50 -19
  520. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js.map +1 -1
  521. package/dist/dist-esm/react-components/src/components/VideoGallery/FocusContentLayout.js +2 -2
  522. package/dist/dist-esm/react-components/src/components/VideoGallery/FocusContentLayout.js.map +1 -1
  523. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.d.ts +17 -0
  524. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js +111 -0
  525. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js.map +1 -0
  526. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.js.map +1 -1
  527. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js +7 -7
  528. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js.map +1 -1
  529. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js +6 -4
  530. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js.map +1 -1
  531. package/dist/dist-esm/react-components/src/components/VideoGallery/ParticipantVideoTileOverlay.js +17 -11
  532. package/dist/dist-esm/react-components/src/components/VideoGallery/ParticipantVideoTileOverlay.js.map +1 -1
  533. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteContentShareReactionOverlay.js +29 -24
  534. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteContentShareReactionOverlay.js.map +1 -1
  535. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js +9 -7
  536. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js.map +1 -1
  537. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js +2 -4
  538. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js.map +1 -1
  539. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.js +44 -13
  540. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.js.map +1 -1
  541. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js +1 -6
  542. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js.map +1 -1
  543. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js +9 -34
  544. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js.map +1 -1
  545. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js +2 -11
  546. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js.map +1 -1
  547. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/Layout.styles.js.map +1 -1
  548. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/LocalScreenShare.styles.js.map +1 -1
  549. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteScreenShare.styles.js.map +1 -1
  550. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteVideoTile.styles.js.map +1 -1
  551. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js +1 -3
  552. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js.map +1 -1
  553. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js +10 -11
  554. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js.map +1 -1
  555. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js +22 -28
  556. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js.map +1 -1
  557. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js +11 -6
  558. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js.map +1 -1
  559. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.d.ts +2 -0
  560. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js +54 -46
  561. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js.map +1 -1
  562. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/OverflowGalleryUtils.js.map +1 -1
  563. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/reactionUtils.js.map +1 -1
  564. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +50 -20
  565. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  566. package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts +7 -1
  567. package/dist/dist-esm/react-components/src/components/VideoGallery.js +116 -25
  568. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  569. package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +8 -0
  570. package/dist/dist-esm/react-components/src/components/VideoTile.js +40 -59
  571. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  572. package/dist/dist-esm/react-components/src/components/assets/RaisedHandIcon.js +2 -2
  573. package/dist/dist-esm/react-components/src/components/assets/RaisedHandIcon.js.map +1 -1
  574. package/dist/dist-esm/react-components/src/components/index.d.ts +22 -0
  575. package/dist/dist-esm/react-components/src/components/index.js +17 -0
  576. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  577. package/dist/dist-esm/react-components/src/components/styles/AttachmentCard.styles.d.ts +2 -2
  578. package/dist/dist-esm/react-components/src/components/styles/AttachmentCard.styles.js +15 -17
  579. package/dist/dist-esm/react-components/src/components/styles/AttachmentCard.styles.js.map +1 -1
  580. package/dist/dist-esm/react-components/src/components/styles/AttachmentCardGroup.styles.d.ts +1 -1
  581. package/dist/dist-esm/react-components/src/components/styles/AttachmentCardGroup.styles.js.map +1 -1
  582. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.d.ts +58 -0
  583. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js +144 -0
  584. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js.map +1 -0
  585. package/dist/dist-esm/react-components/src/components/styles/Captions.style.js.map +1 -1
  586. package/dist/dist-esm/react-components/src/components/styles/CaptionsSettingsModal.styles.js.map +1 -1
  587. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js +3 -10
  588. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js.map +1 -1
  589. package/dist/dist-esm/react-components/src/components/styles/Common.style.d.ts +1 -1
  590. package/dist/dist-esm/react-components/src/components/styles/Common.style.js +2 -1
  591. package/dist/dist-esm/react-components/src/components/styles/Common.style.js.map +1 -1
  592. package/dist/dist-esm/react-components/src/components/styles/ControlBar.styles.js.map +1 -1
  593. package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.js.map +1 -1
  594. package/dist/dist-esm/react-components/src/components/styles/EditBox.styles.js.map +1 -1
  595. package/dist/dist-esm/react-components/src/components/styles/GridLayout.styles.js.map +1 -1
  596. package/dist/dist-esm/react-components/src/components/styles/HorizontalGallery.styles.js.map +1 -1
  597. package/dist/dist-esm/react-components/src/components/styles/ImageOverlay.style.js +2 -5
  598. package/dist/dist-esm/react-components/src/components/styles/ImageOverlay.style.js.map +1 -1
  599. package/dist/dist-esm/react-components/src/components/styles/InputBoxButton.style.js.map +1 -1
  600. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js +2 -5
  601. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js.map +1 -1
  602. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.d.ts +26 -0
  603. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js +69 -0
  604. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js.map +1 -0
  605. package/dist/dist-esm/react-components/src/components/styles/MessageStatusIndicator.styles.js.map +1 -1
  606. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.d.ts +3 -3
  607. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js +24 -14
  608. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js.map +1 -1
  609. package/dist/dist-esm/react-components/src/components/styles/Notification.styles.js.map +1 -1
  610. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js +6 -4
  611. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js.map +1 -1
  612. package/dist/dist-esm/react-components/src/components/styles/ParticipantList.styles.js.map +1 -1
  613. package/dist/dist-esm/react-components/src/components/styles/ReactionButton.styles.js.map +1 -1
  614. package/dist/dist-esm/react-components/src/components/styles/ReactionOverlay.style.js +14 -8
  615. package/dist/dist-esm/react-components/src/components/styles/ReactionOverlay.style.js.map +1 -1
  616. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.d.ts +82 -0
  617. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js +293 -0
  618. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js.map +1 -0
  619. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.d.ts +21 -0
  620. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.js +34 -0
  621. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.js.map +1 -0
  622. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.d.ts +1 -0
  623. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js +5 -12
  624. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js.map +1 -1
  625. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.d.ts +38 -0
  626. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js +92 -0
  627. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js.map +1 -0
  628. package/dist/dist-esm/react-components/src/components/styles/Stack.style.d.ts +5 -0
  629. package/dist/dist-esm/react-components/src/components/styles/Stack.style.js +32 -0
  630. package/dist/dist-esm/react-components/src/components/styles/Stack.style.js.map +1 -0
  631. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js +3 -6
  632. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js.map +1 -1
  633. package/dist/dist-esm/react-components/src/components/styles/SystemMessage.styles.js.map +1 -1
  634. package/dist/dist-esm/react-components/src/components/styles/TeamsMeetingConferenceInfo.js.map +1 -1
  635. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js +1 -2
  636. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js.map +1 -1
  637. package/dist/dist-esm/react-components/src/components/styles/TypingIndicator.styles.js.map +1 -1
  638. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.d.ts +26 -0
  639. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js +67 -0
  640. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js.map +1 -0
  641. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js +1 -2
  642. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js.map +1 -1
  643. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js +5 -19
  644. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js.map +1 -1
  645. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js.map +1 -1
  646. package/dist/dist-esm/react-components/src/components/styles/v8StyleShim.js.map +1 -1
  647. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.d.ts +37 -1
  648. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.js +41 -3
  649. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.js.map +1 -1
  650. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.d.ts +5 -3
  651. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.js +41 -11
  652. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.js.map +1 -1
  653. package/dist/dist-esm/react-components/src/components/utils/Datetime.js +1 -4
  654. package/dist/dist-esm/react-components/src/components/utils/Datetime.js.map +1 -1
  655. package/dist/dist-esm/react-components/src/components/utils/RichTextEditorUtils.d.ts +37 -0
  656. package/dist/dist-esm/react-components/src/components/utils/RichTextEditorUtils.js +60 -0
  657. package/dist/dist-esm/react-components/src/components/utils/RichTextEditorUtils.js.map +1 -0
  658. package/dist/dist-esm/react-components/src/components/utils/RichTextTableUtils.d.ts +33 -0
  659. package/dist/dist-esm/react-components/src/components/utils/RichTextTableUtils.js +124 -0
  660. package/dist/dist-esm/react-components/src/components/utils/RichTextTableUtils.js.map +1 -0
  661. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.d.ts +40 -1
  662. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js +140 -3
  663. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js.map +1 -1
  664. package/dist/dist-esm/react-components/src/components/utils/common.js +4 -0
  665. package/dist/dist-esm/react-components/src/components/utils/common.js.map +1 -1
  666. package/dist/dist-esm/react-components/src/components/utils/delay.js.map +1 -1
  667. package/dist/dist-esm/react-components/src/components/utils/formatPhoneNumber.js.map +1 -1
  668. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.d.ts +2 -1
  669. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js +4 -7
  670. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js.map +1 -1
  671. package/dist/dist-esm/react-components/src/components/utils/keyboardNavigation.js.map +1 -1
  672. package/dist/dist-esm/react-components/src/components/utils/merge.d.ts +7 -0
  673. package/dist/dist-esm/react-components/src/components/utils/merge.js +16 -0
  674. package/dist/dist-esm/react-components/src/components/utils/merge.js.map +1 -0
  675. package/dist/dist-esm/react-components/src/components/utils/overFlowGalleriesUtils.js.map +1 -1
  676. package/dist/dist-esm/react-components/src/components/utils/responsive.js +2 -2
  677. package/dist/dist-esm/react-components/src/components/utils/responsive.js.map +1 -1
  678. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js +10 -1
  679. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js.map +1 -1
  680. package/dist/dist-esm/react-components/src/components/utils.js +21 -17
  681. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  682. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js +8 -6
  683. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js.map +1 -1
  684. package/dist/dist-esm/react-components/src/gallery/index.js.map +1 -1
  685. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.d.ts +4 -0
  686. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js +5 -1
  687. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js.map +1 -1
  688. package/dist/dist-esm/react-components/src/identifiers/index.js.map +1 -1
  689. package/dist/dist-esm/react-components/src/index.d.ts +1 -0
  690. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  691. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +59 -0
  692. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  693. package/dist/dist-esm/react-components/src/localization/index.js.map +1 -1
  694. package/dist/dist-esm/react-components/src/localization/locales/ar-SA/ComponentLocale.js.map +1 -1
  695. package/dist/dist-esm/react-components/src/localization/locales/cs-CZ/ComponentLocale.js.map +1 -1
  696. package/dist/dist-esm/react-components/src/localization/locales/de-DE/ComponentLocale.js.map +1 -1
  697. package/dist/dist-esm/react-components/src/localization/locales/en-GB/ComponentLocale.js.map +1 -1
  698. package/dist/dist-esm/react-components/src/localization/locales/en-US/strings.json +8 -2
  699. package/dist/dist-esm/react-components/src/localization/locales/es-ES/ComponentLocale.js.map +1 -1
  700. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/ComponentLocale.js.map +1 -1
  701. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/ComponentLocale.js.map +1 -1
  702. package/dist/dist-esm/react-components/src/localization/locales/he-IL/ComponentLocale.js.map +1 -1
  703. package/dist/dist-esm/react-components/src/localization/locales/index.js +1 -3
  704. package/dist/dist-esm/react-components/src/localization/locales/index.js.map +1 -1
  705. package/dist/dist-esm/react-components/src/localization/locales/it-IT/ComponentLocale.js.map +1 -1
  706. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/ComponentLocale.js.map +1 -1
  707. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/ComponentLocale.js.map +1 -1
  708. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/ComponentLocale.js.map +1 -1
  709. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/ComponentLocale.js.map +1 -1
  710. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/ComponentLocale.js.map +1 -1
  711. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/ComponentLocale.js.map +1 -1
  712. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/ComponentLocale.js.map +1 -1
  713. package/dist/dist-esm/react-components/src/localization/locales/sv-SE/ComponentLocale.js.map +1 -1
  714. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/ComponentLocale.js.map +1 -1
  715. package/dist/dist-esm/react-components/src/localization/locales/utils.js +1 -1
  716. package/dist/dist-esm/react-components/src/localization/locales/utils.js.map +1 -1
  717. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/ComponentLocale.js.map +1 -1
  718. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/ComponentLocale.js.map +1 -1
  719. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js +3 -5
  720. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js.map +1 -1
  721. package/dist/dist-esm/react-components/src/theming/FluentV9ThemeProvider.js +2 -2
  722. package/dist/dist-esm/react-components/src/theming/FluentV9ThemeProvider.js.map +1 -1
  723. package/dist/dist-esm/react-components/src/theming/generateTheme.js +15 -1
  724. package/dist/dist-esm/react-components/src/theming/generateTheme.js.map +1 -1
  725. package/dist/dist-esm/react-components/src/theming/icons.d.ts +33 -0
  726. package/dist/dist-esm/react-components/src/theming/icons.js +151 -14
  727. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  728. package/dist/dist-esm/react-components/src/theming/icons.styles.d.ts +6 -0
  729. package/dist/dist-esm/react-components/src/theming/icons.styles.js +25 -0
  730. package/dist/dist-esm/react-components/src/theming/icons.styles.js.map +1 -0
  731. package/dist/dist-esm/react-components/src/theming/index.js.map +1 -1
  732. package/dist/dist-esm/react-components/src/theming/themeDuplicates.js.map +1 -1
  733. package/dist/dist-esm/react-components/src/theming/themeUtils.js.map +1 -1
  734. package/dist/dist-esm/react-components/src/theming/themes.d.ts +6 -0
  735. package/dist/dist-esm/react-components/src/theming/themes.js +10 -0
  736. package/dist/dist-esm/react-components/src/theming/themes.js.map +1 -1
  737. package/dist/dist-esm/react-components/src/theming/v9ThemeShim.js +1 -7
  738. package/dist/dist-esm/react-components/src/theming/v9ThemeShim.js.map +1 -1
  739. package/dist/dist-esm/react-components/src/types/Attachment.d.ts +13 -0
  740. package/dist/dist-esm/react-components/src/types/Attachment.js.map +1 -1
  741. package/dist/dist-esm/react-components/src/types/CallSurveyImprovementSuggestions.js.map +1 -1
  742. package/dist/dist-esm/react-components/src/types/CaptionsAvailableLanguageStrings.js.map +1 -1
  743. package/dist/dist-esm/react-components/src/types/ChatMessage.d.ts +20 -1
  744. package/dist/dist-esm/react-components/src/types/ChatMessage.js.map +1 -1
  745. package/dist/dist-esm/react-components/src/types/CommunicationParticipant.js.map +1 -1
  746. package/dist/dist-esm/react-components/src/types/ComponentSlotStyle.js.map +1 -1
  747. package/dist/dist-esm/react-components/src/types/CustomStylesProps.js.map +1 -1
  748. package/dist/dist-esm/react-components/src/types/OnRender.d.ts +8 -0
  749. package/dist/dist-esm/react-components/src/types/OnRender.js.map +1 -1
  750. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js.map +1 -1
  751. package/dist/dist-esm/react-components/src/types/ReactionTypes.js.map +1 -1
  752. package/dist/dist-esm/react-components/src/types/ReadReceiptsBySenderId.js.map +1 -1
  753. package/dist/dist-esm/react-components/src/types/SurveyIssues.js.map +1 -1
  754. package/dist/dist-esm/react-components/src/types/SurveyIssuesHeadingStrings.js.map +1 -1
  755. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.d.ts +6 -0
  756. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js +2 -0
  757. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
  758. package/dist/dist-esm/react-components/src/types/index.js.map +1 -1
  759. package/dist/dist-esm/react-composites/src/Logger.js.map +1 -1
  760. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +72 -0
  761. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +91 -47
  762. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  763. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +128 -0
  764. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  765. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +65 -9
  766. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +271 -63
  767. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  768. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +68 -2
  769. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js +7 -1
  770. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  771. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapterProvider.js.map +1 -1
  772. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallingSoundSubscriber.js +8 -3
  773. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallingSoundSubscriber.js.map +1 -1
  774. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/DiagnosticsForwarder.js.map +1 -1
  775. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js +1 -3
  776. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js.map +1 -1
  777. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/ParticipantSubcriber.js.map +1 -1
  778. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js +2 -2
  779. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js.map +1 -1
  780. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.d.ts +2 -0
  781. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js.map +1 -1
  782. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +129 -46
  783. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  784. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts +1 -0
  785. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +65 -52
  786. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  787. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.d.ts +48 -0
  788. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js +210 -0
  789. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js.map +1 -0
  790. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js +16 -20
  791. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js.map +1 -1
  792. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.d.ts +2 -0
  793. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js +21 -0
  794. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js.map +1 -1
  795. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js +20 -2
  796. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js.map +1 -1
  797. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.d.ts +2 -0
  798. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js +21 -0
  799. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js.map +1 -1
  800. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js +5 -4
  801. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js.map +1 -1
  802. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.d.ts +12 -0
  803. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js +93 -0
  804. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js.map +1 -0
  805. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js +4 -4
  806. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js.map +1 -1
  807. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js +33 -22
  808. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js.map +1 -1
  809. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.d.ts +1 -0
  810. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js +49 -25
  811. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
  812. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js +26 -30
  813. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js.map +1 -1
  814. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +67 -36
  815. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  816. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js +2 -2
  817. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js.map +1 -1
  818. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js +15 -13
  819. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js.map +1 -1
  820. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/Prompt.js +10 -32
  821. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/Prompt.js.map +1 -1
  822. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js +29 -11
  823. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js.map +1 -1
  824. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePaneProvider.js.map +1 -1
  825. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useMeetingPhoneInfo.js +1 -1
  826. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useMeetingPhoneInfo.js.map +1 -1
  827. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.d.ts +2 -0
  828. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js +169 -53
  829. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js.map +1 -1
  830. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js +4 -4
  831. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js.map +1 -1
  832. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js +1 -1
  833. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js.map +1 -1
  834. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SvgWithWordWrapping.js +3 -5
  835. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SvgWithWordWrapping.js.map +1 -1
  836. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js +3 -1
  837. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js.map +1 -1
  838. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js +10 -7
  839. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js.map +1 -1
  840. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js +23 -13
  841. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js.map +1 -1
  842. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js +3 -1
  843. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js.map +1 -1
  844. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js +5 -2
  845. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js.map +1 -1
  846. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.d.ts +8 -0
  847. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js +26 -0
  848. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js.map +1 -0
  849. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/RaiseHand.js +1 -1
  850. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/RaiseHand.js.map +1 -1
  851. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Reaction.js +1 -1
  852. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Reaction.js.map +1 -1
  853. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js +1 -1
  854. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js.map +1 -1
  855. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js +12 -8
  856. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js.map +1 -1
  857. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +61 -18
  858. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  859. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.js.map +1 -1
  860. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js +1 -1
  861. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js.map +1 -1
  862. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.d.ts +3 -0
  863. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
  864. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +12 -9
  865. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  866. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.d.ts +7 -0
  867. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +119 -14
  868. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  869. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/DtmfDialpadPage.js +5 -13
  870. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/DtmfDialpadPage.js.map +1 -1
  871. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.d.ts +27 -0
  872. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +40 -0
  873. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +1 -0
  874. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js +21 -10
  875. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js.map +1 -1
  876. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js +3 -3
  877. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js.map +1 -1
  878. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/SurveyPage.js +2 -2
  879. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/SurveyPage.js.map +1 -1
  880. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ThankYouForFeedbackPage.js +2 -2
  881. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ThankYouForFeedbackPage.js.map +1 -1
  882. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js +24 -24
  883. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js.map +1 -1
  884. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.d.ts +15 -0
  885. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js +54 -0
  886. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js.map +1 -0
  887. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.d.ts +2 -2
  888. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js +1 -1
  889. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js.map +1 -1
  890. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.js +2 -1
  891. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.js.map +1 -1
  892. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.d.ts +8 -0
  893. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +11 -0
  894. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
  895. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.d.ts +1 -1
  896. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.js.map +1 -1
  897. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.d.ts +1 -1
  898. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.js +1 -4
  899. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.js.map +1 -1
  900. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitySelector.d.ts +1 -1
  901. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitySelector.js +1 -1
  902. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitySelector.js.map +1 -1
  903. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.d.ts +1 -1
  904. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.js.map +1 -1
  905. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/deviceCountSelector.d.ts +1 -1
  906. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/deviceCountSelector.js.map +1 -1
  907. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.d.ts +2 -2
  908. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js +1 -1
  909. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js.map +1 -1
  910. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.d.ts +1 -1
  911. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js +3 -1
  912. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js.map +1 -1
  913. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/getFirstSpotlightedRemoteParticipantSelector.d.ts +1 -1
  914. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/getFirstSpotlightedRemoteParticipantSelector.js +10 -4
  915. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/getFirstSpotlightedRemoteParticipantSelector.js.map +1 -1
  916. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.d.ts +4 -4
  917. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js +1 -1
  918. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js.map +1 -1
  919. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.d.ts +3 -3
  920. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js +14 -2
  921. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js.map +1 -1
  922. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.d.ts +2 -2
  923. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js +4 -4
  924. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js.map +1 -1
  925. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.d.ts +1 -1
  926. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js +1 -1
  927. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js.map +1 -1
  928. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.d.ts +5 -5
  929. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js +4 -4
  930. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js.map +1 -1
  931. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.d.ts +2 -2
  932. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js +1 -1
  933. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js.map +1 -1
  934. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.d.ts +5 -5
  935. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.js.map +1 -1
  936. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js +1 -1
  937. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js.map +1 -1
  938. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js +2 -6
  939. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js.map +1 -1
  940. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js +41 -29
  941. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js.map +1 -1
  942. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallControls.styles.js.map +1 -1
  943. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js +1 -2
  944. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js.map +1 -1
  945. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/DtmfDialpadPage.styles.js.map +1 -1
  946. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js +1 -4
  947. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js.map +1 -1
  948. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.d.ts +32 -0
  949. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js +81 -0
  950. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js.map +1 -0
  951. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js +2 -9
  952. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js.map +1 -1
  953. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalDeviceSettings.styles.js.map +1 -1
  954. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js +2 -4
  955. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js.map +1 -1
  956. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NetworkReconnectTile.styles.js.map +1 -1
  957. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NoticePage.styles.js.map +1 -1
  958. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js +1 -2
  959. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js.map +1 -1
  960. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.js +6 -24
  961. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.js.map +1 -1
  962. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.js.map +1 -1
  963. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CapabilityChangedNotificationTracking.js.map +1 -1
  964. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/ErrorTracking.js.map +1 -1
  965. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js +11 -13
  966. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js.map +1 -1
  967. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackCapabilityChangedNotifications.js +11 -10
  968. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackCapabilityChangedNotifications.js.map +1 -1
  969. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js +4 -2
  970. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js.map +1 -1
  971. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts +14 -2
  972. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +131 -25
  973. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  974. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/index.js.map +1 -1
  975. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/spotlightUtils.js +15 -5
  976. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/spotlightUtils.js.map +1 -1
  977. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/timerUtils.js +2 -2
  978. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/timerUtils.js.map +1 -1
  979. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/useConsoleErrors.js.map +1 -1
  980. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +68 -1
  981. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +91 -19
  982. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  983. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.js +1 -1
  984. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.js.map +1 -1
  985. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.js +9 -7
  986. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.js.map +1 -1
  987. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.js +6 -9
  988. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.js.map +1 -1
  989. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.js +2 -2
  990. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.js.map +1 -1
  991. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.d.ts +32 -0
  992. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.js.map +1 -1
  993. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +24 -6
  994. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +149 -38
  995. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  996. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +59 -3
  997. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  998. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +11 -1
  999. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +44 -0
  1000. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  1001. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts +10 -4
  1002. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js +20 -2
  1003. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  1004. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js +1 -1
  1005. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js.map +1 -1
  1006. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/hooks/useCallWithChatCompositeStrings.js.map +1 -1
  1007. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.js.map +1 -1
  1008. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js +1 -1
  1009. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js.map +1 -1
  1010. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.d.ts +13 -0
  1011. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js +4 -0
  1012. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js.map +1 -1
  1013. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/styles/CallWithChatCompositeStyles.js.map +1 -1
  1014. package/dist/dist-esm/react-composites/src/composites/ChatComposite/AttachmentDownloadErrorBar.d.ts +15 -0
  1015. package/dist/dist-esm/react-composites/src/composites/ChatComposite/AttachmentDownloadErrorBar.js +21 -0
  1016. package/dist/dist-esm/react-composites/src/composites/ChatComposite/AttachmentDownloadErrorBar.js.map +1 -0
  1017. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.d.ts +27 -0
  1018. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js +10 -2
  1019. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js.map +1 -1
  1020. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js +3 -5
  1021. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js.map +1 -1
  1022. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.d.ts +2 -0
  1023. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +287 -24
  1024. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  1025. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.d.ts +18 -0
  1026. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js +18 -0
  1027. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +1 -0
  1028. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadReducer.d.ts +49 -0
  1029. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadReducer.js +48 -0
  1030. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadReducer.js.map +1 -0
  1031. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadUtils.d.ts +44 -0
  1032. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadUtils.js +245 -0
  1033. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadUtils.js.map +1 -0
  1034. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.d.ts +4 -0
  1035. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.js.map +1 -1
  1036. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +6 -2
  1037. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +78 -32
  1038. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  1039. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +12 -2
  1040. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  1041. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js.map +1 -1
  1042. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUpload.d.ts +80 -0
  1043. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUpload.js +41 -0
  1044. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUpload.js.map +1 -0
  1045. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUploadButton.d.ts +38 -0
  1046. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUploadButton.js +82 -0
  1047. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUploadButton.js.map +1 -0
  1048. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.d.ts +5 -0
  1049. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js +5 -0
  1050. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js.map +1 -0
  1051. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js +1 -3
  1052. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js.map +1 -1
  1053. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js +27 -3
  1054. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js.map +1 -1
  1055. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/usePropsFor.js.map +1 -1
  1056. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.d.ts +2 -0
  1057. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js.map +1 -1
  1058. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js +2 -6
  1059. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js.map +1 -1
  1060. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.d.ts +5 -1
  1061. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js +17 -10
  1062. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js.map +1 -1
  1063. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.d.ts +25 -0
  1064. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js +112 -0
  1065. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js.map +1 -0
  1066. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.d.ts +17 -0
  1067. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js +32 -0
  1068. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js.map +1 -0
  1069. package/dist/dist-esm/react-composites/src/composites/common/AudioProvider.js.map +1 -1
  1070. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.d.ts +5 -0
  1071. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js +10 -4
  1072. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js.map +1 -1
  1073. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js +5 -14
  1074. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js.map +1 -1
  1075. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.d.ts +22 -0
  1076. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js +60 -0
  1077. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js.map +1 -0
  1078. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.d.ts +15 -0
  1079. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js +61 -0
  1080. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js.map +1 -0
  1081. package/dist/dist-esm/react-composites/src/composites/common/CalloutWithIcon.js +3 -5
  1082. package/dist/dist-esm/react-composites/src/composites/common/CalloutWithIcon.js.map +1 -1
  1083. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.js +5 -7
  1084. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.js.map +1 -1
  1085. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.js +12 -16
  1086. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.js.map +1 -1
  1087. package/dist/dist-esm/react-composites/src/composites/common/CaptionsSettingsModal.js +1 -1
  1088. package/dist/dist-esm/react-composites/src/composites/common/CaptionsSettingsModal.js.map +1 -1
  1089. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js +1 -5
  1090. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js.map +1 -1
  1091. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.d.ts +1 -0
  1092. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +68 -40
  1093. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -1
  1094. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js +39 -37
  1095. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js.map +1 -1
  1096. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js +124 -63
  1097. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js.map +1 -1
  1098. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DtmfDialerButton.js +1 -1
  1099. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DtmfDialerButton.js.map +1 -1
  1100. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js +1 -1
  1101. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js.map +1 -1
  1102. package/dist/dist-esm/react-composites/src/composites/common/ConvertContextualMenuItemToDrawerMenuItem.js.map +1 -1
  1103. package/dist/dist-esm/react-composites/src/composites/common/Drawer/CaptionLanguageSettingsDrawer.js +5 -7
  1104. package/dist/dist-esm/react-composites/src/composites/common/Drawer/CaptionLanguageSettingsDrawer.js.map +1 -1
  1105. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.d.ts +1 -0
  1106. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +107 -116
  1107. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -1
  1108. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.styles.js.map +1 -1
  1109. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.d.ts +1 -0
  1110. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.js.map +1 -1
  1111. package/dist/dist-esm/react-composites/src/composites/common/Drawer/SpokenLanguageSettingsDrawer.js +5 -7
  1112. package/dist/dist-esm/react-composites/src/composites/common/Drawer/SpokenLanguageSettingsDrawer.js.map +1 -1
  1113. package/dist/dist-esm/react-composites/src/composites/common/Drawer/captionSettingsDrawer.styles.js.map +1 -1
  1114. package/dist/dist-esm/react-composites/src/composites/common/ExitSpotlightButton.js +1 -1
  1115. package/dist/dist-esm/react-composites/src/composites/common/ExitSpotlightButton.js.map +1 -1
  1116. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js +1 -1
  1117. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js.map +1 -1
  1118. package/dist/dist-esm/react-composites/src/composites/common/MeetingPhoneInfoPaneContent.js +11 -9
  1119. package/dist/dist-esm/react-composites/src/composites/common/MeetingPhoneInfoPaneContent.js.map +1 -1
  1120. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js +18 -11
  1121. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js.map +1 -1
  1122. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js +1 -1
  1123. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js.map +1 -1
  1124. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +16 -16
  1125. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
  1126. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js +30 -10
  1127. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js.map +1 -1
  1128. package/dist/dist-esm/react-composites/src/composites/common/RichTextSendBoxWrapper.d.ts +10 -0
  1129. package/dist/dist-esm/react-composites/src/composites/common/RichTextSendBoxWrapper.js +20 -0
  1130. package/dist/dist-esm/react-composites/src/composites/common/RichTextSendBoxWrapper.js.map +1 -0
  1131. package/dist/dist-esm/react-composites/src/composites/common/SendBoxPicker.d.ts +18 -2
  1132. package/dist/dist-esm/react-composites/src/composites/common/SendBoxPicker.js +39 -0
  1133. package/dist/dist-esm/react-composites/src/composites/common/SendBoxPicker.js.map +1 -1
  1134. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js +7 -15
  1135. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js.map +1 -1
  1136. package/dist/dist-esm/react-composites/src/composites/common/StarSurvey.js.map +1 -1
  1137. package/dist/dist-esm/react-composites/src/composites/common/Survey.js +19 -34
  1138. package/dist/dist-esm/react-composites/src/composites/common/Survey.js.map +1 -1
  1139. package/dist/dist-esm/react-composites/src/composites/common/SurveyContent.js +2 -2
  1140. package/dist/dist-esm/react-composites/src/composites/common/SurveyContent.js.map +1 -1
  1141. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js +11 -8
  1142. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js.map +1 -1
  1143. package/dist/dist-esm/react-composites/src/composites/common/TagsSurvey.js +1 -1
  1144. package/dist/dist-esm/react-composites/src/composites/common/TagsSurvey.js.map +1 -1
  1145. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js +11 -12
  1146. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js.map +1 -1
  1147. package/dist/dist-esm/react-composites/src/composites/common/adapters.js.map +1 -1
  1148. package/dist/dist-esm/react-composites/src/composites/common/constants.d.ts +4 -0
  1149. package/dist/dist-esm/react-composites/src/composites/common/constants.js +4 -0
  1150. package/dist/dist-esm/react-composites/src/composites/common/constants.js.map +1 -1
  1151. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +44 -1
  1152. package/dist/dist-esm/react-composites/src/composites/common/icons.js +15 -3
  1153. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  1154. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependency.js.map +1 -1
  1155. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependencyLazy.js.map +1 -1
  1156. package/dist/dist-esm/react-composites/src/composites/common/styles/Composite.styles.js.map +1 -1
  1157. package/dist/dist-esm/react-composites/src/composites/common/styles/GlobalHostLayer.styles.js.map +1 -1
  1158. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js +4 -10
  1159. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js.map +1 -1
  1160. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js +11 -44
  1161. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js.map +1 -1
  1162. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js +6 -29
  1163. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js.map +1 -1
  1164. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js +4 -22
  1165. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js.map +1 -1
  1166. package/dist/dist-esm/react-composites/src/composites/common/styles/Survey.styles.js +15 -13
  1167. package/dist/dist-esm/react-composites/src/composites/common/styles/Survey.styles.js.map +1 -1
  1168. package/dist/dist-esm/react-composites/src/composites/common/styles/TeamsMeetingConferenceInfo.style.js.map +1 -1
  1169. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.d.ts +20 -4
  1170. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js.map +1 -1
  1171. package/dist/dist-esm/react-composites/src/composites/common/utils.js +17 -12
  1172. package/dist/dist-esm/react-composites/src/composites/common/utils.js.map +1 -1
  1173. package/dist/dist-esm/react-composites/src/composites/index.js.map +1 -1
  1174. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js +2 -2
  1175. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js.map +1 -1
  1176. package/dist/dist-esm/react-composites/src/composites/localization/index.js.map +1 -1
  1177. package/dist/dist-esm/react-composites/src/composites/localization/locales/ar-SA/CompositeLocale.js.map +1 -1
  1178. package/dist/dist-esm/react-composites/src/composites/localization/locales/cs-CZ/CompositeLocale.js.map +1 -1
  1179. package/dist/dist-esm/react-composites/src/composites/localization/locales/de-DE/CompositeLocale.js.map +1 -1
  1180. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-GB/CompositeLocale.js.map +1 -1
  1181. package/dist/dist-esm/react-composites/src/composites/localization/locales/es-ES/CompositeLocale.js.map +1 -1
  1182. package/dist/dist-esm/react-composites/src/composites/localization/locales/fi-FI/CompositeLocale.js.map +1 -1
  1183. package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-FR/CompositeLocale.js.map +1 -1
  1184. package/dist/dist-esm/react-composites/src/composites/localization/locales/he-IL/CompositeLocale.js.map +1 -1
  1185. package/dist/dist-esm/react-composites/src/composites/localization/locales/index.js.map +1 -1
  1186. package/dist/dist-esm/react-composites/src/composites/localization/locales/it-IT/CompositeLocale.js.map +1 -1
  1187. package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/CompositeLocale.js.map +1 -1
  1188. package/dist/dist-esm/react-composites/src/composites/localization/locales/ko-KR/CompositeLocale.js.map +1 -1
  1189. package/dist/dist-esm/react-composites/src/composites/localization/locales/nb-NO/CompositeLocale.js.map +1 -1
  1190. package/dist/dist-esm/react-composites/src/composites/localization/locales/nl-NL/CompositeLocale.js.map +1 -1
  1191. package/dist/dist-esm/react-composites/src/composites/localization/locales/pl-PL/CompositeLocale.js.map +1 -1
  1192. package/dist/dist-esm/react-composites/src/composites/localization/locales/pt-BR/CompositeLocale.js.map +1 -1
  1193. package/dist/dist-esm/react-composites/src/composites/localization/locales/ru-RU/CompositeLocale.js.map +1 -1
  1194. package/dist/dist-esm/react-composites/src/composites/localization/locales/sv-SE/CompositeLocale.js.map +1 -1
  1195. package/dist/dist-esm/react-composites/src/composites/localization/locales/tr-TR/CompositeLocale.js.map +1 -1
  1196. package/dist/dist-esm/react-composites/src/composites/localization/locales/utils.js +1 -1
  1197. package/dist/dist-esm/react-composites/src/composites/localization/locales/utils.js.map +1 -1
  1198. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-CN/CompositeLocale.js.map +1 -1
  1199. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-TW/CompositeLocale.js.map +1 -1
  1200. package/dist/dist-esm/react-composites/src/index-public.js.map +1 -1
  1201. package/package.json +17 -17
@@ -43,7 +43,7 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
43
43
  return;
44
44
  }
45
45
  const stream = new LocalVideoStream(videoDeviceInfo);
46
- if (call && !call.localVideoStreams.find(s => areStreamsEqual(s, stream))) {
46
+ if (call && !call.localVideoStreams.find((s) => areStreamsEqual(s, stream))) {
47
47
  yield call.startVideo(stream);
48
48
  }
49
49
  });
@@ -52,7 +52,7 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
52
52
  if (!callId) {
53
53
  return;
54
54
  }
55
- if (call && call.localVideoStreams.find(s => areStreamsEqual(s, stream))) {
55
+ if (call && call.localVideoStreams.find((s) => areStreamsEqual(s, stream))) {
56
56
  yield call.stopVideo(stream);
57
57
  }
58
58
  });
@@ -77,10 +77,11 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
77
77
  // be triggered when the call is in connecting state, which we can then transition the
78
78
  // local video stream to the stateful call client and get into a clean state.
79
79
  if (call && (_isInCall(call.state) || _isInLobbyOrConnecting(call.state))) {
80
- const stream = call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video');
80
+ const stream = call.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video');
81
81
  const unparentedViews = callClient.getState().deviceManager.unparentedViews;
82
82
  if (stream || unparentedViews.length > 0) {
83
- unparentedViews && (yield unparentedViews.forEach(view => view.mediaStreamType === 'Video' && callClient.disposeView(undefined, undefined, view)));
83
+ unparentedViews &&
84
+ (yield unparentedViews.forEach((view) => view.mediaStreamType === 'Video' && callClient.disposeView(undefined, undefined, view)));
84
85
  stream && (yield onStopLocalVideo(stream));
85
86
  }
86
87
  else {
@@ -130,7 +131,7 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
130
131
  }
131
132
  if (call && _isInCall(call.state)) {
132
133
  deviceManager.selectCamera(device);
133
- const stream = call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video');
134
+ const stream = call.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video');
134
135
  yield (stream === null || stream === void 0 ? void 0 : stream.switchSource(device));
135
136
  /// TODO: TEMPORARY SOLUTION
136
137
  /// The Calling SDK needs to wait until the stream is ready before resolving the switchSource promise.
@@ -159,7 +160,7 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
159
160
  const onToggleRaiseHand = () => __awaiter(void 0, void 0, void 0, function* () {
160
161
  const raiseHandFeature = call === null || call === void 0 ? void 0 : call.feature(Features.RaiseHand);
161
162
  const localUserId = callClient.getState().userId;
162
- const isLocalRaisedHand = raiseHandFeature === null || raiseHandFeature === void 0 ? void 0 : raiseHandFeature.getRaisedHands().find(publishedState => toFlatCommunicationIdentifier(publishedState.identifier) === toFlatCommunicationIdentifier(localUserId));
163
+ const isLocalRaisedHand = raiseHandFeature === null || raiseHandFeature === void 0 ? void 0 : raiseHandFeature.getRaisedHands().find((publishedState) => toFlatCommunicationIdentifier(publishedState.identifier) === toFlatCommunicationIdentifier(localUserId));
163
164
  if (isLocalRaisedHand) {
164
165
  yield (raiseHandFeature === null || raiseHandFeature === void 0 ? void 0 : raiseHandFeature.lowerHand());
165
166
  }
@@ -169,10 +170,12 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
169
170
  });
170
171
  const onReactionClick = (reaction) => __awaiter(void 0, void 0, void 0, function* () {
171
172
  var _c;
172
- if (reaction === 'like' || reaction === 'applause' || reaction === 'heart' || reaction === 'laugh' || reaction === 'surprised') {
173
- yield ((_c = call === null || call === void 0 ? void 0 : call.feature(Features.Reaction)) === null || _c === void 0 ? void 0 : _c.sendReaction({
174
- reactionType: reaction
175
- }));
173
+ if (reaction === 'like' ||
174
+ reaction === 'applause' ||
175
+ reaction === 'heart' ||
176
+ reaction === 'laugh' ||
177
+ reaction === 'surprised') {
178
+ yield ((_c = call === null || call === void 0 ? void 0 : call.feature(Features.Reaction)) === null || _c === void 0 ? void 0 : _c.sendReaction({ reactionType: reaction }));
176
179
  }
177
180
  else {
178
181
  console.warn(`Can not recognize ${reaction} as meeting reaction`);
@@ -188,15 +191,10 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
188
191
  const onStartScreenShare = () => __awaiter(void 0, void 0, void 0, function* () { return yield (call === null || call === void 0 ? void 0 : call.startScreenSharing()); });
189
192
  const onStopScreenShare = () => __awaiter(void 0, void 0, void 0, function* () { return yield (call === null || call === void 0 ? void 0 : call.stopScreenSharing()); });
190
193
  const onToggleScreenShare = () => __awaiter(void 0, void 0, void 0, function* () { return (call === null || call === void 0 ? void 0 : call.isScreenSharingOn) ? yield onStopScreenShare() : yield onStartScreenShare(); });
191
- const onHangUp = (forEveryone) => __awaiter(void 0, void 0, void 0, function* () {
192
- return yield (call === null || call === void 0 ? void 0 : call.hangUp({
193
- forEveryone: forEveryone === true ? true : false
194
- }));
195
- });
196
- const onCreateLocalStreamView = (...args_1) => __awaiter(void 0, [...args_1], void 0, function* (options = {
197
- scalingMode: 'Crop',
198
- isMirrored: true
199
- }) {
194
+ const onHangUp = (forEveryone) => __awaiter(void 0, void 0, void 0, function* () { return yield (call === null || call === void 0 ? void 0 : call.hangUp({ forEveryone: forEveryone === true ? true : false })); });
195
+ /* @conditional-compile-remove(PSTN-calls) */
196
+ const onToggleHold = () => __awaiter(void 0, void 0, void 0, function* () { return (call === null || call === void 0 ? void 0 : call.state) === 'LocalHold' ? yield (call === null || call === void 0 ? void 0 : call.resume()) : yield (call === null || call === void 0 ? void 0 : call.hold()); });
197
+ const onCreateLocalStreamView = (...args_1) => __awaiter(void 0, [...args_1], void 0, function* (options = { scalingMode: 'Crop', isMirrored: true }) {
200
198
  var _d;
201
199
  if (!call || call.localVideoStreams.length === 0) {
202
200
  return;
@@ -205,18 +203,14 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
205
203
  if (!callState) {
206
204
  return;
207
205
  }
208
- const localStream = callState.localVideoStreams.find(item => item.mediaStreamType === 'Video');
206
+ const localStream = callState.localVideoStreams.find((item) => item.mediaStreamType === 'Video');
209
207
  if (!localStream) {
210
208
  return;
211
209
  }
212
210
  const { view } = (_d = (yield callClient.createView(call.id, undefined, localStream, options))) !== null && _d !== void 0 ? _d : {};
213
- return view ? {
214
- view
215
- } : undefined;
211
+ return view ? { view } : undefined;
216
212
  });
217
- const onCreateRemoteStreamView = (userId_1, ...args_2) => __awaiter(void 0, [userId_1, ...args_2], void 0, function* (userId, options = {
218
- scalingMode: 'Crop'
219
- }) {
213
+ const onCreateRemoteStreamView = (userId_1, ...args_2) => __awaiter(void 0, [userId_1, ...args_2], void 0, function* (userId, options = { scalingMode: 'Crop' }) {
220
214
  if (!call) {
221
215
  return;
222
216
  }
@@ -224,7 +218,7 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
224
218
  if (!callState) {
225
219
  throw new Error(`Call Not Found: ${call.id}`);
226
220
  }
227
- const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);
221
+ const participant = Object.values(callState.remoteParticipants).find((participant) => toFlatCommunicationIdentifier(participant.identifier) === userId);
228
222
  if (!participant || !participant.videoStreams) {
229
223
  return;
230
224
  }
@@ -236,8 +230,9 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
236
230
  * e.g findLast instead of find
237
231
  */
238
232
  // Find the first available stream, if there is none, then get the first stream
239
- const remoteVideoStream = Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'Video' && i.isAvailable) || Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'Video');
240
- const screenShareStream = Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'ScreenSharing' && i.isAvailable) || Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'ScreenSharing');
233
+ const remoteVideoStream = Object.values(participant.videoStreams).findLast((i) => i.mediaStreamType === 'Video' && i.isAvailable) ||
234
+ Object.values(participant.videoStreams).findLast((i) => i.mediaStreamType === 'Video');
235
+ const screenShareStream = Object.values(participant.videoStreams).findLast((i) => i.mediaStreamType === 'ScreenSharing' && i.isAvailable) || Object.values(participant.videoStreams).findLast((i) => i.mediaStreamType === 'ScreenSharing');
241
236
  let createViewResult = undefined;
242
237
  if (remoteVideoStream && remoteVideoStream.isAvailable && !remoteVideoStream.view) {
243
238
  createViewResult = yield callClient.createView(call.id, participant.identifier, remoteVideoStream, options);
@@ -250,9 +245,7 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
250
245
  scalingMode: 'Fit'
251
246
  });
252
247
  }
253
- return (createViewResult === null || createViewResult === void 0 ? void 0 : createViewResult.view) ? {
254
- view: createViewResult === null || createViewResult === void 0 ? void 0 : createViewResult.view
255
- } : undefined;
248
+ return (createViewResult === null || createViewResult === void 0 ? void 0 : createViewResult.view) ? { view: createViewResult === null || createViewResult === void 0 ? void 0 : createViewResult.view } : undefined;
256
249
  });
257
250
  const onDisposeRemoteStreamView = (userId) => __awaiter(void 0, void 0, void 0, function* () {
258
251
  if (!call) {
@@ -262,12 +255,12 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
262
255
  if (!callState) {
263
256
  throw new Error(`Call Not Found: ${call.id}`);
264
257
  }
265
- const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);
258
+ const participant = Object.values(callState.remoteParticipants).find((participant) => toFlatCommunicationIdentifier(participant.identifier) === userId);
266
259
  if (!participant || !participant.videoStreams) {
267
260
  return;
268
261
  }
269
- const remoteVideoStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'Video');
270
- const screenShareStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'ScreenSharing');
262
+ const remoteVideoStream = Object.values(participant.videoStreams).find((i) => i.mediaStreamType === 'Video');
263
+ const screenShareStream = Object.values(participant.videoStreams).find((i) => i.mediaStreamType === 'ScreenSharing');
271
264
  if (remoteVideoStream && remoteVideoStream.view) {
272
265
  callClient.disposeView(call.id, participant.identifier, remoteVideoStream);
273
266
  }
@@ -283,11 +276,11 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
283
276
  if (!callState) {
284
277
  throw new Error(`Call Not Found: ${call.id}`);
285
278
  }
286
- const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);
279
+ const participant = Object.values(callState.remoteParticipants).find((participant) => toFlatCommunicationIdentifier(participant.identifier) === userId);
287
280
  if (!participant || !participant.videoStreams) {
288
281
  return;
289
282
  }
290
- const remoteVideoStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'Video');
283
+ const remoteVideoStream = Object.values(participant.videoStreams).find((i) => i.mediaStreamType === 'Video');
291
284
  if (remoteVideoStream && remoteVideoStream.view) {
292
285
  callClient.disposeView(call.id, participant.identifier, remoteVideoStream);
293
286
  }
@@ -300,11 +293,11 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
300
293
  if (!callState) {
301
294
  throw new Error(`Call Not Found: ${call.id}`);
302
295
  }
303
- const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);
296
+ const participant = Object.values(callState.remoteParticipants).find((participant) => toFlatCommunicationIdentifier(participant.identifier) === userId);
304
297
  if (!participant || !participant.videoStreams) {
305
298
  return;
306
299
  }
307
- const screenShareStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'ScreenSharing');
300
+ const screenShareStream = Object.values(participant.videoStreams).find((i) => i.mediaStreamType === 'ScreenSharing');
308
301
  if (screenShareStream && screenShareStream.view) {
309
302
  callClient.disposeView(call.id, participant.identifier, screenShareStream);
310
303
  }
@@ -312,7 +305,7 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
312
305
  const onDisposeLocalStreamView = () => __awaiter(void 0, void 0, void 0, function* () {
313
306
  // If the user is currently in a call, dispose of the local stream view attached to that call.
314
307
  const callState = call && callClient.getState().calls[call.id];
315
- const localStream = callState === null || callState === void 0 ? void 0 : callState.localVideoStreams.find(item => item.mediaStreamType === 'Video');
308
+ const localStream = callState === null || callState === void 0 ? void 0 : callState.localVideoStreams.find((item) => item.mediaStreamType === 'Video');
316
309
  if (call && callState && localStream) {
317
310
  callClient.disposeView(call.id, undefined, localStream);
318
311
  }
@@ -325,8 +318,15 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
325
318
  const notImplemented = () => {
326
319
  throw new Error('Not implemented, cannot call a method from an abstract object');
327
320
  };
321
+ /* @conditional-compile-remove(call-readiness) */
322
+ const askDevicePermission = (constrain) => __awaiter(void 0, void 0, void 0, function* () {
323
+ if (deviceManager) {
324
+ yield (deviceManager === null || deviceManager === void 0 ? void 0 : deviceManager.askDevicePermission(constrain));
325
+ }
326
+ });
328
327
  const onRemoveVideoBackgroundEffects = () => __awaiter(void 0, void 0, void 0, function* () {
329
- const stream = (call === null || call === void 0 ? void 0 : call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video')) || (deviceManager === null || deviceManager === void 0 ? void 0 : deviceManager.getUnparentedVideoStreams().find(stream => stream.mediaStreamType === 'Video'));
328
+ const stream = (call === null || call === void 0 ? void 0 : call.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video')) ||
329
+ (deviceManager === null || deviceManager === void 0 ? void 0 : deviceManager.getUnparentedVideoStreams().find((stream) => stream.mediaStreamType === 'Video'));
330
330
  if (stream) {
331
331
  if (!(options === null || options === void 0 ? void 0 : options.onResolveVideoBackgroundEffectsDependency)) {
332
332
  throw new Error(`Video background effects dependency not resolved`);
@@ -338,24 +338,28 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
338
338
  });
339
339
  const onBlurVideoBackground = (backgroundBlurConfig) => __awaiter(void 0, void 0, void 0, function* () {
340
340
  var _e;
341
- const stream = (call === null || call === void 0 ? void 0 : call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video')) || (deviceManager === null || deviceManager === void 0 ? void 0 : deviceManager.getUnparentedVideoStreams().find(stream => stream.mediaStreamType === 'Video'));
341
+ const stream = (call === null || call === void 0 ? void 0 : call.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video')) ||
342
+ (deviceManager === null || deviceManager === void 0 ? void 0 : deviceManager.getUnparentedVideoStreams().find((stream) => stream.mediaStreamType === 'Video'));
342
343
  if (stream) {
343
344
  if (!(options === null || options === void 0 ? void 0 : options.onResolveVideoBackgroundEffectsDependency)) {
344
345
  throw new Error(`Video background effects dependency not resolved`);
345
346
  }
346
- const createEffect = (options === null || options === void 0 ? void 0 : options.onResolveVideoBackgroundEffectsDependency) && ((_e = (yield options.onResolveVideoBackgroundEffectsDependency())) === null || _e === void 0 ? void 0 : _e.createBackgroundBlurEffect);
347
+ const createEffect = (options === null || options === void 0 ? void 0 : options.onResolveVideoBackgroundEffectsDependency) &&
348
+ ((_e = (yield options.onResolveVideoBackgroundEffectsDependency())) === null || _e === void 0 ? void 0 : _e.createBackgroundBlurEffect);
347
349
  return createEffect && stream.feature(Features.VideoEffects).startEffects(createEffect(backgroundBlurConfig));
348
350
  }
349
351
  });
350
352
  const onReplaceVideoBackground = (backgroundReplacementConfig) => __awaiter(void 0, void 0, void 0, function* () {
351
353
  var _f;
352
- const stream = (call === null || call === void 0 ? void 0 : call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video')) || (deviceManager === null || deviceManager === void 0 ? void 0 : deviceManager.getUnparentedVideoStreams().find(stream => stream.mediaStreamType === 'Video'));
354
+ const stream = (call === null || call === void 0 ? void 0 : call.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video')) ||
355
+ (deviceManager === null || deviceManager === void 0 ? void 0 : deviceManager.getUnparentedVideoStreams().find((stream) => stream.mediaStreamType === 'Video'));
353
356
  if (stream) {
354
357
  if (!(options === null || options === void 0 ? void 0 : options.onResolveVideoBackgroundEffectsDependency)) {
355
358
  throw new Error(`Video background effects dependency not resolved`);
356
359
  }
357
- const createEffect = (options === null || options === void 0 ? void 0 : options.onResolveVideoBackgroundEffectsDependency) && ((_f = (yield options.onResolveVideoBackgroundEffectsDependency())) === null || _f === void 0 ? void 0 : _f.createBackgroundReplacementEffect);
358
- return createEffect && stream.feature(Features.VideoEffects).startEffects(createEffect(backgroundReplacementConfig));
360
+ const createEffect = (options === null || options === void 0 ? void 0 : options.onResolveVideoBackgroundEffectsDependency) &&
361
+ ((_f = (yield options.onResolveVideoBackgroundEffectsDependency())) === null || _f === void 0 ? void 0 : _f.createBackgroundReplacementEffect);
362
+ return (createEffect && stream.feature(Features.VideoEffects).startEffects(createEffect(backgroundReplacementConfig)));
359
363
  }
360
364
  });
361
365
  const onStartCaptions = (options) => __awaiter(void 0, void 0, void 0, function* () {
@@ -376,34 +380,58 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
376
380
  });
377
381
  const onSubmitSurvey = (survey) => __awaiter(void 0, void 0, void 0, function* () { return yield (call === null || call === void 0 ? void 0 : call.feature(Features.CallSurvey).submitSurvey(survey)); });
378
382
  const onStartSpotlight = (userIds) => __awaiter(void 0, void 0, void 0, function* () {
379
- const participants = userIds === null || userIds === void 0 ? void 0 : userIds.map(userId => _toCommunicationIdentifier(userId));
383
+ const participants = userIds === null || userIds === void 0 ? void 0 : userIds.map((userId) => _toCommunicationIdentifier(userId));
380
384
  yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).startSpotlight(participants));
381
385
  });
382
386
  const onStopSpotlight = (userIds) => __awaiter(void 0, void 0, void 0, function* () {
383
- const participants = userIds === null || userIds === void 0 ? void 0 : userIds.map(userId => _toCommunicationIdentifier(userId));
387
+ const participants = userIds === null || userIds === void 0 ? void 0 : userIds.map((userId) => _toCommunicationIdentifier(userId));
384
388
  yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).stopSpotlight(participants));
385
389
  });
386
390
  const onStopAllSpotlight = () => __awaiter(void 0, void 0, void 0, function* () {
387
391
  yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).stopAllSpotlight());
388
392
  });
393
+ /* @conditional-compile-remove(soft-mute) */
394
+ const onMuteParticipant = (userId) => __awaiter(void 0, void 0, void 0, function* () {
395
+ if (call === null || call === void 0 ? void 0 : call.remoteParticipants) {
396
+ call === null || call === void 0 ? void 0 : call.remoteParticipants.forEach((participant) => __awaiter(void 0, void 0, void 0, function* () {
397
+ // Using toFlatCommunicationIdentifier to convert the CommunicationIdentifier to string
398
+ // as _toCommunicationIdentifier(userId) comparison to participant.identifier did not work for this case
399
+ if (toFlatCommunicationIdentifier(participant.identifier) === userId) {
400
+ yield participant.mute();
401
+ }
402
+ }));
403
+ }
404
+ });
405
+ /* @conditional-compile-remove(soft-mute) */
406
+ const onMuteAllRemoteParticipants = () => __awaiter(void 0, void 0, void 0, function* () {
407
+ call === null || call === void 0 ? void 0 : call.muteAllRemoteParticipants();
408
+ });
389
409
  const canStartSpotlight = call === null || call === void 0 ? void 0 : call.feature(Features.Capabilities).capabilities.spotlightParticipant.isPresent;
390
410
  const canRemoveSpotlight = call === null || call === void 0 ? void 0 : call.feature(Features.Capabilities).capabilities.removeParticipantsSpotlight.isPresent;
391
- const onStartLocalSpotlight = canStartSpotlight ? () => __awaiter(void 0, void 0, void 0, function* () {
392
- yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).startSpotlight());
393
- }) : undefined;
411
+ const onStartLocalSpotlight = canStartSpotlight
412
+ ? () => __awaiter(void 0, void 0, void 0, function* () {
413
+ yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).startSpotlight());
414
+ })
415
+ : undefined;
394
416
  const onStopLocalSpotlight = () => __awaiter(void 0, void 0, void 0, function* () {
395
417
  yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).stopSpotlight());
396
418
  });
397
- const onStartRemoteSpotlight = canStartSpotlight ? (userIds) => __awaiter(void 0, void 0, void 0, function* () {
398
- const participants = userIds === null || userIds === void 0 ? void 0 : userIds.map(userId => _toCommunicationIdentifier(userId));
399
- yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).startSpotlight(participants));
400
- }) : undefined;
401
- const onStopRemoteSpotlight = canRemoveSpotlight ? (userIds) => __awaiter(void 0, void 0, void 0, function* () {
402
- const participants = userIds === null || userIds === void 0 ? void 0 : userIds.map(userId => _toCommunicationIdentifier(userId));
403
- yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).stopSpotlight(participants));
404
- }) : undefined;
419
+ const onStartRemoteSpotlight = canStartSpotlight
420
+ ? (userIds) => __awaiter(void 0, void 0, void 0, function* () {
421
+ const participants = userIds === null || userIds === void 0 ? void 0 : userIds.map((userId) => _toCommunicationIdentifier(userId));
422
+ yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).startSpotlight(participants));
423
+ })
424
+ : undefined;
425
+ const onStopRemoteSpotlight = canRemoveSpotlight
426
+ ? (userIds) => __awaiter(void 0, void 0, void 0, function* () {
427
+ const participants = userIds === null || userIds === void 0 ? void 0 : userIds.map((userId) => _toCommunicationIdentifier(userId));
428
+ yield (call === null || call === void 0 ? void 0 : call.feature(Features.Spotlight).stopSpotlight(participants));
429
+ })
430
+ : undefined;
405
431
  return {
406
432
  onHangUp,
433
+ /* @conditional-compile-remove(PSTN-calls) */
434
+ onToggleHold,
407
435
  onSelectCamera,
408
436
  onSelectMicrophone,
409
437
  onSelectSpeaker,
@@ -423,9 +451,13 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
423
451
  onLowerHand,
424
452
  onToggleRaiseHand,
425
453
  onReactionClick: onReactionClick,
454
+ /* @conditional-compile-remove(PSTN-calls) */
455
+ onAddParticipant: notImplemented,
426
456
  onRemoveParticipant: notImplemented,
427
457
  onStartCall: notImplemented,
428
458
  onSendDtmfTone,
459
+ /* @conditional-compile-remove(call-readiness) */
460
+ askDevicePermission,
429
461
  onRemoveVideoBackgroundEffects,
430
462
  onBlurVideoBackground,
431
463
  onReplaceVideoBackground,
@@ -440,7 +472,11 @@ export const createDefaultCommonCallingHandlers = memoizeOne((callClient, device
440
472
  onStartLocalSpotlight,
441
473
  onStopLocalSpotlight,
442
474
  onStartRemoteSpotlight,
443
- onStopRemoteSpotlight
475
+ onStopRemoteSpotlight,
476
+ /* @conditional-compile-remove(soft-mute) */
477
+ onMuteParticipant,
478
+ /* @conditional-compile-remove(soft-mute) */
479
+ onMuteAllRemoteParticipants
444
480
  };
445
481
  });
446
482
  //# sourceMappingURL=createCommonHandlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createCommonHandlers.js","sourceRoot":"","sources":["../../../../../preprocess-dist/calling-component-bindings/src/handlers/createCommonHandlers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { AudioDeviceInfo, Call, LocalVideoStream, StartCallOptions, VideoDeviceInfo, BackgroundBlurEffect, BackgroundReplacementEffect, BackgroundBlurConfig, BackgroundReplacementConfig } from '@azure/communication-calling';\nimport { CallSurvey, CallSurveyResponse } from '@azure/communication-calling';\nimport { DtmfTone } from '@azure/communication-calling';\n/* @conditional-compile-remove(teams-identity-support) */\nimport { TeamsCall } from '@azure/communication-calling';\nimport { toFlatCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { _toCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { CreateViewResult, StatefulCallClient, StatefulDeviceManager } from '@internal/calling-stateful-client';\nimport memoizeOne from 'memoize-one';\nimport { CreateVideoStreamViewResult, VideoStreamOptions } from '@internal/react-components';\nimport { disposeAllLocalPreviewViews, _isInCall, _isInLobbyOrConnecting, _isPreviewOn } from '../utils/callUtils';\nimport { CommunicationIdentifier } from '@azure/communication-common';\nimport { Features } from '@azure/communication-calling';\nimport { TeamsCaptions } from '@azure/communication-calling';\nimport { Reaction } from '@azure/communication-calling';\nimport { _ComponentCallingHandlers } from './createHandlers';\n\n/**\n * Object containing all the handlers required for calling components.\n *\n * Calling related components from this package are able to pick out relevant handlers from this object.\n * See {@link useHandlers} and {@link usePropsFor}.\n *\n * @public\n */\nexport interface CommonCallingHandlers {\n onStartLocalVideo: () => Promise<void>;\n onToggleCamera: (options?: VideoStreamOptions) => Promise<void>;\n onSelectMicrophone: (device: AudioDeviceInfo) => Promise<void>;\n onSelectSpeaker: (device: AudioDeviceInfo) => Promise<void>;\n onSelectCamera: (device: VideoDeviceInfo, options?: VideoStreamOptions) => Promise<void>;\n onToggleMicrophone: () => Promise<void>;\n onStartScreenShare: () => Promise<void>;\n onStopScreenShare: () => Promise<void>;\n onToggleScreenShare: () => Promise<void>;\n onHangUp: (forEveryone?: boolean) => Promise<void>;\n onRaiseHand: () => Promise<void>;\n onLowerHand: () => Promise<void>;\n onToggleRaiseHand: () => Promise<void>;\n onReactionClick: (reaction: Reaction) => Promise<void>;\n onCreateLocalStreamView: (options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;\n onCreateRemoteStreamView: (userId: string, options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;\n /**\n * @deprecated use {@link onDisposeRemoteVideoStreamView} and {@link onDisposeRemoteScreenShareStreamView} instead.\n */\n onDisposeRemoteStreamView: (userId: string) => Promise<void>;\n onDisposeLocalStreamView: () => Promise<void>;\n onDisposeRemoteVideoStreamView: (userId: string) => Promise<void>;\n onDisposeRemoteScreenShareStreamView: (userId: string) => Promise<void>;\n onSendDtmfTone: (dtmfTone: DtmfTone) => Promise<void>;\n onRemoveParticipant(userId: string): Promise<void>;\n onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => void;\n onRemoveVideoBackgroundEffects: () => Promise<void>;\n onBlurVideoBackground: (backgroundBlurConfig?: BackgroundBlurConfig) => Promise<void>;\n onReplaceVideoBackground: (backgroundReplacementConfig: BackgroundReplacementConfig) => Promise<void>;\n onStartCaptions: (options?: CaptionsOptions) => Promise<void>;\n onStopCaptions: () => Promise<void>;\n onSetSpokenLanguage: (language: string) => Promise<void>;\n onSetCaptionLanguage: (language: string) => Promise<void>;\n onSubmitSurvey(survey: CallSurvey): Promise<CallSurveyResponse | undefined>;\n onStartSpotlight: (userIds?: string[]) => Promise<void>;\n onStopSpotlight: (userIds?: string[]) => Promise<void>;\n onStopAllSpotlight: () => Promise<void>;\n}\n\n/**\n * options bag to start captions\n *\n * @public\n */\nexport type CaptionsOptions = {\n spokenLanguage: string;\n};\n\n/**\n * @private\n */\nexport const areStreamsEqual = (prevStream: LocalVideoStream, newStream: LocalVideoStream): boolean => {\n return !!prevStream && !!newStream && prevStream.source.id === newStream.source.id;\n};\n\n/**\n * Dependency type to be injected for video background effects\n *\n * @public\n */\nexport type VideoBackgroundEffectsDependency = {\n createBackgroundBlurEffect: (config?: BackgroundBlurConfig) => BackgroundBlurEffect;\n createBackgroundReplacementEffect: (config: BackgroundReplacementConfig) => BackgroundReplacementEffect;\n};\n\n/**\n * Create the common implementation of {@link CallingHandlers} for all types of Call\n *\n * @private\n */\nexport const createDefaultCommonCallingHandlers = memoizeOne((callClient: StatefulCallClient, deviceManager: StatefulDeviceManager | undefined, call: Call | /* @conditional-compile-remove(teams-identity-support) */TeamsCall | undefined, options?: {\n onResolveVideoBackgroundEffectsDependency?: () => Promise<VideoBackgroundEffectsDependency>;\n}): CommonCallingHandlers & Partial<_ComponentCallingHandlers> => {\n const onStartLocalVideo = async (): Promise<void> => {\n // Before the call object creates a stream, dispose of any local preview streams.\n // @TODO: is there any way to parent the unparented view to the call object instead\n // of disposing and creating a new stream?\n await disposeAllLocalPreviewViews(callClient);\n const callId = call?.id;\n let videoDeviceInfo = callClient.getState().deviceManager.selectedCamera;\n if (!videoDeviceInfo) {\n const cameras = await deviceManager?.getCameras();\n videoDeviceInfo = cameras && cameras.length > 0 ? cameras[0] : undefined;\n videoDeviceInfo && deviceManager?.selectCamera(videoDeviceInfo);\n }\n if (!callId || !videoDeviceInfo) {\n return;\n }\n const stream = new LocalVideoStream(videoDeviceInfo);\n if (call && !call.localVideoStreams.find(s => areStreamsEqual(s, stream))) {\n await call.startVideo(stream);\n }\n };\n const onStopLocalVideo = async (stream: LocalVideoStream): Promise<void> => {\n const callId = call?.id;\n if (!callId) {\n return;\n }\n if (call && call.localVideoStreams.find(s => areStreamsEqual(s, stream))) {\n await call.stopVideo(stream);\n }\n };\n const onToggleCamera = async (options?: VideoStreamOptions): Promise<void> => {\n const previewOn = _isPreviewOn(callClient.getState().deviceManager);\n\n // the disposal of the unparented views is to workaround: https://skype.visualstudio.com/SPOOL/_workitems/edit/3030558.\n // The root cause of the issue is caused by never transitioning the unparented view to the\n // call object when going from configuration page (disconnected call state) to connecting.\n //\n // Currently the only time the local video stream is moved from unparented view to the call\n // object is when we transition from connecting -> call state. If the camera was on,\n // inside the MediaGallery we trigger toggleCamera. This triggers onStartLocalVideo which\n // destroys the unparentedView and creates a new stream in the call - so all looks well.\n //\n // However, if someone turns off their camera during the lobbyOrConnecting screen, the\n // call.localVideoStreams will be empty (as the stream is currently stored in the unparented\n // views and was never transitioned to the call object) and thus we incorrectly try to create\n // a new video stream for the call object, instead of only stopping the unparented view.\n //\n // The correct fix for this is to ensure that callAgent.onStartCall is called with the\n // localvideostream as a videoOption. That will mean call.onLocalVideoStreamsUpdated will\n // be triggered when the call is in connecting state, which we can then transition the\n // local video stream to the stateful call client and get into a clean state.\n\n if (call && (_isInCall(call.state) || _isInLobbyOrConnecting(call.state))) {\n const stream = call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video');\n const unparentedViews = callClient.getState().deviceManager.unparentedViews;\n if (stream || unparentedViews.length > 0) {\n unparentedViews && (await unparentedViews.forEach(view => view.mediaStreamType === 'Video' && callClient.disposeView(undefined, undefined, view)));\n stream && (await onStopLocalVideo(stream));\n } else {\n await onStartLocalVideo();\n }\n } else {\n /**\n * This will create a unparented view to be used on the configuration page and the connecting screen\n *\n * If the device that the stream will come from is not on from permissions checks, then it will take time\n * to create the stream since device is off. If we are turn the camera on immedietly on the configuration page we see it is\n * fast but that is because the device is already primed to return a stream.\n *\n * On the connecting page the device has already turned off and the connecting window is so small we do not see the resulting\n * unparented view from the code below.\n */\n const selectedCamera = callClient.getState().deviceManager.selectedCamera;\n if (selectedCamera) {\n if (previewOn) {\n await onDisposeLocalStreamView();\n } else {\n await callClient.createView(undefined, undefined, {\n source: selectedCamera,\n mediaStreamType: 'Video'\n }, options);\n }\n }\n }\n };\n const onSelectMicrophone = async (device: AudioDeviceInfo): Promise<void> => {\n if (!deviceManager) {\n return;\n }\n return deviceManager.selectMicrophone(device);\n };\n const onSelectSpeaker = async (device: AudioDeviceInfo): Promise<void> => {\n if (!deviceManager) {\n return;\n }\n return deviceManager.selectSpeaker(device);\n };\n const onSelectCamera = async (device: VideoDeviceInfo, options?: VideoStreamOptions): Promise<void> => {\n if (!deviceManager) {\n return;\n }\n if (call && _isInCall(call.state)) {\n deviceManager.selectCamera(device);\n const stream = call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video');\n await stream?.switchSource(device);\n\n /// TODO: TEMPORARY SOLUTION\n /// The Calling SDK needs to wait until the stream is ready before resolving the switchSource promise.\n /// This is a temporary solution to wait for the stream to be ready before resolving the promise.\n /// This allows the onSelectCamera to be throttled to prevent the streams from getting in to a frozen state\n /// if the user switches cameras too rapidly.\n /// This is to be removed once the Calling SDK has issued a fix.\n await stream?.getMediaStream();\n } else {\n const previewOn = _isPreviewOn(callClient.getState().deviceManager);\n if (!previewOn) {\n deviceManager.selectCamera(device);\n return;\n }\n await onDisposeLocalStreamView();\n deviceManager.selectCamera(device);\n await callClient.createView(undefined, undefined, {\n source: device,\n mediaStreamType: 'Video'\n }, options);\n }\n };\n const onRaiseHand = async (): Promise<void> => await call?.feature(Features.RaiseHand)?.raiseHand();\n const onLowerHand = async (): Promise<void> => await call?.feature(Features.RaiseHand)?.lowerHand();\n const onToggleRaiseHand = async (): Promise<void> => {\n const raiseHandFeature = call?.feature(Features.RaiseHand);\n const localUserId = callClient.getState().userId;\n const isLocalRaisedHand = raiseHandFeature?.getRaisedHands().find(publishedState => toFlatCommunicationIdentifier(publishedState.identifier) === toFlatCommunicationIdentifier(localUserId));\n if (isLocalRaisedHand) {\n await raiseHandFeature?.lowerHand();\n } else {\n await raiseHandFeature?.raiseHand();\n }\n };\n const onReactionClick = async (reaction: Reaction): Promise<void> => {\n if (reaction === 'like' || reaction === 'applause' || reaction === 'heart' || reaction === 'laugh' || reaction === 'surprised') {\n await call?.feature(Features.Reaction)?.sendReaction({\n reactionType: reaction\n });\n } else {\n console.warn(`Can not recognize ${reaction} as meeting reaction`);\n }\n return;\n };\n const onToggleMicrophone = async (): Promise<void> => {\n if (!call || !(_isInCall(call.state) || _isInLobbyOrConnecting(call.state))) {\n throw new Error(`Please invoke onToggleMicrophone after call is started`);\n }\n return call.isMuted ? await call.unmute() : await call.mute();\n };\n const onStartScreenShare = async (): Promise<void> => await call?.startScreenSharing();\n const onStopScreenShare = async (): Promise<void> => await call?.stopScreenSharing();\n const onToggleScreenShare = async (): Promise<void> => call?.isScreenSharingOn ? await onStopScreenShare() : await onStartScreenShare();\n const onHangUp = async (forEveryone?: boolean): Promise<void> => await call?.hangUp({\n forEveryone: forEveryone === true ? true : false\n });\n const onCreateLocalStreamView = async (options = ({\n scalingMode: 'Crop',\n isMirrored: true\n } as VideoStreamOptions)): Promise<void | CreateVideoStreamViewResult> => {\n if (!call || call.localVideoStreams.length === 0) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n return;\n }\n const localStream = callState.localVideoStreams.find(item => item.mediaStreamType === 'Video');\n if (!localStream) {\n return;\n }\n const {\n view\n } = (await callClient.createView(call.id, undefined, localStream, options)) ?? {};\n return view ? {\n view\n } : undefined;\n };\n const onCreateRemoteStreamView = async (userId: string, options = ({\n scalingMode: 'Crop'\n } as VideoStreamOptions)): Promise<void | CreateVideoStreamViewResult> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);\n if (!participant || !participant.videoStreams) {\n return;\n }\n\n /**\n * There is a bug from the calling sdk where if a user leaves and rejoins immediately\n * it adds 2 more potential streams this remote participant can use. The old 2 streams\n * still show as available and that is how we got a frozen stream in this case. The stopgap\n * until streams accurately reflect their availability is to always prioritize the latest streams of a certain type\n * e.g findLast instead of find\n */\n // Find the first available stream, if there is none, then get the first stream\n const remoteVideoStream = Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'Video' && i.isAvailable) || Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'Video');\n const screenShareStream = Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'ScreenSharing' && i.isAvailable) || Object.values(participant.videoStreams).findLast(i => i.mediaStreamType === 'ScreenSharing');\n let createViewResult: CreateViewResult | undefined = undefined;\n if (remoteVideoStream && remoteVideoStream.isAvailable && !remoteVideoStream.view) {\n createViewResult = await callClient.createView(call.id, participant.identifier, remoteVideoStream, options);\n }\n if (screenShareStream && screenShareStream.isAvailable && !screenShareStream.view) {\n // Hardcoded `scalingMode` since it is highly unlikely that CONTOSO would ever want to use a different scaling mode for screenshare.\n // Using `Crop` would crop the contents of screenshare and `Stretch` would warp it.\n // `Fit` is the only mode that maintains the integrity of the screen being shared.\n createViewResult = await callClient.createView(call.id, participant.identifier, screenShareStream, {\n scalingMode: 'Fit'\n });\n }\n return createViewResult?.view ? {\n view: createViewResult?.view\n } : undefined;\n };\n const onDisposeRemoteStreamView = async (userId: string): Promise<void> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);\n if (!participant || !participant.videoStreams) {\n return;\n }\n const remoteVideoStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'Video');\n const screenShareStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'ScreenSharing');\n if (remoteVideoStream && remoteVideoStream.view) {\n callClient.disposeView(call.id, participant.identifier, remoteVideoStream);\n }\n if (screenShareStream && screenShareStream.view) {\n callClient.disposeView(call.id, participant.identifier, screenShareStream);\n }\n };\n const onDisposeRemoteVideoStreamView = async (userId: string): Promise<void> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);\n if (!participant || !participant.videoStreams) {\n return;\n }\n const remoteVideoStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'Video');\n if (remoteVideoStream && remoteVideoStream.view) {\n callClient.disposeView(call.id, participant.identifier, remoteVideoStream);\n }\n };\n const onDisposeRemoteScreenShareStreamView = async (userId: string): Promise<void> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n const participant = Object.values(callState.remoteParticipants).find(participant => toFlatCommunicationIdentifier(participant.identifier) === userId);\n if (!participant || !participant.videoStreams) {\n return;\n }\n const screenShareStream = Object.values(participant.videoStreams).find(i => i.mediaStreamType === 'ScreenSharing');\n if (screenShareStream && screenShareStream.view) {\n callClient.disposeView(call.id, participant.identifier, screenShareStream);\n }\n };\n const onDisposeLocalStreamView = async (): Promise<void> => {\n // If the user is currently in a call, dispose of the local stream view attached to that call.\n const callState = call && callClient.getState().calls[call.id];\n const localStream = callState?.localVideoStreams.find(item => item.mediaStreamType === 'Video');\n if (call && callState && localStream) {\n callClient.disposeView(call.id, undefined, localStream);\n }\n\n // If the user is not in a call we currently assume any unparented view is a LocalPreview and stop all\n // since those are only used for LocalPreview currently.\n // TODO: we need to remember which LocalVideoStream was used for LocalPreview and dispose that one.\n await disposeAllLocalPreviewViews(callClient);\n };\n const onSendDtmfTone = async (dtmfTone: DtmfTone): Promise<void> => await call?.sendDtmf(dtmfTone);\n const notImplemented = (): any => {\n throw new Error('Not implemented, cannot call a method from an abstract object');\n };\n const onRemoveVideoBackgroundEffects = async (): Promise<void> => {\n const stream = call?.localVideoStreams.find(stream => stream.mediaStreamType === 'Video') || deviceManager?.getUnparentedVideoStreams().find(stream => stream.mediaStreamType === 'Video');\n if (stream) {\n if (!options?.onResolveVideoBackgroundEffectsDependency) {\n throw new Error(`Video background effects dependency not resolved`);\n } else {\n return stream.feature(Features.VideoEffects).stopEffects();\n }\n }\n };\n const onBlurVideoBackground = async (backgroundBlurConfig?: BackgroundBlurConfig): Promise<void> => {\n const stream = call?.localVideoStreams.find(stream => stream.mediaStreamType === 'Video') || deviceManager?.getUnparentedVideoStreams().find(stream => stream.mediaStreamType === 'Video');\n if (stream) {\n if (!options?.onResolveVideoBackgroundEffectsDependency) {\n throw new Error(`Video background effects dependency not resolved`);\n }\n const createEffect = options?.onResolveVideoBackgroundEffectsDependency && (await options.onResolveVideoBackgroundEffectsDependency())?.createBackgroundBlurEffect;\n return createEffect && stream.feature(Features.VideoEffects).startEffects(createEffect(backgroundBlurConfig));\n }\n };\n const onReplaceVideoBackground = async (backgroundReplacementConfig: BackgroundReplacementConfig): Promise<void> => {\n const stream = call?.localVideoStreams.find(stream => stream.mediaStreamType === 'Video') || deviceManager?.getUnparentedVideoStreams().find(stream => stream.mediaStreamType === 'Video');\n if (stream) {\n if (!options?.onResolveVideoBackgroundEffectsDependency) {\n throw new Error(`Video background effects dependency not resolved`);\n }\n const createEffect = options?.onResolveVideoBackgroundEffectsDependency && (await options.onResolveVideoBackgroundEffectsDependency())?.createBackgroundReplacementEffect;\n return createEffect && stream.feature(Features.VideoEffects).startEffects(createEffect(backgroundReplacementConfig));\n }\n };\n const onStartCaptions = async (options?: CaptionsOptions): Promise<void> => {\n const captionsFeature = call?.feature(Features.Captions).captions;\n await captionsFeature?.startCaptions(options);\n };\n const onStopCaptions = async (): Promise<void> => {\n const captionsFeature = call?.feature(Features.Captions).captions;\n await captionsFeature?.stopCaptions();\n };\n const onSetSpokenLanguage = async (language: string): Promise<void> => {\n const captionsFeature = call?.feature(Features.Captions).captions;\n await captionsFeature?.setSpokenLanguage(language);\n };\n const onSetCaptionLanguage = async (language: string): Promise<void> => {\n const captionsFeature = (call?.feature(Features.Captions).captions as TeamsCaptions);\n await captionsFeature.setCaptionLanguage(language);\n };\n const onSubmitSurvey = async (survey: CallSurvey): Promise<CallSurveyResponse | undefined> => await call?.feature(Features.CallSurvey).submitSurvey(survey);\n const onStartSpotlight = async (userIds?: string[]): Promise<void> => {\n const participants = userIds?.map(userId => _toCommunicationIdentifier(userId));\n await call?.feature(Features.Spotlight).startSpotlight(participants);\n };\n const onStopSpotlight = async (userIds?: string[]): Promise<void> => {\n const participants = userIds?.map(userId => _toCommunicationIdentifier(userId));\n await call?.feature(Features.Spotlight).stopSpotlight(participants);\n };\n const onStopAllSpotlight = async (): Promise<void> => {\n await call?.feature(Features.Spotlight).stopAllSpotlight();\n };\n const canStartSpotlight = call?.feature(Features.Capabilities).capabilities.spotlightParticipant.isPresent;\n const canRemoveSpotlight = call?.feature(Features.Capabilities).capabilities.removeParticipantsSpotlight.isPresent;\n const onStartLocalSpotlight = canStartSpotlight ? async (): Promise<void> => {\n await call?.feature(Features.Spotlight).startSpotlight();\n } : undefined;\n const onStopLocalSpotlight = async (): Promise<void> => {\n await call?.feature(Features.Spotlight).stopSpotlight();\n };\n const onStartRemoteSpotlight = canStartSpotlight ? async (userIds?: string[]): Promise<void> => {\n const participants = userIds?.map(userId => _toCommunicationIdentifier(userId));\n await call?.feature(Features.Spotlight).startSpotlight(participants);\n } : undefined;\n const onStopRemoteSpotlight = canRemoveSpotlight ? async (userIds?: string[]): Promise<void> => {\n const participants = userIds?.map(userId => _toCommunicationIdentifier(userId));\n await call?.feature(Features.Spotlight).stopSpotlight(participants);\n } : undefined;\n return {\n onHangUp,\n onSelectCamera,\n onSelectMicrophone,\n onSelectSpeaker,\n onStartScreenShare,\n onStopScreenShare,\n onToggleCamera,\n onToggleMicrophone,\n onToggleScreenShare,\n onCreateLocalStreamView,\n onCreateRemoteStreamView,\n onStartLocalVideo,\n onDisposeRemoteStreamView,\n onDisposeLocalStreamView,\n onDisposeRemoteScreenShareStreamView,\n onDisposeRemoteVideoStreamView,\n onRaiseHand,\n onLowerHand,\n onToggleRaiseHand,\n onReactionClick: onReactionClick,\n onRemoveParticipant: notImplemented,\n onStartCall: notImplemented,\n onSendDtmfTone,\n onRemoveVideoBackgroundEffects,\n onBlurVideoBackground,\n onReplaceVideoBackground,\n onStartCaptions,\n onStopCaptions,\n onSetCaptionLanguage,\n onSetSpokenLanguage,\n onSubmitSurvey,\n onStartSpotlight,\n onStopSpotlight,\n onStopAllSpotlight,\n onStartLocalSpotlight,\n onStopLocalSpotlight,\n onStartRemoteSpotlight,\n onStopRemoteSpotlight\n };\n});"]}
1
+ {"version":3,"file":"createCommonHandlers.js","sourceRoot":"","sources":["../../../../../../calling-component-bindings/src/handlers/createCommonHandlers.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n AudioDeviceInfo,\n Call,\n LocalVideoStream,\n StartCallOptions,\n VideoDeviceInfo,\n BackgroundBlurEffect,\n BackgroundReplacementEffect,\n BackgroundBlurConfig,\n BackgroundReplacementConfig\n} from '@azure/communication-calling';\n/* @conditional-compile-remove(soft-mute) */\nimport { RemoteParticipant } from '@azure/communication-calling';\nimport { CallSurvey, CallSurveyResponse } from '@azure/communication-calling';\nimport { DtmfTone } from '@azure/communication-calling';\n/* @conditional-compile-remove(PSTN-calls) */\nimport { AddPhoneNumberOptions } from '@azure/communication-calling';\n/* @conditional-compile-remove(teams-identity-support) */\nimport { TeamsCall } from '@azure/communication-calling';\n/* @conditional-compile-remove(call-readiness) */\nimport { PermissionConstraints } from '@azure/communication-calling';\nimport { toFlatCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { _toCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { CreateViewResult, StatefulCallClient, StatefulDeviceManager } from '@internal/calling-stateful-client';\nimport memoizeOne from 'memoize-one';\nimport { CreateVideoStreamViewResult, VideoStreamOptions } from '@internal/react-components';\nimport { disposeAllLocalPreviewViews, _isInCall, _isInLobbyOrConnecting, _isPreviewOn } from '../utils/callUtils';\n/* @conditional-compile-remove(PSTN-calls) */\nimport { CommunicationUserIdentifier, PhoneNumberIdentifier } from '@azure/communication-common';\nimport { CommunicationIdentifier } from '@azure/communication-common';\nimport { Features } from '@azure/communication-calling';\nimport { TeamsCaptions } from '@azure/communication-calling';\nimport { Reaction } from '@azure/communication-calling';\nimport { _ComponentCallingHandlers } from './createHandlers';\n\n/**\n * Object containing all the handlers required for calling components.\n *\n * Calling related components from this package are able to pick out relevant handlers from this object.\n * See {@link useHandlers} and {@link usePropsFor}.\n *\n * @public\n */\nexport interface CommonCallingHandlers {\n onStartLocalVideo: () => Promise<void>;\n onToggleCamera: (options?: VideoStreamOptions) => Promise<void>;\n onSelectMicrophone: (device: AudioDeviceInfo) => Promise<void>;\n onSelectSpeaker: (device: AudioDeviceInfo) => Promise<void>;\n onSelectCamera: (device: VideoDeviceInfo, options?: VideoStreamOptions) => Promise<void>;\n onToggleMicrophone: () => Promise<void>;\n onStartScreenShare: () => Promise<void>;\n onStopScreenShare: () => Promise<void>;\n onToggleScreenShare: () => Promise<void>;\n onHangUp: (forEveryone?: boolean) => Promise<void>;\n onRaiseHand: () => Promise<void>;\n onLowerHand: () => Promise<void>;\n onToggleRaiseHand: () => Promise<void>;\n onReactionClick: (reaction: Reaction) => Promise<void>;\n /* @conditional-compile-remove(PSTN-calls) */\n onToggleHold: () => Promise<void>;\n /* @conditional-compile-remove(PSTN-calls) */\n onAddParticipant(participant: CommunicationUserIdentifier): Promise<void>;\n /* @conditional-compile-remove(PSTN-calls) */\n onAddParticipant(participant: PhoneNumberIdentifier, options: AddPhoneNumberOptions): Promise<void>;\n onCreateLocalStreamView: (options?: VideoStreamOptions) => Promise<void | CreateVideoStreamViewResult>;\n onCreateRemoteStreamView: (\n userId: string,\n options?: VideoStreamOptions\n ) => Promise<void | CreateVideoStreamViewResult>;\n /**\n * @deprecated use {@link onDisposeRemoteVideoStreamView} and {@link onDisposeRemoteScreenShareStreamView} instead.\n */\n onDisposeRemoteStreamView: (userId: string) => Promise<void>;\n onDisposeLocalStreamView: () => Promise<void>;\n onDisposeRemoteVideoStreamView: (userId: string) => Promise<void>;\n onDisposeRemoteScreenShareStreamView: (userId: string) => Promise<void>;\n onSendDtmfTone: (dtmfTone: DtmfTone) => Promise<void>;\n onRemoveParticipant(userId: string): Promise<void>;\n /* @conditional-compile-remove(PSTN-calls) */\n onRemoveParticipant(participant: CommunicationIdentifier): Promise<void>;\n /* @conditional-compile-remove(call-readiness) */\n askDevicePermission: (constrain: PermissionConstraints) => Promise<void>;\n onStartCall: (participants: CommunicationIdentifier[], options?: StartCallOptions) => void;\n\n onRemoveVideoBackgroundEffects: () => Promise<void>;\n\n onBlurVideoBackground: (backgroundBlurConfig?: BackgroundBlurConfig) => Promise<void>;\n\n onReplaceVideoBackground: (backgroundReplacementConfig: BackgroundReplacementConfig) => Promise<void>;\n onStartCaptions: (options?: CaptionsOptions) => Promise<void>;\n onStopCaptions: () => Promise<void>;\n onSetSpokenLanguage: (language: string) => Promise<void>;\n onSetCaptionLanguage: (language: string) => Promise<void>;\n\n onSubmitSurvey(survey: CallSurvey): Promise<CallSurveyResponse | undefined>;\n onStartSpotlight: (userIds?: string[]) => Promise<void>;\n onStopSpotlight: (userIds?: string[]) => Promise<void>;\n onStopAllSpotlight: () => Promise<void>;\n /* @conditional-compile-remove(soft-mute) */\n onMuteParticipant: (userId: string) => Promise<void>;\n /* @conditional-compile-remove(soft-mute) */\n onMuteAllRemoteParticipants: () => Promise<void>;\n}\n\n/**\n * options bag to start captions\n *\n * @public\n */\nexport type CaptionsOptions = {\n spokenLanguage: string;\n};\n\n/**\n * @private\n */\nexport const areStreamsEqual = (prevStream: LocalVideoStream, newStream: LocalVideoStream): boolean => {\n return !!prevStream && !!newStream && prevStream.source.id === newStream.source.id;\n};\n\n/**\n * Dependency type to be injected for video background effects\n *\n * @public\n */\nexport type VideoBackgroundEffectsDependency = {\n createBackgroundBlurEffect: (config?: BackgroundBlurConfig) => BackgroundBlurEffect;\n createBackgroundReplacementEffect: (config: BackgroundReplacementConfig) => BackgroundReplacementEffect;\n};\n\n/**\n * Create the common implementation of {@link CallingHandlers} for all types of Call\n *\n * @private\n */\nexport const createDefaultCommonCallingHandlers = memoizeOne(\n (\n callClient: StatefulCallClient,\n deviceManager: StatefulDeviceManager | undefined,\n call: Call | /* @conditional-compile-remove(teams-identity-support) */ TeamsCall | undefined,\n options?: {\n onResolveVideoBackgroundEffectsDependency?: () => Promise<VideoBackgroundEffectsDependency>;\n }\n ): CommonCallingHandlers & Partial<_ComponentCallingHandlers> => {\n const onStartLocalVideo = async (): Promise<void> => {\n // Before the call object creates a stream, dispose of any local preview streams.\n // @TODO: is there any way to parent the unparented view to the call object instead\n // of disposing and creating a new stream?\n await disposeAllLocalPreviewViews(callClient);\n\n const callId = call?.id;\n let videoDeviceInfo = callClient.getState().deviceManager.selectedCamera;\n if (!videoDeviceInfo) {\n const cameras = await deviceManager?.getCameras();\n videoDeviceInfo = cameras && cameras.length > 0 ? cameras[0] : undefined;\n videoDeviceInfo && deviceManager?.selectCamera(videoDeviceInfo);\n }\n if (!callId || !videoDeviceInfo) {\n return;\n }\n const stream = new LocalVideoStream(videoDeviceInfo);\n if (call && !call.localVideoStreams.find((s) => areStreamsEqual(s, stream))) {\n await call.startVideo(stream);\n }\n };\n\n const onStopLocalVideo = async (stream: LocalVideoStream): Promise<void> => {\n const callId = call?.id;\n if (!callId) {\n return;\n }\n if (call && call.localVideoStreams.find((s) => areStreamsEqual(s, stream))) {\n await call.stopVideo(stream);\n }\n };\n\n const onToggleCamera = async (options?: VideoStreamOptions): Promise<void> => {\n const previewOn = _isPreviewOn(callClient.getState().deviceManager);\n\n // the disposal of the unparented views is to workaround: https://skype.visualstudio.com/SPOOL/_workitems/edit/3030558.\n // The root cause of the issue is caused by never transitioning the unparented view to the\n // call object when going from configuration page (disconnected call state) to connecting.\n //\n // Currently the only time the local video stream is moved from unparented view to the call\n // object is when we transition from connecting -> call state. If the camera was on,\n // inside the MediaGallery we trigger toggleCamera. This triggers onStartLocalVideo which\n // destroys the unparentedView and creates a new stream in the call - so all looks well.\n //\n // However, if someone turns off their camera during the lobbyOrConnecting screen, the\n // call.localVideoStreams will be empty (as the stream is currently stored in the unparented\n // views and was never transitioned to the call object) and thus we incorrectly try to create\n // a new video stream for the call object, instead of only stopping the unparented view.\n //\n // The correct fix for this is to ensure that callAgent.onStartCall is called with the\n // localvideostream as a videoOption. That will mean call.onLocalVideoStreamsUpdated will\n // be triggered when the call is in connecting state, which we can then transition the\n // local video stream to the stateful call client and get into a clean state.\n\n if (call && (_isInCall(call.state) || _isInLobbyOrConnecting(call.state))) {\n const stream = call.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video');\n const unparentedViews = callClient.getState().deviceManager.unparentedViews;\n if (stream || unparentedViews.length > 0) {\n unparentedViews &&\n (await unparentedViews.forEach(\n (view) => view.mediaStreamType === 'Video' && callClient.disposeView(undefined, undefined, view)\n ));\n stream && (await onStopLocalVideo(stream));\n } else {\n await onStartLocalVideo();\n }\n } else {\n /**\n * This will create a unparented view to be used on the configuration page and the connecting screen\n *\n * If the device that the stream will come from is not on from permissions checks, then it will take time\n * to create the stream since device is off. If we are turn the camera on immedietly on the configuration page we see it is\n * fast but that is because the device is already primed to return a stream.\n *\n * On the connecting page the device has already turned off and the connecting window is so small we do not see the resulting\n * unparented view from the code below.\n */\n const selectedCamera = callClient.getState().deviceManager.selectedCamera;\n if (selectedCamera) {\n if (previewOn) {\n await onDisposeLocalStreamView();\n } else {\n await callClient.createView(\n undefined,\n undefined,\n {\n source: selectedCamera,\n mediaStreamType: 'Video'\n },\n options\n );\n }\n }\n }\n };\n\n const onSelectMicrophone = async (device: AudioDeviceInfo): Promise<void> => {\n if (!deviceManager) {\n return;\n }\n return deviceManager.selectMicrophone(device);\n };\n\n const onSelectSpeaker = async (device: AudioDeviceInfo): Promise<void> => {\n if (!deviceManager) {\n return;\n }\n return deviceManager.selectSpeaker(device);\n };\n\n const onSelectCamera = async (device: VideoDeviceInfo, options?: VideoStreamOptions): Promise<void> => {\n if (!deviceManager) {\n return;\n }\n if (call && _isInCall(call.state)) {\n deviceManager.selectCamera(device);\n const stream = call.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video');\n await stream?.switchSource(device);\n\n /// TODO: TEMPORARY SOLUTION\n /// The Calling SDK needs to wait until the stream is ready before resolving the switchSource promise.\n /// This is a temporary solution to wait for the stream to be ready before resolving the promise.\n /// This allows the onSelectCamera to be throttled to prevent the streams from getting in to a frozen state\n /// if the user switches cameras too rapidly.\n /// This is to be removed once the Calling SDK has issued a fix.\n await stream?.getMediaStream();\n } else {\n const previewOn = _isPreviewOn(callClient.getState().deviceManager);\n\n if (!previewOn) {\n deviceManager.selectCamera(device);\n return;\n }\n\n await onDisposeLocalStreamView();\n\n deviceManager.selectCamera(device);\n await callClient.createView(\n undefined,\n undefined,\n {\n source: device,\n mediaStreamType: 'Video'\n },\n options\n );\n }\n };\n\n const onRaiseHand = async (): Promise<void> => await call?.feature(Features.RaiseHand)?.raiseHand();\n\n const onLowerHand = async (): Promise<void> => await call?.feature(Features.RaiseHand)?.lowerHand();\n\n const onToggleRaiseHand = async (): Promise<void> => {\n const raiseHandFeature = call?.feature(Features.RaiseHand);\n const localUserId = callClient.getState().userId;\n const isLocalRaisedHand = raiseHandFeature\n ?.getRaisedHands()\n .find(\n (publishedState) =>\n toFlatCommunicationIdentifier(publishedState.identifier) === toFlatCommunicationIdentifier(localUserId)\n );\n if (isLocalRaisedHand) {\n await raiseHandFeature?.lowerHand();\n } else {\n await raiseHandFeature?.raiseHand();\n }\n };\n\n const onReactionClick = async (reaction: Reaction): Promise<void> => {\n if (\n reaction === 'like' ||\n reaction === 'applause' ||\n reaction === 'heart' ||\n reaction === 'laugh' ||\n reaction === 'surprised'\n ) {\n await call?.feature(Features.Reaction)?.sendReaction({ reactionType: reaction });\n } else {\n console.warn(`Can not recognize ${reaction} as meeting reaction`);\n }\n return;\n };\n\n const onToggleMicrophone = async (): Promise<void> => {\n if (!call || !(_isInCall(call.state) || _isInLobbyOrConnecting(call.state))) {\n throw new Error(`Please invoke onToggleMicrophone after call is started`);\n }\n return call.isMuted ? await call.unmute() : await call.mute();\n };\n\n const onStartScreenShare = async (): Promise<void> => await call?.startScreenSharing();\n\n const onStopScreenShare = async (): Promise<void> => await call?.stopScreenSharing();\n\n const onToggleScreenShare = async (): Promise<void> =>\n call?.isScreenSharingOn ? await onStopScreenShare() : await onStartScreenShare();\n\n const onHangUp = async (forEveryone?: boolean): Promise<void> =>\n await call?.hangUp({ forEveryone: forEveryone === true ? true : false });\n\n /* @conditional-compile-remove(PSTN-calls) */\n const onToggleHold = async (): Promise<void> =>\n call?.state === 'LocalHold' ? await call?.resume() : await call?.hold();\n\n const onCreateLocalStreamView = async (\n options = { scalingMode: 'Crop', isMirrored: true } as VideoStreamOptions\n ): Promise<void | CreateVideoStreamViewResult> => {\n if (!call || call.localVideoStreams.length === 0) {\n return;\n }\n\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n return;\n }\n\n const localStream = callState.localVideoStreams.find((item) => item.mediaStreamType === 'Video');\n if (!localStream) {\n return;\n }\n\n const { view } = (await callClient.createView(call.id, undefined, localStream, options)) ?? {};\n return view ? { view } : undefined;\n };\n\n const onCreateRemoteStreamView = async (\n userId: string,\n options = { scalingMode: 'Crop' } as VideoStreamOptions\n ): Promise<void | CreateVideoStreamViewResult> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n\n const participant = Object.values(callState.remoteParticipants).find(\n (participant) => toFlatCommunicationIdentifier(participant.identifier) === userId\n );\n\n if (!participant || !participant.videoStreams) {\n return;\n }\n\n /**\n * There is a bug from the calling sdk where if a user leaves and rejoins immediately\n * it adds 2 more potential streams this remote participant can use. The old 2 streams\n * still show as available and that is how we got a frozen stream in this case. The stopgap\n * until streams accurately reflect their availability is to always prioritize the latest streams of a certain type\n * e.g findLast instead of find\n */\n // Find the first available stream, if there is none, then get the first stream\n const remoteVideoStream =\n Object.values(participant.videoStreams).findLast((i) => i.mediaStreamType === 'Video' && i.isAvailable) ||\n Object.values(participant.videoStreams).findLast((i) => i.mediaStreamType === 'Video');\n\n const screenShareStream =\n Object.values(participant.videoStreams).findLast(\n (i) => i.mediaStreamType === 'ScreenSharing' && i.isAvailable\n ) || Object.values(participant.videoStreams).findLast((i) => i.mediaStreamType === 'ScreenSharing');\n\n let createViewResult: CreateViewResult | undefined = undefined;\n if (remoteVideoStream && remoteVideoStream.isAvailable && !remoteVideoStream.view) {\n createViewResult = await callClient.createView(call.id, participant.identifier, remoteVideoStream, options);\n }\n\n if (screenShareStream && screenShareStream.isAvailable && !screenShareStream.view) {\n // Hardcoded `scalingMode` since it is highly unlikely that CONTOSO would ever want to use a different scaling mode for screenshare.\n // Using `Crop` would crop the contents of screenshare and `Stretch` would warp it.\n // `Fit` is the only mode that maintains the integrity of the screen being shared.\n createViewResult = await callClient.createView(call.id, participant.identifier, screenShareStream, {\n scalingMode: 'Fit'\n });\n }\n\n return createViewResult?.view ? { view: createViewResult?.view } : undefined;\n };\n\n const onDisposeRemoteStreamView = async (userId: string): Promise<void> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n\n const participant = Object.values(callState.remoteParticipants).find(\n (participant) => toFlatCommunicationIdentifier(participant.identifier) === userId\n );\n\n if (!participant || !participant.videoStreams) {\n return;\n }\n\n const remoteVideoStream = Object.values(participant.videoStreams).find((i) => i.mediaStreamType === 'Video');\n const screenShareStream = Object.values(participant.videoStreams).find(\n (i) => i.mediaStreamType === 'ScreenSharing'\n );\n\n if (remoteVideoStream && remoteVideoStream.view) {\n callClient.disposeView(call.id, participant.identifier, remoteVideoStream);\n }\n\n if (screenShareStream && screenShareStream.view) {\n callClient.disposeView(call.id, participant.identifier, screenShareStream);\n }\n };\n\n const onDisposeRemoteVideoStreamView = async (userId: string): Promise<void> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n\n const participant = Object.values(callState.remoteParticipants).find(\n (participant) => toFlatCommunicationIdentifier(participant.identifier) === userId\n );\n\n if (!participant || !participant.videoStreams) {\n return;\n }\n\n const remoteVideoStream = Object.values(participant.videoStreams).find((i) => i.mediaStreamType === 'Video');\n\n if (remoteVideoStream && remoteVideoStream.view) {\n callClient.disposeView(call.id, participant.identifier, remoteVideoStream);\n }\n };\n\n const onDisposeRemoteScreenShareStreamView = async (userId: string): Promise<void> => {\n if (!call) {\n return;\n }\n const callState = callClient.getState().calls[call.id];\n if (!callState) {\n throw new Error(`Call Not Found: ${call.id}`);\n }\n const participant = Object.values(callState.remoteParticipants).find(\n (participant) => toFlatCommunicationIdentifier(participant.identifier) === userId\n );\n\n if (!participant || !participant.videoStreams) {\n return;\n }\n const screenShareStream = Object.values(participant.videoStreams).find(\n (i) => i.mediaStreamType === 'ScreenSharing'\n );\n\n if (screenShareStream && screenShareStream.view) {\n callClient.disposeView(call.id, participant.identifier, screenShareStream);\n }\n };\n\n const onDisposeLocalStreamView = async (): Promise<void> => {\n // If the user is currently in a call, dispose of the local stream view attached to that call.\n const callState = call && callClient.getState().calls[call.id];\n const localStream = callState?.localVideoStreams.find((item) => item.mediaStreamType === 'Video');\n if (call && callState && localStream) {\n callClient.disposeView(call.id, undefined, localStream);\n }\n\n // If the user is not in a call we currently assume any unparented view is a LocalPreview and stop all\n // since those are only used for LocalPreview currently.\n // TODO: we need to remember which LocalVideoStream was used for LocalPreview and dispose that one.\n await disposeAllLocalPreviewViews(callClient);\n };\n\n const onSendDtmfTone = async (dtmfTone: DtmfTone): Promise<void> => await call?.sendDtmf(dtmfTone);\n\n const notImplemented = (): any => {\n throw new Error('Not implemented, cannot call a method from an abstract object');\n };\n\n /* @conditional-compile-remove(call-readiness) */\n const askDevicePermission = async (constrain: PermissionConstraints): Promise<void> => {\n if (deviceManager) {\n await deviceManager?.askDevicePermission(constrain);\n }\n };\n\n const onRemoveVideoBackgroundEffects = async (): Promise<void> => {\n const stream =\n call?.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video') ||\n deviceManager?.getUnparentedVideoStreams().find((stream) => stream.mediaStreamType === 'Video');\n if (stream) {\n if (!options?.onResolveVideoBackgroundEffectsDependency) {\n throw new Error(`Video background effects dependency not resolved`);\n } else {\n return stream.feature(Features.VideoEffects).stopEffects();\n }\n }\n };\n\n const onBlurVideoBackground = async (backgroundBlurConfig?: BackgroundBlurConfig): Promise<void> => {\n const stream =\n call?.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video') ||\n deviceManager?.getUnparentedVideoStreams().find((stream) => stream.mediaStreamType === 'Video');\n if (stream) {\n if (!options?.onResolveVideoBackgroundEffectsDependency) {\n throw new Error(`Video background effects dependency not resolved`);\n }\n const createEffect =\n options?.onResolveVideoBackgroundEffectsDependency &&\n (await options.onResolveVideoBackgroundEffectsDependency())?.createBackgroundBlurEffect;\n return createEffect && stream.feature(Features.VideoEffects).startEffects(createEffect(backgroundBlurConfig));\n }\n };\n\n const onReplaceVideoBackground = async (\n backgroundReplacementConfig: BackgroundReplacementConfig\n ): Promise<void> => {\n const stream =\n call?.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video') ||\n deviceManager?.getUnparentedVideoStreams().find((stream) => stream.mediaStreamType === 'Video');\n if (stream) {\n if (!options?.onResolveVideoBackgroundEffectsDependency) {\n throw new Error(`Video background effects dependency not resolved`);\n }\n const createEffect =\n options?.onResolveVideoBackgroundEffectsDependency &&\n (await options.onResolveVideoBackgroundEffectsDependency())?.createBackgroundReplacementEffect;\n return (\n createEffect && stream.feature(Features.VideoEffects).startEffects(createEffect(backgroundReplacementConfig))\n );\n }\n };\n\n const onStartCaptions = async (options?: CaptionsOptions): Promise<void> => {\n const captionsFeature = call?.feature(Features.Captions).captions;\n await captionsFeature?.startCaptions(options);\n };\n const onStopCaptions = async (): Promise<void> => {\n const captionsFeature = call?.feature(Features.Captions).captions;\n await captionsFeature?.stopCaptions();\n };\n const onSetSpokenLanguage = async (language: string): Promise<void> => {\n const captionsFeature = call?.feature(Features.Captions).captions;\n await captionsFeature?.setSpokenLanguage(language);\n };\n const onSetCaptionLanguage = async (language: string): Promise<void> => {\n const captionsFeature = call?.feature(Features.Captions).captions as TeamsCaptions;\n await captionsFeature.setCaptionLanguage(language);\n };\n\n const onSubmitSurvey = async (survey: CallSurvey): Promise<CallSurveyResponse | undefined> =>\n await call?.feature(Features.CallSurvey).submitSurvey(survey);\n const onStartSpotlight = async (userIds?: string[]): Promise<void> => {\n const participants = userIds?.map((userId) => _toCommunicationIdentifier(userId));\n await call?.feature(Features.Spotlight).startSpotlight(participants);\n };\n const onStopSpotlight = async (userIds?: string[]): Promise<void> => {\n const participants = userIds?.map((userId) => _toCommunicationIdentifier(userId));\n await call?.feature(Features.Spotlight).stopSpotlight(participants);\n };\n const onStopAllSpotlight = async (): Promise<void> => {\n await call?.feature(Features.Spotlight).stopAllSpotlight();\n };\n /* @conditional-compile-remove(soft-mute) */\n const onMuteParticipant = async (userId: string): Promise<void> => {\n if (call?.remoteParticipants) {\n call?.remoteParticipants.forEach(async (participant: RemoteParticipant) => {\n // Using toFlatCommunicationIdentifier to convert the CommunicationIdentifier to string\n // as _toCommunicationIdentifier(userId) comparison to participant.identifier did not work for this case\n if (toFlatCommunicationIdentifier(participant.identifier) === userId) {\n await participant.mute();\n }\n });\n }\n };\n /* @conditional-compile-remove(soft-mute) */\n const onMuteAllRemoteParticipants = async (): Promise<void> => {\n call?.muteAllRemoteParticipants();\n };\n const canStartSpotlight = call?.feature(Features.Capabilities).capabilities.spotlightParticipant.isPresent;\n const canRemoveSpotlight = call?.feature(Features.Capabilities).capabilities.removeParticipantsSpotlight.isPresent;\n const onStartLocalSpotlight = canStartSpotlight\n ? async (): Promise<void> => {\n await call?.feature(Features.Spotlight).startSpotlight();\n }\n : undefined;\n const onStopLocalSpotlight = async (): Promise<void> => {\n await call?.feature(Features.Spotlight).stopSpotlight();\n };\n const onStartRemoteSpotlight = canStartSpotlight\n ? async (userIds?: string[]): Promise<void> => {\n const participants = userIds?.map((userId) => _toCommunicationIdentifier(userId));\n await call?.feature(Features.Spotlight).startSpotlight(participants);\n }\n : undefined;\n const onStopRemoteSpotlight = canRemoveSpotlight\n ? async (userIds?: string[]): Promise<void> => {\n const participants = userIds?.map((userId) => _toCommunicationIdentifier(userId));\n await call?.feature(Features.Spotlight).stopSpotlight(participants);\n }\n : undefined;\n\n return {\n onHangUp,\n /* @conditional-compile-remove(PSTN-calls) */\n onToggleHold,\n onSelectCamera,\n onSelectMicrophone,\n onSelectSpeaker,\n onStartScreenShare,\n onStopScreenShare,\n onToggleCamera,\n onToggleMicrophone,\n onToggleScreenShare,\n onCreateLocalStreamView,\n onCreateRemoteStreamView,\n onStartLocalVideo,\n onDisposeRemoteStreamView,\n onDisposeLocalStreamView,\n onDisposeRemoteScreenShareStreamView,\n onDisposeRemoteVideoStreamView,\n onRaiseHand,\n onLowerHand,\n onToggleRaiseHand,\n onReactionClick: onReactionClick,\n /* @conditional-compile-remove(PSTN-calls) */\n onAddParticipant: notImplemented,\n onRemoveParticipant: notImplemented,\n onStartCall: notImplemented,\n onSendDtmfTone,\n /* @conditional-compile-remove(call-readiness) */\n askDevicePermission,\n onRemoveVideoBackgroundEffects,\n onBlurVideoBackground,\n onReplaceVideoBackground,\n onStartCaptions,\n onStopCaptions,\n onSetCaptionLanguage,\n onSetSpokenLanguage,\n onSubmitSurvey,\n onStartSpotlight,\n onStopSpotlight,\n onStopAllSpotlight,\n onStartLocalSpotlight,\n onStopLocalSpotlight,\n onStartRemoteSpotlight,\n onStopRemoteSpotlight,\n /* @conditional-compile-remove(soft-mute) */\n onMuteParticipant,\n /* @conditional-compile-remove(soft-mute) */\n onMuteAllRemoteParticipants\n };\n }\n);\n"]}
@@ -25,10 +25,10 @@ export const createDefaultCallingHandlersForComponent = (callClient, callAgent,
25
25
  return createDefaultCallingHandlers(callClient, callAgent, deviceManager, call);
26
26
  }
27
27
  /* @conditional-compile-remove(teams-identity-support) */
28
- if (callAgent && _isTeamsCallAgent(callAgent) && (!call || call && _isTeamsCall(call))) {
28
+ if (callAgent && _isTeamsCallAgent(callAgent) && (!call || (call && _isTeamsCall(call)))) {
29
29
  return createDefaultTeamsCallingHandlers(callClient, callAgent, deviceManager, call);
30
30
  }
31
- if (callAgent && _isACSCallAgent(callAgent) && (!call || call && _isACSCall(call))) {
31
+ if (callAgent && _isACSCallAgent(callAgent) && (!call || (call && _isACSCall(call)))) {
32
32
  return createDefaultCallingHandlers(callClient, callAgent, deviceManager, call);
33
33
  }
34
34
  throw new Error('CallAgent type and Call type are not compatible!');
@@ -1 +1 @@
1
- {"version":3,"file":"createDefaultCallingHandlersForComponent.js","sourceRoot":"","sources":["../../../../../preprocess-dist/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,yDAAyD;AACzD,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,6CAA0C;AAEpF,OAAO,EAA0E,UAAU,EAAE,eAAe,EAAE,6CAA0C;AAExJ,yDAAyD;AACzD,OAAO,EAAE,iCAAiC,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,kBAAkB,CAAC;AAGhE;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,wCAAwC,GAAG,CAAS,UAA8B,EAAE,SAAsC,EAAE,aAAgD,EAAE,IAA4B,EAAE,UAAiD,EAAwC,EAAE;IAClT,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1C,OAAO,4BAA4B,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;IACD,yDAAyD;IACzD,IAAI,SAAS,IAAI,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACvF,OAAO,iCAAiC,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IACvF,CAAC;IACD,IAAI,SAAS,IAAI,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACnF,OAAO,4BAA4B,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;AACtE,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/* @conditional-compile-remove(teams-identity-support) */\nimport { _isTeamsCall, _isTeamsCallAgent } from '@internal/calling-stateful-client';\nimport { Common } from '@internal/acs-ui-common';\nimport { StatefulCallClient, StatefulDeviceManager, CallAgentCommon, CallCommon, _isACSCall, _isACSCallAgent } from '@internal/calling-stateful-client';\nimport { ReactElement } from 'react';\n/* @conditional-compile-remove(teams-identity-support) */\nimport { createDefaultTeamsCallingHandlers } from './createTeamsCallHandlers';\nimport { createDefaultCallingHandlers } from './createHandlers';\nimport { CommonCallingHandlers } from './createCommonHandlers';\n\n/**\n * Create a set of default handlers for given component. Memoization is applied to the result. Multiple invocations with\n * the same arguments will return the same handler instances. DeclarativeCallAgent, DeclarativeDeviceManager, and\n * DeclarativeCall may be undefined. If undefined, their associated handlers will not be created and returned.\n *\n * @param callClient - StatefulCallClient returned from\n * {@link @azure/communication-react#createStatefulCallClient}.\n * @param callAgent - Instance of {@link @azure/communication-calling#CallClient}.\n * @param deviceManager - Instance of {@link @azure/communication-calling#DeviceManager}.\n * @param call - Instance of {@link @azure/communication-calling#Call}.\n * @param _ - React component that you want to generate handlers for.\n *\n * @public\n */\nexport const createDefaultCallingHandlersForComponent = <Props,>(callClient: StatefulCallClient, callAgent: CallAgentCommon | undefined, deviceManager: StatefulDeviceManager | undefined, call: CallCommon | undefined, _Component: (props: Props) => ReactElement | null): Common<CommonCallingHandlers, Props> => {\n if (!callAgent && !call && !deviceManager) {\n return createDefaultCallingHandlers(callClient, callAgent, deviceManager, call);\n }\n /* @conditional-compile-remove(teams-identity-support) */\n if (callAgent && _isTeamsCallAgent(callAgent) && (!call || call && _isTeamsCall(call))) {\n return createDefaultTeamsCallingHandlers(callClient, callAgent, deviceManager, call);\n }\n if (callAgent && _isACSCallAgent(callAgent) && (!call || call && _isACSCall(call))) {\n return createDefaultCallingHandlers(callClient, callAgent, deviceManager, call);\n }\n throw new Error('CallAgent type and Call type are not compatible!');\n};"]}
1
+ {"version":3,"file":"createDefaultCallingHandlersForComponent.js","sourceRoot":"","sources":["../../../../../../calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,yDAAyD;AACzD,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,6CAA0C;AAEpF,OAAO,EAKL,UAAU,EACV,eAAe,EAChB,6CAA0C;AAE3C,yDAAyD;AACzD,OAAO,EAAE,iCAAiC,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,kBAAkB,CAAC;AAGhE;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,wCAAwC,GAAG,CACtD,UAA8B,EAC9B,SAAsC,EACtC,aAAgD,EAChD,IAA4B,EAC5B,UAAiD,EACX,EAAE;IACxC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1C,OAAO,4BAA4B,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;IACD,yDAAyD;IACzD,IAAI,SAAS,IAAI,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,OAAO,iCAAiC,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IACvF,CAAC;IACD,IAAI,SAAS,IAAI,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACrF,OAAO,4BAA4B,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;AACtE,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/* @conditional-compile-remove(teams-identity-support) */\nimport { _isTeamsCall, _isTeamsCallAgent } from '@internal/calling-stateful-client';\nimport { Common } from '@internal/acs-ui-common';\nimport {\n StatefulCallClient,\n StatefulDeviceManager,\n CallAgentCommon,\n CallCommon,\n _isACSCall,\n _isACSCallAgent\n} from '@internal/calling-stateful-client';\nimport { ReactElement } from 'react';\n/* @conditional-compile-remove(teams-identity-support) */\nimport { createDefaultTeamsCallingHandlers } from './createTeamsCallHandlers';\nimport { createDefaultCallingHandlers } from './createHandlers';\nimport { CommonCallingHandlers } from './createCommonHandlers';\n\n/**\n * Create a set of default handlers for given component. Memoization is applied to the result. Multiple invocations with\n * the same arguments will return the same handler instances. DeclarativeCallAgent, DeclarativeDeviceManager, and\n * DeclarativeCall may be undefined. If undefined, their associated handlers will not be created and returned.\n *\n * @param callClient - StatefulCallClient returned from\n * {@link @azure/communication-react#createStatefulCallClient}.\n * @param callAgent - Instance of {@link @azure/communication-calling#CallClient}.\n * @param deviceManager - Instance of {@link @azure/communication-calling#DeviceManager}.\n * @param call - Instance of {@link @azure/communication-calling#Call}.\n * @param _ - React component that you want to generate handlers for.\n *\n * @public\n */\nexport const createDefaultCallingHandlersForComponent = <Props>(\n callClient: StatefulCallClient,\n callAgent: CallAgentCommon | undefined,\n deviceManager: StatefulDeviceManager | undefined,\n call: CallCommon | undefined,\n _Component: (props: Props) => ReactElement | null\n): Common<CommonCallingHandlers, Props> => {\n if (!callAgent && !call && !deviceManager) {\n return createDefaultCallingHandlers(callClient, callAgent, deviceManager, call);\n }\n /* @conditional-compile-remove(teams-identity-support) */\n if (callAgent && _isTeamsCallAgent(callAgent) && (!call || (call && _isTeamsCall(call)))) {\n return createDefaultTeamsCallingHandlers(callClient, callAgent, deviceManager, call);\n }\n if (callAgent && _isACSCallAgent(callAgent) && (!call || (call && _isACSCall(call)))) {\n return createDefaultCallingHandlers(callClient, callAgent, deviceManager, call);\n }\n throw new Error('CallAgent type and Call type are not compatible!');\n};\n"]}