@azure/communication-react 1.7.0-beta.1 → 1.7.1-alpha-202308170011

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 (1024) hide show
  1. package/dist/communication-react.d.ts +419 -72
  2. package/dist/dist-cjs/communication-react/index.js +5857 -4507
  3. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  4. package/dist/dist-esm/acs-ui-common/src/MessageStatus.js.map +1 -1
  5. package/dist/dist-esm/acs-ui-common/src/areEqual.d.ts +0 -1
  6. package/dist/dist-esm/acs-ui-common/src/areEqual.js.map +1 -1
  7. package/dist/dist-esm/acs-ui-common/src/common.js.map +1 -1
  8. package/dist/dist-esm/acs-ui-common/src/commonProperties.js.map +1 -1
  9. package/dist/dist-esm/acs-ui-common/src/constants.js.map +1 -1
  10. package/dist/dist-esm/acs-ui-common/src/cssUtils.js.map +1 -1
  11. package/dist/dist-esm/acs-ui-common/src/identifier.js +4 -1
  12. package/dist/dist-esm/acs-ui-common/src/identifier.js.map +1 -1
  13. package/dist/dist-esm/acs-ui-common/src/index.js.map +1 -1
  14. package/dist/dist-esm/acs-ui-common/src/localizationUtils.js.map +1 -1
  15. package/dist/dist-esm/acs-ui-common/src/logEvent.js.map +1 -1
  16. package/dist/dist-esm/acs-ui-common/src/memoizeFnAll.js.map +1 -1
  17. package/dist/dist-esm/acs-ui-common/src/safeStringify.js.map +1 -1
  18. package/dist/dist-esm/acs-ui-common/src/telemetry.js.map +1 -1
  19. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  20. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  21. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.d.ts +5 -0
  22. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +11 -2
  23. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  24. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +56 -12
  25. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
  26. package/dist/dist-esm/calling-component-bindings/src/captionsSelector.js +5 -4
  27. package/dist/dist-esm/calling-component-bindings/src/captionsSelector.js.map +1 -1
  28. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js +20 -55
  29. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js.map +1 -1
  30. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.d.ts +13 -3
  31. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +50 -43
  32. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
  33. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js +2 -2
  34. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js.map +1 -1
  35. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.d.ts +15 -1
  36. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js +5 -2
  37. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js.map +1 -1
  38. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.d.ts +4 -2
  39. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js +14 -8
  40. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js.map +1 -1
  41. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.d.ts +1 -1
  42. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.js.map +1 -1
  43. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.d.ts +0 -1
  44. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  45. package/dist/dist-esm/calling-component-bindings/src/hooks/useSelector.js.map +1 -1
  46. package/dist/dist-esm/calling-component-bindings/src/index.d.ts +3 -1
  47. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  48. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.d.ts +1 -0
  49. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +55 -14
  50. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
  51. package/dist/dist-esm/calling-component-bindings/src/participantsButtonSelector.js.map +1 -1
  52. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.js.map +1 -1
  53. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js +6 -3
  54. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js.map +1 -1
  55. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js.map +1 -1
  56. package/dist/dist-esm/calling-component-bindings/src/providers/index.js.map +1 -1
  57. package/dist/dist-esm/calling-component-bindings/src/utils/SelectorUtils.js.map +1 -1
  58. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js +9 -6
  59. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js.map +1 -1
  60. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.d.ts +7 -3
  61. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js +27 -8
  62. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js.map +1 -1
  63. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.d.ts +2 -1
  64. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +19 -10
  65. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  66. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js +31 -7
  67. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
  68. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.js.map +1 -1
  69. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.d.ts +1 -1
  70. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
  71. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js +65 -71
  72. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js.map +1 -1
  73. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +43 -1
  74. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js +1 -0
  75. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  76. package/dist/dist-esm/calling-stateful-client/src/CallContext.d.ts +6 -1
  77. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +47 -6
  78. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  79. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js +7 -8
  80. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js.map +1 -1
  81. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js +74 -83
  82. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js.map +1 -1
  83. package/dist/dist-esm/calling-stateful-client/src/CallIdHistory.js.map +1 -1
  84. package/dist/dist-esm/calling-stateful-client/src/CallIdRef.js.map +1 -1
  85. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.d.ts +2 -0
  86. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +22 -4
  87. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  88. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.d.ts +16 -0
  89. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js +24 -0
  90. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js.map +1 -0
  91. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.js.map +1 -1
  92. package/dist/dist-esm/calling-stateful-client/src/Converter.js +9 -8
  93. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  94. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js +51 -57
  95. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js.map +1 -1
  96. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js +14 -16
  97. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js.map +1 -1
  98. package/dist/dist-esm/calling-stateful-client/src/IncomingCallSubscriber.js.map +1 -1
  99. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js +3 -15
  100. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js.map +1 -1
  101. package/dist/dist-esm/calling-stateful-client/src/LocalVideoStreamVideoEffectsSubscriber.js.map +1 -1
  102. package/dist/dist-esm/calling-stateful-client/src/Logger.js.map +1 -1
  103. package/dist/dist-esm/calling-stateful-client/src/OptimalVideoCountSubscriber.js +1 -3
  104. package/dist/dist-esm/calling-stateful-client/src/OptimalVideoCountSubscriber.js.map +1 -1
  105. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js.map +1 -1
  106. package/dist/dist-esm/calling-stateful-client/src/RaiseHandSubscriber.d.ts +17 -0
  107. package/dist/dist-esm/calling-stateful-client/src/RaiseHandSubscriber.js +35 -0
  108. package/dist/dist-esm/calling-stateful-client/src/RaiseHandSubscriber.js.map +1 -0
  109. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js.map +1 -1
  110. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js.map +1 -1
  111. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts +2 -0
  112. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js +65 -67
  113. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
  114. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js +33 -31
  115. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js.map +1 -1
  116. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js +8 -11
  117. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js.map +1 -1
  118. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.d.ts +1 -1
  119. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js.map +1 -1
  120. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js +7 -8
  121. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js.map +1 -1
  122. package/dist/dist-esm/calling-stateful-client/src/TranscriptionSubscriber.js.map +1 -1
  123. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js +1 -1
  124. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js.map +1 -1
  125. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js +3 -3
  126. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js.map +1 -1
  127. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js +6 -7
  128. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js.map +1 -1
  129. package/dist/dist-esm/calling-stateful-client/src/index-public.d.ts +2 -0
  130. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  131. package/dist/dist-esm/calling-stateful-client/src/index.js.map +1 -1
  132. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js +4 -4
  133. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js.map +1 -1
  134. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js +3 -3
  135. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js.map +1 -1
  136. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js +13 -14
  137. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js.map +1 -1
  138. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.d.ts +1 -1
  139. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js +3 -10
  140. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js.map +1 -1
  141. package/dist/dist-esm/chat-component-bindings/src/hooks/useHandlers.js.map +1 -1
  142. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.d.ts +0 -1
  143. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js +18 -2
  144. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  145. package/dist/dist-esm/chat-component-bindings/src/hooks/useSelector.js.map +1 -1
  146. package/dist/dist-esm/chat-component-bindings/src/index.js.map +1 -1
  147. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.d.ts +5 -0
  148. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +66 -26
  149. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
  150. package/dist/dist-esm/chat-component-bindings/src/providers/ChatClientProvider.js.map +1 -1
  151. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js +1 -1
  152. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js.map +1 -1
  153. package/dist/dist-esm/chat-component-bindings/src/sendBoxSelector.js.map +1 -1
  154. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js +3 -7
  155. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js.map +1 -1
  156. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js +3 -1
  157. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js.map +1 -1
  158. package/dist/dist-esm/chat-component-bindings/src/utils/constants.js.map +1 -1
  159. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js +10 -3
  160. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js.map +1 -1
  161. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js.map +1 -1
  162. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js +5 -9
  163. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js.map +1 -1
  164. package/dist/dist-esm/chat-stateful-client/src/Constants.js.map +1 -1
  165. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js +7 -10
  166. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js.map +1 -1
  167. package/dist/dist-esm/chat-stateful-client/src/Logger.js.map +1 -1
  168. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js +57 -67
  169. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js.map +1 -1
  170. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js +114 -127
  171. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js.map +1 -1
  172. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js +3 -1
  173. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js.map +1 -1
  174. package/dist/dist-esm/chat-stateful-client/src/index.js.map +1 -1
  175. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedIterator.js.map +1 -1
  176. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListMessages.js.map +1 -1
  177. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListParticipants.js.map +1 -1
  178. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListReadReceipts.js.map +1 -1
  179. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListThreads.js.map +1 -1
  180. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.js.map +1 -1
  181. package/dist/dist-esm/communication-react/src/index.d.ts +7 -3
  182. package/dist/dist-esm/communication-react/src/index.js +2 -0
  183. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  184. package/dist/dist-esm/communication-react/src/mergedHooks.d.ts +0 -1
  185. package/dist/dist-esm/communication-react/src/mergedHooks.js.map +1 -1
  186. package/dist/dist-esm/northstar-wrapper/src/index.js +1 -1
  187. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.d.ts +0 -1
  188. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js +3 -6
  189. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js.map +1 -1
  190. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerContext.js.map +1 -1
  191. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerMessage.js.map +1 -1
  192. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js +4 -10
  193. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js.map +1 -1
  194. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.d.ts +0 -1
  195. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js +1 -1
  196. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js.map +1 -1
  197. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.d.ts +0 -1
  198. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js +1 -1
  199. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js.map +1 -1
  200. package/dist/dist-esm/react-components/src/components/Announcer.d.ts +0 -1
  201. package/dist/dist-esm/react-components/src/components/Announcer.js.map +1 -1
  202. package/dist/dist-esm/react-components/src/components/CameraButton.d.ts +0 -1
  203. package/dist/dist-esm/react-components/src/components/CameraButton.js +8 -19
  204. package/dist/dist-esm/react-components/src/components/CameraButton.js.map +1 -1
  205. package/dist/dist-esm/react-components/src/components/Caption.d.ts +0 -1
  206. package/dist/dist-esm/react-components/src/components/Caption.js +2 -2
  207. package/dist/dist-esm/react-components/src/components/Caption.js.map +1 -1
  208. package/dist/dist-esm/react-components/src/components/CaptionsBanner.d.ts +6 -2
  209. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js +13 -12
  210. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js.map +1 -1
  211. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.d.ts +0 -1
  212. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js +16 -14
  213. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js.map +1 -1
  214. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js +7 -8
  215. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js.map +1 -1
  216. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.d.ts +0 -1
  217. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js +36 -17
  218. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js.map +1 -1
  219. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.d.ts +6 -1
  220. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js +18 -9
  221. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js.map +1 -1
  222. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.d.ts +0 -1
  223. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js +27 -35
  224. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js.map +1 -1
  225. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.d.ts +6 -0
  226. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js +92 -35
  227. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js.map +1 -1
  228. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.d.ts +1 -1
  229. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +47 -28
  230. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
  231. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.d.ts +0 -1
  232. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js.map +1 -1
  233. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.d.ts +0 -1
  234. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js +18 -18
  235. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js.map +1 -1
  236. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.d.ts +0 -1
  237. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js +7 -4
  238. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js.map +1 -1
  239. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.d.ts +0 -1
  240. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js +2 -2
  241. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js.map +1 -1
  242. package/dist/dist-esm/react-components/src/components/ComplianceBanner/Utils.js.map +1 -1
  243. package/dist/dist-esm/react-components/src/components/ComplianceBanner/index.js.map +1 -1
  244. package/dist/dist-esm/react-components/src/components/ComplianceBanner/types.js.map +1 -1
  245. package/dist/dist-esm/react-components/src/components/ControlBar.js +10 -14
  246. package/dist/dist-esm/react-components/src/components/ControlBar.js.map +1 -1
  247. package/dist/dist-esm/react-components/src/components/ControlBarButton.d.ts +0 -1
  248. package/dist/dist-esm/react-components/src/components/ControlBarButton.js +14 -4
  249. package/dist/dist-esm/react-components/src/components/ControlBarButton.js.map +1 -1
  250. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.d.ts +0 -1
  251. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js +3 -14
  252. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js.map +1 -1
  253. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.d.ts +0 -1
  254. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js +4 -10
  255. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js.map +1 -1
  256. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.d.ts +0 -1
  257. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js +14 -31
  258. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js.map +1 -1
  259. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.d.ts +0 -1
  260. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js +5 -8
  261. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js.map +1 -1
  262. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.d.ts +0 -1
  263. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js +24 -6
  264. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js.map +1 -1
  265. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.d.ts +0 -1
  266. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js +12 -20
  267. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js.map +1 -1
  268. package/dist/dist-esm/react-components/src/components/DevicesButton.d.ts +0 -1
  269. package/dist/dist-esm/react-components/src/components/DevicesButton.js +19 -27
  270. package/dist/dist-esm/react-components/src/components/DevicesButton.js.map +1 -1
  271. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.d.ts +0 -1
  272. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +36 -44
  273. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
  274. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js +4 -4
  275. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js.map +1 -1
  276. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.d.ts +0 -1
  277. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js +2 -6
  278. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js.map +1 -1
  279. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.d.ts +0 -1
  280. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js +6 -6
  281. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js.map +1 -1
  282. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js +11 -23
  283. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js.map +1 -1
  284. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js +6 -4
  285. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js.map +1 -1
  286. package/dist/dist-esm/react-components/src/components/Drawer/index.js.map +1 -1
  287. package/dist/dist-esm/react-components/src/components/EndCallButton.d.ts +0 -1
  288. package/dist/dist-esm/react-components/src/components/EndCallButton.js +3 -7
  289. package/dist/dist-esm/react-components/src/components/EndCallButton.js.map +1 -1
  290. package/dist/dist-esm/react-components/src/components/ErrorBar.d.ts +5 -1
  291. package/dist/dist-esm/react-components/src/components/ErrorBar.js +12 -5
  292. package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
  293. package/dist/dist-esm/react-components/src/components/FileCard.d.ts +0 -1
  294. package/dist/dist-esm/react-components/src/components/FileCard.js +2 -3
  295. package/dist/dist-esm/react-components/src/components/FileCard.js.map +1 -1
  296. package/dist/dist-esm/react-components/src/components/FileCardGroup.js +1 -1
  297. package/dist/dist-esm/react-components/src/components/FileCardGroup.js.map +1 -1
  298. package/dist/dist-esm/react-components/src/components/FileDownloadCards.d.ts +33 -6
  299. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js +31 -17
  300. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js.map +1 -1
  301. package/dist/dist-esm/react-components/src/components/FileUploadCards.d.ts +0 -1
  302. package/dist/dist-esm/react-components/src/components/FileUploadCards.js +8 -7
  303. package/dist/dist-esm/react-components/src/components/FileUploadCards.js.map +1 -1
  304. package/dist/dist-esm/react-components/src/components/GridLayout.js +37 -37
  305. package/dist/dist-esm/react-components/src/components/GridLayout.js.map +1 -1
  306. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.d.ts +0 -1
  307. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js +2 -2
  308. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js.map +1 -1
  309. package/dist/dist-esm/react-components/src/components/HoldButton.d.ts +0 -1
  310. package/dist/dist-esm/react-components/src/components/HoldButton.js +1 -1
  311. package/dist/dist-esm/react-components/src/components/HoldButton.js.map +1 -1
  312. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js +7 -9
  313. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js.map +1 -1
  314. package/dist/dist-esm/react-components/src/components/ImageGallery.d.ts +52 -0
  315. package/dist/dist-esm/react-components/src/components/ImageGallery.js +56 -0
  316. package/dist/dist-esm/react-components/src/components/ImageGallery.js.map +1 -0
  317. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js +8 -15
  318. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js.map +1 -1
  319. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.d.ts +0 -1
  320. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js +3 -5
  321. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js.map +1 -1
  322. package/dist/dist-esm/react-components/src/components/LocalVideoTile.d.ts +2 -0
  323. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js +32 -10
  324. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
  325. package/dist/dist-esm/react-components/src/components/MentionPopover.js +30 -23
  326. package/dist/dist-esm/react-components/src/components/MentionPopover.js.map +1 -1
  327. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.d.ts +0 -1
  328. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js +23 -36
  329. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js.map +1 -1
  330. package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +7 -2
  331. package/dist/dist-esm/react-components/src/components/MessageThread.js +166 -93
  332. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  333. package/dist/dist-esm/react-components/src/components/MicrophoneButton.d.ts +0 -1
  334. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js +17 -14
  335. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js.map +1 -1
  336. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js +94 -101
  337. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js.map +1 -1
  338. package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts +1 -2
  339. package/dist/dist-esm/react-components/src/components/ParticipantItem.js +15 -17
  340. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  341. package/dist/dist-esm/react-components/src/components/ParticipantList.d.ts +16 -2
  342. package/dist/dist-esm/react-components/src/components/ParticipantList.js +65 -20
  343. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  344. package/dist/dist-esm/react-components/src/components/ParticipantsButton.d.ts +1 -2
  345. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js +46 -32
  346. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js.map +1 -1
  347. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.d.ts +0 -1
  348. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js +3 -3
  349. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js.map +1 -1
  350. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js +3 -3
  351. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js.map +1 -1
  352. package/dist/dist-esm/react-components/src/components/RaiseHandButton.d.ts +43 -0
  353. package/dist/dist-esm/react-components/src/components/RaiseHandButton.js +45 -0
  354. package/dist/dist-esm/react-components/src/components/RaiseHandButton.js.map +1 -0
  355. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +32 -15
  356. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  357. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js +2 -2
  358. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js.map +1 -1
  359. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js +2 -2
  360. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js.map +1 -1
  361. package/dist/dist-esm/react-components/src/components/ScreenShareButton.d.ts +0 -1
  362. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js +6 -14
  363. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js.map +1 -1
  364. package/dist/dist-esm/react-components/src/components/SendBox.d.ts +1 -1
  365. package/dist/dist-esm/react-components/src/components/SendBox.js +17 -19
  366. package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
  367. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.d.ts +0 -1
  368. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js +2 -2
  369. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js.map +1 -1
  370. package/dist/dist-esm/react-components/src/components/SendBoxErrors.d.ts +0 -1
  371. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js.map +1 -1
  372. package/dist/dist-esm/react-components/src/components/StartCaptionsButton.d.ts +0 -1
  373. package/dist/dist-esm/react-components/src/components/StartCaptionsButton.js +2 -4
  374. package/dist/dist-esm/react-components/src/components/StartCaptionsButton.js.map +1 -1
  375. package/dist/dist-esm/react-components/src/components/StreamMedia.d.ts +0 -1
  376. package/dist/dist-esm/react-components/src/components/StreamMedia.js +3 -3
  377. package/dist/dist-esm/react-components/src/components/StreamMedia.js.map +1 -1
  378. package/dist/dist-esm/react-components/src/components/SystemMessage.d.ts +0 -1
  379. package/dist/dist-esm/react-components/src/components/SystemMessage.js +2 -4
  380. package/dist/dist-esm/react-components/src/components/SystemMessage.js.map +1 -1
  381. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js +117 -51
  382. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js.map +1 -1
  383. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js +95 -61
  384. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js.map +1 -1
  385. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.d.ts +0 -1
  386. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js +10 -10
  387. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js.map +1 -1
  388. package/dist/dist-esm/react-components/src/components/TypingIndicator.d.ts +0 -1
  389. package/dist/dist-esm/react-components/src/components/TypingIndicator.js +9 -6
  390. package/dist/dist-esm/react-components/src/components/TypingIndicator.js.map +1 -1
  391. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.d.ts +0 -1
  392. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js +1 -1
  393. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js.map +1 -1
  394. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.d.ts +0 -1
  395. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js +1 -1
  396. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js.map +1 -1
  397. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.d.ts +0 -1
  398. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js +4 -8
  399. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js.map +1 -1
  400. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.d.ts +0 -1
  401. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js +1 -1
  402. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js.map +1 -1
  403. package/dist/dist-esm/react-components/src/components/VerticalGallery.js +19 -34
  404. package/dist/dist-esm/react-components/src/components/VerticalGallery.js.map +1 -1
  405. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.d.ts +0 -1
  406. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js +3 -1
  407. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js.map +1 -1
  408. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.d.ts +0 -1
  409. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js +10 -13
  410. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js.map +1 -1
  411. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.d.ts +0 -1
  412. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js +13 -15
  413. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js.map +1 -1
  414. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js +6 -3
  415. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js.map +1 -1
  416. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.d.ts +0 -1
  417. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js +34 -15
  418. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js.map +1 -1
  419. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.d.ts +0 -1
  420. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js +10 -10
  421. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js.map +1 -1
  422. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.d.ts +0 -1
  423. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js +67 -24
  424. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js.map +1 -1
  425. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.d.ts +0 -1
  426. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.js.map +1 -1
  427. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js +7 -7
  428. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js.map +1 -1
  429. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.d.ts +0 -1
  430. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js +16 -5
  431. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js.map +1 -1
  432. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js +8 -6
  433. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js.map +1 -1
  434. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.d.ts +0 -1
  435. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js +2 -4
  436. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js.map +1 -1
  437. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js +1 -6
  438. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js.map +1 -1
  439. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.d.ts +1 -1
  440. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js +10 -34
  441. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js.map +1 -1
  442. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js +2 -11
  443. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js.map +1 -1
  444. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/Layout.styles.js.map +1 -1
  445. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/LocalScreenShare.styles.js.map +1 -1
  446. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteScreenShare.styles.js.map +1 -1
  447. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteVideoTile.styles.js.map +1 -1
  448. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js +1 -3
  449. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js.map +1 -1
  450. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js +10 -11
  451. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js.map +1 -1
  452. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js +22 -28
  453. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js.map +1 -1
  454. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js +10 -5
  455. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js.map +1 -1
  456. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js +19 -29
  457. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js.map +1 -1
  458. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/OverflowGalleryUtils.js.map +1 -1
  459. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +40 -24
  460. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  461. package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts +1 -2
  462. package/dist/dist-esm/react-components/src/components/VideoGallery.js +101 -34
  463. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  464. package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +3 -0
  465. package/dist/dist-esm/react-components/src/components/VideoTile.js +58 -54
  466. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  467. package/dist/dist-esm/react-components/src/components/assets/RaisedHandIcon.d.ts +7 -0
  468. package/dist/dist-esm/react-components/src/components/assets/RaisedHandIcon.js +224 -0
  469. package/dist/dist-esm/react-components/src/components/assets/RaisedHandIcon.js.map +1 -0
  470. package/dist/dist-esm/react-components/src/components/index.d.ts +5 -0
  471. package/dist/dist-esm/react-components/src/components/index.js +4 -0
  472. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  473. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js.map +1 -1
  474. package/dist/dist-esm/react-components/src/components/styles/Captions.style.d.ts +3 -2
  475. package/dist/dist-esm/react-components/src/components/styles/Captions.style.js +12 -4
  476. package/dist/dist-esm/react-components/src/components/styles/Captions.style.js.map +1 -1
  477. package/dist/dist-esm/react-components/src/components/styles/CaptionsSettingsModal.styles.js.map +1 -1
  478. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js +3 -12
  479. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js.map +1 -1
  480. package/dist/dist-esm/react-components/src/components/styles/Common.style.js.map +1 -1
  481. package/dist/dist-esm/react-components/src/components/styles/ControlBar.styles.js.map +1 -1
  482. package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.js.map +1 -1
  483. package/dist/dist-esm/react-components/src/components/styles/EditBox.styles.js +1 -3
  484. package/dist/dist-esm/react-components/src/components/styles/EditBox.styles.js.map +1 -1
  485. package/dist/dist-esm/react-components/src/components/styles/GridLayout.styles.js.map +1 -1
  486. package/dist/dist-esm/react-components/src/components/styles/HorizontalGallery.styles.js.map +1 -1
  487. package/dist/dist-esm/react-components/src/components/styles/IconButton.styles.js.map +1 -1
  488. package/dist/dist-esm/react-components/src/components/styles/ImageGallery.style.d.ts +70 -0
  489. package/dist/dist-esm/react-components/src/components/styles/ImageGallery.style.js +219 -0
  490. package/dist/dist-esm/react-components/src/components/styles/ImageGallery.style.js.map +1 -0
  491. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js +1 -4
  492. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js.map +1 -1
  493. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js +2 -1
  494. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js.map +1 -1
  495. package/dist/dist-esm/react-components/src/components/styles/MessageStatusIndicator.styles.js.map +1 -1
  496. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js +6 -7
  497. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js.map +1 -1
  498. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js +0 -1
  499. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js.map +1 -1
  500. package/dist/dist-esm/react-components/src/components/styles/ParticipantList.styles.js.map +1 -1
  501. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js +2 -10
  502. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js.map +1 -1
  503. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js.map +1 -1
  504. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js +0 -3
  505. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js.map +1 -1
  506. package/dist/dist-esm/react-components/src/components/styles/SystemMessage.styles.js.map +1 -1
  507. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js +0 -1
  508. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js.map +1 -1
  509. package/dist/dist-esm/react-components/src/components/styles/TypingIndicator.styles.js.map +1 -1
  510. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js.map +1 -1
  511. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js +0 -1
  512. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js.map +1 -1
  513. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js +3 -17
  514. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js.map +1 -1
  515. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js.map +1 -1
  516. package/dist/dist-esm/react-components/src/components/utils/Datetime.js.map +1 -1
  517. package/dist/dist-esm/react-components/src/components/utils/common.js.map +1 -1
  518. package/dist/dist-esm/react-components/src/components/utils/delay.js.map +1 -1
  519. package/dist/dist-esm/react-components/src/components/utils/formatPhoneNumber.js.map +1 -1
  520. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js +4 -7
  521. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js.map +1 -1
  522. package/dist/dist-esm/react-components/src/components/utils/keyboardNavigation.js.map +1 -1
  523. package/dist/dist-esm/react-components/src/components/utils/merge.js.map +1 -1
  524. package/dist/dist-esm/react-components/src/components/utils/overFlowGalleriesUtils.js.map +1 -1
  525. package/dist/dist-esm/react-components/src/components/utils/responsive.js +2 -2
  526. package/dist/dist-esm/react-components/src/components/utils/responsive.js.map +1 -1
  527. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js +10 -1
  528. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js.map +1 -1
  529. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js +1 -3
  530. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js.map +1 -1
  531. package/dist/dist-esm/react-components/src/components/utils.js +13 -10
  532. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  533. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js +8 -6
  534. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js.map +1 -1
  535. package/dist/dist-esm/react-components/src/gallery/index.js.map +1 -1
  536. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js.map +1 -1
  537. package/dist/dist-esm/react-components/src/identifiers/index.js.map +1 -1
  538. package/dist/dist-esm/react-components/src/index.d.ts +1 -2
  539. package/dist/dist-esm/react-components/src/index.js +0 -2
  540. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  541. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +6 -0
  542. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  543. package/dist/dist-esm/react-components/src/localization/index.js.map +1 -1
  544. package/dist/dist-esm/react-components/src/localization/locales/ar-SA/strings.json +10 -0
  545. package/dist/dist-esm/react-components/src/localization/locales/cs-CZ/strings.json +13 -3
  546. package/dist/dist-esm/react-components/src/localization/locales/de-DE/strings.json +10 -0
  547. package/dist/dist-esm/react-components/src/localization/locales/en-GB/strings.json +10 -0
  548. package/dist/dist-esm/react-components/src/localization/locales/en-US/strings.json +10 -0
  549. package/dist/dist-esm/react-components/src/localization/locales/es-ES/strings.json +10 -0
  550. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/strings.json +10 -0
  551. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/strings.json +10 -0
  552. package/dist/dist-esm/react-components/src/localization/locales/he-IL/strings.json +10 -0
  553. package/dist/dist-esm/react-components/src/localization/locales/index.js +21 -63
  554. package/dist/dist-esm/react-components/src/localization/locales/index.js.map +1 -1
  555. package/dist/dist-esm/react-components/src/localization/locales/it-IT/strings.json +10 -0
  556. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/strings.json +10 -0
  557. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/strings.json +10 -0
  558. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/strings.json +10 -0
  559. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/strings.json +10 -0
  560. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/strings.json +10 -0
  561. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/strings.json +10 -0
  562. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/strings.json +10 -0
  563. package/dist/dist-esm/react-components/src/localization/locales/sv-SE/strings.json +10 -0
  564. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/strings.json +10 -0
  565. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/strings.json +10 -0
  566. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/strings.json +10 -0
  567. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js +3 -6
  568. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js.map +1 -1
  569. package/dist/dist-esm/react-components/src/theming/icons.d.ts +2 -1
  570. package/dist/dist-esm/react-components/src/theming/icons.js +26 -26
  571. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  572. package/dist/dist-esm/react-components/src/theming/icons.styles.js.map +1 -1
  573. package/dist/dist-esm/react-components/src/theming/index.js.map +1 -1
  574. package/dist/dist-esm/react-components/src/theming/themeUtils.js.map +1 -1
  575. package/dist/dist-esm/react-components/src/theming/themes.d.ts +1 -0
  576. package/dist/dist-esm/react-components/src/theming/themes.js +6 -2
  577. package/dist/dist-esm/react-components/src/theming/themes.js.map +1 -1
  578. package/dist/dist-esm/react-components/src/types/CaptionsAvailableLanguageStrings.js.map +1 -1
  579. package/dist/dist-esm/react-components/src/types/ChatMessage.js.map +1 -1
  580. package/dist/dist-esm/react-components/src/types/CommunicationParticipant.js.map +1 -1
  581. package/dist/dist-esm/react-components/src/types/ComponentSlotStyle.js.map +1 -1
  582. package/dist/dist-esm/react-components/src/types/CustomStylesProps.js.map +1 -1
  583. package/dist/dist-esm/react-components/src/types/OnRender.d.ts +0 -1
  584. package/dist/dist-esm/react-components/src/types/OnRender.js.map +1 -1
  585. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.d.ts +10 -3
  586. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js.map +1 -1
  587. package/dist/dist-esm/react-components/src/types/ReadReceiptsBySenderId.js.map +1 -1
  588. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.d.ts +7 -1
  589. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
  590. package/dist/dist-esm/react-components/src/types/index.js.map +1 -1
  591. package/dist/dist-esm/react-composites/src/Logger.js.map +1 -1
  592. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +0 -1
  593. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +71 -64
  594. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  595. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +8 -0
  596. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  597. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +11 -14
  598. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +170 -83
  599. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  600. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +82 -12
  601. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js +9 -1
  602. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  603. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapterProvider.js.map +1 -1
  604. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/DiagnosticsForwarder.js.map +1 -1
  605. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js +1 -3
  606. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js.map +1 -1
  607. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/ParticipantSubcriber.js.map +1 -1
  608. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.d.ts +4 -1
  609. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js +12 -6
  610. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js.map +1 -1
  611. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.d.ts +1 -1
  612. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js.map +1 -1
  613. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.d.ts +4 -2
  614. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +69 -38
  615. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  616. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts +3 -2
  617. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +29 -64
  618. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  619. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.d.ts +0 -1
  620. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js +133 -141
  621. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js.map +1 -1
  622. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.d.ts +0 -1
  623. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js +1 -7
  624. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js.map +1 -1
  625. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.d.ts +1 -1
  626. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js +2 -2
  627. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js.map +1 -1
  628. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.d.ts +0 -1
  629. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js +1 -7
  630. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js.map +1 -1
  631. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.d.ts +0 -1
  632. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js +5 -4
  633. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js.map +1 -1
  634. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.d.ts +0 -1
  635. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js +4 -4
  636. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js.map +1 -1
  637. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.d.ts +0 -1
  638. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js +2 -2
  639. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js.map +1 -1
  640. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.d.ts +0 -1
  641. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js +32 -22
  642. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js.map +1 -1
  643. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.d.ts +0 -1
  644. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js +43 -32
  645. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
  646. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.d.ts +0 -1
  647. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js +25 -34
  648. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js.map +1 -1
  649. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.d.ts +1 -1
  650. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +73 -40
  651. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  652. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.d.ts +0 -1
  653. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js +2 -2
  654. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js.map +1 -1
  655. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.d.ts +0 -1
  656. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js +2 -2
  657. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js.map +1 -1
  658. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.d.ts +0 -1
  659. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js +35 -19
  660. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js.map +1 -1
  661. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePaneProvider.js.map +1 -1
  662. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.d.ts +3 -0
  663. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js +7 -9
  664. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js.map +1 -1
  665. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.d.ts +4 -1
  666. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js +24 -23
  667. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js.map +1 -1
  668. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.d.ts +0 -1
  669. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js +1 -1
  670. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js.map +1 -1
  671. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.d.ts +3 -1
  672. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js +12 -2
  673. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js.map +1 -1
  674. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.d.ts +6 -3
  675. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.js +7 -4
  676. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.js.map +1 -1
  677. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.d.ts +0 -1
  678. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js +29 -18
  679. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js.map +1 -1
  680. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.d.ts +0 -1
  681. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js +5 -2
  682. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js.map +1 -1
  683. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.d.ts +0 -1
  684. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js +17 -6
  685. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js.map +1 -1
  686. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.d.ts +0 -1
  687. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js +5 -2
  688. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js.map +1 -1
  689. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.d.ts +0 -1
  690. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js +1 -1
  691. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js.map +1 -1
  692. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.d.ts +0 -1
  693. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js +13 -3
  694. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js.map +1 -1
  695. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js +8 -8
  696. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js.map +1 -1
  697. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +7 -3
  698. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  699. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.d.ts +0 -1
  700. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.js.map +1 -1
  701. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js +1 -1
  702. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js.map +1 -1
  703. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.d.ts +1 -1
  704. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
  705. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.d.ts +3 -2
  706. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +15 -6
  707. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  708. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.d.ts +3 -1
  709. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +72 -39
  710. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  711. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.d.ts +3 -1
  712. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +13 -9
  713. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +1 -1
  714. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.d.ts +3 -1
  715. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js +15 -9
  716. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js.map +1 -1
  717. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.d.ts +0 -1
  718. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js +3 -3
  719. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js.map +1 -1
  720. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.d.ts +0 -1
  721. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js +24 -24
  722. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js.map +1 -1
  723. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.d.ts +0 -1
  724. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js +3 -3
  725. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js.map +1 -1
  726. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.d.ts +2 -2
  727. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js +1 -1
  728. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js.map +1 -1
  729. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.js +2 -1
  730. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.js.map +1 -1
  731. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.d.ts +9 -0
  732. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +8 -0
  733. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
  734. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.d.ts +1 -1
  735. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.js.map +1 -1
  736. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.d.ts +1 -1
  737. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.js.map +1 -1
  738. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/deviceCountSelector.d.ts +11 -0
  739. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/deviceCountSelector.js +14 -0
  740. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/deviceCountSelector.js.map +1 -0
  741. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.d.ts +2 -2
  742. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js +1 -1
  743. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js.map +1 -1
  744. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.d.ts +2 -2
  745. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js +7 -5
  746. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js.map +1 -1
  747. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.d.ts +4 -1
  748. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js +1 -1
  749. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js.map +1 -1
  750. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.d.ts +7 -4
  751. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js.map +1 -1
  752. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.d.ts +2 -2
  753. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js +4 -4
  754. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js.map +1 -1
  755. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.d.ts +3 -1
  756. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js +4 -2
  757. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js.map +1 -1
  758. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.d.ts +5 -5
  759. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js +4 -4
  760. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js.map +1 -1
  761. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.d.ts +2 -2
  762. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js +1 -1
  763. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js.map +1 -1
  764. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.d.ts +5 -2
  765. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.js.map +1 -1
  766. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js +6 -2
  767. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js.map +1 -1
  768. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js +2 -6
  769. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js.map +1 -1
  770. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js +2 -7
  771. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js.map +1 -1
  772. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallControls.styles.js.map +1 -1
  773. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.d.ts +5 -1
  774. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js +14 -4
  775. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js.map +1 -1
  776. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js +1 -4
  777. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js.map +1 -1
  778. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js.map +1 -1
  779. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js +1 -4
  780. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js.map +1 -1
  781. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalDeviceSettings.styles.js.map +1 -1
  782. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js +0 -1
  783. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js.map +1 -1
  784. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NetworkReconnectTile.styles.js.map +1 -1
  785. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NoticePage.styles.js.map +1 -1
  786. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js +0 -1
  787. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js.map +1 -1
  788. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.js +6 -24
  789. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.js.map +1 -1
  790. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.d.ts +2 -2
  791. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.js.map +1 -1
  792. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/ErrorTracking.d.ts +9 -0
  793. package/dist/dist-esm/{react-components/src/permissions/index.js → react-composites/src/composites/CallComposite/types/ErrorTracking.js} +2 -2
  794. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/ErrorTracking.js.map +1 -0
  795. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js +9 -11
  796. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js.map +1 -1
  797. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.d.ts +21 -0
  798. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js +43 -0
  799. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js.map +1 -0
  800. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts +6 -16
  801. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +35 -38
  802. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  803. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/index.d.ts +1 -0
  804. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/index.js +1 -0
  805. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/index.js.map +1 -1
  806. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +0 -1
  807. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +65 -22
  808. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  809. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.d.ts +0 -1
  810. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.js +1 -1
  811. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.js.map +1 -1
  812. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.d.ts +3 -5
  813. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.js +12 -32
  814. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.js.map +1 -1
  815. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.d.ts +0 -1
  816. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.js +3 -6
  817. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.js.map +1 -1
  818. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.d.ts +7 -0
  819. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.js +32 -0
  820. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.js.map +1 -0
  821. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.js.map +1 -1
  822. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +3 -1
  823. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +51 -12
  824. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  825. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +13 -1
  826. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  827. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +2 -1
  828. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +11 -2
  829. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  830. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  831. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js +1 -1
  832. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js.map +1 -1
  833. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/hooks/useCallWithChatCompositeStrings.js.map +1 -1
  834. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.js.map +1 -1
  835. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js +1 -1
  836. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js.map +1 -1
  837. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.d.ts +5 -0
  838. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js +6 -0
  839. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js.map +1 -1
  840. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/styles/CallWithChatCompositeStyles.js.map +1 -1
  841. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.d.ts +0 -1
  842. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js +2 -2
  843. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js.map +1 -1
  844. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.d.ts +0 -1
  845. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js +3 -5
  846. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js.map +1 -1
  847. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.d.ts +0 -1
  848. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +65 -20
  849. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  850. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.d.ts +0 -1
  851. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js +1 -1
  852. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +1 -1
  853. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.d.ts +0 -1
  854. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js +3 -5
  855. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js.map +1 -1
  856. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.js.map +1 -1
  857. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +2 -2
  858. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +39 -38
  859. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  860. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js +15 -20
  861. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js.map +1 -1
  862. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +2 -2
  863. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  864. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js.map +1 -1
  865. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUpload.js.map +1 -1
  866. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.d.ts +0 -1
  867. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js +11 -6
  868. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js.map +1 -1
  869. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadHandler.js.map +1 -1
  870. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js.map +1 -1
  871. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js +3 -5
  872. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js.map +1 -1
  873. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js +3 -1
  874. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js.map +1 -1
  875. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/usePropsFor.d.ts +0 -1
  876. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/usePropsFor.js.map +1 -1
  877. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js +1 -1
  878. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js.map +1 -1
  879. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js.map +1 -1
  880. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js.map +1 -1
  881. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.d.ts +6 -6
  882. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js +3 -5
  883. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js.map +1 -1
  884. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js +2 -6
  885. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js.map +1 -1
  886. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.d.ts +0 -1
  887. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js +9 -9
  888. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js.map +1 -1
  889. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.d.ts +0 -1
  890. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js +23 -25
  891. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js.map +1 -1
  892. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js.map +1 -1
  893. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.d.ts +0 -1
  894. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js +8 -3
  895. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js.map +1 -1
  896. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js +5 -14
  897. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js.map +1 -1
  898. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.d.ts +0 -1
  899. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js +9 -23
  900. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js.map +1 -1
  901. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js.map +1 -1
  902. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.d.ts +0 -1
  903. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.js +7 -9
  904. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.js.map +1 -1
  905. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.d.ts +0 -1
  906. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.js +12 -16
  907. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.js.map +1 -1
  908. package/dist/dist-esm/react-composites/src/composites/common/CaptionsSettingsModal.d.ts +0 -1
  909. package/dist/dist-esm/react-composites/src/composites/common/CaptionsSettingsModal.js +1 -1
  910. package/dist/dist-esm/react-composites/src/composites/common/CaptionsSettingsModal.js.map +1 -1
  911. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js +1 -5
  912. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js.map +1 -1
  913. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.d.ts +6 -2
  914. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +44 -46
  915. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -1
  916. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js +32 -25
  917. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js.map +1 -1
  918. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.d.ts +1 -1
  919. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js +75 -50
  920. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js.map +1 -1
  921. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.d.ts +0 -1
  922. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js +1 -1
  923. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js.map +1 -1
  924. package/dist/dist-esm/react-composites/src/composites/common/ConvertContextualMenuItemToDrawerMenuItem.js.map +1 -1
  925. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.d.ts +0 -1
  926. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +29 -63
  927. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -1
  928. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.styles.js.map +1 -1
  929. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.d.ts +0 -1
  930. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.js.map +1 -1
  931. package/dist/dist-esm/react-composites/src/composites/common/Drawer/SpokenLanguageDrawer.d.ts +0 -1
  932. package/dist/dist-esm/react-composites/src/composites/common/Drawer/SpokenLanguageDrawer.js +10 -7
  933. package/dist/dist-esm/react-composites/src/composites/common/Drawer/SpokenLanguageDrawer.js.map +1 -1
  934. package/dist/dist-esm/react-composites/src/composites/common/Drawer/SpokenLanguageDrawer.styles.js.map +1 -1
  935. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.d.ts +0 -1
  936. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js +1 -1
  937. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js.map +1 -1
  938. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.d.ts +0 -1
  939. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js +15 -13
  940. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js.map +1 -1
  941. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.d.ts +0 -1
  942. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js +1 -1
  943. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js.map +1 -1
  944. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.d.ts +0 -1
  945. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +17 -9
  946. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
  947. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.d.ts +0 -1
  948. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js +23 -13
  949. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js.map +1 -1
  950. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.d.ts +0 -1
  951. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js +7 -15
  952. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js.map +1 -1
  953. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js.map +1 -1
  954. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.d.ts +0 -1
  955. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js +7 -15
  956. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js.map +1 -1
  957. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.d.ts +0 -1
  958. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js +10 -8
  959. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js.map +1 -1
  960. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.d.ts +4 -5
  961. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js +34 -19
  962. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js.map +1 -1
  963. package/dist/dist-esm/react-composites/src/composites/common/adapters.js.map +1 -1
  964. package/dist/dist-esm/react-composites/src/composites/common/constants.js.map +1 -1
  965. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +6 -3
  966. package/dist/dist-esm/react-composites/src/composites/common/icons.js +9 -5
  967. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  968. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependency.d.ts +8 -0
  969. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependency.js +33 -0
  970. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependency.js.map +1 -0
  971. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependencyLazy.d.ts +8 -0
  972. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependencyLazy.js +32 -0
  973. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependencyLazy.js.map +1 -0
  974. package/dist/dist-esm/react-composites/src/composites/common/styles/Composite.styles.js.map +1 -1
  975. package/dist/dist-esm/react-composites/src/composites/common/styles/GlobalHostLayer.styles.js.map +1 -1
  976. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js +5 -16
  977. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js.map +1 -1
  978. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js +12 -51
  979. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js.map +1 -1
  980. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js +6 -29
  981. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js.map +1 -1
  982. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js +4 -22
  983. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js.map +1 -1
  984. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js.map +1 -1
  985. package/dist/dist-esm/react-composites/src/composites/common/utils.js +17 -12
  986. package/dist/dist-esm/react-composites/src/composites/common/utils.js.map +1 -1
  987. package/dist/dist-esm/react-composites/src/composites/index.d.ts +2 -0
  988. package/dist/dist-esm/react-composites/src/composites/index.js +4 -0
  989. package/dist/dist-esm/react-composites/src/composites/index.js.map +1 -1
  990. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js +2 -2
  991. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js.map +1 -1
  992. package/dist/dist-esm/react-composites/src/composites/localization/index.js.map +1 -1
  993. package/dist/dist-esm/react-composites/src/composites/localization/locales/ar-SA/strings.json +4 -2
  994. package/dist/dist-esm/react-composites/src/composites/localization/locales/cs-CZ/strings.json +8 -6
  995. package/dist/dist-esm/react-composites/src/composites/localization/locales/de-DE/strings.json +4 -2
  996. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-GB/strings.json +4 -2
  997. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-US/strings.json +4 -2
  998. package/dist/dist-esm/react-composites/src/composites/localization/locales/es-ES/strings.json +4 -2
  999. package/dist/dist-esm/react-composites/src/composites/localization/locales/fi-FI/strings.json +4 -2
  1000. package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-FR/strings.json +4 -2
  1001. package/dist/dist-esm/react-composites/src/composites/localization/locales/he-IL/strings.json +4 -2
  1002. package/dist/dist-esm/react-composites/src/composites/localization/locales/index.js.map +1 -1
  1003. package/dist/dist-esm/react-composites/src/composites/localization/locales/it-IT/strings.json +4 -2
  1004. package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/strings.json +4 -2
  1005. package/dist/dist-esm/react-composites/src/composites/localization/locales/ko-KR/strings.json +4 -2
  1006. package/dist/dist-esm/react-composites/src/composites/localization/locales/nb-NO/strings.json +4 -2
  1007. package/dist/dist-esm/react-composites/src/composites/localization/locales/nl-NL/strings.json +4 -2
  1008. package/dist/dist-esm/react-composites/src/composites/localization/locales/pl-PL/strings.json +4 -2
  1009. package/dist/dist-esm/react-composites/src/composites/localization/locales/pt-BR/strings.json +4 -2
  1010. package/dist/dist-esm/react-composites/src/composites/localization/locales/ru-RU/strings.json +4 -2
  1011. package/dist/dist-esm/react-composites/src/composites/localization/locales/sv-SE/strings.json +4 -2
  1012. package/dist/dist-esm/react-composites/src/composites/localization/locales/tr-TR/strings.json +4 -2
  1013. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-CN/strings.json +4 -2
  1014. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-TW/strings.json +4 -2
  1015. package/dist/dist-esm/react-composites/src/index-public.js.map +1 -1
  1016. package/package.json +21 -22
  1017. package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.d.ts +0 -61
  1018. package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.js +0 -74
  1019. package/dist/dist-esm/react-components/src/permissions/PermissionsProvider.js.map +0 -1
  1020. package/dist/dist-esm/react-components/src/permissions/index.d.ts +0 -2
  1021. package/dist/dist-esm/react-components/src/permissions/index.js.map +0 -1
  1022. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/videoBackgroundErrorsSelector.d.ts +0 -7
  1023. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/videoBackgroundErrorsSelector.js +0 -14
  1024. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/videoBackgroundErrorsSelector.js.map +0 -1
@@ -3,9 +3,10 @@ import { CallControlOptions } from '../types/CallControlOptions';
3
3
  import { CallState, RemoteParticipantState } from "../../../../../calling-stateful-client/src";
4
4
  import { EnvironmentInfo } from '@azure/communication-calling';
5
5
  import { AdapterStateModifier } from '../adapter/AzureCommunicationCallAdapter';
6
- import { AdapterError } from '../../common/adapters';
6
+ import { VideoBackgroundEffectsDependency } from "../../../../../calling-component-bindings/src";
7
7
  import { VideoBackgroundEffect } from '../adapter/CallAdapter';
8
- import { VideoDeviceInfo, VideoEffectProcessor } from '@azure/communication-calling';
8
+ import { VideoDeviceInfo } from '@azure/communication-calling';
9
+ import { VideoEffectProcessor } from '@azure/communication-calling';
9
10
  /**
10
11
  * @private
11
12
  */
@@ -20,10 +21,10 @@ export declare const reduceCallControlsForMobile: (callControlOptions: CallContr
20
21
  /**
21
22
  * type definition for conditional-compilation
22
23
  */
23
- declare type GetCallCompositePageFunction = ((call: CallState | undefined, previousCall: CallState | undefined) => CallCompositePage) & ((call: CallState | undefined, previousCall: CallState | undefined, /* @conditional-compile-remove(unsupported-browser) */ unsupportedBrowserInfo?: {
24
+ declare type GetCallCompositePageFunction = ((call: CallState | undefined, previousCall: CallState | undefined) => CallCompositePage) & ((call: CallState | undefined, previousCall: CallState | undefined, unsupportedBrowserInfo?: {
24
25
  environmentInfo?: EnvironmentInfo;
25
26
  unsupportedBrowserVersionOptedIn?: boolean;
26
- }, /* @conditional-compile-remove(call-transfer) */ transferCall?: CallState) => CallCompositePage);
27
+ }, transferCall?: CallState) => CallCompositePage);
27
28
  /**
28
29
  * Get the current call composite page based on the current call composite state
29
30
  *
@@ -81,19 +82,8 @@ export declare const _isSafari: (environmentInfo: undefined | /* @conditional-co
81
82
  * It takes in one modifier function to generate one single participant object, it returns undefined if the object keeps unmodified
82
83
  */
83
84
  export declare const createParticipantModifier: (createModifiedParticipant: (id: string, participant: RemoteParticipantState) => RemoteParticipantState | undefined) => AdapterStateModifier;
84
- /**
85
- * @private
86
- */
87
- export interface DismissedError {
88
- dismissedAt: Date;
89
- activeSince?: Date;
90
- }
91
- /**
92
- * @private
93
- */
94
- export declare const dismissVideoEffectsError: (toDismiss: AdapterError) => DismissedError;
95
85
  /** @private */
96
- export declare const getBackgroundEffectFromSelectedEffect: (selectedEffect: VideoBackgroundEffect | undefined) => VideoEffectProcessor | undefined;
86
+ export declare const getBackgroundEffectFromSelectedEffect: (selectedEffect: VideoBackgroundEffect | undefined, VideoBackgroundEffectsDependency: VideoBackgroundEffectsDependency) => VideoEffectProcessor | undefined;
97
87
  /**
98
88
  * @remarks this logic should mimic the onToggleCamera in the common call handlers.
99
89
  * @private
@@ -12,8 +12,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
12
12
  import { END_CALL_PAGES } from '../adapter/CallAdapter';
13
13
  import { _isInCall, _isPreviewOn, _isInLobbyOrConnecting } from "../../../../../calling-component-bindings/src";
14
14
  import { isPhoneNumberIdentifier } from '@azure/communication-common';
15
- /* @conditional-compile-remove(video-background-effects) */
16
- import { BackgroundBlurEffect, BackgroundReplacementEffect } from '@azure/communication-calling-effects';
17
15
  const ACCESS_DENIED_TEAMS_MEETING_SUB_CODE = 5854;
18
16
  const REMOTE_PSTN_USER_HUNG_UP = 560000;
19
17
  const REMOVED_FROM_CALL_SUB_CODES = [5000, 5300, REMOTE_PSTN_USER_HUNG_UP];
@@ -26,7 +24,7 @@ const DENIED_PERMISSION_TO_ROOM_SUB_CODE = 5828;
26
24
  */
27
25
  export const isCameraOn = (state) => {
28
26
  if (state.call) {
29
- const stream = state.call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video');
27
+ const stream = state.call.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video');
30
28
  return !!stream;
31
29
  }
32
30
  else {
@@ -76,7 +74,9 @@ const getCallEndReason = (call) => {
76
74
  * If yes, the caller was kicked out of the call, but we need to show them that they left the call.
77
75
  * Note: This check will only work for 1:1 PSTN Calls. The subcode is different for 1:N PSTN calls, and we do not need to handle that case.
78
76
  */
79
- if (remoteParticipantsEndedArray.length === 1 && isPhoneNumberIdentifier(remoteParticipantsEndedArray[0].identifier) && ((_a = call.callEndReason) === null || _a === void 0 ? void 0 : _a.subCode) !== REMOTE_PSTN_USER_HUNG_UP) {
77
+ if (remoteParticipantsEndedArray.length === 1 &&
78
+ isPhoneNumberIdentifier(remoteParticipantsEndedArray[0].identifier) &&
79
+ ((_a = call.callEndReason) === null || _a === void 0 ? void 0 : _a.subCode) !== REMOTE_PSTN_USER_HUNG_UP) {
80
80
  return CallEndReasons.LEFT_CALL;
81
81
  }
82
82
  if (((_b = call.callEndReason) === null || _b === void 0 ? void 0 : _b.subCode) && call.callEndReason.subCode === ACCESS_DENIED_TEAMS_MEETING_SUB_CODE) {
@@ -175,7 +175,16 @@ export const getCallCompositePage = (call, previousCall, unsupportedBrowserInfo,
175
175
  return 'configuration';
176
176
  };
177
177
  /** @private */
178
- export const IsCallEndedPage = (page) => END_CALL_PAGES.includes(page);
178
+ export const IsCallEndedPage = (
179
+ /**
180
+ * Explicitly listing the pages of this function intentionally.
181
+ * This protects against adding a new composite page that should be marked as an callEndedPage.
182
+ * EndCallPages are used to trigger onCallEnded events so this could easily be missed.
183
+ * When you add a new composite page this will throw a compiler error. If this new page is an
184
+ * EndCallPage ensure you update the END_CALL_PAGES. Afterwards update the `page` parameter
185
+ * type below to allow your new page, i.e. add `| <your new page>
186
+ */
187
+ page) => END_CALL_PAGES.includes(page);
179
188
  /**
180
189
  * Creates a new call control options object and sets the correct values for disabling
181
190
  * the buttons provided in the `disabledControls` array.
@@ -194,18 +203,14 @@ export const disableCallControls = (callControlOptions, disabledControls) => {
194
203
  let newOptions = (_a = (callControlOptions instanceof Object ? Object.assign({}, callControlOptions) : callControlOptions)) !== null && _a !== void 0 ? _a : {};
195
204
  if (newOptions === true || newOptions === undefined) {
196
205
  newOptions = disabledControls.reduce((acc, key) => {
197
- acc[key] = {
198
- disabled: true
199
- };
206
+ acc[key] = { disabled: true };
200
207
  return acc;
201
208
  }, {});
202
209
  }
203
210
  else {
204
- disabledControls.forEach(key => {
211
+ disabledControls.forEach((key) => {
205
212
  if (newOptions[key] !== false) {
206
- newOptions[key] = {
207
- disabled: true
208
- };
213
+ newOptions[key] = { disabled: true };
209
214
  }
210
215
  });
211
216
  }
@@ -231,9 +236,7 @@ export const isDisabled = (option) => {
231
236
  */
232
237
  const queryCameraPermissionFromPermissionsAPI = () => __awaiter(void 0, void 0, void 0, function* () {
233
238
  try {
234
- return (yield navigator.permissions.query({
235
- name: 'camera'
236
- })).state;
239
+ return (yield navigator.permissions.query({ name: 'camera' })).state;
237
240
  }
238
241
  catch (e) {
239
242
  console.info('permissions API is not supported by browser', e);
@@ -246,9 +249,7 @@ const queryCameraPermissionFromPermissionsAPI = () => __awaiter(void 0, void 0,
246
249
  */
247
250
  const queryMicrophonePermissionFromPermissionsAPI = () => __awaiter(void 0, void 0, void 0, function* () {
248
251
  try {
249
- return (yield navigator.permissions.query({
250
- name: 'microphone'
251
- })).state;
252
+ return (yield navigator.permissions.query({ name: 'microphone' })).state;
252
253
  }
253
254
  catch (e) {
254
255
  console.info('permissions API is not supported by browser', e);
@@ -264,13 +265,18 @@ const queryMicrophonePermissionFromPermissionsAPI = () => __awaiter(void 0, void
264
265
  * @private
265
266
  */
266
267
  export const getDevicePermissionState = (setVideoState, setAudioState) => __awaiter(void 0, void 0, void 0, function* () {
267
- const [cameraResult, microphoneResult] = yield Promise.all([queryCameraPermissionFromPermissionsAPI(), queryMicrophonePermissionFromPermissionsAPI()]);
268
+ const [cameraResult, microphoneResult] = yield Promise.all([
269
+ queryCameraPermissionFromPermissionsAPI(),
270
+ queryMicrophonePermissionFromPermissionsAPI()
271
+ ]);
268
272
  setVideoState(cameraResult);
269
273
  setAudioState(microphoneResult);
270
274
  });
271
275
  /* @conditional-compile-remove(unsupported-browser) */
272
276
  const isUnsupportedEnvironment = (environmentInfo, unsupportedBrowserVersionOptedIn) => {
273
- return !!((environmentInfo === null || environmentInfo === void 0 ? void 0 : environmentInfo.isSupportedBrowser) === false || (environmentInfo === null || environmentInfo === void 0 ? void 0 : environmentInfo.isSupportedBrowserVersion) === false && !unsupportedBrowserVersionOptedIn || (environmentInfo === null || environmentInfo === void 0 ? void 0 : environmentInfo.isSupportedPlatform) === false);
277
+ return !!((environmentInfo === null || environmentInfo === void 0 ? void 0 : environmentInfo.isSupportedBrowser) === false ||
278
+ ((environmentInfo === null || environmentInfo === void 0 ? void 0 : environmentInfo.isSupportedBrowserVersion) === false && !unsupportedBrowserVersionOptedIn) ||
279
+ (environmentInfo === null || environmentInfo === void 0 ? void 0 : environmentInfo.isSupportedPlatform) === false);
274
280
  };
275
281
  /**
276
282
  * Check if we are using safari browser
@@ -316,28 +322,19 @@ export const createParticipantModifier = (createModifiedParticipant) => {
316
322
  }
317
323
  previousParticipantState = (_d = state.call) === null || _d === void 0 ? void 0 : _d.remoteParticipants;
318
324
  }
319
- return Object.assign(Object.assign({}, state), { call: state.call ? Object.assign(Object.assign({}, state.call), { remoteParticipants: modifiedParticipants }) : undefined });
320
- };
321
- };
322
- /**
323
- * @private
324
- */
325
- export const dismissVideoEffectsError = (toDismiss) => {
326
- var _a;
327
- const now = new Date(Date.now());
328
- const toDismissTimestamp = (_a = toDismiss.timestamp) !== null && _a !== void 0 ? _a : now;
329
- // Record that this error was dismissed for the first time right now.
330
- return {
331
- dismissedAt: now > toDismissTimestamp ? now : toDismissTimestamp,
332
- activeSince: toDismiss.timestamp
325
+ return Object.assign(Object.assign({}, state), { call: state.call
326
+ ? Object.assign(Object.assign({}, state.call), { remoteParticipants: modifiedParticipants }) : undefined });
333
327
  };
334
328
  };
335
329
  /* @conditional-compile-remove(video-background-effects) */
336
330
  /** @private */
337
- export const getBackgroundEffectFromSelectedEffect = (selectedEffect) => (selectedEffect === null || selectedEffect === void 0 ? void 0 : selectedEffect.effectName) === 'blur' ? new BackgroundBlurEffect() : (selectedEffect === null || selectedEffect === void 0 ? void 0 : selectedEffect.effectName) === 'replacement' ? new BackgroundReplacementEffect({
338
- backgroundImageUrl: selectedEffect.backgroundImageUrl
339
- }) : undefined;
340
- /* @conditional-compile-remove(video-background-effects) */
331
+ export const getBackgroundEffectFromSelectedEffect = (selectedEffect, VideoBackgroundEffectsDependency) => (selectedEffect === null || selectedEffect === void 0 ? void 0 : selectedEffect.effectName) === 'blur'
332
+ ? VideoBackgroundEffectsDependency.createBackgroundBlurEffect()
333
+ : (selectedEffect === null || selectedEffect === void 0 ? void 0 : selectedEffect.effectName) === 'replacement'
334
+ ? VideoBackgroundEffectsDependency.createBackgroundReplacementEffect({
335
+ backgroundImageUrl: selectedEffect.backgroundImageUrl
336
+ })
337
+ : undefined;
341
338
  /**
342
339
  * @remarks this logic should mimic the onToggleCamera in the common call handlers.
343
340
  * @private
@@ -1 +1 @@
1
- {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../../../../../preprocess-dist/react-composites/src/composites/CallComposite/utils/Utils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { CallAdapterState, CallCompositePage, END_CALL_PAGES } from '../adapter/CallAdapter';\nimport { _isInCall, _isPreviewOn, _isInLobbyOrConnecting } from '@internal/calling-component-bindings';\nimport { CallControlOptions } from '../types/CallControlOptions';\nimport { CallState, RemoteParticipantState } from '@internal/calling-stateful-client';\nimport { isPhoneNumberIdentifier } from '@azure/communication-common';\n/* @conditional-compile-remove(unsupported-browser) */\nimport { EnvironmentInfo } from '@azure/communication-calling';\nimport { AdapterStateModifier } from '../adapter/AzureCommunicationCallAdapter';\nimport { AdapterError } from '../../common/adapters';\n/* @conditional-compile-remove(video-background-effects) */\nimport { BackgroundBlurEffect, BackgroundReplacementEffect } from '@azure/communication-calling-effects';\n/* @conditional-compile-remove(video-background-effects) */\nimport { VideoBackgroundEffect } from '../adapter/CallAdapter';\n/* @conditional-compile-remove(video-background-effects) */\nimport { VideoDeviceInfo, VideoEffectProcessor } from '@azure/communication-calling';\nconst ACCESS_DENIED_TEAMS_MEETING_SUB_CODE = 5854;\nconst REMOTE_PSTN_USER_HUNG_UP = 560000;\nconst REMOVED_FROM_CALL_SUB_CODES = [5000, 5300, REMOTE_PSTN_USER_HUNG_UP];\n/* @conditional-compile-remove(rooms) */\nconst ROOM_NOT_FOUND_SUB_CODE = 5751;\n/* @conditional-compile-remove(rooms) */\nconst DENIED_PERMISSION_TO_ROOM_SUB_CODE = 5828;\n\n/**\n * @private\n */\nexport const isCameraOn = (state: CallAdapterState): boolean => {\n if (state.call) {\n const stream = state.call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video');\n return !!stream;\n } else {\n if (state.devices.selectedCamera) {\n const previewOn = _isPreviewOn(state.devices);\n return previewOn;\n }\n }\n return false;\n};\n\n/**\n * Reduce the set of call controls visible on mobile.\n * For example do not show screenshare button.\n *\n * @private\n */\nexport const reduceCallControlsForMobile = (callControlOptions: CallControlOptions | boolean | undefined): CallControlOptions | false => {\n if (callControlOptions === false) {\n return false;\n }\n\n // Ensure call controls a valid object.\n const reduceCallControlOptions = callControlOptions === true ? {} : callControlOptions || {};\n\n // Set to compressed mode when composite is optimized for mobile\n reduceCallControlOptions.displayType = 'compact';\n\n // Do not show screen share button when composite is optimized for mobile unless the developer\n // has explicitly opted in.\n if (reduceCallControlOptions.screenShareButton !== true) {\n reduceCallControlOptions.screenShareButton = false;\n }\n return reduceCallControlOptions;\n};\nenum CallEndReasons {\n LEFT_CALL,\n ACCESS_DENIED,\n REMOVED_FROM_CALL,\n ROOM_NOT_FOUND,\n DENIED_PERMISSION_TO_ROOM,\n}\nconst getCallEndReason = (call: CallState): CallEndReasons => {\n const remoteParticipantsEndedArray = Array.from(Object.values(call.remoteParticipantsEnded));\n /**\n * Handle the special case in a PSTN call where removing the last user kicks the caller out of the call.\n * The code and subcode is the same as when a user is removed from a teams interop call.\n * Hence, we look at the last remote participant removed to determine if the last participant removed was a phone number.\n * If yes, the caller was kicked out of the call, but we need to show them that they left the call.\n * Note: This check will only work for 1:1 PSTN Calls. The subcode is different for 1:N PSTN calls, and we do not need to handle that case.\n */\n if (remoteParticipantsEndedArray.length === 1 && isPhoneNumberIdentifier(remoteParticipantsEndedArray[0].identifier) && call.callEndReason?.subCode !== REMOTE_PSTN_USER_HUNG_UP) {\n return CallEndReasons.LEFT_CALL;\n }\n if (call.callEndReason?.subCode && call.callEndReason.subCode === ACCESS_DENIED_TEAMS_MEETING_SUB_CODE) {\n return CallEndReasons.ACCESS_DENIED;\n }\n if (call.callEndReason?.subCode && REMOVED_FROM_CALL_SUB_CODES.includes(call.callEndReason.subCode)) {\n return CallEndReasons.REMOVED_FROM_CALL;\n }\n\n /* @conditional-compile-remove(rooms) */\n if (call.callEndReason?.subCode && call.callEndReason.subCode === ROOM_NOT_FOUND_SUB_CODE) {\n return CallEndReasons.ROOM_NOT_FOUND;\n }\n\n /* @conditional-compile-remove(rooms) */\n if (call.callEndReason?.subCode && call.callEndReason.subCode === DENIED_PERMISSION_TO_ROOM_SUB_CODE) {\n return CallEndReasons.DENIED_PERMISSION_TO_ROOM;\n }\n if (call.callEndReason) {\n // No error codes match, assume the user simply left the call regularly\n return CallEndReasons.LEFT_CALL;\n }\n throw new Error('No matching call end reason');\n};\n\n/**\n * type definition for conditional-compilation\n */\ntype GetCallCompositePageFunction = ((call: CallState | undefined, previousCall: CallState | undefined) => CallCompositePage) & ((call: CallState | undefined, previousCall: CallState | undefined, /* @conditional-compile-remove(unsupported-browser) */unsupportedBrowserInfo?: {\n environmentInfo?: EnvironmentInfo;\n unsupportedBrowserVersionOptedIn?: boolean;\n}, /* @conditional-compile-remove(call-transfer) */transferCall?: CallState) => CallCompositePage);\n/**\n * Get the current call composite page based on the current call composite state\n *\n * @param Call - The current call state\n * @param previousCall - The state of the most recent previous call that has ended.\n *\n * @remarks - The previousCall state is needed to determine if the call has ended.\n * When the call ends a new call object is created, and so we must lookback at the\n * previous call state to understand how the call has ended. If there is no previous\n * call we know that this is a fresh call and can display the configuration page.\n *\n * @private\n */\nexport const getCallCompositePage: GetCallCompositePageFunction = (call, previousCall?, unsupportedBrowserInfo?, transferCall?: CallState): CallCompositePage => {\n /* @conditional-compile-remove(unsupported-browser) */\n if (isUnsupportedEnvironment(unsupportedBrowserInfo.environmentInfo, unsupportedBrowserInfo.unsupportedBrowserVersionOptedIn)) {\n return 'unsupportedEnvironment';\n }\n\n /* @conditional-compile-remove(call-transfer) */\n if (transferCall !== undefined) {\n return 'transferring';\n }\n if (call) {\n // Must check for ongoing call *before* looking at any previous calls.\n // If the composite completes one call and joins another, the previous calls\n // will be populated, but not relevant for determining the page.\n\n // `_isInLobbyOrConnecting` needs to be checked first because `_isInCall` also returns true when call is in lobby.\n if (_isInLobbyOrConnecting(call?.state)) {\n return 'lobby';\n // `LocalHold` needs to be checked before `isInCall` since it is also a state that's considered in call.\n } else if (call?.state === 'LocalHold') {\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\n return 'hold';\n return 'call';\n } else if (call?.state === 'Disconnecting') {\n return 'leaving';\n } else if (_isInCall(call?.state)) {\n return 'call';\n } else {\n // When the call object has been constructed after clicking , but before 'connecting' has been\n // set on the call object, we continue to show the configuration screen.\n // The call object does not correctly reflect local device state until `call.state` moves to `connecting`.\n // Moving to the 'lobby' page too soon leads to components that depend on the `call` object to show incorrect\n // transitional state.\n return 'configuration';\n }\n }\n if (previousCall) {\n const reason = getCallEndReason(previousCall);\n /* @conditional-compile-remove(rooms) */\n switch (reason) {\n case CallEndReasons.ROOM_NOT_FOUND:\n return 'roomNotFound';\n case CallEndReasons.DENIED_PERMISSION_TO_ROOM:\n return 'deniedPermissionToRoom';\n }\n switch (reason) {\n case CallEndReasons.ACCESS_DENIED:\n return 'accessDeniedTeamsMeeting';\n case CallEndReasons.REMOVED_FROM_CALL:\n return 'removedFromCall';\n case CallEndReasons.LEFT_CALL:\n if (previousCall.diagnostics.network.latest.noNetwork) {\n return 'joinCallFailedDueToNoNetwork';\n }\n return 'leftCall';\n }\n }\n\n // No call state - show starting page (configuration)\n return 'configuration';\n};\n\n/** @private */\nexport const IsCallEndedPage = (page: 'accessDeniedTeamsMeeting' | 'call' | 'configuration' | 'joinCallFailedDueToNoNetwork' | 'leaving' | 'leftCall' | 'lobby' | 'removedFromCall' | /* @conditional-compile-remove(PSTN-calls) */'hold' | /* @conditional-compile-remove(rooms) */'roomNotFound' | /* @conditional-compile-remove(rooms) */'deniedPermissionToRoom' | /* @conditional-compile-remove(unsupported-browser) */'unsupportedEnvironment' | /* @conditional-compile-remove(call-transfer) */'transferring'): boolean => END_CALL_PAGES.includes(page);\n\n/**\n * Creates a new call control options object and sets the correct values for disabling\n * the buttons provided in the `disabledControls` array.\n * Returns a new object without changing the original object.\n * @param callControlOptions options for the call control component that need to be modified.\n * @param disabledControls An array of controls to disable.\n * @returns a copy of callControlOptions with disabledControls disabled\n * @private\n */\nexport const disableCallControls = (callControlOptions: CallControlOptions | boolean | undefined, disabledControls: (keyof CallControlOptions)[]): CallControlOptions | boolean | undefined => {\n if (callControlOptions === false) {\n return false;\n }\n // Ensure we clone the prop if it is an object to ensure we do not mutate the original prop.\n let newOptions = (callControlOptions instanceof Object ? ({\n ...callControlOptions\n } as CallControlOptions) : callControlOptions) ?? {};\n if (newOptions === true || newOptions === undefined) {\n newOptions = disabledControls.reduce((acc, key) => {\n acc[key] = {\n disabled: true\n };\n return acc;\n }, {});\n } else {\n disabledControls.forEach(key => {\n if (newOptions[key] !== false) {\n newOptions[key] = {\n disabled: true\n };\n }\n });\n }\n return newOptions;\n};\n\n/**\n * Check if a disabled object is provided for a button and returns if the button is disabled.\n * A button is only disabled if is explicitly set to disabled.\n *\n * @param option\n * @returns whether a button is disabled\n * @private\n */\nexport const isDisabled = (option: boolean | {\n disabled: boolean;\n} | undefined): boolean => {\n if (option === undefined || typeof option === 'boolean') {\n return false;\n }\n return option.disabled;\n};\n\n/* @conditional-compile-remove(call-readiness) */\n/**\n * @returns Permissions state for the camera.\n */\nconst queryCameraPermissionFromPermissionsAPI = async (): Promise<PermissionState | 'unsupported'> => {\n try {\n return (await navigator.permissions.query({\n name: ('camera' as PermissionName)\n })).state;\n } catch (e) {\n console.info('permissions API is not supported by browser', e);\n return 'unsupported';\n }\n};\n\n/* @conditional-compile-remove(call-readiness) */\n/**\n * @returns Permissions state for the microphone.\n */\nconst queryMicrophonePermissionFromPermissionsAPI = async (): Promise<PermissionState | 'unsupported'> => {\n try {\n return (await navigator.permissions.query({\n name: ('microphone' as PermissionName)\n })).state;\n } catch (e) {\n console.info('permissions API is not supported by browser', e);\n return 'unsupported';\n }\n};\n\n/* @conditional-compile-remove(call-readiness) */\n/**\n *\n * This function uses permission API to determine if device permission state is granted, prompt or denied\n * @returns whether device permission state is granted, prompt or denied\n * If permission API is not supported on this browser, permission state is set to unsupported.\n * @private\n */\nexport const getDevicePermissionState = async (setVideoState: (state: PermissionState | 'unsupported') => void, setAudioState: (state: PermissionState | 'unsupported') => void): Promise<void> => {\n const [cameraResult, microphoneResult] = await Promise.all([queryCameraPermissionFromPermissionsAPI(), queryMicrophonePermissionFromPermissionsAPI()]);\n setVideoState(cameraResult);\n setAudioState(microphoneResult);\n};\n/* @conditional-compile-remove(unsupported-browser) */\nconst isUnsupportedEnvironment = (environmentInfo?: EnvironmentInfo, unsupportedBrowserVersionOptedIn?: boolean): boolean => {\n return !!(environmentInfo?.isSupportedBrowser === false || environmentInfo?.isSupportedBrowserVersion === false && !unsupportedBrowserVersionOptedIn || environmentInfo?.isSupportedPlatform === false);\n};\n\n/**\n * Check if we are using safari browser\n * @private\n */\nexport const _isSafari = (environmentInfo: undefined | /* @conditional-compile-remove(unsupported-browser) */EnvironmentInfo): boolean => {\n /* @conditional-compile-remove(unsupported-browser) */\n return environmentInfo?.environment.browser === 'safari';\n return /^((?!chrome|android|crios|fxios).)*safari/i.test(navigator.userAgent);\n};\n\n/**\n * @private\n * This is the util function to create a participant modifier for remote participantList\n * It memoize previous original participant items and only update the changed participant\n * It takes in one modifier function to generate one single participant object, it returns undefined if the object keeps unmodified\n */\nexport const createParticipantModifier = (createModifiedParticipant: (id: string, participant: RemoteParticipantState) => RemoteParticipantState | undefined): AdapterStateModifier => {\n let previousParticipantState: {\n [keys: string]: RemoteParticipantState;\n } | undefined = undefined;\n let modifiedParticipants = {};\n const memoizedParticipants: {\n [id: string]: {\n originalRef: RemoteParticipantState;\n newParticipant: RemoteParticipantState;\n };\n } = {};\n return (state: CallAdapterState) => {\n // if root state is the same, we don't need to update the participants\n if (state.call?.remoteParticipants !== previousParticipantState) {\n modifiedParticipants = {};\n const originalParticipants = state.call?.remoteParticipants;\n for (const key in originalParticipants) {\n const modifiedParticipant = createModifiedParticipant(key, originalParticipants[key]);\n if (modifiedParticipant === undefined) {\n modifiedParticipants[key] = originalParticipants[key];\n continue;\n }\n // Generate the new item if original cached item has been changed\n if (memoizedParticipants[key]?.originalRef !== originalParticipants[key]) {\n memoizedParticipants[key] = {\n newParticipant: modifiedParticipant,\n originalRef: originalParticipants[key]\n };\n }\n\n // the modified participant is always coming from the memoized cache, whether is was refreshed\n // from the previous closure or not\n modifiedParticipants[key] = memoizedParticipants[key].newParticipant;\n }\n previousParticipantState = state.call?.remoteParticipants;\n }\n return {\n ...state,\n call: state.call ? {\n ...state.call,\n remoteParticipants: modifiedParticipants\n } : undefined\n };\n };\n};\n\n/**\n * @private\n */\nexport interface DismissedError {\n dismissedAt: Date;\n activeSince?: Date;\n}\n\n/**\n * @private\n */\nexport const dismissVideoEffectsError = (toDismiss: AdapterError): DismissedError => {\n const now = new Date(Date.now());\n const toDismissTimestamp = toDismiss.timestamp ?? now;\n\n // Record that this error was dismissed for the first time right now.\n return {\n dismissedAt: now > toDismissTimestamp ? now : toDismissTimestamp,\n activeSince: toDismiss.timestamp\n };\n};\n\n/* @conditional-compile-remove(video-background-effects) */\n/** @private */\nexport const getBackgroundEffectFromSelectedEffect = (selectedEffect: VideoBackgroundEffect | undefined): VideoEffectProcessor | undefined => selectedEffect?.effectName === 'blur' ? new BackgroundBlurEffect() : selectedEffect?.effectName === 'replacement' ? new BackgroundReplacementEffect({\n backgroundImageUrl: selectedEffect.backgroundImageUrl\n}) : undefined;\n\n/* @conditional-compile-remove(video-background-effects) */\n/**\n * @remarks this logic should mimic the onToggleCamera in the common call handlers.\n * @private\n */\nexport const getSelectedCameraFromAdapterState = (state: CallAdapterState): VideoDeviceInfo | undefined => state.devices.selectedCamera || state.devices.cameras[0];\"../../../../../calling-component-bindings/src\"\"../../../../../calling-stateful-client/src\""]}
1
+ {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/CallComposite/utils/Utils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { CallAdapterState, CallCompositePage, END_CALL_PAGES } from '../adapter/CallAdapter';\nimport { _isInCall, _isPreviewOn, _isInLobbyOrConnecting } from '@internal/calling-component-bindings';\nimport { CallControlOptions } from '../types/CallControlOptions';\nimport { CallState, RemoteParticipantState } from '@internal/calling-stateful-client';\nimport { isPhoneNumberIdentifier } from '@azure/communication-common';\n/* @conditional-compile-remove(unsupported-browser) */\nimport { EnvironmentInfo } from '@azure/communication-calling';\nimport { AdapterStateModifier } from '../adapter/AzureCommunicationCallAdapter';\n/* @conditional-compile-remove(video-background-effects) */\nimport { VideoBackgroundEffectsDependency } from '@internal/calling-component-bindings';\n/* @conditional-compile-remove(video-background-effects) */\nimport { VideoBackgroundEffect } from '../adapter/CallAdapter';\nimport { VideoDeviceInfo } from '@azure/communication-calling';\n/* @conditional-compile-remove(video-background-effects) */\nimport { VideoEffectProcessor } from '@azure/communication-calling';\n\nconst ACCESS_DENIED_TEAMS_MEETING_SUB_CODE = 5854;\nconst REMOTE_PSTN_USER_HUNG_UP = 560000;\nconst REMOVED_FROM_CALL_SUB_CODES = [5000, 5300, REMOTE_PSTN_USER_HUNG_UP];\n/* @conditional-compile-remove(rooms) */\nconst ROOM_NOT_FOUND_SUB_CODE = 5751;\n/* @conditional-compile-remove(rooms) */\nconst DENIED_PERMISSION_TO_ROOM_SUB_CODE = 5828;\n\n/**\n * @private\n */\nexport const isCameraOn = (state: CallAdapterState): boolean => {\n if (state.call) {\n const stream = state.call.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video');\n return !!stream;\n } else {\n if (state.devices.selectedCamera) {\n const previewOn = _isPreviewOn(state.devices);\n return previewOn;\n }\n }\n return false;\n};\n\n/**\n * Reduce the set of call controls visible on mobile.\n * For example do not show screenshare button.\n *\n * @private\n */\nexport const reduceCallControlsForMobile = (\n callControlOptions: CallControlOptions | boolean | undefined\n): CallControlOptions | false => {\n if (callControlOptions === false) {\n return false;\n }\n\n // Ensure call controls a valid object.\n const reduceCallControlOptions = callControlOptions === true ? {} : callControlOptions || {};\n\n // Set to compressed mode when composite is optimized for mobile\n reduceCallControlOptions.displayType = 'compact';\n\n // Do not show screen share button when composite is optimized for mobile unless the developer\n // has explicitly opted in.\n if (reduceCallControlOptions.screenShareButton !== true) {\n reduceCallControlOptions.screenShareButton = false;\n }\n\n return reduceCallControlOptions;\n};\n\nenum CallEndReasons {\n LEFT_CALL,\n ACCESS_DENIED,\n REMOVED_FROM_CALL,\n ROOM_NOT_FOUND,\n DENIED_PERMISSION_TO_ROOM\n}\n\nconst getCallEndReason = (call: CallState): CallEndReasons => {\n const remoteParticipantsEndedArray = Array.from(Object.values(call.remoteParticipantsEnded));\n /**\n * Handle the special case in a PSTN call where removing the last user kicks the caller out of the call.\n * The code and subcode is the same as when a user is removed from a teams interop call.\n * Hence, we look at the last remote participant removed to determine if the last participant removed was a phone number.\n * If yes, the caller was kicked out of the call, but we need to show them that they left the call.\n * Note: This check will only work for 1:1 PSTN Calls. The subcode is different for 1:N PSTN calls, and we do not need to handle that case.\n */\n if (\n remoteParticipantsEndedArray.length === 1 &&\n isPhoneNumberIdentifier(remoteParticipantsEndedArray[0].identifier) &&\n call.callEndReason?.subCode !== REMOTE_PSTN_USER_HUNG_UP\n ) {\n return CallEndReasons.LEFT_CALL;\n }\n\n if (call.callEndReason?.subCode && call.callEndReason.subCode === ACCESS_DENIED_TEAMS_MEETING_SUB_CODE) {\n return CallEndReasons.ACCESS_DENIED;\n }\n\n if (call.callEndReason?.subCode && REMOVED_FROM_CALL_SUB_CODES.includes(call.callEndReason.subCode)) {\n return CallEndReasons.REMOVED_FROM_CALL;\n }\n\n /* @conditional-compile-remove(rooms) */\n if (call.callEndReason?.subCode && call.callEndReason.subCode === ROOM_NOT_FOUND_SUB_CODE) {\n return CallEndReasons.ROOM_NOT_FOUND;\n }\n\n /* @conditional-compile-remove(rooms) */\n if (call.callEndReason?.subCode && call.callEndReason.subCode === DENIED_PERMISSION_TO_ROOM_SUB_CODE) {\n return CallEndReasons.DENIED_PERMISSION_TO_ROOM;\n }\n\n if (call.callEndReason) {\n // No error codes match, assume the user simply left the call regularly\n return CallEndReasons.LEFT_CALL;\n }\n\n throw new Error('No matching call end reason');\n};\n\n/**\n * type definition for conditional-compilation\n */\ntype GetCallCompositePageFunction = ((\n call: CallState | undefined,\n previousCall: CallState | undefined\n) => CallCompositePage) &\n ((\n call: CallState | undefined,\n previousCall: CallState | undefined,\n /* @conditional-compile-remove(unsupported-browser) */ unsupportedBrowserInfo?: {\n environmentInfo?: EnvironmentInfo;\n unsupportedBrowserVersionOptedIn?: boolean;\n },\n /* @conditional-compile-remove(call-transfer) */ transferCall?: CallState\n ) => CallCompositePage);\n/**\n * Get the current call composite page based on the current call composite state\n *\n * @param Call - The current call state\n * @param previousCall - The state of the most recent previous call that has ended.\n *\n * @remarks - The previousCall state is needed to determine if the call has ended.\n * When the call ends a new call object is created, and so we must lookback at the\n * previous call state to understand how the call has ended. If there is no previous\n * call we know that this is a fresh call and can display the configuration page.\n *\n * @private\n */\nexport const getCallCompositePage: GetCallCompositePageFunction = (\n call,\n previousCall?,\n unsupportedBrowserInfo?,\n transferCall?: CallState\n): CallCompositePage => {\n /* @conditional-compile-remove(unsupported-browser) */\n if (\n isUnsupportedEnvironment(\n unsupportedBrowserInfo.environmentInfo,\n unsupportedBrowserInfo.unsupportedBrowserVersionOptedIn\n )\n ) {\n return 'unsupportedEnvironment';\n }\n\n /* @conditional-compile-remove(call-transfer) */\n if (transferCall !== undefined) {\n return 'transferring';\n }\n\n if (call) {\n // Must check for ongoing call *before* looking at any previous calls.\n // If the composite completes one call and joins another, the previous calls\n // will be populated, but not relevant for determining the page.\n\n // `_isInLobbyOrConnecting` needs to be checked first because `_isInCall` also returns true when call is in lobby.\n if (_isInLobbyOrConnecting(call?.state)) {\n return 'lobby';\n // `LocalHold` needs to be checked before `isInCall` since it is also a state that's considered in call.\n } else if (call?.state === 'LocalHold') {\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\n return 'hold';\n return 'call';\n } else if (call?.state === 'Disconnecting') {\n return 'leaving';\n } else if (_isInCall(call?.state)) {\n return 'call';\n } else {\n // When the call object has been constructed after clicking , but before 'connecting' has been\n // set on the call object, we continue to show the configuration screen.\n // The call object does not correctly reflect local device state until `call.state` moves to `connecting`.\n // Moving to the 'lobby' page too soon leads to components that depend on the `call` object to show incorrect\n // transitional state.\n return 'configuration';\n }\n }\n\n if (previousCall) {\n const reason = getCallEndReason(previousCall);\n /* @conditional-compile-remove(rooms) */\n switch (reason) {\n case CallEndReasons.ROOM_NOT_FOUND:\n return 'roomNotFound';\n case CallEndReasons.DENIED_PERMISSION_TO_ROOM:\n return 'deniedPermissionToRoom';\n }\n switch (reason) {\n case CallEndReasons.ACCESS_DENIED:\n return 'accessDeniedTeamsMeeting';\n case CallEndReasons.REMOVED_FROM_CALL:\n return 'removedFromCall';\n case CallEndReasons.LEFT_CALL:\n if (previousCall.diagnostics.network.latest.noNetwork) {\n return 'joinCallFailedDueToNoNetwork';\n }\n return 'leftCall';\n }\n }\n\n // No call state - show starting page (configuration)\n return 'configuration';\n};\n\n/** @private */\nexport const IsCallEndedPage = (\n /**\n * Explicitly listing the pages of this function intentionally.\n * This protects against adding a new composite page that should be marked as an callEndedPage.\n * EndCallPages are used to trigger onCallEnded events so this could easily be missed.\n * When you add a new composite page this will throw a compiler error. If this new page is an\n * EndCallPage ensure you update the END_CALL_PAGES. Afterwards update the `page` parameter\n * type below to allow your new page, i.e. add `| <your new page>\n */\n page:\n | 'accessDeniedTeamsMeeting'\n | 'call'\n | 'configuration'\n | 'joinCallFailedDueToNoNetwork'\n | 'leaving'\n | 'leftCall'\n | 'lobby'\n | 'removedFromCall'\n | /* @conditional-compile-remove(PSTN-calls) */ 'hold'\n | /* @conditional-compile-remove(rooms) */ 'roomNotFound'\n | /* @conditional-compile-remove(rooms) */ 'deniedPermissionToRoom'\n | /* @conditional-compile-remove(unsupported-browser) */ 'unsupportedEnvironment'\n | /* @conditional-compile-remove(call-transfer) */ 'transferring'\n): boolean => END_CALL_PAGES.includes(page);\n\n/**\n * Creates a new call control options object and sets the correct values for disabling\n * the buttons provided in the `disabledControls` array.\n * Returns a new object without changing the original object.\n * @param callControlOptions options for the call control component that need to be modified.\n * @param disabledControls An array of controls to disable.\n * @returns a copy of callControlOptions with disabledControls disabled\n * @private\n */\nexport const disableCallControls = (\n callControlOptions: CallControlOptions | boolean | undefined,\n disabledControls: (keyof CallControlOptions)[]\n): CallControlOptions | boolean | undefined => {\n if (callControlOptions === false) {\n return false;\n }\n // Ensure we clone the prop if it is an object to ensure we do not mutate the original prop.\n let newOptions =\n (callControlOptions instanceof Object ? ({ ...callControlOptions } as CallControlOptions) : callControlOptions) ??\n {};\n if (newOptions === true || newOptions === undefined) {\n newOptions = disabledControls.reduce((acc, key) => {\n acc[key] = { disabled: true };\n return acc;\n }, {});\n } else {\n disabledControls.forEach((key) => {\n if (newOptions[key] !== false) {\n newOptions[key] = { disabled: true };\n }\n });\n }\n return newOptions;\n};\n\n/**\n * Check if a disabled object is provided for a button and returns if the button is disabled.\n * A button is only disabled if is explicitly set to disabled.\n *\n * @param option\n * @returns whether a button is disabled\n * @private\n */\nexport const isDisabled = (option: boolean | { disabled: boolean } | undefined): boolean => {\n if (option === undefined || typeof option === 'boolean') {\n return false;\n }\n\n return option.disabled;\n};\n\n/* @conditional-compile-remove(call-readiness) */\n/**\n * @returns Permissions state for the camera.\n */\nconst queryCameraPermissionFromPermissionsAPI = async (): Promise<PermissionState | 'unsupported'> => {\n try {\n return (await navigator.permissions.query({ name: 'camera' as PermissionName })).state;\n } catch (e) {\n console.info('permissions API is not supported by browser', e);\n return 'unsupported';\n }\n};\n\n/* @conditional-compile-remove(call-readiness) */\n/**\n * @returns Permissions state for the microphone.\n */\nconst queryMicrophonePermissionFromPermissionsAPI = async (): Promise<PermissionState | 'unsupported'> => {\n try {\n return (await navigator.permissions.query({ name: 'microphone' as PermissionName })).state;\n } catch (e) {\n console.info('permissions API is not supported by browser', e);\n return 'unsupported';\n }\n};\n\n/* @conditional-compile-remove(call-readiness) */\n/**\n *\n * This function uses permission API to determine if device permission state is granted, prompt or denied\n * @returns whether device permission state is granted, prompt or denied\n * If permission API is not supported on this browser, permission state is set to unsupported.\n * @private\n */\nexport const getDevicePermissionState = async (\n setVideoState: (state: PermissionState | 'unsupported') => void,\n setAudioState: (state: PermissionState | 'unsupported') => void\n): Promise<void> => {\n const [cameraResult, microphoneResult] = await Promise.all([\n queryCameraPermissionFromPermissionsAPI(),\n queryMicrophonePermissionFromPermissionsAPI()\n ]);\n setVideoState(cameraResult);\n setAudioState(microphoneResult);\n};\n/* @conditional-compile-remove(unsupported-browser) */\nconst isUnsupportedEnvironment = (\n environmentInfo?: EnvironmentInfo,\n unsupportedBrowserVersionOptedIn?: boolean\n): boolean => {\n return !!(\n environmentInfo?.isSupportedBrowser === false ||\n (environmentInfo?.isSupportedBrowserVersion === false && !unsupportedBrowserVersionOptedIn) ||\n environmentInfo?.isSupportedPlatform === false\n );\n};\n\n/**\n * Check if we are using safari browser\n * @private\n */\nexport const _isSafari = (\n environmentInfo: undefined | /* @conditional-compile-remove(unsupported-browser) */ EnvironmentInfo\n): boolean => {\n /* @conditional-compile-remove(unsupported-browser) */\n return environmentInfo?.environment.browser === 'safari';\n return /^((?!chrome|android|crios|fxios).)*safari/i.test(navigator.userAgent);\n};\n\n/**\n * @private\n * This is the util function to create a participant modifier for remote participantList\n * It memoize previous original participant items and only update the changed participant\n * It takes in one modifier function to generate one single participant object, it returns undefined if the object keeps unmodified\n */\nexport const createParticipantModifier = (\n createModifiedParticipant: (id: string, participant: RemoteParticipantState) => RemoteParticipantState | undefined\n): AdapterStateModifier => {\n let previousParticipantState:\n | {\n [keys: string]: RemoteParticipantState;\n }\n | undefined = undefined;\n let modifiedParticipants = {};\n const memoizedParticipants: {\n [id: string]: { originalRef: RemoteParticipantState; newParticipant: RemoteParticipantState };\n } = {};\n\n return (state: CallAdapterState) => {\n // if root state is the same, we don't need to update the participants\n if (state.call?.remoteParticipants !== previousParticipantState) {\n modifiedParticipants = {};\n const originalParticipants = state.call?.remoteParticipants;\n for (const key in originalParticipants) {\n const modifiedParticipant = createModifiedParticipant(key, originalParticipants[key]);\n if (modifiedParticipant === undefined) {\n modifiedParticipants[key] = originalParticipants[key];\n continue;\n }\n // Generate the new item if original cached item has been changed\n if (memoizedParticipants[key]?.originalRef !== originalParticipants[key]) {\n memoizedParticipants[key] = {\n newParticipant: modifiedParticipant,\n originalRef: originalParticipants[key]\n };\n }\n\n // the modified participant is always coming from the memoized cache, whether is was refreshed\n // from the previous closure or not\n modifiedParticipants[key] = memoizedParticipants[key].newParticipant;\n }\n\n previousParticipantState = state.call?.remoteParticipants;\n }\n return {\n ...state,\n call: state.call\n ? {\n ...state.call,\n remoteParticipants: modifiedParticipants\n }\n : undefined\n };\n };\n};\n\n/* @conditional-compile-remove(video-background-effects) */\n/** @private */\nexport const getBackgroundEffectFromSelectedEffect = (\n selectedEffect: VideoBackgroundEffect | undefined,\n VideoBackgroundEffectsDependency: VideoBackgroundEffectsDependency\n): VideoEffectProcessor | undefined =>\n selectedEffect?.effectName === 'blur'\n ? VideoBackgroundEffectsDependency.createBackgroundBlurEffect()\n : selectedEffect?.effectName === 'replacement'\n ? VideoBackgroundEffectsDependency.createBackgroundReplacementEffect({\n backgroundImageUrl: selectedEffect.backgroundImageUrl\n })\n : undefined;\n\n/**\n * @remarks this logic should mimic the onToggleCamera in the common call handlers.\n * @private\n */\nexport const getSelectedCameraFromAdapterState = (state: CallAdapterState): VideoDeviceInfo | undefined =>\n state.devices.selectedCamera || state.devices.cameras[0];\n\"../../../../../calling-component-bindings/src\"\"../../../../../calling-stateful-client/src\""]}
@@ -1,2 +1,3 @@
1
+ export * from './TrackErrors';
1
2
  export * from './Utils';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1,4 +1,5 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT license.
3
+ export * from './TrackErrors';
3
4
  export * from './Utils';
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../preprocess-dist/react-composites/src/composites/CallComposite/utils/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,cAAc,SAAS,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nexport * from './Utils';"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/CallComposite/utils/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,cAAc,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nexport * from './TrackErrors';\nexport * from './Utils';\n"]}
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { PartialTheme, Theme } from '@fluentui/react';
3
2
  import { CallWithChatAdapter } from './adapter/CallWithChatAdapter';
4
3
  import { BaseCompositeProps } from '../common/BaseComposite';
@@ -16,6 +16,7 @@ import { ChatButtonWithUnreadMessagesBadge } from './ChatButton/ChatButtonWithUn
16
16
  import { getDesktopCommonButtonStyles } from '../common/ControlBar/CommonCallControlBar';
17
17
  import { isDisabled } from '../CallComposite/utils';
18
18
  import { SidePaneHeader } from '../common/SidePaneHeader';
19
+ import { useUnreadMessagesTracker } from './ChatButton/useUnreadMessagesTracker';
19
20
  const CallWithChatScreen = (props) => {
20
21
  const { callWithChatAdapter, fluentTheme, formFactor = 'desktop' } = props;
21
22
  const mobileView = formFactor === 'mobile';
@@ -82,17 +83,32 @@ const CallWithChatScreen = (props) => {
82
83
  tooltipOnContent: callWithChatStrings.chatButtonTooltipClose
83
84
  }), [callWithChatStrings]);
84
85
  const theme = useTheme();
85
- const commonButtonStyles = useMemo(() => !mobileView ? getDesktopCommonButtonStyles(theme) : undefined, [mobileView, theme]);
86
+ const commonButtonStyles = useMemo(() => (!mobileView ? getDesktopCommonButtonStyles(theme) : undefined), [mobileView, theme]);
86
87
  const showChatButton = checkShowChatButton(props.callControls);
87
88
  const chatButtonDisabled = showChatButton && (checkChatButtonIsDisabled(props.callControls) || !hasJoinedCall || isOnHold);
88
- const chatTabHeaderProps = useMemo(() => mobileView && showChatButton ? {
89
- onClick: toggleChat,
90
- disabled: chatButtonDisabled
91
- } : undefined, [chatButtonDisabled, mobileView, toggleChat, showChatButton]);
89
+ const chatTabHeaderProps = useMemo(() => mobileView && showChatButton
90
+ ? {
91
+ onClick: toggleChat,
92
+ disabled: chatButtonDisabled
93
+ }
94
+ : undefined, [chatButtonDisabled, mobileView, toggleChat, showChatButton]);
95
+ const unreadChatMessagesCount = useUnreadMessagesTracker(chatProps.adapter, isChatOpen);
92
96
  const customChatButton = useCallback((args) => ({
93
97
  placement: mobileView ? 'primary' : 'secondary',
94
- onRenderButton: () => React.createElement(ChatButtonWithUnreadMessagesBadge, { chatAdapter: chatProps.adapter, isChatPaneVisible: isChatOpen, checked: isChatOpen, showLabel: args.displayType !== 'compact', onClick: toggleChat, disabled: chatButtonDisabled, strings: chatButtonStrings, styles: commonButtonStyles, newMessageLabel: callWithChatStrings.chatButtonNewMessageNotificationLabel })
95
- }), [callWithChatStrings.chatButtonNewMessageNotificationLabel, chatButtonStrings, chatProps.adapter, commonButtonStyles, isChatOpen, chatButtonDisabled, mobileView, toggleChat]);
98
+ onRenderButton: () => (React.createElement(ChatButtonWithUnreadMessagesBadge, { checked: isChatOpen, showLabel: args.displayType !== 'compact', onClick: toggleChat, disabled: chatButtonDisabled, strings: chatButtonStrings, styles: commonButtonStyles, newMessageLabel: callWithChatStrings.chatButtonNewMessageNotificationLabel, unreadChatMessagesCount: unreadChatMessagesCount,
99
+ // As chat is disabled when on hold, we don't want to show the unread badge when on hold
100
+ hideUnreadChatMessagesBadge: isOnHold }))
101
+ }), [
102
+ callWithChatStrings.chatButtonNewMessageNotificationLabel,
103
+ chatButtonStrings,
104
+ commonButtonStyles,
105
+ isChatOpen,
106
+ chatButtonDisabled,
107
+ mobileView,
108
+ toggleChat,
109
+ unreadChatMessagesCount,
110
+ isOnHold
111
+ ]);
96
112
  const callControlOptionsFromProps = useMemo(() => (Object.assign({}, (typeof props.callControls === 'object' ? props.callControls : {}))), [props.callControls]);
97
113
  const injectedCustomButtonsFromProps = useMemo(() => {
98
114
  var _a;
@@ -101,8 +117,13 @@ const CallWithChatScreen = (props) => {
101
117
  return [];
102
118
  }, [callControlOptionsFromProps]);
103
119
  const callCompositeOptions = useMemo(() => ({
104
- callControls: props.callControls === false ? false : Object.assign(Object.assign({}, callControlOptionsFromProps), { onFetchCustomButtonProps: [...(showChatButton ? [customChatButton] : []),
105
- ...injectedCustomButtonsFromProps], legacyControlBarExperience: false }),
120
+ callControls: props.callControls === false
121
+ ? false
122
+ : Object.assign(Object.assign({}, callControlOptionsFromProps), { onFetchCustomButtonProps: [
123
+ ...(showChatButton ? [customChatButton] : []),
124
+ /* @conditional-compile-remove(control-bar-button-injection) */
125
+ ...injectedCustomButtonsFromProps
126
+ ], legacyControlBarExperience: false }),
106
127
  /* @conditional-compile-remove(call-readiness) */
107
128
  deviceChecks: props.deviceChecks,
108
129
  /* @conditional-compile-remove(call-readiness) */
@@ -111,20 +132,38 @@ const CallWithChatScreen = (props) => {
111
132
  onPermissionsTroubleshootingClick: props.onPermissionsTroubleshootingClick,
112
133
  /* @conditional-compile-remove(unsupported-browser) */
113
134
  onEnvironmentInfoTroubleshootingClick: props.onEnvironmentInfoTroubleshootingClick
114
- }), [props.callControls, callControlOptionsFromProps, showChatButton, customChatButton, injectedCustomButtonsFromProps,
135
+ }), [
136
+ props.callControls,
137
+ callControlOptionsFromProps,
138
+ showChatButton,
139
+ customChatButton,
140
+ injectedCustomButtonsFromProps,
141
+ /* @conditional-compile-remove(call-readiness) */
115
142
  props.deviceChecks,
143
+ /* @conditional-compile-remove(unsupported-browser) */
116
144
  props.onEnvironmentInfoTroubleshootingClick,
145
+ /* @conditional-compile-remove(call-readiness) */
117
146
  props.onNetworkingTroubleShootingClick,
118
- props.onPermissionsTroubleshootingClick]);
119
- const onRenderChatContent = useCallback(() => React.createElement(ChatComposite, Object.assign({}, chatProps, { fluentTheme: theme, options: {
147
+ /* @conditional-compile-remove(call-readiness) */
148
+ props.onPermissionsTroubleshootingClick
149
+ ]);
150
+ const onRenderChatContent = useCallback(() => (React.createElement(ChatComposite, Object.assign({}, chatProps, { fluentTheme: theme, options: {
120
151
  topic: false,
121
152
  /* @conditional-compile-remove(chat-composite-participant-pane) */
122
153
  participantPane: false,
123
154
  /* @conditional-compile-remove(file-sharing) */
124
155
  fileSharing: props.fileSharing
125
- }, onFetchAvatarPersonaData: props.onFetchAvatarPersonaData })), [chatProps, /* @conditional-compile-remove(file-sharing) */ props.fileSharing, props.onFetchAvatarPersonaData, theme]);
126
- const sidePaneHeaderRenderer = useCallback(() => { var _a; return React.createElement(SidePaneHeader, { headingText: callWithChatStrings.chatPaneTitle, onClose: closeChat, dismissSidePaneButtonAriaLabel: (_a = callWithChatStrings.dismissSidePaneButtonLabel) !== null && _a !== void 0 ? _a : '', mobileView: mobileView }); }, [callWithChatStrings.chatPaneTitle, callWithChatStrings.dismissSidePaneButtonLabel, closeChat, mobileView]);
127
- const sidePaneContentRenderer = useMemo(() => hasJoinedCall ? onRenderChatContent : undefined, [hasJoinedCall, onRenderChatContent]);
156
+ }, onFetchAvatarPersonaData: props.onFetchAvatarPersonaData }))), [
157
+ chatProps,
158
+ /* @conditional-compile-remove(file-sharing) */ props.fileSharing,
159
+ props.onFetchAvatarPersonaData,
160
+ theme
161
+ ]);
162
+ const sidePaneHeaderRenderer = useCallback(() => {
163
+ var _a;
164
+ return (React.createElement(SidePaneHeader, { headingText: callWithChatStrings.chatPaneTitle, onClose: closeChat, dismissSidePaneButtonAriaLabel: (_a = callWithChatStrings.dismissSidePaneButtonLabel) !== null && _a !== void 0 ? _a : '', mobileView: mobileView }));
165
+ }, [callWithChatStrings.chatPaneTitle, callWithChatStrings.dismissSidePaneButtonLabel, closeChat, mobileView]);
166
+ const sidePaneContentRenderer = useMemo(() => (hasJoinedCall ? onRenderChatContent : undefined), [hasJoinedCall, onRenderChatContent]);
128
167
  const sidePaneRenderer = useMemo(() => ({
129
168
  contentRenderer: sidePaneContentRenderer,
130
169
  headerRenderer: sidePaneHeaderRenderer,
@@ -135,17 +174,17 @@ const CallWithChatScreen = (props) => {
135
174
  isActive: isChatOpen,
136
175
  persistRenderingWhenClosed: true
137
176
  }), [isChatOpen, sidePaneRenderer]);
138
- const onSidePaneIdChange = useCallback(sidePaneId => {
177
+ const onSidePaneIdChange = useCallback((sidePaneId) => {
139
178
  // If the pane is switched to something other than chat, removing rendering chat.
140
179
  if (sidePaneId && sidePaneId !== 'chat') {
141
180
  closeChat();
142
181
  }
143
182
  }, [closeChat]);
144
- return React.createElement("div", { ref: containerRef, className: mergeStyles(containerDivStyles) },
183
+ return (React.createElement("div", { ref: containerRef, className: mergeStyles(containerDivStyles) },
145
184
  React.createElement(Stack, { verticalFill: true, grow: true, styles: compositeOuterContainerStyles, id: compositeParentDivId },
146
185
  React.createElement(Stack, { horizontal: true, grow: true },
147
186
  React.createElement(Stack.Item, { grow: true, styles: callCompositeContainerStyles(mobileView) },
148
- React.createElement(CallCompositeInner, Object.assign({}, props, { formFactor: formFactor, options: callCompositeOptions, adapter: callAdapter, fluentTheme: fluentTheme, callInvitationUrl: props.joinInvitationURL, overrideSidePane: overrideSidePaneProps, onSidePaneIdChange: onSidePaneIdChange, mobileChatTabHeader: chatTabHeaderProps }))))));
187
+ React.createElement(CallCompositeInner, Object.assign({}, props, { formFactor: formFactor, options: callCompositeOptions, adapter: callAdapter, fluentTheme: fluentTheme, callInvitationUrl: props.joinInvitationURL, overrideSidePane: overrideSidePaneProps, onSidePaneIdChange: onSidePaneIdChange, mobileChatTabHeader: chatTabHeaderProps })))))));
149
188
  };
150
189
  /**
151
190
  * CallWithChatComposite brings together key components to provide a full call with chat experience out of the box.
@@ -154,14 +193,18 @@ const CallWithChatScreen = (props) => {
154
193
  */
155
194
  export const CallWithChatComposite = (props) => {
156
195
  const { adapter, fluentTheme, rtl, formFactor, joinInvitationURL, options } = props;
157
- return React.createElement(BaseProvider, { fluentTheme: fluentTheme, rtl: rtl, locale: props.locale, icons: props.icons },
196
+ return (React.createElement(BaseProvider, { fluentTheme: fluentTheme, rtl: rtl, locale: props.locale, icons: props.icons },
158
197
  React.createElement(CallWithChatScreen, Object.assign({}, props, {
159
- /* @conditional-compile-remove(call-readiness) */ deviceChecks: options === null || options === void 0 ? void 0 : options.deviceChecks, callWithChatAdapter: adapter, formFactor: formFactor, callControls: options === null || options === void 0 ? void 0 : options.callControls, joinInvitationURL: joinInvitationURL, fluentTheme: fluentTheme,
160
- /* @conditional-compile-remove(file-sharing) */ fileSharing: options === null || options === void 0 ? void 0 : options.fileSharing })));
198
+ /* @conditional-compile-remove(call-readiness) */
199
+ deviceChecks: options === null || options === void 0 ? void 0 : options.deviceChecks, callWithChatAdapter: adapter, formFactor: formFactor, callControls: options === null || options === void 0 ? void 0 : options.callControls, joinInvitationURL: joinInvitationURL, fluentTheme: fluentTheme,
200
+ /* @conditional-compile-remove(file-sharing) */
201
+ fileSharing: options === null || options === void 0 ? void 0 : options.fileSharing }))));
161
202
  };
162
203
  const hasJoinedCallFn = (page, callStatus) => {
163
204
  /* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(one-to-n-calling) */
164
- return page === 'call' && (callStatus === 'Connected' || callStatus === 'RemoteHold' || callStatus === 'Disconnecting') || page === 'hold' && (callStatus === 'LocalHold' || callStatus === 'Disconnecting');
205
+ return ((page === 'call' &&
206
+ (callStatus === 'Connected' || callStatus === 'RemoteHold' || callStatus === 'Disconnecting')) ||
207
+ (page === 'hold' && (callStatus === 'LocalHold' || callStatus === 'Disconnecting')));
165
208
  return page === 'call' && (callStatus === 'Connected' || callStatus === 'Disconnecting');
166
209
  };
167
210
  const checkShowChatButton = (callControls) => {