@azure/communication-react 1.10.0 → 1.10.1-alpha-202311160012

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 (999) hide show
  1. package/dist/communication-react.d.ts +2278 -55
  2. package/dist/dist-cjs/communication-react/index.js +11287 -4237
  3. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  4. package/dist/dist-esm/acs-ui-common/src/MessageStatus.js.map +1 -1
  5. package/dist/dist-esm/acs-ui-common/src/areEqual.js.map +1 -1
  6. package/dist/dist-esm/acs-ui-common/src/common.js.map +1 -1
  7. package/dist/dist-esm/acs-ui-common/src/commonProperties.js.map +1 -1
  8. package/dist/dist-esm/acs-ui-common/src/constants.js.map +1 -1
  9. package/dist/dist-esm/acs-ui-common/src/cssUtils.js.map +1 -1
  10. package/dist/dist-esm/acs-ui-common/src/identifier.js +4 -1
  11. package/dist/dist-esm/acs-ui-common/src/identifier.js.map +1 -1
  12. package/dist/dist-esm/acs-ui-common/src/index.js.map +1 -1
  13. package/dist/dist-esm/acs-ui-common/src/localizationUtils.js.map +1 -1
  14. package/dist/dist-esm/acs-ui-common/src/logEvent.js.map +1 -1
  15. package/dist/dist-esm/acs-ui-common/src/memoizeFnAll.js.map +1 -1
  16. package/dist/dist-esm/acs-ui-common/src/safeStringify.js.map +1 -1
  17. package/dist/dist-esm/acs-ui-common/src/telemetry.js.map +1 -1
  18. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  19. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  20. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.d.ts +2 -1
  21. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +11 -0
  22. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  23. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.d.ts +12 -0
  24. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +54 -10
  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 +12 -5
  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 +24 -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 +11 -1
  31. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +52 -41
  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 +11 -1
  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 +1 -1
  36. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js +19 -3
  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 +45 -0
  39. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js +87 -0
  40. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js.map +1 -0
  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 +4 -1
  44. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js +19 -0
  45. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  46. package/dist/dist-esm/calling-component-bindings/src/hooks/useSelector.js.map +1 -1
  47. package/dist/dist-esm/calling-component-bindings/src/index.d.ts +6 -0
  48. package/dist/dist-esm/calling-component-bindings/src/index.js +8 -0
  49. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  50. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.d.ts +1 -0
  51. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +58 -13
  52. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
  53. package/dist/dist-esm/calling-component-bindings/src/participantsButtonSelector.js.map +1 -1
  54. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.d.ts +4 -3
  55. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.js.map +1 -1
  56. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js +6 -3
  57. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js.map +1 -1
  58. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.d.ts +14 -2
  59. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js +20 -1
  60. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js.map +1 -1
  61. package/dist/dist-esm/calling-component-bindings/src/providers/index.js.map +1 -1
  62. package/dist/dist-esm/calling-component-bindings/src/utils/SelectorUtils.js.map +1 -1
  63. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.d.ts +7 -0
  64. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js +23 -7
  65. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js.map +1 -1
  66. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.d.ts +4 -0
  67. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js +14 -1
  68. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js.map +1 -1
  69. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.d.ts +4 -2
  70. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +41 -13
  71. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  72. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js +52 -8
  73. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
  74. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.d.ts +6 -5
  75. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.js.map +1 -1
  76. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.d.ts +15 -1
  77. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
  78. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.d.ts +2 -1
  79. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js +66 -71
  80. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js.map +1 -1
  81. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +64 -3
  82. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  83. package/dist/dist-esm/calling-stateful-client/src/CallContext.d.ts +8 -1
  84. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +79 -13
  85. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  86. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js +7 -8
  87. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js.map +1 -1
  88. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js +109 -79
  89. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js.map +1 -1
  90. package/dist/dist-esm/calling-stateful-client/src/CallIdHistory.js.map +1 -1
  91. package/dist/dist-esm/calling-stateful-client/src/CallIdRef.js.map +1 -1
  92. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.d.ts +1 -0
  93. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +13 -5
  94. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  95. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js.map +1 -1
  96. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.js.map +1 -1
  97. package/dist/dist-esm/calling-stateful-client/src/Converter.js +24 -12
  98. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  99. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js +51 -57
  100. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js.map +1 -1
  101. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js +14 -16
  102. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js.map +1 -1
  103. package/dist/dist-esm/calling-stateful-client/src/IncomingCallSubscriber.js.map +1 -1
  104. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js +3 -15
  105. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js.map +1 -1
  106. package/dist/dist-esm/calling-stateful-client/src/LocalVideoStreamVideoEffectsSubscriber.js.map +1 -1
  107. package/dist/dist-esm/calling-stateful-client/src/Logger.js.map +1 -1
  108. package/dist/dist-esm/calling-stateful-client/src/OptimalVideoCountSubscriber.js +1 -3
  109. package/dist/dist-esm/calling-stateful-client/src/OptimalVideoCountSubscriber.js.map +1 -1
  110. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.d.ts +1 -0
  111. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js +8 -0
  112. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js.map +1 -1
  113. package/dist/dist-esm/calling-stateful-client/src/RaiseHandSubscriber.js.map +1 -1
  114. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js.map +1 -1
  115. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.d.ts +1 -0
  116. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js +8 -0
  117. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js.map +1 -1
  118. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts +25 -1
  119. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js +69 -40
  120. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
  121. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js +33 -31
  122. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js.map +1 -1
  123. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js +8 -11
  124. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js.map +1 -1
  125. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.d.ts +19 -0
  126. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js +91 -0
  127. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js.map +1 -0
  128. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.d.ts +23 -0
  129. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js +48 -0
  130. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js.map +1 -0
  131. package/dist/dist-esm/calling-stateful-client/src/TranscriptionSubscriber.js.map +1 -1
  132. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.d.ts +2 -2
  133. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js +8 -0
  134. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js.map +1 -1
  135. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js +3 -3
  136. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js.map +1 -1
  137. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js +6 -7
  138. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js.map +1 -1
  139. package/dist/dist-esm/calling-stateful-client/src/index-public.d.ts +3 -0
  140. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  141. package/dist/dist-esm/calling-stateful-client/src/index.js.map +1 -1
  142. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js +4 -4
  143. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js.map +1 -1
  144. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js +3 -3
  145. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js.map +1 -1
  146. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js +13 -14
  147. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js.map +1 -1
  148. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.d.ts +5 -1
  149. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js +5 -12
  150. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js.map +1 -1
  151. package/dist/dist-esm/chat-component-bindings/src/hooks/useHandlers.js.map +1 -1
  152. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  153. package/dist/dist-esm/chat-component-bindings/src/hooks/useSelector.js.map +1 -1
  154. package/dist/dist-esm/chat-component-bindings/src/index.js.map +1 -1
  155. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +146 -15
  156. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
  157. package/dist/dist-esm/chat-component-bindings/src/providers/ChatClientProvider.js.map +1 -1
  158. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js +1 -1
  159. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js.map +1 -1
  160. package/dist/dist-esm/chat-component-bindings/src/sendBoxSelector.js.map +1 -1
  161. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js +3 -7
  162. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js.map +1 -1
  163. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js +3 -1
  164. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js.map +1 -1
  165. package/dist/dist-esm/chat-component-bindings/src/utils/constants.js.map +1 -1
  166. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js +10 -3
  167. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js.map +1 -1
  168. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.d.ts +1 -1
  169. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js.map +1 -1
  170. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js +5 -9
  171. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js.map +1 -1
  172. package/dist/dist-esm/chat-stateful-client/src/Constants.js.map +1 -1
  173. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js +10 -11
  174. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js.map +1 -1
  175. package/dist/dist-esm/chat-stateful-client/src/Logger.js.map +1 -1
  176. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js +57 -67
  177. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js.map +1 -1
  178. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js +114 -128
  179. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js.map +1 -1
  180. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js +6 -1
  181. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js.map +1 -1
  182. package/dist/dist-esm/chat-stateful-client/src/index.js.map +1 -1
  183. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedIterator.js.map +1 -1
  184. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListMessages.js.map +1 -1
  185. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListParticipants.js.map +1 -1
  186. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListReadReceipts.js.map +1 -1
  187. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListThreads.js.map +1 -1
  188. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.d.ts +1 -0
  189. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.js.map +1 -1
  190. package/dist/dist-esm/communication-react/src/index.d.ts +27 -0
  191. package/dist/dist-esm/communication-react/src/index.js +16 -0
  192. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  193. package/dist/dist-esm/communication-react/src/mergedHooks.js.map +1 -1
  194. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js +3 -6
  195. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js.map +1 -1
  196. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerContext.js.map +1 -1
  197. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerMessage.js.map +1 -1
  198. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js +4 -10
  199. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js.map +1 -1
  200. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js +1 -1
  201. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js.map +1 -1
  202. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js +1 -1
  203. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js.map +1 -1
  204. package/dist/dist-esm/react-components/src/components/Announcer.js.map +1 -1
  205. package/dist/dist-esm/react-components/src/components/CameraButton.js +8 -19
  206. package/dist/dist-esm/react-components/src/components/CameraButton.js.map +1 -1
  207. package/dist/dist-esm/react-components/src/components/Caption.js +2 -2
  208. package/dist/dist-esm/react-components/src/components/Caption.js.map +1 -1
  209. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js +9 -8
  210. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js.map +1 -1
  211. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js +44 -22
  212. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js.map +1 -1
  213. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js +6 -4
  214. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js.map +1 -1
  215. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js +37 -22
  216. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js.map +1 -1
  217. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.d.ts +22 -1
  218. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js +20 -5
  219. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js.map +1 -1
  220. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.d.ts +2 -0
  221. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js +36 -39
  222. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js.map +1 -1
  223. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.d.ts +22 -1
  224. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js +93 -19
  225. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js.map +1 -1
  226. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.d.ts +15 -0
  227. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +124 -21
  228. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
  229. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.d.ts +10 -0
  230. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js +15 -0
  231. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js.map +1 -0
  232. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js +18 -18
  233. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js.map +1 -1
  234. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js +7 -4
  235. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js.map +1 -1
  236. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js +2 -2
  237. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js.map +1 -1
  238. package/dist/dist-esm/react-components/src/components/ComplianceBanner/Utils.js.map +1 -1
  239. package/dist/dist-esm/react-components/src/components/ComplianceBanner/index.js.map +1 -1
  240. package/dist/dist-esm/react-components/src/components/ComplianceBanner/types.js.map +1 -1
  241. package/dist/dist-esm/react-components/src/components/ControlBar.js +10 -14
  242. package/dist/dist-esm/react-components/src/components/ControlBar.js.map +1 -1
  243. package/dist/dist-esm/react-components/src/components/ControlBarButton.js +14 -4
  244. package/dist/dist-esm/react-components/src/components/ControlBarButton.js.map +1 -1
  245. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js +3 -14
  246. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js.map +1 -1
  247. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.d.ts +69 -0
  248. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js +37 -0
  249. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js.map +1 -0
  250. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.d.ts +75 -0
  251. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js +58 -0
  252. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js.map +1 -0
  253. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js +5 -8
  254. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js.map +1 -1
  255. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.d.ts +105 -0
  256. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js +86 -0
  257. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js.map +1 -0
  258. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.d.ts +86 -0
  259. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js +31 -0
  260. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js.map +1 -0
  261. package/dist/dist-esm/react-components/src/components/DevicesButton.js +19 -27
  262. package/dist/dist-esm/react-components/src/components/DevicesButton.js.map +1 -1
  263. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +42 -44
  264. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
  265. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js +4 -4
  266. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js.map +1 -1
  267. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js +2 -6
  268. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js.map +1 -1
  269. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js +6 -6
  270. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js.map +1 -1
  271. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js +11 -23
  272. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js.map +1 -1
  273. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js +6 -4
  274. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js.map +1 -1
  275. package/dist/dist-esm/react-components/src/components/Drawer/index.js.map +1 -1
  276. package/dist/dist-esm/react-components/src/components/EndCallButton.js +3 -7
  277. package/dist/dist-esm/react-components/src/components/EndCallButton.js.map +1 -1
  278. package/dist/dist-esm/react-components/src/components/ErrorBar.js +9 -5
  279. package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
  280. package/dist/dist-esm/react-components/src/components/FileCard.js +2 -3
  281. package/dist/dist-esm/react-components/src/components/FileCard.js.map +1 -1
  282. package/dist/dist-esm/react-components/src/components/FileCardGroup.js +1 -1
  283. package/dist/dist-esm/react-components/src/components/FileCardGroup.js.map +1 -1
  284. package/dist/dist-esm/react-components/src/components/FileDownloadCards.d.ts +31 -1
  285. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js +37 -14
  286. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js.map +1 -1
  287. package/dist/dist-esm/react-components/src/components/FileUploadCards.js +8 -7
  288. package/dist/dist-esm/react-components/src/components/FileUploadCards.js.map +1 -1
  289. package/dist/dist-esm/react-components/src/components/GridLayout.js +37 -37
  290. package/dist/dist-esm/react-components/src/components/GridLayout.js.map +1 -1
  291. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js +2 -2
  292. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js.map +1 -1
  293. package/dist/dist-esm/react-components/src/components/HoldButton.d.ts +49 -0
  294. package/dist/dist-esm/react-components/src/components/HoldButton.js +25 -0
  295. package/dist/dist-esm/react-components/src/components/HoldButton.js.map +1 -0
  296. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js +7 -9
  297. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js.map +1 -1
  298. package/dist/dist-esm/react-components/src/components/ImageGallery.d.ts +71 -0
  299. package/dist/dist-esm/react-components/src/components/ImageGallery.js +53 -0
  300. package/dist/dist-esm/react-components/src/components/ImageGallery.js.map +1 -0
  301. package/dist/dist-esm/react-components/src/components/InputBoxComponent.d.ts +2 -0
  302. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js +26 -17
  303. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js.map +1 -1
  304. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js +3 -5
  305. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js.map +1 -1
  306. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js +29 -10
  307. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
  308. package/dist/dist-esm/react-components/src/components/MentionPopover.d.ts +121 -0
  309. package/dist/dist-esm/react-components/src/components/MentionPopover.js +125 -0
  310. package/dist/dist-esm/react-components/src/components/MentionPopover.js.map +1 -0
  311. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js +23 -36
  312. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js.map +1 -1
  313. package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +52 -2
  314. package/dist/dist-esm/react-components/src/components/MessageThread.js +221 -91
  315. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  316. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js +17 -14
  317. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js.map +1 -1
  318. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js +94 -101
  319. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js.map +1 -1
  320. package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts +13 -0
  321. package/dist/dist-esm/react-components/src/components/ParticipantItem.js +17 -17
  322. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  323. package/dist/dist-esm/react-components/src/components/ParticipantList.d.ts +15 -0
  324. package/dist/dist-esm/react-components/src/components/ParticipantList.js +70 -26
  325. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  326. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js +46 -32
  327. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js.map +1 -1
  328. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js +3 -3
  329. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js.map +1 -1
  330. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js +3 -3
  331. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js.map +1 -1
  332. package/dist/dist-esm/react-components/src/components/RaiseHandButton.js +6 -12
  333. package/dist/dist-esm/react-components/src/components/RaiseHandButton.js.map +1 -1
  334. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +47 -14
  335. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  336. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js +2 -2
  337. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js.map +1 -1
  338. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js +2 -2
  339. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js.map +1 -1
  340. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js +6 -14
  341. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js.map +1 -1
  342. package/dist/dist-esm/react-components/src/components/SendBox.d.ts +41 -0
  343. package/dist/dist-esm/react-components/src/components/SendBox.js +39 -13
  344. package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
  345. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js +2 -2
  346. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js.map +1 -1
  347. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js.map +1 -1
  348. package/dist/dist-esm/react-components/src/components/StartCaptionsButton.js +2 -4
  349. package/dist/dist-esm/react-components/src/components/StartCaptionsButton.js.map +1 -1
  350. package/dist/dist-esm/react-components/src/components/StreamMedia.js +3 -3
  351. package/dist/dist-esm/react-components/src/components/StreamMedia.js.map +1 -1
  352. package/dist/dist-esm/react-components/src/components/SystemMessage.js +2 -4
  353. package/dist/dist-esm/react-components/src/components/SystemMessage.js.map +1 -1
  354. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.d.ts +41 -0
  355. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js +611 -0
  356. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js.map +1 -0
  357. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.d.ts +152 -0
  358. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js +822 -0
  359. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js.map +1 -0
  360. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js +10 -10
  361. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js.map +1 -1
  362. package/dist/dist-esm/react-components/src/components/TypingIndicator.js +9 -6
  363. package/dist/dist-esm/react-components/src/components/TypingIndicator.js.map +1 -1
  364. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js +3 -1
  365. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js.map +1 -1
  366. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js +3 -1
  367. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js.map +1 -1
  368. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js +20 -0
  369. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js.map +1 -1
  370. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js +3 -1
  371. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js.map +1 -1
  372. package/dist/dist-esm/react-components/src/components/VerticalGallery.js +19 -34
  373. package/dist/dist-esm/react-components/src/components/VerticalGallery.js.map +1 -1
  374. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js +3 -1
  375. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js.map +1 -1
  376. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js +8 -12
  377. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js.map +1 -1
  378. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js +13 -17
  379. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js.map +1 -1
  380. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js +6 -2
  381. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js.map +1 -1
  382. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js +38 -16
  383. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js.map +1 -1
  384. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js +14 -10
  385. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js.map +1 -1
  386. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.d.ts +5 -0
  387. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js +70 -27
  388. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js.map +1 -1
  389. package/dist/dist-esm/react-components/src/components/VideoGallery/FocusContentLayout.js +2 -2
  390. package/dist/dist-esm/react-components/src/components/VideoGallery/FocusContentLayout.js.map +1 -1
  391. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.d.ts +17 -0
  392. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js +127 -0
  393. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js.map +1 -0
  394. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.js.map +1 -1
  395. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js +7 -7
  396. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js.map +1 -1
  397. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js +19 -6
  398. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js.map +1 -1
  399. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js +8 -6
  400. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js.map +1 -1
  401. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js +2 -4
  402. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js.map +1 -1
  403. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.d.ts +5 -0
  404. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.js +65 -22
  405. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.js.map +1 -1
  406. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js +1 -6
  407. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js.map +1 -1
  408. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js +7 -32
  409. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js.map +1 -1
  410. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js +2 -11
  411. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js.map +1 -1
  412. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/Layout.styles.js.map +1 -1
  413. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/LocalScreenShare.styles.js.map +1 -1
  414. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteScreenShare.styles.js.map +1 -1
  415. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteVideoTile.styles.js.map +1 -1
  416. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js +1 -3
  417. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js.map +1 -1
  418. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js +10 -11
  419. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js.map +1 -1
  420. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js +22 -28
  421. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js.map +1 -1
  422. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js +10 -5
  423. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js.map +1 -1
  424. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js +19 -32
  425. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js.map +1 -1
  426. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/OverflowGalleryUtils.js.map +1 -1
  427. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +62 -22
  428. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  429. package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts +14 -1
  430. package/dist/dist-esm/react-components/src/components/VideoGallery.js +131 -36
  431. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  432. package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +7 -0
  433. package/dist/dist-esm/react-components/src/components/VideoTile.js +39 -54
  434. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  435. package/dist/dist-esm/react-components/src/components/assets/RaisedHandIcon.js +2 -2
  436. package/dist/dist-esm/react-components/src/components/assets/RaisedHandIcon.js.map +1 -1
  437. package/dist/dist-esm/react-components/src/components/index.d.ts +19 -0
  438. package/dist/dist-esm/react-components/src/components/index.js +12 -0
  439. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  440. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.d.ts +58 -0
  441. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js +144 -0
  442. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js.map +1 -0
  443. package/dist/dist-esm/react-components/src/components/styles/Captions.style.js.map +1 -1
  444. package/dist/dist-esm/react-components/src/components/styles/CaptionsSettingsModal.styles.js.map +1 -1
  445. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js +1 -5
  446. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js.map +1 -1
  447. package/dist/dist-esm/react-components/src/components/styles/Common.style.js.map +1 -1
  448. package/dist/dist-esm/react-components/src/components/styles/ControlBar.styles.js.map +1 -1
  449. package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.js.map +1 -1
  450. package/dist/dist-esm/react-components/src/components/styles/EditBox.styles.js.map +1 -1
  451. package/dist/dist-esm/react-components/src/components/styles/GridLayout.styles.js.map +1 -1
  452. package/dist/dist-esm/react-components/src/components/styles/HorizontalGallery.styles.js.map +1 -1
  453. package/dist/dist-esm/react-components/src/components/styles/IconButton.styles.js.map +1 -1
  454. package/dist/dist-esm/react-components/src/components/styles/ImageGallery.style.d.ts +68 -0
  455. package/dist/dist-esm/react-components/src/components/styles/ImageGallery.style.js +202 -0
  456. package/dist/dist-esm/react-components/src/components/styles/ImageGallery.style.js.map +1 -0
  457. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js +1 -4
  458. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js.map +1 -1
  459. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.d.ts +26 -0
  460. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js +68 -0
  461. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js.map +1 -0
  462. package/dist/dist-esm/react-components/src/components/styles/MessageStatusIndicator.styles.js.map +1 -1
  463. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.d.ts +1 -1
  464. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js +2 -8
  465. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js.map +1 -1
  466. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js +0 -1
  467. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js.map +1 -1
  468. package/dist/dist-esm/react-components/src/components/styles/ParticipantList.styles.js.map +1 -1
  469. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js +2 -10
  470. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js.map +1 -1
  471. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.d.ts +38 -0
  472. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js +92 -0
  473. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js.map +1 -0
  474. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js +0 -3
  475. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js.map +1 -1
  476. package/dist/dist-esm/react-components/src/components/styles/SystemMessage.styles.js.map +1 -1
  477. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js +0 -1
  478. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js.map +1 -1
  479. package/dist/dist-esm/react-components/src/components/styles/TypingIndicator.styles.js.map +1 -1
  480. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.d.ts +26 -0
  481. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js +67 -0
  482. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js.map +1 -0
  483. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js +0 -1
  484. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js.map +1 -1
  485. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js +3 -17
  486. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js.map +1 -1
  487. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js.map +1 -1
  488. package/dist/dist-esm/react-components/src/components/styles/v8StyleShim.js.map +1 -1
  489. package/dist/dist-esm/react-components/src/components/utils/Datetime.js +1 -4
  490. package/dist/dist-esm/react-components/src/components/utils/Datetime.js.map +1 -1
  491. package/dist/dist-esm/react-components/src/components/utils/common.js +4 -0
  492. package/dist/dist-esm/react-components/src/components/utils/common.js.map +1 -1
  493. package/dist/dist-esm/react-components/src/components/utils/delay.js.map +1 -1
  494. package/dist/dist-esm/react-components/src/components/utils/formatPhoneNumber.js.map +1 -1
  495. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.d.ts +2 -1
  496. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js +4 -7
  497. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js.map +1 -1
  498. package/dist/dist-esm/react-components/src/components/utils/keyboardNavigation.js.map +1 -1
  499. package/dist/dist-esm/react-components/src/components/utils/merge.d.ts +7 -0
  500. package/dist/dist-esm/react-components/src/components/utils/merge.js +16 -0
  501. package/dist/dist-esm/react-components/src/components/utils/merge.js.map +1 -0
  502. package/dist/dist-esm/react-components/src/components/utils/overFlowGalleriesUtils.js.map +1 -1
  503. package/dist/dist-esm/react-components/src/components/utils/responsive.js +2 -2
  504. package/dist/dist-esm/react-components/src/components/utils/responsive.js.map +1 -1
  505. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js +10 -1
  506. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js.map +1 -1
  507. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js +1 -3
  508. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js.map +1 -1
  509. package/dist/dist-esm/react-components/src/components/utils.js +13 -10
  510. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  511. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js +8 -6
  512. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js.map +1 -1
  513. package/dist/dist-esm/react-components/src/gallery/index.js.map +1 -1
  514. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.d.ts +4 -0
  515. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js +5 -1
  516. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js.map +1 -1
  517. package/dist/dist-esm/react-components/src/identifiers/index.js.map +1 -1
  518. package/dist/dist-esm/react-components/src/index.d.ts +1 -0
  519. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  520. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +65 -0
  521. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  522. package/dist/dist-esm/react-components/src/localization/index.js.map +1 -1
  523. package/dist/dist-esm/react-components/src/localization/locales/ar-SA/ComponentLocale.js +1 -3
  524. package/dist/dist-esm/react-components/src/localization/locales/ar-SA/ComponentLocale.js.map +1 -1
  525. package/dist/dist-esm/react-components/src/localization/locales/cs-CZ/ComponentLocale.js +1 -3
  526. package/dist/dist-esm/react-components/src/localization/locales/cs-CZ/ComponentLocale.js.map +1 -1
  527. package/dist/dist-esm/react-components/src/localization/locales/de-DE/ComponentLocale.js +1 -3
  528. package/dist/dist-esm/react-components/src/localization/locales/de-DE/ComponentLocale.js.map +1 -1
  529. package/dist/dist-esm/react-components/src/localization/locales/en-GB/ComponentLocale.js +1 -3
  530. package/dist/dist-esm/react-components/src/localization/locales/en-GB/ComponentLocale.js.map +1 -1
  531. package/dist/dist-esm/react-components/src/localization/locales/es-ES/ComponentLocale.js +1 -3
  532. package/dist/dist-esm/react-components/src/localization/locales/es-ES/ComponentLocale.js.map +1 -1
  533. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/ComponentLocale.js +1 -3
  534. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/ComponentLocale.js.map +1 -1
  535. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/ComponentLocale.js +1 -3
  536. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/ComponentLocale.js.map +1 -1
  537. package/dist/dist-esm/react-components/src/localization/locales/he-IL/ComponentLocale.js +1 -3
  538. package/dist/dist-esm/react-components/src/localization/locales/he-IL/ComponentLocale.js.map +1 -1
  539. package/dist/dist-esm/react-components/src/localization/locales/index.js +1 -3
  540. package/dist/dist-esm/react-components/src/localization/locales/index.js.map +1 -1
  541. package/dist/dist-esm/react-components/src/localization/locales/it-IT/ComponentLocale.js +1 -3
  542. package/dist/dist-esm/react-components/src/localization/locales/it-IT/ComponentLocale.js.map +1 -1
  543. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/ComponentLocale.js +1 -3
  544. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/ComponentLocale.js.map +1 -1
  545. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/ComponentLocale.js +1 -3
  546. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/ComponentLocale.js.map +1 -1
  547. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/ComponentLocale.js +1 -3
  548. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/ComponentLocale.js.map +1 -1
  549. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/ComponentLocale.js +1 -3
  550. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/ComponentLocale.js.map +1 -1
  551. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/ComponentLocale.js +1 -3
  552. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/ComponentLocale.js.map +1 -1
  553. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/ComponentLocale.js +1 -3
  554. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/ComponentLocale.js.map +1 -1
  555. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/ComponentLocale.js +1 -3
  556. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/ComponentLocale.js.map +1 -1
  557. package/dist/dist-esm/react-components/src/localization/locales/sv-SE/ComponentLocale.js +1 -3
  558. package/dist/dist-esm/react-components/src/localization/locales/sv-SE/ComponentLocale.js.map +1 -1
  559. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/ComponentLocale.js +1 -3
  560. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/ComponentLocale.js.map +1 -1
  561. package/dist/dist-esm/react-components/src/localization/locales/utils.js.map +1 -1
  562. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/ComponentLocale.js +1 -3
  563. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/ComponentLocale.js.map +1 -1
  564. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/ComponentLocale.js +1 -3
  565. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/ComponentLocale.js.map +1 -1
  566. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js +3 -5
  567. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js.map +1 -1
  568. package/dist/dist-esm/react-components/src/theming/FluentV9ThemeProvider.js +1 -1
  569. package/dist/dist-esm/react-components/src/theming/FluentV9ThemeProvider.js.map +1 -1
  570. package/dist/dist-esm/react-components/src/theming/icons.d.ts +15 -0
  571. package/dist/dist-esm/react-components/src/theming/icons.js +112 -10
  572. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  573. package/dist/dist-esm/react-components/src/theming/icons.styles.d.ts +6 -0
  574. package/dist/dist-esm/react-components/src/theming/icons.styles.js +25 -0
  575. package/dist/dist-esm/react-components/src/theming/icons.styles.js.map +1 -0
  576. package/dist/dist-esm/react-components/src/theming/index.js.map +1 -1
  577. package/dist/dist-esm/react-components/src/theming/themeDuplicates.js.map +1 -1
  578. package/dist/dist-esm/react-components/src/theming/themeUtils.js.map +1 -1
  579. package/dist/dist-esm/react-components/src/theming/themes.d.ts +21 -2
  580. package/dist/dist-esm/react-components/src/theming/themes.js +16 -0
  581. package/dist/dist-esm/react-components/src/theming/themes.js.map +1 -1
  582. package/dist/dist-esm/react-components/src/theming/v9ThemeShim.js +1 -7
  583. package/dist/dist-esm/react-components/src/theming/v9ThemeShim.js.map +1 -1
  584. package/dist/dist-esm/react-components/src/types/CaptionsAvailableLanguageStrings.js.map +1 -1
  585. package/dist/dist-esm/react-components/src/types/ChatMessage.d.ts +27 -1
  586. package/dist/dist-esm/react-components/src/types/ChatMessage.js.map +1 -1
  587. package/dist/dist-esm/react-components/src/types/CommunicationParticipant.js.map +1 -1
  588. package/dist/dist-esm/react-components/src/types/ComponentSlotStyle.js.map +1 -1
  589. package/dist/dist-esm/react-components/src/types/CustomStylesProps.js.map +1 -1
  590. package/dist/dist-esm/react-components/src/types/OnRender.d.ts +8 -0
  591. package/dist/dist-esm/react-components/src/types/OnRender.js.map +1 -1
  592. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js.map +1 -1
  593. package/dist/dist-esm/react-components/src/types/ReadReceiptsBySenderId.js.map +1 -1
  594. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.d.ts +6 -0
  595. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js +2 -0
  596. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
  597. package/dist/dist-esm/react-components/src/types/index.js.map +1 -1
  598. package/dist/dist-esm/react-composites/src/Logger.js.map +1 -1
  599. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +112 -0
  600. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +128 -38
  601. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  602. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +144 -0
  603. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  604. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +87 -5
  605. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +399 -55
  606. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  607. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +166 -1
  608. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js +9 -1
  609. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  610. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapterProvider.js.map +1 -1
  611. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallingSoundSubscriber.d.ts +18 -0
  612. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallingSoundSubscriber.js +87 -0
  613. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallingSoundSubscriber.js.map +1 -0
  614. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/DiagnosticsForwarder.js.map +1 -1
  615. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js +1 -3
  616. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js.map +1 -1
  617. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/ParticipantSubcriber.js.map +1 -1
  618. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.d.ts +3 -2
  619. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js +16 -4
  620. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js.map +1 -1
  621. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.d.ts +7 -0
  622. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js +2 -0
  623. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js.map +1 -1
  624. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +118 -31
  625. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  626. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts +1 -0
  627. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +114 -59
  628. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  629. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.d.ts +48 -0
  630. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js +210 -0
  631. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js.map +1 -0
  632. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js +10 -18
  633. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js.map +1 -1
  634. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.d.ts +2 -0
  635. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js +21 -0
  636. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js.map +1 -1
  637. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js +20 -2
  638. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js.map +1 -1
  639. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.d.ts +2 -0
  640. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js +21 -0
  641. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js.map +1 -1
  642. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js +5 -4
  643. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js.map +1 -1
  644. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.d.ts +12 -0
  645. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js +93 -0
  646. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js.map +1 -0
  647. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js +2 -2
  648. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js.map +1 -1
  649. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js +34 -23
  650. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js.map +1 -1
  651. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.d.ts +1 -0
  652. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js +62 -24
  653. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
  654. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js +25 -34
  655. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js.map +1 -1
  656. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +63 -36
  657. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  658. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js +2 -2
  659. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js.map +1 -1
  660. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js +2 -2
  661. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js.map +1 -1
  662. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js +29 -11
  663. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js.map +1 -1
  664. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePaneProvider.js.map +1 -1
  665. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js +3 -7
  666. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js.map +1 -1
  667. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js +13 -8
  668. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js.map +1 -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.js +12 -4
  672. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js.map +1 -1
  673. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js +47 -5
  674. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js.map +1 -1
  675. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js +5 -2
  676. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js.map +1 -1
  677. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js +17 -8
  678. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js.map +1 -1
  679. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js +5 -2
  680. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js.map +1 -1
  681. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.d.ts +8 -0
  682. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js +26 -0
  683. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js.map +1 -0
  684. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/RaiseHand.js +1 -1
  685. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/RaiseHand.js.map +1 -1
  686. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js +10 -1
  687. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js.map +1 -1
  688. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js +13 -9
  689. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js.map +1 -1
  690. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +31 -8
  691. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  692. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.js.map +1 -1
  693. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js +1 -1
  694. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js.map +1 -1
  695. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.d.ts +7 -0
  696. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js +2 -0
  697. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
  698. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +19 -8
  699. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  700. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.d.ts +15 -0
  701. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +155 -19
  702. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  703. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.d.ts +24 -0
  704. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +34 -0
  705. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +1 -0
  706. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js +17 -7
  707. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js.map +1 -1
  708. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js +3 -3
  709. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js.map +1 -1
  710. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.d.ts +11 -0
  711. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js +113 -0
  712. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js.map +1 -0
  713. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.d.ts +15 -0
  714. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js +54 -0
  715. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js.map +1 -0
  716. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.d.ts +16 -9
  717. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js +1 -1
  718. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js.map +1 -1
  719. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.d.ts +12 -5
  720. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.js +2 -1
  721. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.js.map +1 -1
  722. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.d.ts +9 -0
  723. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +10 -0
  724. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
  725. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.d.ts +15 -8
  726. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.js.map +1 -1
  727. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.d.ts +15 -8
  728. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.js +1 -4
  729. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.js.map +1 -1
  730. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.d.ts +15 -8
  731. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.js.map +1 -1
  732. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/deviceCountSelector.d.ts +15 -8
  733. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/deviceCountSelector.js.map +1 -1
  734. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.d.ts +16 -9
  735. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js +1 -1
  736. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js.map +1 -1
  737. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.d.ts +13 -6
  738. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js +11 -5
  739. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js.map +1 -1
  740. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.d.ts +17 -10
  741. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js +1 -1
  742. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js.map +1 -1
  743. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.d.ts +23 -16
  744. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js +7 -1
  745. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js.map +1 -1
  746. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.d.ts +16 -9
  747. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js +4 -4
  748. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js.map +1 -1
  749. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.d.ts +11 -4
  750. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js +1 -1
  751. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js.map +1 -1
  752. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.d.ts +34 -20
  753. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js +4 -4
  754. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js.map +1 -1
  755. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.d.ts +16 -9
  756. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js +1 -1
  757. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js.map +1 -1
  758. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.d.ts +19 -12
  759. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.js.map +1 -1
  760. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js +1 -1
  761. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js.map +1 -1
  762. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js +2 -6
  763. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js.map +1 -1
  764. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.d.ts +2 -0
  765. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js +23 -9
  766. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js.map +1 -1
  767. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallControls.styles.js.map +1 -1
  768. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js.map +1 -1
  769. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js +1 -4
  770. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js.map +1 -1
  771. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.d.ts +32 -0
  772. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js +81 -0
  773. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js.map +1 -0
  774. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js +1 -4
  775. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js.map +1 -1
  776. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalDeviceSettings.styles.js.map +1 -1
  777. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.d.ts +2 -1
  778. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js +2 -3
  779. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js.map +1 -1
  780. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NetworkReconnectTile.styles.js.map +1 -1
  781. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NoticePage.styles.js.map +1 -1
  782. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js +0 -1
  783. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js.map +1 -1
  784. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.d.ts +37 -0
  785. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.js +55 -0
  786. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.js.map +1 -0
  787. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.d.ts +2 -2
  788. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.js.map +1 -1
  789. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CapabilityChangedNotificationTracking.js.map +1 -1
  790. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/ErrorTracking.js.map +1 -1
  791. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js +9 -11
  792. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js.map +1 -1
  793. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackCapabilityChangedNotifications.js +10 -10
  794. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackCapabilityChangedNotifications.js.map +1 -1
  795. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js +2 -2
  796. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js.map +1 -1
  797. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts +15 -3
  798. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +115 -15
  799. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  800. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/index.js.map +1 -1
  801. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +102 -1
  802. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +108 -24
  803. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  804. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.js +1 -1
  805. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.js.map +1 -1
  806. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.js +9 -7
  807. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.js.map +1 -1
  808. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.js +3 -6
  809. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.js.map +1 -1
  810. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.js.map +1 -1
  811. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.d.ts +32 -0
  812. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.js.map +1 -1
  813. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +33 -6
  814. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +151 -8
  815. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  816. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +64 -0
  817. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  818. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +10 -2
  819. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +40 -0
  820. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  821. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts +13 -0
  822. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js +37 -1
  823. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  824. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js +1 -1
  825. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js.map +1 -1
  826. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/hooks/useCallWithChatCompositeStrings.js.map +1 -1
  827. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.js.map +1 -1
  828. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js +1 -1
  829. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js.map +1 -1
  830. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.d.ts +26 -0
  831. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js +15 -2
  832. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js.map +1 -1
  833. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/styles/CallWithChatCompositeStyles.js.map +1 -1
  834. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.d.ts +20 -0
  835. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js +6 -2
  836. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js.map +1 -1
  837. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js +3 -5
  838. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js.map +1 -1
  839. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +148 -11
  840. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  841. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.d.ts +18 -0
  842. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js +18 -0
  843. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +1 -0
  844. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.d.ts +15 -0
  845. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js +21 -0
  846. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js.map +1 -0
  847. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.d.ts +4 -0
  848. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.js.map +1 -1
  849. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +28 -2
  850. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +159 -29
  851. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  852. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.d.ts +28 -0
  853. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js +154 -1
  854. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js.map +1 -1
  855. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +17 -2
  856. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  857. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js +2 -0
  858. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js.map +1 -1
  859. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUpload.js.map +1 -1
  860. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js +18 -6
  861. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js.map +1 -1
  862. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadHandler.js.map +1 -1
  863. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js.map +1 -1
  864. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js +3 -5
  865. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js.map +1 -1
  866. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js +10 -2
  867. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js.map +1 -1
  868. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/usePropsFor.js.map +1 -1
  869. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.d.ts +6 -0
  870. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js +11 -0
  871. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js.map +1 -0
  872. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.d.ts +4 -0
  873. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js.map +1 -1
  874. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.d.ts +12 -0
  875. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js +15 -0
  876. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js.map +1 -0
  877. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.d.ts +34 -0
  878. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js +12 -0
  879. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js.map +1 -0
  880. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js +2 -6
  881. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js.map +1 -1
  882. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.d.ts +5 -1
  883. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js +17 -6
  884. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js.map +1 -1
  885. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.d.ts +22 -0
  886. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js +105 -0
  887. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js.map +1 -0
  888. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.d.ts +17 -0
  889. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js +32 -0
  890. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js.map +1 -0
  891. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.d.ts +5 -0
  892. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js +10 -4
  893. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js.map +1 -1
  894. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js +5 -14
  895. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js.map +1 -1
  896. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.d.ts +22 -0
  897. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js +60 -0
  898. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js.map +1 -0
  899. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.d.ts +15 -0
  900. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js +61 -0
  901. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js.map +1 -0
  902. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.js +6 -8
  903. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.js.map +1 -1
  904. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.js +12 -16
  905. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.js.map +1 -1
  906. package/dist/dist-esm/react-composites/src/composites/common/CaptionsSettingsModal.js +1 -1
  907. package/dist/dist-esm/react-composites/src/composites/common/CaptionsSettingsModal.js.map +1 -1
  908. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js +1 -5
  909. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js.map +1 -1
  910. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.d.ts +1 -0
  911. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +63 -34
  912. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -1
  913. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js +35 -33
  914. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js.map +1 -1
  915. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js +136 -54
  916. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js.map +1 -1
  917. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js +1 -1
  918. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js.map +1 -1
  919. package/dist/dist-esm/react-composites/src/composites/common/ConvertContextualMenuItemToDrawerMenuItem.js.map +1 -1
  920. package/dist/dist-esm/react-composites/src/composites/common/Drawer/CaptionSettingsDrawer.js +5 -7
  921. package/dist/dist-esm/react-composites/src/composites/common/Drawer/CaptionSettingsDrawer.js.map +1 -1
  922. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +115 -98
  923. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -1
  924. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.styles.js.map +1 -1
  925. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.d.ts +1 -0
  926. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.js.map +1 -1
  927. package/dist/dist-esm/react-composites/src/composites/common/Drawer/captionSettingsDrawer.styles.js.map +1 -1
  928. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js +1 -1
  929. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js.map +1 -1
  930. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js +37 -15
  931. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js.map +1 -1
  932. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js +1 -1
  933. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js.map +1 -1
  934. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +13 -14
  935. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
  936. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js +35 -5
  937. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js.map +1 -1
  938. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.d.ts +17 -0
  939. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js +42 -0
  940. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js.map +1 -0
  941. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.d.ts +11 -0
  942. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js +40 -0
  943. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js.map +1 -0
  944. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js +7 -15
  945. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js.map +1 -1
  946. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js +10 -8
  947. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js.map +1 -1
  948. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js +16 -13
  949. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js.map +1 -1
  950. package/dist/dist-esm/react-composites/src/composites/common/adapters.js.map +1 -1
  951. package/dist/dist-esm/react-composites/src/composites/common/constants.js.map +1 -1
  952. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +28 -1
  953. package/dist/dist-esm/react-composites/src/composites/common/icons.js +17 -3
  954. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  955. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependency.js.map +1 -1
  956. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependencyLazy.js.map +1 -1
  957. package/dist/dist-esm/react-composites/src/composites/common/styles/Composite.styles.js.map +1 -1
  958. package/dist/dist-esm/react-composites/src/composites/common/styles/GlobalHostLayer.styles.js.map +1 -1
  959. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js +4 -10
  960. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js.map +1 -1
  961. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js +12 -51
  962. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js.map +1 -1
  963. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js +6 -29
  964. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js.map +1 -1
  965. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js +4 -22
  966. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js.map +1 -1
  967. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.d.ts +15 -4
  968. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js.map +1 -1
  969. package/dist/dist-esm/react-composites/src/composites/common/utils.js +17 -12
  970. package/dist/dist-esm/react-composites/src/composites/common/utils.js.map +1 -1
  971. package/dist/dist-esm/react-composites/src/composites/index.js.map +1 -1
  972. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js +2 -2
  973. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js.map +1 -1
  974. package/dist/dist-esm/react-composites/src/composites/localization/index.js.map +1 -1
  975. package/dist/dist-esm/react-composites/src/composites/localization/locales/ar-SA/CompositeLocale.js.map +1 -1
  976. package/dist/dist-esm/react-composites/src/composites/localization/locales/cs-CZ/CompositeLocale.js.map +1 -1
  977. package/dist/dist-esm/react-composites/src/composites/localization/locales/de-DE/CompositeLocale.js.map +1 -1
  978. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-GB/CompositeLocale.js.map +1 -1
  979. package/dist/dist-esm/react-composites/src/composites/localization/locales/es-ES/CompositeLocale.js.map +1 -1
  980. package/dist/dist-esm/react-composites/src/composites/localization/locales/fi-FI/CompositeLocale.js.map +1 -1
  981. package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-FR/CompositeLocale.js.map +1 -1
  982. package/dist/dist-esm/react-composites/src/composites/localization/locales/he-IL/CompositeLocale.js.map +1 -1
  983. package/dist/dist-esm/react-composites/src/composites/localization/locales/index.js.map +1 -1
  984. package/dist/dist-esm/react-composites/src/composites/localization/locales/it-IT/CompositeLocale.js.map +1 -1
  985. package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/CompositeLocale.js.map +1 -1
  986. package/dist/dist-esm/react-composites/src/composites/localization/locales/ko-KR/CompositeLocale.js.map +1 -1
  987. package/dist/dist-esm/react-composites/src/composites/localization/locales/nb-NO/CompositeLocale.js.map +1 -1
  988. package/dist/dist-esm/react-composites/src/composites/localization/locales/nl-NL/CompositeLocale.js.map +1 -1
  989. package/dist/dist-esm/react-composites/src/composites/localization/locales/pl-PL/CompositeLocale.js.map +1 -1
  990. package/dist/dist-esm/react-composites/src/composites/localization/locales/pt-BR/CompositeLocale.js.map +1 -1
  991. package/dist/dist-esm/react-composites/src/composites/localization/locales/ru-RU/CompositeLocale.js.map +1 -1
  992. package/dist/dist-esm/react-composites/src/composites/localization/locales/sv-SE/CompositeLocale.js.map +1 -1
  993. package/dist/dist-esm/react-composites/src/composites/localization/locales/tr-TR/CompositeLocale.js.map +1 -1
  994. package/dist/dist-esm/react-composites/src/composites/localization/locales/utils.js.map +1 -1
  995. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-CN/CompositeLocale.js.map +1 -1
  996. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-TW/CompositeLocale.js.map +1 -1
  997. package/dist/dist-esm/react-composites/src/index-public.js.map +1 -1
  998. package/dist/tsdoc-metadata.json +1 -1
  999. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"TrackErrors.js","sourceRoot":"","sources":["../../../../../../../preprocess-dist/react-composites/src/composites/CallComposite/utils/TrackErrors.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAKlC;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,YAAkC,EAAE,aAA4B,EAAwB,EAAE;IAC3H,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE;QACvD,MAAM,YAAY,GAAG,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACrD,OAAO,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,eAAe,IAAI,YAAY,CAAC,eAAe,GAAG,YAAY,CAAC,kBAAkB,CAAC;IAC1H,CAAC,CAAC,CAAC;IACH,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,mCAAmC,GAAG,CAAC,qBAAoC,EAAE,YAAkC,EAAiB,EAAE;;IAC7I,MAAM,aAAa,GAAkB,EAAE,CAAC;IAExC,0HAA0H;IAC1H,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;QACtC,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACrE,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG;YAChC,kBAAkB,EAAE,MAAA,MAAA,WAAW,CAAC,SAAS,mCAAI,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,kBAAkB,mCAAI,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7G,eAAe,EAAE,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,eAAe;SACvD,CAAC;KACH;IACD,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,SAAoB,EAAE,aAA4B,EAAiB,EAAE;IACzG,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACjC,MAAM,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IAC/C,uCACK,aAAa,KAChB,CAAC,SAAS,CAAC,kCACN,CAAC,aAAa,IAAI,EAAE,CAAC,KACxB,eAAe,EAAE,GAAG,OAEtB;AACJ,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { ActiveErrorMessage, ErrorType } from '@internal/react-components';\nimport { TrackedErrors } from '../types/ErrorTracking';\n\n/**\n * Take the set of active errors, and filter to only those that are newer than previously dismissed errors or have never been dismissed.\n *\n * @private\n */\nexport const filterLatestErrors = (activeErrors: ActiveErrorMessage[], trackedErrors: TrackedErrors): ActiveErrorMessage[] => {\n const filteredErrors = activeErrors.filter(activeError => {\n const trackedError = trackedErrors[activeError.type];\n return !trackedError || !trackedError.lastDismissedAt || trackedError.lastDismissedAt < trackedError.mostRecentlyActive;\n });\n return filteredErrors;\n};\n\n/**\n * Maintain a record of the most recently active error for each error type.\n *\n * @private\n */\nexport const updateTrackedErrorsWithActiveErrors = (existingTrackedErrors: TrackedErrors, activeErrors: ActiveErrorMessage[]): TrackedErrors => {\n const trackedErrors: TrackedErrors = {};\n\n // Only care about active errors. If errors are no longer active we do not track that they have been previously dismissed.\n for (const activeError of activeErrors) {\n const existingTrackedError = existingTrackedErrors[activeError.type];\n trackedErrors[activeError.type] = {\n mostRecentlyActive: activeError.timestamp ?? existingTrackedError?.mostRecentlyActive ?? new Date(Date.now()),\n lastDismissedAt: existingTrackedError?.lastDismissedAt\n };\n }\n return trackedErrors;\n};\n\n/**\n * Create a record for when the error was most recently dismissed for tracking dismissed errors.\n *\n * @private\n */\nexport const trackErrorAsDismissed = (errorType: ErrorType, trackedErrors: TrackedErrors): TrackedErrors => {\n const now = new Date(Date.now());\n const existingError = trackedErrors[errorType];\n return {\n ...trackedErrors,\n [errorType]: {\n ...(existingError || {}),\n lastDismissedAt: now\n }\n };\n};\"../../../../../react-components/src\""]}
1
+ {"version":3,"file":"TrackErrors.js","sourceRoot":"","sources":["../../../../../../../../react-composites/src/composites/CallComposite/utils/TrackErrors.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAKlC;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,YAAkC,EAClC,aAA4B,EACN,EAAE;IACxB,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE;QACzD,MAAM,YAAY,GAAG,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACrD,OAAO,CACL,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,eAAe,IAAI,YAAY,CAAC,eAAe,GAAG,YAAY,CAAC,kBAAkB,CACjH,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,mCAAmC,GAAG,CACjD,qBAAoC,EACpC,YAAkC,EACnB,EAAE;;IACjB,MAAM,aAAa,GAAkB,EAAE,CAAC;IAExC,0HAA0H;IAC1H,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;QACtC,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACrE,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG;YAChC,kBAAkB,EAAE,MAAA,MAAA,WAAW,CAAC,SAAS,mCAAI,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,kBAAkB,mCAAI,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7G,eAAe,EAAE,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,eAAe;SACvD,CAAC;KACH;IAED,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,SAAoB,EAAE,aAA4B,EAAiB,EAAE;IACzG,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACjC,MAAM,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IAE/C,uCACK,aAAa,KAChB,CAAC,SAAS,CAAC,kCACN,CAAC,aAAa,IAAI,EAAE,CAAC,KACxB,eAAe,EAAE,GAAG,OAEtB;AACJ,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { ActiveErrorMessage, ErrorType } from '@internal/react-components';\nimport { TrackedErrors } from '../types/ErrorTracking';\n\n/**\n * Take the set of active errors, and filter to only those that are newer than previously dismissed errors or have never been dismissed.\n *\n * @private\n */\nexport const filterLatestErrors = (\n activeErrors: ActiveErrorMessage[],\n trackedErrors: TrackedErrors\n): ActiveErrorMessage[] => {\n const filteredErrors = activeErrors.filter((activeError) => {\n const trackedError = trackedErrors[activeError.type];\n return (\n !trackedError || !trackedError.lastDismissedAt || trackedError.lastDismissedAt < trackedError.mostRecentlyActive\n );\n });\n return filteredErrors;\n};\n\n/**\n * Maintain a record of the most recently active error for each error type.\n *\n * @private\n */\nexport const updateTrackedErrorsWithActiveErrors = (\n existingTrackedErrors: TrackedErrors,\n activeErrors: ActiveErrorMessage[]\n): TrackedErrors => {\n const trackedErrors: TrackedErrors = {};\n\n // Only care about active errors. If errors are no longer active we do not track that they have been previously dismissed.\n for (const activeError of activeErrors) {\n const existingTrackedError = existingTrackedErrors[activeError.type];\n trackedErrors[activeError.type] = {\n mostRecentlyActive: activeError.timestamp ?? existingTrackedError?.mostRecentlyActive ?? new Date(Date.now()),\n lastDismissedAt: existingTrackedError?.lastDismissedAt\n };\n }\n\n return trackedErrors;\n};\n\n/**\n * Create a record for when the error was most recently dismissed for tracking dismissed errors.\n *\n * @private\n */\nexport const trackErrorAsDismissed = (errorType: ErrorType, trackedErrors: TrackedErrors): TrackedErrors => {\n const now = new Date(Date.now());\n const existingError = trackedErrors[errorType];\n\n return {\n ...trackedErrors,\n [errorType]: {\n ...(existingError || {}),\n lastDismissedAt: now\n }\n };\n};\n\"../../../../../react-components/src\""]}
@@ -1,6 +1,7 @@
1
1
  import { CallAdapterState, CallCompositePage } from '../adapter/CallAdapter';
2
2
  import { CallControlOptions } from '../types/CallControlOptions';
3
3
  import { CallState, RemoteParticipantState } from "../../../../../calling-stateful-client/src";
4
+ import { EnvironmentInfo } from '@azure/communication-calling';
4
5
  import { AdapterStateModifier } from '../adapter/AzureCommunicationCallAdapter';
5
6
  import { VideoBackgroundEffectsDependency } from "../../../../../calling-component-bindings/src";
6
7
  import { VideoBackgroundEffect } from '../adapter/CallAdapter';
@@ -20,7 +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) => CallCompositePage);
24
+ declare type GetCallCompositePageFunction = ((call: CallState | undefined, previousCall: CallState | undefined) => CallCompositePage) & ((call: CallState | undefined, previousCall: CallState | undefined, unsupportedBrowserInfo?: {
25
+ environmentInfo?: EnvironmentInfo;
26
+ unsupportedBrowserVersionOptedIn?: boolean;
27
+ }, transferCall?: CallState) => CallCompositePage);
24
28
  /**
25
29
  * Get the current call composite page based on the current call composite state
26
30
  *
@@ -36,7 +40,7 @@ declare type GetCallCompositePageFunction = ((call: CallState | undefined, previ
36
40
  */
37
41
  export declare const getCallCompositePage: GetCallCompositePageFunction;
38
42
  /** @private */
39
- export declare const IsCallEndedPage: (page: 'accessDeniedTeamsMeeting' | 'call' | 'configuration' | 'joinCallFailedDueToNoNetwork' | 'leaving' | 'leftCall' | 'lobby' | 'removedFromCall') => boolean;
43
+ export declare 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;
40
44
  /**
41
45
  * Creates a new call control options object and sets the correct values for disabling
42
46
  * the buttons provided in the `disabledControls` array.
@@ -58,11 +62,19 @@ export declare const disableCallControls: (callControlOptions: CallControlOption
58
62
  export declare const isDisabled: (option: boolean | {
59
63
  disabled: boolean;
60
64
  } | undefined) => boolean;
65
+ /**
66
+ *
67
+ * This function uses permission API to determine if device permission state is granted, prompt or denied
68
+ * @returns whether device permission state is granted, prompt or denied
69
+ * If permission API is not supported on this browser, permission state is set to unsupported.
70
+ * @private
71
+ */
72
+ export declare const getDevicePermissionState: (setVideoState: (state: PermissionState | 'unsupported') => void, setAudioState: (state: PermissionState | 'unsupported') => void) => Promise<void>;
61
73
  /**
62
74
  * Check if we are using safari browser
63
75
  * @private
64
76
  */
65
- export declare const _isSafari: (environmentInfo: undefined) => boolean;
77
+ export declare const _isSafari: (environmentInfo: undefined | /* @conditional-compile-remove(unsupported-browser) */ EnvironmentInfo) => boolean;
66
78
  /**
67
79
  * @private
68
80
  * This is the util function to create a participant modifier for remote participantList
@@ -1,17 +1,30 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT License.
3
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
4
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
5
+ return new (P || (P = Promise))(function (resolve, reject) {
6
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
8
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
9
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
10
+ });
11
+ };
3
12
  import { END_CALL_PAGES } from '../adapter/CallAdapter';
4
13
  import { _isInCall, _isPreviewOn, _isInLobbyOrConnecting } from "../../../../../calling-component-bindings/src";
5
14
  import { isPhoneNumberIdentifier } from '@azure/communication-common';
6
15
  const ACCESS_DENIED_TEAMS_MEETING_SUB_CODE = 5854;
7
16
  const REMOTE_PSTN_USER_HUNG_UP = 560000;
8
17
  const REMOVED_FROM_CALL_SUB_CODES = [5000, 5300, REMOTE_PSTN_USER_HUNG_UP];
18
+ /* @conditional-compile-remove(rooms) */
19
+ const ROOM_NOT_FOUND_SUB_CODE = 5751;
20
+ /* @conditional-compile-remove(rooms) */
21
+ const DENIED_PERMISSION_TO_ROOM_SUB_CODE = 5828;
9
22
  /**
10
23
  * @private
11
24
  */
12
25
  export const isCameraOn = (state) => {
13
26
  if (state.call) {
14
- const stream = state.call.localVideoStreams.find(stream => stream.mediaStreamType === 'Video');
27
+ const stream = state.call.localVideoStreams.find((stream) => stream.mediaStreamType === 'Video');
15
28
  return !!stream;
16
29
  }
17
30
  else {
@@ -52,7 +65,7 @@ var CallEndReasons;
52
65
  CallEndReasons[CallEndReasons["DENIED_PERMISSION_TO_ROOM"] = 4] = "DENIED_PERMISSION_TO_ROOM";
53
66
  })(CallEndReasons || (CallEndReasons = {}));
54
67
  const getCallEndReason = (call) => {
55
- var _a, _b, _c;
68
+ var _a, _b, _c, _d, _e;
56
69
  const remoteParticipantsEndedArray = Array.from(Object.values(call.remoteParticipantsEnded));
57
70
  /**
58
71
  * Handle the special case in a PSTN call where removing the last user kicks the caller out of the call.
@@ -61,7 +74,9 @@ const getCallEndReason = (call) => {
61
74
  * If yes, the caller was kicked out of the call, but we need to show them that they left the call.
62
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.
63
76
  */
64
- 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) {
65
80
  return CallEndReasons.LEFT_CALL;
66
81
  }
67
82
  if (((_b = call.callEndReason) === null || _b === void 0 ? void 0 : _b.subCode) && call.callEndReason.subCode === ACCESS_DENIED_TEAMS_MEETING_SUB_CODE) {
@@ -70,6 +85,14 @@ const getCallEndReason = (call) => {
70
85
  if (((_c = call.callEndReason) === null || _c === void 0 ? void 0 : _c.subCode) && REMOVED_FROM_CALL_SUB_CODES.includes(call.callEndReason.subCode)) {
71
86
  return CallEndReasons.REMOVED_FROM_CALL;
72
87
  }
88
+ /* @conditional-compile-remove(rooms) */
89
+ if (((_d = call.callEndReason) === null || _d === void 0 ? void 0 : _d.subCode) && call.callEndReason.subCode === ROOM_NOT_FOUND_SUB_CODE) {
90
+ return CallEndReasons.ROOM_NOT_FOUND;
91
+ }
92
+ /* @conditional-compile-remove(rooms) */
93
+ if (((_e = call.callEndReason) === null || _e === void 0 ? void 0 : _e.subCode) && call.callEndReason.subCode === DENIED_PERMISSION_TO_ROOM_SUB_CODE) {
94
+ return CallEndReasons.DENIED_PERMISSION_TO_ROOM;
95
+ }
73
96
  if (call.callEndReason) {
74
97
  // No error codes match, assume the user simply left the call regularly
75
98
  return CallEndReasons.LEFT_CALL;
@@ -90,6 +113,14 @@ const getCallEndReason = (call) => {
90
113
  * @private
91
114
  */
92
115
  export const getCallCompositePage = (call, previousCall, unsupportedBrowserInfo, transferCall) => {
116
+ /* @conditional-compile-remove(unsupported-browser) */
117
+ if (isUnsupportedEnvironment(unsupportedBrowserInfo.environmentInfo, unsupportedBrowserInfo.unsupportedBrowserVersionOptedIn)) {
118
+ return 'unsupportedEnvironment';
119
+ }
120
+ /* @conditional-compile-remove(call-transfer) */
121
+ if (transferCall !== undefined) {
122
+ return 'transferring';
123
+ }
93
124
  if (call) {
94
125
  // Must check for ongoing call *before* looking at any previous calls.
95
126
  // If the composite completes one call and joins another, the previous calls
@@ -100,6 +131,8 @@ export const getCallCompositePage = (call, previousCall, unsupportedBrowserInfo,
100
131
  // `LocalHold` needs to be checked before `isInCall` since it is also a state that's considered in call.
101
132
  }
102
133
  else if ((call === null || call === void 0 ? void 0 : call.state) === 'LocalHold') {
134
+ /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */
135
+ return 'hold';
103
136
  return 'call';
104
137
  }
105
138
  else if ((call === null || call === void 0 ? void 0 : call.state) === 'Disconnecting') {
@@ -119,6 +152,13 @@ export const getCallCompositePage = (call, previousCall, unsupportedBrowserInfo,
119
152
  }
120
153
  if (previousCall) {
121
154
  const reason = getCallEndReason(previousCall);
155
+ /* @conditional-compile-remove(rooms) */
156
+ switch (reason) {
157
+ case CallEndReasons.ROOM_NOT_FOUND:
158
+ return 'roomNotFound';
159
+ case CallEndReasons.DENIED_PERMISSION_TO_ROOM:
160
+ return 'deniedPermissionToRoom';
161
+ }
122
162
  switch (reason) {
123
163
  case CallEndReasons.ACCESS_DENIED:
124
164
  return 'accessDeniedTeamsMeeting';
@@ -135,7 +175,16 @@ export const getCallCompositePage = (call, previousCall, unsupportedBrowserInfo,
135
175
  return 'configuration';
136
176
  };
137
177
  /** @private */
138
- 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);
139
188
  /**
140
189
  * Creates a new call control options object and sets the correct values for disabling
141
190
  * the buttons provided in the `disabledControls` array.
@@ -154,18 +203,14 @@ export const disableCallControls = (callControlOptions, disabledControls) => {
154
203
  let newOptions = (_a = (callControlOptions instanceof Object ? Object.assign({}, callControlOptions) : callControlOptions)) !== null && _a !== void 0 ? _a : {};
155
204
  if (newOptions === true || newOptions === undefined) {
156
205
  newOptions = disabledControls.reduce((acc, key) => {
157
- acc[key] = {
158
- disabled: true
159
- };
206
+ acc[key] = { disabled: true };
160
207
  return acc;
161
208
  }, {});
162
209
  }
163
210
  else {
164
- disabledControls.forEach(key => {
211
+ disabledControls.forEach((key) => {
165
212
  if (newOptions[key] !== false) {
166
- newOptions[key] = {
167
- disabled: true
168
- };
213
+ newOptions[key] = { disabled: true };
169
214
  }
170
215
  });
171
216
  }
@@ -185,11 +230,61 @@ export const isDisabled = (option) => {
185
230
  }
186
231
  return option.disabled;
187
232
  };
233
+ /* @conditional-compile-remove(call-readiness) */
234
+ /**
235
+ * @returns Permissions state for the camera.
236
+ */
237
+ const queryCameraPermissionFromPermissionsAPI = () => __awaiter(void 0, void 0, void 0, function* () {
238
+ try {
239
+ return (yield navigator.permissions.query({ name: 'camera' })).state;
240
+ }
241
+ catch (e) {
242
+ console.info('permissions API is not supported by browser', e);
243
+ return 'unsupported';
244
+ }
245
+ });
246
+ /* @conditional-compile-remove(call-readiness) */
247
+ /**
248
+ * @returns Permissions state for the microphone.
249
+ */
250
+ const queryMicrophonePermissionFromPermissionsAPI = () => __awaiter(void 0, void 0, void 0, function* () {
251
+ try {
252
+ return (yield navigator.permissions.query({ name: 'microphone' })).state;
253
+ }
254
+ catch (e) {
255
+ console.info('permissions API is not supported by browser', e);
256
+ return 'unsupported';
257
+ }
258
+ });
259
+ /* @conditional-compile-remove(call-readiness) */
260
+ /**
261
+ *
262
+ * This function uses permission API to determine if device permission state is granted, prompt or denied
263
+ * @returns whether device permission state is granted, prompt or denied
264
+ * If permission API is not supported on this browser, permission state is set to unsupported.
265
+ * @private
266
+ */
267
+ export const getDevicePermissionState = (setVideoState, setAudioState) => __awaiter(void 0, void 0, void 0, function* () {
268
+ const [cameraResult, microphoneResult] = yield Promise.all([
269
+ queryCameraPermissionFromPermissionsAPI(),
270
+ queryMicrophonePermissionFromPermissionsAPI()
271
+ ]);
272
+ setVideoState(cameraResult);
273
+ setAudioState(microphoneResult);
274
+ });
275
+ /* @conditional-compile-remove(unsupported-browser) */
276
+ const isUnsupportedEnvironment = (environmentInfo, unsupportedBrowserVersionOptedIn) => {
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);
280
+ };
188
281
  /**
189
282
  * Check if we are using safari browser
190
283
  * @private
191
284
  */
192
285
  export const _isSafari = (environmentInfo) => {
286
+ /* @conditional-compile-remove(unsupported-browser) */
287
+ return (environmentInfo === null || environmentInfo === void 0 ? void 0 : environmentInfo.environment.browser) === 'safari';
193
288
  return /^((?!chrome|android|crios|fxios).)*safari/i.test(navigator.userAgent);
194
289
  };
195
290
  /**
@@ -227,14 +322,19 @@ export const createParticipantModifier = (createModifiedParticipant) => {
227
322
  }
228
323
  previousParticipantState = (_d = state.call) === null || _d === void 0 ? void 0 : _d.remoteParticipants;
229
324
  }
230
- return Object.assign(Object.assign({}, state), { call: state.call ? Object.assign(Object.assign({}, state.call), { remoteParticipants: modifiedParticipants }) : undefined });
325
+ return Object.assign(Object.assign({}, state), { call: state.call
326
+ ? Object.assign(Object.assign({}, state.call), { remoteParticipants: modifiedParticipants }) : undefined });
231
327
  };
232
328
  };
233
329
  /* @conditional-compile-remove(video-background-effects) */
234
330
  /** @private */
235
- export const getBackgroundEffectFromSelectedEffect = (selectedEffect, VideoBackgroundEffectsDependency) => (selectedEffect === null || selectedEffect === void 0 ? void 0 : selectedEffect.effectName) === 'blur' ? VideoBackgroundEffectsDependency.createBackgroundBlurEffect() : (selectedEffect === null || selectedEffect === void 0 ? void 0 : selectedEffect.effectName) === 'replacement' ? VideoBackgroundEffectsDependency.createBackgroundReplacementEffect({
236
- backgroundImageUrl: selectedEffect.backgroundImageUrl
237
- }) : undefined;
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;
238
338
  /**
239
339
  * @remarks this logic should mimic the onToggleCamera in the common call handlers.
240
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';\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';\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/**\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 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) => 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 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 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 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'): 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 * Check if we are using safari browser\n * @private\n */\nexport const _isSafari = (environmentInfo: undefined): boolean => {\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/* @conditional-compile-remove(video-background-effects) */\n/** @private */\nexport const getBackgroundEffectFromSelectedEffect = (selectedEffect: VideoBackgroundEffect | undefined, VideoBackgroundEffectsDependency: VideoBackgroundEffectsDependency): VideoEffectProcessor | undefined => selectedEffect?.effectName === 'blur' ? VideoBackgroundEffectsDependency.createBackgroundBlurEffect() : selectedEffect?.effectName === 'replacement' ? VideoBackgroundEffectsDependency.createBackgroundReplacementEffect({\n backgroundImageUrl: selectedEffect.backgroundImageUrl\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 => 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 +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,eAAe,CAAC;AAC9B,cAAc,SAAS,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport * from './TrackErrors';\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"]}
@@ -3,7 +3,10 @@ import { PartialTheme, Theme } from '@fluentui/react';
3
3
  import { CallWithChatAdapter } from './adapter/CallWithChatAdapter';
4
4
  import { BaseCompositeProps } from '../common/BaseComposite';
5
5
  import { CallWithChatCompositeIcons } from '../common/icons';
6
+ import { FileSharingOptions } from '../ChatComposite';
6
7
  import { RemoteVideoTileMenuOptions } from '../CallComposite/CallComposite';
8
+ import { LocalVideoTileOptions } from '../CallComposite/CallComposite';
9
+ import { DeviceCheckOptions } from '../CallComposite/CallComposite';
7
10
  import { CommonCallControlOptions } from '../common/types/CommonCallControlOptions';
8
11
  import { VideoGalleryLayout } from "../../../../react-components/src";
9
12
  /**
@@ -44,7 +47,9 @@ export interface CallWithChatControlOptions extends CommonCallControlOptions {
44
47
  * Show or hide the chat button in the call-with-chat composite control bar.
45
48
  * @defaultValue true
46
49
  */
47
- chatButton?: boolean;
50
+ chatButton?: boolean | /* @conditional-compile-remove(PSTN-calls) */ {
51
+ disabled: boolean;
52
+ };
48
53
  }
49
54
  /**
50
55
  * Optional features of the {@link CallWithChatComposite}.
@@ -57,10 +62,72 @@ export declare type CallWithChatCompositeOptions = {
57
62
  * If using the boolean values, true will cause default behavior across the whole control bar. False hides the whole control bar.
58
63
  */
59
64
  callControls?: boolean | CallWithChatControlOptions;
65
+ /**
66
+ * Properties for configuring the File Sharing feature.
67
+ * If undefined, file sharing feature will be disabled.
68
+ * @beta
69
+ */
70
+ fileSharing?: FileSharingOptions;
71
+ /**
72
+ * Device permissions check options for your call.
73
+ * Here you can choose what device permissions you prompt the user for,
74
+ * as well as what device permissions must be accepted before starting a call.
75
+ */
76
+ deviceChecks?: DeviceCheckOptions;
77
+ /**
78
+ * Callback you may provide to supply users with further steps to troubleshoot why they have been
79
+ * unable to grant your site the required permissions for the call.
80
+ *
81
+ * @example
82
+ * ```ts
83
+ * onPermissionsTroubleshootingClick: () =>
84
+ * window.open('https://contoso.com/permissions-troubleshooting', '_blank');
85
+ * ```
86
+ *
87
+ * @remarks
88
+ * if this is not supplied, the composite will not show a 'further troubleshooting' link.
89
+ */
90
+ onPermissionsTroubleshootingClick?: (permissionsState: {
91
+ camera: PermissionState;
92
+ microphone: PermissionState;
93
+ }) => void;
94
+ /**
95
+ * Optional callback to supply users with further troubleshooting steps for network issues
96
+ * experienced when connecting to a call.
97
+ *
98
+ * @example
99
+ * ```ts
100
+ * onNetworkingTroubleShootingClick?: () =>
101
+ * window.open('https://contoso.com/network-troubleshooting', '_blank');
102
+ * ```
103
+ *
104
+ * @remarks
105
+ * if this is not supplied, the composite will not show a 'network troubleshooting' link.
106
+ */
107
+ onNetworkingTroubleShootingClick?: () => void;
108
+ /**
109
+ * Callback you may provide to supply users with a provided page to showcase supported browsers by ACS.
110
+ *
111
+ * @example
112
+ * ```ts
113
+ * onBrowserTroubleShootingClick?: () =>
114
+ * window.open('https://contoso.com/browser-troubleshooting', '_blank');
115
+ * ```
116
+ *
117
+ * @remarks
118
+ * if this is not supplied, the composite will not show a unsupported browser page.
119
+ */
120
+ onEnvironmentInfoTroubleshootingClick?: () => void;
60
121
  /**
61
122
  * Remote participant video tile menu options
62
123
  */
63
124
  remoteVideoTileMenuOptions?: RemoteVideoTileMenuOptions;
125
+ /**
126
+ * Options for controlling the local video tile.
127
+ *
128
+ * @remarks if 'false' the local video tile will not be rendered.
129
+ */
130
+ localVideoTile?: boolean | LocalVideoTileOptions;
64
131
  /**
65
132
  * Options for controlling the starting layout of the composite's video gallery
66
133
  */
@@ -70,6 +137,40 @@ export declare type CallWithChatCompositeOptions = {
70
137
  */
71
138
  layout?: VideoGalleryLayout;
72
139
  };
140
+ /**
141
+ * Logo displayed on the configuration page.
142
+ */
143
+ logo?: {
144
+ /**
145
+ * URL for the logo image.
146
+ *
147
+ * @remarks
148
+ * Recommended size is 80x80 pixels.
149
+ */
150
+ url: string;
151
+ /**
152
+ * Alt text for the logo image.
153
+ */
154
+ alt?: string;
155
+ /**
156
+ * The logo can be displayed as a circle or a square.
157
+ *
158
+ * @defaultValue 'circle'
159
+ */
160
+ shape?: 'circle' | 'square';
161
+ };
162
+ /**
163
+ * Background image displayed on the configuration page.
164
+ */
165
+ backgroundImage?: {
166
+ /**
167
+ * URL for the background image.
168
+ *
169
+ * @remarks
170
+ * Background image should be larger than 576x567 pixels and smaller than 2048x2048 pixels pixels.
171
+ */
172
+ url: string;
173
+ };
73
174
  };
74
175
  /**
75
176
  * CallWithChatComposite brings together key components to provide a full call with chat experience out of the box.