@azure/communication-react 1.18.0-beta.1 → 1.18.1

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 (643) hide show
  1. package/dist/communication-react.d.ts +508 -1758
  2. package/dist/dist-cjs/communication-react/index.js +34347 -159
  3. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  4. package/dist/dist-esm/acs-ui-common/src/common.js +10 -2
  5. package/dist/dist-esm/acs-ui-common/src/common.js.map +1 -1
  6. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  7. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  8. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.d.ts +4 -5
  9. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +6 -11
  10. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  11. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.d.ts +0 -12
  12. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +1 -13
  13. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
  14. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js +0 -5
  15. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js.map +1 -1
  16. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.d.ts +0 -8
  17. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +0 -14
  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/createHandlers.js +1 -15
  20. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js.map +1 -1
  21. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js +1 -27
  22. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js.map +1 -1
  23. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.d.ts +3 -3
  24. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js +11 -11
  25. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  26. package/dist/dist-esm/calling-component-bindings/src/index.d.ts +2 -2
  27. package/dist/dist-esm/calling-component-bindings/src/index.js +2 -2
  28. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  29. package/dist/dist-esm/calling-component-bindings/src/notificationStackSelector.d.ts +23 -0
  30. package/dist/dist-esm/calling-component-bindings/src/notificationStackSelector.js +201 -0
  31. package/dist/dist-esm/calling-component-bindings/src/notificationStackSelector.js.map +1 -0
  32. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.d.ts +0 -1
  33. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +2 -8
  34. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
  35. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.d.ts +0 -7
  36. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js +0 -12
  37. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js.map +1 -1
  38. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +0 -3
  39. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  40. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js +0 -3
  41. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
  42. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.d.ts +1 -5
  43. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.js.map +1 -1
  44. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.d.ts +1 -15
  45. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
  46. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js +0 -5
  47. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js.map +1 -1
  48. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +23 -58
  49. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  50. package/dist/dist-esm/calling-stateful-client/src/CallContext.d.ts +3 -12
  51. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +16 -69
  52. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  53. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js +0 -68
  54. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js.map +1 -1
  55. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.d.ts +1 -3
  56. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +16 -28
  57. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  58. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.d.ts +0 -17
  59. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.js +3 -61
  60. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.js.map +1 -1
  61. package/dist/dist-esm/calling-stateful-client/src/Converter.d.ts +0 -5
  62. package/dist/dist-esm/calling-stateful-client/src/Converter.js +6 -17
  63. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  64. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.d.ts +0 -1
  65. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js +0 -11
  66. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js.map +1 -1
  67. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts +9 -19
  68. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js +2 -20
  69. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
  70. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.d.ts +3 -4
  71. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js +2 -0
  72. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js.map +1 -1
  73. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js +0 -18
  74. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js.map +1 -1
  75. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.d.ts +2 -2
  76. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js.map +1 -1
  77. package/dist/dist-esm/calling-stateful-client/src/index-public.d.ts +2 -3
  78. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  79. package/dist/dist-esm/calling-stateful-client/src/index.d.ts +1 -1
  80. package/dist/dist-esm/calling-stateful-client/src/index.js.map +1 -1
  81. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.d.ts +2 -3
  82. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js +2 -12
  83. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js.map +1 -1
  84. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.d.ts +1 -2
  85. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js +0 -5
  86. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  87. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +36 -37
  88. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
  89. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js +3 -3
  90. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js.map +1 -1
  91. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.d.ts +1 -1
  92. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js.map +1 -1
  93. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js +1 -3
  94. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js.map +1 -1
  95. package/dist/dist-esm/chat-stateful-client/src/ResourceDownloadQueue.js +3 -0
  96. package/dist/dist-esm/chat-stateful-client/src/ResourceDownloadQueue.js.map +1 -1
  97. package/dist/dist-esm/communication-react/src/index.d.ts +4 -28
  98. package/dist/dist-esm/communication-react/src/index.js +2 -14
  99. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  100. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerMessage.js +1 -1
  101. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerMessage.js.map +1 -1
  102. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentCard.js +5 -4
  103. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentCard.js.map +1 -1
  104. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentCardGroup.d.ts +1 -0
  105. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentCardGroup.js +3 -3
  106. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentCardGroup.js.map +1 -1
  107. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentDownloadCards.d.ts +0 -2
  108. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentDownloadCards.js +1 -14
  109. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentDownloadCards.js.map +1 -1
  110. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentUploadCards.d.ts +4 -0
  111. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentUploadCards.js +16 -19
  112. package/dist/dist-esm/react-components/src/components/Attachment/AttachmentUploadCards.js.map +1 -1
  113. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.d.ts +1 -7
  114. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.js +2 -10
  115. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.js.map +1 -1
  116. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.d.ts +0 -11
  117. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +2 -35
  118. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
  119. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.d.ts +1 -8
  120. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js +5 -13
  121. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js.map +1 -1
  122. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.d.ts +1 -2
  123. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.js +7 -15
  124. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.js.map +1 -1
  125. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.d.ts +1 -4
  126. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.js +6 -40
  127. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBox.js.map +1 -1
  128. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.d.ts +1 -16
  129. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.js +0 -22
  130. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsEditBoxPicker.js.map +1 -1
  131. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.d.ts +2 -21
  132. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.js +6 -21
  133. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.js.map +1 -1
  134. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.d.ts +1 -8
  135. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js +6 -14
  136. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js.map +1 -1
  137. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/FluentChatMyMessageComponent.js +6 -19
  138. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/FluentChatMyMessageComponent.js.map +1 -1
  139. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +2 -2
  140. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
  141. package/dist/dist-esm/react-components/src/components/ErrorBar.d.ts +4 -0
  142. package/dist/dist-esm/react-components/src/components/ErrorBar.js +3 -3
  143. package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
  144. package/dist/dist-esm/react-components/src/components/ImageOverlay.js +3 -7
  145. package/dist/dist-esm/react-components/src/components/ImageOverlay.js.map +1 -1
  146. package/dist/dist-esm/react-components/src/components/InputBoxButton.d.ts +1 -0
  147. package/dist/dist-esm/react-components/src/components/InputBoxButton.js +2 -2
  148. package/dist/dist-esm/react-components/src/components/InputBoxButton.js.map +1 -1
  149. package/dist/dist-esm/react-components/src/components/InputBoxComponent.d.ts +0 -2
  150. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js +0 -18
  151. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js.map +1 -1
  152. package/dist/dist-esm/react-components/src/components/MeetingConferencePhoneInfo.d.ts +80 -0
  153. package/dist/dist-esm/react-components/src/components/MeetingConferencePhoneInfo.js +115 -0
  154. package/dist/dist-esm/react-components/src/components/MeetingConferencePhoneInfo.js.map +1 -0
  155. package/dist/dist-esm/react-components/src/components/MessageStatusIndicatorInternal.js +1 -1
  156. package/dist/dist-esm/react-components/src/components/MessageStatusIndicatorInternal.js.map +1 -1
  157. package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +5 -50
  158. package/dist/dist-esm/react-components/src/components/MessageThread.js +3 -30
  159. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  160. package/dist/dist-esm/react-components/src/components/{NotificationBar.d.ts → Notification.d.ts} +13 -13
  161. package/dist/dist-esm/react-components/src/components/{NotificationBar.js → Notification.js} +7 -7
  162. package/dist/dist-esm/react-components/src/components/Notification.js.map +1 -0
  163. package/dist/dist-esm/react-components/src/components/{Notifications.d.ts → NotificationStack.d.ts} +109 -73
  164. package/dist/dist-esm/react-components/src/components/NotificationStack.js +57 -0
  165. package/dist/dist-esm/react-components/src/components/NotificationStack.js.map +1 -0
  166. package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts +0 -13
  167. package/dist/dist-esm/react-components/src/components/ParticipantItem.js +0 -3
  168. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  169. package/dist/dist-esm/react-components/src/components/ParticipantList.d.ts +0 -15
  170. package/dist/dist-esm/react-components/src/components/ParticipantList.js +4 -21
  171. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  172. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +1 -3
  173. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  174. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js +5 -1
  175. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js.map +1 -1
  176. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js +5 -1
  177. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js.map +1 -1
  178. package/dist/dist-esm/react-components/src/components/SendBox.d.ts +1 -47
  179. package/dist/dist-esm/react-components/src/components/SendBox.js +8 -90
  180. package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
  181. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js +1 -1
  182. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js.map +1 -1
  183. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js +0 -2
  184. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js.map +1 -1
  185. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js +0 -2
  186. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js.map +1 -1
  187. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js +0 -24
  188. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js.map +1 -1
  189. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js +0 -2
  190. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js.map +1 -1
  191. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +3 -15
  192. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  193. package/dist/dist-esm/react-components/src/components/VideoGallery.js +1 -2
  194. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  195. package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +0 -8
  196. package/dist/dist-esm/react-components/src/components/VideoTile.js +1 -7
  197. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  198. package/dist/dist-esm/react-components/src/components/index.d.ts +4 -20
  199. package/dist/dist-esm/react-components/src/components/index.js +8 -15
  200. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  201. package/dist/dist-esm/react-components/src/components/styles/AttachmentCard.styles.d.ts +1 -1
  202. package/dist/dist-esm/react-components/src/components/styles/AttachmentCard.styles.js +10 -0
  203. package/dist/dist-esm/react-components/src/components/styles/AttachmentCard.styles.js.map +1 -1
  204. package/dist/dist-esm/react-components/src/components/styles/AttachmentCardGroup.styles.d.ts +5 -1
  205. package/dist/dist-esm/react-components/src/components/styles/AttachmentCardGroup.styles.js +8 -0
  206. package/dist/dist-esm/react-components/src/components/styles/AttachmentCardGroup.styles.js.map +1 -1
  207. package/dist/dist-esm/react-components/src/components/styles/Common.style.d.ts +4 -0
  208. package/dist/dist-esm/react-components/src/components/styles/Common.style.js +4 -0
  209. package/dist/dist-esm/react-components/src/components/styles/Common.style.js.map +1 -1
  210. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.d.ts +5 -3
  211. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js +40 -20
  212. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js.map +1 -1
  213. package/dist/dist-esm/react-components/src/components/styles/{NotificationBar.styles.d.ts → Notification.styles.d.ts} +1 -1
  214. package/dist/dist-esm/react-components/src/components/styles/{NotificationBar.styles.js → Notification.styles.js} +1 -1
  215. package/dist/dist-esm/react-components/src/components/styles/Notification.styles.js.map +1 -0
  216. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.d.ts +4 -1
  217. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js +11 -3
  218. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js.map +1 -1
  219. package/dist/dist-esm/react-components/src/components/styles/TeamsMeetingConferenceInfo.d.ts +42 -0
  220. package/dist/dist-esm/react-components/src/components/styles/TeamsMeetingConferenceInfo.js +93 -0
  221. package/dist/dist-esm/react-components/src/components/styles/TeamsMeetingConferenceInfo.js.map +1 -0
  222. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.d.ts +1 -37
  223. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.js +3 -34
  224. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.js.map +1 -1
  225. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.d.ts +2 -4
  226. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.js +2 -14
  227. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.js.map +1 -1
  228. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.d.ts +1 -11
  229. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js +2 -18
  230. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js.map +1 -1
  231. package/dist/dist-esm/react-components/src/components/utils/common.js +0 -4
  232. package/dist/dist-esm/react-components/src/components/utils/common.js.map +1 -1
  233. package/dist/dist-esm/react-components/src/components/utils/formatPhoneNumber.d.ts +2 -2
  234. package/dist/dist-esm/react-components/src/components/utils/formatPhoneNumber.js +6 -2
  235. package/dist/dist-esm/react-components/src/components/utils/formatPhoneNumber.js.map +1 -1
  236. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.d.ts +1 -2
  237. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js.map +1 -1
  238. package/dist/dist-esm/react-components/src/components/utils/responsive.js +12 -2
  239. package/dist/dist-esm/react-components/src/components/utils/responsive.js.map +1 -1
  240. package/dist/dist-esm/react-components/src/components/utils.d.ts +32 -1
  241. package/dist/dist-esm/react-components/src/components/utils.js +101 -1
  242. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  243. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.d.ts +0 -4
  244. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js +1 -5
  245. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js.map +1 -1
  246. package/dist/dist-esm/react-components/src/index.d.ts +0 -1
  247. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  248. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +7 -58
  249. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  250. package/dist/dist-esm/react-components/src/localization/locales/ar-SA/strings.json +102 -64
  251. package/dist/dist-esm/react-components/src/localization/locales/cs-CZ/strings.json +100 -62
  252. package/dist/dist-esm/react-components/src/localization/locales/de-DE/strings.json +100 -62
  253. package/dist/dist-esm/react-components/src/localization/locales/en-GB/strings.json +100 -62
  254. package/dist/dist-esm/react-components/src/localization/locales/en-US/strings.json +98 -60
  255. package/dist/dist-esm/react-components/src/localization/locales/es-ES/strings.json +100 -62
  256. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/strings.json +100 -62
  257. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/strings.json +103 -65
  258. package/dist/dist-esm/react-components/src/localization/locales/he-IL/strings.json +100 -62
  259. package/dist/dist-esm/react-components/src/localization/locales/it-IT/strings.json +100 -62
  260. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/strings.json +102 -64
  261. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/strings.json +107 -69
  262. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/strings.json +100 -62
  263. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/strings.json +106 -68
  264. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/strings.json +105 -67
  265. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/strings.json +103 -65
  266. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/strings.json +101 -63
  267. package/dist/dist-esm/react-components/src/localization/locales/sv-SE/strings.json +100 -62
  268. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/strings.json +101 -63
  269. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/strings.json +102 -64
  270. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/strings.json +101 -63
  271. package/dist/dist-esm/react-components/src/theming/FluentV9ThemeProvider.d.ts +1 -0
  272. package/dist/dist-esm/react-components/src/theming/FluentV9ThemeProvider.js +4 -4
  273. package/dist/dist-esm/react-components/src/theming/FluentV9ThemeProvider.js.map +1 -1
  274. package/dist/dist-esm/react-components/src/theming/icons.d.ts +1 -28
  275. package/dist/dist-esm/react-components/src/theming/icons.js +7 -136
  276. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  277. package/dist/dist-esm/react-components/src/theming/themes.d.ts +0 -6
  278. package/dist/dist-esm/react-components/src/theming/themes.js +11 -20
  279. package/dist/dist-esm/react-components/src/theming/themes.js.map +1 -1
  280. package/dist/dist-esm/react-components/src/theming/v9ThemeShim.js +1 -1
  281. package/dist/dist-esm/react-components/src/theming/v9ThemeShim.js.map +1 -1
  282. package/dist/dist-esm/react-components/src/types/Attachment.d.ts +0 -9
  283. package/dist/dist-esm/react-components/src/types/Attachment.js.map +1 -1
  284. package/dist/dist-esm/react-components/src/types/ChatMessage.d.ts +1 -20
  285. package/dist/dist-esm/react-components/src/types/ChatMessage.js.map +1 -1
  286. package/dist/dist-esm/react-components/src/types/OnRender.d.ts +0 -8
  287. package/dist/dist-esm/react-components/src/types/OnRender.js.map +1 -1
  288. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.d.ts +0 -6
  289. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js +0 -2
  290. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
  291. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +0 -72
  292. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +86 -37
  293. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  294. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +4 -108
  295. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  296. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +12 -64
  297. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +15 -150
  298. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  299. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +3 -51
  300. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js +1 -1
  301. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  302. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallingSoundSubscriber.d.ts +2 -0
  303. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallingSoundSubscriber.js +20 -0
  304. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallingSoundSubscriber.js.map +1 -1
  305. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.d.ts +2 -2
  306. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js.map +1 -1
  307. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.d.ts +0 -2
  308. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js.map +1 -1
  309. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.d.ts +6 -2
  310. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +83 -32
  311. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  312. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts +0 -1
  313. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +2 -38
  314. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  315. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.d.ts +0 -2
  316. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js +0 -27
  317. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js.map +1 -1
  318. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js +2 -20
  319. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js.map +1 -1
  320. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.d.ts +0 -2
  321. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js +0 -27
  322. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js.map +1 -1
  323. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.d.ts +0 -1
  324. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js +5 -19
  325. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
  326. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.d.ts +1 -0
  327. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js +65 -1
  328. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js.map +1 -1
  329. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useMeetingPhoneInfo.d.ts +13 -0
  330. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useMeetingPhoneInfo.js +49 -0
  331. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useMeetingPhoneInfo.js.map +1 -0
  332. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js +2 -1
  333. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js.map +1 -1
  334. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.d.ts +1 -0
  335. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js +1 -1
  336. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js.map +1 -1
  337. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js +2 -6
  338. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js.map +1 -1
  339. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +7 -30
  340. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  341. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.d.ts +0 -3
  342. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
  343. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.d.ts +5 -2
  344. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +12 -4
  345. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  346. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.d.ts +0 -7
  347. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +7 -80
  348. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  349. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.d.ts +5 -2
  350. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js +6 -3
  351. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js.map +1 -1
  352. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js +6 -3
  353. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js.map +1 -1
  354. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.d.ts +5 -8
  355. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +5 -11
  356. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
  357. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js.map +1 -1
  358. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js +0 -4
  359. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js.map +1 -1
  360. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.d.ts +4 -0
  361. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js +11 -0
  362. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js.map +1 -1
  363. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.d.ts +2 -2
  364. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.js.map +1 -1
  365. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/ErrorTracking.d.ts +6 -2
  366. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/ErrorTracking.js.map +1 -1
  367. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.d.ts +8 -7
  368. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js +20 -20
  369. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js.map +1 -1
  370. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts +49 -14
  371. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +104 -98
  372. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  373. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +1 -61
  374. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +6 -27
  375. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  376. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.d.ts +0 -32
  377. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.js.map +1 -1
  378. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +5 -15
  379. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +5 -49
  380. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  381. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +3 -38
  382. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  383. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +1 -9
  384. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +0 -32
  385. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  386. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts +4 -5
  387. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js +2 -2
  388. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  389. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.d.ts +0 -13
  390. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js +0 -4
  391. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js.map +1 -1
  392. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.d.ts +0 -20
  393. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js +1 -6
  394. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js.map +1 -1
  395. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.d.ts +0 -2
  396. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +10 -131
  397. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  398. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.d.ts +0 -4
  399. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.js.map +1 -1
  400. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +2 -3
  401. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +0 -27
  402. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  403. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +2 -3
  404. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  405. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js +2 -13
  406. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js.map +1 -1
  407. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.d.ts +0 -2
  408. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js.map +1 -1
  409. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.d.ts +1 -5
  410. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js +0 -15
  411. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js.map +1 -1
  412. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.d.ts +0 -5
  413. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js +2 -3
  414. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js.map +1 -1
  415. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.d.ts +2 -1
  416. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +25 -19
  417. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -1
  418. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.d.ts +1 -1
  419. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js.map +1 -1
  420. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.d.ts +2 -0
  421. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js +29 -26
  422. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js.map +1 -1
  423. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.d.ts +1 -0
  424. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +26 -23
  425. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -1
  426. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.d.ts +1 -1
  427. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.js.map +1 -1
  428. package/dist/dist-esm/react-composites/src/composites/common/MeetingPhoneInfoPaneContent.d.ts +10 -0
  429. package/dist/dist-esm/react-composites/src/composites/common/MeetingPhoneInfoPaneContent.js +63 -0
  430. package/dist/dist-esm/react-composites/src/composites/common/MeetingPhoneInfoPaneContent.js.map +1 -0
  431. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +9 -7
  432. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
  433. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js +2 -14
  434. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js.map +1 -1
  435. package/dist/dist-esm/react-composites/src/composites/common/SendBoxPicker.d.ts +1 -4
  436. package/dist/dist-esm/react-composites/src/composites/common/SendBoxPicker.js +0 -1
  437. package/dist/dist-esm/react-composites/src/composites/common/SendBoxPicker.js.map +1 -1
  438. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +10 -39
  439. package/dist/dist-esm/react-composites/src/composites/common/icons.js +10 -12
  440. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  441. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.d.ts +1 -1
  442. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js +2 -2
  443. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js.map +1 -1
  444. package/dist/dist-esm/react-composites/src/composites/common/styles/TeamsMeetingConferenceInfo.style.d.ts +50 -0
  445. package/dist/dist-esm/react-composites/src/composites/common/styles/TeamsMeetingConferenceInfo.style.js +110 -0
  446. package/dist/dist-esm/react-composites/src/composites/common/styles/TeamsMeetingConferenceInfo.style.js.map +1 -0
  447. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.d.ts +10 -17
  448. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js.map +1 -1
  449. package/dist/dist-esm/react-composites/src/composites/common/utils.js +6 -6
  450. package/dist/dist-esm/react-composites/src/composites/common/utils.js.map +1 -1
  451. package/dist/dist-esm/react-composites/src/composites/localization/locales/ar-SA/strings.json +10 -5
  452. package/dist/dist-esm/react-composites/src/composites/localization/locales/cs-CZ/strings.json +6 -1
  453. package/dist/dist-esm/react-composites/src/composites/localization/locales/de-DE/strings.json +6 -1
  454. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-GB/strings.json +6 -1
  455. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-US/strings.json +6 -1
  456. package/dist/dist-esm/react-composites/src/composites/localization/locales/es-ES/strings.json +6 -1
  457. package/dist/dist-esm/react-composites/src/composites/localization/locales/fi-FI/strings.json +10 -5
  458. package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-FR/strings.json +10 -5
  459. package/dist/dist-esm/react-composites/src/composites/localization/locales/he-IL/strings.json +10 -5
  460. package/dist/dist-esm/react-composites/src/composites/localization/locales/it-IT/strings.json +10 -5
  461. package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/strings.json +6 -1
  462. package/dist/dist-esm/react-composites/src/composites/localization/locales/ko-KR/strings.json +10 -5
  463. package/dist/dist-esm/react-composites/src/composites/localization/locales/nb-NO/strings.json +6 -1
  464. package/dist/dist-esm/react-composites/src/composites/localization/locales/nl-NL/strings.json +6 -1
  465. package/dist/dist-esm/react-composites/src/composites/localization/locales/pl-PL/strings.json +6 -1
  466. package/dist/dist-esm/react-composites/src/composites/localization/locales/pt-BR/strings.json +10 -5
  467. package/dist/dist-esm/react-composites/src/composites/localization/locales/ru-RU/strings.json +6 -1
  468. package/dist/dist-esm/react-composites/src/composites/localization/locales/sv-SE/strings.json +10 -5
  469. package/dist/dist-esm/react-composites/src/composites/localization/locales/tr-TR/strings.json +6 -1
  470. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-CN/strings.json +10 -5
  471. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-TW/strings.json +10 -5
  472. package/dist/tsdoc-metadata.json +1 -1
  473. package/package.json +15 -16
  474. package/dist/dist-cjs/communication-react/ChatMessageComponentAsRichTextEditBox-BWStTUhO.js +0 -136
  475. package/dist/dist-cjs/communication-react/ChatMessageComponentAsRichTextEditBox-BWStTUhO.js.map +0 -1
  476. package/dist/dist-cjs/communication-react/index-Di3ptk8o.js +0 -39650
  477. package/dist/dist-cjs/communication-react/index-Di3ptk8o.js.map +0 -1
  478. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.d.ts +0 -17
  479. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.js +0 -36
  480. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.js.map +0 -1
  481. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.d.ts +0 -10
  482. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js +0 -15
  483. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js.map +0 -1
  484. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.d.ts +0 -17
  485. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.js +0 -125
  486. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMessageComponentAsRichTextEditBox.js.map +0 -1
  487. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.d.ts +0 -69
  488. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js +0 -43
  489. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js.map +0 -1
  490. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.d.ts +0 -75
  491. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js +0 -75
  492. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js.map +0 -1
  493. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.d.ts +0 -105
  494. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js +0 -68
  495. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js.map +0 -1
  496. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.d.ts +0 -86
  497. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js +0 -39
  498. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js.map +0 -1
  499. package/dist/dist-esm/react-components/src/components/HoldButton.d.ts +0 -49
  500. package/dist/dist-esm/react-components/src/components/HoldButton.js +0 -25
  501. package/dist/dist-esm/react-components/src/components/HoldButton.js.map +0 -1
  502. package/dist/dist-esm/react-components/src/components/MentionPopover.d.ts +0 -121
  503. package/dist/dist-esm/react-components/src/components/MentionPopover.js +0 -123
  504. package/dist/dist-esm/react-components/src/components/MentionPopover.js.map +0 -1
  505. package/dist/dist-esm/react-components/src/components/NotificationBar.js.map +0 -1
  506. package/dist/dist-esm/react-components/src/components/Notifications.js +0 -46
  507. package/dist/dist-esm/react-components/src/components/Notifications.js.map +0 -1
  508. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/ContextMenuPlugin.d.ts +0 -9
  509. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/ContextMenuPlugin.js +0 -29
  510. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/ContextMenuPlugin.js.map +0 -1
  511. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.d.ts +0 -22
  512. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.js +0 -89
  513. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/CopyPastePlugin.js.map +0 -1
  514. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/KeyboardInputPlugin.d.ts +0 -12
  515. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/KeyboardInputPlugin.js +0 -23
  516. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/KeyboardInputPlugin.js.map +0 -1
  517. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/PlaceholderPlugin.d.ts +0 -15
  518. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/PlaceholderPlugin.js +0 -39
  519. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/PlaceholderPlugin.js.map +0 -1
  520. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/RichTextToolbarPlugin.d.ts +0 -24
  521. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/RichTextToolbarPlugin.js +0 -64
  522. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/RichTextToolbarPlugin.js.map +0 -1
  523. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/TableEditContextMenuProvider.d.ts +0 -20
  524. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/TableEditContextMenuProvider.js +0 -46
  525. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/TableEditContextMenuProvider.js.map +0 -1
  526. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UpdateContentPlugin.d.ts +0 -29
  527. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UpdateContentPlugin.js +0 -73
  528. package/dist/dist-esm/react-components/src/components/RichTextEditor/Plugins/UpdateContentPlugin.js.map +0 -1
  529. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.d.ts +0 -54
  530. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.js +0 -226
  531. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.js.map +0 -1
  532. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.d.ts +0 -33
  533. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.js +0 -82
  534. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.js.map +0 -1
  535. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.d.ts +0 -149
  536. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.js +0 -182
  537. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.js.map +0 -1
  538. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.d.ts +0 -16
  539. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.js +0 -73
  540. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.js.map +0 -1
  541. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/RichTextToolbar.d.ts +0 -19
  542. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/RichTextToolbar.js +0 -191
  543. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/RichTextToolbar.js.map +0 -1
  544. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTableCommandBarItem.d.ts +0 -7
  545. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTableCommandBarItem.js +0 -51
  546. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTableCommandBarItem.js.map +0 -1
  547. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTablePane.d.ts +0 -15
  548. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTablePane.js +0 -64
  549. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextInsertTablePane.js.map +0 -1
  550. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextToolbarTableIcon.d.ts +0 -6
  551. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextToolbarTableIcon.js +0 -13
  552. package/dist/dist-esm/react-components/src/components/RichTextEditor/Toolbar/Table/RichTextToolbarTableIcon.js.map +0 -1
  553. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.d.ts +0 -34
  554. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js +0 -39
  555. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js.map +0 -1
  556. package/dist/dist-esm/react-components/src/components/SendBoxErrors.d.ts +0 -14
  557. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js +0 -18
  558. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js.map +0 -1
  559. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.d.ts +0 -24
  560. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js +0 -550
  561. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js.map +0 -1
  562. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.d.ts +0 -152
  563. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js +0 -816
  564. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js.map +0 -1
  565. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.d.ts +0 -58
  566. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js +0 -144
  567. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js.map +0 -1
  568. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.d.ts +0 -26
  569. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js +0 -69
  570. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js.map +0 -1
  571. package/dist/dist-esm/react-components/src/components/styles/NotificationBar.styles.js.map +0 -1
  572. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.d.ts +0 -82
  573. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js +0 -305
  574. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js.map +0 -1
  575. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.d.ts +0 -21
  576. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.js +0 -38
  577. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.js.map +0 -1
  578. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.d.ts +0 -38
  579. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js +0 -92
  580. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js.map +0 -1
  581. package/dist/dist-esm/react-components/src/components/styles/Stack.style.d.ts +0 -5
  582. package/dist/dist-esm/react-components/src/components/styles/Stack.style.js +0 -32
  583. package/dist/dist-esm/react-components/src/components/styles/Stack.style.js.map +0 -1
  584. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.d.ts +0 -26
  585. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js +0 -67
  586. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js.map +0 -1
  587. package/dist/dist-esm/react-components/src/components/utils/RichTextEditorUtils.d.ts +0 -37
  588. package/dist/dist-esm/react-components/src/components/utils/RichTextEditorUtils.js +0 -60
  589. package/dist/dist-esm/react-components/src/components/utils/RichTextEditorUtils.js.map +0 -1
  590. package/dist/dist-esm/react-components/src/components/utils/RichTextTableUtils.d.ts +0 -33
  591. package/dist/dist-esm/react-components/src/components/utils/RichTextTableUtils.js +0 -116
  592. package/dist/dist-esm/react-components/src/components/utils/RichTextTableUtils.js.map +0 -1
  593. package/dist/dist-esm/react-components/src/components/utils/merge.d.ts +0 -7
  594. package/dist/dist-esm/react-components/src/components/utils/merge.js +0 -16
  595. package/dist/dist-esm/react-components/src/components/utils/merge.js.map +0 -1
  596. package/dist/dist-esm/react-components/src/theming/icons.styles.d.ts +0 -6
  597. package/dist/dist-esm/react-components/src/theming/icons.styles.js +0 -25
  598. package/dist/dist-esm/react-components/src/theming/icons.styles.js.map +0 -1
  599. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.d.ts +0 -48
  600. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js +0 -218
  601. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js.map +0 -1
  602. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.d.ts +0 -12
  603. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js +0 -93
  604. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js.map +0 -1
  605. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.d.ts +0 -8
  606. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js +0 -26
  607. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js.map +0 -1
  608. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.d.ts +0 -24
  609. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +0 -28
  610. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +0 -1
  611. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.d.ts +0 -15
  612. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js +0 -54
  613. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js.map +0 -1
  614. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.d.ts +0 -32
  615. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js +0 -81
  616. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js.map +0 -1
  617. package/dist/dist-esm/react-composites/src/composites/ChatComposite/AttachmentDownloadErrorBar.d.ts +0 -15
  618. package/dist/dist-esm/react-composites/src/composites/ChatComposite/AttachmentDownloadErrorBar.js +0 -23
  619. package/dist/dist-esm/react-composites/src/composites/ChatComposite/AttachmentDownloadErrorBar.js.map +0 -1
  620. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.d.ts +0 -18
  621. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js +0 -18
  622. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +0 -1
  623. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUpload.d.ts +0 -80
  624. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUpload.js +0 -39
  625. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUpload.js.map +0 -1
  626. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUploadButton.d.ts +0 -38
  627. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUploadButton.js +0 -76
  628. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/AttachmentUploadButton.js.map +0 -1
  629. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.d.ts +0 -5
  630. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js +0 -5
  631. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js.map +0 -1
  632. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.d.ts +0 -25
  633. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js +0 -113
  634. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js.map +0 -1
  635. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.d.ts +0 -17
  636. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js +0 -32
  637. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js.map +0 -1
  638. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.d.ts +0 -22
  639. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js +0 -74
  640. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js.map +0 -1
  641. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.d.ts +0 -15
  642. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js +0 -61
  643. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"CallPage.js","sourceRoot":"","sources":["../../../../../../../preprocess-dist/react-composites/src/composites/CallComposite/pages/CallPage.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { DiagnosticQuality } from '@azure/communication-calling';\nimport { useId } from '@fluentui/react-hooks';\nimport { _isInCall } from '@internal/calling-component-bindings';\nimport { ActiveErrorMessage, ErrorBar, ParticipantMenuItemsCallback } from '@internal/react-components';\nimport { VideoGalleryLayout } from '@internal/react-components';\nimport React from 'react';\nimport { useState } from 'react';\nimport { AvatarPersonaDataCallback } from '../../common/AvatarPersona';\nimport { useLocale } from '../../localization';\nimport { CallCompositeOptions } from '../CallComposite';\nimport { CallArrangement } from '../components/CallArrangement';\nimport { MediaGallery } from '../components/MediaGallery';\nimport { NetworkReconnectTile } from '../components/NetworkReconnectTile';\nimport { useHandlers } from '../hooks/useHandlers';\nimport { usePropsFor } from '../hooks/usePropsFor';\nimport { useSelector } from '../hooks/useSelector';\nimport { callStatusSelector } from '../selectors/callStatusSelector';\nimport { complianceBannerSelector } from '../selectors/complianceBannerSelector';\nimport { mediaGallerySelector } from '../selectors/mediaGallerySelector';\nimport { getRemoteParticipantsConnectedSelector } from '../selectors/mediaGallerySelector';\nimport { mutedNotificationSelector } from '../selectors/mutedNotificationSelector';\nimport { networkReconnectTileSelector } from '../selectors/networkReconnectTileSelector';\nimport { reduceCallControlsForMobile } from '../utils';\nimport { MobileChatSidePaneTabHeaderProps } from '../../common/TabHeader';\nimport { SidePaneRenderer } from '../components/SidePane/SidePaneProvider';\nimport { CapabilitiesChangeNotificationBarProps } from '../components/CapabilitiesChangedNotificationBar';\nimport { DtmfDialpadPage } from './DtmfDialpadPage';\nimport { showDtmfDialer } from '../utils/MediaGalleryUtils';\nimport { getTargetCallees } from '../selectors/baseSelectors';\nimport { Prompt, PromptProps } from '../components/Prompt';\n\n/**\n * @private\n */\nexport interface CallPageProps {\n mobileView: boolean;\n modalLayerHostId: string;\n callInvitationURL?: string;\n onFetchAvatarPersonaData?: AvatarPersonaDataCallback;\n onFetchParticipantMenuItems?: ParticipantMenuItemsCallback;\n updateSidePaneRenderer: (renderer: SidePaneRenderer | undefined) => void;\n mobileChatTabHeader?: MobileChatSidePaneTabHeaderProps;\n options?: CallCompositeOptions;\n latestErrors: ActiveErrorMessage[];\n onDismissError: (error: ActiveErrorMessage) => void;\n galleryLayout: VideoGalleryLayout;\n capabilitiesChangedNotificationBarProps?: CapabilitiesChangeNotificationBarProps;\n onUserSetGalleryLayoutChange?: (layout: VideoGalleryLayout) => void;\n userSetOverflowGalleryPosition?: 'Responsive' | 'horizontalTop';\n onSetUserSetOverflowGalleryPosition?: (position: 'Responsive' | 'horizontalTop') => void;\n onCloseChatPane?: () => void;\n pinnedParticipants?: string[];\n setPinnedParticipants?: (pinnedParticipants: string[]) => void;\n compositeAudioContext?: AudioContext;\n disableAutoShowDtmfDialer?: boolean;\n}\n\n/**\n * @private\n */\nexport const CallPage = (props: CallPageProps): JSX.Element => {\n const {\n callInvitationURL,\n onFetchAvatarPersonaData,\n onFetchParticipantMenuItems,\n options,\n mobileView,\n galleryLayout = 'floatingLocalVideo',\n onUserSetGalleryLayoutChange,\n userSetOverflowGalleryPosition = 'Responsive',\n onSetUserSetOverflowGalleryPosition,\n onCloseChatPane,\n pinnedParticipants,\n setPinnedParticipants,\n compositeAudioContext,\n disableAutoShowDtmfDialer = false\n } = props;\n\n // To use useProps to get these states, we need to create another file wrapping Call,\n // It seems unnecessary in this case, so we get the updated states using this approach.\n const {\n callStatus\n } = useSelector(callStatusSelector);\n const mediaGalleryProps = useSelector(mediaGallerySelector);\n const mediaGalleryHandlers = useHandlers(MediaGallery);\n const complianceBannerProps = useSelector(complianceBannerSelector);\n const errorBarProps = usePropsFor(ErrorBar);\n const mutedNotificationProps = useSelector(mutedNotificationSelector);\n const networkReconnectTileProps = useSelector(networkReconnectTileSelector);\n const remoteParticipantsConnected = useSelector(getRemoteParticipantsConnectedSelector);\n const callees = useSelector(getTargetCallees);\n const renderDtmfDialerFromStart = showDtmfDialer(callees, remoteParticipantsConnected);\n const [dtmfDialerPresent, setDtmfDialerPresent] = useState<boolean>(renderDtmfDialerFromStart && disableAutoShowDtmfDialer);\n const strings = useLocale().strings.call;\n\n // Reduce the controls shown when mobile view is enabled.\n const callControlOptions = mobileView ? reduceCallControlsForMobile(options?.callControls) : options?.callControls;\n const drawerMenuHostId = useId('drawerMenuHost');\n const [isPromptOpen, setIsPromptOpen] = useState<boolean>(false);\n const [promptProps, setPromptProps] = useState<PromptProps>();\n const onRenderGalleryContentTrampoline = (): JSX.Element => {\n if (dtmfDialerPresent) {\n return <DtmfDialpadPage mobileView={props.mobileView} modalLayerHostId={props.modalLayerHostId} options={props.options} updateSidePaneRenderer={props.updateSidePaneRenderer} mobileChatTabHeader={props.mobileChatTabHeader} latestErrors={props.latestErrors} onDismissError={props.onDismissError} capabilitiesChangedNotificationBarProps={props.capabilitiesChangedNotificationBarProps} onSetDialpadPage={() => setDtmfDialerPresent(!dtmfDialerPresent)} dtmfDialerPresent={dtmfDialerPresent} compositeAudioContext={compositeAudioContext} />;\n } else {\n return <MediaGallery isMobile={mobileView} {...mediaGalleryProps} {...mediaGalleryHandlers} onFetchAvatarPersonaData={onFetchAvatarPersonaData} remoteVideoTileMenuOptions={options?.remoteVideoTileMenuOptions} drawerMenuHostId={drawerMenuHostId} localVideoTileOptions={options?.localVideoTile} userSetOverflowGalleryPosition={userSetOverflowGalleryPosition} userSetGalleryLayout={galleryLayout} pinnedParticipants={pinnedParticipants} setPinnedParticipants={setPinnedParticipants} setIsPromptOpen={setIsPromptOpen} setPromptProps={setPromptProps} hideSpotlightButtons={options?.spotlight?.hideSpotlightButtons} videoTilesOptions={options?.videoTilesOptions} />;\n }\n };\n return <>\n <CallArrangement id={drawerMenuHostId} complianceBannerProps={{\n ...complianceBannerProps,\n strings\n }} errorBarProps={options?.errorBar !== false && errorBarProps} mutedNotificationProps={mutedNotificationProps} callControlProps={{\n callInvitationURL: callInvitationURL,\n onFetchParticipantMenuItems: onFetchParticipantMenuItems,\n options: callControlOptions,\n increaseFlyoutItemSize: mobileView\n }} onFetchAvatarPersonaData={onFetchAvatarPersonaData} mobileView={mobileView} modalLayerHostId={props.modalLayerHostId} onRenderGalleryContent={() => _isInCall(callStatus) ? isNetworkHealthy(networkReconnectTileProps.networkReconnectValue) ? onRenderGalleryContentTrampoline() : <NetworkReconnectTile {...networkReconnectTileProps} /> : <></>} updateSidePaneRenderer={props.updateSidePaneRenderer} mobileChatTabHeader={props.mobileChatTabHeader} onCloseChatPane={onCloseChatPane} dataUiId={'call-page'} latestErrors={props.latestErrors} onDismissError={props.onDismissError} onUserSetOverflowGalleryPositionChange={onSetUserSetOverflowGalleryPosition} onUserSetGalleryLayoutChange={onUserSetGalleryLayoutChange} userSetGalleryLayout={galleryLayout} capabilitiesChangedNotificationBarProps={props.capabilitiesChangedNotificationBarProps} onSetDialpadPage={() => setDtmfDialerPresent(!dtmfDialerPresent)} dtmfDialerPresent={dtmfDialerPresent} setIsPromptOpen={setIsPromptOpen} setPromptProps={setPromptProps} hideSpotlightButtons={options?.spotlight?.hideSpotlightButtons} pinnedParticipants={pinnedParticipants} setPinnedParticipants={setPinnedParticipants} />\n {<Prompt isOpen={isPromptOpen} onDismiss={() => setIsPromptOpen(false)} {...promptProps} />}\n </>;\n};\n\n/**\n * @private\n */\nexport const isNetworkHealthy = (value: DiagnosticQuality | boolean | undefined): boolean => {\n // We know that the value is actually of type DiagnosticQuality for this diagnostic.\n // We ignore any boolen values, considering the network to still be healthy.\n // Thus, only DiagnosticQuality.Poor or .Bad indicate network problems.\n return value === true || value === false || value === undefined || value === DiagnosticQuality.Good;\n};"]}
1
+ {"version":3,"file":"CallPage.js","sourceRoot":"","sources":["../../../../../../../preprocess-dist/react-composites/src/composites/CallComposite/pages/CallPage.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { DiagnosticQuality } from '@azure/communication-calling';\nimport { useId } from '@fluentui/react-hooks';\nimport { _isInCall } from '@internal/calling-component-bindings';\nimport { ActiveErrorMessage, ErrorBar, ParticipantMenuItemsCallback } from '@internal/react-components';\n/* @conditional-compile-remove(notifications) */\nimport { ActiveNotification } from '@internal/react-components';\nimport { VideoGalleryLayout } from '@internal/react-components';\nimport React from 'react';\nimport { useState } from 'react';\nimport { AvatarPersonaDataCallback } from '../../common/AvatarPersona';\nimport { useLocale } from '../../localization';\nimport { CallCompositeOptions } from '../CallComposite';\nimport { CallArrangement } from '../components/CallArrangement';\nimport { MediaGallery } from '../components/MediaGallery';\nimport { NetworkReconnectTile } from '../components/NetworkReconnectTile';\nimport { useHandlers } from '../hooks/useHandlers';\nimport { usePropsFor } from '../hooks/usePropsFor';\nimport { useSelector } from '../hooks/useSelector';\nimport { callStatusSelector } from '../selectors/callStatusSelector';\nimport { complianceBannerSelector } from '../selectors/complianceBannerSelector';\nimport { mediaGallerySelector } from '../selectors/mediaGallerySelector';\nimport { getRemoteParticipantsConnectedSelector } from '../selectors/mediaGallerySelector';\nimport { mutedNotificationSelector } from '../selectors/mutedNotificationSelector';\nimport { networkReconnectTileSelector } from '../selectors/networkReconnectTileSelector';\nimport { reduceCallControlsForMobile } from '../utils';\nimport { MobileChatSidePaneTabHeaderProps } from '../../common/TabHeader';\nimport { SidePaneRenderer } from '../components/SidePane/SidePaneProvider';\nimport { CapabilitiesChangeNotificationBarProps } from '../components/CapabilitiesChangedNotificationBar';\nimport { DtmfDialpadPage } from './DtmfDialpadPage';\nimport { showDtmfDialer } from '../utils/MediaGalleryUtils';\nimport { getTargetCallees } from '../selectors/baseSelectors';\nimport { Prompt, PromptProps } from '../components/Prompt';\n\n/**\n * @private\n */\nexport interface CallPageProps {\n mobileView: boolean;\n modalLayerHostId: string;\n callInvitationURL?: string;\n onFetchAvatarPersonaData?: AvatarPersonaDataCallback;\n onFetchParticipantMenuItems?: ParticipantMenuItemsCallback;\n updateSidePaneRenderer: (renderer: SidePaneRenderer | undefined) => void;\n mobileChatTabHeader?: MobileChatSidePaneTabHeaderProps;\n options?: CallCompositeOptions;\n latestErrors: ActiveErrorMessage[] | /* @conditional-compile-remove(notifications) */ActiveNotification[];\n /* @conditional-compile-remove(notifications) */\n latestNotifications: ActiveNotification[];\n onDismissError: (error: ActiveErrorMessage | /* @conditional-compile-remove(notifications) */ActiveNotification) => void;\n /* @conditional-compile-remove(notifications) */\n onDismissNotification: (notification: ActiveNotification) => void;\n galleryLayout: VideoGalleryLayout;\n capabilitiesChangedNotificationBarProps?: CapabilitiesChangeNotificationBarProps;\n onUserSetGalleryLayoutChange?: (layout: VideoGalleryLayout) => void;\n userSetOverflowGalleryPosition?: 'Responsive' | 'horizontalTop';\n onSetUserSetOverflowGalleryPosition?: (position: 'Responsive' | 'horizontalTop') => void;\n onCloseChatPane?: () => void;\n pinnedParticipants?: string[];\n setPinnedParticipants?: (pinnedParticipants: string[]) => void;\n compositeAudioContext?: AudioContext;\n disableAutoShowDtmfDialer?: boolean;\n}\n\n/**\n * @private\n */\nexport const CallPage = (props: CallPageProps): JSX.Element => {\n const {\n callInvitationURL,\n onFetchAvatarPersonaData,\n onFetchParticipantMenuItems,\n options,\n mobileView,\n galleryLayout = 'floatingLocalVideo',\n onUserSetGalleryLayoutChange,\n userSetOverflowGalleryPosition = 'Responsive',\n onSetUserSetOverflowGalleryPosition,\n onCloseChatPane,\n pinnedParticipants,\n setPinnedParticipants,\n compositeAudioContext,\n disableAutoShowDtmfDialer = false,\n /* @conditional-compile-remove(notifications) */\n latestNotifications,\n /* @conditional-compile-remove(notifications) */\n onDismissNotification\n } = props;\n\n // To use useProps to get these states, we need to create another file wrapping Call,\n // It seems unnecessary in this case, so we get the updated states using this approach.\n const {\n callStatus\n } = useSelector(callStatusSelector);\n const mediaGalleryProps = useSelector(mediaGallerySelector);\n const mediaGalleryHandlers = useHandlers(MediaGallery);\n const complianceBannerProps = useSelector(complianceBannerSelector);\n const errorBarProps = usePropsFor(ErrorBar);\n const mutedNotificationProps = useSelector(mutedNotificationSelector);\n const networkReconnectTileProps = useSelector(networkReconnectTileSelector);\n const remoteParticipantsConnected = useSelector(getRemoteParticipantsConnectedSelector);\n const callees = useSelector(getTargetCallees);\n const renderDtmfDialerFromStart = showDtmfDialer(callees, remoteParticipantsConnected);\n const [dtmfDialerPresent, setDtmfDialerPresent] = useState<boolean>(renderDtmfDialerFromStart && disableAutoShowDtmfDialer);\n const strings = useLocale().strings.call;\n\n // Reduce the controls shown when mobile view is enabled.\n const callControlOptions = mobileView ? reduceCallControlsForMobile(options?.callControls) : options?.callControls;\n const drawerMenuHostId = useId('drawerMenuHost');\n const [isPromptOpen, setIsPromptOpen] = useState<boolean>(false);\n const [promptProps, setPromptProps] = useState<PromptProps>();\n const onRenderGalleryContentTrampoline = (): JSX.Element => {\n if (dtmfDialerPresent) {\n return <DtmfDialpadPage mobileView={props.mobileView} modalLayerHostId={props.modalLayerHostId} options={props.options} updateSidePaneRenderer={props.updateSidePaneRenderer} mobileChatTabHeader={props.mobileChatTabHeader} latestErrors={(props.latestErrors as ActiveErrorMessage[])} onDismissError={props.onDismissError} capabilitiesChangedNotificationBarProps={props.capabilitiesChangedNotificationBarProps} onSetDialpadPage={() => setDtmfDialerPresent(!dtmfDialerPresent)} dtmfDialerPresent={dtmfDialerPresent} compositeAudioContext={compositeAudioContext} />;\n } else {\n return <MediaGallery isMobile={mobileView} {...mediaGalleryProps} {...mediaGalleryHandlers} onFetchAvatarPersonaData={onFetchAvatarPersonaData} remoteVideoTileMenuOptions={options?.remoteVideoTileMenuOptions} drawerMenuHostId={drawerMenuHostId} localVideoTileOptions={options?.localVideoTile} userSetOverflowGalleryPosition={userSetOverflowGalleryPosition} userSetGalleryLayout={galleryLayout} pinnedParticipants={pinnedParticipants} setPinnedParticipants={setPinnedParticipants} setIsPromptOpen={setIsPromptOpen} setPromptProps={setPromptProps} hideSpotlightButtons={options?.spotlight?.hideSpotlightButtons} videoTilesOptions={options?.videoTilesOptions} />;\n }\n };\n return <>\n <CallArrangement id={drawerMenuHostId} complianceBannerProps={{\n ...complianceBannerProps,\n strings\n }} errorBarProps={options?.errorBar !== false && errorBarProps}\n /* @conditional-compile-remove(notifications) */ showErrorNotifications={options?.errorBar ?? true} mutedNotificationProps={mutedNotificationProps} callControlProps={{\n callInvitationURL: callInvitationURL,\n onFetchParticipantMenuItems: onFetchParticipantMenuItems,\n options: callControlOptions,\n increaseFlyoutItemSize: mobileView\n }} onFetchAvatarPersonaData={onFetchAvatarPersonaData} mobileView={mobileView} modalLayerHostId={props.modalLayerHostId} onRenderGalleryContent={() => _isInCall(callStatus) ? isNetworkHealthy(networkReconnectTileProps.networkReconnectValue) ? onRenderGalleryContentTrampoline() : <NetworkReconnectTile {...networkReconnectTileProps}\n /* /* @conditional-compile-remove(teams-meeting-conference) */ isMobile={mobileView} /> : <></>} updateSidePaneRenderer={props.updateSidePaneRenderer} mobileChatTabHeader={props.mobileChatTabHeader} onCloseChatPane={onCloseChatPane} dataUiId={'call-page'} latestErrors={props.latestErrors}\n /* @conditional-compile-remove(notifications) */ latestNotifications={latestNotifications} onDismissError={props.onDismissError}\n /* @conditional-compile-remove(notifications) */ onDismissNotification={onDismissNotification} onUserSetOverflowGalleryPositionChange={onSetUserSetOverflowGalleryPosition} onUserSetGalleryLayoutChange={onUserSetGalleryLayoutChange} userSetGalleryLayout={galleryLayout} capabilitiesChangedNotificationBarProps={props.capabilitiesChangedNotificationBarProps} onSetDialpadPage={() => setDtmfDialerPresent(!dtmfDialerPresent)} dtmfDialerPresent={dtmfDialerPresent} setIsPromptOpen={setIsPromptOpen} setPromptProps={setPromptProps} hideSpotlightButtons={options?.spotlight?.hideSpotlightButtons} pinnedParticipants={pinnedParticipants} setPinnedParticipants={setPinnedParticipants} />\n {<Prompt isOpen={isPromptOpen} onDismiss={() => setIsPromptOpen(false)} {...promptProps} />}\n </>;\n};\n\n/**\n * @private\n */\nexport const isNetworkHealthy = (value: DiagnosticQuality | boolean | undefined): boolean => {\n // We know that the value is actually of type DiagnosticQuality for this diagnostic.\n // We ignore any boolen values, considering the network to still be healthy.\n // Thus, only DiagnosticQuality.Poor or .Bad indicate network problems.\n return value === true || value === false || value === undefined || value === DiagnosticQuality.Good;\n};"]}
@@ -1,6 +1,5 @@
1
1
  /// <reference types="react" />
2
2
  import { ActiveErrorMessage } from "../../../../../react-components/src";
3
- import { DeviceCheckOptions } from '../CallComposite';
4
3
  import { SidePaneRenderer } from '../components/SidePane/SidePaneProvider';
5
4
  import { CapabilitiesChangeNotificationBarProps } from '../components/CapabilitiesChangedNotificationBar';
6
5
  /**
@@ -13,12 +12,6 @@ export interface ConfigurationPageProps {
13
12
  latestErrors: ActiveErrorMessage[];
14
13
  onDismissError: (error: ActiveErrorMessage) => void;
15
14
  modalLayerHostId: string;
16
- deviceChecks?: DeviceCheckOptions;
17
- onPermissionsTroubleshootingClick?: (permissionsState: {
18
- camera: PermissionState;
19
- microphone: PermissionState;
20
- }) => void;
21
- onNetworkingTroubleShootingClick?: () => void;
22
15
  capabilitiesChangedNotificationBarProps?: CapabilitiesChangeNotificationBarProps;
23
16
  logo?: {
24
17
  url: string;
@@ -10,8 +10,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  });
11
11
  };
12
12
  import React, { useCallback, useMemo } from 'react';
13
- /* @conditional-compile-remove(call-readiness) */
14
- import { useState } from 'react';
15
13
  import { useAdaptedSelector } from '../hooks/useAdaptedSelector';
16
14
  import { useHandlers } from '../hooks/useHandlers';
17
15
  import { LocalDeviceSettings } from '../components/LocalDeviceSettings';
@@ -29,10 +27,6 @@ import { bannerNotificationStyles } from '../styles/CallPage.styles';
29
27
  import { usePropsFor } from '../hooks/usePropsFor';
30
28
  import { useAdapter } from '../adapter/CallAdapterProvider';
31
29
  import { ConfigurationPageErrorBar } from '../components/ConfigurationPageErrorBar';
32
- /* @conditional-compile-remove(call-readiness) */
33
- import { getDevicePermissionState } from '../utils';
34
- /* @conditional-compile-remove(call-readiness) */
35
- import { CallReadinessModal, CallReadinessModalFallBack } from '../components/CallReadinessModal';
36
30
  import { VIDEO_EFFECTS_SIDE_PANE_WIDTH_REM, useVideoEffectsPane } from '../components/SidePane/useVideoEffectsPane';
37
31
  import { SidePane } from '../components/SidePane/SidePane';
38
32
  import { useIsParticularSidePaneOpen } from '../components/SidePane/SidePaneProvider';
@@ -42,27 +36,15 @@ import { SvgWithWordWrapping } from '../components/SvgWithWordWrapping';
42
36
  * @private
43
37
  */
44
38
  export const ConfigurationPage = (props) => {
45
- var _a, _b, _c, _d;
46
- const { startCallHandler, mobileView, modalLayerHostId,
47
- /* @conditional-compile-remove(call-readiness) */ deviceChecks,
48
- /* @conditional-compile-remove(call-readiness) */ onPermissionsTroubleshootingClick,
49
- /* @conditional-compile-remove(call-readiness) */ onNetworkingTroubleShootingClick } = props;
39
+ var _a, _b, _c;
40
+ const { startCallHandler, mobileView, modalLayerHostId } = props;
50
41
  const theme = useTheme();
51
42
  const options = useAdaptedSelector(getCallingSelector(DevicesButton));
52
43
  const localDeviceSettingsHandlers = useHandlers(LocalDeviceSettings);
53
44
  const { video: cameraPermissionGranted, audio: microphonePermissionGranted } = useSelector(devicePermissionSelector);
54
- /* @conditional-compile-remove(call-readiness) */
55
- // use permission API to get video and audio permission state
56
- const [videoState, setVideoState] = useState(undefined);
57
- /* @conditional-compile-remove(call-readiness) */
58
- const [audioState, setAudioState] = useState(undefined);
59
- /* @conditional-compile-remove(call-readiness) */
60
- getDevicePermissionState(setVideoState, setAudioState);
61
45
  const errorBarProps = usePropsFor(ErrorBar);
62
46
  const adapter = useAdapter();
63
47
  const deviceState = adapter.getState().devices;
64
- /* @conditional-compile-remove(unsupported-browser) */
65
- const environmentInfo = adapter.getState().environmentInfo;
66
48
  let disableStartCallButton = !microphonePermissionGranted || ((_a = deviceState.microphones) === null || _a === void 0 ? void 0 : _a.length) === 0;
67
49
  const role = (_b = adapter.getState().call) === null || _b === void 0 ? void 0 : _b.role;
68
50
  const isCameraOn = useSelector(localVideoSelector).isAvailable;
@@ -79,41 +61,12 @@ export const ConfigurationPage = (props) => {
79
61
  // because microphone device permission is not needed for the user's role
80
62
  disableStartCallButton = false;
81
63
  }
82
- /* @conditional-compile-remove(call-readiness) */
83
- // Overrides role permissions if CallCompositeOptions deviceChecks are set
84
- if (deviceChecks) {
85
- if (['doNotPrompt', 'optional'].includes(deviceChecks.camera) && ['doNotPrompt', 'optional'].includes(deviceChecks.microphone)) {
86
- disableStartCallButton = false;
87
- }
88
- else if (deviceChecks.camera === 'required') {
89
- disableStartCallButton = !cameraPermissionGranted || ((_c = deviceState.cameras) === null || _c === void 0 ? void 0 : _c.length) === 0;
90
- }
91
- }
92
64
  const locale = useLocale();
93
65
  const title = locale.strings.call.configurationPageTitle.length > 0 ? React.createElement(Stack.Item, { className: mobileView ? titleContainerStyleMobile(theme) : titleContainerStyleDesktop(theme) },
94
66
  React.createElement(SvgWithWordWrapping, { width: mobileView ? 325 : 445, lineHeightPx: 16 * 1.5, bufferHeightPx: 16, text: locale.strings.call.configurationPageTitle })) : React.createElement(React.Fragment, null);
95
67
  const callDescription = locale.strings.call.configurationPageCallDetails && React.createElement(Stack.Item, { className: mobileView ? callDetailsStyleMobile(theme) : callDetailsStyleDesktop(theme) }, locale.strings.call.configurationPageCallDetails);
96
- const mobileWithPreview = mobileView && role !== 'Consumer';
97
- /* @conditional-compile-remove(call-readiness) */
98
- const permissionsState = {
99
- // fall back to using cameraPermissionGranted and microphonePermissionGranted if permission API is not supported
100
- camera: videoState && videoState !== 'unsupported' ? cameraPermissionGranted !== false ? videoState : 'denied' : cameraPermissionGranted !== false ? cameraPermissionGranted ? 'granted' : 'prompt' : 'denied',
101
- microphone: audioState && audioState !== 'unsupported' ? microphonePermissionGranted !== false ? audioState : 'denied' : microphonePermissionGranted !== false ? microphonePermissionGranted ? 'granted' : 'prompt' : 'denied'
102
- };
103
- /* @conditional-compile-remove(call-readiness) */
104
- const networkErrors = errorBarProps.activeErrorMessages.filter(message => message.type === 'callNetworkQualityLow');
105
- /* @conditional-compile-remove(call-readiness) */
106
- const [isPermissionsModalDismissed, setIsPermissionsModalDismissed] = useState(true);
107
- // When permission API is not available, we want to show screen saying checking for access (disappears on its own)
68
+ const mobileWithPreview = mobileView && role !== 'Consumer'; // When permission API is not available, we want to show screen saying checking for access (disappears on its own)
108
69
  // then based on permission setting, we show permission denied or nothing
109
- /* @conditional-compile-remove(call-readiness) */
110
- const [minimumFallbackTimerElapsed, setMinimumFallbackTimerElapsed] = useState(false);
111
- /* @conditional-compile-remove(call-readiness) */
112
- setTimeout(() => {
113
- setMinimumFallbackTimerElapsed(true);
114
- }, 2000);
115
- /* @conditional-compile-remove(call-readiness) */
116
- const forceShowingCheckPermissions = !minimumFallbackTimerElapsed;
117
70
  const { toggleVideoEffectsPane, closeVideoEffectsPane, isVideoEffectsPaneOpen } = useVideoEffectsPane(props.updateSidePaneRenderer, mobileView, props.latestErrors, props.onDismissError);
118
71
  const startCall = useCallback(() => __awaiter(void 0, void 0, void 0, function* () {
119
72
  closeVideoEffectsPane();
@@ -123,27 +76,10 @@ export const ConfigurationPage = (props) => {
123
76
  hostId: modalLayerHostId
124
77
  }), [modalLayerHostId]);
125
78
  const filteredErrorBarProps = useMemo(() => (Object.assign(Object.assign({}, errorBarProps), { activeErrorMessages: filteredLatestErrors })), [errorBarProps, filteredLatestErrors]);
126
- const containerStyles = useMemo(() => { var _a; return configurationContainerStyle(!mobileView, (_a = props.backgroundImage) === null || _a === void 0 ? void 0 : _a.url); }, [mobileView, (_d = props.backgroundImage) === null || _d === void 0 ? void 0 : _d.url]);
79
+ const containerStyles = useMemo(() => { var _a; return configurationContainerStyle(!mobileView, (_a = props.backgroundImage) === null || _a === void 0 ? void 0 : _a.url); }, [mobileView, (_c = props.backgroundImage) === null || _c === void 0 ? void 0 : _c.url]);
127
80
  return React.createElement(Stack, { styles: containerStyles },
128
81
  React.createElement(Stack, { styles: bannerNotificationStyles },
129
- React.createElement(ConfigurationPageErrorBar
130
- /* @conditional-compile-remove(call-readiness) */
131
- // show trouble shooting error bar when encountering network error/ permission error
132
- , {
133
- /* @conditional-compile-remove(call-readiness) */
134
- // show trouble shooting error bar when encountering network error/ permission error
135
- showTroubleShootingErrorBar: !cameraPermissionGranted || !microphonePermissionGranted || networkErrors.length > 0,
136
- /* @conditional-compile-remove(call-readiness) */ permissionsState: permissionsState,
137
- /* @conditional-compile-remove(call-readiness) */ onNetworkingTroubleShootingClick: onNetworkingTroubleShootingClick,
138
- /* @conditional-compile-remove(call-readiness) */ onPermissionsTroubleshootingClick: onPermissionsTroubleshootingClick, errorBarProps: filteredErrorBarProps, onDismissError: props.onDismissError })), /* @conditional-compile-remove(call-readiness) */
139
- // show the following screen if permission API is availible (not unsupported) and videoState, audioState is assigned values
140
- videoState && videoState !== 'unsupported' && audioState && audioState !== 'unsupported' && React.createElement(CallReadinessModal, { modalLayerHostId: modalLayerHostId, mobileView: mobileView,
141
- /* @conditional-compile-remove(unsupported-browser) */ environmentInfo: environmentInfo, permissionsState: permissionsState, isPermissionsModalDismissed: isPermissionsModalDismissed, setIsPermissionsModalDismissed: setIsPermissionsModalDismissed, onPermissionsTroubleshootingClick: onPermissionsTroubleshootingClick }), /* @conditional-compile-remove(call-readiness) */
142
- // show the following screen if permission API is not availible (unsupported) and videoState, audioState is assigned values
143
- videoState && audioState && (videoState === 'unsupported' || audioState === 'unsupported') && React.createElement(CallReadinessModalFallBack
144
- /* @conditional-compile-remove(call-readiness) */ , {
145
- /* @conditional-compile-remove(call-readiness) */ modalLayerHostId: modalLayerHostId, mobileView: mobileView, checkPermissionModalShowing: forceShowingCheckPermissions, permissionsState: permissionsState, isPermissionsModalDismissed: isPermissionsModalDismissed,
146
- /* @conditional-compile-remove(unsupported-browser) */ environmentInfo: environmentInfo, setIsPermissionsModalDismissed: setIsPermissionsModalDismissed, onPermissionsTroubleshootingClick: onPermissionsTroubleshootingClick }),
82
+ React.createElement(ConfigurationPageErrorBar, { errorBarProps: filteredErrorBarProps, onDismissError: props.onDismissError })),
147
83
  React.createElement(Stack, { verticalFill: true, grow: true, horizontal: true, className: fillWidth },
148
84
  React.createElement(Stack, { className: configurationCenteredContent(mobileWithPreview, !!props.logo), verticalAlign: "center", verticalFill: mobileWithPreview, tokens: mobileWithPreview ? configurationStackTokensMobile : configurationStackTokensDesktop },
149
85
  React.createElement(Stack.Item, { styles: callDetailsContainerStyles },
@@ -153,11 +89,8 @@ export const ConfigurationPage = (props) => {
153
89
  React.createElement(Stack, { horizontal: !mobileWithPreview, horizontalAlign: mobileWithPreview ? 'stretch' : 'center', verticalFill: mobileWithPreview, tokens: deviceConfigurationStackTokens },
154
90
  localPreviewTrampoline(mobileWithPreview, !!(role === 'Consumer')),
155
91
  React.createElement(Stack, { styles: mobileView ? undefined : configurationSectionStyle },
156
- !mobileWithPreview && React.createElement(Stack, { className: mobileView ? undefined : selectionContainerStyle(theme, isSafariBrowserEnvironmentTrampoline(/* @conditional-compile-remove(unsupported-browser) */ environmentInfo)) },
157
- React.createElement(LocalDeviceSettings, Object.assign({}, options, localDeviceSettingsHandlers, { cameraPermissionGranted: cameraPermissionGrantedTrampoline(cameraPermissionGranted, /* @conditional-compile-remove(call-readiness) */ videoState), microphonePermissionGranted: micPermissionGrantedTrampoline(microphonePermissionGranted, /* @conditional-compile-remove(call-readiness) */ audioState),
158
- /* @conditional-compile-remove(call-readiness) */ onClickEnableDevicePermission: () => {
159
- setIsPermissionsModalDismissed(true);
160
- }, onClickVideoEffects: toggleVideoEffectsPane }))),
92
+ !mobileWithPreview && React.createElement(Stack, { className: mobileView ? undefined : selectionContainerStyle(theme, isSafariBrowserEnvironmentTrampoline()) },
93
+ React.createElement(LocalDeviceSettings, Object.assign({}, options, localDeviceSettingsHandlers, { cameraPermissionGranted: cameraPermissionGrantedTrampoline(cameraPermissionGranted), microphonePermissionGranted: micPermissionGrantedTrampoline(microphonePermissionGranted), onClickVideoEffects: toggleVideoEffectsPane }))),
161
94
  React.createElement(Stack, { styles: mobileWithPreview ? startCallButtonContainerStyleMobile : startCallButtonContainerStyleDesktop, horizontalAlign: mobileWithPreview ? 'stretch' : 'end' },
162
95
  React.createElement(StartCallButton, { className: mobileWithPreview ? startCallButtonStyleMobile : startCallButtonStyleDesktop, onClick: startCall, disabled: disableStartCallButton, hideIcon: true }))))),
163
96
  React.createElement(Panel, { isOpen: isVideoEffectsPaneOpen, hasCloseButton: false, isBlocking: false, isHiddenOnDismiss: false, styles: panelStyles, focusTrapZoneProps: panelFocusProps, layerProps: panelLayerProps, type: PanelType.custom, customWidth: `${VIDEO_EFFECTS_SIDE_PANE_WIDTH_REM}rem` },
@@ -170,13 +103,9 @@ const localPreviewTrampoline = (mobileView, doNotShow) => {
170
103
  return React.createElement(LocalPreview, { mobileView: mobileView, showDevicesButton: mobileView });
171
104
  };
172
105
  const cameraPermissionGrantedTrampoline = (cameraPermissionGranted, videoState) => {
173
- /* @conditional-compile-remove(call-readiness) */
174
- return videoState && videoState !== 'unsupported' ? videoState === 'granted' : cameraPermissionGranted;
175
106
  return cameraPermissionGranted;
176
107
  };
177
108
  const micPermissionGrantedTrampoline = (microphonePermissionGranted, audioState) => {
178
- /* @conditional-compile-remove(call-readiness) */
179
- return audioState && audioState !== 'unsupported' ? audioState === 'granted' : microphonePermissionGranted;
180
109
  return microphonePermissionGranted;
181
110
  };
182
111
  const Logo = (props) => {
@@ -186,8 +115,6 @@ const Logo = (props) => {
186
115
  return React.createElement(Image, { styles: logoStyles(props.logo.shape), src: props.logo.url, alt: props.logo.alt });
187
116
  };
188
117
  const isSafariBrowserEnvironmentTrampoline = (environmentInfo) => {
189
- /* @conditional-compile-remove(unsupported-browser) */
190
- return environmentInfo && (environmentInfo === null || environmentInfo === void 0 ? void 0 : environmentInfo.environment.browser.toLowerCase()) === 'safari';
191
118
  return false;
192
119
  };
193
120
  //# sourceMappingURL=ConfigurationPage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigurationPage.js","sourceRoot":"","sources":["../../../../../../../preprocess-dist/react-composites/src/composites/CallComposite/pages/ConfigurationPage.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React, { useCallback, useMemo } from 'react';\n/* @conditional-compile-remove(call-readiness) */\nimport { useState } from 'react';\nimport { useAdaptedSelector } from '../hooks/useAdaptedSelector';\nimport { useHandlers } from '../hooks/useHandlers';\nimport { LocalDeviceSettings } from '../components/LocalDeviceSettings';\nimport { StartCallButton } from '../components/StartCallButton';\nimport { devicePermissionSelector } from '../selectors/devicePermissionSelector';\nimport { useSelector } from '../hooks/useSelector';\nimport { ActiveErrorMessage, DevicesButton, ErrorBar, useTheme } from '@internal/react-components';\nimport { getCallingSelector } from '@internal/calling-component-bindings';\nimport { Image, Panel, PanelType, Stack } from '@fluentui/react';\nimport { callDetailsContainerStyles, configurationCenteredContent, configurationSectionStyle, deviceConfigurationStackTokens, fillWidth, logoStyles, panelFocusProps, panelStyles, startCallButtonStyleDesktop } from '../styles/CallConfiguration.styles';\nimport { LocalPreview } from '../components/LocalPreview';\nimport { callDetailsStyleDesktop, callDetailsStyleMobile, configurationStackTokensDesktop, configurationStackTokensMobile, configurationContainerStyle, selectionContainerStyle, startCallButtonContainerStyleDesktop, startCallButtonContainerStyleMobile, startCallButtonStyleMobile, titleContainerStyleDesktop, titleContainerStyleMobile } from '../styles/CallConfiguration.styles';\nimport { useLocale } from '../../localization';\nimport { bannerNotificationStyles } from '../styles/CallPage.styles';\nimport { usePropsFor } from '../hooks/usePropsFor';\nimport { useAdapter } from '../adapter/CallAdapterProvider';\n/* @conditional-compile-remove(call-readiness) */\nimport { DeviceCheckOptions } from '../CallComposite';\nimport { ConfigurationPageErrorBar } from '../components/ConfigurationPageErrorBar';\n/* @conditional-compile-remove(call-readiness) */\nimport { getDevicePermissionState } from '../utils';\n/* @conditional-compile-remove(call-readiness) */\nimport { CallReadinessModal, CallReadinessModalFallBack } from '../components/CallReadinessModal';\nimport { VIDEO_EFFECTS_SIDE_PANE_WIDTH_REM, useVideoEffectsPane } from '../components/SidePane/useVideoEffectsPane';\nimport { SidePane } from '../components/SidePane/SidePane';\nimport { SidePaneRenderer } from '../components/SidePane/SidePaneProvider';\nimport { useIsParticularSidePaneOpen } from '../components/SidePane/SidePaneProvider';\nimport { localVideoSelector } from '../../CallComposite/selectors/localVideoStreamSelector';\nimport { CapabilitiesChangeNotificationBarProps } from '../components/CapabilitiesChangedNotificationBar';\nimport { SvgWithWordWrapping } from '../components/SvgWithWordWrapping';\nimport { EnvironmentInfo } from '@azure/communication-calling';\n\n/**\n * @private\n */\nexport interface ConfigurationPageProps {\n mobileView: boolean;\n startCallHandler(): void;\n updateSidePaneRenderer: (renderer: SidePaneRenderer | undefined) => void;\n latestErrors: ActiveErrorMessage[];\n onDismissError: (error: ActiveErrorMessage) => void;\n modalLayerHostId: string;\n /* @conditional-compile-remove(call-readiness) */\n deviceChecks?: DeviceCheckOptions;\n /* @conditional-compile-remove(call-readiness) */\n onPermissionsTroubleshootingClick?: (permissionsState: {\n camera: PermissionState;\n microphone: PermissionState;\n }) => void;\n /* @conditional-compile-remove(call-readiness) */\n onNetworkingTroubleShootingClick?: () => void;\n capabilitiesChangedNotificationBarProps?: CapabilitiesChangeNotificationBarProps;\n logo?: {\n url: string;\n alt?: string;\n shape?: 'unset' | 'circle';\n };\n backgroundImage?: {\n url: string;\n };\n}\n\n/**\n * @private\n */\nexport const ConfigurationPage = (props: ConfigurationPageProps): JSX.Element => {\n const {\n startCallHandler,\n mobileView,\n modalLayerHostId,\n /* @conditional-compile-remove(call-readiness) */deviceChecks,\n /* @conditional-compile-remove(call-readiness) */onPermissionsTroubleshootingClick,\n /* @conditional-compile-remove(call-readiness) */onNetworkingTroubleShootingClick\n } = props;\n const theme = useTheme();\n const options = useAdaptedSelector(getCallingSelector(DevicesButton));\n const localDeviceSettingsHandlers = useHandlers(LocalDeviceSettings);\n const {\n video: cameraPermissionGranted,\n audio: microphonePermissionGranted\n } = useSelector(devicePermissionSelector);\n /* @conditional-compile-remove(call-readiness) */\n // use permission API to get video and audio permission state\n const [videoState, setVideoState] = useState<PermissionState | 'unsupported' | undefined>(undefined);\n /* @conditional-compile-remove(call-readiness) */\n const [audioState, setAudioState] = useState<PermissionState | 'unsupported' | undefined>(undefined);\n /* @conditional-compile-remove(call-readiness) */\n getDevicePermissionState(setVideoState, setAudioState);\n const errorBarProps = usePropsFor(ErrorBar);\n const adapter = useAdapter();\n const deviceState = adapter.getState().devices;\n /* @conditional-compile-remove(unsupported-browser) */\n const environmentInfo = adapter.getState().environmentInfo;\n let disableStartCallButton = !microphonePermissionGranted || deviceState.microphones?.length === 0;\n const role = adapter.getState().call?.role;\n const isCameraOn = useSelector(localVideoSelector).isAvailable;\n let filteredLatestErrors: ActiveErrorMessage[] = props.latestErrors;\n\n // TODO: move this logic to the error bar selector once role is plumbed from the headless SDK\n if (role !== 'Consumer') {\n filteredLatestErrors = filteredLatestErrors.filter(e => e.type !== 'callCameraAccessDenied' && e.type !== 'callCameraAccessDeniedSafari');\n }\n if ((useIsParticularSidePaneOpen('videoeffects') || !isCameraOn) && errorBarProps) {\n filteredLatestErrors = filteredLatestErrors.filter(e => e.type !== 'unableToStartVideoEffect');\n }\n if (role === 'Consumer') {\n // If user's role permissions do not allow access to the microphone button then DO NOT disable the start call button\n // because microphone device permission is not needed for the user's role\n disableStartCallButton = false;\n }\n\n /* @conditional-compile-remove(call-readiness) */\n // Overrides role permissions if CallCompositeOptions deviceChecks are set\n if (deviceChecks) {\n if (['doNotPrompt', 'optional'].includes(deviceChecks.camera) && ['doNotPrompt', 'optional'].includes(deviceChecks.microphone)) {\n disableStartCallButton = false;\n } else if (deviceChecks.camera === 'required') {\n disableStartCallButton = !cameraPermissionGranted || deviceState.cameras?.length === 0;\n }\n }\n const locale = useLocale();\n const title = locale.strings.call.configurationPageTitle.length > 0 ? <Stack.Item className={mobileView ? titleContainerStyleMobile(theme) : titleContainerStyleDesktop(theme)}>\n <SvgWithWordWrapping width={mobileView ? 325 : 445} lineHeightPx={16 * 1.5} bufferHeightPx={16} text={locale.strings.call.configurationPageTitle} />\n </Stack.Item> : <></>;\n const callDescription = locale.strings.call.configurationPageCallDetails && <Stack.Item className={mobileView ? callDetailsStyleMobile(theme) : callDetailsStyleDesktop(theme)}>\n {locale.strings.call.configurationPageCallDetails}\n </Stack.Item>;\n const mobileWithPreview = mobileView && role !== 'Consumer';\n\n /* @conditional-compile-remove(call-readiness) */\n const permissionsState: {\n camera: PermissionState;\n microphone: PermissionState;\n } = {\n // fall back to using cameraPermissionGranted and microphonePermissionGranted if permission API is not supported\n camera: videoState && videoState !== 'unsupported' ? cameraPermissionGranted !== false ? videoState : 'denied' : cameraPermissionGranted !== false ? cameraPermissionGranted ? 'granted' : 'prompt' : 'denied',\n microphone: audioState && audioState !== 'unsupported' ? microphonePermissionGranted !== false ? audioState : 'denied' : microphonePermissionGranted !== false ? microphonePermissionGranted ? 'granted' : 'prompt' : 'denied'\n };\n /* @conditional-compile-remove(call-readiness) */\n const networkErrors = errorBarProps.activeErrorMessages.filter(message => message.type === 'callNetworkQualityLow');\n\n /* @conditional-compile-remove(call-readiness) */\n const [isPermissionsModalDismissed, setIsPermissionsModalDismissed] = useState(true);\n\n // When permission API is not available, we want to show screen saying checking for access (disappears on its own)\n // then based on permission setting, we show permission denied or nothing\n /* @conditional-compile-remove(call-readiness) */\n const [minimumFallbackTimerElapsed, setMinimumFallbackTimerElapsed] = useState(false);\n /* @conditional-compile-remove(call-readiness) */\n setTimeout(() => {\n setMinimumFallbackTimerElapsed(true);\n }, 2000);\n /* @conditional-compile-remove(call-readiness) */\n const forceShowingCheckPermissions = !minimumFallbackTimerElapsed;\n const {\n toggleVideoEffectsPane,\n closeVideoEffectsPane,\n isVideoEffectsPaneOpen\n } = useVideoEffectsPane(props.updateSidePaneRenderer, mobileView, props.latestErrors, props.onDismissError);\n const startCall = useCallback(async () => {\n closeVideoEffectsPane();\n startCallHandler();\n }, [startCallHandler, closeVideoEffectsPane]);\n const panelLayerProps = useMemo(() => ({\n hostId: modalLayerHostId\n }), [modalLayerHostId]);\n const filteredErrorBarProps = useMemo(() => ({\n ...errorBarProps,\n activeErrorMessages: filteredLatestErrors\n }), [errorBarProps, filteredLatestErrors]);\n const containerStyles = useMemo(() => configurationContainerStyle(!mobileView, props.backgroundImage?.url), [mobileView, props.backgroundImage?.url]);\n return <Stack styles={containerStyles}>\n <Stack styles={bannerNotificationStyles}>\n <ConfigurationPageErrorBar\n /* @conditional-compile-remove(call-readiness) */\n // show trouble shooting error bar when encountering network error/ permission error\n showTroubleShootingErrorBar={!cameraPermissionGranted || !microphonePermissionGranted || networkErrors.length > 0}\n /* @conditional-compile-remove(call-readiness) */ permissionsState={permissionsState}\n /* @conditional-compile-remove(call-readiness) */ onNetworkingTroubleShootingClick={onNetworkingTroubleShootingClick}\n /* @conditional-compile-remove(call-readiness) */ onPermissionsTroubleshootingClick={onPermissionsTroubleshootingClick} errorBarProps={filteredErrorBarProps} onDismissError={props.onDismissError} />\n </Stack>\n {/* @conditional-compile-remove(call-readiness) */\n // show the following screen if permission API is availible (not unsupported) and videoState, audioState is assigned values\n videoState && videoState !== 'unsupported' && audioState && audioState !== 'unsupported' && <CallReadinessModal modalLayerHostId={modalLayerHostId} mobileView={mobileView}\n /* @conditional-compile-remove(unsupported-browser) */ environmentInfo={environmentInfo} permissionsState={permissionsState} isPermissionsModalDismissed={isPermissionsModalDismissed} setIsPermissionsModalDismissed={setIsPermissionsModalDismissed} onPermissionsTroubleshootingClick={onPermissionsTroubleshootingClick} />}\n\n {/* @conditional-compile-remove(call-readiness) */\n // show the following screen if permission API is not availible (unsupported) and videoState, audioState is assigned values\n videoState && audioState && (videoState === 'unsupported' || audioState === 'unsupported') && <CallReadinessModalFallBack\n /* @conditional-compile-remove(call-readiness) */ modalLayerHostId={modalLayerHostId} mobileView={mobileView} checkPermissionModalShowing={forceShowingCheckPermissions} permissionsState={permissionsState} isPermissionsModalDismissed={isPermissionsModalDismissed}\n /* @conditional-compile-remove(unsupported-browser) */ environmentInfo={environmentInfo} setIsPermissionsModalDismissed={setIsPermissionsModalDismissed} onPermissionsTroubleshootingClick={onPermissionsTroubleshootingClick} />}\n\n <Stack verticalFill grow horizontal className={fillWidth}>\n <Stack className={configurationCenteredContent(mobileWithPreview, !!props.logo)} verticalAlign=\"center\" verticalFill={mobileWithPreview} tokens={mobileWithPreview ? configurationStackTokensMobile : configurationStackTokensDesktop}>\n <Stack.Item styles={callDetailsContainerStyles}>\n <Logo logo={props.logo} />\n {title}\n {callDescription}\n </Stack.Item>\n <Stack horizontal={!mobileWithPreview} horizontalAlign={mobileWithPreview ? 'stretch' : 'center'} verticalFill={mobileWithPreview} tokens={deviceConfigurationStackTokens}>\n {localPreviewTrampoline(mobileWithPreview, !!(role === 'Consumer'))}\n <Stack styles={mobileView ? undefined : configurationSectionStyle}>\n {!mobileWithPreview && <Stack className={mobileView ? undefined : selectionContainerStyle(theme, isSafariBrowserEnvironmentTrampoline( /* @conditional-compile-remove(unsupported-browser) */environmentInfo))}>\n <LocalDeviceSettings {...options} {...localDeviceSettingsHandlers} cameraPermissionGranted={cameraPermissionGrantedTrampoline(cameraPermissionGranted, /* @conditional-compile-remove(call-readiness) */videoState)} microphonePermissionGranted={micPermissionGrantedTrampoline(microphonePermissionGranted, /* @conditional-compile-remove(call-readiness) */audioState)}\n /* @conditional-compile-remove(call-readiness) */ onClickEnableDevicePermission={() => {\n setIsPermissionsModalDismissed(true);\n }} onClickVideoEffects={toggleVideoEffectsPane} />\n </Stack>}\n <Stack styles={mobileWithPreview ? startCallButtonContainerStyleMobile : startCallButtonContainerStyleDesktop} horizontalAlign={mobileWithPreview ? 'stretch' : 'end'}>\n <StartCallButton className={mobileWithPreview ? startCallButtonStyleMobile : startCallButtonStyleDesktop} onClick={startCall} disabled={disableStartCallButton} hideIcon={true} />\n </Stack>\n </Stack>\n </Stack>\n </Stack>\n <Panel isOpen={isVideoEffectsPaneOpen} hasCloseButton={false} isBlocking={false} isHiddenOnDismiss={false} styles={panelStyles} focusTrapZoneProps={panelFocusProps} layerProps={panelLayerProps} type={PanelType.custom} customWidth={`${VIDEO_EFFECTS_SIDE_PANE_WIDTH_REM}rem`}>\n <SidePane mobileView={props.mobileView} updateSidePaneRenderer={props.updateSidePaneRenderer} maxWidth={`${VIDEO_EFFECTS_SIDE_PANE_WIDTH_REM}rem`} minWidth={`${VIDEO_EFFECTS_SIDE_PANE_WIDTH_REM}rem`} />\n </Panel>\n </Stack>\n </Stack>;\n};\nconst localPreviewTrampoline = (mobileView: boolean, doNotShow?: boolean): JSX.Element | undefined => {\n if (doNotShow) {\n return undefined;\n }\n return <LocalPreview mobileView={mobileView} showDevicesButton={mobileView} />;\n};\nconst cameraPermissionGrantedTrampoline = (cameraPermissionGranted: boolean | undefined, videoState?: PermissionState | 'unsupported' | undefined): boolean | undefined => {\n /* @conditional-compile-remove(call-readiness) */\n return videoState && videoState !== 'unsupported' ? videoState === 'granted' : cameraPermissionGranted;\n return cameraPermissionGranted;\n};\nconst micPermissionGrantedTrampoline = (microphonePermissionGranted: boolean | undefined, audioState?: PermissionState | 'unsupported' | undefined): boolean | undefined => {\n /* @conditional-compile-remove(call-readiness) */\n return audioState && audioState !== 'unsupported' ? audioState === 'granted' : microphonePermissionGranted;\n return microphonePermissionGranted;\n};\nconst Logo = (props: {\n logo?: {\n url: string;\n alt?: string;\n shape?: 'unset' | 'circle';\n };\n}): JSX.Element => {\n if (!props.logo) {\n return <></>;\n }\n return <Image styles={logoStyles(props.logo.shape)} src={props.logo.url} alt={props.logo.alt} />;\n};\nconst isSafariBrowserEnvironmentTrampoline = (environmentInfo?: EnvironmentInfo): boolean | undefined => {\n /* @conditional-compile-remove(unsupported-browser) */\n return environmentInfo && environmentInfo?.environment.browser.toLowerCase() === 'safari';\n return false;\n};"]}
1
+ {"version":3,"file":"ConfigurationPage.js","sourceRoot":"","sources":["../../../../../../../preprocess-dist/react-composites/src/composites/CallComposite/pages/ConfigurationPage.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React, { useCallback, useMemo } from 'react';\nimport { useAdaptedSelector } from '../hooks/useAdaptedSelector';\nimport { useHandlers } from '../hooks/useHandlers';\nimport { LocalDeviceSettings } from '../components/LocalDeviceSettings';\nimport { StartCallButton } from '../components/StartCallButton';\nimport { devicePermissionSelector } from '../selectors/devicePermissionSelector';\nimport { useSelector } from '../hooks/useSelector';\nimport { ActiveErrorMessage, DevicesButton, ErrorBar, useTheme } from '@internal/react-components';\nimport { getCallingSelector } from '@internal/calling-component-bindings';\nimport { Image, Panel, PanelType, Stack } from '@fluentui/react';\nimport { callDetailsContainerStyles, configurationCenteredContent, configurationSectionStyle, deviceConfigurationStackTokens, fillWidth, logoStyles, panelFocusProps, panelStyles, startCallButtonStyleDesktop } from '../styles/CallConfiguration.styles';\nimport { LocalPreview } from '../components/LocalPreview';\nimport { callDetailsStyleDesktop, callDetailsStyleMobile, configurationStackTokensDesktop, configurationStackTokensMobile, configurationContainerStyle, selectionContainerStyle, startCallButtonContainerStyleDesktop, startCallButtonContainerStyleMobile, startCallButtonStyleMobile, titleContainerStyleDesktop, titleContainerStyleMobile } from '../styles/CallConfiguration.styles';\nimport { useLocale } from '../../localization';\nimport { bannerNotificationStyles } from '../styles/CallPage.styles';\nimport { usePropsFor } from '../hooks/usePropsFor';\nimport { useAdapter } from '../adapter/CallAdapterProvider';\nimport { ConfigurationPageErrorBar } from '../components/ConfigurationPageErrorBar';\nimport { VIDEO_EFFECTS_SIDE_PANE_WIDTH_REM, useVideoEffectsPane } from '../components/SidePane/useVideoEffectsPane';\nimport { SidePane } from '../components/SidePane/SidePane';\nimport { SidePaneRenderer } from '../components/SidePane/SidePaneProvider';\nimport { useIsParticularSidePaneOpen } from '../components/SidePane/SidePaneProvider';\nimport { localVideoSelector } from '../../CallComposite/selectors/localVideoStreamSelector';\nimport { CapabilitiesChangeNotificationBarProps } from '../components/CapabilitiesChangedNotificationBar';\nimport { SvgWithWordWrapping } from '../components/SvgWithWordWrapping';\nimport { EnvironmentInfo } from '@azure/communication-calling';\n\n/**\n * @private\n */\nexport interface ConfigurationPageProps {\n mobileView: boolean;\n startCallHandler(): void;\n updateSidePaneRenderer: (renderer: SidePaneRenderer | undefined) => void;\n latestErrors: ActiveErrorMessage[];\n onDismissError: (error: ActiveErrorMessage) => void;\n modalLayerHostId: string;\n capabilitiesChangedNotificationBarProps?: CapabilitiesChangeNotificationBarProps;\n logo?: {\n url: string;\n alt?: string;\n shape?: 'unset' | 'circle';\n };\n backgroundImage?: {\n url: string;\n };\n}\n\n/**\n * @private\n */\nexport const ConfigurationPage = (props: ConfigurationPageProps): JSX.Element => {\n const {\n startCallHandler,\n mobileView,\n modalLayerHostId\n } = props;\n const theme = useTheme();\n const options = useAdaptedSelector(getCallingSelector(DevicesButton));\n const localDeviceSettingsHandlers = useHandlers(LocalDeviceSettings);\n const {\n video: cameraPermissionGranted,\n audio: microphonePermissionGranted\n } = useSelector(devicePermissionSelector);\n const errorBarProps = usePropsFor(ErrorBar);\n const adapter = useAdapter();\n const deviceState = adapter.getState().devices;\n let disableStartCallButton = !microphonePermissionGranted || deviceState.microphones?.length === 0;\n const role = adapter.getState().call?.role;\n const isCameraOn = useSelector(localVideoSelector).isAvailable;\n let filteredLatestErrors: ActiveErrorMessage[] = props.latestErrors;\n\n // TODO: move this logic to the error bar selector once role is plumbed from the headless SDK\n if (role !== 'Consumer') {\n filteredLatestErrors = filteredLatestErrors.filter(e => e.type !== 'callCameraAccessDenied' && e.type !== 'callCameraAccessDeniedSafari');\n }\n if ((useIsParticularSidePaneOpen('videoeffects') || !isCameraOn) && errorBarProps) {\n filteredLatestErrors = filteredLatestErrors.filter(e => e.type !== 'unableToStartVideoEffect');\n }\n if (role === 'Consumer') {\n // If user's role permissions do not allow access to the microphone button then DO NOT disable the start call button\n // because microphone device permission is not needed for the user's role\n disableStartCallButton = false;\n }\n const locale = useLocale();\n const title = locale.strings.call.configurationPageTitle.length > 0 ? <Stack.Item className={mobileView ? titleContainerStyleMobile(theme) : titleContainerStyleDesktop(theme)}>\n <SvgWithWordWrapping width={mobileView ? 325 : 445} lineHeightPx={16 * 1.5} bufferHeightPx={16} text={locale.strings.call.configurationPageTitle} />\n </Stack.Item> : <></>;\n const callDescription = locale.strings.call.configurationPageCallDetails && <Stack.Item className={mobileView ? callDetailsStyleMobile(theme) : callDetailsStyleDesktop(theme)}>\n {locale.strings.call.configurationPageCallDetails}\n </Stack.Item>;\n const mobileWithPreview = mobileView && role !== 'Consumer'; // When permission API is not available, we want to show screen saying checking for access (disappears on its own)\n // then based on permission setting, we show permission denied or nothing\n const {\n toggleVideoEffectsPane,\n closeVideoEffectsPane,\n isVideoEffectsPaneOpen\n } = useVideoEffectsPane(props.updateSidePaneRenderer, mobileView, props.latestErrors, props.onDismissError);\n const startCall = useCallback(async () => {\n closeVideoEffectsPane();\n startCallHandler();\n }, [startCallHandler, closeVideoEffectsPane]);\n const panelLayerProps = useMemo(() => ({\n hostId: modalLayerHostId\n }), [modalLayerHostId]);\n const filteredErrorBarProps = useMemo(() => ({\n ...errorBarProps,\n activeErrorMessages: filteredLatestErrors\n }), [errorBarProps, filteredLatestErrors]);\n const containerStyles = useMemo(() => configurationContainerStyle(!mobileView, props.backgroundImage?.url), [mobileView, props.backgroundImage?.url]);\n return <Stack styles={containerStyles}>\n <Stack styles={bannerNotificationStyles}>\n <ConfigurationPageErrorBar errorBarProps={filteredErrorBarProps} onDismissError={props.onDismissError} />\n </Stack>\n {}\n\n {}\n\n <Stack verticalFill grow horizontal className={fillWidth}>\n <Stack className={configurationCenteredContent(mobileWithPreview, !!props.logo)} verticalAlign=\"center\" verticalFill={mobileWithPreview} tokens={mobileWithPreview ? configurationStackTokensMobile : configurationStackTokensDesktop}>\n <Stack.Item styles={callDetailsContainerStyles}>\n <Logo logo={props.logo} />\n {title}\n {callDescription}\n </Stack.Item>\n <Stack horizontal={!mobileWithPreview} horizontalAlign={mobileWithPreview ? 'stretch' : 'center'} verticalFill={mobileWithPreview} tokens={deviceConfigurationStackTokens}>\n {localPreviewTrampoline(mobileWithPreview, !!(role === 'Consumer'))}\n <Stack styles={mobileView ? undefined : configurationSectionStyle}>\n {!mobileWithPreview && <Stack className={mobileView ? undefined : selectionContainerStyle(theme, isSafariBrowserEnvironmentTrampoline())}>\n <LocalDeviceSettings {...options} {...localDeviceSettingsHandlers} cameraPermissionGranted={cameraPermissionGrantedTrampoline(cameraPermissionGranted)} microphonePermissionGranted={micPermissionGrantedTrampoline(microphonePermissionGranted)} onClickVideoEffects={toggleVideoEffectsPane} />\n </Stack>}\n <Stack styles={mobileWithPreview ? startCallButtonContainerStyleMobile : startCallButtonContainerStyleDesktop} horizontalAlign={mobileWithPreview ? 'stretch' : 'end'}>\n <StartCallButton className={mobileWithPreview ? startCallButtonStyleMobile : startCallButtonStyleDesktop} onClick={startCall} disabled={disableStartCallButton} hideIcon={true} />\n </Stack>\n </Stack>\n </Stack>\n </Stack>\n <Panel isOpen={isVideoEffectsPaneOpen} hasCloseButton={false} isBlocking={false} isHiddenOnDismiss={false} styles={panelStyles} focusTrapZoneProps={panelFocusProps} layerProps={panelLayerProps} type={PanelType.custom} customWidth={`${VIDEO_EFFECTS_SIDE_PANE_WIDTH_REM}rem`}>\n <SidePane mobileView={props.mobileView} updateSidePaneRenderer={props.updateSidePaneRenderer} maxWidth={`${VIDEO_EFFECTS_SIDE_PANE_WIDTH_REM}rem`} minWidth={`${VIDEO_EFFECTS_SIDE_PANE_WIDTH_REM}rem`} />\n </Panel>\n </Stack>\n </Stack>;\n};\nconst localPreviewTrampoline = (mobileView: boolean, doNotShow?: boolean): JSX.Element | undefined => {\n if (doNotShow) {\n return undefined;\n }\n return <LocalPreview mobileView={mobileView} showDevicesButton={mobileView} />;\n};\nconst cameraPermissionGrantedTrampoline = (cameraPermissionGranted: boolean | undefined, videoState?: PermissionState | 'unsupported' | undefined): boolean | undefined => {\n return cameraPermissionGranted;\n};\nconst micPermissionGrantedTrampoline = (microphonePermissionGranted: boolean | undefined, audioState?: PermissionState | 'unsupported' | undefined): boolean | undefined => {\n return microphonePermissionGranted;\n};\nconst Logo = (props: {\n logo?: {\n url: string;\n alt?: string;\n shape?: 'unset' | 'circle';\n };\n}): JSX.Element => {\n if (!props.logo) {\n return <></>;\n }\n return <Image styles={logoStyles(props.logo.shape)} src={props.logo.url} alt={props.logo.alt} />;\n};\nconst isSafariBrowserEnvironmentTrampoline = (environmentInfo?: EnvironmentInfo): boolean | undefined => {\n return false;\n};"]}
@@ -1,5 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { ActiveErrorMessage } from "../../../../../react-components/src";
3
+ import { ActiveNotification } from "../../../../../react-components/src";
3
4
  import { CallCompositeOptions } from '../CallComposite';
4
5
  import { MobileChatSidePaneTabHeaderProps } from '../../common/TabHeader';
5
6
  import { SidePaneRenderer } from '../components/SidePane/SidePaneProvider';
@@ -13,8 +14,10 @@ export interface LobbyPageProps {
13
14
  options?: CallCompositeOptions;
14
15
  mobileChatTabHeader: MobileChatSidePaneTabHeaderProps | undefined;
15
16
  updateSidePaneRenderer: (renderer: SidePaneRenderer | undefined) => void;
16
- latestErrors: ActiveErrorMessage[];
17
- onDismissError: (error: ActiveErrorMessage) => void;
17
+ latestErrors: ActiveErrorMessage[] | /* @conditional-compile-remove(notifications) */ ActiveNotification[];
18
+ latestNotifications: ActiveNotification[];
19
+ onDismissError: (error: ActiveErrorMessage | /* @conditional-compile-remove(notifications) */ ActiveNotification) => void;
20
+ onDismissNotification: (notification: ActiveNotification) => void;
18
21
  capabilitiesChangedNotificationBarProps?: CapabilitiesChangeNotificationBarProps;
19
22
  }
20
23
  /**
@@ -16,7 +16,7 @@ import { isPhoneNumberIdentifier } from '@azure/communication-common';
16
16
  * @private
17
17
  */
18
18
  export const LobbyPage = (props) => {
19
- var _a, _b, _c, _d;
19
+ var _a, _b, _c, _d, _e, _f;
20
20
  const errorBarProps = usePropsFor(ErrorBar);
21
21
  const lobbyProps = useSelector(lobbySelector);
22
22
  const strings = useLocale().strings.call;
@@ -28,10 +28,13 @@ export const LobbyPage = (props) => {
28
28
  callControlOptions = disableCallControls(callControlOptions, ['screenShareButton', 'participantsButton']);
29
29
  return React.createElement(CallArrangement, { complianceBannerProps: {
30
30
  strings
31
- }, errorBarProps: ((_d = props.options) === null || _d === void 0 ? void 0 : _d.errorBar) !== false && errorBarProps, callControlProps: {
31
+ }, errorBarProps: ((_d = props.options) === null || _d === void 0 ? void 0 : _d.errorBar) !== false && errorBarProps,
32
+ /* @conditional-compile-remove(notifications) */ showErrorNotifications: (_f = (_e = props.options) === null || _e === void 0 ? void 0 : _e.errorBar) !== null && _f !== void 0 ? _f : true, callControlProps: {
32
33
  options: callControlOptions,
33
34
  increaseFlyoutItemSize: props.mobileView
34
- }, mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => React.createElement(LobbyTile, Object.assign({}, lobbyProps, { showLocalVideoCameraCycleButton: props.mobileView, overlayProps: overlayProps(strings, inLobby, Object.values(participants)) })), dataUiId: 'lobby-page', updateSidePaneRenderer: props.updateSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, latestErrors: props.latestErrors, onDismissError: props.onDismissError });
35
+ }, mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => React.createElement(LobbyTile, Object.assign({}, lobbyProps, { showLocalVideoCameraCycleButton: props.mobileView, overlayProps: overlayProps(strings, inLobby, Object.values(participants)) })), dataUiId: 'lobby-page', updateSidePaneRenderer: props.updateSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, latestErrors: props.latestErrors, onDismissError: props.onDismissError,
36
+ /* @conditional-compile-remove(notifications) */ latestNotifications: props.latestNotifications,
37
+ /* @conditional-compile-remove(notifications) */ onDismissNotification: props.onDismissNotification });
35
38
  };
36
39
  const overlayProps = (strings, inLobby, remoteParticipants) => {
37
40
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"LobbyPage.js","sourceRoot":"","sources":["../../../../../../../preprocess-dist/react-composites/src/composites/CallComposite/pages/LobbyPage.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React from 'react';\nimport { ActiveErrorMessage, ErrorBar } from '@internal/react-components';\nimport { useSelector } from '../hooks/useSelector';\nimport { lobbySelector } from '../selectors/lobbySelector';\nimport { CallCompositeOptions } from '../CallComposite';\nimport { CallArrangement } from '../components/CallArrangement';\nimport { usePropsFor } from '../hooks/usePropsFor';\nimport { LobbyOverlayProps, LobbyTile } from '../components/LobbyTile';\nimport { getCallStatus, getRemoteParticipants } from '../selectors/baseSelectors';\nimport { disableCallControls, reduceCallControlsForMobile } from '../utils';\nimport { CallCompositeStrings } from '../Strings';\nimport { useLocale } from '../../localization';\nimport { CallCompositeIcon } from '../../common/icons';\nimport { isPhoneNumberIdentifier, PhoneNumberIdentifier } from '@azure/communication-common';\nimport { RemoteParticipantState } from '@internal/calling-stateful-client';\nimport { MobileChatSidePaneTabHeaderProps } from '../../common/TabHeader';\nimport { SidePaneRenderer } from '../components/SidePane/SidePaneProvider';\nimport { CapabilitiesChangeNotificationBarProps } from '../components/CapabilitiesChangedNotificationBar';\n\n/**\n * @private\n */\nexport interface LobbyPageProps {\n mobileView: boolean;\n modalLayerHostId: string;\n options?: CallCompositeOptions;\n mobileChatTabHeader: MobileChatSidePaneTabHeaderProps | undefined;\n updateSidePaneRenderer: (renderer: SidePaneRenderer | undefined) => void;\n latestErrors: ActiveErrorMessage[];\n onDismissError: (error: ActiveErrorMessage) => void;\n capabilitiesChangedNotificationBarProps?: CapabilitiesChangeNotificationBarProps;\n}\n\n/**\n * @private\n */\nexport const LobbyPage = (props: LobbyPageProps): JSX.Element => {\n const errorBarProps = usePropsFor(ErrorBar);\n const lobbyProps = useSelector(lobbySelector);\n const strings = useLocale().strings.call;\n const callState = useSelector(getCallStatus);\n const inLobby = callState === 'InLobby';\n const participants = useSelector(getRemoteParticipants) ?? {};\n\n // Reduce the controls shown when mobile view is enabled.\n let callControlOptions = props.mobileView ? reduceCallControlsForMobile(props.options?.callControls) : props.options?.callControls;\n callControlOptions = disableCallControls(callControlOptions, ['screenShareButton', 'participantsButton']);\n return <CallArrangement complianceBannerProps={{\n strings\n }} errorBarProps={props.options?.errorBar !== false && errorBarProps} callControlProps={{\n options: callControlOptions,\n increaseFlyoutItemSize: props.mobileView\n }} mobileView={props.mobileView} modalLayerHostId={props.modalLayerHostId} onRenderGalleryContent={() => <LobbyTile {...lobbyProps} showLocalVideoCameraCycleButton={props.mobileView} overlayProps={overlayProps(strings, inLobby, Object.values(participants))} />} dataUiId={'lobby-page'} updateSidePaneRenderer={props.updateSidePaneRenderer} mobileChatTabHeader={props.mobileChatTabHeader} latestErrors={props.latestErrors} onDismissError={props.onDismissError} />;\n};\nconst overlayProps = (strings: CallCompositeStrings, inLobby: boolean, remoteParticipants: RemoteParticipantState[]): LobbyOverlayProps => {\n /**\n * Only grab the first participant because there will only be one in this situation.\n * when starting a call with multiple people the call goes to the connected state and composite goes directly to\n * videoGallery.\n *\n * We also need to check the participant state since in a group call the remote participants array will populate just before\n * the user joins. In this situation we also check the participant states. in a groupCall the state of the participants\n * will be 'Idle'.\n */\n const outboundCallParticipant: RemoteParticipantState | undefined = remoteParticipants[0] && ['Ringing', 'Connecting'].includes(remoteParticipants[0].state) && remoteParticipants.length === 1 ? remoteParticipants[0] : undefined;\n return inLobby ? overlayPropsWaitingToBeAdmitted(strings) : outboundCallParticipant ? overlayPropsOutboundCall(strings, outboundCallParticipant) : overlayPropsConnectingToCall(strings);\n};\nconst overlayPropsConnectingToCall = (strings: CallCompositeStrings): LobbyOverlayProps => ({\n title: strings.lobbyScreenConnectingToCallTitle,\n moreDetails: strings.lobbyScreenConnectingToCallMoreDetails,\n overlayIcon: <CallCompositeIcon iconName=\"LobbyScreenConnectingToCall\" />\n});\nconst overlayPropsWaitingToBeAdmitted = (strings: CallCompositeStrings): LobbyOverlayProps => ({\n title: strings.lobbyScreenWaitingToBeAdmittedTitle,\n moreDetails: strings.lobbyScreenWaitingToBeAdmittedMoreDetails,\n overlayIcon: <CallCompositeIcon iconName=\"LobbyScreenWaitingToBeAdmitted\" />\n});\nconst overlayPropsOutboundCall = (strings: CallCompositeStrings, participant: RemoteParticipantState): LobbyOverlayProps => {\n if (isPhoneNumberIdentifier(participant.identifier)) {\n return {\n title: (participant.identifier as PhoneNumberIdentifier).phoneNumber,\n moreDetails: strings.outboundCallingNoticeString\n };\n } else {\n return {\n title: strings.outboundCallingNoticeString ?? ''\n };\n }\n};"]}
1
+ {"version":3,"file":"LobbyPage.js","sourceRoot":"","sources":["../../../../../../../preprocess-dist/react-composites/src/composites/CallComposite/pages/LobbyPage.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React from 'react';\nimport { ActiveErrorMessage, ErrorBar } from '@internal/react-components';\n/* @conditional-compile-remove(notifications) */\nimport { ActiveNotification } from '@internal/react-components';\nimport { useSelector } from '../hooks/useSelector';\nimport { lobbySelector } from '../selectors/lobbySelector';\nimport { CallCompositeOptions } from '../CallComposite';\nimport { CallArrangement } from '../components/CallArrangement';\nimport { usePropsFor } from '../hooks/usePropsFor';\nimport { LobbyOverlayProps, LobbyTile } from '../components/LobbyTile';\nimport { getCallStatus, getRemoteParticipants } from '../selectors/baseSelectors';\nimport { disableCallControls, reduceCallControlsForMobile } from '../utils';\nimport { CallCompositeStrings } from '../Strings';\nimport { useLocale } from '../../localization';\nimport { CallCompositeIcon } from '../../common/icons';\nimport { isPhoneNumberIdentifier, PhoneNumberIdentifier } from '@azure/communication-common';\nimport { RemoteParticipantState } from '@internal/calling-stateful-client';\nimport { MobileChatSidePaneTabHeaderProps } from '../../common/TabHeader';\nimport { SidePaneRenderer } from '../components/SidePane/SidePaneProvider';\nimport { CapabilitiesChangeNotificationBarProps } from '../components/CapabilitiesChangedNotificationBar';\n\n/**\n * @private\n */\nexport interface LobbyPageProps {\n mobileView: boolean;\n modalLayerHostId: string;\n options?: CallCompositeOptions;\n mobileChatTabHeader: MobileChatSidePaneTabHeaderProps | undefined;\n updateSidePaneRenderer: (renderer: SidePaneRenderer | undefined) => void;\n latestErrors: ActiveErrorMessage[] | /* @conditional-compile-remove(notifications) */ActiveNotification[];\n /* @conditional-compile-remove(notifications) */\n latestNotifications: ActiveNotification[];\n onDismissError: (error: ActiveErrorMessage | /* @conditional-compile-remove(notifications) */ActiveNotification) => void;\n /* @conditional-compile-remove(notifications) */\n onDismissNotification: (notification: ActiveNotification) => void;\n capabilitiesChangedNotificationBarProps?: CapabilitiesChangeNotificationBarProps;\n}\n\n/**\n * @private\n */\nexport const LobbyPage = (props: LobbyPageProps): JSX.Element => {\n const errorBarProps = usePropsFor(ErrorBar);\n const lobbyProps = useSelector(lobbySelector);\n const strings = useLocale().strings.call;\n const callState = useSelector(getCallStatus);\n const inLobby = callState === 'InLobby';\n const participants = useSelector(getRemoteParticipants) ?? {};\n\n // Reduce the controls shown when mobile view is enabled.\n let callControlOptions = props.mobileView ? reduceCallControlsForMobile(props.options?.callControls) : props.options?.callControls;\n callControlOptions = disableCallControls(callControlOptions, ['screenShareButton', 'participantsButton']);\n return <CallArrangement complianceBannerProps={{\n strings\n }} errorBarProps={props.options?.errorBar !== false && errorBarProps}\n /* @conditional-compile-remove(notifications) */ showErrorNotifications={props.options?.errorBar ?? true} callControlProps={{\n options: callControlOptions,\n increaseFlyoutItemSize: props.mobileView\n }} mobileView={props.mobileView} modalLayerHostId={props.modalLayerHostId} onRenderGalleryContent={() => <LobbyTile {...lobbyProps} showLocalVideoCameraCycleButton={props.mobileView} overlayProps={overlayProps(strings, inLobby, Object.values(participants))} />} dataUiId={'lobby-page'} updateSidePaneRenderer={props.updateSidePaneRenderer} mobileChatTabHeader={props.mobileChatTabHeader} latestErrors={props.latestErrors} onDismissError={props.onDismissError}\n /* @conditional-compile-remove(notifications) */ latestNotifications={props.latestNotifications}\n /* @conditional-compile-remove(notifications) */ onDismissNotification={props.onDismissNotification} />;\n};\nconst overlayProps = (strings: CallCompositeStrings, inLobby: boolean, remoteParticipants: RemoteParticipantState[]): LobbyOverlayProps => {\n /**\n * Only grab the first participant because there will only be one in this situation.\n * when starting a call with multiple people the call goes to the connected state and composite goes directly to\n * videoGallery.\n *\n * We also need to check the participant state since in a group call the remote participants array will populate just before\n * the user joins. In this situation we also check the participant states. in a groupCall the state of the participants\n * will be 'Idle'.\n */\n const outboundCallParticipant: RemoteParticipantState | undefined = remoteParticipants[0] && ['Ringing', 'Connecting'].includes(remoteParticipants[0].state) && remoteParticipants.length === 1 ? remoteParticipants[0] : undefined;\n return inLobby ? overlayPropsWaitingToBeAdmitted(strings) : outboundCallParticipant ? overlayPropsOutboundCall(strings, outboundCallParticipant) : overlayPropsConnectingToCall(strings);\n};\nconst overlayPropsConnectingToCall = (strings: CallCompositeStrings): LobbyOverlayProps => ({\n title: strings.lobbyScreenConnectingToCallTitle,\n moreDetails: strings.lobbyScreenConnectingToCallMoreDetails,\n overlayIcon: <CallCompositeIcon iconName=\"LobbyScreenConnectingToCall\" />\n});\nconst overlayPropsWaitingToBeAdmitted = (strings: CallCompositeStrings): LobbyOverlayProps => ({\n title: strings.lobbyScreenWaitingToBeAdmittedTitle,\n moreDetails: strings.lobbyScreenWaitingToBeAdmittedMoreDetails,\n overlayIcon: <CallCompositeIcon iconName=\"LobbyScreenWaitingToBeAdmitted\" />\n});\nconst overlayPropsOutboundCall = (strings: CallCompositeStrings, participant: RemoteParticipantState): LobbyOverlayProps => {\n if (isPhoneNumberIdentifier(participant.identifier)) {\n return {\n title: (participant.identifier as PhoneNumberIdentifier).phoneNumber,\n moreDetails: strings.outboundCallingNoticeString\n };\n } else {\n return {\n title: strings.outboundCallingNoticeString ?? ''\n };\n }\n};"]}
@@ -19,7 +19,7 @@ import { reduceCallControlsForMobile } from '../utils';
19
19
  * @private
20
20
  */
21
21
  export const TransferPage = (props) => {
22
- var _a, _b, _c, _d, _e;
22
+ var _a, _b, _c, _d, _e, _f, _g;
23
23
  const errorBarProps = usePropsFor(ErrorBar);
24
24
  const strings = useLocale().strings.call;
25
25
  const remoteParticipants = useSelector(getRemoteParticipants);
@@ -52,10 +52,13 @@ export const TransferPage = (props) => {
52
52
  strings
53
53
  },
54
54
  // Ignore errors from before current call. This avoids old errors from showing up when a user re-joins a call.
55
- errorBarProps: ((_e = props.options) === null || _e === void 0 ? void 0 : _e.errorBar) !== false && errorBarProps, callControlProps: {
55
+ errorBarProps: ((_e = props.options) === null || _e === void 0 ? void 0 : _e.errorBar) !== false && errorBarProps,
56
+ /* @conditional-compile-remove(notifications) */ showErrorNotifications: (_g = (_f = props.options) === null || _f === void 0 ? void 0 : _f.errorBar) !== null && _g !== void 0 ? _g : true, callControlProps: {
56
57
  options: callControlOptions,
57
58
  increaseFlyoutItemSize: props.mobileView
58
- }, mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => React.createElement(TransferTile, { userId: transferTileParticipant ? toFlatCommunicationIdentifier(transferTileParticipant === null || transferTileParticipant === void 0 ? void 0 : transferTileParticipant.identifier) : undefined, displayName: transferParticipantDisplayName, initialsName: transferParticipantDisplayName, statusText: pageSubject === 'transferTarget' ? strings.transferPageTransferTargetText : strings.transferPageTransferorText, onFetchAvatarPersonaData: props.onFetchAvatarPersonaData }), dataUiId: 'transfer-page', updateSidePaneRenderer: props.updateSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, latestErrors: props.latestErrors, onDismissError: props.onDismissError }));
59
+ }, mobileView: props.mobileView, modalLayerHostId: props.modalLayerHostId, onRenderGalleryContent: () => React.createElement(TransferTile, { userId: transferTileParticipant ? toFlatCommunicationIdentifier(transferTileParticipant === null || transferTileParticipant === void 0 ? void 0 : transferTileParticipant.identifier) : undefined, displayName: transferParticipantDisplayName, initialsName: transferParticipantDisplayName, statusText: pageSubject === 'transferTarget' ? strings.transferPageTransferTargetText : strings.transferPageTransferorText, onFetchAvatarPersonaData: props.onFetchAvatarPersonaData }), dataUiId: 'transfer-page', updateSidePaneRenderer: props.updateSidePaneRenderer, mobileChatTabHeader: props.mobileChatTabHeader, latestErrors: props.latestErrors, onDismissError: props.onDismissError,
60
+ /* @conditional-compile-remove(notifications) */ onDismissNotification: props.onDismissNotification,
61
+ /* @conditional-compile-remove(notifications) */ latestNotifications: props.latestNotifications }));
59
62
  };
60
63
  const TransferTile = (props) => {
61
64
  const { displayName, initialsName, userId, onFetchAvatarPersonaData, statusText } = props;
@@ -1 +1 @@
1
- {"version":3,"file":"TransferPage.js","sourceRoot":"","sources":["../../../../../../../preprocess-dist/react-composites/src/composites/CallComposite/pages/TransferPage.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Spinner, SpinnerSize, Stack, Text, mergeStyles } from '@fluentui/react';\nimport { toFlatCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { ErrorBar } from '@internal/react-components';\nimport { Announcer } from '@internal/react-components';\nimport React, { useCallback, useLayoutEffect, useMemo, useRef, useState } from 'react';\nimport { useEffect } from 'react';\nimport { AvatarPersona, AvatarPersonaDataCallback } from '../../common/AvatarPersona';\nimport { useLocale } from '../../localization';\nimport { CallArrangement } from '../components/CallArrangement';\nimport { usePropsFor } from '../hooks/usePropsFor';\nimport { useSelector } from '../hooks/useSelector';\nimport { getRemoteParticipants } from '../selectors/baseSelectors';\nimport { getTransferCall } from '../selectors/baseSelectors';\nimport { avatarStyles, defaultPersonaStyles, displayNameStyles, pageContainer, spinnerStyles, statusTextStyles, tileContainerStyles, tileContentStyles } from '../styles/TransferPage.styles';\nimport { reduceCallControlsForMobile } from '../utils';\nimport { LobbyPageProps } from './LobbyPage';\n\n// Which should be participant shown in the transfer page\ntype TransferPageSubject = 'transferor' | 'transferTarget';\n\n/**\n * @private\n */\nexport const TransferPage = (props: LobbyPageProps & {\n /** Callback function that can be used to provide custom data to Persona Icon rendered */\n onFetchAvatarPersonaData?: AvatarPersonaDataCallback;\n}): JSX.Element => {\n const errorBarProps = usePropsFor(ErrorBar);\n const strings = useLocale().strings.call;\n const remoteParticipants = useSelector(getRemoteParticipants);\n const transferCall = useSelector(getTransferCall);\n const [announcerString, setAnnouncerString] = useState<string | undefined>(undefined);\n\n // Reduce the controls shown when mobile view is enabled.\n const callControlOptions = props.mobileView ? reduceCallControlsForMobile(props.options?.callControls) : props.options?.callControls;\n const transferor = useMemo(() => remoteParticipants ? Object.values(remoteParticipants)?.[0] : undefined, [remoteParticipants]);\n const transferTarget = useMemo(() => transferCall?.remoteParticipants ? Object.values(transferCall.remoteParticipants)?.[0] : undefined, [transferCall]);\n const pageSubject: TransferPageSubject = useMemo(() => {\n if (transferCall && transferTarget?.displayName) {\n return 'transferTarget';\n }\n return 'transferor';\n }, [transferCall, transferTarget?.displayName]);\n useEffect(() => {\n setAnnouncerString(strings.transferPageNoticeString);\n }, [strings.transferPageNoticeString]);\n let transferTileParticipant = transferor;\n if (pageSubject === 'transferTarget') {\n transferTileParticipant = transferTarget;\n }\n let transferParticipantDisplayName = transferor?.displayName ?? strings.transferPageUnknownTransferorDisplayName;\n if (pageSubject === 'transferTarget') {\n transferParticipantDisplayName = transferTarget?.displayName ?? strings.transferPageUnknownTransferTargetDisplayName;\n }\n return <Stack className={mergeStyles(pageContainer)}>\n <Announcer announcementString={announcerString} ariaLive=\"polite\" />\n <CallArrangement complianceBannerProps={{\n strings\n }}\n // Ignore errors from before current call. This avoids old errors from showing up when a user re-joins a call.\n errorBarProps={props.options?.errorBar !== false && errorBarProps} callControlProps={{\n options: callControlOptions,\n increaseFlyoutItemSize: props.mobileView\n }} mobileView={props.mobileView} modalLayerHostId={props.modalLayerHostId} onRenderGalleryContent={() => <TransferTile userId={transferTileParticipant ? toFlatCommunicationIdentifier(transferTileParticipant?.identifier) : undefined} displayName={transferParticipantDisplayName} initialsName={transferParticipantDisplayName} statusText={pageSubject === 'transferTarget' ? strings.transferPageTransferTargetText : strings.transferPageTransferorText} onFetchAvatarPersonaData={props.onFetchAvatarPersonaData} />} dataUiId={'transfer-page'} updateSidePaneRenderer={props.updateSidePaneRenderer} mobileChatTabHeader={props.mobileChatTabHeader} latestErrors={props.latestErrors} onDismissError={props.onDismissError} />\n </Stack>;\n};\ninterface TransferTileProps {\n /** React Child components. Child Components will show as overlay component in the VideoTile. */\n children?: React.ReactNode;\n /** User id for `onFetchAvatarPersonaData` callback to provide custom data to avatars rendered */\n userId?: string;\n /** Callback function that can be used to provide custom data to Persona Icon rendered */\n onFetchAvatarPersonaData?: AvatarPersonaDataCallback;\n /**\n * Display name of the transferor or transfer target to be shown in the label.\n * @remarks `displayName` is used to generate avatar initials if `initialsName` is not provided.\n */\n displayName?: string;\n /**\n * Name of the transferor or transfer target used to generate initials for the avatar. For example, a name\n * `John Doe` will display `JD` as initials.\n * @remarks `displayName` is used if this property is not specified.\n */\n initialsName?: string;\n /** Optional property to set the status of the transfer process */\n statusText?: string;\n}\nconst TransferTile = (props: TransferTileProps): JSX.Element => {\n const {\n displayName,\n initialsName,\n userId,\n onFetchAvatarPersonaData,\n statusText\n } = props;\n const [personaSize, setPersonaSize] = useState<number>();\n const tileRef = useRef<HTMLDivElement>(null);\n const observer = useRef(new ResizeObserver((entries): void => {\n const {\n width,\n height\n } = entries[0].contentRect;\n const personaSize = Math.min(width, height) / 2;\n setPersonaSize(Math.max(Math.min(personaSize, 150), 32));\n }));\n useLayoutEffect(() => {\n if (tileRef.current) {\n observer.current.observe(tileRef.current);\n }\n const currentObserver = observer.current;\n return () => currentObserver.disconnect();\n }, [observer, tileRef]);\n const placeholderOptions = useMemo(() => ({\n userId,\n text: initialsName ?? displayName,\n coinSize: personaSize,\n styles: defaultPersonaStyles,\n hidePersonaDetails: true\n }), [userId, initialsName, displayName, personaSize]);\n const defaultOnRenderAvatar = useCallback(() => {\n return personaSize ? <AvatarPersona {...placeholderOptions} dataProvider={onFetchAvatarPersonaData} className={mergeStyles(avatarStyles)} /> : <></>;\n }, [placeholderOptions, onFetchAvatarPersonaData, personaSize]);\n const defaultAvatar = useMemo(() => defaultOnRenderAvatar(), [defaultOnRenderAvatar]);\n return <div ref={tileRef} className={mergeStyles(tileContainerStyles)} data-is-focusable={true}>\n <Stack className={mergeStyles(tileContentStyles)} tokens={{\n childrenGap: '1rem'\n }}>\n <Stack horizontalAlign=\"center\" tokens={{\n childrenGap: '0.5rem'\n }}>\n {defaultAvatar}\n <Text className={mergeStyles(displayNameStyles)}>{displayName}</Text>\n </Stack>\n <Stack horizontal horizontalAlign=\"center\" verticalAlign=\"center\" tokens={{\n childrenGap: '0.5rem'\n }}>\n <Spinner size={SpinnerSize.large} className={mergeStyles(spinnerStyles)} />\n <Text className={mergeStyles(statusTextStyles)}>{statusText}</Text>\n </Stack>\n </Stack>\n </div>;\n};"]}
1
+ {"version":3,"file":"TransferPage.js","sourceRoot":"","sources":["../../../../../../../preprocess-dist/react-composites/src/composites/CallComposite/pages/TransferPage.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Spinner, SpinnerSize, Stack, Text, mergeStyles } from '@fluentui/react';\nimport { toFlatCommunicationIdentifier } from '@internal/acs-ui-common';\nimport { ErrorBar } from '@internal/react-components';\nimport { Announcer } from '@internal/react-components';\nimport React, { useCallback, useLayoutEffect, useMemo, useRef, useState } from 'react';\nimport { useEffect } from 'react';\nimport { AvatarPersona, AvatarPersonaDataCallback } from '../../common/AvatarPersona';\nimport { useLocale } from '../../localization';\nimport { CallArrangement } from '../components/CallArrangement';\nimport { usePropsFor } from '../hooks/usePropsFor';\nimport { useSelector } from '../hooks/useSelector';\nimport { getRemoteParticipants } from '../selectors/baseSelectors';\nimport { getTransferCall } from '../selectors/baseSelectors';\nimport { avatarStyles, defaultPersonaStyles, displayNameStyles, pageContainer, spinnerStyles, statusTextStyles, tileContainerStyles, tileContentStyles } from '../styles/TransferPage.styles';\nimport { reduceCallControlsForMobile } from '../utils';\nimport { LobbyPageProps } from './LobbyPage';\n\n// Which should be participant shown in the transfer page\ntype TransferPageSubject = 'transferor' | 'transferTarget';\n\n/**\n * @private\n */\nexport const TransferPage = (props: LobbyPageProps & {\n /** Callback function that can be used to provide custom data to Persona Icon rendered */\n onFetchAvatarPersonaData?: AvatarPersonaDataCallback;\n}): JSX.Element => {\n const errorBarProps = usePropsFor(ErrorBar);\n const strings = useLocale().strings.call;\n const remoteParticipants = useSelector(getRemoteParticipants);\n const transferCall = useSelector(getTransferCall);\n const [announcerString, setAnnouncerString] = useState<string | undefined>(undefined);\n\n // Reduce the controls shown when mobile view is enabled.\n const callControlOptions = props.mobileView ? reduceCallControlsForMobile(props.options?.callControls) : props.options?.callControls;\n const transferor = useMemo(() => remoteParticipants ? Object.values(remoteParticipants)?.[0] : undefined, [remoteParticipants]);\n const transferTarget = useMemo(() => transferCall?.remoteParticipants ? Object.values(transferCall.remoteParticipants)?.[0] : undefined, [transferCall]);\n const pageSubject: TransferPageSubject = useMemo(() => {\n if (transferCall && transferTarget?.displayName) {\n return 'transferTarget';\n }\n return 'transferor';\n }, [transferCall, transferTarget?.displayName]);\n useEffect(() => {\n setAnnouncerString(strings.transferPageNoticeString);\n }, [strings.transferPageNoticeString]);\n let transferTileParticipant = transferor;\n if (pageSubject === 'transferTarget') {\n transferTileParticipant = transferTarget;\n }\n let transferParticipantDisplayName = transferor?.displayName ?? strings.transferPageUnknownTransferorDisplayName;\n if (pageSubject === 'transferTarget') {\n transferParticipantDisplayName = transferTarget?.displayName ?? strings.transferPageUnknownTransferTargetDisplayName;\n }\n return <Stack className={mergeStyles(pageContainer)}>\n <Announcer announcementString={announcerString} ariaLive=\"polite\" />\n <CallArrangement complianceBannerProps={{\n strings\n }}\n // Ignore errors from before current call. This avoids old errors from showing up when a user re-joins a call.\n errorBarProps={props.options?.errorBar !== false && errorBarProps}\n /* @conditional-compile-remove(notifications) */ showErrorNotifications={props.options?.errorBar ?? true} callControlProps={{\n options: callControlOptions,\n increaseFlyoutItemSize: props.mobileView\n }} mobileView={props.mobileView} modalLayerHostId={props.modalLayerHostId} onRenderGalleryContent={() => <TransferTile userId={transferTileParticipant ? toFlatCommunicationIdentifier(transferTileParticipant?.identifier) : undefined} displayName={transferParticipantDisplayName} initialsName={transferParticipantDisplayName} statusText={pageSubject === 'transferTarget' ? strings.transferPageTransferTargetText : strings.transferPageTransferorText} onFetchAvatarPersonaData={props.onFetchAvatarPersonaData} />} dataUiId={'transfer-page'} updateSidePaneRenderer={props.updateSidePaneRenderer} mobileChatTabHeader={props.mobileChatTabHeader} latestErrors={props.latestErrors} onDismissError={props.onDismissError}\n /* @conditional-compile-remove(notifications) */ onDismissNotification={props.onDismissNotification}\n /* @conditional-compile-remove(notifications) */ latestNotifications={props.latestNotifications} />\n </Stack>;\n};\ninterface TransferTileProps {\n /** React Child components. Child Components will show as overlay component in the VideoTile. */\n children?: React.ReactNode;\n /** User id for `onFetchAvatarPersonaData` callback to provide custom data to avatars rendered */\n userId?: string;\n /** Callback function that can be used to provide custom data to Persona Icon rendered */\n onFetchAvatarPersonaData?: AvatarPersonaDataCallback;\n /**\n * Display name of the transferor or transfer target to be shown in the label.\n * @remarks `displayName` is used to generate avatar initials if `initialsName` is not provided.\n */\n displayName?: string;\n /**\n * Name of the transferor or transfer target used to generate initials for the avatar. For example, a name\n * `John Doe` will display `JD` as initials.\n * @remarks `displayName` is used if this property is not specified.\n */\n initialsName?: string;\n /** Optional property to set the status of the transfer process */\n statusText?: string;\n}\nconst TransferTile = (props: TransferTileProps): JSX.Element => {\n const {\n displayName,\n initialsName,\n userId,\n onFetchAvatarPersonaData,\n statusText\n } = props;\n const [personaSize, setPersonaSize] = useState<number>();\n const tileRef = useRef<HTMLDivElement>(null);\n const observer = useRef(new ResizeObserver((entries): void => {\n const {\n width,\n height\n } = entries[0].contentRect;\n const personaSize = Math.min(width, height) / 2;\n setPersonaSize(Math.max(Math.min(personaSize, 150), 32));\n }));\n useLayoutEffect(() => {\n if (tileRef.current) {\n observer.current.observe(tileRef.current);\n }\n const currentObserver = observer.current;\n return () => currentObserver.disconnect();\n }, [observer, tileRef]);\n const placeholderOptions = useMemo(() => ({\n userId,\n text: initialsName ?? displayName,\n coinSize: personaSize,\n styles: defaultPersonaStyles,\n hidePersonaDetails: true\n }), [userId, initialsName, displayName, personaSize]);\n const defaultOnRenderAvatar = useCallback(() => {\n return personaSize ? <AvatarPersona {...placeholderOptions} dataProvider={onFetchAvatarPersonaData} className={mergeStyles(avatarStyles)} /> : <></>;\n }, [placeholderOptions, onFetchAvatarPersonaData, personaSize]);\n const defaultAvatar = useMemo(() => defaultOnRenderAvatar(), [defaultOnRenderAvatar]);\n return <div ref={tileRef} className={mergeStyles(tileContainerStyles)} data-is-focusable={true}>\n <Stack className={mergeStyles(tileContentStyles)} tokens={{\n childrenGap: '1rem'\n }}>\n <Stack horizontalAlign=\"center\" tokens={{\n childrenGap: '0.5rem'\n }}>\n {defaultAvatar}\n <Text className={mergeStyles(displayNameStyles)}>{displayName}</Text>\n </Stack>\n <Stack horizontal horizontalAlign=\"center\" verticalAlign=\"center\" tokens={{\n childrenGap: '0.5rem'\n }}>\n <Spinner size={SpinnerSize.large} className={mergeStyles(spinnerStyles)} />\n <Text className={mergeStyles(statusTextStyles)}>{statusText}</Text>\n </Stack>\n </Stack>\n </div>;\n};"]}