@azure/communication-react 1.31.0-beta.1 → 1.31.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 (384) hide show
  1. package/dist/communication-react.d.ts +24 -1373
  2. package/dist/dist-cjs/communication-react/index.js +40378 -174
  3. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  4. package/dist/dist-esm/acs-ui-common/src/common.d.ts +0 -13
  5. package/dist/dist-esm/acs-ui-common/src/common.js.map +1 -1
  6. package/dist/dist-esm/acs-ui-common/src/constants.d.ts +0 -5
  7. package/dist/dist-esm/acs-ui-common/src/constants.js +0 -5
  8. package/dist/dist-esm/acs-ui-common/src/constants.js.map +1 -1
  9. package/dist/dist-esm/acs-ui-common/src/index.d.ts +0 -4
  10. package/dist/dist-esm/acs-ui-common/src/index.js +0 -3
  11. package/dist/dist-esm/acs-ui-common/src/index.js.map +1 -1
  12. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  13. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  14. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +0 -2
  15. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  16. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.d.ts +0 -2
  17. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +0 -6
  18. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
  19. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js +1 -25
  20. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js.map +1 -1
  21. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.d.ts +0 -1
  22. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +1 -3
  23. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
  24. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js +0 -4
  25. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js.map +1 -1
  26. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +2 -42
  27. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  28. package/dist/dist-esm/calling-stateful-client/src/CallContext.d.ts +0 -6
  29. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +0 -35
  30. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  31. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.d.ts +1 -5
  32. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +12 -27
  33. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  34. package/dist/dist-esm/calling-stateful-client/src/Converter.js +0 -3
  35. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  36. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.d.ts +0 -1
  37. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js +1 -7
  38. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js.map +1 -1
  39. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js +0 -17
  40. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js.map +1 -1
  41. package/dist/dist-esm/calling-stateful-client/src/index-public.d.ts +0 -1
  42. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  43. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.d.ts +2 -6
  44. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js +2 -36
  45. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js.map +1 -1
  46. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.d.ts +1 -2
  47. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js +0 -4
  48. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  49. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +2 -25
  50. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
  51. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js +3 -3
  52. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js.map +1 -1
  53. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.d.ts +1 -15
  54. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js.map +1 -1
  55. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js +1 -2
  56. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js.map +1 -1
  57. package/dist/dist-esm/chat-stateful-client/src/index.d.ts +0 -1
  58. package/dist/dist-esm/chat-stateful-client/src/index.js.map +1 -1
  59. package/dist/dist-esm/communication-react/src/index.d.ts +0 -21
  60. package/dist/dist-esm/communication-react/src/index.js +0 -3
  61. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  62. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentDownloadCards.d.ts +0 -2
  63. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentDownloadCards.js +0 -1
  64. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentDownloadCards.js.map +1 -1
  65. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.d.ts +1 -13
  66. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.js +3 -9
  67. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.js.map +1 -1
  68. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.d.ts +0 -11
  69. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +2 -32
  70. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
  71. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.d.ts +1 -8
  72. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js +5 -9
  73. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js.map +1 -1
  74. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.d.ts +1 -2
  75. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.js +4 -4
  76. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.js.map +1 -1
  77. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.d.ts +1 -4
  78. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.js +6 -31
  79. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.js.map +1 -1
  80. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.d.ts +1 -15
  81. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.js +0 -9
  82. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.js.map +1 -1
  83. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.d.ts +2 -23
  84. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.js +6 -17
  85. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.js.map +1 -1
  86. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.d.ts +1 -8
  87. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js +6 -10
  88. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js.map +1 -1
  89. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/FluentChatMyMessageComponent.js +5 -5
  90. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/FluentChatMyMessageComponent.js.map +1 -1
  91. package/dist/dist-esm/react-components/src/components/ImageOverlay.js +0 -2
  92. package/dist/dist-esm/react-components/src/components/ImageOverlay.js.map +1 -1
  93. package/dist/dist-esm/react-components/src/components/InputBoxComponent.d.ts +0 -2
  94. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js +0 -15
  95. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js.map +1 -1
  96. package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +5 -81
  97. package/dist/dist-esm/react-components/src/components/MessageThread.js +3 -13
  98. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  99. package/dist/dist-esm/react-components/src/components/ParticipantList.d.ts +0 -15
  100. package/dist/dist-esm/react-components/src/components/ParticipantList.js +3 -12
  101. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  102. package/dist/dist-esm/react-components/src/components/SendBox.d.ts +1 -51
  103. package/dist/dist-esm/react-components/src/components/SendBox.js +6 -58
  104. package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
  105. package/dist/dist-esm/react-components/src/components/index.d.ts +0 -21
  106. package/dist/dist-esm/react-components/src/components/index.js +0 -8
  107. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  108. package/dist/dist-esm/react-components/src/components/styles/AttachmentCard.styles.d.ts +1 -1
  109. package/dist/dist-esm/react-components/src/components/styles/AttachmentCardGroup.styles.d.ts +1 -1
  110. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.d.ts +3 -3
  111. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js +0 -8
  112. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js.map +1 -1
  113. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.d.ts +1 -38
  114. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.js +3 -30
  115. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.js.map +1 -1
  116. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.d.ts +2 -4
  117. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.js +2 -9
  118. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.js.map +1 -1
  119. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.d.ts +1 -47
  120. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js +4 -154
  121. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js.map +1 -1
  122. package/dist/dist-esm/react-components/src/components/utils/common.js +0 -2
  123. package/dist/dist-esm/react-components/src/components/utils/common.js.map +1 -1
  124. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.d.ts +1 -2
  125. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js.map +1 -1
  126. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.d.ts +0 -4
  127. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js +1 -3
  128. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js.map +1 -1
  129. package/dist/dist-esm/react-components/src/index.d.ts +0 -1
  130. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  131. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +0 -45
  132. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  133. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/strings.json +2 -2
  134. package/dist/dist-esm/react-components/src/theming/icons.d.ts +0 -24
  135. package/dist/dist-esm/react-components/src/theming/icons.js +0 -67
  136. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  137. package/dist/dist-esm/react-components/src/theming/themes.d.ts +0 -6
  138. package/dist/dist-esm/react-components/src/theming/themes.js +0 -9
  139. package/dist/dist-esm/react-components/src/theming/themes.js.map +1 -1
  140. package/dist/dist-esm/react-components/src/types/Attachment.d.ts +0 -13
  141. package/dist/dist-esm/react-components/src/types/Attachment.js.map +1 -1
  142. package/dist/dist-esm/react-components/src/types/ChatMessage.d.ts +1 -20
  143. package/dist/dist-esm/react-components/src/types/ChatMessage.js.map +1 -1
  144. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +0 -59
  145. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +10 -15
  146. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  147. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +6 -38
  148. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +1 -12
  149. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  150. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.d.ts +0 -2
  151. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js.map +1 -1
  152. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.d.ts +0 -2
  153. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js +0 -19
  154. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js.map +1 -1
  155. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js +2 -10
  156. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js.map +1 -1
  157. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.d.ts +0 -2
  158. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js +0 -19
  159. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js.map +1 -1
  160. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.d.ts +0 -1
  161. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js +3 -5
  162. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
  163. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +0 -3
  164. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  165. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.d.ts +0 -3
  166. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
  167. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +2 -2
  168. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  169. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.d.ts +0 -7
  170. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +5 -43
  171. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  172. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +2 -2
  173. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +1 -1
  174. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js +2 -2
  175. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js.map +1 -1
  176. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js +2 -2
  177. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js.map +1 -1
  178. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts +0 -8
  179. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +0 -68
  180. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  181. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +0 -52
  182. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +4 -10
  183. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  184. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +3 -10
  185. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +2 -20
  186. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  187. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +2 -16
  188. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  189. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts +4 -10
  190. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js +2 -14
  191. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  192. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.d.ts +0 -27
  193. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js +1 -2
  194. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js.map +1 -1
  195. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.d.ts +0 -2
  196. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +11 -189
  197. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  198. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.d.ts +0 -20
  199. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.js.map +1 -1
  200. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +2 -6
  201. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +0 -36
  202. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  203. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +2 -12
  204. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  205. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js +2 -13
  206. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js.map +1 -1
  207. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.d.ts +0 -2
  208. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js.map +1 -1
  209. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.d.ts +0 -4
  210. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js +0 -4
  211. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js.map +1 -1
  212. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +1 -2
  213. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
  214. package/dist/dist-esm/react-composites/src/composites/common/SendBoxPicker.d.ts +2 -41
  215. package/dist/dist-esm/react-composites/src/composites/common/SendBoxPicker.js +0 -21
  216. package/dist/dist-esm/react-composites/src/composites/common/SendBoxPicker.js.map +1 -1
  217. package/dist/dist-esm/react-composites/src/composites/common/constants.d.ts +0 -5
  218. package/dist/dist-esm/react-composites/src/composites/common/constants.js +0 -5
  219. package/dist/dist-esm/react-composites/src/composites/common/constants.js.map +1 -1
  220. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +1 -26
  221. package/dist/dist-esm/react-composites/src/composites/common/icons.js +0 -2
  222. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  223. package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/strings.json +1 -1
  224. package/dist/tsdoc-metadata.json +1 -1
  225. package/package.json +5 -5
  226. package/dist/dist-cjs/communication-react/ChatMessageComponentAsRichTextEditBox-DdSFdo_m.js +0 -213
  227. package/dist/dist-cjs/communication-react/ChatMessageComponentAsRichTextEditBox-DdSFdo_m.js.map +0 -1
  228. package/dist/dist-cjs/communication-react/RichTextSendBoxWrapper-C2HrwCVY.js +0 -49
  229. package/dist/dist-cjs/communication-react/RichTextSendBoxWrapper-C2HrwCVY.js.map +0 -1
  230. package/dist/dist-cjs/communication-react/index-CH39vOsT.js +0 -46344
  231. package/dist/dist-cjs/communication-react/index-CH39vOsT.js.map +0 -1
  232. package/dist/dist-esm/acs-ui-common/src/dataConversion.d.ts +0 -6
  233. package/dist/dist-esm/acs-ui-common/src/dataConversion.js +0 -20
  234. package/dist/dist-esm/acs-ui-common/src/dataConversion.js.map +0 -1
  235. package/dist/dist-esm/acs-ui-common/src/removeImageTags.d.ts +0 -7
  236. package/dist/dist-esm/acs-ui-common/src/removeImageTags.js +0 -18
  237. package/dist/dist-esm/acs-ui-common/src/removeImageTags.js.map +0 -1
  238. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.d.ts +0 -17
  239. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.js +0 -33
  240. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.js.map +0 -1
  241. package/dist/dist-esm/chat-component-bindings/src/utils/getImageAttachmentsFromHTMLContent.d.ts +0 -6
  242. package/dist/dist-esm/chat-component-bindings/src/utils/getImageAttachmentsFromHTMLContent.js +0 -20
  243. package/dist/dist-esm/chat-component-bindings/src/utils/getImageAttachmentsFromHTMLContent.js.map +0 -1
  244. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.d.ts +0 -10
  245. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js +0 -15
  246. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js.map +0 -1
  247. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.d.ts +0 -24
  248. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.js +0 -203
  249. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.js.map +0 -1
  250. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.d.ts +0 -69
  251. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js +0 -36
  252. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js.map +0 -1
  253. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.d.ts +0 -75
  254. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js +0 -67
  255. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js.map +0 -1
  256. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.d.ts +0 -105
  257. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js +0 -51
  258. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js.map +0 -1
  259. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.d.ts +0 -86
  260. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js +0 -40
  261. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js.map +0 -1
  262. package/dist/dist-esm/react-components/src/components/MentionPopover.d.ts +0 -121
  263. package/dist/dist-esm/react-components/src/components/MentionPopover.js +0 -119
  264. package/dist/dist-esm/react-components/src/components/MentionPopover.js.map +0 -1
  265. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/ContextMenuPlugin.d.ts +0 -9
  266. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/ContextMenuPlugin.js +0 -29
  267. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/ContextMenuPlugin.js.map +0 -1
  268. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.d.ts +0 -30
  269. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.js +0 -98
  270. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.js.map +0 -1
  271. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/KeyboardInputPlugin.d.ts +0 -19
  272. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/KeyboardInputPlugin.js +0 -43
  273. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/KeyboardInputPlugin.js.map +0 -1
  274. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/PlaceholderPlugin.d.ts +0 -15
  275. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/PlaceholderPlugin.js +0 -42
  276. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/PlaceholderPlugin.js.map +0 -1
  277. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/RichTextToolbarPlugin.d.ts +0 -24
  278. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/RichTextToolbarPlugin.js +0 -64
  279. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/RichTextToolbarPlugin.js.map +0 -1
  280. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/TableEditContextMenuProvider.d.ts +0 -20
  281. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/TableEditContextMenuProvider.js +0 -45
  282. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/TableEditContextMenuProvider.js.map +0 -1
  283. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UndoRedoPlugin.d.ts +0 -14
  284. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UndoRedoPlugin.js +0 -42
  285. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UndoRedoPlugin.js.map +0 -1
  286. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UpdateContentPlugin.d.ts +0 -30
  287. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UpdateContentPlugin.js +0 -99
  288. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UpdateContentPlugin.js.map +0 -1
  289. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.d.ts +0 -59
  290. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.js +0 -334
  291. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.js.map +0 -1
  292. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.d.ts +0 -37
  293. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.js +0 -78
  294. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.js.map +0 -1
  295. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.d.ts +0 -215
  296. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.js +0 -184
  297. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.js.map +0 -1
  298. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.d.ts +0 -16
  299. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.js +0 -75
  300. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.js.map +0 -1
  301. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxUtils.d.ts +0 -9
  302. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxUtils.js +0 -16
  303. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxUtils.js.map +0 -1
  304. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/RichTextToolbar.d.ts +0 -19
  305. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/RichTextToolbar.js +0 -229
  306. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/RichTextToolbar.js.map +0 -1
  307. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTableCommandBarItem.d.ts +0 -7
  308. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTableCommandBarItem.js +0 -51
  309. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTableCommandBarItem.js.map +0 -1
  310. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTablePane.d.ts +0 -15
  311. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTablePane.js +0 -64
  312. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTablePane.js.map +0 -1
  313. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextToolbarTableIcon.d.ts +0 -6
  314. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextToolbarTableIcon.js +0 -13
  315. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextToolbarTableIcon.js.map +0 -1
  316. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.d.ts +0 -56
  317. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js +0 -75
  318. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js.map +0 -1
  319. package/dist/dist-esm/react-components/src/components/SendBoxErrors.d.ts +0 -14
  320. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js +0 -18
  321. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js.map +0 -1
  322. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.d.ts +0 -24
  323. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js +0 -550
  324. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js.map +0 -1
  325. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.d.ts +0 -152
  326. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js +0 -819
  327. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js.map +0 -1
  328. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.d.ts +0 -58
  329. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js +0 -144
  330. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js.map +0 -1
  331. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.d.ts +0 -26
  332. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js +0 -69
  333. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js.map +0 -1
  334. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.d.ts +0 -82
  335. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js +0 -328
  336. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js.map +0 -1
  337. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.d.ts +0 -21
  338. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.js +0 -38
  339. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.js.map +0 -1
  340. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.d.ts +0 -38
  341. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js +0 -99
  342. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js.map +0 -1
  343. package/dist/dist-esm/react-components/src/components/styles/Stack.style.d.ts +0 -5
  344. package/dist/dist-esm/react-components/src/components/styles/Stack.style.js +0 -32
  345. package/dist/dist-esm/react-components/src/components/styles/Stack.style.js.map +0 -1
  346. package/dist/dist-esm/react-components/src/components/utils/RichTextEditorUtils.d.ts +0 -73
  347. package/dist/dist-esm/react-components/src/components/utils/RichTextEditorUtils.js +0 -178
  348. package/dist/dist-esm/react-components/src/components/utils/RichTextEditorUtils.js.map +0 -1
  349. package/dist/dist-esm/react-components/src/components/utils/RichTextTableUtils.d.ts +0 -33
  350. package/dist/dist-esm/react-components/src/components/utils/RichTextTableUtils.js +0 -119
  351. package/dist/dist-esm/react-components/src/components/utils/RichTextTableUtils.js.map +0 -1
  352. package/dist/dist-esm/react-components/src/components/utils/merge.d.ts +0 -7
  353. package/dist/dist-esm/react-components/src/components/utils/merge.js +0 -16
  354. package/dist/dist-esm/react-components/src/components/utils/merge.js.map +0 -1
  355. package/dist/dist-esm/react-components/src/theming/icons.styles.d.ts +0 -6
  356. package/dist/dist-esm/react-components/src/theming/icons.styles.js +0 -25
  357. package/dist/dist-esm/react-components/src/theming/icons.styles.js.map +0 -1
  358. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.d.ts +0 -46
  359. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js +0 -200
  360. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js.map +0 -1
  361. package/dist/dist-esm/react-composites/src/composites/ChatComposite/AttachmentDownloadErrorBar.d.ts +0 -15
  362. package/dist/dist-esm/react-composites/src/composites/ChatComposite/AttachmentDownloadErrorBar.js +0 -23
  363. package/dist/dist-esm/react-composites/src/composites/ChatComposite/AttachmentDownloadErrorBar.js.map +0 -1
  364. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.d.ts +0 -18
  365. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js +0 -18
  366. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +0 -1
  367. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadReducer.d.ts +0 -49
  368. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadReducer.js +0 -44
  369. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadReducer.js.map +0 -1
  370. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadUtils.d.ts +0 -39
  371. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadUtils.js +0 -267
  372. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ImageUpload/ImageUploadUtils.js.map +0 -1
  373. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUpload.d.ts +0 -80
  374. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUpload.js +0 -36
  375. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUpload.js.map +0 -1
  376. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUploadButton.d.ts +0 -38
  377. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUploadButton.js +0 -66
  378. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUploadButton.js.map +0 -1
  379. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.d.ts +0 -5
  380. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js +0 -5
  381. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js.map +0 -1
  382. package/dist/dist-esm/react-composites/src/composites/common/RichTextSendBoxWrapper.d.ts +0 -10
  383. package/dist/dist-esm/react-composites/src/composites/common/RichTextSendBoxWrapper.js +0 -16
  384. package/dist/dist-esm/react-composites/src/composites/common/RichTextSendBoxWrapper.js.map +0 -1
@@ -17,7 +17,6 @@ import { CapabilitiesSubscriber } from './CapabilitiesSubscriber';
17
17
  import { ReactionSubscriber } from './ReactionSubscriber';
18
18
  import { SpotlightSubscriber } from './SpotlightSubscriber';
19
19
  import { BreakoutRoomsSubscriber } from './BreakoutRoomsSubscriber';
20
- import { LocalRecordingSubscriber } from './LocalRecordingSubscriber';
21
20
  import { TogetherModeSubscriber } from './TogetherModeSubscriber';
22
21
  import { MediaAccessSubscriber } from './MediaAccessSubscriber';
23
22
  import { _isTeamsMeeting } from './TypeGuards';
@@ -29,6 +28,7 @@ import { RealTimeTextSubscriber } from './RealTimeTextSubscriber';
29
28
  */
30
29
  export class CallSubscriber {
31
30
  constructor(call, context, internalContext) {
31
+ var _a;
32
32
  this._safeSubscribeInitCaptionSubscriber = () => {
33
33
  this._safeSubscribe(this.initCaptionSubscriber);
34
34
  };
@@ -38,14 +38,10 @@ export class CallSubscriber {
38
38
  this._safeSubscribeInitRealTimeText = () => {
39
39
  this._safeSubscribe(this.initRealTimeText);
40
40
  };
41
- this._safeSubscribeInitLocalRecordingNotificationSubscriber = () => {
42
- this._safeSubscribe(this.initLocalRecordingNotificationSubscriber);
43
- };
44
41
  this.subscribe = () => {
45
42
  this._call.on('stateChanged', this.stateChanged);
46
43
  this._call.on('stateChanged', this._safeSubscribeInitCaptionSubscriber);
47
44
  this._call.on('stateChanged', this._safeSubscribeInitTeamsMeetingConference);
48
- this._call.on('stateChanged', this._safeSubscribeInitLocalRecordingNotificationSubscriber);
49
45
  this._call.on('idChanged', this.idChanged);
50
46
  this._call.on('isScreenSharingOnChanged', this.isScreenSharingOnChanged);
51
47
  this._call.on('remoteParticipantsUpdated', this.remoteParticipantsUpdated);
@@ -53,7 +49,6 @@ export class CallSubscriber {
53
49
  this._call.on('isMutedChanged', this.isMuteChanged);
54
50
  this._call.on('roleChanged', this.callRoleChangedHandler);
55
51
  this._call.feature(Features.DominantSpeakers).on('dominantSpeakersChanged', this.dominantSpeakersChanged);
56
- this._call.on('totalParticipantCountChanged', this.totalParticipantCountChangedHandler);
57
52
  this._call.on('mutedByOthers', this.mutedByOthersHandler);
58
53
  this._safeSubscribeInitRealTimeText();
59
54
  for (const localVideoStream of this._call.localVideoStreams) {
@@ -71,14 +66,12 @@ export class CallSubscriber {
71
66
  this._call.off('stateChanged', this.stateChanged);
72
67
  this._call.off('stateChanged', this._safeSubscribeInitCaptionSubscriber);
73
68
  this._call.off('stateChanged', this._safeSubscribeInitTeamsMeetingConference);
74
- this._call.off('stateChanged', this._safeSubscribeInitLocalRecordingNotificationSubscriber);
75
69
  this._call.off('idChanged', this.idChanged);
76
70
  this._call.off('isScreenSharingOnChanged', this.isScreenSharingOnChanged);
77
71
  this._call.off('remoteParticipantsUpdated', this.remoteParticipantsUpdated);
78
72
  this._call.off('localVideoStreamsUpdated', this.localVideoStreamsUpdated);
79
73
  this._call.off('isMutedChanged', this.isMuteChanged);
80
74
  this._call.off('roleChanged', this.callRoleChangedHandler);
81
- this._call.off('totalParticipantCountChanged', this.totalParticipantCountChangedHandler);
82
75
  this._call.off('mutedByOthers', this.mutedByOthersHandler);
83
76
  this._participantSubscribers.forEach((participantSubscriber) => {
84
77
  participantSubscriber.unsubscribe();
@@ -94,18 +87,19 @@ export class CallSubscriber {
94
87
  this._diagnosticsSubscriber.unsubscribe();
95
88
  this._recordingSubscriber.unsubscribe();
96
89
  this._transcriptionSubscriber.unsubscribe();
97
- (_a = this._localRecordingSubscriber) === null || _a === void 0 ? void 0 : _a.unsubscribe();
98
90
  this._optimalVideoCountSubscriber.unsubscribe();
99
91
  this._pptLiveSubscriber.unsubscribe();
100
- (_b = this._CaptionsFeatureSubscriber) === null || _b === void 0 ? void 0 : _b.unsubscribe();
92
+ (_a = this._CaptionsFeatureSubscriber) === null || _a === void 0 ? void 0 : _a.unsubscribe();
101
93
  if (this._realTimeTextSubscriber) {
102
94
  this._realTimeTextSubscriber.unsubscribe();
103
95
  }
104
- (_c = this._raiseHandSubscriber) === null || _c === void 0 ? void 0 : _c.unsubscribe();
96
+ (_b = this._raiseHandSubscriber) === null || _b === void 0 ? void 0 : _b.unsubscribe();
105
97
  this._capabilitiesSubscriber.unsubscribe();
106
- (_d = this._reactionSubscriber) === null || _d === void 0 ? void 0 : _d.unsubscribe();
98
+ (_c = this._reactionSubscriber) === null || _c === void 0 ? void 0 : _c.unsubscribe();
107
99
  this._spotlightSubscriber.unsubscribe();
108
- this._breakoutRoomsSubscriber.unsubscribe();
100
+ if (this._call.feature(Features.Capabilities) && ((_d = this._call.feature(Features.Capabilities).capabilities) === null || _d === void 0 ? void 0 : _d.joinBreakoutRooms.isPresent) && this._breakoutRoomsSubscriber) {
101
+ this._breakoutRoomsSubscriber.unsubscribe();
102
+ }
109
103
  this._togetherModeSubscriber.unsubscribe();
110
104
  this._mediaAccessSubscriber.unsubscribe();
111
105
  };
@@ -132,14 +126,6 @@ export class CallSubscriber {
132
126
  this._realTimeTextSubscriber = new RealTimeTextSubscriber(this._callIdRef, this._context, this._call.feature(Features.RealTimeText));
133
127
  }
134
128
  };
135
- this.initLocalRecordingNotificationSubscriber = () => {
136
- // Subscribe to LocalRecordingFeature as it is only available in interop scenarios
137
- // Will throw an error if not in interop scenarios
138
- if (this._call.state === 'Connected' && this._call.kind === 'TeamsCall' && !this._localRecordingSubscriber) {
139
- this._localRecordingSubscriber = new LocalRecordingSubscriber(this._callIdRef, this._context, this._call.feature(Features.LocalRecording));
140
- this._call.off('stateChanged', this._safeSubscribeInitLocalRecordingNotificationSubscriber);
141
- }
142
- };
143
129
  this.idChanged = () => {
144
130
  this._internalContext.setCallId(this._call.id, this._callIdRef.callId);
145
131
  this._context.setCallId(this._call.id, this._callIdRef.callId);
@@ -154,9 +140,6 @@ export class CallSubscriber {
154
140
  this.callRoleChangedHandler = () => {
155
141
  this._context.setRole(this._callIdRef.callId, this._call.role);
156
142
  };
157
- this.totalParticipantCountChangedHandler = () => {
158
- this._context.setTotalParticipantCount(this._callIdRef.callId, this._call.totalParticipantCount);
159
- };
160
143
  // TODO: Tee to notification state once available
161
144
  this.mutedByOthersHandler = () => {
162
145
  this._context.teeErrorToState({
@@ -230,9 +213,11 @@ export class CallSubscriber {
230
213
  this._localVideoStreamVideoEffectsSubscribers = new Map();
231
214
  this._capabilitiesSubscriber = new CapabilitiesSubscriber(this._callIdRef, this._context, this._call.feature(Features.Capabilities));
232
215
  this._spotlightSubscriber = new SpotlightSubscriber(this._callIdRef, this._context, this._call.feature(Features.Spotlight));
233
- // Clear assigned breakout room closed notification for this call.
234
- this._context.deleteLatestNotification('assignedBreakoutRoomClosed');
235
- this._breakoutRoomsSubscriber = new BreakoutRoomsSubscriber(this._callIdRef, this._context, this._call.feature(Features.BreakoutRooms));
216
+ if (this._call.feature(Features.Capabilities) && ((_a = this._call.feature(Features.Capabilities).capabilities) === null || _a === void 0 ? void 0 : _a.joinBreakoutRooms.isPresent)) {
217
+ // Clear assigned breakout room closed notification for this call.
218
+ this._context.deleteLatestNotification('assignedBreakoutRoomClosed');
219
+ this._breakoutRoomsSubscriber = new BreakoutRoomsSubscriber(this._callIdRef, this._context, this._call.feature(Features.BreakoutRooms));
220
+ }
236
221
  this._togetherModeSubscriber = new TogetherModeSubscriber(this._callIdRef, this._context, this._internalContext, this._call.feature(Features.TogetherMode));
237
222
  this._mediaAccessSubscriber = new MediaAccessSubscriber(this._callIdRef, this._context, this._call.feature(Features.MediaAccess));
238
223
  this.subscribe();
@@ -1 +1 @@
1
- {"version":3,"file":"CallSubscriber.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/CallSubscriber.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Features, LocalVideoStream, RemoteParticipant } from '@azure/communication-calling';\nimport { toFlatCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { CallCommon } from './BetaToStableTypes';\nimport { CallContext } from './CallContext';\nimport { CallIdRef } from './CallIdRef';\nimport { CaptionsFeatureSubscriber } from './CaptionsSubscriber';\nimport { convertSdkLocalStreamToDeclarativeLocalStream, convertSdkParticipantToDeclarativeParticipant } from './Converter';\nimport { InternalCallContext } from './InternalCallContext';\nimport { LocalVideoStreamVideoEffectsSubscriber } from './LocalVideoStreamVideoEffectsSubscriber';\nimport { ParticipantSubscriber } from './ParticipantSubscriber';\nimport { RecordingSubscriber } from './RecordingSubscriber';\nimport { PPTLiveSubscriber } from './PPTLiveSubscriber';\nimport { disposeView } from './StreamUtils';\nimport { TranscriptionSubscriber } from './TranscriptionSubscriber';\nimport { UserFacingDiagnosticsSubscriber } from './UserFacingDiagnosticsSubscriber';\nimport { RaiseHandSubscriber } from './RaiseHandSubscriber';\nimport { OptimalVideoCountSubscriber } from './OptimalVideoCountSubscriber';\nimport { CapabilitiesSubscriber } from './CapabilitiesSubscriber';\nimport { ReactionSubscriber } from './ReactionSubscriber';\nimport { SpotlightSubscriber } from './SpotlightSubscriber';\nimport { BreakoutRoomsSubscriber } from './BreakoutRoomsSubscriber';\nimport { LocalRecordingSubscriber } from './LocalRecordingSubscriber';\nimport { TogetherModeSubscriber } from './TogetherModeSubscriber';\nimport { MediaAccessSubscriber } from './MediaAccessSubscriber';\nimport { _isTeamsMeeting } from './TypeGuards';\nimport { RealTimeTextSubscriber } from './RealTimeTextSubscriber';\n\n/**\n * Keeps track of the listeners assigned to a particular call because when we get an event from SDK, it doesn't tell us\n * which call it is for. If we keep track of this then we know which call in the state that needs an update and also\n * which property of that call. Also we can use this when unregistering to a call.\n */\nexport class CallSubscriber {\n private _call: CallCommon;\n private _callIdRef: CallIdRef;\n private _context: CallContext;\n private _internalContext: InternalCallContext;\n private _diagnosticsSubscriber: UserFacingDiagnosticsSubscriber;\n private _participantSubscribers: Map<string, ParticipantSubscriber>;\n private _recordingSubscriber: RecordingSubscriber;\n private _transcriptionSubscriber: TranscriptionSubscriber;\n private _localRecordingSubscriber?: LocalRecordingSubscriber;\n private _pptLiveSubscriber: PPTLiveSubscriber;\n private _optimalVideoCountSubscriber: OptimalVideoCountSubscriber;\n private _CaptionsFeatureSubscriber?: CaptionsFeatureSubscriber;\n private _realTimeTextSubscriber?: RealTimeTextSubscriber;\n private _raiseHandSubscriber?: RaiseHandSubscriber;\n private _reactionSubscriber?: ReactionSubscriber;\n private _localVideoStreamVideoEffectsSubscribers: Map<string, LocalVideoStreamVideoEffectsSubscriber>;\n private _capabilitiesSubscriber: CapabilitiesSubscriber;\n private _spotlightSubscriber: SpotlightSubscriber;\n private _breakoutRoomsSubscriber: BreakoutRoomsSubscriber;\n private _togetherModeSubscriber: TogetherModeSubscriber;\n private _mediaAccessSubscriber: MediaAccessSubscriber;\n constructor(call: CallCommon, context: CallContext, internalContext: InternalCallContext) {\n this._call = call;\n this._callIdRef = {\n callId: call.id\n };\n this._context = context;\n this._internalContext = internalContext;\n this._diagnosticsSubscriber = new UserFacingDiagnosticsSubscriber(this._callIdRef, this._context, this._call.feature(Features.UserFacingDiagnostics));\n this._participantSubscribers = new Map<string, ParticipantSubscriber>();\n this._recordingSubscriber = new RecordingSubscriber(this._callIdRef, this._context, this._call.feature(Features.Recording));\n this._pptLiveSubscriber = new PPTLiveSubscriber(this._callIdRef, this._context, this._call);\n this._transcriptionSubscriber = new TranscriptionSubscriber(this._callIdRef, this._context, this._call.feature(Features.Transcription));\n this._raiseHandSubscriber = new RaiseHandSubscriber(this._callIdRef, this._context, this._call.feature(Features.RaiseHand));\n this._reactionSubscriber = new ReactionSubscriber(this._callIdRef, this._context, this._call.feature(Features.Reaction));\n this._optimalVideoCountSubscriber = new OptimalVideoCountSubscriber({\n callIdRef: this._callIdRef,\n context: this._context,\n localOptimalVideoCountFeature: this._call.feature(Features.OptimalVideoCount)\n });\n this._localVideoStreamVideoEffectsSubscribers = new Map();\n this._capabilitiesSubscriber = new CapabilitiesSubscriber(this._callIdRef, this._context, this._call.feature(Features.Capabilities));\n this._spotlightSubscriber = new SpotlightSubscriber(this._callIdRef, this._context, this._call.feature(Features.Spotlight));\n\n // Clear assigned breakout room closed notification for this call.\n this._context.deleteLatestNotification('assignedBreakoutRoomClosed');\n this._breakoutRoomsSubscriber = new BreakoutRoomsSubscriber(this._callIdRef, this._context, this._call.feature(Features.BreakoutRooms));\n this._togetherModeSubscriber = new TogetherModeSubscriber(this._callIdRef, this._context, this._internalContext, this._call.feature(Features.TogetherMode));\n this._mediaAccessSubscriber = new MediaAccessSubscriber(this._callIdRef, this._context, this._call.feature(Features.MediaAccess));\n this.subscribe();\n }\n private _safeSubscribeInitCaptionSubscriber = (): void => {\n this._safeSubscribe(this.initCaptionSubscriber);\n };\n private _safeSubscribeInitTeamsMeetingConference = (): void => {\n this._safeSubscribe(this.initTeamsMeetingConference);\n };\n private _safeSubscribeInitRealTimeText = (): void => {\n this._safeSubscribe(this.initRealTimeText);\n };\n private _safeSubscribeInitLocalRecordingNotificationSubscriber = (): void => {\n this._safeSubscribe(this.initLocalRecordingNotificationSubscriber);\n };\n private subscribe = (): void => {\n this._call.on('stateChanged', this.stateChanged);\n this._call.on('stateChanged', this._safeSubscribeInitCaptionSubscriber);\n this._call.on('stateChanged', this._safeSubscribeInitTeamsMeetingConference);\n this._call.on('stateChanged', this._safeSubscribeInitLocalRecordingNotificationSubscriber);\n this._call.on('idChanged', this.idChanged);\n this._call.on('isScreenSharingOnChanged', this.isScreenSharingOnChanged);\n this._call.on('remoteParticipantsUpdated', this.remoteParticipantsUpdated);\n this._call.on('localVideoStreamsUpdated', this.localVideoStreamsUpdated);\n this._call.on('isMutedChanged', this.isMuteChanged);\n this._call.on('roleChanged', this.callRoleChangedHandler);\n this._call.feature(Features.DominantSpeakers).on('dominantSpeakersChanged', this.dominantSpeakersChanged);\n this._call.on('totalParticipantCountChanged', this.totalParticipantCountChangedHandler);\n this._call.on('mutedByOthers', this.mutedByOthersHandler);\n this._safeSubscribeInitRealTimeText();\n for (const localVideoStream of this._call.localVideoStreams) {\n this._internalContext.setLocalRenderInfo(this._callIdRef.callId, localVideoStream.mediaStreamType, localVideoStream, 'NotRendered', undefined);\n }\n if (this._call.remoteParticipants.length > 0) {\n this._call.remoteParticipants.forEach((participant: RemoteParticipant) => {\n this.addParticipantListener(participant);\n });\n this._context.setCallRemoteParticipants(this._callIdRef.callId, this._call.remoteParticipants.map(convertSdkParticipantToDeclarativeParticipant), []);\n }\n };\n public unsubscribe = (): void => {\n this._call.off('stateChanged', this.stateChanged);\n this._call.off('stateChanged', this._safeSubscribeInitCaptionSubscriber);\n this._call.off('stateChanged', this._safeSubscribeInitTeamsMeetingConference);\n this._call.off('stateChanged', this._safeSubscribeInitLocalRecordingNotificationSubscriber);\n this._call.off('idChanged', this.idChanged);\n this._call.off('isScreenSharingOnChanged', this.isScreenSharingOnChanged);\n this._call.off('remoteParticipantsUpdated', this.remoteParticipantsUpdated);\n this._call.off('localVideoStreamsUpdated', this.localVideoStreamsUpdated);\n this._call.off('isMutedChanged', this.isMuteChanged);\n this._call.off('roleChanged', this.callRoleChangedHandler);\n this._call.off('totalParticipantCountChanged', this.totalParticipantCountChangedHandler);\n this._call.off('mutedByOthers', this.mutedByOthersHandler);\n this._participantSubscribers.forEach((participantSubscriber: ParticipantSubscriber) => {\n participantSubscriber.unsubscribe();\n });\n this._participantSubscribers.clear();\n\n // If we are unsubscribing that means we no longer want to display any video for this call (callEnded or callAgent\n // disposed) and we should not be updating it any more. So if video is rendering we stop rendering.\n for (const localVideoStream of this._call.localVideoStreams) {\n const mediaStreamType = localVideoStream.mediaStreamType;\n disposeView(this._context, this._internalContext, this._callIdRef.callId, undefined, convertSdkLocalStreamToDeclarativeLocalStream(localVideoStream));\n this._internalContext.deleteLocalRenderInfo(this._callIdRef.callId, mediaStreamType);\n }\n this._diagnosticsSubscriber.unsubscribe();\n this._recordingSubscriber.unsubscribe();\n this._transcriptionSubscriber.unsubscribe();\n this._localRecordingSubscriber?.unsubscribe();\n this._optimalVideoCountSubscriber.unsubscribe();\n this._pptLiveSubscriber.unsubscribe();\n this._CaptionsFeatureSubscriber?.unsubscribe();\n if (this._realTimeTextSubscriber) {\n this._realTimeTextSubscriber.unsubscribe();\n }\n this._raiseHandSubscriber?.unsubscribe();\n this._capabilitiesSubscriber.unsubscribe();\n this._reactionSubscriber?.unsubscribe();\n this._spotlightSubscriber.unsubscribe();\n this._breakoutRoomsSubscriber.unsubscribe();\n this._togetherModeSubscriber.unsubscribe();\n this._mediaAccessSubscriber.unsubscribe();\n };\n\n // This is a helper function to safely call subscriber functions. This is needed in order to prevent events\n // with the same event type from failing to fire due to a subscriber throwing an error upon subscription.\n // Wrap your listeners with this helper function if your listener can fail due to initialization or fail\n // during a function call. This will prevent other events using the same event type from failing to fire.\n private _safeSubscribe(subscriber: () => void): void {\n try {\n subscriber();\n } catch (e) {\n this._context.teeErrorToState(e as Error, 'Call.on');\n }\n }\n private addParticipantListener(participant: RemoteParticipant): void {\n const participantKey = toFlatCommunicationIdentifier(participant.identifier);\n this._participantSubscribers.get(participantKey)?.unsubscribe();\n this._participantSubscribers.set(participantKey, new ParticipantSubscriber(this._callIdRef, participant, this._context, this._internalContext));\n }\n private removeParticipantListener(participant: RemoteParticipant): void {\n const participantKey = toFlatCommunicationIdentifier(participant.identifier);\n const participantSubscriber = this._participantSubscribers.get(participantKey);\n if (participantSubscriber) {\n participantSubscriber.unsubscribe();\n this._participantSubscribers.delete(participantKey);\n }\n }\n private stateChanged = (): void => {\n this._context.setCallState(this._callIdRef.callId, this._call.state);\n };\n private initCaptionSubscriber = (): void => {\n // subscribe to captions here so that we don't call captions when call is not initialized\n if (this._call.state === 'Connected' && !this._CaptionsFeatureSubscriber) {\n this._CaptionsFeatureSubscriber = new CaptionsFeatureSubscriber(this._callIdRef, this._context, this._call.feature(Features.Captions));\n this._call.off('stateChanged', this._safeSubscribeInitCaptionSubscriber);\n }\n };\n private initTeamsMeetingConference = (): void => {\n if (this._call.state === 'Connected' && _isTeamsMeeting(this._call)) {\n this._call.feature(Features.TeamsMeetingAudioConferencing).getTeamsMeetingAudioConferencingDetails().then(teamsMeetingConferenceDetails => {\n this._context.setTeamsMeetingConference(this._callIdRef.callId, teamsMeetingConferenceDetails);\n });\n this._call.off('stateChanged', this._safeSubscribeInitTeamsMeetingConference);\n }\n };\n private initRealTimeText = (): void => {\n if (this._context.getState().userId.kind !== 'microsoftTeamsUser') {\n this._realTimeTextSubscriber = new RealTimeTextSubscriber(this._callIdRef, this._context, this._call.feature(Features.RealTimeText));\n }\n };\n private initLocalRecordingNotificationSubscriber = (): void => {\n // Subscribe to LocalRecordingFeature as it is only available in interop scenarios\n // Will throw an error if not in interop scenarios\n if (this._call.state === 'Connected' && this._call.kind === 'TeamsCall' && !this._localRecordingSubscriber) {\n this._localRecordingSubscriber = new LocalRecordingSubscriber(this._callIdRef, this._context, this._call.feature(Features.LocalRecording));\n this._call.off('stateChanged', this._safeSubscribeInitLocalRecordingNotificationSubscriber);\n }\n };\n private idChanged = (): void => {\n this._internalContext.setCallId(this._call.id, this._callIdRef.callId);\n this._context.setCallId(this._call.id, this._callIdRef.callId);\n this._callIdRef.callId = this._call.id;\n };\n private isScreenSharingOnChanged = (): void => {\n this._context.setCallIsScreenSharingOn(this._callIdRef.callId, this._call.isScreenSharingOn);\n };\n private isMuteChanged = (): void => {\n this._context.setCallIsMicrophoneMuted(this._callIdRef.callId, this._call.isMuted);\n };\n private callRoleChangedHandler = (): void => {\n this._context.setRole(this._callIdRef.callId, this._call.role);\n };\n private totalParticipantCountChangedHandler = (): void => {\n this._context.setTotalParticipantCount(this._callIdRef.callId, this._call.totalParticipantCount);\n };\n\n // TODO: Tee to notification state once available\n private mutedByOthersHandler = (): void => {\n this._context.teeErrorToState({\n name: 'mutedByOthers',\n message: 'Muted by another participant'\n }, 'Call.mutedByOthers');\n };\n private remoteParticipantsUpdated = (event: {\n added: RemoteParticipant[];\n removed: RemoteParticipant[];\n }): void => {\n event.added.forEach((participant: RemoteParticipant) => {\n this.addParticipantListener(participant);\n });\n event.removed.forEach((participant: RemoteParticipant) => {\n this.removeParticipantListener(participant);\n });\n\n // Remove any added participants from remoteParticipantsEnded if they are there and add any removed participants to\n // remoteParticipantsEnded.\n this._context.setCallRemoteParticipantsEnded(this._callIdRef.callId, event.removed.map(convertSdkParticipantToDeclarativeParticipant), event.added.map((participant: RemoteParticipant) => {\n return toFlatCommunicationIdentifier(participant.identifier);\n }));\n\n // Add added participants to remoteParticipants and remove removed participants from remoteParticipants.\n this._context.setCallRemoteParticipants(this._callIdRef.callId, event.added.map(convertSdkParticipantToDeclarativeParticipant), event.removed.map((participant: RemoteParticipant) => {\n return toFlatCommunicationIdentifier(participant.identifier);\n }));\n };\n private localVideoStreamsUpdated = (event: {\n added: LocalVideoStream[];\n removed: LocalVideoStream[];\n }): void => {\n for (const localVideoStream of event.added) {\n const mediaStreamType = localVideoStream.mediaStreamType;\n // IMPORTANT: The internalContext should be set before context. This is done to ensure that the internal context\n // has the required data when component re-renders due to external state changes.\n this._internalContext.setLocalRenderInfo(this._callIdRef.callId, mediaStreamType, localVideoStream, 'NotRendered', undefined);\n\n // Subscribe to video effect changes\n this._localVideoStreamVideoEffectsSubscribers.get(mediaStreamType)?.unsubscribe();\n this._localVideoStreamVideoEffectsSubscribers.set(mediaStreamType, new LocalVideoStreamVideoEffectsSubscriber({\n parent: this._callIdRef,\n context: this._context,\n localVideoStream: localVideoStream,\n localVideoStreamEffectsAPI: localVideoStream.feature(Features.VideoEffects)\n }));\n }\n for (const localVideoStream of event.removed) {\n const mediaStreamType = localVideoStream.mediaStreamType;\n this._localVideoStreamVideoEffectsSubscribers.get(mediaStreamType)?.unsubscribe();\n disposeView(this._context, this._internalContext, this._callIdRef.callId, undefined, convertSdkLocalStreamToDeclarativeLocalStream(localVideoStream));\n this._internalContext.deleteLocalRenderInfo(this._callIdRef.callId, mediaStreamType);\n }\n this._context.setCallLocalVideoStream(this._callIdRef.callId, event.added.map(convertSdkLocalStreamToDeclarativeLocalStream), event.removed.map(convertSdkLocalStreamToDeclarativeLocalStream));\n };\n private dominantSpeakersChanged = (): void => {\n const dominantSpeakers = this._call.feature(Features.DominantSpeakers).dominantSpeakers;\n this._context.setCallDominantSpeakers(this._callIdRef.callId, dominantSpeakers);\n };\n}"]}
1
+ {"version":3,"file":"CallSubscriber.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/CallSubscriber.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,QAAQ,EAAuC,MAAM,8BAA8B,CAAC;AAC7F,OAAO,EAAE,6BAA6B,EAAE,gCAAgC;AAIxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,6CAA6C,EAAE,6CAA6C,EAAE,MAAM,aAAa,CAAC;AAE3H,OAAO,EAAE,sCAAsC,EAAE,MAAM,0CAA0C,CAAC;AAClG,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE;;;;GAIG;AACH,MAAM,OAAO,cAAc;IAqBzB,YAAY,IAAgB,EAAE,OAAoB,EAAE,eAAoC;;QA+BhF,wCAAmC,GAAG,GAAS,EAAE;YACvD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAClD,CAAC,CAAC;QACM,6CAAwC,GAAG,GAAS,EAAE;YAC5D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACvD,CAAC,CAAC;QACM,mCAA8B,GAAG,GAAS,EAAE;YAClD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC7C,CAAC,CAAC;QACM,cAAS,GAAG,GAAS,EAAE;YAC7B,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YACjD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,mCAAmC,CAAC,CAAC;YACxE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,wCAAwC,CAAC,CAAC;YAC7E,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAC3C,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,0BAA0B,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;YACzE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,2BAA2B,EAAE,IAAI,CAAC,yBAAyB,CAAC,CAAC;YAC3E,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,0BAA0B,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;YACzE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACpD,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAC1D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,yBAAyB,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC;YAC1G,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;YAC1D,IAAI,CAAC,8BAA8B,EAAE,CAAC;YACtC,KAAK,MAAM,gBAAgB,IAAI,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;gBAC5D,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,gBAAgB,CAAC,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;YACjJ,CAAC;YACD,IAAI,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7C,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,WAA8B,EAAE,EAAE;oBACvE,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC;gBAC3C,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,GAAG,CAAC,6CAA6C,CAAC,EAAE,EAAE,CAAC,CAAC;YACxJ,CAAC;QACH,CAAC,CAAC;QACK,gBAAW,GAAG,GAAS,EAAE;;YAC9B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAClD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,mCAAmC,CAAC,CAAC;YACzE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,wCAAwC,CAAC,CAAC;YAC9E,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,0BAA0B,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAC1E,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,2BAA2B,EAAE,IAAI,CAAC,yBAAyB,CAAC,CAAC;YAC5E,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,0BAA0B,EAAE,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAC1E,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAC3D,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;YAC3D,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,qBAA4C,EAAE,EAAE;gBACpF,qBAAqB,CAAC,WAAW,EAAE,CAAC;YACtC,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAC;YAErC,kHAAkH;YAClH,mGAAmG;YACnG,KAAK,MAAM,gBAAgB,IAAI,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;gBAC5D,MAAM,eAAe,GAAG,gBAAgB,CAAC,eAAe,CAAC;gBACzD,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,6CAA6C,CAAC,gBAAgB,CAAC,CAAC,CAAC;gBACtJ,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;YACvF,CAAC;YACD,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC;YAC1C,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,CAAC;YACxC,IAAI,CAAC,wBAAwB,CAAC,WAAW,EAAE,CAAC;YAC5C,IAAI,CAAC,4BAA4B,CAAC,WAAW,EAAE,CAAC;YAChD,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC;YACtC,MAAA,IAAI,CAAC,0BAA0B,0CAAE,WAAW,EAAE,CAAC;YAC/C,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;gBACjC,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,CAAC;YAC7C,CAAC;YACD,MAAA,IAAI,CAAC,oBAAoB,0CAAE,WAAW,EAAE,CAAC;YACzC,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,CAAC;YAC3C,MAAA,IAAI,CAAC,mBAAmB,0CAAE,WAAW,EAAE,CAAC;YACxC,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,CAAC;YACxC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAI,MAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,YAAY,0CAAE,iBAAiB,CAAC,SAAS,CAAA,IAAI,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBACtK,IAAI,CAAC,wBAAwB,CAAC,WAAW,EAAE,CAAC;YAC9C,CAAC;YACD,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,CAAC;YAC3C,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,CAAC;QAC5C,CAAC,CAAC;QA0BM,iBAAY,GAAG,GAAS,EAAE;YAChC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvE,CAAC,CAAC;QACM,0BAAqB,GAAG,GAAS,EAAE;YACzC,yFAAyF;YACzF,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,WAAW,IAAI,CAAC,IAAI,CAAC,0BAA0B,EAAE,CAAC;gBACzE,IAAI,CAAC,0BAA0B,GAAG,IAAI,yBAAyB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACvI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,mCAAmC,CAAC,CAAC;YAC3E,CAAC;QACH,CAAC,CAAC;QACM,+BAA0B,GAAG,GAAS,EAAE;YAC9C,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,WAAW,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC,uCAAuC,EAAE,CAAC,IAAI,CAAC,6BAA6B,CAAC,EAAE;oBACxI,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAC;gBACjG,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,wCAAwC,CAAC,CAAC;YAChF,CAAC;QACH,CAAC,CAAC;QACM,qBAAgB,GAAG,GAAS,EAAE;YACpC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;gBAClE,IAAI,CAAC,uBAAuB,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;YACvI,CAAC;QACH,CAAC,CAAC;QACM,cAAS,GAAG,GAAS,EAAE;YAC7B,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACvE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAC/D,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACzC,CAAC,CAAC;QACM,6BAAwB,GAAG,GAAS,EAAE;YAC5C,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAC/F,CAAC,CAAC;QACM,kBAAa,GAAG,GAAS,EAAE;YACjC,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrF,CAAC,CAAC;QACM,2BAAsB,GAAG,GAAS,EAAE;YAC1C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjE,CAAC,CAAC;QACF,iDAAiD;QACzC,yBAAoB,GAAG,GAAS,EAAE;YACxC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;gBAC5B,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,8BAA8B;aACxC,EAAE,oBAAoB,CAAC,CAAC;QAC3B,CAAC,CAAC;QACM,8BAAyB,GAAG,CAAC,KAGpC,EAAQ,EAAE;YACT,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,WAA8B,EAAE,EAAE;gBACrD,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAA8B,EAAE,EAAE;gBACvD,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC;YAEH,mHAAmH;YACnH,2BAA2B;YAC3B,IAAI,CAAC,QAAQ,CAAC,8BAA8B,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,WAA8B,EAAE,EAAE;gBACxL,OAAO,6BAA6B,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC,CAAC;YAEJ,wGAAwG;YACxG,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,6CAA6C,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,WAA8B,EAAE,EAAE;gBACnL,OAAO,6BAA6B,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC,CAAC;QACN,CAAC,CAAC;QACM,6BAAwB,GAAG,CAAC,KAGnC,EAAQ,EAAE;;YACT,KAAK,MAAM,gBAAgB,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAC3C,MAAM,eAAe,GAAG,gBAAgB,CAAC,eAAe,CAAC;gBACzD,gHAAgH;gBAChH,iFAAiF;gBACjF,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;gBAE9H,oCAAoC;gBACpC,MAAA,IAAI,CAAC,wCAAwC,CAAC,GAAG,CAAC,eAAe,CAAC,0CAAE,WAAW,EAAE,CAAC;gBAClF,IAAI,CAAC,wCAAwC,CAAC,GAAG,CAAC,eAAe,EAAE,IAAI,sCAAsC,CAAC;oBAC5G,MAAM,EAAE,IAAI,CAAC,UAAU;oBACvB,OAAO,EAAE,IAAI,CAAC,QAAQ;oBACtB,gBAAgB,EAAE,gBAAgB;oBAClC,0BAA0B,EAAE,gBAAgB,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;iBAC5E,CAAC,CAAC,CAAC;YACN,CAAC;YACD,KAAK,MAAM,gBAAgB,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC7C,MAAM,eAAe,GAAG,gBAAgB,CAAC,eAAe,CAAC;gBACzD,MAAA,IAAI,CAAC,wCAAwC,CAAC,GAAG,CAAC,eAAe,CAAC,0CAAE,WAAW,EAAE,CAAC;gBAClF,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,6CAA6C,CAAC,gBAAgB,CAAC,CAAC,CAAC;gBACtJ,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;YACvF,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,6CAA6C,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC,CAAC;QAClM,CAAC,CAAC;QACM,4BAAuB,GAAG,GAAS,EAAE;YAC3C,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,gBAAgB,CAAC;YACxF,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAClF,CAAC,CAAC;QAjOA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,UAAU,GAAG;YAChB,MAAM,EAAE,IAAI,CAAC,EAAE;SAChB,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QACxC,IAAI,CAAC,sBAAsB,GAAG,IAAI,+BAA+B,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC;QACtJ,IAAI,CAAC,uBAAuB,GAAG,IAAI,GAAG,EAAiC,CAAC;QACxE,IAAI,CAAC,oBAAoB,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;QAC5H,IAAI,CAAC,kBAAkB,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5F,IAAI,CAAC,wBAAwB,GAAG,IAAI,uBAAuB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;QACxI,IAAI,CAAC,oBAAoB,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;QAC5H,IAAI,CAAC,mBAAmB,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QACzH,IAAI,CAAC,4BAA4B,GAAG,IAAI,2BAA2B,CAAC;YAClE,SAAS,EAAE,IAAI,CAAC,UAAU;YAC1B,OAAO,EAAE,IAAI,CAAC,QAAQ;YACtB,6BAA6B,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC;SAC9E,CAAC,CAAC;QACH,IAAI,CAAC,wCAAwC,GAAG,IAAI,GAAG,EAAE,CAAC;QAC1D,IAAI,CAAC,uBAAuB,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;QACrI,IAAI,CAAC,oBAAoB,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;QAC5H,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAI,MAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,YAAY,0CAAE,iBAAiB,CAAC,SAAS,CAAA,EAAE,CAAC;YACrI,kEAAkE;YAClE,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC,4BAA4B,CAAC,CAAC;YACrE,IAAI,CAAC,wBAAwB,GAAG,IAAI,uBAAuB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;QAC1I,CAAC;QACD,IAAI,CAAC,uBAAuB,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;QAC5J,IAAI,CAAC,sBAAsB,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;QAClI,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IA4ED,2GAA2G;IAC3G,yGAAyG;IACzG,wGAAwG;IACxG,yGAAyG;IACjG,cAAc,CAAC,UAAsB;QAC3C,IAAI,CAAC;YACH,UAAU,EAAE,CAAC;QACf,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAU,EAAE,SAAS,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IACO,sBAAsB,CAAC,WAA8B;;QAC3D,MAAM,cAAc,GAAG,6BAA6B,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC7E,MAAA,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,cAAc,CAAC,0CAAE,WAAW,EAAE,CAAC;QAChE,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,qBAAqB,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAClJ,CAAC;IACO,yBAAyB,CAAC,WAA8B;QAC9D,MAAM,cAAc,GAAG,6BAA6B,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC7E,MAAM,qBAAqB,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC/E,IAAI,qBAAqB,EAAE,CAAC;YAC1B,qBAAqB,CAAC,WAAW,EAAE,CAAC;YACpC,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;CAkGF","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Features, LocalVideoStream, RemoteParticipant } from '@azure/communication-calling';\nimport { toFlatCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { CallCommon } from './BetaToStableTypes';\nimport { CallContext } from './CallContext';\nimport { CallIdRef } from './CallIdRef';\nimport { CaptionsFeatureSubscriber } from './CaptionsSubscriber';\nimport { convertSdkLocalStreamToDeclarativeLocalStream, convertSdkParticipantToDeclarativeParticipant } from './Converter';\nimport { InternalCallContext } from './InternalCallContext';\nimport { LocalVideoStreamVideoEffectsSubscriber } from './LocalVideoStreamVideoEffectsSubscriber';\nimport { ParticipantSubscriber } from './ParticipantSubscriber';\nimport { RecordingSubscriber } from './RecordingSubscriber';\nimport { PPTLiveSubscriber } from './PPTLiveSubscriber';\nimport { disposeView } from './StreamUtils';\nimport { TranscriptionSubscriber } from './TranscriptionSubscriber';\nimport { UserFacingDiagnosticsSubscriber } from './UserFacingDiagnosticsSubscriber';\nimport { RaiseHandSubscriber } from './RaiseHandSubscriber';\nimport { OptimalVideoCountSubscriber } from './OptimalVideoCountSubscriber';\nimport { CapabilitiesSubscriber } from './CapabilitiesSubscriber';\nimport { ReactionSubscriber } from './ReactionSubscriber';\nimport { SpotlightSubscriber } from './SpotlightSubscriber';\nimport { BreakoutRoomsSubscriber } from './BreakoutRoomsSubscriber';\nimport { TogetherModeSubscriber } from './TogetherModeSubscriber';\nimport { MediaAccessSubscriber } from './MediaAccessSubscriber';\nimport { _isTeamsMeeting } from './TypeGuards';\nimport { RealTimeTextSubscriber } from './RealTimeTextSubscriber';\n\n/**\n * Keeps track of the listeners assigned to a particular call because when we get an event from SDK, it doesn't tell us\n * which call it is for. If we keep track of this then we know which call in the state that needs an update and also\n * which property of that call. Also we can use this when unregistering to a call.\n */\nexport class CallSubscriber {\n private _call: CallCommon;\n private _callIdRef: CallIdRef;\n private _context: CallContext;\n private _internalContext: InternalCallContext;\n private _diagnosticsSubscriber: UserFacingDiagnosticsSubscriber;\n private _participantSubscribers: Map<string, ParticipantSubscriber>;\n private _recordingSubscriber: RecordingSubscriber;\n private _transcriptionSubscriber: TranscriptionSubscriber;\n private _pptLiveSubscriber: PPTLiveSubscriber;\n private _optimalVideoCountSubscriber: OptimalVideoCountSubscriber;\n private _CaptionsFeatureSubscriber?: CaptionsFeatureSubscriber;\n private _realTimeTextSubscriber?: RealTimeTextSubscriber;\n private _raiseHandSubscriber?: RaiseHandSubscriber;\n private _reactionSubscriber?: ReactionSubscriber;\n private _localVideoStreamVideoEffectsSubscribers: Map<string, LocalVideoStreamVideoEffectsSubscriber>;\n private _capabilitiesSubscriber: CapabilitiesSubscriber;\n private _spotlightSubscriber: SpotlightSubscriber;\n private _breakoutRoomsSubscriber?: BreakoutRoomsSubscriber;\n private _togetherModeSubscriber: TogetherModeSubscriber;\n private _mediaAccessSubscriber: MediaAccessSubscriber;\n constructor(call: CallCommon, context: CallContext, internalContext: InternalCallContext) {\n this._call = call;\n this._callIdRef = {\n callId: call.id\n };\n this._context = context;\n this._internalContext = internalContext;\n this._diagnosticsSubscriber = new UserFacingDiagnosticsSubscriber(this._callIdRef, this._context, this._call.feature(Features.UserFacingDiagnostics));\n this._participantSubscribers = new Map<string, ParticipantSubscriber>();\n this._recordingSubscriber = new RecordingSubscriber(this._callIdRef, this._context, this._call.feature(Features.Recording));\n this._pptLiveSubscriber = new PPTLiveSubscriber(this._callIdRef, this._context, this._call);\n this._transcriptionSubscriber = new TranscriptionSubscriber(this._callIdRef, this._context, this._call.feature(Features.Transcription));\n this._raiseHandSubscriber = new RaiseHandSubscriber(this._callIdRef, this._context, this._call.feature(Features.RaiseHand));\n this._reactionSubscriber = new ReactionSubscriber(this._callIdRef, this._context, this._call.feature(Features.Reaction));\n this._optimalVideoCountSubscriber = new OptimalVideoCountSubscriber({\n callIdRef: this._callIdRef,\n context: this._context,\n localOptimalVideoCountFeature: this._call.feature(Features.OptimalVideoCount)\n });\n this._localVideoStreamVideoEffectsSubscribers = new Map();\n this._capabilitiesSubscriber = new CapabilitiesSubscriber(this._callIdRef, this._context, this._call.feature(Features.Capabilities));\n this._spotlightSubscriber = new SpotlightSubscriber(this._callIdRef, this._context, this._call.feature(Features.Spotlight));\n if (this._call.feature(Features.Capabilities) && this._call.feature(Features.Capabilities).capabilities?.joinBreakoutRooms.isPresent) {\n // Clear assigned breakout room closed notification for this call.\n this._context.deleteLatestNotification('assignedBreakoutRoomClosed');\n this._breakoutRoomsSubscriber = new BreakoutRoomsSubscriber(this._callIdRef, this._context, this._call.feature(Features.BreakoutRooms));\n }\n this._togetherModeSubscriber = new TogetherModeSubscriber(this._callIdRef, this._context, this._internalContext, this._call.feature(Features.TogetherMode));\n this._mediaAccessSubscriber = new MediaAccessSubscriber(this._callIdRef, this._context, this._call.feature(Features.MediaAccess));\n this.subscribe();\n }\n private _safeSubscribeInitCaptionSubscriber = (): void => {\n this._safeSubscribe(this.initCaptionSubscriber);\n };\n private _safeSubscribeInitTeamsMeetingConference = (): void => {\n this._safeSubscribe(this.initTeamsMeetingConference);\n };\n private _safeSubscribeInitRealTimeText = (): void => {\n this._safeSubscribe(this.initRealTimeText);\n };\n private subscribe = (): void => {\n this._call.on('stateChanged', this.stateChanged);\n this._call.on('stateChanged', this._safeSubscribeInitCaptionSubscriber);\n this._call.on('stateChanged', this._safeSubscribeInitTeamsMeetingConference);\n this._call.on('idChanged', this.idChanged);\n this._call.on('isScreenSharingOnChanged', this.isScreenSharingOnChanged);\n this._call.on('remoteParticipantsUpdated', this.remoteParticipantsUpdated);\n this._call.on('localVideoStreamsUpdated', this.localVideoStreamsUpdated);\n this._call.on('isMutedChanged', this.isMuteChanged);\n this._call.on('roleChanged', this.callRoleChangedHandler);\n this._call.feature(Features.DominantSpeakers).on('dominantSpeakersChanged', this.dominantSpeakersChanged);\n this._call.on('mutedByOthers', this.mutedByOthersHandler);\n this._safeSubscribeInitRealTimeText();\n for (const localVideoStream of this._call.localVideoStreams) {\n this._internalContext.setLocalRenderInfo(this._callIdRef.callId, localVideoStream.mediaStreamType, localVideoStream, 'NotRendered', undefined);\n }\n if (this._call.remoteParticipants.length > 0) {\n this._call.remoteParticipants.forEach((participant: RemoteParticipant) => {\n this.addParticipantListener(participant);\n });\n this._context.setCallRemoteParticipants(this._callIdRef.callId, this._call.remoteParticipants.map(convertSdkParticipantToDeclarativeParticipant), []);\n }\n };\n public unsubscribe = (): void => {\n this._call.off('stateChanged', this.stateChanged);\n this._call.off('stateChanged', this._safeSubscribeInitCaptionSubscriber);\n this._call.off('stateChanged', this._safeSubscribeInitTeamsMeetingConference);\n this._call.off('idChanged', this.idChanged);\n this._call.off('isScreenSharingOnChanged', this.isScreenSharingOnChanged);\n this._call.off('remoteParticipantsUpdated', this.remoteParticipantsUpdated);\n this._call.off('localVideoStreamsUpdated', this.localVideoStreamsUpdated);\n this._call.off('isMutedChanged', this.isMuteChanged);\n this._call.off('roleChanged', this.callRoleChangedHandler);\n this._call.off('mutedByOthers', this.mutedByOthersHandler);\n this._participantSubscribers.forEach((participantSubscriber: ParticipantSubscriber) => {\n participantSubscriber.unsubscribe();\n });\n this._participantSubscribers.clear();\n\n // If we are unsubscribing that means we no longer want to display any video for this call (callEnded or callAgent\n // disposed) and we should not be updating it any more. So if video is rendering we stop rendering.\n for (const localVideoStream of this._call.localVideoStreams) {\n const mediaStreamType = localVideoStream.mediaStreamType;\n disposeView(this._context, this._internalContext, this._callIdRef.callId, undefined, convertSdkLocalStreamToDeclarativeLocalStream(localVideoStream));\n this._internalContext.deleteLocalRenderInfo(this._callIdRef.callId, mediaStreamType);\n }\n this._diagnosticsSubscriber.unsubscribe();\n this._recordingSubscriber.unsubscribe();\n this._transcriptionSubscriber.unsubscribe();\n this._optimalVideoCountSubscriber.unsubscribe();\n this._pptLiveSubscriber.unsubscribe();\n this._CaptionsFeatureSubscriber?.unsubscribe();\n if (this._realTimeTextSubscriber) {\n this._realTimeTextSubscriber.unsubscribe();\n }\n this._raiseHandSubscriber?.unsubscribe();\n this._capabilitiesSubscriber.unsubscribe();\n this._reactionSubscriber?.unsubscribe();\n this._spotlightSubscriber.unsubscribe();\n if (this._call.feature(Features.Capabilities) && this._call.feature(Features.Capabilities).capabilities?.joinBreakoutRooms.isPresent && this._breakoutRoomsSubscriber) {\n this._breakoutRoomsSubscriber.unsubscribe();\n }\n this._togetherModeSubscriber.unsubscribe();\n this._mediaAccessSubscriber.unsubscribe();\n };\n\n // This is a helper function to safely call subscriber functions. This is needed in order to prevent events\n // with the same event type from failing to fire due to a subscriber throwing an error upon subscription.\n // Wrap your listeners with this helper function if your listener can fail due to initialization or fail\n // during a function call. This will prevent other events using the same event type from failing to fire.\n private _safeSubscribe(subscriber: () => void): void {\n try {\n subscriber();\n } catch (e) {\n this._context.teeErrorToState(e as Error, 'Call.on');\n }\n }\n private addParticipantListener(participant: RemoteParticipant): void {\n const participantKey = toFlatCommunicationIdentifier(participant.identifier);\n this._participantSubscribers.get(participantKey)?.unsubscribe();\n this._participantSubscribers.set(participantKey, new ParticipantSubscriber(this._callIdRef, participant, this._context, this._internalContext));\n }\n private removeParticipantListener(participant: RemoteParticipant): void {\n const participantKey = toFlatCommunicationIdentifier(participant.identifier);\n const participantSubscriber = this._participantSubscribers.get(participantKey);\n if (participantSubscriber) {\n participantSubscriber.unsubscribe();\n this._participantSubscribers.delete(participantKey);\n }\n }\n private stateChanged = (): void => {\n this._context.setCallState(this._callIdRef.callId, this._call.state);\n };\n private initCaptionSubscriber = (): void => {\n // subscribe to captions here so that we don't call captions when call is not initialized\n if (this._call.state === 'Connected' && !this._CaptionsFeatureSubscriber) {\n this._CaptionsFeatureSubscriber = new CaptionsFeatureSubscriber(this._callIdRef, this._context, this._call.feature(Features.Captions));\n this._call.off('stateChanged', this._safeSubscribeInitCaptionSubscriber);\n }\n };\n private initTeamsMeetingConference = (): void => {\n if (this._call.state === 'Connected' && _isTeamsMeeting(this._call)) {\n this._call.feature(Features.TeamsMeetingAudioConferencing).getTeamsMeetingAudioConferencingDetails().then(teamsMeetingConferenceDetails => {\n this._context.setTeamsMeetingConference(this._callIdRef.callId, teamsMeetingConferenceDetails);\n });\n this._call.off('stateChanged', this._safeSubscribeInitTeamsMeetingConference);\n }\n };\n private initRealTimeText = (): void => {\n if (this._context.getState().userId.kind !== 'microsoftTeamsUser') {\n this._realTimeTextSubscriber = new RealTimeTextSubscriber(this._callIdRef, this._context, this._call.feature(Features.RealTimeText));\n }\n };\n private idChanged = (): void => {\n this._internalContext.setCallId(this._call.id, this._callIdRef.callId);\n this._context.setCallId(this._call.id, this._callIdRef.callId);\n this._callIdRef.callId = this._call.id;\n };\n private isScreenSharingOnChanged = (): void => {\n this._context.setCallIsScreenSharingOn(this._callIdRef.callId, this._call.isScreenSharingOn);\n };\n private isMuteChanged = (): void => {\n this._context.setCallIsMicrophoneMuted(this._callIdRef.callId, this._call.isMuted);\n };\n private callRoleChangedHandler = (): void => {\n this._context.setRole(this._callIdRef.callId, this._call.role);\n };\n // TODO: Tee to notification state once available\n private mutedByOthersHandler = (): void => {\n this._context.teeErrorToState({\n name: 'mutedByOthers',\n message: 'Muted by another participant'\n }, 'Call.mutedByOthers');\n };\n private remoteParticipantsUpdated = (event: {\n added: RemoteParticipant[];\n removed: RemoteParticipant[];\n }): void => {\n event.added.forEach((participant: RemoteParticipant) => {\n this.addParticipantListener(participant);\n });\n event.removed.forEach((participant: RemoteParticipant) => {\n this.removeParticipantListener(participant);\n });\n\n // Remove any added participants from remoteParticipantsEnded if they are there and add any removed participants to\n // remoteParticipantsEnded.\n this._context.setCallRemoteParticipantsEnded(this._callIdRef.callId, event.removed.map(convertSdkParticipantToDeclarativeParticipant), event.added.map((participant: RemoteParticipant) => {\n return toFlatCommunicationIdentifier(participant.identifier);\n }));\n\n // Add added participants to remoteParticipants and remove removed participants from remoteParticipants.\n this._context.setCallRemoteParticipants(this._callIdRef.callId, event.added.map(convertSdkParticipantToDeclarativeParticipant), event.removed.map((participant: RemoteParticipant) => {\n return toFlatCommunicationIdentifier(participant.identifier);\n }));\n };\n private localVideoStreamsUpdated = (event: {\n added: LocalVideoStream[];\n removed: LocalVideoStream[];\n }): void => {\n for (const localVideoStream of event.added) {\n const mediaStreamType = localVideoStream.mediaStreamType;\n // IMPORTANT: The internalContext should be set before context. This is done to ensure that the internal context\n // has the required data when component re-renders due to external state changes.\n this._internalContext.setLocalRenderInfo(this._callIdRef.callId, mediaStreamType, localVideoStream, 'NotRendered', undefined);\n\n // Subscribe to video effect changes\n this._localVideoStreamVideoEffectsSubscribers.get(mediaStreamType)?.unsubscribe();\n this._localVideoStreamVideoEffectsSubscribers.set(mediaStreamType, new LocalVideoStreamVideoEffectsSubscriber({\n parent: this._callIdRef,\n context: this._context,\n localVideoStream: localVideoStream,\n localVideoStreamEffectsAPI: localVideoStream.feature(Features.VideoEffects)\n }));\n }\n for (const localVideoStream of event.removed) {\n const mediaStreamType = localVideoStream.mediaStreamType;\n this._localVideoStreamVideoEffectsSubscribers.get(mediaStreamType)?.unsubscribe();\n disposeView(this._context, this._internalContext, this._callIdRef.callId, undefined, convertSdkLocalStreamToDeclarativeLocalStream(localVideoStream));\n this._internalContext.deleteLocalRenderInfo(this._callIdRef.callId, mediaStreamType);\n }\n this._context.setCallLocalVideoStream(this._callIdRef.callId, event.added.map(convertSdkLocalStreamToDeclarativeLocalStream), event.removed.map(convertSdkLocalStreamToDeclarativeLocalStream));\n };\n private dominantSpeakersChanged = (): void => {\n const dominantSpeakers = this._call.feature(Features.DominantSpeakers).dominantSpeakers;\n this._context.setCallDominantSpeakers(this._callIdRef.callId, dominantSpeakers);\n };\n}"]}
@@ -110,9 +110,6 @@ export function convertSdkCallToDeclarativeCall(call) {
110
110
  recording: {
111
111
  isRecordingActive: false
112
112
  },
113
- localRecording: {
114
- isLocalRecordingActive: false
115
- },
116
113
  pptLive: {
117
114
  isActive: false
118
115
  },
@@ -1 +1 @@
1
- {"version":3,"file":"Converter.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/Converter.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { RemoteParticipant as SdkRemoteParticipant, RemoteVideoStream as SdkRemoteVideoStream, LocalVideoStream as SdkLocalVideoStream, VideoStreamRendererView, IncomingCall, IncomingCallCommon } from '@azure/communication-calling';\nimport { RealTimeTextInfo as ACSRealTimeTextInfo } from '@azure/communication-calling';\nimport { RealTimeTextInfo } from './CallClientState';\nimport { TogetherModeVideoStream as SdkTogetherModeVideoStream } from '@azure/communication-calling';\nimport { TeamsIncomingCall } from '@azure/communication-calling';\nimport { TeamsCaptionsInfo } from '@azure/communication-calling';\nimport { CaptionsInfo as AcsCaptionsInfo } from '@azure/communication-calling';\nimport { CallKind } from '@azure/communication-calling';\nimport { TeamsCallInfo } from '@azure/communication-calling';\nimport { CallInfo } from '@azure/communication-calling';\nimport { toFlatCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { CallState, RemoteParticipantState as DeclarativeRemoteParticipant, RemoteVideoStreamState as DeclarativeRemoteVideoStream, LocalVideoStreamState as DeclarativeLocalVideoStream, IncomingCallState as DeclarativeIncomingCall, VideoStreamRendererViewState as DeclarativeVideoStreamRendererView, CallInfoState } from './CallClientState';\nimport { CallFeatureStreamState as DeclarativeCallFeatureVideoStream, CallFeatureStreamName } from './CallClientState';\nimport { CaptionsInfo } from './CallClientState';\nimport { TeamsIncomingCallState as DeclarativeTeamsIncomingCall } from './CallClientState';\nimport { _isTeamsIncomingCall } from './TypeGuards';\nimport { _isACSCall } from './TypeGuards';\nimport { _isTeamsCall } from './TypeGuards';\nimport { CallCommon } from './BetaToStableTypes';\nimport { Features } from '@azure/communication-calling';\nimport { VideoEffectName } from '@azure/communication-calling';\nimport { LocalVideoStreamVideoEffectsState } from './CallClientState';\nimport { RaisedHand } from '@azure/communication-calling';\nimport { RaisedHandState } from './CallClientState';\nimport { TeamsMeetingAudioConferencingDetails } from '@azure/communication-calling';\nimport { ConferencePhoneInfo } from './CallClientState';\n\n/**\n * @private\n */\nexport function convertSdkLocalStreamToDeclarativeLocalStream(stream: SdkLocalVideoStream): DeclarativeLocalVideoStream {\n const localVideoStreamEffectsAPI = stream.feature(Features.VideoEffects);\n return {\n source: stream.source,\n mediaStreamType: stream.mediaStreamType,\n view: undefined,\n videoEffects: convertFromSDKToDeclarativeVideoStreamVideoEffects(localVideoStreamEffectsAPI.activeEffects)\n };\n}\n\n/**\n * @private\n */\nexport function convertSdkRemoteStreamToDeclarativeRemoteStream(stream: SdkRemoteVideoStream): DeclarativeRemoteVideoStream {\n return {\n id: stream.id,\n mediaStreamType: stream.mediaStreamType,\n isAvailable: stream.isAvailable,\n isReceiving: stream.isReceiving,\n view: undefined,\n streamSize: stream.size\n };\n}\n\n/**\n * @private\n */\nexport function convertSdkCallFeatureStreamToDeclarativeCallFeatureStream(stream: SdkTogetherModeVideoStream, featureName: CallFeatureStreamName): DeclarativeCallFeatureVideoStream {\n return {\n feature: featureName,\n id: stream.id,\n mediaStreamType: stream.mediaStreamType,\n isAvailable: stream.isAvailable,\n isReceiving: stream.isReceiving,\n view: undefined,\n streamSize: stream.size\n };\n}\n\n/**\n * @private\n */\nexport function convertSdkParticipantToDeclarativeParticipant(participant: SdkRemoteParticipant): DeclarativeRemoteParticipant {\n const declarativeVideoStreams: {\n [key: number]: DeclarativeRemoteVideoStream;\n } = {};\n for (const videoStream of participant.videoStreams) {\n declarativeVideoStreams[videoStream.id] = convertSdkRemoteStreamToDeclarativeRemoteStream(videoStream);\n }\n return {\n identifier: participant.identifier,\n displayName: participant.displayName,\n state: participant.state,\n callEndReason: participant.callEndReason,\n videoStreams: declarativeVideoStreams,\n isMuted: participant.isMuted,\n isSpeaking: participant.isSpeaking,\n raisedHand: undefined,\n role: participant.role,\n spotlight: undefined,\n mediaAccess: undefined\n };\n}\n\n/**\n * @private\n *\n * Note at the time of writing only one LocalVideoStream is supported by the SDK.\n */\nexport function convertSdkCallToDeclarativeCall(call: CallCommon): CallState {\n const declarativeRemoteParticipants: {\n [key: string]: DeclarativeRemoteParticipant;\n } = {};\n call.remoteParticipants.forEach((participant: SdkRemoteParticipant) => {\n declarativeRemoteParticipants[toFlatCommunicationIdentifier(participant.identifier)] = convertSdkParticipantToDeclarativeParticipant(participant);\n });\n let hideAttendeeNames = false;\n if (call.feature(Features.Capabilities).capabilities && call.feature(Features.Capabilities).capabilities.viewAttendeeNames) {\n const viewAttendeeNames = call.feature(Features.Capabilities).capabilities.viewAttendeeNames;\n if (!viewAttendeeNames.isPresent && viewAttendeeNames.reason === 'MeetingRestricted') {\n hideAttendeeNames = true;\n }\n }\n let callInfo: TeamsCallInfo | undefined | CallInfo;\n if ('info' in call) {\n callInfo = call.info as TeamsCallInfo | undefined | CallInfo;\n }\n return {\n id: call.id,\n kind: _isACSCall(call) ? 'Call' as CallKind : 'TeamsCall' as CallKind,\n callerInfo: call.callerInfo,\n state: call.state,\n callEndReason: call.callEndReason,\n diagnostics: {\n network: {\n latest: {}\n },\n media: {\n latest: {}\n }\n },\n direction: call.direction,\n isMuted: call.isMuted,\n isScreenSharingOn: call.isScreenSharingOn,\n localVideoStreams: call.localVideoStreams.map(convertSdkLocalStreamToDeclarativeLocalStream),\n remoteParticipants: declarativeRemoteParticipants,\n remoteParticipantsEnded: {},\n recording: {\n isRecordingActive: false\n },\n localRecording: {\n isLocalRecordingActive: false\n },\n pptLive: {\n isActive: false\n },\n raiseHand: {\n raisedHands: []\n },\n togetherMode: {\n isActive: false,\n streams: {},\n seatingPositions: {}\n },\n localParticipantReaction: undefined,\n transcription: {\n isTranscriptionActive: false\n },\n screenShareRemoteParticipant: undefined,\n startTime: new Date(),\n endTime: undefined,\n role: call.role,\n captionsFeature: {\n captions: [],\n supportedSpokenLanguages: [],\n supportedCaptionLanguages: [],\n currentCaptionLanguage: '',\n currentSpokenLanguage: '',\n isCaptionsFeatureActive: false,\n startCaptionsInProgress: false,\n captionsKind: _isTeamsCall(call) ? 'TeamsCaptions' : 'Captions'\n },\n realTimeTextFeature: {\n realTimeTexts: {},\n isRealTimeTextFeatureActive: false\n },\n transfer: {\n acceptedTransfers: {}\n },\n optimalVideoCount: {\n maxRemoteVideoStreams: call.feature(Features.OptimalVideoCount).optimalVideoCount\n },\n hideAttendeeNames,\n info: callInfo,\n meetingConference: {\n conferencePhones: []\n }\n };\n}\n\n/**\n * @private\n */\nexport function convertSdkIncomingCallToDeclarativeIncomingCall(call: IncomingCallCommon): DeclarativeIncomingCall | DeclarativeTeamsIncomingCall {\n if (_isTeamsIncomingCall(call)) {\n const newInfo: CallInfoState = {\n ...(call as TeamsIncomingCall).info,\n kind: call.kind\n };\n return {\n id: call.id,\n info: newInfo,\n callerInfo: call.callerInfo,\n startTime: new Date(),\n endTime: undefined\n };\n } else {\n const newInfo: CallInfoState = {\n ...(call as IncomingCall).info,\n kind: call.kind\n };\n return {\n id: call.id,\n info: newInfo,\n callerInfo: call.callerInfo,\n startTime: new Date(),\n endTime: undefined\n };\n }\n const newInfo: CallInfoState = {\n ...(call as IncomingCall).info,\n kind: call.kind\n };\n return {\n id: call.id,\n info: newInfo,\n callerInfo: call.callerInfo,\n startTime: new Date(),\n endTime: undefined\n };\n}\n\n/**\n * @private\n */\nexport function convertFromSDKToDeclarativeVideoStreamRendererView(view: VideoStreamRendererView): DeclarativeVideoStreamRendererView {\n return {\n scalingMode: view.scalingMode,\n isMirrored: view.isMirrored,\n target: view.target\n };\n}\n\n/**\n * @private\n */\nexport function convertFromTeamsSDKToCaptionInfoState(caption: TeamsCaptionsInfo): CaptionsInfo {\n return {\n ...caption\n };\n}\n\n/**\n * @private\n */\nexport function convertFromSDKToCaptionInfoState(caption: AcsCaptionsInfo): CaptionsInfo {\n return {\n captionText: caption.spokenText,\n ...caption\n };\n}\n\n/**\n * @private\n */\nexport function convertFromSDKRealTimeTextToRealTimeTextInfoState(realTimeText: ACSRealTimeTextInfo): RealTimeTextInfo {\n return {\n message: realTimeText.text,\n isMe: realTimeText.isLocal,\n ...realTimeText\n };\n}\n\n/** @private */\nexport function convertFromSDKToDeclarativeVideoStreamVideoEffects(videoEffects: VideoEffectName[]): LocalVideoStreamVideoEffectsState {\n return {\n activeEffects: videoEffects\n };\n}\n\n/**\n * @private\n */\nexport function convertFromSDKToRaisedHandState(raisedHand: RaisedHand): RaisedHandState {\n return {\n raisedHandOrderPosition: raisedHand.order\n };\n}\n\n/** @private */\nexport function convertConferencePhoneInfo(meetingConferencePhoneInfo?: TeamsMeetingAudioConferencingDetails): ConferencePhoneInfo[] {\n if (!meetingConferencePhoneInfo) {\n return [];\n }\n return meetingConferencePhoneInfo.phoneNumbers.flatMap(phoneNumber => {\n const common = {\n conferenceId: meetingConferencePhoneInfo.phoneConferenceId,\n country: phoneNumber.countryName,\n city: phoneNumber.cityName,\n phoneNumber: '',\n isTollFree: false\n };\n const toll = Object.assign({}, common);\n toll.phoneNumber = phoneNumber.tollPhoneNumber?.phoneNumber ?? '';\n toll.isTollFree = false;\n const tollFree = Object.assign({}, common);\n tollFree.phoneNumber = phoneNumber.tollFreePhoneNumber?.phoneNumber ?? '';\n tollFree.isTollFree = true;\n return [toll, tollFree].filter(phoneInfo => phoneInfo.phoneNumber);\n });\n}"]}
1
+ {"version":3,"file":"Converter.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/Converter.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { RemoteParticipant as SdkRemoteParticipant, RemoteVideoStream as SdkRemoteVideoStream, LocalVideoStream as SdkLocalVideoStream, VideoStreamRendererView, IncomingCall, IncomingCallCommon } from '@azure/communication-calling';\nimport { RealTimeTextInfo as ACSRealTimeTextInfo } from '@azure/communication-calling';\nimport { RealTimeTextInfo } from './CallClientState';\nimport { TogetherModeVideoStream as SdkTogetherModeVideoStream } from '@azure/communication-calling';\nimport { TeamsIncomingCall } from '@azure/communication-calling';\nimport { TeamsCaptionsInfo } from '@azure/communication-calling';\nimport { CaptionsInfo as AcsCaptionsInfo } from '@azure/communication-calling';\nimport { CallKind } from '@azure/communication-calling';\nimport { TeamsCallInfo } from '@azure/communication-calling';\nimport { toFlatCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { CallState, RemoteParticipantState as DeclarativeRemoteParticipant, RemoteVideoStreamState as DeclarativeRemoteVideoStream, LocalVideoStreamState as DeclarativeLocalVideoStream, IncomingCallState as DeclarativeIncomingCall, VideoStreamRendererViewState as DeclarativeVideoStreamRendererView, CallInfoState } from './CallClientState';\nimport { CallFeatureStreamState as DeclarativeCallFeatureVideoStream, CallFeatureStreamName } from './CallClientState';\nimport { CaptionsInfo } from './CallClientState';\nimport { TeamsIncomingCallState as DeclarativeTeamsIncomingCall } from './CallClientState';\nimport { _isTeamsIncomingCall } from './TypeGuards';\nimport { _isACSCall } from './TypeGuards';\nimport { _isTeamsCall } from './TypeGuards';\nimport { CallCommon } from './BetaToStableTypes';\nimport { Features } from '@azure/communication-calling';\nimport { VideoEffectName } from '@azure/communication-calling';\nimport { LocalVideoStreamVideoEffectsState } from './CallClientState';\nimport { RaisedHand } from '@azure/communication-calling';\nimport { RaisedHandState } from './CallClientState';\nimport { TeamsMeetingAudioConferencingDetails } from '@azure/communication-calling';\nimport { ConferencePhoneInfo } from './CallClientState';\n\n/**\n * @private\n */\nexport function convertSdkLocalStreamToDeclarativeLocalStream(stream: SdkLocalVideoStream): DeclarativeLocalVideoStream {\n const localVideoStreamEffectsAPI = stream.feature(Features.VideoEffects);\n return {\n source: stream.source,\n mediaStreamType: stream.mediaStreamType,\n view: undefined,\n videoEffects: convertFromSDKToDeclarativeVideoStreamVideoEffects(localVideoStreamEffectsAPI.activeEffects)\n };\n}\n\n/**\n * @private\n */\nexport function convertSdkRemoteStreamToDeclarativeRemoteStream(stream: SdkRemoteVideoStream): DeclarativeRemoteVideoStream {\n return {\n id: stream.id,\n mediaStreamType: stream.mediaStreamType,\n isAvailable: stream.isAvailable,\n isReceiving: stream.isReceiving,\n view: undefined,\n streamSize: stream.size\n };\n}\n\n/**\n * @private\n */\nexport function convertSdkCallFeatureStreamToDeclarativeCallFeatureStream(stream: SdkTogetherModeVideoStream, featureName: CallFeatureStreamName): DeclarativeCallFeatureVideoStream {\n return {\n feature: featureName,\n id: stream.id,\n mediaStreamType: stream.mediaStreamType,\n isAvailable: stream.isAvailable,\n isReceiving: stream.isReceiving,\n view: undefined,\n streamSize: stream.size\n };\n}\n\n/**\n * @private\n */\nexport function convertSdkParticipantToDeclarativeParticipant(participant: SdkRemoteParticipant): DeclarativeRemoteParticipant {\n const declarativeVideoStreams: {\n [key: number]: DeclarativeRemoteVideoStream;\n } = {};\n for (const videoStream of participant.videoStreams) {\n declarativeVideoStreams[videoStream.id] = convertSdkRemoteStreamToDeclarativeRemoteStream(videoStream);\n }\n return {\n identifier: participant.identifier,\n displayName: participant.displayName,\n state: participant.state,\n callEndReason: participant.callEndReason,\n videoStreams: declarativeVideoStreams,\n isMuted: participant.isMuted,\n isSpeaking: participant.isSpeaking,\n raisedHand: undefined,\n role: participant.role,\n spotlight: undefined,\n mediaAccess: undefined\n };\n}\n\n/**\n * @private\n *\n * Note at the time of writing only one LocalVideoStream is supported by the SDK.\n */\nexport function convertSdkCallToDeclarativeCall(call: CallCommon): CallState {\n const declarativeRemoteParticipants: {\n [key: string]: DeclarativeRemoteParticipant;\n } = {};\n call.remoteParticipants.forEach((participant: SdkRemoteParticipant) => {\n declarativeRemoteParticipants[toFlatCommunicationIdentifier(participant.identifier)] = convertSdkParticipantToDeclarativeParticipant(participant);\n });\n let hideAttendeeNames = false;\n if (call.feature(Features.Capabilities).capabilities && call.feature(Features.Capabilities).capabilities.viewAttendeeNames) {\n const viewAttendeeNames = call.feature(Features.Capabilities).capabilities.viewAttendeeNames;\n if (!viewAttendeeNames.isPresent && viewAttendeeNames.reason === 'MeetingRestricted') {\n hideAttendeeNames = true;\n }\n }\n let callInfo: TeamsCallInfo | undefined;\n if ('info' in call) {\n callInfo = call.info as TeamsCallInfo | undefined;\n }\n return {\n id: call.id,\n kind: _isACSCall(call) ? 'Call' as CallKind : 'TeamsCall' as CallKind,\n callerInfo: call.callerInfo,\n state: call.state,\n callEndReason: call.callEndReason,\n diagnostics: {\n network: {\n latest: {}\n },\n media: {\n latest: {}\n }\n },\n direction: call.direction,\n isMuted: call.isMuted,\n isScreenSharingOn: call.isScreenSharingOn,\n localVideoStreams: call.localVideoStreams.map(convertSdkLocalStreamToDeclarativeLocalStream),\n remoteParticipants: declarativeRemoteParticipants,\n remoteParticipantsEnded: {},\n recording: {\n isRecordingActive: false\n },\n pptLive: {\n isActive: false\n },\n raiseHand: {\n raisedHands: []\n },\n togetherMode: {\n isActive: false,\n streams: {},\n seatingPositions: {}\n },\n localParticipantReaction: undefined,\n transcription: {\n isTranscriptionActive: false\n },\n screenShareRemoteParticipant: undefined,\n startTime: new Date(),\n endTime: undefined,\n role: call.role,\n captionsFeature: {\n captions: [],\n supportedSpokenLanguages: [],\n supportedCaptionLanguages: [],\n currentCaptionLanguage: '',\n currentSpokenLanguage: '',\n isCaptionsFeatureActive: false,\n startCaptionsInProgress: false,\n captionsKind: _isTeamsCall(call) ? 'TeamsCaptions' : 'Captions'\n },\n realTimeTextFeature: {\n realTimeTexts: {},\n isRealTimeTextFeatureActive: false\n },\n transfer: {\n acceptedTransfers: {}\n },\n optimalVideoCount: {\n maxRemoteVideoStreams: call.feature(Features.OptimalVideoCount).optimalVideoCount\n },\n hideAttendeeNames,\n info: callInfo,\n meetingConference: {\n conferencePhones: []\n }\n };\n}\n\n/**\n * @private\n */\nexport function convertSdkIncomingCallToDeclarativeIncomingCall(call: IncomingCallCommon): DeclarativeIncomingCall | DeclarativeTeamsIncomingCall {\n if (_isTeamsIncomingCall(call)) {\n const newInfo: CallInfoState = {\n ...(call as TeamsIncomingCall).info,\n kind: call.kind\n };\n return {\n id: call.id,\n info: newInfo,\n callerInfo: call.callerInfo,\n startTime: new Date(),\n endTime: undefined\n };\n } else {\n const newInfo: CallInfoState = {\n ...(call as IncomingCall).info,\n kind: call.kind\n };\n return {\n id: call.id,\n info: newInfo,\n callerInfo: call.callerInfo,\n startTime: new Date(),\n endTime: undefined\n };\n }\n const newInfo: CallInfoState = {\n ...(call as IncomingCall).info,\n kind: call.kind\n };\n return {\n id: call.id,\n info: newInfo,\n callerInfo: call.callerInfo,\n startTime: new Date(),\n endTime: undefined\n };\n}\n\n/**\n * @private\n */\nexport function convertFromSDKToDeclarativeVideoStreamRendererView(view: VideoStreamRendererView): DeclarativeVideoStreamRendererView {\n return {\n scalingMode: view.scalingMode,\n isMirrored: view.isMirrored,\n target: view.target\n };\n}\n\n/**\n * @private\n */\nexport function convertFromTeamsSDKToCaptionInfoState(caption: TeamsCaptionsInfo): CaptionsInfo {\n return {\n ...caption\n };\n}\n\n/**\n * @private\n */\nexport function convertFromSDKToCaptionInfoState(caption: AcsCaptionsInfo): CaptionsInfo {\n return {\n captionText: caption.spokenText,\n ...caption\n };\n}\n\n/**\n * @private\n */\nexport function convertFromSDKRealTimeTextToRealTimeTextInfoState(realTimeText: ACSRealTimeTextInfo): RealTimeTextInfo {\n return {\n message: realTimeText.text,\n isMe: realTimeText.isLocal,\n ...realTimeText\n };\n}\n\n/** @private */\nexport function convertFromSDKToDeclarativeVideoStreamVideoEffects(videoEffects: VideoEffectName[]): LocalVideoStreamVideoEffectsState {\n return {\n activeEffects: videoEffects\n };\n}\n\n/**\n * @private\n */\nexport function convertFromSDKToRaisedHandState(raisedHand: RaisedHand): RaisedHandState {\n return {\n raisedHandOrderPosition: raisedHand.order\n };\n}\n\n/** @private */\nexport function convertConferencePhoneInfo(meetingConferencePhoneInfo?: TeamsMeetingAudioConferencingDetails): ConferencePhoneInfo[] {\n if (!meetingConferencePhoneInfo) {\n return [];\n }\n return meetingConferencePhoneInfo.phoneNumbers.flatMap(phoneNumber => {\n const common = {\n conferenceId: meetingConferencePhoneInfo.phoneConferenceId,\n country: phoneNumber.countryName,\n city: phoneNumber.cityName,\n phoneNumber: '',\n isTollFree: false\n };\n const toll = Object.assign({}, common);\n toll.phoneNumber = phoneNumber.tollPhoneNumber?.phoneNumber ?? '';\n toll.isTollFree = false;\n const tollFree = Object.assign({}, common);\n tollFree.phoneNumber = phoneNumber.tollFreePhoneNumber?.phoneNumber ?? '';\n tollFree.isTollFree = true;\n return [toll, tollFree].filter(phoneInfo => phoneInfo.phoneNumber);\n });\n}"]}
@@ -12,6 +12,5 @@ export declare class RecordingSubscriber {
12
12
  private subscribe;
13
13
  unsubscribe: () => void;
14
14
  private isAvailableChanged;
15
- private isRecordingsUpdated;
16
15
  }
17
16
  //# sourceMappingURL=RecordingSubscriber.d.ts.map
@@ -7,26 +7,20 @@ export class RecordingSubscriber {
7
7
  constructor(callIdRef, context, recording) {
8
8
  this.subscribe = () => {
9
9
  this._recording.on('isRecordingActiveChanged', this.isAvailableChanged);
10
- this._recording.on('recordingsUpdated', this.isRecordingsUpdated);
11
10
  };
12
11
  this.unsubscribe = () => {
13
12
  this._recording.off('isRecordingActiveChanged', this.isAvailableChanged);
14
- this._recording.off('recordingsUpdated', this.isRecordingsUpdated);
15
13
  };
16
14
  this.isAvailableChanged = () => {
17
15
  this._context.setCallRecordingActive(this._callIdRef.callId, this._recording.isRecordingActive);
18
16
  };
19
- this.isRecordingsUpdated = (data) => {
20
- this._context.setCallRecordingInfos(this._callIdRef.callId, this._recording.recordings, data.removed);
21
- };
22
17
  this._callIdRef = callIdRef;
23
18
  this._context = context;
24
19
  this._recording = recording;
25
20
  // If recording as already started when we joined the call, make sure it is reflected in state as there may not
26
21
  // be an event for it.
27
22
  if (this._recording.isRecordingActive) {
28
- this._context.setCallRecordingActive(this._callIdRef.callId, this._recording.isRecordingActive); // recordings getter only returns a list of active recordings, so we can set the list of recordings here
29
- this._context.setCallRecordingInfos(this._callIdRef.callId, this._recording.recordings, []);
23
+ this._context.setCallRecordingActive(this._callIdRef.callId, this._recording.isRecordingActive);
30
24
  }
31
25
  this.subscribe();
32
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RecordingSubscriber.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/RecordingSubscriber.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAOlC;;GAEG;AACH,MAAM,OAAO,mBAAmB;IAI9B,YAAY,SAAoB,EAAE,OAAoB,EAAE,SAA+B;QAa/E,cAAS,GAAG,GAAS,EAAE;YAC7B,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,0BAA0B,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACxE,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACpE,CAAC,CAAC;QACK,gBAAW,GAAG,GAAS,EAAE;YAC9B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,0BAA0B,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACzE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACrE,CAAC,CAAC;QACM,uBAAkB,GAAG,GAAS,EAAE;YACtC,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAClG,CAAC,CAAC;QACM,wBAAmB,GAAG,CAAC,IAG9B,EAAQ,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACxG,CAAC,CAAC;QA5BA,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAE5B,+GAA+G;QAC/G,sBAAsB;QACtB,IAAI,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC;YACtC,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,wGAAwG;YACzM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAC9F,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;CAkBF","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { RecordingCallFeature } from '@azure/communication-calling';\nimport { CallContext } from './CallContext';\nimport { CallIdRef } from './CallIdRef';\nimport { RecordingInfo } from '@azure/communication-calling';\n\n/**\n * @private\n */\nexport class RecordingSubscriber {\n private _callIdRef: CallIdRef;\n private _context: CallContext;\n private _recording: RecordingCallFeature;\n constructor(callIdRef: CallIdRef, context: CallContext, recording: RecordingCallFeature) {\n this._callIdRef = callIdRef;\n this._context = context;\n this._recording = recording;\n\n // If recording as already started when we joined the call, make sure it is reflected in state as there may not\n // be an event for it.\n if (this._recording.isRecordingActive) {\n this._context.setCallRecordingActive(this._callIdRef.callId, this._recording.isRecordingActive); // recordings getter only returns a list of active recordings, so we can set the list of recordings here\n this._context.setCallRecordingInfos(this._callIdRef.callId, this._recording.recordings, []);\n }\n this.subscribe();\n }\n private subscribe = (): void => {\n this._recording.on('isRecordingActiveChanged', this.isAvailableChanged);\n this._recording.on('recordingsUpdated', this.isRecordingsUpdated);\n };\n public unsubscribe = (): void => {\n this._recording.off('isRecordingActiveChanged', this.isAvailableChanged);\n this._recording.off('recordingsUpdated', this.isRecordingsUpdated);\n };\n private isAvailableChanged = (): void => {\n this._context.setCallRecordingActive(this._callIdRef.callId, this._recording.isRecordingActive);\n };\n private isRecordingsUpdated = (data: {\n added: RecordingInfo[];\n removed: RecordingInfo[];\n }): void => {\n this._context.setCallRecordingInfos(this._callIdRef.callId, this._recording.recordings, data.removed);\n };\n}"]}
1
+ {"version":3,"file":"RecordingSubscriber.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/RecordingSubscriber.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAKlC;;GAEG;AACH,MAAM,OAAO,mBAAmB;IAI9B,YAAY,SAAoB,EAAE,OAAoB,EAAE,SAA+B;QAY/E,cAAS,GAAG,GAAS,EAAE;YAC7B,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,0BAA0B,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC1E,CAAC,CAAC;QACK,gBAAW,GAAG,GAAS,EAAE;YAC9B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,0BAA0B,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC3E,CAAC,CAAC;QACM,uBAAkB,GAAG,GAAS,EAAE;YACtC,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAClG,CAAC,CAAC;QAnBA,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAE5B,+GAA+G;QAC/G,sBAAsB;QACtB,IAAI,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC;YACtC,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAClG,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;CAUF","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { RecordingCallFeature } from '@azure/communication-calling';\nimport { CallContext } from './CallContext';\nimport { CallIdRef } from './CallIdRef';\n/**\n * @private\n */\nexport class RecordingSubscriber {\n private _callIdRef: CallIdRef;\n private _context: CallContext;\n private _recording: RecordingCallFeature;\n constructor(callIdRef: CallIdRef, context: CallContext, recording: RecordingCallFeature) {\n this._callIdRef = callIdRef;\n this._context = context;\n this._recording = recording;\n\n // If recording as already started when we joined the call, make sure it is reflected in state as there may not\n // be an event for it.\n if (this._recording.isRecordingActive) {\n this._context.setCallRecordingActive(this._callIdRef.callId, this._recording.isRecordingActive);\n }\n this.subscribe();\n }\n private subscribe = (): void => {\n this._recording.on('isRecordingActiveChanged', this.isAvailableChanged);\n };\n public unsubscribe = (): void => {\n this._recording.off('isRecordingActiveChanged', this.isAvailableChanged);\n };\n private isAvailableChanged = (): void => {\n this._context.setCallRecordingActive(this._callIdRef.callId, this._recording.isRecordingActive);\n };\n}"]}
@@ -1,27 +1,10 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT License.
3
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
4
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
5
- return new (P || (P = Promise))(function (resolve, reject) {
6
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
8
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
9
- step((generator = generator.apply(thisArg, _arguments || [])).next());
10
- });
11
- };
12
3
  import { ProxyCallCommon } from './CallDeclarativeCommon';
13
4
  class ProxyTeamsCall extends ProxyCallCommon {
14
5
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
15
6
  get(target, prop) {
16
7
  switch (prop) {
17
- case 'addParticipant':
18
- {
19
- return this.getContext().withAsyncErrorTeedToState(function (...args) {
20
- return __awaiter(this, void 0, void 0, function* () {
21
- return yield target.addParticipant(...args);
22
- });
23
- }, 'TeamsCall.addParticipant');
24
- }
25
8
  default:
26
9
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
27
10
  return super.get(target, prop);
@@ -1 +1 @@
1
- {"version":3,"file":"TeamsCallDeclarative.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/TeamsCallDeclarative.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;;;;;;;;;;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAc1D,MAAM,cAAe,SAAQ,eAAe;IAC1C,8DAA8D;IACvD,GAAG,CAA4B,MAAiB,EAAE,IAAO;QAC9D,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,gBAAgB;gBACnB,CAAC;oBACC,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,yBAAyB,CAAC,UAAgB,GAAG,IAA6C;;4BACjH,OAAO,MAAM,MAAM,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,CAAC;wBAC9C,CAAC;qBAAA,EAAE,0BAA0B,CAAC,CAAC;gBACjC,CAAC;YACH;gBACE,8DAA8D;gBAC9D,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAW,CAAC,CAAC;QAC1C,CAAC;QACD,8DAA8D;QAC9D,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAW,CAAC,CAAC;IACxC,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,IAAe,EAAE,OAAoB,EAAwB,EAAE;IAClG,MAAM,SAAS,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;IAC9C,SAAS,CAAC,WAAW,EAAE,CAAC;IACxB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE;QACzC,YAAY,EAAE,KAAK;QACnB,KAAK,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE;KACrC,CAAC,CAAC;IACH,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,SAAS,CAAyB,CAAC;AAC5D,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { ProxyCallCommon } from './CallDeclarativeCommon';\nimport { CallContext } from './CallContext';\nimport { TeamsCall } from './BetaToStableTypes';\n\n/**\n *\n * @public\n */\nexport type DeclarativeTeamsCall = TeamsCall & {\n /**\n * Stop any declarative specific subscriptions and remove declarative subscribers.\n */\n unsubscribe(): void;\n};\nclass ProxyTeamsCall extends ProxyCallCommon implements ProxyHandler<TeamsCall> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public get<P extends keyof TeamsCall>(target: TeamsCall, prop: P): any {\n switch (prop) {\n case 'addParticipant':\n {\n return this.getContext().withAsyncErrorTeedToState(async function (...args: Parameters<TeamsCall['addParticipant']>) {\n return await target.addParticipant(...args);\n }, 'TeamsCall.addParticipant');\n }\n default:\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return super.get(target, prop as any);\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return super.get(target, prop as any);\n }\n}\n\n/**\n * Creates a declarative Call by proxying Call with ProxyCall.\n * This should only be used with CallAgentDeclarative as CallAgentDeclarative will add that\n * call to the context properly (need to have the Call in context to update it - CallAgentDeclarative will add Call to\n * context)\n *\n * @param call - TeamsCall from SDK\n * @param context - CallContext from StatefulCallClient\n */\nexport const teamsCallDeclaratify = (call: TeamsCall, context: CallContext): DeclarativeTeamsCall => {\n const proxyCall = new ProxyTeamsCall(context);\n proxyCall.unsubscribe();\n Object.defineProperty(call, 'unsubscribe', {\n configurable: false,\n value: () => proxyCall.unsubscribe()\n });\n return new Proxy(call, proxyCall) as DeclarativeTeamsCall;\n};"]}
1
+ {"version":3,"file":"TeamsCallDeclarative.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/TeamsCallDeclarative.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAc1D,MAAM,cAAe,SAAQ,eAAe;IAC1C,8DAA8D;IACvD,GAAG,CAA4B,MAAiB,EAAE,IAAO;QAC9D,QAAQ,IAAI,EAAE,CAAC;YACb;gBACE,8DAA8D;gBAC9D,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAW,CAAC,CAAC;QAC1C,CAAC;QACD,8DAA8D;QAC9D,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAW,CAAC,CAAC;IACxC,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,IAAe,EAAE,OAAoB,EAAwB,EAAE;IAClG,MAAM,SAAS,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;IAC9C,SAAS,CAAC,WAAW,EAAE,CAAC;IACxB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE;QACzC,YAAY,EAAE,KAAK;QACnB,KAAK,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE;KACrC,CAAC,CAAC;IACH,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,SAAS,CAAyB,CAAC;AAC5D,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { ProxyCallCommon } from './CallDeclarativeCommon';\nimport { CallContext } from './CallContext';\nimport { TeamsCall } from './BetaToStableTypes';\n\n/**\n *\n * @public\n */\nexport type DeclarativeTeamsCall = TeamsCall & {\n /**\n * Stop any declarative specific subscriptions and remove declarative subscribers.\n */\n unsubscribe(): void;\n};\nclass ProxyTeamsCall extends ProxyCallCommon implements ProxyHandler<TeamsCall> {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n public get<P extends keyof TeamsCall>(target: TeamsCall, prop: P): any {\n switch (prop) {\n default:\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return super.get(target, prop as any);\n }\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return super.get(target, prop as any);\n }\n}\n\n/**\n * Creates a declarative Call by proxying Call with ProxyCall.\n * This should only be used with CallAgentDeclarative as CallAgentDeclarative will add that\n * call to the context properly (need to have the Call in context to update it - CallAgentDeclarative will add Call to\n * context)\n *\n * @param call - TeamsCall from SDK\n * @param context - CallContext from StatefulCallClient\n */\nexport const teamsCallDeclaratify = (call: TeamsCall, context: CallContext): DeclarativeTeamsCall => {\n const proxyCall = new ProxyTeamsCall(context);\n proxyCall.unsubscribe();\n Object.defineProperty(call, 'unsubscribe', {\n configurable: false,\n value: () => proxyCall.unsubscribe()\n });\n return new Proxy(call, proxyCall) as DeclarativeTeamsCall;\n};"]}
@@ -19,7 +19,6 @@ export type { OptimalVideoCountFeatureState } from './CallClientState';
19
19
  export type { PPTLiveCallFeatureState } from './CallClientState';
20
20
  export type { ReactionState } from './CallClientState';
21
21
  export type { SpotlightCallFeatureState, SpotlightState } from './CallClientState';
22
- export type { LocalRecordingCallFeatureState } from './CallClientState';
23
22
  export type { ConferencePhoneInfo } from './CallClientState';
24
23
  export type { BreakoutRoomsState } from './CallClientState';
25
24
  export type { MediaAccessState } from './CallClientState';
@@ -1 +1 @@
1
- {"version":3,"file":"index-public.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/index-public.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport { createStatefulCallClient } from './StatefulCallClient';\nexport type { StatefulCallClient, StatefulCallClientArgs, StatefulCallClientOptions } from './StatefulCallClient';\nexport type { StatefulDeviceManager } from './DeviceManagerDeclarative';\nexport type { CallAgentState, CallClientState, CallError, CallErrors, CallErrorTarget, CallState, DeviceManagerState, DiagnosticsCallFeatureState, IncomingCallState, LocalVideoStreamState, MediaDiagnosticsState, NetworkDiagnosticsState, RecordingCallFeatureState as RecordingCallFeature, RemoteParticipantState, RemoteVideoStreamState, TranscriptionCallFeatureState as TranscriptionCallFeature, VideoStreamRendererViewState, CallInfoState } from './CallClientState';\nexport type { CallNotification, CallNotifications, NotificationTarget } from './CallClientState';\nexport type { TeamsIncomingCallState } from './CallClientState';\nexport type { CreateViewResult } from './StreamUtils';\nexport type { RaiseHandCallFeatureState as RaiseHandCallFeature } from './CallClientState';\nexport type { CallFeatureStreamState, TogetherModeSeatingPositionState, CallFeatureStreamName, TogetherModeStreamsState, TogetherModeParticipantSeatingState, TogetherModeCallFeatureState } from './CallClientState';\nexport type { RaisedHandState } from './CallClientState';\nexport type { DeclarativeCallAgent, IncomingCallManagement } from './CallAgentDeclarative';\nexport type { DeclarativeTeamsCallAgent } from './TeamsCallAgentDeclarative';\nexport type { TeamsIncomingCallManagement } from './TeamsCallAgentDeclarative';\nexport type { LocalVideoStreamVideoEffectsState } from './CallClientState';\nexport type { CapabilitiesFeatureState } from './CallClientState';\nexport type { CaptionsCallFeatureState, CaptionsInfo } from './CallClientState';\nexport type { AcceptedTransfer, TransferFeatureState as TransferFeature } from './CallClientState';\nexport type { OptimalVideoCountFeatureState } from './CallClientState';\nexport type { PPTLiveCallFeatureState } from './CallClientState';\nexport type { ReactionState } from './CallClientState';\nexport type { SpotlightCallFeatureState, SpotlightState } from './CallClientState';\nexport type { LocalRecordingCallFeatureState } from './CallClientState';\nexport type { ConferencePhoneInfo } from './CallClientState';\nexport type { BreakoutRoomsState } from './CallClientState';\nexport type { MediaAccessState } from './CallClientState';\nexport type { RealTimeTextInfo, RealTimeTextCallFeatureState } from './CallClientState';"]}
1
+ {"version":3,"file":"index-public.js","sourceRoot":"","sources":["../../../../preprocess-dist/calling-stateful-client/src/index-public.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport { createStatefulCallClient } from './StatefulCallClient';\nexport type { StatefulCallClient, StatefulCallClientArgs, StatefulCallClientOptions } from './StatefulCallClient';\nexport type { StatefulDeviceManager } from './DeviceManagerDeclarative';\nexport type { CallAgentState, CallClientState, CallError, CallErrors, CallErrorTarget, CallState, DeviceManagerState, DiagnosticsCallFeatureState, IncomingCallState, LocalVideoStreamState, MediaDiagnosticsState, NetworkDiagnosticsState, RecordingCallFeatureState as RecordingCallFeature, RemoteParticipantState, RemoteVideoStreamState, TranscriptionCallFeatureState as TranscriptionCallFeature, VideoStreamRendererViewState, CallInfoState } from './CallClientState';\nexport type { CallNotification, CallNotifications, NotificationTarget } from './CallClientState';\nexport type { TeamsIncomingCallState } from './CallClientState';\nexport type { CreateViewResult } from './StreamUtils';\nexport type { RaiseHandCallFeatureState as RaiseHandCallFeature } from './CallClientState';\nexport type { CallFeatureStreamState, TogetherModeSeatingPositionState, CallFeatureStreamName, TogetherModeStreamsState, TogetherModeParticipantSeatingState, TogetherModeCallFeatureState } from './CallClientState';\nexport type { RaisedHandState } from './CallClientState';\nexport type { DeclarativeCallAgent, IncomingCallManagement } from './CallAgentDeclarative';\nexport type { DeclarativeTeamsCallAgent } from './TeamsCallAgentDeclarative';\nexport type { TeamsIncomingCallManagement } from './TeamsCallAgentDeclarative';\nexport type { LocalVideoStreamVideoEffectsState } from './CallClientState';\nexport type { CapabilitiesFeatureState } from './CallClientState';\nexport type { CaptionsCallFeatureState, CaptionsInfo } from './CallClientState';\nexport type { AcceptedTransfer, TransferFeatureState as TransferFeature } from './CallClientState';\nexport type { OptimalVideoCountFeatureState } from './CallClientState';\nexport type { PPTLiveCallFeatureState } from './CallClientState';\nexport type { ReactionState } from './CallClientState';\nexport type { SpotlightCallFeatureState, SpotlightState } from './CallClientState';\nexport type { ConferencePhoneInfo } from './CallClientState';\nexport type { BreakoutRoomsState } from './CallClientState';\nexport type { MediaAccessState } from './CallClientState';\nexport type { RealTimeTextInfo, RealTimeTextCallFeatureState } from './CallClientState';"]}
@@ -1,9 +1,7 @@
1
1
  import { ReactElement } from 'react';
2
2
  import { Common } from "../../../acs-ui-common/src";
3
3
  import { StatefulChatClient } from "../../../chat-stateful-client/src";
4
- import { UploadChatImageResult } from "../../../acs-ui-common/src";
5
4
  import { ChatThreadClient, SendMessageOptions } from '@azure/communication-chat';
6
- import { MessageOptions } from "../../../acs-ui-common/src";
7
5
  /**
8
6
  * Object containing all the handlers required for chat components.
9
7
  *
@@ -13,15 +11,13 @@ import { MessageOptions } from "../../../acs-ui-common/src";
13
11
  * @public
14
12
  */
15
13
  export type ChatHandlers = {
16
- onSendMessage: (content: string, options?: SendMessageOptions | MessageOptions) => Promise<void>;
17
- onUploadImage: (image: Blob, imageFilename: string) => Promise<UploadChatImageResult>;
18
- onDeleteImage: (imageId: string) => Promise<void>;
14
+ onSendMessage: (content: string, options?: SendMessageOptions) => Promise<void>;
19
15
  onMessageSeen: (chatMessageId: string) => Promise<void>;
20
16
  onTyping: () => Promise<void>;
21
17
  onRemoveParticipant: (userId: string) => Promise<void>;
22
18
  updateThreadTopicName: (topicName: string) => Promise<void>;
23
19
  onLoadPreviousChatMessages: (messagesToLoad: number) => Promise<boolean>;
24
- onUpdateMessage: (messageId: string, content: string, options?: MessageOptions) => Promise<void>;
20
+ onUpdateMessage: (messageId: string, content: string) => Promise<void>;
25
21
  onDeleteMessage: (messageId: string) => Promise<void>;
26
22
  };
27
23
  /**
@@ -10,7 +10,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  });
11
11
  };
12
12
  import { fromFlatCommunicationIdentifier } from "../../../acs-ui-common/src";
13
- import { getImageAttachmentsFromHTMLContent } from '../utils/getImageAttachmentsFromHTMLContent';
14
13
  import memoizeOne from 'memoize-one';
15
14
  /**
16
15
  * Create the default implementation of {@link ChatHandlers}.
@@ -33,48 +32,15 @@ export const createDefaultChatHandlers = memoizeOne((chatClient, chatThreadClien
33
32
  const sendMessageRequest = {
34
33
  content
35
34
  };
36
- const imageAttachments = getImageAttachmentsFromHTMLContent(content);
37
- const hasAttachments = options && 'attachments' in options && options.attachments && options.attachments[0] && !options.attachments[0].attachmentType;
38
- const hasImages = imageAttachments && imageAttachments.length > 0;
39
- if (hasAttachments || hasImages) {
40
- const chatSDKOptions = {
41
- metadata: Object.assign(Object.assign({}, options === null || options === void 0 ? void 0 : options.metadata), { fileSharingMetadata: JSON.stringify(options === null || options === void 0 ? void 0 : options.attachments) }),
42
- attachments: imageAttachments,
43
- type: options === null || options === void 0 ? void 0 : options.type,
44
- senderDisplayName: chatClient.getState().displayName
45
- };
46
- yield chatThreadClient.sendMessage(sendMessageRequest, chatSDKOptions);
47
- return;
48
- }
49
35
  yield chatThreadClient.sendMessage(sendMessageRequest, Object.assign(Object.assign({}, options), { senderDisplayName: chatClient.getState().displayName }));
50
36
  });
51
37
  },
52
- onUploadImage: function (image, imageFilename) {
53
- return __awaiter(this, void 0, void 0, function* () {
54
- const imageResult = yield chatThreadClient.uploadImage(image, imageFilename);
55
- return imageResult;
56
- });
57
- },
58
- onDeleteImage: function (imageId) {
59
- return __awaiter(this, void 0, void 0, function* () {
60
- try {
61
- yield chatThreadClient.deleteImage(imageId);
62
- }
63
- catch (e) {
64
- console.log(`Error deleting image message: ${e}`);
65
- }
66
- return;
67
- });
68
- },
69
38
  // due to a bug in babel, we can't use arrow function here
70
39
  // affecting conditional-compile-remove(attachment-upload)
71
- onUpdateMessage: function (messageId, content, options) {
40
+ onUpdateMessage: function (messageId, content) {
72
41
  return __awaiter(this, void 0, void 0, function* () {
73
- const imageAttachments = getImageAttachmentsFromHTMLContent(content);
74
42
  const updateMessageOptions = {
75
- content,
76
- metadata: Object.assign(Object.assign({}, options === null || options === void 0 ? void 0 : options.metadata), { fileSharingMetadata: JSON.stringify(options === null || options === void 0 ? void 0 : options.attachments) }),
77
- attachments: imageAttachments
43
+ content
78
44
  };
79
45
  yield chatThreadClient.updateMessage(messageId, updateMessageOptions);
80
46
  });