@azure/communication-react 1.9.0-alpha-202310181643 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1010) hide show
  1. package/dist/communication-react.d.ts +49 -2286
  2. package/dist/dist-cjs/communication-react/index.js +5087 -11948
  3. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  4. package/dist/dist-esm/acs-ui-common/src/MessageStatus.js.map +1 -1
  5. package/dist/dist-esm/acs-ui-common/src/areEqual.js.map +1 -1
  6. package/dist/dist-esm/acs-ui-common/src/common.js.map +1 -1
  7. package/dist/dist-esm/acs-ui-common/src/commonProperties.js.map +1 -1
  8. package/dist/dist-esm/acs-ui-common/src/constants.js.map +1 -1
  9. package/dist/dist-esm/acs-ui-common/src/cssUtils.js.map +1 -1
  10. package/dist/dist-esm/acs-ui-common/src/identifier.js +1 -4
  11. package/dist/dist-esm/acs-ui-common/src/identifier.js.map +1 -1
  12. package/dist/dist-esm/acs-ui-common/src/index.js.map +1 -1
  13. package/dist/dist-esm/acs-ui-common/src/localizationUtils.js.map +1 -1
  14. package/dist/dist-esm/acs-ui-common/src/logEvent.js.map +1 -1
  15. package/dist/dist-esm/acs-ui-common/src/memoizeFnAll.js.map +1 -1
  16. package/dist/dist-esm/acs-ui-common/src/safeStringify.js.map +1 -1
  17. package/dist/dist-esm/acs-ui-common/src/telemetry.js.map +1 -1
  18. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  19. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  20. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.d.ts +1 -2
  21. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js +0 -8
  22. package/dist/dist-esm/calling-component-bindings/src/baseSelectors.js.map +1 -1
  23. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.d.ts +0 -12
  24. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js +10 -54
  25. package/dist/dist-esm/calling-component-bindings/src/callControlSelectors.js.map +1 -1
  26. package/dist/dist-esm/calling-component-bindings/src/captionsSelector.js +5 -12
  27. package/dist/dist-esm/calling-component-bindings/src/captionsSelector.js.map +1 -1
  28. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js +55 -24
  29. package/dist/dist-esm/calling-component-bindings/src/errorBarSelector.js.map +1 -1
  30. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.d.ts +1 -11
  31. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +43 -53
  32. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
  33. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js +1 -11
  34. package/dist/dist-esm/calling-component-bindings/src/handlers/createDefaultCallingHandlersForComponent.js.map +1 -1
  35. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.d.ts +1 -1
  36. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js +3 -19
  37. package/dist/dist-esm/calling-component-bindings/src/handlers/createHandlers.js.map +1 -1
  38. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.d.ts +1 -1
  39. package/dist/dist-esm/calling-component-bindings/src/hooks/useHandlers.js.map +1 -1
  40. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.d.ts +1 -4
  41. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js +0 -19
  42. package/dist/dist-esm/calling-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  43. package/dist/dist-esm/calling-component-bindings/src/hooks/useSelector.js.map +1 -1
  44. package/dist/dist-esm/calling-component-bindings/src/index.d.ts +0 -6
  45. package/dist/dist-esm/calling-component-bindings/src/index.js +0 -8
  46. package/dist/dist-esm/calling-component-bindings/src/index.js.map +1 -1
  47. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.d.ts +0 -1
  48. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js +14 -46
  49. package/dist/dist-esm/calling-component-bindings/src/participantListSelector.js.map +1 -1
  50. package/dist/dist-esm/calling-component-bindings/src/participantsButtonSelector.js.map +1 -1
  51. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.d.ts +3 -4
  52. package/dist/dist-esm/calling-component-bindings/src/providers/CallAgentProvider.js.map +1 -1
  53. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js +3 -6
  54. package/dist/dist-esm/calling-component-bindings/src/providers/CallClientProvider.js.map +1 -1
  55. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.d.ts +2 -14
  56. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js +1 -20
  57. package/dist/dist-esm/calling-component-bindings/src/providers/CallProvider.js.map +1 -1
  58. package/dist/dist-esm/calling-component-bindings/src/providers/index.js.map +1 -1
  59. package/dist/dist-esm/calling-component-bindings/src/utils/SelectorUtils.js.map +1 -1
  60. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.d.ts +0 -7
  61. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js +6 -21
  62. package/dist/dist-esm/calling-component-bindings/src/utils/callUtils.js.map +1 -1
  63. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.d.ts +0 -4
  64. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js +1 -14
  65. package/dist/dist-esm/calling-component-bindings/src/utils/participantListSelectorUtils.js.map +1 -1
  66. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.d.ts +1 -2
  67. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js +13 -37
  68. package/dist/dist-esm/calling-component-bindings/src/utils/videoGalleryUtils.js.map +1 -1
  69. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js +7 -41
  70. package/dist/dist-esm/calling-component-bindings/src/videoGallerySelector.js.map +1 -1
  71. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.d.ts +5 -6
  72. package/dist/dist-esm/calling-stateful-client/src/BetaToStableTypes.js.map +1 -1
  73. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.d.ts +1 -15
  74. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarative.js.map +1 -1
  75. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.d.ts +1 -2
  76. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js +71 -66
  77. package/dist/dist-esm/calling-stateful-client/src/CallAgentDeclarativeCommon.js.map +1 -1
  78. package/dist/dist-esm/calling-stateful-client/src/CallClientState.d.ts +3 -60
  79. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  80. package/dist/dist-esm/calling-stateful-client/src/CallContext.d.ts +1 -8
  81. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +13 -79
  82. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  83. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js +8 -7
  84. package/dist/dist-esm/calling-stateful-client/src/CallDeclarative.js.map +1 -1
  85. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js +79 -109
  86. package/dist/dist-esm/calling-stateful-client/src/CallDeclarativeCommon.js.map +1 -1
  87. package/dist/dist-esm/calling-stateful-client/src/CallIdHistory.js.map +1 -1
  88. package/dist/dist-esm/calling-stateful-client/src/CallIdRef.js.map +1 -1
  89. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.d.ts +0 -1
  90. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +3 -9
  91. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  92. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js.map +1 -1
  93. package/dist/dist-esm/calling-stateful-client/src/CaptionsSubscriber.js.map +1 -1
  94. package/dist/dist-esm/calling-stateful-client/src/Converter.js +10 -17
  95. package/dist/dist-esm/calling-stateful-client/src/Converter.js.map +1 -1
  96. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js +57 -51
  97. package/dist/dist-esm/calling-stateful-client/src/DeviceManagerDeclarative.js.map +1 -1
  98. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js +16 -14
  99. package/dist/dist-esm/calling-stateful-client/src/IncomingCallDeclarative.js.map +1 -1
  100. package/dist/dist-esm/calling-stateful-client/src/IncomingCallSubscriber.js.map +1 -1
  101. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js +15 -3
  102. package/dist/dist-esm/calling-stateful-client/src/InternalCallContext.js.map +1 -1
  103. package/dist/dist-esm/calling-stateful-client/src/LocalVideoStreamVideoEffectsSubscriber.js.map +1 -1
  104. package/dist/dist-esm/calling-stateful-client/src/Logger.js.map +1 -1
  105. package/dist/dist-esm/calling-stateful-client/src/OptimalVideoCountSubscriber.js +3 -1
  106. package/dist/dist-esm/calling-stateful-client/src/OptimalVideoCountSubscriber.js.map +1 -1
  107. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.d.ts +0 -1
  108. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js +0 -8
  109. package/dist/dist-esm/calling-stateful-client/src/ParticipantSubscriber.js.map +1 -1
  110. package/dist/dist-esm/calling-stateful-client/src/RaiseHandSubscriber.js.map +1 -1
  111. package/dist/dist-esm/calling-stateful-client/src/RecordingSubscriber.js.map +1 -1
  112. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.d.ts +0 -1
  113. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js +0 -8
  114. package/dist/dist-esm/calling-stateful-client/src/RemoteVideoStreamSubscriber.js.map +1 -1
  115. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.d.ts +1 -25
  116. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js +40 -69
  117. package/dist/dist-esm/calling-stateful-client/src/StatefulCallClient.js.map +1 -1
  118. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js +31 -33
  119. package/dist/dist-esm/calling-stateful-client/src/StreamUtils.js.map +1 -1
  120. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js +11 -8
  121. package/dist/dist-esm/calling-stateful-client/src/StreamUtilsLogging.js.map +1 -1
  122. package/dist/dist-esm/calling-stateful-client/src/TranscriptionSubscriber.js.map +1 -1
  123. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.d.ts +2 -2
  124. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js +0 -8
  125. package/dist/dist-esm/calling-stateful-client/src/TypeGuards.js.map +1 -1
  126. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js +3 -3
  127. package/dist/dist-esm/calling-stateful-client/src/UserFacingDiagnosticsSubscriber.js.map +1 -1
  128. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js +7 -6
  129. package/dist/dist-esm/calling-stateful-client/src/VideoStreamRendererViewDeclarative.js.map +1 -1
  130. package/dist/dist-esm/calling-stateful-client/src/index-public.d.ts +0 -3
  131. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  132. package/dist/dist-esm/calling-stateful-client/src/index.js.map +1 -1
  133. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js +4 -4
  134. package/dist/dist-esm/chat-component-bindings/src/baseSelectors.js.map +1 -1
  135. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js +3 -3
  136. package/dist/dist-esm/chat-component-bindings/src/chatParticipantListSelector.js.map +1 -1
  137. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js +14 -13
  138. package/dist/dist-esm/chat-component-bindings/src/errorBarSelector.js.map +1 -1
  139. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.d.ts +1 -4
  140. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js +10 -3
  141. package/dist/dist-esm/chat-component-bindings/src/handlers/createHandlers.js.map +1 -1
  142. package/dist/dist-esm/chat-component-bindings/src/hooks/useHandlers.js.map +1 -1
  143. package/dist/dist-esm/chat-component-bindings/src/hooks/usePropsFor.js.map +1 -1
  144. package/dist/dist-esm/chat-component-bindings/src/hooks/useSelector.js.map +1 -1
  145. package/dist/dist-esm/chat-component-bindings/src/index.js.map +1 -1
  146. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js +15 -146
  147. package/dist/dist-esm/chat-component-bindings/src/messageThreadSelector.js.map +1 -1
  148. package/dist/dist-esm/chat-component-bindings/src/providers/ChatClientProvider.js.map +1 -1
  149. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js +1 -1
  150. package/dist/dist-esm/chat-component-bindings/src/providers/ChatThreadClientProvider.js.map +1 -1
  151. package/dist/dist-esm/chat-component-bindings/src/sendBoxSelector.js.map +1 -1
  152. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js +7 -3
  153. package/dist/dist-esm/chat-component-bindings/src/typingIndicatorSelector.js.map +1 -1
  154. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js +1 -3
  155. package/dist/dist-esm/chat-component-bindings/src/utils/compareMessages.js.map +1 -1
  156. package/dist/dist-esm/chat-component-bindings/src/utils/constants.js.map +1 -1
  157. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js +3 -10
  158. package/dist/dist-esm/chat-component-bindings/src/utils/updateMessagesWithAttached.js.map +1 -1
  159. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.d.ts +1 -1
  160. package/dist/dist-esm/chat-stateful-client/src/ChatClientState.js.map +1 -1
  161. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js +9 -5
  162. package/dist/dist-esm/chat-stateful-client/src/ChatContext.js.map +1 -1
  163. package/dist/dist-esm/chat-stateful-client/src/Constants.js.map +1 -1
  164. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js +11 -10
  165. package/dist/dist-esm/chat-stateful-client/src/EventSubscriber.js.map +1 -1
  166. package/dist/dist-esm/chat-stateful-client/src/Logger.js.map +1 -1
  167. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js +67 -57
  168. package/dist/dist-esm/chat-stateful-client/src/StatefulChatClient.js.map +1 -1
  169. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js +128 -114
  170. package/dist/dist-esm/chat-stateful-client/src/StatefulChatThreadClient.js.map +1 -1
  171. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js +1 -6
  172. package/dist/dist-esm/chat-stateful-client/src/convertChatMessage.js.map +1 -1
  173. package/dist/dist-esm/chat-stateful-client/src/index.js.map +1 -1
  174. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedIterator.js.map +1 -1
  175. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListMessages.js.map +1 -1
  176. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListParticipants.js.map +1 -1
  177. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListReadReceipts.js.map +1 -1
  178. package/dist/dist-esm/chat-stateful-client/src/iterators/createDecoratedListThreads.js.map +1 -1
  179. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.d.ts +0 -1
  180. package/dist/dist-esm/chat-stateful-client/src/types/ChatMessageWithStatus.js.map +1 -1
  181. package/dist/dist-esm/communication-react/src/index.d.ts +0 -27
  182. package/dist/dist-esm/communication-react/src/index.js +0 -16
  183. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  184. package/dist/dist-esm/communication-react/src/mergedHooks.js.map +1 -1
  185. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js +6 -3
  186. package/dist/dist-esm/react-components/src/components/Announcer/Announcer.js.map +1 -1
  187. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerContext.js.map +1 -1
  188. package/dist/dist-esm/react-components/src/components/Announcer/AnnouncerMessage.js.map +1 -1
  189. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js +10 -4
  190. package/dist/dist-esm/react-components/src/components/Announcer/LiveAnnouncer.js.map +1 -1
  191. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js +1 -1
  192. package/dist/dist-esm/react-components/src/components/Announcer/LiveMessage.js.map +1 -1
  193. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js +1 -1
  194. package/dist/dist-esm/react-components/src/components/Announcer/MessageBlock.js.map +1 -1
  195. package/dist/dist-esm/react-components/src/components/Announcer.js.map +1 -1
  196. package/dist/dist-esm/react-components/src/components/CameraButton.js +19 -8
  197. package/dist/dist-esm/react-components/src/components/CameraButton.js.map +1 -1
  198. package/dist/dist-esm/react-components/src/components/Caption.js +2 -2
  199. package/dist/dist-esm/react-components/src/components/Caption.js.map +1 -1
  200. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js +8 -9
  201. package/dist/dist-esm/react-components/src/components/CaptionsBanner.js.map +1 -1
  202. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js +22 -44
  203. package/dist/dist-esm/react-components/src/components/CaptionsSettingsModal.js.map +1 -1
  204. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js +4 -1
  205. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionMenu.js.map +1 -1
  206. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js +22 -37
  207. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageActionsFlyout.js.map +1 -1
  208. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.d.ts +1 -22
  209. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js +5 -20
  210. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponent.js.map +1 -1
  211. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.d.ts +0 -2
  212. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js +42 -43
  213. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsEditBox.js.map +1 -1
  214. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.d.ts +1 -22
  215. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js +28 -99
  216. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageComponentAsMessageBubble.js.map +1 -1
  217. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.d.ts +0 -15
  218. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js +21 -121
  219. package/dist/dist-esm/react-components/src/components/ChatMessage/ChatMessageContent.js.map +1 -1
  220. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js +18 -18
  221. package/dist/dist-esm/react-components/src/components/ComplianceBanner/BannerMessage.js.map +1 -1
  222. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js +4 -7
  223. package/dist/dist-esm/react-components/src/components/ComplianceBanner/ComplianceBanner.js.map +1 -1
  224. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js +2 -2
  225. package/dist/dist-esm/react-components/src/components/ComplianceBanner/DelayedUpdateBanner.js.map +1 -1
  226. package/dist/dist-esm/react-components/src/components/ComplianceBanner/Utils.js.map +1 -1
  227. package/dist/dist-esm/react-components/src/components/ComplianceBanner/index.js.map +1 -1
  228. package/dist/dist-esm/react-components/src/components/ComplianceBanner/types.js.map +1 -1
  229. package/dist/dist-esm/react-components/src/components/ControlBar.js +14 -10
  230. package/dist/dist-esm/react-components/src/components/ControlBar.js.map +1 -1
  231. package/dist/dist-esm/react-components/src/components/ControlBarButton.js +4 -14
  232. package/dist/dist-esm/react-components/src/components/ControlBarButton.js.map +1 -1
  233. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js +14 -3
  234. package/dist/dist-esm/react-components/src/components/ControlButtonTooltip.js.map +1 -1
  235. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js +8 -5
  236. package/dist/dist-esm/react-components/src/components/DevicePermissions/DevicePermissionDropdown.js.map +1 -1
  237. package/dist/dist-esm/react-components/src/components/DevicesButton.js +27 -19
  238. package/dist/dist-esm/react-components/src/components/DevicesButton.js.map +1 -1
  239. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +44 -42
  240. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
  241. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js +4 -4
  242. package/dist/dist-esm/react-components/src/components/Drawer/DrawerContentContainer.js.map +1 -1
  243. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js +6 -2
  244. package/dist/dist-esm/react-components/src/components/Drawer/DrawerLightDismiss.js.map +1 -1
  245. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js +6 -6
  246. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenu.js.map +1 -1
  247. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.d.ts +0 -4
  248. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js +27 -16
  249. package/dist/dist-esm/react-components/src/components/Drawer/DrawerMenuItem.js.map +1 -1
  250. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js +4 -6
  251. package/dist/dist-esm/react-components/src/components/Drawer/DrawerSurface.js.map +1 -1
  252. package/dist/dist-esm/react-components/src/components/Drawer/index.js.map +1 -1
  253. package/dist/dist-esm/react-components/src/components/EndCallButton.js +7 -3
  254. package/dist/dist-esm/react-components/src/components/EndCallButton.js.map +1 -1
  255. package/dist/dist-esm/react-components/src/components/ErrorBar.js +5 -9
  256. package/dist/dist-esm/react-components/src/components/ErrorBar.js.map +1 -1
  257. package/dist/dist-esm/react-components/src/components/FileCard.js +3 -2
  258. package/dist/dist-esm/react-components/src/components/FileCard.js.map +1 -1
  259. package/dist/dist-esm/react-components/src/components/FileCardGroup.js +1 -1
  260. package/dist/dist-esm/react-components/src/components/FileCardGroup.js.map +1 -1
  261. package/dist/dist-esm/react-components/src/components/FileDownloadCards.d.ts +1 -29
  262. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js +13 -36
  263. package/dist/dist-esm/react-components/src/components/FileDownloadCards.js.map +1 -1
  264. package/dist/dist-esm/react-components/src/components/FileUploadCards.js +7 -8
  265. package/dist/dist-esm/react-components/src/components/FileUploadCards.js.map +1 -1
  266. package/dist/dist-esm/react-components/src/components/GridLayout.js +37 -37
  267. package/dist/dist-esm/react-components/src/components/GridLayout.js.map +1 -1
  268. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js +2 -2
  269. package/dist/dist-esm/react-components/src/components/HighContrastAwareIcon.js.map +1 -1
  270. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js +9 -7
  271. package/dist/dist-esm/react-components/src/components/HorizontalGallery.js.map +1 -1
  272. package/dist/dist-esm/react-components/src/components/InputBoxComponent.d.ts +5 -3
  273. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js +22 -30
  274. package/dist/dist-esm/react-components/src/components/InputBoxComponent.js.map +1 -1
  275. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js +5 -3
  276. package/dist/dist-esm/react-components/src/components/LocalVideoCameraButton.js.map +1 -1
  277. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js +10 -29
  278. package/dist/dist-esm/react-components/src/components/LocalVideoTile.js.map +1 -1
  279. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js +36 -23
  280. package/dist/dist-esm/react-components/src/components/MessageStatusIndicator.js.map +1 -1
  281. package/dist/dist-esm/react-components/src/components/MessageThread.d.ts +2 -51
  282. package/dist/dist-esm/react-components/src/components/MessageThread.js +91 -212
  283. package/dist/dist-esm/react-components/src/components/MessageThread.js.map +1 -1
  284. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js +14 -17
  285. package/dist/dist-esm/react-components/src/components/MicrophoneButton.js.map +1 -1
  286. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js +101 -94
  287. package/dist/dist-esm/react-components/src/components/ModalClone/ModalClone.js.map +1 -1
  288. package/dist/dist-esm/react-components/src/components/ParticipantItem.d.ts +0 -13
  289. package/dist/dist-esm/react-components/src/components/ParticipantItem.js +17 -17
  290. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  291. package/dist/dist-esm/react-components/src/components/ParticipantList.d.ts +0 -15
  292. package/dist/dist-esm/react-components/src/components/ParticipantList.js +26 -57
  293. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  294. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js +32 -46
  295. package/dist/dist-esm/react-components/src/components/ParticipantsButton.js.map +1 -1
  296. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js +3 -3
  297. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPicture.js.map +1 -1
  298. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js +3 -3
  299. package/dist/dist-esm/react-components/src/components/PictureInPictureInPicture/PictureInPictureInPictureTile.js.map +1 -1
  300. package/dist/dist-esm/react-components/src/components/RaiseHandButton.js +12 -6
  301. package/dist/dist-esm/react-components/src/components/RaiseHandButton.js.map +1 -1
  302. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +14 -32
  303. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  304. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js +2 -2
  305. package/dist/dist-esm/react-components/src/components/ResponsiveHorizontalGallery.js.map +1 -1
  306. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js +2 -2
  307. package/dist/dist-esm/react-components/src/components/ResponsiveVerticalGallery.js.map +1 -1
  308. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js +14 -6
  309. package/dist/dist-esm/react-components/src/components/ScreenShareButton.js.map +1 -1
  310. package/dist/dist-esm/react-components/src/components/SendBox.d.ts +0 -41
  311. package/dist/dist-esm/react-components/src/components/SendBox.js +13 -39
  312. package/dist/dist-esm/react-components/src/components/SendBox.js.map +1 -1
  313. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js +2 -2
  314. package/dist/dist-esm/react-components/src/components/SendBoxErrorBar.js.map +1 -1
  315. package/dist/dist-esm/react-components/src/components/SendBoxErrors.js.map +1 -1
  316. package/dist/dist-esm/react-components/src/components/StartCaptionsButton.js +4 -2
  317. package/dist/dist-esm/react-components/src/components/StartCaptionsButton.js.map +1 -1
  318. package/dist/dist-esm/react-components/src/components/StreamMedia.js +3 -3
  319. package/dist/dist-esm/react-components/src/components/StreamMedia.js.map +1 -1
  320. package/dist/dist-esm/react-components/src/components/SystemMessage.js +4 -2
  321. package/dist/dist-esm/react-components/src/components/SystemMessage.js.map +1 -1
  322. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js +10 -10
  323. package/dist/dist-esm/react-components/src/components/TroubleshootingGuideErrorBar.js.map +1 -1
  324. package/dist/dist-esm/react-components/src/components/TypingIndicator.js +6 -9
  325. package/dist/dist-esm/react-components/src/components/TypingIndicator.js.map +1 -1
  326. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js +1 -3
  327. package/dist/dist-esm/react-components/src/components/UnsupportedBrowser.js.map +1 -1
  328. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js +1 -3
  329. package/dist/dist-esm/react-components/src/components/UnsupportedBrowserVersion.js.map +1 -1
  330. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js +0 -20
  331. package/dist/dist-esm/react-components/src/components/UnsupportedEnvironment.js.map +1 -1
  332. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js +1 -3
  333. package/dist/dist-esm/react-components/src/components/UnsupportedOperatingSystem.js.map +1 -1
  334. package/dist/dist-esm/react-components/src/components/VerticalGallery.js +34 -19
  335. package/dist/dist-esm/react-components/src/components/VerticalGallery.js.map +1 -1
  336. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js +1 -3
  337. package/dist/dist-esm/react-components/src/components/VideoEffects/PresetVideoEffectsItems.js.map +1 -1
  338. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js +14 -14
  339. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js.map +1 -1
  340. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.d.ts +0 -4
  341. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js +17 -23
  342. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.js.map +1 -1
  343. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.d.ts +2 -2
  344. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js +5 -11
  345. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js.map +1 -1
  346. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js +16 -37
  347. package/dist/dist-esm/react-components/src/components/VideoGallery/DefaultLayout.js.map +1 -1
  348. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js +10 -14
  349. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideo.js.map +1 -1
  350. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.d.ts +0 -5
  351. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js +27 -69
  352. package/dist/dist-esm/react-components/src/components/VideoGallery/FloatingLocalVideoLayout.js.map +1 -1
  353. package/dist/dist-esm/react-components/src/components/VideoGallery/FocusContentLayout.js +2 -2
  354. package/dist/dist-esm/react-components/src/components/VideoGallery/FocusContentLayout.js.map +1 -1
  355. package/dist/dist-esm/react-components/src/components/VideoGallery/Layout.js.map +1 -1
  356. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js +7 -7
  357. package/dist/dist-esm/react-components/src/components/VideoGallery/LocalScreenShare.js.map +1 -1
  358. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js +6 -18
  359. package/dist/dist-esm/react-components/src/components/VideoGallery/OverflowGallery.js.map +1 -1
  360. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js +6 -8
  361. package/dist/dist-esm/react-components/src/components/VideoGallery/RemoteScreenShare.js.map +1 -1
  362. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js +6 -3
  363. package/dist/dist-esm/react-components/src/components/VideoGallery/ScrollableHorizontalGallery.js.map +1 -1
  364. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.d.ts +0 -5
  365. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.js +22 -64
  366. package/dist/dist-esm/react-components/src/components/VideoGallery/SpeakerVideoLayout.js.map +1 -1
  367. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js +6 -1
  368. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/DefaultLayout.styles.js.map +1 -1
  369. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js +32 -7
  370. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideo.styles.js.map +1 -1
  371. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js +11 -2
  372. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/FloatingLocalVideoLayout.styles.js.map +1 -1
  373. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/Layout.styles.js.map +1 -1
  374. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/LocalScreenShare.styles.js.map +1 -1
  375. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteScreenShare.styles.js.map +1 -1
  376. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/RemoteVideoTile.styles.js.map +1 -1
  377. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js +3 -1
  378. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/ScrollableHorizontalGallery.style.js.map +1 -1
  379. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js +11 -10
  380. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveHorizontalGallery.styles.js.map +1 -1
  381. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js +28 -22
  382. package/dist/dist-esm/react-components/src/components/VideoGallery/styles/VideoGalleryResponsiveVerticalGallery.styles.js.map +1 -1
  383. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js +5 -10
  384. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoStreamLifecycleMaintainer.js.map +1 -1
  385. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js +32 -19
  386. package/dist/dist-esm/react-components/src/components/VideoGallery/useVideoTileContextualMenuProps.js.map +1 -1
  387. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/OverflowGalleryUtils.js.map +1 -1
  388. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js +22 -62
  389. package/dist/dist-esm/react-components/src/components/VideoGallery/utils/videoGalleryLayoutUtils.js.map +1 -1
  390. package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts +1 -14
  391. package/dist/dist-esm/react-components/src/components/VideoGallery.js +36 -131
  392. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  393. package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +0 -7
  394. package/dist/dist-esm/react-components/src/components/VideoTile.js +54 -39
  395. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  396. package/dist/dist-esm/react-components/src/components/assets/RaisedHandIcon.js +2 -2
  397. package/dist/dist-esm/react-components/src/components/assets/RaisedHandIcon.js.map +1 -1
  398. package/dist/dist-esm/react-components/src/components/index.d.ts +0 -19
  399. package/dist/dist-esm/react-components/src/components/index.js +0 -12
  400. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  401. package/dist/dist-esm/react-components/src/components/styles/Captions.style.js.map +1 -1
  402. package/dist/dist-esm/react-components/src/components/styles/CaptionsSettingsModal.styles.js.map +1 -1
  403. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.d.ts +0 -12
  404. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js +7 -26
  405. package/dist/dist-esm/react-components/src/components/styles/ChatMessageComponent.styles.js.map +1 -1
  406. package/dist/dist-esm/react-components/src/components/styles/Common.style.js.map +1 -1
  407. package/dist/dist-esm/react-components/src/components/styles/ControlBar.styles.js.map +1 -1
  408. package/dist/dist-esm/react-components/src/components/styles/Dialpad.styles.js.map +1 -1
  409. package/dist/dist-esm/react-components/src/components/styles/EditBox.styles.js +2 -2
  410. package/dist/dist-esm/react-components/src/components/styles/EditBox.styles.js.map +1 -1
  411. package/dist/dist-esm/react-components/src/components/styles/GridLayout.styles.js.map +1 -1
  412. package/dist/dist-esm/react-components/src/components/styles/HorizontalGallery.styles.js.map +1 -1
  413. package/dist/dist-esm/react-components/src/components/styles/IconButton.styles.js.map +1 -1
  414. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.d.ts +4 -0
  415. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js +13 -1
  416. package/dist/dist-esm/react-components/src/components/styles/InputBoxComponent.style.js.map +1 -1
  417. package/dist/dist-esm/react-components/src/components/styles/MessageStatusIndicator.styles.js.map +1 -1
  418. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.d.ts +1 -1
  419. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js +8 -2
  420. package/dist/dist-esm/react-components/src/components/styles/MessageThread.styles.js.map +1 -1
  421. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js +1 -0
  422. package/dist/dist-esm/react-components/src/components/styles/ParticipantItem.styles.js.map +1 -1
  423. package/dist/dist-esm/react-components/src/components/styles/ParticipantList.styles.js.map +1 -1
  424. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js +10 -2
  425. package/dist/dist-esm/react-components/src/components/styles/SendBox.styles.js.map +1 -1
  426. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js +3 -0
  427. package/dist/dist-esm/react-components/src/components/styles/StreamMedia.styles.js.map +1 -1
  428. package/dist/dist-esm/react-components/src/components/styles/SystemMessage.styles.js.map +1 -1
  429. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js +1 -0
  430. package/dist/dist-esm/react-components/src/components/styles/TroubleshootingGuideErrorBar.styles.js.map +1 -1
  431. package/dist/dist-esm/react-components/src/components/styles/TypingIndicator.styles.js.map +1 -1
  432. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js +1 -0
  433. package/dist/dist-esm/react-components/src/components/styles/VerticalGallery.styles.js.map +1 -1
  434. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js +17 -3
  435. package/dist/dist-esm/react-components/src/components/styles/VideoGallery.styles.js.map +1 -1
  436. package/dist/dist-esm/react-components/src/components/styles/VideoTile.styles.js.map +1 -1
  437. package/dist/dist-esm/react-components/src/components/styles/v8StyleShim.js.map +1 -1
  438. package/dist/dist-esm/react-components/src/components/utils/Datetime.js +4 -1
  439. package/dist/dist-esm/react-components/src/components/utils/Datetime.js.map +1 -1
  440. package/dist/dist-esm/react-components/src/components/utils/common.js +0 -4
  441. package/dist/dist-esm/react-components/src/components/utils/common.js.map +1 -1
  442. package/dist/dist-esm/react-components/src/components/utils/delay.js.map +1 -1
  443. package/dist/dist-esm/react-components/src/components/utils/formatPhoneNumber.js.map +1 -1
  444. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.d.ts +1 -2
  445. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js +7 -4
  446. package/dist/dist-esm/react-components/src/components/utils/getParticipantsWhoHaveReadMessage.js.map +1 -1
  447. package/dist/dist-esm/react-components/src/components/utils/keyboardNavigation.js.map +1 -1
  448. package/dist/dist-esm/react-components/src/components/utils/overFlowGalleriesUtils.js.map +1 -1
  449. package/dist/dist-esm/react-components/src/components/utils/responsive.js +2 -2
  450. package/dist/dist-esm/react-components/src/components/utils/responsive.js.map +1 -1
  451. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js +1 -10
  452. package/dist/dist-esm/react-components/src/components/utils/useLongPress.js.map +1 -1
  453. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js +3 -1
  454. package/dist/dist-esm/react-components/src/components/utils/videoTileStylesUtils.js.map +1 -1
  455. package/dist/dist-esm/react-components/src/components/utils.js +10 -13
  456. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  457. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js +6 -8
  458. package/dist/dist-esm/react-components/src/gallery/dominantSpeaker.js.map +1 -1
  459. package/dist/dist-esm/react-components/src/gallery/index.js.map +1 -1
  460. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.d.ts +0 -4
  461. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js +1 -5
  462. package/dist/dist-esm/react-components/src/identifiers/IdentifierProvider.js.map +1 -1
  463. package/dist/dist-esm/react-components/src/identifiers/index.js.map +1 -1
  464. package/dist/dist-esm/react-components/src/index.d.ts +0 -1
  465. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  466. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +0 -63
  467. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  468. package/dist/dist-esm/react-components/src/localization/index.js.map +1 -1
  469. package/dist/dist-esm/react-components/src/localization/locales/ar-SA/ComponentLocale.js +3 -1
  470. package/dist/dist-esm/react-components/src/localization/locales/ar-SA/ComponentLocale.js.map +1 -1
  471. package/dist/dist-esm/react-components/src/localization/locales/cs-CZ/ComponentLocale.js +3 -1
  472. package/dist/dist-esm/react-components/src/localization/locales/cs-CZ/ComponentLocale.js.map +1 -1
  473. package/dist/dist-esm/react-components/src/localization/locales/de-DE/ComponentLocale.js +3 -1
  474. package/dist/dist-esm/react-components/src/localization/locales/de-DE/ComponentLocale.js.map +1 -1
  475. package/dist/dist-esm/react-components/src/localization/locales/en-GB/ComponentLocale.js +3 -1
  476. package/dist/dist-esm/react-components/src/localization/locales/en-GB/ComponentLocale.js.map +1 -1
  477. package/dist/dist-esm/react-components/src/localization/locales/es-ES/ComponentLocale.js +3 -1
  478. package/dist/dist-esm/react-components/src/localization/locales/es-ES/ComponentLocale.js.map +1 -1
  479. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/ComponentLocale.js +3 -1
  480. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/ComponentLocale.js.map +1 -1
  481. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/ComponentLocale.js +3 -1
  482. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/ComponentLocale.js.map +1 -1
  483. package/dist/dist-esm/react-components/src/localization/locales/he-IL/ComponentLocale.js +3 -1
  484. package/dist/dist-esm/react-components/src/localization/locales/he-IL/ComponentLocale.js.map +1 -1
  485. package/dist/dist-esm/react-components/src/localization/locales/index.js +3 -1
  486. package/dist/dist-esm/react-components/src/localization/locales/index.js.map +1 -1
  487. package/dist/dist-esm/react-components/src/localization/locales/it-IT/ComponentLocale.js +3 -1
  488. package/dist/dist-esm/react-components/src/localization/locales/it-IT/ComponentLocale.js.map +1 -1
  489. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/ComponentLocale.js +3 -1
  490. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/ComponentLocale.js.map +1 -1
  491. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/ComponentLocale.js +3 -1
  492. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/ComponentLocale.js.map +1 -1
  493. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/ComponentLocale.js +3 -1
  494. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/ComponentLocale.js.map +1 -1
  495. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/ComponentLocale.js +3 -1
  496. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/ComponentLocale.js.map +1 -1
  497. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/ComponentLocale.js +3 -1
  498. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/ComponentLocale.js.map +1 -1
  499. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/ComponentLocale.js +3 -1
  500. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/ComponentLocale.js.map +1 -1
  501. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/ComponentLocale.js +3 -1
  502. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/ComponentLocale.js.map +1 -1
  503. package/dist/dist-esm/react-components/src/localization/locales/sv-SE/ComponentLocale.js +3 -1
  504. package/dist/dist-esm/react-components/src/localization/locales/sv-SE/ComponentLocale.js.map +1 -1
  505. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/ComponentLocale.js +3 -1
  506. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/ComponentLocale.js.map +1 -1
  507. package/dist/dist-esm/react-components/src/localization/locales/utils.js.map +1 -1
  508. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/ComponentLocale.js +3 -1
  509. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/ComponentLocale.js.map +1 -1
  510. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/ComponentLocale.js +3 -1
  511. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/ComponentLocale.js.map +1 -1
  512. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js +5 -3
  513. package/dist/dist-esm/react-components/src/theming/FluentThemeProvider.js.map +1 -1
  514. package/dist/dist-esm/react-components/src/theming/FluentV9ThemeProvider.js +1 -1
  515. package/dist/dist-esm/react-components/src/theming/FluentV9ThemeProvider.js.map +1 -1
  516. package/dist/dist-esm/react-components/src/theming/icons.d.ts +0 -15
  517. package/dist/dist-esm/react-components/src/theming/icons.js +10 -112
  518. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  519. package/dist/dist-esm/react-components/src/theming/index.js.map +1 -1
  520. package/dist/dist-esm/react-components/src/theming/themeDuplicates.js.map +1 -1
  521. package/dist/dist-esm/react-components/src/theming/themeUtils.js.map +1 -1
  522. package/dist/dist-esm/react-components/src/theming/themes.d.ts +2 -21
  523. package/dist/dist-esm/react-components/src/theming/themes.js +0 -16
  524. package/dist/dist-esm/react-components/src/theming/themes.js.map +1 -1
  525. package/dist/dist-esm/react-components/src/theming/v9ThemeShim.js +7 -1
  526. package/dist/dist-esm/react-components/src/theming/v9ThemeShim.js.map +1 -1
  527. package/dist/dist-esm/react-components/src/types/CaptionsAvailableLanguageStrings.js.map +1 -1
  528. package/dist/dist-esm/react-components/src/types/ChatMessage.d.ts +1 -27
  529. package/dist/dist-esm/react-components/src/types/ChatMessage.js.map +1 -1
  530. package/dist/dist-esm/react-components/src/types/CommunicationParticipant.js.map +1 -1
  531. package/dist/dist-esm/react-components/src/types/ComponentSlotStyle.js.map +1 -1
  532. package/dist/dist-esm/react-components/src/types/CustomStylesProps.js.map +1 -1
  533. package/dist/dist-esm/react-components/src/types/OnRender.d.ts +0 -8
  534. package/dist/dist-esm/react-components/src/types/OnRender.js.map +1 -1
  535. package/dist/dist-esm/react-components/src/types/ParticipantListParticipant.js.map +1 -1
  536. package/dist/dist-esm/react-components/src/types/ReadReceiptsBySenderId.js.map +1 -1
  537. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.d.ts +0 -6
  538. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js +0 -2
  539. package/dist/dist-esm/react-components/src/types/VideoGalleryParticipant.js.map +1 -1
  540. package/dist/dist-esm/react-components/src/types/index.js.map +1 -1
  541. package/dist/dist-esm/react-composites/src/Logger.js.map +1 -1
  542. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +0 -78
  543. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js +39 -125
  544. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  545. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +0 -144
  546. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  547. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.d.ts +6 -76
  548. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +61 -395
  549. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  550. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.d.ts +1 -130
  551. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js +1 -9
  552. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapter.js.map +1 -1
  553. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/CallAdapterProvider.js.map +1 -1
  554. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/DiagnosticsForwarder.js.map +1 -1
  555. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js +3 -1
  556. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/OnFetchProfileCallback.js.map +1 -1
  557. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/ParticipantSubcriber.js.map +1 -1
  558. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.d.ts +2 -3
  559. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js +4 -16
  560. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/createHandlers.js.map +1 -1
  561. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.d.ts +0 -6
  562. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js +0 -2
  563. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/index.js.map +1 -1
  564. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.d.ts +0 -2
  565. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js +27 -118
  566. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallArrangement.js.map +1 -1
  567. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.d.ts +0 -1
  568. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js +51 -95
  569. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallControls.js.map +1 -1
  570. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js +18 -10
  571. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CapabilitiesChangedNotificationBar.js.map +1 -1
  572. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.d.ts +0 -2
  573. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js +0 -21
  574. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageCameraDropdown.js.map +1 -1
  575. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js +2 -20
  576. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageErrorBar.js.map +1 -1
  577. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.d.ts +0 -2
  578. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js +0 -21
  579. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ConfigurationPageMicDropdown.js.map +1 -1
  580. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js +4 -5
  581. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/ExpandedLocalVideoTile.js.map +1 -1
  582. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js +2 -2
  583. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LobbyTile.js.map +1 -1
  584. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js +23 -34
  585. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js.map +1 -1
  586. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.d.ts +0 -1
  587. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js +24 -62
  588. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalDeviceSettings.js.map +1 -1
  589. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js +34 -25
  590. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalPreview.js.map +1 -1
  591. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.d.ts +2 -0
  592. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js +37 -63
  593. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MediaGallery.js.map +1 -1
  594. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js +2 -2
  595. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/MutedNotification.js.map +1 -1
  596. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js +2 -2
  597. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/NetworkReconnectTile.js.map +1 -1
  598. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js +11 -29
  599. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePane.js.map +1 -1
  600. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/SidePaneProvider.js.map +1 -1
  601. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js +7 -3
  602. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/usePeoplePane.js.map +1 -1
  603. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js +8 -13
  604. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/SidePane/useVideoEffectsPane.js.map +1 -1
  605. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js +1 -1
  606. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/StartCallButton.js.map +1 -1
  607. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js +4 -12
  608. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Camera.js.map +1 -1
  609. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.d.ts +2 -6
  610. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.js +4 -7
  611. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Custom.js.map +1 -1
  612. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js +5 -47
  613. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Devices.js.map +1 -1
  614. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js +2 -5
  615. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/EndCall.js.map +1 -1
  616. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js +8 -17
  617. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Microphone.js.map +1 -1
  618. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js +2 -5
  619. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/Participants.js.map +1 -1
  620. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/RaiseHand.js +1 -1
  621. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/RaiseHand.js.map +1 -1
  622. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js +1 -10
  623. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/ScreenShare.js.map +1 -1
  624. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js +9 -13
  625. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useAdaptedSelector.js.map +1 -1
  626. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js +8 -31
  627. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useHandlers.js.map +1 -1
  628. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/usePropsFor.js.map +1 -1
  629. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js +1 -1
  630. package/dist/dist-esm/react-composites/src/composites/CallComposite/hooks/useSelector.js.map +1 -1
  631. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.d.ts +0 -7
  632. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js +0 -2
  633. package/dist/dist-esm/react-composites/src/composites/CallComposite/index.js.map +1 -1
  634. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.d.ts +2 -1
  635. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js +9 -21
  636. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/CallPage.js.map +1 -1
  637. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.d.ts +0 -7
  638. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js +17 -141
  639. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/ConfigurationPage.js.map +1 -1
  640. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js +7 -17
  641. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/LobbyPage.js.map +1 -1
  642. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js +3 -3
  643. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js.map +1 -1
  644. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.d.ts +9 -14
  645. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js +1 -1
  646. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/LocalVideoTileSelector.js.map +1 -1
  647. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.d.ts +5 -10
  648. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.js +1 -2
  649. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/activeVideoBackgroundEffectSelector.js.map +1 -1
  650. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.d.ts +0 -9
  651. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js +0 -10
  652. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/baseSelectors.js.map +1 -1
  653. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.d.ts +8 -13
  654. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/callStatusSelector.js.map +1 -1
  655. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.d.ts +8 -13
  656. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.js +4 -1
  657. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/capabilitiesChangedInfoAndRoleSelector.js.map +1 -1
  658. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.d.ts +8 -13
  659. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/complianceBannerSelector.js.map +1 -1
  660. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/deviceCountSelector.d.ts +8 -13
  661. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/deviceCountSelector.js.map +1 -1
  662. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.d.ts +9 -14
  663. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js +1 -1
  664. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/devicePermissionSelector.js.map +1 -1
  665. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.d.ts +6 -11
  666. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js +5 -11
  667. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/dominantRemoteParticipantSelector.js.map +1 -1
  668. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.d.ts +10 -15
  669. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js +1 -1
  670. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/lobbySelector.js.map +1 -1
  671. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.d.ts +16 -21
  672. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js +1 -7
  673. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localAndRemotePIPSelector.js.map +1 -1
  674. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.d.ts +9 -14
  675. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js +4 -4
  676. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localPreviewSelector.js.map +1 -1
  677. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.d.ts +4 -9
  678. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js +1 -1
  679. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/localVideoStreamSelector.js.map +1 -1
  680. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.d.ts +20 -30
  681. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js +4 -4
  682. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mediaGallerySelector.js.map +1 -1
  683. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.d.ts +9 -14
  684. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js +1 -1
  685. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/mutedNotificationSelector.js.map +1 -1
  686. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.d.ts +12 -17
  687. package/dist/dist-esm/react-composites/src/composites/CallComposite/selectors/networkReconnectTileSelector.js.map +1 -1
  688. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js +1 -1
  689. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/Buttons.styles.js.map +1 -1
  690. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js +6 -2
  691. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallComposite.styles.js.map +1 -1
  692. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js +7 -2
  693. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js.map +1 -1
  694. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallControls.styles.js.map +1 -1
  695. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallPage.styles.js.map +1 -1
  696. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js +4 -1
  697. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/ExpandedLocalVideoTile.styles.js.map +1 -1
  698. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js +4 -1
  699. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LobbyTile.styles.js.map +1 -1
  700. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalDeviceSettings.styles.js.map +1 -1
  701. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js +1 -0
  702. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/LocalPreview.styles.js.map +1 -1
  703. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NetworkReconnectTile.styles.js.map +1 -1
  704. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/NoticePage.styles.js.map +1 -1
  705. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js +1 -0
  706. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/StartCallButton.styles.js.map +1 -1
  707. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.d.ts +2 -2
  708. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CallControlOptions.js.map +1 -1
  709. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/CapabilityChangedNotificationTracking.js.map +1 -1
  710. package/dist/dist-esm/react-composites/src/composites/CallComposite/types/ErrorTracking.js.map +1 -1
  711. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js +11 -9
  712. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/MediaGalleryUtils.js.map +1 -1
  713. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackCapabilityChangedNotifications.js +10 -10
  714. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackCapabilityChangedNotifications.js.map +1 -1
  715. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js +2 -2
  716. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/TrackErrors.js.map +1 -1
  717. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts +3 -15
  718. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +15 -115
  719. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  720. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/index.js.map +1 -1
  721. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +1 -68
  722. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +24 -99
  723. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  724. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.js +1 -1
  725. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButton.js.map +1 -1
  726. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.js +7 -9
  727. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/ChatButtonWithUnreadMessagesBadge.js.map +1 -1
  728. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.js +6 -3
  729. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/NotificationIcon.js.map +1 -1
  730. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/ChatButton/useUnreadMessagesTracker.js.map +1 -1
  731. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.d.ts +0 -32
  732. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/Strings.js.map +1 -1
  733. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.d.ts +5 -30
  734. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js +6 -148
  735. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/AzureCommunicationCallWithChatAdapter.js.map +1 -1
  736. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.d.ts +0 -64
  737. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatAdapter.js.map +1 -1
  738. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.d.ts +2 -10
  739. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js +0 -40
  740. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedCallAdapter.js.map +1 -1
  741. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.d.ts +0 -13
  742. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js +1 -37
  743. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/CallWithChatBackedChatAdapter.js.map +1 -1
  744. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js +1 -1
  745. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/adapter/parseTeamsUrl.js.map +1 -1
  746. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/hooks/useCallWithChatCompositeStrings.js.map +1 -1
  747. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.d.ts +0 -1
  748. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/index.js.map +1 -1
  749. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js +1 -1
  750. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/selectors/moreDrawerSelector.js.map +1 -1
  751. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.d.ts +0 -24
  752. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js +1 -11
  753. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/state/CallWithChatAdapterState.js.map +1 -1
  754. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/styles/CallWithChatCompositeStyles.js.map +1 -1
  755. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.d.ts +0 -20
  756. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js +2 -6
  757. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatComposite.js.map +1 -1
  758. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js +5 -3
  759. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatHeader.js.map +1 -1
  760. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js +11 -145
  761. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreen.js.map +1 -1
  762. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.d.ts +0 -4
  763. package/dist/dist-esm/react-composites/src/composites/ChatComposite/Strings.js.map +1 -1
  764. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.d.ts +2 -28
  765. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js +29 -152
  766. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationChatAdapter.js.map +1 -1
  767. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.d.ts +0 -28
  768. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js +1 -154
  769. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/AzureCommunicationFileUploadAdapter.js.map +1 -1
  770. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.d.ts +2 -17
  771. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapter.js.map +1 -1
  772. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js +0 -2
  773. package/dist/dist-esm/react-composites/src/composites/ChatComposite/adapter/ChatAdapterProvider.js.map +1 -1
  774. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUpload.js.map +1 -1
  775. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js +6 -18
  776. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadButton.js.map +1 -1
  777. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/FileUploadHandler.js.map +1 -1
  778. package/dist/dist-esm/react-composites/src/composites/ChatComposite/file-sharing/index.js.map +1 -1
  779. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js +5 -3
  780. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useAdaptedSelector.js.map +1 -1
  781. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js +1 -3
  782. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useHandlers.js.map +1 -1
  783. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/usePropsFor.js.map +1 -1
  784. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.d.ts +0 -4
  785. package/dist/dist-esm/react-composites/src/composites/ChatComposite/index.js.map +1 -1
  786. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js +6 -2
  787. package/dist/dist-esm/react-composites/src/composites/ChatComposite/styles/Chat.styles.js.map +1 -1
  788. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.d.ts +1 -5
  789. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js +6 -17
  790. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleButton.js.map +1 -1
  791. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.d.ts +0 -5
  792. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js +4 -10
  793. package/dist/dist-esm/react-composites/src/composites/common/AvatarPersona.js.map +1 -1
  794. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js +14 -5
  795. package/dist/dist-esm/react-composites/src/composites/common/BaseComposite.js.map +1 -1
  796. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.d.ts +0 -2
  797. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.js +10 -14
  798. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBanner.js.map +1 -1
  799. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.js +16 -12
  800. package/dist/dist-esm/react-composites/src/composites/common/CaptionsBannerMoreButton.js.map +1 -1
  801. package/dist/dist-esm/react-composites/src/composites/common/CaptionsSettingsModal.js +1 -1
  802. package/dist/dist-esm/react-composites/src/composites/common/CaptionsSettingsModal.js.map +1 -1
  803. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js +5 -1
  804. package/dist/dist-esm/react-composites/src/composites/common/ContainerRectProps.js.map +1 -1
  805. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.d.ts +0 -2
  806. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js +31 -56
  807. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CommonCallControlBar.js.map +1 -1
  808. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js +25 -32
  809. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/CustomButton.js.map +1 -1
  810. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.d.ts +0 -2
  811. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js +51 -155
  812. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/DesktopMoreButton.js.map +1 -1
  813. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js +1 -1
  814. package/dist/dist-esm/react-composites/src/composites/common/ControlBar/PeopleButton.js.map +1 -1
  815. package/dist/dist-esm/react-composites/src/composites/common/ConvertContextualMenuItemToDrawerMenuItem.js.map +1 -1
  816. package/dist/dist-esm/react-composites/src/composites/common/Drawer/CaptionSettingsDrawer.js +7 -5
  817. package/dist/dist-esm/react-composites/src/composites/common/Drawer/CaptionSettingsDrawer.js.map +1 -1
  818. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js +96 -119
  819. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.js.map +1 -1
  820. package/dist/dist-esm/react-composites/src/composites/common/Drawer/MoreDrawer.styles.js.map +1 -1
  821. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.d.ts +0 -1
  822. package/dist/dist-esm/react-composites/src/composites/common/Drawer/PreparedMoreDrawer.js.map +1 -1
  823. package/dist/dist-esm/react-composites/src/composites/common/Drawer/captionSettingsDrawer.styles.js.map +1 -1
  824. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js +1 -1
  825. package/dist/dist-esm/react-composites/src/composites/common/HiddenFocusStartPoint.js.map +1 -1
  826. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js +8 -23
  827. package/dist/dist-esm/react-composites/src/composites/common/ModalLocalAndRemotePIP.js.map +1 -1
  828. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js +1 -1
  829. package/dist/dist-esm/react-composites/src/composites/common/MoreButton.js.map +1 -1
  830. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.d.ts +2 -1
  831. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js +14 -13
  832. package/dist/dist-esm/react-composites/src/composites/common/ParticipantContainer.js.map +1 -1
  833. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js +5 -31
  834. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js.map +1 -1
  835. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js +15 -7
  836. package/dist/dist-esm/react-composites/src/composites/common/SidePaneHeader.js.map +1 -1
  837. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js +8 -10
  838. package/dist/dist-esm/react-composites/src/composites/common/TabHeader.js.map +1 -1
  839. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js +11 -16
  840. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js.map +1 -1
  841. package/dist/dist-esm/react-composites/src/composites/common/adapters.js.map +1 -1
  842. package/dist/dist-esm/react-composites/src/composites/common/constants.js.map +1 -1
  843. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +1 -28
  844. package/dist/dist-esm/react-composites/src/composites/common/icons.js +3 -17
  845. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  846. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependency.js.map +1 -1
  847. package/dist/dist-esm/react-composites/src/composites/common/resolveVideoEffectDependencyLazy.js.map +1 -1
  848. package/dist/dist-esm/react-composites/src/composites/common/styles/Composite.styles.js.map +1 -1
  849. package/dist/dist-esm/react-composites/src/composites/common/styles/GlobalHostLayer.styles.js.map +1 -1
  850. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js +16 -5
  851. package/dist/dist-esm/react-composites/src/composites/common/styles/ModalLocalAndRemotePIP.styles.js.map +1 -1
  852. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js +51 -12
  853. package/dist/dist-esm/react-composites/src/composites/common/styles/Pane.styles.js.map +1 -1
  854. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js +29 -6
  855. package/dist/dist-esm/react-composites/src/composites/common/styles/ParticipantContainer.styles.js.map +1 -1
  856. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js +22 -4
  857. package/dist/dist-esm/react-composites/src/composites/common/styles/PeoplePaneContent.styles.js.map +1 -1
  858. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.d.ts +4 -21
  859. package/dist/dist-esm/react-composites/src/composites/common/types/CommonCallControlOptions.js.map +1 -1
  860. package/dist/dist-esm/react-composites/src/composites/common/utils.js +12 -17
  861. package/dist/dist-esm/react-composites/src/composites/common/utils.js.map +1 -1
  862. package/dist/dist-esm/react-composites/src/composites/index.d.ts +0 -2
  863. package/dist/dist-esm/react-composites/src/composites/index.js.map +1 -1
  864. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js +2 -2
  865. package/dist/dist-esm/react-composites/src/composites/localization/LocalizationProvider.js.map +1 -1
  866. package/dist/dist-esm/react-composites/src/composites/localization/index.js.map +1 -1
  867. package/dist/dist-esm/react-composites/src/composites/localization/locales/ar-SA/CompositeLocale.js.map +1 -1
  868. package/dist/dist-esm/react-composites/src/composites/localization/locales/cs-CZ/CompositeLocale.js.map +1 -1
  869. package/dist/dist-esm/react-composites/src/composites/localization/locales/de-DE/CompositeLocale.js.map +1 -1
  870. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-GB/CompositeLocale.js.map +1 -1
  871. package/dist/dist-esm/react-composites/src/composites/localization/locales/es-ES/CompositeLocale.js.map +1 -1
  872. package/dist/dist-esm/react-composites/src/composites/localization/locales/fi-FI/CompositeLocale.js.map +1 -1
  873. package/dist/dist-esm/react-composites/src/composites/localization/locales/fr-FR/CompositeLocale.js.map +1 -1
  874. package/dist/dist-esm/react-composites/src/composites/localization/locales/he-IL/CompositeLocale.js.map +1 -1
  875. package/dist/dist-esm/react-composites/src/composites/localization/locales/index.js.map +1 -1
  876. package/dist/dist-esm/react-composites/src/composites/localization/locales/it-IT/CompositeLocale.js.map +1 -1
  877. package/dist/dist-esm/react-composites/src/composites/localization/locales/ja-JP/CompositeLocale.js.map +1 -1
  878. package/dist/dist-esm/react-composites/src/composites/localization/locales/ko-KR/CompositeLocale.js.map +1 -1
  879. package/dist/dist-esm/react-composites/src/composites/localization/locales/nb-NO/CompositeLocale.js.map +1 -1
  880. package/dist/dist-esm/react-composites/src/composites/localization/locales/nl-NL/CompositeLocale.js.map +1 -1
  881. package/dist/dist-esm/react-composites/src/composites/localization/locales/pl-PL/CompositeLocale.js.map +1 -1
  882. package/dist/dist-esm/react-composites/src/composites/localization/locales/pt-BR/CompositeLocale.js.map +1 -1
  883. package/dist/dist-esm/react-composites/src/composites/localization/locales/ru-RU/CompositeLocale.js.map +1 -1
  884. package/dist/dist-esm/react-composites/src/composites/localization/locales/sv-SE/CompositeLocale.js.map +1 -1
  885. package/dist/dist-esm/react-composites/src/composites/localization/locales/tr-TR/CompositeLocale.js.map +1 -1
  886. package/dist/dist-esm/react-composites/src/composites/localization/locales/utils.js.map +1 -1
  887. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-CN/CompositeLocale.js.map +1 -1
  888. package/dist/dist-esm/react-composites/src/composites/localization/locales/zh-TW/CompositeLocale.js.map +1 -1
  889. package/dist/dist-esm/react-composites/src/index-public.js.map +1 -1
  890. package/package.json +13 -13
  891. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.d.ts +0 -45
  892. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js +0 -87
  893. package/dist/dist-esm/calling-component-bindings/src/handlers/createTeamsCallHandlers.js.map +0 -1
  894. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.d.ts +0 -19
  895. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js +0 -91
  896. package/dist/dist-esm/calling-stateful-client/src/TeamsCallAgentDeclarative.js.map +0 -1
  897. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.d.ts +0 -23
  898. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js +0 -48
  899. package/dist/dist-esm/calling-stateful-client/src/TeamsCallDeclarative.js.map +0 -1
  900. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.d.ts +0 -10
  901. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js +0 -15
  902. package/dist/dist-esm/react-components/src/components/ChatMessage/MentionRenderer.js.map +0 -1
  903. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.d.ts +0 -69
  904. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js +0 -37
  905. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDenied.js.map +0 -1
  906. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.d.ts +0 -75
  907. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js +0 -58
  908. package/dist/dist-esm/react-components/src/components/DevicePermissions/BrowserPermissionDeniedIOS.js.map +0 -1
  909. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.d.ts +0 -105
  910. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js +0 -86
  911. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissions.js.map +0 -1
  912. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.d.ts +0 -86
  913. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js +0 -31
  914. package/dist/dist-esm/react-components/src/components/DevicePermissions/SitePermissionsScaffolding.js.map +0 -1
  915. package/dist/dist-esm/react-components/src/components/HoldButton.d.ts +0 -49
  916. package/dist/dist-esm/react-components/src/components/HoldButton.js +0 -25
  917. package/dist/dist-esm/react-components/src/components/HoldButton.js.map +0 -1
  918. package/dist/dist-esm/react-components/src/components/ImageGallery.d.ts +0 -71
  919. package/dist/dist-esm/react-components/src/components/ImageGallery.js +0 -53
  920. package/dist/dist-esm/react-components/src/components/ImageGallery.js.map +0 -1
  921. package/dist/dist-esm/react-components/src/components/MentionPopover.d.ts +0 -121
  922. package/dist/dist-esm/react-components/src/components/MentionPopover.js +0 -125
  923. package/dist/dist-esm/react-components/src/components/MentionPopover.js.map +0 -1
  924. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.d.ts +0 -41
  925. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js +0 -611
  926. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js.map +0 -1
  927. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.d.ts +0 -152
  928. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js +0 -822
  929. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/mentionTagUtils.js.map +0 -1
  930. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.d.ts +0 -17
  931. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js +0 -126
  932. package/dist/dist-esm/react-components/src/components/VideoGallery/LargeGalleryLayout.js.map +0 -1
  933. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.d.ts +0 -58
  934. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js +0 -144
  935. package/dist/dist-esm/react-components/src/components/styles/BrowserPermissionDenied.styles.js.map +0 -1
  936. package/dist/dist-esm/react-components/src/components/styles/ImageGallery.style.d.ts +0 -68
  937. package/dist/dist-esm/react-components/src/components/styles/ImageGallery.style.js +0 -202
  938. package/dist/dist-esm/react-components/src/components/styles/ImageGallery.style.js.map +0 -1
  939. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.d.ts +0 -26
  940. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js +0 -68
  941. package/dist/dist-esm/react-components/src/components/styles/MentionPopover.style.js.map +0 -1
  942. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.d.ts +0 -38
  943. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js +0 -92
  944. package/dist/dist-esm/react-components/src/components/styles/SitePermissions.styles.js.map +0 -1
  945. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.d.ts +0 -26
  946. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js +0 -67
  947. package/dist/dist-esm/react-components/src/components/styles/UnsupportedEnvironment.styles.js.map +0 -1
  948. package/dist/dist-esm/react-components/src/components/utils/merge.d.ts +0 -7
  949. package/dist/dist-esm/react-components/src/components/utils/merge.js +0 -16
  950. package/dist/dist-esm/react-components/src/components/utils/merge.js.map +0 -1
  951. package/dist/dist-esm/react-components/src/theming/icons.styles.d.ts +0 -6
  952. package/dist/dist-esm/react-components/src/theming/icons.styles.js +0 -25
  953. package/dist/dist-esm/react-components/src/theming/icons.styles.js.map +0 -1
  954. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.d.ts +0 -48
  955. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js +0 -210
  956. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/CallReadinessModal.js.map +0 -1
  957. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.d.ts +0 -12
  958. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js +0 -93
  959. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/HoldPane.js.map +0 -1
  960. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.d.ts +0 -8
  961. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js +0 -26
  962. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/buttons/People.js.map +0 -1
  963. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.d.ts +0 -24
  964. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js +0 -34
  965. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/HoldPage.js.map +0 -1
  966. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.d.ts +0 -11
  967. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js +0 -113
  968. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/TransferPage.js.map +0 -1
  969. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.d.ts +0 -15
  970. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js +0 -54
  971. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/UnsupportedBrowser.js.map +0 -1
  972. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.d.ts +0 -32
  973. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js +0 -81
  974. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/HoldPane.styles.js.map +0 -1
  975. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.d.ts +0 -37
  976. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.js +0 -55
  977. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/TransferPage.styles.js.map +0 -1
  978. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.d.ts +0 -18
  979. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js +0 -18
  980. package/dist/dist-esm/react-composites/src/composites/ChatComposite/ChatScreenPeoplePane.js.map +0 -1
  981. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.d.ts +0 -15
  982. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js +0 -21
  983. package/dist/dist-esm/react-composites/src/composites/ChatComposite/FileDownloadErrorBar.js.map +0 -1
  984. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.d.ts +0 -6
  985. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js +0 -11
  986. package/dist/dist-esm/react-composites/src/composites/ChatComposite/hooks/useSelector.js.map +0 -1
  987. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.d.ts +0 -12
  988. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js +0 -15
  989. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/baseSelectors.js.map +0 -1
  990. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.d.ts +0 -34
  991. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js +0 -12
  992. package/dist/dist-esm/react-composites/src/composites/ChatComposite/selectors/fileUploadsSelector.js.map +0 -1
  993. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.d.ts +0 -22
  994. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js +0 -105
  995. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.js.map +0 -1
  996. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.d.ts +0 -17
  997. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js +0 -32
  998. package/dist/dist-esm/react-composites/src/composites/common/AddPeopleDropdown.styles.js.map +0 -1
  999. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.d.ts +0 -22
  1000. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js +0 -60
  1001. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.js.map +0 -1
  1002. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.d.ts +0 -15
  1003. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js +0 -61
  1004. package/dist/dist-esm/react-composites/src/composites/common/CallingDialpad.styles.js.map +0 -1
  1005. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.d.ts +0 -17
  1006. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js +0 -42
  1007. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.js.map +0 -1
  1008. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.d.ts +0 -11
  1009. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js +0 -40
  1010. package/dist/dist-esm/react-composites/src/composites/common/SendDtmfDialpad.styles.js.map +0 -1
@@ -64,6 +64,7 @@ export const _FileCard = (props) => {
64
64
  const progressIndicatorStyles = {
65
65
  itemProgress: {
66
66
  padding: `${_pxToRem(progressBarThicknessPx - 1)} 0`,
67
+ // item progress height won't apply without an explicit padding
67
68
  // To make the progress indicator border curve along the bottom of file card.
68
69
  borderRadius: `0 0 ${theme.effects.roundedCorner4} ${theme.effects.roundedCorner4}`
69
70
  },
@@ -71,7 +72,7 @@ export const _FileCard = (props) => {
71
72
  height: _pxToRem(progressBarThicknessPx)
72
73
  }
73
74
  };
74
- return (React.createElement("div", { "data-is-focusable": true },
75
+ return React.createElement("div", { "data-is-focusable": true },
75
76
  React.createElement(Announcer, { announcementString: announcerString, ariaLive: 'polite' }),
76
77
  React.createElement(Stack, { className: containerClassName, onClick: () => {
77
78
  var _a;
@@ -87,6 +88,6 @@ export const _FileCard = (props) => {
87
88
  React.createElement(Stack, { className: fileNameContainerClassName },
88
89
  React.createElement(Text, { className: fileNameTextClassName }, fileName)),
89
90
  React.createElement(Stack, { verticalAlign: "center", className: actionIconClassName }, actionIcon && actionIcon)),
90
- showProgressIndicator && React.createElement(ProgressIndicator, { percentComplete: progress, styles: progressIndicatorStyles }))));
91
+ showProgressIndicator && React.createElement(ProgressIndicator, { percentComplete: progress, styles: progressIndicatorStyles })));
91
92
  };
92
93
  //# sourceMappingURL=FileCard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FileCard.js","sourceRoot":"","sources":["../../../../../../react-components/src/components/FileCard.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n // eslint-disable-next-line no-restricted-imports\n Icon,\n IProgressIndicatorStyleProps,\n IProgressIndicatorStyles,\n IStyleFunctionOrObject,\n mergeStyles,\n ProgressIndicator,\n Stack,\n Text,\n useTheme\n} from '@fluentui/react';\nimport { getFileTypeIconProps } from '@fluentui/react-file-type-icons';\nimport React from 'react';\nimport { _pxToRem } from '@internal/acs-ui-common';\nimport { Announcer } from './Announcer';\nimport { useEffect, useState } from 'react';\nimport { _FileUploadCardsStrings } from './FileUploadCards';\nimport { useLocaleFileCardStringsTrampoline } from './utils/common';\n\n/**\n * @internal\n * _FileCard Component Props.\n */\nexport interface _FileCardProps {\n /**\n * File name.\n */\n fileName: string;\n /**\n * Extension of the file used for rendering the file icon.\n */\n fileExtension: string;\n /**\n * File upload progress percentage between 0 and 1.\n * File transfer progress indicator is only shown when the value is greater than 0 and less than 1.\n */\n progress?: number;\n /**\n * Icon to display for actions like download, upload, etc. along the file name.\n */\n actionIcon?: JSX.Element;\n /**\n * Function that runs when actionIcon is clicked\n */\n actionHandler?: () => void;\n /**\n * Optional arialabel strings for file cards\n */\n strings?: _FileUploadCardsStrings;\n}\n\n/**\n * @internal\n * A component for displaying a file card with file icon and progress bar.\n */\nexport const _FileCard = (props: _FileCardProps): JSX.Element => {\n const { fileName, fileExtension, progress, actionIcon } = props;\n const theme = useTheme();\n const [announcerString, setAnnouncerString] = useState<string | undefined>(undefined);\n const localeStrings = useLocaleFileCardStringsTrampoline();\n const uploadStartedString = props.strings?.uploading ?? localeStrings.uploading;\n const uploadCompletedString = props.strings?.uploadCompleted ?? localeStrings.uploadCompleted;\n\n const showProgressIndicator = progress !== undefined && progress > 0 && progress < 1;\n\n useEffect(() => {\n if (showProgressIndicator) {\n setAnnouncerString(`${uploadStartedString} ${fileName}`);\n } else if (progress === 1) {\n setAnnouncerString(`${fileName} ${uploadCompletedString}`);\n } else {\n setAnnouncerString(undefined);\n }\n }, [progress, showProgressIndicator, fileName, uploadStartedString, uploadCompletedString]);\n\n const progressBarThicknessPx = 4;\n\n const containerClassName = mergeStyles({\n width: '12rem',\n background: theme.palette.neutralLighter,\n borderRadius: theme.effects.roundedCorner4,\n border: `${_pxToRem(1)} solid ${theme.palette.neutralQuaternary}`,\n cursor: 'pointer'\n });\n\n const fileInfoWrapperClassName = mergeStyles({\n padding: _pxToRem(12),\n // To make space for the progress indicator.\n paddingBottom: showProgressIndicator ? _pxToRem(12 - progressBarThicknessPx * 2) : _pxToRem(12)\n });\n\n const fileNameContainerClassName = mergeStyles({\n paddingLeft: _pxToRem(4),\n minWidth: '75%',\n maxWidth: '75%'\n });\n\n const fileNameTextClassName = mergeStyles({\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n lineHeight: 'normal',\n whiteSpace: 'nowrap',\n paddingRight: _pxToRem(4)\n });\n\n const actionIconClassName = mergeStyles({\n cursor: 'pointer'\n });\n\n const progressIndicatorStyles: IStyleFunctionOrObject<IProgressIndicatorStyleProps, IProgressIndicatorStyles> = {\n itemProgress: {\n padding: `${_pxToRem(progressBarThicknessPx - 1)} 0`, // item progress height won't apply without an explicit padding\n // To make the progress indicator border curve along the bottom of file card.\n borderRadius: `0 0 ${theme.effects.roundedCorner4} ${theme.effects.roundedCorner4}`\n },\n progressBar: {\n height: _pxToRem(progressBarThicknessPx)\n }\n };\n\n return (\n <div data-is-focusable={true}>\n <Announcer announcementString={announcerString} ariaLive={'polite'} />\n <Stack\n className={containerClassName}\n onClick={() => {\n props.actionHandler?.();\n }}\n >\n <Stack horizontal horizontalAlign=\"space-between\" verticalAlign=\"center\" className={fileInfoWrapperClassName}>\n <Stack>\n {/* We are not using <ChatCompositeIcon /> here as we currently do not support customizing these filetype icons. */}\n <Icon\n data-ui-id={'filetype-icon'}\n iconName={\n getFileTypeIconProps({\n extension: fileExtension,\n size: 24,\n imageFileType: 'svg'\n }).iconName\n }\n />\n </Stack>\n <Stack className={fileNameContainerClassName}>\n <Text className={fileNameTextClassName}>{fileName}</Text>\n </Stack>\n <Stack verticalAlign=\"center\" className={actionIconClassName}>\n {actionIcon && actionIcon}\n </Stack>\n </Stack>\n {showProgressIndicator && <ProgressIndicator percentComplete={progress} styles={progressIndicatorStyles} />}\n </Stack>\n </div>\n );\n};\n\"../../../acs-ui-common/src\""]}
1
+ {"version":3,"file":"FileCard.js","sourceRoot":"","sources":["../../../../../preprocess-dist/react-components/src/components/FileCard.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n// eslint-disable-next-line no-restricted-imports\nIcon, IProgressIndicatorStyleProps, IProgressIndicatorStyles, IStyleFunctionOrObject, mergeStyles, ProgressIndicator, Stack, Text, useTheme } from '@fluentui/react';\nimport { getFileTypeIconProps } from '@fluentui/react-file-type-icons';\nimport React from 'react';\nimport { _pxToRem } from '@internal/acs-ui-common';\nimport { Announcer } from './Announcer';\nimport { useEffect, useState } from 'react';\nimport { _FileUploadCardsStrings } from './FileUploadCards';\nimport { useLocaleFileCardStringsTrampoline } from './utils/common';\n\n/**\n * @internal\n * _FileCard Component Props.\n */\nexport interface _FileCardProps {\n /**\n * File name.\n */\n fileName: string;\n /**\n * Extension of the file used for rendering the file icon.\n */\n fileExtension: string;\n /**\n * File upload progress percentage between 0 and 1.\n * File transfer progress indicator is only shown when the value is greater than 0 and less than 1.\n */\n progress?: number;\n /**\n * Icon to display for actions like download, upload, etc. along the file name.\n */\n actionIcon?: JSX.Element;\n /**\n * Function that runs when actionIcon is clicked\n */\n actionHandler?: () => void;\n /**\n * Optional arialabel strings for file cards\n */\n strings?: _FileUploadCardsStrings;\n}\n\n/**\n * @internal\n * A component for displaying a file card with file icon and progress bar.\n */\nexport const _FileCard = (props: _FileCardProps): JSX.Element => {\n const {\n fileName,\n fileExtension,\n progress,\n actionIcon\n } = props;\n const theme = useTheme();\n const [announcerString, setAnnouncerString] = useState<string | undefined>(undefined);\n const localeStrings = useLocaleFileCardStringsTrampoline();\n const uploadStartedString = props.strings?.uploading ?? localeStrings.uploading;\n const uploadCompletedString = props.strings?.uploadCompleted ?? localeStrings.uploadCompleted;\n const showProgressIndicator = progress !== undefined && progress > 0 && progress < 1;\n useEffect(() => {\n if (showProgressIndicator) {\n setAnnouncerString(`${uploadStartedString} ${fileName}`);\n } else if (progress === 1) {\n setAnnouncerString(`${fileName} ${uploadCompletedString}`);\n } else {\n setAnnouncerString(undefined);\n }\n }, [progress, showProgressIndicator, fileName, uploadStartedString, uploadCompletedString]);\n const progressBarThicknessPx = 4;\n const containerClassName = mergeStyles({\n width: '12rem',\n background: theme.palette.neutralLighter,\n borderRadius: theme.effects.roundedCorner4,\n border: `${_pxToRem(1)} solid ${theme.palette.neutralQuaternary}`,\n cursor: 'pointer'\n });\n const fileInfoWrapperClassName = mergeStyles({\n padding: _pxToRem(12),\n // To make space for the progress indicator.\n paddingBottom: showProgressIndicator ? _pxToRem(12 - progressBarThicknessPx * 2) : _pxToRem(12)\n });\n const fileNameContainerClassName = mergeStyles({\n paddingLeft: _pxToRem(4),\n minWidth: '75%',\n maxWidth: '75%'\n });\n const fileNameTextClassName = mergeStyles({\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n lineHeight: 'normal',\n whiteSpace: 'nowrap',\n paddingRight: _pxToRem(4)\n });\n const actionIconClassName = mergeStyles({\n cursor: 'pointer'\n });\n const progressIndicatorStyles: IStyleFunctionOrObject<IProgressIndicatorStyleProps, IProgressIndicatorStyles> = {\n itemProgress: {\n padding: `${_pxToRem(progressBarThicknessPx - 1)} 0`,\n // item progress height won't apply without an explicit padding\n // To make the progress indicator border curve along the bottom of file card.\n borderRadius: `0 0 ${theme.effects.roundedCorner4} ${theme.effects.roundedCorner4}`\n },\n progressBar: {\n height: _pxToRem(progressBarThicknessPx)\n }\n };\n return <div data-is-focusable={true}>\n <Announcer announcementString={announcerString} ariaLive={'polite'} />\n <Stack className={containerClassName} onClick={() => {\n props.actionHandler?.();\n }}>\n <Stack horizontal horizontalAlign=\"space-between\" verticalAlign=\"center\" className={fileInfoWrapperClassName}>\n <Stack>\n {/* We are not using <ChatCompositeIcon /> here as we currently do not support customizing these filetype icons. */}\n <Icon data-ui-id={'filetype-icon'} iconName={getFileTypeIconProps({\n extension: fileExtension,\n size: 24,\n imageFileType: 'svg'\n }).iconName} />\n </Stack>\n <Stack className={fileNameContainerClassName}>\n <Text className={fileNameTextClassName}>{fileName}</Text>\n </Stack>\n <Stack verticalAlign=\"center\" className={actionIconClassName}>\n {actionIcon && actionIcon}\n </Stack>\n </Stack>\n {showProgressIndicator && <ProgressIndicator percentComplete={progress} styles={progressIndicatorStyles} />}\n </Stack>\n </div>;\n};\"../../../acs-ui-common/src\""]}
@@ -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":["../../../../../../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;QACb,OAAO,yCAAK,CAAC;KACd;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\"../../../acs-ui-common/src\""]}
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;QACb,OAAO,yCAAK,CAAC;KACd;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};\"../../../acs-ui-common/src\""]}
@@ -1,8 +1,4 @@
1
1
  /// <reference types="react" />
2
- /**
3
- * @beta
4
- */
5
- export declare type FileMetadataAttachmentType = 'fileSharing' | /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */ 'inlineImage' | 'unknown';
6
2
  /**
7
3
  * Base interface that all Meta Data should extend.
8
4
  * Typically used for ACS to ACS file transfers.
@@ -23,14 +19,6 @@ export interface BaseFileMetadata {
23
19
  * Download URL for the file.
24
20
  */
25
21
  url: string;
26
- /**
27
- * Unique ID of the file.
28
- */
29
- id: string;
30
- /**
31
- * Attachment Type
32
- */
33
- attachmentType: FileMetadataAttachmentType;
34
22
  }
35
23
  /**
36
24
  * Meta Data containing basic information about the uploaded file.
@@ -38,28 +26,12 @@ export interface BaseFileMetadata {
38
26
  * @beta
39
27
  */
40
28
  export interface FileSharingMetadata extends BaseFileMetadata {
41
- attachmentType: 'fileSharing';
42
- payload?: Record<string, string>;
43
- }
44
- /**
45
- * Meta Data containing data for images.
46
- * @beta
47
- */
48
- export interface ImageFileMetadata extends BaseFileMetadata {
49
- attachmentType: 'inlineImage';
50
- previewUrl?: string;
51
29
  }
52
30
  /**
53
31
  * Meta Data containing information about the uploaded file.
54
32
  * @beta
55
33
  */
56
- export declare type FileMetadata = FileSharingMetadata | /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */ ImageFileMetadata;
57
- /**
58
- * @beta
59
- */
60
- export interface AttachmentDownloadResult {
61
- blobUrl: string;
62
- }
34
+ export declare type FileMetadata = FileSharingMetadata;
63
35
  /**
64
36
  * Strings of _FileDownloadCards that can be overridden.
65
37
  *
@@ -12,8 +12,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
12
12
  import { Icon, IconButton, Spinner, SpinnerSize } 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';
17
15
  import { _FileCard } from './FileCard';
18
16
  import { _FileCardGroup } from './FileCardGroup';
19
17
  import { iconButtonClassName } from './styles/IconButton.styles';
@@ -21,7 +19,9 @@ import { _formatString } from "../../../acs-ui-common/src";
21
19
  const fileDownloadCardsStyle = {
22
20
  marginTop: '0.25rem'
23
21
  };
24
- const actionIconStyle = { height: '1rem' };
22
+ const actionIconStyle = {
23
+ height: '1rem'
24
+ };
25
25
  /**
26
26
  * @internal
27
27
  */
@@ -35,24 +35,11 @@ export const _FileDownloadCards = (props) => {
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
37
  const isFileSharingAttachment = useCallback((attachment) => {
38
- /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
39
- return attachment.attachmentType === 'fileSharing';
40
38
  return false;
41
39
  }, []);
42
- /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
43
- const isShowDownloadIcon = useCallback((attachment) => {
44
- var _a;
45
- /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
46
- return attachment.attachmentType === 'fileSharing' && ((_a = attachment.payload) === null || _a === void 0 ? void 0 : _a.teamsFileAttachment) !== 'true';
47
- return true;
48
- }, []);
49
40
  const fileCardGroupDescription = useMemo(() => () => {
50
41
  var _a, _b;
51
42
  const fileGroupLocaleString = (_b = (_a = props.strings) === null || _a === void 0 ? void 0 : _a.fileCardGroupMessage) !== null && _b !== void 0 ? _b : localeStrings.fileCardGroupMessage;
52
- /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
53
- return _formatString(fileGroupLocaleString, {
54
- fileCount: `${fileMetadata.filter(isFileSharingAttachment).length}`
55
- });
56
43
  return _formatString(fileGroupLocaleString, {
57
44
  fileCount: `${fileMetadata.length}`
58
45
  });
@@ -78,36 +65,26 @@ export const _FileDownloadCards = (props) => {
78
65
  }
79
66
  }
80
67
  }), [props]);
81
- if (!fileMetadata ||
82
- fileMetadata.length === 0 ||
83
- /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */ !fileMetadata.some(isFileSharingAttachment)) {
68
+ if (!fileMetadata || fileMetadata.length === 0) {
84
69
  return React.createElement(React.Fragment, null);
85
70
  }
86
- return (React.createElement("div", { style: fileDownloadCardsStyle, "data-ui-id": "file-download-card-group" },
87
- React.createElement(_FileCardGroup, { ariaLabel: fileCardGroupDescription() }, fileMetadata &&
88
- fileMetadata
89
- .filter((attachment) => {
90
- /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
91
- return isFileSharingAttachment(attachment);
92
- return true;
93
- })
94
- .map((file) => (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 &&
95
- /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */
96
- isShowDownloadIcon(file) ? (React.createElement(IconButton, { className: iconButtonClassName, ariaLabel: downloadFileButtonString() },
97
- React.createElement(DownloadIconTrampoline, null))) : undefined, actionHandler: () => fileDownloadHandler(userId, file) }))))));
71
+ return React.createElement("div", { style: fileDownloadCardsStyle, "data-ui-id": "file-download-card-group" },
72
+ React.createElement(_FileCardGroup, { ariaLabel: fileCardGroupDescription() }, fileMetadata && fileMetadata.filter(attachment => {
73
+ return true;
74
+ }).map(file => 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 ? React.createElement(IconButton, { className: iconButtonClassName, ariaLabel: downloadFileButtonString() },
75
+ React.createElement(DownloadIconTrampoline, null)) : undefined, actionHandler: () => fileDownloadHandler(userId, file) }))));
98
76
  };
99
77
  /**
100
78
  * @private
101
79
  */
102
80
  const DownloadIconTrampoline = () => {
103
- // @conditional-compile-remove(file-sharing)
104
- return React.createElement(Icon, { "data-ui-id": "file-download-card-download-icon", iconName: "DownloadFile", style: actionIconStyle });
105
81
  // Return _some_ available icon, as the real icon is beta-only.
106
82
  return React.createElement(Icon, { iconName: "EditBoxCancel", style: actionIconStyle });
107
83
  };
108
84
  const useLocaleStringsTrampoline = () => {
109
- /* @conditional-compile-remove(file-sharing) @conditional-compile-remove(teams-inline-images-and-file-sharing)*/
110
- return useLocale().strings.messageThread;
111
- return { downloadFile: '', fileCardGroupMessage: '' };
85
+ return {
86
+ downloadFile: '',
87
+ fileCardGroupMessage: ''
88
+ };
112
89
  };
113
90
  //# sourceMappingURL=FileDownloadCards.js.map
@@ -1 +1 @@
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 } 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/* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n/**\n * @beta\n */\nexport type FileMetadataAttachmentType =\n | 'fileSharing'\n | /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */ 'inlineImage'\n | 'unknown';\n\n/**\n * Base interface that all Meta Data should extend.\n * Typically used for ACS to ACS file transfers.\n * @beta\n */\nexport interface BaseFileMetadata {\n /**\n * File name to be displayed.\n */\n name: string;\n /**\n * Extension is used for rendering the file icon.\n * An unknown extension will be rendered as a generic icon.\n * Example: `jpeg`\n */\n extension: string;\n /**\n * Download URL for the file.\n */\n url: string;\n /**\n * Unique ID of the file.\n */\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n id: string;\n /**\n * Attachment Type\n */\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n attachmentType: FileMetadataAttachmentType;\n}\n/**\n * Meta Data containing basic information about the uploaded file.\n * Typically used for ACS to ACS file transfers.\n * @beta\n */\nexport interface FileSharingMetadata extends BaseFileMetadata {\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n attachmentType: 'fileSharing';\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n /*\n * Optional dictionary of meta data asscoiated with the file.\n */\n payload?: Record<string, string>;\n}\n\n/* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n/**\n * Meta Data containing data for images.\n * @beta\n */\nexport interface ImageFileMetadata extends BaseFileMetadata {\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n /*\n * Attachment type of the file.\n * Possible values {@link FileDownloadHandler}.\n */\n attachmentType: 'inlineImage';\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n /*\n * Preview URL for the file.\n * Used in the message bubble for inline images.\n */\n previewUrl?: string;\n}\n\n/**\n * Meta Data containing information about the uploaded file.\n * @beta\n */\nexport type FileMetadata =\n | FileSharingMetadata\n | /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */ ImageFileMetadata;\n\n/* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n/**\n * @beta\n */\nexport interface AttachmentDownloadResult {\n blobUrl: 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 FileMetadata} containing file `url`, `extension` and `name`.\n */\nexport type FileDownloadHandler = (userId: string, fileMetadata: FileMetadata) => Promise<URL | FileDownloadError>;\n\n/**\n * @internal\n */\nexport interface _FileDownloadCards {\n /**\n * User id of the local participant\n */\n userId: string;\n /**\n * A chat message metadata that inculdes file metadata\n */\n fileMetadata: FileMetadata[];\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 arialabel 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: _FileDownloadCards): 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 isFileSharingAttachment = useCallback((attachment: FileMetadata): boolean => {\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n return attachment.attachmentType === 'fileSharing';\n return false;\n }, []);\n\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n const isShowDownloadIcon = useCallback((attachment: FileMetadata): boolean => {\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n return attachment.attachmentType === 'fileSharing' && 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(teams-inline-images-and-file-sharing) */\n return _formatString(fileGroupLocaleString, {\n fileCount: `${fileMetadata.filter(isFileSharingAttachment).length}`\n });\n return _formatString(fileGroupLocaleString, {\n fileCount: `${fileMetadata.length}`\n });\n },\n [props.strings?.fileCardGroupMessage, localeStrings.fileCardGroupMessage, fileMetadata, isFileSharingAttachment]\n );\n\n const fileDownloadHandler = useCallback(\n async (userId, file: FileMetadata) => {\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 (\n !fileMetadata ||\n fileMetadata.length === 0 ||\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */ !fileMetadata.some(isFileSharingAttachment)\n ) {\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\n .filter((attachment) => {\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n return isFileSharingAttachment(attachment);\n return true;\n })\n .map((file) => (\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 &&\n /* @conditional-compile-remove(teams-inline-images-and-file-sharing) */\n isShowDownloadIcon(file) ? (\n <IconButton className={iconButtonClassName} ariaLabel={downloadFileButtonString()}>\n <DownloadIconTrampoline />\n </IconButton>\n ) : undefined\n }\n actionHandler={() => fileDownloadHandler(userId, file)}\n />\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) @conditional-compile-remove(teams-inline-images-and-file-sharing)*/\n return useLocale().strings.messageThread;\n return { downloadFile: '', fileCardGroupMessage: '' };\n};\n\"../../../acs-ui-common/src\""]}
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 } 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 * Base interface that all Meta Data should extend.\n * Typically used for ACS to ACS file transfers.\n * @beta\n */\nexport interface BaseFileMetadata {\n /**\n * File name to be displayed.\n */\n name: string;\n /**\n * Extension is used for rendering the file icon.\n * An unknown extension will be rendered as a generic icon.\n * Example: `jpeg`\n */\n extension: string;\n /**\n * Download URL for the file.\n */\n url: string;\n /**\n * Unique ID of the file.\n */\n /**\n * Attachment Type\n */\n}\n/**\n * Meta Data containing basic information about the uploaded file.\n * Typically used for ACS to ACS file transfers.\n * @beta\n */\nexport interface FileSharingMetadata extends BaseFileMetadata {}\n/**\n * Meta Data containing information about the uploaded file.\n * @beta\n */\nexport type FileMetadata = FileSharingMetadata;\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 FileMetadata} containing file `url`, `extension` and `name`.\n */\nexport type FileDownloadHandler = (userId: string, fileMetadata: FileMetadata) => Promise<URL | FileDownloadError>;\n\n/**\n * @internal\n */\nexport interface _FileDownloadCards {\n /**\n * User id of the local participant\n */\n userId: string;\n /**\n * A chat message metadata that inculdes file metadata\n */\n fileMetadata: FileMetadata[];\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 arialabel 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: _FileDownloadCards): 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 const isFileSharingAttachment = useCallback((attachment: FileMetadata): boolean => {\n return false;\n }, []);\n const fileCardGroupDescription = useMemo(() => () => {\n const fileGroupLocaleString = props.strings?.fileCardGroupMessage ?? localeStrings.fileCardGroupMessage;\n return _formatString(fileGroupLocaleString, {\n fileCount: `${fileMetadata.length}`\n });\n }, [props.strings?.fileCardGroupMessage, localeStrings.fileCardGroupMessage, fileMetadata, isFileSharingAttachment]);\n const fileDownloadHandler = useCallback(async (userId, file: FileMetadata) => {\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) {\n return <></>;\n }\n return <div style={fileDownloadCardsStyle} data-ui-id=\"file-download-card-group\">\n <_FileCardGroup ariaLabel={fileCardGroupDescription()}>\n {fileMetadata && fileMetadata.filter(attachment => {\n return true;\n }).map(file => <_FileCard fileName={file.name} key={file.name} fileExtension={file.extension} actionIcon={showSpinner ? <Spinner size={SpinnerSize.medium} aria-live={'polite'} role={'status'} /> : true ? <IconButton className={iconButtonClassName} ariaLabel={downloadFileButtonString()}>\n <DownloadIconTrampoline />\n </IconButton> : undefined} actionHandler={() => fileDownloadHandler(userId, file)} />)}\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};\"../../../acs-ui-common/src\""]}
@@ -8,7 +8,9 @@ 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 = { height: '1rem' };
11
+ const actionIconStyle = {
12
+ height: '1rem'
13
+ };
12
14
  /**
13
15
  * @internal
14
16
  */
@@ -23,12 +25,9 @@ export const _FileUploadCards = (props) => {
23
25
  if (!files || files.length === 0) {
24
26
  return React.createElement(React.Fragment, null);
25
27
  }
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 })))));
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 })));
33
32
  };
34
33
  //# sourceMappingURL=FileUploadCards.js.map
@@ -1 +1 @@
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;AAE1B,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;AAoCpE,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;QAChC,OAAO,yCAAK,CAAC;KACd;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 { ActiveFileUpload } from './SendBox';\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';\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"]}
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;AAE1B,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;AAmCpE,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;QAChC,OAAO,yCAAK,CAAC;KACd;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 { ActiveFileUpload } from './SendBox';\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';\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};"]}
@@ -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,7 +52,11 @@ const isCloserThan = (a, b, target) => {
52
52
  */
53
53
  export const calculateGridProps = (numberOfItems, width, height) => {
54
54
  if (numberOfItems <= 0) {
55
- return { fillDirection: 'horizontal', rows: 0, columns: 0 };
55
+ return {
56
+ fillDirection: 'horizontal',
57
+ rows: 0,
58
+ columns: 0
59
+ };
56
60
  }
57
61
  // If width or height are 0 then we return rows and column evenly
58
62
  if (width <= 0 || height <= 0) {
@@ -64,7 +68,7 @@ export const calculateGridProps = (numberOfItems, width, height) => {
64
68
  }
65
69
  const aspectRatio = width / height;
66
70
  // Approximate how many rows to divide the grid to achieve cells close to the TARGET_CELL_ASPECT_RATIO
67
- let rows = Math.floor(Math.sqrt((TARGET_CELL_ASPECT_RATIO / aspectRatio) * numberOfItems)) || 1;
71
+ let rows = Math.floor(Math.sqrt(TARGET_CELL_ASPECT_RATIO / aspectRatio * numberOfItems)) || 1;
68
72
  // Make sure rows do not exceed numberOfItems
69
73
  rows = Math.min(rows, numberOfItems);
70
74
  // Given the rows, get the minimum columns needed to create enough cells for the number of items
@@ -73,7 +77,7 @@ export const calculateGridProps = (numberOfItems, width, height) => {
73
77
  let fillDirection = 'horizontal';
74
78
  while (rows < numberOfItems) {
75
79
  // If cell aspect ratio is less than MINIMUM_CELL_ASPECT_RATIO_ALLOWED then try more rows
76
- if ((rows / columns) * aspectRatio < MINIMUM_CELL_ASPECT_RATIO_ALLOWED) {
80
+ if (rows / columns * aspectRatio < MINIMUM_CELL_ASPECT_RATIO_ALLOWED) {
77
81
  rows += 1;
78
82
  columns = Math.ceil(numberOfItems / rows);
79
83
  continue;
@@ -112,9 +116,9 @@ export const calculateGridProps = (numberOfItems, width, height) => {
112
116
  // | | | | | | |
113
117
  // |___________|__________| |_______|_______|_______|
114
118
  // Calculate the aspect ratio of big cells stretched horizontally
115
- const horizontallyStretchedCellRatio = (rows / (columns - 1)) * aspectRatio;
119
+ const horizontallyStretchedCellRatio = rows / (columns - 1) * aspectRatio;
116
120
  // Calculate the aspect ratio of big cells stretched vertically
117
- const verticallyStretchedCellRatio = ((rows - 1) / columns) * aspectRatio;
121
+ const verticallyStretchedCellRatio = (rows - 1) / columns * aspectRatio;
118
122
  // We know the horizontally stretched cells aspect ratio is higher than MINIMUM_CELL_ASPECT_RATIO_ALLOWED. If vertically stretched cells
119
123
  // is also higher than the MINIMUM_CELL_ASPECT_RATIO_ALLOWED, then choose which aspect ratio is better.
120
124
  if (verticallyStretchedCellRatio >= MINIMUM_CELL_ASPECT_RATIO_ALLOWED) {
@@ -126,7 +130,11 @@ export const calculateGridProps = (numberOfItems, width, height) => {
126
130
  }
127
131
  break;
128
132
  }
129
- return { fillDirection, rows, columns };
133
+ return {
134
+ fillDirection,
135
+ rows,
136
+ columns
137
+ };
130
138
  };
131
139
  /**
132
140
  * Creates a styles classname with CSS Grid related styles given GridProps and the number of items to distribute as evenly as possible.
@@ -144,41 +152,33 @@ export const createGridStyles = (numberOfItems, gridProps) => {
144
152
  // Get grid units
145
153
  // e.g. If some blocks have 2 big cells while others have 3 small cells, we need to work with 6 units per block
146
154
  const units = smallCellsPerBlock * bigCellsPerBlock;
147
- const gridStyles = isHorizontal
148
- ? {
149
- gridTemplateColumns: `repeat(${units}, minmax(0, 1fr))`,
150
- gridTemplateRows: `repeat(${blocks}, minmax(0, 1fr))`,
151
- gridAutoFlow: 'row'
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}`
152
167
  }
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
- }
168
+ } : {
169
+ '> *': {
170
+ gridRow: `auto / span ${units / smallCellsPerBlock}`
163
171
  }
164
- : {
165
- '> *': {
166
- gridRow: `auto / span ${units / smallCellsPerBlock}`
167
- }
168
- };
172
+ };
169
173
  // If there are big cells, we are choosing to place the latest children into the big cells.
170
174
  // That is why we use the '> *:nth-last-child(-n + ${numBigCells})' CSS selector below
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
- }
175
+ const bigCellStyle = numBigCells ? {
176
+ [`> *:nth-last-child(-n + ${numBigCells})`]: isHorizontal ? {
177
+ gridColumn: `auto / span ${units / bigCellsPerBlock}`
178
+ } : {
179
+ gridRow: `auto / span ${units / bigCellsPerBlock}`
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":["../../../../../../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 { 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"]}
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};"]}
@@ -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":["../../../../../../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"]}
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};"]}