@azure/communication-react 1.14.0 → 1.14.1-alpha-202403210013

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 (1218) hide show
  1. package/dist/communication-react.d.ts +2723 -72
  2. package/dist/dist-cjs/communication-react/RichTextSendBoxWrapper-BgK9tOAk.js +51 -0
  3. package/dist/dist-cjs/communication-react/RichTextSendBoxWrapper-BgK9tOAk.js.map +1 -0
  4. package/dist/dist-cjs/communication-react/index-B_kqOVlM.js +38230 -0
  5. package/dist/dist-cjs/communication-react/index-B_kqOVlM.js.map +1 -0
  6. package/dist/dist-cjs/communication-react/index.js +156 -29549
  7. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  8. package/dist/dist-esm/acs-ui-common/src/MessageStatus.js.map +1 -1
  9. package/dist/dist-esm/acs-ui-common/src/areEqual.js.map +1 -1
  10. package/dist/dist-esm/acs-ui-common/src/common.js.map +1 -1
  11. package/dist/dist-esm/acs-ui-common/src/commonProperties.js.map +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.map +1 -1
  14. package/dist/dist-esm/acs-ui-common/src/identifier.js +4 -1
  15. package/dist/dist-esm/acs-ui-common/src/identifier.js.map +1 -1
  16. package/dist/dist-esm/acs-ui-common/src/index.js.map +1 -1
  17. package/dist/dist-esm/acs-ui-common/src/localizationUtils.js.map +1 -1
  18. package/dist/dist-esm/acs-ui-common/src/logEvent.js.map +1 -1
  19. package/dist/dist-esm/acs-ui-common/src/memoizeFnAll.js.map +1 -1
  20. package/dist/dist-esm/acs-ui-common/src/safeStringify.js.map +1 -1
  21. package/dist/dist-esm/acs-ui-common/src/telemetry.js.map +1 -1
  22. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  23. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  24. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.d.ts +12 -1
  25. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +24 -3
  26. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  27. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.d.ts +27 -0
  28. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +68 -13
  29. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
  30. package/dist/dist-esm/calling-component-bindings/src/captionsSelector.js +12 -5
  31. package/dist/dist-esm/calling-component-bindings/src/captionsSelector.js.map +1 -1
  32. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js +29 -56
  33. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js.map +1 -1
  34. package/dist/dist-esm/calling-component-bindings/src/getRemoteParticipantsExcludingConsumers.js +1 -1
  35. package/dist/dist-esm/calling-component-bindings/src/getRemoteParticipantsExcludingConsumers.js.map +1 -1
  36. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.d.ts +22 -2
  37. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +133 -54
  38. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
  39. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js +11 -1
  40. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js.map +1 -1
  41. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.d.ts +15 -1
  42. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js +19 -3
  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.d.ts +45 -0
  45. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js +87 -0
  46. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js.map +1 -0
  47. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.d.ts +1 -1
  48. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.js.map +1 -1
  49. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.d.ts +5 -2
  50. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js +25 -9
  51. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  52. package/dist/dist-esm/calling-component-bindings/src/hooks/useSelector.d.ts +1 -1
  53. package/dist/dist-esm/calling-component-bindings/src/hooks/useSelector.js.map +1 -1
  54. package/dist/dist-esm/calling-component-bindings/src/index.d.ts +7 -0
  55. package/dist/dist-esm/calling-component-bindings/src/index.js +8 -0
  56. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  57. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.d.ts +1 -0
  58. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +88 -15
  59. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
  60. package/dist/dist-esm/calling-component-bindings/src/participantsButtonSelector.js.map +1 -1
  61. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.d.ts +4 -3
  62. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.js.map +1 -1
  63. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js +6 -3
  64. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js.map +1 -1
  65. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.d.ts +14 -2
  66. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js +20 -1
  67. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js.map +1 -1
  68. package/dist/dist-esm/calling-component-bindings/src/providers/index.js.map +1 -1
  69. package/dist/dist-esm/calling-component-bindings/src/utils/SelectorUtils.js.map +1 -1
  70. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.d.ts +7 -0
  71. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js +23 -7
  72. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js.map +1 -1
  73. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.d.ts +20 -0
  74. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js +50 -1
  75. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js.map +1 -1
  76. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.d.ts +9 -3
  77. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +91 -18
  78. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  79. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.d.ts +2 -0
  80. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js +80 -14
  81. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
  82. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.d.ts +6 -5
  83. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.js.map +1 -1
  84. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.d.ts +15 -1
  85. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
  86. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.d.ts +2 -1
  87. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js +66 -71
  88. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js.map +1 -1
  89. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +167 -2
  90. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  91. package/dist/dist-esm/calling-stateful-client/src/CallContext.d.ts +22 -2
  92. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +203 -25
  93. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  94. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js +7 -8
  95. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js.map +1 -1
  96. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js +150 -84
  97. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js.map +1 -1
  98. package/dist/dist-esm/calling-stateful-client/src/CallIdHistory.js.map +1 -1
  99. package/dist/dist-esm/calling-stateful-client/src/CallIdRef.js.map +1 -1
  100. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.d.ts +7 -1
  101. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +50 -16
  102. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  103. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js.map +1 -1
  104. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.d.ts +16 -1
  105. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.js +38 -2
  106. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.js.map +1 -1
  107. package/dist/dist-esm/calling-stateful-client/src/Converter.d.ts +6 -1
  108. package/dist/dist-esm/calling-stateful-client/src/Converter.js +35 -18
  109. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  110. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js +51 -57
  111. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js.map +1 -1
  112. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js +14 -16
  113. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js.map +1 -1
  114. package/dist/dist-esm/calling-stateful-client/src/IncomingCallSubscriber.js.map +1 -1
  115. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js +3 -15
  116. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js.map +1 -1
  117. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.d.ts +17 -0
  118. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.js +36 -0
  119. package/dist/dist-esm/calling-stateful-client/src/LocalRecordingSubscriber.js.map +1 -0
  120. package/dist/dist-esm/calling-stateful-client/src/LocalVideoStreamVideoEffectsSubscriber.js.map +1 -1
  121. package/dist/dist-esm/calling-stateful-client/src/Logger.js.map +1 -1
  122. package/dist/dist-esm/calling-stateful-client/src/OptimalVideoCountSubscriber.js +1 -4
  123. package/dist/dist-esm/calling-stateful-client/src/OptimalVideoCountSubscriber.js.map +1 -1
  124. package/dist/dist-esm/calling-stateful-client/src/PPTLiveSubscriber.d.ts +18 -0
  125. package/dist/dist-esm/calling-stateful-client/src/PPTLiveSubscriber.js +49 -0
  126. package/dist/dist-esm/calling-stateful-client/src/PPTLiveSubscriber.js.map +1 -0
  127. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js.map +1 -1
  128. package/dist/dist-esm/calling-stateful-client/src/RaiseHandSubscriber.js +0 -2
  129. package/dist/dist-esm/calling-stateful-client/src/RaiseHandSubscriber.js.map +1 -1
  130. package/dist/dist-esm/calling-stateful-client/src/ReactionSubscriber.d.ts +16 -0
  131. package/dist/dist-esm/calling-stateful-client/src/ReactionSubscriber.js +24 -0
  132. package/dist/dist-esm/calling-stateful-client/src/ReactionSubscriber.js.map +1 -0
  133. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.d.ts +1 -0
  134. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js +11 -0
  135. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js.map +1 -1
  136. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.d.ts +1 -0
  137. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js +8 -0
  138. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js.map +1 -1
  139. package/dist/dist-esm/calling-stateful-client/src/SpotlightSubscriber.d.ts +16 -0
  140. package/dist/dist-esm/calling-stateful-client/src/SpotlightSubscriber.js +30 -0
  141. package/dist/dist-esm/calling-stateful-client/src/SpotlightSubscriber.js.map +1 -0
  142. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts +26 -1
  143. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js +69 -40
  144. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
  145. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js +32 -24
  146. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js.map +1 -1
  147. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js +8 -11
  148. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js.map +1 -1
  149. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.d.ts +19 -0
  150. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js +91 -0
  151. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js.map +1 -0
  152. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.d.ts +23 -0
  153. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js +48 -0
  154. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js.map +1 -0
  155. package/dist/dist-esm/calling-stateful-client/src/TranscriptionSubscriber.js.map +1 -1
  156. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.d.ts +2 -2
  157. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js +8 -0
  158. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js.map +1 -1
  159. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js +3 -3
  160. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js.map +1 -1
  161. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js +6 -7
  162. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js.map +1 -1
  163. package/dist/dist-esm/calling-stateful-client/src/index-public.d.ts +6 -0
  164. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  165. package/dist/dist-esm/calling-stateful-client/src/index.js.map +1 -1
  166. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js +4 -4
  167. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js.map +1 -1
  168. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js +3 -3
  169. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js.map +1 -1
  170. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js +15 -15
  171. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js.map +1 -1
  172. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.d.ts +5 -1
  173. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js +3 -10
  174. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js.map +1 -1
  175. package/dist/dist-esm/chat-component-bindings/src/hooks/useHandlers.js.map +1 -1
  176. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.d.ts +2 -1
  177. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js +5 -0
  178. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  179. package/dist/dist-esm/chat-component-bindings/src/hooks/useSelector.d.ts +1 -1
  180. package/dist/dist-esm/chat-component-bindings/src/hooks/useSelector.js.map +1 -1
  181. package/dist/dist-esm/chat-component-bindings/src/index.js.map +1 -1
  182. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +123 -18
  183. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
  184. package/dist/dist-esm/chat-component-bindings/src/providers/ChatClientProvider.js.map +1 -1
  185. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js +1 -1
  186. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js.map +1 -1
  187. package/dist/dist-esm/chat-component-bindings/src/sendBoxSelector.js.map +1 -1
  188. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js +3 -7
  189. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js.map +1 -1
  190. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js +3 -1
  191. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js.map +1 -1
  192. package/dist/dist-esm/chat-component-bindings/src/utils/constants.js.map +1 -1
  193. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js +10 -3
  194. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js.map +1 -1
  195. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.d.ts +1 -1
  196. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js.map +1 -1
  197. package/dist/dist-esm/chat-stateful-client/src/ChatContext.d.ts +1 -1
  198. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js +18 -33
  199. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js.map +1 -1
  200. package/dist/dist-esm/chat-stateful-client/src/Constants.js.map +1 -1
  201. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js +8 -12
  202. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js.map +1 -1
  203. package/dist/dist-esm/chat-stateful-client/src/Logger.js.map +1 -1
  204. package/dist/dist-esm/chat-stateful-client/src/ResourceDownloadQueue.js +5 -19
  205. package/dist/dist-esm/chat-stateful-client/src/ResourceDownloadQueue.js.map +1 -1
  206. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js +58 -71
  207. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js.map +1 -1
  208. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js +114 -128
  209. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js.map +1 -1
  210. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js +7 -1
  211. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js.map +1 -1
  212. package/dist/dist-esm/chat-stateful-client/src/index.js.map +1 -1
  213. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedIterator.d.ts +2 -2
  214. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedIterator.js.map +1 -1
  215. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListMessages.js.map +1 -1
  216. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListParticipants.js.map +1 -1
  217. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListReadReceipts.js.map +1 -1
  218. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListThreads.js.map +1 -1
  219. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.d.ts +1 -0
  220. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.js.map +1 -1
  221. package/dist/dist-esm/communication-react/src/index.d.ts +28 -0
  222. package/dist/dist-esm/communication-react/src/index.js +14 -2
  223. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  224. package/dist/dist-esm/communication-react/src/mergedHooks.d.ts +1 -1
  225. package/dist/dist-esm/communication-react/src/mergedHooks.js.map +1 -1
  226. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js +3 -6
  227. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js.map +1 -1
  228. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerContext.js.map +1 -1
  229. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerMessage.js.map +1 -1
  230. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js +4 -10
  231. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js.map +1 -1
  232. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js +1 -1
  233. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js.map +1 -1
  234. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js +1 -1
  235. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js.map +1 -1
  236. package/dist/dist-esm/react-components/src/components/Announcer.js.map +1 -1
  237. package/dist/dist-esm/react-components/src/components/CameraButton.js +8 -19
  238. package/dist/dist-esm/react-components/src/components/CameraButton.js.map +1 -1
  239. package/dist/dist-esm/react-components/src/components/Caption.js +2 -2
  240. package/dist/dist-esm/react-components/src/components/Caption.js.map +1 -1
  241. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js +9 -8
  242. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js.map +1 -1
  243. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js +39 -20
  244. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js.map +1 -1
  245. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js +2 -5
  246. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js.map +1 -1
  247. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js +37 -22
  248. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js.map +1 -1
  249. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.d.ts +6 -1
  250. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js +49 -26
  251. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js.map +1 -1
  252. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsRichTextEditBox.d.ts +18 -0
  253. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsRichTextEditBox.js +102 -0
  254. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsRichTextEditBox.js.map +1 -0
  255. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.d.ts +8 -1
  256. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.js +40 -25
  257. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentWrapper.js.map +1 -1
  258. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.d.ts +11 -0
  259. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +58 -31
  260. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
  261. package/dist/dist-esm/react-components/src/components/ChatMessage/DefaultSystemMessage.js +9 -5
  262. package/dist/dist-esm/react-components/src/components/ChatMessage/DefaultSystemMessage.js.map +1 -1
  263. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.d.ts +10 -0
  264. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js +15 -0
  265. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js.map +1 -0
  266. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.d.ts +46 -0
  267. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js +86 -0
  268. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/ChatMessageComponentAsMessageBubble.js.map +1 -0
  269. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.d.ts +22 -0
  270. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.js +117 -0
  271. package/dist/dist-esm/react-components/src/components/ChatMessage/MessageComponents/FluentChatMessageComponent.js.map +1 -0
  272. package/dist/dist-esm/react-components/src/components/ChatMessage/{ChatMessageComponent.d.ts → MyMessageComponents/ChatMyMessageComponent.d.ts} +20 -8
  273. package/dist/dist-esm/react-components/src/components/ChatMessage/{ChatMessageComponent.js → MyMessageComponents/ChatMyMessageComponent.js} +18 -10
  274. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponent.js.map +1 -0
  275. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.d.ts +62 -0
  276. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js +158 -0
  277. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/ChatMyMessageComponentAsMessageBubble.js.map +1 -0
  278. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/FluentChatMyMessageComponent.d.ts +12 -0
  279. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/FluentChatMyMessageComponent.js +123 -0
  280. package/dist/dist-esm/react-components/src/components/ChatMessage/MyMessageComponents/FluentChatMyMessageComponent.js.map +1 -0
  281. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js +18 -18
  282. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js.map +1 -1
  283. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js +7 -4
  284. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js.map +1 -1
  285. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js +2 -2
  286. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js.map +1 -1
  287. package/dist/dist-esm/react-components/src/components/ComplianceBanner/Utils.js.map +1 -1
  288. package/dist/dist-esm/react-components/src/components/ComplianceBanner/index.js.map +1 -1
  289. package/dist/dist-esm/react-components/src/components/ComplianceBanner/types.js.map +1 -1
  290. package/dist/dist-esm/react-components/src/components/ControlBar.js +10 -14
  291. package/dist/dist-esm/react-components/src/components/ControlBar.js.map +1 -1
  292. package/dist/dist-esm/react-components/src/components/ControlBarButton.js +14 -4
  293. package/dist/dist-esm/react-components/src/components/ControlBarButton.js.map +1 -1
  294. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js +3 -14
  295. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js.map +1 -1
  296. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.d.ts +69 -0
  297. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js +37 -0
  298. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js.map +1 -0
  299. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.d.ts +75 -0
  300. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js +58 -0
  301. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js.map +1 -0
  302. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js +5 -8
  303. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js.map +1 -1
  304. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.d.ts +105 -0
  305. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js +86 -0
  306. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js.map +1 -0
  307. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.d.ts +86 -0
  308. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js +31 -0
  309. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js.map +1 -0
  310. package/dist/dist-esm/react-components/src/components/DevicesButton.js +19 -27
  311. package/dist/dist-esm/react-components/src/components/DevicesButton.js.map +1 -1
  312. package/dist/dist-esm/react-components/src/components/Dialpad/DTMFToneGenerator.js +12 -48
  313. package/dist/dist-esm/react-components/src/components/Dialpad/DTMFToneGenerator.js.map +1 -1
  314. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +45 -51
  315. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
  316. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js +4 -4
  317. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js.map +1 -1
  318. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js +2 -6
  319. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js.map +1 -1
  320. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js +20 -9
  321. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js.map +1 -1
  322. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.d.ts +4 -0
  323. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js +11 -23
  324. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js.map +1 -1
  325. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js +6 -4
  326. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js.map +1 -1
  327. package/dist/dist-esm/react-components/src/components/Drawer/ReactionDrawerMenuItem.d.ts +29 -0
  328. package/dist/dist-esm/react-components/src/components/Drawer/ReactionDrawerMenuItem.js +60 -0
  329. package/dist/dist-esm/react-components/src/components/Drawer/ReactionDrawerMenuItem.js.map +1 -0
  330. package/dist/dist-esm/react-components/src/components/Drawer/index.d.ts +2 -0
  331. package/dist/dist-esm/react-components/src/components/Drawer/index.js +2 -0
  332. package/dist/dist-esm/react-components/src/components/Drawer/index.js.map +1 -1
  333. package/dist/dist-esm/react-components/src/components/EndCallButton.js +3 -7
  334. package/dist/dist-esm/react-components/src/components/EndCallButton.js.map +1 -1
  335. package/dist/dist-esm/react-components/src/components/ErrorBar.d.ts +4 -0
  336. package/dist/dist-esm/react-components/src/components/ErrorBar.js +9 -5
  337. package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
  338. package/dist/dist-esm/react-components/src/components/FileCard.js +3 -4
  339. package/dist/dist-esm/react-components/src/components/FileCard.js.map +1 -1
  340. package/dist/dist-esm/react-components/src/components/FileCardGroup.js +1 -1
  341. package/dist/dist-esm/react-components/src/components/FileCardGroup.js.map +1 -1
  342. package/dist/dist-esm/react-components/src/components/FileDownloadCards.d.ts +3 -1
  343. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js +22 -14
  344. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js.map +1 -1
  345. package/dist/dist-esm/react-components/src/components/FileUploadCards.js +8 -7
  346. package/dist/dist-esm/react-components/src/components/FileUploadCards.js.map +1 -1
  347. package/dist/dist-esm/react-components/src/components/GridLayout.js +37 -37
  348. package/dist/dist-esm/react-components/src/components/GridLayout.js.map +1 -1
  349. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js +2 -2
  350. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js.map +1 -1
  351. package/dist/dist-esm/react-components/src/components/HoldButton.d.ts +49 -0
  352. package/dist/dist-esm/react-components/src/components/HoldButton.js +25 -0
  353. package/dist/dist-esm/react-components/src/components/HoldButton.js.map +1 -0
  354. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js +7 -9
  355. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js.map +1 -1
  356. package/dist/dist-esm/react-components/src/components/ImageOverlay.js +13 -25
  357. package/dist/dist-esm/react-components/src/components/ImageOverlay.js.map +1 -1
  358. package/dist/dist-esm/react-components/src/components/InputBoxButton.js +3 -10
  359. package/dist/dist-esm/react-components/src/components/InputBoxButton.js.map +1 -1
  360. package/dist/dist-esm/react-components/src/components/InputBoxComponent.d.ts +2 -0
  361. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js +23 -7
  362. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js.map +1 -1
  363. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js +3 -5
  364. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js.map +1 -1
  365. package/dist/dist-esm/react-components/src/components/LocalVideoTile.d.ts +13 -0
  366. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js +136 -18
  367. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
  368. package/dist/dist-esm/react-components/src/components/MentionPopover.d.ts +121 -0
  369. package/dist/dist-esm/react-components/src/components/MentionPopover.js +126 -0
  370. package/dist/dist-esm/react-components/src/components/MentionPopover.js.map +1 -0
  371. package/dist/dist-esm/react-components/src/components/MessageStatusIcon.js +2 -2
  372. package/dist/dist-esm/react-components/src/components/MessageStatusIcon.js.map +1 -1
  373. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js.map +1 -1
  374. package/dist/dist-esm/react-components/src/components/MessageStatusIndicatorInternal.js +20 -33
  375. package/dist/dist-esm/react-components/src/components/MessageStatusIndicatorInternal.js.map +1 -1
  376. package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +40 -2
  377. package/dist/dist-esm/react-components/src/components/MessageThread.js +87 -46
  378. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  379. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js +17 -14
  380. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js.map +1 -1
  381. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js +94 -101
  382. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js.map +1 -1
  383. package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts +15 -0
  384. package/dist/dist-esm/react-components/src/components/ParticipantItem.js +17 -20
  385. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  386. package/dist/dist-esm/react-components/src/components/ParticipantList.d.ts +15 -0
  387. package/dist/dist-esm/react-components/src/components/ParticipantList.js +64 -39
  388. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  389. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js +46 -32
  390. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js.map +1 -1
  391. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js +3 -3
  392. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js.map +1 -1
  393. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js +3 -3
  394. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js.map +1 -1
  395. package/dist/dist-esm/react-components/src/components/RaiseHandButton.js +6 -19
  396. package/dist/dist-esm/react-components/src/components/RaiseHandButton.js.map +1 -1
  397. package/dist/dist-esm/react-components/src/components/ReactionButton.d.ts +56 -0
  398. package/dist/dist-esm/react-components/src/components/ReactionButton.js +89 -0
  399. package/dist/dist-esm/react-components/src/components/ReactionButton.js.map +1 -0
  400. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.d.ts +7 -0
  401. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +54 -13
  402. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  403. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js +2 -2
  404. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js.map +1 -1
  405. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js +2 -2
  406. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js.map +1 -1
  407. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.d.ts +41 -0
  408. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.js +83 -0
  409. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextEditor.js.map +1 -0
  410. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.d.ts +29 -0
  411. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.js +60 -0
  412. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextInputBoxComponent.js.map +1 -0
  413. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextRibbonButtons.d.ts +12 -0
  414. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextRibbonButtons.js +86 -0
  415. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextRibbonButtons.js.map +1 -0
  416. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.d.ts +92 -0
  417. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.js +129 -0
  418. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBox.js.map +1 -0
  419. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.d.ts +16 -0
  420. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.js +68 -0
  421. package/dist/dist-esm/react-components/src/components/RichTextEditor/RichTextSendBoxErrors.js.map +1 -0
  422. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js +6 -14
  423. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js.map +1 -1
  424. package/dist/dist-esm/react-components/src/components/SendBox.d.ts +42 -0
  425. package/dist/dist-esm/react-components/src/components/SendBox.js +71 -12
  426. package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
  427. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js +2 -2
  428. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js.map +1 -1
  429. package/dist/dist-esm/react-components/src/components/SendBoxErrors.d.ts +14 -0
  430. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js +18 -0
  431. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js.map +1 -0
  432. package/dist/dist-esm/react-components/src/components/StartCaptionsButton.js +2 -4
  433. package/dist/dist-esm/react-components/src/components/StartCaptionsButton.js.map +1 -1
  434. package/dist/dist-esm/react-components/src/components/StreamMedia.js +3 -3
  435. package/dist/dist-esm/react-components/src/components/StreamMedia.js.map +1 -1
  436. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.d.ts +64 -0
  437. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.js +55 -0
  438. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.js.map +1 -0
  439. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.styles.d.ts +18 -0
  440. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.styles.js +57 -0
  441. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.styles.js.map +1 -0
  442. package/dist/dist-esm/react-components/src/components/Survey/SurveyTypes.d.ts +141 -0
  443. package/dist/dist-esm/react-components/src/components/Survey/SurveyTypes.js +4 -0
  444. package/dist/dist-esm/react-components/src/components/Survey/SurveyTypes.js.map +1 -0
  445. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.d.ts +61 -0
  446. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.js +128 -0
  447. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.js.map +1 -0
  448. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.d.ts +22 -0
  449. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.js +55 -0
  450. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.js.map +1 -0
  451. package/dist/dist-esm/react-components/src/components/SystemMessage.js +2 -4
  452. package/dist/dist-esm/react-components/src/components/SystemMessage.js.map +1 -1
  453. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.d.ts +24 -0
  454. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js +595 -0
  455. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js.map +1 -0
  456. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.d.ts +152 -0
  457. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js +822 -0
  458. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js.map +1 -0
  459. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js +10 -10
  460. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js.map +1 -1
  461. package/dist/dist-esm/react-components/src/components/TypingIndicator.js +9 -6
  462. package/dist/dist-esm/react-components/src/components/TypingIndicator.js.map +1 -1
  463. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js +3 -1
  464. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js.map +1 -1
  465. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js +3 -1
  466. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js.map +1 -1
  467. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js +20 -0
  468. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js.map +1 -1
  469. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js +3 -1
  470. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js.map +1 -1
  471. package/dist/dist-esm/react-components/src/components/VerticalGallery.js +16 -42
  472. package/dist/dist-esm/react-components/src/components/VerticalGallery.js.map +1 -1
  473. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js +3 -1
  474. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js.map +1 -1
  475. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js +8 -12
  476. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js.map +1 -1
  477. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js +6 -12
  478. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js.map +1 -1
  479. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js +6 -2
  480. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js.map +1 -1
  481. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js +29 -22
  482. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js.map +1 -1
  483. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js +14 -10
  484. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js.map +1 -1
  485. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js +55 -35
  486. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js.map +1 -1
  487. package/dist/dist-esm/react-components/src/components/VideoGallery/FocusContentLayout.js +2 -2
  488. package/dist/dist-esm/react-components/src/components/VideoGallery/FocusContentLayout.js.map +1 -1
  489. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.d.ts +17 -0
  490. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js +111 -0
  491. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js.map +1 -0
  492. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.d.ts +4 -0
  493. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.js.map +1 -1
  494. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js +7 -7
  495. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js.map +1 -1
  496. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js +9 -16
  497. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js.map +1 -1
  498. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.d.ts +1 -0
  499. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js +15 -7
  500. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js.map +1 -1
  501. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js +2 -4
  502. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js.map +1 -1
  503. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.js +47 -30
  504. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.js.map +1 -1
  505. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js +1 -6
  506. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js.map +1 -1
  507. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js +9 -34
  508. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js.map +1 -1
  509. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js +2 -11
  510. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js.map +1 -1
  511. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/Layout.styles.js.map +1 -1
  512. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/LocalScreenShare.styles.js.map +1 -1
  513. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteScreenShare.styles.js.map +1 -1
  514. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteVideoTile.styles.js.map +1 -1
  515. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js +1 -3
  516. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js.map +1 -1
  517. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js +10 -11
  518. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js.map +1 -1
  519. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js +22 -28
  520. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js.map +1 -1
  521. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js +10 -5
  522. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js.map +1 -1
  523. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.d.ts +11 -0
  524. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js +72 -34
  525. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js.map +1 -1
  526. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/OverflowGalleryUtils.js.map +1 -1
  527. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.d.ts +8 -1
  528. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +124 -85
  529. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  530. package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts +43 -1
  531. package/dist/dist-esm/react-components/src/components/VideoGallery.js +176 -34
  532. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  533. package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +23 -0
  534. package/dist/dist-esm/react-components/src/components/VideoTile.js +96 -63
  535. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  536. package/dist/dist-esm/react-components/src/components/assets/RaisedHandIcon.js +2 -4
  537. package/dist/dist-esm/react-components/src/components/assets/RaisedHandIcon.js.map +1 -1
  538. package/dist/dist-esm/react-components/src/components/index.d.ts +26 -0
  539. package/dist/dist-esm/react-components/src/components/index.js +23 -2
  540. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  541. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.d.ts +58 -0
  542. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js +144 -0
  543. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js.map +1 -0
  544. package/dist/dist-esm/react-components/src/components/styles/Captions.style.js.map +1 -1
  545. package/dist/dist-esm/react-components/src/components/styles/CaptionsSettingsModal.styles.js.map +1 -1
  546. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js +2 -6
  547. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js.map +1 -1
  548. package/dist/dist-esm/react-components/src/components/styles/Common.style.js.map +1 -1
  549. package/dist/dist-esm/react-components/src/components/styles/ControlBar.styles.js.map +1 -1
  550. package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.js.map +1 -1
  551. package/dist/dist-esm/react-components/src/components/styles/EditBox.styles.js.map +1 -1
  552. package/dist/dist-esm/react-components/src/components/styles/GridLayout.styles.js.map +1 -1
  553. package/dist/dist-esm/react-components/src/components/styles/HorizontalGallery.styles.js.map +1 -1
  554. package/dist/dist-esm/react-components/src/components/styles/IconButton.styles.js.map +1 -1
  555. package/dist/dist-esm/react-components/src/components/styles/ImageOverlay.style.js +2 -6
  556. package/dist/dist-esm/react-components/src/components/styles/ImageOverlay.style.js.map +1 -1
  557. package/dist/dist-esm/react-components/src/components/styles/InputBoxButton.style.js.map +1 -1
  558. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js +2 -5
  559. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js.map +1 -1
  560. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.d.ts +26 -0
  561. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js +69 -0
  562. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js.map +1 -0
  563. package/dist/dist-esm/react-components/src/components/styles/MessageStatusIndicator.styles.js.map +1 -1
  564. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.d.ts +2 -2
  565. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js +4 -10
  566. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js.map +1 -1
  567. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.d.ts +0 -1
  568. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js +2 -3
  569. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js.map +1 -1
  570. package/dist/dist-esm/react-components/src/components/styles/ParticipantList.styles.js.map +1 -1
  571. package/dist/dist-esm/react-components/src/components/styles/ReactionButton.styles.d.ts +36 -0
  572. package/dist/dist-esm/react-components/src/components/styles/ReactionButton.styles.js +120 -0
  573. package/dist/dist-esm/react-components/src/components/styles/ReactionButton.styles.js.map +1 -0
  574. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.d.ts +54 -0
  575. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js +156 -0
  576. package/dist/dist-esm/react-components/src/components/styles/RichTextEditor.styles.js.map +1 -0
  577. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.d.ts +17 -0
  578. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.js +30 -0
  579. package/dist/dist-esm/react-components/src/components/styles/RichTextInputBoxComponent.styles.js.map +1 -0
  580. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.d.ts +1 -0
  581. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js +5 -12
  582. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js.map +1 -1
  583. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.d.ts +38 -0
  584. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js +92 -0
  585. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js.map +1 -0
  586. package/dist/dist-esm/react-components/src/components/styles/Stack.style.d.ts +5 -0
  587. package/dist/dist-esm/react-components/src/components/styles/Stack.style.js +32 -0
  588. package/dist/dist-esm/react-components/src/components/styles/Stack.style.js.map +1 -0
  589. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js +3 -6
  590. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js.map +1 -1
  591. package/dist/dist-esm/react-components/src/components/styles/SystemMessage.styles.js.map +1 -1
  592. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js +1 -2
  593. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js.map +1 -1
  594. package/dist/dist-esm/react-components/src/components/styles/TypingIndicator.styles.js.map +1 -1
  595. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.d.ts +26 -0
  596. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js +67 -0
  597. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js.map +1 -0
  598. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js +1 -2
  599. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js.map +1 -1
  600. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js +5 -19
  601. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js.map +1 -1
  602. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.d.ts +11 -0
  603. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js +37 -0
  604. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js.map +1 -1
  605. package/dist/dist-esm/react-components/src/components/styles/v8StyleShim.js.map +1 -1
  606. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.d.ts +8 -1
  607. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.js +20 -3
  608. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentAsEditBoxUtils.js.map +1 -1
  609. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.d.ts +29 -0
  610. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.js +88 -0
  611. package/dist/dist-esm/react-components/src/components/utils/ChatMessageComponentUtils.js.map +1 -0
  612. package/dist/dist-esm/react-components/src/components/utils/Datetime.js +1 -4
  613. package/dist/dist-esm/react-components/src/components/utils/Datetime.js.map +1 -1
  614. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.d.ts +9 -0
  615. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js +15 -0
  616. package/dist/dist-esm/react-components/src/components/utils/SendBoxUtils.js.map +1 -1
  617. package/dist/dist-esm/react-components/src/components/utils/common.js +4 -0
  618. package/dist/dist-esm/react-components/src/components/utils/common.js.map +1 -1
  619. package/dist/dist-esm/react-components/src/components/utils/delay.js.map +1 -1
  620. package/dist/dist-esm/react-components/src/components/utils/formatPhoneNumber.js.map +1 -1
  621. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.d.ts +2 -1
  622. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js +4 -7
  623. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js.map +1 -1
  624. package/dist/dist-esm/react-components/src/components/utils/keyboardNavigation.js.map +1 -1
  625. package/dist/dist-esm/react-components/src/components/utils/merge.d.ts +7 -0
  626. package/dist/dist-esm/react-components/src/components/utils/merge.js +16 -0
  627. package/dist/dist-esm/react-components/src/components/utils/merge.js.map +1 -0
  628. package/dist/dist-esm/react-components/src/components/utils/overFlowGalleriesUtils.js.map +1 -1
  629. package/dist/dist-esm/react-components/src/components/utils/responsive.js +2 -2
  630. package/dist/dist-esm/react-components/src/components/utils/responsive.js.map +1 -1
  631. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js +10 -1
  632. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js.map +1 -1
  633. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js +1 -3
  634. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js.map +1 -1
  635. package/dist/dist-esm/react-components/src/components/utils.js +13 -10
  636. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  637. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.d.ts +2 -3
  638. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js +9 -7
  639. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js.map +1 -1
  640. package/dist/dist-esm/react-components/src/gallery/index.js.map +1 -1
  641. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.d.ts +4 -0
  642. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js +5 -3
  643. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js.map +1 -1
  644. package/dist/dist-esm/react-components/src/identifiers/index.js.map +1 -1
  645. package/dist/dist-esm/react-components/src/index.d.ts +6 -0
  646. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  647. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +66 -0
  648. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  649. package/dist/dist-esm/react-components/src/localization/index.js.map +1 -1
  650. package/dist/dist-esm/react-components/src/localization/locales/ar-SA/ComponentLocale.js +1 -3
  651. package/dist/dist-esm/react-components/src/localization/locales/ar-SA/ComponentLocale.js.map +1 -1
  652. package/dist/dist-esm/react-components/src/localization/locales/cs-CZ/ComponentLocale.js +1 -3
  653. package/dist/dist-esm/react-components/src/localization/locales/cs-CZ/ComponentLocale.js.map +1 -1
  654. package/dist/dist-esm/react-components/src/localization/locales/de-DE/ComponentLocale.js +1 -3
  655. package/dist/dist-esm/react-components/src/localization/locales/de-DE/ComponentLocale.js.map +1 -1
  656. package/dist/dist-esm/react-components/src/localization/locales/en-GB/ComponentLocale.js +1 -3
  657. package/dist/dist-esm/react-components/src/localization/locales/en-GB/ComponentLocale.js.map +1 -1
  658. package/dist/dist-esm/react-components/src/localization/locales/es-ES/ComponentLocale.js +1 -3
  659. package/dist/dist-esm/react-components/src/localization/locales/es-ES/ComponentLocale.js.map +1 -1
  660. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/ComponentLocale.js +1 -3
  661. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/ComponentLocale.js.map +1 -1
  662. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/ComponentLocale.js +1 -3
  663. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/ComponentLocale.js.map +1 -1
  664. package/dist/dist-esm/react-components/src/localization/locales/he-IL/ComponentLocale.js +1 -3
  665. package/dist/dist-esm/react-components/src/localization/locales/he-IL/ComponentLocale.js.map +1 -1
  666. package/dist/dist-esm/react-components/src/localization/locales/index.js +1 -3
  667. package/dist/dist-esm/react-components/src/localization/locales/index.js.map +1 -1
  668. package/dist/dist-esm/react-components/src/localization/locales/it-IT/ComponentLocale.js +1 -3
  669. package/dist/dist-esm/react-components/src/localization/locales/it-IT/ComponentLocale.js.map +1 -1
  670. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/ComponentLocale.js +1 -3
  671. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/ComponentLocale.js.map +1 -1
  672. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/ComponentLocale.js +1 -3
  673. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/ComponentLocale.js.map +1 -1
  674. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/ComponentLocale.js +1 -3
  675. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/ComponentLocale.js.map +1 -1
  676. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/ComponentLocale.js +1 -3
  677. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/ComponentLocale.js.map +1 -1
  678. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/ComponentLocale.js +1 -3
  679. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/ComponentLocale.js.map +1 -1
  680. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/ComponentLocale.js +1 -3
  681. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/ComponentLocale.js.map +1 -1
  682. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/ComponentLocale.js +1 -3
  683. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/ComponentLocale.js.map +1 -1
  684. package/dist/dist-esm/react-components/src/localization/locales/sv-SE/ComponentLocale.js +1 -3
  685. package/dist/dist-esm/react-components/src/localization/locales/sv-SE/ComponentLocale.js.map +1 -1
  686. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/ComponentLocale.js +1 -3
  687. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/ComponentLocale.js.map +1 -1
  688. package/dist/dist-esm/react-components/src/localization/locales/utils.js +1 -1
  689. package/dist/dist-esm/react-components/src/localization/locales/utils.js.map +1 -1
  690. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/ComponentLocale.js +1 -3
  691. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/ComponentLocale.js.map +1 -1
  692. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/ComponentLocale.js +1 -3
  693. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/ComponentLocale.js.map +1 -1
  694. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js +8 -10
  695. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js.map +1 -1
  696. package/dist/dist-esm/react-components/src/theming/FluentV9ThemeProvider.js +1 -1
  697. package/dist/dist-esm/react-components/src/theming/FluentV9ThemeProvider.js.map +1 -1
  698. package/dist/dist-esm/react-components/src/theming/generateTheme.js +15 -1
  699. package/dist/dist-esm/react-components/src/theming/generateTheme.js.map +1 -1
  700. package/dist/dist-esm/react-components/src/theming/icons.d.ts +30 -0
  701. package/dist/dist-esm/react-components/src/theming/icons.js +153 -18
  702. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  703. package/dist/dist-esm/react-components/src/theming/icons.styles.d.ts +6 -0
  704. package/dist/dist-esm/react-components/src/theming/icons.styles.js +25 -0
  705. package/dist/dist-esm/react-components/src/theming/icons.styles.js.map +1 -0
  706. package/dist/dist-esm/react-components/src/theming/index.js.map +1 -1
  707. package/dist/dist-esm/react-components/src/theming/themeDuplicates.js.map +1 -1
  708. package/dist/dist-esm/react-components/src/theming/themeUtils.js.map +1 -1
  709. package/dist/dist-esm/react-components/src/theming/themes.d.ts +6 -0
  710. package/dist/dist-esm/react-components/src/theming/themes.js +10 -2
  711. package/dist/dist-esm/react-components/src/theming/themes.js.map +1 -1
  712. package/dist/dist-esm/react-components/src/theming/v9ThemeShim.js +1 -7
  713. package/dist/dist-esm/react-components/src/theming/v9ThemeShim.js.map +1 -1
  714. package/dist/dist-esm/react-components/src/types/CallSurveyImprovementSuggestions.js.map +1 -1
  715. package/dist/dist-esm/react-components/src/types/CaptionsAvailableLanguageStrings.js.map +1 -1
  716. package/dist/dist-esm/react-components/src/types/ChatMessage.d.ts +27 -1
  717. package/dist/dist-esm/react-components/src/types/ChatMessage.js.map +1 -1
  718. package/dist/dist-esm/react-components/src/types/CommunicationParticipant.js.map +1 -1
  719. package/dist/dist-esm/react-components/src/types/ComponentSlotStyle.js.map +1 -1
  720. package/dist/dist-esm/react-components/src/types/CustomStylesProps.js.map +1 -1
  721. package/dist/dist-esm/react-components/src/types/OnRender.d.ts +8 -0
  722. package/dist/dist-esm/react-components/src/types/OnRender.js.map +1 -1
  723. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.d.ts +34 -0
  724. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js.map +1 -1
  725. package/dist/dist-esm/react-components/src/types/ReactionTypes.d.ts +44 -1
  726. package/dist/dist-esm/react-components/src/types/ReactionTypes.js +2 -1
  727. package/dist/dist-esm/react-components/src/types/ReactionTypes.js.map +1 -1
  728. package/dist/dist-esm/react-components/src/types/ReadReceiptsBySenderId.js.map +1 -1
  729. package/dist/dist-esm/react-components/src/types/SurveyIssues.js.map +1 -1
  730. package/dist/dist-esm/react-components/src/types/SurveyIssuesHeadingStrings.js.map +1 -1
  731. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.d.ts +22 -0
  732. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js +2 -0
  733. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
  734. package/dist/dist-esm/react-components/src/types/index.js.map +1 -1
  735. package/dist/dist-esm/react-composites/src/Logger.js.map +1 -1
  736. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +118 -0
  737. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +73 -31
  738. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  739. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +210 -0
  740. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  741. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +97 -8
  742. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +400 -83
  743. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  744. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +145 -2
  745. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js +7 -1
  746. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  747. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapterProvider.js.map +1 -1
  748. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallingSoundSubscriber.js +8 -3
  749. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallingSoundSubscriber.js.map +1 -1
  750. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/DiagnosticsForwarder.js.map +1 -1
  751. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js +1 -3
  752. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js.map +1 -1
  753. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/ParticipantSubcriber.js.map +1 -1
  754. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.d.ts +3 -2
  755. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js +16 -4
  756. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js.map +1 -1
  757. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.d.ts +6 -0
  758. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js +2 -0
  759. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js.map +1 -1
  760. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.d.ts +4 -0
  761. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +158 -30
  762. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  763. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts +1 -0
  764. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +83 -64
  765. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  766. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.d.ts +48 -0
  767. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js +210 -0
  768. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js.map +1 -0
  769. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js +10 -18
  770. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js.map +1 -1
  771. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.d.ts +2 -0
  772. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js +21 -0
  773. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js.map +1 -1
  774. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js +20 -2
  775. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js.map +1 -1
  776. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.d.ts +2 -0
  777. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js +21 -0
  778. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js.map +1 -1
  779. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js +5 -4
  780. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js.map +1 -1
  781. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.d.ts +12 -0
  782. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js +93 -0
  783. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js.map +1 -0
  784. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js +4 -4
  785. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js.map +1 -1
  786. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js +33 -24
  787. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js.map +1 -1
  788. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.d.ts +1 -0
  789. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js +63 -26
  790. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
  791. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js +26 -30
  792. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js.map +1 -1
  793. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.d.ts +4 -0
  794. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +83 -47
  795. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  796. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js +2 -2
  797. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js.map +1 -1
  798. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js +2 -2
  799. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js.map +1 -1
  800. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/Prompt.d.ts +73 -0
  801. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/Prompt.js +41 -0
  802. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/Prompt.js.map +1 -0
  803. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js +30 -11
  804. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js.map +1 -1
  805. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePaneProvider.js.map +1 -1
  806. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.d.ts +7 -0
  807. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js +119 -8
  808. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js.map +1 -1
  809. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js +13 -8
  810. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js.map +1 -1
  811. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js +1 -1
  812. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js.map +1 -1
  813. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SvgWithWordWrapping.js +3 -5
  814. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SvgWithWordWrapping.js.map +1 -1
  815. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js +9 -3
  816. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js.map +1 -1
  817. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js +19 -11
  818. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js.map +1 -1
  819. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js +5 -2
  820. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js.map +1 -1
  821. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js +7 -2
  822. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js.map +1 -1
  823. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js +5 -2
  824. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js.map +1 -1
  825. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.d.ts +8 -0
  826. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js +26 -0
  827. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js.map +1 -0
  828. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/RaiseHand.js +1 -9
  829. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/RaiseHand.js.map +1 -1
  830. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Reaction.d.ts +16 -0
  831. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Reaction.js +26 -0
  832. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Reaction.js.map +1 -0
  833. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js +3 -1
  834. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js.map +1 -1
  835. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.d.ts +2 -2
  836. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js +12 -8
  837. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js.map +1 -1
  838. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.d.ts +2 -1
  839. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +85 -16
  840. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  841. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.d.ts +2 -1
  842. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.js.map +1 -1
  843. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.d.ts +1 -1
  844. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js +1 -1
  845. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js.map +1 -1
  846. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.d.ts +6 -0
  847. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js +2 -0
  848. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
  849. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +31 -7
  850. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  851. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.d.ts +7 -0
  852. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +139 -22
  853. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  854. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/DtmfDialpadPage.js +5 -13
  855. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/DtmfDialpadPage.js.map +1 -1
  856. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.d.ts +24 -0
  857. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +34 -0
  858. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +1 -0
  859. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js +15 -7
  860. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js.map +1 -1
  861. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js +3 -3
  862. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js.map +1 -1
  863. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/SurveyPage.d.ts +56 -0
  864. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/SurveyPage.js +29 -0
  865. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/SurveyPage.js.map +1 -0
  866. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ThankYouForFeedbackPage.d.ts +14 -0
  867. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ThankYouForFeedbackPage.js +27 -0
  868. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ThankYouForFeedbackPage.js.map +1 -0
  869. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js +23 -23
  870. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js.map +1 -1
  871. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.d.ts +15 -0
  872. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js +54 -0
  873. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js.map +1 -0
  874. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.d.ts +2 -2
  875. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js +1 -1
  876. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js.map +1 -1
  877. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.js +2 -1
  878. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.js.map +1 -1
  879. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.d.ts +5 -0
  880. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +5 -1
  881. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
  882. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.d.ts +1 -1
  883. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.js.map +1 -1
  884. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.d.ts +1 -1
  885. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.js +1 -4
  886. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.js.map +1 -1
  887. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitySelector.d.ts +14 -0
  888. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitySelector.js +13 -0
  889. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitySelector.js.map +1 -0
  890. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.d.ts +1 -1
  891. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.js.map +1 -1
  892. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/deviceCountSelector.d.ts +1 -1
  893. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/deviceCountSelector.js.map +1 -1
  894. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.d.ts +2 -2
  895. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js +1 -1
  896. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js.map +1 -1
  897. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.d.ts +2 -2
  898. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js +11 -5
  899. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js.map +1 -1
  900. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.d.ts +4 -4
  901. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js +1 -1
  902. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js.map +1 -1
  903. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.d.ts +10 -10
  904. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js +1 -3
  905. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js.map +1 -1
  906. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.d.ts +2 -2
  907. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js +4 -4
  908. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js.map +1 -1
  909. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.d.ts +1 -1
  910. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js +1 -1
  911. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js.map +1 -1
  912. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.d.ts +5 -5
  913. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js +4 -4
  914. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js.map +1 -1
  915. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.d.ts +2 -2
  916. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js +1 -1
  917. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js.map +1 -1
  918. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.d.ts +5 -5
  919. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.js.map +1 -1
  920. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js +1 -1
  921. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js.map +1 -1
  922. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js +2 -6
  923. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js.map +1 -1
  924. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js +11 -11
  925. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js.map +1 -1
  926. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallControls.styles.js.map +1 -1
  927. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js.map +1 -1
  928. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/DtmfDialpadPage.styles.js.map +1 -1
  929. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js +1 -4
  930. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js.map +1 -1
  931. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.d.ts +32 -0
  932. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js +81 -0
  933. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js.map +1 -0
  934. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js +2 -9
  935. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js.map +1 -1
  936. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalDeviceSettings.styles.js.map +1 -1
  937. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js +1 -2
  938. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js.map +1 -1
  939. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NetworkReconnectTile.styles.js.map +1 -1
  940. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NoticePage.styles.js.map +1 -1
  941. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js +1 -2
  942. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js.map +1 -1
  943. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.js +6 -24
  944. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.js.map +1 -1
  945. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.d.ts +2 -2
  946. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.js.map +1 -1
  947. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CapabilityChangedNotificationTracking.js.map +1 -1
  948. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/ErrorTracking.js.map +1 -1
  949. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js +11 -13
  950. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js.map +1 -1
  951. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackCapabilityChangedNotifications.js +11 -10
  952. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackCapabilityChangedNotifications.js.map +1 -1
  953. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js +2 -2
  954. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js.map +1 -1
  955. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts +14 -2
  956. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +124 -21
  957. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  958. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/index.js.map +1 -1
  959. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/spotlightUtils.d.ts +16 -0
  960. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/spotlightUtils.js +136 -0
  961. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/spotlightUtils.js.map +1 -0
  962. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/timerUtils.js +2 -2
  963. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/timerUtils.js.map +1 -1
  964. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/useConsoleErrors.js.map +1 -1
  965. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +107 -1
  966. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +106 -29
  967. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  968. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.js +1 -1
  969. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.js.map +1 -1
  970. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.js +9 -7
  971. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.js.map +1 -1
  972. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.js +6 -9
  973. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.js.map +1 -1
  974. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.js +2 -2
  975. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.js.map +1 -1
  976. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.d.ts +32 -0
  977. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.js.map +1 -1
  978. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +34 -4
  979. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +162 -17
  980. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  981. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +82 -2
  982. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  983. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +16 -1
  984. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +61 -3
  985. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  986. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts +9 -0
  987. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js +31 -3
  988. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  989. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js +1 -1
  990. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js.map +1 -1
  991. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/hooks/useCallWithChatCompositeStrings.js.map +1 -1
  992. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.js.map +1 -1
  993. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js +1 -1
  994. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js.map +1 -1
  995. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.d.ts +30 -0
  996. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js +15 -2
  997. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js.map +1 -1
  998. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/styles/CallWithChatCompositeStyles.js.map +1 -1
  999. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.d.ts +34 -0
  1000. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js +10 -2
  1001. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js.map +1 -1
  1002. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js +3 -5
  1003. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js.map +1 -1
  1004. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +45 -29
  1005. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  1006. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.d.ts +18 -0
  1007. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js +18 -0
  1008. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +1 -0
  1009. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.d.ts +15 -0
  1010. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js +21 -0
  1011. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js.map +1 -0
  1012. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.d.ts +4 -0
  1013. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.js.map +1 -1
  1014. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +13 -1
  1015. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +98 -40
  1016. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  1017. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.d.ts +28 -0
  1018. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js +154 -1
  1019. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js.map +1 -1
  1020. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +13 -2
  1021. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  1022. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js +2 -0
  1023. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js.map +1 -1
  1024. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUpload.js.map +1 -1
  1025. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js +18 -6
  1026. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js.map +1 -1
  1027. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadHandler.js.map +1 -1
  1028. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js.map +1 -1
  1029. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.d.ts +2 -2
  1030. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js +1 -3
  1031. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js.map +1 -1
  1032. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js +10 -3
  1033. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js.map +1 -1
  1034. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/usePropsFor.js.map +1 -1
  1035. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.d.ts +6 -0
  1036. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js +11 -0
  1037. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js.map +1 -0
  1038. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.d.ts +4 -0
  1039. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js.map +1 -1
  1040. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.d.ts +12 -0
  1041. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js +15 -0
  1042. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js.map +1 -0
  1043. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.d.ts +27 -0
  1044. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js +12 -0
  1045. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js.map +1 -0
  1046. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js +2 -6
  1047. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js.map +1 -1
  1048. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.d.ts +5 -1
  1049. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js +17 -10
  1050. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js.map +1 -1
  1051. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.d.ts +22 -0
  1052. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js +105 -0
  1053. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js.map +1 -0
  1054. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.d.ts +17 -0
  1055. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js +32 -0
  1056. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js.map +1 -0
  1057. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.d.ts +5 -0
  1058. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js +10 -8
  1059. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js.map +1 -1
  1060. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js +5 -14
  1061. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js.map +1 -1
  1062. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.d.ts +22 -0
  1063. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js +60 -0
  1064. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js.map +1 -0
  1065. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.d.ts +15 -0
  1066. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js +61 -0
  1067. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js.map +1 -0
  1068. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.d.ts +1 -0
  1069. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.js +6 -8
  1070. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.js.map +1 -1
  1071. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.js +12 -16
  1072. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.js.map +1 -1
  1073. package/dist/dist-esm/react-composites/src/composites/common/CaptionsSettingsModal.js +1 -1
  1074. package/dist/dist-esm/react-composites/src/composites/common/CaptionsSettingsModal.js.map +1 -1
  1075. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js +1 -5
  1076. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js.map +1 -1
  1077. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.d.ts +3 -0
  1078. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +83 -32
  1079. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -1
  1080. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js +39 -37
  1081. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js.map +1 -1
  1082. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js +125 -64
  1083. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js.map +1 -1
  1084. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DtmfDialerButton.js +1 -1
  1085. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DtmfDialerButton.js.map +1 -1
  1086. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js +1 -1
  1087. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js.map +1 -1
  1088. package/dist/dist-esm/react-composites/src/composites/common/ConvertContextualMenuItemToDrawerMenuItem.js.map +1 -1
  1089. package/dist/dist-esm/react-composites/src/composites/common/Drawer/CaptionLanguageSettingsDrawer.js +5 -7
  1090. package/dist/dist-esm/react-composites/src/composites/common/Drawer/CaptionLanguageSettingsDrawer.js.map +1 -1
  1091. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.d.ts +4 -0
  1092. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +121 -132
  1093. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -1
  1094. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.styles.js.map +1 -1
  1095. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.d.ts +4 -0
  1096. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.js.map +1 -1
  1097. package/dist/dist-esm/react-composites/src/composites/common/Drawer/SpokenLanguageSettingsDrawer.js +5 -7
  1098. package/dist/dist-esm/react-composites/src/composites/common/Drawer/SpokenLanguageSettingsDrawer.js.map +1 -1
  1099. package/dist/dist-esm/react-composites/src/composites/common/Drawer/captionSettingsDrawer.styles.js.map +1 -1
  1100. package/dist/dist-esm/react-composites/src/composites/common/ExitSpotlightButton.d.ts +14 -0
  1101. package/dist/dist-esm/react-composites/src/composites/common/ExitSpotlightButton.js +16 -0
  1102. package/dist/dist-esm/react-composites/src/composites/common/ExitSpotlightButton.js.map +1 -0
  1103. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js +1 -1
  1104. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js.map +1 -1
  1105. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js +17 -11
  1106. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js.map +1 -1
  1107. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js +1 -1
  1108. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js.map +1 -1
  1109. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +13 -13
  1110. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
  1111. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js +28 -5
  1112. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js.map +1 -1
  1113. package/dist/dist-esm/react-composites/src/composites/common/RichTextSendBoxWrapper.d.ts +9 -0
  1114. package/dist/dist-esm/react-composites/src/composites/common/RichTextSendBoxWrapper.js +20 -0
  1115. package/dist/dist-esm/react-composites/src/composites/common/RichTextSendBoxWrapper.js.map +1 -0
  1116. package/dist/dist-esm/react-composites/src/composites/common/SendBox.d.ts +2 -0
  1117. package/dist/dist-esm/react-composites/src/composites/common/SendBox.js +29 -2
  1118. package/dist/dist-esm/react-composites/src/composites/common/SendBox.js.map +1 -1
  1119. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.d.ts +3 -0
  1120. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js +13 -16
  1121. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js.map +1 -1
  1122. package/dist/dist-esm/react-composites/src/composites/common/StarSurvey.d.ts +6 -0
  1123. package/dist/dist-esm/react-composites/src/composites/common/StarSurvey.js +29 -0
  1124. package/dist/dist-esm/react-composites/src/composites/common/StarSurvey.js.map +1 -0
  1125. package/dist/dist-esm/react-composites/src/composites/common/Survey.d.ts +20 -0
  1126. package/dist/dist-esm/react-composites/src/composites/common/Survey.js +129 -0
  1127. package/dist/dist-esm/react-composites/src/composites/common/Survey.js.map +1 -0
  1128. package/dist/dist-esm/react-composites/src/composites/common/SurveyContent.d.ts +13 -0
  1129. package/dist/dist-esm/react-composites/src/composites/common/SurveyContent.js +44 -0
  1130. package/dist/dist-esm/react-composites/src/composites/common/SurveyContent.js.map +1 -0
  1131. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js +14 -15
  1132. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js.map +1 -1
  1133. package/dist/dist-esm/react-composites/src/composites/common/TagsSurvey.d.ts +8 -0
  1134. package/dist/dist-esm/react-composites/src/composites/common/TagsSurvey.js +23 -0
  1135. package/dist/dist-esm/react-composites/src/composites/common/TagsSurvey.js.map +1 -0
  1136. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js +16 -13
  1137. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js.map +1 -1
  1138. package/dist/dist-esm/react-composites/src/composites/common/adapters.js.map +1 -1
  1139. package/dist/dist-esm/react-composites/src/composites/common/constants.js.map +1 -1
  1140. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +52 -1
  1141. package/dist/dist-esm/react-composites/src/composites/common/icons.js +24 -5
  1142. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  1143. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependency.js.map +1 -1
  1144. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependencyLazy.js.map +1 -1
  1145. package/dist/dist-esm/react-composites/src/composites/common/styles/Composite.styles.js.map +1 -1
  1146. package/dist/dist-esm/react-composites/src/composites/common/styles/GlobalHostLayer.styles.js.map +1 -1
  1147. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js +4 -10
  1148. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js.map +1 -1
  1149. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js +11 -44
  1150. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js.map +1 -1
  1151. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js +6 -29
  1152. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js.map +1 -1
  1153. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js +4 -22
  1154. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js.map +1 -1
  1155. package/dist/dist-esm/react-composites/src/composites/common/styles/Survey.styles.d.ts +10 -0
  1156. package/dist/dist-esm/react-composites/src/composites/common/styles/Survey.styles.js +36 -0
  1157. package/dist/dist-esm/react-composites/src/composites/common/styles/Survey.styles.js.map +1 -0
  1158. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.d.ts +26 -4
  1159. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js.map +1 -1
  1160. package/dist/dist-esm/react-composites/src/composites/common/utils.js +17 -12
  1161. package/dist/dist-esm/react-composites/src/composites/common/utils.js.map +1 -1
  1162. package/dist/dist-esm/react-composites/src/composites/index.js.map +1 -1
  1163. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js +2 -2
  1164. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js.map +1 -1
  1165. package/dist/dist-esm/react-composites/src/composites/localization/index.js.map +1 -1
  1166. package/dist/dist-esm/react-composites/src/composites/localization/locales/ar-SA/CompositeLocale.js.map +1 -1
  1167. package/dist/dist-esm/react-composites/src/composites/localization/locales/ar-SA/strings.json +5 -5
  1168. package/dist/dist-esm/react-composites/src/composites/localization/locales/cs-CZ/CompositeLocale.js.map +1 -1
  1169. package/dist/dist-esm/react-composites/src/composites/localization/locales/cs-CZ/strings.json +5 -5
  1170. package/dist/dist-esm/react-composites/src/composites/localization/locales/de-DE/CompositeLocale.js.map +1 -1
  1171. package/dist/dist-esm/react-composites/src/composites/localization/locales/de-DE/strings.json +5 -5
  1172. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-GB/CompositeLocale.js.map +1 -1
  1173. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-GB/strings.json +5 -5
  1174. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-US/strings.json +5 -5
  1175. package/dist/dist-esm/react-composites/src/composites/localization/locales/es-ES/CompositeLocale.js.map +1 -1
  1176. package/dist/dist-esm/react-composites/src/composites/localization/locales/es-ES/strings.json +5 -5
  1177. package/dist/dist-esm/react-composites/src/composites/localization/locales/fi-FI/CompositeLocale.js.map +1 -1
  1178. package/dist/dist-esm/react-composites/src/composites/localization/locales/fi-FI/strings.json +5 -5
  1179. package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-FR/CompositeLocale.js.map +1 -1
  1180. package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-FR/strings.json +5 -5
  1181. package/dist/dist-esm/react-composites/src/composites/localization/locales/he-IL/CompositeLocale.js.map +1 -1
  1182. package/dist/dist-esm/react-composites/src/composites/localization/locales/he-IL/strings.json +5 -5
  1183. package/dist/dist-esm/react-composites/src/composites/localization/locales/index.js.map +1 -1
  1184. package/dist/dist-esm/react-composites/src/composites/localization/locales/it-IT/CompositeLocale.js.map +1 -1
  1185. package/dist/dist-esm/react-composites/src/composites/localization/locales/it-IT/strings.json +5 -5
  1186. package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/CompositeLocale.js.map +1 -1
  1187. package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/strings.json +5 -5
  1188. package/dist/dist-esm/react-composites/src/composites/localization/locales/ko-KR/CompositeLocale.js.map +1 -1
  1189. package/dist/dist-esm/react-composites/src/composites/localization/locales/ko-KR/strings.json +5 -5
  1190. package/dist/dist-esm/react-composites/src/composites/localization/locales/nb-NO/CompositeLocale.js.map +1 -1
  1191. package/dist/dist-esm/react-composites/src/composites/localization/locales/nb-NO/strings.json +5 -5
  1192. package/dist/dist-esm/react-composites/src/composites/localization/locales/nl-NL/CompositeLocale.js.map +1 -1
  1193. package/dist/dist-esm/react-composites/src/composites/localization/locales/nl-NL/strings.json +5 -5
  1194. package/dist/dist-esm/react-composites/src/composites/localization/locales/pl-PL/CompositeLocale.js.map +1 -1
  1195. package/dist/dist-esm/react-composites/src/composites/localization/locales/pl-PL/strings.json +5 -5
  1196. package/dist/dist-esm/react-composites/src/composites/localization/locales/pt-BR/CompositeLocale.js.map +1 -1
  1197. package/dist/dist-esm/react-composites/src/composites/localization/locales/pt-BR/strings.json +5 -5
  1198. package/dist/dist-esm/react-composites/src/composites/localization/locales/ru-RU/CompositeLocale.js.map +1 -1
  1199. package/dist/dist-esm/react-composites/src/composites/localization/locales/ru-RU/strings.json +5 -5
  1200. package/dist/dist-esm/react-composites/src/composites/localization/locales/sv-SE/CompositeLocale.js.map +1 -1
  1201. package/dist/dist-esm/react-composites/src/composites/localization/locales/sv-SE/strings.json +5 -5
  1202. package/dist/dist-esm/react-composites/src/composites/localization/locales/tr-TR/CompositeLocale.js.map +1 -1
  1203. package/dist/dist-esm/react-composites/src/composites/localization/locales/tr-TR/strings.json +5 -5
  1204. package/dist/dist-esm/react-composites/src/composites/localization/locales/utils.js +1 -1
  1205. package/dist/dist-esm/react-composites/src/composites/localization/locales/utils.js.map +1 -1
  1206. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-CN/CompositeLocale.js.map +1 -1
  1207. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-CN/strings.json +5 -5
  1208. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-TW/CompositeLocale.js.map +1 -1
  1209. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-TW/strings.json +5 -5
  1210. package/dist/dist-esm/react-composites/src/index-public.js.map +1 -1
  1211. package/package.json +9 -11
  1212. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js.map +0 -1
  1213. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.d.ts +0 -55
  1214. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js +0 -153
  1215. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js.map +0 -1
  1216. package/dist/dist-esm/react-components/src/components/ChatMessage/FluentChatMessageComponentWrapper.d.ts +0 -22
  1217. package/dist/dist-esm/react-components/src/components/ChatMessage/FluentChatMessageComponentWrapper.js +0 -113
  1218. package/dist/dist-esm/react-components/src/components/ChatMessage/FluentChatMessageComponentWrapper.js.map +0 -1
@@ -30,6 +30,6 @@ export const _FileCardGroup = (props) => {
30
30
  if (!children) {
31
31
  return React.createElement(React.Fragment, null);
32
32
  }
33
- return React.createElement(Stack, { horizontal: true, className: fileCardGroupClassName, "aria-label": ariaLabel }, children);
33
+ return (React.createElement(Stack, { horizontal: true, className: fileCardGroupClassName, "aria-label": ariaLabel }, children));
34
34
  };
35
35
  //# sourceMappingURL=FileCardGroup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileCardGroup.js","sourceRoot":"","sources":["../../../../../preprocess-dist/react-components/src/components/FileCardGroup.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,mCAAgC;AACnD,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B;;;;GAIG;AAEH,MAAM,sBAAsB,GAAG,WAAW,CAAC;IACzC,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE;QACP,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;KACpB;IACD;;OAEG;IACH,yBAAyB,EAAE;QACzB,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;KACxB;CACF,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAA0B,EAAe,EAAE;IACxE,MAAM,EACJ,QAAQ,EACR,SAAS,EACV,GAAG,KAAK,CAAC;IACV,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,yCAAK,CAAC;IACf,CAAC;IACD,OAAO,oBAAC,KAAK,IAAC,UAAU,QAAC,SAAS,EAAE,sBAAsB,gBAAc,SAAS,IAC5E,QAAQ,CACH,CAAC;AACb,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { mergeStyles, Stack } from '@fluentui/react';\nimport { _pxToRem } from '@internal/acs-ui-common';\nimport React from 'react';\n\n/**\n * @internal\n * Props for `_FileCardGroup` component.\n */\nexport interface _FileCardGroupProps {\n children: React.ReactNode;\n ariaLabel?: string;\n}\n\n/**\n * Note: If we use stack tokens.childrenGap, when child elements are wrapped and moved to the next line,\n * an extra margin is added to the left of each line.\n * This is a workaround to avoid this issue.\n */\n\nconst fileCardGroupClassName = mergeStyles({\n flexFlow: 'row wrap',\n '& > *': {\n margin: _pxToRem(2)\n },\n /**\n * margin for children is overriden by parent stack, so adding left margin for each child\n */\n '& > *:not(:first-child)': {\n marginLeft: _pxToRem(2)\n }\n});\n\n/**\n * @internal\n * Used with `_FileCard` component where `_FileCard` components are passed as children.\n * Renders the children equally spaced in multiple rows.\n */\nexport const _FileCardGroup = (props: _FileCardGroupProps): JSX.Element => {\n const {\n children,\n ariaLabel\n } = props;\n if (!children) {\n return <></>;\n }\n return <Stack horizontal className={fileCardGroupClassName} aria-label={ariaLabel}>\n {children}\n </Stack>;\n};"]}
1
+ {"version":3,"file":"FileCardGroup.js","sourceRoot":"","sources":["../../../../../../react-components/src/components/FileCardGroup.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,mCAAgC;AACnD,OAAO,KAAK,MAAM,OAAO,CAAC;AAW1B;;;;GAIG;AAEH,MAAM,sBAAsB,GAAG,WAAW,CAAC;IACzC,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE;QACP,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;KACpB;IACD;;OAEG;IACH,yBAAyB,EAAE;QACzB,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;KACxB;CACF,CAAC,CAAC;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAA0B,EAAe,EAAE;IACxE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IACtC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,yCAAK,CAAC;IACf,CAAC;IAED,OAAO,CACL,oBAAC,KAAK,IAAC,UAAU,QAAC,SAAS,EAAE,sBAAsB,gBAAc,SAAS,IACvE,QAAQ,CACH,CACT,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { mergeStyles, Stack } from '@fluentui/react';\nimport { _pxToRem } from '@internal/acs-ui-common';\nimport React from 'react';\n\n/**\n * @internal\n * Props for `_FileCardGroup` component.\n */\nexport interface _FileCardGroupProps {\n children: React.ReactNode;\n ariaLabel?: string;\n}\n\n/**\n * Note: If we use stack tokens.childrenGap, when child elements are wrapped and moved to the next line,\n * an extra margin is added to the left of each line.\n * This is a workaround to avoid this issue.\n */\n\nconst fileCardGroupClassName = mergeStyles({\n flexFlow: 'row wrap',\n '& > *': {\n margin: _pxToRem(2)\n },\n /**\n * margin for children is overriden by parent stack, so adding left margin for each child\n */\n '& > *:not(:first-child)': {\n marginLeft: _pxToRem(2)\n }\n});\n\n/**\n * @internal\n * Used with `_FileCard` component where `_FileCard` components are passed as children.\n * Renders the children equally spaced in multiple rows.\n */\nexport const _FileCardGroup = (props: _FileCardGroupProps): JSX.Element => {\n const { children, ariaLabel } = props;\n if (!children) {\n return <></>;\n }\n\n return (\n <Stack horizontal className={fileCardGroupClassName} aria-label={ariaLabel}>\n {children}\n </Stack>\n );\n};\n"]}
@@ -3,7 +3,7 @@
3
3
  * Represents the type of attachment
4
4
  * @public
5
5
  */
6
- export type ChatAttachmentType = 'unknown' | /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */ 'image';
6
+ export type ChatAttachmentType = 'unknown' | 'image' | /* @conditional-compile-remove(file-sharing) */ 'file';
7
7
  /**
8
8
  * Metadata containing basic information about the uploaded file.
9
9
  *
@@ -19,6 +19,7 @@ export interface AttachmentMetadata {
19
19
  /**
20
20
  * Unique ID of the file.
21
21
  */
22
+ id: string;
22
23
  /**
23
24
  * File name to be displayed.
24
25
  */
@@ -27,6 +28,7 @@ export interface AttachmentMetadata {
27
28
  * Download URL for the file.
28
29
  */
29
30
  url: string;
31
+ payload?: Record<string, string>;
30
32
  }
31
33
  /**
32
34
  * Strings of _FileDownloadCards that can be overridden.
@@ -12,6 +12,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
12
12
  import { Icon, IconButton, Spinner, SpinnerSize, TooltipHost } from '@fluentui/react';
13
13
  import React, { useCallback, useState } from 'react';
14
14
  import { useMemo } from 'react';
15
+ /* @conditional-compile-remove(file-sharing) */
16
+ import { useLocale } from '../localization';
15
17
  import { _FileCard } from './FileCard';
16
18
  import { _FileCardGroup } from './FileCardGroup';
17
19
  import { iconButtonClassName } from './styles/IconButton.styles';
@@ -19,9 +21,7 @@ import { _formatString } from "../../../acs-ui-common/src";
19
21
  const fileDownloadCardsStyle = {
20
22
  marginTop: '0.25rem'
21
23
  };
22
- const actionIconStyle = {
23
- height: '1rem'
24
- };
24
+ const actionIconStyle = { height: '1rem' };
25
25
  /**
26
26
  * @internal
27
27
  */
@@ -34,16 +34,22 @@ export const _FileDownloadCards = (props) => {
34
34
  var _a, _b;
35
35
  return (_b = (_a = props.strings) === null || _a === void 0 ? void 0 : _a.downloadFile) !== null && _b !== void 0 ? _b : localeStrings.downloadFile;
36
36
  }, [(_a = props.strings) === null || _a === void 0 ? void 0 : _a.downloadFile, localeStrings.downloadFile]);
37
- /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
38
37
  const isShowDownloadIcon = useCallback((attachment) => {
38
+ var _a;
39
+ /* @conditional-compile-remove(file-sharing) */
40
+ return ((_a = attachment.payload) === null || _a === void 0 ? void 0 : _a.teamsFileAttachment) !== 'true';
39
41
  return true;
40
42
  }, []);
41
43
  const fileCardGroupDescription = useMemo(() => () => {
42
- var _a, _b, _c;
44
+ var _a, _b, _c, _d;
43
45
  const fileGroupLocaleString = (_b = (_a = props.strings) === null || _a === void 0 ? void 0 : _a.fileCardGroupMessage) !== null && _b !== void 0 ? _b : localeStrings.fileCardGroupMessage;
46
+ /* @conditional-compile-remove(file-sharing) */
44
47
  return _formatString(fileGroupLocaleString, {
45
48
  fileCount: `${(_c = fileMetadata === null || fileMetadata === void 0 ? void 0 : fileMetadata.length) !== null && _c !== void 0 ? _c : 0}`
46
49
  });
50
+ return _formatString(fileGroupLocaleString, {
51
+ fileCount: `${(_d = fileMetadata === null || fileMetadata === void 0 ? void 0 : fileMetadata.length) !== null && _d !== void 0 ? _d : 0}`
52
+ });
47
53
  }, [(_b = props.strings) === null || _b === void 0 ? void 0 : _b.fileCardGroupMessage, localeStrings.fileCardGroupMessage, fileMetadata]);
48
54
  const fileDownloadHandler = useCallback((userId, file) => __awaiter(void 0, void 0, void 0, function* () {
49
55
  if (!props.downloadHandler) {
@@ -66,25 +72,27 @@ export const _FileDownloadCards = (props) => {
66
72
  }
67
73
  }
68
74
  }), [props]);
69
- if (!fileMetadata || fileMetadata.length === 0 || /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */ !fileMetadata) {
75
+ if (!fileMetadata || fileMetadata.length === 0 || !fileMetadata) {
70
76
  return React.createElement(React.Fragment, null);
71
77
  }
72
- return React.createElement("div", { style: fileDownloadCardsStyle, "data-ui-id": "file-download-card-group" },
73
- React.createElement(_FileCardGroup, { ariaLabel: fileCardGroupDescription() }, fileMetadata && fileMetadata.map(file => React.createElement(TooltipHost, { content: downloadFileButtonString(), key: file.name },
74
- React.createElement(_FileCard, { fileName: file.name, key: file.name, fileExtension: file.extension, actionIcon: showSpinner ? React.createElement(Spinner, { size: SpinnerSize.medium, "aria-live": 'polite', role: 'status' }) : true && /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */ isShowDownloadIcon(file) ? React.createElement(IconButton, { className: iconButtonClassName, ariaLabel: downloadFileButtonString() },
75
- React.createElement(DownloadIconTrampoline, null)) : undefined, actionHandler: () => fileDownloadHandler(userId, file) })))));
78
+ return (React.createElement("div", { style: fileDownloadCardsStyle, "data-ui-id": "file-download-card-group" },
79
+ React.createElement(_FileCardGroup, { ariaLabel: fileCardGroupDescription() }, fileMetadata &&
80
+ fileMetadata.map((file) => (React.createElement(TooltipHost, { content: downloadFileButtonString(), key: file.name },
81
+ React.createElement(_FileCard, { fileName: file.name, key: file.name, fileExtension: file.extension, actionIcon: showSpinner ? (React.createElement(Spinner, { size: SpinnerSize.medium, "aria-live": 'polite', role: 'status' })) : true && isShowDownloadIcon(file) ? (React.createElement(IconButton, { className: iconButtonClassName, ariaLabel: downloadFileButtonString() },
82
+ React.createElement(DownloadIconTrampoline, null))) : undefined, actionHandler: () => fileDownloadHandler(userId, file) })))))));
76
83
  };
77
84
  /**
78
85
  * @private
79
86
  */
80
87
  const DownloadIconTrampoline = () => {
88
+ // @conditional-compile-remove(file-sharing)
89
+ return React.createElement(Icon, { "data-ui-id": "file-download-card-download-icon", iconName: "DownloadFile", style: actionIconStyle });
81
90
  // Return _some_ available icon, as the real icon is beta-only.
82
91
  return React.createElement(Icon, { iconName: "EditBoxCancel", style: actionIconStyle });
83
92
  };
84
93
  const useLocaleStringsTrampoline = () => {
85
- return {
86
- downloadFile: '',
87
- fileCardGroupMessage: ''
88
- };
94
+ /* @conditional-compile-remove(file-sharing) */
95
+ return useLocale().strings.messageThread;
96
+ return { downloadFile: '', fileCardGroupMessage: '' };
89
97
  };
90
98
  //# sourceMappingURL=FileDownloadCards.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileDownloadCards.js","sourceRoot":"","sources":["../../../../../preprocess-dist/react-components/src/components/FileDownloadCards.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Icon, IconButton, Spinner, SpinnerSize, TooltipHost } from '@fluentui/react';\nimport React, { useCallback, useState } from 'react';\nimport { useMemo } from 'react';\nimport { _FileCard } from './FileCard';\nimport { _FileCardGroup } from './FileCardGroup';\nimport { iconButtonClassName } from './styles/IconButton.styles';\nimport { _formatString } from '@internal/acs-ui-common';\n\n/* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n/**\n * Represents the type of attachment\n * @public\n */\nexport type ChatAttachmentType = 'unknown' | /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */'image';\n\n/**\n * Metadata containing basic information about the uploaded file.\n *\n * @beta\n */\nexport interface AttachmentMetadata {\n /**\n * Extension hint, useful for rendering a specific icon.\n * An unknown or empty extension will be rendered as a generic icon.\n * Example: `pdf`\n */\n extension: string;\n /**\n * Unique ID of the file.\n */\n /**\n * File name to be displayed.\n */\n name: string;\n /**\n * Download URL for the file.\n */\n url: string;\n}\n\n/**\n * Strings of _FileDownloadCards that can be overridden.\n *\n * @internal\n */\nexport interface _FileDownloadCardsStrings {\n /** Aria label to notify user when focus is on file download button. */\n downloadFile: string;\n fileCardGroupMessage: string;\n}\n\n/**\n * @beta\n * A file download error returned via a {@link FileDownloadHandler}.\n * This error message is used to render an error message in the UI.\n */\nexport interface FileDownloadError {\n /** The error message to display in the UI */\n errorMessage: string;\n}\n\n/**\n * @beta\n *\n * A callback function for handling file downloads.\n * The function needs to return a promise that resolves to a file download URL.\n * If the promise is rejected, the {@link Error.message} will be used to display an error message to the user.\n *\n * @example\n * ```ts\n * const fileDownloadHandler: FileDownloadHandler = async (userId, fileData) => {\n * if (isUnauthorizedUser(userId)) {\n * return { errorMessage: 'You don’t have permission to download this file.' };\n * } else {\n * return new URL(fileData.url);\n * }\n * }\n *\n * const App = () => (\n * <ChatComposite\n * ...\n * fileSharing={{\n * fileDownloadHandler: fileDownloadHandler\n * }}\n * />\n * )\n *\n * ```\n * @param userId - The user ID of the user downloading the file.\n * @param fileMetadata - The {@link AttachmentMetadata} containing file `url`, `extension` and `name`.\n */\nexport type FileDownloadHandler = (userId: string, fileMetadata: AttachmentMetadata) => Promise<URL | FileDownloadError>;\n\n/**\n * @internal\n */\nexport interface _FileDownloadCardsProps {\n /**\n * User id of the local participant\n */\n userId: string;\n /**\n * A chat message metadata that includes file metadata\n */\n fileMetadata?: AttachmentMetadata[];\n /**\n * A function of type {@link FileDownloadHandler} for handling file downloads.\n * If the function is not specified, the file's `url` will be opened in a new tab to\n * initiate the download.\n */\n downloadHandler?: FileDownloadHandler;\n /**\n * Optional callback that runs if downloadHandler returns {@link FileDownloadError}.\n */\n onDownloadErrorMessage?: (errMsg: string) => void;\n /**\n * Optional aria label strings for file download cards\n */\n strings?: _FileDownloadCardsStrings;\n}\nconst fileDownloadCardsStyle = {\n marginTop: '0.25rem'\n};\nconst actionIconStyle = {\n height: '1rem'\n};\n\n/**\n * @internal\n */\nexport const _FileDownloadCards = (props: _FileDownloadCardsProps): JSX.Element => {\n const {\n userId,\n fileMetadata\n } = props;\n const [showSpinner, setShowSpinner] = useState(false);\n const localeStrings = useLocaleStringsTrampoline();\n const downloadFileButtonString = useMemo(() => () => {\n return props.strings?.downloadFile ?? localeStrings.downloadFile;\n }, [props.strings?.downloadFile, localeStrings.downloadFile]);\n\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n const isShowDownloadIcon = useCallback((attachment: AttachmentMetadata): boolean => {\n return true;\n }, []);\n const fileCardGroupDescription = useMemo(() => () => {\n const fileGroupLocaleString = props.strings?.fileCardGroupMessage ?? localeStrings.fileCardGroupMessage;\n return _formatString(fileGroupLocaleString, {\n fileCount: `${fileMetadata?.length ?? 0}`\n });\n }, [props.strings?.fileCardGroupMessage, localeStrings.fileCardGroupMessage, fileMetadata]);\n const fileDownloadHandler = useCallback(async (userId: string, file: AttachmentMetadata) => {\n if (!props.downloadHandler) {\n window.open(file.url, '_blank', 'noopener,noreferrer');\n } else {\n setShowSpinner(true);\n try {\n const response = await props.downloadHandler(userId, file);\n setShowSpinner(false);\n if (response instanceof URL) {\n window.open(response.toString(), '_blank', 'noopener,noreferrer');\n } else {\n props.onDownloadErrorMessage && props.onDownloadErrorMessage(response.errorMessage);\n }\n } finally {\n setShowSpinner(false);\n }\n }\n }, [props]);\n if (!fileMetadata || fileMetadata.length === 0 || /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */!fileMetadata) {\n return <></>;\n }\n return <div style={fileDownloadCardsStyle} data-ui-id=\"file-download-card-group\">\n <_FileCardGroup ariaLabel={fileCardGroupDescription()}>\n {fileMetadata && fileMetadata.map(file => <TooltipHost content={downloadFileButtonString()} key={file.name}>\n <_FileCard fileName={file.name} key={file.name} fileExtension={file.extension} actionIcon={showSpinner ? <Spinner size={SpinnerSize.medium} aria-live={'polite'} role={'status'} /> : true && /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */isShowDownloadIcon(file) ? <IconButton className={iconButtonClassName} ariaLabel={downloadFileButtonString()}>\n <DownloadIconTrampoline />\n </IconButton> : undefined} actionHandler={() => fileDownloadHandler(userId, file)} />\n </TooltipHost>)}\n </_FileCardGroup>\n </div>;\n};\n\n/**\n * @private\n */\nconst DownloadIconTrampoline = (): JSX.Element => {\n // Return _some_ available icon, as the real icon is beta-only.\n return <Icon iconName=\"EditBoxCancel\" style={actionIconStyle} />;\n};\nconst useLocaleStringsTrampoline = (): _FileDownloadCardsStrings => {\n return {\n downloadFile: '',\n fileCardGroupMessage: ''\n };\n};"]}
1
+ {"version":3,"file":"FileDownloadCards.js","sourceRoot":"","sources":["../../../../../../react-components/src/components/FileDownloadCards.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Icon, IconButton, Spinner, SpinnerSize, TooltipHost } from '@fluentui/react';\nimport React, { useCallback, useState } from 'react';\nimport { useMemo } from 'react';\n/* @conditional-compile-remove(file-sharing) */\nimport { useLocale } from '../localization';\nimport { _FileCard } from './FileCard';\nimport { _FileCardGroup } from './FileCardGroup';\nimport { iconButtonClassName } from './styles/IconButton.styles';\nimport { _formatString } from '@internal/acs-ui-common';\n\n/**\n * Represents the type of attachment\n * @public\n */\nexport type ChatAttachmentType = 'unknown' | 'image' | /* @conditional-compile-remove(file-sharing) */ 'file';\n\n/**\n * Metadata containing basic information about the uploaded file.\n *\n * @beta\n */\nexport interface AttachmentMetadata {\n /**\n * Extension hint, useful for rendering a specific icon.\n * An unknown or empty extension will be rendered as a generic icon.\n * Example: `pdf`\n */\n extension: string;\n /**\n * Unique ID of the file.\n */\n /* @conditional-compile-remove(file-sharing) */\n id: string;\n /**\n * File name to be displayed.\n */\n name: string;\n /**\n * Download URL for the file.\n */\n url: string;\n /* @conditional-compile-remove(file-sharing) */\n /*\n * Optional dictionary of meta data associated with the file.\n */\n payload?: Record<string, string>;\n}\n\n/**\n * Strings of _FileDownloadCards that can be overridden.\n *\n * @internal\n */\nexport interface _FileDownloadCardsStrings {\n /** Aria label to notify user when focus is on file download button. */\n downloadFile: string;\n fileCardGroupMessage: string;\n}\n\n/**\n * @beta\n * A file download error returned via a {@link FileDownloadHandler}.\n * This error message is used to render an error message in the UI.\n */\nexport interface FileDownloadError {\n /** The error message to display in the UI */\n errorMessage: string;\n}\n\n/**\n * @beta\n *\n * A callback function for handling file downloads.\n * The function needs to return a promise that resolves to a file download URL.\n * If the promise is rejected, the {@link Error.message} will be used to display an error message to the user.\n *\n * @example\n * ```ts\n * const fileDownloadHandler: FileDownloadHandler = async (userId, fileData) => {\n * if (isUnauthorizedUser(userId)) {\n * return { errorMessage: 'You don’t have permission to download this file.' };\n * } else {\n * return new URL(fileData.url);\n * }\n * }\n *\n * const App = () => (\n * <ChatComposite\n * ...\n * fileSharing={{\n * fileDownloadHandler: fileDownloadHandler\n * }}\n * />\n * )\n *\n * ```\n * @param userId - The user ID of the user downloading the file.\n * @param fileMetadata - The {@link AttachmentMetadata} containing file `url`, `extension` and `name`.\n */\nexport type FileDownloadHandler = (\n userId: string,\n fileMetadata: AttachmentMetadata\n) => Promise<URL | FileDownloadError>;\n\n/**\n * @internal\n */\nexport interface _FileDownloadCardsProps {\n /**\n * User id of the local participant\n */\n userId: string;\n /**\n * A chat message metadata that includes file metadata\n */\n fileMetadata?: AttachmentMetadata[];\n /**\n * A function of type {@link FileDownloadHandler} for handling file downloads.\n * If the function is not specified, the file's `url` will be opened in a new tab to\n * initiate the download.\n */\n downloadHandler?: FileDownloadHandler;\n /**\n * Optional callback that runs if downloadHandler returns {@link FileDownloadError}.\n */\n onDownloadErrorMessage?: (errMsg: string) => void;\n /**\n * Optional aria label strings for file download cards\n */\n strings?: _FileDownloadCardsStrings;\n}\n\nconst fileDownloadCardsStyle = {\n marginTop: '0.25rem'\n};\n\nconst actionIconStyle = { height: '1rem' };\n\n/**\n * @internal\n */\nexport const _FileDownloadCards = (props: _FileDownloadCardsProps): JSX.Element => {\n const { userId, fileMetadata } = props;\n const [showSpinner, setShowSpinner] = useState(false);\n const localeStrings = useLocaleStringsTrampoline();\n\n const downloadFileButtonString = useMemo(\n () => () => {\n return props.strings?.downloadFile ?? localeStrings.downloadFile;\n },\n [props.strings?.downloadFile, localeStrings.downloadFile]\n );\n\n const isShowDownloadIcon = useCallback((attachment: AttachmentMetadata): boolean => {\n /* @conditional-compile-remove(file-sharing) */\n return attachment.payload?.teamsFileAttachment !== 'true';\n return true;\n }, []);\n\n const fileCardGroupDescription = useMemo(\n () => () => {\n const fileGroupLocaleString = props.strings?.fileCardGroupMessage ?? localeStrings.fileCardGroupMessage;\n /* @conditional-compile-remove(file-sharing) */\n return _formatString(fileGroupLocaleString, {\n fileCount: `${fileMetadata?.length ?? 0}`\n });\n return _formatString(fileGroupLocaleString, {\n fileCount: `${fileMetadata?.length ?? 0}`\n });\n },\n [props.strings?.fileCardGroupMessage, localeStrings.fileCardGroupMessage, fileMetadata]\n );\n\n const fileDownloadHandler = useCallback(\n async (userId: string, file: AttachmentMetadata) => {\n if (!props.downloadHandler) {\n window.open(file.url, '_blank', 'noopener,noreferrer');\n } else {\n setShowSpinner(true);\n try {\n const response = await props.downloadHandler(userId, file);\n setShowSpinner(false);\n if (response instanceof URL) {\n window.open(response.toString(), '_blank', 'noopener,noreferrer');\n } else {\n props.onDownloadErrorMessage && props.onDownloadErrorMessage(response.errorMessage);\n }\n } finally {\n setShowSpinner(false);\n }\n }\n },\n [props]\n );\n if (!fileMetadata || fileMetadata.length === 0 || !fileMetadata) {\n return <></>;\n }\n\n return (\n <div style={fileDownloadCardsStyle} data-ui-id=\"file-download-card-group\">\n <_FileCardGroup ariaLabel={fileCardGroupDescription()}>\n {fileMetadata &&\n fileMetadata.map((file) => (\n <TooltipHost content={downloadFileButtonString()} key={file.name}>\n <_FileCard\n fileName={file.name}\n key={file.name}\n fileExtension={file.extension}\n actionIcon={\n showSpinner ? (\n <Spinner size={SpinnerSize.medium} aria-live={'polite'} role={'status'} />\n ) : true && isShowDownloadIcon(file) ? (\n <IconButton className={iconButtonClassName} ariaLabel={downloadFileButtonString()}>\n <DownloadIconTrampoline />\n </IconButton>\n ) : undefined\n }\n actionHandler={() => fileDownloadHandler(userId, file)}\n />\n </TooltipHost>\n ))}\n </_FileCardGroup>\n </div>\n );\n};\n\n/**\n * @private\n */\nconst DownloadIconTrampoline = (): JSX.Element => {\n // @conditional-compile-remove(file-sharing)\n return <Icon data-ui-id=\"file-download-card-download-icon\" iconName=\"DownloadFile\" style={actionIconStyle} />;\n // Return _some_ available icon, as the real icon is beta-only.\n return <Icon iconName=\"EditBoxCancel\" style={actionIconStyle} />;\n};\n\nconst useLocaleStringsTrampoline = (): _FileDownloadCardsStrings => {\n /* @conditional-compile-remove(file-sharing) */\n return useLocale().strings.messageThread;\n return { downloadFile: '', fileCardGroupMessage: '' };\n};\n"]}
@@ -8,9 +8,7 @@ import { extension } from './utils';
8
8
  import { iconButtonClassName } from './styles/IconButton.styles';
9
9
  import { useMemo } from 'react';
10
10
  import { useLocaleFileCardStringsTrampoline } from './utils/common';
11
- const actionIconStyle = {
12
- height: '1rem'
13
- };
11
+ const actionIconStyle = { height: '1rem' };
14
12
  /**
15
13
  * @internal
16
14
  */
@@ -25,9 +23,12 @@ export const _FileUploadCards = (props) => {
25
23
  if (!files || files.length === 0) {
26
24
  return React.createElement(React.Fragment, null);
27
25
  }
28
- return React.createElement(_FileCardGroup, null, files && files.filter(file => !file.error).map(file => React.createElement(_FileCard, { fileName: file.filename, progress: file.progress, key: file.id, fileExtension: extension(file.filename), actionIcon: React.createElement(IconButton, { className: iconButtonClassName, ariaLabel: removeFileButtonString() },
29
- React.createElement(Icon, { iconName: "CancelFileUpload", style: actionIconStyle })), actionHandler: () => {
30
- props.onCancelFileUpload && props.onCancelFileUpload(file.id);
31
- }, strings: props.strings })));
26
+ return (React.createElement(_FileCardGroup, null, files &&
27
+ files
28
+ .filter((file) => !file.error)
29
+ .map((file) => (React.createElement(_FileCard, { fileName: file.filename, progress: file.progress, key: file.id, fileExtension: extension(file.filename), actionIcon: React.createElement(IconButton, { className: iconButtonClassName, ariaLabel: removeFileButtonString() },
30
+ React.createElement(Icon, { iconName: "CancelFileUpload", style: actionIconStyle })), actionHandler: () => {
31
+ props.onCancelFileUpload && props.onCancelFileUpload(file.id);
32
+ }, strings: props.strings })))));
32
33
  };
33
34
  //# sourceMappingURL=FileUploadCards.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileUploadCards.js","sourceRoot":"","sources":["../../../../../preprocess-dist/react-components/src/components/FileUploadCards.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,kCAAkC,EAAE,MAAM,gBAAgB,CAAC;AAwEpE,MAAM,eAAe,GAAG;IACtB,MAAM,EAAE,MAAM;CACf,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAA2B,EAAe,EAAE;;IAC3E,MAAM,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAAC;IACtC,MAAM,aAAa,GAAG,kCAAkC,EAAE,CAAC;IAC3D,MAAM,sBAAsB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE;;QAChD,OAAO,MAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,UAAU,mCAAI,aAAa,CAAC,UAAU,CAAC;IAC/D,CAAC,EAAE,CAAC,MAAA,KAAK,CAAC,OAAO,0CAAE,UAAU,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC;IAC1D,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,yCAAK,CAAC;IACf,CAAC;IACD,OAAO,oBAAC,cAAc,QACjB,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,oBAAC,SAAS,IAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,aAAa,EAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,oBAAC,UAAU,IAAC,SAAS,EAAE,mBAAmB,EAAE,SAAS,EAAE,sBAAsB,EAAE;YAC3P,oBAAC,IAAI,IAAC,QAAQ,EAAC,kBAAkB,EAAC,KAAK,EAAE,eAAe,GAAI,CACjD,EAAE,aAAa,EAAE,GAAG,EAAE;YAC7C,KAAK,CAAC,kBAAkB,IAAI,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChE,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,GAAI,CAAC,CACb,CAAC;AACtB,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Icon, IconButton } from '@fluentui/react';\nimport React from 'react';\nimport { _FileCard } from './FileCard';\nimport { _FileCardGroup } from './FileCardGroup';\nimport { extension } from './utils';\nimport { iconButtonClassName } from './styles/IconButton.styles';\nimport { useMemo } from 'react';\nimport { useLocaleFileCardStringsTrampoline } from './utils/common';\nimport { SendBoxErrorBarError } from './SendBoxErrorBar';\n\n/**\n * Attributes required for SendBox to show file uploads like name, progress etc.\n * @beta\n */\nexport interface ActiveFileUpload {\n /**\n * Unique identifier for the file upload.\n */\n id: string;\n\n /**\n * File name to be rendered for uploaded file.\n */\n filename: string;\n\n /**\n * A number between 0 and 1 indicating the progress of the upload.\n * This is unrelated to the `uploadComplete` property.\n * It is only used to show the progress of the upload.\n * Progress of 1 doesn't mark the upload as complete, set the `uploadComplete`\n * property to true to mark the upload as complete.\n */\n progress: number;\n\n /**\n * Error to be displayed to the user if the upload fails.\n */\n error?: SendBoxErrorBarError;\n\n /**\n * `true` means that the upload is completed.\n * This is independent of the upload `progress`.\n */\n uploadComplete?: boolean;\n}\n\n/**\n * Strings of _FileUploadCards that can be overridden.\n *\n * @internal\n */\nexport interface _FileUploadCardsStrings {\n /** Aria label to notify user when focus is on cancel file upload button. */\n removeFile: string;\n /** Aria label to notify user file uploading starts. */\n uploading: string;\n /** Aria label to notify user file is uploaded. */\n uploadCompleted: string;\n}\n\n/**\n * @internal\n */\nexport interface FileUploadCardsProps {\n /**\n * Optional array of active file uploads where each object has attibutes\n * of a file upload like name, progress, errormessage etc.\n */\n activeFileUploads?: ActiveFileUpload[];\n /**\n * Optional callback to remove the file upload before sending by clicking on\n * cancel icon.\n */\n onCancelFileUpload?: (fileId: string) => void;\n /**\n * Optional arialabel strings for file upload cards\n */\n strings?: _FileUploadCardsStrings;\n}\nconst actionIconStyle = {\n height: '1rem'\n};\n\n/**\n * @internal\n */\nexport const _FileUploadCards = (props: FileUploadCardsProps): JSX.Element => {\n const files = props.activeFileUploads;\n const localeStrings = useLocaleFileCardStringsTrampoline();\n const removeFileButtonString = useMemo(() => () => {\n return props.strings?.removeFile ?? localeStrings.removeFile;\n }, [props.strings?.removeFile, localeStrings.removeFile]);\n if (!files || files.length === 0) {\n return <></>;\n }\n return <_FileCardGroup>\n {files && files.filter(file => !file.error).map(file => <_FileCard fileName={file.filename} progress={file.progress} key={file.id} fileExtension={extension(file.filename)} actionIcon={<IconButton className={iconButtonClassName} ariaLabel={removeFileButtonString()}>\n <Icon iconName=\"CancelFileUpload\" style={actionIconStyle} />\n </IconButton>} actionHandler={() => {\n props.onCancelFileUpload && props.onCancelFileUpload(file.id);\n }} strings={props.strings} />)}\n </_FileCardGroup>;\n};"]}
1
+ {"version":3,"file":"FileUploadCards.js","sourceRoot":"","sources":["../../../../../../react-components/src/components/FileUploadCards.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,kCAAkC,EAAE,MAAM,gBAAgB,CAAC;AAyEpE,MAAM,eAAe,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAE3C;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAA2B,EAAe,EAAE;;IAC3E,MAAM,KAAK,GAAG,KAAK,CAAC,iBAAiB,CAAC;IAEtC,MAAM,aAAa,GAAG,kCAAkC,EAAE,CAAC;IAE3D,MAAM,sBAAsB,GAAG,OAAO,CACpC,GAAG,EAAE,CAAC,GAAG,EAAE;;QACT,OAAO,MAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,UAAU,mCAAI,aAAa,CAAC,UAAU,CAAC;IAC/D,CAAC,EACD,CAAC,MAAA,KAAK,CAAC,OAAO,0CAAE,UAAU,EAAE,aAAa,CAAC,UAAU,CAAC,CACtD,CAAC;IAEF,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,yCAAK,CAAC;IACf,CAAC;IAED,OAAO,CACL,oBAAC,cAAc,QACZ,KAAK;QACJ,KAAK;aACF,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;aAC7B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACb,oBAAC,SAAS,IACR,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,GAAG,EAAE,IAAI,CAAC,EAAE,EACZ,aAAa,EAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EACvC,UAAU,EACR,oBAAC,UAAU,IAAC,SAAS,EAAE,mBAAmB,EAAE,SAAS,EAAE,sBAAsB,EAAE;gBAC7E,oBAAC,IAAI,IAAC,QAAQ,EAAC,kBAAkB,EAAC,KAAK,EAAE,eAAe,GAAI,CACjD,EAEf,aAAa,EAAE,GAAG,EAAE;gBAClB,KAAK,CAAC,kBAAkB,IAAI,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAChE,CAAC,EACD,OAAO,EAAE,KAAK,CAAC,OAAO,GACtB,CACH,CAAC,CACS,CAClB,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Icon, IconButton } from '@fluentui/react';\nimport React from 'react';\nimport { _FileCard } from './FileCard';\nimport { _FileCardGroup } from './FileCardGroup';\nimport { extension } from './utils';\nimport { iconButtonClassName } from './styles/IconButton.styles';\nimport { useMemo } from 'react';\nimport { useLocaleFileCardStringsTrampoline } from './utils/common';\nimport { SendBoxErrorBarError } from './SendBoxErrorBar';\n\n/**\n * Attributes required for SendBox to show file uploads like name, progress etc.\n * @beta\n */\nexport interface ActiveFileUpload {\n /**\n * Unique identifier for the file upload.\n */\n id: string;\n\n /**\n * File name to be rendered for uploaded file.\n */\n filename: string;\n\n /**\n * A number between 0 and 1 indicating the progress of the upload.\n * This is unrelated to the `uploadComplete` property.\n * It is only used to show the progress of the upload.\n * Progress of 1 doesn't mark the upload as complete, set the `uploadComplete`\n * property to true to mark the upload as complete.\n */\n progress: number;\n\n /**\n * Error to be displayed to the user if the upload fails.\n */\n error?: SendBoxErrorBarError;\n\n /**\n * `true` means that the upload is completed.\n * This is independent of the upload `progress`.\n */\n uploadComplete?: boolean;\n}\n\n/**\n * Strings of _FileUploadCards that can be overridden.\n *\n * @internal\n */\nexport interface _FileUploadCardsStrings {\n /** Aria label to notify user when focus is on cancel file upload button. */\n removeFile: string;\n /** Aria label to notify user file uploading starts. */\n uploading: string;\n /** Aria label to notify user file is uploaded. */\n uploadCompleted: string;\n}\n\n/**\n * @internal\n */\nexport interface FileUploadCardsProps {\n /**\n * Optional array of active file uploads where each object has attibutes\n * of a file upload like name, progress, errormessage etc.\n */\n activeFileUploads?: ActiveFileUpload[];\n /**\n * Optional callback to remove the file upload before sending by clicking on\n * cancel icon.\n */\n onCancelFileUpload?: (fileId: string) => void;\n /**\n * Optional arialabel strings for file upload cards\n */\n strings?: _FileUploadCardsStrings;\n}\n\nconst actionIconStyle = { height: '1rem' };\n\n/**\n * @internal\n */\nexport const _FileUploadCards = (props: FileUploadCardsProps): JSX.Element => {\n const files = props.activeFileUploads;\n\n const localeStrings = useLocaleFileCardStringsTrampoline();\n\n const removeFileButtonString = useMemo(\n () => () => {\n return props.strings?.removeFile ?? localeStrings.removeFile;\n },\n [props.strings?.removeFile, localeStrings.removeFile]\n );\n\n if (!files || files.length === 0) {\n return <></>;\n }\n\n return (\n <_FileCardGroup>\n {files &&\n files\n .filter((file) => !file.error)\n .map((file) => (\n <_FileCard\n fileName={file.filename}\n progress={file.progress}\n key={file.id}\n fileExtension={extension(file.filename)}\n actionIcon={\n <IconButton className={iconButtonClassName} ariaLabel={removeFileButtonString()}>\n <Icon iconName=\"CancelFileUpload\" style={actionIconStyle} />\n </IconButton>\n }\n actionHandler={() => {\n props.onCancelFileUpload && props.onCancelFileUpload(file.id);\n }}\n strings={props.strings}\n />\n ))}\n </_FileCardGroup>\n );\n};\n"]}
@@ -30,7 +30,7 @@ export const GridLayout = (props) => {
30
30
  return calculateGridProps(numberOfChildren, currentWidth, currentHeight);
31
31
  }, [numberOfChildren, currentWidth, currentHeight]);
32
32
  const cssGridStyles = useMemo(() => createGridStyles(numberOfChildren, gridProps), [numberOfChildren, gridProps]);
33
- return React.createElement("div", { ref: containerRef, className: mergeStyles(gridLayoutStyle, cssGridStyles, styles === null || styles === void 0 ? void 0 : styles.root), "data-ui-id": "grid-layout" }, children);
33
+ return (React.createElement("div", { ref: containerRef, className: mergeStyles(gridLayoutStyle, cssGridStyles, styles === null || styles === void 0 ? void 0 : styles.root), "data-ui-id": "grid-layout" }, children));
34
34
  };
35
35
  /**
36
36
  * The cell aspect ratio we aim for in a grid
@@ -52,11 +52,7 @@ const isCloserThan = (a, b, target) => {
52
52
  */
53
53
  export const calculateGridProps = (numberOfItems, width, height) => {
54
54
  if (numberOfItems <= 0) {
55
- return {
56
- fillDirection: 'horizontal',
57
- rows: 0,
58
- columns: 0
59
- };
55
+ return { fillDirection: 'horizontal', rows: 0, columns: 0 };
60
56
  }
61
57
  // If width or height are 0 then we return rows and column evenly
62
58
  if (width <= 0 || height <= 0) {
@@ -68,7 +64,7 @@ export const calculateGridProps = (numberOfItems, width, height) => {
68
64
  }
69
65
  const aspectRatio = width / height;
70
66
  // Approximate how many rows to divide the grid to achieve cells close to the TARGET_CELL_ASPECT_RATIO
71
- let rows = Math.floor(Math.sqrt(TARGET_CELL_ASPECT_RATIO / aspectRatio * numberOfItems)) || 1;
67
+ let rows = Math.floor(Math.sqrt((TARGET_CELL_ASPECT_RATIO / aspectRatio) * numberOfItems)) || 1;
72
68
  // Make sure rows do not exceed numberOfItems
73
69
  rows = Math.min(rows, numberOfItems);
74
70
  // Given the rows, get the minimum columns needed to create enough cells for the number of items
@@ -77,7 +73,7 @@ export const calculateGridProps = (numberOfItems, width, height) => {
77
73
  let fillDirection = 'horizontal';
78
74
  while (rows < numberOfItems) {
79
75
  // If cell aspect ratio is less than MINIMUM_CELL_ASPECT_RATIO_ALLOWED then try more rows
80
- if (rows / columns * aspectRatio < MINIMUM_CELL_ASPECT_RATIO_ALLOWED) {
76
+ if ((rows / columns) * aspectRatio < MINIMUM_CELL_ASPECT_RATIO_ALLOWED) {
81
77
  rows += 1;
82
78
  columns = Math.ceil(numberOfItems / rows);
83
79
  continue;
@@ -116,9 +112,9 @@ export const calculateGridProps = (numberOfItems, width, height) => {
116
112
  // | | | | | | |
117
113
  // |___________|__________| |_______|_______|_______|
118
114
  // Calculate the aspect ratio of big cells stretched horizontally
119
- const horizontallyStretchedCellRatio = rows / (columns - 1) * aspectRatio;
115
+ const horizontallyStretchedCellRatio = (rows / (columns - 1)) * aspectRatio;
120
116
  // Calculate the aspect ratio of big cells stretched vertically
121
- const verticallyStretchedCellRatio = (rows - 1) / columns * aspectRatio;
117
+ const verticallyStretchedCellRatio = ((rows - 1) / columns) * aspectRatio;
122
118
  // We know the horizontally stretched cells aspect ratio is higher than MINIMUM_CELL_ASPECT_RATIO_ALLOWED. If vertically stretched cells
123
119
  // is also higher than the MINIMUM_CELL_ASPECT_RATIO_ALLOWED, then choose which aspect ratio is better.
124
120
  if (verticallyStretchedCellRatio >= MINIMUM_CELL_ASPECT_RATIO_ALLOWED) {
@@ -130,11 +126,7 @@ export const calculateGridProps = (numberOfItems, width, height) => {
130
126
  }
131
127
  break;
132
128
  }
133
- return {
134
- fillDirection,
135
- rows,
136
- columns
137
- };
129
+ return { fillDirection, rows, columns };
138
130
  };
139
131
  /**
140
132
  * Creates a styles classname with CSS Grid related styles given GridProps and the number of items to distribute as evenly as possible.
@@ -152,33 +144,41 @@ export const createGridStyles = (numberOfItems, gridProps) => {
152
144
  // Get grid units
153
145
  // e.g. If some blocks have 2 big cells while others have 3 small cells, we need to work with 6 units per block
154
146
  const units = smallCellsPerBlock * bigCellsPerBlock;
155
- const gridStyles = isHorizontal ? {
156
- gridTemplateColumns: `repeat(${units}, minmax(0, 1fr))`,
157
- gridTemplateRows: `repeat(${blocks}, minmax(0, 1fr))`,
158
- gridAutoFlow: 'row'
159
- } : {
160
- gridTemplateColumns: `repeat(${blocks}, minmax(0, 1fr))`,
161
- gridTemplateRows: `repeat(${units}, minmax(0, 1fr))`,
162
- gridAutoFlow: 'column'
163
- };
164
- const smallCellStyle = isHorizontal ? {
165
- '> *': {
166
- gridColumn: `auto / span ${units / smallCellsPerBlock}`
147
+ const gridStyles = isHorizontal
148
+ ? {
149
+ gridTemplateColumns: `repeat(${units}, minmax(0, 1fr))`,
150
+ gridTemplateRows: `repeat(${blocks}, minmax(0, 1fr))`,
151
+ gridAutoFlow: 'row'
167
152
  }
168
- } : {
169
- '> *': {
170
- gridRow: `auto / span ${units / smallCellsPerBlock}`
153
+ : {
154
+ gridTemplateColumns: `repeat(${blocks}, minmax(0, 1fr))`,
155
+ gridTemplateRows: `repeat(${units}, minmax(0, 1fr))`,
156
+ gridAutoFlow: 'column'
157
+ };
158
+ const smallCellStyle = isHorizontal
159
+ ? {
160
+ '> *': {
161
+ gridColumn: `auto / span ${units / smallCellsPerBlock}`
162
+ }
171
163
  }
172
- };
164
+ : {
165
+ '> *': {
166
+ gridRow: `auto / span ${units / smallCellsPerBlock}`
167
+ }
168
+ };
173
169
  // If there are big cells, we are choosing to place the latest children into the big cells.
174
170
  // That is why we use the '> *:nth-last-child(-n + ${numBigCells})' CSS selector below
175
- const bigCellStyle = numBigCells ? {
176
- [`> *:nth-last-child(-n + ${numBigCells})`]: isHorizontal ? {
177
- gridColumn: `auto / span ${units / bigCellsPerBlock}`
178
- } : {
179
- gridRow: `auto / span ${units / bigCellsPerBlock}`
171
+ const bigCellStyle = numBigCells
172
+ ? {
173
+ [`> *:nth-last-child(-n + ${numBigCells})`]: isHorizontal
174
+ ? {
175
+ gridColumn: `auto / span ${units / bigCellsPerBlock}`
176
+ }
177
+ : {
178
+ gridRow: `auto / span ${units / bigCellsPerBlock}`
179
+ }
180
180
  }
181
- } : {};
181
+ : {};
182
182
  return mergeStyles(gridStyles, smallCellStyle, bigCellStyle);
183
183
  };
184
184
  //# sourceMappingURL=GridLayout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GridLayout.js","sourceRoot":"","sources":["../../../../../preprocess-dist/react-components/src/components/GridLayout.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 React, { useRef, useEffect, useState, useMemo } from 'react';\nimport { BaseCustomStyles } from '../types';\nimport { gridLayoutStyle } from './styles/GridLayout.styles';\n\n/**\n * Props for {@link GridLayout}.\n *\n * @public\n */\nexport interface GridLayoutProps {\n children: React.ReactNode;\n /**\n * Allows users to pass in an object contains custom CSS styles.\n * @Example\n * ```\n * <GridLayout styles={{ root: { background: 'blue' } }} />\n * ```\n */\n styles?: BaseCustomStyles;\n}\n\n/**\n * {@link GridLayout} Component Styles.\n * @public\n */\nexport interface GridLayoutStyles extends BaseCustomStyles {\n /** Styles for each child of {@link GridLayout} */\n children?: IStyle;\n}\n\n/**\n * A component to lay out audio / video participants tiles in a call.\n *\n * @public\n */\nexport const GridLayout = (props: GridLayoutProps): JSX.Element => {\n const {\n children,\n styles\n } = props;\n const numberOfChildren = React.Children.count(children);\n const [currentWidth, setCurrentWidth] = useState(0);\n const [currentHeight, setCurrentHeight] = useState(0);\n const containerRef = useRef<HTMLDivElement>(null);\n const observer = useRef(new ResizeObserver((entries): void => {\n const {\n width,\n height\n } = entries[0].contentRect;\n setCurrentWidth(width);\n setCurrentHeight(height);\n }));\n useEffect(() => {\n if (containerRef.current) {\n observer.current.observe(containerRef.current);\n }\n const currentObserver = observer.current;\n return () => currentObserver.disconnect();\n }, [observer, containerRef]);\n const gridProps = useMemo(() => {\n return calculateGridProps(numberOfChildren, currentWidth, currentHeight);\n }, [numberOfChildren, currentWidth, currentHeight]);\n const cssGridStyles = useMemo(() => createGridStyles(numberOfChildren, gridProps), [numberOfChildren, gridProps]);\n return <div ref={containerRef} className={mergeStyles(gridLayoutStyle, cssGridStyles, styles?.root)} data-ui-id=\"grid-layout\">\n {children}\n </div>;\n};\n\n/**\n * The cell aspect ratio we aim for in a grid\n */\nconst TARGET_CELL_ASPECT_RATIO = 16 / 9;\n/**\n * The minimum cell aspect ratio we allow\n */\nconst MINIMUM_CELL_ASPECT_RATIO_ALLOWED = 8 / 9;\nconst isCloserThan = (a: number, b: number, target: number): boolean => {\n return Math.abs(target - a) < Math.abs(target - b);\n};\n\n/**\n * Properties to describe a grid. The number of rows, number of columns and whether it fills horizontally or vertically.\n *\n * @Example\n * ```\n * ______________________\n * |_______|_______|______|\n * |___________|__________| This grid has 2 rows, 3 columns and fills horizontally.\n * ______________\n * | | | |\n * |____|____| |\n * | | | |\n * |____|____|____| This grid has 2 rows, 3 columns and fills vertically.\n * _______________\n * | | |\n * |_______|_______|\n * | | | If all cells are equal, we default the fill direction as horizontal.\n * |_______|_______| This grid has 2 rows, 2 columns and fills horizontally.\n * ```\n */\ntype GridProps = {\n fillDirection: FillDirection;\n rows: number;\n columns: number;\n};\ntype FillDirection = 'horizontal' | 'vertical';\n\n/**\n * Get the best GridProps to place a number of items in a grid as evenly as possible given the width and height of the grid\n * @param numberOfItems - number of items to place in grid\n * @param width - width of grid\n * @param height - height of grid\n * @returns GridProps\n */\nexport const calculateGridProps = (numberOfItems: number, width: number, height: number): GridProps => {\n if (numberOfItems <= 0) {\n return {\n fillDirection: 'horizontal',\n rows: 0,\n columns: 0\n };\n }\n // If width or height are 0 then we return rows and column evenly\n if (width <= 0 || height <= 0) {\n return {\n fillDirection: 'horizontal',\n rows: Math.ceil(Math.sqrt(numberOfItems)),\n columns: Math.ceil(Math.sqrt(numberOfItems))\n };\n }\n const aspectRatio = width / height;\n // Approximate how many rows to divide the grid to achieve cells close to the TARGET_CELL_ASPECT_RATIO\n let rows = Math.floor(Math.sqrt(TARGET_CELL_ASPECT_RATIO / aspectRatio * numberOfItems)) || 1;\n // Make sure rows do not exceed numberOfItems\n rows = Math.min(rows, numberOfItems);\n // Given the rows, get the minimum columns needed to create enough cells for the number of items\n let columns = Math.ceil(numberOfItems / rows);\n\n // Default fill direction to horizontal\n let fillDirection: 'horizontal' | 'vertical' = 'horizontal';\n while (rows < numberOfItems) {\n // If cell aspect ratio is less than MINIMUM_CELL_ASPECT_RATIO_ALLOWED then try more rows\n if (rows / columns * aspectRatio < MINIMUM_CELL_ASPECT_RATIO_ALLOWED) {\n rows += 1;\n columns = Math.ceil(numberOfItems / rows);\n continue;\n }\n if (numberOfItems < rows * columns) {\n // We need to check that stretching columns vertically will result in only one less cell in stretched columns.\n // Likewise, we need to check that stretching rows horizonally will result in only one less cell in stretched rows.\n // e.g. For 4 rows, 2 columns, but only 6 items, we cannot stretch vertically because that would result in a\n // column of 2 cells which is less by more than 1 compared to the unstretched column.\n // _________\n // |____| |\n // |____|____|\n // |____| |\n // |____|____|\n\n const canStretchVertically = numberOfItems >= rows + (columns - 1) * (rows - 1);\n const canStretchHorizontally = numberOfItems >= columns + (rows - 1) * (columns - 1);\n if (!canStretchVertically && !canStretchHorizontally) {\n rows += 1;\n columns = Math.ceil(numberOfItems / rows);\n continue;\n } else if (!canStretchVertically) {\n break;\n } else if (!canStretchHorizontally) {\n fillDirection = 'vertical';\n break;\n }\n\n // We need to figure out whether the big cells should stretch horizontally or vertically\n // to fill in the empty spaces\n // e.g. For 2 rows, 3 columns, but only 5 items, we need to choose whether to stretch cells\n // horizontally or vertically\n // ______________________ _______________________\n // | | | | | | | |\n // |_______|_______|______| |_______|_______| |\n // | | | | | | |\n // |___________|__________| |_______|_______|_______|\n\n // Calculate the aspect ratio of big cells stretched horizontally\n const horizontallyStretchedCellRatio = rows / (columns - 1) * aspectRatio;\n // Calculate the aspect ratio of big cells stretched vertically\n const verticallyStretchedCellRatio = (rows - 1) / columns * aspectRatio;\n // We know the horizontally stretched cells aspect ratio is higher than MINIMUM_CELL_ASPECT_RATIO_ALLOWED. If vertically stretched cells\n // is also higher than the MINIMUM_CELL_ASPECT_RATIO_ALLOWED, then choose which aspect ratio is better.\n if (verticallyStretchedCellRatio >= MINIMUM_CELL_ASPECT_RATIO_ALLOWED) {\n // If vertically stetched cell has an aspect ratio closer to TARGET_CELL_ASPECT_RATIO then change the fill direction to vertical\n if (isCloserThan(verticallyStretchedCellRatio, horizontallyStretchedCellRatio, TARGET_CELL_ASPECT_RATIO)) {\n fillDirection = 'vertical';\n }\n }\n }\n break;\n }\n return {\n fillDirection,\n rows,\n columns\n };\n};\n\n/**\n * Creates a styles classname with CSS Grid related styles given GridProps and the number of items to distribute as evenly as possible.\n * @param numberOfItems - number of items to place in grid\n * @param gridProps - GridProps that define the number of rows, number of columns, and the fill direction\n * @returns - classname\n */\nexport const createGridStyles = (numberOfItems: number, gridProps: GridProps): string => {\n const isHorizontal = gridProps.fillDirection === 'horizontal';\n // Blocks are either rows or columns depending on whether we fill horizontally or vertically. Each block may differ in the number of cells.\n const blocks = isHorizontal ? gridProps.rows : gridProps.columns;\n const smallCellsPerBlock = Math.ceil(numberOfItems / blocks);\n const bigCellsPerBlock = Math.floor(numberOfItems / blocks);\n const numBigCells = (gridProps.rows * gridProps.columns - numberOfItems) * bigCellsPerBlock;\n // Get grid units\n // e.g. If some blocks have 2 big cells while others have 3 small cells, we need to work with 6 units per block\n const units = smallCellsPerBlock * bigCellsPerBlock;\n const gridStyles = isHorizontal ? {\n gridTemplateColumns: `repeat(${units}, minmax(0, 1fr))`,\n gridTemplateRows: `repeat(${blocks}, minmax(0, 1fr))`,\n gridAutoFlow: 'row'\n } : {\n gridTemplateColumns: `repeat(${blocks}, minmax(0, 1fr))`,\n gridTemplateRows: `repeat(${units}, minmax(0, 1fr))`,\n gridAutoFlow: 'column'\n };\n const smallCellStyle = isHorizontal ? {\n '> *': {\n gridColumn: `auto / span ${units / smallCellsPerBlock}`\n }\n } : {\n '> *': {\n gridRow: `auto / span ${units / smallCellsPerBlock}`\n }\n };\n\n // If there are big cells, we are choosing to place the latest children into the big cells.\n // That is why we use the '> *:nth-last-child(-n + ${numBigCells})' CSS selector below\n const bigCellStyle = numBigCells ? {\n [`> *:nth-last-child(-n + ${numBigCells})`]: isHorizontal ? {\n gridColumn: `auto / span ${units / bigCellsPerBlock}`\n } : {\n gridRow: `auto / span ${units / bigCellsPerBlock}`\n }\n } : {};\n return mergeStyles(gridStyles, smallCellStyle, bigCellStyle);\n};"]}
1
+ {"version":3,"file":"GridLayout.js","sourceRoot":"","sources":["../../../../../../react-components/src/components/GridLayout.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAU,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEpE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AA4B7D;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAsB,EAAe,EAAE;IAChE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACnC,MAAM,gBAAgB,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAExD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAEtD,MAAM,YAAY,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAElD,MAAM,QAAQ,GAAG,MAAM,CACrB,IAAI,cAAc,CAAC,CAAC,OAAO,EAAQ,EAAE;QACnC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QACjD,eAAe,CAAC,KAAK,CAAC,CAAC;QACvB,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC,CAAC,CACH,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YACzB,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC;QACD,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC;QACzC,OAAO,GAAG,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;IAC5C,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;IAE7B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE;QAC7B,OAAO,kBAAkB,CAAC,gBAAgB,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC;IAC3E,CAAC,EAAE,CAAC,gBAAgB,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC,CAAC;IAEpD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,SAAS,CAAC,EAAE,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC,CAAC;IAElH,OAAO,CACL,6BACE,GAAG,EAAE,YAAY,EACjB,SAAS,EAAE,WAAW,CAAC,eAAe,EAAE,aAAa,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC,gBACzD,aAAa,IAEvB,QAAQ,CACL,CACP,CAAC;AACJ,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,wBAAwB,GAAG,EAAE,GAAG,CAAC,CAAC;AACxC;;GAEG;AACH,MAAM,iCAAiC,GAAG,CAAC,GAAG,CAAC,CAAC;AAEhD,MAAM,YAAY,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,MAAc,EAAW,EAAE;IACrE,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACrD,CAAC,CAAC;AA8BF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,aAAqB,EAAE,KAAa,EAAE,MAAc,EAAa,EAAE;IACpG,IAAI,aAAa,IAAI,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IAC9D,CAAC;IACD,iEAAiE;IACjE,IAAI,KAAK,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QAC9B,OAAO;YACL,aAAa,EAAE,YAAY;YAC3B,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACzC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SAC7C,CAAC;IACJ,CAAC;IACD,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,CAAC;IACnC,sGAAsG;IACtG,IAAI,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,wBAAwB,GAAG,WAAW,CAAC,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC;IAChG,6CAA6C;IAC7C,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACrC,gGAAgG;IAChG,IAAI,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAE9C,uCAAuC;IACvC,IAAI,aAAa,GAA8B,YAAY,CAAC;IAE5D,OAAO,IAAI,GAAG,aAAa,EAAE,CAAC;QAC5B,yFAAyF;QACzF,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,GAAG,WAAW,GAAG,iCAAiC,EAAE,CAAC;YACvE,IAAI,IAAI,CAAC,CAAC;YACV,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;YAC1C,SAAS;QACX,CAAC;QACD,IAAI,aAAa,GAAG,IAAI,GAAG,OAAO,EAAE,CAAC;YACnC,8GAA8G;YAC9G,mHAAmH;YACnH,4GAA4G;YAC5G,qFAAqF;YACrF,aAAa;YACb,cAAc;YACd,cAAc;YACd,cAAc;YACd,cAAc;YAEd,MAAM,oBAAoB,GAAG,aAAa,IAAI,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;YAChF,MAAM,sBAAsB,GAAG,aAAa,IAAI,OAAO,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;YACrF,IAAI,CAAC,oBAAoB,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBACrD,IAAI,IAAI,CAAC,CAAC;gBACV,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;gBAC1C,SAAS;YACX,CAAC;iBAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACjC,MAAM;YACR,CAAC;iBAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBACnC,aAAa,GAAG,UAAU,CAAC;gBAC3B,MAAM;YACR,CAAC;YAED,wFAAwF;YACxF,8BAA8B;YAC9B,2FAA2F;YAC3F,wDAAwD;YACxD,gEAAgE;YAChE,iEAAiE;YACjE,iEAAiE;YACjE,iEAAiE;YACjE,iEAAiE;YAEjE,iEAAiE;YACjE,MAAM,8BAA8B,GAAG,CAAC,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC;YAC5E,+DAA+D;YAC/D,MAAM,4BAA4B,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,WAAW,CAAC;YAC1E,wIAAwI;YACxI,uGAAuG;YACvG,IAAI,4BAA4B,IAAI,iCAAiC,EAAE,CAAC;gBACtE,gIAAgI;gBAChI,IAAI,YAAY,CAAC,4BAA4B,EAAE,8BAA8B,EAAE,wBAAwB,CAAC,EAAE,CAAC;oBACzG,aAAa,GAAG,UAAU,CAAC;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM;IACR,CAAC;IAED,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AAC1C,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,aAAqB,EAAE,SAAoB,EAAU,EAAE;IACtF,MAAM,YAAY,GAAG,SAAS,CAAC,aAAa,KAAK,YAAY,CAAC;IAC9D,2IAA2I;IAC3I,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC;IACjE,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,CAAC;IAC7D,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC,CAAC;IAC5D,MAAM,WAAW,GAAG,CAAC,SAAS,CAAC,IAAI,GAAG,SAAS,CAAC,OAAO,GAAG,aAAa,CAAC,GAAG,gBAAgB,CAAC;IAC5F,iBAAiB;IACjB,+GAA+G;IAC/G,MAAM,KAAK,GAAG,kBAAkB,GAAG,gBAAgB,CAAC;IAEpD,MAAM,UAAU,GAAG,YAAY;QAC7B,CAAC,CAAC;YACE,mBAAmB,EAAE,UAAU,KAAK,mBAAmB;YACvD,gBAAgB,EAAE,UAAU,MAAM,mBAAmB;YACrD,YAAY,EAAE,KAAK;SACpB;QACH,CAAC,CAAC;YACE,mBAAmB,EAAE,UAAU,MAAM,mBAAmB;YACxD,gBAAgB,EAAE,UAAU,KAAK,mBAAmB;YACpD,YAAY,EAAE,QAAQ;SACvB,CAAC;IAEN,MAAM,cAAc,GAAG,YAAY;QACjC,CAAC,CAAC;YACE,KAAK,EAAE;gBACL,UAAU,EAAE,eAAe,KAAK,GAAG,kBAAkB,EAAE;aACxD;SACF;QACH,CAAC,CAAC;YACE,KAAK,EAAE;gBACL,OAAO,EAAE,eAAe,KAAK,GAAG,kBAAkB,EAAE;aACrD;SACF,CAAC;IAEN,2FAA2F;IAC3F,sFAAsF;IACtF,MAAM,YAAY,GAAG,WAAW;QAC9B,CAAC,CAAC;YACE,CAAC,2BAA2B,WAAW,GAAG,CAAC,EAAE,YAAY;gBACvD,CAAC,CAAC;oBACE,UAAU,EAAE,eAAe,KAAK,GAAG,gBAAgB,EAAE;iBACtD;gBACH,CAAC,CAAC;oBACE,OAAO,EAAE,eAAe,KAAK,GAAG,gBAAgB,EAAE;iBACnD;SACN;QACH,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO,WAAW,CAAC,UAAU,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;AAC/D,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { IStyle, mergeStyles } from '@fluentui/react';\nimport React, { useRef, useEffect, useState, useMemo } from 'react';\nimport { BaseCustomStyles } from '../types';\nimport { gridLayoutStyle } from './styles/GridLayout.styles';\n\n/**\n * Props for {@link GridLayout}.\n *\n * @public\n */\nexport interface GridLayoutProps {\n children: React.ReactNode;\n /**\n * Allows users to pass in an object contains custom CSS styles.\n * @Example\n * ```\n * <GridLayout styles={{ root: { background: 'blue' } }} />\n * ```\n */\n styles?: BaseCustomStyles;\n}\n\n/**\n * {@link GridLayout} Component Styles.\n * @public\n */\nexport interface GridLayoutStyles extends BaseCustomStyles {\n /** Styles for each child of {@link GridLayout} */\n children?: IStyle;\n}\n\n/**\n * A component to lay out audio / video participants tiles in a call.\n *\n * @public\n */\nexport const GridLayout = (props: GridLayoutProps): JSX.Element => {\n const { children, styles } = props;\n const numberOfChildren = React.Children.count(children);\n\n const [currentWidth, setCurrentWidth] = useState(0);\n const [currentHeight, setCurrentHeight] = useState(0);\n\n const containerRef = useRef<HTMLDivElement>(null);\n\n const observer = useRef(\n new ResizeObserver((entries): void => {\n const { width, height } = entries[0].contentRect;\n setCurrentWidth(width);\n setCurrentHeight(height);\n })\n );\n\n useEffect(() => {\n if (containerRef.current) {\n observer.current.observe(containerRef.current);\n }\n const currentObserver = observer.current;\n return () => currentObserver.disconnect();\n }, [observer, containerRef]);\n\n const gridProps = useMemo(() => {\n return calculateGridProps(numberOfChildren, currentWidth, currentHeight);\n }, [numberOfChildren, currentWidth, currentHeight]);\n\n const cssGridStyles = useMemo(() => createGridStyles(numberOfChildren, gridProps), [numberOfChildren, gridProps]);\n\n return (\n <div\n ref={containerRef}\n className={mergeStyles(gridLayoutStyle, cssGridStyles, styles?.root)}\n data-ui-id=\"grid-layout\"\n >\n {children}\n </div>\n );\n};\n\n/**\n * The cell aspect ratio we aim for in a grid\n */\nconst TARGET_CELL_ASPECT_RATIO = 16 / 9;\n/**\n * The minimum cell aspect ratio we allow\n */\nconst MINIMUM_CELL_ASPECT_RATIO_ALLOWED = 8 / 9;\n\nconst isCloserThan = (a: number, b: number, target: number): boolean => {\n return Math.abs(target - a) < Math.abs(target - b);\n};\n\n/**\n * Properties to describe a grid. The number of rows, number of columns and whether it fills horizontally or vertically.\n *\n * @Example\n * ```\n * ______________________\n * |_______|_______|______|\n * |___________|__________| This grid has 2 rows, 3 columns and fills horizontally.\n * ______________\n * | | | |\n * |____|____| |\n * | | | |\n * |____|____|____| This grid has 2 rows, 3 columns and fills vertically.\n * _______________\n * | | |\n * |_______|_______|\n * | | | If all cells are equal, we default the fill direction as horizontal.\n * |_______|_______| This grid has 2 rows, 2 columns and fills horizontally.\n * ```\n */\ntype GridProps = {\n fillDirection: FillDirection;\n rows: number;\n columns: number;\n};\n\ntype FillDirection = 'horizontal' | 'vertical';\n\n/**\n * Get the best GridProps to place a number of items in a grid as evenly as possible given the width and height of the grid\n * @param numberOfItems - number of items to place in grid\n * @param width - width of grid\n * @param height - height of grid\n * @returns GridProps\n */\nexport const calculateGridProps = (numberOfItems: number, width: number, height: number): GridProps => {\n if (numberOfItems <= 0) {\n return { fillDirection: 'horizontal', rows: 0, columns: 0 };\n }\n // If width or height are 0 then we return rows and column evenly\n if (width <= 0 || height <= 0) {\n return {\n fillDirection: 'horizontal',\n rows: Math.ceil(Math.sqrt(numberOfItems)),\n columns: Math.ceil(Math.sqrt(numberOfItems))\n };\n }\n const aspectRatio = width / height;\n // Approximate how many rows to divide the grid to achieve cells close to the TARGET_CELL_ASPECT_RATIO\n let rows = Math.floor(Math.sqrt((TARGET_CELL_ASPECT_RATIO / aspectRatio) * numberOfItems)) || 1;\n // Make sure rows do not exceed numberOfItems\n rows = Math.min(rows, numberOfItems);\n // Given the rows, get the minimum columns needed to create enough cells for the number of items\n let columns = Math.ceil(numberOfItems / rows);\n\n // Default fill direction to horizontal\n let fillDirection: 'horizontal' | 'vertical' = 'horizontal';\n\n while (rows < numberOfItems) {\n // If cell aspect ratio is less than MINIMUM_CELL_ASPECT_RATIO_ALLOWED then try more rows\n if ((rows / columns) * aspectRatio < MINIMUM_CELL_ASPECT_RATIO_ALLOWED) {\n rows += 1;\n columns = Math.ceil(numberOfItems / rows);\n continue;\n }\n if (numberOfItems < rows * columns) {\n // We need to check that stretching columns vertically will result in only one less cell in stretched columns.\n // Likewise, we need to check that stretching rows horizonally will result in only one less cell in stretched rows.\n // e.g. For 4 rows, 2 columns, but only 6 items, we cannot stretch vertically because that would result in a\n // column of 2 cells which is less by more than 1 compared to the unstretched column.\n // _________\n // |____| |\n // |____|____|\n // |____| |\n // |____|____|\n\n const canStretchVertically = numberOfItems >= rows + (columns - 1) * (rows - 1);\n const canStretchHorizontally = numberOfItems >= columns + (rows - 1) * (columns - 1);\n if (!canStretchVertically && !canStretchHorizontally) {\n rows += 1;\n columns = Math.ceil(numberOfItems / rows);\n continue;\n } else if (!canStretchVertically) {\n break;\n } else if (!canStretchHorizontally) {\n fillDirection = 'vertical';\n break;\n }\n\n // We need to figure out whether the big cells should stretch horizontally or vertically\n // to fill in the empty spaces\n // e.g. For 2 rows, 3 columns, but only 5 items, we need to choose whether to stretch cells\n // horizontally or vertically\n // ______________________ _______________________\n // | | | | | | | |\n // |_______|_______|______| |_______|_______| |\n // | | | | | | |\n // |___________|__________| |_______|_______|_______|\n\n // Calculate the aspect ratio of big cells stretched horizontally\n const horizontallyStretchedCellRatio = (rows / (columns - 1)) * aspectRatio;\n // Calculate the aspect ratio of big cells stretched vertically\n const verticallyStretchedCellRatio = ((rows - 1) / columns) * aspectRatio;\n // We know the horizontally stretched cells aspect ratio is higher than MINIMUM_CELL_ASPECT_RATIO_ALLOWED. If vertically stretched cells\n // is also higher than the MINIMUM_CELL_ASPECT_RATIO_ALLOWED, then choose which aspect ratio is better.\n if (verticallyStretchedCellRatio >= MINIMUM_CELL_ASPECT_RATIO_ALLOWED) {\n // If vertically stetched cell has an aspect ratio closer to TARGET_CELL_ASPECT_RATIO then change the fill direction to vertical\n if (isCloserThan(verticallyStretchedCellRatio, horizontallyStretchedCellRatio, TARGET_CELL_ASPECT_RATIO)) {\n fillDirection = 'vertical';\n }\n }\n }\n break;\n }\n\n return { fillDirection, rows, columns };\n};\n\n/**\n * Creates a styles classname with CSS Grid related styles given GridProps and the number of items to distribute as evenly as possible.\n * @param numberOfItems - number of items to place in grid\n * @param gridProps - GridProps that define the number of rows, number of columns, and the fill direction\n * @returns - classname\n */\nexport const createGridStyles = (numberOfItems: number, gridProps: GridProps): string => {\n const isHorizontal = gridProps.fillDirection === 'horizontal';\n // Blocks are either rows or columns depending on whether we fill horizontally or vertically. Each block may differ in the number of cells.\n const blocks = isHorizontal ? gridProps.rows : gridProps.columns;\n const smallCellsPerBlock = Math.ceil(numberOfItems / blocks);\n const bigCellsPerBlock = Math.floor(numberOfItems / blocks);\n const numBigCells = (gridProps.rows * gridProps.columns - numberOfItems) * bigCellsPerBlock;\n // Get grid units\n // e.g. If some blocks have 2 big cells while others have 3 small cells, we need to work with 6 units per block\n const units = smallCellsPerBlock * bigCellsPerBlock;\n\n const gridStyles = isHorizontal\n ? {\n gridTemplateColumns: `repeat(${units}, minmax(0, 1fr))`,\n gridTemplateRows: `repeat(${blocks}, minmax(0, 1fr))`,\n gridAutoFlow: 'row'\n }\n : {\n gridTemplateColumns: `repeat(${blocks}, minmax(0, 1fr))`,\n gridTemplateRows: `repeat(${units}, minmax(0, 1fr))`,\n gridAutoFlow: 'column'\n };\n\n const smallCellStyle = isHorizontal\n ? {\n '> *': {\n gridColumn: `auto / span ${units / smallCellsPerBlock}`\n }\n }\n : {\n '> *': {\n gridRow: `auto / span ${units / smallCellsPerBlock}`\n }\n };\n\n // If there are big cells, we are choosing to place the latest children into the big cells.\n // That is why we use the '> *:nth-last-child(-n + ${numBigCells})' CSS selector below\n const bigCellStyle = numBigCells\n ? {\n [`> *:nth-last-child(-n + ${numBigCells})`]: isHorizontal\n ? {\n gridColumn: `auto / span ${units / bigCellsPerBlock}`\n }\n : {\n gridRow: `auto / span ${units / bigCellsPerBlock}`\n }\n }\n : {};\n\n return mergeStyles(gridStyles, smallCellStyle, bigCellStyle);\n};\n"]}
@@ -13,13 +13,13 @@ export const _HighContrastAwareIcon = (props) => {
13
13
  const theme = useTheme();
14
14
  // setting colors for the icons using color from theme, so in dark mode or other accessibility modes, they have pre-defined contrast colors
15
15
  // the media query is for when in specific window accessibility mode, change the svg colors
16
- return React.createElement(Icon, { iconName: iconName, className: mergeStyles({
16
+ return (React.createElement(Icon, { iconName: iconName, className: mergeStyles({
17
17
  svg: {
18
18
  fill: disabled ? theme.palette.neutralTertiary : theme.palette.neutralPrimaryAlt,
19
19
  '@media (forced-colors: active) and (prefers-color-scheme: dark)': {
20
20
  fill: disabled ? theme.palette.neutralPrimaryAlt : theme.palette.neutralTertiary
21
21
  }
22
22
  }
23
- }) });
23
+ }) }));
24
24
  };
25
25
  //# sourceMappingURL=HighContrastAwareIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"HighContrastAwareIcon.js","sourceRoot":"","sources":["../../../../../preprocess-dist/react-components/src/components/HighContrastAwareIcon.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAYtC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,KAAkC,EAAe,EAAE;IACxF,MAAM,EACJ,QAAQ,EACR,QAAQ,EACT,GAAG,KAAK,CAAC;IACV,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,2IAA2I;IAC3I,2FAA2F;IAC3F,OAAO,oBAAC,IAAI,IAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC;YACtD,GAAG,EAAE;gBACH,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB;gBAChF,iEAAiE,EAAE;oBACjE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe;iBACjF;aACF;SACF,CAAC,GAAI,CAAC;AACT,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Icon, mergeStyles } from '@fluentui/react';\nimport React from 'react';\nimport { useTheme } from '../theming';\n\n/**\n * @internal\n */\nexport interface _HighContrastAwareIconProps {\n /** Icon name */\n iconName: string;\n /** Whether button is disabled */\n disabled?: boolean | undefined;\n}\n\n/**\n * This is a helper component to define and unify icon colors\n *\n * @internal\n */\nexport const _HighContrastAwareIcon = (props: _HighContrastAwareIconProps): JSX.Element => {\n const {\n iconName,\n disabled\n } = props;\n const theme = useTheme();\n // setting colors for the icons using color from theme, so in dark mode or other accessibility modes, they have pre-defined contrast colors\n // the media query is for when in specific window accessibility mode, change the svg colors\n return <Icon iconName={iconName} className={mergeStyles({\n svg: {\n fill: disabled ? theme.palette.neutralTertiary : theme.palette.neutralPrimaryAlt,\n '@media (forced-colors: active) and (prefers-color-scheme: dark)': {\n fill: disabled ? theme.palette.neutralPrimaryAlt : theme.palette.neutralTertiary\n }\n }\n })} />;\n};"]}
1
+ {"version":3,"file":"HighContrastAwareIcon.js","sourceRoot":"","sources":["../../../../../../react-components/src/components/HighContrastAwareIcon.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAYtC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,KAAkC,EAAe,EAAE;IACxF,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IACrC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,2IAA2I;IAC3I,2FAA2F;IAC3F,OAAO,CACL,oBAAC,IAAI,IACH,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,WAAW,CAAC;YACrB,GAAG,EAAE;gBACH,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB;gBAEhF,iEAAiE,EAAE;oBACjE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe;iBACjF;aACF;SACF,CAAC,GACF,CACH,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { Icon, mergeStyles } from '@fluentui/react';\nimport React from 'react';\nimport { useTheme } from '../theming';\n\n/**\n * @internal\n */\nexport interface _HighContrastAwareIconProps {\n /** Icon name */\n iconName: string;\n /** Whether button is disabled */\n disabled?: boolean | undefined;\n}\n\n/**\n * This is a helper component to define and unify icon colors\n *\n * @internal\n */\nexport const _HighContrastAwareIcon = (props: _HighContrastAwareIconProps): JSX.Element => {\n const { iconName, disabled } = props;\n const theme = useTheme();\n // setting colors for the icons using color from theme, so in dark mode or other accessibility modes, they have pre-defined contrast colors\n // the media query is for when in specific window accessibility mode, change the svg colors\n return (\n <Icon\n iconName={iconName}\n className={mergeStyles({\n svg: {\n fill: disabled ? theme.palette.neutralTertiary : theme.palette.neutralPrimaryAlt,\n\n '@media (forced-colors: active) and (prefers-color-scheme: dark)': {\n fill: disabled ? theme.palette.neutralPrimaryAlt : theme.palette.neutralTertiary\n }\n }\n })}\n />\n );\n};\n"]}
@@ -0,0 +1,49 @@
1
+ /// <reference types="react" />
2
+ import { ControlBarButtonProps } from './ControlBarButton';
3
+ /**
4
+ *@beta
5
+ */
6
+ export interface HoldButtonProps extends ControlBarButtonProps {
7
+ /**
8
+ * Utility property for using this component with communication react handlers
9
+ * Holds the call or resumes it based on call state.
10
+ */
11
+ onToggleHold: () => Promise<void>;
12
+ /**
13
+ * Optional strings to override in component
14
+ */
15
+ strings?: HoldButtonStrings;
16
+ }
17
+ /**
18
+ * Strings for the hold button labels
19
+ * @beta
20
+ */
21
+ export interface HoldButtonStrings {
22
+ /**
23
+ * Label for when action is to resume call.
24
+ */
25
+ onLabel: string;
26
+ /**
27
+ * Label for when action is to hold call.
28
+ */
29
+ offLabel: string;
30
+ /**
31
+ * Content for when button is checked
32
+ */
33
+ tooltipOnContent: string;
34
+ /**
35
+ * Content for when button is unchecked
36
+ */
37
+ tooltipOffContent: string;
38
+ }
39
+ /**
40
+ * a button to hold or resume a ongoing call.
41
+ *
42
+ * Can be used with {@link ControlBar}
43
+ *
44
+ * @param props - properties for the hold button.
45
+ * @returns
46
+ * @beta
47
+ */
48
+ export declare const HoldButton: (props: HoldButtonProps) => JSX.Element;
49
+ //# sourceMappingURL=HoldButton.d.ts.map
@@ -0,0 +1,25 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT License.
3
+ import { ControlBarButton } from './ControlBarButton';
4
+ import React from 'react';
5
+ import { _HighContrastAwareIcon } from './HighContrastAwareIcon';
6
+ /**
7
+ * a button to hold or resume a ongoing call.
8
+ *
9
+ * Can be used with {@link ControlBar}
10
+ *
11
+ * @param props - properties for the hold button.
12
+ * @returns
13
+ * @beta
14
+ */
15
+ export const HoldButton = (props) => {
16
+ const { onToggleHold, strings } = props;
17
+ const onRenderHoldIcon = () => {
18
+ return React.createElement(_HighContrastAwareIcon, { disabled: props.disabled, iconName: "HoldCallButton" });
19
+ };
20
+ const onRenderResumeIcon = () => {
21
+ return React.createElement(_HighContrastAwareIcon, { disabled: props.disabled, iconName: "ResumeCall" });
22
+ };
23
+ return (React.createElement(ControlBarButton, Object.assign({}, props, { strings: strings, onClick: onToggleHold !== null && onToggleHold !== void 0 ? onToggleHold : props.onClick, onRenderOnIcon: onRenderResumeIcon, onRenderOffIcon: onRenderHoldIcon })));
24
+ };
25
+ //# sourceMappingURL=HoldButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HoldButton.js","sourceRoot":"","sources":["../../../../../../react-components/src/components/HoldButton.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,gBAAgB,EAAyB,MAAM,oBAAoB,CAAC;AAC7E,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAwCjE;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,KAAsB,EAAe,EAAE;IAChE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAExC,MAAM,gBAAgB,GAAG,GAAgB,EAAE;QACzC,OAAO,oBAAC,sBAAsB,IAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAC,gBAAgB,GAAG,CAAC;IACxF,CAAC,CAAC;IACF,MAAM,kBAAkB,GAAG,GAAgB,EAAE;QAC3C,OAAO,oBAAC,sBAAsB,IAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAC,YAAY,GAAG,CAAC;IACpF,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,gBAAgB,oBACX,KAAK,IACT,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,KAAK,CAAC,OAAO,EACtC,cAAc,EAAE,kBAAkB,EAClC,eAAe,EAAE,gBAAgB,IACjC,CACH,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { ControlBarButton, ControlBarButtonProps } from './ControlBarButton';\nimport React from 'react';\nimport { _HighContrastAwareIcon } from './HighContrastAwareIcon';\n\n/**\n *@beta\n */\nexport interface HoldButtonProps extends ControlBarButtonProps {\n /**\n * Utility property for using this component with communication react handlers\n * Holds the call or resumes it based on call state.\n */\n onToggleHold: () => Promise<void>;\n /**\n * Optional strings to override in component\n */\n strings?: HoldButtonStrings;\n}\n\n/**\n * Strings for the hold button labels\n * @beta\n */\nexport interface HoldButtonStrings {\n /**\n * Label for when action is to resume call.\n */\n onLabel: string;\n /**\n * Label for when action is to hold call.\n */\n offLabel: string;\n /**\n * Content for when button is checked\n */\n tooltipOnContent: string;\n /**\n * Content for when button is unchecked\n */\n tooltipOffContent: string;\n}\n\n/**\n * a button to hold or resume a ongoing call.\n *\n * Can be used with {@link ControlBar}\n *\n * @param props - properties for the hold button.\n * @returns\n * @beta\n */\nexport const HoldButton = (props: HoldButtonProps): JSX.Element => {\n const { onToggleHold, strings } = props;\n\n const onRenderHoldIcon = (): JSX.Element => {\n return <_HighContrastAwareIcon disabled={props.disabled} iconName=\"HoldCallButton\" />;\n };\n const onRenderResumeIcon = (): JSX.Element => {\n return <_HighContrastAwareIcon disabled={props.disabled} iconName=\"ResumeCall\" />;\n };\n\n return (\n <ControlBarButton\n {...props}\n strings={strings}\n onClick={onToggleHold ?? props.onClick}\n onRenderOnIcon={onRenderResumeIcon}\n onRenderOffIcon={onRenderHoldIcon}\n />\n );\n};\n"]}