@azure/communication-react 1.8.1-alpha-202309210012 → 1.8.1-alpha-202309230012

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 (929) hide show
  1. package/dist/dist-cjs/communication-react/index.js +131 -112
  2. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  3. package/dist/dist-esm/acs-ui-common/src/MessageStatus.js +1 -1
  4. package/dist/dist-esm/acs-ui-common/src/MessageStatus.js.map +1 -1
  5. package/dist/dist-esm/acs-ui-common/src/areEqual.js +1 -1
  6. package/dist/dist-esm/acs-ui-common/src/areEqual.js.map +1 -1
  7. package/dist/dist-esm/acs-ui-common/src/common.js +1 -1
  8. package/dist/dist-esm/acs-ui-common/src/common.js.map +1 -1
  9. package/dist/dist-esm/acs-ui-common/src/commonProperties.js +1 -1
  10. package/dist/dist-esm/acs-ui-common/src/commonProperties.js.map +1 -1
  11. package/dist/dist-esm/acs-ui-common/src/constants.js +1 -1
  12. package/dist/dist-esm/acs-ui-common/src/constants.js.map +1 -1
  13. package/dist/dist-esm/acs-ui-common/src/cssUtils.js +1 -1
  14. package/dist/dist-esm/acs-ui-common/src/cssUtils.js.map +1 -1
  15. package/dist/dist-esm/acs-ui-common/src/identifier.js +1 -1
  16. package/dist/dist-esm/acs-ui-common/src/identifier.js.map +1 -1
  17. package/dist/dist-esm/acs-ui-common/src/index.js +1 -1
  18. package/dist/dist-esm/acs-ui-common/src/index.js.map +1 -1
  19. package/dist/dist-esm/acs-ui-common/src/localizationUtils.js +1 -1
  20. package/dist/dist-esm/acs-ui-common/src/localizationUtils.js.map +1 -1
  21. package/dist/dist-esm/acs-ui-common/src/logEvent.js +1 -1
  22. package/dist/dist-esm/acs-ui-common/src/logEvent.js.map +1 -1
  23. package/dist/dist-esm/acs-ui-common/src/memoizeFnAll.js +1 -1
  24. package/dist/dist-esm/acs-ui-common/src/memoizeFnAll.js.map +1 -1
  25. package/dist/dist-esm/acs-ui-common/src/safeStringify.js +1 -1
  26. package/dist/dist-esm/acs-ui-common/src/safeStringify.js.map +1 -1
  27. package/dist/dist-esm/acs-ui-common/src/telemetry.js +1 -1
  28. package/dist/dist-esm/acs-ui-common/src/telemetry.js.map +1 -1
  29. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +2 -2
  30. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  31. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  32. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +1 -1
  33. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
  34. package/dist/dist-esm/calling-component-bindings/src/captionsSelector.js +2 -0
  35. package/dist/dist-esm/calling-component-bindings/src/captionsSelector.js.map +1 -1
  36. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js +1 -1
  37. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js.map +1 -1
  38. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +1 -1
  39. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
  40. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js +1 -1
  41. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js.map +1 -1
  42. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js +1 -1
  43. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js.map +1 -1
  44. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js +1 -1
  45. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js.map +1 -1
  46. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.js +1 -1
  47. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.js.map +1 -1
  48. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js +1 -1
  49. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  50. package/dist/dist-esm/calling-component-bindings/src/hooks/useSelector.js +1 -1
  51. package/dist/dist-esm/calling-component-bindings/src/hooks/useSelector.js.map +1 -1
  52. package/dist/dist-esm/calling-component-bindings/src/index.js +1 -1
  53. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  54. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +1 -1
  55. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
  56. package/dist/dist-esm/calling-component-bindings/src/participantsButtonSelector.js +1 -1
  57. package/dist/dist-esm/calling-component-bindings/src/participantsButtonSelector.js.map +1 -1
  58. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.js +1 -1
  59. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.js.map +1 -1
  60. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js +1 -1
  61. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js.map +1 -1
  62. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js +1 -1
  63. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js.map +1 -1
  64. package/dist/dist-esm/calling-component-bindings/src/providers/index.js +1 -1
  65. package/dist/dist-esm/calling-component-bindings/src/providers/index.js.map +1 -1
  66. package/dist/dist-esm/calling-component-bindings/src/utils/SelectorUtils.js +1 -1
  67. package/dist/dist-esm/calling-component-bindings/src/utils/SelectorUtils.js.map +1 -1
  68. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js +1 -1
  69. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js.map +1 -1
  70. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js +1 -1
  71. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js.map +1 -1
  72. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +1 -1
  73. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  74. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js +1 -1
  75. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
  76. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.js +1 -1
  77. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.js.map +1 -1
  78. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js +1 -1
  79. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
  80. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js +1 -1
  81. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js.map +1 -1
  82. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js +1 -1
  83. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  84. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +1 -1
  85. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  86. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js +1 -1
  87. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js.map +1 -1
  88. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js +1 -1
  89. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js.map +1 -1
  90. package/dist/dist-esm/calling-stateful-client/src/CallIdHistory.js +1 -1
  91. package/dist/dist-esm/calling-stateful-client/src/CallIdHistory.js.map +1 -1
  92. package/dist/dist-esm/calling-stateful-client/src/CallIdRef.js +1 -1
  93. package/dist/dist-esm/calling-stateful-client/src/CallIdRef.js.map +1 -1
  94. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +1 -1
  95. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  96. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js +1 -1
  97. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js.map +1 -1
  98. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.js +1 -1
  99. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.js.map +1 -1
  100. package/dist/dist-esm/calling-stateful-client/src/Converter.js +1 -1
  101. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  102. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js +1 -1
  103. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js.map +1 -1
  104. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js +1 -1
  105. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js.map +1 -1
  106. package/dist/dist-esm/calling-stateful-client/src/IncomingCallSubscriber.js +1 -1
  107. package/dist/dist-esm/calling-stateful-client/src/IncomingCallSubscriber.js.map +1 -1
  108. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js +1 -1
  109. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js.map +1 -1
  110. package/dist/dist-esm/calling-stateful-client/src/LocalVideoStreamVideoEffectsSubscriber.js +1 -1
  111. package/dist/dist-esm/calling-stateful-client/src/LocalVideoStreamVideoEffectsSubscriber.js.map +1 -1
  112. package/dist/dist-esm/calling-stateful-client/src/Logger.js +1 -1
  113. package/dist/dist-esm/calling-stateful-client/src/Logger.js.map +1 -1
  114. package/dist/dist-esm/calling-stateful-client/src/OptimalVideoCountSubscriber.js +2 -0
  115. package/dist/dist-esm/calling-stateful-client/src/OptimalVideoCountSubscriber.js.map +1 -1
  116. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js +1 -1
  117. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js.map +1 -1
  118. package/dist/dist-esm/calling-stateful-client/src/RaiseHandSubscriber.js +1 -1
  119. package/dist/dist-esm/calling-stateful-client/src/RaiseHandSubscriber.js.map +1 -1
  120. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js +1 -1
  121. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js.map +1 -1
  122. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js +1 -1
  123. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js.map +1 -1
  124. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js +1 -1
  125. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
  126. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js +1 -1
  127. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js.map +1 -1
  128. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js +1 -1
  129. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js.map +1 -1
  130. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js +2 -0
  131. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js.map +1 -1
  132. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js +1 -1
  133. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js.map +1 -1
  134. package/dist/dist-esm/calling-stateful-client/src/TranscriptionSubscriber.js +1 -1
  135. package/dist/dist-esm/calling-stateful-client/src/TranscriptionSubscriber.js.map +1 -1
  136. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js +1 -1
  137. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js.map +1 -1
  138. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js +1 -1
  139. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js.map +1 -1
  140. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js +1 -1
  141. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js.map +1 -1
  142. package/dist/dist-esm/calling-stateful-client/src/index-public.js +1 -1
  143. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  144. package/dist/dist-esm/calling-stateful-client/src/index.js +1 -1
  145. package/dist/dist-esm/calling-stateful-client/src/index.js.map +1 -1
  146. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js +1 -1
  147. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js.map +1 -1
  148. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js +1 -1
  149. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js.map +1 -1
  150. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js +1 -1
  151. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js.map +1 -1
  152. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js +1 -1
  153. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js.map +1 -1
  154. package/dist/dist-esm/chat-component-bindings/src/hooks/useHandlers.js +1 -1
  155. package/dist/dist-esm/chat-component-bindings/src/hooks/useHandlers.js.map +1 -1
  156. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js +1 -1
  157. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  158. package/dist/dist-esm/chat-component-bindings/src/hooks/useSelector.js +1 -1
  159. package/dist/dist-esm/chat-component-bindings/src/hooks/useSelector.js.map +1 -1
  160. package/dist/dist-esm/chat-component-bindings/src/index.js +1 -1
  161. package/dist/dist-esm/chat-component-bindings/src/index.js.map +1 -1
  162. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +1 -1
  163. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
  164. package/dist/dist-esm/chat-component-bindings/src/providers/ChatClientProvider.js +1 -1
  165. package/dist/dist-esm/chat-component-bindings/src/providers/ChatClientProvider.js.map +1 -1
  166. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js +1 -1
  167. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js.map +1 -1
  168. package/dist/dist-esm/chat-component-bindings/src/sendBoxSelector.js +1 -1
  169. package/dist/dist-esm/chat-component-bindings/src/sendBoxSelector.js.map +1 -1
  170. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js +1 -1
  171. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js.map +1 -1
  172. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js +1 -1
  173. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js.map +1 -1
  174. package/dist/dist-esm/chat-component-bindings/src/utils/constants.js +1 -1
  175. package/dist/dist-esm/chat-component-bindings/src/utils/constants.js.map +1 -1
  176. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js.map +1 -1
  177. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js +1 -1
  178. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js.map +1 -1
  179. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js +1 -1
  180. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js.map +1 -1
  181. package/dist/dist-esm/chat-stateful-client/src/Constants.js +1 -1
  182. package/dist/dist-esm/chat-stateful-client/src/Constants.js.map +1 -1
  183. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js +1 -1
  184. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js.map +1 -1
  185. package/dist/dist-esm/chat-stateful-client/src/Logger.js +1 -1
  186. package/dist/dist-esm/chat-stateful-client/src/Logger.js.map +1 -1
  187. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js +1 -1
  188. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js.map +1 -1
  189. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js +1 -1
  190. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js.map +1 -1
  191. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js +1 -1
  192. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js.map +1 -1
  193. package/dist/dist-esm/chat-stateful-client/src/index.js +1 -1
  194. package/dist/dist-esm/chat-stateful-client/src/index.js.map +1 -1
  195. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedIterator.js +1 -1
  196. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedIterator.js.map +1 -1
  197. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListMessages.js +1 -1
  198. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListMessages.js.map +1 -1
  199. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListParticipants.js +1 -1
  200. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListParticipants.js.map +1 -1
  201. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListReadReceipts.js +1 -1
  202. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListReadReceipts.js.map +1 -1
  203. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListThreads.js +1 -1
  204. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListThreads.js.map +1 -1
  205. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.js +1 -1
  206. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.js.map +1 -1
  207. package/dist/dist-esm/communication-react/src/index.js +1 -1
  208. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  209. package/dist/dist-esm/communication-react/src/mergedHooks.js +1 -1
  210. package/dist/dist-esm/communication-react/src/mergedHooks.js.map +1 -1
  211. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js +1 -1
  212. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js.map +1 -1
  213. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerContext.js +1 -1
  214. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerContext.js.map +1 -1
  215. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerMessage.js +1 -1
  216. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerMessage.js.map +1 -1
  217. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js +1 -1
  218. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js.map +1 -1
  219. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js +1 -1
  220. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js.map +1 -1
  221. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js +1 -1
  222. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js.map +1 -1
  223. package/dist/dist-esm/react-components/src/components/Announcer.js +1 -1
  224. package/dist/dist-esm/react-components/src/components/Announcer.js.map +1 -1
  225. package/dist/dist-esm/react-components/src/components/CameraButton.js +1 -1
  226. package/dist/dist-esm/react-components/src/components/CameraButton.js.map +1 -1
  227. package/dist/dist-esm/react-components/src/components/Caption.js +1 -1
  228. package/dist/dist-esm/react-components/src/components/Caption.js.map +1 -1
  229. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js +1 -1
  230. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js.map +1 -1
  231. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js +2 -2
  232. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js.map +1 -1
  233. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js +1 -1
  234. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js.map +1 -1
  235. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js +1 -1
  236. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js.map +1 -1
  237. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js +1 -1
  238. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js.map +1 -1
  239. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js +1 -1
  240. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js.map +1 -1
  241. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js +1 -1
  242. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js.map +1 -1
  243. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +1 -1
  244. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
  245. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js +1 -1
  246. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js.map +1 -1
  247. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js +1 -1
  248. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js.map +1 -1
  249. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js +1 -1
  250. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js.map +1 -1
  251. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js +1 -1
  252. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js.map +1 -1
  253. package/dist/dist-esm/react-components/src/components/ComplianceBanner/Utils.js +1 -1
  254. package/dist/dist-esm/react-components/src/components/ComplianceBanner/Utils.js.map +1 -1
  255. package/dist/dist-esm/react-components/src/components/ComplianceBanner/index.js +1 -1
  256. package/dist/dist-esm/react-components/src/components/ComplianceBanner/index.js.map +1 -1
  257. package/dist/dist-esm/react-components/src/components/ComplianceBanner/types.js +1 -1
  258. package/dist/dist-esm/react-components/src/components/ComplianceBanner/types.js.map +1 -1
  259. package/dist/dist-esm/react-components/src/components/ControlBar.js +1 -1
  260. package/dist/dist-esm/react-components/src/components/ControlBar.js.map +1 -1
  261. package/dist/dist-esm/react-components/src/components/ControlBarButton.js +1 -1
  262. package/dist/dist-esm/react-components/src/components/ControlBarButton.js.map +1 -1
  263. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js +1 -1
  264. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js.map +1 -1
  265. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js +1 -1
  266. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js.map +1 -1
  267. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js +1 -1
  268. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js.map +1 -1
  269. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js +1 -1
  270. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js.map +1 -1
  271. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js +1 -1
  272. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js.map +1 -1
  273. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js +1 -1
  274. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js.map +1 -1
  275. package/dist/dist-esm/react-components/src/components/DevicesButton.js +1 -1
  276. package/dist/dist-esm/react-components/src/components/DevicesButton.js.map +1 -1
  277. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +1 -1
  278. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
  279. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js +1 -1
  280. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js.map +1 -1
  281. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js +1 -1
  282. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js.map +1 -1
  283. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js +1 -1
  284. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js.map +1 -1
  285. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js +1 -1
  286. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js.map +1 -1
  287. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js +1 -1
  288. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js.map +1 -1
  289. package/dist/dist-esm/react-components/src/components/Drawer/index.js +1 -1
  290. package/dist/dist-esm/react-components/src/components/Drawer/index.js.map +1 -1
  291. package/dist/dist-esm/react-components/src/components/EndCallButton.js +1 -1
  292. package/dist/dist-esm/react-components/src/components/EndCallButton.js.map +1 -1
  293. package/dist/dist-esm/react-components/src/components/ErrorBar.js +1 -1
  294. package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
  295. package/dist/dist-esm/react-components/src/components/FileCard.js +1 -1
  296. package/dist/dist-esm/react-components/src/components/FileCard.js.map +1 -1
  297. package/dist/dist-esm/react-components/src/components/FileCardGroup.js +1 -1
  298. package/dist/dist-esm/react-components/src/components/FileCardGroup.js.map +1 -1
  299. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js +2 -2
  300. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js.map +1 -1
  301. package/dist/dist-esm/react-components/src/components/FileUploadCards.js +1 -1
  302. package/dist/dist-esm/react-components/src/components/FileUploadCards.js.map +1 -1
  303. package/dist/dist-esm/react-components/src/components/GridLayout.js +1 -1
  304. package/dist/dist-esm/react-components/src/components/GridLayout.js.map +1 -1
  305. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js +1 -1
  306. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js.map +1 -1
  307. package/dist/dist-esm/react-components/src/components/HoldButton.js +1 -1
  308. package/dist/dist-esm/react-components/src/components/HoldButton.js.map +1 -1
  309. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js +1 -1
  310. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js.map +1 -1
  311. package/dist/dist-esm/react-components/src/components/ImageGallery.js +1 -1
  312. package/dist/dist-esm/react-components/src/components/ImageGallery.js.map +1 -1
  313. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js +1 -1
  314. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js.map +1 -1
  315. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js +1 -1
  316. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js.map +1 -1
  317. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js +1 -1
  318. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
  319. package/dist/dist-esm/react-components/src/components/MentionPopover.js +1 -1
  320. package/dist/dist-esm/react-components/src/components/MentionPopover.js.map +1 -1
  321. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js +1 -1
  322. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js.map +1 -1
  323. package/dist/dist-esm/react-components/src/components/MessageThread.js +1 -1
  324. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  325. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js +1 -1
  326. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js.map +1 -1
  327. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js +1 -1
  328. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js.map +1 -1
  329. package/dist/dist-esm/react-components/src/components/ParticipantItem.js +1 -1
  330. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  331. package/dist/dist-esm/react-components/src/components/ParticipantList.js +1 -1
  332. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  333. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js +1 -1
  334. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js.map +1 -1
  335. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js +1 -1
  336. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js.map +1 -1
  337. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js +1 -1
  338. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js.map +1 -1
  339. package/dist/dist-esm/react-components/src/components/RaiseHandButton.js +1 -1
  340. package/dist/dist-esm/react-components/src/components/RaiseHandButton.js.map +1 -1
  341. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +1 -1
  342. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  343. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js +1 -1
  344. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js.map +1 -1
  345. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js +1 -1
  346. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js.map +1 -1
  347. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js +1 -1
  348. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js.map +1 -1
  349. package/dist/dist-esm/react-components/src/components/SendBox.js +1 -1
  350. package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
  351. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js +1 -1
  352. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js.map +1 -1
  353. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js +1 -1
  354. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js.map +1 -1
  355. package/dist/dist-esm/react-components/src/components/StartCaptionsButton.js +1 -1
  356. package/dist/dist-esm/react-components/src/components/StartCaptionsButton.js.map +1 -1
  357. package/dist/dist-esm/react-components/src/components/StreamMedia.js +1 -1
  358. package/dist/dist-esm/react-components/src/components/StreamMedia.js.map +1 -1
  359. package/dist/dist-esm/react-components/src/components/SystemMessage.js +1 -1
  360. package/dist/dist-esm/react-components/src/components/SystemMessage.js.map +1 -1
  361. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js +1 -1
  362. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js.map +1 -1
  363. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js +1 -1
  364. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js.map +1 -1
  365. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js +1 -1
  366. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js.map +1 -1
  367. package/dist/dist-esm/react-components/src/components/TypingIndicator.js +1 -1
  368. package/dist/dist-esm/react-components/src/components/TypingIndicator.js.map +1 -1
  369. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js +1 -1
  370. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js.map +1 -1
  371. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js +1 -1
  372. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js.map +1 -1
  373. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js +1 -1
  374. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js.map +1 -1
  375. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js +1 -1
  376. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js.map +1 -1
  377. package/dist/dist-esm/react-components/src/components/VerticalGallery.js +1 -1
  378. package/dist/dist-esm/react-components/src/components/VerticalGallery.js.map +1 -1
  379. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js +1 -1
  380. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js.map +1 -1
  381. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js +1 -1
  382. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js.map +1 -1
  383. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js +1 -1
  384. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js.map +1 -1
  385. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js +1 -1
  386. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js.map +1 -1
  387. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js +1 -1
  388. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js.map +1 -1
  389. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js +1 -1
  390. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js.map +1 -1
  391. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js +1 -1
  392. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js.map +1 -1
  393. package/dist/dist-esm/react-components/src/components/VideoGallery/FocusContentLayout.js +1 -1
  394. package/dist/dist-esm/react-components/src/components/VideoGallery/FocusContentLayout.js.map +1 -1
  395. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js +1 -1
  396. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js.map +1 -1
  397. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.js +1 -1
  398. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.js.map +1 -1
  399. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js +1 -1
  400. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js.map +1 -1
  401. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js +1 -1
  402. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js.map +1 -1
  403. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js +1 -1
  404. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js.map +1 -1
  405. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js +1 -1
  406. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js.map +1 -1
  407. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.js +1 -1
  408. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.js.map +1 -1
  409. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js +1 -1
  410. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js.map +1 -1
  411. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js +1 -1
  412. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js.map +1 -1
  413. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js +1 -1
  414. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js.map +1 -1
  415. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/Layout.styles.js +1 -1
  416. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/Layout.styles.js.map +1 -1
  417. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/LocalScreenShare.styles.js +1 -1
  418. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/LocalScreenShare.styles.js.map +1 -1
  419. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteScreenShare.styles.js +1 -1
  420. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteScreenShare.styles.js.map +1 -1
  421. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteVideoTile.styles.js +1 -1
  422. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteVideoTile.styles.js.map +1 -1
  423. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js +1 -1
  424. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js.map +1 -1
  425. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js +1 -1
  426. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js.map +1 -1
  427. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js +1 -1
  428. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js.map +1 -1
  429. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js +1 -1
  430. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js.map +1 -1
  431. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js +1 -1
  432. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js.map +1 -1
  433. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/OverflowGalleryUtils.js +1 -1
  434. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/OverflowGalleryUtils.js.map +1 -1
  435. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +1 -1
  436. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  437. package/dist/dist-esm/react-components/src/components/VideoGallery.js +1 -1
  438. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  439. package/dist/dist-esm/react-components/src/components/VideoTile.js +1 -1
  440. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  441. package/dist/dist-esm/react-components/src/components/assets/RaisedHandIcon.js +1 -1
  442. package/dist/dist-esm/react-components/src/components/assets/RaisedHandIcon.js.map +1 -1
  443. package/dist/dist-esm/react-components/src/components/index.js +1 -1
  444. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  445. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js +1 -1
  446. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js.map +1 -1
  447. package/dist/dist-esm/react-components/src/components/styles/Captions.style.js +1 -1
  448. package/dist/dist-esm/react-components/src/components/styles/Captions.style.js.map +1 -1
  449. package/dist/dist-esm/react-components/src/components/styles/CaptionsSettingsModal.styles.js +1 -1
  450. package/dist/dist-esm/react-components/src/components/styles/CaptionsSettingsModal.styles.js.map +1 -1
  451. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js +1 -1
  452. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js.map +1 -1
  453. package/dist/dist-esm/react-components/src/components/styles/Common.style.js +1 -1
  454. package/dist/dist-esm/react-components/src/components/styles/Common.style.js.map +1 -1
  455. package/dist/dist-esm/react-components/src/components/styles/ControlBar.styles.js +1 -1
  456. package/dist/dist-esm/react-components/src/components/styles/ControlBar.styles.js.map +1 -1
  457. package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.js +1 -1
  458. package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.js.map +1 -1
  459. package/dist/dist-esm/react-components/src/components/styles/EditBox.styles.js +1 -1
  460. package/dist/dist-esm/react-components/src/components/styles/EditBox.styles.js.map +1 -1
  461. package/dist/dist-esm/react-components/src/components/styles/GridLayout.styles.js +1 -1
  462. package/dist/dist-esm/react-components/src/components/styles/GridLayout.styles.js.map +1 -1
  463. package/dist/dist-esm/react-components/src/components/styles/HorizontalGallery.styles.js +1 -1
  464. package/dist/dist-esm/react-components/src/components/styles/HorizontalGallery.styles.js.map +1 -1
  465. package/dist/dist-esm/react-components/src/components/styles/IconButton.styles.js +1 -1
  466. package/dist/dist-esm/react-components/src/components/styles/IconButton.styles.js.map +1 -1
  467. package/dist/dist-esm/react-components/src/components/styles/ImageGallery.style.js +1 -1
  468. package/dist/dist-esm/react-components/src/components/styles/ImageGallery.style.js.map +1 -1
  469. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js +1 -1
  470. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js.map +1 -1
  471. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js +1 -1
  472. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js.map +1 -1
  473. package/dist/dist-esm/react-components/src/components/styles/MessageStatusIndicator.styles.js +1 -1
  474. package/dist/dist-esm/react-components/src/components/styles/MessageStatusIndicator.styles.js.map +1 -1
  475. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js +1 -1
  476. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js.map +1 -1
  477. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js +1 -1
  478. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js.map +1 -1
  479. package/dist/dist-esm/react-components/src/components/styles/ParticipantList.styles.js +1 -1
  480. package/dist/dist-esm/react-components/src/components/styles/ParticipantList.styles.js.map +1 -1
  481. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js +1 -1
  482. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js.map +1 -1
  483. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js +1 -1
  484. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js.map +1 -1
  485. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js +1 -1
  486. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js.map +1 -1
  487. package/dist/dist-esm/react-components/src/components/styles/SystemMessage.styles.js +1 -1
  488. package/dist/dist-esm/react-components/src/components/styles/SystemMessage.styles.js.map +1 -1
  489. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js +1 -1
  490. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js.map +1 -1
  491. package/dist/dist-esm/react-components/src/components/styles/TypingIndicator.styles.js +1 -1
  492. package/dist/dist-esm/react-components/src/components/styles/TypingIndicator.styles.js.map +1 -1
  493. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js +1 -1
  494. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js.map +1 -1
  495. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js +1 -1
  496. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js.map +1 -1
  497. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js +1 -1
  498. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js.map +1 -1
  499. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js +1 -1
  500. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js.map +1 -1
  501. package/dist/dist-esm/react-components/src/components/utils/Datetime.js +1 -1
  502. package/dist/dist-esm/react-components/src/components/utils/Datetime.js.map +1 -1
  503. package/dist/dist-esm/react-components/src/components/utils/common.js +1 -1
  504. package/dist/dist-esm/react-components/src/components/utils/common.js.map +1 -1
  505. package/dist/dist-esm/react-components/src/components/utils/delay.js +1 -1
  506. package/dist/dist-esm/react-components/src/components/utils/delay.js.map +1 -1
  507. package/dist/dist-esm/react-components/src/components/utils/formatPhoneNumber.js +1 -1
  508. package/dist/dist-esm/react-components/src/components/utils/formatPhoneNumber.js.map +1 -1
  509. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js +2 -0
  510. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js.map +1 -1
  511. package/dist/dist-esm/react-components/src/components/utils/keyboardNavigation.js +1 -1
  512. package/dist/dist-esm/react-components/src/components/utils/keyboardNavigation.js.map +1 -1
  513. package/dist/dist-esm/react-components/src/components/utils/merge.js +1 -1
  514. package/dist/dist-esm/react-components/src/components/utils/merge.js.map +1 -1
  515. package/dist/dist-esm/react-components/src/components/utils/overFlowGalleriesUtils.js +1 -1
  516. package/dist/dist-esm/react-components/src/components/utils/overFlowGalleriesUtils.js.map +1 -1
  517. package/dist/dist-esm/react-components/src/components/utils/responsive.js +1 -1
  518. package/dist/dist-esm/react-components/src/components/utils/responsive.js.map +1 -1
  519. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js +1 -1
  520. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js.map +1 -1
  521. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js +1 -1
  522. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js.map +1 -1
  523. package/dist/dist-esm/react-components/src/components/utils.js +1 -1
  524. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  525. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js +2 -0
  526. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js.map +1 -1
  527. package/dist/dist-esm/react-components/src/gallery/index.js +1 -1
  528. package/dist/dist-esm/react-components/src/gallery/index.js.map +1 -1
  529. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js +1 -1
  530. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js.map +1 -1
  531. package/dist/dist-esm/react-components/src/identifiers/index.js +1 -1
  532. package/dist/dist-esm/react-components/src/identifiers/index.js.map +1 -1
  533. package/dist/dist-esm/react-components/src/index.js +1 -1
  534. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  535. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js +1 -1
  536. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  537. package/dist/dist-esm/react-components/src/localization/index.js +1 -1
  538. package/dist/dist-esm/react-components/src/localization/index.js.map +1 -1
  539. package/dist/dist-esm/react-components/src/localization/locales/index.js +1 -1
  540. package/dist/dist-esm/react-components/src/localization/locales/index.js.map +1 -1
  541. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js +1 -1
  542. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js.map +1 -1
  543. package/dist/dist-esm/react-components/src/theming/icons.js +1 -1
  544. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  545. package/dist/dist-esm/react-components/src/theming/icons.styles.js +1 -1
  546. package/dist/dist-esm/react-components/src/theming/icons.styles.js.map +1 -1
  547. package/dist/dist-esm/react-components/src/theming/index.js +1 -1
  548. package/dist/dist-esm/react-components/src/theming/index.js.map +1 -1
  549. package/dist/dist-esm/react-components/src/theming/themeUtils.js +1 -1
  550. package/dist/dist-esm/react-components/src/theming/themeUtils.js.map +1 -1
  551. package/dist/dist-esm/react-components/src/theming/themes.js +1 -1
  552. package/dist/dist-esm/react-components/src/theming/themes.js.map +1 -1
  553. package/dist/dist-esm/react-components/src/types/CaptionsAvailableLanguageStrings.js +1 -1
  554. package/dist/dist-esm/react-components/src/types/CaptionsAvailableLanguageStrings.js.map +1 -1
  555. package/dist/dist-esm/react-components/src/types/ChatMessage.js +1 -1
  556. package/dist/dist-esm/react-components/src/types/ChatMessage.js.map +1 -1
  557. package/dist/dist-esm/react-components/src/types/CommunicationParticipant.js +1 -1
  558. package/dist/dist-esm/react-components/src/types/CommunicationParticipant.js.map +1 -1
  559. package/dist/dist-esm/react-components/src/types/ComponentSlotStyle.js +1 -1
  560. package/dist/dist-esm/react-components/src/types/ComponentSlotStyle.js.map +1 -1
  561. package/dist/dist-esm/react-components/src/types/CustomStylesProps.js +1 -1
  562. package/dist/dist-esm/react-components/src/types/CustomStylesProps.js.map +1 -1
  563. package/dist/dist-esm/react-components/src/types/OnRender.js +1 -1
  564. package/dist/dist-esm/react-components/src/types/OnRender.js.map +1 -1
  565. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js +1 -1
  566. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js.map +1 -1
  567. package/dist/dist-esm/react-components/src/types/ReadReceiptsBySenderId.js +1 -1
  568. package/dist/dist-esm/react-components/src/types/ReadReceiptsBySenderId.js.map +1 -1
  569. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js +1 -1
  570. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
  571. package/dist/dist-esm/react-components/src/types/index.js +1 -1
  572. package/dist/dist-esm/react-components/src/types/index.js.map +1 -1
  573. package/dist/dist-esm/react-composites/src/Logger.js +1 -1
  574. package/dist/dist-esm/react-composites/src/Logger.js.map +1 -1
  575. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +1 -1
  576. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  577. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js +1 -1
  578. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  579. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +1 -1
  580. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  581. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js +1 -1
  582. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  583. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapterProvider.js +1 -1
  584. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapterProvider.js.map +1 -1
  585. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/DiagnosticsForwarder.js +1 -1
  586. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/DiagnosticsForwarder.js.map +1 -1
  587. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js +1 -1
  588. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js.map +1 -1
  589. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/ParticipantSubcriber.js +2 -0
  590. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/ParticipantSubcriber.js.map +1 -1
  591. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js +1 -1
  592. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js.map +1 -1
  593. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js +1 -1
  594. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js.map +1 -1
  595. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +1 -1
  596. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  597. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +1 -1
  598. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  599. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js +1 -1
  600. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js.map +1 -1
  601. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js +1 -1
  602. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js.map +1 -1
  603. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js +1 -1
  604. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js.map +1 -1
  605. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js +1 -1
  606. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js.map +1 -1
  607. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js +1 -1
  608. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js.map +1 -1
  609. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js +1 -1
  610. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js.map +1 -1
  611. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js +1 -1
  612. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js.map +1 -1
  613. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js +1 -1
  614. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js.map +1 -1
  615. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js +1 -1
  616. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js.map +1 -1
  617. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js +1 -1
  618. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
  619. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js +1 -1
  620. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js.map +1 -1
  621. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +1 -1
  622. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  623. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js +1 -1
  624. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js.map +1 -1
  625. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js +1 -1
  626. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js.map +1 -1
  627. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js +1 -1
  628. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js.map +1 -1
  629. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePaneProvider.js +1 -1
  630. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePaneProvider.js.map +1 -1
  631. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js +1 -1
  632. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js.map +1 -1
  633. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js +1 -1
  634. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js.map +1 -1
  635. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js +1 -1
  636. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js.map +1 -1
  637. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js +1 -1
  638. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js.map +1 -1
  639. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.js +1 -1
  640. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.js.map +1 -1
  641. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js +1 -1
  642. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js.map +1 -1
  643. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js +1 -1
  644. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js.map +1 -1
  645. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js +1 -1
  646. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js.map +1 -1
  647. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js +1 -1
  648. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js.map +1 -1
  649. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js +1 -1
  650. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js.map +1 -1
  651. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/RaiseHand.js +1 -2
  652. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/RaiseHand.js.map +1 -1
  653. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js +1 -1
  654. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js.map +1 -1
  655. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js +1 -1
  656. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js.map +1 -1
  657. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +1 -1
  658. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  659. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.js +1 -1
  660. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.js.map +1 -1
  661. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js +1 -1
  662. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js.map +1 -1
  663. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js +1 -1
  664. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
  665. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +1 -1
  666. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  667. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +1 -1
  668. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  669. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +1 -1
  670. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +1 -1
  671. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js +1 -1
  672. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js.map +1 -1
  673. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js +1 -1
  674. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js.map +1 -1
  675. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js +1 -1
  676. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js.map +1 -1
  677. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js +1 -1
  678. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js.map +1 -1
  679. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js +1 -1
  680. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js.map +1 -1
  681. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.js +1 -1
  682. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.js.map +1 -1
  683. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +1 -1
  684. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
  685. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.js +1 -1
  686. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.js.map +1 -1
  687. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.js +1 -1
  688. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.js.map +1 -1
  689. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.js +1 -1
  690. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.js.map +1 -1
  691. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/deviceCountSelector.js +1 -1
  692. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/deviceCountSelector.js.map +1 -1
  693. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js +1 -1
  694. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js.map +1 -1
  695. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js +1 -1
  696. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js.map +1 -1
  697. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js +1 -1
  698. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js.map +1 -1
  699. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js +1 -1
  700. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js.map +1 -1
  701. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js +1 -1
  702. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js.map +1 -1
  703. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js +1 -1
  704. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js.map +1 -1
  705. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js +1 -1
  706. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js.map +1 -1
  707. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js +1 -1
  708. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js.map +1 -1
  709. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.js +1 -1
  710. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.js.map +1 -1
  711. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js +1 -1
  712. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js.map +1 -1
  713. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js +1 -1
  714. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js.map +1 -1
  715. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js +1 -1
  716. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js.map +1 -1
  717. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallControls.styles.js +1 -1
  718. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallControls.styles.js.map +1 -1
  719. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js +1 -1
  720. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js.map +1 -1
  721. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js +1 -1
  722. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js.map +1 -1
  723. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js +1 -1
  724. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js.map +1 -1
  725. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js +1 -1
  726. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js.map +1 -1
  727. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalDeviceSettings.styles.js +1 -1
  728. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalDeviceSettings.styles.js.map +1 -1
  729. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js +1 -1
  730. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js.map +1 -1
  731. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NetworkReconnectTile.styles.js +1 -1
  732. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NetworkReconnectTile.styles.js.map +1 -1
  733. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NoticePage.styles.js +1 -1
  734. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NoticePage.styles.js.map +1 -1
  735. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js +1 -1
  736. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js.map +1 -1
  737. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.js +1 -1
  738. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.js.map +1 -1
  739. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.js +1 -1
  740. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.js.map +1 -1
  741. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CapabilityChangedNotificationTracking.js +1 -1
  742. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CapabilityChangedNotificationTracking.js.map +1 -1
  743. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/ErrorTracking.js +1 -1
  744. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/ErrorTracking.js.map +1 -1
  745. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js +1 -1
  746. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js.map +1 -1
  747. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackCapabilityChangedNotifications.js +1 -1
  748. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackCapabilityChangedNotifications.js.map +1 -1
  749. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js +1 -1
  750. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js.map +1 -1
  751. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +1 -1
  752. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  753. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/index.js +1 -1
  754. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/index.js.map +1 -1
  755. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +1 -1
  756. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  757. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.js +1 -1
  758. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.js.map +1 -1
  759. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.js +1 -1
  760. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.js.map +1 -1
  761. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.js +1 -1
  762. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.js.map +1 -1
  763. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.js +1 -1
  764. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.js.map +1 -1
  765. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.js +1 -1
  766. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.js.map +1 -1
  767. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +1 -1
  768. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  769. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js +1 -1
  770. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  771. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +1 -1
  772. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  773. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js +1 -1
  774. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  775. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js +1 -1
  776. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js.map +1 -1
  777. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/hooks/useCallWithChatCompositeStrings.js +1 -1
  778. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/hooks/useCallWithChatCompositeStrings.js.map +1 -1
  779. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.js +1 -1
  780. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.js.map +1 -1
  781. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js +1 -1
  782. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js.map +1 -1
  783. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js +1 -1
  784. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js.map +1 -1
  785. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/styles/CallWithChatCompositeStyles.js +1 -1
  786. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/styles/CallWithChatCompositeStyles.js.map +1 -1
  787. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js +1 -1
  788. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js.map +1 -1
  789. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js +1 -1
  790. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js.map +1 -1
  791. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +1 -1
  792. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  793. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js +1 -1
  794. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +1 -1
  795. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js +1 -1
  796. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js.map +1 -1
  797. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.js +1 -1
  798. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.js.map +1 -1
  799. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +1 -1
  800. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  801. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js +1 -1
  802. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js.map +1 -1
  803. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js +1 -1
  804. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  805. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js +1 -1
  806. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js.map +1 -1
  807. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUpload.js +1 -1
  808. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUpload.js.map +1 -1
  809. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js +1 -1
  810. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js.map +1 -1
  811. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadHandler.js +1 -1
  812. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadHandler.js.map +1 -1
  813. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js +1 -1
  814. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js.map +1 -1
  815. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js +1 -1
  816. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js.map +1 -1
  817. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js +1 -1
  818. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js.map +1 -1
  819. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/usePropsFor.js +1 -1
  820. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/usePropsFor.js.map +1 -1
  821. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js +1 -1
  822. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js.map +1 -1
  823. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js +1 -1
  824. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js.map +1 -1
  825. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js +2 -0
  826. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js.map +1 -1
  827. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js +1 -1
  828. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js.map +1 -1
  829. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js +1 -1
  830. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js.map +1 -1
  831. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js +1 -1
  832. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js.map +1 -1
  833. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js +1 -1
  834. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js.map +1 -1
  835. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js +1 -1
  836. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js.map +1 -1
  837. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js +1 -1
  838. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js.map +1 -1
  839. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js +1 -1
  840. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js.map +1 -1
  841. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js +1 -1
  842. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js.map +1 -1
  843. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js +1 -1
  844. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js.map +1 -1
  845. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.js +1 -1
  846. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.js.map +1 -1
  847. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.js +2 -2
  848. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.js.map +1 -1
  849. package/dist/dist-esm/react-composites/src/composites/common/CaptionsSettingsModal.js +1 -1
  850. package/dist/dist-esm/react-composites/src/composites/common/CaptionsSettingsModal.js.map +1 -1
  851. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js +1 -1
  852. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js.map +1 -1
  853. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +1 -1
  854. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -1
  855. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js +1 -1
  856. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js.map +1 -1
  857. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js +1 -1
  858. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js.map +1 -1
  859. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js +1 -1
  860. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js.map +1 -1
  861. package/dist/dist-esm/react-composites/src/composites/common/ConvertContextualMenuItemToDrawerMenuItem.js +1 -1
  862. package/dist/dist-esm/react-composites/src/composites/common/ConvertContextualMenuItemToDrawerMenuItem.js.map +1 -1
  863. package/dist/dist-esm/react-composites/src/composites/common/Drawer/CaptionSettingsDrawer.js +1 -1
  864. package/dist/dist-esm/react-composites/src/composites/common/Drawer/CaptionSettingsDrawer.js.map +1 -1
  865. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +1 -1
  866. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -1
  867. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.styles.js +2 -0
  868. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.styles.js.map +1 -1
  869. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.js +1 -1
  870. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.js.map +1 -1
  871. package/dist/dist-esm/react-composites/src/composites/common/Drawer/captionSettingsDrawer.styles.js +1 -1
  872. package/dist/dist-esm/react-composites/src/composites/common/Drawer/captionSettingsDrawer.styles.js.map +1 -1
  873. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js +1 -1
  874. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js.map +1 -1
  875. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js +1 -1
  876. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js.map +1 -1
  877. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js +1 -1
  878. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js.map +1 -1
  879. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +1 -1
  880. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
  881. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js +1 -1
  882. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js.map +1 -1
  883. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js +1 -1
  884. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js.map +1 -1
  885. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js +1 -1
  886. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js.map +1 -1
  887. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js +1 -1
  888. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js.map +1 -1
  889. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js +1 -1
  890. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js.map +1 -1
  891. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js +2 -2
  892. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js.map +1 -1
  893. package/dist/dist-esm/react-composites/src/composites/common/adapters.js +1 -1
  894. package/dist/dist-esm/react-composites/src/composites/common/adapters.js.map +1 -1
  895. package/dist/dist-esm/react-composites/src/composites/common/constants.js +1 -1
  896. package/dist/dist-esm/react-composites/src/composites/common/constants.js.map +1 -1
  897. package/dist/dist-esm/react-composites/src/composites/common/icons.js +1 -1
  898. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  899. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependency.js +2 -3
  900. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependency.js.map +1 -1
  901. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependencyLazy.js +1 -1
  902. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependencyLazy.js.map +1 -1
  903. package/dist/dist-esm/react-composites/src/composites/common/styles/Composite.styles.js +1 -1
  904. package/dist/dist-esm/react-composites/src/composites/common/styles/Composite.styles.js.map +1 -1
  905. package/dist/dist-esm/react-composites/src/composites/common/styles/GlobalHostLayer.styles.js +1 -1
  906. package/dist/dist-esm/react-composites/src/composites/common/styles/GlobalHostLayer.styles.js.map +1 -1
  907. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js +1 -1
  908. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js.map +1 -1
  909. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js +1 -1
  910. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js.map +1 -1
  911. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js +1 -1
  912. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js.map +1 -1
  913. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js +1 -1
  914. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js.map +1 -1
  915. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js +1 -1
  916. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js.map +1 -1
  917. package/dist/dist-esm/react-composites/src/composites/common/utils.js +1 -1
  918. package/dist/dist-esm/react-composites/src/composites/common/utils.js.map +1 -1
  919. package/dist/dist-esm/react-composites/src/composites/index.js +1 -1
  920. package/dist/dist-esm/react-composites/src/composites/index.js.map +1 -1
  921. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js +1 -1
  922. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js.map +1 -1
  923. package/dist/dist-esm/react-composites/src/composites/localization/index.js +1 -1
  924. package/dist/dist-esm/react-composites/src/composites/localization/index.js.map +1 -1
  925. package/dist/dist-esm/react-composites/src/composites/localization/locales/index.js +1 -1
  926. package/dist/dist-esm/react-composites/src/composites/localization/locales/index.js.map +1 -1
  927. package/dist/dist-esm/react-composites/src/index-public.js +1 -1
  928. package/dist/dist-esm/react-composites/src/index-public.js.map +1 -1
  929. package/package.json +9 -9
@@ -1 +1 @@
1
- {"version":3,"file":"ChatMessageComponentAsMessageBubble.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { IStyle, mergeStyles } from '@fluentui/react';\nimport { Chat, Text } from '@internal/northstar-wrapper';\nimport { _formatString } from '@internal/acs-ui-common';\nimport React, { useCallback, useRef, useState } from 'react';\nimport {\n chatMessageEditedTagStyle,\n chatMessageDateStyle,\n chatMessageFailedTagStyle\n} from '../styles/ChatMessageComponent.styles';\nimport { formatTimeForChatMessage, formatTimestampForChatMessage } from '../utils/Datetime';\nimport { useIdentifiers } from '../../identifiers/IdentifierProvider';\nimport { useTheme } from '../../theming';\nimport { ChatMessageActionFlyout } from './ChatMessageActionsFlyout';\nimport { ChatMessageContent } from './ChatMessageContent';\nimport { ChatMessage } from '../../types/ChatMessage';\n/* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\nimport { FileMetadata } from '../FileDownloadCards';\n/* @conditional-compile-remove(data-loss-prevention) */\nimport { BlockedMessageContent } from './ChatMessageContent';\n/* @conditional-compile-remove(data-loss-prevention) */\nimport { BlockedMessage } from '../../types/ChatMessage';\nimport { MessageThreadStrings } from '../MessageThread';\nimport { chatMessageActionMenuProps } from './ChatMessageActionMenu';\nimport { ComponentSlotStyle, OnRenderAvatarCallback } from '../../types';\nimport { _FileDownloadCards, FileDownloadHandler } from '../FileDownloadCards';\nimport { ComponentLocale, useLocale } from '../../localization';\n/* @conditional-compile-remove(mention) */\nimport { MentionDisplayOptions } from '../MentionPopover';\n\ntype ChatMessageComponentAsMessageBubbleProps = {\n message: ChatMessage | /* @conditional-compile-remove(data-loss-prevention) */ BlockedMessage;\n messageContainerStyle?: ComponentSlotStyle;\n showDate?: boolean;\n disableEditing?: boolean;\n onEditClick: () => void;\n onRemoveClick?: () => void;\n onResendClick?: () => void;\n strings: MessageThreadStrings;\n userId: string;\n messageStatus?: string;\n /**\n * Whether the status indicator for each message is displayed or not.\n */\n showMessageStatus?: boolean;\n /**\n * Optional callback to render uploaded files in the message component.\n */\n onRenderFileDownloads?: (userId: string, message: ChatMessage) => JSX.Element;\n /**\n * Optional function called when someone clicks on the file download icon.\n */\n fileDownloadHandler?: FileDownloadHandler;\n remoteParticipantsCount?: number;\n onActionButtonClick: (\n message: ChatMessage,\n setMessageReadBy: (readBy: { id: string; displayName: string }[]) => void\n ) => void;\n /**\n * Optional callback to override render of the avatar.\n *\n * @param userId - user Id\n */\n onRenderAvatar?: OnRenderAvatarCallback;\n\n /**\n * Optional function to provide customized date format.\n * @beta\n */\n onDisplayDateTimeString?: (messageDate: Date) => string;\n /* @conditional-compile-remove(mention) */\n /**\n * Optional props needed to display suggestions in the mention scenario.\n * @internal\n */\n mentionDisplayOptions?: MentionDisplayOptions;\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n /**\n * Optional function to fetch attachments.\n */\n onFetchAttachments?: (attachment: FileMetadata) => Promise<void>;\n /* @conditional-compile-remove(image-gallery) */\n /**\n * Optional callback called when an inline image is clicked.\n * @beta\n */\n onInlineImageClicked?: (attachmentId: string, messageId: string) => Promise<void>;\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n /**\n * Optional map of attachment ids to blob urls.\n */\n attachmentsMap?: Record<string, string>;\n};\n\nconst generateDefaultTimestamp = (\n createdOn: Date,\n showDate: boolean | undefined,\n strings: MessageThreadStrings\n): string => {\n const formattedTimestamp = showDate\n ? formatTimestampForChatMessage(createdOn, new Date(), strings)\n : formatTimeForChatMessage(createdOn);\n\n return formattedTimestamp;\n};\n\n// onDisplayDateTimeString from props overwrite onDisplayDateTimeString from locale\nconst generateCustomizedTimestamp = (\n props: ChatMessageComponentAsMessageBubbleProps,\n createdOn: Date,\n locale: ComponentLocale\n): string => {\n /* @conditional-compile-remove(date-time-customization) */\n return props.onDisplayDateTimeString\n ? props.onDisplayDateTimeString(createdOn)\n : locale.onDisplayDateTimeString\n ? locale.onDisplayDateTimeString(createdOn)\n : '';\n\n return '';\n};\n/** @private */\nconst MessageBubble = (props: ChatMessageComponentAsMessageBubbleProps): JSX.Element => {\n const ids = useIdentifiers();\n const theme = useTheme();\n const locale = useLocale();\n\n const {\n userId,\n message,\n onRemoveClick,\n onResendClick,\n disableEditing,\n showDate,\n messageContainerStyle,\n strings,\n onEditClick,\n remoteParticipantsCount = 0,\n onRenderAvatar,\n showMessageStatus,\n messageStatus,\n fileDownloadHandler,\n /* @conditional-compile-remove(image-gallery) */\n onInlineImageClicked\n } = props;\n\n const defaultTimeStamp = message.createdOn\n ? generateDefaultTimestamp(message.createdOn, showDate, strings)\n : undefined;\n\n const customTimestamp = message.createdOn ? generateCustomizedTimestamp(props, message.createdOn, locale) : '';\n\n const formattedTimestamp = customTimestamp || defaultTimeStamp;\n\n // Track if the action menu was opened by touch - if so we increase the touch targets for the items\n const [wasInteractionByTouch, setWasInteractionByTouch] = useState(false);\n\n // The chat message action flyout should target the Chat.Message action menu if clicked,\n // or target the chat message if opened via touch press.\n // Undefined indicates the flyout menu should not be being shown.\n const messageRef = useRef<HTMLDivElement | null>(null);\n const messageActionButtonRef = useRef<HTMLElement | null>(null);\n const [chatMessageActionFlyoutTarget, setChatMessageActionFlyoutTarget] = useState<\n React.MutableRefObject<HTMLElement | null> | undefined\n >(undefined);\n\n const chatActionsEnabled =\n !disableEditing &&\n message.status !== 'sending' &&\n !!message.mine &&\n /* @conditional-compile-remove(data-loss-prevention) */ message.messageType !== 'blocked';\n const [messageReadBy, setMessageReadBy] = useState<{ id: string; displayName: string }[]>([]);\n\n const actionMenuProps = wasInteractionByTouch\n ? undefined\n : chatMessageActionMenuProps({\n ariaLabel: strings.actionMenuMoreOptions ?? '',\n enabled: chatActionsEnabled,\n menuButtonRef: messageActionButtonRef,\n // Force show the action button while the flyout is open (otherwise this will dismiss when the pointer is hovered over the flyout)\n forceShow: chatMessageActionFlyoutTarget === messageActionButtonRef,\n onActionButtonClick: () => {\n if (message.messageType === 'chat') {\n props.onActionButtonClick(message, setMessageReadBy);\n setChatMessageActionFlyoutTarget(messageActionButtonRef);\n }\n },\n theme\n });\n\n const onActionFlyoutDismiss = useCallback((): void => {\n // When the flyout dismiss is called, since we control if the action flyout is visible\n // or not we need to set the target to undefined here to actually hide the action flyout\n setChatMessageActionFlyoutTarget(undefined);\n }, [setChatMessageActionFlyoutTarget]);\n\n const defaultOnRenderFileDownloads = useCallback(\n () => (\n <_FileDownloadCards\n userId={userId}\n fileMetadata={message['attachedFilesMetadata'] || []}\n downloadHandler={fileDownloadHandler}\n /* @conditional-compile-remove(file-sharing) @conditional-compile-remove(teams-inline-images-and-file-sharing)*/\n strings={{ downloadFile: strings.downloadFile, fileCardGroupMessage: strings.fileCardGroupMessage }}\n />\n ),\n [\n userId,\n message,\n /* @conditional-compile-remove(file-sharing) @conditional-compile-remove(teams-inline-images-and-file-sharing)*/\n strings,\n fileDownloadHandler\n ]\n );\n\n const editedOn = 'editedOn' in message ? message.editedOn : undefined;\n const getMessageDetails = useCallback(() => {\n if (messageStatus === 'failed') {\n return <div className={chatMessageFailedTagStyle(theme)}>{strings.failToSendTag}</div>;\n } else if (message.messageType === 'chat' && editedOn) {\n return <div className={chatMessageEditedTagStyle(theme)}>{strings.editedTag}</div>;\n }\n return undefined;\n }, [editedOn, message.messageType, messageStatus, strings.editedTag, strings.failToSendTag, theme]);\n\n /* @conditional-compile-remove(image-gallery) */\n const handleOnInlineImageClicked = useCallback(\n async (attachmentId: string): Promise<void> => {\n if (onInlineImageClicked === undefined) {\n return;\n }\n await onInlineImageClicked(attachmentId, message.messageId);\n },\n [message, onInlineImageClicked]\n );\n\n const getContent = useCallback(() => {\n /* @conditional-compile-remove(data-loss-prevention) */\n if (message.messageType === 'blocked') {\n return (\n <div tabIndex={0}>\n <BlockedMessageContent message={message} strings={strings} />\n </div>\n );\n }\n return (\n <div tabIndex={0}>\n <ChatMessageContent\n message={message}\n strings={strings}\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n onFetchAttachment={props.onFetchAttachments}\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n attachmentsMap={props.attachmentsMap}\n /* @conditional-compile-remove(mention) */\n mentionDisplayOptions={props.mentionDisplayOptions}\n /* @conditional-compile-remove(image-gallery) */\n onInlineImageClicked={handleOnInlineImageClicked}\n />\n {props.onRenderFileDownloads ? props.onRenderFileDownloads(userId, message) : defaultOnRenderFileDownloads()}\n </div>\n );\n }, [\n defaultOnRenderFileDownloads,\n message,\n props,\n strings,\n userId,\n /* @conditional-compile-remove(image-gallery) */\n handleOnInlineImageClicked\n ]);\n\n const chatMessage = (\n <>\n <div ref={messageRef}>\n <Chat.Message\n data-ui-id=\"chat-composite-message\"\n className={mergeStyles(messageContainerStyle as IStyle)}\n styles={messageContainerStyle}\n content={getContent()}\n author={<Text className={chatMessageDateStyle}>{message.senderDisplayName}</Text>}\n mine={message.mine}\n timestamp={<Text data-ui-id={ids.messageTimestamp}>{formattedTimestamp}</Text>}\n details={getMessageDetails()}\n positionActionMenu={false}\n actionMenu={actionMenuProps}\n onTouchStart={() => setWasInteractionByTouch(true)}\n onPointerDown={() => setWasInteractionByTouch(false)}\n onKeyDown={() => setWasInteractionByTouch(false)}\n onBlur={() => setWasInteractionByTouch(false)}\n onClick={() => {\n if (!wasInteractionByTouch) {\n return;\n }\n // If the message was touched via touch we immediately open the menu\n // flyout (when using mouse the 3-dot menu that appears on hover\n // must be clicked to open the flyout).\n // In doing so here we set the target of the flyout to be the message and\n // not the 3-dot menu button to position the flyout correctly.\n setChatMessageActionFlyoutTarget(messageRef);\n if (message.messageType === 'chat') {\n props.onActionButtonClick(message, setMessageReadBy);\n }\n }}\n />\n </div>\n {chatActionsEnabled && (\n <ChatMessageActionFlyout\n hidden={!chatMessageActionFlyoutTarget}\n target={chatMessageActionFlyoutTarget}\n increaseFlyoutItemSize={wasInteractionByTouch}\n onDismiss={onActionFlyoutDismiss}\n onEditClick={onEditClick}\n onRemoveClick={onRemoveClick}\n onResendClick={onResendClick}\n strings={strings}\n messageReadBy={messageReadBy}\n messageStatus={messageStatus ?? 'failed'}\n remoteParticipantsCount={remoteParticipantsCount}\n onRenderAvatar={onRenderAvatar}\n showMessageStatus={showMessageStatus}\n />\n )}\n </>\n );\n return chatMessage;\n};\n\n/** @private */\nexport const ChatMessageComponentAsMessageBubble = React.memo(MessageBubble);\n\"../../../../northstar-wrapper/src\"\"../../../../acs-ui-common/src\""]}
1
+ {"version":3,"file":"ChatMessageComponentAsMessageBubble.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { IStyle, mergeStyles } from '@fluentui/react';\nimport { Chat, Text } from '@internal/northstar-wrapper';\nimport { _formatString } from '@internal/acs-ui-common';\nimport React, { useCallback, useRef, useState } from 'react';\nimport {\n chatMessageEditedTagStyle,\n chatMessageDateStyle,\n chatMessageFailedTagStyle\n} from '../styles/ChatMessageComponent.styles';\nimport { formatTimeForChatMessage, formatTimestampForChatMessage } from '../utils/Datetime';\nimport { useIdentifiers } from '../../identifiers/IdentifierProvider';\nimport { useTheme } from '../../theming';\nimport { ChatMessageActionFlyout } from './ChatMessageActionsFlyout';\nimport { ChatMessageContent } from './ChatMessageContent';\nimport { ChatMessage } from '../../types/ChatMessage';\n/* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\nimport { FileMetadata } from '../FileDownloadCards';\n/* @conditional-compile-remove(data-loss-prevention) */\nimport { BlockedMessageContent } from './ChatMessageContent';\n/* @conditional-compile-remove(data-loss-prevention) */\nimport { BlockedMessage } from '../../types/ChatMessage';\nimport { MessageThreadStrings } from '../MessageThread';\nimport { chatMessageActionMenuProps } from './ChatMessageActionMenu';\nimport { ComponentSlotStyle, OnRenderAvatarCallback } from '../../types';\nimport { _FileDownloadCards, FileDownloadHandler } from '../FileDownloadCards';\nimport { ComponentLocale, useLocale } from '../../localization';\n/* @conditional-compile-remove(mention) */\nimport { MentionDisplayOptions } from '../MentionPopover';\n\ntype ChatMessageComponentAsMessageBubbleProps = {\n message: ChatMessage | /* @conditional-compile-remove(data-loss-prevention) */ BlockedMessage;\n messageContainerStyle?: ComponentSlotStyle;\n showDate?: boolean;\n disableEditing?: boolean;\n onEditClick: () => void;\n onRemoveClick?: () => void;\n onResendClick?: () => void;\n strings: MessageThreadStrings;\n userId: string;\n messageStatus?: string;\n /**\n * Whether the status indicator for each message is displayed or not.\n */\n showMessageStatus?: boolean;\n /**\n * Optional callback to render uploaded files in the message component.\n */\n onRenderFileDownloads?: (userId: string, message: ChatMessage) => JSX.Element;\n /**\n * Optional function called when someone clicks on the file download icon.\n */\n fileDownloadHandler?: FileDownloadHandler;\n remoteParticipantsCount?: number;\n onActionButtonClick: (\n message: ChatMessage,\n setMessageReadBy: (readBy: { id: string; displayName: string }[]) => void\n ) => void;\n /**\n * Optional callback to override render of the avatar.\n *\n * @param userId - user Id\n */\n onRenderAvatar?: OnRenderAvatarCallback;\n\n /**\n * Optional function to provide customized date format.\n * @beta\n */\n onDisplayDateTimeString?: (messageDate: Date) => string;\n /* @conditional-compile-remove(mention) */\n /**\n * Optional props needed to display suggestions in the mention scenario.\n * @internal\n */\n mentionDisplayOptions?: MentionDisplayOptions;\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n /**\n * Optional function to fetch attachments.\n */\n onFetchAttachments?: (attachment: FileMetadata) => Promise<void>;\n /* @conditional-compile-remove(image-gallery) */\n /**\n * Optional callback called when an inline image is clicked.\n * @beta\n */\n onInlineImageClicked?: (attachmentId: string, messageId: string) => Promise<void>;\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n /**\n * Optional map of attachment ids to blob urls.\n */\n attachmentsMap?: Record<string, string>;\n};\n\nconst generateDefaultTimestamp = (\n createdOn: Date,\n showDate: boolean | undefined,\n strings: MessageThreadStrings\n): string => {\n const formattedTimestamp = showDate\n ? formatTimestampForChatMessage(createdOn, new Date(), strings)\n : formatTimeForChatMessage(createdOn);\n\n return formattedTimestamp;\n};\n\n// onDisplayDateTimeString from props overwrite onDisplayDateTimeString from locale\nconst generateCustomizedTimestamp = (\n props: ChatMessageComponentAsMessageBubbleProps,\n createdOn: Date,\n locale: ComponentLocale\n): string => {\n /* @conditional-compile-remove(date-time-customization) */\n return props.onDisplayDateTimeString\n ? props.onDisplayDateTimeString(createdOn)\n : locale.onDisplayDateTimeString\n ? locale.onDisplayDateTimeString(createdOn)\n : '';\n\n return '';\n};\n/** @private */\nconst MessageBubble = (props: ChatMessageComponentAsMessageBubbleProps): JSX.Element => {\n const ids = useIdentifiers();\n const theme = useTheme();\n const locale = useLocale();\n\n const {\n userId,\n message,\n onRemoveClick,\n onResendClick,\n disableEditing,\n showDate,\n messageContainerStyle,\n strings,\n onEditClick,\n remoteParticipantsCount = 0,\n onRenderAvatar,\n showMessageStatus,\n messageStatus,\n fileDownloadHandler,\n /* @conditional-compile-remove(image-gallery) */\n onInlineImageClicked\n } = props;\n\n const defaultTimeStamp = message.createdOn\n ? generateDefaultTimestamp(message.createdOn, showDate, strings)\n : undefined;\n\n const customTimestamp = message.createdOn ? generateCustomizedTimestamp(props, message.createdOn, locale) : '';\n\n const formattedTimestamp = customTimestamp || defaultTimeStamp;\n\n // Track if the action menu was opened by touch - if so we increase the touch targets for the items\n const [wasInteractionByTouch, setWasInteractionByTouch] = useState(false);\n\n // The chat message action flyout should target the Chat.Message action menu if clicked,\n // or target the chat message if opened via touch press.\n // Undefined indicates the flyout menu should not be being shown.\n const messageRef = useRef<HTMLDivElement | null>(null);\n const messageActionButtonRef = useRef<HTMLElement | null>(null);\n const [chatMessageActionFlyoutTarget, setChatMessageActionFlyoutTarget] = useState<\n React.MutableRefObject<HTMLElement | null> | undefined\n >(undefined);\n\n const chatActionsEnabled =\n !disableEditing &&\n message.status !== 'sending' &&\n !!message.mine &&\n /* @conditional-compile-remove(data-loss-prevention) */ message.messageType !== 'blocked';\n const [messageReadBy, setMessageReadBy] = useState<{ id: string; displayName: string }[]>([]);\n\n const actionMenuProps = wasInteractionByTouch\n ? undefined\n : chatMessageActionMenuProps({\n ariaLabel: strings.actionMenuMoreOptions ?? '',\n enabled: chatActionsEnabled,\n menuButtonRef: messageActionButtonRef,\n // Force show the action button while the flyout is open (otherwise this will dismiss when the pointer is hovered over the flyout)\n forceShow: chatMessageActionFlyoutTarget === messageActionButtonRef,\n onActionButtonClick: () => {\n if (message.messageType === 'chat') {\n props.onActionButtonClick(message, setMessageReadBy);\n setChatMessageActionFlyoutTarget(messageActionButtonRef);\n }\n },\n theme\n });\n\n const onActionFlyoutDismiss = useCallback((): void => {\n // When the flyout dismiss is called, since we control if the action flyout is visible\n // or not we need to set the target to undefined here to actually hide the action flyout\n setChatMessageActionFlyoutTarget(undefined);\n }, [setChatMessageActionFlyoutTarget]);\n\n const defaultOnRenderFileDownloads = useCallback(\n () => (\n <_FileDownloadCards\n userId={userId}\n fileMetadata={message['attachedFilesMetadata'] || []}\n downloadHandler={fileDownloadHandler}\n /* @conditional-compile-remove(file-sharing) @conditional-compile-remove(teams-inline-images-and-file-sharing)*/\n strings={{ downloadFile: strings.downloadFile, fileCardGroupMessage: strings.fileCardGroupMessage }}\n />\n ),\n [\n userId,\n message,\n /* @conditional-compile-remove(file-sharing) @conditional-compile-remove(teams-inline-images-and-file-sharing)*/\n strings,\n fileDownloadHandler\n ]\n );\n\n const editedOn = 'editedOn' in message ? message.editedOn : undefined;\n const getMessageDetails = useCallback(() => {\n if (messageStatus === 'failed') {\n return <div className={chatMessageFailedTagStyle(theme)}>{strings.failToSendTag}</div>;\n } else if (message.messageType === 'chat' && editedOn) {\n return <div className={chatMessageEditedTagStyle(theme)}>{strings.editedTag}</div>;\n }\n return undefined;\n }, [editedOn, message.messageType, messageStatus, strings.editedTag, strings.failToSendTag, theme]);\n\n /* @conditional-compile-remove(image-gallery) */\n const handleOnInlineImageClicked = useCallback(\n async (attachmentId: string): Promise<void> => {\n if (onInlineImageClicked === undefined) {\n return;\n }\n await onInlineImageClicked(attachmentId, message.messageId);\n },\n [message, onInlineImageClicked]\n );\n\n const getContent = useCallback(() => {\n /* @conditional-compile-remove(data-loss-prevention) */\n if (message.messageType === 'blocked') {\n return (\n <div tabIndex={0}>\n <BlockedMessageContent message={message} strings={strings} />\n </div>\n );\n }\n return (\n <div tabIndex={0}>\n <ChatMessageContent\n message={message}\n strings={strings}\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n onFetchAttachment={props.onFetchAttachments}\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n attachmentsMap={props.attachmentsMap}\n /* @conditional-compile-remove(mention) */\n mentionDisplayOptions={props.mentionDisplayOptions}\n /* @conditional-compile-remove(image-gallery) */\n onInlineImageClicked={handleOnInlineImageClicked}\n />\n {props.onRenderFileDownloads ? props.onRenderFileDownloads(userId, message) : defaultOnRenderFileDownloads()}\n </div>\n );\n }, [\n defaultOnRenderFileDownloads,\n message,\n props,\n strings,\n userId,\n /* @conditional-compile-remove(image-gallery) */\n handleOnInlineImageClicked\n ]);\n\n const chatMessage = (\n <>\n <div ref={messageRef}>\n <Chat.Message\n data-ui-id=\"chat-composite-message\"\n className={mergeStyles(messageContainerStyle as IStyle)}\n styles={messageContainerStyle}\n content={getContent()}\n author={<Text className={chatMessageDateStyle}>{message.senderDisplayName}</Text>}\n mine={message.mine}\n timestamp={<Text data-ui-id={ids.messageTimestamp}>{formattedTimestamp}</Text>}\n details={getMessageDetails()}\n positionActionMenu={false}\n actionMenu={actionMenuProps}\n onTouchStart={() => setWasInteractionByTouch(true)}\n onPointerDown={() => setWasInteractionByTouch(false)}\n onKeyDown={() => setWasInteractionByTouch(false)}\n onBlur={() => setWasInteractionByTouch(false)}\n onClick={() => {\n if (!wasInteractionByTouch) {\n return;\n }\n // If the message was touched via touch we immediately open the menu\n // flyout (when using mouse the 3-dot menu that appears on hover\n // must be clicked to open the flyout).\n // In doing so here we set the target of the flyout to be the message and\n // not the 3-dot menu button to position the flyout correctly.\n setChatMessageActionFlyoutTarget(messageRef);\n if (message.messageType === 'chat') {\n props.onActionButtonClick(message, setMessageReadBy);\n }\n }}\n />\n </div>\n {chatActionsEnabled && (\n <ChatMessageActionFlyout\n hidden={!chatMessageActionFlyoutTarget}\n target={chatMessageActionFlyoutTarget}\n increaseFlyoutItemSize={wasInteractionByTouch}\n onDismiss={onActionFlyoutDismiss}\n onEditClick={onEditClick}\n onRemoveClick={onRemoveClick}\n onResendClick={onResendClick}\n strings={strings}\n messageReadBy={messageReadBy}\n messageStatus={messageStatus ?? 'failed'}\n remoteParticipantsCount={remoteParticipantsCount}\n onRenderAvatar={onRenderAvatar}\n showMessageStatus={showMessageStatus}\n />\n )}\n </>\n );\n return chatMessage;\n};\n\n/** @private */\nexport const ChatMessageComponentAsMessageBubble = React.memo(MessageBubble);\n\"../../../../northstar-wrapper/src\"\"../../../../acs-ui-common/src\""]}
@@ -1,5 +1,5 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
2
+ // Licensed under the MIT License.
3
3
  import React from 'react';
4
4
  /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
5
5
  import { useEffect } from 'react';
@@ -1 +1 @@
1
- {"version":3,"file":"ChatMessageContent.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ChatMessage/ChatMessageContent.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport React from 'react';\n/* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\nimport { useEffect } from 'react';\nimport { _formatString } from '@internal/acs-ui-common';\nimport { Parser, ProcessNodeDefinitions, IsValidNodeDefinitions, ProcessingInstructionType } from 'html-to-react';\n\nimport Linkify from 'react-linkify';\nimport { ChatMessage } from '../../types/ChatMessage';\n/* @conditional-compile-remove(data-loss-prevention) */\nimport { BlockedMessage } from '../../types/ChatMessage';\nimport { Link } from '@fluentui/react';\n/* @conditional-compile-remove(mention) */\nimport { MentionDisplayOptions, Mention } from '../MentionPopover';\n\n/* @conditional-compile-remove(data-loss-prevention) */\nimport { FontIcon, Stack } from '@fluentui/react';\nimport { MessageThreadStrings } from '../MessageThread';\n/* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\nimport { FileMetadata } from '../FileDownloadCards';\nimport LiveMessage from '../Announcer/LiveMessage';\n/* @conditional-compile-remove(mention) */\nimport { defaultOnMentionRender } from './MentionRenderer';\nimport DOMPurify from 'dompurify';\n\ntype ChatMessageContentProps = {\n message: ChatMessage;\n strings: MessageThreadStrings;\n /* @conditional-compile-remove(mention) */\n mentionDisplayOptions?: MentionDisplayOptions;\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n attachmentsMap?: Record<string, string>;\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n onFetchAttachment?: (attachment: FileMetadata) => Promise<void>;\n /* @conditional-compile-remove(image-gallery) */\n onInlineImageClicked?: (attachmentId: string) => void;\n};\n\n/* @conditional-compile-remove(data-loss-prevention) */\ntype BlockedMessageContentProps = {\n message: BlockedMessage;\n strings: MessageThreadStrings;\n};\n\ntype MessageContentWithLiveAriaProps = {\n message: ChatMessage | /* @conditional-compile-remove(data-loss-prevention) */ BlockedMessage;\n liveMessage: string;\n ariaLabel?: string;\n content: JSX.Element;\n};\n\n/** @private */\nexport const ChatMessageContent = (props: ChatMessageContentProps): JSX.Element => {\n switch (props.message.contentType) {\n case 'text':\n return MessageContentAsText(props);\n case 'html':\n return MessageContentAsRichTextHTML(props);\n case 'richtext/html':\n return MessageContentAsRichTextHTML(props);\n default:\n console.warn('unknown message content type');\n return <></>;\n }\n};\n\nconst MessageContentWithLiveAria = (props: MessageContentWithLiveAriaProps): JSX.Element => {\n return (\n <div data-ui-status={props.message.status} role=\"text\" aria-label={props.ariaLabel}>\n <LiveMessage message={props.liveMessage} ariaLive=\"polite\" />\n {props.content}\n </div>\n );\n};\n\nconst MessageContentAsRichTextHTML = (props: ChatMessageContentProps): JSX.Element => {\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n useEffect(() => {\n props.message.attachedFilesMetadata?.map((fileMetadata) => {\n if (\n props.onFetchAttachment &&\n props.attachmentsMap &&\n fileMetadata.attachmentType === 'inlineImage' &&\n props.attachmentsMap[fileMetadata.id] === undefined\n ) {\n props.onFetchAttachment(fileMetadata);\n }\n });\n }, [props]);\n\n return (\n <MessageContentWithLiveAria\n message={props.message}\n liveMessage={generateLiveMessage(props)}\n ariaLabel={messageContentAriaText(props)}\n content={processHtmlToReact(props)}\n />\n );\n};\n\nconst MessageContentAsText = (props: ChatMessageContentProps): JSX.Element => {\n return (\n <MessageContentWithLiveAria\n message={props.message}\n liveMessage={generateLiveMessage(props)}\n ariaLabel={messageContentAriaText(props)}\n content={\n <Linkify\n componentDecorator={(decoratedHref: string, decoratedText: string, key: number) => {\n return (\n <Link target=\"_blank\" href={decoratedHref} key={key}>\n {decoratedText}\n </Link>\n );\n }}\n >\n {props.message.content}\n </Linkify>\n }\n />\n );\n};\n\n/* @conditional-compile-remove(data-loss-prevention) */\n/**\n * @private\n */\nexport const BlockedMessageContent = (props: BlockedMessageContentProps): JSX.Element => {\n const Icon: JSX.Element = <FontIcon iconName={'DataLossPreventionProhibited'} />;\n const blockedMessage =\n props.message.warningText === undefined ? props.strings.blockedWarningText : props.message.warningText;\n const blockedMessageLink = props.message.link;\n const blockedMessageLinkText = blockedMessageLink\n ? props.message.linkText ?? props.strings.blockedWarningLinkText\n : '';\n\n const liveAuthor =\n props.message.mine || props.message.senderDisplayName === undefined ? '' : props.message.senderDisplayName;\n const liveBlockedWarningText = `${liveAuthor} ${blockedMessage} ${blockedMessageLinkText}`;\n return (\n <MessageContentWithLiveAria\n message={props.message}\n liveMessage={liveBlockedWarningText}\n ariaLabel={liveBlockedWarningText}\n content={\n <Stack horizontal wrap>\n {Icon}\n {blockedMessage && <p>{blockedMessage}</p>}\n {blockedMessageLink && (\n <Link target={'_blank'} href={blockedMessageLink}>\n {blockedMessageLinkText}\n </Link>\n )}\n </Stack>\n }\n />\n );\n};\n\n// https://stackoverflow.com/questions/28899298/extract-the-text-out-of-html-string-using-javascript\nconst extractContent = (s: string): string => {\n const span = document.createElement('span');\n span.innerHTML = s;\n return span.textContent || span.innerText;\n};\n\nconst generateLiveMessage = (props: ChatMessageContentProps): string => {\n const liveAuthor = _formatString(props.strings.liveAuthorIntro, { author: `${props.message.senderDisplayName}` });\n\n return `${props.message.editedOn ? props.strings.editedTag : ''} ${\n props.message.mine ? '' : liveAuthor\n } ${extractContent(props.message.content || '')} `;\n};\n\nconst messageContentAriaText = (props: ChatMessageContentProps): string | undefined => {\n // Strip all html tags from the content for aria.\n\n return props.message.content\n ? props.message.mine\n ? _formatString(props.strings.messageContentMineAriaText, {\n message: DOMPurify.sanitize(props.message.content, { ALLOWED_TAGS: [] })\n })\n : _formatString(props.strings.messageContentAriaText, {\n author: `${props.message.senderDisplayName}`,\n message: DOMPurify.sanitize(props.message.content, { ALLOWED_TAGS: [] })\n })\n : undefined;\n};\n\nconst processNodeDefinitions = ProcessNodeDefinitions();\nconst htmlToReactParser = Parser();\n\n/* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\nconst processInlineImage = (props: ChatMessageContentProps): ProcessingInstructionType => ({\n // Custom <img> processing\n shouldProcessNode: (node): boolean => {\n function isImageNode(file: FileMetadata): boolean {\n return file.attachmentType === 'inlineImage' && file.id === node.attribs.id;\n }\n\n // Process img node with id in attachments list\n return (\n node.name &&\n node.name === 'img' &&\n node.attribs &&\n node.attribs.id &&\n props.message.attachedFilesMetadata?.find(isImageNode)\n );\n },\n processNode: (node, children, index): JSX.Element => {\n node.attribs = { ...node.attribs, 'aria-label': node.attribs.name };\n // logic to check id in map/list\n if (props.attachmentsMap && node.attribs.id in props.attachmentsMap) {\n node.attribs = { ...node.attribs, src: props.attachmentsMap[node.attribs.id] };\n }\n /* @conditional-compile-remove(image-gallery) */\n const handleOnClick = (): void => {\n props.onInlineImageClicked && props.onInlineImageClicked(node.attribs.id);\n };\n /* @conditional-compile-remove(image-gallery) */\n return (\n <span\n data-ui-id={node.attribs.id}\n onClick={handleOnClick}\n tabIndex={0}\n role=\"button\"\n style={{\n cursor: 'pointer'\n }}\n onKeyDown={(e) => {\n if (e.key === 'Enter') {\n handleOnClick();\n }\n }}\n >\n {processNodeDefinitions.processDefaultNode(node, children, index)}\n </span>\n );\n return processNodeDefinitions.processDefaultNode(node, children, index);\n }\n});\n\n/* @conditional-compile-remove(mention) */\nconst processMention = (props: ChatMessageContentProps): ProcessingInstructionType => ({\n shouldProcessNode: (node) => {\n if (props.mentionDisplayOptions?.onRenderMention) {\n // Override the handling of the <msft-mention> tag in the HTML if there's a custom renderer\n return node.name === 'msft-mention';\n }\n return false;\n },\n processNode: (node) => {\n if (props.mentionDisplayOptions?.onRenderMention) {\n const { id } = node.attribs;\n const mention: Mention = {\n id: id,\n displayText: node.children[0]?.data ?? ''\n };\n return props.mentionDisplayOptions.onRenderMention(mention, defaultOnMentionRender);\n }\n return processNodeDefinitions.processDefaultNode;\n }\n});\n\nconst processHtmlToReact = (props: ChatMessageContentProps): JSX.Element => {\n const steps: ProcessingInstructionType[] = [\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n processInlineImage(props),\n /* @conditional-compile-remove(mention) */\n processMention(props),\n {\n // Process everything else in the default way\n shouldProcessNode: IsValidNodeDefinitions.alwaysValid,\n processNode: processNodeDefinitions.processDefaultNode\n }\n ];\n\n return htmlToReactParser.parseWithInstructions(\n props.message.content ?? '',\n IsValidNodeDefinitions.alwaysValid,\n steps\n );\n};\n\"../../../../acs-ui-common/src\""]}
1
+ {"version":3,"file":"ChatMessageContent.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ChatMessage/ChatMessageContent.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React from 'react';\n/* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\nimport { useEffect } from 'react';\nimport { _formatString } from '@internal/acs-ui-common';\nimport { Parser, ProcessNodeDefinitions, IsValidNodeDefinitions, ProcessingInstructionType } from 'html-to-react';\n\nimport Linkify from 'react-linkify';\nimport { ChatMessage } from '../../types/ChatMessage';\n/* @conditional-compile-remove(data-loss-prevention) */\nimport { BlockedMessage } from '../../types/ChatMessage';\nimport { Link } from '@fluentui/react';\n/* @conditional-compile-remove(mention) */\nimport { MentionDisplayOptions, Mention } from '../MentionPopover';\n\n/* @conditional-compile-remove(data-loss-prevention) */\nimport { FontIcon, Stack } from '@fluentui/react';\nimport { MessageThreadStrings } from '../MessageThread';\n/* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\nimport { FileMetadata } from '../FileDownloadCards';\nimport LiveMessage from '../Announcer/LiveMessage';\n/* @conditional-compile-remove(mention) */\nimport { defaultOnMentionRender } from './MentionRenderer';\nimport DOMPurify from 'dompurify';\n\ntype ChatMessageContentProps = {\n message: ChatMessage;\n strings: MessageThreadStrings;\n /* @conditional-compile-remove(mention) */\n mentionDisplayOptions?: MentionDisplayOptions;\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n attachmentsMap?: Record<string, string>;\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n onFetchAttachment?: (attachment: FileMetadata) => Promise<void>;\n /* @conditional-compile-remove(image-gallery) */\n onInlineImageClicked?: (attachmentId: string) => void;\n};\n\n/* @conditional-compile-remove(data-loss-prevention) */\ntype BlockedMessageContentProps = {\n message: BlockedMessage;\n strings: MessageThreadStrings;\n};\n\ntype MessageContentWithLiveAriaProps = {\n message: ChatMessage | /* @conditional-compile-remove(data-loss-prevention) */ BlockedMessage;\n liveMessage: string;\n ariaLabel?: string;\n content: JSX.Element;\n};\n\n/** @private */\nexport const ChatMessageContent = (props: ChatMessageContentProps): JSX.Element => {\n switch (props.message.contentType) {\n case 'text':\n return MessageContentAsText(props);\n case 'html':\n return MessageContentAsRichTextHTML(props);\n case 'richtext/html':\n return MessageContentAsRichTextHTML(props);\n default:\n console.warn('unknown message content type');\n return <></>;\n }\n};\n\nconst MessageContentWithLiveAria = (props: MessageContentWithLiveAriaProps): JSX.Element => {\n return (\n <div data-ui-status={props.message.status} role=\"text\" aria-label={props.ariaLabel}>\n <LiveMessage message={props.liveMessage} ariaLive=\"polite\" />\n {props.content}\n </div>\n );\n};\n\nconst MessageContentAsRichTextHTML = (props: ChatMessageContentProps): JSX.Element => {\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n useEffect(() => {\n props.message.attachedFilesMetadata?.map((fileMetadata) => {\n if (\n props.onFetchAttachment &&\n props.attachmentsMap &&\n fileMetadata.attachmentType === 'inlineImage' &&\n props.attachmentsMap[fileMetadata.id] === undefined\n ) {\n props.onFetchAttachment(fileMetadata);\n }\n });\n }, [props]);\n\n return (\n <MessageContentWithLiveAria\n message={props.message}\n liveMessage={generateLiveMessage(props)}\n ariaLabel={messageContentAriaText(props)}\n content={processHtmlToReact(props)}\n />\n );\n};\n\nconst MessageContentAsText = (props: ChatMessageContentProps): JSX.Element => {\n return (\n <MessageContentWithLiveAria\n message={props.message}\n liveMessage={generateLiveMessage(props)}\n ariaLabel={messageContentAriaText(props)}\n content={\n <Linkify\n componentDecorator={(decoratedHref: string, decoratedText: string, key: number) => {\n return (\n <Link target=\"_blank\" href={decoratedHref} key={key}>\n {decoratedText}\n </Link>\n );\n }}\n >\n {props.message.content}\n </Linkify>\n }\n />\n );\n};\n\n/* @conditional-compile-remove(data-loss-prevention) */\n/**\n * @private\n */\nexport const BlockedMessageContent = (props: BlockedMessageContentProps): JSX.Element => {\n const Icon: JSX.Element = <FontIcon iconName={'DataLossPreventionProhibited'} />;\n const blockedMessage =\n props.message.warningText === undefined ? props.strings.blockedWarningText : props.message.warningText;\n const blockedMessageLink = props.message.link;\n const blockedMessageLinkText = blockedMessageLink\n ? props.message.linkText ?? props.strings.blockedWarningLinkText\n : '';\n\n const liveAuthor =\n props.message.mine || props.message.senderDisplayName === undefined ? '' : props.message.senderDisplayName;\n const liveBlockedWarningText = `${liveAuthor} ${blockedMessage} ${blockedMessageLinkText}`;\n return (\n <MessageContentWithLiveAria\n message={props.message}\n liveMessage={liveBlockedWarningText}\n ariaLabel={liveBlockedWarningText}\n content={\n <Stack horizontal wrap>\n {Icon}\n {blockedMessage && <p>{blockedMessage}</p>}\n {blockedMessageLink && (\n <Link target={'_blank'} href={blockedMessageLink}>\n {blockedMessageLinkText}\n </Link>\n )}\n </Stack>\n }\n />\n );\n};\n\n// https://stackoverflow.com/questions/28899298/extract-the-text-out-of-html-string-using-javascript\nconst extractContent = (s: string): string => {\n const span = document.createElement('span');\n span.innerHTML = s;\n return span.textContent || span.innerText;\n};\n\nconst generateLiveMessage = (props: ChatMessageContentProps): string => {\n const liveAuthor = _formatString(props.strings.liveAuthorIntro, { author: `${props.message.senderDisplayName}` });\n\n return `${props.message.editedOn ? props.strings.editedTag : ''} ${\n props.message.mine ? '' : liveAuthor\n } ${extractContent(props.message.content || '')} `;\n};\n\nconst messageContentAriaText = (props: ChatMessageContentProps): string | undefined => {\n // Strip all html tags from the content for aria.\n\n return props.message.content\n ? props.message.mine\n ? _formatString(props.strings.messageContentMineAriaText, {\n message: DOMPurify.sanitize(props.message.content, { ALLOWED_TAGS: [] })\n })\n : _formatString(props.strings.messageContentAriaText, {\n author: `${props.message.senderDisplayName}`,\n message: DOMPurify.sanitize(props.message.content, { ALLOWED_TAGS: [] })\n })\n : undefined;\n};\n\nconst processNodeDefinitions = ProcessNodeDefinitions();\nconst htmlToReactParser = Parser();\n\n/* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\nconst processInlineImage = (props: ChatMessageContentProps): ProcessingInstructionType => ({\n // Custom <img> processing\n shouldProcessNode: (node): boolean => {\n function isImageNode(file: FileMetadata): boolean {\n return file.attachmentType === 'inlineImage' && file.id === node.attribs.id;\n }\n\n // Process img node with id in attachments list\n return (\n node.name &&\n node.name === 'img' &&\n node.attribs &&\n node.attribs.id &&\n props.message.attachedFilesMetadata?.find(isImageNode)\n );\n },\n processNode: (node, children, index): JSX.Element => {\n node.attribs = { ...node.attribs, 'aria-label': node.attribs.name };\n // logic to check id in map/list\n if (props.attachmentsMap && node.attribs.id in props.attachmentsMap) {\n node.attribs = { ...node.attribs, src: props.attachmentsMap[node.attribs.id] };\n }\n /* @conditional-compile-remove(image-gallery) */\n const handleOnClick = (): void => {\n props.onInlineImageClicked && props.onInlineImageClicked(node.attribs.id);\n };\n /* @conditional-compile-remove(image-gallery) */\n return (\n <span\n data-ui-id={node.attribs.id}\n onClick={handleOnClick}\n tabIndex={0}\n role=\"button\"\n style={{\n cursor: 'pointer'\n }}\n onKeyDown={(e) => {\n if (e.key === 'Enter') {\n handleOnClick();\n }\n }}\n >\n {processNodeDefinitions.processDefaultNode(node, children, index)}\n </span>\n );\n return processNodeDefinitions.processDefaultNode(node, children, index);\n }\n});\n\n/* @conditional-compile-remove(mention) */\nconst processMention = (props: ChatMessageContentProps): ProcessingInstructionType => ({\n shouldProcessNode: (node) => {\n if (props.mentionDisplayOptions?.onRenderMention) {\n // Override the handling of the <msft-mention> tag in the HTML if there's a custom renderer\n return node.name === 'msft-mention';\n }\n return false;\n },\n processNode: (node) => {\n if (props.mentionDisplayOptions?.onRenderMention) {\n const { id } = node.attribs;\n const mention: Mention = {\n id: id,\n displayText: node.children[0]?.data ?? ''\n };\n return props.mentionDisplayOptions.onRenderMention(mention, defaultOnMentionRender);\n }\n return processNodeDefinitions.processDefaultNode;\n }\n});\n\nconst processHtmlToReact = (props: ChatMessageContentProps): JSX.Element => {\n const steps: ProcessingInstructionType[] = [\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n processInlineImage(props),\n /* @conditional-compile-remove(mention) */\n processMention(props),\n {\n // Process everything else in the default way\n shouldProcessNode: IsValidNodeDefinitions.alwaysValid,\n processNode: processNodeDefinitions.processDefaultNode\n }\n ];\n\n return htmlToReactParser.parseWithInstructions(\n props.message.content ?? '',\n IsValidNodeDefinitions.alwaysValid,\n steps\n );\n};\n\"../../../../acs-ui-common/src\""]}
@@ -1,5 +1,5 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
2
+ // Licensed under the MIT License.
3
3
  import React from 'react';
4
4
  /**
5
5
  * Provides the default implementation for rendering an Mention in a message thread
@@ -1 +1 @@
1
- {"version":3,"file":"MentionRenderer.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ChatMessage/MentionRenderer.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,OAAgB,EAAe,EAAE;IACtE,8DAA8D;IAC9D,MAAM,WAAW,GAAG,cAAqB,CAAC;IAC1C,OAAO,oBAAC,WAAW,IAAC,EAAE,EAAE,OAAO,CAAC,EAAE,IAAG,OAAO,CAAC,WAAW,CAAe,CAAC;AAC1E,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\nimport React from 'react';\nimport { Mention } from '../MentionPopover';\n\n/**\n * Provides the default implementation for rendering an Mention in a message thread\n * @param mention - The mention to render\n *\n * @private\n */\nexport const defaultOnMentionRender = (mention: Mention): JSX.Element => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const MsftMention = 'msft-mention' as any;\n return <MsftMention id={mention.id}>{mention.displayText}</MsftMention>;\n};\n"]}
1
+ {"version":3,"file":"MentionRenderer.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ChatMessage/MentionRenderer.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,OAAgB,EAAe,EAAE;IACtE,8DAA8D;IAC9D,MAAM,WAAW,GAAG,cAAqB,CAAC;IAC1C,OAAO,oBAAC,WAAW,IAAC,EAAE,EAAE,OAAO,CAAC,EAAE,IAAG,OAAO,CAAC,WAAW,CAAe,CAAC;AAC1E,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\nimport React from 'react';\nimport { Mention } from '../MentionPopover';\n\n/**\n * Provides the default implementation for rendering an Mention in a message thread\n * @param mention - The mention to render\n *\n * @private\n */\nexport const defaultOnMentionRender = (mention: Mention): JSX.Element => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const MsftMention = 'msft-mention' as any;\n return <MsftMention id={mention.id}>{mention.displayText}</MsftMention>;\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
2
+ // Licensed under the MIT License.
3
3
  import { Link } from '@fluentui/react';
4
4
  import React from 'react';
5
5
  /** @private */
@@ -1 +1 @@
1
- {"version":3,"file":"BannerMessage.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ComplianceBanner/BannerMessage.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,eAAe;AACf,MAAM,UAAU,aAAa,CAAC,KAG7B;IACC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IACnC,QAAQ,OAAO,EAAE;QACf,KAAK,uCAAuC;YAC1C,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,oCAAoC,CAAK;gBACpD,IAAI,OAAO,CAAC,gCAAgC,EAAE;gBAC/C,oBAAC,aAAa,IAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,GAAI,CACjD,CACJ,CAAC;QACJ,KAAK,sCAAsC;YACzC,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,gCAAgC,CAAK;gBAChD,IAAI,OAAO,CAAC,oCAAoC,EAAE;gBACnD,oBAAC,aAAa,IAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,GAAI,CACjD,CACJ,CAAC;QACJ,KAAK,qCAAqC;YACxC,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,8CAA8C,CAAK;gBAC9D,IAAI,OAAO,CAAC,gDAAgD,EAAE;gBAC/D,oBAAC,SAAS,IAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,GAAI,CACzC,CACJ,CAAC;QACJ,KAAK,qCAAqC;YACxC,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,gDAAgD,CAAK;gBAChE,IAAI,OAAO,CAAC,oCAAoC,EAAE;gBACnD,oBAAC,aAAa,IAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,GAAI,CACjD,CACJ,CAAC;QACJ,KAAK,uBAAuB;YAC1B,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,oCAAoC,CAAK;gBACpD,IAAI,OAAO,CAAC,oCAAoC,EAAE;gBACnD,oBAAC,aAAa,IAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,GAAI,CACjD,CACJ,CAAC;QACJ,KAAK,mBAAmB;YACtB,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,+BAA+B,CAAK;gBAC/C,IAAI,OAAO,CAAC,gCAAgC,EAAE;gBAC/C,oBAAC,SAAS,IAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,GAAI,CACzC,CACJ,CAAC;QACJ,KAAK,mBAAmB;YACtB,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,gCAAgC,CAAK;gBAChD,IAAI,OAAO,CAAC,oCAAoC,EAAE;gBACnD,oBAAC,aAAa,IAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,GAAI,CACjD,CACJ,CAAC;QACJ,KAAK,uBAAuB;YAC1B,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,mCAAmC,CAAK;gBACnD,IAAI,OAAO,CAAC,oCAAoC,EAAE;gBACnD,oBAAC,SAAS,IAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,GAAI,CACzC,CACJ,CAAC;KACL;IACD,OAAO,yCAAK,CAAC;AACf,CAAC;AAED,SAAS,aAAa,CAAC,KAA2B;IAChD,OAAO,CACL,oBAAC,IAAI,IAAC,IAAI,EAAC,2EAA2E,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,UAC7G,KAAK,CAAC,QAAQ,CACV,CACR,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,KAA2B;IAC5C,OAAO,CACL,oBAAC,IAAI,IACH,IAAI,EAAC,qGAAqG,EAC1G,MAAM,EAAC,QAAQ,EACf,SAAS,UAER,KAAK,CAAC,QAAQ,CACV,CACR,CAAC;AACJ,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { Link } from '@fluentui/react';\nimport React from 'react';\nimport { _ComplianceBannerStrings } from './types';\nimport { ComplianceBannerVariant } from './Utils';\n\n/** @private */\nexport function BannerMessage(props: {\n variant: ComplianceBannerVariant;\n strings: _ComplianceBannerStrings;\n}): JSX.Element {\n const { variant, strings } = props;\n switch (variant) {\n case 'TRANSCRIPTION_STOPPED_STILL_RECORDING':\n return (\n <>\n <b>{strings.complianceBannerTranscriptionStopped}</b>\n {` ${strings.complianceBannerNowOnlyRecording}`}\n <PrivacyPolicy linkText={strings.privacyPolicy} />\n </>\n );\n case 'RECORDING_STOPPED_STILL_TRANSCRIBING':\n return (\n <>\n <b>{strings.complianceBannerRecordingStopped}</b>\n {` ${strings.complianceBannerNowOnlyTranscription}`}\n <PrivacyPolicy linkText={strings.privacyPolicy} />\n </>\n );\n case 'RECORDING_AND_TRANSCRIPTION_STOPPED':\n return (\n <>\n <b>{strings.complianceBannerRecordingAndTranscriptionSaved}</b>\n {` ${strings.complianceBannerRecordingAndTranscriptionStopped}`}\n <LearnMore linkText={strings.learnMore} />\n </>\n );\n case 'RECORDING_AND_TRANSCRIPTION_STARTED':\n return (\n <>\n <b>{strings.complianceBannerRecordingAndTranscriptionStarted}</b>\n {` ${strings.complianceBannerTranscriptionConsent}`}\n <PrivacyPolicy linkText={strings.privacyPolicy} />\n </>\n );\n case 'TRANSCRIPTION_STARTED':\n return (\n <>\n <b>{strings.complianceBannerTranscriptionStarted}</b>\n {` ${strings.complianceBannerTranscriptionConsent}`}\n <PrivacyPolicy linkText={strings.privacyPolicy} />\n </>\n );\n case 'RECORDING_STOPPED':\n return (\n <>\n <b>{strings.complianceBannerRecordingSaving}</b>\n {` ${strings.complianceBannerRecordingStopped}`}\n <LearnMore linkText={strings.learnMore} />\n </>\n );\n case 'RECORDING_STARTED':\n return (\n <>\n <b>{strings.complianceBannerRecordingStarted}</b>\n {` ${strings.complianceBannerTranscriptionConsent}`}\n <PrivacyPolicy linkText={strings.privacyPolicy} />\n </>\n );\n case 'TRANSCRIPTION_STOPPED':\n return (\n <>\n <b>{strings.complianceBannerTranscriptionSaving}</b>\n {` ${strings.complianceBannerTranscriptionStopped}`}\n <LearnMore linkText={strings.learnMore} />\n </>\n );\n }\n return <></>;\n}\n\nfunction PrivacyPolicy(props: { linkText: string }): JSX.Element {\n return (\n <Link href=\"https://privacy.microsoft.com/privacystatement#mainnoticetoendusersmodule\" target=\"_blank\" underline>\n {props.linkText}\n </Link>\n );\n}\n\nfunction LearnMore(props: { linkText: string }): JSX.Element {\n return (\n <Link\n href=\"https://support.microsoft.com/office/record-a-meeting-in-teams-34dfbe7f-b07d-4a27-b4c6-de62f1348c24\"\n target=\"_blank\"\n underline\n >\n {props.linkText}\n </Link>\n );\n}\n"]}
1
+ {"version":3,"file":"BannerMessage.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ComplianceBanner/BannerMessage.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,eAAe;AACf,MAAM,UAAU,aAAa,CAAC,KAG7B;IACC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IACnC,QAAQ,OAAO,EAAE;QACf,KAAK,uCAAuC;YAC1C,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,oCAAoC,CAAK;gBACpD,IAAI,OAAO,CAAC,gCAAgC,EAAE;gBAC/C,oBAAC,aAAa,IAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,GAAI,CACjD,CACJ,CAAC;QACJ,KAAK,sCAAsC;YACzC,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,gCAAgC,CAAK;gBAChD,IAAI,OAAO,CAAC,oCAAoC,EAAE;gBACnD,oBAAC,aAAa,IAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,GAAI,CACjD,CACJ,CAAC;QACJ,KAAK,qCAAqC;YACxC,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,8CAA8C,CAAK;gBAC9D,IAAI,OAAO,CAAC,gDAAgD,EAAE;gBAC/D,oBAAC,SAAS,IAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,GAAI,CACzC,CACJ,CAAC;QACJ,KAAK,qCAAqC;YACxC,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,gDAAgD,CAAK;gBAChE,IAAI,OAAO,CAAC,oCAAoC,EAAE;gBACnD,oBAAC,aAAa,IAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,GAAI,CACjD,CACJ,CAAC;QACJ,KAAK,uBAAuB;YAC1B,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,oCAAoC,CAAK;gBACpD,IAAI,OAAO,CAAC,oCAAoC,EAAE;gBACnD,oBAAC,aAAa,IAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,GAAI,CACjD,CACJ,CAAC;QACJ,KAAK,mBAAmB;YACtB,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,+BAA+B,CAAK;gBAC/C,IAAI,OAAO,CAAC,gCAAgC,EAAE;gBAC/C,oBAAC,SAAS,IAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,GAAI,CACzC,CACJ,CAAC;QACJ,KAAK,mBAAmB;YACtB,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,gCAAgC,CAAK;gBAChD,IAAI,OAAO,CAAC,oCAAoC,EAAE;gBACnD,oBAAC,aAAa,IAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,GAAI,CACjD,CACJ,CAAC;QACJ,KAAK,uBAAuB;YAC1B,OAAO,CACL;gBACE,+BAAI,OAAO,CAAC,mCAAmC,CAAK;gBACnD,IAAI,OAAO,CAAC,oCAAoC,EAAE;gBACnD,oBAAC,SAAS,IAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,GAAI,CACzC,CACJ,CAAC;KACL;IACD,OAAO,yCAAK,CAAC;AACf,CAAC;AAED,SAAS,aAAa,CAAC,KAA2B;IAChD,OAAO,CACL,oBAAC,IAAI,IAAC,IAAI,EAAC,2EAA2E,EAAC,MAAM,EAAC,QAAQ,EAAC,SAAS,UAC7G,KAAK,CAAC,QAAQ,CACV,CACR,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,KAA2B;IAC5C,OAAO,CACL,oBAAC,IAAI,IACH,IAAI,EAAC,qGAAqG,EAC1G,MAAM,EAAC,QAAQ,EACf,SAAS,UAER,KAAK,CAAC,QAAQ,CACV,CACR,CAAC;AACJ,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Link } from '@fluentui/react';\nimport React from 'react';\nimport { _ComplianceBannerStrings } from './types';\nimport { ComplianceBannerVariant } from './Utils';\n\n/** @private */\nexport function BannerMessage(props: {\n variant: ComplianceBannerVariant;\n strings: _ComplianceBannerStrings;\n}): JSX.Element {\n const { variant, strings } = props;\n switch (variant) {\n case 'TRANSCRIPTION_STOPPED_STILL_RECORDING':\n return (\n <>\n <b>{strings.complianceBannerTranscriptionStopped}</b>\n {` ${strings.complianceBannerNowOnlyRecording}`}\n <PrivacyPolicy linkText={strings.privacyPolicy} />\n </>\n );\n case 'RECORDING_STOPPED_STILL_TRANSCRIBING':\n return (\n <>\n <b>{strings.complianceBannerRecordingStopped}</b>\n {` ${strings.complianceBannerNowOnlyTranscription}`}\n <PrivacyPolicy linkText={strings.privacyPolicy} />\n </>\n );\n case 'RECORDING_AND_TRANSCRIPTION_STOPPED':\n return (\n <>\n <b>{strings.complianceBannerRecordingAndTranscriptionSaved}</b>\n {` ${strings.complianceBannerRecordingAndTranscriptionStopped}`}\n <LearnMore linkText={strings.learnMore} />\n </>\n );\n case 'RECORDING_AND_TRANSCRIPTION_STARTED':\n return (\n <>\n <b>{strings.complianceBannerRecordingAndTranscriptionStarted}</b>\n {` ${strings.complianceBannerTranscriptionConsent}`}\n <PrivacyPolicy linkText={strings.privacyPolicy} />\n </>\n );\n case 'TRANSCRIPTION_STARTED':\n return (\n <>\n <b>{strings.complianceBannerTranscriptionStarted}</b>\n {` ${strings.complianceBannerTranscriptionConsent}`}\n <PrivacyPolicy linkText={strings.privacyPolicy} />\n </>\n );\n case 'RECORDING_STOPPED':\n return (\n <>\n <b>{strings.complianceBannerRecordingSaving}</b>\n {` ${strings.complianceBannerRecordingStopped}`}\n <LearnMore linkText={strings.learnMore} />\n </>\n );\n case 'RECORDING_STARTED':\n return (\n <>\n <b>{strings.complianceBannerRecordingStarted}</b>\n {` ${strings.complianceBannerTranscriptionConsent}`}\n <PrivacyPolicy linkText={strings.privacyPolicy} />\n </>\n );\n case 'TRANSCRIPTION_STOPPED':\n return (\n <>\n <b>{strings.complianceBannerTranscriptionSaving}</b>\n {` ${strings.complianceBannerTranscriptionStopped}`}\n <LearnMore linkText={strings.learnMore} />\n </>\n );\n }\n return <></>;\n}\n\nfunction PrivacyPolicy(props: { linkText: string }): JSX.Element {\n return (\n <Link href=\"https://privacy.microsoft.com/privacystatement#mainnoticetoendusersmodule\" target=\"_blank\" underline>\n {props.linkText}\n </Link>\n );\n}\n\nfunction LearnMore(props: { linkText: string }): JSX.Element {\n return (\n <Link\n href=\"https://support.microsoft.com/office/record-a-meeting-in-teams-34dfbe7f-b07d-4a27-b4c6-de62f1348c24\"\n target=\"_blank\"\n underline\n >\n {props.linkText}\n </Link>\n );\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
2
+ // Licensed under the MIT License.
3
3
  import React, { useRef } from 'react';
4
4
  import { computeVariant } from './Utils';
5
5
  import { DelayedUpdateBanner } from './DelayedUpdateBanner';
@@ -1 +1 @@
1
- {"version":3,"file":"ComplianceBanner.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ComplianceBanner/ComplianceBanner.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\nimport React, { useRef } from 'react';\nimport { ComplianceState, computeVariant } from './Utils';\nimport { _ComplianceBannerProps } from './types';\nimport { DelayedUpdateBanner } from './DelayedUpdateBanner';\n\n// latestBooleanState so we can compare with props.callRecordState and props.callTranscribeState easily\n// latestStringState is on, off, stopped state generated by function determineStates using previous and current state values, this is used for computeVariants later\ntype CachedComplianceBannerProps = {\n latestBooleanState: {\n callTranscribeState?: boolean;\n callRecordState?: boolean;\n };\n latestStringState: {\n callTranscribeState: ComplianceState;\n callRecordState: ComplianceState;\n };\n // Timestamp for the last time cached state was updated.\n // Represented as milliseconds since epoch (i.e., the value returned by Date.now()).\n lastUpdated: number;\n};\n\n/**\n * A component that displays banners to notify the user when call recording and\n * transcription is enabled or disabled in a call.\n *\n * This component implements a state machine that tracks the changes to call\n * recording and transcription state and shows the corresponding message.\n *\n * @internal\n */\nexport const _ComplianceBanner = (props: _ComplianceBannerProps): JSX.Element => {\n const cachedProps = useRef<CachedComplianceBannerProps>({\n latestBooleanState: {\n callTranscribeState: false,\n callRecordState: false\n },\n latestStringState: {\n callTranscribeState: 'off',\n callRecordState: 'off'\n },\n lastUpdated: Date.now()\n });\n\n // Only update cached props and variant if there is _some_ change in the latest props.\n // This ensures that state machine is only updated if there is an actual change in the props.\n const shouldUpdateCached =\n props.callRecordState !== cachedProps.current.latestBooleanState.callRecordState ||\n props.callTranscribeState !== cachedProps.current.latestBooleanState.callTranscribeState;\n\n // The following three operations must be performed in this exact order:\n\n // [1]: Update cached state to transition the state machine.\n if (shouldUpdateCached) {\n cachedProps.current = {\n latestBooleanState: props,\n latestStringState: {\n callRecordState: determineStates(cachedProps.current.latestStringState.callRecordState, props.callRecordState),\n callTranscribeState: determineStates(\n cachedProps.current.latestStringState.callTranscribeState,\n props.callTranscribeState\n )\n },\n lastUpdated: Date.now()\n };\n }\n\n // [2]: Compute the variant, using the transitioned state machine.\n const variant = computeVariant(\n cachedProps.current.latestStringState.callRecordState,\n cachedProps.current.latestStringState.callTranscribeState\n );\n\n // [3]: Transition the state machine again to deal with some end-states.\n if (\n shouldUpdateCached &&\n cachedProps.current.latestStringState.callRecordState === 'stopped' &&\n cachedProps.current.latestStringState.callTranscribeState === 'stopped'\n ) {\n // When both states are stopped, after displaying message \"RECORDING_AND_TRANSCRIPTION_STOPPED\", change both states to off (going back to the default state).\n cachedProps.current.latestStringState.callRecordState = 'off';\n cachedProps.current.latestStringState.callTranscribeState = 'off';\n }\n\n return (\n <DelayedUpdateBanner\n variant={{\n variant,\n lastUpdated: cachedProps.current.lastUpdated\n }}\n strings={props.strings}\n onDismiss={() => {\n if (cachedProps.current.latestStringState.callRecordState === 'stopped') {\n cachedProps.current.latestStringState.callRecordState = 'off';\n }\n if (cachedProps.current.latestStringState.callTranscribeState === 'stopped') {\n cachedProps.current.latestStringState.callTranscribeState = 'off';\n }\n }}\n />\n );\n};\n\nfunction determineStates(previous: ComplianceState, current: boolean | undefined): ComplianceState {\n // if current state is on, then return on\n if (current) {\n return 'on';\n }\n // if current state is off\n else {\n // if previous state is on and current state is off, return stopped (on -> off)\n if (previous === 'on') {\n return 'stopped';\n }\n // otherwise remain previous state unchanged\n else {\n return previous;\n }\n }\n}\n"]}
1
+ {"version":3,"file":"ComplianceBanner.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ComplianceBanner/ComplianceBanner.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React, { useRef } from 'react';\nimport { ComplianceState, computeVariant } from './Utils';\nimport { _ComplianceBannerProps } from './types';\nimport { DelayedUpdateBanner } from './DelayedUpdateBanner';\n\n// latestBooleanState so we can compare with props.callRecordState and props.callTranscribeState easily\n// latestStringState is on, off, stopped state generated by function determineStates using previous and current state values, this is used for computeVariants later\ntype CachedComplianceBannerProps = {\n latestBooleanState: {\n callTranscribeState?: boolean;\n callRecordState?: boolean;\n };\n latestStringState: {\n callTranscribeState: ComplianceState;\n callRecordState: ComplianceState;\n };\n // Timestamp for the last time cached state was updated.\n // Represented as milliseconds since epoch (i.e., the value returned by Date.now()).\n lastUpdated: number;\n};\n\n/**\n * A component that displays banners to notify the user when call recording and\n * transcription is enabled or disabled in a call.\n *\n * This component implements a state machine that tracks the changes to call\n * recording and transcription state and shows the corresponding message.\n *\n * @internal\n */\nexport const _ComplianceBanner = (props: _ComplianceBannerProps): JSX.Element => {\n const cachedProps = useRef<CachedComplianceBannerProps>({\n latestBooleanState: {\n callTranscribeState: false,\n callRecordState: false\n },\n latestStringState: {\n callTranscribeState: 'off',\n callRecordState: 'off'\n },\n lastUpdated: Date.now()\n });\n\n // Only update cached props and variant if there is _some_ change in the latest props.\n // This ensures that state machine is only updated if there is an actual change in the props.\n const shouldUpdateCached =\n props.callRecordState !== cachedProps.current.latestBooleanState.callRecordState ||\n props.callTranscribeState !== cachedProps.current.latestBooleanState.callTranscribeState;\n\n // The following three operations must be performed in this exact order:\n\n // [1]: Update cached state to transition the state machine.\n if (shouldUpdateCached) {\n cachedProps.current = {\n latestBooleanState: props,\n latestStringState: {\n callRecordState: determineStates(cachedProps.current.latestStringState.callRecordState, props.callRecordState),\n callTranscribeState: determineStates(\n cachedProps.current.latestStringState.callTranscribeState,\n props.callTranscribeState\n )\n },\n lastUpdated: Date.now()\n };\n }\n\n // [2]: Compute the variant, using the transitioned state machine.\n const variant = computeVariant(\n cachedProps.current.latestStringState.callRecordState,\n cachedProps.current.latestStringState.callTranscribeState\n );\n\n // [3]: Transition the state machine again to deal with some end-states.\n if (\n shouldUpdateCached &&\n cachedProps.current.latestStringState.callRecordState === 'stopped' &&\n cachedProps.current.latestStringState.callTranscribeState === 'stopped'\n ) {\n // When both states are stopped, after displaying message \"RECORDING_AND_TRANSCRIPTION_STOPPED\", change both states to off (going back to the default state).\n cachedProps.current.latestStringState.callRecordState = 'off';\n cachedProps.current.latestStringState.callTranscribeState = 'off';\n }\n\n return (\n <DelayedUpdateBanner\n variant={{\n variant,\n lastUpdated: cachedProps.current.lastUpdated\n }}\n strings={props.strings}\n onDismiss={() => {\n if (cachedProps.current.latestStringState.callRecordState === 'stopped') {\n cachedProps.current.latestStringState.callRecordState = 'off';\n }\n if (cachedProps.current.latestStringState.callTranscribeState === 'stopped') {\n cachedProps.current.latestStringState.callTranscribeState = 'off';\n }\n }}\n />\n );\n};\n\nfunction determineStates(previous: ComplianceState, current: boolean | undefined): ComplianceState {\n // if current state is on, then return on\n if (current) {\n return 'on';\n }\n // if current state is off\n else {\n // if previous state is on and current state is off, return stopped (on -> off)\n if (previous === 'on') {\n return 'stopped';\n }\n // otherwise remain previous state unchanged\n else {\n return previous;\n }\n }\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
2
+ // Licensed under the MIT License.
3
3
  import { MessageBar, MessageBarType } from '@fluentui/react';
4
4
  import React, { useRef, useState } from 'react';
5
5
  import { BannerMessage } from './BannerMessage';
@@ -1 +1 @@
1
- {"version":3,"file":"DelayedUpdateBanner.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ComplianceBanner/DelayedUpdateBanner.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAIhD,MAAM,yBAAyB,GAAG,IAAI,CAAC;AASvC;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAInC;IACC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;IAEnE,0DAA0D;IAC1D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAqB;QACzD,OAAO;QACP,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;KACxB,CAAC,CAAC;IACH,MAAM,mBAAmB,GAAG,MAAM,CAAuC,IAAI,CAAC,CAAC;IAE/E,IAAI,OAAO,KAAK,OAAO,CAAC,OAAO,IAAI,kBAAkB,GAAG,OAAO,CAAC,WAAW,EAAE;QAC3E,gCAAgC;QAChC,4DAA4D;QAC5D,IAAI,mBAAmB,CAAC,OAAO,EAAE;YAC/B,YAAY,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;SAC3C;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,gBAAgB,GAAG,yBAAyB,GAAG,CAAC,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;QACjF,IAAI,OAAO,KAAK,UAAU,IAAI,gBAAgB,IAAI,CAAC,EAAE;YACnD,UAAU,CAAC;gBACT,OAAO;gBACP,WAAW,EAAE,GAAG;aACjB,CAAC,CAAC;SACJ;aAAM;YACL,mBAAmB,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5C,mFAAmF;gBACnF,oDAAoD;gBACpD,UAAU,CAAC;oBACT,OAAO;oBACP,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;iBACxB,CAAC,CAAC;YACL,CAAC,EAAE,gBAAgB,CAAC,CAAC;SACtB;KACF;IAED,IAAI,OAAO,CAAC,OAAO,KAAK,UAAU,EAAE;QAClC,OAAO,yCAAK,CAAC;KACd;IAED,OAAO,CACL,oBAAC,UAAU,IACT,cAAc,EAAE,cAAc,CAAC,OAAO,EACtC,SAAS,EAAE,GAAG,EAAE;YACd,4FAA4F;YAC5F,4DAA4D;YAC5D,UAAU,CAAC;gBACT,OAAO,EAAE,UAAU;gBACnB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;aACxB,CAAC,CAAC;YACH,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,CAAC,EACD,sBAAsB,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK;QAE3C,oBAAC,aAAa,IAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,GAAI,CACxD,CACd,CAAC;AACJ,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { MessageBar, MessageBarType } from '@fluentui/react';\nimport React, { useRef, useState } from 'react';\nimport { BannerMessage } from './BannerMessage';\nimport { _ComplianceBannerStrings } from './types';\nimport { ComplianceBannerVariant } from './Utils';\n\nconst BANNER_OVERWRITE_DELAY_MS = 3000;\n\n/** @private */\nexport interface TimestampedVariant {\n variant: ComplianceBannerVariant;\n // Milliseconds since epoch (i.e., return value of Date.now()).\n lastUpdated: number;\n}\n\n/**\n * Shows a {@link BannerMessage} in a {@link MessageBar} tracking `variant` internally.\n *\n * This component delays and combines frequent updates to `variant` such that:\n * - Updates that happen within {@link BANNER_OVERWRITE_DELAY_MS} are delayed.\n * - Once {@link BANNER_OVERWRITE_DELAY_MS} has passed since the last update, the _latest_ pending update is shown.\n *\n * This ensures that there is enough time for the user to see a banner message before it is overwritten.\n * In case of multiple delayed messages, the user always sees the final message as it reflects the final state\n * of recording and transcription.\n *\n * @private\n */\nexport function DelayedUpdateBanner(props: {\n variant: TimestampedVariant;\n onDismiss: () => void;\n strings: _ComplianceBannerStrings;\n}): JSX.Element {\n const { variant, lastUpdated: variantLastUpdated } = props.variant;\n\n // Tracks the variant that is currently visible in the UI.\n const [visible, setVisible] = useState<TimestampedVariant>({\n variant,\n lastUpdated: Date.now()\n });\n const pendingUpdateHandle = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n if (variant !== visible.variant && variantLastUpdated > visible.lastUpdated) {\n // Always clear pending updates.\n // We'll either update now, or schedule an update for later.\n if (pendingUpdateHandle.current) {\n clearTimeout(pendingUpdateHandle.current);\n }\n\n const now = Date.now();\n const timeToNextUpdate = BANNER_OVERWRITE_DELAY_MS - (now - visible.lastUpdated);\n if (variant === 'NO_STATE' || timeToNextUpdate <= 0) {\n setVisible({\n variant,\n lastUpdated: now\n });\n } else {\n pendingUpdateHandle.current = setTimeout(() => {\n // Set the actual update time, not the computed time when the update should happen.\n // The actual update might be later than we planned.\n setVisible({\n variant,\n lastUpdated: Date.now()\n });\n }, timeToNextUpdate);\n }\n }\n\n if (visible.variant === 'NO_STATE') {\n return <></>;\n }\n\n return (\n <MessageBar\n messageBarType={MessageBarType.warning}\n onDismiss={() => {\n // when closing the banner, change variant to nostate and change stopped state to off state.\n // Reason: on banner close, going back to the default state.\n setVisible({\n variant: 'NO_STATE',\n lastUpdated: Date.now()\n });\n props.onDismiss();\n }}\n dismissButtonAriaLabel={props.strings.close}\n >\n <BannerMessage variant={visible.variant} strings={props.strings} />\n </MessageBar>\n );\n}\n"]}
1
+ {"version":3,"file":"DelayedUpdateBanner.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ComplianceBanner/DelayedUpdateBanner.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAIhD,MAAM,yBAAyB,GAAG,IAAI,CAAC;AASvC;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAInC;IACC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;IAEnE,0DAA0D;IAC1D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAqB;QACzD,OAAO;QACP,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;KACxB,CAAC,CAAC;IACH,MAAM,mBAAmB,GAAG,MAAM,CAAuC,IAAI,CAAC,CAAC;IAE/E,IAAI,OAAO,KAAK,OAAO,CAAC,OAAO,IAAI,kBAAkB,GAAG,OAAO,CAAC,WAAW,EAAE;QAC3E,gCAAgC;QAChC,4DAA4D;QAC5D,IAAI,mBAAmB,CAAC,OAAO,EAAE;YAC/B,YAAY,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;SAC3C;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,gBAAgB,GAAG,yBAAyB,GAAG,CAAC,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;QACjF,IAAI,OAAO,KAAK,UAAU,IAAI,gBAAgB,IAAI,CAAC,EAAE;YACnD,UAAU,CAAC;gBACT,OAAO;gBACP,WAAW,EAAE,GAAG;aACjB,CAAC,CAAC;SACJ;aAAM;YACL,mBAAmB,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5C,mFAAmF;gBACnF,oDAAoD;gBACpD,UAAU,CAAC;oBACT,OAAO;oBACP,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;iBACxB,CAAC,CAAC;YACL,CAAC,EAAE,gBAAgB,CAAC,CAAC;SACtB;KACF;IAED,IAAI,OAAO,CAAC,OAAO,KAAK,UAAU,EAAE;QAClC,OAAO,yCAAK,CAAC;KACd;IAED,OAAO,CACL,oBAAC,UAAU,IACT,cAAc,EAAE,cAAc,CAAC,OAAO,EACtC,SAAS,EAAE,GAAG,EAAE;YACd,4FAA4F;YAC5F,4DAA4D;YAC5D,UAAU,CAAC;gBACT,OAAO,EAAE,UAAU;gBACnB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE;aACxB,CAAC,CAAC;YACH,KAAK,CAAC,SAAS,EAAE,CAAC;QACpB,CAAC,EACD,sBAAsB,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK;QAE3C,oBAAC,aAAa,IAAC,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,GAAI,CACxD,CACd,CAAC;AACJ,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { MessageBar, MessageBarType } from '@fluentui/react';\nimport React, { useRef, useState } from 'react';\nimport { BannerMessage } from './BannerMessage';\nimport { _ComplianceBannerStrings } from './types';\nimport { ComplianceBannerVariant } from './Utils';\n\nconst BANNER_OVERWRITE_DELAY_MS = 3000;\n\n/** @private */\nexport interface TimestampedVariant {\n variant: ComplianceBannerVariant;\n // Milliseconds since epoch (i.e., return value of Date.now()).\n lastUpdated: number;\n}\n\n/**\n * Shows a {@link BannerMessage} in a {@link MessageBar} tracking `variant` internally.\n *\n * This component delays and combines frequent updates to `variant` such that:\n * - Updates that happen within {@link BANNER_OVERWRITE_DELAY_MS} are delayed.\n * - Once {@link BANNER_OVERWRITE_DELAY_MS} has passed since the last update, the _latest_ pending update is shown.\n *\n * This ensures that there is enough time for the user to see a banner message before it is overwritten.\n * In case of multiple delayed messages, the user always sees the final message as it reflects the final state\n * of recording and transcription.\n *\n * @private\n */\nexport function DelayedUpdateBanner(props: {\n variant: TimestampedVariant;\n onDismiss: () => void;\n strings: _ComplianceBannerStrings;\n}): JSX.Element {\n const { variant, lastUpdated: variantLastUpdated } = props.variant;\n\n // Tracks the variant that is currently visible in the UI.\n const [visible, setVisible] = useState<TimestampedVariant>({\n variant,\n lastUpdated: Date.now()\n });\n const pendingUpdateHandle = useRef<ReturnType<typeof setTimeout> | null>(null);\n\n if (variant !== visible.variant && variantLastUpdated > visible.lastUpdated) {\n // Always clear pending updates.\n // We'll either update now, or schedule an update for later.\n if (pendingUpdateHandle.current) {\n clearTimeout(pendingUpdateHandle.current);\n }\n\n const now = Date.now();\n const timeToNextUpdate = BANNER_OVERWRITE_DELAY_MS - (now - visible.lastUpdated);\n if (variant === 'NO_STATE' || timeToNextUpdate <= 0) {\n setVisible({\n variant,\n lastUpdated: now\n });\n } else {\n pendingUpdateHandle.current = setTimeout(() => {\n // Set the actual update time, not the computed time when the update should happen.\n // The actual update might be later than we planned.\n setVisible({\n variant,\n lastUpdated: Date.now()\n });\n }, timeToNextUpdate);\n }\n }\n\n if (visible.variant === 'NO_STATE') {\n return <></>;\n }\n\n return (\n <MessageBar\n messageBarType={MessageBarType.warning}\n onDismiss={() => {\n // when closing the banner, change variant to nostate and change stopped state to off state.\n // Reason: on banner close, going back to the default state.\n setVisible({\n variant: 'NO_STATE',\n lastUpdated: Date.now()\n });\n props.onDismiss();\n }}\n dismissButtonAriaLabel={props.strings.close}\n >\n <BannerMessage variant={visible.variant} strings={props.strings} />\n </MessageBar>\n );\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
2
+ // Licensed under the MIT License.
3
3
  /**
4
4
  * Return different conditions based on the current and previous state of recording and transcribing
5
5
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ComplianceBanner/Utils.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAOlC;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,eAAgC,EAChC,mBAAoC,EACX,EAAE;IAC3B,IAAI,eAAe,KAAK,IAAI,IAAI,mBAAmB,KAAK,IAAI,EAAE;QAC5D,OAAO,qCAAqC,CAAC;KAC9C;SAAM,IAAI,eAAe,KAAK,IAAI,IAAI,mBAAmB,KAAK,KAAK,EAAE;QACpE,OAAO,mBAAmB,CAAC;KAC5B;SAAM,IAAI,eAAe,KAAK,KAAK,IAAI,mBAAmB,KAAK,IAAI,EAAE;QACpE,OAAO,uBAAuB,CAAC;KAChC;SAAM,IAAI,eAAe,KAAK,IAAI,IAAI,mBAAmB,KAAK,SAAS,EAAE;QACxE,OAAO,uCAAuC,CAAC;KAChD;SAAM,IAAI,eAAe,KAAK,SAAS,IAAI,mBAAmB,KAAK,IAAI,EAAE;QACxE,OAAO,sCAAsC,CAAC;KAC/C;SAAM,IAAI,eAAe,KAAK,KAAK,IAAI,mBAAmB,KAAK,SAAS,EAAE;QACzE,OAAO,uBAAuB,CAAC;KAChC;SAAM,IAAI,eAAe,KAAK,SAAS,IAAI,mBAAmB,KAAK,KAAK,EAAE;QACzE,OAAO,mBAAmB,CAAC;KAC5B;SAAM,IAAI,eAAe,KAAK,SAAS,IAAI,mBAAmB,KAAK,SAAS,EAAE;QAC7E,OAAO,qCAAqC,CAAC;KAC9C;SAAM;QACL,OAAO,UAAU,CAAC;KACnB;AACH,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * @private\n */\nexport type ComplianceState = 'on' | 'off' | 'stopped';\n\n/**\n * Return different conditions based on the current and previous state of recording and transcribing\n *\n * @param callRecordState - The current call record state: on, off, stopped\n * @param callTranscribeState - The current call transcribe state: on, off, stopped\n *\n * @remarks - The stopped state means: previously on but currently off\n *\n * @private\n */\nexport const computeVariant = (\n callRecordState: ComplianceState,\n callTranscribeState: ComplianceState\n): ComplianceBannerVariant => {\n if (callRecordState === 'on' && callTranscribeState === 'on') {\n return 'RECORDING_AND_TRANSCRIPTION_STARTED';\n } else if (callRecordState === 'on' && callTranscribeState === 'off') {\n return 'RECORDING_STARTED';\n } else if (callRecordState === 'off' && callTranscribeState === 'on') {\n return 'TRANSCRIPTION_STARTED';\n } else if (callRecordState === 'on' && callTranscribeState === 'stopped') {\n return 'TRANSCRIPTION_STOPPED_STILL_RECORDING';\n } else if (callRecordState === 'stopped' && callTranscribeState === 'on') {\n return 'RECORDING_STOPPED_STILL_TRANSCRIBING';\n } else if (callRecordState === 'off' && callTranscribeState === 'stopped') {\n return 'TRANSCRIPTION_STOPPED';\n } else if (callRecordState === 'stopped' && callTranscribeState === 'off') {\n return 'RECORDING_STOPPED';\n } else if (callRecordState === 'stopped' && callTranscribeState === 'stopped') {\n return 'RECORDING_AND_TRANSCRIPTION_STOPPED';\n } else {\n return 'NO_STATE';\n }\n};\n\n/**\n * @private\n */\nexport type ComplianceBannerVariant =\n | 'NO_STATE'\n | 'TRANSCRIPTION_STOPPED_STILL_RECORDING'\n | 'RECORDING_STOPPED_STILL_TRANSCRIBING'\n | 'RECORDING_AND_TRANSCRIPTION_STOPPED'\n | 'RECORDING_AND_TRANSCRIPTION_STARTED'\n | 'TRANSCRIPTION_STARTED'\n | 'RECORDING_STOPPED'\n | 'RECORDING_STARTED'\n | 'TRANSCRIPTION_STOPPED';\n"]}
1
+ {"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ComplianceBanner/Utils.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAOlC;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,eAAgC,EAChC,mBAAoC,EACX,EAAE;IAC3B,IAAI,eAAe,KAAK,IAAI,IAAI,mBAAmB,KAAK,IAAI,EAAE;QAC5D,OAAO,qCAAqC,CAAC;KAC9C;SAAM,IAAI,eAAe,KAAK,IAAI,IAAI,mBAAmB,KAAK,KAAK,EAAE;QACpE,OAAO,mBAAmB,CAAC;KAC5B;SAAM,IAAI,eAAe,KAAK,KAAK,IAAI,mBAAmB,KAAK,IAAI,EAAE;QACpE,OAAO,uBAAuB,CAAC;KAChC;SAAM,IAAI,eAAe,KAAK,IAAI,IAAI,mBAAmB,KAAK,SAAS,EAAE;QACxE,OAAO,uCAAuC,CAAC;KAChD;SAAM,IAAI,eAAe,KAAK,SAAS,IAAI,mBAAmB,KAAK,IAAI,EAAE;QACxE,OAAO,sCAAsC,CAAC;KAC/C;SAAM,IAAI,eAAe,KAAK,KAAK,IAAI,mBAAmB,KAAK,SAAS,EAAE;QACzE,OAAO,uBAAuB,CAAC;KAChC;SAAM,IAAI,eAAe,KAAK,SAAS,IAAI,mBAAmB,KAAK,KAAK,EAAE;QACzE,OAAO,mBAAmB,CAAC;KAC5B;SAAM,IAAI,eAAe,KAAK,SAAS,IAAI,mBAAmB,KAAK,SAAS,EAAE;QAC7E,OAAO,qCAAqC,CAAC;KAC9C;SAAM;QACL,OAAO,UAAU,CAAC;KACnB;AACH,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * @private\n */\nexport type ComplianceState = 'on' | 'off' | 'stopped';\n\n/**\n * Return different conditions based on the current and previous state of recording and transcribing\n *\n * @param callRecordState - The current call record state: on, off, stopped\n * @param callTranscribeState - The current call transcribe state: on, off, stopped\n *\n * @remarks - The stopped state means: previously on but currently off\n *\n * @private\n */\nexport const computeVariant = (\n callRecordState: ComplianceState,\n callTranscribeState: ComplianceState\n): ComplianceBannerVariant => {\n if (callRecordState === 'on' && callTranscribeState === 'on') {\n return 'RECORDING_AND_TRANSCRIPTION_STARTED';\n } else if (callRecordState === 'on' && callTranscribeState === 'off') {\n return 'RECORDING_STARTED';\n } else if (callRecordState === 'off' && callTranscribeState === 'on') {\n return 'TRANSCRIPTION_STARTED';\n } else if (callRecordState === 'on' && callTranscribeState === 'stopped') {\n return 'TRANSCRIPTION_STOPPED_STILL_RECORDING';\n } else if (callRecordState === 'stopped' && callTranscribeState === 'on') {\n return 'RECORDING_STOPPED_STILL_TRANSCRIBING';\n } else if (callRecordState === 'off' && callTranscribeState === 'stopped') {\n return 'TRANSCRIPTION_STOPPED';\n } else if (callRecordState === 'stopped' && callTranscribeState === 'off') {\n return 'RECORDING_STOPPED';\n } else if (callRecordState === 'stopped' && callTranscribeState === 'stopped') {\n return 'RECORDING_AND_TRANSCRIPTION_STOPPED';\n } else {\n return 'NO_STATE';\n }\n};\n\n/**\n * @private\n */\nexport type ComplianceBannerVariant =\n | 'NO_STATE'\n | 'TRANSCRIPTION_STOPPED_STILL_RECORDING'\n | 'RECORDING_STOPPED_STILL_TRANSCRIBING'\n | 'RECORDING_AND_TRANSCRIPTION_STOPPED'\n | 'RECORDING_AND_TRANSCRIPTION_STARTED'\n | 'TRANSCRIPTION_STARTED'\n | 'RECORDING_STOPPED'\n | 'RECORDING_STARTED'\n | 'TRANSCRIPTION_STOPPED';\n"]}
@@ -1,4 +1,4 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
2
+ // Licensed under the MIT License.
3
3
  export { _ComplianceBanner } from './ComplianceBanner';
4
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ComplianceBanner/index.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\nexport { _ComplianceBanner } from './ComplianceBanner';\nexport type { _ComplianceBannerProps, _ComplianceBannerStrings } from './types';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ComplianceBanner/index.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport { _ComplianceBanner } from './ComplianceBanner';\nexport type { _ComplianceBannerProps, _ComplianceBannerStrings } from './types';\n"]}
@@ -1,4 +1,4 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
2
+ // Licensed under the MIT License.
3
3
  export {};
4
4
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ComplianceBanner/types.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * Subset of `CallCompositeStrings` needed by the ComplianceBanner component.\n * @internal\n */\nexport interface _ComplianceBannerStrings {\n close: string;\n complianceBannerNowOnlyRecording: string;\n complianceBannerNowOnlyTranscription: string;\n complianceBannerRecordingAndTranscriptionSaved: string;\n complianceBannerRecordingAndTranscriptionStarted: string;\n complianceBannerRecordingAndTranscriptionStopped: string;\n complianceBannerRecordingSaving: string;\n complianceBannerRecordingStarted: string;\n complianceBannerRecordingStopped: string;\n complianceBannerTranscriptionConsent: string;\n complianceBannerTranscriptionSaving: string;\n complianceBannerTranscriptionStarted: string;\n complianceBannerTranscriptionStopped: string;\n learnMore: string;\n privacyPolicy: string;\n}\n\n/**\n * @internal\n */\nexport type _ComplianceBannerProps = {\n callTranscribeState?: boolean;\n callRecordState?: boolean;\n strings: _ComplianceBannerStrings;\n};\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/ComplianceBanner/types.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * Subset of `CallCompositeStrings` needed by the ComplianceBanner component.\n * @internal\n */\nexport interface _ComplianceBannerStrings {\n close: string;\n complianceBannerNowOnlyRecording: string;\n complianceBannerNowOnlyTranscription: string;\n complianceBannerRecordingAndTranscriptionSaved: string;\n complianceBannerRecordingAndTranscriptionStarted: string;\n complianceBannerRecordingAndTranscriptionStopped: string;\n complianceBannerRecordingSaving: string;\n complianceBannerRecordingStarted: string;\n complianceBannerRecordingStopped: string;\n complianceBannerTranscriptionConsent: string;\n complianceBannerTranscriptionSaving: string;\n complianceBannerTranscriptionStarted: string;\n complianceBannerTranscriptionStopped: string;\n learnMore: string;\n privacyPolicy: string;\n}\n\n/**\n * @internal\n */\nexport type _ComplianceBannerProps = {\n callTranscribeState?: boolean;\n callRecordState?: boolean;\n strings: _ComplianceBannerStrings;\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
2
+ // Licensed under the MIT License.
3
3
  import { mergeStyles, Stack } from '@fluentui/react';
4
4
  import React, { useMemo } from 'react';
5
5
  import { controlBarStyles } from './styles/ControlBar.styles';
@@ -1 +1 @@
1
- {"version":3,"file":"ControlBar.js","sourceRoot":"","sources":["../../../../../../react-components/src/components/ControlBar.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAU,WAAW,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,MAAM,YAAY,GAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AA6CrF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAsB,EAAe,EAAE;IAChE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACjC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,mBAAmB,GAAG,OAAO,CAAC,GAAG,EAAE;QACvC,MAAM,eAAe,GAAG,gBAAgB,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,YAAY,CAAC,CAAC;QACjE,iIAAiI;QACjI,MAAM,eAAe,GAAG;YACtB,UAAU,EACR,YAAY,CAAC,KAAK,CAAC,KAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAU,CAAC,UAAU,CAAC,CAAA,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK;SACnH,CAAC;QACF,MAAM,uBAAuB,GAAG,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAU,CAAC,UAAU,CAAC;YAC5D,CAAC,CAAC;gBACE,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW;gBACpC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc;aAC3C;YACH,CAAC,CAAC,EAAE,CAAC;QACP,0HAA0H;QAC1H,gDAAgD;QAChD,MAAM,sBAAsB,GAC1B,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,KAAK,aAAa,IAAI,MAAM,KAAK,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjH,OAAO,WAAW,CAAC,eAAe,EAAE,eAAe,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC,CAAC;IACtH,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAClC,OAAO,CACL,6BAAK,SAAS,EAAE,WAAW,CAAC,YAAY,CAAC;QACvC,oBAAC,KAAK,IAAC,SAAS,EAAE,mBAAmB,IAAG,KAAK,CAAC,QAAQ,CAAS,CAC3D,CACP,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { IStyle, mergeStyles, Stack } from '@fluentui/react';\nimport React, { useMemo } from 'react';\nimport { BaseCustomStyles } from '../types';\nimport { controlBarStyles } from './styles/ControlBar.styles';\nimport { useTheme } from '../theming';\nimport { isDarkThemed } from '../theming/themeUtils';\n\nconst mainDivStyle: IStyle = { position: 'relative', height: '100%', width: '100%' };\n\n/**\n * Present layouts for the {@link ControlBar}.\n *\n * @public\n */\nexport type ControlBarLayout =\n | 'horizontal'\n | 'vertical'\n | 'dockedTop'\n | 'dockedBottom'\n | 'dockedLeft'\n | 'dockedRight'\n | 'floatingTop'\n | 'floatingBottom'\n | 'floatingLeft'\n | 'floatingRight';\n\n/**\n * Props for {@link ControlBar}.\n *\n * @public\n */\nexport interface ControlBarProps {\n /** React Child components. */\n children?: React.ReactNode;\n /**\n * Allows users to pass an object containing custom CSS styles.\n * @Example\n * ```\n * <ControlBar styles={{ root: { background: 'blue' } }} />\n * ```\n */\n styles?: BaseCustomStyles;\n /**\n * Changes the layout of the control bar.\n * Available layouts are `horizontal`, `vertical`, `dockedTop`, `dockedBottom`,\n * `dockedLeft`, `dockedRight`, `floatingTop`, `floatingBottom`, `floatingLeft`,\n * `floatingRight`\n * Defaults to a `horizontal` layout.\n */\n layout?: ControlBarLayout;\n}\n\n/**\n * A container for various buttons for call controls.\n *\n * Use with various call control buttons in this library, e.g., {@link CameraButton}, or your own instances of\n * {@link ControlBarButton} directly.\n *\n * @public\n */\nexport const ControlBar = (props: ControlBarProps): JSX.Element => {\n const { styles, layout } = props;\n const theme = useTheme();\n const controlBarClassName = useMemo(() => {\n const controlBarStyle = controlBarStyles[layout ?? 'horizontal'];\n // if theme is dark and layout is floating then use palette.neutralQuaternaryAlt as background, otherwise use theme.palette.white\n const backgroundStyle = {\n background:\n isDarkThemed(theme) && layout?.startsWith('floating') ? theme.palette.neutralQuaternaryAlt : theme.palette.white\n };\n const borderAndBoxShadowStyle = layout?.startsWith('floating')\n ? {\n boxShadow: theme.effects.elevation16,\n borderRadius: theme.effects.roundedCorner6\n }\n : {};\n // if rtl is true and layout is either floatingTop or floatingBottom then we need to override the transform-style property\n // to translate 50% to right instead of the left\n const transformOverrideStyle =\n theme.rtl && (layout === 'floatingTop' || layout === 'floatingBottom') ? { transform: 'translateX(50%)' } : {};\n return mergeStyles(controlBarStyle, backgroundStyle, borderAndBoxShadowStyle, transformOverrideStyle, styles?.root);\n }, [layout, styles?.root, theme]);\n return (\n <div className={mergeStyles(mainDivStyle)}>\n <Stack className={controlBarClassName}>{props.children}</Stack>\n </div>\n );\n};\n"]}
1
+ {"version":3,"file":"ControlBar.js","sourceRoot":"","sources":["../../../../../../react-components/src/components/ControlBar.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAU,WAAW,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,MAAM,YAAY,GAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AA6CrF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAsB,EAAe,EAAE;IAChE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACjC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,mBAAmB,GAAG,OAAO,CAAC,GAAG,EAAE;QACvC,MAAM,eAAe,GAAG,gBAAgB,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,YAAY,CAAC,CAAC;QACjE,iIAAiI;QACjI,MAAM,eAAe,GAAG;YACtB,UAAU,EACR,YAAY,CAAC,KAAK,CAAC,KAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAU,CAAC,UAAU,CAAC,CAAA,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK;SACnH,CAAC;QACF,MAAM,uBAAuB,GAAG,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAU,CAAC,UAAU,CAAC;YAC5D,CAAC,CAAC;gBACE,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW;gBACpC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc;aAC3C;YACH,CAAC,CAAC,EAAE,CAAC;QACP,0HAA0H;QAC1H,gDAAgD;QAChD,MAAM,sBAAsB,GAC1B,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,KAAK,aAAa,IAAI,MAAM,KAAK,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjH,OAAO,WAAW,CAAC,eAAe,EAAE,eAAe,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC,CAAC;IACtH,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAClC,OAAO,CACL,6BAAK,SAAS,EAAE,WAAW,CAAC,YAAY,CAAC;QACvC,oBAAC,KAAK,IAAC,SAAS,EAAE,mBAAmB,IAAG,KAAK,CAAC,QAAQ,CAAS,CAC3D,CACP,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { IStyle, mergeStyles, Stack } from '@fluentui/react';\nimport React, { useMemo } from 'react';\nimport { BaseCustomStyles } from '../types';\nimport { controlBarStyles } from './styles/ControlBar.styles';\nimport { useTheme } from '../theming';\nimport { isDarkThemed } from '../theming/themeUtils';\n\nconst mainDivStyle: IStyle = { position: 'relative', height: '100%', width: '100%' };\n\n/**\n * Present layouts for the {@link ControlBar}.\n *\n * @public\n */\nexport type ControlBarLayout =\n | 'horizontal'\n | 'vertical'\n | 'dockedTop'\n | 'dockedBottom'\n | 'dockedLeft'\n | 'dockedRight'\n | 'floatingTop'\n | 'floatingBottom'\n | 'floatingLeft'\n | 'floatingRight';\n\n/**\n * Props for {@link ControlBar}.\n *\n * @public\n */\nexport interface ControlBarProps {\n /** React Child components. */\n children?: React.ReactNode;\n /**\n * Allows users to pass an object containing custom CSS styles.\n * @Example\n * ```\n * <ControlBar styles={{ root: { background: 'blue' } }} />\n * ```\n */\n styles?: BaseCustomStyles;\n /**\n * Changes the layout of the control bar.\n * Available layouts are `horizontal`, `vertical`, `dockedTop`, `dockedBottom`,\n * `dockedLeft`, `dockedRight`, `floatingTop`, `floatingBottom`, `floatingLeft`,\n * `floatingRight`\n * Defaults to a `horizontal` layout.\n */\n layout?: ControlBarLayout;\n}\n\n/**\n * A container for various buttons for call controls.\n *\n * Use with various call control buttons in this library, e.g., {@link CameraButton}, or your own instances of\n * {@link ControlBarButton} directly.\n *\n * @public\n */\nexport const ControlBar = (props: ControlBarProps): JSX.Element => {\n const { styles, layout } = props;\n const theme = useTheme();\n const controlBarClassName = useMemo(() => {\n const controlBarStyle = controlBarStyles[layout ?? 'horizontal'];\n // if theme is dark and layout is floating then use palette.neutralQuaternaryAlt as background, otherwise use theme.palette.white\n const backgroundStyle = {\n background:\n isDarkThemed(theme) && layout?.startsWith('floating') ? theme.palette.neutralQuaternaryAlt : theme.palette.white\n };\n const borderAndBoxShadowStyle = layout?.startsWith('floating')\n ? {\n boxShadow: theme.effects.elevation16,\n borderRadius: theme.effects.roundedCorner6\n }\n : {};\n // if rtl is true and layout is either floatingTop or floatingBottom then we need to override the transform-style property\n // to translate 50% to right instead of the left\n const transformOverrideStyle =\n theme.rtl && (layout === 'floatingTop' || layout === 'floatingBottom') ? { transform: 'translateX(50%)' } : {};\n return mergeStyles(controlBarStyle, backgroundStyle, borderAndBoxShadowStyle, transformOverrideStyle, styles?.root);\n }, [layout, styles?.root, theme]);\n return (\n <div className={mergeStyles(mainDivStyle)}>\n <Stack className={controlBarClassName}>{props.children}</Stack>\n </div>\n );\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
2
+ // Licensed under the MIT License.
3
3
  import React from 'react';
4
4
  import { DefaultButton, concatStyleSets, KeyCodes } from '@fluentui/react';
5
5
  import { controlButtonStyles } from './styles/ControlBar.styles';
@@ -1 +1 @@
1
- {"version":3,"file":"ControlBarButton.js","sourceRoot":"","sources":["../../../../../../react-components/src/components/ControlBarButton.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport React from 'react';\nimport {\n DefaultButton,\n IButtonProps,\n IRenderFunction,\n concatStyleSets,\n IButtonStyles,\n KeyCodes\n} from '@fluentui/react';\nimport { controlButtonStyles } from './styles/ControlBar.styles';\nimport { ControlButtonTooltip } from './ControlButtonTooltip';\n\n/**\n * Strings of {@link ControlBarButton} that can be overridden.\n *\n * @public\n */\nexport interface ControlBarButtonStrings {\n /**\n * Label of the button. This supersedes onLabel or offLabel if used.\n */\n label?: string;\n /**\n * Label of the button shown when the button is checked.\n */\n onLabel?: string;\n /**\n * Label of the button shown when the button is not checked.\n */\n offLabel?: string;\n /**\n * Tooltip content of the button. This supersedes tooltipDisabledContent, tooltipOnContent and tooltipOffContent if used.\n */\n tooltipContent?: string;\n /**\n * Tooltip content when the button is disabled.\n */\n tooltipDisabledContent?: string;\n /**\n * Tooltip content when the button is in the checked state.\n */\n tooltipOnContent?: string;\n /**\n * Tooltip content when the button is in the unchecked state.\n */\n tooltipOffContent?: string;\n}\n\n/**\n * Styles for all {@link ControlBarButton} implementations.\n *\n * @public\n */\nexport type ControlBarButtonStyles = IButtonStyles;\n\n/**\n * Props for {@link ControlBarButton}.\n *\n * @public\n */\nexport interface ControlBarButtonProps extends IButtonProps {\n /**\n * Whether the label is displayed or not.\n *\n * @defaultValue `false`\n */\n showLabel?: boolean;\n\n /**\n * Key to use for the Label component\n */\n labelKey?: string;\n\n /**\n * Id to use for the tooltip host.\n *\n * @defaultValue This uses the labelKey and appends -tooltip by default\n */\n tooltipId?: string;\n\n /**\n * Optional strings to override in component.\n */\n strings?: ControlBarButtonStrings;\n\n /**\n * Icon to render when the button is checked.\n */\n onRenderOnIcon?: IRenderFunction<IButtonProps>;\n\n /**\n * Icon to render when the button is not checked.\n */\n onRenderOffIcon?: IRenderFunction<IButtonProps>;\n\n /**\n * Fluent styles, including extensions common to all {@link ControlBarButton}s.\n */\n styles?: ControlBarButtonStyles;\n}\n\nconst DefaultRenderIcon = (props?: ControlBarButtonProps): JSX.Element | null => {\n return props?.checked\n ? props?.onRenderOnIcon\n ? props?.onRenderOnIcon()\n : null\n : props?.onRenderOffIcon\n ? props?.onRenderOffIcon()\n : null;\n};\n\n/**\n * Default button styled for the {@link ControlBar}.\n *\n * Use this component create custom buttons that are styled the same as other buttons provided by the UI Library.\n *\n * @public\n */\nexport const ControlBarButton = (props: ControlBarButtonProps): JSX.Element => {\n const componentStyles = concatStyleSets(controlButtonStyles, props.styles ?? {});\n\n const labelText =\n props?.text ?? props?.strings?.label ?? (props?.checked ? props?.strings?.onLabel : props?.strings?.offLabel);\n\n const tooltipContent =\n props?.strings?.tooltipContent ??\n (props?.disabled\n ? props?.strings?.tooltipDisabledContent\n : props?.checked\n ? props?.strings?.tooltipOnContent\n : props?.strings?.tooltipOffContent);\n\n const tooltipId = props.tooltipId ?? props.labelKey ? props.labelKey + '-tooltip' : undefined;\n\n return (\n <ControlButtonTooltip content={tooltipContent} id={tooltipId}>\n <DefaultButton\n {...props}\n styles={componentStyles}\n onRenderText={props.showLabel && props.onRenderText ? props.onRenderText : undefined}\n onRenderIcon={props.onRenderIcon ?? DefaultRenderIcon}\n ariaLabel={props.splitButtonAriaLabel ?? props.ariaLabel ?? tooltipContent ?? labelText}\n allowDisabledFocus={props.allowDisabledFocus ?? true}\n menuTriggerKeyCode={KeyCodes.down} // explicitly sets the keypress to activiate the split button drop down.\n text={undefined} // this is handled as a child of the button, without this the `showLabel` prop may be ignored.\n >\n {props.showLabel ? labelText : <></>}\n </DefaultButton>\n </ControlButtonTooltip>\n );\n};\n"]}
1
+ {"version":3,"file":"ControlBarButton.js","sourceRoot":"","sources":["../../../../../../react-components/src/components/ControlBarButton.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React from 'react';\nimport {\n DefaultButton,\n IButtonProps,\n IRenderFunction,\n concatStyleSets,\n IButtonStyles,\n KeyCodes\n} from '@fluentui/react';\nimport { controlButtonStyles } from './styles/ControlBar.styles';\nimport { ControlButtonTooltip } from './ControlButtonTooltip';\n\n/**\n * Strings of {@link ControlBarButton} that can be overridden.\n *\n * @public\n */\nexport interface ControlBarButtonStrings {\n /**\n * Label of the button. This supersedes onLabel or offLabel if used.\n */\n label?: string;\n /**\n * Label of the button shown when the button is checked.\n */\n onLabel?: string;\n /**\n * Label of the button shown when the button is not checked.\n */\n offLabel?: string;\n /**\n * Tooltip content of the button. This supersedes tooltipDisabledContent, tooltipOnContent and tooltipOffContent if used.\n */\n tooltipContent?: string;\n /**\n * Tooltip content when the button is disabled.\n */\n tooltipDisabledContent?: string;\n /**\n * Tooltip content when the button is in the checked state.\n */\n tooltipOnContent?: string;\n /**\n * Tooltip content when the button is in the unchecked state.\n */\n tooltipOffContent?: string;\n}\n\n/**\n * Styles for all {@link ControlBarButton} implementations.\n *\n * @public\n */\nexport type ControlBarButtonStyles = IButtonStyles;\n\n/**\n * Props for {@link ControlBarButton}.\n *\n * @public\n */\nexport interface ControlBarButtonProps extends IButtonProps {\n /**\n * Whether the label is displayed or not.\n *\n * @defaultValue `false`\n */\n showLabel?: boolean;\n\n /**\n * Key to use for the Label component\n */\n labelKey?: string;\n\n /**\n * Id to use for the tooltip host.\n *\n * @defaultValue This uses the labelKey and appends -tooltip by default\n */\n tooltipId?: string;\n\n /**\n * Optional strings to override in component.\n */\n strings?: ControlBarButtonStrings;\n\n /**\n * Icon to render when the button is checked.\n */\n onRenderOnIcon?: IRenderFunction<IButtonProps>;\n\n /**\n * Icon to render when the button is not checked.\n */\n onRenderOffIcon?: IRenderFunction<IButtonProps>;\n\n /**\n * Fluent styles, including extensions common to all {@link ControlBarButton}s.\n */\n styles?: ControlBarButtonStyles;\n}\n\nconst DefaultRenderIcon = (props?: ControlBarButtonProps): JSX.Element | null => {\n return props?.checked\n ? props?.onRenderOnIcon\n ? props?.onRenderOnIcon()\n : null\n : props?.onRenderOffIcon\n ? props?.onRenderOffIcon()\n : null;\n};\n\n/**\n * Default button styled for the {@link ControlBar}.\n *\n * Use this component create custom buttons that are styled the same as other buttons provided by the UI Library.\n *\n * @public\n */\nexport const ControlBarButton = (props: ControlBarButtonProps): JSX.Element => {\n const componentStyles = concatStyleSets(controlButtonStyles, props.styles ?? {});\n\n const labelText =\n props?.text ?? props?.strings?.label ?? (props?.checked ? props?.strings?.onLabel : props?.strings?.offLabel);\n\n const tooltipContent =\n props?.strings?.tooltipContent ??\n (props?.disabled\n ? props?.strings?.tooltipDisabledContent\n : props?.checked\n ? props?.strings?.tooltipOnContent\n : props?.strings?.tooltipOffContent);\n\n const tooltipId = props.tooltipId ?? props.labelKey ? props.labelKey + '-tooltip' : undefined;\n\n return (\n <ControlButtonTooltip content={tooltipContent} id={tooltipId}>\n <DefaultButton\n {...props}\n styles={componentStyles}\n onRenderText={props.showLabel && props.onRenderText ? props.onRenderText : undefined}\n onRenderIcon={props.onRenderIcon ?? DefaultRenderIcon}\n ariaLabel={props.splitButtonAriaLabel ?? props.ariaLabel ?? tooltipContent ?? labelText}\n allowDisabledFocus={props.allowDisabledFocus ?? true}\n menuTriggerKeyCode={KeyCodes.down} // explicitly sets the keypress to activiate the split button drop down.\n text={undefined} // this is handled as a child of the button, without this the `showLabel` prop may be ignored.\n >\n {props.showLabel ? labelText : <></>}\n </DefaultButton>\n </ControlButtonTooltip>\n );\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
2
+ // Licensed under the MIT License.
3
3
  import React from 'react';
4
4
  import { TooltipHost, mergeStyleSets, useTheme } from '@fluentui/react';
5
5
  import { isDarkThemed } from '../theming/themeUtils';
@@ -1 +1 @@
1
- {"version":3,"file":"ControlButtonTooltip.js","sourceRoot":"","sources":["../../../../../../react-components/src/components/ControlButtonTooltip.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,WAAW,EAIX,cAAc,EACd,QAAQ,EACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,wDAAwD;AACxD,uFAAuF;AACvF,yHAAyH;AACzH,MAAM,UAAU,GAAgC,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,CAAC;AAEtF;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAwB,EAAe,EAAE;IAC5E,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,YAAY,GAAmC,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC;IAElH,uDAAuD;IACvD,MAAM,YAAY,GAAG;QACnB,QAAQ,EAAE,CAAC;QACX,MAAM,EAAE,YAAY;QACpB,eAAe,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;KACzE,CAAC;IACF,OAAO,CACL,oBAAC,WAAW,oBACN,KAAK,kBACG,KAAK,CAAC,EAAE,EACpB,YAAY,kCAAO,YAAY,GAAK,KAAK,CAAC,YAAY,GACtD,MAAM,EAAE,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,KAE/C,KAAK,CAAC,QAAQ,CACH,CACf,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport React from 'react';\nimport {\n TooltipHost,\n ITooltipHostStyles,\n ITooltipHostProps,\n ICalloutContentStyles,\n mergeStyleSets,\n useTheme\n} from '@fluentui/react';\nimport { isDarkThemed } from '../theming/themeUtils';\n\n// The TooltipHost root uses display: inline by default.\n// To prevent sizing issues or tooltip positioning issues, we override to inline-block.\n// For more details see \"Icon Button with Tooltip\" on https://developer.microsoft.com/en-us/fluentui#/controls/web/button\nconst hostStyles: Partial<ITooltipHostStyles> = { root: { display: 'inline-block' } };\n\n/**\n * Tooltip that should wrap control bar buttons.\n *\n * @private\n */\nexport const ControlButtonTooltip = (props: ITooltipHostProps): JSX.Element => {\n const theme = useTheme();\n const calloutStyle: Partial<ICalloutContentStyles> = { root: { padding: 0 }, calloutMain: { padding: '0.5rem' } };\n\n // Place callout with no gap between it and the button.\n const calloutProps = {\n gapSpace: 0,\n styles: calloutStyle,\n backgroundColor: isDarkThemed(theme) ? theme.palette.neutralLighter : ''\n };\n return (\n <TooltipHost\n {...props}\n data-ui-id={props.id}\n calloutProps={{ ...calloutProps, ...props.calloutProps }}\n styles={mergeStyleSets(hostStyles, props.styles)}\n >\n {props.children}\n </TooltipHost>\n );\n};\n"]}
1
+ {"version":3,"file":"ControlButtonTooltip.js","sourceRoot":"","sources":["../../../../../../react-components/src/components/ControlButtonTooltip.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,WAAW,EAIX,cAAc,EACd,QAAQ,EACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,wDAAwD;AACxD,uFAAuF;AACvF,yHAAyH;AACzH,MAAM,UAAU,GAAgC,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,CAAC;AAEtF;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAwB,EAAe,EAAE;IAC5E,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,YAAY,GAAmC,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC;IAElH,uDAAuD;IACvD,MAAM,YAAY,GAAG;QACnB,QAAQ,EAAE,CAAC;QACX,MAAM,EAAE,YAAY;QACpB,eAAe,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;KACzE,CAAC;IACF,OAAO,CACL,oBAAC,WAAW,oBACN,KAAK,kBACG,KAAK,CAAC,EAAE,EACpB,YAAY,kCAAO,YAAY,GAAK,KAAK,CAAC,YAAY,GACtD,MAAM,EAAE,cAAc,CAAC,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,KAE/C,KAAK,CAAC,QAAQ,CACH,CACf,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React from 'react';\nimport {\n TooltipHost,\n ITooltipHostStyles,\n ITooltipHostProps,\n ICalloutContentStyles,\n mergeStyleSets,\n useTheme\n} from '@fluentui/react';\nimport { isDarkThemed } from '../theming/themeUtils';\n\n// The TooltipHost root uses display: inline by default.\n// To prevent sizing issues or tooltip positioning issues, we override to inline-block.\n// For more details see \"Icon Button with Tooltip\" on https://developer.microsoft.com/en-us/fluentui#/controls/web/button\nconst hostStyles: Partial<ITooltipHostStyles> = { root: { display: 'inline-block' } };\n\n/**\n * Tooltip that should wrap control bar buttons.\n *\n * @private\n */\nexport const ControlButtonTooltip = (props: ITooltipHostProps): JSX.Element => {\n const theme = useTheme();\n const calloutStyle: Partial<ICalloutContentStyles> = { root: { padding: 0 }, calloutMain: { padding: '0.5rem' } };\n\n // Place callout with no gap between it and the button.\n const calloutProps = {\n gapSpace: 0,\n styles: calloutStyle,\n backgroundColor: isDarkThemed(theme) ? theme.palette.neutralLighter : ''\n };\n return (\n <TooltipHost\n {...props}\n data-ui-id={props.id}\n calloutProps={{ ...calloutProps, ...props.calloutProps }}\n styles={mergeStyleSets(hostStyles, props.styles)}\n >\n {props.children}\n </TooltipHost>\n );\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
2
+ // Licensed under the MIT License.
3
3
  import React from 'react';
4
4
  /* @conditional-compile-remove(call-readiness) */
5
5
  import { Stack, Text, Link, Icon, PrimaryButton, mergeStyleSets } from '@fluentui/react';
@@ -1 +1 @@
1
- {"version":3,"file":"BrowserPermissionDenied.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/DevicePermissions/BrowserPermissionDenied.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport React from 'react';\nimport { IButtonStyles, ILinkStyles } from '@fluentui/react';\n/* @conditional-compile-remove(call-readiness) */\nimport { Stack, Text, Link, Icon, PrimaryButton, mergeStyleSets } from '@fluentui/react';\n/* @conditional-compile-remove(call-readiness) */\nimport { useLocale } from '../../localization';\n/* @conditional-compile-remove(call-readiness) */\nimport { _formatString, _pxToRem } from '@internal/acs-ui-common';\n/* @conditional-compile-remove(call-readiness) */\nimport {\n iconContainerStyles,\n iconPrimaryStyles,\n linkTextStyles,\n primaryButtonStyles,\n primaryTextStyles,\n secondaryTextStyles,\n textContainerStyles\n} from './../styles/BrowserPermissionDenied.styles';\nimport { BaseCustomStyles } from '../../types';\n/* @conditional-compile-remove(call-readiness) */\nimport { isValidString } from '../utils';\n\n/**\n * @beta\n * Props for BrowserPermissionDenied component.\n */\nexport interface BrowserPermissionDeniedProps {\n /**\n * Action to be taken by the more help link. Possible to send to external page or show other modal.\n */\n onTroubleshootingClick?: () => void;\n /**\n * Action to be taken by the try again primary button.\n */\n onTryAgainClick?: () => void;\n /**\n * Localization strings for BrowserPermissionDenied component.\n */\n strings?: BrowserPermissionDeniedStrings;\n /**\n * Allows users to pass in an object contains custom CSS styles.\n * @Example\n * ```\n * <BrowserPermissionDenied styles={{ primaryButton: { root: {backgroundColor: 'blue' }}}} />\n * ```\n */\n styles?: BrowserPermissionDeniedStyles;\n}\n\n/**\n * @beta\n * Strings for BrowserPermissionDenied component\n */\nexport interface BrowserPermissionDeniedStrings {\n /**\n * Main button text string.\n */\n primaryButtonText: string;\n /**\n * Main text string.\n */\n primaryText: string;\n /**\n * Subtext string.\n */\n secondaryText: string;\n /**\n * More help link string.\n */\n linkText: string;\n}\n\n/**\n * Fluent styles for {@link BrowserPermissionDenied}.\n *\n * @beta\n */\nexport interface BrowserPermissionDeniedStyles extends BaseCustomStyles {\n /** Styles for the primary button. */\n primaryButton?: IButtonStyles;\n /** Styles for the help troubleshooting link text. */\n troubleshootingLink?: ILinkStyles;\n}\n\n/* @conditional-compile-remove(call-readiness) */\nconst BrowserPermissionDeniedContainer = (props: BrowserPermissionDeniedProps): JSX.Element => {\n const { onTroubleshootingClick, onTryAgainClick, strings, styles } = props;\n return (\n <Stack style={{ padding: '2rem', paddingTop: '2.5rem', maxWidth: '25.375rem' }}>\n <Stack horizontal style={{ paddingBottom: '1.5rem' }} horizontalAlign={'space-between'}>\n <Stack styles={iconContainerStyles} horizontalAlign={'center'}>\n <Icon styles={iconPrimaryStyles} iconName={'BrowserPermissionDeniedError'}></Icon>\n </Stack>\n </Stack>\n <Stack styles={textContainerStyles}>\n {isValidString(strings?.primaryText) && <Text styles={primaryTextStyles}>{strings?.primaryText}</Text>}\n {isValidString(strings?.secondaryText) && <Text styles={secondaryTextStyles}>{strings?.secondaryText}</Text>}\n\n {onTryAgainClick && isValidString(strings?.primaryButtonText) && (\n <PrimaryButton\n styles={mergeStyleSets(primaryButtonStyles, styles?.primaryButton)}\n text={strings?.primaryButtonText}\n onClick={onTryAgainClick}\n />\n )}\n\n {onTroubleshootingClick && isValidString(strings?.linkText) && (\n <Link styles={mergeStyleSets(linkTextStyles, styles?.troubleshootingLink)} onClick={onTroubleshootingClick}>\n {strings?.linkText}\n </Link>\n )}\n </Stack>\n </Stack>\n );\n};\n\n/**\n * @beta\n *\n * Component to allow Contoso to help their end user with their devices should their browser experience device permission issues.\n */\nexport const BrowserPermissionDenied = (props: BrowserPermissionDeniedProps): JSX.Element => {\n /* @conditional-compile-remove(call-readiness) */\n const locale = useLocale().strings.BrowserPermissionDenied;\n /* @conditional-compile-remove(call-readiness) */\n return <BrowserPermissionDeniedContainer {...props} strings={props.strings ? props.strings : locale} />;\n return <></>;\n};\n\"../../../../acs-ui-common/src\""]}
1
+ {"version":3,"file":"BrowserPermissionDenied.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/DevicePermissions/BrowserPermissionDenied.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React from 'react';\nimport { IButtonStyles, ILinkStyles } from '@fluentui/react';\n/* @conditional-compile-remove(call-readiness) */\nimport { Stack, Text, Link, Icon, PrimaryButton, mergeStyleSets } from '@fluentui/react';\n/* @conditional-compile-remove(call-readiness) */\nimport { useLocale } from '../../localization';\n/* @conditional-compile-remove(call-readiness) */\nimport { _formatString, _pxToRem } from '@internal/acs-ui-common';\n/* @conditional-compile-remove(call-readiness) */\nimport {\n iconContainerStyles,\n iconPrimaryStyles,\n linkTextStyles,\n primaryButtonStyles,\n primaryTextStyles,\n secondaryTextStyles,\n textContainerStyles\n} from './../styles/BrowserPermissionDenied.styles';\nimport { BaseCustomStyles } from '../../types';\n/* @conditional-compile-remove(call-readiness) */\nimport { isValidString } from '../utils';\n\n/**\n * @beta\n * Props for BrowserPermissionDenied component.\n */\nexport interface BrowserPermissionDeniedProps {\n /**\n * Action to be taken by the more help link. Possible to send to external page or show other modal.\n */\n onTroubleshootingClick?: () => void;\n /**\n * Action to be taken by the try again primary button.\n */\n onTryAgainClick?: () => void;\n /**\n * Localization strings for BrowserPermissionDenied component.\n */\n strings?: BrowserPermissionDeniedStrings;\n /**\n * Allows users to pass in an object contains custom CSS styles.\n * @Example\n * ```\n * <BrowserPermissionDenied styles={{ primaryButton: { root: {backgroundColor: 'blue' }}}} />\n * ```\n */\n styles?: BrowserPermissionDeniedStyles;\n}\n\n/**\n * @beta\n * Strings for BrowserPermissionDenied component\n */\nexport interface BrowserPermissionDeniedStrings {\n /**\n * Main button text string.\n */\n primaryButtonText: string;\n /**\n * Main text string.\n */\n primaryText: string;\n /**\n * Subtext string.\n */\n secondaryText: string;\n /**\n * More help link string.\n */\n linkText: string;\n}\n\n/**\n * Fluent styles for {@link BrowserPermissionDenied}.\n *\n * @beta\n */\nexport interface BrowserPermissionDeniedStyles extends BaseCustomStyles {\n /** Styles for the primary button. */\n primaryButton?: IButtonStyles;\n /** Styles for the help troubleshooting link text. */\n troubleshootingLink?: ILinkStyles;\n}\n\n/* @conditional-compile-remove(call-readiness) */\nconst BrowserPermissionDeniedContainer = (props: BrowserPermissionDeniedProps): JSX.Element => {\n const { onTroubleshootingClick, onTryAgainClick, strings, styles } = props;\n return (\n <Stack style={{ padding: '2rem', paddingTop: '2.5rem', maxWidth: '25.375rem' }}>\n <Stack horizontal style={{ paddingBottom: '1.5rem' }} horizontalAlign={'space-between'}>\n <Stack styles={iconContainerStyles} horizontalAlign={'center'}>\n <Icon styles={iconPrimaryStyles} iconName={'BrowserPermissionDeniedError'}></Icon>\n </Stack>\n </Stack>\n <Stack styles={textContainerStyles}>\n {isValidString(strings?.primaryText) && <Text styles={primaryTextStyles}>{strings?.primaryText}</Text>}\n {isValidString(strings?.secondaryText) && <Text styles={secondaryTextStyles}>{strings?.secondaryText}</Text>}\n\n {onTryAgainClick && isValidString(strings?.primaryButtonText) && (\n <PrimaryButton\n styles={mergeStyleSets(primaryButtonStyles, styles?.primaryButton)}\n text={strings?.primaryButtonText}\n onClick={onTryAgainClick}\n />\n )}\n\n {onTroubleshootingClick && isValidString(strings?.linkText) && (\n <Link styles={mergeStyleSets(linkTextStyles, styles?.troubleshootingLink)} onClick={onTroubleshootingClick}>\n {strings?.linkText}\n </Link>\n )}\n </Stack>\n </Stack>\n );\n};\n\n/**\n * @beta\n *\n * Component to allow Contoso to help their end user with their devices should their browser experience device permission issues.\n */\nexport const BrowserPermissionDenied = (props: BrowserPermissionDeniedProps): JSX.Element => {\n /* @conditional-compile-remove(call-readiness) */\n const locale = useLocale().strings.BrowserPermissionDenied;\n /* @conditional-compile-remove(call-readiness) */\n return <BrowserPermissionDeniedContainer {...props} strings={props.strings ? props.strings : locale} />;\n return <></>;\n};\n\"../../../../acs-ui-common/src\""]}
@@ -1,5 +1,5 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
- // Licensed under the MIT license.
2
+ // Licensed under the MIT License.
3
3
  import React from 'react';
4
4
  /* @conditional-compile-remove(call-readiness) */
5
5
  import { useMemo } from 'react';