@azure/communication-react 1.16.0-beta.1 → 1.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (534) hide show
  1. package/dist/communication-react.d.ts +170 -1980
  2. package/dist/dist-cjs/communication-react/index.js +32462 -160
  3. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  4. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  5. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  6. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.d.ts +1 -5
  7. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +3 -11
  8. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  9. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.d.ts +0 -12
  10. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +1 -13
  11. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
  12. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js +0 -4
  13. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js.map +1 -1
  14. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.d.ts +1 -10
  15. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +0 -14
  16. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
  17. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js +0 -10
  18. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js.map +1 -1
  19. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js +1 -15
  20. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js.map +1 -1
  21. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.d.ts +1 -3
  22. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js +0 -17
  23. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  24. package/dist/dist-esm/calling-component-bindings/src/index.d.ts +0 -5
  25. package/dist/dist-esm/calling-component-bindings/src/index.js +0 -6
  26. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  27. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.d.ts +0 -1
  28. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +12 -11
  29. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
  30. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.d.ts +3 -4
  31. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.js.map +1 -1
  32. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.d.ts +2 -14
  33. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js +1 -20
  34. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js.map +1 -1
  35. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.d.ts +0 -7
  36. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js +0 -12
  37. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js.map +1 -1
  38. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.d.ts +2 -1
  39. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +5 -4
  40. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  41. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js +6 -6
  42. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
  43. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.d.ts +5 -6
  44. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.js.map +1 -1
  45. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.d.ts +1 -15
  46. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
  47. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.d.ts +1 -2
  48. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js +0 -5
  49. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js.map +1 -1
  50. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +10 -61
  51. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  52. package/dist/dist-esm/calling-stateful-client/src/CallContext.d.ts +2 -12
  53. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +18 -69
  54. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  55. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js +0 -46
  56. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js.map +1 -1
  57. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.d.ts +0 -3
  58. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +4 -29
  59. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  60. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js +4 -0
  61. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js.map +1 -1
  62. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.d.ts +0 -17
  63. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.js +3 -61
  64. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.js.map +1 -1
  65. package/dist/dist-esm/calling-stateful-client/src/Converter.d.ts +0 -5
  66. package/dist/dist-esm/calling-stateful-client/src/Converter.js +21 -21
  67. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  68. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.d.ts +0 -1
  69. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js +0 -11
  70. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js.map +1 -1
  71. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts +1 -25
  72. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js +2 -33
  73. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
  74. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.d.ts +2 -2
  75. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js +0 -8
  76. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js.map +1 -1
  77. package/dist/dist-esm/calling-stateful-client/src/index-public.d.ts +0 -3
  78. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  79. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.d.ts +1 -5
  80. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js +4 -13
  81. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js.map +1 -1
  82. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.d.ts +1 -2
  83. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js +0 -5
  84. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  85. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +1 -84
  86. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
  87. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js +3 -3
  88. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js.map +1 -1
  89. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.d.ts +1 -1
  90. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js.map +1 -1
  91. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js +1 -4
  92. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js.map +1 -1
  93. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.d.ts +0 -1
  94. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.js.map +1 -1
  95. package/dist/dist-esm/communication-react/src/index.d.ts +0 -26
  96. package/dist/dist-esm/communication-react/src/index.js +0 -16
  97. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  98. package/dist/dist-esm/react-components/src/components/AttachmentDownloadCards.d.ts +1 -1
  99. package/dist/dist-esm/react-components/src/components/AttachmentDownloadCards.js +0 -9
  100. package/dist/dist-esm/react-components/src/components/AttachmentDownloadCards.js.map +1 -1
  101. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.d.ts +1 -12
  102. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.js +2 -10
  103. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.js.map +1 -1
  104. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.d.ts +0 -16
  105. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +30 -63
  106. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
  107. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.d.ts +1 -17
  108. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js +4 -10
  109. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js.map +1 -1
  110. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.d.ts +1 -2
  111. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.js +4 -26
  112. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.js.map +1 -1
  113. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.d.ts +1 -6
  114. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.js +5 -27
  115. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.js.map +1 -1
  116. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.d.ts +2 -18
  117. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.js +0 -22
  118. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.js.map +1 -1
  119. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.d.ts +1 -27
  120. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.js +3 -11
  121. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.js.map +1 -1
  122. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.d.ts +1 -17
  123. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js +5 -11
  124. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js.map +1 -1
  125. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/FluentChatMyMessageComponent.js +5 -32
  126. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/FluentChatMyMessageComponent.js.map +1 -1
  127. package/dist/dist-esm/react-components/src/components/DevicesButton.d.ts +2 -1
  128. package/dist/dist-esm/react-components/src/components/DevicesButton.js +6 -2
  129. package/dist/dist-esm/react-components/src/components/DevicesButton.js.map +1 -1
  130. package/dist/dist-esm/react-components/src/components/ImageOverlay.js +1 -5
  131. package/dist/dist-esm/react-components/src/components/ImageOverlay.js.map +1 -1
  132. package/dist/dist-esm/react-components/src/components/InputBoxButton.d.ts +1 -0
  133. package/dist/dist-esm/react-components/src/components/InputBoxButton.js +9 -8
  134. package/dist/dist-esm/react-components/src/components/InputBoxButton.js.map +1 -1
  135. package/dist/dist-esm/react-components/src/components/InputBoxComponent.d.ts +0 -2
  136. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js +0 -18
  137. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js.map +1 -1
  138. package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +2 -46
  139. package/dist/dist-esm/react-components/src/components/MessageThread.js +3 -30
  140. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  141. package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts +2 -13
  142. package/dist/dist-esm/react-components/src/components/ParticipantItem.js +0 -3
  143. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  144. package/dist/dist-esm/react-components/src/components/ParticipantList.d.ts +0 -15
  145. package/dist/dist-esm/react-components/src/components/ParticipantList.js +15 -21
  146. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  147. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +26 -5
  148. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  149. package/dist/dist-esm/react-components/src/components/SendBox.d.ts +0 -46
  150. package/dist/dist-esm/react-components/src/components/SendBox.js +18 -72
  151. package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
  152. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js +0 -2
  153. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js.map +1 -1
  154. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js +0 -2
  155. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js.map +1 -1
  156. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js +0 -24
  157. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js.map +1 -1
  158. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js +0 -2
  159. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js.map +1 -1
  160. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +3 -15
  161. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  162. package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts +2 -0
  163. package/dist/dist-esm/react-components/src/components/VideoGallery.js +1 -2
  164. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  165. package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +0 -7
  166. package/dist/dist-esm/react-components/src/components/VideoTile.js +1 -7
  167. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  168. package/dist/dist-esm/react-components/src/components/index.d.ts +0 -19
  169. package/dist/dist-esm/react-components/src/components/index.js +0 -15
  170. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  171. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.d.ts +3 -3
  172. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.d.ts +0 -1
  173. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js +2 -3
  174. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js.map +1 -1
  175. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js +2 -1
  176. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js.map +1 -1
  177. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.d.ts +1 -8
  178. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.js +3 -13
  179. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.js.map +1 -1
  180. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.d.ts +3 -11
  181. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.js +2 -36
  182. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.js.map +1 -1
  183. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.d.ts +14 -9
  184. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js +16 -14
  185. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js.map +1 -1
  186. package/dist/dist-esm/react-components/src/components/utils/common.js +0 -4
  187. package/dist/dist-esm/react-components/src/components/utils/common.js.map +1 -1
  188. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.d.ts +1 -2
  189. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js.map +1 -1
  190. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.d.ts +0 -4
  191. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js +1 -5
  192. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js.map +1 -1
  193. package/dist/dist-esm/react-components/src/index.d.ts +0 -1
  194. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  195. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +0 -60
  196. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  197. package/dist/dist-esm/react-components/src/theming/icons.d.ts +0 -29
  198. package/dist/dist-esm/react-components/src/theming/icons.js +1 -137
  199. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  200. package/dist/dist-esm/react-components/src/theming/themes.d.ts +0 -6
  201. package/dist/dist-esm/react-components/src/theming/themes.js +0 -10
  202. package/dist/dist-esm/react-components/src/theming/themes.js.map +1 -1
  203. package/dist/dist-esm/react-components/src/types/ChatMessage.d.ts +1 -27
  204. package/dist/dist-esm/react-components/src/types/ChatMessage.js.map +1 -1
  205. package/dist/dist-esm/react-components/src/types/OnRender.d.ts +0 -8
  206. package/dist/dist-esm/react-components/src/types/OnRender.js.map +1 -1
  207. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.d.ts +0 -6
  208. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js +0 -2
  209. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
  210. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +7 -72
  211. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +7 -30
  212. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  213. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +4 -104
  214. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  215. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +7 -71
  216. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +20 -214
  217. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  218. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +6 -91
  219. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js +1 -1
  220. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  221. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.d.ts +1 -2
  222. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js +1 -7
  223. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js.map +1 -1
  224. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.d.ts +0 -4
  225. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js +0 -2
  226. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js.map +1 -1
  227. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +16 -25
  228. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  229. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts +0 -1
  230. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +2 -38
  231. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  232. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.d.ts +13 -0
  233. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js +9 -1
  234. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js.map +1 -1
  235. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.d.ts +0 -2
  236. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js +0 -27
  237. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js.map +1 -1
  238. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js +2 -20
  239. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js.map +1 -1
  240. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.d.ts +0 -2
  241. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js +0 -27
  242. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js.map +1 -1
  243. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.d.ts +0 -1
  244. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js +5 -19
  245. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
  246. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.d.ts +1 -0
  247. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js +3 -3
  248. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js.map +1 -1
  249. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js +2 -6
  250. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js.map +1 -1
  251. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +7 -30
  252. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  253. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.d.ts +0 -4
  254. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js +0 -2
  255. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
  256. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.d.ts +1 -0
  257. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +2 -2
  258. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  259. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.d.ts +0 -7
  260. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +7 -80
  261. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  262. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.d.ts +0 -8
  263. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +0 -11
  264. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
  265. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js.map +1 -1
  266. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js +0 -4
  267. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js.map +1 -1
  268. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts +2 -14
  269. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +7 -90
  270. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  271. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +1 -61
  272. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +7 -27
  273. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  274. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.d.ts +1 -1
  275. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.js +3 -3
  276. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.js.map +1 -1
  277. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.d.ts +10 -30
  278. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.js.map +1 -1
  279. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +52 -38
  280. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +179 -174
  281. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  282. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +12 -57
  283. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  284. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +1 -9
  285. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +0 -32
  286. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  287. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts +0 -9
  288. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js +2 -38
  289. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  290. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.d.ts +1 -1
  291. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.js.map +1 -1
  292. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.d.ts +2 -22
  293. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js +4 -9
  294. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js.map +1 -1
  295. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.d.ts +0 -20
  296. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js +1 -6
  297. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js.map +1 -1
  298. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +6 -42
  299. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  300. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.d.ts +0 -4
  301. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.js.map +1 -1
  302. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationAttachmentUploadAdapter.d.ts +0 -29
  303. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationAttachmentUploadAdapter.js +1 -187
  304. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationAttachmentUploadAdapter.js.map +1 -1
  305. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +1 -15
  306. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +0 -92
  307. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  308. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +2 -18
  309. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  310. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js +0 -2
  311. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js.map +1 -1
  312. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUploadButton.js +1 -8
  313. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUploadButton.js.map +1 -1
  314. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.d.ts +0 -1
  315. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js.map +1 -1
  316. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js +1 -7
  317. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js.map +1 -1
  318. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.d.ts +0 -3
  319. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js.map +1 -1
  320. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.d.ts +1 -5
  321. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js +23 -20
  322. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js.map +1 -1
  323. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.d.ts +0 -5
  324. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js +2 -3
  325. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js.map +1 -1
  326. package/dist/dist-esm/react-composites/src/composites/common/CalloutWithIcon.d.ts +10 -0
  327. package/dist/dist-esm/react-composites/src/composites/common/CalloutWithIcon.js +39 -0
  328. package/dist/dist-esm/react-composites/src/composites/common/CalloutWithIcon.js.map +1 -0
  329. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.d.ts +0 -1
  330. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +10 -13
  331. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -1
  332. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js +0 -26
  333. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js.map +1 -1
  334. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +1 -25
  335. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -1
  336. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.d.ts +0 -1
  337. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.js.map +1 -1
  338. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +1 -3
  339. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
  340. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.d.ts +1 -0
  341. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js +5 -16
  342. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js.map +1 -1
  343. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js +1 -1
  344. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js.map +1 -1
  345. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +1 -40
  346. package/dist/dist-esm/react-composites/src/composites/common/icons.js +0 -12
  347. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  348. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.d.ts +4 -20
  349. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js.map +1 -1
  350. package/dist/dist-esm/react-composites/src/composites/localization/locales/ar-SA/strings.json +4 -0
  351. package/dist/dist-esm/react-composites/src/composites/localization/locales/cs-CZ/strings.json +4 -0
  352. package/dist/dist-esm/react-composites/src/composites/localization/locales/de-DE/strings.json +4 -0
  353. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-GB/strings.json +4 -0
  354. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-US/strings.json +8 -0
  355. package/dist/dist-esm/react-composites/src/composites/localization/locales/es-ES/strings.json +4 -0
  356. package/dist/dist-esm/react-composites/src/composites/localization/locales/fi-FI/strings.json +4 -0
  357. package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-FR/strings.json +4 -0
  358. package/dist/dist-esm/react-composites/src/composites/localization/locales/he-IL/strings.json +4 -0
  359. package/dist/dist-esm/react-composites/src/composites/localization/locales/it-IT/strings.json +4 -0
  360. package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/strings.json +4 -0
  361. package/dist/dist-esm/react-composites/src/composites/localization/locales/ko-KR/strings.json +4 -0
  362. package/dist/dist-esm/react-composites/src/composites/localization/locales/nb-NO/strings.json +4 -0
  363. package/dist/dist-esm/react-composites/src/composites/localization/locales/nl-NL/strings.json +4 -0
  364. package/dist/dist-esm/react-composites/src/composites/localization/locales/pl-PL/strings.json +4 -0
  365. package/dist/dist-esm/react-composites/src/composites/localization/locales/pt-BR/strings.json +4 -0
  366. package/dist/dist-esm/react-composites/src/composites/localization/locales/ru-RU/strings.json +4 -0
  367. package/dist/dist-esm/react-composites/src/composites/localization/locales/sv-SE/strings.json +4 -0
  368. package/dist/dist-esm/react-composites/src/composites/localization/locales/tr-TR/strings.json +4 -0
  369. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-CN/strings.json +4 -0
  370. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-TW/strings.json +4 -0
  371. package/package.json +3 -3
  372. package/dist/dist-cjs/communication-react/ChatMessageComponentAsRichTextEditBox-N5ydNkHZ.js +0 -115
  373. package/dist/dist-cjs/communication-react/ChatMessageComponentAsRichTextEditBox-N5ydNkHZ.js.map +0 -1
  374. package/dist/dist-cjs/communication-react/index-BaI-AJud.js +0 -38969
  375. package/dist/dist-cjs/communication-react/index-BaI-AJud.js.map +0 -1
  376. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.d.ts +0 -45
  377. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js +0 -91
  378. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js.map +0 -1
  379. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.d.ts +0 -17
  380. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.js +0 -36
  381. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.js.map +0 -1
  382. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.d.ts +0 -19
  383. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js +0 -91
  384. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js.map +0 -1
  385. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.d.ts +0 -23
  386. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js +0 -49
  387. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js.map +0 -1
  388. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.d.ts +0 -10
  389. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js +0 -15
  390. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js.map +0 -1
  391. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.d.ts +0 -19
  392. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.js +0 -100
  393. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.js.map +0 -1
  394. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.d.ts +0 -69
  395. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js +0 -43
  396. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js.map +0 -1
  397. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.d.ts +0 -75
  398. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js +0 -75
  399. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js.map +0 -1
  400. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.d.ts +0 -105
  401. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js +0 -68
  402. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js.map +0 -1
  403. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.d.ts +0 -86
  404. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js +0 -39
  405. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js.map +0 -1
  406. package/dist/dist-esm/react-components/src/components/ErrorBoundary.d.ts +0 -20
  407. package/dist/dist-esm/react-components/src/components/ErrorBoundary.js +0 -33
  408. package/dist/dist-esm/react-components/src/components/ErrorBoundary.js.map +0 -1
  409. package/dist/dist-esm/react-components/src/components/HoldButton.d.ts +0 -49
  410. package/dist/dist-esm/react-components/src/components/HoldButton.js +0 -25
  411. package/dist/dist-esm/react-components/src/components/HoldButton.js.map +0 -1
  412. package/dist/dist-esm/react-components/src/components/MentionPopover.d.ts +0 -121
  413. package/dist/dist-esm/react-components/src/components/MentionPopover.js +0 -123
  414. package/dist/dist-esm/react-components/src/components/MentionPopover.js.map +0 -1
  415. package/dist/dist-esm/react-components/src/components/RichTextEditor/Buttons/RichTextRibbonButtons.d.ts +0 -7
  416. package/dist/dist-esm/react-components/src/components/RichTextEditor/Buttons/RichTextRibbonButtons.js +0 -75
  417. package/dist/dist-esm/react-components/src/components/RichTextEditor/Buttons/RichTextRibbonButtons.js.map +0 -1
  418. package/dist/dist-esm/react-components/src/components/RichTextEditor/Buttons/Table/RichTextInsertTableButton.d.ts +0 -7
  419. package/dist/dist-esm/react-components/src/components/RichTextEditor/Buttons/Table/RichTextInsertTableButton.js +0 -55
  420. package/dist/dist-esm/react-components/src/components/RichTextEditor/Buttons/Table/RichTextInsertTableButton.js.map +0 -1
  421. package/dist/dist-esm/react-components/src/components/RichTextEditor/Buttons/Table/RichTextInsertTablePane.d.ts +0 -16
  422. package/dist/dist-esm/react-components/src/components/RichTextEditor/Buttons/Table/RichTextInsertTablePane.js +0 -59
  423. package/dist/dist-esm/react-components/src/components/RichTextEditor/Buttons/Table/RichTextInsertTablePane.js.map +0 -1
  424. package/dist/dist-esm/react-components/src/components/RichTextEditor/Buttons/Table/RichTextTableContextMenu.d.ts +0 -8
  425. package/dist/dist-esm/react-components/src/components/RichTextEditor/Buttons/Table/RichTextTableContextMenu.js +0 -73
  426. package/dist/dist-esm/react-components/src/components/RichTextEditor/Buttons/Table/RichTextTableContextMenu.js.map +0 -1
  427. package/dist/dist-esm/react-components/src/components/RichTextEditor/Buttons/Table/insertTableAction.d.ts +0 -9
  428. package/dist/dist-esm/react-components/src/components/RichTextEditor/Buttons/Table/insertTableAction.js +0 -56
  429. package/dist/dist-esm/react-components/src/components/RichTextEditor/Buttons/Table/insertTableAction.js.map +0 -1
  430. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.d.ts +0 -23
  431. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.js +0 -78
  432. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.js.map +0 -1
  433. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.d.ts +0 -57
  434. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.js +0 -133
  435. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.js.map +0 -1
  436. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.d.ts +0 -34
  437. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.js +0 -64
  438. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.js.map +0 -1
  439. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.d.ts +0 -138
  440. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.js +0 -186
  441. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.js.map +0 -1
  442. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.d.ts +0 -16
  443. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.js +0 -73
  444. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.js.map +0 -1
  445. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.d.ts +0 -34
  446. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js +0 -42
  447. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js.map +0 -1
  448. package/dist/dist-esm/react-components/src/components/SendBoxErrors.d.ts +0 -14
  449. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js +0 -18
  450. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js.map +0 -1
  451. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.d.ts +0 -24
  452. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js +0 -550
  453. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js.map +0 -1
  454. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.d.ts +0 -152
  455. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js +0 -816
  456. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js.map +0 -1
  457. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.d.ts +0 -58
  458. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js +0 -144
  459. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js.map +0 -1
  460. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.d.ts +0 -26
  461. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js +0 -69
  462. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js.map +0 -1
  463. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.d.ts +0 -82
  464. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js +0 -311
  465. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js.map +0 -1
  466. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.d.ts +0 -21
  467. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.js +0 -38
  468. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.js.map +0 -1
  469. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.d.ts +0 -38
  470. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js +0 -92
  471. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js.map +0 -1
  472. package/dist/dist-esm/react-components/src/components/styles/Stack.style.d.ts +0 -5
  473. package/dist/dist-esm/react-components/src/components/styles/Stack.style.js +0 -32
  474. package/dist/dist-esm/react-components/src/components/styles/Stack.style.js.map +0 -1
  475. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.d.ts +0 -26
  476. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js +0 -67
  477. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js.map +0 -1
  478. package/dist/dist-esm/react-components/src/components/utils/RichTextEditorStringsUtils.d.ts +0 -15
  479. package/dist/dist-esm/react-components/src/components/utils/RichTextEditorStringsUtils.js +0 -39
  480. package/dist/dist-esm/react-components/src/components/utils/RichTextEditorStringsUtils.js.map +0 -1
  481. package/dist/dist-esm/react-components/src/components/utils/RichTextTableUtils.d.ts +0 -22
  482. package/dist/dist-esm/react-components/src/components/utils/RichTextTableUtils.js +0 -29
  483. package/dist/dist-esm/react-components/src/components/utils/RichTextTableUtils.js.map +0 -1
  484. package/dist/dist-esm/react-components/src/components/utils/merge.d.ts +0 -7
  485. package/dist/dist-esm/react-components/src/components/utils/merge.js +0 -16
  486. package/dist/dist-esm/react-components/src/components/utils/merge.js.map +0 -1
  487. package/dist/dist-esm/react-components/src/theming/icons.styles.d.ts +0 -6
  488. package/dist/dist-esm/react-components/src/theming/icons.styles.js +0 -25
  489. package/dist/dist-esm/react-components/src/theming/icons.styles.js.map +0 -1
  490. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.d.ts +0 -48
  491. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js +0 -218
  492. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js.map +0 -1
  493. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.d.ts +0 -12
  494. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js +0 -93
  495. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js.map +0 -1
  496. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.d.ts +0 -8
  497. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js +0 -26
  498. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js.map +0 -1
  499. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.d.ts +0 -24
  500. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +0 -28
  501. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +0 -1
  502. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.d.ts +0 -15
  503. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js +0 -54
  504. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js.map +0 -1
  505. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.d.ts +0 -32
  506. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js +0 -81
  507. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js.map +0 -1
  508. package/dist/dist-esm/react-composites/src/composites/ChatComposite/AttachmentDownloadErrorBar.d.ts +0 -15
  509. package/dist/dist-esm/react-composites/src/composites/ChatComposite/AttachmentDownloadErrorBar.js +0 -23
  510. package/dist/dist-esm/react-composites/src/composites/ChatComposite/AttachmentDownloadErrorBar.js.map +0 -1
  511. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.d.ts +0 -18
  512. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js +0 -18
  513. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +0 -1
  514. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.d.ts +0 -6
  515. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js +0 -11
  516. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js.map +0 -1
  517. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/attachmentUploadsSelector.d.ts +0 -29
  518. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/attachmentUploadsSelector.js +0 -14
  519. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/attachmentUploadsSelector.js.map +0 -1
  520. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.d.ts +0 -12
  521. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js +0 -15
  522. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js.map +0 -1
  523. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.d.ts +0 -22
  524. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js +0 -107
  525. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js.map +0 -1
  526. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.d.ts +0 -17
  527. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js +0 -32
  528. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js.map +0 -1
  529. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.d.ts +0 -22
  530. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js +0 -74
  531. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js.map +0 -1
  532. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.d.ts +0 -15
  533. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js +0 -61
  534. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"CallWithChatComposite.js","sourceRoot":"","sources":["../../../../../../preprocess-dist/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React, { useCallback, useState, useMemo, useEffect, useRef } from 'react';\nimport { mergeStyles, PartialTheme, Stack, Theme } from '@fluentui/react';\nimport { CallCompositePage } from '../CallComposite';\n/* @conditional-compile-remove(end-of-call-survey) */\nimport { CallSurvey } from '@azure/communication-calling';\nimport { CallState } from '@azure/communication-calling';\nimport { callCompositeContainerStyles, compositeOuterContainerStyles } from './styles/CallWithChatCompositeStyles';\nimport { CallWithChatAdapter } from './adapter/CallWithChatAdapter';\nimport { CallWithChatBackedCallAdapter } from './adapter/CallWithChatBackedCallAdapter';\nimport { CallWithChatBackedChatAdapter } from './adapter/CallWithChatBackedChatAdapter';\nimport { CallAdapter } from '../CallComposite';\nimport { ChatComposite, ChatAdapter } from '../ChatComposite';\nimport { BaseProvider, BaseCompositeProps } from '../common/BaseComposite';\nimport { CallWithChatCompositeIcons } from '../common/icons';\nimport { AvatarPersonaDataCallback } from '../common/AvatarPersona';\nimport { CallWithChatAdapterState } from './state/CallWithChatAdapterState';\n/* @conditional-compile-remove(end-of-call-survey) */\nimport { CallSurveyImprovementSuggestions } from '@internal/react-components';\nimport { ParticipantMenuItemsCallback, _useContainerHeight, _useContainerWidth, useTheme } from '@internal/react-components';\nimport { useId } from '@fluentui/react-hooks';\nimport { containerDivStyles } from '../common/ContainerRectProps';\nimport { useCallWithChatCompositeStrings } from './hooks/useCallWithChatCompositeStrings';\nimport { CallCompositeInner, CallCompositeOptions } from '../CallComposite/CallComposite';\nimport { RemoteVideoTileMenuOptions } from '../CallComposite/CallComposite';\nimport { LocalVideoTileOptions } from '../CallComposite/CallComposite';\n/* @conditional-compile-remove(call-readiness) */\nimport { DeviceCheckOptions } from '../CallComposite/CallComposite';\nimport { CommonCallControlOptions } from '../common/types/CommonCallControlOptions';\nimport { ChatButtonWithUnreadMessagesBadge } from './ChatButton/ChatButtonWithUnreadMessagesBadge';\nimport { getDesktopCommonButtonStyles } from '../common/ControlBar/CommonCallControlBar';\nimport { InjectedSidePaneProps } from '../CallComposite/components/SidePane/SidePaneProvider';\nimport { isDisabled } from '../CallComposite/utils';\nimport { CustomCallControlButtonCallback, CustomCallControlButtonCallbackArgs } from '../common/ControlBar/CustomButton';\nimport { SidePaneHeader } from '../common/SidePaneHeader';\nimport { CallControlOptions } from '../CallComposite/types/CallControlOptions';\nimport { useUnreadMessagesTracker } from './ChatButton/useUnreadMessagesTracker';\nimport { VideoGalleryLayout } from '@internal/react-components';\n/* @conditional-compile-remove(attachment-download) @conditional-compile-remove(attachment-upload) */\nimport { AttachmentOptions } from '@internal/react-components';\n\n/**\n * Props required for the {@link CallWithChatComposite}\n *\n * @public\n */\nexport interface CallWithChatCompositeProps extends BaseCompositeProps<CallWithChatCompositeIcons> {\n adapter: CallWithChatAdapter;\n /**\n * Fluent theme for the composite.\n *\n * Defaults to a light theme if undefined.\n */\n fluentTheme?: PartialTheme | Theme;\n /**\n * Optimizes the composite form factor for either desktop or mobile.\n * @remarks `mobile` is currently only optimized for Portrait mode on mobile devices and does not support landscape.\n * @defaultValue 'desktop'\n */\n formFactor?: 'desktop' | 'mobile';\n /**\n * URL that can be used to copy a call-with-chat invite to the Users clipboard.\n */\n joinInvitationURL?: string;\n /**\n * Flags to enable/disable or customize UI elements of the {@link CallWithChatComposite}\n */\n options?: CallWithChatCompositeOptions;\n}\n\n/**\n * Customization options for the control bar in calling with chat experience.\n *\n * @public\n */\nexport interface CallWithChatControlOptions extends CommonCallControlOptions {\n /**\n * Show or hide the chat button in the call-with-chat composite control bar.\n * @defaultValue true\n */\n chatButton?: boolean | /* @conditional-compile-remove(PSTN-calls) */{\n disabled: boolean;\n };\n}\n\n/**\n * Optional features of the {@link CallWithChatComposite}.\n *\n * @public\n */\nexport type CallWithChatCompositeOptions = {\n /**\n * Call control options to change what buttons show on the call-with-chat composite control bar.\n * If using the boolean values, true will cause default behavior across the whole control bar. False hides the whole control bar.\n */\n callControls?: boolean | CallWithChatControlOptions;\n /* @conditional-compile-remove(attachment-download) @conditional-compile-remove(attachment-upload) */\n /**\n * Properties for configuring the File Sharing feature.\n * If undefined, file sharing feature will be disabled.\n * @beta\n */\n attachmentOptions?: AttachmentOptions;\n /* @conditional-compile-remove(call-readiness) */\n /**\n * Device permissions check options for your call.\n * Here you can choose what device permissions you prompt the user for,\n * as well as what device permissions must be accepted before starting a call.\n */\n deviceChecks?: DeviceCheckOptions;\n /* @conditional-compile-remove(call-readiness) */\n /**\n * Callback you may provide to supply users with further steps to troubleshoot why they have been\n * unable to grant your site the required permissions for the call.\n *\n * @example\n * ```ts\n * onPermissionsTroubleshootingClick: () =>\n * window.open('https://contoso.com/permissions-troubleshooting', '_blank');\n * ```\n *\n * @remarks\n * if this is not supplied, the composite will not show a 'further troubleshooting' link.\n */\n onPermissionsTroubleshootingClick?: (permissionsState: {\n camera: PermissionState;\n microphone: PermissionState;\n }) => void;\n /* @conditional-compile-remove(call-readiness) */\n /**\n * Optional callback to supply users with further troubleshooting steps for network issues\n * experienced when connecting to a call.\n *\n * @example\n * ```ts\n * onNetworkingTroubleShootingClick?: () =>\n * window.open('https://contoso.com/network-troubleshooting', '_blank');\n * ```\n *\n * @remarks\n * if this is not supplied, the composite will not show a 'network troubleshooting' link.\n */\n onNetworkingTroubleShootingClick?: () => void;\n /* @conditional-compile-remove(unsupported-browser) */\n /**\n * Callback you may provide to supply users with a provided page to showcase supported browsers by ACS.\n *\n * @example\n * ```ts\n * onBrowserTroubleShootingClick?: () =>\n * window.open('https://contoso.com/browser-troubleshooting', '_blank');\n * ```\n *\n * @remarks\n * if this is not supplied, the composite will not show a unsupported browser page.\n */\n onEnvironmentInfoTroubleshootingClick?: () => void;\n /**\n * Remote participant video tile menu options\n */\n remoteVideoTileMenuOptions?: RemoteVideoTileMenuOptions;\n /**\n * Options for controlling the local video tile.\n *\n * @remarks if 'false' the local video tile will not be rendered.\n */\n localVideoTile?: boolean | LocalVideoTileOptions;\n /**\n * Options for controlling the starting layout of the composite's video gallery\n */\n galleryOptions?: {\n /**\n * Layout for the gallery when the call starts\n */\n layout?: VideoGalleryLayout;\n };\n /* @conditional-compile-remove(end-of-call-survey) */\n /**\n * Options for end of call survey\n */\n surveyOptions?: {\n /**\n * Disable call survey at the end of a call.\n * @defaultValue false\n */\n disableSurvey?: boolean;\n /**\n * Optional callback to redirect users to custom screens when survey is done, note that default end call screen will be shown if this callback is not provided\n * This callback can be used to redirect users to different screens depending on survey state, whether it is submitted, skipped or has a problem when submitting the survey\n */\n onSurveyClosed?: (surveyState: 'sent' | 'skipped' | 'error', surveyError?: string) => void;\n /**\n * Optional callback to handle survey data including free form text response\n * Note that free form text response survey option is only going to be enabled when this callback is provided\n * User will need to handle all free form text response on their own\n */\n onSurveySubmitted?: (callId: string, surveyId: string,\n /**\n * This is the survey results containing star survey data and API tag survey data.\n * This part of the result will always be sent to the calling sdk\n * This callback provides user with the ability to gain access to survey data\n */\n submittedSurvey: CallSurvey,\n /**\n * This is the survey results containing free form text\n * This part of the result will not be handled by composites\n * User will need to collect and handle this information 100% on their own\n * Free form text survey is not going to show in the UI if onSurveySubmitted is not populated\n */\n improvementSuggestions: CallSurveyImprovementSuggestions) => Promise<void>;\n };\n /**\n * Options for setting additional customizations related to personalized branding.\n */\n branding?: {\n /**\n * Logo displayed on the configuration page.\n */\n logo?: {\n /**\n * URL for the logo image.\n *\n * @remarks\n * Recommended size is 80x80 pixels.\n */\n url: string;\n /**\n * Alt text for the logo image.\n */\n alt?: string;\n /**\n * The logo can be displayed as a circle.\n *\n * @defaultValue 'unset'\n */\n shape?: 'unset' | 'circle';\n };\n /**\n * Background image displayed on the configuration page.\n */\n backgroundImage?: {\n /**\n * URL for the background image.\n *\n * @remarks\n * Background image should be larger than 576x567 pixels and smaller than 2048x2048 pixels pixels.\n */\n url: string;\n };\n };\n /* @conditional-compile-remove(spotlight) */\n /**\n * Options for settings related to spotlight.\n */\n spotlight?: {\n /**\n * Flag to hide the menu buttons to start and stop spotlight for remote participants and the local participant.\n * @defaultValue false\n */\n hideSpotlightButtons?: boolean;\n };\n};\ntype CallWithChatScreenProps = {\n callWithChatAdapter: CallWithChatAdapter;\n fluentTheme?: PartialTheme | Theme;\n formFactor?: 'desktop' | 'mobile';\n joinInvitationURL?: string;\n callControls?: boolean | CallWithChatControlOptions;\n onFetchAvatarPersonaData?: AvatarPersonaDataCallback;\n onFetchParticipantMenuItems?: ParticipantMenuItemsCallback;\n /* @conditional-compile-remove(attachment-download) @conditional-compile-remove(attachment-upload) */\n attachmentOptions?: AttachmentOptions;\n rtl?: boolean;\n /* @conditional-compile-remove(call-readiness) */\n deviceChecks?: DeviceCheckOptions;\n /* @conditional-compile-remove(call-readiness) */\n onPermissionsTroubleshootingClick?: (permissionsState: {\n camera: PermissionState;\n microphone: PermissionState;\n }) => void;\n /* @conditional-compile-remove(call-readiness) */\n onNetworkingTroubleShootingClick?: () => void;\n /* @conditional-compile-remove(unsupported-browser) */\n onEnvironmentInfoTroubleshootingClick?: () => void;\n remoteVideoTileMenuOptions?: RemoteVideoTileMenuOptions;\n localVideoTile?: boolean | LocalVideoTileOptions;\n galleryOptions?: {\n layout?: VideoGalleryLayout;\n };\n /* @conditional-compile-remove(end-of-call-survey) */\n /**\n * Options for end of call survey\n */\n surveyOptions?: {\n /**\n * Disable call survey at the end of a call.\n * @defaultValue false\n */\n disableSurvey?: boolean;\n /**\n * Optional callback to redirect users to custom screens when survey is done, note that default end call screen will be shown if this callback is not provided\n * This callback can be used to redirect users to different screens depending on survey state, whether it is submitted, skipped or has a problem when submitting the survey\n */\n onSurveyClosed?: (surveyState: 'sent' | 'skipped' | 'error', surveyError?: string) => void;\n /**\n * Optional callback to handle survey data including free form text response\n * Note that free form text response survey option is only going to be enabled when this callback is provided\n * User will need to handle all free form text response on their own\n */\n onSurveySubmitted?: (callId: string, surveyId: string,\n /**\n * This is the survey results containing star survey data and API tag survey data.\n * This part of the result will always be sent to the calling sdk\n * This callback provides user with the ability to gain access to survey data\n */\n submittedSurvey: CallSurvey,\n /**\n * This is the survey results containing free form text\n * This part of the result will not be handled by composites\n * User will need to collect and handle this information 100% on their own\n * Free form text survey is not going to show in the UI if onSurveySubmitted is not populated\n */\n improvementSuggestions: CallSurveyImprovementSuggestions) => Promise<void>;\n };\n logo?: {\n url: string;\n alt?: string;\n shape?: 'unset' | 'circle';\n };\n backgroundImage?: {\n url: string;\n };\n /* @conditional-compile-remove(spotlight) */\n spotlight?: {\n hideSpotlightButtons?: boolean;\n };\n};\nconst CallWithChatScreen = (props: CallWithChatScreenProps): JSX.Element => {\n const {\n callWithChatAdapter,\n fluentTheme,\n formFactor = 'desktop'\n } = props;\n /* @conditional-compile-remove(end-of-call-survey) */\n const {\n surveyOptions\n } = props;\n const mobileView = formFactor === 'mobile';\n if (!callWithChatAdapter) {\n throw new Error('CallWithChatAdapter is undefined');\n }\n const callAdapter: CallAdapter = useMemo(() => new CallWithChatBackedCallAdapter(callWithChatAdapter), [callWithChatAdapter]);\n const [currentCallState, setCurrentCallState] = useState<CallState>();\n const [currentPage, setCurrentPage] = useState<CallCompositePage>();\n const [isChatOpen, setIsChatOpen] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n useEffect(() => {\n const updateCallWithChatPage = (newState: CallWithChatAdapterState): void => {\n setCurrentPage(newState.page);\n setCurrentCallState(newState.call?.state);\n };\n updateCallWithChatPage(callWithChatAdapter.getState());\n callWithChatAdapter.onStateChange(updateCallWithChatPage);\n return () => {\n callWithChatAdapter.offStateChange(updateCallWithChatPage);\n };\n }, [callWithChatAdapter]);\n const chatAdapter: ChatAdapter = useMemo(() => {\n return new CallWithChatBackedChatAdapter(callWithChatAdapter);\n }, [callWithChatAdapter]);\n\n /** Constant setting of id for the parent stack of the composite */\n const compositeParentDivId = useId('callWithChatCompositeParentDiv-internal');\n const closeChat = useCallback(() => {\n setIsChatOpen(false);\n }, []);\n const openChat = useCallback(() => {\n setIsChatOpen(true);\n // timeout is required to give the window time to render the sendbox so we have something to send focus to.\n // TODO: Selecting elements in the DOM via attributes is not stable. We should expose an API from ChatComposite to be able to focus on the sendbox.\n const chatFocusTimeout = setInterval(() => {\n const callWithChatCompositeRootDiv = document.querySelector(`[id=\"${compositeParentDivId}\"]`);\n const sendbox = (callWithChatCompositeRootDiv?.querySelector(`[id=\"sendbox\"]`) as HTMLTextAreaElement);\n if (sendbox !== null) {\n sendbox.focus();\n clearInterval(chatFocusTimeout);\n }\n }, 3);\n setTimeout(() => {\n clearInterval(chatFocusTimeout);\n }, 300);\n }, [compositeParentDivId]);\n const isOnHold = isOnHoldTrampoline(currentPage);\n useEffect(() => {\n if (isOnHold) {\n closeChat();\n }\n }, [closeChat, isOnHold]);\n const hasJoinedCall = !!(currentPage && hasJoinedCallFn(currentPage, currentCallState ?? 'None'));\n const toggleChat = useCallback(() => {\n isChatOpen || !hasJoinedCall ? closeChat() : openChat();\n }, [closeChat, hasJoinedCall, isChatOpen, openChat]);\n const callWithChatStrings = useCallWithChatCompositeStrings();\n const chatButtonStrings = useMemo(() => ({\n label: callWithChatStrings.chatButtonLabel,\n tooltipOffContent: callWithChatStrings.chatButtonTooltipOpen,\n tooltipOnContent: callWithChatStrings.chatButtonTooltipClose\n }), [callWithChatStrings]);\n const theme = useTheme();\n const commonButtonStyles = useMemo(() => !mobileView ? getDesktopCommonButtonStyles(theme) : undefined, [mobileView, theme]);\n const showChatButton = checkShowChatButton(props.callControls);\n const chatButtonDisabled = showChatButton && (checkChatButtonIsDisabled(props.callControls) || !hasJoinedCall || isOnHold);\n const chatTabHeaderProps = useMemo(() => mobileView && showChatButton ? {\n onClick: toggleChat,\n disabled: chatButtonDisabled\n } : undefined, [chatButtonDisabled, mobileView, toggleChat, showChatButton]);\n const unreadChatMessagesCount = useUnreadMessagesTracker(chatAdapter, isChatOpen);\n const customChatButton: CustomCallControlButtonCallback = useCallback((args: CustomCallControlButtonCallbackArgs) => ({\n placement: mobileView ? 'primary' : 'secondary',\n onRenderButton: () => <ChatButtonWithUnreadMessagesBadge checked={isChatOpen} showLabel={args.displayType !== 'compact'} onClick={toggleChat} disabled={chatButtonDisabled} strings={chatButtonStrings} styles={commonButtonStyles} newMessageLabel={callWithChatStrings.chatButtonNewMessageNotificationLabel} unreadChatMessagesCount={unreadChatMessagesCount}\n // As chat is disabled when on hold, we don't want to show the unread badge when on hold\n hideUnreadChatMessagesBadge={isOnHold} disableTooltip={mobileView} />\n }), [callWithChatStrings.chatButtonNewMessageNotificationLabel, chatButtonStrings, commonButtonStyles, isChatOpen, chatButtonDisabled, mobileView, toggleChat, unreadChatMessagesCount, isOnHold]);\n const callControlOptionsFromProps = useMemo(() => ({\n ...(typeof props.callControls === 'object' ? props.callControls : {})\n }), [props.callControls]);\n const injectedCustomButtonsFromProps = useMemo(() => {\n return [...(callControlOptionsFromProps.onFetchCustomButtonProps ?? [])];\n }, [callControlOptionsFromProps]);\n const callCompositeOptions: CallCompositeOptions = useMemo(() => ({\n callControls: props.callControls === false ? false : ({\n ...callControlOptionsFromProps,\n onFetchCustomButtonProps: [...(showChatButton ? [customChatButton] : []), ...injectedCustomButtonsFromProps],\n legacyControlBarExperience: false\n } as CallControlOptions),\n /* @conditional-compile-remove(call-readiness) */\n deviceChecks: props.deviceChecks,\n /* @conditional-compile-remove(call-readiness) */\n onNetworkingTroubleShootingClick: props.onNetworkingTroubleShootingClick,\n /* @conditional-compile-remove(call-readiness) */\n onPermissionsTroubleshootingClick: props.onPermissionsTroubleshootingClick,\n /* @conditional-compile-remove(unsupported-browser) */\n onEnvironmentInfoTroubleshootingClick: props.onEnvironmentInfoTroubleshootingClick,\n remoteVideoTileMenuOptions: props.remoteVideoTileMenuOptions,\n galleryOptions: props.galleryOptions,\n localVideoTile: props.localVideoTile,\n /* @conditional-compile-remove(end-of-call-survey) */\n surveyOptions: surveyOptions,\n branding: {\n logo: props.logo,\n backgroundImage: props.backgroundImage\n },\n /* @conditional-compile-remove(spotlight) */\n spotlight: props.spotlight\n }), [props.callControls, callControlOptionsFromProps, showChatButton, customChatButton, injectedCustomButtonsFromProps, /* @conditional-compile-remove(call-readiness) */\n props.deviceChecks, /* @conditional-compile-remove(unsupported-browser) */\n props.onEnvironmentInfoTroubleshootingClick, /* @conditional-compile-remove(call-readiness) */\n props.onNetworkingTroubleShootingClick, /* @conditional-compile-remove(call-readiness) */\n props.onPermissionsTroubleshootingClick, props.galleryOptions, props.localVideoTile, props.remoteVideoTileMenuOptions, /* @conditional-compile-remove(end-of-call-survey) */\n surveyOptions, props.logo, props.backgroundImage, /* @conditional-compile-remove(spotlight) */\n props.spotlight]);\n const onRenderChatContent = useCallback((): JSX.Element => <ChatComposite adapter={chatAdapter} fluentTheme={theme} options={{\n topic: false,\n /* @conditional-compile-remove(chat-composite-participant-pane) */\n participantPane: false,\n /* @conditional-compile-remove(attachment-download) @conditional-compile-remove(attachment-upload) */\n attachmentOptions: props.attachmentOptions\n }} onFetchAvatarPersonaData={props.onFetchAvatarPersonaData} />, [chatAdapter, /* @conditional-compile-remove(attachment-download) @conditional-compile-remove(attachment-upload) */props.attachmentOptions, props.onFetchAvatarPersonaData, theme]);\n const sidePaneHeaderRenderer = useCallback(() => <SidePaneHeader headingText={callWithChatStrings.chatPaneTitle} onClose={closeChat} dismissSidePaneButtonAriaLabel={callWithChatStrings.dismissSidePaneButtonLabel ?? ''} mobileView={mobileView} />, [callWithChatStrings.chatPaneTitle, callWithChatStrings.dismissSidePaneButtonLabel, closeChat, mobileView]);\n const sidePaneContentRenderer = useMemo(() => hasJoinedCall ? onRenderChatContent : undefined, [hasJoinedCall, onRenderChatContent]);\n const sidePaneRenderer = useMemo(() => ({\n contentRenderer: sidePaneContentRenderer,\n headerRenderer: sidePaneHeaderRenderer,\n id: 'chat'\n }), [sidePaneContentRenderer, sidePaneHeaderRenderer]);\n const overrideSidePaneProps: InjectedSidePaneProps = useMemo(() => ({\n renderer: sidePaneRenderer,\n isActive: isChatOpen,\n persistRenderingWhenClosed: true\n }), [isChatOpen, sidePaneRenderer]);\n const onSidePaneIdChange = useCallback((sidePaneId: string | undefined) => {\n // If the pane is switched to something other than chat, removing rendering chat.\n if (sidePaneId && sidePaneId !== 'chat') {\n closeChat();\n }\n }, [closeChat]);\n\n // When the call ends ensure the side pane is set to closed to prevent the side pane being open if the call is re-joined.\n useEffect(() => {\n callAdapter.on('callEnded', closeChat);\n return () => {\n callAdapter.off('callEnded', closeChat);\n };\n }, [callAdapter, closeChat]);\n return <div ref={containerRef} className={mergeStyles(containerDivStyles)}>\n <Stack verticalFill grow styles={compositeOuterContainerStyles} id={compositeParentDivId}>\n <Stack horizontal grow>\n <Stack.Item grow styles={callCompositeContainerStyles(mobileView)}>\n <CallCompositeInner {...props} formFactor={formFactor} options={callCompositeOptions} adapter={callAdapter} fluentTheme={fluentTheme} callInvitationUrl={props.joinInvitationURL} overrideSidePane={overrideSidePaneProps} onSidePaneIdChange={onSidePaneIdChange} mobileChatTabHeader={chatTabHeaderProps} onCloseChatPane={closeChat} />\n </Stack.Item>\n </Stack>\n </Stack>\n </div>;\n};\n\n/**\n * CallWithChatComposite brings together key components to provide a full call with chat experience out of the box.\n *\n * @public\n */\nexport const CallWithChatComposite = (props: CallWithChatCompositeProps): JSX.Element => {\n const {\n adapter,\n fluentTheme,\n rtl,\n formFactor,\n joinInvitationURL,\n options\n } = props;\n return <BaseProvider fluentTheme={fluentTheme} rtl={rtl} locale={props.locale} icons={props.icons}>\n <CallWithChatScreen {...props}\n /* @conditional-compile-remove(call-readiness) */ deviceChecks={options?.deviceChecks} callWithChatAdapter={adapter} formFactor={formFactor} callControls={options?.callControls} joinInvitationURL={joinInvitationURL} fluentTheme={fluentTheme} remoteVideoTileMenuOptions={options?.remoteVideoTileMenuOptions}\n /* @conditional-compile-remove(attachment-download) @conditional-compile-remove(attachment-upload) */ attachmentOptions={options?.attachmentOptions} localVideoTile={options?.localVideoTile} galleryOptions={options?.galleryOptions} logo={options?.branding?.logo} backgroundImage={options?.branding?.backgroundImage}\n /* @conditional-compile-remove(end-of-call-survey) */ surveyOptions={options?.surveyOptions}\n /* @conditional-compile-remove(spotlight) */ spotlight={options?.spotlight} />\n </BaseProvider>;\n};\nconst hasJoinedCallFn = (page: CallCompositePage, callStatus: CallState): boolean => {\n /* @conditional-compile-remove(one-to-n-calling) */ /* @conditional-compile-remove(one-to-n-calling) */\n return page === 'call' && (callStatus === 'Connected' || callStatus === 'RemoteHold' || callStatus === 'Disconnecting') || page === 'hold' && (callStatus === 'LocalHold' || callStatus === 'Disconnecting');\n return page === 'call' && (callStatus === 'Connected' || callStatus === 'Disconnecting');\n};\nconst checkShowChatButton = (callControls?: boolean | CallWithChatControlOptions): boolean => {\n if (callControls === undefined || callControls === true) {\n return true;\n }\n if (callControls === false) {\n return false;\n }\n return callControls.chatButton !== false;\n};\nconst checkChatButtonIsDisabled = (callControls?: boolean | CallWithChatControlOptions): boolean => {\n return typeof callControls === 'object' && isDisabled(callControls?.chatButton);\n};\nconst isOnHoldTrampoline = (page: CallCompositePage | undefined): boolean => {\n /* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\n return page === 'hold';\n return false;\n};"]}
1
+ {"version":3,"file":"CallWithChatComposite.js","sourceRoot":"","sources":["../../../../../../preprocess-dist/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React, { useCallback, useState, useMemo, useEffect, useRef } from 'react';\nimport { mergeStyles, PartialTheme, Stack, Theme } from '@fluentui/react';\nimport { CallCompositePage } from '../CallComposite';\n/* @conditional-compile-remove(end-of-call-survey) */\nimport { CallSurvey } from '@azure/communication-calling';\nimport { CallState } from '@azure/communication-calling';\nimport { callCompositeContainerStyles, compositeOuterContainerStyles } from './styles/CallWithChatCompositeStyles';\nimport { CallWithChatAdapter } from './adapter/CallWithChatAdapter';\nimport { CallWithChatBackedCallAdapter } from './adapter/CallWithChatBackedCallAdapter';\nimport { CallWithChatBackedChatAdapter } from './adapter/CallWithChatBackedChatAdapter';\nimport { CallAdapter } from '../CallComposite';\nimport { ChatComposite, ChatAdapter } from '../ChatComposite';\nimport { BaseProvider, BaseCompositeProps } from '../common/BaseComposite';\nimport { CallWithChatCompositeIcons } from '../common/icons';\nimport { AvatarPersonaDataCallback } from '../common/AvatarPersona';\nimport { CallWithChatAdapterState } from './state/CallWithChatAdapterState';\n/* @conditional-compile-remove(end-of-call-survey) */\nimport { CallSurveyImprovementSuggestions } from '@internal/react-components';\nimport { ParticipantMenuItemsCallback, _useContainerHeight, _useContainerWidth, useTheme } from '@internal/react-components';\nimport { useId } from '@fluentui/react-hooks';\nimport { containerDivStyles } from '../common/ContainerRectProps';\nimport { useCallWithChatCompositeStrings } from './hooks/useCallWithChatCompositeStrings';\nimport { CallCompositeInner, CallCompositeOptions } from '../CallComposite/CallComposite';\nimport { RemoteVideoTileMenuOptions } from '../CallComposite/CallComposite';\nimport { LocalVideoTileOptions } from '../CallComposite/CallComposite';\nimport { CommonCallControlOptions } from '../common/types/CommonCallControlOptions';\nimport { ChatButtonWithUnreadMessagesBadge } from './ChatButton/ChatButtonWithUnreadMessagesBadge';\nimport { getDesktopCommonButtonStyles } from '../common/ControlBar/CommonCallControlBar';\nimport { InjectedSidePaneProps } from '../CallComposite/components/SidePane/SidePaneProvider';\nimport { isDisabled } from '../CallComposite/utils';\nimport { CustomCallControlButtonCallback, CustomCallControlButtonCallbackArgs } from '../common/ControlBar/CustomButton';\nimport { SidePaneHeader } from '../common/SidePaneHeader';\nimport { CallControlOptions } from '../CallComposite/types/CallControlOptions';\nimport { useUnreadMessagesTracker } from './ChatButton/useUnreadMessagesTracker';\nimport { VideoGalleryLayout } from '@internal/react-components';\n/**\n * Props required for the {@link CallWithChatComposite}\n *\n * @public\n */\nexport interface CallWithChatCompositeProps extends BaseCompositeProps<CallWithChatCompositeIcons> {\n adapter: CallWithChatAdapter;\n /**\n * Fluent theme for the composite.\n *\n * Defaults to a light theme if undefined.\n */\n fluentTheme?: PartialTheme | Theme;\n /**\n * Optimizes the composite form factor for either desktop or mobile.\n * @remarks `mobile` is currently only optimized for Portrait mode on mobile devices and does not support landscape.\n * @defaultValue 'desktop'\n */\n formFactor?: 'desktop' | 'mobile';\n /**\n * URL that can be used to copy a call-with-chat invite to the Users clipboard.\n */\n joinInvitationURL?: string;\n /**\n * Flags to enable/disable or customize UI elements of the {@link CallWithChatComposite}\n */\n options?: CallWithChatCompositeOptions;\n}\n\n/**\n * Customization options for the control bar in calling with chat experience.\n *\n * @public\n */\nexport interface CallWithChatControlOptions extends CommonCallControlOptions {\n /**\n * Show or hide the chat button in the call-with-chat composite control bar.\n * @defaultValue true\n */\n chatButton?: boolean;\n}\n\n/**\n * Optional features of the {@link CallWithChatComposite}.\n *\n * @public\n */\nexport type CallWithChatCompositeOptions = {\n /**\n * Call control options to change what buttons show on the call-with-chat composite control bar.\n * If using the boolean values, true will cause default behavior across the whole control bar. False hides the whole control bar.\n */\n callControls?: boolean | CallWithChatControlOptions;\n /**\n * Remote participant video tile menu options\n */\n remoteVideoTileMenuOptions?: RemoteVideoTileMenuOptions;\n /**\n * Options for controlling the local video tile.\n *\n * @remarks if 'false' the local video tile will not be rendered.\n */\n localVideoTile?: boolean | LocalVideoTileOptions;\n /**\n * Options for controlling the starting layout of the composite's video gallery\n */\n galleryOptions?: {\n /**\n * Layout for the gallery when the call starts\n */\n layout?: VideoGalleryLayout;\n };\n /* @conditional-compile-remove(end-of-call-survey) */\n /**\n * Options for end of call survey\n */\n surveyOptions?: {\n /**\n * Disable call survey at the end of a call.\n * @defaultValue false\n */\n disableSurvey?: boolean;\n /**\n * Optional callback to redirect users to custom screens when survey is done, note that default end call screen will be shown if this callback is not provided\n * This callback can be used to redirect users to different screens depending on survey state, whether it is submitted, skipped or has a problem when submitting the survey\n */\n onSurveyClosed?: (surveyState: 'sent' | 'skipped' | 'error', surveyError?: string) => void;\n /**\n * Optional callback to handle survey data including free form text response\n * Note that free form text response survey option is only going to be enabled when this callback is provided\n * User will need to handle all free form text response on their own\n */\n onSurveySubmitted?: (callId: string, surveyId: string,\n /**\n * This is the survey results containing star survey data and API tag survey data.\n * This part of the result will always be sent to the calling sdk\n * This callback provides user with the ability to gain access to survey data\n */\n submittedSurvey: CallSurvey,\n /**\n * This is the survey results containing free form text\n * This part of the result will not be handled by composites\n * User will need to collect and handle this information 100% on their own\n * Free form text survey is not going to show in the UI if onSurveySubmitted is not populated\n */\n improvementSuggestions: CallSurveyImprovementSuggestions) => Promise<void>;\n };\n /**\n * Options for setting additional customizations related to personalized branding.\n */\n branding?: {\n /**\n * Logo displayed on the configuration page.\n */\n logo?: {\n /**\n * URL for the logo image.\n *\n * @remarks\n * Recommended size is 80x80 pixels.\n */\n url: string;\n /**\n * Alt text for the logo image.\n */\n alt?: string;\n /**\n * The logo can be displayed as a circle.\n *\n * @defaultValue 'unset'\n */\n shape?: 'unset' | 'circle';\n };\n /**\n * Background image displayed on the configuration page.\n */\n backgroundImage?: {\n /**\n * URL for the background image.\n *\n * @remarks\n * Background image should be larger than 576x567 pixels and smaller than 2048x2048 pixels pixels.\n */\n url: string;\n };\n };\n /* @conditional-compile-remove(spotlight) */\n /**\n * Options for settings related to spotlight.\n */\n spotlight?: {\n /**\n * Flag to hide the menu buttons to start and stop spotlight for remote participants and the local participant.\n * @defaultValue false\n */\n hideSpotlightButtons?: boolean;\n };\n};\ntype CallWithChatScreenProps = {\n callWithChatAdapter: CallWithChatAdapter;\n fluentTheme?: PartialTheme | Theme;\n formFactor?: 'desktop' | 'mobile';\n joinInvitationURL?: string;\n callControls?: boolean | CallWithChatControlOptions;\n onFetchAvatarPersonaData?: AvatarPersonaDataCallback;\n onFetchParticipantMenuItems?: ParticipantMenuItemsCallback;\n rtl?: boolean;\n remoteVideoTileMenuOptions?: RemoteVideoTileMenuOptions;\n localVideoTile?: boolean | LocalVideoTileOptions;\n galleryOptions?: {\n layout?: VideoGalleryLayout;\n };\n /* @conditional-compile-remove(end-of-call-survey) */\n /**\n * Options for end of call survey\n */\n surveyOptions?: {\n /**\n * Disable call survey at the end of a call.\n * @defaultValue false\n */\n disableSurvey?: boolean;\n /**\n * Optional callback to redirect users to custom screens when survey is done, note that default end call screen will be shown if this callback is not provided\n * This callback can be used to redirect users to different screens depending on survey state, whether it is submitted, skipped or has a problem when submitting the survey\n */\n onSurveyClosed?: (surveyState: 'sent' | 'skipped' | 'error', surveyError?: string) => void;\n /**\n * Optional callback to handle survey data including free form text response\n * Note that free form text response survey option is only going to be enabled when this callback is provided\n * User will need to handle all free form text response on their own\n */\n onSurveySubmitted?: (callId: string, surveyId: string,\n /**\n * This is the survey results containing star survey data and API tag survey data.\n * This part of the result will always be sent to the calling sdk\n * This callback provides user with the ability to gain access to survey data\n */\n submittedSurvey: CallSurvey,\n /**\n * This is the survey results containing free form text\n * This part of the result will not be handled by composites\n * User will need to collect and handle this information 100% on their own\n * Free form text survey is not going to show in the UI if onSurveySubmitted is not populated\n */\n improvementSuggestions: CallSurveyImprovementSuggestions) => Promise<void>;\n };\n logo?: {\n url: string;\n alt?: string;\n shape?: 'unset' | 'circle';\n };\n backgroundImage?: {\n url: string;\n };\n /* @conditional-compile-remove(spotlight) */\n spotlight?: {\n hideSpotlightButtons?: boolean;\n };\n};\nconst CallWithChatScreen = (props: CallWithChatScreenProps): JSX.Element => {\n const {\n callWithChatAdapter,\n fluentTheme,\n formFactor = 'desktop'\n } = props;\n /* @conditional-compile-remove(end-of-call-survey) */\n const {\n surveyOptions\n } = props;\n const mobileView = formFactor === 'mobile';\n if (!callWithChatAdapter) {\n throw new Error('CallWithChatAdapter is undefined');\n }\n const callAdapter: CallAdapter = useMemo(() => new CallWithChatBackedCallAdapter(callWithChatAdapter), [callWithChatAdapter]);\n const [currentCallState, setCurrentCallState] = useState<CallState>();\n const [isChatInitialized, setIsChatInitialized] = useState(false);\n const [currentPage, setCurrentPage] = useState<CallCompositePage>();\n const [isChatOpen, setIsChatOpen] = useState(false);\n const containerRef = useRef<HTMLDivElement>(null);\n useEffect(() => {\n const updateCallWithChatPage = (newState: CallWithChatAdapterState): void => {\n setCurrentPage(newState.page);\n setCurrentCallState(newState.call?.state);\n setIsChatInitialized(newState.chat ? true : false);\n };\n updateCallWithChatPage(callWithChatAdapter.getState());\n callWithChatAdapter.onStateChange(updateCallWithChatPage);\n return () => {\n callWithChatAdapter.offStateChange(updateCallWithChatPage);\n };\n }, [callWithChatAdapter]);\n const chatAdapter: ChatAdapter = useMemo(() => {\n return new CallWithChatBackedChatAdapter(callWithChatAdapter);\n }, [callWithChatAdapter]);\n\n /** Constant setting of id for the parent stack of the composite */\n const compositeParentDivId = useId('callWithChatCompositeParentDiv-internal');\n const closeChat = useCallback(() => {\n setIsChatOpen(false);\n }, []);\n const openChat = useCallback(() => {\n setIsChatOpen(true);\n // timeout is required to give the window time to render the sendbox so we have something to send focus to.\n // TODO: Selecting elements in the DOM via attributes is not stable. We should expose an API from ChatComposite to be able to focus on the sendbox.\n const chatFocusTimeout = setInterval(() => {\n const callWithChatCompositeRootDiv = document.querySelector(`[id=\"${compositeParentDivId}\"]`);\n const sendbox = (callWithChatCompositeRootDiv?.querySelector(`[id=\"sendbox\"]`) as HTMLTextAreaElement);\n if (sendbox !== null) {\n sendbox.focus();\n clearInterval(chatFocusTimeout);\n }\n }, 3);\n setTimeout(() => {\n clearInterval(chatFocusTimeout);\n }, 300);\n }, [compositeParentDivId]);\n const isOnHold = isOnHoldTrampoline(currentPage);\n useEffect(() => {\n if (isOnHold) {\n closeChat();\n }\n }, [closeChat, isOnHold]);\n const hasJoinedCall = !!(currentPage && hasJoinedCallFn(currentPage, currentCallState ?? 'None'));\n const toggleChat = useCallback(() => {\n isChatOpen || !hasJoinedCall ? closeChat() : openChat();\n }, [closeChat, hasJoinedCall, isChatOpen, openChat]);\n const callWithChatStrings = useCallWithChatCompositeStrings();\n const chatButtonStrings = useMemo(() => ({\n label: callWithChatStrings.chatButtonLabel,\n tooltipOffContent: callWithChatStrings.chatButtonTooltipOpen,\n tooltipOnContent: callWithChatStrings.chatButtonTooltipClose\n }), [callWithChatStrings]);\n const theme = useTheme();\n const commonButtonStyles = useMemo(() => !mobileView ? getDesktopCommonButtonStyles(theme) : undefined, [mobileView, theme]);\n const showChatButton = checkShowChatButton(props.callControls);\n const chatButtonDisabled = showChatButton && (checkChatButtonIsDisabled(props.callControls) || !hasJoinedCall || isOnHold);\n const chatTabHeaderProps = useMemo(() => mobileView && showChatButton ? {\n onClick: toggleChat,\n disabled: chatButtonDisabled\n } : undefined, [chatButtonDisabled, mobileView, toggleChat, showChatButton]);\n const unreadChatMessagesCount = useUnreadMessagesTracker(chatAdapter, isChatOpen, isChatInitialized);\n const customChatButton: CustomCallControlButtonCallback = useCallback((args: CustomCallControlButtonCallbackArgs) => ({\n placement: mobileView ? 'primary' : 'secondary',\n onRenderButton: () => <ChatButtonWithUnreadMessagesBadge checked={isChatOpen} showLabel={args.displayType !== 'compact'} onClick={toggleChat} disabled={chatButtonDisabled} strings={chatButtonStrings} styles={commonButtonStyles} newMessageLabel={callWithChatStrings.chatButtonNewMessageNotificationLabel} unreadChatMessagesCount={unreadChatMessagesCount}\n // As chat is disabled when on hold, we don't want to show the unread badge when on hold\n hideUnreadChatMessagesBadge={isOnHold} disableTooltip={mobileView} />\n }), [callWithChatStrings.chatButtonNewMessageNotificationLabel, chatButtonStrings, commonButtonStyles, isChatOpen, chatButtonDisabled, mobileView, toggleChat, unreadChatMessagesCount, isOnHold]);\n const callControlOptionsFromProps = useMemo(() => ({\n ...(typeof props.callControls === 'object' ? props.callControls : {})\n }), [props.callControls]);\n const injectedCustomButtonsFromProps = useMemo(() => {\n return [...(callControlOptionsFromProps.onFetchCustomButtonProps ?? [])];\n }, [callControlOptionsFromProps]);\n const callCompositeOptions: CallCompositeOptions = useMemo(() => ({\n callControls: props.callControls === false ? false : ({\n ...callControlOptionsFromProps,\n onFetchCustomButtonProps: [...(showChatButton ? [customChatButton] : []), ...injectedCustomButtonsFromProps],\n legacyControlBarExperience: false\n } as CallControlOptions),\n remoteVideoTileMenuOptions: props.remoteVideoTileMenuOptions,\n galleryOptions: props.galleryOptions,\n localVideoTile: props.localVideoTile,\n /* @conditional-compile-remove(end-of-call-survey) */\n surveyOptions: surveyOptions,\n branding: {\n logo: props.logo,\n backgroundImage: props.backgroundImage\n },\n /* @conditional-compile-remove(spotlight) */\n spotlight: props.spotlight\n }), [props.callControls, callControlOptionsFromProps, showChatButton, customChatButton, injectedCustomButtonsFromProps, props.galleryOptions, props.localVideoTile, props.remoteVideoTileMenuOptions, /* @conditional-compile-remove(end-of-call-survey) */\n surveyOptions, props.logo, props.backgroundImage, /* @conditional-compile-remove(spotlight) */\n props.spotlight]);\n const onRenderChatContent = useCallback((): JSX.Element => <ChatComposite adapter={chatAdapter} fluentTheme={theme} options={{\n topic: false\n }} onFetchAvatarPersonaData={props.onFetchAvatarPersonaData} />, [chatAdapter, props.onFetchAvatarPersonaData, theme]);\n const sidePaneHeaderRenderer = useCallback(() => <SidePaneHeader headingText={callWithChatStrings.chatPaneTitle} onClose={closeChat} dismissSidePaneButtonAriaLabel={callWithChatStrings.dismissSidePaneButtonLabel ?? ''} mobileView={mobileView} />, [callWithChatStrings.chatPaneTitle, callWithChatStrings.dismissSidePaneButtonLabel, closeChat, mobileView]);\n const sidePaneContentRenderer = useMemo(() => hasJoinedCall ? onRenderChatContent : undefined, [hasJoinedCall, onRenderChatContent]);\n const sidePaneRenderer = useMemo(() => ({\n contentRenderer: sidePaneContentRenderer,\n headerRenderer: sidePaneHeaderRenderer,\n id: 'chat'\n }), [sidePaneContentRenderer, sidePaneHeaderRenderer]);\n const overrideSidePaneProps: InjectedSidePaneProps = useMemo(() => ({\n renderer: sidePaneRenderer,\n isActive: isChatOpen,\n persistRenderingWhenClosed: true\n }), [isChatOpen, sidePaneRenderer]);\n const onSidePaneIdChange = useCallback((sidePaneId: string | undefined) => {\n // If the pane is switched to something other than chat, removing rendering chat.\n if (sidePaneId && sidePaneId !== 'chat') {\n closeChat();\n }\n }, [closeChat]);\n\n // When the call ends ensure the side pane is set to closed to prevent the side pane being open if the call is re-joined.\n useEffect(() => {\n callAdapter.on('callEnded', closeChat);\n return () => {\n callAdapter.off('callEnded', closeChat);\n };\n }, [callAdapter, closeChat]);\n return <div ref={containerRef} className={mergeStyles(containerDivStyles)}>\n <Stack verticalFill grow styles={compositeOuterContainerStyles} id={compositeParentDivId}>\n <Stack horizontal grow>\n <Stack.Item grow styles={callCompositeContainerStyles(mobileView)}>\n <CallCompositeInner {...props} formFactor={formFactor} options={callCompositeOptions} adapter={callAdapter} fluentTheme={fluentTheme} callInvitationUrl={props.joinInvitationURL} overrideSidePane={overrideSidePaneProps} onSidePaneIdChange={onSidePaneIdChange} mobileChatTabHeader={chatTabHeaderProps} onCloseChatPane={closeChat} />\n </Stack.Item>\n </Stack>\n </Stack>\n </div>;\n};\n\n/**\n * CallWithChatComposite brings together key components to provide a full call with chat experience out of the box.\n *\n * @public\n */\nexport const CallWithChatComposite = (props: CallWithChatCompositeProps): JSX.Element => {\n const {\n adapter,\n fluentTheme,\n rtl,\n formFactor,\n joinInvitationURL,\n options\n } = props;\n return <BaseProvider fluentTheme={fluentTheme} rtl={rtl} locale={props.locale} icons={props.icons}>\n <CallWithChatScreen {...props} callWithChatAdapter={adapter} formFactor={formFactor} callControls={options?.callControls} joinInvitationURL={joinInvitationURL} fluentTheme={fluentTheme} remoteVideoTileMenuOptions={options?.remoteVideoTileMenuOptions} localVideoTile={options?.localVideoTile} galleryOptions={options?.galleryOptions} logo={options?.branding?.logo} backgroundImage={options?.branding?.backgroundImage}\n /* @conditional-compile-remove(end-of-call-survey) */ surveyOptions={options?.surveyOptions}\n /* @conditional-compile-remove(spotlight) */ spotlight={options?.spotlight} />\n </BaseProvider>;\n};\nconst hasJoinedCallFn = (page: CallCompositePage, callStatus: CallState): boolean => {\n return page === 'call' && (callStatus === 'Connected' || callStatus === 'Disconnecting');\n};\nconst checkShowChatButton = (callControls?: boolean | CallWithChatControlOptions): boolean => {\n if (callControls === undefined || callControls === true) {\n return true;\n }\n if (callControls === false) {\n return false;\n }\n return callControls.chatButton !== false;\n};\nconst checkChatButtonIsDisabled = (callControls?: boolean | CallWithChatControlOptions): boolean => {\n return typeof callControls === 'object' && isDisabled(callControls?.chatButton);\n};\nconst isOnHoldTrampoline = (page: CallCompositePage | undefined): boolean => {\n return false;\n};"]}
@@ -3,5 +3,5 @@ import { ChatAdapter } from '../../ChatComposite/adapter/ChatAdapter';
3
3
  * Used by the CallWithChatComposite to track unread messages for showing as a badge on the Chat Button.
4
4
  * @private
5
5
  */
6
- export declare const useUnreadMessagesTracker: (chatAdapter: ChatAdapter, isChatPaneVisible: boolean) => number;
6
+ export declare const useUnreadMessagesTracker: (chatAdapter: ChatAdapter, isChatPaneVisible: boolean, isChatInitiazed: boolean) => number;
7
7
  //# sourceMappingURL=useUnreadMessagesTracker.d.ts.map
@@ -5,12 +5,12 @@ import { useEffect, useState } from 'react';
5
5
  * Used by the CallWithChatComposite to track unread messages for showing as a badge on the Chat Button.
6
6
  * @private
7
7
  */
8
- export const useUnreadMessagesTracker = (chatAdapter, isChatPaneVisible) => {
8
+ export const useUnreadMessagesTracker = (chatAdapter, isChatPaneVisible, isChatInitiazed) => {
9
9
  // Store messageIds of unread messages
10
10
  const [unreadChatMessages, setUnreadChatMessages] = useState(new Set());
11
11
  useEffect(() => {
12
12
  // Clear unread messages when chat pane is opened
13
- if (isChatPaneVisible) {
13
+ if (isChatPaneVisible || !isChatInitiazed) {
14
14
  setUnreadChatMessages(new Set());
15
15
  return;
16
16
  }
@@ -40,7 +40,7 @@ export const useUnreadMessagesTracker = (chatAdapter, isChatPaneVisible) => {
40
40
  chatAdapter.off('messageReceived', incrementUnreadChatMessagesCount);
41
41
  chatAdapter.off('messageDeleted', decrementUnreadChatMessagesCount);
42
42
  };
43
- }, [chatAdapter, setUnreadChatMessages, isChatPaneVisible]);
43
+ }, [chatAdapter, setUnreadChatMessages, isChatPaneVisible, isChatInitiazed]);
44
44
  return unreadChatMessages.size;
45
45
  };
46
46
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"useUnreadMessagesTracker.js","sourceRoot":"","sources":["../../../../../../../preprocess-dist/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAI5C;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,WAAwB,EAAE,iBAA0B,EAAU,EAAE;IACvG,sCAAsC;IACtC,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAc,IAAI,GAAG,EAAE,CAAC,CAAC;IACrF,SAAS,CAAC,GAAG,EAAE;QACb,iDAAiD;QACjD,IAAI,iBAAiB,EAAE,CAAC;YACtB,qBAAqB,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAED,uFAAuF;QACvF,MAAM,gCAAgC,GAAG,CAAC,KAEzC,EAAQ,EAAE;YACT,IAAI,CAAC,iBAAiB,IAAI,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7D,qBAAqB,CAAC,sBAAsB,CAAC,EAAE;oBAC7C,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,sBAAsB,CAAC,CAAC;oBAC9D,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBAC5C,OAAO,qBAAqB,CAAC;gBAC/B,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC;QAEF,kFAAkF;QAClF,MAAM,gCAAgC,GAAG,CAAC,KAEzC,EAAQ,EAAE;YACT,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACvB,qBAAqB,CAAC,sBAAsB,CAAC,EAAE;oBAC7C,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,sBAAsB,CAAC,CAAC;oBAC9D,qBAAqB,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBAC/C,OAAO,qBAAqB,CAAC;gBAC/B,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC;QACF,WAAW,CAAC,EAAE,CAAC,iBAAiB,EAAE,gCAAgC,CAAC,CAAC;QACpE,WAAW,CAAC,EAAE,CAAC,gBAAgB,EAAE,gCAAgC,CAAC,CAAC;QACnE,OAAO,GAAG,EAAE;YACV,WAAW,CAAC,GAAG,CAAC,iBAAiB,EAAE,gCAAgC,CAAC,CAAC;YACrE,WAAW,CAAC,GAAG,CAAC,gBAAgB,EAAE,gCAAgC,CAAC,CAAC;QACtE,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,WAAW,EAAE,qBAAqB,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAC5D,OAAO,kBAAkB,CAAC,IAAI,CAAC;AACjC,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,mBAAmB,GAAG,CAAC,OAAoB,EAAW,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { useEffect, useState } from 'react';\nimport { ChatAdapter } from '../../ChatComposite/adapter/ChatAdapter';\nimport { ChatMessage } from '@azure/communication-chat';\n\n/**\n * Used by the CallWithChatComposite to track unread messages for showing as a badge on the Chat Button.\n * @private\n */\nexport const useUnreadMessagesTracker = (chatAdapter: ChatAdapter, isChatPaneVisible: boolean): number => {\n // Store messageIds of unread messages\n const [unreadChatMessages, setUnreadChatMessages] = useState<Set<string>>(new Set());\n useEffect(() => {\n // Clear unread messages when chat pane is opened\n if (isChatPaneVisible) {\n setUnreadChatMessages(new Set());\n return;\n }\n\n // Increment unread messages when a new message is received and the chat pane is closed\n const incrementUnreadChatMessagesCount = (event: {\n message: ChatMessage;\n }): void => {\n if (!isChatPaneVisible && validNewChatMessage(event.message)) {\n setUnreadChatMessages(prevUnreadChatMessages => {\n const newUnreadChatMessages = new Set(prevUnreadChatMessages);\n newUnreadChatMessages.add(event.message.id);\n return newUnreadChatMessages;\n });\n }\n };\n\n // Decrement unread messages when a message is deleted and the chat pane is closed\n const decrementUnreadChatMessagesCount = (event: {\n message: ChatMessage;\n }): void => {\n if (!isChatPaneVisible) {\n setUnreadChatMessages(prevUnreadChatMessages => {\n const newUnreadChatMessages = new Set(prevUnreadChatMessages);\n newUnreadChatMessages.delete(event.message.id);\n return newUnreadChatMessages;\n });\n }\n };\n chatAdapter.on('messageReceived', incrementUnreadChatMessagesCount);\n chatAdapter.on('messageDeleted', decrementUnreadChatMessagesCount);\n return () => {\n chatAdapter.off('messageReceived', incrementUnreadChatMessagesCount);\n chatAdapter.off('messageDeleted', decrementUnreadChatMessagesCount);\n };\n }, [chatAdapter, setUnreadChatMessages, isChatPaneVisible]);\n return unreadChatMessages.size;\n};\n\n/**\n * Helper function to determine if the message in the event is a valid one from a user.\n * Display name is used since system messages will not have one.\n */\nconst validNewChatMessage = (message: ChatMessage): boolean => !!message.senderDisplayName && (message.type === 'text' || message.type === 'html');"]}
1
+ {"version":3,"file":"useUnreadMessagesTracker.js","sourceRoot":"","sources":["../../../../../../../preprocess-dist/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAI5C;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,WAAwB,EAAE,iBAA0B,EAAE,eAAwB,EAAU,EAAE;IACjI,sCAAsC;IACtC,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAc,IAAI,GAAG,EAAE,CAAC,CAAC;IACrF,SAAS,CAAC,GAAG,EAAE;QACb,iDAAiD;QACjD,IAAI,iBAAiB,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1C,qBAAqB,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAED,uFAAuF;QACvF,MAAM,gCAAgC,GAAG,CAAC,KAEzC,EAAQ,EAAE;YACT,IAAI,CAAC,iBAAiB,IAAI,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7D,qBAAqB,CAAC,sBAAsB,CAAC,EAAE;oBAC7C,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,sBAAsB,CAAC,CAAC;oBAC9D,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBAC5C,OAAO,qBAAqB,CAAC;gBAC/B,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC;QAEF,kFAAkF;QAClF,MAAM,gCAAgC,GAAG,CAAC,KAEzC,EAAQ,EAAE;YACT,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACvB,qBAAqB,CAAC,sBAAsB,CAAC,EAAE;oBAC7C,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,sBAAsB,CAAC,CAAC;oBAC9D,qBAAqB,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBAC/C,OAAO,qBAAqB,CAAC;gBAC/B,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC;QACF,WAAW,CAAC,EAAE,CAAC,iBAAiB,EAAE,gCAAgC,CAAC,CAAC;QACpE,WAAW,CAAC,EAAE,CAAC,gBAAgB,EAAE,gCAAgC,CAAC,CAAC;QACnE,OAAO,GAAG,EAAE;YACV,WAAW,CAAC,GAAG,CAAC,iBAAiB,EAAE,gCAAgC,CAAC,CAAC;YACrE,WAAW,CAAC,GAAG,CAAC,gBAAgB,EAAE,gCAAgC,CAAC,CAAC;QACtE,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,WAAW,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,eAAe,CAAC,CAAC,CAAC;IAC7E,OAAO,kBAAkB,CAAC,IAAI,CAAC;AACjC,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,mBAAmB,GAAG,CAAC,OAAoB,EAAW,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { useEffect, useState } from 'react';\nimport { ChatAdapter } from '../../ChatComposite/adapter/ChatAdapter';\nimport { ChatMessage } from '@azure/communication-chat';\n\n/**\n * Used by the CallWithChatComposite to track unread messages for showing as a badge on the Chat Button.\n * @private\n */\nexport const useUnreadMessagesTracker = (chatAdapter: ChatAdapter, isChatPaneVisible: boolean, isChatInitiazed: boolean): number => {\n // Store messageIds of unread messages\n const [unreadChatMessages, setUnreadChatMessages] = useState<Set<string>>(new Set());\n useEffect(() => {\n // Clear unread messages when chat pane is opened\n if (isChatPaneVisible || !isChatInitiazed) {\n setUnreadChatMessages(new Set());\n return;\n }\n\n // Increment unread messages when a new message is received and the chat pane is closed\n const incrementUnreadChatMessagesCount = (event: {\n message: ChatMessage;\n }): void => {\n if (!isChatPaneVisible && validNewChatMessage(event.message)) {\n setUnreadChatMessages(prevUnreadChatMessages => {\n const newUnreadChatMessages = new Set(prevUnreadChatMessages);\n newUnreadChatMessages.add(event.message.id);\n return newUnreadChatMessages;\n });\n }\n };\n\n // Decrement unread messages when a message is deleted and the chat pane is closed\n const decrementUnreadChatMessagesCount = (event: {\n message: ChatMessage;\n }): void => {\n if (!isChatPaneVisible) {\n setUnreadChatMessages(prevUnreadChatMessages => {\n const newUnreadChatMessages = new Set(prevUnreadChatMessages);\n newUnreadChatMessages.delete(event.message.id);\n return newUnreadChatMessages;\n });\n }\n };\n chatAdapter.on('messageReceived', incrementUnreadChatMessagesCount);\n chatAdapter.on('messageDeleted', decrementUnreadChatMessagesCount);\n return () => {\n chatAdapter.off('messageReceived', incrementUnreadChatMessagesCount);\n chatAdapter.off('messageDeleted', decrementUnreadChatMessagesCount);\n };\n }, [chatAdapter, setUnreadChatMessages, isChatPaneVisible, isChatInitiazed]);\n return unreadChatMessages.size;\n};\n\n/**\n * Helper function to determine if the message in the event is a valid one from a user.\n * Display name is used since system messages will not have one.\n */\nconst validNewChatMessage = (message: ChatMessage): boolean => !!message.senderDisplayName && (message.type === 'text' || message.type === 'html');"]}
@@ -14,6 +14,14 @@ export interface CallWithChatCompositeStrings {
14
14
  * {@link CallWithChatComposite} control bar People button label when checked
15
15
  */
16
16
  selectedPeopleButtonLabel: string;
17
+ /**
18
+ * {@link CallWithChatComposite} aria label for control bar People button when unchecked
19
+ */
20
+ peopleButtonTooltipOpenAriaLabel: string;
21
+ /**
22
+ * {@link CallWithChatComposite} aria label for control bar People button when checked
23
+ */
24
+ peopleButtonTooltipCloseAriaLabel: string;
17
25
  /**
18
26
  * {@link CallWithChatComposite} control bar People button ToolTipContent
19
27
  */
@@ -119,9 +127,9 @@ export interface CallWithChatCompositeStrings {
119
127
  */
120
128
  copyInviteLinkButtonLabel: string;
121
129
  /**
122
- * Label for button to open dialpad
130
+ * Label for button to copy invite link when it has been actioned
123
131
  */
124
- openDialpadButtonLabel: string;
132
+ copyInviteLinkButtonActionedLabel: string;
125
133
  /**
126
134
  * Label for SidePaneHeader dismiss button
127
135
  */
@@ -134,34 +142,6 @@ export interface CallWithChatCompositeStrings {
134
142
  * Aria label string for return to call back button
135
143
  */
136
144
  returnToCallButtonAriaLabel?: string;
137
- /**
138
- * Label for add people dropdown
139
- */
140
- peoplePaneAddPeopleButtonLabel: string;
141
- /**
142
- * Label for button to start a call
143
- */
144
- dialpadStartCallButtonLabel: string;
145
- /**
146
- * Title for dialpad Modal
147
- */
148
- dialpadModalTitle: string;
149
- /**
150
- * Aria Label for dialpad Modal
151
- */
152
- dialpadModalAriaLabel: string;
153
- /**
154
- * Aria Label for dialpad Modal close button
155
- */
156
- dialpadCloseModalButtonAriaLabel: string;
157
- /**
158
- * Placeholder text for dtmf dialpad
159
- */
160
- dtmfDialpadPlaceholderText: string;
161
- /**
162
- * Label for the button to open dtmf dialpad
163
- */
164
- openDtmfDialpadLabel: string;
165
145
  /**
166
146
  * aria label for when the invite link has been actioned
167
147
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Strings.js","sourceRoot":"","sources":["../../../../../../preprocess-dist/react-composites/src/composites/CallWithChatComposite/Strings.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * Strings used by the {@link CallWithChatComposite} directly.\n *\n * This strings are in addition to those used by the components from the component library.\n *\n * @public\n */\nexport interface CallWithChatCompositeStrings {\n /**\n * {@link CallWithChatComposite} control bar People button label\n */\n peopleButtonLabel: string;\n /**\n * {@link CallWithChatComposite} control bar People button label when checked\n */\n selectedPeopleButtonLabel: string;\n /**\n * {@link CallWithChatComposite} control bar People button ToolTipContent\n */\n peopleButtonTooltipOpen: string;\n /**\n * {@link CallWithChatComposite} control bar People button ToolTipContent\n */\n peopleButtonTooltipClose: string;\n /**\n * {@link CallWithChatComposite} control bar Chat button label.\n */\n chatButtonLabel: string;\n /**\n * {@Link CallWithChatComposite} control bar Chat button ToolTipContent.\n */\n chatButtonTooltipOpen: string;\n /**\n * {@Link CallWithChatComposite} control bar Chat button ToolTipContent.\n */\n chatButtonTooltipClose: string;\n /**\n * {@link CallWithChatComposite} control bar Chat button enhanced tooltip string.\n */\n chatButtonTooltipClosedWithMessageCount: string;\n /**\n * Title for the audio device selection sub-menu in more button drawer.\n *\n * Only used with `mobileView` set to `true` and when no speakers are available.\n */\n moreDrawerAudioDeviceMenuTitle?: string;\n /**\n * Title for the microphone selection sub-menu in more button drawer.\n *\n * Only used with `mobileView` set to `true` and when speakers are available.\n */\n moreDrawerMicrophoneMenuTitle: string;\n /**\n * Title for the speaker selection sub-menu in more button drawer.\n *\n * Only used with `mobileView` set to `true`.\n */\n moreDrawerSpeakerMenuTitle: string;\n /**\n * Title for the captions sub-menu in more button drawer.\n *\n * Only used with `mobileView` set to `true`.\n */\n moreDrawerCaptionsMenuTitle: string;\n /**\n * Title for the spoken language sub-menu in more button drawer.\n *\n * Only used with `mobileView` set to `true`.\n */\n moreDrawerSpokenLanguageMenuTitle: string;\n /**\n * Title for the caption language sub-menu in more button drawer.\n *\n * Only used with `mobileView` set to `true`.\n */\n moreDrawerCaptionLanguageMenuTitle: string;\n /**\n * Title for the gallery options sub-menu in the more button drawer.\n */\n moreDrawerGalleryOptionsMenuTitle: string;\n /**\n * {@Link CallWithChatComposite} control bar More button label\n */\n moreDrawerButtonLabel: string;\n /**\n * {@Link CallWithChatComposite} control bar More button tooltip content\n */\n moreDrawerButtonTooltip: string;\n /**\n * Side pane People section Title.\n */\n peoplePaneTitle: string;\n /**\n * Side pane People section subheader.\n */\n peoplePaneSubTitle: string;\n /**\n * Side pane Chat screen title.\n */\n chatPaneTitle: string;\n /**\n * New Message label for chat button with notification icon component.\n */\n chatButtonNewMessageNotificationLabel: string;\n /**\n * Aria label for the picture in picture in picture tile that.\n * This feature currently only shows on mobileView when the chat or people pane is expanded.\n * @remarks\n * This component displays the local and most-dominant remote participant and when clicked\n * returns the user to the call screen.\n */\n pictureInPictureTileAriaLabel: string;\n /**\n * Label for menu item to remove participant\n */\n removeMenuLabel: string;\n /**\n * Label for button to copy invite link\n */\n copyInviteLinkButtonLabel: string;\n /* @conditional-compile-remove(PSTN-calls) */\n /**\n * Label for button to open dialpad\n */\n openDialpadButtonLabel: string;\n /**\n * Label for SidePaneHeader dismiss button\n */\n dismissSidePaneButtonLabel?: string;\n /**\n * Aria Description string for return to call button\n */\n returnToCallButtonAriaDescription?: string;\n /**\n * Aria label string for return to call back button\n */\n returnToCallButtonAriaLabel?: string;\n\n /* @conditional-compile-remove(PSTN-calls) */\n /**\n * Label for add people dropdown\n */\n peoplePaneAddPeopleButtonLabel: string;\n /* @conditional-compile-remove(PSTN-calls) */\n /**\n * Label for button to start a call\n */\n dialpadStartCallButtonLabel: string;\n /* @conditional-compile-remove(PSTN-calls) */\n /**\n * Title for dialpad Modal\n */\n dialpadModalTitle: string;\n /* @conditional-compile-remove(PSTN-calls) */\n /**\n * Aria Label for dialpad Modal\n */\n dialpadModalAriaLabel: string;\n /* @conditional-compile-remove(PSTN-calls) */\n /**\n * Aria Label for dialpad Modal close button\n */\n dialpadCloseModalButtonAriaLabel: string;\n /* @conditional-compile-remove(PSTN-calls) */\n /**\n * Placeholder text for dtmf dialpad\n */\n dtmfDialpadPlaceholderText: string;\n /* @conditional-compile-remove(PSTN-calls) */\n /**\n * Label for the button to open dtmf dialpad\n */\n openDtmfDialpadLabel: string;\n /**\n * aria label for when the invite link has been actioned\n */\n copyInviteLinkActionedAriaLabel: string;\n}"]}
1
+ {"version":3,"file":"Strings.js","sourceRoot":"","sources":["../../../../../../preprocess-dist/react-composites/src/composites/CallWithChatComposite/Strings.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * Strings used by the {@link CallWithChatComposite} directly.\n *\n * This strings are in addition to those used by the components from the component library.\n *\n * @public\n */\nexport interface CallWithChatCompositeStrings {\n /**\n * {@link CallWithChatComposite} control bar People button label\n */\n peopleButtonLabel: string;\n /**\n * {@link CallWithChatComposite} control bar People button label when checked\n */\n selectedPeopleButtonLabel: string;\n /**\n * {@link CallWithChatComposite} aria label for control bar People button when unchecked\n */\n peopleButtonTooltipOpenAriaLabel: string;\n /**\n * {@link CallWithChatComposite} aria label for control bar People button when checked\n */\n peopleButtonTooltipCloseAriaLabel: string;\n /**\n * {@link CallWithChatComposite} control bar People button ToolTipContent\n */\n peopleButtonTooltipOpen: string;\n /**\n * {@link CallWithChatComposite} control bar People button ToolTipContent\n */\n peopleButtonTooltipClose: string;\n /**\n * {@link CallWithChatComposite} control bar Chat button label.\n */\n chatButtonLabel: string;\n /**\n * {@Link CallWithChatComposite} control bar Chat button ToolTipContent.\n */\n chatButtonTooltipOpen: string;\n /**\n * {@Link CallWithChatComposite} control bar Chat button ToolTipContent.\n */\n chatButtonTooltipClose: string;\n /**\n * {@link CallWithChatComposite} control bar Chat button enhanced tooltip string.\n */\n chatButtonTooltipClosedWithMessageCount: string;\n /**\n * Title for the audio device selection sub-menu in more button drawer.\n *\n * Only used with `mobileView` set to `true` and when no speakers are available.\n */\n moreDrawerAudioDeviceMenuTitle?: string;\n /**\n * Title for the microphone selection sub-menu in more button drawer.\n *\n * Only used with `mobileView` set to `true` and when speakers are available.\n */\n moreDrawerMicrophoneMenuTitle: string;\n /**\n * Title for the speaker selection sub-menu in more button drawer.\n *\n * Only used with `mobileView` set to `true`.\n */\n moreDrawerSpeakerMenuTitle: string;\n /**\n * Title for the captions sub-menu in more button drawer.\n *\n * Only used with `mobileView` set to `true`.\n */\n moreDrawerCaptionsMenuTitle: string;\n /**\n * Title for the spoken language sub-menu in more button drawer.\n *\n * Only used with `mobileView` set to `true`.\n */\n moreDrawerSpokenLanguageMenuTitle: string;\n /**\n * Title for the caption language sub-menu in more button drawer.\n *\n * Only used with `mobileView` set to `true`.\n */\n moreDrawerCaptionLanguageMenuTitle: string;\n /**\n * Title for the gallery options sub-menu in the more button drawer.\n */\n moreDrawerGalleryOptionsMenuTitle: string;\n /**\n * {@Link CallWithChatComposite} control bar More button label\n */\n moreDrawerButtonLabel: string;\n /**\n * {@Link CallWithChatComposite} control bar More button tooltip content\n */\n moreDrawerButtonTooltip: string;\n /**\n * Side pane People section Title.\n */\n peoplePaneTitle: string;\n /**\n * Side pane People section subheader.\n */\n peoplePaneSubTitle: string;\n /**\n * Side pane Chat screen title.\n */\n chatPaneTitle: string;\n /**\n * New Message label for chat button with notification icon component.\n */\n chatButtonNewMessageNotificationLabel: string;\n /**\n * Aria label for the picture in picture in picture tile that.\n * This feature currently only shows on mobileView when the chat or people pane is expanded.\n * @remarks\n * This component displays the local and most-dominant remote participant and when clicked\n * returns the user to the call screen.\n */\n pictureInPictureTileAriaLabel: string;\n /**\n * Label for menu item to remove participant\n */\n removeMenuLabel: string;\n /**\n * Label for button to copy invite link\n */\n copyInviteLinkButtonLabel: string;\n /**\n * Label for button to copy invite link when it has been actioned\n */\n copyInviteLinkButtonActionedLabel: string;\n /**\n * Label for SidePaneHeader dismiss button\n */\n dismissSidePaneButtonLabel?: string;\n /**\n * Aria Description string for return to call button\n */\n returnToCallButtonAriaDescription?: string;\n /**\n * Aria label string for return to call back button\n */\n returnToCallButtonAriaLabel?: string;\n /**\n * aria label for when the invite link has been actioned\n */\n copyInviteLinkActionedAriaLabel: string;\n}"]}
@@ -1,19 +1,16 @@
1
1
  import { AudioDeviceInfo, Call, CallAgent, GroupCallLocator, PermissionConstraints, PropertyChangedEvent, TeamsMeetingLinkLocator, StartCallOptions, VideoDeviceInfo } from '@azure/communication-calling';
2
+ import { TeamsMeetingIdLocator } from '@azure/communication-calling';
2
3
  import { Reaction } from '@azure/communication-calling';
3
4
  import { StartCaptionsOptions } from '@azure/communication-calling';
4
- import { AddPhoneNumberOptions } from '@azure/communication-calling';
5
5
  import { DtmfTone } from '@azure/communication-calling';
6
6
  import { CreateVideoStreamViewResult, VideoStreamOptions } from "../../../../../react-components/src";
7
- import { AttachmentMetadata, AttachmentUploadTask } from "../../../../../react-components/src";
8
7
  import { ParticipantsJoinedListener, ParticipantsLeftListener, IsMutedChangedListener, CallIdChangedListener, IsLocalScreenSharingActiveChangedListener, DisplayNameChangedListener, IsSpeakingChangedListener, CallAdapter, CallEndedListener } from '../../CallComposite';
9
8
  import { MessageReceivedListener, MessageReadListener, ChatAdapter, ParticipantsRemovedListener, ParticipantsAddedListener, MessageEditedListener, MessageDeletedListener } from '../../ChatComposite';
10
9
  import { ResourceDetails } from '../../ChatComposite';
11
- import { CallWithChatAdapter } from './CallWithChatAdapter';
10
+ import { CallWithChatAdapter, ChatInitializedListener } from './CallWithChatAdapter';
12
11
  import { CallWithChatAdapterState } from '../state/CallWithChatAdapterState';
13
12
  import { CommunicationTokenCredential, CommunicationUserIdentifier } from '@azure/communication-common';
14
- import { CommunicationIdentifier, PhoneNumberIdentifier } from '@azure/communication-common';
15
13
  import { AdapterError } from '../../common/adapters';
16
- import { CallParticipantsLocator } from '../../CallComposite/adapter/AzureCommunicationCallAdapter';
17
14
  import { CallAdapterLocator } from '../../CallComposite/adapter/AzureCommunicationCallAdapter';
18
15
  import { StatefulCallClient } from "../../../../../calling-stateful-client/src";
19
16
  import { StatefulChatClient } from "../../../../../chat-stateful-client/src";
@@ -31,12 +28,15 @@ import { CallSurvey, CallSurveyResponse } from '@azure/communication-calling';
31
28
  */
32
29
  export declare class AzureCommunicationCallWithChatAdapter implements CallWithChatAdapter {
33
30
  private callAdapter;
34
- private chatAdapterPromise;
35
31
  private chatAdapter;
36
32
  private context;
33
+ private emitter;
37
34
  private onChatStateChange;
38
35
  private onCallStateChange;
39
- constructor(callAdapter: CallAdapter, chatAdapterPromise: Promise<ChatAdapter>);
36
+ private isAdapterDisposed;
37
+ constructor(callAdapter: CallAdapter, chatAdapter?: ChatAdapter);
38
+ setChatAdapterPromise(chatAdapter: Promise<ChatAdapter>): void;
39
+ private updateChatAdapter;
40
40
  private bindPublicMethods;
41
41
  /** Join existing Call. */
42
42
  joinCall(options?: boolean | JoinCallOptions): Call | undefined;
@@ -59,9 +59,9 @@ export declare class AzureCommunicationCallWithChatAdapter implements CallWithCh
59
59
  /** Get current Call and Chat state. */
60
60
  getState(): CallWithChatAdapterState;
61
61
  /** Dispose of the current CallWithChatAdapter. */
62
- dispose(): Promise<void>;
62
+ dispose(): void;
63
63
  /** Remove a participant from the Call only. */
64
- removeParticipant(userId: string | /* @conditional-compile-remove(PSTN-calls) */ CommunicationIdentifier): Promise<void>;
64
+ removeParticipant(userId: string): Promise<void>;
65
65
  setCamera(device: VideoDeviceInfo, options?: VideoStreamOptions): Promise<void>;
66
66
  /** Set the microphone to be used in the Call. */
67
67
  setMicrophone(device: AudioDeviceInfo): Promise<void>;
@@ -106,8 +106,6 @@ export declare class AzureCommunicationCallWithChatAdapter implements CallWithCh
106
106
  fetchInitialData(): Promise<void>;
107
107
  /** Send a chat message. */
108
108
  sendMessage(content: string): Promise<void>;
109
- /** Send a chat message with attachments. */
110
- sendMessageWithAttachments(content: string, attachments: AttachmentMetadata[]): Promise<void>;
111
109
  /** Send a chat read receipt. */
112
110
  sendReadReceipt(chatMessageId: string): Promise<void>;
113
111
  /** Send an isTyping indicator. */
@@ -115,26 +113,12 @@ export declare class AzureCommunicationCallWithChatAdapter implements CallWithCh
115
113
  /** Load previous Chat messages. */
116
114
  loadPreviousChatMessages(messagesToLoad: number): Promise<boolean>;
117
115
  /** Update an existing message. */
118
- updateMessage(messageId: string, content: string, metadata?: Record<string, string>, options?: {
119
- attachmentMetadata?: AttachmentMetadata[];
120
- }): Promise<void>;
116
+ updateMessage(messageId: string, content: string, metadata?: Record<string, string>, options?: {}): Promise<void>;
121
117
  /** Delete an existing message. */
122
118
  deleteMessage(messageId: string): Promise<void>;
123
- registerActiveUploads: (files: File[]) => AttachmentUploadTask[];
124
- registerCompletedUploads: (metadata: AttachmentMetadata[]) => AttachmentUploadTask[];
125
- clearUploads: () => void;
126
- cancelUpload: (id: string) => void;
127
- updateUploadProgress: (id: string, progress: number) => void;
128
- updateUploadStatusMessage: (id: string, errorMessage: string) => void;
129
- updateUploadMetadata: (id: string, metadata: AttachmentMetadata) => void;
130
119
  downloadResourceToCache(resourceDetails: ResourceDetails): Promise<void>;
131
120
  removeResourceFromCache(resourceDetails: ResourceDetails): void;
132
- holdCall(): Promise<void>;
133
- resumeCall(): Promise<void>;
134
- addParticipant(participant: PhoneNumberIdentifier, options?: AddPhoneNumberOptions): Promise<void>;
135
- addParticipant(participant: CommunicationUserIdentifier): Promise<void>;
136
121
  sendDtmfTone(dtmfTone: DtmfTone): Promise<void>;
137
- allowUnsupportedBrowserVersion(): void;
138
122
  startCaptions(options?: StartCaptionsOptions): Promise<void>;
139
123
  stopCaptions(): Promise<void>;
140
124
  setCaptionLanguage(language: string): Promise<void>;
@@ -172,6 +156,7 @@ export declare class AzureCommunicationCallWithChatAdapter implements CallWithCh
172
156
  on(event: 'isSpokenLanguageChanged', listener: IsSpokenLanguageChangedListener): void;
173
157
  on(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void;
174
158
  on(event: 'spotlightChanged', listener: SpotlightChangedListener): void;
159
+ on(event: 'chatInitialized', listener: ChatInitializedListener): void;
175
160
  off(event: 'callParticipantsJoined', listener: ParticipantsJoinedListener): void;
176
161
  off(event: 'callParticipantsLeft', listener: ParticipantsLeftListener): void;
177
162
  off(event: 'callEnded', listener: CallEndedListener): void;
@@ -197,39 +182,69 @@ export declare class AzureCommunicationCallWithChatAdapter implements CallWithCh
197
182
  off(event: 'isSpokenLanguageChanged', listener: IsSpokenLanguageChangedListener): void;
198
183
  off(event: 'capabilitiesChanged', listener: CapabilitiesChangedListener): void;
199
184
  off(event: 'spotlightChanged', listener: SpotlightChangedListener): void;
185
+ off(event: 'chatInitialized', listener: ChatInitializedListener): void;
186
+ private executeWithResolvedChatAdapter;
200
187
  }
201
188
  /**
202
189
  * Provides a way to get the chat thread ID for a given locator.
203
190
  *
204
- * @public
191
+ * @private
205
192
  */
206
193
  export interface ChatThreadProvider {
207
- getChatThread(): Promise<string>;
194
+ isCallInfoRequired(): boolean;
195
+ getChatThreadPromise(): Promise<string>;
196
+ getChatThread(): string;
208
197
  }
209
198
  /**
210
199
  * Arguments for use in {@link createAzureCommunicationCallWithChatAdapter} to join a Group Call with an associated Chat thread.
211
- * @public
200
+ * @private
212
201
  */
213
202
  export declare class CallAndChatProvider implements ChatThreadProvider {
214
203
  locator: CallAndChatLocator;
215
204
  constructor(locator: CallAndChatLocator);
216
- getChatThread(): Promise<string>;
205
+ isCallInfoRequired(): boolean;
206
+ getChatThreadPromise(): Promise<string>;
207
+ getChatThread(): string;
217
208
  }
218
209
  /**
219
210
  * Arguments for use in {@link createAzureCommunicationCallWithChatAdapter} to join a Teams meeting with an associated Chat thread.
220
211
  *
221
- * @public
212
+ * @private
222
213
  */
223
214
  export declare class TeamsMeetingLinkProvider implements ChatThreadProvider {
224
215
  locator: TeamsMeetingLinkLocator;
225
- constructor(locator: TeamsMeetingLinkLocator);
226
- getChatThread(): Promise<string>;
216
+ /** @conditional-compile-remove(meeting-id) */
217
+ private callAdapterPromise;
218
+ /** @conditional-compile-remove(meeting-id) */
219
+ private callAdapterSubscription?;
220
+ constructor(locator: TeamsMeetingLinkLocator, /** @conditional-compile-remove(meeting-id) */ callAdapterPromise: Promise<CallAdapter>);
221
+ isCallInfoRequired(): boolean;
222
+ getChatThread(): string;
223
+ getChatThreadPromise(): Promise<string>;
224
+ }
225
+ /** @conditional-compile-remove(meeting-id) */
226
+ /**
227
+ * Arguments for use in {@link createAzureCommunicationCallWithChatAdapter} to join a Teams meeting using meeting id.
228
+ *
229
+ * @private
230
+ */
231
+ export declare class TeamsMeetingIdProvider implements ChatThreadProvider {
232
+ locator: TeamsMeetingIdLocator;
233
+ private callAdapter;
234
+ constructor(locator: TeamsMeetingIdLocator, callAdapter: Promise<CallAdapter>);
235
+ isCallInfoRequired(): boolean;
236
+ getChatThread(): string;
237
+ /**
238
+ * Wait call to be connected to get thread ID.
239
+ * @returns the chat thread ID for the given meeting ID.
240
+ */
241
+ getChatThreadPromise(): Promise<string>;
227
242
  }
228
243
  /**
229
244
  * Combination of available adapters for use in {@link createAzureCommunicationCallWithChatAdapter}.
230
245
  * @public
231
246
  */
232
- export type CommunicationAdapter = CallAndChatProvider | TeamsMeetingLinkProvider;
247
+ export type CommunicationAdapter = CallAndChatProvider | TeamsMeetingLinkProvider | /** @conditional-compile-remove(meeting-id) */ TeamsMeetingIdProvider;
233
248
  /**
234
249
  * Arguments for use in {@link createAzureCommunicationCallWithChatAdapter} to join a Call with an associated Chat thread.
235
250
  *
@@ -237,7 +252,7 @@ export type CommunicationAdapter = CallAndChatProvider | TeamsMeetingLinkProvide
237
252
  */
238
253
  export interface CallAndChatLocator {
239
254
  /** Locator used by {@link createAzureCommunicationCallWithChatAdapter} to locate the call to join */
240
- callLocator: GroupCallLocator | /* @conditional-compile-remove(teams-adhoc-call) */ CallParticipantsLocator;
255
+ callLocator: GroupCallLocator;
241
256
  /** Chat thread ID used by {@link createAzureCommunicationCallWithChatAdapter} to locate the chat thread to join */
242
257
  chatThreadId: string;
243
258
  }
@@ -251,8 +266,7 @@ export type AzureCommunicationCallWithChatAdapterArgs = {
251
266
  userId: CommunicationUserIdentifier;
252
267
  displayName: string;
253
268
  credential: CommunicationTokenCredential;
254
- locator: CallAndChatLocator | TeamsMeetingLinkLocator;
255
- alternateCallerId?: string;
269
+ locator: CallAndChatLocator | TeamsMeetingLinkLocator | /** @conditional-compile-remove(meeting-id) */ TeamsMeetingIdLocator;
256
270
  callAdapterOptions?: AzureCommunicationCallAdapterOptions;
257
271
  };
258
272
  /**
@@ -261,7 +275,7 @@ export type AzureCommunicationCallWithChatAdapterArgs = {
261
275
  *
262
276
  * @public
263
277
  */
264
- export declare const createAzureCommunicationCallWithChatAdapter: ({ userId, displayName, credential, endpoint, locator, alternateCallerId, callAdapterOptions }: AzureCommunicationCallWithChatAdapterArgs) => Promise<CallWithChatAdapter>;
278
+ export declare const createAzureCommunicationCallWithChatAdapter: ({ userId, displayName, credential, endpoint, locator, callAdapterOptions }: AzureCommunicationCallWithChatAdapterArgs) => Promise<CallWithChatAdapter>;
265
279
  /**
266
280
  * A custom React hook to simplify the creation of {@link CallWithChatAdapter}.
267
281
  *